基于FPGA的快速图像处理系统的设计毕业设计论文
fpga毕业设计

fpga毕业设计FPGA(Field Programmable Gate Array)是一种可编程逻辑设备,由于其灵活性和高性能的特点,被广泛应用于各种领域,例如数字信号处理、嵌入式系统和通信等。
在本次毕业设计中,我选择了一个基于FPGA的项目,以展示FPGA的优点和应用。
本次毕业设计的项目是基于FPGA的图像处理系统。
该系统主要包括图像传感器、FPGA开发板和显示设备。
首先,通过图像传感器将实时拍摄到的图像传输到FPGA开发板。
然后,FPGA将对接收到的图像进行处理,并将处理结果传输到显示设备进行显示。
在图像处理方面,我选择了一些基本的图像处理算法,如边缘检测、滤波和图像增强等。
这些算法可以有效地改善图像的质量和清晰度,并提供更好的视觉效果。
在FPGA开发板上,我会利用FPGA的并行计算能力和高速数据处理能力,通过硬件描述语言(HDL)编写相应的逻辑电路,实现这些算法的并行运算,从而提高图像处理的速度和效率。
另外,为了更好地展示FPGA的灵活性和可编程性,我计划设计一个可配置的图像处理系统。
用户可以根据自己的需求,选择不同的图像处理算法,并根据需求调整算法的参数和设置。
通过在FPGA开发板上重新编程逻辑电路,用户可以实现不同的图像处理功能和效果。
在实现之前,我将进行一些前期的工作,包括FPGA的开发环境搭建、相关的图像处理算法的研究和实验验证。
同时,我也会参考相关的文献和资料,了解已有的图像处理算法在FPGA上的实现方法和性能表现,以便更好地设计和优化系统。
总的来说,本次毕业设计的目标是基于FPGA的图像处理系统的设计和实现,通过利用FPGA的优点和特性,提高图像处理的速度和效率,并实现用户可配置的图像处理功能。
通过该项目,我将掌握FPGA的开发和应用技术,以及图像处理算法的实现和优化方法,为以后的研究和工作打下坚实的基础。
同时,通过展示该项目的成果,也能够展示FPGA的广阔应用前景和潜力。
基于FPGA的图像处理加速技术研究

基于FPGA的图像处理加速技术研究随着科技的发展,图像处理技术逐渐成为人们生活中不可或缺的一部分。
同时,图像处理技术也逐渐面临着越来越广泛的应用需求。
在这样的背景下,基于FPGA的图像处理加速技术应运而生。
本文将探讨基于FPGA的图像处理加速技术研究的现状和未来发展方向。
一、FPGA技术概述FPGA(Field-Programmable Gate Array)中文名叫现场可编程门阵列,是一种可编程逻辑芯片,可以在上面设计出各种数字逻辑电路,并对其进行编程实现。
与ASIC(Application-Specific Integrated Circuit)芯片相比,FPGA芯片实现的功能更加灵活,兼容性更好。
二、FPGA在图像处理中的应用FPGA在图像处理中的应用十分广泛,可以实现数字图像处理、数字信号处理、图像滤波、边缘检测、图像分割、图像增强、运动估计和运动补偿等。
对于图像处理中的复杂计算问题,FPGA可以通过并行计算进行高速处理,从而大大提高了图像处理效率。
此外,FPGA的高灵活性和强大的可编程性也为图像处理领域带来了更多的技术创新。
三、基于FPGA的图像处理加速技术研究现状当前,基于FPGA的图像处理加速技术已经被广泛应用于多个领域,例如医疗图像处理、视频图像处理和视觉传感器等。
其中,医疗图像处理是最为广泛应用的领域之一。
在医疗图像处理中,FPGA可以处理放射性图像、磁共振图像和计算机断层扫描图像等医疗图像,可以实现图像去噪、图像增强和图像分割等功能。
此外,基于FPGA的图像处理加速技术还被广泛应用于军事图像处理和安防图像处理领域。
在军事领域,FPGA可以实现高速图像传输和实时图像分析。
在安防领域,FPGA可以实现人脸识别、车牌识别和动态目标检测等功能。
四、基于FPGA的图像处理加速技术研究未来发展方向随着科技的不断发展,基于FPGA的图像处理加速技术也面临着更广阔的发展空间。
未来,基于FPGA的图像处理加速技术将继续向多媒体领域、虚拟现实领域逐步拓展。
基于FPGA的图像处理系统研究

