色彩校正方法及装置、计算机可读存储介质、终端与流程

文档序号:14943018发布日期:2018-07-13 21:33

本发明涉及图像处理技术领域,尤其涉及一种色彩校正方法及装置、计算机可读存储介质、终端。



背景技术:

在现有技术中,由于互补金属氧化物半导体(Complementary Metal Oxide Semiconductor,CMOS)传感器对不同波长光线的响应特性与人眼有差异,导致传感器对图像不同色彩的还原与人眼对不同色彩的还原不同。经过白平衡算法对中性色(黑白灰)进行校正后的图像,在其他不同色块下的颜色仍然会有色偏。需要通过一定的方法来校正。

现有技术中,通常所采用的色彩校正办法如下:拍摄一张标准色卡(color checker)图片,计算出所拍摄图像中每一块色块的各个颜色分量的平均值,也即红色分量(Red,R)、绿色分量(Green,G)和蓝色分量(Blue,B)的平均值,与标准色板中相应色块的标准值做比较,计算出色彩校正矩阵(color correction matrix,CCM);然后对输入图像的每个像素点的RGB值进行矩阵运算求得色彩校正后的各个颜色分量的值R’、G’和B’。一般是用最小二乘法计算出颜色矩阵。

但是,现有色彩校正方法采用3x3大小的色彩校正矩阵在RGB域进行色彩校正时,计算得到的校正矩阵对所有不同色块采用同样的校正矩阵系数,色彩还原度受限于统一系数,导致色彩还原准确性低。



技术实现要素:

本发明解决的技术问题是如何提高色彩校正的准确性。

为解决上述技术问题,本发明实施例提供一种色彩校正方法,色彩校正方法包括:获取待校正图像以及所述待校正图像的色温,所述待校正图像处于YUV域;根据所述待校正图像中每一像素点在UV平面上的位置确定该像素点相关联的两个相邻象限;利用各个像素点相关联的两个相邻象限在所述色温下的校正矩阵对各个像素点进行色彩校正,象限在所述色温下的校正矩阵为预先根据所述象限内的色块在所述色温下的色度值与其对应的标准值计算得到的。

可选的,所述利用各个像素点相关联的两个相邻象限在所述色温下的校正矩阵对各个像素点进行色彩校正包括:计算每一像素点相关联的两个相邻象限在所述色温下的两个校正矩阵分别与第一预设系数和第二预设系数的乘积之和,并作为针对该像素点的最终校正矩阵;利用针对各个像素点的最终校正矩阵对各个像素点进行色彩校正,以得到校正后的图像。

可选的,所述第一预设系数和所述第二预设系数之和为1,所述第一预设系数为0时,所述像素点位于直线V=-U,所述第二预设系数为0时,所述像素点位于直线V=U。

可选的,所述根据所述待校正图像中每一像素点在UV平面上的位置确定该像素点相关联的两个相邻象限包括:根据每一像素点的U值和V值之和确定该像素点相关联的两个相邻象限中的第一相邻象限;根据每一像素点的U值和V值之差确定该像素点相关联的两个相邻象限中的第二相邻象限;

所述利用各个像素点相关联的两个相邻象限在所述色温下的校正矩阵对各个像素点进行色彩校正包括:利用每一像素点到直线V=-U的距离确定所述第一相邻象限的第一加权系数;利用每一像素点到直线V=U的距离确定所述第二相邻象限的第二加权系数;将所述第一相邻象限在所述色温下的校正矩阵和所述第一加权系数的乘积,与所述第二相邻象限在所述色温下的校正矩阵和所述第二加权系数的乘积之和作为针对该像素点的最终校正矩阵;利用针对各个像素点的最终校正矩阵对各个像素点进行色彩校正,以得到校正后的图像。

可选的,所述第一加权系数和所述第二加权系数之和为1。

可选的,采用以下方式计算各个象限在各个色温下的校正矩阵:确定各个象限内的所有色块以及所有色块在各个色温下的色度值,以形成第一色度矩阵;确定各个象限内的所有色块在各个色温下对应的标准值,以形成第二色度矩阵;在各个色温下,计算各个象限的第二色度矩阵与其第一色度矩阵的商,以得到各个象限在各个色温下的校正矩阵。

