基于FPGA的图像裁剪电路的设计与实现

2011-03-21 17:44:18来源: 互联网 关键字:图像  裁剪  电路  设计

本文提出了一种基于FPGA的图像裁剪电路设计方法,利用像素的抽取改变图像的分辨率,从而达到图像裁剪的效果。与传统的方法相比,这种方法简单易行,开发成本低,图像的清晰度能满足一定的要求。此方法数据处理速度快,尤其适用于动态图像的处理。

关键词:现场可编程门阵列:图像裁剪;分辨率

0 概述

图像处理电路是信息控制系统中必不可少的环节,广泛应用于生产生活中,如住宅小区的安全监控系统、生产线的质量监控系统、电视机的机顶盒等,因此图像的处理电路的开发受到了人们的重视。裁剪压缩是图像处理技术中一个重要的内容,传统的方法往往采用DSP芯片或插值算法来实现图像的裁剪压缩功能,这种方法存在电路设计复杂、开发成本高的问题。本文提出了一种基于FPGA的设计方法,利用像素的抽取改变图像的分辨率,从而达到图像裁剪的效果。这种设计方法简单易行,图像的清晰度能满足一定的要求。特别是由于不需要数学运算,所以此方法数据处理速度快,尤其适用于一般要求的动态图像的处理。

1 电路设计方案

本设计是一个基于FPGA的数字图像的裁剪电路,电路框图如图1所示。其中FPGA中包含了三个功能模块电路的设计:

(1)SDRAM的控制模块:预处理的图像存在SDRAM存储器中,通过SDRAM的控制模块,将图像信息读出并进行相应的处理,提供给下一个电路模块使用。

(2)图像裁剪电路:包括像素的抽取和缓存电路,采用改变图像分辨率的方法,将有效的像素提取出来提供给显示电路,使图像进行4:3或2:3等多比例变化,以达到不同的视觉效果。

(3)显示控制电路:根据VGAled/' target='_blank'>显示屏的特点,产生时序驱动信号控制图像数据显示。

2 设计实现

2.1 SDRAM控制模块的设计

预处理的图像需要放在存储器中,对于大部分的FPGA来说器件内部都含有4k的内存,但考虑到图像的容量及今后对动态图像处理功能的扩展,本设计选用了存储容量为8M外存的SDRAM。8M的SDRAM在存储空间上划分了4个BANK区块,每个BANK有16位数据宽。SDRAM虽然存储的容量大,但是其内部结构复杂,对该器件的读写使用必须设计专门的控制器进行控制操作。由于本设计采用的图像色彩为30位,RGB各10位,显然用一个16位宽度BANK不能存储一个像素,因此采用了2个BANK合并存储像素,如图2。这样一来,在SDRAM控制电路上需要仿真成四个虚拟的数据端口(两个写端口+两个读端口),在同一时刻将一个像素RGB从两个BANK中同时写入或读出,合并之后形成一个完整的数据。

根据这样的存取原则,一个具有640×480个像素、色彩为30位的图像,就需要同时BANKl和BANK2中存入640×480个16位的信息,SDRAM控制模块读入数据的端口程序如下所示,读出数据同理。

