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

颜色阴影校正方法、终端设备及计算机可读存储介质

文献发布时间:2023-06-19 11:52:33


颜色阴影校正方法、终端设备及计算机可读存储介质

技术领域

本申请属于图像处理技术领域,尤其涉及一种颜色阴影校正方法、终端设备、芯片及计算机可读存储介质。

背景技术

随着人工智能(Artificial Intelligence,AI)、终端设备和图像处理等科学技术的不断发展,手机等终端设备的设计越来越轻巧,所集成的相机模组的体积也越来越小,从而导致终端设备通过相机模组拍摄的图像中出现相同颜色景物在图像中心处和边缘处颜色不一致的问题,这一现象被称为颜色阴影。

颜色阴影(color shading)是镜头阴影(lens shading)的一部分。出现颜色阴影的原因是相机模组为了阻绝红外光对图像传感器的影响,通常在图像传感器之前加装红外截止滤光片(IR-Cut Filter)。红外截止滤光片的光透率随着入射角度的变化而变化,导致红外截止滤光片中心区域红光透过率高,边缘区域红光透过率低,从而导致终端设备拍摄的图像出现中心偏红的现象。为了提高终端设备拍摄的图像效果,一般需要对拍摄的图片进行颜色阴影校正。

目前,一般是使用阴影校正参数对图像进行颜色阴影校正。通过预先保存图像的光源色温信息和对应色温的阴影校正系数,然后基于现实场景中的色温查找到对应色温的阴影校正系数,再对图像进行颜色阴影校正。但是,现实场景中的色温信息非常复杂,不可能将所有色温的校正参数都通过实验方式预先获得。基于此,现有的颜色阴影校正方式的准确率较低。

发明内容

本申请实施例提供一种颜色校正方法、终端设备、芯片及计算机可读存储介质,以解决现有颜色阴影校正的准确率较低的问题。

第一方面,本申请实施例提供一种颜色阴影校正方法,首先,获取待校正图像;然后,基于预先标定的颜色阴影数据,对所述待校正图像进行颜色阴影校正,所述颜色阴影数据包括至少两种单色光的颜色阴影数据。

可以看出,本申请实施例通过使用多种单色光的颜色阴影数据对图像进行颜色阴影校正,有效地覆盖各种色温场景下的颜色阴影形式,提高了颜色阴影校正准确率。

在第一方面的一种可能的实现方式中,基于预先标定的颜色阴影数据,对所述待校正图像进行颜色阴影校正,包括:

将所述待校正图像划分成第一图像块后,获得每个所述第一图像块的像素统计值;

将每个所述第一图像块的像素统计值从第一颜色空间转换至第二颜色空间后,获得所述第二颜色空间下所述待校正图像的目标通道的像素值,所述目标通道为与亮度无关的通道,所述第二颜色空间为与亮度无关的颜色空间;

根据预先标定的颜色阴影数据和所述目标通道的像素值,对所述待校正图像进行颜色阴影校正。

需要说明的是,对待校正图像划分成多个第一图像块,并使用第一图像块的像素统计值代表图像块,可以有效地减少计算量。此外,将第一图像块的像素统计值转换至与亮度无关的第二颜色空间,可以减少或者避免亮度对颜色数值的影响,以进一步提高颜色阴影校正的准确率。

在第一方面的一种可能的实现方式中,所述方法还包括:

根据每个所述第一图像块的像素统计值,确定所述待校正图像的主颜色,获取所述主颜色对应像素点的像素位置;

根据预先标定的颜色阴影数据和所述目标通道的像素值,对所述待校正图像进行颜色阴影校正,包括:

根据所述像素位置、所述颜色阴影数据和所述目标通道的像素值进行颜色阴影估计,得到所述待校正图像各个目标通道的颜色阴影矩阵;

使用所述目标通道的颜色阴影矩阵,对所述待校正图像进行颜色阴影校正。

需要说明的是,利用待校正图像中主颜色的像素位置对图像进行颜色阴影校正,而不是采用某种特定的颜色进行颜色阴影校正,可以尽可能地避免因特定颜色缺失导致颜色阴影估计不准确的问题,以进一步提高颜色阴影校正准确率。

在第一方面的一种可能的实现方式中,根据所述像素位置、所述颜色阴影数据和所述目标通道的像素值进行颜色阴影估计,得到所述待校正图像的各个目标通道的颜色阴影矩阵,包括:

根据所述像素位置、所述颜色阴影数据和所述目标通道的像素值,得到各个所述目标通道的初始颜色阴影矩阵;

将所述初始颜色阴影矩阵进行扩展操作,得到所述待校正图像的各个目标通道的颜色阴影矩阵。

在第一方面的一种可能的实现方式中,根据所述像素位置、所述颜色阴影数据和所述目标通道的像素值,得到各个所述目标通道的初始颜色阴影矩阵,包括:

使用从所述颜色阴影数据中提取出的每个所述目标通道的基,根据所述像素位置和所述目标通道的像素值,计算每个所述目标通道的初始颜色阴影矩阵的权重系数;

根据每个所述目标通道的基和所述权重系数,得到各个所述目标通道的初始颜色阴影矩阵。

需要说明的是,使用颜色阴影数据的基进行阴影校正,相较于使用全部的颜色阴影数据进行阴影校正,前者可以有效地降低算法对存储空间的要求。

在第一方面的一种可能的实现方式中,使用所述目标通道的颜色阴影矩阵,对所述待校正图像进行颜色阴影校正,包括:

将各个所述目标通道的颜色阴影矩阵分别与所述第二颜色空间下所述待校正图像的目标通道的对应像素值相乘,得到所述第二颜色空间下的校正图像;

将所述第二颜色空间下的校正图像转换至目标颜色空间,得到目标颜色空间下的校正图像,所述目标颜色空间为所述第一颜色空间或第三颜色空间。

在第一方面的一种可能的实现方式中,在获取待校正图像之后,还包括;

对所述待校正图像进行图像预处理;

将所述待校正图像划分成第一图像块后,获得每个所述第一图像块的像素统计值,包括:

将图像预处理后的待校正图像划分成第一图像块后,获得每个所述第一图像块的像素统计值。

在第一方面的一种可能的实现方式中,在获取待校正图像之前,还包括:

分别获取N种单色光下的灰板图,N为大于或等于2的正整数;

对所述灰板图进行图像预处理;

将图像预处理后的灰板图划分成第二图像块,并获得每个所述第二图像块的像素统计值;

将每个所述第二图像块的像素统计值从第四颜色空间转换至第五颜色空间之后,获得所述第五颜色空间下所述灰板图的目标通道的像素值,所述第五颜色空间为与亮度无关的颜色空间;

基于N种单色光的所述灰板图的目标通道的像素值,获得所述颜色阴影数据。

在第一方面的一种可能的实现方式中,在基于N种单色光的所述灰板图的目标通道的像素值,获得所述颜色阴影数据之后,还包括:

从所述颜色阴影数据中提取出各个目标通道的基。

在第一方面的一种可能的实现方式中,所述单色光为可见光范围内的单色光。

在第一方面的一种可能的实现方式中,将所述待校正图像划分成第一图像块后,获得每个所述第一图像块的像素统计值,包括:

对所述待校正图像进行网格划分,得到所述第一图像块;

统计每个所述第一图像块的像素平均值,将所述像素平均值作为所述第一图像块的像素统计值。

第二方面,本申请实施例提供一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面任一项所述的方法。

第三方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如上述第一方面任一项所述的方法。

第四方面,本申请实施例提供一种芯片,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述第一方面任一项所述的方法。

第五方面,本申请实施例提供一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面任一项所述的方法。

可以理解的是,上述第二方面至第五方面的有益效果可以参见上述第一方面中的相关描述,在此不再赘述。

附图说明

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

图1为本申请实施例提供的通过相机模组获取图像数据的示意图;

图2为本申请实施例提供的手机的部分结构的框图;

图3为本申请实施例的手机200的软件结构示意图;

图4为本申请实施例提供的一种颜色阴影校正方法的流程示意框图

图5为本申请实施例提供的颜色阴影校正方法的另一种流程示意框图;

图6为本申请实施例提供的灰板图分块方式示意图;

图7为本申请实施例提供的颜色阴影校正方法的又一种流程示意框图;

图8为本申请实施例提供的光谱标定过程的流程示意框图;

图9为本申请实施例提供的颜色阴影校正过程的示意图;

图10为本申请实施例提供的颜色阴影校正装置的结构示意框图。

具体实施方式

以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。

本申请实施例提供的颜色阴影校正方案可以应用于集成有相机模组,具备拍摄功能的终端设备。相机模组一般包括镜头、红外截止滤光片和图像传感器,镜头一般是由一个或多个透镜组成,图像传感器一般可以为CCD图像传感器或者CMOS图像传感器。终端设备通过相机模组拍摄图像数据的过程可以参见图1示出的通过相机模组获取图像数据的示意图。

如图1所示,光线依次通过镜头11、红外截止滤光片12后,到达图像传感器13,图像传感器13将光信号转换为电信号,以采集得到图像数据。在此过程中,光线经过镜头11折射后,角度会发生变化。而红外截止滤光片的光透率随着入射角度的变化而改变,即同一种波长的光,入射角度不同,透过率也会相应地不同,从而使得拍摄的图像出现颜色阴影的问题。

颜色阴影一般具备以下特点:相同的相机模组在不同色温下的颜色阴影表现形式不相同;相同色温可能有不同的光谱,从而导致相同的色温也可能有不同的颜色阴影形式。