可选的,通过以下方式确定色块所在的象限:如果色块的U值和V值均小于等于预设阈值,则确定所述色块为中性色块,并不加入任意象限;如果所述色块的U值大于所述预设阈值,所述色块的V值小于等于所述预设阈值,则根据所述色块的U值将所述色块加入相邻的两个象限;如果所述色块的V值大于所述预设阈值,所述色块的U值小于等于所述预设阈值,则根据所述色块的V值将所述色块加入相邻的两个象限。

为解决上述技术问题,本发明实施例还公开了一种色彩校正装置,色彩校正装置包括:获取模块,适于获取待校正图像以及所述待校正图像的色温,所述待校正图像处于YUV域;象限确定模块,适于根据所述待校正图像中每一像素点在UV平面上的位置确定该像素点相关联的两个相邻象限;校正模块,适于利用各个像素点相关联的两个相邻象限在所述色温下的校正矩阵对各个像素点进行色彩校正,象限在所述色温下的校正矩阵为预先根据所述象限内的色块在所述色温下的色度值与其对应的标准值计算得到的。

为解决上述技术问题,本发明实施例还公开了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时执行所述色彩校正方法的步骤。

为解决上述技术问题,本发明实施例还公开了一种终端,包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令,所述处理器运行所述计算机指令时执行所述色彩校正方法的步骤。

与现有技术相比,本发明实施例的技术方案具有以下有益效果:

本发明技术方案获取待校正图像以及所述待校正图像的色温,所述待校正图像处于YUV域;根据所述待校正图像中每一像素点在UV平面上的位置确定该像素点相关联的两个相邻象限;利用各个像素点相关联的两个相邻象限在所述色温下的校正矩阵对各个像素点进行色彩校正,象限在所述色温下的校正矩阵为预先根据所述象限内的色块在所述色温下的色度值与其对应的标准值计算得到的。本发明技术方案通过对UV平面上不同的像素点采用不同校正矩阵进行校正,避免了现有技术中采用同一套校正系数对所有色块进行校正,可以更好的补偿CMOS传感器与人眼对色彩还原的差异,提高色彩校正的准确性。此外,在校正时,利用的是像素点在UV平面上相关联的两个相邻象限,保证了色度的连续性,从而保证色彩校正的准确性。进一步地,所述待校正图像处于YUV域,可以不对亮度分量Y进行处理,而仅对UV两个分量进行处理,可以降低计算量,提高校正效率。

进一步,所述利用各个像素点相关联的两个相邻象限在所述色温下的校正矩阵对各个像素点进行色彩校正包括:根据每一像素点的U值和V值之和确定该像素点相关联的两个相邻象限中的第一相邻象限;根据每一像素点的U值和V值之差确定该像素点相关联的两个相邻象限中的第二相邻象限;利用每一像素点到直线V=-U的距离确定所述第一相邻象限的第一加权系数;利用每一像素点到直线V=U的距离确定所述第二相邻象限的第二加权系数;将所述第一相邻象限和所述第一加权系数的乘积,与所述第二相邻象限和所述第二加权系数的乘积之和作为针对该像素点的最终校正矩阵;利用针对各个像素点的最终校正矩阵对各个像素点进行色彩校正,以得到校正后的图像。本发明技术方案通过根据像素点在UV平面上的位置对相邻象限校正矩阵进行插值,以求得针对该像素点的最终校正矩阵,避免了在像素点接近象限边界时校正矩阵突变所引起颜色突变失真的现象,进一步保证色彩校正的准确性。

附图说明

图1是本发明实施例一种色彩校正方法的流程图;

图2是本发明实施例一种UV平面上各个象限的关系示意图;

图3本发明实施例一种色彩校正方法的部分流程图;

图4是本发明实施例一种具体应用场景的示意图;

图5是本发明实施例另一种具体应用场景的示意图;

图6是本发明实施例一种确定校正矩阵的方法流程图;

图7是本发明实施例一种色彩校正装置的结构示意图;

图8是本发明实施例一种色彩校正装置的部分结构示意图;

图9是本发明实施例另一种色彩校正装置的部分结构示意图。

具体实施方式

