基于FPGA的视频图像处理系统.docx
《基于FPGA的视频图像处理系统.docx》由会员分享,可在线阅读,更多相关《基于FPGA的视频图像处理系统.docx(45页珍藏版)》请在冰豆网上搜索。
基于FPGA的视频图像处理系统
大连海事大学
硕士学位论文
基于FPGA的视频图像处理系统姓名:
杨宁
申请学位级别:
硕士专业:
电路与系统指导教师:
董辉;白桂欣20080301
中文摘要
摘要
随着电子技术和计算机技术的飞速发展,视频图像处理技术近年来得到极大的重视和长足的发展,其应用范围主要包括数字广播、消费类电子、视频监控、医学成像及文档影像处理等领域。
当前视频图像处理主要问题是当处理的数据量很大时,处理速度慢,执行效率低。
而且视频算法的软件和硬件仿真和验证的灵活性低。
本论文首先根据视频信号的处理过程和典型视频图像处理系统的构成提出了基于FPGA的视频图像处理系统总体框图;其次选择视频转换芯片S丸钾113,完成视频图像采集模块的设计,主要分三步完成:
1配置视频转换芯片的工作模式,完成视频转化芯片SAA7113的初始化:
2・通过分析输出数据流的格式标准,来识别奇偶场信号、场消隐信号和有效行数据的开始和结束信号三种控制信号,并根据控制信号,用Verilog.硬件描述语言编程实现图像数据的采集;3分析SRAM的读写控制时序,采用两块SRAM完成图像数据的存储。
然后编写软件测试文件,在ISESimulator仿真环境进行程序测试与运行,并分析仿真结果,验证了数据采集和存储的正确性;最后,对常用视频图像算法的MATI.AB仿真,选择适当的算子,采用工具MATIJLB、SystemGeneratorforDSP和ISE,利用模块构建方式,搭建视频算法平台,实现图像平滑滤波、锐化滤波算法,在Simulink中仿真并自动生成硬件描述语言和网表,对资源的消耗做简要分析。
本论文的创新点是采用新的开发环境SystemGeneratorforDSP实现视频图像算法。
这种开发视频图像算法的方式灵活性强、设计周期短、验证方便、是视频图像处理发展的必然趋势。
关键词:
视频信号;视频采集;Verilog;图像算法
英文摘要
ProcessingSystemofVideoImagebasedonFPGA
Abstract
Withthe
rapiddevelopmentofelectronicsandcomputertechnology,videoimageprocessingisincreasinglybeingpaidmoreattentionandbeingusedinavarietyoffields,DMB(DigitalMultimediaBroadcasting,consumerelectronics,surveillance,medicinal
imaginganddocument
imageprocessingandSOon.Themainchallengesforimage
processingduetoboththespeedandthelow-efficiencywhentheenormousamountofvideodatarequireperframe.Thesecondchallengeisdealingwithsimulationtimeandtestenvironment.
Simulink,theyCanautomatically
generatedHDLfiles
andNetlist.Anditcanbeusedin
theISE.
TheinnovationpointofthepaperistodevelopvideoimagealgorithminSystemGeneratorforDSP,It’Stheidealplatformandthetrendofvideoimageprocessing,forflexibleandconvenience.
KeyWords:
VideoSignaI:
VideosampIe;VeriIog;ImageaIgorithm
大连海事大学学位论文原创性声明和使用授权说明
原创性声明
本人郑重声明:
本论文是在导师的指导下,独立进行研究工作所取得的成果,撰写成硕士学位论文==基王壁鱼△的视麴图堡处理丕缠:
。
除论文中已经注明引用的内容外,对论文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本论文中不包含任何未加明确注明的其他个人或集体已经公开发表或未公开发表的成果。
本声明的法律责任由本人承担。
论文作者签名:
而乎略年弓月彪日
学位论文版权使用授权书
本学位论文作者及指导教师完全了解“大连海事大学研究生学位论文提交、版权使用管理办法”,同意大连海事大学保留并向国家有关部门或机构送交学位论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大连海事大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,也可采用影印、缩印或扫描等复制手段保存和汇编学位论文。
保密口,在——年解密后适用本授权书。
本学位论文属于:
保密口
不保密舐请在以上方框内打“√”
论文作者签名:
而导日期:
导师签名:
毒哮加多年≥月艘目
基于FPGA的视频图像处理系统
第1章绪论
1.1视频图像技术的发展和应用
图像(视觉信息是人们由客观世界获得信息的主要来源之一,约占人们依靠五官由外界获得信息量的70%以上。
因此由图像所提供的直观作用是其它途径获取信息所无法比拟的。
视频图像就是连续的静态图像的序列,是一种对客观事物更为形象,生动地描述。
随着电子技术和计算机技术的飞速发展,视频图像技术近年来得到了极大的重视和长足的发展,人们在选择学习和娱乐信息时,不再是单纯的枯燥文字信息,丰富多彩的图片和视频信息越来越成为人们的首选。
并且对视频和图像处理技术的要求不断攀升,新的需求催生新的技术,主要体现在从标准清(SD到高清(HD,分辨率越来越高,要求实时处理的数据量越来越大;视频和图像压缩技术日益复杂,如MPEG.4第2部分,H.264AVC,JPEG2000等;对视频系统智能化的要求提高,如智能拍摄、运动检测、对象识别、多通道、画中画、透明叠加效果等;消费者欣赏能力的提高,希望图像更稳定、更清晰、色彩更艳丽、亮度更符合人眼的感官需求【¨。
随着计算机技术和半导体工业的发展,视频图像处理技术的应用将更加广泛,总结其应用领域,大致有以下几个方面:
(1在通信和电子商务中的应用。
当前通信的主要发展方向是声音、文字、图像和数据相结合的多媒体通信,也就是将电话,电视和计算机以三网合一的方式在数字通信网上传输。
其中以视频图像通信最为复杂和困难,因其数据量十分巨大,如传送彩色电视信号的速率达100Mb/s以上。
要将这样高的速率的数据实时传送出去,必须采用图像处理中的编码压缩技术来达到目的。
(2在生物医学中的应用。
视频图像处理在生物医学工程方面有非常广泛的应用,无论是临床诊断还是病理研究都采用图像处理技术,而且很有成就。
它的直观、无创伤、
第1章绪论
安全方便等优点受到了普遍的接受。
除了最成功的x射线、CT技术之外,还有一类是对医用显微图像的处理分析,即自动细胞分析仪,如红细胞、白细胞分类,染色体分析,癌细胞识别以及超声波图像的分析等。
(3在军事、公安中的应用。
在军事方面主要用于导弹的精确制导、各种侦察相片的判读,具有图像、传输、存储和显示的军事自动化、指挥系统,飞机、坦克和军舰模拟训练系统等;在公安业务方面实时监控、案件侦破、指纹识别、人脸识别、虹膜识别以及交通流量监控、事故跟踪、银行防盗等。
特别是目前已全面投入运行的高速公路不停车自动收费系统中的车辆和车牌的自动识别【21。
1.2课题的研究意义
传统的视频图像处理技术主要用PC机来做实时图像处理,由于PC机的结构是基于冯・诺依曼的复杂指令计算机,本质上是顺序执行指令,不能实现并行处理,故实时性很差;用数字信号处理专用芯片来做实时图像处理,由于数字信号处理专用芯片采用数据与程序空间相分离的哈佛结构,加上数字信号处理专用芯片比较适合做复杂的算法,可以实现一定的并行处理能力和容易实现一些算法,故用来做图像处理比PC机有一定优势。
不过随着新的需求,像实时压缩(H.264高清视频,最为强大的单片DSP也无法实现。
因此就需要一种新的开发环境,实现视频图像处理技术的新要求。
随着半导体工艺的不断进步,FPGA不仅告别了传统观念的价格昂贵,而且性能也显著提升,同时不断集成一些新的硬件资源,比如内嵌DSP块、内嵌RAM块、锁相环(PLL、高速外部存储器接I](DDR等,作为一个平台,FPGA显然已经非常适合于高性能的视频和图像技术,用FPGA来做实时图像处理,由于可编程逻辑的大容量、灵活性,可以实现图像极大的并行处理能力,速度可以比PC机和数字信号处理芯片快,可以实现SOPC(片上可编程系统,帮助用户定制系统,缩短产品研发和更新换代的周期,快速做出有自己特色的,自主知识产权的产品,越来越多的研究人员开始致力于有关FPGA的视频图像处理技术I引。
1.3论文组织结构
本论文主要研究的是基于FPGA的视频图像处理系统各功能模块的设计与实现,并
基于FPGA的视频图像处理系统
对这些模块算法进行仿真。
全文共分5章,其内容安排如下:
第1章绪论。
简要介绍了当前视频图像处理技术的发展和应用,本论文提出的意义以及论文的组织结构。
第2章视频图像处理的整体设计。
首先简要地介绍视频信号及视频信号处理过程。
其次在研究典型视频图像处理系统的前提下,设计基于FPGA的视频图像处理系统,系统主要包含两个部分:
视频图像采集模块,视频图像算法模块。
第3章系统开发平台FPGA及硬件选型。
讨论了FPGA的结构特点、开发流程及开发软件和视频图像处理系统的硬件选择。
如何在MATLAB中实现FPGA设计,以实现后端视频图像算法的处理。
第4章视频图像采集模块设计。
视频图像采集、存储部分的具体实现。
首先利用12C总线对采集卡SAA7113初始化及配置;其次通过分析视频数据格式,采用软件的方式控制视频图像数据的采集;然后根据存储器的读写时序,完成存储器模块的设计。
最后对各部分产生的仿真结果进行分析。
第5章视频图像算法模块设计。
首先简述了常用的视频图像算法及滤波原理;然后根据模板卷积实现的框图,以基于模型的设计思想,在MATLAB中应用Xilinx公司嵌入到Simulink中的模块,构建一款视频图像处理的模型,实现图像平滑和图像锐化算法。
最后对不伺算法功能进行仿真,并生成硬件描述语言及网表,在ISE中调用实现,并对硬件资源消耗情况做简要分析。
第2章视频图像处理的整体设计
第2章视频图像处理的整体设计
2.1视频信号概述7
在做视频图像处理之前,要了解什么是视频信号,视频信号的组成。
摄像头输出的视频信号满足电视信号的制式,电视信号是指经摄像机的电子扫描和光电转换形成的电信掣41。
目前,世界上实际应用的电视信号制式主要有NTSC制、SECAM制和PAL制三种。
NTSC制是美国推出的世界上最早的一种兼容制彩色电视制式l引。
主要应用于美国、日本等国家。
SECAM制在俄罗斯、法国、埃及等少数国家使用。
PAL制由西德在NTSC制的基础上改进的一种兼容制彩色电视制式,我国和世界上大多数国家采用PAL铝lJ。
PAL制式电视信号16l由“图像信号"、“复合消隐信号”和‘‘复合同步信号"三种信号构成。
复合消隐信号的作用是消除显像管在行、场扫描逆程期间产生的回扫线,使其不干扰图像信号。
复合同步信号分为行同步信号和场同步信号,为确保收发两端扫描的同步。
这三种信号并不是分成独立的通道传输,而是复合在一起,形成一个完整的电视信号。
偶数场一奇数场
图2.1PAL制全电视信号
PAL电视制式规定:
一帧扫描总行数为625行,其中,帧正程575行,帧逆程50行;每行数据包含720个像素。
采用隔行扫描方式,每场扫描312.5行,场正程287.5行,场逆程25行;场频为50Hz,行频为15625I-Iz,行周期为64邮,行正程时间为
基于FPGA的视频图像处理系统
52吣,行逆程时问为121as;电视图像的宽高比为4:
3。
2.2视频信号的处理过程
一幅平面图像可以看成是由许许多多的小单元组成,在图像处理系统中,这些组成画面的细小单元称为像素【71。
像素越小,单位面积上的像素数目就越多,由其构成的图像就越清晰。
电视系统中把构成一幅图像的各像素传送一遍称为进行了一个帧处理,或称为传送了一帧。
将组成一帧图像的像素,按顺序转换成电信号的过程称为扫描。
在PAL制中,图像扫描是隔行的,即一帧图像分两次扫描,扫描到的两幅图像分别称作奇数场和偶数场。
视频图像信号的处理过程就是拍摄视频信号的逆过程。
摄像头输出的是标准PAL制电视信号。
摄像头通过光电转换实现图像到视频信号的转换,也就是扫描的过程。
摄像头每扫描一行图像,加入一个行脉冲,每扫描完一场图像加入一个场同步信号。
同时
为了保证扫描逆程光栅不显示,应加入和同步信号同周期的消隐信号。
对视频信号进行j
处理,需要先进行A/D转换、行/场同步信号的分离等步骤。
采用专用的视频信号进行转换,然后再启用工具处理数字图像信号并得到需要的结果。
最后将结果用适当的方式进行传输。
视频信号处理流程如图2.2所示。
图2.2视频信号处理基本流程
PAL制电视信号转化为数字视频信号后,控制信号有三个:
场参考电压信号VREF,行参考电压信号HREF,奇偶场信号ODD。
VREF高电平表示有效图像信号。
ODD信号高电平表示为奇数场,低电平表示偶数场。
HREF信号表示一行有效的图像数据,一行图像数据包括720个像素。
第2章视频图像处理的整体设计
2.3典型视频图像处理系统
典型的视频处理系统使用一个微处理器来控制一个视频流水线,该视频流水线包括一个视频源和宿,一个用于存储视频数据的大型存储器,和』个视频算法函数,实现一些算法处理功能【81。
如图2.3所示。
图2.3典型视频图像处理系统
视频图像数据的特点是数据量大,计算量大,非常耗费时间。
在视频图像处理系统中,一般采用PC机的CPU用于对图像数据作运算或处理。
由于PC机是基于冯・诺依曼架构的,本质上是顺序执行的。
对于大数据量的图像处理,处理速度慢,实时性不好。
随着数字融合的进一步发展,系统的设计和实现需要更大的灵活性,以解决将完全不同标准和要求的产品,集成为同类产品时引发的诸多问题。
人们迫切要求实现高速图像处理系统的新思路。
大规模现场可编程门阵列FPGA是当今应用极为广泛的方法,使用FPGA作为视频图像处理平台可以充分利用硬件上的并行性,从本质上改善图像处理的速度,使对大数据量的图像处理达到实时性。
2.4本论文视频图像处理系统的总体框图设计
根据对视频信号处理的基本过程和对典型视频图像处理系统框图的理解,结合FPGA的开发优势,本论文构建的基于FPGA的视频图像处理系统框图,如图2.4所示。
基于FPGA的视频图像处理系统
SRAM2
{4{1}制图像预处理H显示
●一
lll
●l
●\7
卜锹宁黩卡吲总铲‘;jf
●
●
S凡~M1
●●
●
上土
视频图像采集模块视频图像算法模块J
图2.4基于FPGA的视频图像处理框图
系统由两部分组成,包括视频图像采集模块、视频图像算法模块。
‘
(1视频图像采集模块:
其主要的作用是采集并存储数据。
FPGA控制采集卡对来自摄像头的n址制全电视信号(CVBS完成视频信号的放大、模数转换和格式转换,提供后端可处理的数字视频数据,FPGA需要完成对视频信号转化后的数字图像进行处理,最终将采集来的数据存储在SRAM中。
具体设计实现在第四章讲解。
(劲视频图像算法模块:
其主要作用是对图像数据进行预处理,实现基本的算法如平滑滤波,锐化滤波,并对处理后的图像进行显示,便于观察。
本论文将在用一种新的开发工具SystemGeneratorforDSP开发视频图像的算法。
具体设计实现在第五章讲解。
第3章系统开发平台FPGA技术及硬件选型
第3章系统开发平台FPGA技术及硬件选型
3.1FPGA的结构及开发流程
随着电子技术的不断发展,数字集成电路广泛应用于社会各个领域,它由早期的电子管、晶体管、小中规模集成电路,发展到超大规模集成电路(VLSIC以及许多具有特定功能的专用集成电路(ASIC。
虽然ASIC成本很低,但设计周期长,投入费用高,风险较大,人们将更加关注于设计灵活,功能强大的现场可编程门阵列FPGA。
FPGA是在PAL(可编程阵列逻辑、GAL(通用阵列逻辑等可编程器件的基础上进一步发展的产物,它是作为专用集成电路(AsIC领域中的一种半定制电路而出现的,既解决了定制电路的不足,又克服了原有可编程器件门电路数有限的缺点。
以下分别从FPGA的原理结构和整体设计流程两大部分来详细介绍FPGA【9州l。
FPGA是基于查找表(Look—Up—Table,LUT结构的PLD(可编程逻辑器件芯片。
查找表本质上就是一个RAM。
目前FPGA中多使用4输入的LUT,所以每一个LUT可以看成一个有4位地址线的16X1的RAM。
当用户通过原理图或HDL描述了一个逻辑电路以后,FPGA开发软件会自动计算逻辑电路的所有可能结果,并把结果事先写入RAM。
这样,每输入一个信号进行逻辑计算就等于输入一个地址进行查表,找出与地址对应的内容,然后输出即可。
奄’砖嘲神””夕/
口口口口口口口口口口口口口口口口ct:
n轴:
臻二。
门¨Un¨¨U口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口口¨¨¨¨¨U¨¨¨¨¨Un¨¨U
¨¨¨¨].
口口口口口口口口口口口口口口口口
基于FPGA的视频图像处理系统
它主要由可配置逻辑模块(CLB、用户可编程I/O(IOB、BlockRAM、数字时钟管理模块(DCM幂I硬件乘法器等组成。
FPGA设计流程分为设计规范、设计输入、功能仿真、综合设计、布局布线:
时序仿真、下载验证等步骤,简明设计流程如图3.2所示。
图3.2FPGA设计流程
第3章系统开发平台FF'C,A技术及硬件选型
(1设计输入
设计输入包括使用硬件描述语言(HDL、原理图输入两种方式。
HDL输入方式是现今设计大规模数字集成电路的良好形式,主要的硬件描述语言有VHDL与VerilongHDL两种形式,HDL描述在状态机、控制逻辑、总线功能方面较强,使其描述的电路能在特定的综合工具(如Synopsys公司的FPGACompilerlI作用下以具体硬件单元较好的实现。
它们都有利于自顶向下的设计,借助于模块化编程,程序的可移植性和复用性好,更不会由于具体的芯片工艺的变化而变化。
而原理图输入在顶层设计、数据通路逻辑、手工最优化电路等方面具有图形化强、便于理解、单元节省等特点。
伪功能仿真
也叫预仿真或逻辑仿真,用户所设计的电路在综合之前首先进行逻辑功能的验证,由于没有用到实现设计的时序信息,所以此时的仿真延时基本上忽略不计,只是初步验证系统的逻辑功能。
它可以在设计初期纠正设计中的错误,一般来说,除了最顶层的原理图要进行功能仿真以外,每一层原理图、每一个用户自生成模块都要进行功能仿真,以便及时发现错误。
(3综合设计
综合就是针对给定的电路实现功能和实现此电路的约束条件,如速度、功耗、成本及电路类型等,通过计算机进行优化,获得一个满足上述要求的电路设计方案,综合的过程是把设计实现到芯片中的过程,把设计分割、映射、布局到器件的各个功能快。
整个过程为:
网表的转换一映射一布局布线一产生时序数据一产生配置文件5个步骤。
综合完成后将产生的报告文件里记录内容包括:
片内资源利用率、输入/输出引脚分布情况以及引脚到引脚间的延时、系统最大延时与最小延时和系统最大工作频率及最小工作频率等重要信息,供优化设计参考。
(4时序仿真
时序仿真是在对设计进行映射、布局布线之后进行的,这时有关的器件延迟、连线延迟等时序参数被提取,生成延迟文件,并将延迟文件反标到仿真模型中去。
如果仿真结果显示由于延时影响而造成逻辑错误,就需要在设计输入时对关键电路进行设计约
基-f.FPGA的视频图像处理系统
束,最终消除延时对电路的影响。
(5下载验证
下载是在功能仿真与时序仿真正确的前提下,将综合形成的位流下载到具体的FPGA芯片中,也叫芯片配置。
将FPGA配置信息加载到FPGA内部后,通过外部观测设备(如逻辑分析仪、数字示波器、DSP程序等来验证FPGA实现的功能。
通过下载验证后,可认为基于FPGA的系统设计任务基本完成。
下载验证对FPGA投片生产具有较大的意义。
3.2硬件描述语言
硬件描述语言HDL是一种用形式化方法描述数字电路和系统的语言【12】。
利用这种语言,数字电路系统的设计可以从上层到下层(从抽象到具体逐层描述自己的设计思想,用一系列分层次的模块来表示极其复杂的数字系统。
利用电子设计自动化(EDA工具,对硬件描述语言模型的数字逻辑进行仿真,经过自动综合工具转换到门级电路网表。
硬件描述语言HDL的发展至今约有20多年的历史,它成功地应用于系统开发的设计、仿真、验证和综合等各个阶段。
目前在中国,比较有影响的主要有两种硬件描述语言:
超高速集成电路硬件描述语言VHDL、VerilogHDL语言。
VefilogHDL是在1983年,由GateWayDesignAutomation公司为其模拟器产品开发的硬件建模语言。
由于他们的模拟仿真器产品的广泛应用,VerilogHDL作为一种便于使用的语言逐渐为众多设计者所接受,1990年,VerilogHDL语言被推向公众领域,OVI(OpenVerilogIntemational坌[t织致力于推广VerilogHDL语言的发展。
基于VerflogHDL的优越性,IEEE于1995年制定了VerilogHDL的IEEE标准。
Verilog
HDL自身的优势主要在于首先它早在1983年就已经推出,拥有广泛的设计群体,其设计资源丰富;其次它是一种非常容易掌握的硬件描述语言,只要有C语言的编程基础,通过一段时间学习和实际操作,可以在很短的时间内掌握这种设计技术。
考虑其灵活性和实用性本论文将采用VerilogHDL作为硬件开发语言。
第3章系统开发平台FPGA技术及硬件选型
3.3课题中FPGA的开发软件和器件概述
目前,FPGA的常用丌发工具软件大体上可分为两类:
一类是由专业的EDA软件开发公司提供的第二方软件,另一类是山FPGA芯片厂商直接提供的丌发软件。
限’J二篇幅,在此仅对本论义所用剑的Xilinx公司集成化,f:
发工具ISE做简要介绍。
ISEll3d5】是Xilinx公司提供的集成化FPGA开发软件。
Xilinx作为当今世界最大的FPGA/CPLD生产厂商之‘,长期以来一直推动着FPGA/CPLD技术的发展。
该平台集成了从设计输入、仿真、逻辑综合、布局布线与实现、时序分析、芯片下载与配置、功率分析等几乎所有设计流程所需的工具。
在ISE中,项目导航ff/导(ProjectNavigator是项目管理工具的主体,集成了设计过程中要使用的一系列软件工具,主要包括设计输/N.(DesignEntry、设计综合(DesignSynthesis、设计约束(DesignConstraints、设计