新闻中心

EEPW首页>模拟技术>设计应用> 基于SoPC的实时视频处理与显示设计

基于SoPC的实时视频处理与显示设计

作者: 时间:2012-10-29 来源:网络 收藏
CE: normal; LETTER-SPACING: normal; BACKGROUND-COLOR: rgb(255,255,255); orphans: 2; widows: 2; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px">  2.2 灰度直方图统计及其均衡化

  通过输入系统获取的图像信息中含有各种各样的噪声与畸变,例如,光照度不够均匀会造成图像灰度过于集中,由CCD获得的图像经过A/D转换、线路传送都会产生噪声污染等,不可避免地会影响系统图像的清晰程度,降低图像质量。但通过图像增强可以改善图像质量。直方图均衡化算法是空域图像增强技术的重要算法,是图像压缩、图像分割和图像识别等后续图像处理的基础[2,4],在图像预处理技术中有广泛的应用。

  2.2.1 直方图均衡化原理

  直方图均衡是以概率论为基础,运用灰度点运算来实现直方图变换。原始图像的直方图包含了丰富的图像信息,描述了图像的灰度级内容,反映了图像的灰度分布情况。直方图统计及均衡化的基本思想是对在图像中像素个数多的灰度级进行展宽,而对像素个数少的灰度级进行缩减,从而达到清晰图像的目的[5]。通过点运算使输入图像转换为在每一灰度级上都有相同的像素点的数目。在图像增强处理中运用如下公式:

基于SoPC的实时视频处理与显示设计

  (3)用累积分布函数作变换函数进行图像灰度变换。

2.2.2 基于FPGA的算法优化及实现

  算法的关键是在FPGA中实现直方图统计和均衡后的映射关系表,本设计采用FPGA器件提供的Block RAM来存放直方图和均衡后映射关系表。以双端口RAM的数组结构为核心,把整个算法分为两个部分执行:(1)统计原始图像的各级灰度值,并存入灰度计数表RAM中;(2)对得到的灰度值做灰度映射,把映射后的结果存入到映射表RAM中,即生成均衡映射表。根据映射表就可以知道原始图像某一灰度级经过变换后的灰度级。经过这样的处理,就可以把原始图像中密集分布的灰度值映射到经过直方图均衡化后的新的灰度级上。图3为该算法的逻辑框图。

基于SoPC的实时视频处理与显示设计

  考虑到FPGA的硬件特点,在接收图像数据、计算此场的直方图时,在FPGA内实现浮点型数据运算相对复杂且消耗较多逻辑资源,因此在对图像进行直方图统计时将各灰度级像素点的个数作为直方图数据:pu(uk)=nk,以避免使用浮点型数据运算。对直方图进行均衡化处理,得到原灰度到均衡化后灰度映射关系表。本设计中的直方图均衡化的算法具体的状态转移图如图4所示。其具体的转移条件:启动信号有效时,由st1转向st2;当计数器1计数到255时,跳转到st3;当计数器1没有计数到图像高度减1或者计数器2没有计数到图像宽度减1时,跳转到st3;当计数器1计数到图像高度减1且计数器2计数到图像宽度减1时,跳转到st5;当计数器1没有计数到255时,跳转到st6;当计数器计数到255时,跳转到st7;当计数器1计数到图像高度减1且计数器2计数到图像宽度减1时,跳转到st1状态;当计数器1没有计数到图像高度减1或者计数器2没有计数到图像宽度减1时,跳转到st6。在进行计数统计时,计数器在检测得到一个像素点的灰度之后,不仅要相应地将计数器加1,而且对应灰度值大于当前灰度值的所有计数器都加1,这样就能同时完成原始图像各像素灰度值的统计和累积,减少了统计时间。

基于SoPC的实时视频处理与显示设计

  因为在灰度均衡处理过程中是以场为单位进行的,在灰度均衡化处理完之后,要将场合并为帧。其操作是由Nios II软核中的SDRAM控制器来完成奇偶场的合并。灰度均衡化的仿真结果图如图5所示。

基于SoPC的实时视频处理与显示设计



关键词:SoPC视频处理显示设计

评论


相关推荐

技术专区

关闭