OpenCV `重投影图像3D()中的度量表示法`
在我的左摄像头、右摄像头和立体声校准上;我已经指出了广场的大小OpenCV `重投影图像3D()中的度量表示法`,opencv,image-processing,camera-calibration,stereoscopy,Opencv,Image Processing,Camera Calibration,Stereoscopy,在我的左摄像头、右摄像头和立体声校准上;我已经指出了广场的大小 0.025(25毫米) 因此,我使用reprojectmageto3d(disp,Q) 我从stereorective 我在离立体相机2.5-3英尺远的一个盒子里拍了一张照片,并取回了上面一个点的坐标。其Z值为140.8764 我该如何解释呢 我的Q看起来像这样 |1, 0, 0, -454.05216408| |0, 1, 0, -231.55072975| |0, 0, 0, 816.20826814 | |0, 0, 13.7
0.025(25毫米)
因此,我使用reprojectmageto3d(disp,Q)
我从stereorective
我在离立体相机2.5-3英尺远的一个盒子里拍了一张照片,并取回了上面一个点的坐标。其Z
值为140.8764
我该如何解释呢
我的Q
看起来像这样
|1, 0, 0, -454.05216408|
|0, 1, 0, -231.55072975|
|0, 0, 0, 816.20826814 |
|0, 0, 13.79730561, -0 |
在所有相应的校准功能中使用一致的单位(在本例中为米),则来自
cv::reprojectmageto3d
的输出应具有类似的单位(这里再次使用米)
在Q
中,(3,2)处的值是相机基线值的倒数(此处0.0725 m
,这是有意义的)。(0,3)和(1,3)处的值是主点的xy坐标(大致位于图像的中间;同样有意义),而(2,3)是相对焦距(相对于图像宽度)
不要缩小差距。因此,请评论这句话:
#disp = abs(disp-min_disp)/num_disp
当我在
python
中注释该行时,当我imshow()它时,它只显示白色。你从哪里得到0.0725m
?很抱歉,我在这件事上遇到了困难!感谢您的帮助1/13.797=0.0725
,如果您不想显示视差图,请计算其最小值和最大值,并将其缩放到[0255]8bpp进行可视化,但使用原始图像进行重新投影。我明白了!所以我得到的所有值都是以米为单位的?对吗?是的,所有有单位的值都是米。但有些是相对的(如焦距)。
#disp = abs(disp-min_disp)/num_disp