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

文档序号:14186669阅读:147来源:国知局

本申请涉及图像处理技术领域,特别是涉及一种图像白平衡处理方法和装置、存储介质和电子设备。



背景技术:

摄像设备在拍摄同一色彩的对象时,在不同光线下,拍摄呈现出该对象的颜色不同。因此,需要对拍摄的图像进行白平衡处理,以解决拍摄对象色彩失真的问题。白平衡是描述显示器中红、绿、蓝三基色混合生成后白色精确度的一项指标。

传统白平衡的处理方法,需要在拍摄设备上专门开孔,来设置用于采集色温数据的传感器。如需要在手机的触摸屏上相关的位置开孔,或者在背壳上开孔,以设置一个单独的rgb-ir的传感器,采集环境中的色温数据。根据采集到的色温数据,对拍摄的图像进行白平衡处理,以减小图像中出现的色彩失真的问题。然而,由于传统方法中,用于采集色温数据的传感器存在检测到的色温数据不可靠的问题,从而使得拍摄对象的色彩还原不够准确。



技术实现要素:

本申请实施例提供一种图像白平衡处理方法和装置、存储介质和电子设备,可以提高拍摄对象的色彩还原的准确度。

一种图像白平衡处理方法,包括:

获取光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集;

根据所述第一像素数据集计算出第一白平衡数据;

获取光线不经过所述过滤器而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集;

根据所述第二像素数据集计算出第二白平衡数据;

根据所述第一白平衡数据和所述第二白平衡数据对所述第一像素数据集进行白平衡处理,生成白平衡处理后的图像。

一种图像白平衡处理装置,所述装置包括:

第一像素数据集获取模块,用于获取光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集;

第一白平衡数据计算模块,用于根据所述第一像素数据集计算出第一白平衡数据;

第二像素数据集获取模块,用于获取光线不经过所述过滤器而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集;

第二白平衡数据计算模块,用于根据所述第二像素数据集计算出第二白平衡数据;

白平衡处理模块,用于根据所述第一白平衡数据和所述第二白平衡数据对所述第一像素数据集进行白平衡处理,生成白平衡处理后的图像。

一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述各实施例所提供的图像白平衡处理方法的步骤。

一种电子设备,包括:摄像头、与所述摄像头电连接的存储器和处理器;

所述摄像头包括过滤器、图像传感器、覆盖于所述图像传感器上的图像传感器以及覆盖于所述图像传感器上的色温检测元件;

所述存储器上存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器实现上述各实施例所提供的图像白平衡处理方法的步骤。

上述图像白平衡处理方法和装置、存储介质和电子设备,通过在图像传感器上设置色温检测元件,并将色温检测元件覆盖在未被过滤器所覆盖的区域。利用图像传感器与色温检测元件和过滤器之间的位置关系,可获取光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集;并获取光线不经过所述过滤器而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集;从而可无需在电子设备的显示屏或背壳等部位专门开孔来设置色温传感器,即可实现对第二像素数据的采集,降低了电子设备的制造成本。同时,由于直接将色温检测元件覆盖在图像传感器上,还可消除光线入射到色温检测元件和入射到图像传感器之间的入射角度的不一致的情况,可进一步提高检测出的第二像素数据的准确性,因而可提高对拍摄对象的色彩还原的准确度。

附图说明

为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为一个实施例中图像白平衡处理方法的应用场景图;

图2为一个实施例中电子设备的部分结构的框图;

图3为一个实施例中图像白平衡处理方法的流程图;

图4为一个实施例中像素阵列的示意图;

图5a为一个实施例中图像的示意图;

图5b为一个实施例中图像所处环境的示意图;

图6为另一个实施例中图像白平衡处理方法的流程图;

图7为一个实施例中图像白平衡处理装置的结构框图;

图8为另一个实施例中图像白平衡处理装置的结构框图;

图9为一个实施例中手机的部分结构的框图。

具体实施方式

为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。

可以理解,本申请所使用的术语“第一”、“第二”等可在本文中用于描述各种元件,但这些元件不受这些术语限制。这些术语仅用于将第一个元件与另一个元件区分。举例来说,在不脱离本申请的范围的情况下,可以将第一像素数据称为第二像素数据,且类似地,可将第二像素数据称为第一像素数据。第一像素数据和第二像素数据两者都是像素数据,但其不是同一像素数据。