具体来说,相同色温下的光可能具备不同的光谱,即同一种颜色的光可能是由不同的单色光组成的。例如,某一种颜色的光可能是由A、B、C三种单色光组成的,也有可能是由A、D、E三种单色光组成的。

基于此,如果事先通过实验的方式获得所有色温对应的颜色阴影校正参数,并建立色温和颜色阴影校正参数的一一对应关系;然后,在实际应用时,根据当前光源的色温查找到对应的颜色阴影校正参数,再使用该颜色阴影校正参数进行校正,可能会因为实际应用阶段的色温光谱和实验阶段的色温光谱不同,出现颜色阴影校正不准确的问题。例如,实验阶段时,某一色温的光谱包括A、B、C三种单色光,而实际应用阶段,该色温的光谱包括A、D、E三种单色光。此时,相同色温下,实验阶段的颜色阴影形式和实际应用阶段的颜色阴影形式不同,导致颜色校正不准确。

而本申请实施例中,通过预先标定的多种单色光谱的颜色阴影数据进行颜色阴影校正,可以有效地覆盖各种色温场景下出现的颜色阴影形式,从而提高了颜色阴影校正的准确率。

在本申请实施例中,集成有相机模组,具备拍摄功能的终端设备类型可以是任意的,终端设备可以为但不限于手机、平板电脑、笔记本电脑、上网本或个人数字助理等,在此不对终端设备的具体类型进行限定。

终端设备具体可以包括至少一个处理器、存储器,以及存储在存储器中并可在至少一个处理器上运行的计算机程序,处理器执行计算机程序时实现上述本申请实施例提供的颜色阴影校正方法的各个步骤。

处理器可以是中央处理单元(Central Processing Unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。存储器在一些实施例中可以是终端设备的内部存储单元。而在另一些实施例中也可以是终端设备的外部存储设备。

进一步地,存储器还可以既包括终端设备的内部存储单元也包括外部存储设备。存储器用于存储操作系统、应用程序、引导装载程序(BootLoader)、数据以及其他程序等,例如计算机程序的程序代码等。存储器还可以用于暂时地存储已经输出或者将要输出的数据。

另外,该终端设备还可以包括但不限于镜头、红外截止滤光片、图像传感器、DSP芯片、显示器和输入输出设备等。

作为示例而非限定,以终端设备为手机为例,图2示出的是与本申请实施例提供的手机的部分结构的框图。参考图2,该手机可以包括:射频(Radio Frequency,RF)电路210、存储器220、输入单元230、显示单元240、传感器250、音频电路260、无线保真(wirelessfidelity,WiFi)模块270、处理器280、以及电源290等部件。本领域技术人员可以理解,图2中示出的手机结构并不构成对手机的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。

下面结合图2对手机的各个构成部件进行具体的介绍:

RF电路210可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,给处理器280处理;另外,将设计上行的数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(Low NoiseAmplifier,LNA)、双工器等。此外,RF电路210还可以通过无线通信与网络和其他设备通信。上述无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GlobalSystem of Mobile communication,GSM)、通用分组无线服务(General Packet RadioService,GPRS)、码分多址(Code Division Multiple Access,CDMA)、宽带码分多址(Wideband Code Division Multiple Access,WCDMA)、长期演进(Long Term Evolution,LTE))、电子邮件、短消息服务(Short Messaging Service,SMS)等。

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

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

显示单元240可用于显示由用户输入的信息或提供给用户的信息以及手机的各种菜单。显示单元240可包括显示面板241,可选的,可以采用液晶显示器(Liquid CrystalDisplay,LCD)、有机发光二极管(Organic Light-Emitting Diode,OLED)等形式来配置显示面板241。进一步的,触控面板231可覆盖显示面板241,当触控面板231检测到在其上或附近的触摸操作后,传送给处理器280以确定触摸事件的类型,随后处理器280根据触摸事件的类型在显示面板241上提供相应的视觉输出。

虽然在图2中,触控面板231与显示面板241是作为两个独立的部件来实现手机的输入和输入功能,但是在某些实施例中,可以将触控面板231与显示面板241集成而实现手机的输入和输出功能。

手机200还可包括至少一种传感器250,比如,光传感器、运动传感器、图像传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板241的亮度,接近传感器可在手机移动到耳边时,关闭显示面板241和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等。图像传感器可以将光信号转换成电信号,以采集到图像数据。当然,手机还可以包括与图像传感器相互配合,以完成图像数据采集的镜头和红外截止滤光片等。

另外,手机还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。

音频电路260、扬声器261、传声器262可提供用户与手机之间的音频接口。音频电路260可将接收到的音频数据转换后的电信号,传输到扬声器261,由扬声器161转换为声音信号输出。另一方面,传声器262将收集的声音信号转换为电信号,由音频电路260接收后转换为音频数据,再将音频数据输出处理器280处理后,经RF电路210以发送给比如另一手机,或者将音频数据输出至存储器220以便进一步处理。

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

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