如背景技术中所述,现有色彩校正方法采用3x3大小的色彩校正矩阵在RGB域进行色彩校正时,计算得到的校正矩阵对所有不同色块采用同样的校正矩阵系数,色彩还原度受限于统一系数,导致色彩还原准确性低。

本发明技术方案通过对UV平面上不同的像素点采用不同校正矩阵进行校正,避免了现有技术中采用同一套校正系数对所有色块进行校正,可以更好的补偿CMOS传感器与人眼对色彩还原的差异,提高色彩校正的准确性。此外,在校正时,利用的是像素点在UV平面上相关联的两个相邻象限,保证了色度的连续性,从而保证色彩校正的准确性。进一步地,所述待校正图像处于YUV域,可以不对亮度分量Y进行处理,而仅对UV两个分量进行处理,可以降低计算量,提高校正效率。

为使本发明的上述目的、特征和优点能够更为明显易懂,下面结合附图对本发明的具体实施例做详细的说明。

图1是本发明实施例一种色彩校正方法的流程图。

图1所示色彩校正方法可以包括以下步骤:

步骤S101:获取待校正图像以及所述待校正图像的色温,所述待校正图像处于YUV域;

步骤S102:根据所述待校正图像中每一像素点在UV平面上的位置确定该像素点相关联的两个相邻象限;

步骤S103:利用各个像素点相关联的两个相邻象限在所述色温下的校正矩阵对各个像素点进行色彩校正,象限在所述色温下的校正矩阵为预先根据所述象限内的色块在所述色温下的色度值与其对应的标准值计算得到的。

本实施例中,由于不同色温下的色块与标准色块的差异不同,因此对于不同色温下的色块需要采用不同的校正矩阵进行色彩校正。故在步骤S101的具体实施中,除了获取待校正图像之外,还需要获取所述待校正图像的色温。

可以理解的是,可以采用任意可实施的方式获取待校正图像的色温,本发明实施例对此不做限制。

具体实施中,待校正图像处于YUV域。具体而言,如果获取到的待校正图像为RGB图像,则将RGB图像转换为YUV图像。例如,可以按照色域标准BT.709,采用以下矩阵运算将RGB图像转换为YUV图像:

需要说明的是,也可以按照标准BT.601将RGB图像转换为YUV图像;还可以采用其他任意可实施的方式将RGB图像转换为YUV图像,本发明实施例对此不做限制。

本发明实施例中的色彩校正是指对待校正图像的色度分量进行校正,也即对U分量和V分量进行校正。从而可以不对亮度分量Y进行处理,而仅对UV两个分量进行处理,可以降低计算量,提高校正效率。

UV平面可以包括U分量和V分量两个维度。在步骤S102的具体实施中,根据待校正图像中每一像素点的U分量和V分量可以确定该像素点在UV平面上的位置。根据每一像素点在UV平面上的位置可以确定与该像素点相关联的两个相邻象限。

具体地,像素点相关联的两个相邻象限包括像素点所处的象限,以及像素点在UV平面上的位置所靠近的象限。请参照图2,像素点(u,v)处于第一象限,则沿顺时针方向依次为第一象限、第二象限、第三象限和第四象限。在一种具体实施中,像素点相关联的两个相邻象限可以根据像素点在UV平面上的位置坐标来确定。

如果像素点的位置坐标的U值的绝对值和V值的绝对值均小于等于预设值,则确定所述像素点为中性色,所述像素点不需要进行色彩校正,无需确定其相关联的两个相邻象限。

如果像素点的位置坐标的U值大于所述预设值,所述色块的V值的绝对值小于等于所述预设值,则确定像素点相关联的两个相邻象限为第一象限和第二象限。如果像素点的位置坐标的U值小于0且绝对值大于所述预设值,所述色块的V值的绝对值小于等于所述预设值,则确定像素点相关联的两个相邻象限为第三象限和第四象限。

如果像素点的位置坐标的V值大于预设值,所述色块的U值的绝对值小于等于所述预设阈值,则确定像素点相关联的两个相邻象限为第一象限和第四象限。如果像素点的位置坐标的V值小于0且大于预设值,所述色块的U值的绝对值小于等于所述预设阈值,则确定像素点相关联的两个相邻象限为第二象限和第三象限。

