色彩校正中对称颜色矩阵的实现方法

文档序号:7626437阅读:326来源:国知局
专利名称:色彩校正中对称颜色矩阵的实现方法
技术领域
本发明涉及图像处理领域,尤其涉及,图像复原技术中用于摄像装置的色彩校正方法,该方法中包含有颜色矩阵(color matrix)。
背景技术
图像复原是图像处理的一个重要部分,它的主要目的是改善给定的图像质量,当给定了一副退化的或者受到噪声污染了的图像后,利用退化现象的某种先验知识来重建或恢复原有图像是图像复原处理的主要过程。在现有技术中,用摄像器材拍摄下来的影象的色彩往往不正,即,从光学传感器中出来的图像颜色有相当的色偏,需要通过一定的方法来校正。通常用的校正办法是拍摄一张如附图1所示的颜色校验片(color checker)--标准色板的图片,计算出所拍摄图像中每一块色块的平均值,与标准色板中相应色块的标准值做比较,计算出颜色矩阵(color matrix);然后在每一帧的图像输出前做如下式的计算,即可达到色彩校正的目的。
RGB=color matrix*rgb]]>其中,R、G、B为标准色板中的标准值,r、g、b为拍摄下来图像对应的值。
从这里可知,颜色矩阵(color matrix)的良好实现是颜色校正中的关键,现有方法一般是用最小二乘法直接计算出颜色矩阵,如下求colormatrix|a11a12a13||a21a22a23||a31a32a33|]]>使得下式中三个值最小(R-a11*r-a12*g-a13*b)^2,(G-a21*r-a22*g-a23*b)^2,(B-a31*r-a32*g-a33*b)^2。
但使用这种方法计算出的颜色矩阵进行颜色校正的效果并不好,在有的时候还可能会加重图像的噪声的现象,而且在有的情况下,颜色矩阵还被要求是对称的矩阵,因此我们需要一种更好的实现颜色矩阵的方法。

发明内容
有鉴于此,本发明的主要目的在于提供一种用于摄像装置的色彩校正中对称颜色矩阵的实现方法,使得颜色校正更理想和趋于准确。
为达到上述目的,本发明的技术方案具体是这样实现的一种适合对称颜色矩阵的实现方法,用在通过下式来实现的色彩校正中RGB=color matrix*rgb]]>其中,RGB为标准色板中的标准值,rgb为所拍摄图像对应的值;颜色矩阵(color matrix)如下式所表示|a1a2a3||a2a4a5|]]>
|a3a5a6|]]>其特点在于,包括使得(R-a1*r-a2*g-a3*b)^2,(G-a2*r-a4*g-a5*b)^2,(B-a3*r-a5*g-a6*b)^2三个值最小的步骤,还包括步骤一、使得a1+a2+a3=1,a2+a4+a5=1,a3+a5+a6=1的手段;步骤二、使得a1,a4,a6尽量接近1的手段;以及步骤三、使得a2,a3,a5尽量的接近0的手段。
进一步地,色板中每一块的权重可被设置;进一步地,使得(R-a1*r-a2*g-a3*b)^2,(G-a2*r-a4*g-a5*b)^2,(B-a3*r-a5*g-a6*b)^2三个值最小的步骤,是通过分别对a1,a4,a6求导并信令导数等于0来实现;进一步地,使得(R-a1*r-a2*g-a3*b)^2,(G-a2*r-a4*g-a5*b)^2,(B-a3*r-a5*g-a6*b)^2三个值最小的步骤,是通过分别对a1,a4,a6求导并令导数等于预先给的固定值来实现;进一步地,所述固定值的取值范围为[-180000,180000];进一步地,步骤二是通过去掉不满足下列条件的颜色矩阵值来实现的0.5<=a1<=1.5,0.5<=a4<=1.5,0.5<=a6<=1.5;进一步地,步骤三是通过去掉不满足下列条件的颜色矩阵值来实现的-0.5<=a2<=0.5,-0.5<=a5<=0.5。
对比现有技术,本发明为了去取现有技术中颜色校正的缺点,在现有方法的基础上增加了对颜色矩阵的值进行约束的步骤,使得校正效果更加理想,并且可以应用于颜色矩阵为对称矩阵的情况。
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明进一步详细说明。


