嵌入式图像处理技术的核心一般是DSP或者FPGA。DSP是目前信号处理的主流芯片,其优势在于处理复杂运算,能快速实现各类数字信号处理的算法[3]。至于它的应用和发展受到限制,是因为自身存在一些弊端:DSP的系统体系是顺序执行的,并且只对一些固有的运算提供硬件优化,而这些固定的优化似乎并不能满足形色各异的多种算法的要求。30511
FPGA之所以能成为当下炙手可热的可编程逻辑器件,是因为在FPGA开发平台上,用户可以轻松快捷地设计出满足所需的硬件逻辑功能。不仅如此,FPGA还可以进行重复编程,使系统的硬件功能像软件描述语言—样来进行重复修改,这样一来系统设计变的灵活、自由。同时基于FPGA设计的系统能在逻辑上实现并行化,更是大大提高了系统的运行速度,而这些在DSP系统上显然是不可能实现的。随着数字集成电路技术的发展,更多的FPGA中已增加了能实现各种功能的DSP核,更便于FPGA在数字信号处理领域的应用。
但是FPGA在实现类似高层处理算法时也会受到—定的限制,这种结构复杂,数据量又小的算法更适合交给DSP来实现。综上所述,采用FPGA和DSP相结合的数字处理系统成为当下的热门。这样一来,可以通过FPGA先对图像做预处理,接着借助DSP来实现更深层更复杂的算法。如此兼顾了两者的优点,就能取得更好的图像处理效果。论文网
2 中值滤波算法
从实质上来说,空域滤波都是基于像素点邻域内的操作,通过创建—个以待处理像素为中心的模板,然后在整幅图像上平移该模板并进行某些指定的运算操作,来完成对整个图像的滤波。这种滤波方法是在图像空间内借助对像素邻域的操作来完成的,邻域操作往往涉及模板运算,而模板运算中用的最多的是模板卷积:
1 根据滤波原理自定义一个 的模板,将模板中心与某待处理像素点重合;
2 用该模板和模板下对应的待处理像素的邻域进行一系列运算操作;
3 对得到的运算结果求和之后除以模板窗口数;
4 前三步完成后得到就是相应模板的滤波输出响应,将它赋给对应于模板中心的图像像素,覆盖它原先的像素值。
由于线性平滑滤波器在消除图像噪声的同时会模糊图像的细节,因而一般采用非线性平滑滤波器,这其中最常用的是中值滤波器,它适合用来消除脉冲噪声。本章主要针对可见光CCD在低照度下产生的的随机噪声进行滤波,采用的正是中值滤波法。
2.1 算法原理:
(2.1)
用一个模板尺寸为 的中值滤波器对图像中的某个待处理像素进行模板运算后,其输出值应大于等于模板下方 个像素灰度值,又应小于等于模板下方 个像素灰度值,即为该模板覆盖下所有像素灰度的中值[4-6]。例如,使用一个 的中值滤波模板,则输出的结果是模板下对应的9个像素中第5大的那个。参照模板卷积的步骤,可以类比得到中值滤波算法的实现过程:
1 从图像边缘开始,将模板中心与某一待处理像素位置重合;
2 依次读取对应于模板各窗口的下方所有像素的灰度值;
3 将读出的所有像素的灰度值按照从小到大的顺序排列,并找出其中排在最中间的值,也就是中值。由此可见模板的窗口数常常为奇数;
4 把得到的这个中值赋给模板中心位置对应的像素点,覆盖其原来的像素灰度,作为该像素滤波后输出的灰度值。
由于中值滤波只是对同一空间域内的像素进行的操作,即使对一个视频文件来说,也不存在帧与帧之间相互影响的问题。参照对单幅图像的滤波方法,我们在对视频做中值滤波的时候,需要做的只是将该视频的每一帧提取出来,并分别对每一帧单独进行中值滤波,最后再将滤波过后的图像一帧一帧输出。 基于FPGA的图像处理研究现状:http://www.youerw.com/yanjiu/lunwen_26241.html