基于FPGA的图像去噪
目录
结构图
其中FPGA 控制模块为核心,通过它实现视频图像数据的获取、缓存、处理和控制各模块间通讯[1]。由CCD 相机对目标成像,高速图像数据由camera link 实时传输[2],经信号转换电路把差分信号转换成FPGA 采用的TTL ( Transistor-Transistor Logic) 格式的数字图像信号,而后送入FPGA 进行滤波去噪处理,在FPGA 中完成图像滤波去噪处理功能和同步信号产生后,图像数据缓存在FIFO[3]中准备后续处理,滤波去噪后的图像数据和控制信号同时输入D/A
转换器,转换成模拟量,经PCM 编码、数据压缩,最后由微波发射。为了保证视频图像质量,采用基于均值操作的自适应中值滤波算法对图像进行滤波去噪处理[4]。
1) CCD 相机选用DALSTAR-1M30 数字相机[5],分辨率为1 024 × 1 024,帧速率为30 帧/s,数据格式为12-bitLVDS ( Low - Voltage Differential Signaling) 输出,数据率
为40 MHz/s[6]。工作时由CCD 将光信号转换成电信号,将图像以二进制数字的形式传送出去。为了提高图像数据信号的传输速度与质量,采用低摆幅LVDS 差分信号进行低噪声数据传输[7]。
2) 数字视频图像数据完成远距离传输后,在接收端实现信号电平变换,将LVDS 差分信号转变为TTL 信号。该功能选用美国国家半导体公司的差分数字信号转换芯DS90CR288 芯片完成。DS90CR288 接收到数字相机产生的差分图像数据和控制信号数据流后,将4 位差分信号数据转换为28 bit 并行TTL 数据,可以以525Mbit /s 的速率传入FPGA 核心控制模块进行滤波处理。如果使用75 MHz 的时钟频率,整体的数据传输率可达2. 10 Gbit /s。
3) 视频图像数据经滤波去噪处理后,为了把同步信号与视频图像数据信号同时发送到D/A 转换电路,处理后的图像数据需要先存储在FIFO 存储器中,然后再进行后续处理[8]。FPGA 主要通过对FIFO读写信号的操作,以便对数据进行存储。当需要向FIFO 写数据时,把FIFO_READ 信号设置为有效,当需要从FIFO 读数据时,把FIFO_WRITE 信号设置为有效。由于AL440B 的性能,其读写操作可工作在不同的时钟频率下,所以需要根据设计分别给读时钟和写时钟赋值。
基于FPGA 的图像滤波器设计
基于均值操作的自适应中值滤波原理
一幅图像在形成、传输过程中经常会受到各种噪声的干扰,噪声的存在降低了图像质量,使图像模糊,甚至使图像的特征完全被淹没,给图像识别和分析带来困难。根据噪声服从的分布进行分类,噪声大致可以分成椒盐噪声、高斯噪声和泊松噪声3 类,针对不同的噪声类别有不同的图像滤波方法。常用的滤波方法主要包括均值滤波、中值滤波、维纳滤波和自适应滤波,如针对高斯噪声最常用的是均值滤波,针对脉冲噪声最常用的是中值滤波,此外,还有各自的改进滤波法等[9]。而在实际图像滤波过程中,图像中所掺杂的噪声多是由椒盐噪声和高斯噪声混合而成的多种噪声,任何单一的滤波方法都无法去除混合噪声,达到最佳的滤波效果[10]。因此,笔者提出了一种基于均值操作的自适应中值滤波方法,即根据含有不同性质噪声的图像像素的不同性质特点,先利用局部阈值把像素归类,区分为受脉冲噪声污染的像素和受高斯噪声污染的像素,而后对这些像素应用不同的滤波方法,以达到最佳的滤波效果。首先,根据受脉冲噪声污染的图像像素值一般比纯受高斯噪声污染的图像像素值大的特点,把具有不同特征的图像像素区别对待;
然后,应用不同的滤波方法进行滤波去噪。
不同噪声特性下通过两种滤波方法处理后的改善因子R 的变化
为了检验基于均值操作的自适应中值滤波算法的去噪质量,通过实验比较图像在不同滤波算法的滤波结果。具体做法是通过比较各种滤波算法的信噪比改善因子R 进行评价[15],检验滤波算法的去噪效果,若改善因子R 为负值,则说明去噪滤波后的噪声被抑制; 改善因子R 越低,通过去噪滤波后的滤波效果越好。
改善因子R 可表示为:
在进行不同滤波算法去噪效果实验之前,先根据噪声本质特性的各种区分,对噪声进行不同特性下通过两种滤波方法处理的改善因子R 的变化对比。
参考文献:
[1]谢水英,韩承江. 基于FPGA 的视频图像处理系统[C] ∥ 2010 年电路与信号处理国际会议. 上海: IEEE,2010,2: 727-730.XIE Shui-ying. HAN Cheng-jiang. Video Image Processing System Based on FPGA [C] ∥ 2010 International Conference onCircuit and Signal Processing. Shanghai: IEEE,2004: 740-744.
[ 2 ] 赵海丽.数字视频图像传输中基于FPGA 的图像去噪方法【J】.吉林大学学报,2011年,第六期.
[2]AUTOMATED IMAGINGASSOCIATION. Camera Link: Specifications of the Camera Link Interface Standard for Digital Cameras and Frame Grabbers [S /OL]. [2011-09]. http: / /www. tichawa. de /pdf /cameralink. pdf.
[3]沈伟,王军政,汪首坤. 基于FIFO 的高速高精度数据采集技术研究[J]. 电子器件,2007,30 ( 5) : 1673-1676.
SHEN Wei,WANG Jun-zheng,WANG Shou-kun. Research on High Speed and High Precision Data Acquisition Technology
Based on FIFO [J]. Chinese Journal of Electron Devices,2007,30 ( 5) : 1673-1676.
[4]张霞,葛芦生. 自适应中值滤波算法的研究与应用[J]. 微计算机信息,2007,23 ( 2) : 217-218.
ZHANG Xia,GE Lu-sheng. A Well Adaptive Median Filtering Algorithm and Its Application [J]. Microcomputer Information, 2007,23 ( 2) : 217-218.
[5]TELEDYNE DALSA. Pantera TF 1M30 Datasheet. [M/OL]. [2011-09]. http: / /www. lusterinc. com/UploadFile /assistant/Camera /Dalsa /Falcon /DS-Pantera-TF-1M30. pdf.
[6]李爱玲,张伯珩,边川平. 高速CCD 图像采集存储系统的硬件设计[J]. 电子器件,2007,30 ( 6) : 2145-2147.LI Ai-ling,ZHANG Bo-heng,BIAN Chuan-ping. Design of High Speed CCD Image Data Acquisition Hardware System [J].Chinese Journal of Electron Devices,2007,30 ( 6) : 2145-2147.
[7]王冰,靳学明. LVDS 技术及其在多信道高速数据传输中的应用[J]. 电子技术应用,2003 ( 3) : 55-56.WANG Bing,JIN Xue-min. LVDS Technology and Being Applied to the High-Speed Data Transmission of Multi-Channel[J]. Application of Electronic Technique,2003 ( 3) : 55-56.
[8]刘树昌,刘鹏,王延海. 大容量高速视频图像传输技术研究[J]. 吉林大学学报: 信息科学版,2011,29 ( 1) : 21-25.
LIU Shu-chang,LIU Peng,WANG Yan-hai. Research on Large-Capacity High-Speed Video Image Transmission Technology[J]. Journal of Jilin University:Information Science Edition,2011,29 ( 1) : 21-25.
[9]关新平,赵立兴,唐英干. 图像去噪混合滤波方法[J]. 中国图象图形学报,2005,10 ( 3) : 332-337.GUAN Xin-ping,ZHAO Li-xing,TANG Ying-gan. Mixed Filter for Image Denoising [J]. Journal of Image and Graphics,
基于FPGA的图像去噪的更多相关文章
- 基于FPGA的飞机的小游戏
基于FPGA的飞机的小游戏 实验原理 该实验主要分为4个模块,采用至上而下的设计方法进行设计.由50M的晶振电路提供时钟源,VGA显示控制模块.图形显示控制模块.移动模块的时钟为25M,由时钟分频电路 ...
- 基于FPGA的音频信号的FIR滤波(Matlab+Modelsim验证)
1 设计内容 本设计是基于FPGA的音频信号FIR低通滤波,根据要求,采用Matlab对WAV音频文件进行读取和添加噪声信号.FFT分析.FIR滤波处理,并分析滤波的效果.通过Matlab的分析验证滤 ...
- 基于FPGA的线阵CCD图像测量系统研究——笔记
本文是对基于FPGA的线阵CCD图像测量系统研究(作者:高尚)的阅读笔记 第一章绪论 1. 读读看 读了前面的摘要依然没有看懂作者要做什么.接着往下读....终于看到了一个字眼“基于机器视觉的图像测量 ...
- 基于FPGA的按键扫描程序
最近在学习FPGA,就试着写了个按键扫描的程序.虽说有过基于单片机的按键扫描处理经验,对于按键的处理还是有一些概念.但是单片机程序的编写通常都采用C写,也有用汇编,而FPGA却是采用VHDL或者Ver ...
- 基于FPGA的DW8051移植(三)
总结一下问题: 1) http://www.cnblogs.com/sepeng/p/4137405.html 基于FPGA的DW8051移植(一)里面用modelsim观测波形发现程序进入了ida ...
- 基于FPGA的红外遥控解码与PC串口通信
基于FPGA的红外遥控解码与PC串口通信 zouxy09@qq.com http://blog.csdn.net/zouxy09 这是我的<电子设计EDA>的课程设计作业(呵呵,这个月都拿 ...
- 基于FPGA的OLED真彩色动态图像显示的实现
源:基于FPGA的OLED真彩色动态图像显示的实现 作为第3代显示器,有机电致发光器件(Organic Light Emitting Diode,OLED)由于其主动发光.响应快.高亮度.全视角.直流 ...
- 基于FPGA的均值滤波算法的实现
前面实现了基于FPGA的彩色图像转灰度处理,减小了图像的体积,但是其中还是存在许多噪声,会影响图像的边缘检测,所以这一篇就要消除这些噪声,基于灰度图像进行图像的滤波处理,为图像的边缘检测做好夯实基础. ...
- 基于FPGA的IIR滤波器
基于FPGA的IIR滤波器 by方阳 版权声明:本文为博主原创文章,转载请指明转载地址 ...
随机推荐
- oracle的触发器
oracle的触发器分为语句级和行级两种类型,在视图上所创建的触发器叫做什么类型的触发器? DML触发器有三类: 1, insert触发器: 2, update触发器: 3, delete触发器: 触 ...
- js 参数的 引用与值传递
js中arr的赋值不影响原数组,赋值和引用的区别 1.赋值 var a = 1; var b = a; //赋的是a的复制值 b ++; alert(a); //"1" ...
- Anatomy of the Linux kernel--转
ref:http://www.ibm.com/developerworks/linux/library/l-linux-kernel/?S_TACT=105AGX52&S_CMP=cn-a-l ...
- 分布式缓存技术redis学习(一)——redis简介以及linux上的安装
redis简介 redis是NoSQL(No Only SQL,非关系型数据库)的一种,NoSQL是以Key-Value的形式存储数据.当前主流的分布式缓存技术有redis,memcached,ssd ...
- Java构造器和方法的区别
摘要要学习Java,你必须理解构造器.因为构造器可以提供许多特殊的方法,这个对于初学者经常混淆.但是,构造器和方法又有很多重要的区别.原作者:Robert Nielsen 原站:www.javawor ...
- A标签使用javascript:伪协议
一.前言 今天,遇到一个别人挖的坑,问题是这样的. 做了一个列表页,可以筛选数据,有很多筛条件.主要是有input复选框和<a>标签两种.如图: 其中房价的筛选条件使用<a>标 ...
- C# 创建线程的简单方式:异步委托 .
定义一个委托调用的方法:TakesAWhile //定义委托要引用的方法 private static int TakesAWhile(int data, int ms) { Console.Writ ...
- dispatch_group_async可以实现监听一组任务是否完成,完成后得到通知执行其他的操作。这个方法很有用,比如你执行三个下载任务,当三个任务都下载完成后你才通知界面说完成的了
dispatch_queue_t queue=dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, ); dispatch_group_ ...
- ASP-----分页功能的实现
WEB 分页功能的实现后端C#代码部分: // 建立Linq 数据库的连接 private MYDateDataContext context = new MYDateDataContext(); / ...
- PHP动态函数
header('Content-type:text/html;Charset=utf8'); function welcome(){ echo 'Welcome to you.'; } functio ...