图1为颜色校验片(color checker)示意图。
具体实施例方式
按照发明内容所述本专利的实现思想,下面通过具体的实施例来描述实现的过程和示范。在不同的光线下分别拍摄一张如下图所示的color checker的图片,计算出每一块色块的平均值,与标准值做比较,计算出color matrix。
RGB=color matrix*rgb]]>设RGB为标准的色块值,rgb为拍摄下来的值。
求colormatrix:|a1a2a3||a2a4a5||a3a5a6|]]>使得下式中三个值最小(R-a1*r-a2*g-a3*b)^2,(G-a2*r-a4*g-a5*b)^2,(B-a3*r-a5*g-a6*b)^2 ---1并且为了达到好的实际效果,对color matrix中的值的范围做了约束。
要求条件1、a1+a2+a3=1,a2+a4+a5=1,a3+a5+a6=1条件2、a1,a4,a6尽量的接近1;
条件3、a2,a3,a5尽量的接近0;条件4、要可设置色板中每一块的权重,此处用Lambda[24]表示;条件5、color matrix为对称矩阵。
要求上式的最小值,即分别对a1,a4,a6求导,令导数等于0,即为最小值。
求导得r*R-a1*r*r-a2*r*g-a3*r*b=0g*G-a2*g*r-a4*g*g-a5*g*b=0b*B-a3*b*r-a5*b*g-a6*b*b=0 ---2此为一个色块的情况,如图1所示,我们拍摄的共有24块,再加上权重的影响,对整个图而言,我们需要计算的等式为∑(Lambda[i]*(ri*Ri))-a1*∑(Lambda[i]*(ri*ri))-a2*∑(Lambda[i]*(ri*gi))-a3*∑(Lambda[i]*(ri*bi))=0∑(Lambda[i]*(gi*Gi))-a2*∑(Lambda[i]*(gi*ri))-a4*∑(Lambda[i]*(gi*gi))-a5*∑(Lambda[i]*(gi*bi))=0∑(Lambda[i]*(bi*Bi))-a3*∑(Lambda[i]*(bi*ri))-a5*∑(Lambda[i]*(bi*gi))-a6*∑(Lambda[i]*(bi*bi))=0 ---3其中i=1,...24。
由于导数的意义在于曲线在这一点的斜率,为了能同时满足所要求的前3个条件,所以1式的值并不一定是最小,可以有一定的误差,因为使1式最小的color matrix不一定满足这3个条件,即2式的值不一定是0,设为e。
所以3式可以写为∑(Lambda[i]*(ri*Ri))-a1*∑(Lambda[i]*(ri*ri))-a2*∑(Lambda[i]*(ri*gi))-a3*∑(Lambda[i]*(ri*bi))=e∑(Lambda[i]*(gi*Gi))-a2*∑(Lambda[i]*(gi*ri))-a4*∑(Lambda[i]*(gi*gi))-a5*∑(Lambda[i]*(gi*bi))=e∑(Lambda[i]*(bi*Bi))-a3*∑(Lambda[i]*(bi*ri))-a5*∑(Lambda[i]*(bi*gi))-a6*∑(Lambda[i]*(bi*bi))=e ---4其中i=1,...24。
再把条件1代入4式,得a2=(∑(Lambda[i]*(ri*(ri-Ri)))-a3*∑(Lambda[i]*(ri*(ri-bi)))-e)/∑(Lambda[i]*(ri*(ri-gi))) ---5a5=(∑(Lambda[i]*(gi*(gi-Gi)))-a2*∑(Lambda[i]*(gi*(gi-ri)))-e)/∑(Lambda[i]*(gi*(gi-bi))) ---6a2=(∑(Lambda[i]*(gi*(gi-Gi)))-a5*∑(Lambda[i]*(gi*(gi-bi)))-e)/∑(Lambda[i]*(gi*(gi-ri))) ---7a5=(∑(Lambda[i]*(bi*(bi-Bi)))-a3*∑(Lambda[i]*(bi*(bi-ri)))-e)/∑(Lambda[i]*(bi*(bi-gi))) ---8分别令e=-180000至180000,间隔10000,共37个值。
a3=-0.5至0.5,间隔0.01,共101个值。
代入5式和8式,求出a2,a5。
若求出的a2不符合条件3,而a5符合条件3,则用7式再求一遍a2;若求出的a5不符合条件3,而a2符合条件3,则用6式再求一遍a5;再根据条件1计算出a1,a4,a6;至此,共得到37*101=3737组color matrix。
再去掉其中不满足条件2和条件3的color matrix,即去掉不满足条件0.5<=a1<=1.5,0.5<=a4<=1.5,0.5<=a6<=1.5,-0.5<=a <=0.5,-0.5<=a5<=0.5,的color matrix。
把剩下的N(N<=3737)组color matrixA,先取每一组的第一行A[1],做如下计算diff1=Expected-R′-A[1]*Acquired′; ---9其中Acquired=|r1,g1,b1||r2,g2,b2||...,...,...,||r24,g24,b24|]]>Expected_R=|R1||R2||...||R24|]]>得出N组diff1,其中diff1为1行24列的矩阵。
把diff1中的每一个数乘上对应的权重后,取平方做和,如下diff_sum1=0for(k=0;k<24;k++){d=diff1[k[*Lambda[k];diff_sum1+=d*d;}对这N组diff1分别进行如上计算,就得出N个diff_sum1.其中diff_sum1是一个实数。
再取每一组的第二行A[2],做如下计算diff2=Expected_G′-A[2]*Acquired′; ---10其中Acquired=|r1,g1,b1||r2,g2,b2||...,...,...,||r24,g24,b24|]]>Expected_G=|G1||G2||...||G24|]]>得出N组diff2,其中diff2为1行24列的矩阵。
把diff2中的每一个数乘上对应的权重后,取平方做和,如下diff_sum2=0;for(k=0;k<24;k++)
{d=diff2[k]*Lambda[k];diff_sum2+=d*d;}对这N组diff2分别进行如上计算,就得出N个diff_sum2.其中diff_sum2是一个实数。
再取每一组的第三行A[3],做如下计算diff3=Expected_B′-A[3]*Acquired′; ---11其中Acquired=|r1,g1,b1||r2,g2,b2||...,...,...,||r24,g24,b24|]]>Expected_B=|B1||B2||...||B24|]]>得出N组diff3,其中diff3为1行24列的矩阵。
再把diff3中的每一个数乘上对应的权重后,取平方做和,如下diff_sum3=0;for(k=0;k<24;k++){d=diff3[k]*Lambda[k];diff_sum3+=d*d;}对这N组diff3分别进行如上计算,就得出N个diff_sum3.其中diff_sum3是一个实数。
最后,把这N个diff_sum1,diff_sum2,diff_sum3分别相加,即diff_sum
=diff_sum[1]=...=diff_sum[N]=0;for(k=0;k<N;k++){
diff_sum[k]=diff_sum[k]+diff_sum1[k]+diff_sum2[k]+diff_sum3[k];}就得出N个diff_sum.其中diff_sum是一个实数。
找出这N个diff_sum的最小值,设第M个diff_sum为这N个diff_sum的最小值,则第M组的color matrixA即为我们要求的colormatrix。
至此,我们计算出了一个完整的矩阵,即为我们需要的colormatrix。
本发明所述方法可被用于诸如摄像头、数码相机、可拍照的手机等数字摄像装置或系统中,应当指出,以上所述仅是本发明的优选实施方式,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以作出若干改进和变化,这些改进和变化也应视为本发明的保护范围。
权利要求
1.一种适合对称颜色矩阵的实现方法,用在通过下式来实现的色彩校正中R rG=color matrix * gB b其中,RGB为标准色板中的标准值,rgb为所拍摄图像对应的值;颜色矩阵(color matrix)如下式所表示|a1 a2 a3||a2 a4 a5||a3 a5 a6|其特点在于,包括使得(R-a1*r-a2*g-a3*b)^2,(G-a2*r-a4*g-a5*b)^2,(B-a3*r-a5*g-a6*b)^2三个值最小的步骤,还包括步骤一、使得a1+a2+a3=1,a2+a4+a5=1,a3+a5+a6=1的手段;步骤二、使得a1,a4,a6尽量接近1的手段;以及步骤三、使得a2,a3,a5尽量的接近0的手段。
2.根据权利要求1所述的方法,其特征在于,色板中每一块的权重可被设置。
3.根据权利要求1所述的方法,其特征在于,使得所述三个值最小的步骤,是通过分别对a1,a4,a6求导并令导数等于0来实现。
4.根据权利要求1所述的方法,其特征在于,使得所述三个值最小的步骤,是通过分别对a1,a4,a6求导并令导数等于预先给的固定值来实现的。
5.根据权利要求4所述的方法,其特征在于,所述固定值的取值范围为[-180000,180000]
6.根据权利要求1所述的方法,其特征在于,步骤二是通过去掉不满足下列条件的颜色矩阵值来实现的0.5<=a1<=1.5,0.5<=a4<=1.5,0.5<=a6<=1.5。
7.根据权利要求1所述的方法,其特征在于,步骤三是通过去掉不满足下列条件的颜色矩阵值来实现的-0.5<=a2<=0.5,-0.5<=a5<=0.5。
全文摘要
本发明公开了一种用于色彩校正中的对称颜色矩阵的实现方法,本发明为了去取现有技术中颜色校正的缺点,在现有方法的基础上增加了对颜色矩阵的值进行约束的步骤,使得校正效果更加理想,达到好的实际效果。
文档编号H04N1/60GK1758705SQ20051011578
公开日2006年4月12日 申请日期2005年11月11日 优先权日2005年11月11日
发明者卢虹, 王浩 申请人:北京中星微电子有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1