基于FPGA的图像处理系统研究随着技术的发展和应用的推广,图像处理在各个领域中扮演着越来越重要的角色。
其中,基于FPGA技术的图像处理系统由于其高性能、低功耗、高速度和灵活性等优点而备受关注。
在本文中,我们将探讨基于FPGA的图像处理系统的研究。
一、简述FPGA技术FPGA是一种新型的可编程逻辑器件,与传统的ASIC(专用集成电路)相比,其具有更高的灵活性和可重构性。
FPGA通过在内部构建一系列可编程单元(CLB)、I/O模块和可编程开关等硬件资源来实现用户定义的逻辑电路,并且具有快速配置、低功耗、高并发等优点。
二、基于FPGA的图像处理系统的研究现状在基于FPGA的图像处理系统方面,目前已经有许多研究成果。
其中,最常见的应用领域包括数字信号处理、视频图像处理、计算机视觉等领域。
在数字信号处理领域,FPGA可以通过实现FFT(快速傅里叶变换)、滤波和编码等操作来提高处理效率和精度;在视频图像处理领域,FPGA可以通过实现图像增强、压缩和卷积等操作来提高处理速度和质量;在计算机视觉领域,FPGA可以通过实现人脸识别、目标检测和图像识别等操作来实现智能化处理。
三、基于FPGA的图像处理系统的设计与实现基于FPGA的图像处理系统的设计和实现,主要包括以下几个步骤:1、系统设计首先,需要确定图像处理系统的功能和性能需求。
根据需求,设计电路原理图和硬件系统框图。
在系统设计时,需要充分考虑FPGA管脚分配、时钟同步等问题。
2、硬件实现根据系统设计,采用Verilog HDL等硬件描述语言编写电路描述代码,并进行仿真验证。
之后,将电路描述代码综合成网表,再进行布局布线和打版。
最后,将打板后的FPGA芯片焊接到PCB板上,形成可编程电路板。
3、软件实现软件实现主要包括编写适用于硬件系统的驱动程序和图像处理算法。
驱动程序可以通过C语言、Python等编写。
图像处理算法可以通过OpenCV、Vivado HLS等软件实现。
基于FPGA的高速图像处理系统的设计

基于FPGA的高速图像处理系统的设计摘要: 在本文中,设计了一个高速图像处理系统,是为了解决这样的问题,如出现在车载计算机图像处理中的低系统集成,低速的处理过程。
通过配置Nios II软核CPU和一些基于主要硬件FPGA的图像预处理,处理和显示的功能模块和设计的系统软件,使得该系统实现了图像的采集,记忆和重叠功能。
由于采用可编程芯片和并行处理技术,该系统集成度高,好维修,图像处理速度快、实时性强。
关键词:图像处理,FPGA,Nios II CPU。
I.介绍近年来,车载计算机中存在的主要问题集中在两个方面。
首先,在使用低功率损耗的PowerPC CPU的状态下,对于图像的采集和显示,一个集成板是必需的。
其次,随着视频图像和红外热像仪的广泛使用,还有电子一体化的发展,应该设计出一个高速的图像处理系统。
为了解决这两个主要的问题,作者设计了一个基于FPGA的高速图像处理系统用来识别重叠的多通道图像信息。
功能模块,比如图像采集,处理和显示,都可以在一个单一的FPGA芯片上实现,它减少了外围电路,提高整个系统的性能。
因为并行处理技术,处理速度和实时性都大大的提高。
II.图像处理算法分析A.基于双线性插值的图像放大基于像素的放大倍率的方法原理简单、快速,但它只是复制原始像素的邻域。
随着放大系数增大,图像会出现明显的块锯齿,不能保留原始图像的边缘信息。
这个问题是可以通过双线性插值来解决。
双线性插值可以消除锯齿,保留原始图像的边缘信息和获得更好的视觉效果。
图1.原始图像(略)图2.放大图像(略)图1是原始图像,其中f ij,f i,j+1,f i+1,j,f i+1,j+1是相邻的像素块。
图2是在水平方向上放大K倍,在垂直方向放大L倍的图像。
f ij,f i,j+1,f i+1,j,f i+1,j+1在放大图像中只改变位置但像素值保持不变。
因此,我们可以得到以下方程:在放大的图像中,我们定义保留原始图像信息的数据作为初始数据,它的坐标值是原始图像的整数,还从原始图像的数据中定义需要插值运算的数据,这些插值数据的坐标值不是原始图像的整数倍数。
基于FPGA的高速图像处理系统设计与实现

