OpenCV实现双目测距

OpenCV实现双目测距,第1张

原理很简单,利用了厅悄相似三角形计算距离,所以双目测距的主要任务在于前期摄像头的定标、双目图像点的特征匹配上。

摄像头定标一般都需要一个放在摄像头前的特制的标定参照物(棋盘纸),摄像头获取该物体的图像,并由此计算摄像头的内外参数。标定参照物上的每一个特征点相对于世界坐标系的位置在制作时应精确测定,世界坐标系可选为参照物的物体坐标系。在得到这些已知点在图像上的投影位置后,可计算出摄像头的内外参数。

如上公式所示,摄像扮镇渣头由于光学透镜的特性使得成像存在着径向畸变,可由三个参数k1,k2,k3确定;由于装配方面的误差,传感器与光学镜头之间并非完全平行,因此成像存在切向畸变,可由两个参数p1,p2确定。

cvStereoRectify 执行双目校正

initUndistortRectifyMap 分别生成两个图像校正所需的像素映射矩阵

cvremap 分别对旅贺两个图像进行校正

预处理: 图像归一化,减少亮度差别,增强纹理

stereoBM生成视差图

匹配过程: 滑动sad窗口,沿着水平线进行匹配搜索,由于校正后左右图片平行,左图的特征可以在右图对应行找到最佳匹配

再过滤: 去除坏的匹配点 通过uniquenessratio

输出视差图disparity:如果左右匹配点比较稠密,匹配点多,得到的图像与原图相似度比较大, 如果匹配点比较稀疏,得到的点与原图 相似度比较小

根据提取的特征点上用上述双目测距的相似三角算法得出距离。

百度知道

监控参数错误什么情况?...展开

匿名用户

删除

一、无法搜索到网络摄像机

是否修改过网络摄像机的IP地址,请确保网络摄像机与NVR的网络互相连通。(PING)

二、摄像机与NVR连接后画面卡顿

图像卡顿往往很多因素在于网络带宽的问题,涉及外部设备交换机、光升哗纤机、NVR、网线等,可以将摄像机帧数、分辨率、码流等降低观察,将摄像机单独与PC连接观察实时图像是否顺畅。三、摄像机图像黑屏

1、检查电源是否接好,电源电压是否满足要求

2、尝试单独一台摄像机与PC连接,如出现图像,很可能是由于与其他摄像机IP冲突,或带宽达到上限。

3、PoE供电时请确认网线(网线质量是不是不达)

四、图像出现斜纹、水波纹、横线

此种情况不一定是产品本身问题,很多情况下是由于以下原因造成的:

1、线材质量问题,建议尽量使用国标线材。质量较差的线材在传输过程中易出现被干扰现象。

2、视频线或摄像机被强磁场干扰。强磁场吵拿行源如:大功率电动机,高频发敏伍射机等;强磁场将会对绝大多数摄像机产生干扰

3、传输线路过长

4、判断时请将摄像机更换线材、电源等并单独连接测试。

五、图像时有时无

1、电源电压供应是否稳定

2、网线水晶头是否松动未牢固

3、电源线是否有断线、接触不良

4、网络带宽达到上限,导致有时摄像机无图像传输。

cvUndistortPoints后面的两个参数R和Mr是用于双目校正中的,双目校正也需要校正畸变,同时要将两个摄像机的图片进行共面和对准校正,R和Mr是cvStereoRectify得出的输出参数,作为盯耐脊这里的输入亩巧参数凯渗,用于undistort


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

原文地址:https://54852.com/yw/8282528.html

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

发表评论

登录后才能评论

评论列表(0条)

    保存