论文部分内容阅读
随着计算机视觉理论与技术的发展,双目视觉逐渐成为计算机视觉领域中一个重要的组成部分,许多高校和研究所在该领域做了大量研究工作,取得了可观的技术成果。双目视觉技术在航空航天、移动机器人、工业检测、智能交通等领域中有着广阔的应用前景。随着双目视觉应用复杂程度的提高,基于传统嵌入式设备开发的双目视觉系统性能逐渐难以满足实际需要。在传统的双目视觉系统的图像预处理阶段,利用软件控制通用CPU进行图像预处理工作代价较大。为了提升图像预处理阶段的效率,可以通过改进算法或者使用更为高效的硬件平台来满足要求。本文从硬件平台的改进入手,使用FPGA对图像的预处理阶段进行并行化设计,减少预处理阶段的执行时间,从而提升嵌入式双目视觉系统的整体效率。系统选则使用Xilinx提供的FPGA+ARM结构的ZYNQ系列芯片。在ISE集成开发环境中用Verilog HDL完成硬件上的开发,使用C语言完成ARM上程序的开发。利用芯片中FPGA部分优化耗时的预处理算法,利用ARM完成系统的整体控制。本文主要工作:根据ZYNQ芯片的特点,利用软硬件协同设计的方法对软、硬件功能进行划分。使用ARM控制整个系统运行,将预处理阶段耗时的部分用FPGA进行优化设计,从而使图像数据能够在系统中较为高效的转移、存储、运算等。针对双目视觉应用中常用的预处理算法,结合FPGA的特点进行优化设计,实现中值滤波、基于排序的图像增强、高斯滤波、拉普拉斯锐化、Sobel算子梯度检测这些图像预处理算法,以获取比纯软件方式实现更好的执行效率。将芯片中的FPGA与ARM部分相结合,利用FPGA加速Harris角点检测中的梯度计算以及高斯滤波这两个阶段,使用ARM完成角点响应值计算以及角点选取工作。通过软硬件相结合方式设计实现的Harris角点检测,在保证算法执行效率的基础上又有较好的灵活性。本文对于使用软硬件协同设计方法,通过FPGA加速图像预处理的过程做了有益尝试,为双目视觉系统的图像特征匹配、目标物体距离计算做了铺垫。同时,本文也是ZYNQ系列芯片应用在图像处理中的一次实践,有一定的应用价值。