SDRAM_Control_4PortSDRAM0(
.WRl_DATA({R[9:0],G[9:5]}),
.WRl(E N),
.WRl_ADDR(0),----BANKl的地址
.WRl_MAX_ADDR(640*480),
.WRl_LENGTH(9'h100),
.WRl_LOAD(RST_0),
.WR1_CLK(P1X_CLK),
.WR2_DATA({G[4:0],B[9:0]}),
.WR2(E N),
.WR2_MAX_ADDR(22'h100000+640*480),
.WR2_LENGTH(9'hl00),
.WR2_LOAD(RST_0),
.WR2_CLK(PIX_CLK);

2.2 图像裁剪模块

在图像的裁剪处理上,有两种方案可选,第一种为线性插值算法。这是一种广泛使用的图像插值算法,通常使用8邻域采样加权产生新像素:

第二种为抽取算法,即通过变换分辨率的方法实现,例如将原来的640×480的分辨率变换为320×240或120×60的分辨率,这样图像的宽高比近似为4:3或16:8。比较两种算法,第二种算法通过直接丢弃部分原始数据达到分辨率的压缩,虽然有图像信息损失,但在图像显示满足要求的前提下,这种电路的实现更加便捷、方便,因此本设计采用了第二种算法。

2.2.1 像素的抽取

根据VGA的显示原理,储存在SDRAM中的640×480个像素,受显示控制电路中行同步信号的控制,每个行周期读出640个像素,并同步显示。采用抽取法实现分辨率的压缩,必须丢弃行和列的部分像素。以变换320×240分辨率为例,具体的设计方法是,将分辨率为640×480的原图像每隔一行进行行标记,在标记的行里,每隔1个像素进行列标记,最后将行列都被标记过的像素取出,提供给显示控制电路。

由于SDRAM存储器本身具有逐行读取、读取显示同步的特点,为了达到对行像素的隔行提取,本设计采用快读慢显的方式。例如原640× 480的分辨率采用25MHz的频率作为SDRAM数据读取频率和VGA的像素显示频率,现在采用50MHz作为SDRAM数据读取频率,VGA的像素显示频率仍然采用25MHz,即读取两行,保存一行并显示。在提取的行像素里每隔1个像素对列像素进行提取,则得到所需要的行列像素。

2.2.2 双端口RAM控制模块

VGA显示器要求行像素读取和显示同步,由于抽取出来的行列像素在时序上是不连续的,电路必须加存储器对提取的像素进行缓存。数据缓存模块可以选用任何存储单元,根据像素存取的特点,本设计选用了双端口的RAM对有效像素进行乒乓操作。双端口RAM乒乓操作的原理如图3所示。

在第N个周期,将输入的数据流缓存到“数据缓存模块1”,与此同时,“数据缓存模块2”中缓存的数据通过“输出数据流选择单元”的选择,送到显示电路。在第N+1个周期,将输入的数据流缓存到“数据缓存模块2”,与此同时,“数据缓存模块l”中缓存的数据通过“输出数据流选择单元”的切换,送到显示电路。乒乓操作的最大特点是:通过“输入数据流选择单元”和“输出数据流选择单元”按节拍相互配合切换,将经过缓存的数据流没有时间停顿地传送到输出端,因此非常适合对时序不连续的像素进行流水线式处理。

根据双口RAM乒乓操作的原理,被抽取出来的像素,一行被缓存的同时,另一行则被顺序地读取出来,保证了像素显示的连续与同步。双端口RAM的输入输出信号的端口程序如下:

WIRE [29:0] DATA a,DATA b;
WIRE I_a=I;
WIRE I_b=~I;
WIRE[9:0]COIANTER a=(I)?ADDRESSl:COUNlER;
WIRE[9:0]COUNTER b=(!I)?ADDRESSl:COUNTER;
RAM U2(
.DATA a (INDATA),
.WREN a (I a),
.ADDRESS a(COUNTER a),
.CLOCK A(CLK),
.Q a(DATA a),
.DATA b (INDATA),
.WREN b(I_b),
.ADDRESS b(COUNTER b,
.CLOCK B (CLK),
.Q_b(DATA_b));

2.3 VGA显示控制模块

显示控制器主要用于输出VGA显示器所需要的RGB数据信号和控制信号,根据输入时钟,显示控制器可以产生VGA所需要的控制信号,包括场同步、行同步和复合消隐信号等。输出像素则与输入像素相同。图4为VGA的控制模块的仿真波形。

3 电路调试结果与分析

图5是分辨率为640×480的原图像,图6是分辨率为320×240,比例为4:3的图像。从处理后的图像效果可以看出,图像清晰,信息量丰富,能够满足图像的一般要求。

4 结论

本论文提出了一种基于FPGA的图像裁剪电路的设计方法,通过改变图像的分辨率达到压缩图像的效果。这种设计方法不仅具备了FPGA开发电路所具有的开发周期短、设计效率高、扩展性和升级性良好、设计灵活等特点,而且与通常所用的插值算法相比,电路结构简单、设计简便,从测试的效果来看,图像清晰,能够满足一般图像的要求。

关键字:图像  裁剪  电路  设计

编辑:神话 引用地址:http://www.eeworld.com.cn/mndz/2011/0321/article_5885.html
本网站转载的所有的文章、图片、音频视频文件等资料的版权归版权所有人所有,本站采用的非本站原创文章及图片等内容无法一一联系确认版权者。如果本网所选内容的文章作者及编辑认为其作品不宜公开自由传播,或不应无偿使用,请及时通过电子邮件或电话通知我们,以迅速采取适当措施,避免给双方造成不必要的经济损失。

上一篇:基于LT3575设计的隔离反激型电源转换技术
下一篇:基于P89LPC933的大功率智能充电器的设计

关注eeworld公众号 快捷获取更多信息
关注eeworld公众号
快捷获取更多信息
关注eeworld服务号 享受更多官方福利
关注eeworld服务号
享受更多官方福利
推荐阅读
全部
图像
裁剪
电路
设计

小广播

独家专题更多

TI车载信息娱乐系统的音视频解决方案
TI车载信息娱乐系统的音视频解决方案
汇总了TI汽车信息娱乐系统方案、优质音频解决方案、汽车娱乐系统和仪表盘参考设计相关的文档、视频等资源
迎接创新的黄金时代 无创想,不奇迹
迎接创新的黄金时代 无创想,不奇迹
​TE工程师帮助将不可能变成可能,通过技术突破,使世界更加清洁、安全和美好。
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
TTI携TE传感器样片与你相见,一起传感未来
电子工程世界版权所有 京ICP证060456号 京ICP备10001474号 电信业务审批[2006]字第258号函 京公海网安备110108001534 Copyright © 2005-2017 EEWORLD.com.cn, Inc. All rights reserved