论文摘要
双目视觉测距模型是立体测量、三维重建、产品检测和交通导航等常用的视觉模型。本文针对双目立体视觉系统的实时性低和成本高等问题,在资源受限的ARM嵌入式开发板上建立双目视觉系统,并在摄像头标定、图像预处理,图像校正、立体匹配、物体识别和景深计算等过程的算法及运算效率上做了系列的研究,对双目视觉的实用化、便携化进行尝试,并取得了较好的效果。文中先从双目立体视觉模型的研究入手,介绍了双目立体视觉的线性模型和畸变模型,并选用前向平行双目视觉模型和三角测量方法进行测距。实验平台搭建时,本文选用较为通用的ARM嵌入式开发板OK6410作为硬件平台、嵌入式Linux 3.0.1操作系统作为软件开发平台、普通的CMOS摄像头OV9650作为图像采集设备,同时设计相应的外接电路和编写相应的Linux平台驱动。进行摄像机标定时,本文先对标定的各种方法进行简要介绍,并着重介绍了张正友标定方法;然后基于该方法利用Matlab和OpenCV两个工具分别对摄像机进行标定,并做了详细的误差分析;标定后的重投影误差在0.4个像素内,属于亚像素级别,满足系统的精度要求。进行图像预处理和校正时,本文先对图像滤波的各种常用算法进行了分析和比较,并选用高斯滤波对图像进行预处理;然后对采集的图像进行畸变误差补偿,使图像更能真实的反应现实场景;最后使用Bouguel立体校正算法对图像对进行立体校正,使图像对满足“对极约束”,可降低后续立体匹配的复杂度。进行立体匹配时,本文提出了一种以物体纵向边缘点作为特征点的准稠密匹配算法。文中先对各种边缘提取算法进行分析和比较,并选用和修改了Canny算子,使其只提取物体纵向的边缘。该修改可提高约35.56%的处理速度,同时略去了横向的特征点,减少了匹配计算量,且对结果影响不大。立体匹配时以SAD作为相似性度量,引入“唯一性约束”对匹配点进行二次扫描,可对误匹配进行有效过滤。修改了SAD计算的窗口形状,以“米”字形代替矩形窗口,减少了大窗口时的计算量;同时对SAD计算进行了最小值剪枝,减少了多余的计算。进行物体识别和景深计算时,文中基于“连续性约束”,提出了一种相邻视差区间归类来表征物体的快速物体识别方法,完成一帧图像的识别只需5毫秒左右,实时性非常高;然后按视差区间的加权平均获得物体平均视差值;最后使用三角测量原理进行景深测量。本系统在1米内的精度误差在2.17%以内,完整处理一对图像对需要时间在0.5秒内。