掌桥专利:专业的专利平台
掌桥专利
首页

图像的白平衡处理方法、装置、电子设备和存储介质

文献发布时间:2023-06-19 11:27:38


图像的白平衡处理方法、装置、电子设备和存储介质

技术领域

本公开涉及图像处理技术,尤其是一种图像的白平衡处理方法、装置、电子设备和存储介质。

背景技术

白平衡(White Balance,WB),是描述图像中白色精确度的一项指标。白平衡是随着电子影像再现色彩而产生的,在专业摄像领域白平衡应用较早。家用电子产品(家用摄像机、数码照相机)中也广泛使用。

实践中,许多用户在使用图像拍摄装置拍摄图像的过程中,都会遇到这样的问题:在日光灯的房间里拍摄的影像会显得发绿,在室内钨丝灯光下拍摄出来的景物就会偏黄,而在日光阴影处拍摄到的照片则莫名其妙地偏蓝,其原因就在于白平衡算法的处理方式上。

目前,由于室内环境以其丰富的色彩表现,复杂的光源环境,大面积单色的场景等等给白平衡带来了很大的挑战。而且,在ISP(互联网服务提供商,Internet ServiceProvider)处理过程中,各个环节呈不同程度的耦合效应,导致在复杂的室内环境拍摄条件下,这种相互影响,相互耦合的效应被放大。另外,对于全景相机拍摄的室内图片,还有边界数据畸变对白平衡的影响。因此,在上述场景中,如何提高图像白平衡处理的准确性,是一个值得关注的技术问题。

发明内容

本公开实施例提供一种图像的白平衡处理方法、装置、电子设备和存储介质,以提高图像白平衡处理的准确性。

根据本公开实施例的第一个方面,提供的一种图像的白平衡处理方法,包括:

获取待处理图像;

基于与所述待处理图像相对应的灰度图像,确定用于对所述待处理图像进行曝光处理的曝光倍率;

采用所述曝光倍率,对所述待处理图像进行曝光处理,生成第一曝光后图像;

基于所述第一曝光后图像,对所述待处理图像进行白平衡处理,生成白平衡处理后图像。

可选地,在本公开任一实施例的方法中,所述基于与所述待处理图像相对应的灰度图像,确定用于对所述待处理图像进行曝光处理的曝光倍率,包括:

针对预先确定的曝光倍率集合中的曝光倍率,按照从小到大的顺序,依次选取曝光倍率,以及基于所选取的曝光倍率执行如下第一曝光倍率确定操作:

采用所选取的曝光倍率对所述待处理图像进行曝光处理,生成所述待处理图像针对该曝光倍率的第二曝光后图像;

将所述待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像,生成所述待处理图像针对该曝光倍率的灰度图像;

确定所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值是否大于或等于预设亮度阈值;

响应于所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值大于或等于所述预设亮度阈值,将所采用的该曝光倍率作为用于对所述待处理图像进行曝光处理的曝光倍率。

可选地,在本公开任一实施例的方法中,所述方法还包括:

响应于所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值小于所述预设亮度阈值,继续按照从小到大的顺序,从所述曝光倍率集合中重新选取曝光倍率,以及基于重新选取的曝光倍率执行所述第一曝光倍率确定操作。

可选地,在本公开任一实施例的方法中,所述基于与所述待处理图像相对应的灰度图像,确定用于对所述待处理图像进行曝光处理的曝光倍率,包括:

从预先确定的曝光倍率区间中选取曝光倍率,以及基于所选取的曝光倍率执行如下第二曝光倍率确定操作:

采用所选取的曝光倍率对所述待处理图像进行曝光处理,生成所述待处理图像针对该曝光倍率的第二曝光后图像;

将所述待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像,生成所述待处理图像针对该曝光倍率的灰度图像;

确定所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值是否大于或等于预设亮度阈值;

响应于所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值大于或等于所述预设亮度阈值,将所采用的该曝光倍率作为用于对所述待处理图像进行曝光处理的曝光倍率。

可选地,在本公开任一实施例的方法中,所述方法还包括:

响应于所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值小于所述预设亮度阈值,从所述曝光倍率区间中重新选取未选取过的曝光倍率,以及基于重新选取的曝光倍率执行所述第二曝光倍率确定操作。

可选地,在本公开任一实施例的方法中,所述基于所述第一曝光后图像,对所述待处理图像进行白平衡处理,生成白平衡处理后图像,包括:

基于所述待处理图像的图像大小,对所述第一曝光后图像进行图像划分,得到图像区域集合;

对所述图像区域集合中的图像区域中的目标像素进行白平衡处理,生成白平衡处理后图像,其中,所述目标像素为待进行白平衡处理的像素。

可选地,在本公开任一实施例的方法中,所述获取待处理图像,包括:

获取原始图像;

对所述原始图像的图像掩膜进行腐蚀操作,得到腐蚀后图像,以及将所述原始图像中与所述腐蚀后图像相对应的图像区域作为待处理图像。

可选地,在本公开任一实施例的方法中,所述方法还包括:

将所述待处理图像中的图像像素,作为有效像素;

从所述图像区域集合中,确定至少一个目标图像区域,其中,目标图像区域中的全部像素的数量与预设百分比的乘积,小于或等于该目标图像区域中的有效像素的数量;

从所确定的目标图像区域中,确定用于进行白平衡处理的目标像素。

可选地,在本公开任一实施例的方法中,所述从所确定的目标图像区域中,确定用于进行白平衡处理的目标像素,包括:

将所确定的目标图像区域中,符合预设条件的像素,确定为用于进行白平衡处理的目标像素;

其中,所述预设条件包括:所述原始图像中与该像素相对应的像素的单通道数值大于第一预设阈值,并且,所述待处理图像中与该像素相对应的像素的三通道的色值之和小于第二预设阈值。

可选地,在本公开任一实施例的方法中,所述对所述图像区域集合中的图像区域中的目标像素进行白平衡处理,生成白平衡处理后图像,包括:

针对所确定的目标像素中的每个目标像素,基于该目标像素的三通道的色值,确定该目标像素的第一坐标的值和第二坐标的值;

基于该目标像素的第一坐标的值和第二坐标的值,计算在预设坐标系中,该目标像素到预定色温曲线的距离,其中,所述预设坐标系包括第一坐标和第二坐标,所述预定色温曲线表征所述第一坐标的值和所述第二坐标的值之间的对应关系;

基于所确定的目标像素到所述预定色温曲线的距离,对所述待处理图像进行白平衡处理,生成白平衡处理后图像。

可选地,在本公开任一实施例的方法中,所述基于所确定的目标像素到所述预定色温曲线的距离,对所述待处理图像进行白平衡处理,生成白平衡处理后图像,包括:

基于所确定的各个目标像素到所述预定色温曲线的距离,确定所确定的各个目标像素对应的权重;

基于所确定的各个目标像素对应的权重,确定目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值;

基于所述目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值,以及所述待处理图像,生成白平衡处理后图像。

可选地,在本公开任一实施例的方法中,目标像素的第一坐标的值为该目标像素的蓝色通道的色值与该目标像素的绿色通道的色值的比值,目标像素的第二坐标的值为该目标像素的红色通道的色值与该目标像素的绿色通道的色值的比值;以及

所述方法还包括:

针对预定色温值集合中的每个色温值,采用该色温值为预先确定的标准色卡中的每个标准色卡分别拍摄预定数量张图片;

计算拍摄得到的图片中的像素点的第一坐标的值和第二坐标的值;其中,像素点的第一坐标的值为该像素点的蓝色通道的色值均值与绿色通道的色值均值的比值;像素点的第二坐标的值为该像素点的红色通道的色值均值与绿色通道的色值均值的比值;像素点的红色通道的色值均值为:同一色温值下同一标准色卡的所述预定数量张图片中与该像素相对应的各个像素点的红色通道的色值的平均值;像素点的绿色通道的色值均值为:同一色温值下同一标准色卡的所述预定数量张图片中与该像素相对应的各个像素点的绿色通道的色值的平均值;像素点的蓝色通道的色值均值为:同一色温值下同一标准色卡的所述预定数量张图片中与该像素相对应的各个像素点的蓝色通道的色值的平均值;

