一种拍照方法、终端设备及计算机可读存储介质转让专利

申请号 : CN201910472318.2

文献号 : CN110213484B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 费勇超

申请人 : 维沃移动通信有限公司

摘要 :

本发明涉及计算机技术领域,提供一种拍照方法、终端设备及计算机可读存储介质,以解决在拍照过程中图像质量效果不佳的问题。该方法包括:基于摄像头采集的预览图像,计算基准曝光量;获取动态范围参数值;根据基准曝光量以及动态范围参数值,确定目标曝光量;获取摄像头基于目标曝光量拍摄的目标图像。即在确定目标曝光量过程中,不仅考虑了基准曝光量,而且还考虑了动态范围参数值,且动态范围参数值基于根据基准曝光量确定的至少两个曝光量以及摄像头基于至少两个曝光量采集的图像确定,通过基准曝光量以及动态范围参数值对终端设备进行曝光调整,可提高目标曝光量的准确性,从而按照目标曝光量进行拍摄时,可提高拍摄得到的目标图像的质量。

权利要求 :

1.一种拍照方法,其特征在于,应用于包括摄像头的终端设备,所述方法包括:基于所述摄像头采集的预览图像,计算基准曝光量;

获取动态范围参数值,其中,所述动态范围参数值基于根据所述基准曝光量确定的至少两个曝光量以及所述摄像头基于所述至少两个曝光量采集的图像确定;

根据所述基准曝光量以及所述动态范围参数值,确定目标曝光量;

获取所述摄像头基于所述目标曝光量拍摄的目标图像;

确定所述动态范围参数值的方式包括:获取目标曝光比值;

基于所述基准曝光量以及所述目标曝光比值,确定所述至少两个曝光量;

获取所述摄像头基于所述至少两个曝光量采集的图像;

根据所述摄像头基于至少两个曝光量采集的图像以及所述至少两个曝光量,确定所述动态范围参数值;

所述至少两个曝光量包括第一曝光量和第二曝光量,所述第一曝光量大于所述第二曝光量;

所述基于所述基准曝光量以及所述目标曝光比值,确定所述至少两个曝光量,包括:将所述基准曝光量确定为所述第一曝光量;

将所述基准曝光量与目标曝光比值之间的比确定为所述第二曝光量。

2.根据权利要求1所述的方法,其特征在于,所述第一曝光量对应的图像为第一图像,所述第二曝光量对应的图像为第二图像;

所述根据所述摄像头基于至少两个曝光量采集的图像以及所述至少两个曝光量,确定所述动态范围参数值,包括:

获取所述第一图像中的第一目标位置的像素值,其中,所述第一目标位置为在所述第二图像中的像素值最小且在所述第一图像的像素值最小的位置;

获取所述第二图像中的第二目标位置的像素值,其中,所述第二目标位置为在所述第一图像中的像素值小于预设像素阈值,且在所述第二图像中的像素值最大的位置;

根据所述第一目标位置的像素值、所述第二目标位置的像素值、所述第一曝光量以及所述第二曝光量,计算所述动态范围参数值。

3.根据权利要求2所述的方法,其特征在于,所述根据所述第一目标位置的像素值、所述第二目标位置的像素值、所述第一曝光量以及所述第二曝光量,计算所述动态范围参数值,包括:

基于所述第一目标位置的像素值、所述第二目标位置的像素值、所述第一曝光量以及所述第二曝光量,计算得到初始动态范围参数值;

在所述第二目标位置的像素值等于所述预设像素阈值的情况下,基于所述初始动态范围参数值,确定所述动态范围参数值,所述动态范围参数值大于或等于所述初始动态范围参数值;

通过以下公式计算所述初始动态范围参数值:或

其中,ShortMaxPixelValue为所述第二目标位置的像素值,ShortMinPixelValue为所述第二图像中的最小值,LongExposure为第一曝光量,shortExposure为第二曝光量,若ShortMinPixelValue等于零,通过公式 计算所述初始动态范围参数,若ShortMinPixelValue大于零,通过公式计算所述初始动态范围参数。

4.根据权利要求3所述的方法,其特征在于,所述根据所述第一目标位置的像素值、所述第二目标位置的像素值、所述第一曝光量以及所述第二曝光量,计算所述动态范围参数值,还包括:

在所述第二目标位置的像素值小于所述预设像素阈值的情况下,将所述初始动态范围参数值确定为所述动态范围参数值。

5.根据权利要求1所述的方法,其特征在于,所述根据所述基准曝光量以及所述动态范围参数值,确定目标曝光量,包括:基于所述动态范围参数值,确定N个曝光调整量,所述N为正整数;

将所述基准曝光量分别与N个所述曝光量调整量相加,得到N个第一目标曝光量;

基于N个第一目标曝光量确定所述目标曝光量,所述目标曝光量包括所述N个第一目标曝光量。

6.根据权利要求5所述的方法,其特征在于,所述基于所述动态范围参数值,确定N个曝光调整量,包括:

在所述动态范围参数值小于或等于预设值的情况下,确定第一曝光调整量;

在所述动态范围参数值大于预设值的情况下,确定至少两个第二曝光调整量,其中,所述第二曝光调整量的绝对值大于所述第一曝光调整量的绝对值,所述目标曝光量还包括所述基准曝光量。

7.一种终端设备,其特征在于,具有摄像头,所述终端设备包括:计算模块,用于基于所述摄像头采集的预览图像,计算基准曝光量;

动态范围参数值获取模块,用于获取动态范围参数值,其中,所述动态范围参数值基于根据所述基准曝光量确定的至少两个曝光量以及所述摄像头基于所述至少两个曝光量采集的图像确定;

目标曝光量确定模块,用于根据所述基准曝光量以及所述动态范围参数值,确定目标曝光量;

目标图像获取模块,用于获取所述摄像头基于所述目标曝光量拍摄的目标图像;

所述终端设备,还包括:

曝光比值获取模块,用于获取目标曝光比值;

曝光量确定模块,用于基于所述基准曝光量以及所述目标曝光比值,确定所述至少两个曝光量;

图像获取模块,用于获取所述摄像头基于所述至少两个曝光量采集的图像;

参数值确定模块,用于根据所述摄像头基于至少两个曝光量采集的图像以及所述至少两个曝光量,确定所述动态范围参数值;

所述至少两个曝光量包括第一曝光量和第二曝光量,所述第一曝光量大于所述第二曝光量;

所述曝光量确定模块,包括:

第一曝光量确定模块,用于将所述基准曝光量确定为所述第一曝光量;

第二曝光量确定模块,用于将所述基准曝光量与目标曝光比值之间的比确定为所述第二曝光量。

8.根据权利要求7所述的终端设备,其特征在于,所述第一曝光量对应的图像为第一图像,所述第二曝光量对应的图像为第二图像;

所述参数值确定模块,包括:

第一像素值获取模块,用于获取所述第一图像中的第一目标位置的像素值,其中,所述第一目标位置为在所述第二图像中的像素值最小且在所述第一图像的像素值最小的位置;

第二像素值获取模块,用于获取所述第二图像中的第二目标位置的像素值,其中,所述第二目标位置为在所述第一图像中的像素值小于预设像素阈值,且在所述第二图像中的像素值最大的位置;

动态范围参数值计算模块,用于根据所述第一目标位置的像素值、所述第二目标位置的像素值、所述第一曝光量以及所述第二曝光量,计算所述动态范围参数值。

9.根据权利要求8所述的终端设备,其特征在于,所述动态范围参数值计算模块,包括:初始参数值计算模块,用于基于所述第一目标位置的像素值、所述第二目标位置的像素值、所述第一曝光量以及所述第二曝光量,计算得到初始动态范围参数值;

态范围参数值确定模块,用于在所述第二目标位置的像素值等于所述预设像素阈值的情况下,基于所述初始动态范围参数值,确定所述动态范围参数值,所述动态范围参数值大于或等于所述初始动态范围参数值;

通过以下公式计算所述初始动态范围参数值:或

其中,ShortMaxPixelValue为所述第二目标位置的像素值,ShortMinPixelValue为所述第二图像中的最小值,LongExposure为第一曝光量,shortExposure为第二曝光量,若ShortMinPixelValue等于零,通过公式 计算所述初始动态范围参数,若ShortMinPixelValue大于零,通过公式计算所述初始动态范围参数。

10.根据权利要求9所述的终端设备,其特征在于,所述态范围参数值确定模块,还用于在所述第二目标位置的像素值小于所述预设像素阈值的情况下,将所述初始动态范围参数值确定为所述动态范围参数值。

11.根据权利要求7所述的终端设备,其特征在于,所述目标曝光量确定模块,包括:调整量确定模块,用于基于所述动态范围参数值,确定N个曝光调整量,所述N为正整数;

曝光量处理模块,用于将所述基准曝光量分别与N个所述曝光量调整量相加,得到N个第一目标曝光量;

目标曝光量获取模块,用于基于N个第一目标曝光量确定所述目标曝光量,所述目标曝光量包括所述N个第一目标曝光量。

12.根据权利要求11所述的终端设备,其特征在于,所述调整量确定模块用于,在所述动态范围参数值小于或等于预设值的情况下,确定第一曝光调整量;

在所述动态范围参数值大于预设值的情况下,确定至少两个第二曝光调整量,其中,所述第二曝光调整量的绝对值大于所述第一曝光调整量的绝对值,所述目标曝光量还包括所述基准曝光量。

13.一种移动终端,其特征在于,包括:存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现如权利要求1至6任一项所述的拍照方法中的步骤。

14.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的拍照方法中的步骤。

说明书 :

一种拍照方法、终端设备及计算机可读存储介质

技术领域

[0001] 本发明实施例涉及计算机技术领域,尤其涉及一种拍照方法、终端设备及计算机可读存储介质。

背景技术

[0002] 随着计算机技术发展,终端设备的功能越来越强大,拍照功能是终端上设备常见的功能。拍照技术的日新月异,使终端设备的拍照功能越来越强大,用户对拍照要求也越来
越高。
[0003] 目前自动曝光控制方法基于灰度世界理论,对当前场景设置一个亮度目标(Target),然后通过调整曝光量达到当前亮度目标值。在高光比场景,通过判断高亮区域占
比可以动态调整亮度目标值。即通过控制图像中高亮区域占比(也可以是暗区占比),来调
整曝光量,让曝光量减小或增大,实现图像的拍摄。另外,还可通过HDR(高动态范围)算法进
行曝光控制实现图像的拍摄,即在基准曝光基础上,以同等比例调整得到两个曝光,通过3
个曝光量(基准曝光和同等比例调整得到两个曝光)进行曝光,得到当前场景3个不同曝光
量对应的图像,最后进行合成得到一个高动态范围的输出图像。
[0004] 然而,上述通过高亮区域占比调整曝光量或通过HDR算法进行曝光控制实现图像拍摄的过程中,容易导致图像质量效果不佳。

发明内容

[0005] 本发明实施例提供一种拍照方法、终端设备及计算机可读存储介质,以解决现有技术拍摄的图像质量效果不佳的问题。
[0006] 为了解决上述技术问题,本发明是这样实现的:
[0007] 第一方面,本发明实施例提供了一种拍照方法,应用于包括摄像头的终端设备,所述方法包括:
[0008] 基于所述摄像头采集的预览图像,计算基准曝光量;
[0009] 获取动态范围参数值,其中,所述动态范围参数值基于根据所述基准曝光量确定的至少两个曝光量以及所述摄像头基于所述至少两个曝光量采集的图像确定;
[0010] 根据所述基准曝光量以及所述动态范围参数值,确定目标曝光量;
[0011] 获取所述摄像头基于所述目标曝光量拍摄的目标图像。
[0012] 第二方面,本发明实施例还提供一种终端设备,具有摄像头,所述终端设备包括:
[0013] 计算模块,用于基于所述摄像头采集的预览图像,计算基准曝光量;
[0014] 动态范围参数值获取模块,用于获取动态范围参数值,其中,所述动态范围参数值基于根据所述基准曝光量确定的至少两个曝光量以及所述摄像头基于所述至少两个曝光
量采集的图像确定;
[0015] 目标曝光量确定模块,用于根据所述基准曝光量以及所述动态范围参数值,确定目标曝光量;
[0016] 目标图像获取模块,用于获取所述摄像头基于所述目标曝光量拍摄的目标图像。
[0017] 第三方面,本发明实施例还提供一种终端设备,包括:存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现本发明实施例的拍照方法中
的步骤。
[0018] 第四方面,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储计算机程序,所述计算机程序被处理器执行时实现本发明实施例提供的拍照方
法中的步骤。
[0019] 本发明实施例的拍照方法中,通过摄像头采集的预览图像,计算基准曝光量,并获取动态范围参数值,以确定目标曝光量,并获取摄像头基于所述目标曝光量拍摄的目标图
像。即在确定目标曝光量过程中,不仅考虑了基准曝光量,而且还考虑了动态范围参数值,
且动态范围参数值基于根据基准曝光量确定的至少两个曝光量以及摄像头基于至少两个
曝光量采集的图像确定,即考虑了再至少两个曝光量下的图像的实际情况,通过基准曝光
量以及动态范围参数值对终端设备进行曝光调整,得到目标曝光量,可提高目标曝光量的
准确性,从而按照目标曝光量进行拍摄时,可提高拍摄得到的目标图像的质量。

附图说明

[0020] 图1是本发明实施例提供的拍照方法的流程图之一;
[0021] 图2是人眼可见亮度范围图;
[0022] 图3是实际场景图;
[0023] 图4是本发明实施例提供的拍照方法中得到的第一图像和第二图像的像素示意图;
[0024] 图5是本发明实施例提供的终端设备的示意图。
[0025] 图6是本发明实施例提供的终端设备的硬件结构示意图。

具体实施方式

[0026] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发
明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施
例,都属于本发明保护的范围。
[0027] 参照图1,在一个实施例中,提供一种拍照方法,应用于包括摄像头的终端设备,方法包括:
[0028] 步骤101:基于摄像头采集的预览图像,计算基准曝光量。
[0029] 启动拍照(例如,对终端设备上的拍照图标进行点击操作,终端设备响应该点击操作,启动拍照,或者也可以通过语音等启动拍照),摄像头可对当前场景进行图像采集,在终
端设备的显示屏上可显示摄像头采集的预览图像,即可实现对当前场景的图像的预览,用
户可对显示的预览图像进行查看,以便用户实时查看预览图像的效果。
[0030] 曝光量由光圈和快门共同控制,是影响图像质量的重要参数,动态范围参数用于衡量记录场景亮暗范围的能力。在本实施例的拍照过程中,首先可基于摄像头采集的预览
图像,计算当前场景的基准曝光量。
[0031] 步骤102:获取动态范围参数值。
[0032] 动态范围参数与图像中最大像素值与最小像素值的比值相关,可以描述图像明暗差别。其中,动态范围参数值基于根据基准曝光量确定的至少两个曝光量以及摄像头基于
至少两个曝光量采集的图像确定。即可根据基准曝光量确定的至少两个曝光量,利用至少
两个曝光量以及摄像头在至少两个曝光量下采集的图像,计算动态范围参数值。
[0033] 在不同曝光量下摄像头采集的图像存在差异,通过控制摄像头分别以确定的至少两个曝光量进行曝光,基于至少两个曝光量采集的图像以及至少两个曝光量可计算得到动
态范围参数值。如此,动态范围参数值是依据利用基准曝光量确定的至少两个曝光量以及
摄像头基于至少两个曝光量采集的图像确定,考虑了至少两个曝光量下的图像的实际情
况,可准确获得实际场景中的动态范围参数值,从而可提高后续目标曝光量的确定,使拍摄
的目标图像质量效果提高。
[0034] 步骤103:根据基准曝光量以及动态范围参数值,确定目标曝光量。
[0035] 利用基准曝光量以及动态范围参数值,对终端设备的曝光量进行调整,得到目标曝光量。即确定目标曝光量过程中,不但考虑了基准曝光量,而且还考虑了动态范围参数
值,可使得到的目标曝光量更加准确。
[0036] 步骤104:获取摄像头基于目标曝光量拍摄的目标图像。
[0037] 在得到目标曝光量后,控制摄像头以目标曝光量进行图像拍摄,从而,可获得摄像头基于目标曝光量拍摄的目标图像。目标曝光量考虑了动态范围参数值,控制摄像头以该
目标曝光量进行曝光,使摄像头能更加准确进行曝光,提高拍摄的目标图像的质量效果。
[0038] 本发明实施例的拍照方法中,通过摄像头采集的预览图像,计算基准曝光量,并获取动态范围参数值,以确定目标曝光量,并获取摄像头基于目标曝光量拍摄的目标图像。即
在确定目标曝光量过程中,不仅考虑了基准曝光量,而且还考虑了动态范围参数值,且动态
范围参数值基于根据基准曝光量确定的至少两个曝光量以及摄像头基于至少两个曝光量
采集的图像确定,即考虑了再至少两个曝光量下的图像的实际情况,通过基准曝光量以及
动态范围参数值对终端设备进行曝光调整,得到目标曝光量,可提高目标曝光量的准确性,
从而按照目标曝光量进行拍摄时,可提高拍摄得到的目标图像的质量。
[0039] 本发明实施例中,上述终端设备可以包括但不限于手机、相机、平板电脑(Tablet Personal Computer)、膝上型电脑(Laptop Computer)、个人数字助理(personal digital 
assistant,简称PDA)、移动上网装置(Mobile Internet Device,MID)或可穿戴式设备
(Wearable Device)等。
[0040] 在一个示例中,获取摄像头基于目标曝光量拍摄的目标图像之后,还包括:对目标图像进行合成得到合成图像。
[0041] 若目标图像的数量为一个,则合成图像即为目标图像,若目标图像的数量为至少两个,表示根据动态范围参数值,可确定至少两个目标曝光量,目标曝光量与目标图像一一
对应,即数量相同,则合成图像为对至少两个目标图像进行合成后得到的图像,如此,以提
高图像质量。
[0042] 在一个示例中,可通过自动曝光控制(ACE)算法计算基准曝光量,具体过程包括:计算摄像头采集的预览图像的亮度值;比较亮度值与目标亮度值;在亮度值与目标亮度值
的差值的绝对值大于或等于预设差值的情况下,调整摄像头的曝光量,以使预览图像的亮
度值达到目标亮度值。其中,目标亮度值可基于预览图像的高亮度区域占比对目标亮度值
进行调整。具体地,在亮度值与目标亮度值的差值的绝对值大于或等于预设差值的情况下,
若亮度值大于目标亮度值,减小采集的预览图像对应的曝光量,否则增大采集的预览图像
对应的曝光量,以使预览图像的亮度值达到目标亮度值。在亮度值与目标亮度值的差值的
绝对值小于预设差值的情况下,表示曝光是收敛的,只要当前场景不变,曝光量将不再变
化,当前的曝光量即为当前场景的基准曝光。
[0043] 在一个实施例中,确定动态范围参数值的方式,包括:获取目标曝光比值;基于基准曝光量以及目标曝光比值,确定至少两个曝光量;获取摄像头基于至少两个曝光量采集
的图像;根据摄像头基于至少两个曝光量采集的图像以及至少两个曝光量,确定动态范围
参数值。
[0044] 人眼能感受的动态范围参数值在100db~180db之间,如图2所示,在实际应用中,一般的传感器芯片(即感光芯片,例如,单反相机的传感器芯片)能捕捉到90dB的细节,而一
般移动终端(例如,手机等)上的CMOS传感器芯片只能铺捉到60dB左右的细节,目前普遍使
10
用的CMOS传感器芯片输出的数据都是10bit,根据DR=20*LOG102 ≈60dB可知,目前传感器
芯片只能覆盖实景DR(动态范围参数)在60dB左右的场景,但是在实景中很多场景的动态范
围参数值都远大于60dB,如图3所示的过道口人像场景,DR大约在102dB左右,此类场景目前
传感器芯片就无法覆盖。
[0045] 以目前常见终端设备的宽容度=60dB为例进行说明。因为人眼的宽容度最少都是100dB,为了达到100dB,按照 的计算公式(MaxLumaValue为图像
的最大像素值,MinLumaValue为图像的最小像素值),感光芯片的输出需要17bit,比目前的
7
10bit多出7bit.因此要能准确计算100dB以内常见的动态范围参数值,曝光比值至少为2
=128。对于目标曝光比值Ratio的设置,有固定和动态两种方法:
[0046] 固定:即希望能动态计算出100dB的动态范围参会值,目标曝光比值Ratio需要设置为128,也就是需要设置为希望坚持100dB对于的值。即目标曝光比值Ratio可以设置为
128,在拍照过程中,采用128进行上述至少两个曝光量的确定。
[0047] 动态:在很多场景下,动态范围参数值没有达到100dB,因此目标曝光比值Ratio不需要设置100dB对应的128,当前场景合适的值会更好,可以通过控制图像的像素值不溢出
(具体为短曝光的图像高光不溢出)为前提条件来动态确定当前ratio值。
[0048] 然后可基于基准曝光量以及目标曝光比值,确定至少两个曝光量。以两个曝光量为例,可将基准曝光量作为两个曝光量中一个曝光量,将基准曝光量除以目标曝光比值的
结果作为两个曝光量中另一个曝光量,还可以通过其他方式确定至少两个曝光量。控制摄
像头分别以确定的至少两个曝光量进行曝光,采集在至少两个曝光量下的图像,获得至少
两个曝光量对应的图像,再根据摄像头基于至少两个曝光量采集的图像以及至少两个曝光
量,计算动态范围参数值。如此,动态范围参数值是依据基于基准曝光量以及目标曝光比值
确定的至少两个曝光量以及摄像头基于至少两个曝光量采集的图像获得,从而可准确获得
实际场景中动态范围参数值,从而可提高后续目标曝光量的确定,使拍摄的目标图像质量
效果提高。
[0049] 在一个实施例中,至少两个曝光量包括第一曝光量和第二曝光量,第一曝光量大于第二曝光量;
[0050] 基于基准曝光量以及目标曝光比值,确定至少两个曝光量,包括:将基准曝光量确定为第一曝光量;将基准曝光量与目标曝光比值之间的比确定为第二曝光量。
[0051] 有了基准曝光和Ratio之后,需要计算至少两个曝光量,可以理解计算长曝光对应的曝光量(对应第一曝光量)和短曝光对应的曝光量(对应第二曝光量)。已经得知两个变量
的值:基准曝光和Ratio,因此第一曝光量和第二曝光量可基于上述两个变量的值得出。例
如,可将基准曝光作为第一曝光量(即Long),则第二曝光量Short=Long/Ratio,计算简单,
计算效率高,便于计算。也可以通过其他计算方案,比如取指数等,可以根据实际情况选择
对应的方式计算Long和Short。
[0052] 在一个实施例中,第一曝光量对应的图像为第一图像,第二曝光量对应的图像为第二图像;
[0053] 根据摄像头基于至少两个曝光量采集的图像以及至少两个曝光量,确定动态范围参数值,包括:获取第一图像中的第一目标位置的像素值,其中,第一目标位置为在第二图
像中的像素值最小且在第一图像的像素值最小的位置;获取第二图像中的第二目标位置的
像素值,其中,第二目标位置为在第一图像中的像素值小于预设像素阈值,且在第二图像中
的像素值最大的位置;根据第一目标位置的像素值、第二目标位置的像素值、第一曝光量以
及第二曝光量,计算动态范围参数值。
[0054] 即在确定第一曝光量和第二曝光量后,可控制摄像头分别以第一曝光量和第二曝光量进行曝光,从而可获得摄像头基于第一曝光量采集的第一图像以及基于第二曝光量采
集的第二图像。例如,对于相机,可将计算得到的第一曝光量和第二曝光量设置到COMS传感
器芯片中,COMS传感器芯片将输出不同曝光量对应的图像数据,输出的格式由COMS传感器
芯片的设计决定。有些是按传感器芯片排列输出,则需要在拿到图像数据后根据排列规律
分出第一图像和第二图像。也有些COMS传感器芯片能直接输出已经分好的图像,如此,得到
图像后可以直接进行下一步。
[0055] 另外,在得到第一图像和第二图像后,还可进行显示,具体地,显示一般是小尺寸,在传感器芯片输出的第一图像和第二图像中任意一张都可以进行显示,例如,可将以基准
曝光量曝光的第一图像进行显示。
[0056] 在计算动态范围参数值过程中,首先找到第一图像上像素值最小且有效的第一目标位置的像素值(即LongMinPixelValue),有效条件包括a和b,a:在第一图像上的像素值为
最小值,b:第二图像在该位置上的像素值等于0或者是最小值(ShortMinPixelValue),即第
二图像中的最小值。例如,如图4所示,第一图像(即Long Exposure Frame)中满足a和b两个
条件的位置是(4,3),对应第一图像上第一目标位置的像素值为1。
[0057] 然后找到在第二图像上像素值最大且有效的第二目标位置的像素值(即ShortMaxPixelValue)。有效条件包括c和d,c:在第二图像上的像素值为最大值,d:第一图
像在该位置的像素值小于1023(10bit对应最大值为1023)。例如,如图4所示,第二图像(即
Short Exposure Frame)中满足c和d两个条件的位置是(2,3),对应第二图像上第二目标位
置的像素值为1023。
[0058] 在得到第一目标位置的像素值、第二目标位置的像素值后,即可根据第一目标位置的像素值、第二目标位置的像素值、第一曝光量以及第二曝光量,计算得到动态范围参数
值。
[0059] 在一个实施例中,根据第一目标位置的像素值、第二目标位置的像素值、第一曝光量以及第二曝光量,计算动态范围参数值,包括:基于第一目标位置的像素值、第二目标位
置的像素值、第一曝光量以及第二曝光量,计算得到初始动态范围参数值;在第二目标位置
的像素值等于预设像素阈值的情况下,基于初始动态范围参数值,获得动态范围参数值,动
态范围参数值大于或等于初始动态范围参数值。
[0060] 在第二目标位置的像素值等于预设像素阈值的情况下,无法判断第二目标位置的像素值是已经溢出还是在溢出边缘。以10bit传感器芯片为例,预设像素阈值为1023,若像
素值大于1023表示溢出,其像素值还是用1023表示,若小于或等于1023,则表示未溢出,其
像素值为实际像素值。则基于初始动态范围参数值,获得动态范围参数值。
[0061] 在一个示例中,在第二目标位置的像素值等于预设像素阈值的情况下,若第二图像的最小值等于零,基于第一目标位置的像素值、第二目标位置的像素值、第一曝光量以及
第二曝光量,计算得到初始动态范围参数值,在一个示例中,可基于
计算得到初始动态范围参数值,其中,
LongExposure为第一曝光量,shortExposure为第二曝光量。由于实际的像素值可能是大于
预设像素阈值的,所以在本实施例中,得到初始动态范围参数值后,基于初始动态范围参数
值得到的动态范围参数值大于或等于初始动态范围参数值。例如,若 为64,
根据上述计算式子计算得到的初始动态范围参数值为A,则态范围参数值大于或等于A,可
逐步增大 来估算动态范围参数值。假设将 设为128,得到值为
B,初始动态范围参数值的范围在0到B之间,可在A到B之间确定一个值作为动态范围参数
值。
[0062] 在一个示例中,在第二目标位置的像素值等于预设像素阈值的情况下,若第二图像的最小值大于零,基于第一目标位置的像素值、第二目标位置的像素值、第一曝光量以及
第二曝光量,计算得到初始动态范围参数值,在一个示例中,可基于
计算得到初始动态
范围参数值。当ShortMinPixelValue>0,说明当前场景的实际动态范围参数值比较小,能在
一帧里面覆盖住,此时的 应该比较小。
[0063] 在一个实施例中,根据第一目标位置的像素值、第二目标位置的像素值、第一曝光量以及第二曝光量,计算动态范围参数值,还包括:在第二目标位置的像素值小于预设像素
阈值的情况下,将初始动态范围参数值确定为动态范围参数值。
[0064] 在第二目标位置的像素值小于预设像素阈值的情况下,则说明当前场景第二图像的高亮没有发生溢出,上述计算的初始动态范围参数值为实景的动态范围参数,将初始动
态范围参数值确定为动态范围参数值即可。
[0065] 在一个示例中,在第二目标位置的像素值小于预设像素阈值的情况下,若第二图像的最小值等于零,则可基于 计算得到
初始动态范围参数值,然后将初始动态范围参数值确定为动态范围参数值即可。
[0066] 在一个示例中,在第二目标位置的像素值小于预设像素阈值的情况下,若第二图像的最小值大于零,则可基于
计算得到初始动态范围参数值,然后将初始动态范围参数值确定为动态范围参数值即可。
[0067] 在一个示例中,在获取到当前场景的动态范围参数值之后,可以基于该值进行场景识别,实现场景区分。例如,动态范围参数值大,说明当前场景是高动态场景,有高光,也
有暗区。因此动态范围参数值可以很好的量化当前场景的动态范围,能有效的区分高动态
场景和正常场景。
[0068] 在一个实施例中,根据基准曝光量以及动态范围参数值,确定目标曝光量,包括:基于动态范围参数值,确定N个曝光调整量,N为正整数;将基准曝光量分别与N个曝光量调
整量相加,得到N个第一目标曝光量;基于N个第一目标曝光量确定目标曝光量,目标曝光量
包括N个第一目标曝光量。
[0069] 在获取动态范围参数值后,系统相当于了解当前场景的一动态范围的情况,可以根据动态范围参数值调用不同算法进行曝光,比如单帧HDR算法,多帧HDR算法等。具体地,
基于动态范围参数值,确定N个曝光调整量,N的不同,对应的不同的曝光算法,例如,N为1
时,表示单帧HDR算法,N为大于2的整数时,表示多帧HDR算法。如此,将基准曝光量分别与N
个曝光量调整量相加,得到N个第一目标曝光量;基于N个第一目标曝光量确定目标曝光量。
若N为1,将第一目标曝光量确定为目标曝光量,若N大于或等于2,则将N个第一目标曝光量
和基准曝光量确定为目标曝光量,此时,目标曝光量还包括基准曝光量。
[0070] 在一个实施例中,基于动态范围参数值,确定N个曝光调整量,包括:在动态范围参数值小于或等于预设值的情况下,确定第一曝光调整量;在动态范围参数值大于预设值的
情况下,确定至少两个第二曝光调整量,其中,第二曝光调整量的绝对值大于第一曝光调整
量的绝对值,目标曝光量还包括基准曝光量。
[0071] 在动态范围参数值小于或等于预设值的情况下,表示动态范围参数值较小,可用单帧HDR算法,即确定一个第一曝光调整量,将第一曝光调整量与基准曝光量相加后的值
(即第一目标曝光量)作为目标曝光量即可。在动态范围参数值大于预设值的情况下,表示
动态范围参数值较大,可用多帧HDR算法,确定至少两个第二曝光调整量,通过至少两个第
二曝光调整量分别与基准曝光量相加,可得到至少两个第一目标曝光量,将至少两个第一
目标曝光量和基准曝光量确定为目标曝光量。
[0072] 以采用多帧HDR算法为例,可以理解为包围曝光方式,一般采用三个不同曝光量的目标图像进行合成,也可采用六个或更多不同曝光量的目标图像进行合成。本实施例方法
中,计算得到当前场景的动态范围参数值后,可有效且准确地确定目标曝光量。例如,若采
用3帧的包围曝光,基准帧的曝光量为EV0(基准曝光量),另外两帧的曝光量分别是EV+2和
EV‑2,就相当于有三种不同的曝光量的帧进行合成。
[0073] 在一个示例中,在动态范围参数值大于预设值的情况下,确定至少两个第二曝光调整量的过程中,在动态范围参数值大于预设值的情况下,若动态范围参数值大于预设参
数阈值,则表示当前场景的动态范围太大,3帧图中直接可能出现断层,需要更多比如6帧能
合成出比较好的结果。那么我们就可以根据动态范围值的大小来动态选择算法合成的输入
帧的数量,即动态选择N的大小。
[0074] 另外,还可根据动态范围参数值,确定曝光调整量的大小。基准帧的曝光量为EV0,准确获取当前场景的动态范围参数值之后,以EVO为基准,在预设范围内,确定至少两个第
二曝光调整量。比如因为动态范围值太大,可能EV+3(以基准曝光量为基准,曝光调整量为
3)和EV‑3(以基准曝光量为基准,曝光调整量为‑3)的组合结果好于EV+2(以基准曝光量为
基准,曝光调整量为2)和EV‑2(以基准曝光量为基准,曝光调整量为‑2)的组合,因此,可以
根据动态范围值来动态调整包围曝光设置。
[0075] 通过上述实施例的拍照方法,通过多曝光技术获取实景中比较准确的动态范围值,利用动态范围值调整曝光,让曝光更加准确,使能更加准确提升图像的动态范围,提高
图像质量。
[0076] 如图5所示,本发明还提供一个实施例的终端设备500,具有摄像头,终端设备500包括:
[0077] 计算模块501,用于基于摄像头采集的预览图像,计算基准曝光量;
[0078] 动态范围参数值获取模块502,用于获取动态范围参数值,其中,动态范围参数值基于根据基准曝光量确定的至少两个曝光量以及摄像头基于至少两个曝光量采集的图像
确定;
[0079] 目标曝光量确定模块503,用于根据基准曝光量以及动态范围参数值,确定目标曝光量;
[0080] 目标图像获取模块504,用于获取摄像头基于目标曝光量拍摄的目标图像。
[0081] 在一个实施例中,终端设备500还包括:
[0082] 曝光比值获取模块,用于获取目标曝光比值;
[0083] 曝光量确定模块,用于基于基准曝光量以及目标曝光比值,确定至少两个曝光量;
[0084] 图像获取模块,用于获取摄像头基于至少两个曝光量采集的图像;
[0085] 参数值确定模块,用于根据摄像头基于至少两个曝光量采集的图像以及至少两个曝光量,确定动态范围参数值。
[0086] 在一个实施例中,至少两个曝光量包括第一曝光量和第二曝光量,第一曝光量大于第二曝光量;
[0087] 曝光量确定模块,包括:
[0088] 第一曝光量确定模块,用于将基准曝光量确定为第一曝光量;
[0089] 第二曝光量确定模块,用于将基准曝光量与目标曝光比值之间的比确定为第二曝光量。
[0090] 在一个实施例中,第一曝光量对应的图像为第一图像,第二曝光量对应的图像为第二图像;
[0091] 参数值确定模块,包括:
[0092] 第一像素值获取模块,用于获取第一图像中的第一目标位置的像素值,其中,第一目标位置为在第二图像中的像素值最小且在第一图像的像素值最小的位置;
[0093] 第二像素值获取模块,用于获取第二图像中的第二目标位置的像素值,其中,第二目标位置为在第一图像中的像素值小于预设像素阈值,且在第二图像中的像素值最大的位
置;
[0094] 动态范围参数值计算模块,用于根据第一目标位置的像素值、第二目标位置的像素值、第一曝光量以及第二曝光量,计算动态范围参数值。
[0095] 在一个实施例中,动态范围参数值计算模块,包括:
[0096] 初始参数值计算模块,用于基于第一目标位置的像素值、第二目标位置的像素值、第一曝光量以及第二曝光量,计算得到初始动态范围参数值;
[0097] 态范围参数值确定模块,用于在第二目标位置的像素值等于预设像素阈值的情况下,基于初始动态范围参数值,确定动态范围参数值,动态范围参数值大于或等于初始动态
范围参数值。
[0098] 在一个实施例中,态范围参数值确定模块,还用于在第二目标位置的像素值小于预设像素阈值的情况下,将初始动态范围参数值确定为动态范围参数值。
[0099] 在一个实施例中,目标曝光量确定模块,包括:
[0100] 调整量确定模块,用于基于动态范围参数值,确定N个曝光调整量,N为正整数;
[0101] 曝光量处理模块,用于将基准曝光量分别与N个曝光量调整量相加,得到N个第一目标曝光量;
[0102] 目标曝光量获取模块,用于基于N个第一目标曝光量确定目标曝光量,目标曝光量包括N个第一目标曝光量。
[0103] 在一个实施例中,调整量确定模块用于,
[0104] 在动态范围参数值小于或等于预设值的情况下,确定第一曝光调整量;
[0105] 在动态范围参数值大于预设值的情况下,确定至少两个第二曝光调整量,其中,第二曝光调整量的绝对值大于第一曝光调整量的绝对值,目标曝光量还包括基准曝光量。
[0106] 本发明实施例提供的终端设备中的技术特征与上述拍照方法中的技术特征对应,通过终端设备实现上述拍照方法的各个过程,并能得到相同的效果,为避免重复,在此不再
赘述。
[0107] 图6为实现本发明各个实施例的一种终端设备的硬件结构示意图,该终端设备600包括但不限于:射频单元601、网络模块602、音频输出单元603、输入单元604、传感器605、显
示单元606、用户输入单元607、接口单元608、存储器609、处理器610、以及电源611等部件。
本领域技术人员可以理解,图6中示出的终端设备结构并不构成对终端设备的限定,终端设
备可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。在本发明
实施例中,终端设备包括但不限于手机、平板电脑、笔记本电脑、掌上电脑、车载移动终端、
可穿戴设备、以及计步器等。
[0108] 其中,处理器610,用于基于摄像头采集的预览图像,计算基准曝光量;获取动态范围参数值,其中,动态范围参数值基于根据基准曝光量确定的至少两个曝光量以及摄像头
基于至少两个曝光量采集的图像确定;根据基准曝光量以及动态范围参数值,确定目标曝
光量;获取摄像头基于目标曝光量拍摄的目标图像。
[0109] 在确定目标曝光量过程中,不仅考虑了基准曝光量,而且还考虑了动态范围参数值,且动态范围参数值基于根据基准曝光量确定的至少两个曝光量以及摄像头基于至少两
个曝光量采集的图像确定,通过基准曝光量以及动态范围参数值对终端设备进行曝光调
整,得到目标曝光量,可提高目标曝光量的准确性,从而按照目标曝光量进行拍摄时,可提
高拍摄得到的目标图像的质量。
[0110] 应理解的是,本发明实施例中,射频单元601可用于收发信息或通话过程中,信号的接收和发送,具体的,将来自基站的下行数据接收后,给处理器610处理;另外,将上行的
数据发送给基站。通常,射频单元601包括但不限于天线、至少一个放大器、收发信机、耦合
器、低噪声放大器、双工器等。此外,射频单元601还可以通过无线通信系统与网络和其他设
备通信。
[0111] 终端设备通过网络模块602为用户提供了无线的宽带互联网访问,如帮助用户收发电子邮件、浏览网页和访问流式媒体等。
[0112] 音频输出单元603可以将射频单元601或网络模块602接收的或者在存储器609中存储的音频数据转换成音频信号并且输出为声音。而且,音频输出单元603还可以提供与终
端设备600执行的特定功能相关的音频输出(例如,呼叫信号接收声音、消息接收声音等
等)。音频输出单元603包括扬声器、蜂鸣器以及受话器等。
[0113] 输入单元604用于接收音频或视频信号。输入单元604可以包括图形处理器(Graphics Processing Unit,GPU)6041和麦克风6042,图形处理器6041对在视频捕获模式
或图像捕获模式中由图像捕获终端设备(如摄像头)获得的静态图片或视频的图像数据进
行处理。处理后的图像帧可以显示在显示单元606上。经图形处理器6041处理后的图像帧可
以存储在存储器609(或其它存储介质)中或者经由射频单元601或网络模块602进行发送。
麦克风6042可以接收声音,并且能够将这样的声音处理为音频数据。处理后的音频数据可
以在电话通话模式的情况下转换为可经由射频单元601发送到移动通信基站的格式输出。
[0114] 终端设备600还包括至少一种传感器605,比如光传感器、运动传感器以及其他传感器。具体地,光传感器包括环境光传感器及接近传感器,其中,环境光传感器可根据环境
光线的明暗来调节显示面板6091的亮度,接近传感器可在终端设备600移动到耳边时,关闭
显示面板6091和/或背光。作为运动传感器的一种,加速计传感器可检测各个方向上(一般
为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别终端设备姿态(比
如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;传
感器605还可以包括指纹传感器、压力传感器、虹膜传感器、分子传感器、陀螺仪、气压计、湿
度计、温度计、红外线传感器等,在此不再赘述。
[0115] 显示单元606用于显示由用户输入的信息或提供给用户的信息。显示单元606可包括显示面板6061,可以采用液晶显示器(Liquid Crystal Display,LCD)、有机发光二极管
(Organic Light‑Emitting Diode,OLED)等形式来配置显示面板6061。
[0116] 用户输入单元607可用于接收输入的数字或字符信息,以及产生与终端设备的用户设置以及功能控制有关的键信号输入。具体地,用户输入单元607包括触控面板6071以及
其他输入设备6072。触控面板6071,也称为触摸屏,可收集用户在其上或附近的触摸操作
(比如用户使用手指、触笔等任何适合的物体或附件在触控面板6071上或在触控面板6071
附近的操作)。触控面板6071可包括触摸检测终端设备和触摸控制器两个部分。其中,触摸
检测终端设备检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制
器;触摸控制器从触摸检测终端设备上接收触摸信息,并将它转换成触点坐标,再送给处理
器610,接收处理器610发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及
表面声波等多种类型实现触控面板6071。除了触控面板6071,用户输入单元607还可以包括
其他输入设备6072。具体地,其他输入设备6072可以包括但不限于物理键盘、功能键(比如
音量控制按键、开关按键等)、轨迹球、鼠标、操作杆,在此不再赘述。
[0117] 进一步的,触控面板6071可覆盖在显示面板6061上,当触控面板6071检测到在其上或附近的触摸操作后,传送给处理器610以确定触摸事件的类型,随后处理器610根据触
摸事件的类型在显示面板6061上提供相应的视觉输出。虽然在图5中,触控面板6071与显示
面板6061是作为两个独立的部件来实现终端设备的输入和输出功能,但是在某些实施例
中,可以将触控面板6071与显示面板6061集成而实现终端设备的输入和输出功能,具体此
处不做限定。
[0118] 接口单元608为外部终端设备与终端设备600连接的接口。例如,外部终端设备可以包括有线或无线头戴式耳机端口、外部电源(或电池充电器)端口、有线或无线数据端口、
存储卡端口、用于连接具有识别模块的终端设备的端口、音频输入/输出(I/O)端口、视频I/
O端口、耳机端口等等。接口单元608可以用于接收来自外部终端设备的输入(例如,数据信
息、电力等等)并且将接收到的输入传输到终端设备600内的一个或多个元件或者可以用于
在终端设备600和外部终端设备之间传输数据。
[0119] 存储器609可用于存储软件程序以及各种数据。存储器609可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声
音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如
音频数据、电话本等)等。此外,存储器609可以包括高速随机存取存储器,还可以包括非易
失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
[0120] 处理器610是终端设备的控制中心,利用各种接口和线路连接整个终端设备的各个部分,通过运行或执行存储在存储器609内的软件程序和/或模块,以及调用存储在存储
器609内的数据,执行终端设备的各种功能和处理数据,从而对终端设备进行整体监控。处
理器610可包括一个或多个处理单元;优选的,处理器610可集成应用处理器和调制解调处
理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要
处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器610中。
[0121] 终端设备600还可以包括给各个部件供电的电源611(比如电池),优选的,电源611可以通过电源管理系统与处理器610逻辑相连,从而通过电源管理系统实现管理充电、放
电、以及功耗管理等功能。
[0122] 另外,终端设备600包括一些未示出的功能模块,在此不再赘述。
[0123] 本发明实施例还提供一种终端设备,包括处理器610和存储器609,存储器609存储有可在处理器610上运行的计算机程序,该计算机程序被处理器610执行时实现上述拍照方
法实施例中的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
[0124] 本发明实施例还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,该计算机程序被处理器执行时实现上述拍照方法实施例的各个过程,且能达到
相同的技术效果,为避免重复,这里不再赘述。其中,的计算机可读存储介质,如只读存储器
(Read‑Only Memory,简称ROM)、随机存取存储器(Random Access Memory,简称RAM)、磁碟
或者光盘等。
[0125] 需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者终端设备不仅包括那些要
素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者终端
设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排
除在包括该要素的过程、方法、物品或者终端设备中还存在另外的相同要素。
[0126] 通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下
前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做
出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质
(如ROM/RAM、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服
务器,空调器,或者网络设备等)执行本发明各个实施例的方法。
[0127] 以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛
盾,都应当认为是本说明书记载的范围。
[0128] 上面结合附图对本发明的实施例进行了描述,但是本发明并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员
在本发明的启示下,在不脱离本发明宗旨和权利要求所保护的范围情况下,还可做出很多
形式,均属于本发明的保护之内。