基于FPGA的高速图像处理系统设计与实现随着科技的飞速发展,图像处理技术也在不断地提高和改进,应用范围也越来越广泛。
而随着计算机技术的进步,FPGA芯片在图像处理领域中的应用也越来越广泛。
本文将重点讲述基于FPGA的高速图像处理系统的设计和实现。
一、FPGA芯片简介FPGA芯片(可编程门阵列)是一种可编程逻辑器件,可以用于设计数字电路。
它不同于ASIC(专用集成电路)和DSP(数字信号处理器),因为它可以任意定义逻辑电路,并在设计完成后实时修改其功能。
FPGA芯片有一个重要的优点:高速。
由于它可以支持并行电路设计,因此在图像处理领域中,使用FPGA芯片可以大大提高图像处理效率。
二、基于FPGA的高速图像处理系统的设计1. 芯片选择在设计基于FPGA的高速图像处理系统时,首先需要选择一个FPGA芯片。
这里我们选择了Xilinx公司的Spartan-6系列芯片。
Spartan-6系列芯片有很多型号,我们选择了其中的Spartan-6LX150T型号。
这个型号拥有150,000个逻辑单元和4.8Mbits的存储器,可以满足我们的高速图像处理需求。
2. 图像处理算法实现在设计高速图像处理系统之前,需要选择合适的图像处理算法。
这里我们选择了几个常用的算法,包括卷积、中值滤波和形态学处理。
这些算法的实现需要使用Verilog语言来编写FPGA程序。
卷积是一种重要的图像处理算法,可以用于提取图像的特征。
在卷积算法中,需要使用一个卷积核对图像进行卷积运算。
这个卷积核可以根据不同的图像处理需求进行定义。
卷积运算需要使用乘法器和加法器,而FPGA芯片拥有许多这样的硬件单元,因此可以实现快速的卷积运算。
中值滤波是一种常见的图像平滑算法,可以用于去除图像中的噪声。
在中值滤波算法中,需要对每个像素周围的像素进行排序,然后选择中间值作为当前像素的值。
这种排序运算可以使用快排等算法来实现,但是这样会导致算法的时间复杂度较高。
基于FPGA的图像处理系统设计与实现

