- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于硬件描述语言图像快速中值滤波算法
基于硬件描述语言图像快速中值滤波算法【摘要】针对井下视频监控图像夹杂大量椒盐噪声的情况,提出采用中值滤波的方法进行图像处理。由于视频图像处理具有较高的实时性要求,故设计了基于硬件描述语言的快速中值滤波算法。实验证明,该算法能对椒盐噪声污染严重的视频图像进行快速恢复,且满足实时性要求。
【关键词】图像处理;硬件描述语言;中值滤波
1.概述
由于煤矿井下环境恶劣,各种强电设备的电磁干扰较重,井下视频监控图像往往夹杂着大量的噪声。市场上普通红外摄像机的视频图像往往被噪声淹没,视频图像的缺损对管理人员监控井下实时情况造成障碍,对煤矿生产造成安全隐患。保护有用信号、抑制噪声是图像预处理的关键,由电气开关动作及电磁干扰引起的脉冲噪声是井下最典型和严重的噪声形式,其特点是噪声点处的灰度值与周围像素点的灰度值相差较大。椒盐噪声即是饱和的脉冲噪声,对图像的损害更大[1]。
井下视频图像椒盐噪声去噪具有数据量大、实时性高等要求,采用普通软件实现的图像处理器难以满足海量数据处理的实时性要求。针对图像预处理阶段运算结构较简单的特点,用硬件的方法实现分布式的算法结构,各功能块可以并行工作,对高速数字信号处理效果非常理想。中值滤波属于非线性空间滤波,用中值滤波的方法去除图像中的椒盐噪声,效果显著。本文应用硬件描述语言,采用一种快速的中值滤波改进算法进行椒盐噪声滤波,处理速度快,滤波效果好。
2.算法原理
脉冲噪声的概率密度函数可由下式给出:
如果b>a,灰度值b显示为一个亮点,a显示为一个暗点。当Pa和Pb均不为零且其值近似相等时,脉冲噪声成为椒盐噪声。中值滤波方法是非线性图像增强技术,可以做到既去除噪声又保护图像边缘,对干扰脉冲和点状噪声具有良好的抑制作用,对图像边缘能较好地保持。中值滤波的基本原理是把数字图像灰度值序列中一点的值用该点的一个邻域中各点值的中值代替。例如,把一组数(xi1,xi2,…,xin)按大小顺序排列:
把某点的特定形状的邻域作为一个窗口,中值滤波器是一个含有奇数个像素的滑动窗口,用窗口内各点像素值的中值代替窗口中间点的像素值。设输入序列为{xi,i∈I},I为窗口长度为n的像素点集合,则滤波器输出值为:
3.算法优化
中值滤波算法需将每个窗口内所有像素点灰度值进行比较、排序,并以滤波器输出值替换对象点的灰度值,所以中值滤波算法在运行过程中要进行大量的比较和赋值运算。一个n×n个像素的方形滤波窗口一次要进行n2(n2-1)/2次排序比较运算,例如,要使用3×3型窗口处理一帧352×288的视频图像,所需的时间约为73毫秒。CIF格式的实时视频监控图像一秒钟有30帧画面,每帧约33毫秒,所以,采用传统的中值滤波算法是不可能满足实时性要求的。必须进行算法优化,提高运行速度,才能实现实时滤波的目标。
优化的思路是将二维滤波阵列分解为一维,先求出滤波窗口中水平各行像素灰度值的中值,再求出水平各行中值的中值,从而得出滤波结果。改进的算法将一个本来含有n2个像素的二维阵列简化为(n+1)个仅含n个像素的一维阵列进行取中值运算,进行一次快速中值滤波只需进行n(n2-1)/2次运算,运算次数减少为原来的1/n,运算速度提高n倍。快速中值滤波虽然将二维阵列分解为一维运算,但最终的滤波结果既包含窗口中的行信息,又包含列信息,所以用多次一维中值滤波代替二维中值滤波的处理方案是可行的。
对传统中值滤波算法进行并行及流水线结构改进,如图1所示。
并行机制就是对同一段时间内需要处理的所有任务分别采用各自独立的处理通道同时进行处理,使处理时间从多个任务所需时间之和降至最慢任务所需的时间。图中将3行数据同时用三个比较器进行比较,然后将三行的中值再用一个比较器比较得出最终结果。这样总处理时间只是其中关键模块的处理时间,处理速度是顺序执行的两倍。
流水线作业的实质是在明显制约系统速度的关键路径上插入寄存器,使信号在时钟的下一拍到达目的地,这样用寄存器截断了长路径,缩短了寄存器到寄存器之间的最大延时,因而可以提高整个系统的速度。如上图所示,本来系统的最大延时为A和B的运算时间之和,现在在A与B之间加入寄存器后,系统的最大延时降为以前的一半,从而使系统的处理速度再提高一倍。由此可知,对于3×3模板的中值滤波算法经过并行和流水结构进行硬件优化后,处理速度是以前的四倍。
另外,在图像的各个边缘。由于无法用3×3窗口覆盖,所以无法直接调用该中值滤波排序模块。参考常用的图像硬件处理系统的做法[2],本文将图像边缘像素简单地设成“0”,并不影响整个中值滤波的效果。因此只需加一个判断窗口位置的模块,如果窗口处于边缘,则设为定值,否则,调用优化后的排序模块[3]。
4.算法实现
原创力文档


文档评论(0)