fpga的机器视觉算法验证平台算法实例编写

摘 要 本课题主要针对的是基于FPGA的机器视觉算法验证平台的研究。硬件部分采用摄像头采集图像,输入到开发板中,软件部分使用开发工具对图像进行处理,输出到VGA显示。该平台的主控制器选用zynq7000开发板,图像传感器采用OV7670摄像头;软件上选用VIVADO和SDK开发工具。在使用VERILOG语言搭建的算法处理的框架结构中,对摄像头采集到的图像信息使用预先编写好的缩放、边缘检测、反色等算法进行图像处理,最后将结果输出到VGA显示。
目 录
绪论 . . . . . . . . . . . . . . . . . . . . . . . 1
课题研究的背景与意义 . . . . . . . . . . . . . . . . . 1
基于FPGA的机器视觉的发展现状和趋势. . . . . . . . . . 1
系统方案设计. . . . . . . . . . . . . . . . . . . . . . . 2
2.1 平台介绍 . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 系统框架介绍 . . . . . . . . . . . . . . . . . . . . . 2
机器视觉算法验证平台软件设计 . . . . . . . . . . . 4
3.1 IP核介绍. . . . . . . . . . . . . . . . . . . . . . . . 4
3.2 摄像头控制 . . . . . . . . . . . . . . . . . . . . . . . .5
第四章 机器视觉算法验证平台的算法实例 . . . . . . . . . . 6
4.1 处理前的图像 . . . . . . . . . . . . . . . . . . . . . 6
4.2 算法介绍. . . . . . . . . . . . . . . . . . . . . . . . 6
4.2.1边缘检测算法. . . . . . . . . . .
 *好棒文|www.hbsrm.com +Q: &351916072& 
. . . . . . . . 6
4.2.2缩放算法. . . . . . . . . . . . . . . . . . . . . 9
4.2.3反色算法. . . . . . . . . . . . . . . . . . . . . 9
第五章 软硬件联调测试. . . . . . . . . . . . . . . . . . . . . 10
5.1 硬件部分测试 . . . . . . . . . . . . . . . . . . . . . 10
5.2 最终测试结果. . . . . . . . . . . . . . . . . . . . . 10
结束语. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
致谢. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
参考文献. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 第一章 绪论
1.1 课题研究的背景与意义
现代社会,人们获得信息的主要途径就是图像。我国最伟大发明之一的汉字,也是由图像得到的灵感,得到象形文字,最后演变为现在的文字。所以,图像是当之无愧的信息载体。
以前用来保存采集图像的方法只有一个,那就是画下来。现代社会,随着照相机、摄像机的发明,图像采集变得非常简单。虽然这些设备的发明拓宽了人们的视野,让人们可以看到浩瀚无垠的宇宙,还可以看到肉眼无法看到的细胞、原子等等。但是,由于设备自身原因,以及一些干扰因素如噪声、光照等等,采集到的图像质量变得比较差,图像信息不完整。积极进取的人们不满足于目前采集到的图像的质量,所以就有了图像处理。抑制噪声、消除或努力去消除一些干扰因素,改善图像质量,或者为了满足某些特殊需求,对图像做一些特殊的处理,这些都是当今研究人员研究的主要方向。
计算机技术的迅速发展,集成电路的集成度在遵循着摩尔定律逐渐提高,图像处理的算法也日趋完善,应用越来越普及。工业、医学、科学研究领域等等,图像处理在其中扮演着重要的角色,为人们带来便利,也取得了巨大的经济效益。
1.2 基于FPGA的机器视觉的发展现状和趋势
FPGA,即为Field Programmable Gate Array,是一种高性能可编程逻辑器件,除了可以实现高速的硬件计算,最大的特点还是其能够实现并行运算,并且能够轻易的修改其内部的逻辑功能。GPU(Graphic Processing Unit)的并行运算能力要强于FPGA,但是其功耗是FPGA的百倍以上。专用集成电路ASIC性能强、体积小、功耗较低,是有高性能嵌入式视觉系统需求的人的首选,但是专用集成电路开发周期长,而且修改不方便,没有通用性。随着技术的不断进步,FPGA集成度越来越高,不断满足开发人员的设计要求,所以FPGA将会是嵌入式视觉系统设计的主角。
近年来,越来越多的人把目光转向了基于FPGA的机器视觉系统开发,低层次图像处理、特征点提取、目标跟踪等方面,是未来基于FPGA的机器视觉系统的发展趋势。
第二章 系统方案设计
2.1 平台介绍

图1 硬件平台
硬件平台如图1所示,使用摄像头对图像进行采集,将采集到的图像信息放入预先搭建好的算法框架中,加入算法进行处理。本次设计的平台使用纯FPGA的结构,开发工具VIVADO中调出相关的IP核(下面会有纤细介绍)进行连接,最终完成系统框架的搭建。再转入SDK中进行程序编辑,对平台进行控制(包括摄像头控制,图像处理等)。
2.2 系统框架介绍

图2 系统框架
系统框架图如图2所示.
1.图像显示模块:图像采集部分采用的是OV7670图像传感器。这是一个1/3英寸的宽视频图形阵列格式、CMOS有源像素数字图像传感器。主动成像像素阵列为752×480,在实际使用中,运用对摄像头的开窗尺寸控制,截取像素阵列640×480,存入存储器中。
2.处理器模块:ZYNQ开发板的核心部分。其中的APU由两个CortexTMA9微处理器,,缓存器和存储器构成。每个微处理器都可以运行高达800MHz,都包含独立的32KB L1指令高速缓存和数据高速缓存。两处理器共享一个512KB L2高速缓存和256KB的片上存储器等基本单元。与内存接口、I/O外设和互联组成ARM处理器模块。负责对摄像进行控制以及处理采集到的图像。也是本次设计的核心部分之一。

版权保护: 本文由 hbsrm.com编辑,转载请保留链接: www.hbsrm.com/dzxx/dzkxyjs/1590.html

好棒文