例如,手机通过镜头、红外截止滤光片和图像传感器等采集到图像数据之后,处理器获取到该图像数据,再对该图像数据进行图像预处理、图像分块处理、转换至与亮度无关的色度空间、确定图像数据的主颜色、颜色阴影估计和颜色阴影校正等步骤,以对采集到的出现颜色阴影问题的图像数据进行校正,获得校正之后的图像,并将校正之后的图像通过显示屏进行显示。

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

尽管未示出,手机200还可以包括摄像头。可选地,摄像头在手机200的上的位置可以为前置的,也可以为后置的,本申请实施例对此不作限定。

可选地,手机200可以包括单摄像头、双摄像头或三摄像头等,本申请实施例对此不作限定。例如,手机200可以包括三摄像头,其中,一个为主摄像头、一个为广角摄像头、一个为长焦摄像头。镜头一般包括一个或多个凸透镜。

可选地,当手机200包括多个摄像头时,这多个摄像头可以全部前置,或者全部后置,或者一部分前置、另一部分后置,本申请实施例对此不作限定。

在介绍完手机的硬件组成之后,下面将对手机200的软件结构进行介绍。

图3是本申请实施例的手机200的软件结构示意图。以手机200操作系统为Android系统为例,在一些实施例中,将Android系统分为四层,分别为应用程序层、应用程序框架层(framework,FWK)、系统层以及硬件抽象层,层与层之间通过软件接口通信。

如图3所示,所述应用程序层可以一系列应用程序包,应用程序包可以包括短信息,日历,相机,视频,导航,图库,通话等应用程序。

应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层可以包括一些预先定义的函数,例如用于接收应用程序框架层所发送的事件的函数。

如图3所示,应用程序框架层可以包括窗口管理器、资源管理器以及通知管理器等。

窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。

资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。

通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。

应用程序框架层还可以包括:

视图系统,所述视图系统包括可视控件,例如,显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。

电话管理器用于提供手机200的通信功能。例如通话状态的管理(包括接通,挂断等)。

系统层可以包括多个功能模块。例如:传感器服务模块,物理状态识别模块,三维图形处理库(例如:OpenGL ES)等。

传感器服务模块,用于对硬件层各类传感器上传的传感器数据进行监测,确定手机200的物理状态;

物理状态识别模块,用于对用户手势、人脸等进行分析和识别;

三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。

系统层还可以包括:

表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。

媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如,MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。

硬件抽象层是硬件和软件之间的层。硬件抽象层可以包括显示驱动,摄像头驱动,传感器驱动等,用于驱动硬件层的相关硬件,如显示屏、摄像头、传感器等。

需要说明的是,图2和图3仅仅终端设备的一种示例。当终端设备为平板电脑或者其它设备时,相关介绍可以参见图2和图3中的相应内容,在此不再一一赘述。

在介绍完本申请实施例的终端设备可能涉及的情况之后,下面将详细阐述本申请实施例提供的颜色阴影校正方案。

本申请实施例中,颜色阴影校正方案可以包括光谱标定阶段和实用阶段。光谱标定阶段是指标定各种单色光的颜色阴影数据的过程,实用阶段是指在标定得到各种单色光的颜色阴影数据之后,使用标定的颜色阴影数据对图像进行颜色阴影校正的过程。

参见图4,为本申请实施例提供的一种颜色阴影校正方法的流程示意框图,该过程可以具体是指实用阶段的颜色阴影校正过程。该方法可以包括以下步骤:

步骤S401、获取待校正图像。

可以理解的是,终端设备可以通过集成的相机模组拍摄得到待校正图像,以获得上述待校正图像。终端设备集成的相机模组一般包括镜头、红外截止滤光片和图像传感器。当然,上述待校正图像也可以是预先通过集成有相机模组的终端采集的图像,此时,可以通过读取预先存储的图像,以获得上述待校正图像。

待校正图像是指需要进行颜色阴影校正的图像,该图像一般是集成有相机模组的终端拍摄得到的,且该图像一般存在颜色阴影的问题。

步骤S402、基于预先标定的颜色阴影数据,对待校正图像进行颜色阴影校正,颜色阴影数据包括至少两种单色光的颜色阴影数据。

需要说明的是,上述预先标定的颜色阴影数据包括至少两种单色光的颜色阴影数据。可选地,单色光包括可见光范围内所有单色光。一般情况下,单色光的数量越多,所覆盖的色温场景越多,颜色阴影校正效果越好。

