matlab双目测距中怎样把摄像机标定后的内外参数和视差图结合起来计算深度距离

matlab双目测距中怎样把摄像机标定后的内外参数和视差图结合起来计算深度距离,第1张

你用的是双面立体相机配置吗?如果是,你需要标定左右两个相机的内部参数,即焦距,像素物理尺寸,还有两个相机间的三维平移,旋转量。如果你不做三维重建的话,就不需要得到外部参数。得到相机内部参数,就可以矫正左右两幅图像对,然后使用立体匹配算法得到目标的视差图像,然后用你得到的,fc,cc参数,用三角法则计算出目标点到相机平面的距离。三角法则:z=f*b/d。f是焦距,b是两相机间的横向距离,d是立体匹配得到的视差值,即目标像素点在左右两相机平面x方向的坐标差值。

x=[2 7 4 5]

for i=1:length(x)

if x(i)==4

x(i)=0

else

x(i)=x(i)+1

end

end

x

PS:判断语句和循环语句都必须用end结束。语句中一个为if,另一个为for,所以出现了两个end,因为if在for循环中,所以两个end看起来是在一起的。

还有那个不应该使用elseif,应该改为else。

another way

x=[2 7 4 5]

x=(x~=4).*(x+1)

PS:这个语句的效果同上面是一样的,x~=4是判断x中的元素是否等于4,如果等于则为0,不等则为1,然后再与(x+1)相乘。

建议不熟悉编程的人采用第一种方法,虽然麻烦,但简单易懂。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/11221677.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存