白平衡处理方法及装置、电子装置和计算机可读存储介质与流程

文档序号:13559749阅读:111来源:国知局
白平衡处理方法及装置、电子装置和计算机可读存储介质与流程

本发明涉及图像处理技术领域,特别涉及一种白平衡处理方法、白平衡处理装置、电子装置和计算机可读存储介质。



背景技术:

相关技术的白平衡技术可以通过检测图像对应的场景的光源色温并根据场景的光源色温进行白平衡,然而,这种方式的白平衡技术在场景中不存在光源时,无法对图像进行准确地白平衡处理。



技术实现要素:

本发明的实施例提供了一种白平衡处理方法、白平衡处理装置、电子装置和计算机可读存储介质。

本发明实施方式的白平衡处理方法包括以下步骤:

处理图像以判断所述图像对应的场景中是否存在光源;

在所述场景中存在所述光源时,根据第一预设算法处理所述图像以获得所述场景的光源色温并根据所述光源色温对所述图像进行白平衡处理;和

在所述场景中不存在所述光源时,根据第二预设算法对所述图像进行白平衡处理。

本发明实施方式的白平衡处理装置包括:

第一处理模块,所述第一处理模块用于处理图像以判断所述图像对应的场景中是否存在光源;

第二处理模块,所述第二处理模块用于在所述场景中存在所述光源时,根据第一预设算法处理所述图像以获得所述场景的光源色温并根据所述光源色温对所述图像进行白平衡处理;和

第三处理模块,所述第三处理模块用于在所述场景中不存在所述光源时,根据第二预设算法对所述图像进行白平衡处理。

本发明实施方式的电子装置包括一个或多个处理器、存储器和一个或多个程序。其中所述一个或多个程序被存储在所述存储器中,并且被配置成由所述一个或多个处理器执行,所述程序包括用于执行上述的白平衡处理方法的指令。

本发明实施方式的计算机可读存储介质包括与电子装置结合使用的计算机程序,所述计算机程序可被处理器执行以完成上述的白平衡处理方法。

本发明实施方式的白平衡处理方法及装置、电子装置和计算机可读存储介质在场景中不存在光源时,根据不同于第一预设算法的第二预设算法对图像进行白平衡处理,从而使得白平衡处理后的图像的颜色更加真实。

本发明的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:

图1是本发明某些实施方式的白平衡处理方法的流程示意图。

图2是本发明某些实施方式的白平衡处理装置的模块示意图。

图3是本发明某些实施方式的电子装置的平面示意图。

图4是本发明某些实施方式的白平衡处理方法的流程示意图。

图5是本发明某些实施方式的白平衡处理装置的模块示意图。

图6是本发明某些实施方式的白平衡处理方法的流程示意图。

图7是本发明某些实施方式的白平衡处理装置的模块示意图。

图8是本发明某些实施方式的白平衡处理的场景示意图。

图9是本发明某些实施方式的白平衡处理方法的流程示意图。

图10是本发明某些实施方式的第二处理模块的模块示意图。

图11是本发明某些实施方式的白平衡处理的场景示意图。

图12是本发明某些实施方式的色温曲线示意图。

图13是本发明某些实施方式的白平衡处理方法的流程示意图。

图14是本发明某些实施方式的第三处理模块的模块示意图。

图15是本发明某些实施方式的电子装置的模块示意图。

图16是本发明某些实施方式的电子装置和计算机可读存储介质的连接示意图。

具体实施方式

下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本发明,而不能理解为对本发明的限制。

请参阅图1,本发明方式的白平衡处理方法包括以下步骤:

s110:处理图像以判断图像对应的场景中是否存在光源;

s120:在场景中存在光源时,根据第一预设算法处理图像以获得场景的光源色温并根据光源色温对图像进行白平衡处理;和

s130:在场景中不存在光源时,根据第二预设算法对图像进行白平衡处理,第二预设算法不同于第一预设算法。

请参阅图2,本发明方式的白平衡处理装置100包括第一处理模块110、第二处理模块120和第三处理模块130。第一处理模块110用于处理图像以判断图像对应的场景中是否存在光源。第二处理模块120用于在场景中存在光源时,根据第一预设算法处理图像以获得场景的光源色温并根据光源色温对图像进行白平衡处理。第三处理模块130用于在场景中不存在光源时,根据第二预设算法对图像进行白平衡处理,第二预设算法不同于第一预设算法。

本发明实施方式的白平衡处理方法可以由本发明所述方式的白平衡处理装置100实现,其中,步骤s110可以由第一处理模块110实现,步骤s120可以由第二处理模块120实现,步骤s130可以由第三处理模块130实现。

请参阅图3,本发明所述方式的白平衡处理装置100可以应用于本发明实施方式的电子装置1000中,也即是说,本发明实施方式的电子装置1000可以包括本发明实施方式的白平衡处理装置100。

在某些实施方式中,电子装置1000包括手机、平板电脑、笔记本电脑、智能手环、智能手表、智能头盔、智能眼镜等。

本发明实施方式的白平衡处理方法、白平衡处理装置100和电子装置1000在场景中不存在光源时,根据不同于第一预设算法的第二预设算法对图像进行白平衡处理,从而使得白平衡处理后的图像的颜色更加真实。

在某些实施方式中,第一预设算法是指通过检测光源色温对图像进行白平衡的算法,例如镜面反射法等。第二预设算法是指对图像进行白平衡过程中不需要检测光源色温的算法,例如灰色世界法、动态阈值算法等。

在某些实施方式中,电子装置1000内预存有光源色温和白平衡参数的对应关系,根据光源颜色获得光源色温后,根据光源色温在光源色温和白平衡参数的对应关系中可以查找获得相应的白平衡参数,从而可以根据白平衡参数对图像进行白平衡处理。

请参阅图4,在某些实施方式中,步骤s110包括以下步骤:

s112:将图像分成多个区域;

s114:根据每个区域的直方图判断区域是否为包括光源的目标区域;

s116:在存在至少一个目标区域时,确定场景中存在光源;和

s118:在不存在目标区域时,确定场景中不存在光源。

请参阅图5,在某些实施方式中,第一处理模块110包括划分单元112、判断单元114、第一确定单元116和第二确定单元118。划分单元112用于将图像分成多个区域。判断单元114用于根据每个区域的直方图判断区域是否为包括光源的目标区域。第一确定单元116用于在存在至少一个目标区域时,确定场景中存在光源。第二确定单元118用于在不存在目标区域时,确定场景中不存在光源。

也即是说,步骤s112可以由划分单元112实现,步骤s114可以由判断单元114实现,步骤s116可以由第一确定单元116实现,步骤s118可以由第二确定单元118实现。

如此,可以通过每个区域的直方图判断场景中是否存在光源。

具体地,可以将图像分成多个区域,例如将图像分成64*48个区域。根据每个区域的直方图可以判断每个区域中像素值超过预设像素值p的像素的占比是否超过预设比例,预设像素值p例如是239,预设比例例如是5%,即判断每个区域中像素值超过239的像素的占比是否超过5%,像素值超过预设像素值p的像素的占比超过预设比例的对应区域为包括光源的目标区域。判断图像中是否存在目标区域,在图像中存在目标区域时,说明图像对应的场景中存在光源;在图像中不存在目标区域时,说明图像对应的场景中不存在光源。

请参阅图6,在某些实施方式中,步骤s110后包括以下步骤:

s140:在场景中存在光源时,判断是否存在相邻的多个目标区域;

s150:在存在相邻的多个目标区域时将相邻的多个目标区域拼接为光源;和

s160:在不存在相邻的多个目标区域时将目标区域确定为光源。

请参阅图7,在某些实施方式中,白平衡处理装置100包括判断模块140、拼接模块150和确定模块160。判断模块140用于在场景中存在光源时,判断是否存在相邻的多个目标区域。拼接模块150用于在存在相邻的多个目标区域时将相邻的多个目标区域拼接为光源。确定模块160用于在不存在相邻的多个目标区域时将目标区域确定为光源。

如此,可以确定图像中的光源位置。

在图像中存在目标区域时,判断是否存在相邻的多个目标区域,在存在相邻的多个目标区域时,相邻的多个目标区域在场景中属于同一个光源,因此可以将相邻的多个目标区域拼接为光源;在不存在相邻的多个目标区域时,目标区域即可认为是光源。因此,通过目标区域可以确定图像中的光源位置。

请参阅图8,在一个例子中,场景中存在光源,根据每个区域的直方图可以判断区域a、区域b、区域c和区域d是包括光源的目标区域,例如从区域a的直方图中,可以判断出区域a中像素值超过预设像素值p的像素的占比超过了预设比例,由于区域a、区域b、区域c和区域d是相邻的多个目标区域,因此可以将区域a、区域b、区域c和区域d拼接起来,从而获得较为完整的光源。

请参阅图9和图11,在某些实施方式中,步骤s120包括以下步骤:

s122:根据光源的中心o沿径向向外的亮度分布确定高亮区域h和中亮区域m;

s124:将高亮区域h的基色通道像素平均值减去中亮区域m的基色通道像素平均值以确定场景的光源颜色;和

s126:根据光源颜色确定光源色温。

请参阅图10和图11,在某些实施方式中,第二处理模块120包括第三确定单元122、第一处理单元124和第四确定单元126。第三确定单元122用于根据光源的中心o沿径向向外的亮度分布确定高亮区域h和中亮区域m。第一处理单元124用于将高亮区域h的基色通道像素平均值减去中亮区域m的基色通道像素平均值以确定场景的光源颜色。第四确定单元126根据光源颜色确定光源色温。

也即是说,步骤s122可以由第三确定单元122实现,步骤s124可以由第一处理单元124实现,步骤s126可以由第四确定单元126实现。

如此,可以通过高亮区域h和中亮区域m确定光源颜色。

请再次参阅图11,在图像中的光源位置确定后,可以理解,图像中的光源的中心区域o为过曝区域,一般为大白斑,不包含光源颜色的信息。光源颜色可以通过高亮区域h和中亮区域m的基色通道像素平均值确定。高亮区域h可以是指光源的中心沿径向向外的亮度值处于第一亮度范围l1的像素所构成的区域,第一亮度范围l1例如为[200,239)。中亮区域m可以是指光源的中心沿径向向外的亮度值处于第二亮度范围l2的像素所构成的区域,第二亮度范围l2例如为[150,200)。需要说明的是,第一亮度范围l1和第二亮度范围l2的具体取值可以根据光源的中心o沿径向向外的亮度分布确定,例如光源的亮度衰减得比较快,可以增大第一亮度范围l1和第二亮度范围l2;例如光源的亮度衰减得比较慢,可以减小第一亮度范围l1和第二亮度范围l2。

在某些实施方式中,基色通道是指颜色通道,例如包括r(红色)通道、gr(绿红)通道、gb(绿蓝)通道、b(蓝色)通道中的至少一个,在某些实施方式中,可以通过gr通道的像素值和gb通道的像素值获得g(绿色)通道的像素值。像素平均值可以是指多个像素值的算术平均值,多个像素值可以是高亮区域的所有像素的像素值或中亮区域的所有像素的像素值。在一个例子中,高亮区域的各个基色通道像素平均值(ravg,gavg,bavg)为(200,210,220),中亮区域的各个基色通道像素平均值(ravg,gavg,bavg)为(160,180,190),则光源颜色的通道(r,g,b)为(200-160,210-180,220-190),即(40,30,30)。

在某些实施方式中,根据光源颜色确定场景的光源色温,具体可以为:根据光源颜色、光源颜色和光源色温的对应关系确定光源色温。其中,光源颜色和光源色温的对应关系可以是映射表和/或色温曲线。

请参阅图12,在一个实施例中,可以在色温分别为3000k、4000k、5000k、6000k等标准灯箱下,获取图像并通过计算得到在上述不同色温下对应的光源颜色,由此可以形成光源颜色和光源色温的色温曲线,并可以将该色温曲线保存在电子装置1000中。通过光源颜色在色温曲线中查找即可获得对应的光源色温。

请参阅图13,在某些实施方式中,步骤s130包括以下步骤:

s132:计算图像的基色通道像素平均值;

s134:根据图像的基色通道像素平均值确定图像的基色通道调整值;和

s136:根据基色通道调整值对图像进行白平衡处理。

请参阅图14,在某些实施方式中,第三处理模块130包括计算单元132、第五确定单元134和第二处理单元136。计算单元132用于计算图像的基色通道像素平均值。第五确定单元134用于根据图像的基色通道像素平均值确定图像的基色通道调整值。第二处理单元136用于根据基色通道调整值对图像进行白平衡处理。

如此,可以通过图像的基色通道像素平均值对图像进行白平衡处理。

具体地,首先,计算整个图像所有像素的像素值的算术平均值以获得各个基色通道像素平均值,例如整个图像的基色通道像素平均值(ravg,gavg,bavg)为(50,100,150)。其次,根据图像的基色通道像素平均值可以确定图像的基色通道调整值,可以理解为,根据整个图像的基色通道像素平均值确定调整基准值k,例如k=(ravg+gavg+bavg)/3=200/3,根据调整基准值k和各个基色通道像素平均值确定图像各个基色通道调整值,例如r通道调整值为k/ravg=(200/3)/50=4/3,g通道调整值为k/gavg=(200/3)/100=2/3,b通道调整值为k/bavg=(200/3)/50=4/3。最后,根据基色通道调整值对图像进行白平衡处理,可以理解为,将图像中的每个像素的各个基色通道乘以对应的基色通道调整值以获得调整后的像素,合并调整后的各个像素即可获得白平衡处理后的图像,例如图像中一个像素的基色通道像素值为(100,200,200),根据基色通道调整值对图像进行白平衡处理后该像素的基色通道像素值为(100*4/3,200*2/3,200*4/3)=(400/3,400/3,800/3)。

请参阅图15,本发明实施方式的电子装置1000包括一个或多个处理器200、存储器300和一个或多个程序。其中一个或多个程序被存储在存储器300中,并且被配置成由一个或多个处理器200执行。程序包括用于执行上述任意一项实施方式的白平衡处理方法的指令。

例如,程序包括用于执行以下步骤所述的白平衡处理方法的指令:

s110:处理图像以判断图像对应的场景中是否存在光源;

s120:在场景中存在光源时,根据第一预设算法处理图像以获得场景的光源色温并根据光源色温对图像进行白平衡处理;和

s130:在场景中不存在光源时,根据第二预设算法对图像进行白平衡处理,第二预设算法不同于第一预设算法。

再例如,程序还包括用于执行以下步骤所述的白平衡处理方法的指令:

s112:将图像分成多个区域;

s114:根据每个区域的直方图判断区域是否为包括光源的目标区域;

s116:在存在至少一个目标区域时,确定场景中存在光源;和

s118:在不存在目标区域时,确定场景中不存在光源。

请参阅图16,本发明实施方式的计算机可读存储介质8000包括与电子装置1000结合使用的计算机程序。计算机程序可被处理器200执行以完成上述任意一项实施方式的白平衡处理方法。

s110:处理图像以判断图像对应的场景中是否存在光源;

s120:在场景中存在光源时,根据第一预设算法处理图像以获得场景的光源色温并根据光源色温对图像进行白平衡处理;和

s130:在场景中不存在光源时,根据第二预设算法对图像进行白平衡处理,第二预设算法不同于第一预设算法。

再例如,计算机程序还可被处理器200执行以完成以下步骤所述的白平衡处理方法:

s112:将图像分成多个区域;

s114:根据每个区域的直方图判断区域是否为包括光源的目标区域;

s116:在存在至少一个目标区域时,确定场景中存在光源;和

s118:在不存在目标区域时,确定场景中不存在光源。

在本说明书的描述中,参考术语“一个实施例”、“一些实施例”、“示例”、“具体示例”、或“一些示例”等的描述意指结合该实施例或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施例或示例中。在本说明书中,对上述术语的示意性表述不必须针对的是相同的实施例或示例。而且,描述的具体特征、结构、材料或者特点可以在任一个或多个实施例或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。

此外,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。在本发明的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理器的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。

此外,在本发明各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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