图1为一个实施例中图像白平衡处理方法的应用场景图。如图1所示,电子设备10可通过摄像头102对拍摄对象20进行拍摄。其中,摄像头102中可包括第一摄像头及第二摄像头。摄像头102中设置有图像传感器。电子设备可通过该图像传感器得到拍摄对象20的图像数据,图像数据中包含用于成像显示的第一像素数据集和用于反映色温的第二像素数据集。电子设备可进一步根据第一像素数据集计算出第一白平衡数据,根据第二像素数据集计算出第二白平衡数据,然后他根据该第一白平衡数据和第二白平衡数据对第一像素数据集进行白平衡处理,生成白平衡处理后的图像,实现了对拍摄对象20的拍摄以及对拍摄图像的白平衡处理。

图2为一个实施例中电子设备的内部结构示意图。如图2所示,该电子设备包括通过系统总线连接的处理器、存储器、摄像头和显示器。其中,该处理器用于提供计算和控制能力,支撑整个电子设备的运行。存储器用于存储数据、程序等,存储器上存储至少一个计算机程序,该计算机程序可被处理器执行,以实现本申请实施例中提供的适用于电子设备的图像白平衡处理方法。摄像头用于拍摄场景中的拍摄对象,显示器用于显示相应的成像信息等。存储器可包括磁碟、光盘、只读存储记忆体(read-onlymemory,rom)等非易失性存储介质,或随机存储记忆体(random-access-memory,ram)等。例如,在一个实施例中,存储器包括非易失性存储介质及内存储器。非易失性存储介质存储有操作系统和计算机程序。该计算机程序可被处理器所执行,以用于实现以下各个实施例所提供的一种图像白平衡处理方法。内存储器为非易失性存储介质中的操作系统计算机程序提供高速缓存的运行环境。该电子设备可以是手机、平板电脑或者个人数字助理或穿戴式设备等。

在一个实施例中,如图3所示,提供了一种图像白平衡处理方法。本实施例主要以该方法应用于如图1所示的电子设备为例进行举例说明,包括:

步骤302,获取光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集。

本实施例中,摄像头可内置于电子设备中,也可通过有线或无线方式外接于电子设备上。摄像头中包含图像传感器和过滤器。该图像传感器为用于产生拍摄对象的图像的数据的传感器。过滤器为用于过滤拍摄的环境信息中的红外信息或紫外信息等干扰因素的器件。可选的,图像传感器可包括被设置成二维矩阵排列的像素点而形成的像素阵列,通过该像素阵列生成的像素数据集可形成像素数据阵列。该像素数据集为由该像素阵列生成所有的像素数据的集合。过滤器可覆盖于该像素阵列上,但未全部覆盖该像素阵列,即部分覆盖该图像传感器。过滤器可包括红外过滤器或紫外过滤器等其中的一种或多种。其中,红外过滤器(ir-filter)为用于过滤拍摄环境中的红外光线的过滤器,紫外率光片(uv-filter)为用于过滤拍摄环境中的紫外光线的过滤器。

电子设备在开启拍摄状态时,外部光线可穿过镜头,经过该滤波器入射到图像传感器的面上,该图像传感器将该光线转换成电信号,再通过a/d转换等处理,生成该第一像素数据集。第一像素数据集中的每个第一像素数据为经过过滤器过滤后,生成的用于成像显示的数据。可选地,该第一像素数据可为红绿蓝rgb数据或者yuv数据等用于表示颜色的图像数据,第一像素数据集可为待进行白平衡处理的图像。

电子设备可通过该摄像头,获取采集到的第一像素数据集,第一像素为直接用于成像显示的数据,即电子设备可根据该第一像素数据集,在设备的显示器上显示对应的拍摄对象的图像。

步骤304,根据第一像素数据集计算出第一白平衡数据。

第一白平衡数据为根据第一像素数据集而计算出的白平衡数据,白平衡数据为用于进行图像白平衡处理时所需使用到的数据,比如可为颜色通道的增益。电子设备可根据第一像素数据集进行白平衡数据的计算,以得出对应的第一白平衡数据,该白平衡数据为根据第一像素数据集而得出的数据。第一像素数据集中包含拍摄对象所呈现出的视觉内容。

在一个实施例中,电子设备可预设有白平衡算法,该白平衡算法可包括灰度世界算法、完美反射算法、全局白平衡算法和局部白平衡法等其中的一种或多种。电子设备可选取其中一种算法,将第一像素数据集作为该白平衡算法的输入,并运行该白平衡算法,而得到相应的第一白平衡数据。

步骤306,获取光线不经过过滤器而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集。

本实施例中,色温是照明光学中用于定义光源颜色的一个物理量。假定某一黑体物质,能够将落在其上的所有热量吸收而没有损失,同时又能够将热量生成的能量全部以“光”的形式释放出来,它便会因受到热力的高低而呈现不同温度的颜色,简称色温。其单位用“k”(开尔文温度单位)表示。在不同的光线下,实际上是由于不同的光线对应的色温不同。因而在不同色温下,拍摄呈现出该对象的颜色不同。色温越高,光色越偏蓝;色温越低,光色越偏红。