基于FPGA的图像处理系统设计与实现图像处理是计算机视觉领域中的重要技术之一,可以对图像进行增强、滤波、分割、识别等操作,广泛应用于医学图像处理、工业检测、安防监控等领域。
而FPGA(Field Programmable Gate Array)可编程门阵列,则是一种自由可编程的数字电路,具有并行处理能力和灵活性。
本文将介绍基于FPGA的图像处理系统的设计与实现。
一、系统设计流程1. 系统需求分析:首先需要明确图像处理系统的具体需求,例如实时性、处理的图像类型、处理的算法等。
根据需求,选择合适的FPGA芯片和外设。
2. 图像采集与预处理:使用图像传感器或摄像头采集图像数据,然后对图像进行预处理,如去噪、增强、颜色空间转换等,从而提高后续处理的准确性和效果。
3. 图像处理算法设计与优化:根据具体的图像处理需求,选择适合的图像处理算法,并对算法进行优化,以提高处理速度和效率。
常用的图像处理算法包括滤波、边缘检测、图像分割等。
4. FPGA硬件设计:基于选定的FPGA芯片,设计硬件电路,包括图像存储、图像处理模块、通信接口等。
通过使用硬件描述语言(如Verilog、VHDL)进行功能模块设计,并进行仿真和验证。
5. 系统集成与编程:将设计好的硬件电路与软件进行集成,包括FPGA程序编写、软件驱动开发、系统调试等。
确保系统的稳定运行和功能实现。
6. 系统测试与优化:对整个系统进行完整的测试和验证,包括功能性测试、性能测试、稳定性测试等。
根据测试结果,对系统进行优化,提高系统的性能和可靠性。
二、关键技术及挑战1. FPGA芯片选择:不同的FPGA芯片具有不同的资源和性能特点,需要根据系统需求选择合适的芯片。
一方面需要考虑芯片的处理能力和资源利用率,以满足图像处理算法的实时性和效果。
另一方面,还需要考虑芯片的功耗和成本,以便在实际应用中具有可行性。
2. 图像处理算法优化:在FPGA上实现图像处理算法需要考虑到算法的计算复杂度和存储开销。
基于FPGA的图像处理系统设计与实现

基于FPGA的图像处理系统设计与实现第一章:引言近年来,图像处理技术在许多领域中的应用越来越广泛。
图像处理可以被应用于医学、安防、工业、军事等领域中。
由于图像处理对计算机性能的高要求,因此传统的计算机架构往往难以满足处理需求。
随着FPGA技术的不断发展,基于FPGA的图像处理系统成为了一种选项,它可以充分利用FPGA的并行计算能力实现高效图像处理。
本文将介绍基于FPGA的图像处理系统的设计和实现。
第二章:FPGA技术概述FPGA是现场可编程门阵列的缩写,是一种可编程逻辑芯片,具有高度的灵活性和可重构性。
在FPGA中,开发人员可以在外部进行编程,以改变硬件电路的功能。
FPGA的主要优点是其高度的并行化能力,这使得它成为图像处理领域的主要选择之一。
FPGA还具有低功耗和低时延等特点,这对于实时图像处理十分重要。
第三章:图像处理算法的实现在基于FPGA的图像处理系统中,图像处理算法需要被实现。
这些算法包括图像处理、图像分割、特征提取等等。
FPGA的并行计算能力使得图像处理算法的实现变得更加高效和快速。
例如,可以使用FPGA实现Canny边缘检测算法,同时可以使用并行计算来加速算法的处理速度。
此外,可以使用FPGA实现数字滤波器等算法,以提高图像的质量和清晰度。
第四章:图像处理系统的硬件设计基于FPGA的图像处理系统需要具有适当的硬件支持。
在本章中,将介绍硬件设计的主要方面,包括图像输入模块、存储模块、处理模块和输出模块等。
图像输入模块负责将图像载入系统,而存储模块则负责在处理过程中存储图像。
处理模块是该系统的核心,它包含与FPGA集成的FPGA模块,可以实现图像处理算法。
输出模块负责将处理后的图像输出到显示器上或者存储媒体上。
第五章:基于FPGA的实时视频处理基于FPGA的图像处理系统可以被应用于实时视频处理。
这是因为FPGA具有低功耗和低时延等特点。
实时视频处理需要高效的算法和硬件设计,它可以被应用于医学、安防、工业等领域。
基于DSP和FPGA的图像处理系统设计本科毕业设计

