0
votes

I am using open cv c++ for estimating the pose of the object. And I am a beginner in pose estimation. I am getting confused with few terms.

Basically, if the object is in movement and camera is stationary, the external parameters( rotation and translation) belongs to the object. That is, the R and T is the object's rotation and translation. so, it is the object's pose.

Whereas Viceversa, if the camera is in movement and object is stationary, the R and T represents the camera's rotation and translation. so, it is the camera's pose.

So, why do all the forums generalise by saying the camera's pose instead of knowing the scenario whether the camera/object is stationary?

1
afaik, opencv's solvePnP always computes the object pose in the local camera coordinate system. If you are interested in the camera pose according to the local object coordinate system, you'll have to invert it.Micka
the reason why it is generalized is that it doesnt make much difference and just from the camera image it isnt possible to tell, whether the object or the camera has changed its pose in reality (if background is ignored).Micka
Thanks, @Micka Hence, only based on the images and explicit requirements, we will be able to exactly conclude.van4
still opencv's solvePnp afaik only computes the object pose, never the camera pose (but you can just invert to get the other one). If you know more about your scenario, maybe SLAM algorithms are better suited. In general it is often not necessary (or possible) to describe the whole scene geometry, so some 'local' representations are used,Micka
Okay, Thank you!van4

1 Answers

1
votes

the reason why do all the forums generalise by saying the camera's pose instead of knowing the scenario whether the camera/object is stationary or not is:

it is the same case where camera / object is moving towards one another. more like perspective problem that depend on which point of view you want to use.

once you declare the the center of the coordinate system and subsequently, the object coordinate in the real world and in images and you know the internal camera parameters.

you will get the pose in R and T. solvePnP in opencv can give you the pose but you have to be careful with your choice of coordinate systems to interpret the solvePnP result.