在本发明另一具体实施方式中,还可以根据像素点与直线V=U的相对位置关系以及与直线V=-U的相对位置关系确定其相关联的两个相邻像素。

继续参照图2,预设Fa=(V+U>=0),Fb=(V-U>=0)。

Fa为真时,表明像素点位于直线V=-U上方,反之位于直线V=-U下方。

Fb为真时,表明像素点位于直线V=U上方,反之位于直线V=U下方。

进而,Fa=0,Fb=0时,也即像素点位于直线V=-U下方以及直线V=U下方时,该像素点相关联的两个相邻象限为第二象限和第三象限;

Fa=0,Fb=1时,也即也即像素点位于直线V=-U下方以及直线V=U上方时,该像素点相关联的两个相邻象限为第三象限和第四象限;

Fa=1,Fb=0时,也即也即像素点位于直线V=-U上方以及直线V=U下方时,该像素点相关联的两个相邻象限为第一象限和第二象限;

Fa=1,Fb=1时,也即也即像素点位于直线V=-U上方以及直线V=U上方时,该像素点相关联的两个相邻象限为第一象限和第四象限。

需要说明的是,关于第一象限、第二象限、第三象限和第四象限的划分,还可以是其他任意可实施的划分方式,本发明实施例对此不做限制。

各个象限在不同色温下具有不同的校正矩阵。各个象限在不同色温下的校正矩阵可以是预先计算好,并预先存储下来的。在确定了各个像素点相关联的两个相邻象限后,在步骤S103的具体实施中,可以利用各个像素点相关联的两个相邻象限在所述色温下的校正矩阵对各个像素点进行色彩校正。

具体而言,可以是将两个相邻象限在所述色温下的校正矩阵进行加权计算后,再与像素点的U分量和V分量进行矩阵运算,以获得校正后的U分量和校正后的V分量。

现有技术中,通常采用下述公式对像素点进行色彩校正:

其中,矩阵表示像素点校正后的R分量、B分量和G分量,矩阵为色彩校正矩阵CCM,矩阵为像素点校正前的R分量、B分量和G分量。

由于像素点的Y分量表示像素点的亮度信息,因此本实施例中未对Y分量进行处理,那么校正矩阵是针对U分量和V分量的,校正矩阵的大小是2×2。相对于现有技术中的3×3矩阵,本发明实施例可以减小计算量,提高色彩校正的校正效率。

本发明实施例通过对UV平面上不同的像素点采用不同校正矩阵进行校正,避免了现有技术中采用同一套校正系数对所有色块进行校正,可以更好的补偿CMOS传感器与人眼对色彩还原的差异,提高色彩校正的准确性。此外,在校正时,利用的是像素点在UV平面上相关联的两个相邻象限,保证了色度的连续性,从而保证色彩校正的准确性。

需要说明的是,图1所示的色彩校正的步骤可以在图像信号处理(ImageSignal Processing,ISP)硬件中执行。各个象限在各个色温下的校正矩阵可以预先计算完成并写入ISP硬件中。

本发明一个优选实施例中,图1所示步骤S103可以包括以下步骤:计算每一像素点相关联的两个相邻象限在所述色温下的两个校正矩阵分别与第一预设系数和第二预设系数的乘积之和,并作为针对该像素点的最终校正矩阵;利用针对各个像素点的最终校正矩阵对各个像素点进行色彩校正,以得到校正后的图像。

本实施例中,两个相邻象限在所述色温下的两个校正矩阵分别与第一预设系数和第二预设系数进行加权相加,以得到最终校正矩阵。最终校正矩阵用以对像素点进行色彩校正。也即像素点的U分量和V分量与最终校正矩阵进行矩阵运算,可以获得该像素点的校正后的U分量和校正后的V分量。

进一步地,所述第一预设系数和所述第二预设系数之和为1,所述第一预设系数为0时,所述像素点位于直线V=-U,所述第二预设系数为0时,所述像素点位于直线V=U。