图像传感器上还进一步覆盖了色温检测元件。色温检测元件为用于检测环境色温信息的器件,可为色温传感器。可选地,可为红外像素(irpixel)或者紫外像素(uvpixel)等。

电子设备在开启拍摄状态时,外部光线可穿过镜头,在未经过该滤波器而直接入射到图像传感器的面上覆盖的色温检测元件。电子设备可将入射到色温检测元件上的光线转换成电信号,再通过a/d转换等处理,生成相应的第二像素数据,该第二像素数据形成的集合即为第二像素数据集。由于未经过过滤器过滤而入射到色温检测元件上,因而该生成的第二像素数据可用于反映环境色温信息。可选地,第二像素数据可为红外数据或紫外数据中的一种或多种。红外数据可为表示红外强度或红外含量的数据;紫外数据可为表示紫外强度或紫外含量的数据。

在一个实施例中,像素数据集(包括第一像素集和第二像素集)可为像素数据阵列,该像素数据阵列可与该图像传感器形成的像素阵列对应,每一像素数据可作为该像素数据阵列上的一个元素。

在一个实施例中,摄像头中的色温检测元件覆盖于图像传感器上,未被过滤器覆盖的区域,该过滤器部分覆盖图像传感器。从入射光的入射方向来看,该图像传感器与过滤器和色温检测元件之间的位置关系为:由外部光线穿过镜头后,有部分光线未入射到过滤器而直接入射到图像传感器上覆盖的色温检测元件,即该部分光线直接投影到未被过滤器覆盖的图像传感器的区域。可选的,该部分光线可位于整个光线区域的中心区域或边缘区域等任意位置。

步骤308,根据第二像素数据集计算出第二白平衡数据。

可选地,第二白平衡数据是根据用于反映色温的第二像素数据集而计算出的白平衡数据。电子设备可根据第二像素数据集中体现出的色温信息与白平衡调节之间的关系,计算出第二白平衡数据。同样地,第二白平衡数据也可为颜色通道的增益。

步骤310,根据第一白平衡数据和第二白平衡数据对第一像素数据集进行白平衡处理,生成白平衡处理后的图像。

第一像素数据集所呈现在电子设备的显示器上的即为拍摄出来的图像。像素数据集以及呈现出的图像均由若干个像素点构成的,每个像素点可以由多个颜色通道构成,每个颜色通道表示一个颜色分量。例如,图像可以由rgb(红、绿、蓝三种颜色)三通道构成,也可以是由hsv(色调、饱和度和明度)三通道构成,还可以是由cmy(青、洋红或品红和黄三种颜色)三通道构成。

针对每个像素点上的每个颜色通道,电子设备可按照相应的第一白平衡数据和第二白平衡数据对对应的颜色通道的颜色值进行修正。从而实现对待处理图像的白平衡处理,使得修正后的颜色值更能反映出对应拍摄物体的真实色彩。

在一个实施例中,电子设备可将第一白平衡数据和第二白平衡数据进行加权求和,已得到综合白平衡数据,根据该综合白平衡数据对第一像素数据集进行白平衡处理,对第一像素数据集中的像素点上对应的颜色通道的颜色值进行修正,生成白平衡处理后的图像。

本申请实施例所提供的图像白平衡处理方法,通过在图像传感器上设置色温检测元件,并将色温检测元件覆盖在未被过滤器所覆盖的区域。利用图像传感器与色温检测元件和过滤器之间的位置关系,可获取光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集;并获取光线不经过过滤器而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集;从而可无需在电子设备的显示屏或背壳等部位专门开孔来设置色温传感器,即可实现对第二像素数据的采集,降低了电子设备的制造成本。同时,由于直接将色温检测元件覆盖在图像传感器上,还可消除光线入射到色温检测元件和入射到图像传感器之间的入射角度的不一致的情况,可进一步提高检测出的第二像素数据的准确性,且利用第一像素数据集来计算出第一白平衡数据,利用第二像素数据集来计算出第二白平衡数据,进而根据该第一白平衡数据和第二白平衡数据来对第一像素数据集进行白平衡数据,生成白平衡处理后的图像,可提高对拍摄对象的色彩还原的准确度。

在一个实施例中,过滤器覆盖于图像传感器的主体区域,色温检测元件覆盖于图像传感器上的非主体区域,使得光线入射到图像传感器而生成的像素数据集中,第二像素数据集包围第一像素数据集。

本实施例中,主体区域表示图像传感器中用于成像显示的像素阵列部分。参考如4所示,图4为一个实施例中像素阵列的示意图。其中,从入射光的入射方向来看,该像素阵列400上的中心区域410即为被过滤器所覆盖的区域,而除中心区域410之外的边缘区域可覆盖色温检测元件。

