转载 基于bayer型阵列的空间域插值

基于bayer型阵列的空间域插值算法分

蒲杰
女,重庆邮电大学,在读硕士,研究方向为移动通信。
李振中
重庆邮电大学通信与信息工程学院。
屈刚
江苏省邮电规划设计院有限责任公司。

1 引言
在数码照相机系统中,为降低数字照相机的体积和成本,生产厂家通常采用CCD或者CMOS图像传感器,而传感器只能识别光的强度而不能识别光的色彩,故我们一般在光射在传感器之前,将光进行滤波,只能允许部分色彩光进入传感器,使得传感器将进入光的强度转换成电压形式,以电压的大小来表征光的强弱。我们将其允许通过部分光的阵列称为CFA(Color Filter Array)阵列, 我们将每个像素中只有一种基色的马赛克图变换成每个像素包括红、绿、蓝色的全色图的过程称之为插值[1],是一种图像增强技术。CFA有很多形式,最为常用的为bayer型阵列,如图1所示。

而图像增强的方法分为空间域方法和频域方法,对频域处理,则是修改图像的傅立叶变换为基础或使用小波变换对图像进行增强效果,但是算法比较复杂,为实现简单化,一般对图像像素进行直接处理,即进行空间域插值处理。

在空间域,基于bayer型CFA的插值方法按照原理,一般分为两类,第一类忽略像素间的相关性,比如临近插值、双线性插值,他们在图像的高频区域不能得到比较好的效果。另一类,则考虑了像素之间的相关性,比如梯度插值法,它可以在图片高频区域能得到比较好的效果。但是在这些经典插值算法中均采用了平滑的均值插值算法,即每一个插值核拥有同等的权重(0.5或者0.25),这样的处理依然忽略了较多的图片细节,在图片的边界区域还是难以避免错误的色彩。Kimmel提出一种为插值分量提供不同权重的方法[2],为硬件简单实现,本文中提出G分量的插值在水平和垂直方向自适应地设置权重,使得插值能达到更好的效果。

2 传统插值算法分析
一个传感器一般由上百万个像素组成,当光线通过CFA(bayer型)阵列之后,单色光线通过相机的镜片打在传感器上,每个像素都为单色光,从而理想的bayer图是一个较为昏暗的马赛克图,如果靠的足够近,能够清楚的看到红、绿、蓝色的点,如图2所示。插值过程就是通过临近像素的颜色得到本身像素缺乏的颜色,从而得到全色图。

2.1 临近插值法
在bayer阵列中,将三基色图片插值成彩色图片最为简单的便为临近插值法。由于各个基色整个图片中,大部分是缓慢均匀的变化,则我们将某个像素中缺少的基色用其周边对应此基色的像素值代替从而达到插值效果,其公式如下:

临近插值只是一个简单的赋值过程,没有考虑各个像素之间的相关性,固在插值处理过程中,会使图片马赛克化,尤其图片中存在一些非平滑度过区域时,更为严重。

2.2 双线型插值法
双线型(bilinear)插值算法针对RGB三基色不同通道单独进行插值运算,它作为插值算法的最基本算法,是以后改进插值算法的提出以及性能分析的一个参考,其算法原理为对于某个像素的某一个色彩通道而言,其采用周边同通道的平均值,公式如下:

其中N为滤波窗口中所求通道像素个数, 为滤波窗口中不同与的同通道像素,以bayer阵列部分像素为例:
(1) 在B点插值G、R通道值,正如在坐标(2,2)点处:

(2) 在R点插值G、B通道值,正如在坐标(3,3)点处:

(3) 在G点插值R、B通道值,正如在坐标(2,3)点处:

由于双线型插值是在独立通道中进行的,它只考虑了同种基色之间的相关性而没有考虑全色图中所有通道的相关性,从而双线性插值不能得到很让人满意的插值效果,其在边缘会出现一些锯齿现象。

2.3 梯度插值法
自然世界中的彩色图,它的RGB三通道具有相当强的相关性,对于每一个通道都能表示相同的内容,因为人眼对绿色比较敏感,则在bayer阵列中,绿色分量占据了50%,而R、B分量各占了25%。由于RGB三通道相邻像素具有很强的相关性,并且G分量已知数据又比较多,那么我们需要准确有效的得到全图的G分量,再根据相关性估算出未知的75%R、B分量。

本节提出一种基于梯度的插值算法,为保证插值是沿着边界进行而不是跨越边界,恢复G分量时,先通过计算水平方向和竖直方向的梯度来检测边界方向,从而选择合适的插值方向,假设η 为水平方向梯度值,δ 为垂直方向梯度值,那么:

如果δ <η 说明在水平方向存在边界的可能性比较大,插值沿着可能的边界进行,即在水平方向进行,而水平方向的邻域像素与被插值点的像素的相关行也会大于数值方向的像素,插值结果为

如果δ >η ,则认为竖直方向存在边界的概率大,插值在数值方向进行,插值结果为

如果两者比较相等的话,则认为该像素点处在一个平滑的区域内,插值在整个邻域内进行,插值结果为:

一旦亮度被确定,则色度分量通常是由亮度信号和色度信号的相关性来进行插值的,在对红色和蓝色通道插值时,用到的基本思想是Cok[3]提出的基于色比恒定插值方法,所谓色比恒定思想,在早期的插值算法中也已经有了应用,它认为在一副图片区域内,其色彩亮度总是自然度过的,色比(通常定义为R/G,B/G)基本上不会发生突变,即

在上面的等式中Rij和Gmn为测出的值,Gij为插值得到的结果,那么为了得到坐标为(m,n)点的Rmn色差值,则通过等式变形得到

利用上述原理,对bayer型阵列进行插值,首先根据水平和垂直方向梯度的大小确定整个图片中的绿色G分量,然后利用色比恒定原理恢复红色和蓝色通道的信息。

3 改进插值法
正如上述算法所分析,传统插值均采用了平滑的均值插值算法,即每一个插值核拥有同等的权重(0.5或者0.25),基于Kimmel提出一种为插值分量提供不同权重的方法,本节中对G分量的插值在水平和垂直方向自适应地设置权重算法进行实现[4],并且在色差通道上采用了色差恒定原理,这样就避免了,在纯红色边缘或者纯蓝色边缘,R/G,B/G将趋近无穷大,容易产生噪声或者引入邻域内不相关的像素而产生各种图片误差与失真现象,算法如下:
(1)在每个保留R或B分量的点上需要插值计算其G分量,若i,j为当前待插值点的行和列位置,分别计算G分量水平和垂直方向的邻域均值和梯度值

(2)计算水平均值和垂直均值对于插值作用的加权系数,公式为

(3)对G分量的水平均值和垂直均值分别采用加权系数进行加权处理,最终的差值结果为

(4)为避免在色比恒定算法中边界G分量趋近为0的情况出现,而使插值出现噪声,再此我们对色差通道采用色差恒定原理,跟色比恒定原理类似,在自然图片中其色彩亮度总是自然度过的,色差(通常定义为R-G,B-G)基本上不会发生突变,即

在上面的等式中Rij和Gmn为测出的值,Gij为插值得到的结果,那么为了得到坐标为(m,n)点的Rmn色差值,则通过等式变形得到

以坐标点(2,2)为例

从上面的公式可以看出,水平均值和垂直均值中,梯度绝对值大,则权重小,说明属于垂直边界方向,因此可以避免边界模糊。梯度绝对值大,则权重大,说明属于平行边界方向,在边界不会因为出现G分量为0而导致失真现象的情况发生,因此可以强化边界效果。

4 实验结果及结论
在本部分为了验证文中提出的插值算法的效果,分别采用黑白条纹、真彩图进行分析[5]。图片依次为原始图片、bayer阵列图、临近差值法、双线性插值法、梯度插值法以及改进插值法处理效果图,如图3、图4所示。

由上面的图片可以得出,所有的插值方法都能得到比较满意的插值效果,但是临近插值在边界处出现明显的锯齿现象,双线性插值虽然没有明显的锯齿显现,但是边缘比较模糊,对梯度插值,由于在G分量的插值上是沿边界进行插值,效果比较好,但是在色差的插值过程中采用了色比恒定原理,从而在G分量为0的边界处出现了失真现象,最后从视觉上看给改进算法,它在整体上没有出现锯齿、模糊以及失真现象,算法原理又比较简单,容易硬件实现,可以算作是一个比较好的算法,以下给出了他们几种算法的PSNR值,从数值上再次说明改进的插值算法最接近原图,见表1.

参考文献
1 B. E. Bayer. Color image array[P].U.S. Patent, No.3917065, 1976
2 Ron Kimmel. Demosaicing:Image reconstruction from colorCCD samples. IEEE transactions on image processing.1999, 8(9):1221-1228
3 D.R. Cok. Simnal processing method and apparatus forproducing interpolated chrominance values in a sampledcolor image signal. U.S. Patent, No.4642678,1987
4 王林,杨克俭.基于双线性插值的图像缩放算法[J]. 电脑编程技巧与维护, 2008,10:53-55
5 刘方. 基于Bayer彩色滤波阵列插值算法的研究[D]. 硕士学位论文,成都,电子科技大学,2006

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值