我正在尝试按照本教程中的描述使用 POSIT,但在理解一些事情时遇到了一些麻烦。
我有来自平行六面体的 9 个坐标 (x,y,z) 值。此坐标值的单位以 mm 表示。我已经计算了二维投影点(x',y',z'),只需使用
x' = (x/z)*f && y' = (y/z)*f
将 z 定义为 f/2,将 f(焦距)定义为 1000 mm。
3D 点表示如下:
modelPoints.push_back(cvPoint3D32f(0.00f, 0.00f, 0.00f));
为什么是 0.00 f?我可以简单地将它们表达为,例如:
modelPoints.push_back(cvPoint3D32f(-58.85, 1.00, 14.00));
% this would be point (-58.85, 1.00, 14.00) (in mm)
所有单位都可以用毫米表示吗?
为了得到这个问题的答案,我一直在做一些研究,但我仍然无法理解。如果有人可以帮助我,我将不胜感激!