其中,该中心区域410即可为该图像传感器上的主体区域。通过将过滤器覆盖于图像传感器的主体区域,而在该图像传感器的非主图区域,比如图像传感器的边缘空余部分,覆盖对应的色温检测元件。可选地,可在色温传感器的边缘空余部分的空间上,嵌入上述的irpixel,用来进行环境色温的采集,而不影响主体区域的成像。

光线入射到图像传感器上对应的位置处,所形成的像素数据,可处于像素数据集中的对应位置。通过上述图像传感器与过滤器和色温检测元件之间的位置关系,从而使得光线入射到图像传感器而生成的像素数据集中,第二像素数据集包围第一像素数据集。

在一个实施例中,步骤306包括:获取光线经过过滤器的开孔而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集。

本实施例中,过滤器上还设置有一个或多个开孔,色温检测元件所覆盖的图像传感器的区域可为:该该开孔所入射的图像传感器上的区域。比如该位置为像素阵列400上的区域412。外部光线可穿过镜头,未经过该滤波器而直接入射到该像素阵列的边缘区域和/或区域412上。电子设备可获取经过过滤器的开孔而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集。

在一个实施例中,在步骤302之前,还包括:接收通过图像传感器检测到的、通过移动产业处理器接口mipi传输的图像数据;根据mipi传输的图像数据中设置的数据类型,确定图像数据中的第一像素数据集第二像素数据集。

本实施例中,摄像头在生成包含第一像素数据和第二像素数据的像素数据集时,可通过移动产业处理器接口(mobileindustryprocessorinterface,mipi)将该像素数据集传输给电子设备的处理器进行运算。在一个实施例中,在通过该mipi进行数据传输时,可设置每个像素数据的数据类型(datatype),根据该数据类型,可区分这些像素数据是第一像素数据还是第二像素数据。电子设备可通过处理器可接收由该图像传感器检测到的、通过mipi传输的像素数据集,根据针对每个像素数据设置的数据类型,确定对应像素数据是第一像素数据还是第二像素数据,进而确定该像素数据集中的第一像素数据集和第二像素数据集。

本实施例中,通过设置mipi,并针对传输的数据设置了对应的数据类型,从而可识别出第一像素数据和第二像素数据。

在一个实施例中,步骤302包括:获取摄像头在移动过程中,光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集;步骤306包括:获取摄像头在移动过程中,光线不经过过滤器而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集。

电子设备可在进行图像拍摄的过程中,来主动或被动地移动摄像头,使得第一像素数据集和第二像素数据集中包含更多的环境信息,如包含后续生成的图像的中的场景和该场景的周边的信息。其中,第一像素数据集中包含的环境信息为拍摄场景及其周边场景中成像出的信息,第二像素数据集中包含的环境信息为拍摄场景及其周边场景中的色温信息。

如图5a和图5b所示,其中,图5a为第一像素数据集中,所呈现出的图像,该呈现出的图像即为需要进行白平衡处理的图像;图5b即为该图像的环境信息的示意图。其中,需要生成的图像中呈现的主要是一个卡通人像,而该环境信息中包含了该卡通人像之外,还包含人像身体两侧的植物以及卡通人像头部两侧的白色背景等信息。

可以理解地,用户可在拍摄该待处理图像之前,可移动处于拍摄状态的摄像头。电子设备可通过该摄像头的移动,而记录并整理出需要生成的图像的环境信息,该环境信息包括移动摄像头而生成的第一像素数据集中,体现出的拍摄场景及其周边场景中成像出的信息,以及移动移动摄像头而生成的第二像素数据集中,体现出的拍摄场景及其周边场景中的色温信息。

通过在拍摄过程中移动摄像头来生成第一像素数据集和第二像素数据集,从而为计算白平衡数据提供了更多的参考信息,提高了计算出的白平衡数据的准确性,进而再根据白平衡数据对待处理图像进行白平衡处理,也相应提高了对图像白平衡处理的准确性。

在一个实施例中,步骤304包括:识别第一像素数据集中的白色像素点;根据白色像素点计算出第一白平衡数据。

以像素点的颜色通道为rgb三通道为例,当像素点上的rgb三通道的各颜色通道的数值相同时,该像素点呈现的颜色即为白色。电子设备可检测第一像素数据集中,每个像素点上的三通道的数值是否相同或者近似相同,将数值相同或近似相同的像素点判定为白色像素点。其中,近似相同表示三通道的数值差值或增益在对应的预设数值范围内。该增益表示两个颜色通道的数值之比。记rgb三通道的各颜色通道的数值分别为r、g、b。则当同一像素上的r=g=b时,该像素点的颜色即为标准白色。以g通道为参考,该增益包括:r/g=1.0;b/g=1.0。当增益r/g、b/g均处于预设数值范围之内时,则判定该三通道的数值r、g、b近似相同,即判定该像素点的颜色接近白色。

在一个实施例中,电子设备可获取第一像素数据集中,每个白色像素点上的各个颜色通道,求取白色像素点的平均增益,将该平均增益作为白平衡数据。可选地,可对每个白色像素点上的各个颜色通道,将相同颜色通道的数值进行求和,根据每个颜色通道的数值之和计算出该平均增益,如r/g_average,b/g_average,该平均增益即为白平衡数据。

上述实施例中,根据环境信息中的白色像素点来计算出白平衡数据,可进一步提高白平衡数据计算的准确性。

在一个实施例中,根据白色像素点计算出第一白平衡数据,包括:检测所有的白色像素点在第一像素数据集中占据的比例;根据与比例对应的白平衡计算模型计算出第一白平衡数据。

不同的白平衡计算模型所需的白平衡数据不一定相同。且不同的拍摄环境所适用的白平衡计算模型也不一定相同。电子设备预设了多种白平衡计算模型,比如可预设包含上述的灰度世界算法、完美反射算法、全局白平衡算法和局部白平衡法等计算模型。针对不同的计算模型,电子设备进一步设置了白色像素点在第一像素数据集中占据的比例与相关计算模型的对应关系,使得在不同的占比下,获取对应的计算模型来计算第一白平衡数据。

电子设备可计算第一像素数据集中,白色像素点的白点数量,以及该第一像素数据集中的像素点的总数量,该白点数量与总数量之比即为白色像素点在第一像素数据集中占据的比例。进一步地,可设置不同的白平衡计算模型与白色像素点的占比范围之间的对应关系,比如,当白色像素点在第一像素数据集中占据的比例处于a%~b%时,对应白平衡计算模型a,当处于b%~c%时,对应白平衡计算模型b。可选地,该比例范围和对应的计算模型可按照经验设置,使得根据该对应关系选取的白平衡计算模型为最适用于对待处理图像进行白平衡处理的计算模型。

在一个实施例中,第一白平衡数据包括第一增益和第二增益;根据白色像素点计算出第一白平衡数据,包括:计算所有白色像素点上的像素的像素均值;根据像素均值计算出第一颜色通道的第一增益和第二颜色通道的第二增益。

增益表示两个颜色通道的数值之比。第一增益和第二增益分别表示一其中一个颜色通道为基准,另外两个颜色通道的数值与该基准的颜色通道的数值之比。同样以颜色通道为rgb三通道为例进行说明,上述的r/g_average,b/g_average可为该第一增益和第二增益,即为该r通道的增益和g通道的增益。电子设备针对每个颜色通道,将判定为白色像素的相同颜色通道进行求平均,得到每个颜色通道的均值,该均值即为像素均值。可以理解地,该像素均值可包括r均值、g均值和b均值。以g通道作为基准,则分别将r均值除以该g均值;将b均值除以g均值,即分别得到上述的r/g_average,b/g_average。

上述实施例中,通过对第一像素数据集进行白色像素点的检测,根据该白色像素点来得到第一增益和第二增益,提高了对第一像素数据的计算的准确性。

在一个实施例中,在步骤306之前,还包括:获取预设的校准数据。

电子设备还预设了校准数据,该校准数据为预设的用于对不同色温环境而设置的校准数据。校准数据中可包含了不同的第二像素数据对应的色温值,或者可根据第二像素数据集,通过该校准数据能够计算出对应色温值的数据。

步骤306包括:根据第二像素数据集和校准数据计算出色温值;根据色温值计算出第二白平衡数据。

本实施例中,电子设备可根据该校准数据和第二像素数据集中的第二像素数据,计算出对应的色温值。色温值为用于反映环境色温的数值。可选的,可根据第二像素数据集中的每个第二像素数据,计算出对应的综合像素数值,并从该校准数据中查询与该综合像素数值对应的色温值,该查询出的色温值即可作为环境色温的数值。或者可根据该综合像素数值,按照该校准数据中定义的计算方式,计算出对应的色温值。其中,综合像素数值可为每个第二像素数据的加权平均。

电子设备中预设了根据色温而计算出白平衡数据的白平衡算法(automaticwhitebalance,awb),将计算出的色温值作为对应白平衡算法的输入,从而计算出第二白平衡数据。第二白平衡数据中包括对第一像素数据集中的每个像素点的一个或多个颜色通道的颜色值的矫正数值。

