简体   繁体   English

如何使用 ROS、C++ 和 OpenCV 在地图中定位 2d 图像中的 3d 对象

[英]How to localize in a map a 3d object in a 2d image with ROS , C++ and OpenCV

Let suppose I have a stopped video camera that is recording in front of it, and in the left side of his visual there is a person stopped in his position.假设我有一个停止的摄像机在它前面记录,在他的视觉左侧有一个人停在他的位置。 If I know the distance in meters between the person and the video camera( in diagonal) , and I know how many pixel there are between the frontal axis of the camera and the person, how can I know the angle between the frontal axis and the person?如果我知道人与摄像机(对角线)之间的距离(以米为单位),并且我知道摄像机的前轴和人之间有多少像素,我怎么知道前轴和人之间的角度人? I'm asking this question because I'm implementing a ROS node that recognize people in an image of the camera and the depth of the objects in it, but I also want to add a marker (that symbolize the person) in a map that is seeing the scene from the above.我问这个问题是因为我正在实施一个 ROS 节点,该节点可以识别相机图像中的人物以及其中物体的深度,但我还想在地图中添加一个标记(象征人物)从上面看到的场景。 In the node there are OpenCV libraries also.. Thanks在节点中也有 OpenCV 库..谢谢

Here is how I understood the question.这是我如何理解这个问题。 Excuse my drawing skills.原谅我的绘画技巧。 在此处输入图片说明

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM