白平衡同步方法及装置、电子设备和存储介质与流程

文档序号:24347285发布日期:2021-03-19 12:31阅读:72来源:国知局
白平衡同步方法及装置、电子设备和存储介质与流程

本申请涉及成像技术领域,特别涉及一种白平衡同步方法、白平衡同步装置、电子设备和计算机可读存储介质。



背景技术:

在相关技术中,电子设备可以包括多个摄像头,例如主摄、广角、长焦等摄像头。在多个摄像头同时工作时,由于各个摄像头的响应曲线有差异,在变焦过程中会发生颜色跳变的现象,白平衡难以同步,导致多个摄像头获取的颜色难以达到一致性。



技术实现要素:

本申请的实施方式提供一种白平衡同步方法、白平衡同步装置、电子设备和计算机可读存储介质。

本申请实施方式的白平衡同步方法包括:获取第一摄像头的第一白平衡增益值;将所述第一白平衡增益值进行广播以使第二摄像头获得所述第一白平衡增益值;利用所述第二摄像头对应的预设映射算法将所述第一白平衡增益值转换为第二摄像头的第二白平衡增益值。

本申请实施方式的白平衡同步装置包括第一获取模块、第二获取模块和处理模块。所述第一获取模块用于获取第一摄像头的第一白平衡增益值;所述第二获取模块用于将所述第一白平衡增益值进行广播以使第二摄像头获得所述第一白平衡增益值;所述处理模块用于利用所述第二摄像头对应的预设映射算法将所述第一白平衡增益值转换为第二摄像头的第二白平衡增益值。

本申请实施方式的电子设备包括处理器。所述处理器用于:获取第一摄像头的第一白平衡增益值;将所述第一白平衡增益值进行广播以使第二摄像头获得所述第一白平衡增益值;利用所述第二摄像头对应的预设映射算法将所述第一白平衡增益值转换为第二摄像头的第二白平衡增益值。

本申请实施方式的计算机可读存储介质其上存储有计算机程序,所述程序被处理器执行的情况下,实现上述任一项所述的白平衡同步方法的步骤。

本申请实施方式的白平衡同步方法、白平衡同步装置、电子设备和计算机可读存储介质,由于第二白平衡增益值是利用预设映射算法处理第一白平衡增益值后得到的,因此,第二白平衡增益值实质上是根据第一摄像头拍摄的图像所获得的,第二摄像头不需要再根据自身拍摄的图像获得第二白平衡增益值(第一摄像头和第二摄像头的视场角偏差会导致两者拍摄的图像存在明显差异而影响白平衡效果),从而能够使得第一白平衡增益值和第二白平衡增益值相对应,进而实现第一摄像头和第二摄像头的颜色一致性。另外,通过广播的方式可以将第一白平衡增益值告知第二摄像头,第二摄像头可以包括多个,例如为广角摄像头、长焦摄像头等,如此,能够使得多个第二摄像头均获得第一白平衡增益值。

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

附图说明

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

图1是本申请某些实施方式的白平衡同步方法的流程示意图;

图2是本申请某些实施方式的白平衡同步装置的示意图;

图3是本申请某些实施方式的电子设备的平面示意图;

图4至图6是本申请某些实施方式的白平衡同步方法的流程示意图;

图7和图8是本申请某些实施方式的白平衡同步方法的时序示意图;

图9至图11是本申请某些实施方式的白平衡同步方法的流程示意图。

具体实施方式

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

请参阅图1,本申请实施方式的白平衡同步方法包括:

01:获取第一摄像头300的第一白平衡增益值;

02:将第一白平衡增益值进行广播以使第二摄像头400获得第一白平衡增益值;

03:利用第二摄像头400对应的预设映射算法将第一白平衡增益值转换为第二摄像头400的第二白平衡增益值。

请参阅图2,本申请实施方式的白平衡同步装置100包括第一获取模块10、第二获取模块20和处理模块30。本申请的白平衡同步方法可以由本申请实施方式的白平衡同步装置100实现,其中,步骤01可以由第一获取模块10实现,步骤02可以由第二获取模块20实现,步骤03可以由处理模块30实现,也即是说,第一获取模块10用于获取第一摄像头300的第一白平衡增益值。第二获取模块20用于将第一白平衡增益值进行广播以使第二摄像头400获得第一白平衡增益值。处理模块30用于利用第二摄像头400对应的预设映射算法将第一白平衡增益值转换为第二摄像头400的第二白平衡增益值。

请参阅图3,本申请实施方式的电子设备1000包括处理器200。本申请实施方式的白平衡同步方法可以由本申请实施方式的电子设备1000实现,其中,步骤01、步骤02、步骤03均可以由处理器200实现,也即是说,处理器200可用于:获取第一摄像头300的第一白平衡增益值;将第一白平衡增益值进行广播以使第二摄像头400获得第一白平衡增益值;利用第二摄像头400对应的预设映射算法将第一白平衡增益值转换为第二摄像头400的第二白平衡增益值。

处理器200可以是指驱动板。驱动板可以是中央处理单元(centralprocessingunit,cpu),还可以是其他通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、专用集成电路(applicationspecificintegratedcircuit,asic)、现成可编程门阵列(field-programmablegatearray,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。

在某些实施方式中,电子设备1000还包括第一摄像头300和第二摄像头400、壳体500,第一摄像头300和第二摄像头400设置在壳体500上。

本申请实施方式的电子设备1000可以是配置有处理器200的终端设备。例如,电子设备1000可以包括智能手机、摄像机、平板电脑或其他终端设备。本申请实施方式的电子设备1000以智能手机为例进行举例说明,不能理解为对本申请的限制。

本申请实施方式的白平衡同步方法、白平衡同步装置100和电子设备1000,由于第二白平衡增益值是利用预设映射算法处理第一白平衡增益值后得到的,因此,第二白平衡增益值实质上是根据第一摄像头300拍摄的图像所获得的,第二摄像头400不需要再根据自身拍摄的图像获得第二白平衡增益值(第一摄像头300和第二摄像头400的视场角偏差会导致两者拍摄的图像存在明显差异而影响白平衡效果),从而能够使得第一白平衡增益值和第二白平衡增益值相对应,进而实现第一摄像头300和第二摄像头400的颜色一致性。另外,通过广播的方式可以将第一白平衡增益值告知第二摄像头400,第二摄像头400可以包括多个,例如为广角摄像头、长焦摄像头等,如此,能够使得多个第二摄像头400均获得第一白平衡增益值。

请参阅图4,在某些实施方式中,白平衡同步方法包括:

042:在第一摄像头300拍摄的第一图像用于显示时,控制第一摄像头300处于工作状态;

044:在第二摄像头400拍摄的第二图像用于显示时,控制第一摄像头300和第二摄像头400均处于工作状态。

在某些实施方式中,白平衡同步装置100包括第一控制模块和第二控制模块。其中,步骤042可以由第一控制模块实现,步骤044可以由第二控制模块实现。也即是说,第一控制模块用于:在第一摄像头300拍摄的第一图像用于显示时,控制第一摄像头300处于工作状态。第二控制模块用于:在第二摄像头400拍摄的第二图像用于显示时,控制第一摄像头300和第二摄像头400均处于工作状态。

在某些实施方式中,电子设备1000包括处理器200,步骤042和步骤044均可以由处理器200实现,也即是说,处理器200用于在第一摄像头300拍摄的第一图像用于显示时,控制第一摄像头300处于工作状态;在第二摄像头400拍摄的第二图像用于显示时,控制第一摄像头300和第二摄像头400均处于工作状态。

具体地,在第一摄像头300拍摄的第一图像用于显示时,第一摄像头300处于工作状态,第二摄像头400可以处于非工作状态。在第二摄像头400拍摄的第二图像用于显示时,第二摄像头400处于工作状态且第一摄像头300也处于工作状态。如此,无论是第一摄像头300拍摄的第一图像用于显示还是第二摄像头400拍摄的第二图像用于显示,第一摄像头300始终处于工作状态。如此才能获得将第一白平衡增益值,并将第一白平衡增益值进行广播以使第二摄像头400获得第一白平衡增益值。

请参阅图5,在某些实施方式中,在第二摄像头400拍摄的第二图像用于显示时,控制第一摄像头300和第二摄像头400均处于工作状态,包括:

0442:在第二图像用于显示时,控制第一摄像头300以低于预设帧率的拍摄帧率进行工作。

在某些实施方式中,步骤042可以由第二控制模块实现。也即是说,第二控制模块用于:在第二图像用于显示时,控制第一摄像头300以低于预设帧率的拍摄帧率进行工作。

在某些实施方式中,电子设备1000包括处理器200,步骤0442可以由处理器200实现,也即是说,处理器200用于在第二图像用于显示时,控制第一摄像头300以低于预设帧率的拍摄帧率进行工作。

具体地,在第二图像用于显示时,第一摄像头300以低于预设帧率的拍摄帧率进行工作。在一个例子中,预设帧率可以为5帧,低于预设帧率的拍摄帧率可以是2-5帧。如此,可以保证第一摄像头300始终处于工作状态,并且不会过多的消耗整体的功耗。第一摄像头300以低于预设帧率的拍摄帧率进行工作以保证电子设备的使用时长。

在某些实施方式中,在第二图像用于显示时,第一摄像头300还可以暂时关闭图像后处理算法(白平衡算法后的其他算法)以降低整体的功耗。如此,可以在不影响获得第一白平衡增益值的同时,进一步地降低整体的功耗。

请一并参阅图6和图7,在某些实施方式中,白平衡同步方法包括:

051:创建多个摄像头的线程,多个摄像头包括第一摄像头300和第二摄像头400;

052:初始化每个线程的主摄像头的增益值获取函数和副摄像头的增益值获取函数,副摄像头的增益值获取函数包括预设映射算法;

053:将第一摄像头300确定为主摄像头,将第二摄像头400确定为副摄像头;

054:接收将第一摄像头300切换为第二摄像头400的切换信号;

获取第一摄像头300的第一白平衡增益值,包括:

012:根据主摄像头的增益值获取函数获取第一白平衡增益值。

在某些实施方式中,白平衡同步装置100包括创建模块、第三获取模块、确定模块、接收模块。其中,步骤051可以由创建模块实现,步骤052可以由第三获取模块实现,步骤053可以由确定模块实现,步骤054可以由接收模块实现,步骤012可以由第一获取模块实现。也即是说,创建模块用于:创建多个摄像头的线程,多个摄像头包括第一摄像头300和第二摄像头400。第三获取模块用于:初始化每个线程的主摄像头的增益值获取函数和副摄像头的增益值获取函数,副摄像头的增益值获取函数包括预设映射算法。确定模块用于:将第一摄像头300确定为主摄像头,将第二摄像头400确定为副摄像头。接收模块用于:接收将第一摄像头300切换为第二摄像头400的切换信号。第一获取模块用于:根据主摄像头的增益值获取函数获取第一白平衡增益值。

在某些实施方式中,电子设备1000包括处理器200,步骤051、步骤052、步骤053、步骤054和步骤012均可以由处理器200实现,也即是说,处理器200用于创建多个摄像头的线程,多个摄像头包括第一摄像头300和第二摄像头400;初始化每个线程的主摄像头的增益值获取函数和副摄像头的增益值获取函数,副摄像头的增益值获取函数包括预设映射算法;将第一摄像头300确定为主摄像头,将第二摄像头400确定为副摄像头;接收将第一摄像头300切换为第二摄像头400的切换信号;根据主摄像头的增益值获取函数获取第一白平衡增益值。

请参阅图7,具体地,创建多个摄像头的线程,多个摄像头包括第一摄像头300和第二摄像头400。在某些实施方式中,第一摄像头300可以包括高清摄像头、广角摄像头和长焦摄像头等;第二摄像头400可以包括多个摄像头,第二摄像头400包括高清摄像头、广角摄像头和长焦摄像头等。首先初始化每个线程的主摄像头的增益值获取函数和副摄像头的增益值获取函数(开启光变同步初始化),副摄像头的增益值获取函数包括预设映射算法。在第一摄像头初始化副摄像头的增益值获取函数时,获取所有摄像头的id阵列和第一摄像头的自身id,并获取其他摄像头与第一摄像头的映射关系(即预设映射算法中包含的白平衡映射关系)。在第二摄像头初始化副摄像头的增益值获取函数时,获取所有摄像头的id阵列和第二摄像头的自身id,并获取其他摄像头与第二摄像头的映射关系(即预设映射算法中包含的白平衡映射关系)。在一个实施例中,可以将第一摄像头300确定为主摄像头,将第二摄像头400确定为副摄像头,此时主设备为当前设备(masterdev=thisdev),切换标志为可以切换(syncen=1)。如此,可以根据主摄像头的增益值(即第一摄像头300的增益值)获取函数获取第一白平衡增益值。值得一提的是,在某些实施方式中,多个摄像头的线程包括algo线程和syncawb线程。algo线程可以在第一摄像头300确定为主摄像头,将第二摄像头400确定为副摄像头时,获取主摄像头与第二摄像头400的映射关系。algo线程还可以用于传递将第一摄像头300切换为第二摄像头400的切换信号。syncawb线程可以用于将第一摄像头300切换为第二摄像头400。

请一并参阅图8和图9,在某些实施方式中,白平衡同步方法包括:

06:将显示图像由第一摄像头300拍摄的第一图像切换成第二摄像头400拍摄的第二图像。

在某些实施方式中,白平衡同步装置100包括切换模块。其中,步骤06可以由切换模块实现。也即是说,切换模块用于:将显示图像由第一摄像头300拍摄的第一图像切换成第二摄像头400拍摄的第二图像。

在某些实施方式中,电子设备1000包括处理器200,步骤06可以由处理器200实现,也即是说,处理器200用于将显示图像由第一摄像头300拍摄的第一图像切换成第二摄像头400拍摄的第二图像。

具体地,第一白平衡增益可以进行广播以使副摄像头获得第一白平衡增益值,然后可以让第二摄像头300先进行运行,此时切换标志为可以切换(syncen=1),主设备不是当前设备(masterdev!=thisdev)。根据第一白平衡增益值和预设映射算法即可计算第二白平衡增益值,然后将显示图像由第一摄像头300拍摄的第一图像切换成第二摄像头400拍摄的第二图像,此时主设备由于进行了切换,因此主设备不是先前设备(masterdev!=predev,masterdev=thisdev)。由于第二摄像头400拍摄的第二图像的第二白平衡增益值实质上是根据第一摄像头300拍摄的图像所获得的,能够使得第一白平衡增益值和第二白平衡增益值相对应,进而实现第一图像和第二图像的颜色一致性。

请参阅图10,在某些实施方式中,白平衡同步方法包括:

072:利用第二图像替换有限长单位冲激响应滤波器中的第一图像;

074:利用限长单位冲激响应滤波器中的图像对第二图像进行图像后处理。

在某些实施方式中,白平衡同步装置100包括替换模块和第二处理模块。步骤072可以由替换模块实现,步骤074可以由第二处理模块实现。也即是说,替换模块用于:利用第二图像替换有限长单位冲激响应滤波器中的第一图像。第二处理模块用于:利用限长单位冲激响应滤波器中的图像对第二图像进行图像后处理。

在某些实施方式中,电子设备1000包括处理器200,步骤072和步骤074均可以由处理器200实现,也即是说,处理器200用于利用第二图像替换有限长单位冲激响应滤波器中的第一图像;利用限长单位冲激响应滤波器中的图像对第二图像进行图像后处理。

具体地,利用第二图像替换有限长单位冲激响应滤波器中的第一图像,利用限长单位冲激响应滤波器中的图像对第二图像进行图像后处理可以保证显示画面过渡更加顺滑。在某些实施方式中,图像后处理包括图像校正和调整、高级降噪、时域滤波、色彩失常校正、色彩空间转换、局部色调映射、色彩校正、伽玛校正、查找表技术、色彩调整和色度增强、色度抑制、自适应空间滤波器、上采样、纹理增加、下采样中的至少一种,此处不作限定。

请参阅图11,在某些实施方式中,白平衡同步方法包括:

082:根据第一摄像头300的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第一摄像头300的第一白平衡增益训练集;

084:根据第二摄像头400的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第二摄像头400的第二白平衡增益训练集;

086:根据第一白平衡增益训练集和第二白平衡增益训练集训练映射模型以调整映射模型的权重并得到预测模型以作为预设映射算法。

在某些实施方式中,白平衡同步装置100包括第四获取模块、第五获取模块和第三处理模块。其中,步骤082可以由第四获取模块实现,步骤084可以由第五获取模块实现,步骤086可以由第三处理模块实现。也即是说,第四获取模块用于:根据第一摄像头300的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第一摄像头300的第一白平衡增益训练集。第五获取模块用于:根据第二摄像头400的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第二摄像头400的第二白平衡增益训练集。第三处理模块用于:根据第一白平衡增益训练集和第二白平衡增益训练集训练映射模型以调整映射模型的权重并得到预测模型以作为预设映射算法。

在某些实施方式中,电子设备1000包括处理器200,步骤082、步骤084和步骤086均可以由处理器200实现,也即是说,处理器200用于根据第一摄像头300的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第一摄像头300的第一白平衡增益训练集;根据第二摄像头400的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第二摄像头400的第二白平衡增益训练集;根据第一白平衡增益训练集和第二白平衡增益训练集训练映射模型以调整映射模型的权重并得到预测模型以作为预设映射算法。

具体地,根据第一摄像头300的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第一摄像头300的第一白平衡增益训练集,根据第二摄像头400的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第二摄像头400的第二白平衡增益训练集。颜色刺激值可以通过包括r通道、g通道、b通道三个颜色通道的颜色刺激值曲线得到。各种光源的能量分布可以是环境光光源在可见光波段(380nm~780nm)的响应,可以从公有数据集中获得318种光源数据作为预设光源的能量分布数据。各种物体的反射率中,物体例如包括:金、银、铜、铝、镍和铂。

在某些实施方式中,第一摄像头300的颜色刺激值包括多个颜色通道的颜色刺激值,各种光源的能量分布包括预设光源的能量分布,各种物体的反射率包括预设灰块的反射率,第一白平衡增益训练集包括多个第一白平衡增益训练值;根据第一摄像头300的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第一摄像头300的第一白平衡增益训练集,包括:

根据一个颜色通道的颜色刺激值、预设光源的能量分布、预设灰块的反射率计算对应的颜色通道的像素值;

获取各个颜色通道的像素值作为第一白平衡增益训练值。

如此,根据一个颜色通道的颜色刺激值、预设光源的能量分布、预设灰块的反射率计算对应的颜色通道的像素值,然后可以获取各个颜色通道的像素值作为第一白平衡增益训练值。

在某些实施方式中,根据一个颜色通道的颜色刺激值、预设光源的能量分布、预设灰块的反射率计算对应的颜色通道的像素值,包括:

采用预设公式计算一个颜色通道的像素值,预设公式为

ρk=∫e(λ)s(λ)rk(λ)dλk∈r,g,b

k为各个颜色通道,各个颜色通道包括r通道、g通道和b通道,ρk为对应的颜色通道的像素值,λ为波长,e(λ)为预设光源的能量分布,s(λ)为预设灰块的反射率,rk(λ)为对应的颜色通道的颜色刺激值。

在一个例子中,k为第一摄像头300的各个颜色通道,颜色通道可以包括:红色通道(r1)、绿色通道(g1)和蓝色通道(b1)。预设灰块可以是24色卡最后6个灰块的反射率。如此,可以通过预设光源的能量分布、预设灰块的反射率和各个颜色通道的颜色刺激值得到各个颜色通道的像素值。值得一提的是,第一摄像头300的颜色通道包括但不限于r1通道、g1通道和b1通道,此处不能理解为对本申请的限制。

在某些实施方式中,颜色通道的像素值包括预设通道的像素值和其他通道的像素值,获取各个颜色通道的像素值作为第一白平衡增益训练值,包括:

获取各个其他通道的像素值与预设通道的像素值的比值作为第一白平衡增益训练值。

在一个例子中,预设通道可以是g1通道,其他通道包括r1通道和b1通道,如此第一白平衡增益训练值为(g1/r1,g1/b1)。值得一提的是,上述例子是利用g通道为预设通道,相对于r通道和b通道来说,g通道的光敏感度最高,计算出的第一白平衡增益训练值的精度更高。在某些实施方式中,也可以使用其他颜色通道为预设通道计算第一白平衡增益训练值,此处不做限定。

在某些实施方式中,第二摄像头400的颜色刺激值包括多个颜色通道的颜色刺激值,各种光源的能量分布包括预设光源的能量分布,各种物体的反射率包括预设灰块的反射率,第二白平衡增益训练集包括多个第二白平衡增益训练值;根据第二摄像头400的颜色刺激值、各种光源的能量分布和各种物体的反射率获取第二摄像头400的第二白平衡增益训练集,包括:

根据一个颜色通道的颜色刺激值、预设光源的能量分布、预设灰块的反射率计算对应的颜色通道的像素值;

获取各个颜色通道的像素值作为第二白平衡增益训练值。

如此,根据一个颜色通道的颜色刺激值、预设光源的能量分布、预设灰块的反射率计算对应的颜色通道的像素值,然后可以获取各个颜色通道的像素值作为第二白平衡增益训练值。

在某些实施方式中,根据一个颜色通道的颜色刺激值、预设光源的能量分布、预设灰块的反射率计算对应的颜色通道的像素值,包括:

采用预设公式计算一个颜色通道的像素值,预设公式为

ρk=∫e(λ)s(λ)rk(λ)dλk∈r,g,b

k为各个颜色通道,各个颜色通道包括r通道、g通道和b通道,ρk为对应的颜色通道的像素值,λ为波长,e(λ)为预设光源的能量分布,s(λ)为预设灰块的反射率,rk(λ)为对应的颜色通道的颜色刺激值。

在一个例子中,k为第二摄像头400的各个颜色通道,颜色通道可以包括:红色通道(r2)、绿色通道(g2)和蓝色通道(b2)。预设灰块可以是24色卡最后6个灰块的反射率。如此,可以通过预设光源的能量分布、预设灰块的反射率和各个颜色通道的颜色刺激值得到各个颜色通道的像素值。值得一提的是,第二摄像头400的颜色通道包括但不限于r2通道、g2通道和b2通道,不能理解为对本申请的限制。

在某些实施方式中,318种光源数据作为预设光源的能量分布数据和24色卡最后6个灰块的反射率,结合第一摄像头300及第二摄像头400的各个颜色通道的颜色刺激值,形成1908组像素值数据(即第一白平衡增益训练集和第二白平衡增益训练集),这些数据反映了各种光源下第一摄像头300与第二摄像头400的白平衡信息。

在某些实施方式中,颜色通道的像素值包括预设通道的像素值和其他通道的像素值,获取各个颜色通道的像素值作为第二白平衡增益训练值,包括:

获取各个其他通道的像素值与预设通道的像素值的比值作为第二白平衡增益训练值。

在一个例子中,预设通道可以是g2通道,其他通道包括r2通道和b2通道,如此第二白平衡增益训练值为(g2/r2,g2/b2)。值得一提的是,上述例子是利用g通道为预设通道,相对于r通道和b通道来说,g通道的光敏感度最高,计算出的第二白平衡增益训练值的精度更高。在某些实施方式中,也可以使用其他颜色通道为预设通道计算第二白平衡增益训练值,此处不做限定。

在某些实施方式中,第一白平衡增益训练集包括多个第一白平衡增益训练值,映射模型为径向基函数网络,径向基函数网络包括多个训练节点,根据第一白平衡增益训练集和第二白平衡增益训练集训练映射模型以调整映射模型的权重并得到预测模型,包括:

确定第一白平衡增益训练值的多个中心点;

根据多个中心点分别确定多个训练节点以得到径向基函数网络。

在一个例子中,第一白平衡增益训练集包括多个第一白平衡增益训练值,可以通过使用聚类算法(例如kmeans算法)对多个第一白平衡增益训练值进行聚类得到第一白平衡增益训练值的多个中心点。例如:中心点的数量可以为8个,可以根据8个中心点分别确定8个训练节点以得到径向基函数网络。

在某些实施方式中,根据第一白平衡增益训练集和第二白平衡增益训练集训练映射模型以调整映射模型的权重并得到预测模型,还包括:

将第一白平衡增益训练集作为径向基函数网络的输入,将第二白平衡增益训练集作为径向基函数网络的输出,利用多个径向基函数的方差训练径向基函数网络以得到多个径向基函数的权重和多个已训练径向基函数网络;

利用白平衡增益测试集测试多个已训练径向基函数网络以确定各个已训练径向基函数网络的误差;

将误差最小的已训练径向基函数网络作为预测模型。

在一个例子中,第一白平衡增益训练集和第二白平衡增益训练集可以包括1908组数据作为训练数据。将第一白平衡增益训练集作为径向基函数网络的输入,将第二白平衡增益训练集作为径向基函数网络的输出,利用多个径向基函数的方差训练径向基函数网络以得到多个径向基函数的权重和多个已训练径向基函数网络。白平衡增益测试集包括第一白平衡增益测试集和第二白平衡增益测试集,第一白平衡增益测试集通过已训练径向基函数网络后输出第一白平衡增益测试集输出结果,第一白平衡增益测试集输出结果即为第二白平衡增益计算集,将第二白平衡增益计算集与第二白平衡增益训练集进行比较,以此确定第二白平衡增益计算集与第二白平衡增益训练集的误差,将误差最小的已训练径向基函数网络作为预测模型。

其中,径向基函数的方差可以是手动指定的,经过多次调试后选择合适的径向基函数的方差,例如:经过多次调试选择[1.91.9]为径向基函数的方差,此时的已训练径向基函数网络为误差最小的已训练径向基函数网络,如此,将这个已训练径向基函数网络作为预测模型。训练后的预测模型能够反应第一摄像头300和第二摄像头400的白平衡映射关系,从而预测模型能够根据第一摄像头300的白平衡增益值获得第二摄像头400的白平衡增益值,进而实现第一摄像头300和第二摄像头400的颜色一致性。

如此,由于第一白平衡增益训练集和第二白平衡增益训练集是根据相同的各种光源能量分布和相同的各种物体的反射率获得的,因此,第一白平衡增益训练集和第二白平衡增益训练集相对应,通过相对应的训练集对映射模型进行训练,能够使得训练后的预测模型能够反应第一摄像头300和第二摄像头400的白平衡映射关系,从而预测模型能够根据第一摄像头300的白平衡增益值获得第二摄像头400的白平衡增益值,进而实现第一摄像头300和第二摄像头400的颜色一致性。

值得一提的是,上述实施方式的白平衡同步方法可以由白平衡同步装置100实现,也可以由本申请实施方式的电子设备1000实现,此处不作限定。

本申请实施方式的计算机可读存储介质,其上存储有计算机程序,程序被处理器执行的情况下,实现上述任一实施方式的白平衡同步方法的步骤。

上述实施方式的计算机可读存储介质中,由于第二白平衡增益值是利用预设映射算法处理第一白平衡增益值后得到的,因此,第二白平衡增益值实质上是根据第一摄像头300拍摄的图像所获得的,第二摄像头400不需要再根据自身拍摄的图像获得第二白平衡增益值(第一摄像头300和第二摄像头400的视场角偏差会导致两者拍摄的图像存在明显差异而影响白平衡效果),从而能够使得第一白平衡增益值和第二白平衡增益值相对应,进而实现第一摄像头300和第二摄像头400的颜色一致性。另外,通过广播的方式可以将第一白平衡增益值告知第二摄像头400,第二摄像头400可以包括多个,例如为广角摄像头、长焦摄像头等,如此,能够使得多个第二摄像头400均获得第一白平衡增益值。

可以理解,计算机程序包括计算机程序代码。计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。计算机可读存储介质可以包括:能够携带计算机程序代码的任何实体或装置、记录介质、u盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、以及软件分发介质等。

在本说明书的描述中,参考术语“一个实施方式”、“一些实施方式”、“示意性实施方式”、“示例”、“具体示例”或“一些示例”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。

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

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

另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

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

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

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

上述提到的存储介质可以是只读存储器,磁盘或光盘等。

尽管上面已经示出和描述了本申请的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施方式进行变化、修改、替换和变型。

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