本实施例中,为了保证利用两个相邻象限的两个校正矩阵对各个像素点进行校正后,校正完成的各个像素点的U分量和V分量在UV平面上的连续性,在对所述两个校正矩阵进行加权计算得到最终校正矩阵时,加权系数,也即第一预设系数和第二预设系数需满足第一预设系数和第二预设系数之和为1;第一预设系数为0时,所述像素点位于直线V=-U,所述第二预设系数为0时,所述像素点位于直线V=U;或者也可以是,第一预设系数为0时,所述像素点位于直线V=U,所述第二预设系数为0时,所述像素点位于直线V=-U。

换言之,请参照图2,直线V=U为第一象限和第三象限的中线,直线V=-U为第二象限和第四象限的中线。当像素点位于上述两条直线时,才可以使用单个象限的校正矩阵进行色彩校正,也即第一预设系数或第二预设系数为0。

可以理解的是,本发明实施例中的第一预设系数和第二预设系数可以是预先设定好的数值,也可以是通过任意可实施的方式获取的数值。

本发明另一个优选实施例中,请参照图3,,图1所示步骤S102和步骤S103可以包括以下步骤:

步骤S301:根据每一像素点的U值和V值之和确定该像素点相关联的两个相邻象限中的第一相邻象限;

步骤S302:根据每一像素点的U值和V值之差确定该像素点相关联的两个相邻象限中的第二相邻象限;

步骤S303:利用每一像素点到直线V=-U的距离确定所述第一相邻象限的第一加权系数;

步骤S304:利用每一像素点到直线V=U的距离确定所述第二相邻象限的第二加权系数;

步骤S305:将所述第一相邻象限在所述色温下的校正矩阵和所述第一加权系数的乘积,与所述第二相邻象限在所述色温下的校正矩阵和所述第二加权系数的乘积之和作为针对该像素点的最终校正矩阵;

步骤S306:利用针对各个像素点的最终校正矩阵对各个像素点进行色彩校正,以得到校正后的图像。

一并参照图2,在步骤S301和步骤S302的具体实施中,可以确定像素点相关联的两个相邻象限。具体而言,像素点U值和V值之和大于等于0时,第一相邻象限为第一象限;像素点U值和V值之和小于0时,第一相邻象限为第三象限。像素点的U值和V值之差大于等于0时,第二相邻象限为第四象限;像素点的U值和V值之差小于0时,第二相邻象限为第二象限。

在步骤S303和步骤S304的具体实施中,可以分别利用像素点到直线V=U的距离以及像素点到直线V=-U的距离确定第一加权系数和第二加权系数。其中,第一加权系数用于对第一相邻象限的校正矩阵进行加权,第二加权系数用于对第二相邻象限的校正矩阵进行加权。

进一步地,所述第一加权系数和所述第二加权系数之和为1。

具体而言,请参照图2,像素点(u,v)到直线V=-U的距离为da,像素点(u,v)到直线V=U的距离为db。其中,da=|u+v|;db=|u-v|。第一加权系数α利用距离da计算得到;第二加权系数β利用距离db计算得到。

在本发明一个非限制性的具体实施例中,可以采用以下公式计算第一加权系数α和第二加权系数β:

本发明实施例通过根据像素点在UV平面上的位置对相邻象限校正矩阵进行插值,以求得针对该像素点的最终校正矩阵,避免了在像素点接近象限边界时校正矩阵突变所引起颜色突变失真的现象,进一步保证色彩校正的准确性。

需要说明的是,也可以采用其他任意可实施的算法计算第一加权系数α和第二加权系数β,只需保证像素点在UV平面内移动时第一加权系数α和第二加权系数β的连续变化,无突变。

在本发明另一个非限制性的具体实施例中,请参照图4,可以利用像素点与原点形成的直线与直线V=U的夹角θ,来计算第一加权系数α和第二加权系数β。

具体地,可以采用以下公式计算第一加权系数α和第二加权系数β:

在本发明再一个非限制性的具体实施例中,请参照图5,像素点所在的任一直线与直线V=U和直线V=-U存在两个交点,可以利用两个交点与像素点在横轴(也即直线V=0)或竖轴(也即直线U=0)上的距离来计算第一加权系数α和第二加权系数β。

具体地,像素点所在的直线为V-v=k(U-u),k≠±1。下面以k=1/2为例进行说明。

像素点p(u,v)所在的直线V-v=1/2(U-u)与直线V=U交点为p0(2v-u,2v-u),像素点(u,v)所在的直线V-v=1/2(U-u)与直线V=-U交点为p1((u-v)/3,(v-u)/3)。

