【发布时间】:2018-11-25 10:16:19
【问题描述】:
我正在尝试编写自己的 cv2.projectPoints 实现,只是为了练习,但我的实现没有按预期运行。
我假设针孔相机没有失真,所以我所做的只是将以下等式应用于我的所有平面对象点。
假设在某个世界空间中(平面和相机都存在于其中),平面距离 2 个单位。所以,在世界坐标空间中,平面上的所有点都有z=2。但是,在平面自身的坐标空间中,平面上的所有点都有z=0。因此,对于我要投影的所有坐标,矢量[X Y Z 1] 实际上是[X Y 0 1]。假设我在姿态估计中发现对象在z 方向上平移了-2。将此向量乘以找到的姿势后,我得到向量...
r11X + r12Y + t1
r21X + r22Y + t2
r31X + r32Y + 2
但是现在,由于r31 和r32,投影点不再有z = 2。
【问题讨论】:
-
在 opengl 文档或 ted 书籍或其他方面有一些很好的 3d 投影解释。
标签: opencv computer-vision linear-algebra projection camera-calibration