具体应用中,基于多种单色光的颜色阴影数据进行颜色阴影校正的过程可以具体包括:先对待校正图像进行图像预处理,再对图像预处理后的待校正图像进行图像分块,得到多个图像块,并统计每个图像块的像素统计值,用像素统计值作为图像块的像素值;接着,可以将图像块的像素统计值转换至与亮度无关的颜色空间,并记录与亮度无关的通道的数值;然后,可以确定出待校正图像的主颜色,并获取主颜色对应像素点的像素位置;最后,根据与亮度无关的通道的数值、多种单色光的颜色阴影数据和主颜色对应像素点的像素位置,先进行颜色阴影估计,得到颜色阴影矩阵,再使用颜色阴影矩阵进行颜色阴影校正,得到校正的图像。

需要说明的是,在一些实施例中,可以不用将待校正图像进行分块,而是直接对整张待校正图像进行处理。但是,整张待校正图像的数据量较多,计算量较大。相较而言,将待校正图像进行分块之后再进行处理,可以减少计算量。

在一些实施例中,可以不使用主颜色对应像素点的像素位置进行颜色阴影估计,而是可以特定颜色进行颜色阴影估计。相较而言,前者可以尽可能地避免由于特定颜色缺少导致颜色阴影估计不准确率的问题,从而进一步提高颜色阴影校正准确率。

在一些实施例中,可以使用从颜色阴影数据中提取出的各个通道的基进行颜色阴影估计,其相较于使用全部颜色阴影数据进行颜色阴影校正,可以有效地降低算法对存储空间的要求。当然,在其它一些实施例中,也可以不对待校正图像进行图像预处理。

可以看出,本申请实施例通过使用多种单色光的颜色阴影数据对图像进行颜色阴影校正,有效地覆盖各种色温场景下的颜色阴影形式,提高了颜色阴影校正准确率。

参见图5示出的本申请实施例提供的颜色阴影校正方法的另一种流程示意框图,该方法可以包括以下步骤:

步骤S501、获取待校正图像。

步骤S502、将待校正图像划分成第一图像块后,获得每个第一图像块的像素统计值。

具体应用中,由于待校正图像的宽高较大,像素点较多,数据量很大,为了减少了计算量,将待校正图像进行分块处理,以将待校正图像划分成多个第一图像块,并且,用第一图像块的像素统计值代表该图像块。

图像划分方式可以为网格划分,可以是圆形划分,也可以是其它划分方式。参见图6示出的灰板图分块方式示意图,如图6所示,图6左边的灰板图使用网格划分方式,图6右边的灰板图使用圆形划分。

需要说明的是,上述像素统计值可以是像素平均值或者中位数。具体来说,对待校正图像进行分块处理之后,得到M个第一图像块之后,分别统计这M个第一图像块的像素统计值,并用像素统计值代表相应的第一图像块。

例如,使用网格划分方式对待校正图像进行分块处理,得到M个第一图像块。基于第一图像块内的各个像素点的像素值,统计每一个图像块的像素平均值,并用像素平均值作为第一图像块的像素统计值,即用像素平均值代表第一图像块的像素值,每一个第一图像块对应一个像素平均值。

步骤S503、将每个第一图像块的像素统计值从第一颜色空间转换至第二颜色空间后,获得第二颜色空间下待校正图像的目标通道的像素值,目标通道为与亮度无关的通道,第二颜色空间为与亮度无关的颜色空间。

需要说明的是,第一颜色空间是指待校正图像原本所在的颜色空间,该第一颜色空间可以例如为RGB或RYB等。第二颜色空间是指与亮度无关的颜色空间,该颜色空间可以例如为但不限于HSV、HSI、Lab或YCrCb等。目标通道是指第二颜色空间下与亮度无关的通道,例如,当第二颜色空间为HSV时,与亮度无关的通道(即目标通道)包括H通道和S通道。又例如,当第二颜色空间为YCrCb,与亮度无关的通道(即目标通道)包括Cr通道和Cb通道。

将待校正图像的像素值转换至与亮度无关的第二颜色空间可以避免或者降低亮度对颜色数值的影响。

将第一图像块的像素值转换至第二颜色空间之后,可以记录与亮度无关的通道的像素值。例如,当第二颜色空间为HSV时,与亮度无关的通道(即目标通道)包括H通道和S通道,则记录H通道和S通道的像素值。又例如,当第二颜色空间为YCrCb,与亮度无关的通道(即目标通道)包括Cr通道和Cb通道,则记录Cr通道和Cb通道的像素值。

步骤S504、根据预先标定的颜色阴影数据和目标通道的像素值,对待校正图像进行颜色阴影校正。

需要说明的是,当单色光谱有N种,目标通道的数量记为C,第一图像块的数量记为M,则预先标定的颜色阴影数据可以包括N*C*M个数据。