可以采用以下公式计算第一加权系数α和第二加权系数β:

其中,α+β=(6v-6u)/(7v-4u)+(2u+v)/(7v-4u)=1。

继续参照图3,在确定第一相邻象限和第二相邻象限,以及第一加权系数和第二加权系数之后,可以确定第一相邻象限在所述色温下的校正矩阵,以及第二相邻象限在所述色温下的校正矩阵。进而在步骤S305和步骤S306的具体实施中,将第一相邻象限在所述色温下的校正矩阵和第二相邻象限在所述色温下的校正矩阵分别与第一加权系数和第二加权系数进行加权计算,得到最终校正矩阵。最终校正矩阵为2×2大小的矩阵。那么,像素点的U分量和V分量与最终校正矩阵进行矩阵运算后,可以得到校正后的U分量和V分量。

具体而言,最终校正矩阵C可以表示为:

其中,Ca表示第一相邻矩阵,Cb表示第二相邻矩阵,α为第一加权系数,β为第二加权系数。

利用最终校正矩阵C对像素点的U分量和V分量进行校正的公式可以表示如下:

其中,为校正后的U分量和V分量,为校正前的U分量和V分量,为最终校正矩阵的具体参数值。

本发明实施例通过使用第一加权系数和第二加权系数进行系数插值,可以在对较大色块内像素点进行色彩校正时,使得校正后的色彩过渡更加平滑,无突变伪色。

如图6所示,确定校正矩阵的方法可以包括以下步骤:

步骤S601:确定各个象限内的所有色块以及所有色块在各个色温下的色度值,以形成第一色度矩阵;

步骤S602:确定各个象限内的所有色块在各个色温下对应的标准值,以形成第二色度矩阵;

步骤S603:在各个色温下,计算各个象限的第二色度矩阵与其第一色度矩阵的商,以得到各个象限在各个色温下的校正矩阵。

本实施例中,各个象限在各个色温下的校正矩阵可以是在图1所示色彩校正之前计算得到的,并存储下来,以供色彩校正过程调取使用。

本实施例中的色块是指拍摄标准色卡所得到的色卡图像中的彩色块。

具体实施中,在确定第一色度矩阵之前,还可以对所述色卡图像进行白平衡处理,避免色温对色度的影响。

具体地,可以采用以下公式对色卡图像进行白平衡:

其中,矩阵为白平衡后的R分量、G分量和B分量,矩阵为白平衡前的R分量、G分量和B分量,矩阵为增益矩阵,增益矩阵中的GainR和GainB为使得标准色卡中性色编号20~23色块(标准色卡包括编号为1~24的色块)平均色偏最小时的增益值。

需要说明的是,还可以采用其他任意可实施的算法进行白平衡,本发明实施例对此不做限制。

经过白平衡后,所述色卡图像处于YUV域。也就是说,如果色卡图像为RGB图像,需要将RGB图像转换为YUV图像。

在步骤S601的具体实施中,根据各个色块的色度值,也即U分量和V分量,将各个色块划分至UV平面内的各个象限内。至此,可以确定各个象限内的所有色块。每一象限内的所有色块在各个色温下的U分量和V分量形成该象限在各个色温下的第一色度矩阵。

在步骤S602的具体实施中,每一象限内的所有色块在各个色温下对应的标准值,以形成该象限在各个色温下的第二色度矩阵。

进而在步骤S603中,在各个色温下,计算各个象限的第二色度矩阵与其第一色度矩阵的商,以得到各个象限在各个色温下的校正矩阵。

具体地,在特定色温下,可以采用下述公式计算象限的校正矩阵:其中,矩阵为在所述特定色温下的第二色度矩阵,矩阵为该象限在所述特定色温下的第一色度矩阵,矩阵为该象限在所述特定色温下的校正矩阵。

利用上述公式可以计算得到UV平面内四个象限在各个色温下的校正矩阵。

更具体地,可以采用最小二乘法求解上述校正矩阵。

需要说明的是,每一象限具有多个校正矩阵,多个校正矩阵分别对应不同的色温。色温的划分方式可以是任意可实施的方式,例如,可以划分为高色温、中色温和低色温三种,也可以按照不同的色温取值范围划分为更多类别,本发明实施例对此不做限制。

