论文部分内容阅读
双目视觉是计算机视觉领域的重要研究课题之一。双目视觉基于仿生学的原理,利用位置不同的双摄像头对场景进行拍摄,从得到的双目图像中获取三维信息。相比于与其他的三维信息获取方法,双目视觉具有设备简单、功耗较低的优点,因而在机器人自主导航、人机交互等领域都有重要的应用价值。但是,双目视觉系统所涉及的算法往往比较复杂,计算量大,基于传统的通用处理器无法满足实时处理的要求。本文针对实际应用中的实时性和准确性需求,利用FPGA(现场可编程门阵列)作为计算平台,综合考虑软件算法和硬件实现,实现高性能的双目视觉系统。利用双目视觉获取的三维信息包含两个方面:场景的三维结构和相机自身的三维运动。对应地,本文选取两个基本任务进行了研究:双目匹配和双目定位。其中,双目匹配算法通过建立双目图像之间的空间对应关系,从单帧图像中恢复出场景的深度图。双目定位则进一步考虑了时域相关性,从连续拍摄的双目图像序列中反推出相机的运动轨迹,对于移动机器人平台的自主导航具有重要意义。针对单帧图像的深度图恢复问题,本文首次在FPGA上实现了结合可变支持域和半全局优化的双目匹配算法。在FPGA结构方面实现了支持混合并行的半全局优化结构,并提出了行分割的策略降低缓存容量,最终搭建完整的深度图采集系统。实验结果表明,本文系统在Stratix V FPGA上的的处理速度达到1600×1200分辨率@42fps,在Middlebury测试集上的准确率达到现有FPGA相关工作的最高值。此外,本文在实际场景中对所提出的深度图采集系统进行了测试,实验结果表明,本文系统在实际场景中仍然能够获得准确的深度图。在深度信息的基础上,本文进一步研究了基于双目视觉的实时定位系统。本文通过软件可编程矩阵运算平台的方法解决了复杂算法流程的FPGA映射问题,首次在FPGA平台上实现了完整的视觉SLAM(即时定位与地图构建)系统,并在室内场景下对系统的性能进行了测试。实验结果表明,本文基于双目视觉的定位系统能够实时(>30fps)处理包含28000个特征点的全局地图,在室内环境下(可视范围3-4m)定位精度达到厘米量级。本文指出未来可能的研究方向包括:三维场景融合、基于深度信息的环境理解等。