具体应用中,可以使用全部的颜色阴影数据,即N*C*M个数据,进行颜色阴影校正。但保存N*C*M个数据需要大量的存储空间,此时,为了降低算法对存储空间的要求,可以使用从颜色阴影数据中提取的基进行颜色阴影校正。具体来说,对应每一个通道,从N*M数据中提取出k个具备代表性的数值,作为该通道的颜色阴影数据的基。提取出每个目标通道的基之后,可以使用提取出的基表示任意颜色空间下该目标通道的像素值。

具体应用中,可以使用特定的颜色进行颜色阴影校正。但是,在一些情况下可能存在该特定颜色缺少,从而导致颜色阴影校正不准确的问题。此时,可以先确定出待校正图像的主颜色,并记录主颜色对应的像素点的像素位置,基于该像素位置进行颜色阴影校正,以提高颜色阴影校正准确率。

具体地,可以先根据预先标定的颜色阴影数据和目标通道的像素值进行颜色阴影估计,得到待校正图像的颜色阴影矩阵。然后,再使用颜色阴影矩阵进行颜色阴影校正。

参见图7示出的本申请实施例提供的颜色阴影校正方法的又一种流程示意框图,该方法可以包括以下步骤:

步骤S701、获取待校正图像。

步骤S702、将待校正图像划分成第一图像块后,获得每个第一图像块的像素统计值。

可选地,在获取待校正图像之后,还包括;对待校正图像进行图像预处理。此时,可以将图像预处理后的待校正图像划分成第一图像块后,获得每个第一图像块的像素统计值。

其中,图像预处理可以包括但不限于黑电平校正和白平衡等初始阶段的图像处理操作。

步骤S703、将每个第一图像块的像素统计值从第一颜色空间转换至第二颜色空间后,获得第二颜色空间下待校正图像的目标通道的像素值,目标通道为与亮度无关的通道,第二颜色空间为与亮度无关的颜色空间。

需要说明的是,上述步骤S701~S703与上述步骤S501~S503相同,相关介绍请参见上文相应内容,在此不再赘述。

步骤S704、根据每个第一图像块的像素统计值,确定待校正图像的主颜色,获取主颜色对应像素点的像素位置。

需要说明的是,待校正图像的主颜色是指待校正图像中包括的像素点数量最多的颜色,确定出待校正图像的主颜色之后,记录主颜色对应像素点的像素点位置。

例如,待校正图像中红色的像素点数量最多,则确定待校正图像的主颜色为红色。并记录红色像素点的像素点位置。

具体应用中,可以通过聚类或者阈值分割法确定待校正图像的主颜色。

步骤S705、根据像素位置、颜色阴影数据和目标通道的像素值进行颜色阴影估计,得到待校正图像各个目标通道的颜色阴影矩阵。

具体应用中,可以先估算出各个目标通道的初始颜色阴影矩阵,再将初始颜色阴影矩阵进行扩增,获得上述颜色阴影矩阵。步骤S705具体可以包括以下两个步骤。

第一步:根据像素位置、颜色阴影数据和目标通道的像素值,得到各个目标通道的初始颜色阴影矩阵。

可以理解的是,可以使用全部的颜色阴影数据进行颜色阴影校正,也可以使用颜色阴影数据的基进行颜色阴影校正。

在一些实施例中,可以使用从颜色阴影数据中提取出的每个目标通道的基,根据像素位置和目标通道的像素值,计算每个目标通道的初始颜色阴影矩阵的权重系数。然后,再根据每个目标通道的基和权重系数,得到各个目标通道的初始颜色阴影矩阵。

具体地,第二颜色空间下第c个目标通道的主颜色对应像素点的数值记为Q

