论文部分内容阅读
视觉测量作为一种非接触式的三维测量技术,以非接触性、测量速度快以及精度高等优点,在许多工程领域中已获得广泛的应用。 本文的主要研究内容是基于单目与惯性传感器结合的立体视觉测量系统设计与实现。该系统在不借助激光、光斑、标定物等辅助设施的情况下,利用普通图像与惯性传感器结合,采用立体视觉测量的方法,获取所测物体的外形尺寸及三维深度信息,能够满足快速测量的部分需求,而现有移动平台普遍集成图像与惯性传感器,该测量结构将具有普适性、体积小、成本低、携带方便等优点。 本文首先分析了单摄像头与惯性传感器结合完成立体视觉测量的原理,通过惯性传感器获取摄像机移动过程中的位置和姿态,模拟双目立体视觉测量结构,进而完成测量。使用基于互补滤波的四元数姿态更新方法来获取摄像机姿态,使用该姿态估算出重力场在加速度计各轴的分量,去除加速度计的重力分量后通过二次积分计算出摄像机位移。由于低成本的加速度计漂移误差较大,加速度计不能单独使用。本文通过基于图像金字塔的LK光流法对视频图像中的特征点进行跟踪,对特征点移动信息进行统计得到摄像机的移动信息。该信息为摄像机运动速度的直接反映,不存在累积误差,使用该信息对加速计进行修正补偿,可大大减少测量误差。 然后,对核心处理器选型进行了分析,因图像处理与生俱来的异构特性,使其需要软硬件相结合的实现方案,选用Xilinx ZYNQ FPGA+ARM双核处理器可满足产品小型化、高效性、低功耗,而且要处理庞大的图像数据集的设计要求。根据测量结构要求,利用ZedBoard开发板的Pmod与FMC扩展接口,设计了所需的硬件模块,包括OV5640摄像头模块,MPU6050六轴传感器模块以及显示、触摸屏模块。完成各模块的电路图、PCB电路板设计及电路焊接。 最后,设计并完成测量算法在Zynq平台上实现,主要包括两部分内容:一是,FPGA核中完成对输入输出接口的驱动,利用其并行处理能力,实时流水线式的提供图像处理中所需要的基础数据,包括每一帧图像的特征点提取、三层金字塔多分辨率图像的建立以及每一层使用LK光流法进行跟踪所需要的大部分数据;二是,ARM核中完成各模块的初始化,响应用户输入,基于FPGA提供的数据进行特征点的迭代跟踪以及输出显示结果。最终能实现误差在4.5%以内的测量任务,可满足日常的测量需求。