进一步地,可以通过以下方式确定色块所在的象限:

如果色块的U值和V值均小于等于预设阈值,则确定所述色块为中性色块,并不加入任意象限;

如果所述色块的U值大于所述预设阈值,所述色块的V值小于等于所述预设阈值,则根据所述色块的U值将所述色块加入相邻的两个象限;

如果所述色块的V值大于所述预设阈值,所述色块的U值小于等于所述预设阈值,则根据所述色块的V值将所述色块加入相邻的两个象限。

本发明实施例是图6所示步骤S601的一种具体实施方式。本发明实施例可以确定各个象限内的所有色块。

在拍摄标准色卡所得到的色卡图像后,色卡图像中的色块具有U分量和V分量。可以根据色块的U分量和V分量的数值确定色块所在的象限。

可以理解的是,色块的U值可以是色块内所有像素点的U分量值的平均值;色块的V值可以是色块内所有像素点的V分量值的平均值。

具体地,若某色块的U值和V值均小于等于预设阈值δ,则确定该色块为中性色,不将其加入任意象限。若某色块的U值和V值单个绝对值小于等于预设阈值δ,则确定该色块同时位于两个象限内,将其同时加入两个象限中。

例如,色块1的U值和V值分别为:U=-63,V=1,V小于预设阈值,根据U值确定色块1同时处于第三象限和第四象限。

色块2的U值和V值分别为:U=2,V=-1,均小于预设阈值,确定色块2为中性色,不做后续处理。

如图7所示,色彩校正装置70可以包括获取模块701、象限确定模块702和校正模块703。

其中,获取模块701适于获取待校正图像以及所述待校正图像的色温,所述待校正图像处于YUV域;

象限确定模块702适于根据所述待校正图像中每一像素点在UV平面上的位置确定该像素点相关联的两个相邻象限;

校正模块703适于利用各个像素点相关联的两个相邻象限在所述色温下的校正矩阵对各个像素点进行色彩校正,象限在所述色温下的校正矩阵为预先根据所述象限内的色块在所述色温下的色度值与其对应的标准值计算得到的。

本实施例中,通过对UV平面上不同的像素点采用不同校正矩阵进行校正,避免了现有技术中采用同一套校正系数对所有色块进行校正,可以更好的补偿CMOS传感器与人眼对色彩还原的差异,提高色彩校正的准确性。此外,在校正时,利用的是像素点在UV平面上相关联的两个相邻象限,保证了色度的连续性,从而保证色彩校正的准确性。进一步地,所述待校正图像处于YUV域,可以不对亮度分量Y进行处理,而仅对UV两个分量进行处理,可以降低计算量,提高校正效率。

本发明一个优选实施例中,校正模块703可以包括第一计算单元(图未示),适于将每一像素点相关联的两个相邻象限在所述色温下的两个校正矩阵分别与第一预设系数和第二预设系数的乘积之和,作为针对该像素点的最终校正矩阵;第一校正单元(图未示),适于利用针对各个像素点的最终校正矩阵对各个像素点进行色彩校正,以得到校正后的图像。

本实施例中,两个相邻象限在所述色温下的两个校正矩阵分别与第一预设系数和第二预设系数进行加权相加,以得到最终校正矩阵。最终校正矩阵用以对像素点进行色彩校正。也即像素点的U分量和V分量与最终校正矩阵进行矩阵运算,可以获得该像素点的校正后的U分量和校正后的V分量。

进一步地,所述第一预设系数和所述第二预设系数之和为1,所述第一预设系数为0时,所述像素点位于直线V=-U,所述第二预设系数为0时,所述像素点位于直线V=U。

本实施例中,为了保证利用两个相邻象限的两个校正矩阵对各个像素点进行校正后,校正完成的各个像素点的U分量和V分量在UV平面上的连续性,在对所述两个校正矩阵进行加权计算得到最终校正矩阵时,加权系数,也即第一预设系数和第二预设系数需满足第一预设系数和第二预设系数之和为1;第一预设系数为0时,所述像素点位于直线V=-U,所述第二预设系数为0时,所述像素点位于直线V=U;或者也可以是,第一预设系数为0时,所述像素点位于直线V=U,所述第二预设系数为0时,所述像素点位于直线V=-U。

