Quartus II SOPC Builder 图像处理
图像处理算法具有多样性和复杂性,而随着图像实时性要求的增加,处理速度成为了图像处理的瓶颈。可编程阵列(FPGA)具有硬件可编程性和并行处理性,而利用 FPGA 来实现的可编程片上系统(SOPC)既具有模板设计的特性,又具有ASIC的系统级设计特性,可以大大缩短系统的开发周期。
1 FPGA特点
从某些方面上看,FPGA 也是一种专用集成芯片,它们具有专用集成芯片的特点,同时,还有自己付的优势:(1)FPGA 需要的较少的资金投入,风险较低。FPGA 设计者可以在特定的软硬件平台上进行芯片的功能方面设计,不需要投片,所以在这方面没有风险,也不用任何费用。(2)总的来说,FPGA 的规模不断变大,开发投入不断减少,可多次编写、擦除,功能强,灵活且保密性好,有较智能的开发工具,因此,用可编程门阵列进行设计的优势越来越明显,应用领域越来越广。
2 系统总体设计
该系统主要由嵌入式 NIOS II 处理器,外部 SRAM、FLASH 等存储器,PIO,外部 SD卡以及系统内部相关组件构成,如图 1 所示。系统的工作流程是:首先通过 SD 卡接口驱动外部 SD 卡,读取 SD 卡中存储的图像,随后利用简化 SURF 算法,定位罔像中的特征点并建立描述子,虽终实现特征线段的计算所求取的特征线段可以用来进行日标定位。
3 系统软硬件开发
系统开发由硬件和软件两部分组成。系统硬件是最底层的部分。首先在SOPC Builder中完成系统软核的搭建,随后由 Quartus II 建立系统顶层模块,井编译生成系统,软件部分在 NIOS IIIDE 中开发,编程实现设备驱动、图像读取、简化 SURF 算法以及特征线段的计算。
3.1 硬件组成
首先根据系统需要选择台适的 NIOS II CPU 类型以及配套相关外设,SOPC Builder会自动将这些组件连接到 Avalon 总线上,随后对系统进行地址和中断号的分配,即可生成SOPC 软核。本系统中的 CPU 代表 NIOS II 处理器,频率为 120MHz,为提高高系统性能,选择了快速型(NIOS II/f)NIOS II 处理器。选择了速度较快的 SRAM 和一片 32Kbyte 的片上存储器,用来来提高系统速度。另外,还在系统中添加了 Avalon 流水桥,使部分设备通过流水桥与NIOS II进行通信。形成流水线,提高了系统的最大时钟频率。在SOPC Builder中生成软核之后,使用 Quartus II 建立系统的顶层模块,并进行编译,生成系统的硬件平台。
3.2 软件设计
首先编程实现驱动外部 SD 卡,读取存储在其中的图像文件;随后,利用简化的 SURF算法提取图像中的特征点。并建立描述子,完成图像匹配。本系统所用 SURF 算法主要在两方面进行了简化:(1)图像金字塔的层数。由于本系统的同的是求取特征线段的长度,因此只需要少量的特征点即可,故系统所建立的图像金字塔仅有 3 层,以减少建立图像金字塔所用的时间。(2)简化特征点描述子。描述子的建立方法是借鉴文献中的方法,并没有使用原 SURF 中的方法。使用建立过程较为简单的方法虽然提供的信息没有原算法多,但却可以提高系统的处理速度。
4 系统优化
为了更好地利用FPGA 资源,改善系统运行速度的,对系统进行了软件和硬件方面的优化。
4.1 硬件优化
硬件优化主要在以下几方面:(1)NIOS II 处理器类型的选择。快速型处理器内核具有较高的性能,可以实现较快的处理速度。(2)添加浮点自定义指令。SURF 算法中有大量的浮点数计算,通过添加浮点自定义指令可以加快浮点数的计算速度,减少系统处理时间。(3)Quartus II 的编译选项。在Quartus II的编译选项中通过编译选项,选择对速度进行优化,改善系统性能。
4.2 软件优化
软件优化主要在以下 4 个方面:(1)算法优化。使用了简化的 SURF 算法,降低了算法的复杂度和运算量。(2)优化工程大小。NIOS II 工程的运行速度与工程大小有直接关系。(3)程序运行内存的选择。系统 RAM使用了速度较快的 SRAM,并使用 SOPC 系统中配置的片上存储器来存放可读写的数据以及栈内存,提高了数据读取的速度,从而提高了系统的性能。(4)编译器优化。在NIOS II IDE 的优化选项中,选择了最高级别的优化选项 Optimize(-03),测试表明使用该级别的优化选项的运行速度确实是最快的。
5 结论
本文开发了一种基于 FPGA 的目标图像距离特征提取系统。该系统可以实现图像读取、SURF 特征点提取、特征点描述子的建立以及特征线段的计算,属于 DSP+FPGA 目标被动定位系统中的FPGA 图像处理平台部分。
参考文献
[1]刘中合,王瑞雪,王锋德等.数字图像处理技术现状与展望[J].计算机时代 ,2005,9:6-8.
作者单位
中州大学 河南省郑州市 450044