中文题目:基于DSP和FPGA的图像处理系统设计外文题目:IMAGE PROCESSING SYSTEM DESIGN BASED ON DSP AND FPGA摘要本文研究了以TI高性能DSP为核心处理器的视频实时图像处理系统的设计原理与组成,并基于DSP + FPGA架构实现了视频图像处理系统。
本图像处理系统主要由图像采集电路、图像处理电路、显示电路以及系统软件组成。
首先经过CCD图像传感器采集复合视频信号,经过视频A/D处理器(SAA7115)转换成8 bit的数字信号,通过DMA方式存放在双口RAM中,该处理器同时还输出像素时钟信号(PCLK),场同步(CS)、行同步(HS)、奇偶场(OE)、复合消隐信号(BLANK)。
数字信号处理器DSP(TMS320VC5501)是本处理器的核心部分,其功能是完成整个系统的图像预处理以及数据流存储时序控制等功能。
经过DSP处理后输出8 bit的数字视频信号以及像素时钟信号(PCLK)、场同步(CS)、行同步(HS),一起送FPGA产生视频信号的时序逻辑,然后送视频D/A处理器(SAA7105H ),最后通过VGA视频接口输出。
静态双口RAM用于存储图像数据的,图像数据的读写控制时序通过DSP来实现。
视频D/A 处理器(SAA7105H)将FPGA输出的数字视频信号、像素时钟、行场同步信号合成为彩色全电视信号然后通过VGA输出。
该视频图像处理系统可以实现实时的数据视频信号的采集、处理及显示,可以应用于视频处理的相关领域。
关键字:DSP;FPGA;图像处理;电路设计;系统软件AbstractThis paper studies the system design principle and composition the of TI high performance DSP core processor for real-time video image processing , and it can achieve video image processing system based on the architecture of DSP and FPGA. The image processing system is composed of image acquisition circuit, image processing circuit, display circuit and system software.After the first CCD image sensor collect the composite video signal, the video A/D processor (SAA7115) is converted into a digital signal of 8 bit, which is stored in dual-port RAM through DMA, the processor also outputs pixel clock signal (PCLK), field synchronization(CS), synchronous (HS), parity field (OE), composite blanking signal (BLANK).DSP digital signal processor (TMS320VC5501) is the core part of this processor, its function is to complete the whole system of image preprocessing and the sequence of data storage control . After DSP treatment, the output of the 8 bit digital video signal and a pixel clock signal (PCLK). The field synchronization (CS), synchronous (HS), which is send to FPGA for producing video signals, then transmitted to the video processor D/A (SAA7105), the final output through a VGA video. Static double port RAM is used to store the image data, the timing control of image data read and writed is realized by DSP. Video D/A processor (SAA7105) compose output digital video signal, a pixel clock and field synchronization signal of FPGA into color TV signal and then output by VGA.The video image processing system can achieve real-time data of the video signal acquisition, processing and display, which can be applied for video processing related fields.Keywords:DSP;FPGA;image processing ;circuit design ;system software目录0 前言 (1)1 绪论 (2)1.1 课题的提出及研究的背景 (2)1.2 研究的目的和意义 (2)1.3 课题研究的主要内容及重点 (3)2 系统总体设计方案 (5)2.1 系统硬件原理框图设计 (5)2.2 系统主要工作模块划分及工作流程 (5)2.2.1 模块划分 (5)2.2.2 系统工作流程 (6)3 图像采集电路设计 (8)3.1 数字图像基础知识 (8)3.1.1 彩色图像空间模型的空间变换 (8)3.2 数字图像传感器V220 (9)3.3 视频解码器SAA7115及I2C控制电路 (10)3.3.1 I2C控制电路 (11)3.3.2 采集解码电路 (11)4 DSP和FPGA为核心的电路设计 (13)4.1 可编程逻辑器件FPGA及DSP处理器概述 (13)4.2 DSP外围电路设计 (14)4.2.1 DSP外部数据存储器和外部程序存储器设计 (15)4.2.2 DSP时钟电路设计 (17)4.2.3 UART接口设计 (18)4.3 以FPGA为核心的电路设计 (20)4.3.1 XC3S100E-4TQ144C管脚功能特性 (21)4.3.2 FPGA外围电路设计 (21)5 系统软件设计 (26)5.1 软件实现的总体方案 (26)5.2 DSP外部数据和程序存储器的读写时序 (28)5.3 DSP内部时钟电路配置 (31)5.4 UART初始化程序设计 (33)5.5 DSP中的I2C模块配置 (34)5.6 FPGA(XC3S100E-4TQ144C)配置模式 (36)6结论 (38)致谢 (39)参考文献 (40)附录A译文 (41)附录B外文文献 (47)附录C电源电路 (54)附录D复位电路 (56)XX大学毕业设计(论文)0 前言视频图像处理[1]作为一种重要的现代技术,己经在通信、航天航空、遥感、遥测、生物医学、军事、信息安全等领域得到广泛的应用,视频图像处理实现技术对相关领域的发展具有深远意义。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
基于FPGA的快速图像处理系统的设计摘要我们评估、改进硬件、软件架构的性能,目的是为了适应各种不同的图像处理任务。
这个系统架构采用基于现场可编程门阵列(FPGA)和主机电脑。
PC端安装Lab VIEW应用程序,用于控制图像采集和工业相机的视频捕获。
通过USB2.0传输协议执行传输。
FPGA控制器是基于ALTERA的Cyclone II 芯片,其作用是作为一个系统级可编程芯片(SOPC)嵌入NIOSII内核。
该SOPC集成了CPU,片内、外部内存,传输信道,和图像数据处理系统。
采用标准的传输协议和通过软硬件逻辑来调整各种帧的大小。
与其他解决方案作比较,对其一系列的应用进行讨论。
关键词:软件/硬件联合设计;图像处理;FPGA;嵌入式毕业设计(论文)原创性声明和使用授权说明原创性声明本人郑重承诺:所呈交的毕业设计(论文),是我个人在指导教师的指导下进行的研究工作及取得的成果。
尽我所知,除文中特别加以标注和致谢的地方外,不包含其他人或组织已经发表或公布过的研究成果,也不包含我为获得及其它教育机构的学位或学历而使用过的材料。
对本研究提供过帮助和做出过贡献的个人或集体,均已在文中作了明确的说明并表示了谢意。
作者签名:日期:指导教师签名:日期:使用授权说明本人完全了解大学关于收集、保存、使用毕业设计(论文)的规定,即:按照学校要求提交毕业设计(论文)的印刷本和电子版本;学校有权保存毕业设计(论文)的印刷本和电子版,并提供目录检索与阅览服务;学校可以采用影印、缩印、数字化或其它复制手段保存论文;在不以赢利为目的前提下,学校可以公布论文的部分或全部内容。
作者签名:日期:学位论文原创性声明本人郑重声明:所呈交的论文是本人在导师的指导下独立进行研究所取得的研究成果。
除了文中特别加以标注引用的内容外,本论文不包含任何其他个人或集体已经发表或撰写的成果作品。
对本文的研究做出重要贡献的个人和集体,均已在文中以明确方式标明。
本人完全意识到本声明的法律后果由本人承担。
作者签名:日期:年月日学位论文版权使用授权书本学位论文作者完全了解学校有关保留、使用学位论文的规定,同意学校保留并向国家有关部门或机构送交论文的复印件和电子版,允许论文被查阅和借阅。
本人授权大学可以将本学位论文的全部或部分内容编入有关数据库进行检索,可以采用影印、缩印或扫描等复制手段保存和汇编本学位论文。
涉密论文按学校规定处理。
作者签名:日期:年月日导师签名:日期:年月日1、导言传统的硬件实现图像处理一般采用DSP或专用的集成电路(ASIC)。
然而,随着对更高的速度和更低的成本的追求,其解决方案转移到了现场可编程门阵列(FPGA)身上。
FPGA具有并行处理的特性以及更好的性能。
当一个程序需要实时处理,如视频或电视信号的处理,机械操纵时,要求非常严格,FPGA 可以更好的去执行。
当需要严格的计算功能时,如滤波、运动估算、二维离散余弦变换(二维DCTs )和快速傅立叶变换(FFTs )时,FPGA能够更好地优化。
在功能上,FPGA更多的硬件乘法器、更大的内存容量、更高的系统集成度,轻而易举地超越了传统的DSP。
以计算机为基础的成像技术的应用和基于FPGA的并行控制器,这需要生成一个软硬件接口来进行高速传输。
本系统是一个典型的软硬件混合设计产品,其中包括电脑主机中运行的LvbVIEW进行成像,配备了摄像头和帧采集,在另一端的Altera的FPGA开发板上运行图像滤波器和其他系统组件。
图像数据通过USB2.0进行高速传输。
各硬件部件和FPGA板的控制部分通过嵌入的NIOSII处理器进行关联,并利用USB2.0作为沟通渠道。
2、设计工具概述通过FPGA设计DSP系统往往采用高级别算法开发工具和硬件描述语言,例如MATLAB。
它也可采用具有第三方知识产权的IP内核执行典型的DSP 功能或高速通信协议。
在我们的应用中,我们使用的模型设计工具例如Mathworks Simulink来建立DSP。
将其生成HDL代码后利用Quartus II与其他硬件设计文件综合。
SOPC-Builder作为一个工具驻留在Quartus环境中,其作用是将NIOSII 与外部逻辑硬件或标准外设融为一体。
SOPC-Builder提供了一个界面结构,以互联NIOSII和外部存储器、滤波器、以及主机电脑。
3、滤波器的模型和应用设计这个工作的主要目标就是评估主、协处理器进行图像处理的性能,包括嵌入式的NIOSII的性能以及电脑主机与FPGA板之间的USB2.0传输性能。
现有FPGA的性能可能会造成图像处理的局限性。
为了完成目标,我们建立了一个典型的图像处理应用,以针对FPGA协处理器。
包括一个噪声滤波器和一个边缘检测器。
降噪和边缘检测这两个基本过程运用到各种机器视觉中,如目标识别,医学成像,下一代的汽车行进路线检测,人员追踪,控制系统等方面。
我们的噪声模型和边缘检测使用了Altera DSPBuilder Libraries in Simulink。
这方面有个例子可以从[11]找到,利用高斯3 · 3 kernel降噪。
边缘检测利用典型的Prewitt或Sobel滤波器。
这些功能可用于合并一系列边缘检测后减少噪声。
图1为滤波器的设计框图。
图1滤波器的设计框图除了噪声检测和边缘滤波,还有中间处理逻辑关系的模块用于协调NIOS II数据和控制路径还有滤波模块工作时序。
这种中间的硬件结构定义为Avalon 界面[12]。
这个接口不能在Simulink环境下仿真,是相当于嵌入系统的Verilog 文件。
Avalon执行由一个16位数据输入和输出的路径,相应的读写控制信号和一个控制接口可以选择中间输出高斯滤波或边缘检测。
数据的输入输出在逻辑模块的帮助下存入FIFO寄存器。
每个接收到的图像帧存入外部SDRAM内存缓冲区,并转换为适用于NIOSII操作的16位数据流的方式。
在第五和第六节将讨论NIOSII编码的问题。
传入的图像通过一个简单的二维数字有限脉冲响应卷积滤波器,处理在3·3区域范围内相邻像素的灰阶强度。
产生缓冲的原理图如图2所示。
图 2我们假设图像大小为640*480像素。
该缓冲电路以同样的方法来为滤波器提供缓冲空间。
如果改变帧的大小,我们需要重新设计和编译。
延迟数量取决于块的大小,延迟深度取决于每行有多少像素。
开发板上具有片外RAM因此不会消耗FPGA逻辑要素。
图3从左至右分别为原始图像、高斯滤波图像、边缘滤波图像。
4、嵌入式系统设计协处理器执行上述所描述的做为组件的NIOSII处理器。
NIOSII处理器在这里的作用是处理数据流。
这种设计经常用于基础工业和学术项目。
一旦安装综合软件,NIOSII将成为Quartus中的一个元件。
DSP-Builder将设计出来的模型转换成HDL编码以便适用于其他硬件组件。
通过综合软件,滤波器可以很容易地集成到SOPC中并与NIOSII结合。
NIOSII软核与其他模块构成了一个完整的系统,包括外部存储器控制器、DMA 通道、以及一个定制的USB高速通信IP核。
VGA控制器可以将最终结果输出至屏幕。
诸如此类的功能,可以通过获得开源的IP核来或是第三方公司提供的评估版IP核来实现。
USB2.0高速接口通过一块扩展板被添加到FPGA母板上。
做为系统级的解决方案,通过Santa-Cruz周边设备连机器可以将扩展子板插入到任何的Altera母板上。
这个子板提供了一个基于PHY CY7C68000的USB2.0收发器。
一个符合UTMI规范的继承USB控制功能的NIOSII系统。
第8节我们将对IP核的实际性能进行评估。
图4为FPGA的流程图。
图6为FPGA开发板和图像采集部分。
图 4 FPGA设计流程图图 55、NIOS软核设计:NIOS配置完毕后,将nios的代码下载。
利用C语言来写nios中的代码是有双重目的的:(a)它控制硬件业务,如硬件之间的DMA传输单元。
它还提供一个编程接口,处理数据通道,通过”API”命令如“open”“read”,“write”和“close”来控制。
(b)它允许系统进行简单的对输入信号进行软件处理而不是使用专用的硬件来处理。
例如,nios指令代码可以用来转换图像阵列成为适合的一维数据流。
6、Activity flow根据软件和硬件的活动,其混合结构的功能可概括如下:(a)图像流是从电脑主机经过usb2.0高速串行总线到达FPGA母板。
在下一个章节将会描述使数据通过usb输入输出的应用程序编程接口。
(b)内置的DMA数据总线将内存中的数据传送到nios中处理然后依靠Avalon传至硬件数字逻辑。
(c)通过硬件加速器来处理数据流。
(d)硬件逻辑对图像数据进行滤波后在通过DMA传送至存储器中。
(e)最终结果输出到VGA的数模转换通道上。
做为nios 处理器的外围设备,支持DMA传输方式。
然而做为VGA接口的数模转换芯片并不是实时执行所有数据的转换。
因此有一个比较可能的做法就是将数据通过usb返回至电脑主机再做进一步处理成为简单的图像数据。
需要指出的是这个设计不仅仅是为了做为黑盒子那样的专门应用,这是代表了一种设计方法,可广泛地定制应用。
7、接口设计与应用基于PC的应用软件和部分视觉系统的的实施适用于各种工业应用。
这套系统包括了windowsXP操作系统、奔腾4处理器、usb2.0高速串行总线控制器和NI1408PCI图像采集卡。
主机的应用程序是基于LabVIEW虚拟仪器,它用于控制图像采集,并进行初步的图像处理。
图6为PC端LabVIEW控制界面。
图 6 LabVIEW控制界面图像采集卡最多可支持5个工业相机进行不同的任务。
我们的系统中应用CCD相机捕捉全帧大小为640*480黑白画面,但是最终采集后的是320*240的。
这样可以生成更小的数据量易于持续传输。
LabVIEW主程序与USB之间的通信使用了API函数和动态链接库。
LabVIEW的优势在于其集成了一个图像处理平台,能够进行快速的图像数据处理或预处理。
当FPGA板接收完一个完整的图像阵列后,系统将图像送至滤波器,经过滤波处理后将数据送至VGA控制器中的缓存模块。
8、系统性能评估上面已经建立了一套图像捕获装置。
通过发送一些测试数据来测试USB 对pc和FPGA实验板之间接收和发送性能。
经过测试我们发现主机和目标板之间的发送接收有效载荷为307,200字节。
当nios的Hal驱动程序版本为1.2时接收速度达到65Mbits/s,传输速度达到80Mbps。
全速传输效率为9秒。
9、与其他系统进行对比下面我们对比一下其他图像处理的解决方案以及性能和灵活性。
为此我们通过搭建其他解决方案并进行一系列实验来来获取对比数据。
我们设计了不同的滤波器来验证计算复杂性。