我试图找到图像中两点之间的角度。角度参考相机的中心线。
在此图像中,中心点位于图像的中心(假设,我仍然需要弄清楚如何实际计算它),我想找到连接点1和摄像机中心之间的角度和连接所需点和摄像机中心的线
现在我想知道关于找到角度的两件事 - 如果距离未确切知道(但可以由人在运行时估计),是否可以知道角度假设两个点位于图像的同一平面内 - 如果这些点不在同一平面上,我应该如何处理角度计算?
答案 0 :(得分:0)
可以通过inner product来实现。
如果您在3D空间中进行交谈,那么x
(向量)和y
(向量)的格式应为[a,b,f]
(a和b为点),其中f为图像平面距摄像机中心的距离,a
和a
是摄像机框架中的相应坐标。
如果它位于2D空间中,那么您必须指定框架的来源,并根据该框架以及a
和b
找到x
和y
向量的格式为[a,b]
。
答案 1 :(得分:0)
可以使用这个公式找到: Angle between two rays
K 是相机矩阵。 x1 和 x2 是以类似 [u,v,1] 的同构形式给出的图像点,d1 和 d2 是相应的 3D 点。
参见 Richard Hartley,澳大利亚国立大学,堪培拉,Andrew Zisserman,牛津大学:“计算机视觉中的多视图几何”,第 2 版,p。 209 了解更多详情。
反转相机矩阵非常简单。看 https://www.imatest.com/support/docs/pre-5-2/geometric-calibration-deprecated/projective-camera/ 了解更多详情。