本发明另一个优选实施例中,请参照图8,图7所示象限确定模块702可以包括:第一相邻象限确定单元7021,适于根据每一像素点的U值和V值之和确定该像素点相关联的两个相邻象限中的第一相邻象限;第二相邻象限确定单元7022,适于根据每一像素点的U值和V值之差确定该像素点相关联的两个相邻象限中的第二相邻象限。

图7所示校正模块703可以包括:第一加权系数确定单元7031,适于利用每一像素点到直线V=-U的距离确定所述第一相邻象限的第一加权系数;

第二加权系数确定单元7032,适于利用每一像素点到直线V=U的距离确定所述第二相邻象限的第二加权系数;

第二计算单元7033,适于将所述第一相邻象限在所述色温下的校正矩阵和所述第一加权系数的乘积,与所述第二相邻象限在所述色温下的校正矩阵和所述第二加权系数的乘积之和作为针对该像素点的最终校正矩阵;

第二校正单元7034,适于利用针对各个像素点的最终校正矩阵对各个像素点进行色彩校正,以得到校正后的图像。

本发明实施例通过根据像素点在UV平面上的位置对相邻象限校正矩阵进行插值,以求得针对该像素点的最终校正矩阵,避免了在像素点接近象限边界时校正矩阵突变所引起颜色突变失真的现象,进一步保证色彩校正的准确性。

进一步地,所述第一加权系数和所述第二加权系数之和为1。

请参照图9,图7所示色彩校正装置70还可以包括校正矩阵获取模块704,校正矩阵获取模块704适于计算各个象限在各个色温下的校正矩阵。校正矩阵获取模块704可以包括:

第一色度矩阵确定单元7041,适于确定各个象限内的所有色块以及所有色块在各个色温下的色度值,以形成第一色度矩阵;

第二色度矩阵确定单元7042,适于确定各个象限内的所有色块在各个色温下对应的标准值,以形成第二色度矩阵;

校正矩阵计算单元7043,适于在各个色温下,计算各个象限的第二色度矩阵与其第一色度矩阵的商,以得到各个象限在各个色温下的校正矩阵。

需要说明的是,每一象限具有多个校正矩阵,多个校正矩阵分别对应不同的色温。色温的划分方式可以是任意可实施的方式,例如,可以划分为高色温、中色温和低色温,本发明实施例对此不做限制。

在本发明实施例的一种具体实施方式中,第一色度矩阵确定单元7041可以包括第一象限判定单元(图未示),适于在色块的U值和V值均小于等于预设阈值时,确定所述色块为中性色块,并不加入任意象限;

第二象限判定单元(图未示),适于在所述色块的U值大于所述预设阈值,所述色块的V值小于等于所述预设阈值时,根据所述色块的U值将所述色块加入相邻的两个象限;

第三象限判定单元(图未示),适于在所述色块的V值大于所述预设阈值,所述色块的U值小于等于所述预设阈值时,根据所述色块的V值将所述色块加入相邻的两个象限。

通过本发明实施例可以确定各个象限内的所有色块。

关于所述色彩校正装置70的工作原理、工作方式的更多内容,可以参照图1至图6中的相关描述,这里不再赘述。

本发明实施例还公开了一种计算机可读存储介质,其上存储有计算机指令,所述计算机指令运行时可以执行图1至图6中所示的色彩校正方法的步骤。所述存储介质可以包括ROM、RAM、磁盘或光盘等。所述存储介质还可以包括非挥发性存储器(non-volatile)或者非瞬态(non-transitory)存储器等。

本发明实施例还公开了一种终端,所述终端可以包括存储器和处理器,所述存储器上存储有可在所述处理器上运行的计算机指令。所述处理器运行所述计算机指令时可以执行图1至图6中所示的色彩校正方法的步骤。所述终端包括但不限于手机、计算机、平板电脑等终端设备。

虽然本发明披露如上,但本发明并非限定于此。任何本领域技术人员,在不脱离本发明的精神和范围内,均可作各种更动与修改,因此本发明的保护范围应当以权利要求所限定的范围为准。

再多了解一些
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1