论文部分内容阅读
未来的许多探测任务很大程度上依赖于装有尖端科学仪器和拥有先进导航能力的高自主移动机器人。为了使这些移动机器人能够探索更大的区域,提高它们的导航速度是非常有必要的。视觉里程计作为移动机器人的一部分,因为其可靠的性能和广泛的应用而引起了越来越多的关注。但视觉里程计需要在CPU上运行特征提取及匹配等复杂的计算机视觉算法,这需要较长的执行时间,导致其移动速度相对缓慢。因此,在机器人上实现特征提取及匹配等算法并达到更高数量级的执行速度成为亟待解决的首要问题。本课题为解决这个问题,开展了单目视觉里程计软硬件协同设计的研究。针对基于特征点法的单目视觉里程计各步骤的计算量,本文对单目视觉里程计的计算任务进行了合理划分,并分别映射到系统的软硬件上面进行了实现。利用SOC的FPGA资源实现了SURF特征点检测算法、BRIEF特征点描述算法和特征点匹配算法,并通过VDMA对数据进行传输。利用SOC的ARM实现对FPGA端的控制以及数据的调度。为了实现SOC与PC间的高速传输,利用FPGA设计了一个高速的UDP/IP协议栈内核,通过该内核将匹配好的特征点传输到PC。最后在PC上对接收到的数据进行位姿计算,实现了对相机位姿估计。本文根据总体方案设计并实现了单目视觉里程计的验证系统,并对整个系统的各个模块进行了性能分析与验证。测试结果表明千兆以太网传输模块最大可以在129 MHz的工作频率下,达到900 Mbps左右的稳定传输带宽。采用KITTI数据集中单目视觉里程计数据集对整个验证系统进行测试发现位姿估计的结果与真实轨迹的均方根误差最大为0.5 m,最小达到了0.01 m。旋转误差最大为0.515 deg/m,最小为0.0110 deg/m。平移误差最大为11.35%,最小为1.38%。且每两帧的位姿估计输出速度达到33 Hz。结果表明系统设计达到预期精度,并且满足实时处理的要求。