在一个实施例中,校准数据包括校准曲线;根据第二像素数据集和校准数据计算出色温值,包括:根据第二像素数据集计算出对应的校准数值;查询校准数值在校准曲线上对应的色温值,将查询出的色温值作为计算出的色温值。

本实施例中,校准曲线为用于反映校准数值和色温值之间的关系的曲线,校准曲线可由校准数值与色温值之间的映射关系来体现,比如可由预设的校准数值与色温值之间的映射关系表来体现。其中,校准数值为用于反映色温偏差的大小的数值。电子设备中预设有校准数值的计算模型,并将该第二像素数据集作为该计算模型的输入,运行该计算模型,而输出对应的校准数值。可选地,该校准数值可为根据该第二像素数据集进行加权求和或求平均等方式计算而得出。在计算出校准数值后,可从预设的校准曲线中,查询与该校准数值对应的色温值,将该色温值作为计算出的色温值。

本实施例中,通过设置校准曲线,并根据第二像素数据集计算出校准数值,从而可利用该校准曲线,查询出与该校准数值对应的色温值,可提高色温值的计算效率。

在一个实施例中,根据第二像素数据集计算出对应的校准数值,包括:根据第二像素数据集,以及第二像素数据集中的第二像素数据对应的像素点,在图像传感器上的位置信息,计算出对应的校准数值。

本实施例中,图像传感器上的像素点对应的第二像素数据,表示经过该像素点而生成的第二像素数据。电子设备在生成每个第二像素数据后,可确定该第二像素数据对应的像素点,并获取该对应的像素点在图像传感器的位置信息。其中,经过不同位置的像素点,生成的第二像素数据的数值不一定相同。电子设备可针对不同位置上的像素点所产生的第二像素数据,设置对应不同的权值。在获取到每个第二像素数据对应的像素点,在图像传感器上的位置信息后,可查询与该位置对应的权值,

参照图4,在形成的上述像素阵列中,可针对处于中心位置区域处的像素点,设置相对较大的权值,对于处于边缘区域的像素点设置较小的权值。电子设备根据每个生成的第二像素数据,查询出对应的像素点所在的位置,并获取针对该位置对应设置的权值,将该第二像素数据和对应的权值导入预设的计算模型,输出对应的校准数值。

本实施例中,由于在不同拍摄角度的情景下,进入摄像头的光线大小也不相同,通过进一步引入第二像素数据集中的第二像素数据对应的像素点在图像传感器上的位置信息,从而可提高在不同角度拍摄下,对色温值计算的准确性。

在一个实施例中,如图6所示,提供了另一种图像白平衡处理方法,该方法包括:

步骤602,获取摄像头在移动过程中,光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集。

电子设备可在拍摄模式下,在显示屏上显示移动摄像头的提示信息,以提示用户对摄像头进行移动。可以理解地,该提示信息的显示方式和提示信息的数据格式均可包含多种。比如可显示“请左右移动摄像头”等类似的文字提示信息,或者可显示用于表示左右移动图形或符号等标记,比如可显示表示左右移动的箭头等。电子设备可在拍摄模式下,摄像头在移动过程中,获取每个时刻下的光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集,从该第一像素数据集中得到拍摄的环境信息。

可选地,摄像头可进行左右、上下、前后等任意位置移动,比如可以以某个国定位置进行左右转动。摄像头移动范围越大,则对应可采集到的环境信息更丰富,使得后续白平衡处理的准确性更高。举例来说,用户可在拍摄出待处理图像之前,可手持该电子设备,对要拍摄的场景进行环境扫描,比如可手持该电子设备进行360°转动一圈,以得到整个空间的环境信息。

步骤604,识别第一像素数据集中的白色像素点;根据白色像素点计算出第一白平衡数据。

在一个实施例中,可检测所有的白色像素点在第一像素数据集中占据的比例;根据与比例对应的白平衡计算模型计算出第一白平衡数据。

在一个实施例中,第一白平衡数据包括第一增益和第二增益。根据像素均值计算出第一颜色通道的第一增益和第二颜色通道的第二增益。

步骤606,获取摄像头在移动过程中,光线不经过过滤器而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集。

在一个实施例中,上述的步骤602和步骤606之间的执行顺序可不做限定,比如可同时执行步骤602和步骤606。

步骤608,根据第二像素数据集,以及第二像素数据集中的第二像素数据对应的像素点,在图像传感器上的位置信息,计算出对应的校准数值。

步骤610,获取预设的校准曲线,查询校准数值在校准曲线上对应的色温值,将查询出的色温值作为计算出的色温值;根据色温值计算出第二白平衡数据。

步骤614,根据第一白平衡数据和第二白平衡数据对第一像素数据集进行白平衡处理,生成白平衡处理后的图像。