其中,{B

求解上式(1),得到每个目标通道的初始颜色阴影矩阵的权重系数,即{a

S

其中,S

需要说明的是,使用颜色阴影数据的基进行阴影校正,相较于使用全部的颜色阴影数据进行阴影校正,前者可以有效地降低算法对存储空间的要求。

第二步:将初始颜色阴影矩阵进行扩展操作,得到待校正图像的各个目标通道的颜色阴影矩阵。

需要说明的是,S

需要说明的是,利用待校正图像中主颜色的像素位置对图像进行颜色阴影估计,而不是采用某种特定的颜色进行颜色阴影估计,可以尽可能地避免因特定颜色缺失导致颜色阴影估计不准确的问题,以进一步提高颜色阴影校正准确率。

步骤S706、使用目标通道的颜色阴影矩阵,对待校正图像进行颜色阴影校正。

具体地,首先将各个目标通道的颜色阴影矩阵分别与第二颜色空间下待校正图像的目标通道的对应像素值相乘,得到第二颜色空间下的校正图像;然后,将第二颜色空间下的校正图像转换至目标颜色空间,得到目标颜色空间下的校正图像,目标颜色空间为第一颜色空间或第三颜色空间。

其中,上述第三颜色空间可以是与亮度有关的颜色空间,例如,第三颜色空间为RYB或RGB。也就是说,可以将第二颜色空间下的校正图像转换回待校正图像原本所在的颜色空间(即第一颜色空间),也可以转换回不同于待校正图像原本所在的颜色空间的颜色空间(即第三颜色空间)。

例如,待校正图像的第一颜色空间为RGB,第二颜色空间为HSV,此时,在得到HSV的校正图像之后,可以将HSV颜色空间下的校正图像转换至RGB颜色空间,完成颜色阴影校正。

在介绍完颜色阴影校正的实用阶段相应过程之后,下面将对光谱标定阶段进行介绍。

参见图8示出的光谱标定过程的流程示意框图,该过程可以包括:

步骤S801、分别获取N种单色光下的灰板图,N为大于或等于2的正整数。

具体地,可以使用窄带光源或者激光器产生可见光波长范围内的单色光,例如,从380nm到780nm,每个T nm产生一种单色光源,然后通过集成相机模组的终端设备拍摄每种单色光下的灰板图。拍摄得到的灰板图可以如图6示出的灰板图。

步骤S802、对灰板图进行图像预处理。

可以理解的是,图像预处理包括但限于黑电平校正和白平衡等操作。

步骤S803、将图像预处理后的灰板图划分成第二图像块,并获得每个第二图像块的像素统计值。

需要说明的是,第二图像块是指光谱标定阶段的灰板图对应的图像块。图像划分方式可以如图6所示的网格划分或者圆形划分。图像分块之后,再统计出每个第二图像块的像素统计值,该像素统计可以为像素平均值或者中位数。用每个第二图像块的像素统计值代表该第二图像块的像素值。

步骤S804、将每个第二图像块的像素统计值从第四颜色空间转换至第五颜色空间之后,获得第五颜色空间下灰板图的目标通道的像素值,第五颜色空间为与亮度无关的颜色空间。

需要说明的是,第四颜色空间是指灰板图原本所在的颜色空间,第五颜色空间是指与亮度无关的颜色空间,其可以与上文的第二颜色空间等同。目标通道是指与亮度无关的通道。

步骤S805、基于N种单色光的灰板图的目标通道的像素值,获得颜色阴影数据。

例如,一共有N种单色光,目标通道的数量为C,第二图像块的数据为M,则颜色阴影数据可以包括N*C*M个数据。

在一些实施例中,可以直接使用N*C*M个数据进行颜色阴影校正,但需要耗费大量的存储空间。在另一些实施例中,为降低算法对存储空间的要求,可以从N*C*M个数据提取出少量的基,使用基进行颜色阴影校正。

可选地,还包括:步骤S806、从颜色阴影数据中提取出各个目标通道的基。

具体地,对于每个目标通道,从N*M个数据中提取出k个有代表性的数值作为该目标通道的基。提取基的方法可以为但不限于降维或者聚类。例如,使用PCA(PrincipalComponent Analysis)或者K-means等方法从N*M个数据中提取出k个有代表性的数值。

例如,对于第c个通道,提取出的基为

其中,{a

也就是说,任意颜色空间下的目标通道的数值可以表示成基的组合。

为了更好地介绍本申请实施例提供的颜色阴影校正方法,下面将结合图9示出的颜色阴影校正过程的示意图。

如图9所示,其包括光谱标定阶段和实用阶段。在光谱标定阶段中,通过终端设备集成的相机模组分别采集N种单色光下的图像数据,再分别进行图像预处理、图像分块处理、转换到与亮度无关的色度空间、记录色度空间下色度通道的数值和基提取。其中,色度空间与上述第二颜色空间相同,色度空间可以例如为但不限于HSV、HIS或YCrCb等颜色空间。色度通道是指待校正图像中与亮度无关的通道,与上文的目标通道可以等同。基提取是指从颜色阴影数据中提取出每个目标通道的基。

在实用阶段,终端设备通过集成的相机模组采集真实场景下的图像数据,再依次对图像数据进行图像预处理,图像分块处理,转换至与亮度无关的色度空间,确定图像的主颜色并获取主颜色对应像素点的像素位置,然后使用光谱标定阶段提取的基进行颜色阴影估计,得到图像的颜色阴影矩阵,最后使用颜色阴影矩阵进行颜色阴影校正,得到校正后的图像。

可以看出,使用N种单色光的颜色阴影数据进行颜色阴影校正,可以有效地覆盖各种色温场景下的颜色阴影形式,提高了颜色阴影校正准确率。进一步地,提取出颜色阴影数据中的基,使用基进行颜色阴影校正,可以有效地降低算法对存储空间的要求。进一步地,利用图像中主颜色对应像素点的位置进行颜色阴影估计,可以提高颜色阴影估计的准确率,从而提高颜色阴影校正准确率。

对应于上文实施例的颜色阴影校正方法,图10示出了本申请实施例提供的颜色阴影校正装置的结构示意框图,为了便于说明,仅示出了与本申请实施例相关的部分。

参照图10,该装置可以包括:

获取模块101,用于获取待校正图像。

颜色阴影校正模块102,用于基于预先标定的颜色阴影数据,对待校正图像进行颜色阴影校正,颜色阴影数据包括至少两种单色光的颜色阴影数据。

在一种可能的实现方式中,上述颜色阴影校正模块可以包括:

图像分块单元,用于将待校正图像划分成第一图像块后,获得每个第一图像块的像素统计值。

颜色空间转换单元,用于将每个第一图像块的像素统计值从第一颜色空间转换至第二颜色空间后,获得第二颜色空间下待校正图像的目标通道的像素值,目标通道为与亮度无关的通道,第二颜色空间为与亮度无关的颜色空间。

颜色阴影校正单元,用于根据预先标定的颜色阴影数据和目标通道的像素值,对待校正图像进行颜色阴影校正。

在一种可能的实现方式中,上述装置还可以包括主颜色像素位置获取模块,用于:根据每个第一图像块的像素统计值,确定待校正图像的主颜色,获取主颜色对应像素点的像素位置;

上述颜色阴影校正单元具体用于:

根据像素位置、颜色阴影数据和目标通道的像素值进行颜色阴影估计,得到待校正图像各个目标通道的颜色阴影矩阵;

使用目标通道的颜色阴影矩阵,对待校正图像进行颜色阴影校正。

在一种可能的实现方式中,上述颜色阴影校正单元具体用于:

根据像素位置、颜色阴影数据和目标通道的像素值,得到各个目标通道的初始颜色阴影矩阵;

将初始颜色阴影矩阵进行扩展操作,得到待校正图像的各个目标通道的颜色阴影矩阵。

进一步地,上述颜色阴影校正单元具体用于:

使用从颜色阴影数据中提取出的每个目标通道的基,根据像素位置和目标通道的像素值,计算每个目标通道的初始颜色阴影矩阵的权重系数;

根据每个目标通道的基和权重系数,得到各个目标通道的初始颜色阴影矩阵。

进一步地,上述颜色阴影校正单元具体用于:

将各个目标通道的颜色阴影矩阵分别与第二颜色空间下待校正图像的目标通道的对应像素值相乘,得到第二颜色空间下的校正图像;

将第二颜色空间下的校正图像转换至目标颜色空间,得到目标颜色空间下的校正图像,目标颜色空间为第一颜色空间或第三颜色空间。

在一种可能的实现方式中,上述装置还可以包括;

图像预处理模块,用于对待校正图像进行图像预处理;

上述图像分块单元具体用于:

将图像预处理后的待校正图像划分成第一图像块后,获得每个第一图像块的像素统计值。

在一种可能的实现方式中,上述装置还可以包括:

光谱标定模块,用于分别获取N种单色光下的灰板图,N为大于或等于2的正整数;对灰板图进行图像预处理;将图像预处理后的灰板图划分成第二图像块,并获得每个第二图像块的像素统计值;将每个第二图像块的像素统计值从第四颜色空间转换至第五颜色空间之后,获得第五颜色空间下灰板图的目标通道的像素值,第五颜色空间为与亮度无关的颜色空间;基于N种单色光的灰板图的目标通道的像素值,获得颜色阴影数据。

在一种可能的实现方式中,上述光谱标定模块还用于:从颜色阴影数据中提取出各个目标通道的基。

在一种可能的实现方式中,单色光为可见光范围内的单色光。

在一种可能的实现方式中,上述图像分块单元具体用于:对待校正图像进行网格划分,得到第一图像块;统计每个第一图像块的像素平均值,将像素平均值作为第一图像块的像素统计值。

上述颜色阴影校正装置具有实现上述颜色阴影校正方法的功能,该功能可以通过硬件实现,也可以通过硬件执行相应的软件实现,硬件或软件包括一个或多个与上述功能相对应的模块,模块可以是软件和/或硬件。

需要说明的是,上述装置/模块之间的信息交互、执行过程等内容,由于与本申请方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。

所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

本申请实施例还提供一种计算机可读存储介质,计算机可读存储介质存储有计算机程序,计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。

本申请实施例还提供一种芯片,包括存储器、处理器以及存储在存储器中并可在处理器上运行的计算机程序,处理器执行计算机程序时实现如上述各个方法实施例任一项的方法。

本申请实施例提供一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质至少可以包括:能够将计算机程序代码携带到拍照装置/终端设备的任何实体或装置、记录介质、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质。例如U盘、移动硬盘、磁碟或者光盘等。在某些司法管辖区,根据立法和专利实践,计算机可读介质不可以是电载波信号和电信信号。

在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。

相关技术
  • 颜色阴影校正方法、终端设备及计算机可读存储介质
  • 颜色校正表格制作方法、计算机可读存储介质
技术分类

06120113082279