基于计算得到的像素点的第一坐标的值和第二坐标的值,生成预定色温曲线。

根据本公开实施例的第二个方面,提供的一种图像的白平衡处理装置,包括:

获取单元,被配置成获取待处理图像;

确定单元,被配置成基于与所述待处理图像相对应的灰度图像,确定用于对所述待处理图像进行曝光处理的曝光倍率;

第一生成单元,被配置成采用所述曝光倍率,对所述待处理图像进行曝光处理,生成第一曝光后图像;

处理单元,被配置成基于所述第一曝光后图像,对所述待处理图像进行白平衡处理,生成白平衡处理后图像。

可选地,在本公开任一实施例的装置中,所述确定单元包括:

第一选取子单元,被配置成针对预先确定的曝光倍率集合中的曝光倍率,按照从小到大的顺序,依次选取曝光倍率,以及基于所选取的曝光倍率执行如下第一曝光倍率确定操作:

采用所选取的曝光倍率对所述待处理图像进行曝光处理,生成所述待处理图像针对该曝光倍率的第二曝光后图像;

将所述待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像,生成所述待处理图像针对该曝光倍率的灰度图像;

确定所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值是否大于或等于预设亮度阈值;

响应于所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值大于或等于所述预设亮度阈值,将所采用的该曝光倍率作为用于对所述待处理图像进行曝光处理的曝光倍率。

可选地,在本公开任一实施例的装置中,所述装置还包括:

第一选取单元,被配置成响应于所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值小于所述预设亮度阈值,继续按照从小到大的顺序,从所述曝光倍率集合中重新选取曝光倍率,以及基于重新选取的曝光倍率执行所述第一曝光倍率确定操作。

可选地,在本公开任一实施例的装置中,所述确定单元包括:

第二选取子单元,被配置成从预先确定的曝光倍率区间中选取曝光倍率,以及基于所选取的曝光倍率执行如下第二曝光倍率确定操作:

采用所选取的曝光倍率对所述待处理图像进行曝光处理,生成所述待处理图像针对该曝光倍率的第二曝光后图像;

将所述待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像,生成所述待处理图像针对该曝光倍率的灰度图像;

确定所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值是否大于或等于预设亮度阈值;

响应于所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值大于或等于所述预设亮度阈值,将所采用的该曝光倍率作为用于对所述待处理图像进行曝光处理的曝光倍率。

可选地,在本公开任一实施例的装置中,所述装置还包括:

第二选取单元,被配置成响应于所述待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值小于所述预设亮度阈值,从所述曝光倍率区间中重新选取未选取过的曝光倍率,以及基于重新选取的曝光倍率执行所述第二曝光倍率确定操作。

可选地,在本公开任一实施例的装置中,所述处理单元包括:

划分子单元,被配置成基于所述待处理图像的图像大小,对所述第一曝光后图像进行图像划分,得到图像区域集合;

生成子单元,被配置成对所述图像区域集合中的图像区域中的目标像素进行白平衡处理,生成白平衡处理后图像,其中,所述目标像素为待进行白平衡处理的像素。

可选地,在本公开任一实施例的装置中,所述获取单元包括:

获取子单元,被配置成获取原始图像;

腐蚀子单元,被配置成对所述原始图像的图像掩膜进行腐蚀操作,得到腐蚀后图像,以及将所述原始图像中与所述腐蚀后图像相对应的图像区域作为待处理图像。

可选地,在本公开任一实施例的装置中,所述腐蚀子单元还被配置成:

将所述待处理图像中的图像像素,作为有效像素;以及

所述确定子单元包括:

第一确定模块,被配置成从所述图像区域集合中,确定至少一个目标图像区域,其中,目标图像区域中的全部像素的数量与预设百分比的乘积,小于或等于该目标图像区域中的有效像素的数量;

第二确定模块,被配置成从所确定的目标图像区域中,确定用于进行白平衡处理的目标像素。

可选地,在本公开任一实施例的装置中,所述第二确定模块包括:

确定子模块,被配置成将所确定的目标图像区域中,符合预设条件的像素,确定为用于进行白平衡处理的目标像素;

其中,所述预设条件包括:所述原始图像中与该像素相对应的像素的单通道数值大于第一预设阈值,并且,所述待处理图像中与该像素相对应的像素的三通道的色值之和小于第二预设阈值。

可选地,在本公开任一实施例的装置中,所述生成子单元包括:

第三确定模块,被配置成针对所确定的目标像素中的每个目标像素,基于该目标像素的三通道的色值,确定该目标像素的第一坐标的值和第二坐标的值;

计算模块,被配置成基于该目标像素的第一坐标的值和第二坐标的值,计算在预设坐标系中,该目标像素到预定色温曲线的距离,其中,所述预设坐标系包括第一坐标和第二坐标,所述预定色温曲线表征所述第一坐标的值和所述第二坐标的值之间的对应关系;

生成模块,被配置成基于所确定的目标像素到所述预定色温曲线的距离,对所述待处理图像进行白平衡处理,生成白平衡处理后图像。

可选地,在本公开任一实施例的装置中,所述生成模块包括:

第一确定子模块,被配置成基于所确定的各个目标像素到所述预定色温曲线的距离,确定所确定的各个目标像素对应的权重;

第二确定子模块,被配置成基于所确定的各个目标像素对应的权重,确定目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值;

生成子模块,被配置成基于所述目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值,以及所述待处理图像,生成白平衡处理后图像。

可选地,在本公开任一实施例的装置中,目标像素的第一坐标的值为该目标像素的蓝色通道的色值与该目标像素的绿色通道的色值的比值,目标像素的第二坐标的值为该目标像素的红色通道的色值与该目标像素的绿色通道的色值的比值;以及

所述装置还包括:

拍摄单元,被配置成针对预定色温值集合中的每个色温值,采用该色温值为预先确定的标准色卡中的每个标准色卡分别拍摄预定数量张图片;

计算单元,被配置成计算拍摄得到的图片中的像素点的第一坐标的值和第二坐标的值;其中,像素点的第一坐标的值为该像素点的蓝色通道的色值均值与绿色通道的色值均值的比值;像素点的第二坐标的值为该像素点的红色通道的色值均值与绿色通道的色值均值的比值;像素点的红色通道的色值均值为:同一色温值下同一标准色卡的所述预定数量张图片中与该像素相对应的各个像素点的红色通道的色值的平均值;像素点的绿色通道的色值均值为:同一色温值下同一标准色卡的所述预定数量张图片中与该像素相对应的各个像素点的绿色通道的色值的平均值;像素点的蓝色通道的色值均值为:同一色温值下同一标准色卡的所述预定数量张图片中与该像素相对应的各个像素点的蓝色通道的色值的平均值;

第二生成单元,被配置成基于计算得到的像素点的第一坐标的值和第二坐标的值,生成预定色温曲线。

根据本公开实施例的第三个方面,提供的一种电子设备,包括:

存储器,用于存储计算机程序;

处理器,用于执行所述存储器中存储的计算机程序,且所述计算机程序被执行时,实现本公开上述第一方面的图像的白平衡处理方法中任一实施例的方法。

根据本公开实施例的第四个方面,提供的一种计算机可读介质,该计算机程序被处理器执行时,实现如上述第一方面的图像的白平衡处理方法中任一实施例的方法。

根据本公开实施例的第五个方面,提供的一种计算机程序,该计算机程序包括计算机可读代码,当该计算机可读代码在设备上运行时,使得该设备中的处理器执行用于实现如上述第一方面的图像的白平衡处理方法中任一实施例的方法中各步骤的指令。

基于本公开上述实施例提供的图像的白平衡处理方法、装置、电子设备和存储介质,可以获取待处理图像,然后,基于与待处理图像相对应的灰度图像,确定用于对待处理图像进行曝光处理的曝光倍率,采用曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像,最后,基于第一曝光后图像,对待处理图像进行白平衡处理,生成白平衡处理后图像。本公开实施例可以基于与待处理图像相对应的灰度图像来确定曝光倍率,并采用该曝光倍率对待处理图像进行曝光处理得到的曝光后图像对待处理图像进行白平衡处理,从而可以针对不同的待处理图像,确定出不同的用于对待处理图像进行曝光处理的曝光倍率,进而基于曝光后图像对待处理图像进行白平衡处理,由此,提高了图像白平衡处理的准确性。

下面通过附图和实施例,对本公开的技术方案做进一步的详细描述。

附图说明

构成说明书的一部分的附图描述了本公开的实施例,并且连同描述一起用于解释本公开的原理。

参照附图,根据下面的详细描述,可以更加清楚地理解本公开,其中:

图1为本公开图像的白平衡处理方法的第一个实施例的流程图。

图2为本公开图像的白平衡处理方法的第二个实施例的流程图。

图3为本公开图像的白平衡处理方法的第三个实施例的流程图。

图4为本公开图像的白平衡处理方法的一个实施例中的色温曲线的生成过程示意图。

图5为本公开图像的白平衡处理装置的一个实施例的结构示意图。

图6是本公开一示例性实施例提供的电子设备的结构图。

具体实施方式

现在将参照附图来详细描述本公开的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。

本领域技术人员可以理解,本公开实施例中的“第一”、“第二”等术语仅用于区别不同步骤、设备或模块等,既不代表任何特定技术含义,也不表示它们之间的必然逻辑顺序。

还应理解,在本公开实施例中,“多个”可以指两个或两个以上,“至少一个”可以指一个、两个或两个以上。

还应理解,对于本公开实施例中提及的任一部件、数据或结构,在没有明确限定或者在前后文给出相反启示的情况下,一般可以理解为一个或多个。

另外,本公开中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本公开中字符“/”,一般表示前后关联对象是一种“或”的关系。

还应理解,本公开对各个实施例的描述着重强调各个实施例之间的不同之处,其相同或相似之处可以相互参考,为了简洁,不再一一赘述。

同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。

以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。

对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。

应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。

本公开实施例可以应用于终端设备、计算机系统和服务器中的至少一种电子设备,其可与众多其它通用或专用计算系统环境或配置一起操作。适于与终端设备、计算机系统和服务器中的至少一种电子设备一起使用的众所周知的计算系统、环境和/或配置的例子包括但不限于:个人计算机系统、服务器计算机系统、瘦客户机、厚客户机、手持或膝上设备、基于微处理器的系统、机顶盒、可编程消费电子产品、网络个人电脑、小型计算机系统﹑大型计算机系统和包括上述任何系统的分布式云计算技术环境,等等。

终端设备、计算机系统和服务器中的至少一种电子设备可以在由计算机系统执行的计算机系统可执行指令(诸如程序模块)的一般语境下描述。通常,程序模块可以包括例程、程序、目标程序、组件、逻辑、数据结构等等,它们执行特定的任务或者实现特定的抽象数据类型。计算机系统/服务器可以在分布式云计算环境中实施,分布式云计算环境中,任务是由通过通信网络链接的远程处理设备执行的。在分布式云计算环境中,程序模块可以位于包括存储设备的本地或远程计算系统存储介质上。

请参考图1,示出了根据本公开的图像的白平衡处理方法的第一个实施例的流程100。该图像的白平衡处理方法,包括:

101,获取待处理图像。

在本实施例中,图像的白平衡处理方法的执行主体(例如服务器、终端设备、具有图像处理功能的图像处理单元等)可以通过有线连接方式或者无线连接方式从其他电子设备或者本地获取待处理图像。

其中,上述待处理图像。可以是待对其进行白平衡处理的图像。示例性的,该待处理图像可以是原始图像(例如raw图像文件),也可以是基于原始图像得到的彩色图像,还可以是经过腐蚀操作等处理后得到的图像。

例如,在待处理图像为经过腐蚀操作等处理后得到的图像的情况下,可以采用如下方式获得待处理图像:将原始图像对应的图像掩膜(edge_mask,一种二值化的图像)中值为0的点所对应的原始图像的数据去除掉,不计入之后的计算。也即,将去除掉原始图像的数据中,图像掩膜中值为0的点所对应的原始图像的数据,从而得到经过腐蚀操作的待处理图像。

102,基于与待处理图像相对应的灰度图像,确定用于对待处理图像进行曝光处理的曝光倍率。

在本实施例中,上述执行主体可以基于与101中获取的待处理图像相对应的灰度图像,确定用于对该待处理图像进行曝光处理的曝光倍率。

其中,与101中获取的待处理图像相对应的灰度图像可以是将待处理图像转化成的灰度图像。可选的,与101中获取的待处理图像相对应的灰度图像也可以采用如下方式获得:采用某个曝光倍率对待处理图像进行曝光处理,生成该待处理图像的曝光后图像,然后,将该曝光后图像转换成灰度图像,将转换后得到的灰度图像,作为与101中获取的待处理图像相对应的灰度图像。这里,上述曝光倍率可以是预先确定的曝光倍率,也可以是使得曝光处理后的曝光后图像转换成的灰度图像中的各个像素的亮度的均值大于或等于预设阈值的曝光倍率。

103,采用曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像。

在本实施例中,上述执行主体可以采用102中所确定的曝光倍率,对101中所获取的待处理图像进行曝光处理,生成第一曝光后图像。

作为示例,上述执行主体可以将101中所获取的待处理图像中的各个像素的值(例如单通道的值或三通道的值)乘以上述曝光倍率,以实现对101中所获取的待处理图像的曝光处理,从而得到第一曝光后图像。

作为又一示例,上述执行主体也可以首先从待处理图像中确定用以进行曝光处理的图像区域,然后将上述图像区域中的各个像素的值(例如单通道的值或三通道的值)乘以上述曝光倍率,以实现对101中所获取的待处理图像的曝光处理,从而得到第一曝光后图像。

104,基于第一曝光后图像,对待处理图像进行白平衡处理,生成白平衡处理后图像。

在本实施例中,上述执行主体可以基于103中生成的第一曝光后图像,对101中获取的待处理图像进行白平衡处理,生成白平衡处理后图像。

作为示例,上述执行主体可以首先通过白点检测算法,从103中生成的第一曝光后图像中确定目标像素。其中,目标像素为待进行白平衡处理的像素然后,采用白平衡算法(例如灰色世界法(GreyWorldMethod),基于动态阈值的自动白平衡法(AutomaticWhiteBalanceMethod),gray pixel,gray index等等),对所确定的第一曝光后图像中的目标像素进行白平衡处理,以确定目标像素的值,并将待处理图像中与上述目标像素相对应的像素的值,相应更新为所确定的目标像素的值,从而实现对101中获取的待处理图像的白平衡处理,生成白平衡处理后图像。其中,目标像素并不局限于RGB(红绿蓝,RedGreenBlue)值均为255的像素,目标像素的确定方式可以根据所选用的白点检测算法而有所差异。

需要说明的是,本公开的上述实施例可以先执行上述103再执行102,也可以先执行102再执行103,在此不作限定。例如,上述执行主体也可以首先采用曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像。之后,将该第一曝光后图像转换成灰度图像,生成转换后灰度图像。若该灰度图像中的像素的亮度均值大于或等于预设亮度阈值(例如0.5)则将该曝光倍率作为用于对待处理图像进行曝光处理的曝光倍率。

本公开的上述实施例提供的图像的白平衡处理方法,可以获取待处理图像,然后,基于与待处理图像相对应的灰度图像,确定用于对待处理图像进行曝光处理的曝光倍率,采用曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像,最后,基于第一曝光后图像,对待处理图像进行白平衡处理,生成白平衡处理后图像。本公开实施例可以基于与待处理图像相对应的灰度图像来确定曝光倍率,并采用该曝光倍率对待处理图像进行曝光处理得到的曝光后图像,对待处理图像进行白平衡处理,从而可以针对不同的待处理图像,确定出不同的用于对待处理图像进行曝光处理的曝光倍率,进而基于曝光后图像对待处理图像进行白平衡处理,由此,提高了图像白平衡处理的准确性。

在本实施例的一些可选的实现方式中,上述执行主体可以采用如下方式,确定用于对待处理图像进行曝光处理的曝光倍率:

从预先确定的曝光倍率区间中选取曝光倍率,以及基于所选取的曝光倍率执行如下第二曝光倍率确定操作,也即如下第一步至第四步:

第一步,采用所选取的曝光倍率对待处理图像进行曝光处理,生成待处理图像针对该曝光倍率的第二曝光后图像。

在这里,可以从上述曝光倍率区间中随机选取曝光倍率,也可以每间隔预定数值(例如1、2等),按照从大到小或从小到大的顺序进行曝光倍率的选取。

作为示例,上述执行主体可以将101中所获取的待处理图像中的各个像素的值(例如单通道的值或三通道的值)乘以所选取的曝光倍率,从而生成待处理图像针对该曝光倍率的第二曝光后图像。

作为又一示例,上述执行主体也可以首先从待处理图像中确定用以进行曝光处理的图像区域,然后将上述图像区域中的各个像素的值(例如单通道的值或三通道的值)乘以所选取的曝光倍率,从而生成待处理图像针对该曝光倍率的第二曝光后图像。

第二步,将待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像,生成待处理图像针对该曝光倍率的灰度图像。

在这里,上述执行主体可以采用多种方式,将待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像。

作为示例,在待处理图像为RGB三通道图像的情况下,上述执行主体可以基于待处理图像的像素的三个通道的色值的加权求和的结果,或者,基于待处理图像的像素的三个通道的色值的平均值,生成待处理图像针对该曝光倍率的灰度图像,并将其作为待处理图像针对该曝光倍率的第二曝光后图像转换成的灰度图像。

第三步,确定待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值是否大于或等于预设亮度阈值。其中,在灰度图像中的像素点的亮度值可以是该像素点的灰度值。

第四步,在待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值大于或等于预设亮度阈值的情况下,将所采用的该曝光倍率作为用于对待处理图像进行曝光处理的曝光倍率。

在上述可选的实现方式中的一些应用场景中,在待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值小于预设亮度阈值的情况下,上述执行主体还可以从曝光倍率区间中重新选取未选取过的曝光倍率,以及基于重新选取的曝光倍率执行第二曝光倍率确定操作,即上述第一步至第四步。

可以理解,上述应用场景中,在待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值小于预设亮度阈值的情况下,则不采用该曝光倍率对待处理图像进行曝光处理,而是重新选取未选取过的曝光倍率,直至选取出能够使得待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值大于或等于预设亮度阈值的曝光倍率,由此,可以确保采用所确定的曝光倍率对待处理图像进行曝光处理后,得到的曝光后图对应的灰度图像具有较高亮度,进而可以基于像素的值较大的第一曝光后图像,对待处理图像进行白平衡处理,从而生成白平衡处理后图像,可以进一步提高白平衡处理的准确度。

在本实施例的一些可选的实现方式中,上述执行主体可以采用如下方式执行上述101:

首先,获取原始图像。其中,原始图像可以包括从数码相机、扫描器或电影胶片扫描仪的图像传感器所处理的图像数据。可以理解,原始图像通常为尚未被处理,未被打印或用于编辑的图像。

然后,对所述原始图像的图像掩膜进行腐蚀操作,得到腐蚀后图像,以及将所述原始图像中与所述腐蚀后图像相对应的图像区域作为待处理图像。

可以理解,上述可选的实现方式中的待处理图像为经过腐蚀操作处理后的腐蚀后图像,因此,可以消除外边界对白平衡处理的影响,进而提高白平衡处理的准确性。

在本实施例的一些可选的实现方式中,上述执行主体可以采用如下方式,执行上述104:

第一步,基于待处理图像的图像大小,对第一曝光后图像进行图像划分,得到图像区域集合。

作为示例,可以根据实际需求,确定图像划分数量,例如,图像划分数量可以与图像的大小成正相关或负相关。

第二步,针对图像区域集合中的图像区域中的目标像素,确定用于进行白平衡处理的目标像素。

在这里,针对图像区域集合中的每个图像区域,上述执行主体可以首先通过白点检测算法,从该图像区域中确定用于进行白平衡处理的目标像素。

第三步,对图像区域集合中的图像区域中的目标像素进行白平衡处理,生成白平衡处理后图像。

在这里,上述执行主体可以采用白平衡算法(例如灰色世界法、基于动态阈值的自动白平衡法等),对所确定的目标像素进行白平衡处理,以确定目标像素的值,并将待处理图像中与上述目标像素相对应的像素的值,相应更新为所确定的目标像素的值,从而实现对待处理图像进行白平衡处理,以及生成白平衡处理后图像。

可以理解,上述可选的实现方式中通过对第一曝光后图像进行图像划分,并分别确定各个图像区域中用于进行白平衡处理的目标像素,从而针对各个图像区域的不同特点进行更具针对性的白平衡处理,由此进一步提高了图像白平衡处理的准确度。

在上述可选的实现方式的一些应用场景中,在上述101中的待处理图像为经腐蚀操作而得到的腐蚀后图像的情况下,可以将待处理图像中的图像像素,作为有效像素。

基于此,上述执行主体可以采用如下方式执行上述第二步,以针对图像区域集合中的图像区域中的目标像素,确定用于进行白平衡处理的目标像素:

第一步骤,从图像区域集合中,确定至少一个目标图像区域。其中,目标图像区域中的全部像素的数量与预设百分比的乘积,小于或等于该目标图像区域中的有效像素的数量。

第二步骤,从所确定的目标图像区域中,确定用于进行白平衡处理的目标像素。

在上述应用场景中的一些情况下,上述执行主体可以采用如下方式执行上述第二步骤,以从所确定的目标图像区域中,确定用于进行白平衡处理的目标像素:

将所确定的目标图像区域中,符合预设条件的像素,确定为用于进行白平衡处理的目标像素。其中,预设条件包括:原始图像中与该像素相对应的像素的单通道数值大于第一预设阈值,并且,待处理图像中与该像素相对应的像素的三通道的色值之和小于第二预设阈值。其中,三通道的色值即红、绿、蓝三个通道的色值。

可以理解,上述情况中,仅根据符合预设条件的像素,确定为用于进行白平衡处理的目标像素,排除了不符合上述预设条件的像素对图像白平衡处理的影响,从而可以避免暗部噪声以及过亮非线性区域对白平衡的影响,由此,进一步提高了图像白平衡处理的准确度。

可选的,上述执行主体也可以采用如下方式执行上述第二步骤,以从所确定的目标图像区域中,确定用于进行白平衡处理的目标像素:

基于所确定的目标图像区域中的全部像素,确定用于进行白平衡处理的目标像素。

可以理解,上述应用场景中,可以仅基于目标图像区域中的像素(即有效像素),来确定用于进行白平衡处理的目标像素,排除了无效像素(即非有效像素)较多的非目标图像区域中的目标像素对图像白平衡处理的影响,由此,进一步提高了图像白平衡处理的准确度。

在上述可选的实现方式的一些应用场景中,上述执行主体可以采用如下方式执行上述第三步,以对图像区域集合中的图像区域中的目标像素进行白平衡处理,生成白平衡处理后图像:

第一步骤,针对所确定的目标像素中的每个目标像素,基于该目标像素的三通道的色值,确定该目标像素的第一坐标的值和第二坐标的值。

其中,目标像素的三通道的色值可以包括红色通道的色值、蓝色通道的色值和绿色通道的色值。

这里,可以根据实际需要来确定如何计算该目标像素的第一坐标的值和第二坐标的值。

作为示例,第一坐标的值可以是红色通道的色值与蓝色通道的色值的比值,第二坐标的值可以是红色通道的色值与绿色通道的色值的比值。可选的,第一坐标的值也可以是蓝色通道的色值与红色通道的色值的比值,第二坐标的值也可以是绿色通道的色值与红色通道的色值的比值等等。

第二步骤,基于该目标像素的第一坐标的值和第二坐标的值,计算在预设坐标系中,该目标像素到预定色温曲线的距离。其中,预设坐标系包括第一坐标和第二坐标,预定色温曲线表征第一坐标的值和第二坐标的值之间的对应关系。

第三步骤,基于所确定的目标像素到预定色温曲线的距离,对待处理图像进行白平衡处理,生成白平衡处理后图像。

在上述应用场景中的一些情况下,上述执行主体可以采用如下方式执行上述第三步骤,以基于所确定的目标像素到预定色温曲线的距离,对待处理图像进行白平衡处理,生成白平衡处理后图像:

首先,基于所确定的各个目标像素到预定色温曲线的距离,确定所确定的各个目标像素对应的权重。

示例性的,目标像素对应的权重可以与目标像素到预定色温曲线的距离呈正相关或负相关。

然后,基于所确定的各个目标像素对应的权重,确定目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值。

其中,目标像素可以是用以进行白平衡处理的像素。

示例性的,可以通过如下公式确定目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值:

其中,R为目标像素的红色通道的色值,G为目标像素的绿色通道的色值,B为目标像素的蓝色通道的色值,i用于唯一标识所确定的目标像素,W

可选的,上述执行主体还可以采用如下方式,基于所确定的各个目标像素对应的权重,确定目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值:

其中,R为目标像素的红色通道的色值,G为目标像素的绿色通道的色值,B为目标像素的蓝色通道的色值,i用于唯一标识所确定的目标像素,W

之后,基于目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值,以及待处理图像,生成白平衡处理后图像。

作为示例,上述执行主体可以首先确定目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值中,数值最大的色值。然后,采用上述数值最大的色值,除以目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值构成的矩阵,得到第一矩阵。之后,将待处理图像的图像矩阵与上述第一矩阵的卷积的结果,作为白平衡处理后图像。

可选的,上述执行主体还可以采用如下方式,基于目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值,以及待处理图像,生成白平衡处理后图像:

首先,基于腐蚀操作和曝光处理中的至少一项操作,对待处理图像进行处理,得到处理后图像。然后,确定目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值中,数值最大的色值。随后,采用上述数值最大的色值,除以目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值构成的矩阵,得到第一矩阵。之后,将上述处理后图像的图像矩阵与上述第一矩阵的卷积运算的结果,作为白平衡处理后图像。

可以理解,上述情况下,可以基于所确定的各个目标像素对应的权重,对待处理图像进行白平衡处理,由此,可以基于各个目标像素对应的权重进行白平衡处理,因而可以进一步提高最终生成的白平衡处理后图像中的目标像素的鲁棒性和准确性。

可选的,上述执行主体也可以采用如下方式执行上述第三步骤,以基于所确定的目标像素到预定色温曲线的距离,对待处理图像进行白平衡处理,生成白平衡处理后图像:

基于所确定的目标像素到预定色温曲线的距离,确定出拍摄待处理图像时的色温,进而,基于该色温对待处理图像进行白平衡处理,生成白平衡处理后图像。

可以理解,上述应用场景中,可以基于所确定的目标像素到预定色温曲线的距离,对待处理图像进行白平衡处理,由此通过预定色温曲线来辅助进行白平衡处理,可以进一步提高白平衡处理的准确度。

进一步参考图2,图2是本公开的图像的白平衡处理方法的第二个实施例的流程图。该图像的白平衡处理方法的流程200,包括:

201,获取待处理图像。之后,执行202。

在本实施例中,图像的白平衡处理方法的执行主体(例如服务器、终端设备、具有图像处理功能的图像处理单元等)可以通过有线连接方式或者无线连接方式从其他电子设备或者本地,获取待处理图像。

在本实施例中,201与图1对应实施例中的101基本一致,这里不再赘述。

202,针对预先确定的曝光倍率集合中的曝光倍率,按照从小到大的顺序,依次选取曝光倍率。之后,执行203。

在本实施例中,针对预先确定的曝光倍率集合中的曝光倍率,上述执行主体可以按照从小到大的顺序,依次选取曝光倍率。

例如,如果曝光倍率集合中包括如下曝光倍率:1、4、16、64,那么,首次选取时,上述执行主体可以选取1作为所选取的曝光倍率;第二次选取时,上述执行主体可以选取4作为所选取的曝光倍率;第三次选取时,上述执行主体可以选取16作为所选取的曝光倍率;第四次选取时,上述执行主体可以选取64作为所选取的曝光倍率。

这里,每选取一次曝光倍率即可执行一次203-205。

203,采用所选取的曝光倍率对待处理图像进行曝光处理,生成待处理图像针对该曝光倍率的第二曝光后图像。之后,执行204。

在本实施例中,上述执行主体可以采用201中所选取的曝光倍率对待处理图像进行曝光处理,生成待处理图像针对该曝光倍率的第二曝光后图像。

作为示例,上述执行主体可以将201中所获取的待处理图像中的各个像素的值(例如单通道的值或三通道的值)乘以202中所选取的曝光倍率,以实现对201中所获取的待处理图像的曝光处理,从而得到第二曝光后图像。

作为又一示例,上述执行主体也可以首先从待处理图像中确定用以进行曝光处理的图像区域,然后将上述图像区域中的各个像素的值(例如单通道的值或三通道的值)乘以202中所选取的曝光倍率,以实现对201中所获取的待处理图像的曝光处理,从而得到第二曝光后图像。

204,将待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像,生成待处理图像针对该曝光倍率的灰度图像。之后,执行205。

在本实施例中,上述执行主体可以将待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像,生成待处理图像针对该曝光倍率的灰度图像。

作为示例,在待处理图像为RGB三通道图像的情况下,上述执行主体可以基于待处理图像的像素的三个通道的色值的加权求和的结果,或者,基于待处理图像的像素的三个通道的色值的平均值,生成待处理图像针对该曝光倍率的灰度图像。

205,确定待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值是否大于或等于预设亮度阈值。之后,若是,则执行206。可选的,若否,则可以执行202。

在本实施例中,上述执行主体可以确定待处理图像针对该曝光倍率的灰度图像中的像素点的亮度的平均值是否大于或等于预设亮度阈值。

其中,灰度图像中的像素点的亮度可以为该灰度图像中的像素点的灰度。

206,将所采用的该曝光倍率作为用于对待处理图像进行曝光处理的曝光倍率。之后,执行207。

在本实施例中,上述执行主体可以将所采用的该曝光倍率作为用于对待处理图像进行曝光处理的曝光倍率。

207,采用206中确定的曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像。之后,执行208。

在本实施例中,上述执行主体可以采用206中确定的曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像。

208,基于第一曝光后图像,对待处理图像进行白平衡处理,生成白平衡处理后图像。

在本实施例中,上述执行主体可以基于207中生成的第一曝光后图像,对待处理图像进行白平衡处理,生成白平衡处理后图像。

作为示例,上述执行主体可以首先通过白点检测算法,从207中生成的第一曝光后图像中确定目标像素。其中,目标像素为待进行白平衡处理的像素。然后,采用白平衡算法(例如灰色世界法,基于动态阈值的自动白平衡法等等),对所确定的第一曝光后图像中的目标像素进行白平衡处理,以确定目标像素的值,并将待处理图像中与上述目标像素相对应的像素的值,相应更新为所确定的目标像素的值,从而实现对201中获取的待处理图像的白平衡处理,生成白平衡处理后图像。

需要说明的是,除上面所记载的内容外,本公开实施例还可以包括与图1对应的实施例相同或类似的特征、效果,在此不再赘述。

从图2中可以看出,本实施例中的图像的白平衡处理方法的流程200可以选取出使得待处理图像对应的灰度图像的亮度均值较大的曝光倍率集合中的最小的曝光倍率,由此,既可以达到曝光处理的效果,又可以一定程度上防止将待处理图像过度曝光,因而可以进一步提高图像白平衡处理的准确度和鲁棒性。

请继续参考图3,图3是本公开的图像的白平衡处理方法的第三个实施例的流程图。该图像的白平衡处理方法的流程300,包括:

301,获取原始图像。

在本实施例中,图像的白平衡处理方法的执行主体(例如服务器、终端设备、具有图像处理功能的图像处理单元等)可以通过有线连接方式或者无线连接方式从其他电子设备或者本地获取原始图像。

302,对原始图像的图像掩膜进行腐蚀操作,得到腐蚀后图像,以及将原始图像中与腐蚀后图像相对应的图像区域作为待处理图像。

在本实施例中,上述执行主体可以对原始图像的图像掩膜进行腐蚀操作,得到腐蚀后图像,以及将原始图像中与腐蚀后图像相对应的图像区域作为待处理图像。

303,基于与待处理图像相对应的灰度图像,确定用于对待处理图像进行曝光处理的曝光倍率。

在本实施例中,上述执行主体可以基于与待处理图像相对应的灰度图像,确定用于对待处理图像进行曝光处理的曝光倍率。

304,采用曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像。

在本实施例中,上述执行主体可以采用303中确定的曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像。

305,基于待处理图像的图像大小,对第一曝光后图像进行图像划分,得到图像区域集合。

在本实施例中,上述执行主体可以基于待处理图像的图像大小,对第一曝光后图像进行图像划分,得到图像区域集合。

306,从图像区域集合中,确定至少一个目标图像区域。

在本实施例中,上述执行主体可以从图像区域集合中,确定至少一个目标图像区域。

307,将所确定的目标图像区域中,符合预设条件的像素,确定为用于进行白平衡处理的目标像素。

在本实施例中,上述执行主体可以将所确定的目标图像区域中,符合预设条件的像素,确定为用于进行白平衡处理的目标像素。其中,目标像素为待进行白平衡处理的像素其中,预设条件包括:原始图像中与该像素相对应的像素的单通道数值大于第一预设阈值,并且,待处理图像中与该像素相对应的像素的三通道的色值之和小于第二预设阈值。

308,对图像区域集合中的图像区域中的目标像素进行白平衡处理,生成白平衡处理后图像。

在本实施例中,上述执行主体可以对图像区域集合中的图像区域中的目标像素进行白平衡处理,生成白平衡处理后图像。

作为示例,请进一步参考图4,图4为本公开图像的白平衡处理方法的一个实施例中的色温曲线的生成过程示意图。在目标像素的第一坐标的值为该目标像素的蓝色通道的色值与该目标像素的绿色通道的色值的比值,目标像素的第二坐标的值为该目标像素的红色通道的色值与该目标像素的绿色通道的色值的比值的情况下,该色温曲线的生成过程包括:

401,针对预定色温值集合中的每个色温值,采用该色温值为预先确定的标准色卡中的每个标准色卡分别拍摄预定数量张图片。

402,计算拍摄得到的图片中的像素点的第一坐标的值和第二坐标的值。

其中,像素点的第一坐标的值为该像素点的蓝色通道的色值均值与绿色通道的色值均值的比值;像素点的第二坐标的值为该像素点的红色通道的色值均值与绿色通道的色值均值的比值;像素点的红色通道的色值均值为:同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的红色通道的色值的平均值;像素点的绿色通道的色值均值为:同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的绿色通道的色值的平均值;像素点的蓝色通道的色值均值为:同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的蓝色通道的色值的平均值。

403,基于计算得到的像素点的第一坐标的值和第二坐标的值,生成预定色温曲线。

可以理解,采用图4所示的方法生成的色温曲线,可以将同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的RGB三通道的色值均值,可以保证所有图像的拍摄位置和角度完全相同,只改变色温,做到单一变量。此外,在同一色温下拍摄多张图片可以消除或削弱随机噪声带来的影响,从而提高了色温曲线的准确度。

还应该理解,图4仅仅是本公开图像的白平衡处理方法的一个实施例中的色温曲线的生成过程示意图。除图4所示的色温曲线的生成方法之外,还可以采用其他方式生成色温曲线,例如,在目标像素的第一坐标的值为该目标像素的绿色通道的色值与该目标像素的蓝色通道的色值的比值,目标像素的第二坐标的值为该目标像素的绿色通道的色值与该目标像素的红色通道的色值的比值的情况下,该色温曲线的生成过程包括:

首先,针对预定色温值集合中的每个色温值,采用该色温值为预先确定的标准色卡中的每个标准色卡分别拍摄预定数量张图片。

然后,计算拍摄得到的图片中的像素点的第一坐标的值和第二坐标的值。

其中,像素点的第一坐标的值为该像素点的绿色通道的色值均值与蓝色通道的色值均值的比值;像素点的第二坐标的值为该像素点的绿色通道的色值均值与红色通道的色值均值的比值;像素点的红色通道的色值均值为:同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的红色通道的色值的平均值;像素点的绿色通道的色值均值为:同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的绿色通道的色值的平均值;像素点的蓝色通道的色值均值为:同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的蓝色通道的色值的平均值。

最后,基于计算得到的像素点的第一坐标的值和第二坐标的值,生成预定色温曲线。

作为本公开的图像的白平衡处理方法的一个实施例的应用场景,该图像的白平衡处理方法可以应用于VR(Virtual Reality,虚拟现实)看房场景中。通常,要完成在线VR看房需要涉及到整合应用多种技术,而最后呈现给用户的看这一环,必然离不开对照片的处理(例如ISP处理)。虽然相机、手机等设备已经普及,也涉及到各种相关的照片处理技术,但对于VR拍房定制化设备存在各种挑战。首先,拍房设备是高度集成各种传感器设备的定制化硬件,只能自主研发。其次,这种设备通常无法达到手机那样大的出货量,因此,很难得到成熟的ISP厂商的支持,所以,同时需要自建ISP能力。最后,由于仅限于拍房的特殊场景,ISP处理上也有别于其他ISP厂商的处理方法。一般的白平衡算法在自然场景中具有较高的成功率,但由于室内环境以其丰富的色彩表现,复杂的光源环境,大面积单色的场景等等特点,给白平衡带来了很大的挑战。而且由于ISP处理过程中各个环节呈不同程度的耦合效应,在复杂的室内环境拍摄条件下,这种相互影响,相互耦合的效应被叠加放大。另外对于全景相机拍摄的室内图片,还有边界数据畸变对白平衡的影响。

而本公开由于可以提高图像白平衡处理的准确性和鲁棒性,因而,适合应用于VR看房场景中,例如,可以直接应用到室内拍照场景的ISP处理流程中。

具体而言,可以首先采用如上所述的方法生成色温曲线,也即上述预定色温曲线。。

例如,可以分别拍摄色温为2850、3100、3350、3600、3850、4100、4350、4600、4850、5000、5250、5500、5750、6000、6250、6500的标准24色卡,以及标准白色卡各10张。然后,分别计算10张图像中的像素的三通道的色值的平均值,以减少噪声影响,最终生成标定数据。其中,要求标定场景除了色温有变化外,包括色卡的位置等均不能有变化,保证变量的唯一。

然后,根据24色卡选择标定数据图片中的白色灰色区域位置。例如,可以选取24色卡左下角的3种灰色各自的中间80%区域作为计算白点的范围。

之后,对所有标定数据分别计算所选区域的RGB三通道数据的平均值,得到红色通道的色值平均值RMean、绿色通道的色值平均值GMean和蓝色通道的色值平均值BMean,并计算色坐标(x,y)。其中,x=BMean/GMean,y=RMean/GMean。

最后,利用计算所得点的坐标,得到最终的色温标定曲线。

下面进入图像的白平衡处理过程:

首先,通过腐蚀操作,将全景相机边界数据对应的图像位置数据置为0,即消除外边界对白平衡处理的影响。其中,对于原始的标定边界像素已经二值化处理,仅包括0与255,有效像素可以为255,无效像素可以为0。之后,利用KSize为71的滤波核进行腐蚀操作,获得腐蚀后图像。

然后,进行自动曝光处理。

这里,由于腐蚀后图像虽然具备高动态范围,但是大部分数据的数值(例如RGB三通道的色值)较低,不利于后续白平衡等操作,所以这里需要先将该图片经过自动曝光,提升大部分数据的数值,使得后续算法能处理得更准确。

其中,可以采用如上所述的方法确定用于对待处理图像进行曝光处理的曝光倍率,此处不再赘述。在确定曝光倍率进行过曝光处理后,可以得到曝光后图像。

之后,进行图像划分,图像区域集合,去除图像区域集合中有效数据小于阈值的图像区域。这里,可以针对不同的原始图像的大小,来决定划分的块数。例如,对于2774*3708大小的图像,可以将整张图像分成9张小图片,即行列数均为原数据的1/3。

针对每张图像区域,如发现有效数据(即通道数值不是全0的像素点)数量小于单张图像区域总像素的一半,则不计算该张图像区域的目标像素。

随后,可以利用GrayIndex或其他白平衡算法计算剩余的图像区域的目标像素。

这里运用算法计算之前,可以先除去原始图像中单通道数值超过245的过亮数据点,以及三通道的色值加和数值小于10的过暗数据点,避免暗部噪声以及过亮非线性区域对白平衡的影响。

接下来,计算以上保留的每个目标像素的B/G,R/G分别作为x

目标像素(R,G,B)的红色通道的色值R、绿色通道的色值G和蓝色通道的色值B,可以采用如上所述的公式确定,在此不再赘述:

最后,对图片进行白平衡处理。

I’=I*invRGB

其中,I’表征白平衡处理后图像,I表征原始图像,*表征卷积操作,

需要说明的是,除上面所记载的内容外,本公开实施例还可以包括与图1对应的实施例相同或类似的特征、效果,在此不再赘述。

从图3中可以看出,本实施例中的图像的白平衡处理方法的流程300中,结合腐蚀操作、曝光处理以及图像划分来实现图像的白平衡处理,从而可以去除边界数据、非线性数据以及暗部噪声对白平衡处理的影响,此外,利用图像划分的方案,可以使白平衡处理后的图像中的目标像素更鲁棒,更准确。

下面请进一步参考图5,作为对上述各图所示方法的实现,本公开提供了一种图像的白平衡处理装置的一个实施例,该装置实施例与图1所示的方法实施例相对应,除下面所记载的特征外,该装置实施例还可以包括与图1所示的方法实施例相同或相应的特征,以及产生与图1所示的方法实施例相同或相应的效果。该装置具体可以应用于各种电子设备中。

如图5所示,本实施例的图像的白平衡处理装置500包括:获取单元501,被配置成获取待处理图像;确定单元502,被配置成基于与待处理图像相对应的灰度图像,确定用于对待处理图像进行曝光处理的曝光倍率;第一生成单元503,被配置成采用曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像;处理单元504,被配置成基于第一曝光后图像,对待处理图像进行白平衡处理,生成白平衡处理后图像。

在本实施例中,图像的白平衡处理装置500的获取单元501可以获取待处理图像。

在本实施例中,上述确定单元502可以基于与获取单元501获取的待处理图像相对应的灰度图像,确定用于对待处理图像进行曝光处理的曝光倍率。

在本实施例中,上述第一生成单元503可以采用确定单元502确定出的曝光倍率,对获取单元501获取的待处理图像进行曝光处理,生成第一曝光后图像。

在本实施例中,上述处理单元504可以基于第一生成单元503生成的第一曝光后图像,对获取单元501获取的待处理图像进行白平衡处理,生成白平衡处理后图像。

在本实施例的一些可选的实现方式中,上述确定单元502包括:

第一选取子单元(图中未示出),被配置成针对预先确定的曝光倍率集合中的曝光倍率,按照从小到大的顺序,依次选取曝光倍率,以及基于所选取的曝光倍率执行如下第一曝光倍率确定操作:

采用所选取的曝光倍率对待处理图像进行曝光处理,生成待处理图像针对该曝光倍率的第二曝光后图像;

将待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像,生成待处理图像针对该曝光倍率的灰度图像;

确定待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值是否大于或等于预设亮度阈值;

响应于待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值大于或等于预设亮度阈值,将所采用的该曝光倍率作为用于对待处理图像进行曝光处理的曝光倍率。

在本实施例的一些可选的实现方式中,该装置500还包括:

第一选取单元(图中未示出),被配置成响应于待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值小于预设亮度阈值,继续按照从小到大的顺序,从曝光倍率集合中重新选取曝光倍率,以及基于重新选取的曝光倍率执行第一曝光倍率确定操作。

在本实施例的一些可选的实现方式中,上述确定单元502包括:

第二选取子单元(图中未示出),被配置成从预先确定的曝光倍率区间中选取曝光倍率,以及基于所选取的曝光倍率执行如下第二曝光倍率确定操作:

采用所选取的曝光倍率对待处理图像进行曝光处理,生成待处理图像针对该曝光倍率的第二曝光后图像;

将待处理图像针对该曝光倍率的第二曝光后图像转换成灰度图像,生成待处理图像针对该曝光倍率的灰度图像;

确定待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值是否大于或等于预设亮度阈值;

响应于待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值大于或等于预设亮度阈值,将所采用的该曝光倍率作为用于对待处理图像进行曝光处理的曝光倍率。

在本实施例的一些可选的实现方式中,该装置500还包括:

第二选取单元(图中未示出),被配置成响应于待处理图像针对该曝光倍率的灰度图像中的像素点的亮度均值小于预设亮度阈值,从曝光倍率区间中重新选取未选取过的曝光倍率,以及基于重新选取的曝光倍率执行第二曝光倍率确定操作。

在本实施例的一些可选的实现方式中,处理单元504包括:

划分子单元(图中未示出),被配置成基于待处理图像的图像大小,对第一曝光后图像进行图像划分,得到图像区域集合;

生成子单元(图中未示出),被配置成对图像区域集合中的图像区域中的目标像素,进行白平衡处理,生成白平衡处理后图像。其中,目标像素为待进行白平衡处理的像素。

在本实施例的一些可选的实现方式中,获取单元501包括:

获取子单元(图中未示出),被配置成获取原始图像;

腐蚀子单元(图中未示出),被配置成对所述原始图像的图像掩膜进行腐蚀操作,得到腐蚀后图像,以及将所述原始图像中与所述腐蚀后图像相对应的图像区域作为待处理图像。

在本实施例的一些可选的实现方式中,腐蚀子单元还被配置成:

将待处理图像中的图像像素,作为有效像素;以及

确定子单元包括:

第一确定模块(图中未示出),被配置成从图像区域集合中,确定至少一个目标图像区域,其中,目标图像区域中的全部像素的数量与预设百分比的乘积,小于或等于该目标图像区域中的有效像素的数量;

第二确定模块(图中未示出),被配置成从所确定的目标图像区域中,确定用于进行白平衡处理的目标像素。

在本实施例的一些可选的实现方式中,第二确定模块包括:

确定子模块(图中未示出),被配置成将所确定的目标图像区域中,符合预设条件的像素,确定为用于进行白平衡处理的目标像素;

其中,预设条件包括:原始图像中与该像素相对应的像素的单通道数值大于第一预设阈值,并且,待处理图像中与该像素相对应的像素的三通道的色值之和小于第二预设阈值。

在本实施例的一些可选的实现方式中,生成子单元包括:

第三确定模块(图中未示出),被配置成针对所确定的目标像素中的每个目标像素,基于该目标像素的三通道的色值,确定该目标像素的第一坐标的值和第二坐标的值;

计算模块(图中未示出),被配置成基于该目标像素的第一坐标的值和第二坐标的值,计算在预设坐标系中,该目标像素到预定色温曲线的距离,其中,预设坐标系包括第一坐标和第二坐标,预定色温曲线表征第一坐标的值和第二坐标的值之间的对应关系;

生成模块(图中未示出),被配置成基于所确定的目标像素到预定色温曲线的距离,对待处理图像进行白平衡处理,生成白平衡处理后图像。

在本实施例的一些可选的实现方式中,生成模块包括:

第一确定子模块(图中未示出),被配置成基于所确定的各个目标像素到预定色温曲线的距离,确定所确定的各个目标像素对应的权重;

第二确定子模块(图中未示出),被配置成基于所确定的各个目标像素对应的权重,确定目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值;

生成子模块(图中未示出),被配置成基于目标像素的红色通道的色值、绿色通道的色值和蓝色通道的色值,以及待处理图像,生成白平衡处理后图像。

在本实施例的一些可选的实现方式中,目标像素的第一坐标的值为该目标像素的蓝色通道的色值与该目标像素的绿色通道的色值的比值,目标像素的第二坐标的值为该目标像素的红色通道的色值与该目标像素的绿色通道的色值的比值;以及

该装置500还包括:

拍摄单元(图中未示出),被配置成针对预定色温值集合中的每个色温值,采用该色温值为预先确定的标准色卡中的每个标准色卡分别拍摄预定数量张图片;

计算单元(图中未示出),被配置成计算拍摄得到的图片中的像素点的第一坐标的值和第二坐标的值;其中,像素点的第一坐标的值为该像素点的蓝色通道的色值均值与绿色通道的色值均值的比值;像素点的第二坐标的值为该像素点的红色通道的色值均值与绿色通道的色值均值的比值;像素点的红色通道的色值均值为:同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的红色通道的色值的平均值;像素点的绿色通道的色值均值为:同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的绿色通道的色值的平均值;像素点的蓝色通道的色值均值为:同一色温值下同一标准色卡的预定数量张图片中与该像素相对应的各个像素点的蓝色通道的色值的平均值;

第二生成单元(图中未示出),被配置成基于计算得到的像素点的第一坐标的值和第二坐标的值,生成预定色温曲线。

本公开的上述实施例提供的图像的白平衡处理装置中,获取单元501可以获取待处理图像,然后,确定单元502可以基于与待处理图像相对应的灰度图像,确定用于对待处理图像进行曝光处理的曝光倍率,第一生成单元503可以采用曝光倍率,对待处理图像进行曝光处理,生成第一曝光后图像,最后,处理单元504可以基于第一曝光后图像,对待处理图像进行白平衡处理,生成白平衡处理后图像。本公开实施例可以基于与待处理图像相对应的灰度图像来确定曝光倍率,并采用该曝光倍率对待处理图像进行曝光处理得到的曝光后图像对待处理图像进行白平衡处理,从而可以针对不同的待处理图像,确定出不同的用于对待处理图像进行曝光处理的曝光倍率,进而基于曝光后图像对待处理图像进行白平衡处理,由此,提高了图像白平衡处理的准确性。

下面,参考图6来描述根据本公开实施例的电子设备。该电子设备可以是第一设备和第二设备中的任一个或两者、或与它们独立的单机设备,该单机设备可以与第一设备和第二设备进行通信,以从它们接收所采集到的输入信号。

图6图示了根据本公开实施例的电子设备的框图。

如图6所示,电子设备6包括一个或多个处理器601和存储器602。

处理器601可以是中央处理单元(CPU)或者具有数据处理能力和/或指令执行能力的其他形式的处理单元,并且可以控制电子设备中的其他组件以执行期望的功能。

存储器602可以包括一个或多个计算机程序产品,所述计算机程序产品可以包括各种形式的计算机可读存储介质,例如易失性存储器和/或非易失性存储器。所述易失性存储器例如可以包括随机存取存储器(RAM)和/或高速缓冲存储器(cache)等。所述非易失性存储器例如可以包括只读存储器(ROM)、硬盘、闪存等。在所述计算机可读存储介质上可以存储一个或多个计算机程序指令,处理器601可以运行所述程序指令,以实现上文所述的本公开的各个实施例的图像的白平衡处理方法以及/或者其他期望的功能。在所述计算机可读存储介质中还可以存储诸如输入信号、信号分量、噪声分量等各种内容。

在一个示例中,电子设备还可以包括:输入装置603和输出装置604,这些组件通过总线系统和/或其他形式的连接机构(未示出)互连。

例如,在该电子设备是第一设备或第二设备时,该输入装置603可以是上述的麦克风或麦克风阵列,用于捕捉声源的输入信号。在该电子设备是单机设备时,该输入装置603可以是通信网络连接器,用于从第一设备和第二设备接收所采集的输入信号。

此外,该输入装置603还可以包括例如键盘、鼠标等等。该输出装置604可以向外部输出各种信息,包括确定出的距离信息、方向信息等。该输出装置604可以包括例如显示器、扬声器、打印机、以及通信网络及其所连接的远程输出设备等等。

当然,为了简化,图6中仅示出了该电子设备中与本公开有关的组件中的一些,省略了诸如总线、输入/输出接口等等的组件。除此之外,根据具体应用情况,电子设备还可以包括任何其他适当的组件。

除了上述方法和设备以外,本公开的实施例还可以是计算机程序产品,其包括计算机程序指令,所述计算机程序指令在被处理器运行时使得所述处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的图像的白平衡处理方法中的步骤。

所述计算机程序产品可以以一种或多种程序设计语言的任意组合来编写用于执行本公开实施例操作的程序代码,所述程序设计语言包括面向对象的程序设计语言,诸如Java、C++等,还包括常规的过程式程序设计语言,诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。

所述计算机可读存储介质可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以包括但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。

另外,本公开的实施例还可以是计算机程序,该计算机程序可以包括计算机可读代码。当上述计算机可读代码在设备上运行时,该设备中的处理器执行本说明书上述“示例性方法”部分中描述的根据本公开各种实施例的图像的白平衡处理方法中的步骤。

以上结合具体实施例描述了本公开的基本原理,但是,需要指出的是,在本公开中提及的优点、优势、效果等仅是示例而非限制,不能认为这些优点、优势、效果等是本公开的各个实施例必须具备的。另外,上述公开的具体细节仅是为了示例的作用和便于理解的作用,而非限制,上述细节并不限制本公开为必须采用上述具体的细节来实现。

本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。

本说明书中各个实施例均采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似的部分相互参见即可。对于系统实施例而言,由于其与方法实施例基本对应,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。

可能以许多方式来实现本公开的方法和装置。例如,可通过软件、硬件、固件或者软件、硬件、固件的任何组合来实现本公开的方法和装置。用于所述方法的步骤的上述顺序仅是为了进行说明,本公开的方法的步骤不限于以上具体描述的顺序,除非以其它方式特别说明。此外,在一些实施例中,还可将本公开实施为记录在记录介质中的程序,这些程序包括用于实现根据本公开的方法的机器可读指令。因而,本公开还覆盖存储用于执行根据本公开的方法的程序的记录介质。

本公开的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本公开限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本公开的原理和实际应用,并且使本领域的普通技术人员能够理解本公开从而设计适于特定用途的带有各种修改的各种实施例。

相关技术
  • 图像的白平衡处理方法、装置、电子设备和存储介质
  • 图像的白平衡处理方法、装置、电子设备和存储介质
技术分类

06120112934916