【发布时间】:2012-08-24 07:47:50
【问题描述】:
我需要一些帮助来使用 openCV 库继续我的代码,以便找到相机中看到的对象的深度值。
我已经进行了校准并找到了视差图,我无法找到关于如何计算相机拍摄的两张照片中每个像素的深度值的明确帮助。
谁能帮帮我? 谢谢
【问题讨论】:
标签: opencv depth stereoscopy
我需要一些帮助来使用 openCV 库继续我的代码,以便找到相机中看到的对象的深度值。
我已经进行了校准并找到了视差图,我无法找到关于如何计算相机拍摄的两张照片中每个像素的深度值的明确帮助。
谁能帮帮我? 谢谢
【问题讨论】:
标签: opencv depth stereoscopy
这是您的问题的链接,其中包括一个简单的深度估计算法: http://www.epixea.com/research/multi-view-coding-thesisse13.html
【讨论】:
您可以使用这些公式来计算点云 3D 坐标:
Z = fB/D
X = (col-w/2)*Z/f
Y = (h/2-row)*Z/f
其中X、Y、Z为世界坐标,f——标定后相机的焦距(以像素为单位),B为基线或相机间距,D为视差; col, row 表示图像中像素的列和行坐标,尺寸为 h, w。
但是,如果您设法校准了相机并获得了视差图,那么您必须已经知道这一点。校准和视差图计算比上述计算复杂一个数量级。
【讨论】: