基于FPGA的图像边缘检测系统的设计6页

上传人:文库****9 文档编号:173996874 上传时间:2021-03-15 格式:DOCX 页数:6 大小:87.38KB
返回 下载 相关 举报
基于FPGA的图像边缘检测系统的设计6页_第1页
第1页 / 共6页
基于FPGA的图像边缘检测系统的设计6页_第2页
第2页 / 共6页
基于FPGA的图像边缘检测系统的设计6页_第3页
第3页 / 共6页
基于FPGA的图像边缘检测系统的设计6页_第4页
第4页 / 共6页
基于FPGA的图像边缘检测系统的设计6页_第5页
第5页 / 共6页
点击查看更多>>
资源描述

《基于FPGA的图像边缘检测系统的设计6页》由会员分享,可在线阅读,更多相关《基于FPGA的图像边缘检测系统的设计6页(6页珍藏版)》请在金锄头文库上搜索。

1、摘要: 在Altera公司的Stratix EP1S10器件中设计了以Prewitt图像边缘检测为基础的图像处理和显示系统,包括二维滤波器模块、图像VGA显示控制器、ROM存储器、FIFO缓冲器及相应的读写控制器。整个系统集成在一个芯片上,实验证明此设计方法工作效率高,处理速度快,性能稳定,可移植性好。关键词: FPGA Prewitt算子 VGA QuartusII在嵌入式图形系统处理领域,图像的边缘图作为图像的一种基本特征,经常被应用到较高层次的特征描述。如图像识别、图像分割、图像增强以及图像压缩等图像处理和分析的技术中,从而可以对图像作进一步的分析和理解1。但是图像处理的速度问题一直是很

2、难突破的设计瓶颈。一般情况下,控制领域及数据处理领域几乎是单片机和数字信号处理器的天下,但是在数据处理量大、实时性要求更为苛刻的场合,传统的MCU无法适应。而DSP虽然具备指令流水线和很高的处理速度,但是由于其本质仍然是依靠串行执行指令来完成相应的图像处理算法,所以其处理速度依然很受限制。因而基于速度、系统集成和产品升级等角度考虑,采用现代电子设计的最新EDA技术,使用高速可编程逻辑器件CPLD/FPGA自行开发有关处理芯片成了一种全新的解决方案2。利用EDA技术自顶向下的思想设计SoC(片上系统)电路,能在一块FPGA芯片中完成图像存储器、时钟管理、图像处理模块、VGA显示控制器以及地址发生

3、器等多个电路模块。使用Altera公司的Stratix EP1S10 FPGA芯片和Matlab软件、QuartusII软件等完成电路设计。其电路结构如图1所示。其中,ROM模块用来存储图像,地址发生器将ROM中的数据传递给边缘检测处理模块,FIFO为处理后数据的缓冲存储模块,VGA控制器用来产生外部VGA显示器的控制时序及输出图像信号。1 边缘检测模块的设计1.1 Prewitt边缘检测算法3图像边缘具有方向和幅度两个特性,通常沿边缘走向像素的灰度变化平缓,垂直于边缘走向的像素灰度变换剧烈。对于连续图像f(x,y),其方向导数在边缘(法线)方向上有局部最大值,因此,边缘检测就是求f(x,y)

4、梯度的局部最大值和方向。对于离散图像来说,就是利用边缘检测算子来逼近梯度算子求得局部最大值,即:f=(f(x,y)-f(x-1,y),f(x,y)-f(x,y-1)(1)因此,检测数字图像边缘最简单的方法就是对每个像素计算f,然后求绝对值,最后进行阈值操作就可以实现。Prewitt算子:以上两个矩阵分别代表图像的水平梯度和垂直梯度。如果用Prewitt算子检测图像M的边缘,一般先用水平算子和垂直算子对图像进行卷积,得到两个矩阵M1和M2。在不考虑边界因素的时候,它们与原图像有相同的大小,分别表示图像M中相同位置对于X和Y的偏导数。然后求M1和M2对应位置的两个数的绝对值之和,得到一个新矩阵G,

5、G是M中像素灰度梯度的近似值,然后经过阈值操作得到边缘。即:在硬件实现过程中,由于Prewitt算子具有对称性并且滤波系数只有0和1,所以卷积只用加法器和减法器就可以实现,不需要乘法器,这会大大减少FPGA资源消耗并降低二维卷积操作的复杂度。1.2 DSPBuilder建模Altera公司提供了DSPBuilder建模工具,可以利用它实现算法的建模和系统仿真工作;再利用QuartusII软件进行分析和综合,最后下载到FPGA器件中完成模块的构建。现以处理256256像素的256灰度图像为例说明边缘检测模块的实现过程,如图2所示,像素运算方法如式(4)和式(5)。1.3 图像处理模块的Matla

6、b仿真DSPBuilder运行在Matlab环境下,可以利用Simulink对设计结果进行仿真。处理前后的对比阈值为50,仿真结束时间为65536个时钟周期。图3为Matlab仿真图。由图3可以看出,图像在经过边缘检测处理后较真实地反映了实物的边缘轮廓。说明设计方法正确。2 VGA控制器的设计对于普通的VGA显示器其引出线共含有5个信号:R、G、B三基色信号;HS行同步信号;VS场同步信号。VGA工业标准要求的时钟频率为25.175MHz(像素输出频率),行频31.496Hz,场频59.94Hz(每秒图像刷新频率)。HS、VS时序输出图和电路原理图如图4所示。其中T1包含96个时钟周期,T2包

7、含704个时钟周期,T3包含2个行周期,T4包含523个行周期。时序驱动严格遵循VGA工作标准,即64048060Hz模式45。HS设计VHDL进程:process(clk) beginif (rising_edge(clk) thenif(hcnt= 640+8+8) and (hcnt640+8+8+96 ) thenhs=0;elsehs=480+8+2) and (vcnt480+8+2+2) thenvs=0;elsevs=1;end if;end process;3 存储器和地址发生器的设计Stratix器件内带有TriMatrix存储器,这些存储器由三种类型的RAM模块组成,其中

8、有512bit的M512模块94个,4Kbit的M4K模块60个,512Kbit的M-RAM模块1个,共有920 448bit的存储容量。每一种都能配制成不同存储类型的存储器,例如可以利用M512 配置成FIFO功能存储器;M4K模块配制成中规模的存储器,就像ROM和ATM(同步传输模式)单元处理;M-RAM模块适合于大容量的缓冲存储器设计,例如网络协议包缓冲和系统缓存等,大大增强了可编程逻辑器件的存储能力6。本设计利用M4K模块设计存储图像信息的ROM单元,共需要64KB和32个M4K单元。通过QuartusII中的Megawizard plug-in manager进行配置,图像初始化由*

9、.mif完成。利用M512模块设计FIFO单元用来缓存处理完毕的数据,设计方法同ROM。控制单元主要完成地址生成时序和复位信号产生,其过程比较简单,这里不再详述。4 顶层模块的设计与仿真将前面设计的各个模块例化成整个系统的各个组成部分,并设为顶层功能电路,进行分析、综合,然后进行电路的功能仿真,仿真结果如图5所示。图5中clk5是输入的25MHz时钟信号;HS是行扫描信号,高电平表示可以输出像素,低电平表示行消隐;VS是场扫描信号,高电平表示场扫描过程,由于周期比较长及仿真参数的限制没有显示出低电平的消隐过程。r、g、b表示输出的像素电平,因为试验平台的限制,输出信号没有经过模拟转换而是直接从FPGA管脚输出,这对于输出是二值化信号的处理结果并没有影响,可以看出在行扫描期间有处理完的像素数据输出。整个电路设计遵循EDA自顶向下的设计思想,针对各功能电路分别设计,最后组成完整系统。整个系统共用FPGA逻辑单元320个、存储器资源65Kbit、管脚7个、DLL资源1个。完全由硬件电路实现DSP算法是FPGA的优势所在,所实现的系统性能稳定、噪声小、易于移植、灵活性高、处理速度快、易于实时处理。本设计可以作为更高层图像处理技术的前期处理部分,也可以在视频处理技术中得到应用。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号