在一个实施例中,第二白平衡数据同样可包括相应的第一增益和第二增益,电子设备可将第一白平衡数据的第一增益和第二白平衡数据的第一增益进行加权求和,得到第一综合增益,将电子设备可将第一白平衡数据的第二增益和第二白平衡数据的第二增益进行加权求和,得到第二综合增益。

其中,针对第一白平衡数据的权值和第二白平衡数据的权值可设置为任意合适的数值,比如可分别设置为0.4和0.6,或者设置为0.55或0.45等任意合适的数值。当针对第一白平衡数据的权值和第二白平衡数据的权值均设置为0.5时,则得到的第一综合增益和第二综合增益分别为对应增益的平均值。

以第一综合增益和第二综合增益分别为r/g_average,b/g_average为例来说明,针对第一像素数据集中,每个像素点的r通道乘以r/g_average,b通道乘以b/g_average的倒数,从而实现对图像的颜色矫正,实现对图像的白平衡处理。

在一个实施例中,如图7所示,提供了一种图像白平衡处理装置,该装置包括:

第一像素数据集获取模块702,用于获取光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集;

第一白平衡数据计算模块704,用于根据第一像素数据集计算出第一白平衡数据;

第二像素数据集获取模块706,用于获取光线不经过过滤器而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集;

第二白平衡数据计算模块708,用于根据第二像素数据集计算出第二白平衡数据;

白平衡处理模块710,用于根据第一白平衡数据和第二白平衡数据对第一像素数据集进行白平衡处理,生成白平衡处理后的图像。

在一个实施例中,过滤器覆盖于图像传感器的主体区域,色温检测元件覆盖于图像传感器上的非主体区域,使得光线入射到图像传感器而生成的像素数据集中,第二像素数据集包围第一像素数据集。

在一个实施例中,第二像素数据集获取模块706还用于获取光线经过过滤器的开孔而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集。

在一个实施例中,如图8所示,提供了另一种图像白平衡处理装置,该装置还包括:

像素数据集识别模块712,用于接收通过图像传感器检测到的、通过移动产业处理器接口mipi传输的像素数据集;根据mipi传输的像素数据集中设置的数据类型,确定像素数据集中的第一像素数据集和第二像素数据集。

在一个实施例中,第一像素数据集获取模块702还用于获取摄像头在移动过程中,光线通过摄像头中的过滤器,入射到图像传感器后,生成的用于成像显示的第一像素数据集;

第二像素数据集获取模块706还用于获取摄像头在移动过程中,光线不经过过滤器而入射到图像传感器上覆盖的色温检测元件后,生成的用于反映色温的第二像素数据集。

在一个实施例中,第一白平衡数据计算模块704还用于识别第一像素数据集中的白色像素点;根据白色像素点计算出第一白平衡数据。

在一个实施例中,第一白平衡数据计算模块704还用于检测所有的白色像素点在第一像素数据集中占据的比例;根据与比例对应的白平衡计算模型计算出第一白平衡数据。

在一个实施例中,第一白平衡数据包括第一增益和第二增益;第一白平衡数据计算模块704还用于计算所有白色像素点上的像素的像素均值;根据像素均值计算出第一颜色通道的第一增益和第二颜色通道的第二增益。

在一个实施例中,第二白平衡数据计算模块708还用于获取预设的校准数据;根据第二像素数据集和校准数据计算出色温值;根据色温值计算出第二白平衡数据。

在一个实施例中,第二白平衡数据计算模块708还用于根据第二像素数据集计算出对应的校准数值;查询校准数值在校准曲线上对应的色温值,将查询出的色温值作为计算出的色温值。

在一个实施例中,第二白平衡数据计算模块708还用于根据第二像素数据集,以及第二像素数据集中的第二像素数据对应的像素点,在图像传感器上的位置信息,计算出对应的校准数值。

在一个实施例中,第一像素数据集包括红绿蓝rgb数据;第二像素数据集包括红外数据或紫外数据中的一种或多种。

上述图像白平衡处理装置中各个模块的划分仅用于举例说明,在其他实施例中,可将图像白平衡处理装置按照需要划分为不同的模块,以完成上述图像白平衡处理装置的全部或部分功能。

在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述各实施例所提供的图像白平衡处理方法的步骤。

在一个实施例中,提供了一种电子设备,包括:摄像头、与摄像头电连接的存储器和处理器;

摄像头包括过滤器、图像传感器、覆盖于图像传感器上的图像传感器以及覆盖于图像传感器上的色温检测元件;

存储器上存储有计算机程序,计算机程序被处理器执行时,使得处理器实现上述各实施例所提供的图像白平衡处理方法的步骤。

本申请实施例还提供了一种计算机程序产品。一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各实施例所提供的图像白平衡处理方法的步骤。

本申请实施例还提供了一种电子设备,该电子设备可为终端,具体的终端可以是手机。如图9所示,为了便于说明,仅示出了与本申请实施例相关的部分,具体技术细节未揭示的,请参照本申请实施例方法部分。该电子设备可以为包括手机、平板电脑、pda(personaldigitalassistant,个人数字助理)、pos(pointofsales,销售终端)、车载电脑、穿戴式设备等任意终端设备,以电子设备为手机为例:

图9为与本申请实施例提供的电子设备相关的手机的部分结构的框图。参考图9,手机包括:射频(radiofrequency,rf)电路910、存储器920、输入单元930、显示单元940、传感器950、音频电路960、无线保真(wirelessfidelity,wifi)模块970、处理器980、以及电源990等部件。本领域技术人员可以理解,图9所示的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

其中,rf电路910可用于收发信息或通话过程中,信号的接收和发送,可将基站的下行信息接收后,给处理器980处理;也可以将上行的数据发送给基站。通常,rf电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(lownoiseamplifier,lna)、双工器等。此外,rf电路910还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(globalsystemofmobilecommunication,gsm)、通用分组无线服务(generalpacketradioservice,gprs)、码分多址(codedivisionmultipleaccess,cdma)、宽带码分多址(widebandcodedivisionmultipleaccess,wcdma)、长期演进(longtermevolution,lte))、电子邮件、短消息服务(shortmessagingservice,sms)等。

存储器920可用于存储软件程序以及模块,处理器980通过运行存储在存储器920的软件程序以及模块,从而执行手机的各种功能应用以及数据处理。存储器920可主要包括程序存储区和数据存储区,其中,程序存储区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能的应用程序、图像播放功能的应用程序等)等;数据存储区可存储根据手机的使用所创建的数据(比如音频数据、通讯录等)等。此外,存储器920可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。

输入单元930可用于接收输入的数字或字符信息,以及产生与手机900的用户设置以及功能控制有关的键信号输入。具体地,输入单元930可包括触控面板931以及其他输入设备932。触控面板931,也可称为触摸屏,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的对象或附件在触控面板931上或在触控面板931附近的操作),并根据预先设定的程式驱动相应的连接装置。在一个实施例中,触控面板931可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器980,并能接收处理器980发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触控面板931。除了触控面板931,输入单元930还可以包括其他输入设备932。具体地,其他输入设备932可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)等中的一种或多种。

显示单元940可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元940可包括显示面板941。在一个实施例中,可以采用液晶显示器(liquidcrystaldisplay,lcd)、有机发光二极管(organiclight-emittingdiode,oled)等形式来配置显示面板941。在一个实施例中,触控面板931可覆盖显示面板941,当触控面板931检测到在其上或附近的触摸操作后,传送给处理器980以确定触摸事件的类型,随后处理器980根据触摸事件的类型在显示面板941上提供相应的视觉输出。虽然在图9中,触控面板931与显示面板941是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板931与显示面板941集成而实现手机的输入和输出功能。

手机900还可包括至少一种传感器950,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板941的亮度,接近传感器可在手机移动到耳边时,关闭显示面板941和/或背光。运动传感器可包括加速度传感器,通过加速度传感器可检测各个方向上加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换)、振动识别相关功能(比如计步器、敲击)等;此外,手机还可配置陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器等。

音频电路960、扬声器961和传声器962可提供用户与手机之间的音频接口。音频电路960可将接收到的音频数据转换后的电信号,传输到扬声器961,由扬声器961转换为声音信号输出;另一方面,传声器962将收集的声音信号转换为电信号,由音频电路960接收后转换为音频数据,再将音频数据输出处理器980处理后,经rf电路910可以发送给另一手机,或者将音频数据输出至存储器920以便后续处理。

wifi属于短距离无线传输技术,手机通过wifi模块970可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图9示出了wifi模块970,但是可以理解的是,其并不属于手机900的必须构成,可以根据需要而省略。

处理器980是手机的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器920内的软件程序和/或模块,以及调用存储在存储器920内的数据,执行手机的各种功能和处理数据,从而对手机进行整体监控。在一个实施例中,处理器980可包括一个或多个处理单元。在一个实施例中,处理器980可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等;调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器980中。

手机900还包括给各个部件供电的电源990(比如电池),优选的,电源可以通过电源管理系统与处理器980逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。

在一个实施例中,手机900还可以包括摄像头、蓝牙模块等。

上述的手机900可实现本申请各实施例中的图像白平衡处理方法中的步骤。

本申请所使用的对存储器、存储、数据库或其它介质的任何引用可包括非易失性和/或易失性存储器。合适的非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram),它用作外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)。

以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。

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