OpenCV camera calibration(compute [R|T]) with lines instead of points -


i'm working on football(soccer) robot this tutorial. machine has 2 cameras while ground map has 6 points recognizable in front of goal.

2 corners , 4 around goal i'm doing:

  1. take photos , intrinsic parameters(focal length,distortions);
  2. while moving, find the points , use solvepnp [r|t];
  3. use projectpoints real coordinate.

as have tried, (in chessboard of 6*9 inner corners) 10 points worked fine, 5 bad result(haven't considered when vision bad or when ball blocks vision).

i'm thinking presetting [r|t](with vision of full map),and while moving, utilize old [r|t](as initial approx.) better [r|t]. after sometime, [r|t] gets less accurate, it's unlikely i'll approx. value.

another solution though, it's try using lines generate [r|t]. example, after detecting set of points of line, relate x=0 or y=0... , use them compute [r|t] generate better result. there way this?

or i'm getting wrong? ideas or appreciated!

i'd contribute, have questions settings:

(i.) assuming camera fixed on robot. then, [r|t] changes respect field (reference). tracking aforementioned points (features) in field? in such case rotation , translation changes when robot moves around field.

(ii.) have checked hartley's paper on calibration line correspondences? might give idea second proposal.

now, assumption make on item i. try camera calibration of each camera independently obtain lens , tangential distortion parameters first. these want have them fixed when re-calibrating motion. using lines seems more viable might robust against occlusions.

i can edit answer in case provide more details , enrich discussion.

i put comment, not have enough credit.


Comments

Popular posts from this blog

Android : Making Listview full screen -

javascript - Parse JSON from the body of the POST -

javascript - Chrome Extension: Interacting with iframe embedded within popup -