论文部分内容阅读
近年来,随着科学技术的高速发展,图像匹配技术在科研领域中逐渐成为一个重要研究热点,并且在计算机视觉、医学影像、军事自动目标识别、卫星图像的编译和分析等领域得到越来越广泛的利用。SIFT算法是一种基于尺度空间的、对图像缩放、旋转甚至仿射变换保持不变性的特征匹配算法,因此其算法本身及其衍生算法对图像匹配技术有着重要的研究意义和价值。现如今的图像匹配大部分都是基于软件实现的。由于数据计算量的的巨大,图像匹配系统的实时性和高精度性很难通过软件确保。随着FPGA和SoPC技术的发展,硬件系统逐渐拥有了足够的资源来完成图像处理计算,同时由于FPGA处理数据的并行性,可以大大提升图像匹配的处理速度。本文主要研究并设计了基于SIFT算法的图像匹配SoPC系统,主要研究了 SIFT算法中的欧氏距离匹配模块,包括穷举法、2-近邻比值算法。由于描述子数据量过多而难以将匹配操作硬件化,针对此特点,本文首先将描述子数据先存放在DDR中,然后利用“边传输边计算”的方法实现了算法的硬件移植,同时采用多级流水线加速了数据处理,减少了逻辑资源的使用,优化了时序。之后合理利用了现有资源,通过扩大输入数据位宽、增加处理模块等操作修改并完善了欧氏距离匹配模块,加速了模块的处理速度。之后基于AXI总线协议将模块封装成Match自封装IP核,并基于Zynq-7000平台搭建了硬件环境,实现了图像匹配系统的硬件部分。之后参照Xilinx SDK的软件系统设计流程,使用C语言设计和实现了图像匹配系统的操作系统层,以实现ARM端和FPGA端之间的数据传输和参数控制等功能。在利用Modelsim对欧氏距离匹配模块进行了功能仿真之后,使用ZC702开发板对整个图像匹配系统进行了软硬件协同测试。最后的测试结果表明,该图像匹配系统满足设计要求,具有良好的实时性。