具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图对本发明的具体实施方式做详细的说明。
在下面的描述中阐述了很多具体细节以便于充分理解本发明,但是本发明还可以采用其他不同于在此描述的其它方式来实施,因此本发明不受下面公开的具体实施例的限制。
为了解决现有技术中的问题,本发明提供一种去马赛克的方法,参考图2,示出了本发明去马赛克方法一实施方式的流程示意图。所述方法大致包括以下步骤:
步骤S1,获取拜耳格式图像;
步骤S2,对目标像素点为中心的像素阵列进行水平方向、竖直方向、左上至右下方向和左下至右上方向的梯度提取;
步骤S3,基于梯度提取的结果进行权重提取,以获得像素阵列的权重系数;
步骤S4,基于权重系数对目标像素点进行颜色重建;
步骤S5,输出图像信息。
下面结合具体实施例和附图对本发明技术方案做进一步说明。
执行步骤S1,获取拜耳格式图像。拜耳格式图像中包括矩阵式排布的像素点,其中绿色像素点G占了一半数量,而红色像素点R和蓝色像素点B分别占四分之一。
执行步骤S2,具体地,包括从拜耳格式图像中获取目标像素点为中心的像素阵列,之后,对所述像素阵列进行梯度提取。
参考图3至图6是本发明去马赛克方法一实施例待处理的拜耳格式图像的示意图,本实施例中获取的像素阵列为以目标像素点为中心点的5x5的像素阵列为例,但是本发明对此不做限制。
图3至图6分别示出了红色、蓝色、绿色为中心的4种5x5像素阵列。需要说明的是,由于图3和图4中绿色像素点(G)的排布位置一致,只是红色像素点(R)和蓝色像素点(B)位置交换,因此图3和图4所示实施例的去马赛克的方法类似。同时,由于图5和图6也类似地,绿色像素点(G)的排布位置一致,只是红色像素点(R)和蓝色像素点(B)位置交换,因此图5和图6所示实施例的去马赛克的方法类似。此处,仅以图4和图5所示像素阵列为例对本发明去马赛克的方法进行说明。
对目标像素点为中心的像素阵列进行水平方向、竖直方向、左上至右下方向和左下至右上方向的梯度提取,具体地,通过获得各方向上相邻行之间相同颜色分量之间的梯度变化来进行梯度提取,从而获得各方向上相邻行之间的相似程度。此处所述左上至右下方向和左下至右上方向的梯度提取指的是沿像素阵列对角线方向而进行的梯度提取的过程。
结合参考图4所示的像素阵列,以水平方向梯度提取为例,首先,分别计算0行和1行,1行和2行,2行和3行,3行和4行之间的所有相隔的同种颜色分量的梯度;其次,基于梯度最大值和梯度最小值的差,分别获得0行和1行,1行和2行,2行和3行,3行和4行之间的梯度变化。
具体地,以h01、h12、h23和h34分别表示0行和1行,1行和2行,2行和3行,3行和4行之间的所有相隔的同种颜色分量的梯度,以Δh01,Δh12,Δh23和Δh34分别表示0行和1行,1行和2行,2行和3行,3行和4行之间的所有相隔的同种颜色分量的梯度的变化。具体计算方法如下:
h01={B(0,2)-B(0,0),B(0,4)-B(0,2),G(0,3)-G(0,1),
G(1,2)-G(1,0),G(1,4)-G(1,2),R(1,3)-R(1,1),G(1,4)-G(0,1)}
h12={G(1,2)-G(1,0),G(1,4)-G(1,2),R(1,3)-R(1,1),
B(2,2)-B(2,0),B(2,4)-B(2,2),G(2,3)-G(2,1),G(1,4)-G(2,1)}
h23={B(2,2)-B(2,0),B(2,4)-B(2,2),G(2,3)-G(2,1),
G(3,2)-G(3,0),G(3,4)-G(3,2),R(3,3)-R(3,1),G(2,3)-G(3,0)}
h34={G(3,2)-G(3,0),G(3,4)-G(3,2),R(3,3)-R(3,1),
B(4,2)-B(4,0),B(4,4)-B(4,2),G(4,3)-G(4,1),G(4,3)-G(3,0)}
Δh01=max(h01)-min(h01);
Δh12=max(h12)-min(h12);
Δh23=max(h23)-min(h23);
Δh34=max(h34)-min(h34)。
其中,B(i,j)、G(i,j)和R(i,j)为图4所示相应像素点的值,例如,B(0,2)-B(0,0)获得了图4的像素阵列中B(0,2)-B(0,0)之间的梯度。而B(0,2)-B(0,0),B(0,4)-B(0,2),G(0,3)-G(0,1),
G(1,2)-G(1,0),G(1,4)-G(1,2),R(1,3)-R(1,1),G(1,4)-G(0,1)计算出了图4所示像素阵列中0行和1行,所有相隔的同种颜色分量的各梯度。计算Δh01时,max(h01)表示取各梯度中的最大值,min(h01)表示取各梯度中的最小值,从而获得0行和1行之间的梯度变化。
基于类似的方法可以计算图4所示像素阵列中竖直方向的梯度变化,以v01、v12、v23和v34分别表示0列和1列,1列和2列,2列和3列,3列和4列之间的所有相隔的同种颜色分量的梯度,Δv01,Δv12,Δv23和Δv34的分别表示0列和1列,1列和2列,2列和3列,3列和4列之间所有相隔的同种颜色分量的梯度变化,竖直方向的计算和水平方向的计算过程非常类似,在此不再赘述。
结合参考图7和图8,分别示出了图4和图5所示像素阵列的左上至右下方向、左下至右上方向各行的排布。由于左下至右上的梯度提取方法和左上至右下的梯度提取方法类似,此处结合图7对左下至右上的梯度提取的过程进行说明。
与水平方向计算类似地,首先,分别计算相邻两行之间的所有相隔的同种颜色分量的梯度;其次,基于梯度最大值和梯度最小值的差获得的梯度变化。
以dlurd(0,1,2)、dlurd(1,2)、dlurd(2,3)和dlurd(2,3,4)分别表示了左上至右下方向上0行、1行和2行,1行和2行,2行和3行,2行、3行和4行之间所有相隔的同种颜色分量的梯度。以Δdlurd(0,1,2)、Δdlurd(1,2)、Δdlurd(2,3)和Δdlurd(2,3,4)分别表示对应左上至右下方向上相邻行之间的所有相隔的同种颜色分量的梯度变化。具体地计算方法如下:
dlurd(0,1,2)={B(2,4)-B(0,2),
G(2,3)-G(0,1),G(3,4)-G(1,2),
B(4,4)-B(2,2),B(2,2)-B(0,0),R(3,3)-R(1,1)};
dlurd(1,2)={G(2,3)-G(0,1),G(3,4)-G(1,2),
B(4,4)-B(2,2),B(2,2)-B(0,0),R(3,3)-R(1,1)};
dlurd(2,3)={B(4,4)-B(2,2),B(2,2)-B(0,0),R(3,3)-R(1,1),
G(3,2)-G(1,0),G(4,3)-G(2,1)};
dlurd(2,3,4)={B(4,4)-B(2,2),B(2,2)-B(0,0),R(3,3)-R(1,1),
G(3,2)-G(1,0),G(4,3)-G(2,1),
B(4,2)-B(2,0)};
Δdlurd(0,1,2)=max(dlurd(0,1,2))-min(dlurd(0,1,2));
Δdlurd(1,2)=max(dlurd(1,2))-min(dlurd(1,2));
Δdlurd(2,3)=max(dlurd(2,3))-min(dlurd(2,3));
Δdlurd(2,3,4)=max(dlurd(2,3,4))-min(dlurd(2,3,4))。
类似地,基于左下至右上的dldru(0,1,2)、dldru(1,2)、dldru(2,3)和dldru(2,3,4)的相邻行之间同种颜色分量的梯度,可以获得左下至右上相邻行的梯度变化Δdldru(0,1,2)、Δdldru(1,2)、Δdldru(2,3)和Δdldru(2,3,4),与左上至右下的计算方式相似,在此不再赘述。
还可以采用相同地方法对图5所示像素阵列进行水平方向、竖直方向、左上至右下方向和左下至右上方向左下至右上方向的梯度提取。
具体地,梯度变化越大则意味着对应的水平行(竖直方向各行、左上至右下方向的各行、左下至右上方向的各行)之间的相似度越小,反之,梯度变化越小则意味着对应的水平行(竖直方向各行、左上至右下方向的各行、左下至右上方向的各行)之间越相似。
本实施例中,本发明对目标像素点为中心的像素阵列进行水平方向、竖直方向、左上至右下方向和左下至右上方向的梯度提取,从拜耳格式图像提取了较为细致的信息,从而可以获得较为准确的图像处理结果。
本实施例获得各方向上相邻行之间相同颜色分量之间的梯度变化,可以较为精确地检测出2个像素点宽度或者2个像素点以上宽度的边缘信息,进而可以获得较为精确的图像处理结果。
本实施例充分利用了5×5像素阵列的信息,基于5×5像素阵列就可以获得精确的图像处理结果,无需增加信息存储空间。
执行步骤S3,基于梯度提取的结果进行权重提取,以获得像素阵列的权重系数,由于各方向上相邻行的梯度变化与相似度成反比,而相似度越大在后续颜色重建时,对目标像素点的作用越大,相应地,在后续计算时采用的权重系数越大。
具体地,本实施例中权重提取的步骤包括以下分步骤:
判断梯度变化是否大于或等于第一阈值;
如果各方向上相邻行之间相同颜色分量之间的梯度变化大于第一阈值,所述权重系数为0;
如果各方向上相邻行之间相同颜色分量之间的梯度变化小于或等于第一阈值,所述权重系数为所述第一阈值与所述梯度变化的差。
其中,所述第一阈值为经验值,本实施例中所述第一阈值为16,将步骤S2计算获得的水平方向上的梯度变化Δh01、Δh12、Δh23、Δh34,竖直方向上的梯度变化Δv01、Δv12、Δv23、Δv34,左上右下方向上的梯度变化Δdlurd(0,1,2)、Δdlurd(1,2)、Δdlurd(2,3)、Δdlurd(2,3,4),左下右上方向上的梯度变化Δdldru(0,1,2)、Δdldru(1,2)、Δdldru(2,3)和Δdldru(2,3,4)依次与第一阈值16相比,如果梯度变化大于16,则权重系数为0,如果梯度变化小于或等于16,则权重系数为16与Δh(Δv、Δdldru或Δdldru)的差。
具体地,以Wh01、Wh12、Wh23、Wh34表示水平方向相邻行的权重系数,以Wv01、Wv12、Wv23、Wv34表示竖直方向相邻行的权重系数,以Wlurd012、Wlurd12、Wlurd23、Wlurd234表示左上至右下方向相邻行的权重系数,以Wldru012、Wldru12、Wldru23、Wldru234表示左下至右上方向的相邻行的权重系数。
执行步骤S4,基于权重系数对目标像素点进行颜色重建。本实施例进行颜色重建时,对目标像素点缺失的其他两种颜色同时进行颜色重建。
结合参考图4,中心点为B(2,2)为蓝色,中心点缺失的颜色为绿色和红色,无需对中心点的蓝色进行重建,对应地,中心点在颜色重建后输出的蓝色b为:
b=B(2,2)
在对绿色和红色进行颜色重建时,本实施例中进行颜色重建时包括以下分步骤:
以像素阵列中目标像素点周边与待重建颜色相同的各像素点为待加权点;
获取与所述待加权点相对应的权重系数;
基于各待加权点的值与其对应的权重系数的加权平均获得待重建颜色的值。
本实施例在进行颜色重建时,无需根据已重建好的颜色进行缺失颜色的重建,因此本实施例对绿色和红色进行颜色重建时可同时进行、并行处理,从而提高数据处理的吞吐力,提高图像处理速度。
需要说明的是,本实施例在进行颜色重建时,结合考虑步骤S3获得的与梯度相关的权重系数获得各向异性权重系数,还结合考虑与梯度无关的各向同性权重系数进行。因此,在获取与所述待加权点相对应的权重系数时,需获取与所述待加权点相对应的各向异性权重系数和各向同性权重系数,但是本发明对此不做限制,其他实施例中在进行颜色重建时,还可以仅以步骤S3获得的各向异性权重系数进行颜色重建。
具体地,本实施例中,所述基于各待加权点的值与其对应的权重系数的加权平均获得待重建颜色的值的步骤包括:
基于各待加权点的值与其对应的各向异性权重系数的加权平均获得待重建颜色第一值;
基于各待加权点的值与其对应的各向同性权重系数的加权平均获得待重建颜色第二值;
判断各待加权点的各向异性权重系数的最大值是否小于第二阈值;
如果各待加权点的权重系数的最大值小于所述第二阈值,待重建颜色的值为所述待重建颜色第一值和所述待重建颜色第二值的插值;
如果各待加权点的权重系数的最大值大于或等于所述第二阈值,待重建颜色的值为所述待重建颜色第一值。
本实施例中,通过判断各待加权点的权重系数的最大值是否小于所述第二阈值来判断各待加权点是否存在明显的梯度取向。具体地,如果各待加权点的权重系数的最大值大于或等于所述第二阈值,说明各待加权点存在明显的梯度取向(或者说处于边缘地带),此时按照基于各向异性权重系数获得的待重建颜色第一值作为待重建颜色值,能够比较真实地反映图像信息,反之,如果各待加权点的各向异性权重系数的最大值小于所述第二阈值,说明各待加权点不存在明显的梯度取向,输出待重建颜色第一值和待重建颜色第二值的插值作为待重建颜色的值,可获得较为缓和、准确地颜色值。
下面结合具体实施例对本发明的颜色重建步骤的技术方案做进一步说明,此处先以对图4的中心点B(2,2)重建绿色G为例进行说明。
结合参考图4,中心点B(2,2)水平方向与G(2,1)、G(2,3)相邻,竖直方向与G(1,2)、G(3,2)相邻。以G(2,1)、G(2,3)为水平方向待加权点,G(1,2)、G(3,2)为竖直方向待加权点。
参考图9和图10,分别示出了重建绿色G时水平方向、竖直方向的各向异性模板。此处所述各向异性模板中在与待加权点相对应的位置处设置有对应的各向异性权重系数。
如图9所示,G(2,1)、G(2,3)的各向异性权重系数为Max(Wh12,Wh23),也就是说取1行与2行之间的权重系数Wh12、2行和3行之间的权重系数Wh23的最大值作为重建绿色时的各向异性权重系数。
这是因为G(2,1)、G(2,3)与中心点位于同一行,Wh12、Wh23只要有个比较大的值就说明G(2,1)、G(2,3)与中心点之间有比较好的连续性,因此,以Wh12、Wh23中较大的值作为水平方向各向异性权重系数。
类似地,图10中,G(1,2)、G(3,2)与中心点位于同一列,只要Wv12、Wv23中有一个比较大的就说明G(1,2)、G(3,2)与中心点有比较好的连续性,因此,以Max(Wv12,Wv23)作为竖直方向的各向异性权重系数。
参考图11和图12,分别示出了重建绿色G时左上至右下方向、左下至右上的各向异性模板。其中,图11中体现了重建绿色G时依据与中心点B(2,2)邻近的左上右下的G(1,2)、G(2,1)以及G(3,2)、G(2,3)加权点对应的各向异性权重系数。
需要说明的是图11所示的各向异性模板中,在对中心点B(2,2)重建绿色G时,还基于色差原理,通过与G(1,2)、G(2,1)以及G(3,2)、G(2,3)相邻的B色像素点,例如,B(2,2)、B(2,0)、B(0,2)、B(4,2)、B(2,4)对中心点B(2,2)的绿色进行调整,以更为真实地反映中心点B(2,2)绿色分量的值。
类似地,在图12中也结合色差原理示出了各待加权点及其相邻点对应的权重系数。
结合图4所示阵列,基于图9至图12所示各向异性模板对中心点B(2,2)重建绿色分量获得重建绿色第一值,以gai表示所述重建绿色第一值,具体地,
参考图13,示出了重建绿色G时的各向同性模板,此处所述各向同性模板中在与待加权点相对应的位置处设置有对应的各向同性权重系数。此处图13所示的各向同性模板也结合色差原理示出了各待加权点及其相邻点对应的权重系数。如图13所示,各向同性权重系数与步骤S2中获得的权重系数无关,并且各方向上的权重系数相同。
基于图13所示的各向同性模板对中心点B(2,2)重建绿色分量获得重建绿色第二值,以gi表示所述重建绿色第二值,具体地,
比较各向异性模板中各权重系数的最大值是否小于第二阈值,通常,第二阈值为第一阈值的一半,此处,第二阈值为8。如果各向异性模板中各权重系数Wh12、Wh23、Wv12、Wv23、Wlurd012、Wlurd234、Wldru012、Wldru234的最大值小于8,那么,待重建绿色G为所述重建绿色第一值gai和重建绿色第二值gi的插值,如果各向异性模板中各权重系数Wh12、Wh23、Wv12、Wv23、Wlurd012、Wlurd234、Wldru012、Wldru234的最大值大于或等于8,那么待重建绿色G为所述重建绿色第一值gai。
以g表示对中心点B(2,2)重建绿色分量得到的结果,具体地:
m=max(Max(Wh12,Wh23),Max(Wv12,Wv23),Wlurd012,Wlurd234,Wldru012,Wldru234)
至此,完成了对中心点B(2,2)的绿色G的重建。
类似地,还可以对中心点B(2,2)的红色R进行重建,参考图14至图17分别示出了对图4的中心点B(2,2)重建红色R时水平方向、竖直方向、左上至右下方向、左下至右上方向的各向异性模板。
如图14所示,在对中心点B(2,2)进行红色R重建时,将与中心点B(2,2)最接近的红色像素R(1,1)、R(1,3)、R(3,1)、R(3,3)作为待加权点,并获取与所述待加权点相对应的各向异性权重系数,需要说明的是,本实施例中,依据色差原理结合考虑各待加权点以及各待加权点的相邻点G(2,1)、G(1,2)、G(2,3)、G(3,2)对应的权重系数,对中心点B(2,2)的红色进行调整,以更为真实地反映中心点B(2,2)红色分量的值。
类似地,图15也依据色差原理结合考虑加权点以及各加权点的相邻点G(2,1)、G(1,2)、G(2,3)、G(3,2)对应的权重系数,对中心点B(2,2)的红色进行调整,以更为真实地反映中心点B(2,2)红色分量的值。
图16示出了左上至右下方向的各向异性模板,如图4所示,在左上至右下的方向上R(1,3)、R(3,1)、(R(1,1)、R(3,3)与中心点B(2,2)位于同一行,Wlurd12、Wlurd23只要有个比较大的值就说明R(1,3)、R(3,1)(R(1,1)、R(3,3)与中心点之间有比较好的连续性,因此,以Wlurd12、Wlurd23中较大的值作左上至右下方向进行颜色重建时各向异性权重系数。
类似地,图17中左下至右上方向的各向异性模板中,以Wldru12、Wldru23中较大的值作为颜色重建时左下至右上方向各向异性权重系数。
基于图14至图17所示的各向异性模板对中心点B(2,2)重建红色分量获得重建红色第一值,以rai表示所述重建红色第一值,具体地:
参考图18,示出了对图4所示像素阵列中心点重建红色R时的各向同性模板,此处所述各向同性模板中在与待加权点相对应的位置处设置有对应的各向同性权重系数。此处图18所示的各向同性模板也结合色差原理示出了各加权点及其相邻点对应的权重系数。如图18所示,各向同性权重系数与步骤S2中获得的权重系数无关,并且各方向上的权重系数相同。
基于图18所示的各向同性模板对中心点B(2,2)重建红色分量获得重建红色第二值,以ri表示所述重建红色第二值,具体地,
与重建绿色分量类似地,以r表示对中心点B(2,2)重建红色分量得到的结果:
m=max(Wh12,Wh23,Wv12,Wv23,Max(Wlurd12,Wlurd23),Max(Wldru12,Wldru23))
至此,完成了对中心点B(2,2)的红色R的重建。
通过上述步骤完成了对中心点B(2,2)的绿色G和红色R的重建,结合中心点原有的蓝色B,可以获得中心点完整的图像信息。
需要说明的是,由于图3和图4的像素阵列的不同之处仅在于红色像素点和蓝色像素点位置的互换,因此,对图3这样的像素阵列可采用上述颜色重建相同的方式进行,在此不再赘述。
结合参考图5所示像素阵列中,中心点为绿色G(2,2),这样无需进行绿色G的重建,只需要对中心点进行蓝色B和红色R的重建。
参考图19至图22示出了对图5所示像素阵列进行蓝色B重建时水平方向、竖直方向、左上至右下方向、左下至右上方向的各向异性模板。
在对蓝色B进行颜色重建时,先基于所述各方向的各向异性模板对中心点G(2,2)进行蓝色B重建获得重建蓝色第一值,以bai表示所述重建蓝色第一值,具体地:
参考图23,示出了重建蓝色B时的各向同性模板。在对蓝色B进行颜色重建时,在获得重建蓝色第一值之后基于图23所示的各向同性模板对中心点G(2,2)重建蓝色分量获得重建蓝色第二值,以bi表示所述重建蓝色第二值,具体地,
以b表示对中心点R(2,2)重建蓝色分量得到的结果:
m=max(Max(Wh12,Wh23),Wv12,Wv23,Min(Wlurd12,Wlurd23),Min(Wldru12,Wldru23))
从而完成对图5所示像素阵列进行蓝色B重建的过程。
类似地,参考图24至图27示出了图5所示像素阵列中心点G(2,2)进行红色R重建时水平方向、竖直方向、左上至右下方向、左下至右上方向的各向异性模板。结合图5以及所述各向异性模板进行加权平均,以bai表示所述重建红色第一值,具体地:
参考图28,示出了重建红色R时的各向同性模板。类似地,以ri表示所述重建红色第二值,具体地,
以r表示对中心点G(2,2)重建红色R分量得到的结果:
m=max(Wh12,Wh23,max(Wv12,Wv23),Min(Wlurd12,Wlurd23),Min(Wldru12,Wldru23))
至此完成对图5所示像素阵列的中心点G(2,2)进行蓝色B和红色R重建的过程,从而可以获得中心点G(2,2)完整的图像信息。
需要说明的是,由于图5和图6的像素阵列的不同之处仅在于红色像素点和蓝色像素点位置的互换,因此,对图6这样的像素阵列可采用上述颜色重建相同的方式进行,在此不再赘述。
至此完成了步骤S4基于权重系数进行颜色重建的过程。
本发明在进行颜色重建时,对目标像素点缺失的颜色并行进行颜色重建,提高了数据吞吐能力,从而节约了处理步骤和处理时间,进而提高了去马赛克的效率。
优选地,在进行颜色重建之后,输出图像信息之前,本发明去马赛克方法还包括颜色微调的步骤,通过颜色微调可以在保持边缘信息的情况下,根据周围像素点的信息来微调像素中心点的值,以便达到平滑、柔和的视觉效果。
参考图29,示出了本发明进行颜色微调一实施例的流程示意图,所述颜色微调的步骤大致包括以下分步骤:
步骤S11,获取目标像素点颜色的值以及重建获得的其他两种颜色的值;
步骤S12,获得目标像素点周围相同颜色的各像素点的值与目标像素点对应颜色值的差的绝对值;
步骤S13,判断所述绝对值与第三阈值和第四阈值的相对大小,其中所述第三阈值大于所述第四阈值;
步骤S14,如果所述绝对值大于第三阈值或者所述绝对值小于第四阈值,以第一微调值对目标像素点对应颜色值进行微调;
步骤S15,如果所述绝对值小于或等于第三阈值并且所述绝对值大于或等于第四阈值,以第二微调值对目标像素点对应颜色值进行微调,所述第二微调值大于所述第一微调值。
本发明中颜色微调的步骤可以分别在红色R、绿色G和蓝色B通道内进行。具体地,对目标像素点进行颜色微调时是基于目标像素点的某一颜色分量(R、G或B中的一种)与目标像素点相邻同色像素点的差别进行的。例如,目标像素点在进行红色微调时是基于目标像素点的红色分量(例如重建后的红色分量)、目标像素点邻近红色像素点之间的差别来进行的。同样地,对于绿色微调和蓝色微调可以采用相同的方法。
下面结合图4所示的5x5像素阵列对颜色微调的技术方案做进一步说明,如图4所示的像素阵列的中心点为蓝色,对中心点进行红色微调、绿色微调和蓝色微调。以表示微调后的中心点的值,具体地:
其中,r、g、b为进行颜色重建之后中心点的红色、绿色、蓝色的值。其中mapDelta函数用于根据中心点周围相同颜色的各像素点的值与目标像素点对应颜色值的差获得微调值。
例如,通过mapDelta函数先获取中心点周围相同颜色的各像素点的值与目标像素点对应颜色值的差的绝对值v;如果所述绝对值v小于第四阈值6或者大于第三阈值10,输出第一微调值3,基于所述第一微调值3进行加权平均从而获得微调后的值;如果所述绝对值v大于或等于第四阈值6并且小于或等于第三阈值10,输出第二微调值4,基于所述第二微调值4进行加权平均从而获得微调后的值。
类似地,结合参考图5,对中心点G(2,2)进行红色微调、绿色微调和蓝色微调。以表示微调后的中心点的值,具体地:
需要说明的是,在图29示出的颜色微调的步骤中,仅设置了两个阈值和两个微调值,但是本发明对此不做限制,还可以根据颜色微调地细致程度设置多个阈值,从而形成多个阈值区间,不同的阈值区间对应于不同的微调值,其中值越大的阈值区间或者越小阈值区间所对应的微调值越小,而适中的阈值区间所对应的微调值越大。
设置的阈值越多,颜色微调地越细致,但是同时也增加了颜色微调的复杂程度,本领域技术人员可以根据设计需求选择合适的阈值数量和对应的微调值。例如,在绝对值0~31的范围设置9个阈值,进而形成10个阈值区间,每个阈值区间设置有对应的微调值,所述微调值可以是0、正数或负数。
在进行颜色微调时,判断所述绝对值所在的阈值区间,之后,以所述阈值区间所对应的微调值进行颜色微调。
以微调值进行微调时,使目标像素点各颜色的值和与目标像素点周围相同颜色的各像素点所对应的微调值进行相加,以获得目标像素点各颜色微调后的值。
由此可见,本发明在进行颜色微调时,与中心点的颜色差别较大(绝对值较大)和较小(绝对值越小)的像素点带来的微调效果较小,以此可以完好的保存重建后图像所包含的边缘信息。同时,与中心点的颜色差别适中的像素点将对中心像素点的颜色带来适当的微调,提高了重建后中心像素点的准确度。
相应地,本发明还提供了一种去马赛克的装置,参考图30,示出了本发明去马赛克的装置一实施方式的示意图。所述去马赛克的装置包括:
图像获取单元100,包括图像传感器和拜耳滤光器,用于获取拜耳格式图像;
梯度提取单元101,与所述图像获取单元100相连,用于对拜耳格式图像中目标像素点为中心的像素阵列进行水平方向、竖直方向、左上至右下方向和左下至右上方向的梯度提取;
权重提取单元102,与所述梯度提取单元101相连,用于根据梯度提取单元101输出的结果进行权重提取,以获得像素阵列的权重系数;
颜色重建单元103,与所述权重提取单元102相连,用于根据权重系数进行颜色重建;
图像输出单元104,与所述颜色重建单元103耦接,用于输出颜色重建后的图像信息。
具体地,梯度提取单元101用于获得各方向上相邻行之间相同颜色分量之间的梯度变化,基于所述梯度变化进行梯度提取。本实施例中,所述梯度提取单元101可以对拜耳格式图像中以目标像素点为中心的5×5的像素阵列进行水平方向、竖直方向、左上至右下方向和左下至右上方向的梯度提取。
参考图31,示出了图30所示去马赛克装置一实施例的示意图。
图像获取单元100可以是互补金属氧化物半导体(Complementary MetalOxide Semiconductor,CMOS)或者电荷耦合器件(Charge Coupled Device,CCD)传感器阵列,以获得拜耳(Bayer)格式的图像。
本实施例中,梯度提取单元101包括像素阵列获取器(图未示),与图像获取单元100相连,用于获取拜耳格式图像中以目标像素点为中心的5×5的像素阵列;具体地,像素阵列获取器可以是包括了5×5像素阵列的第一存储器阵列,用来保存以目标像素点为中心的5×5的图像信息。具体地,第一存储器阵列的大小为8×5×5=200bit。
所述梯度提取单元101还包括多个与所述像素阵列获取器相连的梯度提取器,分别用于对所述对目标像素点为中心的像素阵列进行水平方向、竖直方向、左上至右下方向、左下至右上方向的梯度提取。本实施例中,所述多个梯度提取器分别用于对目标像素点为中心的5×5的像素阵列进行水平方向、竖直方向、左上至右下方向和左下至右上方向的梯度提取。
具体地,所述梯度提取器包括:用于获得各方向上相邻行之间相同颜色分量之间的梯度变化器(图未示);用于根据所述梯度变化输出梯度提取的结果的梯度输出器(图未示)。
具体地,所述梯度变化器包括:
梯度计算器1011,与图像获取单元100相连,用于获取拜耳格式图像中目标像素点为中心的像素阵列各方向上相邻行之间相同颜色分量之间的差值。实际应用中,所述梯度计算器1011由第一减法器阵列构成。
梯度比较器1012,与所述梯度计算器1011相连,用于根据梯度计算器1011获得的所述差值的最大值和所述差值的最小值的差,获得各方向上相邻行之间相同颜色分量之间的梯度变化。实际应用中,所述梯度比较器1012包括用于获得差值最大值或差值最小值的第一比较器阵列、用于计算梯度变化的第二减法器阵列。
所述权重提取单元102包括第一判断器1021,与所述梯度比较器1012相连,用于判断梯度变化是否大于或等于第一阈值,具体地,所述第一判断器1021可以是第二比较器阵列;
所述权重提取单元102还包括权重系数输出器1022,用于在各方向上相邻行之间相同颜色分量之间的梯度变化大于第一阈值时,输出0作为权重系数;在各方向上相邻行之间相同颜色分量之间的梯度变化小于或等于第一阈值,输出所述第一阈值与所述梯度变化的差作为权重系数。
具体地,所述第一阈值为16,所述权重系数输出器1022包括第三减法器阵列,用于将16和梯度变化进行相减,所述权重系数输出器1022还包括多路选择器阵列,将第二比较器阵列的输出信号作为片选,有选择地输出0或者第三减法器阵列获得的结果。
本实施例中,所述颜色重建单元103包括两个与所述梯度提取单元101相连的颜色重建器,用于同时对目标像素点缺失的其他两种颜色进行颜色重建。
具体地,所述颜色重建器包括:
加权点获取器1031,与所述图像获取单元100相连,用于获取以像素阵列中目标像素点周边与待重建颜色相同的各像素点为待加权点;具体地,所述加权点获取器1031为第二存储器阵列,用于存储待加权点的信息,包括待加权点在像素阵列中的位置,以及待加权点的值。
权重系数获取器1032,与所述权重系数输出器1022相连,用于获取待加权点与所述待加权点相对应的权重系数。具体地,所述权重系数获取器1032可由第三存储器阵列实现。
加权平均器1033,与所述加权点获取器1031和所述权重系数获取器1032相连,用于根据各待加权点的值与其对应的权重系数的加权平均获得待重建颜色的值。
具体地,所述加权平均器1033包括第一乘法器阵列和第一加法器阵列,其中第一乘法器阵列用于将待加权点和权重系数相乘,第一加法器阵列用于将结果累加。
参考图32,示出了图31中颜色重建单元另一实施例的示意图。所述权重系数获取器1032包括:用于获取待加权点与梯度相关的各向异性权重系数的第一权重系数获取器111、用于获取待加权点与梯度无关的各向同性权重系数的第二权重系数获取器112;
所述加权平均器1033包括:用于根据各待加权点的值与其对应的各向异性权重系数的加权平均获得待重建颜色第一值的第一加权平均器121,用于根据各待加权点的值与其对应的各向异性权重系数的加权平均获得待重建颜色第二值的第二加权平均器122,与所述权重提取单元102、加权点获取器1031、第一加权平均器121、第二加权平均器122均相连的第二判断器1034。
所述第二判断器1034,用于判断各待加权点的权重系数的最大值是否小于第二阈值;用于在所述各待加权点的权重系数的最大值小于所述第二阈值,输出所述待重建颜色第一值和所述待重建颜色第二值的插值作为待重建颜色的值;还用于在所述各待加权点的权重系数的最大值大于或等于所述第二阈值时,输出所述待重建颜色第一值作为待重建颜色的值。
需要说明的是,在其他实施例中,权重系数获取器1032包括:
用于获取待加权点与梯度相关的各向异性权重系数,还用于根据色差原理获取与待加权点相邻的其他颜色像素点的各向异性权重系数的第一权重系数获取器111;
用于获取待加权点与梯度无关的各向同性权重系数,还用于根据色差原理获取与待加权点相邻的其他颜色像素点的各向同性权重系数的第二权重系数获取器112。
所述加权平均器1033包括:
用于根据各待加权点的值与其对应的各向异性权重系数,以及所述与待加权点相邻的其他颜色像素点与其对应的各向异性权重系数的加权平均获得待重建颜色第一值的第一加权平均器121;
用于根据各待加权点的值与其对应的各向同性权重系数,以及所述与待加权点相邻的其他颜色像素点与其对应的各向同性权重系数的加权平均获得待重建颜色第二值的第二加权平均器122;
与权重提取单元102、加权点获取器1031、第一加权平均器121和第二加权平均器122相连的第二判断器1034,用于判断各待加权点的权重系数的最大值是否小于第二阈值;用于在所述各待加权点的权重系数的最大值小于所述第二阈值,输出所述待重建颜色第一值和所述待重建颜色第二值的插值作为待重建颜色的值;还用于在所述各待加权点的权重系数的最大值大于或等于所述第二阈值时,输出所述待重建颜色第一值作为待重建颜色的值。
继续参考图31,在本发明优选实施例中,去马赛克的装置还包括颜色微调单元105,位于所述颜色重建单元103和图像输出单元104之间,用于对颜色重建后的图像进行颜色微调之后输出颜色微调后的图像信息。
参考图33,示出了图31所示的去马赛克装置中颜色微调单元一实施例的示意图,所述颜色微调单元105包括:
目标像素点获取器1041,与颜色重建单元103和图像获取单元100相连,用于获取目标像素点颜色的值以及重建获得的其他两种颜色的值;所述目标像素点获取器1041包括第四存储器阵列,用于存储目标像素点颜色的值以及重建获得的其他两种颜色的值。
像素点计算器1042,与所述目标像素点获取器1041相连,用于获得目标像素点周围相同颜色的各像素点的值与目标像素点对应颜色值的差的绝对值;具体地,所述像素点计算器1042可以是第四减法器阵列,用于获得所述绝对值。
第三判断器1043,与所述像素点计算器1042相连,用于判断所述绝对值与第三阈值和第四阈值的相对大小,用于在所述绝对值大于第三阈值或者所述绝对值小于第四阈值时,通过第一微调值对目标像素点对应颜色值进行微调;还用于在所述绝对值小于或等于第三阈值并且所述绝对值大于或等于第四阈值时,以第二微调值对目标像素点对应颜色值进行微调;其中,所述第三阈值大于所述第四阈值,所述第一微调值小于所述第二微调值。
具体地,所述第三判断器1043包括第三比较器阵列、微调值单元、第二加法器阵列,其中第三比较器阵列用于判断所述绝对值与第三阈值和第四阈值的相对大小,微调值单元存储有有微调值,第二加法器阵列用于获得重建后的颜色值和查找表后获得的微调值的和。
需要说明的是,在颜色微调单元105的另一较佳实施例中,所述颜色微调单元105还可以包括:目标像素点获取器,用于获取目标像素点颜色的值以及重建获得的其他两种颜色的值;像素点计算器,与所述目标像素点获取器相连,用于获得目标像素点周围相同颜色的各像素点的值与目标像素点对应颜色值的差的绝对值;第三判断器,与所述像素点计算器相连,用于判断所述绝对值在多个阈值所形成的多个阈值区间中位置;并获取绝对值所在阈值区间所对应的微调值进行微调,其中,较大的阈值区间或者较小阈值区间所对应的微调值越小,而适中的阈值区间所对应的微调值越大。
所述颜色微调单元105还包括加法单元,用于使目标像素点各颜色的值分别与目标像素点周围相同颜色的各像素点所对应的微调值相加,以获得目标像素点各颜色完成颜色微调后的值。
图像输出单元104,可以是24bit的第五存储器阵列,用于存储重建完全的目标像素点的红(R)、绿(G)、蓝(B)的值,以供后续图像后处理操作的使用。
本发明去马赛克的装置中各个单元和各器件可以通过现场可编程门阵列(Field-Programmable Gate Array,FPGA)来实现,在描述上述实施例时,已对各FPGA器件进行了举例,但是本发明对此不做限制,还可以是其他可实现相同功能的硬件实现。
本发明去马赛克的装置的各组成单元和器件如何实现去马赛克的技术方案可参考去马赛克的方法中所描述的相关内容,在此不再赘述。
本发明虽然已以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以利用上述揭示的方法和技术内容对本发明技术方案做出可能的变动和修改,因此,凡是未脱离本发明技术方案的内容,依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化及修饰,均属于本发明技术方案的保护范围。