CN116320771B - 一种拍摄方法和电子设备 - Google Patents
一种拍摄方法和电子设备 Download PDFInfo
- Publication number
- CN116320771B CN116320771B CN202211167612.0A CN202211167612A CN116320771B CN 116320771 B CN116320771 B CN 116320771B CN 202211167612 A CN202211167612 A CN 202211167612A CN 116320771 B CN116320771 B CN 116320771B
- Authority
- CN
- China
- Prior art keywords
- gain
- shutter speed
- current
- value
- sensor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Landscapes
- Studio Devices (AREA)
Abstract
提供了一种拍摄方法和电子设备,应用于图像处理技术领域。该方法包括:启动摄像头;通过闪烁传感器采集多个第一RAW数据;基于多个第一RAW数据确定当前亮度值;根据第一环境照度和第一对应关系确定目标亮度值;确定当前亮度值与目标亮度值的差值是否小于差值阈值;在当前亮度值与目标亮度值的差值不小于差值阈值时,控制闪烁传感器采用第二增益和第二快门速度对当前拍摄环境进行采样,获得多个第二RAW数据;摄像头采用调整后的曝光时间进行拍摄,调整后的曝光时间为光源频率的整数倍,光源频率是根据所述多个第二RAW数据确定的,本申请实施例的拍摄方法能够准确稳定地识别光源频率,从而有效消除banding现象,有助于提升用户的拍摄体验。
Description
技术领域
本申请涉及拍照领域,并且具体地,涉及一种图像处理方法和电子设备。
背景技术
随着智能终端日益发展,拍摄功能成为智能终端的必备功能。用户对智能终端的拍摄(拍照和/或摄像)需求以及体验也不断增强。
当拍摄环境中存在一定频率的光源时,终端设备的摄像头采集到的图像会产生带状条纹(banding)现象。banding现象是指在采集的图像上存在明亮程度不同的条纹。目前,通过闪烁传感器(flicker sensor)可以识别拍摄环境中的光源频率,并根据识别到的光源频率将曝光时间调整为光源频率的整数倍的方式,来达到消除banding现象的效果。但是这种方式存在局限性,在闪烁传感器采集数据异常时,无法准确稳定地识别光源频率,导致无法消除banding现象。
发明内容
有鉴于此,本申请提供了一种拍摄方法、电子设备、计算机可读存储介质和计算机程序产品,能够准确稳定地识别光源频率,从而有效消除banding现象,有助于提升用户的拍摄体验。
第一方面,提供了一种拍摄方法,所述方法应用于电子设备,所述电子设备包括摄像头和闪烁传感器,所述方法包括:
启动所述摄像头;
通过所述闪烁传感器采集多个第一RAW数据,所述多个第一RAW数据是所述闪烁传感器采用第一增益和第一快门速度采集的当前拍摄场景的数据;
基于所述多个第一RAW数据确定当前亮度值;
根据第一环境照度和第一对应关系确定目标亮度值,所述第一环境照度用于表征图像传感器确定的所述当前拍摄环境的实际照度,所述第一对应关系中包括不同环境照度下对应的亮度值;
确定所述当前亮度值与所述目标亮度值的差值是否小于差值阈值;
在所述当前亮度值与所述目标亮度值的差值不小于所述差值阈值时,控制所述闪烁传感器采用第二增益和第二快门速度对当前拍摄环境进行采样,获得多个第二RAW数据,其中,所述第二增益和所述第二快门速度是根据所述目标亮度值确定的,所述第二增益与所述第一增益不同,所述第二快门速度与所述第一快门速度不同;
所述摄像头采用调整后的曝光时间进行拍摄,所述调整后的曝光时间为光源频率的整数倍,所述光源频率是根据所述多个第二RAW数据确定的。
在本申请实施例中,通过判断当前亮度值与目标亮度值间的差异,如果差异过大,则对增益和快门速度进行调整,以使得当前亮度值达到目标亮度值的水平,闪烁传感器在合适的增益和快门速度下进行数据采集,从而保证采集到的数据为有效数据,以便基于采集到的数据进行banding现象的消除。相比于现有技术中,在环境较暗或者过曝时,因闪烁传感器采集的数据异常,而无法消除banding现象的情况,本申请实施例能够使得闪烁传感器精确稳定地识别光源频率,从而消除banding现象,提升用户拍摄体验。
可选地,所述调整后的曝光时间通过以下方式获得:
基于抗条带(anti-banding)算法对所述多个第二RAW数据进行傅里叶变换,得到第一频率和第一幅值;
根据所述第一频率和第一幅值,将当前曝光时间调整为光源频率的整数倍,所述光源频率为所述第一频率。
在本申请实施例中,第二增益和第二快门速度是根据目标亮度值确定的。
在一些可能的实现方式中,所述方法还包括:
根据当前亮度值确定当前曝光量;
根据所述当前曝光量与第一比值确定目标曝光量,所述第一比值是所述目标亮度值与所述当前亮度值间的比值;
在所述当前亮度值与所述目标亮度值的差值不小于所述差值阈值时,利用所述目标曝光量在第二对应关系中查找所述第二增益和所述第二快门速度,所述第二对应关系中包括不同曝光量对应的增益和快门速度。
也就是说,本申请实施例通过计算曝光量的方式确定目标曝光量,并利用目标曝光量匹配合适的增益和快门速度。示例性地,所述第二对应关系为曝光表。
在一些可能的实现方式中,所述控制所述闪烁传感器基于所述第二增益和所述第二快门速度对当前拍摄环境进行采样,包括:
将所述第一增益调整为所述第二增益;
在所述第一增益调整为所述第二增益后,将所述第一快门速度调整为所述第二快门速度。
在一些可能的实现方式中,所述基于所述多个第一RAW数据确定当前亮度值,包括:
对所述多个第一RAW数据进行求和取平均值处理,获得所述当前亮度值。
在一些可能的实现方式中,所述方法还包括:
基于抗条带算法对所述多个第二RAW数据进行傅里叶变换,得到第一频率和第一幅值;
根据所述第一频率和第一幅值,将当前曝光时间调整为光源频率的整数倍,所述光源频率为所述第一频率。
因此,在获得多个第二RAW数据后,可以利用抗条带算法对多个第二RAW数据进行处理,以便消除banding现象。
在一些可能的实现方式中,所述方法还包括:
在所述当前亮度值与所述目标亮度值的差值小于所述差值阈值时,采用所述多个第一RAW数据确定光源频率。
也就是说,在判断出所述当前亮度值与所述目标亮度值的差值小于所述差值阈值时,可以利用在第一增益和第一快门速度下采集的多个第一RAW数据执行后续相关操作。比如,采用所述多个第一RAW数据确定光源频率,将曝光时间调整为光源频率的整数倍,以便消除banding现象。
在一些可能的实现方式中,在控制所述闪烁传感器采用第二增益和第二快门速度对当前拍摄环境进行采样之前,所述方法还包括:
判断所述第二增益与所述第一增益是否相同,以及,所述第二快门速度与所述第一快门速度是否相同;
在所述第二增益与所述第一增益不同,且所述第二快门速度与所述第一快门速度不同时,控制所述闪烁传感器采用所述第二增益和所述第二快门速度对当前拍摄环境进行采样。
因此,在获得第二增益和第二快门速度后,还可以进一步判断第二增益与上次使用的增益是否相同,以及,判断第二快门速度与第一快门速度是否相同,以决定是否使用第二增益和第二快门速度进行采样。
在一些可能的实现方式中,所述当前拍摄场景为低照度场景,所述低照度场景包括环境照度低于第一亮度阈值的场景;或者,所述当前拍摄场景为过曝场景,所述过曝场景包括数据超过闪烁传感器能够支持的位宽上限值的场景。
可选地,启动所述摄像头,包括:检测到用户触发摄像头启动的操作;响应于检测到用户触发摄像头启动的操作,启动所述摄像头。
可选地,在启动所述摄像头后,显示预览界面,所述预览界面中不存在banding现象。在采用本申请实施例的拍摄方法后,所述预览界面中不存在banding现象。
可选地,所述方法还包括:检测到用户录制视频的操作;响应于用户录制视频的操作,执行视频录制,并在界面中显示录制画面,所述录制画面中不存在banding现象。
第二方面,提供了一种电子设备,包括用于执行第一方面中任一种方法的单元。该电子设备可以是终端,也可以是终端内的芯片。该电子设备包括输入单元、显示单元和处理单元。
当该电子设备是终端时,该处理单元可以是处理器,该输入单元可以是通信接口,该显示单元可以是图形处理模块和屏幕;该终端还可以包括存储器,该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该终端执行第一方面中的任一种方法。
当该电子设备是终端内的芯片时,该处理单元可以是芯片内部的逻辑处理单元,该输入单元可以是输出接口、管脚或电路等,该显示单元可以是芯片内部的图形处理单元;该芯片还可以包括存储器,该存储器可以是该芯片内的存储器(例如,寄存器、缓存等),也可以是位于该芯片外部的存储器(例如,只读存储器、随机存取存储器等);该存储器用于存储计算机程序代码,当该处理器执行该存储器所存储的计算机程序代码时,使得该芯片执行第一方面的任一种方法。
第三方面,提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序代码,当所述计算机程序代码被电子设备运行时,使得该电子设备执行第一方面中的任一种方法。
第四方面,提供了一种计算机程序产品,所述计算机程序产品包括:计算机程序代码,当所述计算机程序代码被电子设备运行时,使得该电子设备执行第一方面中的任一种方法。
附图说明
图1是本申请实施例的一个应用场景的一个示例图;
图2是本申请实施例的另一应用场景的一个示例图;
图3是本申请实施例应用的一个软件架构示意图;
图4是一种适用于本申请的电子设备的结构示意图;
图5是本申请实施例的一个拍摄方法的示意性流程图;
图6是本申请实施例的另一个拍摄方法的示意性流程图;
图7是应用本申请实施例的一个效果的示意图;
图8是应用本申请实施例的又一个界面示例图;
图9是本申请实施例的电子设备的一个示例框图。
具体实施方式
下面将结合附图,对本申请实施例中的技术方案进行描述。
本申请实施例中,除非另有说明,“多个”的含义可以是两个或两个以上。
本申请实施例适用于具有摄像头的电子设备,该电子设备可以为智能终端、手机、智慧屏、平板电脑、可穿戴电子设备、车载电子设备、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digitalassistant,PDA)、投影仪等等。
本申请实施例的电子设备中装备有图像采集器(比如摄像头)以及闪烁传感器(flicker sensor)。应理解,本申请实施例对flicker sensor设置的位置不作具体限定。比如,flicker sensor可以集成在摄像头中。又比如,flicker sensor可以独立设置。
还应理解,本申请实施例只是以闪烁传感器为例进行描述,本申请实施例并不限于此。事实上,闪烁传感器也可以被其他具备闪烁传感器的功能的器件所替代。
还应理解,本申请实施例是将flicker sensor的术语命名为闪烁传感器进行描述,本申请实施例并不限于此。事实上,flicker sensor也可以有其他名称,比如,防闪烁传感器等。
本申请实施例对电子设备的具体类型不作任何限制。下文以电子设备是手机为例描述本申请实施例的图像处理方法。
在一些实施例中,手机包括闪烁传感器和摄像头。其中,摄像头的关键器件包括光学镜片(lens)和图像传感器(image sensor)。
本申请实施例应用于在摄像头拍摄时因一定光源频率的存在,而导致预览画面或采集的图像或视频中存在带状条纹(banding)现象的场景。比如,在拍摄环境中存在一定频率光源的情况下,手机在打开摄像头进行拍照或录像时,显示屏中实时显示的预览画面会存在亮度不均匀的情形,或者说,预览画面中会存在滚动或者固定的明暗横纹。又比如,当手机的拍摄键被触发后,手机采集到的图像或录制的视频中出现带状条纹(banding)现象。banding现象即预览画面或采集的图像或录制的视频中存在明亮程度不同的条纹。
示例性地,手机的拍摄键被触发,通过逐行曝光的方式采集图像。如果曝光时长小于频闪一次的时长,则电子设备每次曝光时长对应的频闪时长内的不同阶段,会使得手机连续采集的预览图像亮度不一致,则手机显示的预览图像出现banding现象。进一步的,如果曝光时长不是频闪一次时长的整数倍,当拍摄键被触发,手机拍摄目标对象的图像时,导致逐行曝光不一致,手机拍摄的图像上出现banding现象。
以下结合图1中的场景示例说明。图1是本申请实施例的一个应用场景示例图。如图1中(1)所示的手机界面中,界面可以显示多个应用程序:应用1、应用2、…、应用7以及相机应用程序。用户点击相机应用程序,手机启动相机。
在相机运行后,手机界面显示如图1中(2)所示的界面。该界面可以称为相机的拍摄界面。该拍摄界面中可以包括取景框11、变焦倍率默认为1x、拍照控件和摄像头旋转控件等。变焦倍率用于调整拍摄所使用的倍率。拍照控件用于启动拍照。摄像头旋转控件可以用于切换摄像头。
其中,取景框11用于获取拍摄预览的图像,可以实时显示预览图像。可以看到,在图1中(2)所示的界面中,由于一定频率(比如50Hz)照明设备的存在,取景框11中显示的预览图像存在带状条纹,即banding现象。示例性地,如图1中(2)所示,手机的拍照模式可以包括人像、夜景、拍照、录像10、更多等。若用户选择录像模式,则用户可以点击录像10,切换到录像模式,比如,手机界面显示如图1中(3)所示的界面。
可以理解,本申请实施例对拍摄对象不作具体限定。拍摄对象可以是人物也可以是动物、车辆、机器人等。图1中是以拍摄对象是人物为例。
示例性地,图1中示出的照明设备在交流电下工作。上述照明设备的工作频率为50Hz,那么照明设备频闪一次的时长为1/100秒。在手机进行拍照时,日光灯的频闪会影响图像传感器采集的图像。如果曝光时间设置不当,可能会使得预览图像流或者手机采集的图像出现banding现象。
比如,在手机生成预览图像流,并将该预览图像流显示在显示屏,形成预览图像,使得用户可以通过显示屏观看预览图像。如果手机设置的曝光时长小于日光灯频闪一次的时长(例如,以1/50s的曝光时长采集图像),在手机获取预览图像流中的图像时,每张图像曝光时包括的频闪次数不同,使得手机获取到的预览图像发生banding现象。
如图1中(3)所示的界面,当用户点击录像控件12后,手机开始进行视频录制,比如,界面显示如图1中(4)所示的界面。如图1中(4)所示,在录像模式下,以录制时间为第2秒为例,由于照明设备的存在,录制的画面中存在banding现象。
可选地,图1中(4)中包括录像中拍照控件13、录像停止控件14、录像暂停控件15、摄像头旋转控件等。若用户点击控件13,则可以在录像中手动抓拍照片。若用户点击录像停止控件14,则可停止录像。若用户点击录像暂停控件15,则可以暂停录像。摄像头旋转控件的功能与前文类似,此处不再赘述。
又比如,在手机的拍摄键被触发,手机生成拍摄图像时,图像传感器通过逐行曝光的方式采集图像。由于日光灯频闪,在图像传感器逐行曝光采集图像的过程中,如果日光灯发生闪烁,会使得一帧图像中不同行的曝光不同,导致手机生成的图像上存在明暗条纹现象,即“banding”现象。图2中示出了包括banding现象的图像示意图。如图2中所示,在图1的场景下采集到的图像存在带状条纹。因为曝光时亮度发生改变,使得图像中存在明暗条纹。
可选地,图2中示出的界面还可以包括分享、收藏、编辑、删除、更多等控件。当用户点击分享控件时,可以分享图像。当用户点击收藏控件时,可以收藏图像。当用户点击编辑控件时,可以对图像进行编辑。当用户点击更多控件时,可以查看其它更多功能。
可以理解,图2中示出的界面仅是示例性描述,本申请实施例并不限于此。
应理解,图1中的拍照场景只是示意性说明本申请的一个应用场景,这并不对本申请实施例构成限定。事实上,本申请实施例也可以应用于其他使用摄像头的场景,比如录像场景、视频通话场景、视频直播场景等。
还应理解,图1中是以光源是照明设备为例进行描述,本申请实施例并不限于此。比如,光源设备可以是显示器或其他频率的设备。
还应理解,图1中(4)示出的是用户在手机竖屏下进行录像的一个界面示意图,但本申请并不限于此。比如,用户可以在手机横屏下进行拍摄。
还应理解,图1或图2中所示出的各个控件或各个控件在界面中所处的位置也仅是一种示例,本申请实施例并不限于此。
目前,闪烁传感器(flicker sensor)可以识别拍摄环境中的光源频率,并根据识别到的光源频率将曝光时间调整为光源频率的整数倍的方式,来达到消除banding现象的效果。但是在闪烁传感器采集数据异常时,将无法准确稳定地识别光源频率,从而无法消除banding现象。本申请实施例对闪烁传感器采集数据异常的场景不作具体限定。比如,在较暗环境下,闪烁传感器采集的数据过小。又比如,在过曝环境下,闪烁传感器采集到的数据被钳位(clamp)。数据被钳位可以理解为在超过闪烁传感器能够支持的位宽上限值时,将无法被采集到。
示例性地,对于拍摄环境较暗或者过曝的情况,闪烁传感器采集的数据可能会存在异常(比如数据过小或者数据被钳位),导致无法精确稳定得识别光源频率,也就无法消除banding现象。本申请实施例的拍摄方法可适用于较暗或者过曝的拍摄场景。
此处举例描述数据被钳位的情形,以闪烁传感器最大能够支持8比特为例,闪烁传感器最多能够采集256个RAW数据,256个RAW数据可分别对应0-255,数据被钳位是指对于超过255部分的RAW数据闪烁传感器无法采集到,也就无法准确识别光源频率。。
可选地,所述当前拍摄场景为低照度场景,所述低照度场景包括环境照度低于第一亮度阈值的场景。应理解,上面只是以环境照度低于第一亮度阈值为例进行描述,本申请实施例并不限于此。
或者,可选地,所述当前拍摄场景为过曝场景,所述过曝场景包括数据超过闪烁传感器能够支持的位宽上限值。
有鉴于此,本申请实施例提供了一种拍摄方法和电子设备,通过对闪烁传感器的增益和快门速度进行调整,以保证闪烁传感器能够在较暗环境或过曝环境下都能够精确稳定识别光源频率,从而进行banding现象的消除,提升图像质量,有助于提升用户的拍摄体验。
为了便于理解,在介绍本申请实施例的拍摄方法之前,首先对本申请实施例涉及的部分术语进行解释。
1、快门速度(shutter)用于表征采集一个像素点所需的时间,或者说多长时间采集一个像素点。此处作统一说明,快门速度也可以称作曝光时间。示例性地,当闪烁传感器的采样频率为1KHz,即快门速度(shutter)为1ms。
2、曝光量(exposure value,EV)可由曝光时间和增益共同来确定。例如,曝光量满足公式:EV=Gain*曝光时间。其中,EV表示曝光量。Gain表示增益。
3、环境照度,是指用户在拍摄时所处拍摄环境的光线强弱。环境照度的值可以采用以下指标表征:亮度值(lighting value,LV)、光照度(lux)或光照度索引值(luxindex)等等。本申请实施例的环境照度是通过图像传感器(image sensor)计算得到的。
LV用于估计环境亮度,其具体计算公式如下:
其中,Exposure为曝光时间,Aperture为光圈大小,Iso为感光度,Luma为图像在XYZ颜色空间中Y的平均值。
应理解,上述LV是image sensor计算得到的,并且,上述关于LV的计算公式中的变量也来自于image sensor。
对于环境照度而言,可基于第一亮度阈值将环境照度分为低照度场景(或者说暗光环境)和高照度场景(或者说亮光环境)。
例如,如果环境照度大于或等于第一亮度阈值,则是高照度场景;如果环境照度小于第一亮度阈值,则是低照度场景。
应理解,此处将环境照度值等于第一亮度阈值的情形划分到高照度场景,但本申请实施例不限于此,比如,也可以将环境照度等于第一亮度阈值的情形划分到低照度场景。下文以高照度场景和低照度场景进行描述。
作为一种可能的实现方式,环境照度采用LV表征,相应的,第一亮度阈值为第一LV值。
作为一种可能的实现方式,环境照度采用luxindex表征,相应的,第一亮度阈值为luxindex值。其中,luxindex取值越大,环境照度越低;luxindex取值越小,环境照度越高。
4、过曝场景可以根据闪烁传感器能够支持的位宽上限值来确定。比如,当数据超过闪烁传感器能够支持的位宽上限值时,可以认为是过曝场景。
或者,过曝场景可以根据过曝像素点所占的百分比和欠曝像素点所占的百分比,确定场景的动态范围。
5、闪烁传感器自动曝光(flicker sensor automatic exposure,flicker sensorAE)模块用于在外界拍摄环境为低照度场景或过曝场景下,自动调节flicker sensor的增益和快门速度(shutter)。
以下结合图3和图4描述本申请实施例应用的软件系统和硬件架构。
图3是本申请实施例应用的架构(包括软件系统和部分硬件)的一个示意图。如图3所示,应用架构分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,应用架构可以分为五层,从上至下分别为应用层、应用框架层、硬件抽象层HAL、驱动层(driver)以及硬件层。
如图3所示,应用层包括相机和图库。
可以理解,图3中示出的是部分应用程序,事实上应用层还可以包括其他应用程序,本申请对此不作限定。比如应用层还包括信息、闹钟、天气、秒表、指南针、计时器、手电筒、日历、支付宝等应用程序。
如图3所示,应用框架层包括相机访问接口。相机访问接口中包括相机管理和相机设备。硬件抽象层包括相机硬件抽象层和相机算法库(图中未示出)。其中,相机硬件抽象层中包括多个相机设备。硬件抽象层中还包括传感器HAL、闪烁传感器自动曝光(flickersensor automatic exposure,flicker sensor AE)模块、抗条带(anti-banding)算法模块、非拍照传感器(Non-Camera sensor,NCS)通路模块、自动曝光控制(automaticexposure control,AEC)接口(interface)、AEC核(core)。
在一些实施例中,flicker sensor AE模块用于在外界环境光照条件发生变化时,自动调节flicker sensor的增益和快门速度shutter(或者说曝光时间)。
驱动层用于驱动硬件资源。驱动层中可以包括多个驱动模块。如图3所示,驱动层包括相机设备驱动、数字信号处理器驱动和图形处理器驱动等。
硬件层包括传感器、图像信号处理器、数字信号处理器和图形处理器。其中,传感器包括多个传感器、TOF摄像头以及多光谱传感器、闪烁传感器。
举例来说,用户可以点击相机应用程序。在用户点击相机进行拍照时,拍照指令可以通过相机访问接口下发到相机硬件抽象层。相机硬件抽象层调用相机设备驱动。相机硬件抽象层将配置参数下发到相机设备驱动。相机设备驱动基于相机硬件抽象层下发的配置参数发送到硬件层。
传感器HAL用于将增益和快门速度(比如从flicker sensor AE模块获得的调整后的增益和快门速度)发送给闪烁传感器。
示例性地,传感器HAL用于将采集的256个RAW数据发送到抗条带算法模块。抗条带算法模块用于对256个RAW数据进行处理,并将处理后的RAW数据返回给传感器HAL。传感器HAL将从抗条带算法模块获得的数据发送到NCS模块。NCS模块为数据传输通路。NCS模块可以将从传感器HAL接收到的数据发送到AEC接口。AEC接口将数据发送到闪烁传感器AE模块。同时,AEC核还用于将图像传感器采集的环境照度(第一环境照度)发送到flicker sensorAE模块。
在一些实施例中,flicker sensor AE模块根据第一环境照度确定目标亮度,并确定当前亮度值与目标亮度值的差值是否小于差值阈值;在当前亮度值与目标亮度值的差值不小于所述差值阈值时,确定调整后的增益和快门速度,并向传感器HAL发送调整后的增益和快门速度,以便控制闪烁传感器去生效,使得flicker sensor最终检测输出的RAW数据达到目标亮度值的水平。
本申请实施例对“基于所述多个第一RAW数据确定当前亮度值”的执行主体不作具体限定。或者说,本申请实施例对flicker sensor AE模块获得当前亮度值的方式不作限定。
可选地,抗条带算法模块可以基于所述多个第一RAW数据确定当前亮度值,并将当前亮度值返回给传感器HAL,最终传输到ficker sensor AE模块。比如,在获得256个RAW数据后,抗条带算法模块可以对256个RAW数据进行求和取平均值处理,并将平均值返回给传感器HAL。即,ficker sensor AE模块获得的就是当前亮度值,无需自己计算。
或者,可选地,ficker sensor AE模块可以基于所述多个第一RAW数据确定当前亮度值。比如,在获得256个RAW数据后,抗条带算法模块将256个RAW数据返回给传感器HAL,最终传输到ficker sensor AE模块,由ficker sensor AE模块对256个RAW数据进行求和取平均值处理。即,ficker sensor AE模块获得的是256个RAW数据,需要进一步计算才能得到当前亮度值。
另外,图像信号处理器输出的图像可以发送给相机设备驱动。相机设备驱动可以将图像信号处理器输出的图像发送给相机硬件抽象层。相机硬件抽象层可以将图像送入相机访问接口。相机访问接口可以将相机硬件抽象层返回的图像发送至相机。
上文详细描述了本申请实施例应用的软件系统。下面结合图4描述电子设备1000的硬件系统。
图4示出了一种适用于本申请的电子设备1000的结构示意图。
电子设备1000可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M、闪烁传感器180N等。
需要说明的是,图4所示的结构并不构成对电子设备1000的具体限定。在本申请另一些实施例中,电子设备1000可以包括比图4所示的部件更多或更少的部件,或者,电子设备1000可以包括图4所示的部件中某些部件的组合,或者,电子设备1000可以包括图4所示的部件中某些部件的子部件。比如,图4所示的接近光传感器180G可以是可选的。图4示的部件可以以硬件、软件、或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元。例如,处理器110可以包括以下处理单元中的至少一个:应用处理器(application processor,AP)、调制解调处理器、图形处理器(graphics processing unit,GPU)、图像信号处理器(image signal processor,ISP)、控制器、视频编解码器、数字信号处理器(digital signal processor,DSP)、基带处理器、神经网络处理器(neural-network processing unit,NPU)。其中,不同的处理单元可以是独立的器件,也可以是集成的器件。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。例如,处理器110可以包括以下接口中的至少一个:内部集成电路(inter-integrated circuit,I2C)接口、内部集成电路音频(inter-integrated circuit sound,I2S)接口、脉冲编码调制(pulse codemodulation,PCM)接口、通用异步接收传输器(universal asynchronous receiver/transmitter,UART)接口、移动产业处理器接口(mobile industry processor interface,MIPI)、通用输入输出(general-purpose input/output,GPIO)接口、SIM接口、USB接口。
在一些实施例中,处理器110用于调用摄像头启动;还用于调用闪烁传感器采集多个第一RAW数据,所述多个第一RAW数据是所述闪烁传感器采用第一增益和第一快门速度采集的当前拍摄场景的数据;还用于基于所述多个第一RAW数据确定当前亮度值;还用于根据第一环境照度和第一对应关系确定目标亮度值,所述第一环境照度用于表征图像传感器确定的所述当前拍摄环境的实际照度,所述第一对应关系中包括不同环境照度下对应的亮度值;还用于确定所述当前亮度值与所述目标亮度值的差值是否小于差值阈值;还用于在所述当前亮度值与所述目标亮度值的差值不小于所述差值阈值时,控制所述闪烁传感器采用第二增益和第二快门速度对当前拍摄环境进行采样,获得多个第二RAW数据,其中,所述第二增益和所述第二快门速度是根据所述目标亮度值确定的,所述第二增益与所述第一增益不同,所述第二快门速度与所述第一快门速度不同;还用于调用所述摄像头采用调整后的曝光时间进行拍摄,所述调整后的曝光时间为光源频率的整数倍,所述光源频率是根据所述多个第二RAW数据确定的。
图4所示的各模块间的连接关系只是示意性说明,并不构成对电子设备1000的各模块间的连接关系的限定。可选地,电子设备1000的各模块也可以采用上述实施例中多种连接方式的组合。
充电管理模块140用于从充电器接收电力。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的电流。在一些无线充电的实施例中,充电管理模块140可以通过电子设备1000的无线充电线圈接收电磁波(电流路径如虚线所示)。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备1000供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量、电池循环次数和电池健康状态(例如,漏电、阻抗)等参数。可选地,电源管理模块141可以设置于处理器110中,或者,电源管理模块141和充电管理模块140可以设置于同一个器件中。
电子设备1000的无线通信功能可以通过天线1、天线2、移动通信模块150、无线通信模块160、调制解调处理器以及基带处理器等器件实现。
电子设备1000可以通过GPU、显示屏194以及应用处理器实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194可以用于显示图像或视频。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD)、有机发光二极管(organic light-emitting diode,OLED)、有源矩阵有机发光二极体(active-matrix organic light-emitting diode,AMOLED)、柔性发光二极管(flex light-emitting diode,FLED)、迷你发光二极管(mini light-emitting diode,Mini LED)、微型发光二极管(micro light-emitting diode,Micro LED)、微型OLED(Micro OLED)或量子点发光二极管(quantum dotlight emitting diodes,QLED)。在一些实施例中,电子设备1000可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备1000可以通过ISP、摄像头193、视频编解码器、GPU、显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP可以对图像的噪点、亮度和色彩进行算法优化,ISP还可以优化拍摄场景的曝光和色温等参数。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的红绿蓝(red green blue,RGB),YUV等格式的图像信号。在一些实施例中,电子设备1000可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备1000在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备1000可以支持一种或多种视频编解码器。这样,电子设备1000可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1、MPEG2、MPEG3和MPEG4。
NPU是一种借鉴生物神经网络结构的处理器,例如借鉴人脑神经元之间传递模式对输入信息快速处理,还可以不断地自学习。通过NPU可以实现电子设备1000的智能认知等功能,例如:图像识别、人脸识别、语音识别和文本理解。
电子设备1000可以通过音频模块170、扬声器170A、受话器170B、麦克风170C、耳机接口170D以及应用处理器等实现音频功能,例如,音乐播放和录音。
距离传感器180F用于测量距离。电子设备1000可以通过红外或激光测量距离。在一些实施例中,例如在拍摄场景中,电子设备1000可以利用距离传感器180F测距以实现快速对焦。
环境光传感器180L用于感知环境光亮度。电子设备1000可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备1000是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备1000可以利用采集的指纹特性实现解锁、访问应用锁、拍照和接听来电等功能。
触摸传感器180K,也称为触控器件。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,触摸屏也称为触控屏。触摸传感器180K用于检测作用于其上或其附近的触摸操作。触摸传感器180K可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备1000的表面,并且与显示屏194设置于不同的位置。
闪烁传感器(flicker sensor)180N用于对环境光的频率进行识别。
在一些实施例中,闪烁传感器180N用于采集多个第一RAW数据。
在一些实施例中,闪烁传感器180N还用于根据flicker sensor AE模块下发的调整后的增益(比如第二增益)和调整后的快门速度(比如第二快门速度)采集多个第二RAW数据。
在一些实施例中,闪烁传感器180N还用于根据多个第二RAW数据消除banding现象。
按键190包括开机键和音量键。按键190可以是机械按键,也可以是触摸式按键。电子设备1000可以接收按键输入信号,实现于案件输入信号相关的功能。
可以理解,本申请实施例的拍摄方法可以应用于图4中所示的电子设备中,具体的实现步骤可以参考前文方法实施例的介绍,此处不再赘述。
以下结合图5至图8描述本申请实施例的拍摄方法。
图5是本申请实施例的拍摄方法的示意性流程图。如图5所示,所述方法500包括:
S510,启动摄像头。
可选地,启动所述摄像头,包括:检测到用户触发摄像头启动的操作;响应于检测到用户触发摄像头启动的操作,启动所述摄像头。
比如,如图1中(1)所示,用户点击相机应用图标,可以启动摄像头。
本申请实施例对如何触发摄像头不作具体限定。上述启动摄像头的方式只是示例性描述,用户也可以通过其他方式启动摄像头,比如,通过语音控制摄像头启动,或者,在使用其他支持拍摄功能的APP(比如微信等)时调用摄像头启动。
S520,通过闪烁传感器(即flicker sensor)采集多个第一RAW数据,所述多个第一RAW数据是所述闪烁传感器采用第一增益和第一快门速度采集的当前拍摄场景的数据。
RAW数据是指感光元件记录的图像的所有灰度数据。
示例性地,多个第一RAW数据为256个RAW数据。闪烁传感器可以通过先进先出(first in first out,FIFO)机制读取到256个RAW值。FIFO是一种数据传输读取的方式。应理解,此处是以FIFO机制为例进行描述,本申请实施例并不限于此。事实上,也可以采用其他数据读取方式采集RAW数据。
应理解,本申请实施例对多个第一RAW数据的数量不作具体限定,具体可以取决于器件能力。
还应理解,此处是以256个RAW数据为例进行描述,本申请实施例并不限于此。事实上,随着器件的发展,闪烁传感器可以采集到其他数量(比如,比256更大的数量)的RAW数据。
第一增益是闪烁传感器当前采用的增益。第一快门速度是闪烁传感器当前采用的快门速度。
S530,基于多个第一RAW数据确定当前亮度值。
当前亮度值是指通过闪烁传感器采集的多个第一RAW数据计算得到的亮度值。示例性地,当前亮度值表示为cur_luma。
本申请实施例对计算当前亮度值的方法不作具体限定。
可选地,作为一种可能的实现方式,基于所述多个第一RAW数据确定当前亮度值,包括:
对所述多个第一RAW数据进行求和取平均值处理,获得当前亮度值(cur_luma)。
示例性地,将256个RAW数据进行求和,然后除以256,将得到的平均值作为当前亮度值。“将得到的平均值作为当前亮度值”可以理解为:将得到的RAW数据的亮度水平,作为当前亮度值。
S540,根据第一环境照度和第一对应关系确定目标亮度值,所述第一环境照度用于表征图像传感器(image sensor)确定的当前拍摄环境的实际照度,所述第一对应关系中包括不同环境照度下对应的亮度值。
本申请实施例通过设置目标亮度值,然后基于目标亮度值确定增益和快门速度,通过调节增益和快门速度,使得当前亮度值靠近目标亮度值。
第一环境照度用于表征image sensor计算的当前拍摄环境的实际照度(或者说客观环境的照度)。
示例性地,第一环境照度表征为亮度值LV。通过LV可以在第一对应关系中匹配到合适的RAW值作为目标亮度值(比如,表示为target_luma)。“合适的RAW作为目标亮度值”可以理解为:将合适的RAW值的亮度水平作为目标亮度值。
第一对应关系用于表征环境照度与对应的亮度值的对应关系。示例性地,第一对应关系中包括多个LV,以及每个LV对应的亮度值。
示例性地,第一对应关系可以为下表1:
表1
LV | 目标亮度值 |
LV1 | target_luma1 |
LV2 | target_luma2 |
LV3 | target_luma3 |
在上述表1中,示出了不同LV值对应的不同目标亮度值。基于LV的取值可以在表1中查到对应的目标亮度值。
应理解,上述表1仅是示例性描述,本申请实施例并不限于此。比如,第一行的LV也可以替换为LV区间,每个LV区间对应不同的目标亮度值(target_luma)。
在得到当前亮度值与目标亮度值后,可以判断二者的差异,并基于判断结果决定是否调整增益和快门速度。
S550,确定当前亮度值与目标亮度值的差值是否小于差值阈值。
或者说,步骤S550可以替换为,判断当前亮度值与目标亮度值是否相同。
可选地,此处通过引入差异阈值来评价当前亮度值与目标亮度值是否差异较大。本申请实施例对差异阈值的取值不作具体限定,差异阈值可以趋于无限小。
示例性地,如果二者的差值的绝对值小于差值阈值,那么认为当前亮度值与目标亮度值的差异不大,二者接近;如果二者的差值的绝对值大于或等于差值阈值,那么认为当前亮度值与目标亮度值的差异很大。
应理解,这里仅是以差异阈值为例进行说明,本申请实施例并不限于此。事实上,也可以采用其他方式来评价当前亮度值与目标亮度值是否差异较大。
S560,在当前亮度值与目标亮度值的差值不小于(大于或等于)差值阈值时,控制所述闪烁传感器采用第二增益和第二快门速度对当前拍摄环境进行采样,获得多个第二RAW数据。其中,所述第二增益和所述第二快门速度是根据所述目标亮度值确定的,所述第二增益与所述第一增益不同,所述第二快门速度与所述第一快门速度不同。
需要说明的是,此处引入“多个第二RAW数据”只是为了与前文的“多个第一RAW数据”进行区分,二者是在不同的采样条件下采集到的。
示例性地,多个第二RAW数据为在第二增益和第二快门速度下采集到的256个RAW数据。
示例性地,当前亮度值与目标亮度值的差值的绝对值表示为abs(target_luma-cur_luma),如果abs(target_luma-cur_luma)大于或等于差值阈值时,将闪烁传感器的增益调整为第二增益,将快门速度调整为第二快门速度,即控制闪烁传感器采用第二增益和第二快门速度进行采样。abs表示取绝对值运算。
在本申请实施例中,通过采用第二增益和第二快门速度进行采样,能够避免因环境过暗或过曝的场景下闪烁传感器数据异常的情况。当闪烁传感器数据采集的数据无异常,那么就可以利用采集到的第二RAW数据精确识别光源频率,从而对banding现象进行有效消除。
另外,由于调整快门速度会影响到闪烁传感器的采样频率。如果闪烁传感器的采样频率过低,那么会导致的频率(频率是通过闪烁传感器采集的多个RAW数据进行傅里叶变换之后得到的)范围降低,灵敏度降低。因此,为了保证避免因调整快门速度造成的上述影响,本申请实施例对增益和快门速度的调节有先后次序,即先对增益进行调整,待增益调整后再调整快门速度。
可选地,作为一个实施例,S560包括:
将所述第一增益调整为所述第二增益;在所述第一增益调整为所述第二增益后,将所述第一快门速度调整为所述第二快门速度。
示例性地,可以将增益调整到最大值(比如512倍),控制闪烁传感器采用最大增益进行数据采集,然后再调节快门速度。
应理解,此处仅是以调节到最大值为例进行描述,并非要将本申请实施例限制于此。
本申请实施例可基于目标亮度值确定第二增益和第二快门速度,具体的确定方式将在后文图6处描述。在确定出第二增益和第二快门速度之后,还可以判断第二增益是否与上次采用的增益相同,以及,判断第二快门速度是否和上次采用的快门速度相同。比如,上次采用的增益是第一增益。又比如,上次的快门速度可以是第一快门速度。
可选地,在步骤S560之前,所述方法500还包括:
判断第二增益与第一增益是否相同,以及,第二快门速度与第一快门速度是否相同;
在所述第二增益与所述第一增益不同,且所述第二快门速度与所述第一快门速度不同时,控制所述闪烁传感器采用所述第二增益和所述第二快门速度对当前拍摄环境进行采样。
示例性地,如果判断出第二增益与第一增益不同,且第二快门速度与第一快门速度不同,那么可以将闪烁传感器的增益设置为第二增益,将闪烁传感器的快门速度设置为第二快门速度。
应理解,“判断第二增益与第一增益是否相同”与判断“第二快门速度与第一快门速度是否相同”可以分开执行,也可以同时执行,本申请实施例对此不作具体限定。
其中,分开执行是指二者的执行并无耦合关系。若判断到第二增益与第一增益不相同,那么就将第二增益下发到传感器HAL去生效。若判断到第二快门速度与第一快门速度不相同,那么就将第二快门速度下发到传感器HAL去生效。
示例性地,当判断出第二增益与第一增益相同,且第二快门速度与第一快门速度相同时,那么可以执行S580,即沿用所述多个第一RAW数据确定光源频率。
S570,所述摄像头采用调整后的曝光时间进行拍摄,所述调整后的曝光时间为光源频率的整数倍,所述光源频率是根据所述多个第二RAW数据确定的。
可选地,所述调整后的曝光时间通过以下方式获得:
基于抗条带(anti-banding)算法对所述多个第二RAW数据进行傅里叶变换,得到第一频率和第一幅值;
根据所述第一频率和第一幅值,将当前曝光时间调整为光源频率的整数倍,所述光源频率为所述第一频率。
示例性地,利用图3中示出的抗条带(anti-banding)算法模块,对256个第二RAW数据(该256个数据是闪烁控制器在第二增益和第二快门速度下采集的)进行快速傅里叶(fast fourier transform,FFT)变换,获得第一频率和第一幅值,然后利用第一频率值和第一幅值采用的曝光时间进行调整,将当前曝光时间调整为光源频率的整数倍,以达到消除banding现象的目的。
应理解,上述仅是以对多个第二RAW数据进行FFT变换为例进行描述,本申请实施例并不限于此。事实上,也可以对多个第二RAW数据进行其他处理。
抗条带(anti-banding)算法可通过flicker sensor采集的数据实现对光源频率的识别,以便实现banding现象的消除。还应理解,上述是以抗条带(anti-banding)算法为例进行描述,本申请实施例并不限于此。
在本申请实施例中,通过判断当前亮度值与目标亮度值间的差异,如果差异过大,则对增益和快门速度进行调整,以使得当前亮度值达到目标亮度值的水平,闪烁传感器在合适的增益和快门速度下进行数据采集,从而保证采集到的数据为有效数据,以便基于采集到的数据进行banding现象的消除。相比于现有技术中,在拍摄环境较暗或者过曝时,因闪烁传感器采集的数据异常,而无法消除banding现象的情况,本申请实施例能够使得闪烁传感器精确稳定地识别光源频率,从而消除banding现象,提升用户拍摄体验。
可选地,所述方法500还包括:S580,在当前亮度值与目标亮度值的差值小于差值阈值时,或者,当判断出第二增益与第一增益相同,且第二快门速度与第一快门速度相同时,采用所述多个第一RAW数据确定光源频率。
示例性地,采用所述多个第一RAW数据确定光源频率,包括:基于抗条带(anti-banding)算法对所述多个第一RAW数据进行傅里叶变换,得到第二频率和第二幅值;
根据所述第二频率和第二幅值,将当前曝光时间调整为光源频率的整数倍,所述光源频率为所述第二频率。
应理解,此处引入第二频率和第二幅值仅是为了与前文的第一频率和第一幅值进行区分。
举例来说,在当前亮度值与目标亮度值的差异不大时,无需调整增益和快门速度,那么此时根据在第一增益和第一快门速度下采集到的多个第一RAW数据进行banding现象的消除。具体即,对多个第一RAW数据进行FFT变换,得到第二频率和第二幅值,并利用第二频率和第二幅值,将当前曝光时间调整为光源频率的整数倍,以达到消除banding现象的目的。
在本申请实施例中,第二增益和第二快门速度是根据目标亮度值确定的。本申请实施例对如何确定第二增益和第二快门速度的具体方式不作限定。以下结合图6进行描述。
图6示出了根据本申请实施例的确定第二增益和第二快门速度的方法600流程图。应理解,图6中的方法600可与图5中的方法500组合实施,也可以独立实施,对此不作具体限定。还应理解,图6中涉及到的部分术语或概念的解释可以参考图5中的描述。如图6所示,所述方法600包括:
S610,根据当前亮度值确定当前曝光量。
当前亮度值的确定方式已在图5的S530处介绍,为了简洁,此处不再赘述。
示例性地,在得到当前亮度值,可以基于当前的增益和快门速度计算当前曝光量。
比如,当前曝光量=gain*快门速度。
S620,根据当前曝光量与第一比值确定目标曝光量,所述第一比值是所述目标亮度值与所述当前亮度值间的比值。
目标曝光量可以理解为预期的曝光量。引入目标曝光量的作用在于通过曝光表查找对应的gain和shutter。
示例性地,利用当前曝光量乘以第一比值,即可得到目标曝光量。
S630,在当前亮度值与目标亮度值的差值不小于所述差值阈值时,利用目标曝光量在第二对应关系中查找所述第二增益和所述第二快门速度,所述第二对应关系中包括不同曝光量对应的增益和快门速度。
比如,第二快门速度的取值为1ms、2ms或者4ms等。
应理解,此处对第二快门速度的取值仅是示例性描述,本申请实施例并不限于此。
比如,第二增益的取值为1倍、2倍、…或512倍等。
应理解,此处对第二增益的取值仅是示例性描述,本申请实施例并不限于此。
在本申请实施例中,根据目标曝光量可以在第二对应关系中查找到对应的增益和快门速度。
可选地,第二对应关系可以是曝光表的形式。比如,第二对应关系为以下表2:
表2
索引 | 曝光量 | Gain | shutter |
Index1 | 曝光量1 | Gain1 | Shutter1 |
Index2 | 曝光量2 | Gain2 | Shutter2 |
Index3 | 曝光量3 | Gain3 | Shutter3 |
在上述表2中,在计算出目标曝光量后,可以基于目标曝光量在表2中查找对应的索引,并基于对应的索引查找相应的gain和shutter。
应理解,上述只是以表2为例进行描述,本申请实施例并不限于此。比如,表2中可以不包括索引列,在计算出目标曝光量后,可以在表2中直接查询到对应的gain和shutter。
在本申请实施例中,目标亮度值的变化趋势,与图像传感器的目标亮度值随着环境照度(比如LV)变化的趋势一致,以便支持波动深度的计算。
波动深度通常是指“亮”与“暗”闪烁间的亮度差距。比如,最高亮度和最低亮度之间的差距越大,波动深度就越大。示例性地,波动深度可以理解为幅值(比如前文通过多个第二RAW数据计算得到的第二幅值)。
抗条带(anti-banding)算法中会计算当前频率的波动深度(比如第二幅值),能够为其他算法提供波动深度,以供后续其他算法使用。
示例性地,其他算法可以指运动降曝光算法。当波动深度值较小时,运动降曝光算法可以把曝光时间降低到光源频率的周期整数倍以下。
为便于理解,以下结合图7和图8中的界面示例进行描述。图7是本申请实施例的一个效果示意图。如图7所示,相比于图2中示出的图像,在采用本申请实施例的拍摄方法后,获得的图像不存在banding现象。
应理解,图7中仅是示例性描述,本申请实施例并不限于此。事实上,对于预览图像、或者录制的视频,采用本申请实施例的拍摄方法后均能够有效消除banding现象。
可选地,在启动所述摄像头后,显示预览界面,所述预览界面中不存在banding现象。在采用本申请实施例的拍摄方法后,所述预览界面中不存在banding现象。
可选地,所述500方法还包括:检测到用户录制视频的操作;响应于用户录制视频的操作,执行视频录制,并在界面中显示录制画面(或者说录像界面,比如,图8中(4)所示的界面),所述录制画面中不存在banding现象。
图8是本申请实施例的另一个效果示意图。应理解,图8中示出的场景与图1中示出的场景相同(均是包含工作频率为50Hz的照明设备),相关的控件或界面描述可以参考图1中。为了简洁,此处不再赘述。比如,图8中(1)示出的界面的描述可以参考图1中(1)示出的界面描述。又比如,图8中(2)至图8中(4)示出的界面中包括的控件的描述,可以分别参考图1中(2)至图1中(4)示出的界面中包括的控件的描述。
如图8中(1)所示,当用户点击相机应用程序,手机启动相机。在相机运行后,手机界面显示如图8中(2)所示的界面。如图8中(2)所示,当用户点击录像10时,切换到录像模式,比如,手机界面显示如图8中(3)所示的界面。如图8中(3)所示的界面,当用户点击录像控件12后,手机开始进行视频录制,比如,界面显示如图8中(4)所示的界面。
相比于图1中示出的各个界面,在采用本申请实施例的拍摄方法后,图8中(2)所示的预览界面,以及图8中(3)所示的预览界面,以及图8中(4)所示的录像界面,均不存在banding现象。
应理解,图8中的界面仅是示例性描述,本申请实施例并不限于此。
上文结合图1至图8,详细描述了本申请实施例提供的拍摄方法。下面将结合图9详细描述本申请的装置实施例。应理解,本申请实施例的拍摄装置可以执行前述本申请实施例的各种拍摄方法,即以下各种产品的具体工作过程,可以参考前述方法实施例中的对应过程。
图9是本申请实施例的拍摄装置900的示意性框图。应理解,装置900可以执行图5至图8所示的拍摄方法。
如图9所示,所述拍照装置900包括:摄像头910和数据采集单元920(比如,数据采集单元920为闪烁传感器),和处理单元930。
在一些实施例中,处理单元930,还用于调用摄像头910;
所述处理单元930,还用于调用数据采集单元920采集多个第一RAW数据,所述多个第一RAW数据是所述数据采集单元920采用第一增益和第一快门速度采集的当前拍摄场景的数据;
所述处理单元930,还用于基于所述多个第一RAW数据确定当前亮度值;
所述处理单元930,还用于根据第一环境照度和第一对应关系确定目标亮度值,所述第一环境照度用于表征图像传感器确定的所述当前拍摄环境的实际照度,所述第一对应关系中包括不同环境照度下对应的亮度值;
所述处理单元930,还用于确定所述当前亮度值与所述目标亮度值的差值是否小于差值阈值;
所述处理单元930,还用于在所述当前亮度值与所述目标亮度值的差值不小于所述差值阈值时,控制所述数据采集单元920采用第二增益和第二快门速度对当前拍摄环境进行采样,获得多个第二RAW数据,其中,所述第二增益和所述第二快门速度是根据所述目标亮度值确定的,所述第二增益与所述第一增益不同,所述第二快门速度与所述第一快门速度不同;
所述处理单元930,还用于调用所述摄像头910采用调整后的曝光时间进行拍摄,所述调整后的曝光时间为光源频率的整数倍,所述光源频率是根据所述多个第二RAW数据确定的。
可选地,作为一个实施例,所述处理单元930还用于根据所述当前亮度值确定当前曝光量;根据所述当前曝光量与第一比值确定目标曝光量,所述第一比值是所述目标亮度值与所述当前亮度值间的比值;在所述当前亮度值与所述目标亮度值的差值不小于所述差值阈值时,利用所述目标曝光量在第二对应关系中查找所述第二增益和所述第二快门速度,所述第二对应关系中包括不同曝光量对应的增益和快门速度。
可选地,作为一个实施例,所述处理单元930用于控制所述数据采集单元920基于所述第二增益和所述第二快门速度对当前拍摄环境进行采样,包括:
将所述第一增益调整为所述第二增益;
在所述第一增益调整为所述第二增益后,将所述第一快门速度调整为所述第二快门速度。
可选地,作为一个实施例,所述处理单元930用于基于所述多个第一RAW数据确定当前亮度值,包括:
对所述多个第一RAW数据进行求和取平均值处理,获得所述当前亮度值。
可选地,作为一个实施例,所述处理单元930还用于基于抗条带算法对所述多个第二RAW数据进行傅里叶变换,得到第一频率和第一幅值;
根据所述第一频率和第一幅值,将当前曝光时间调整为光源频率的整数倍,所述光源频率为所述第一频率。
可选地,作为一个实施例,所述处理单元930还用于在所述当前亮度值与所述目标亮度值的差值小于所述差值阈值时,采用所述多个第一RAW数据确定光源频率。
可选地,作为一个实施例,所述处理单元930还用于在控制所述数据采集单元920采用第二增益和第二快门速度对当前拍摄环境进行采样之前,
判断所述第二增益与所述第一增益是否相同,以及,所述第二快门速度与所述第一快门速度是否相同;
在所述第二增益与所述第一增益不同,且所述第二快门速度与所述第一快门速度不同时,控制所述数据采集单元920采用所述第二增益和所述第二快门速度对当前拍摄环境进行采样。
可选地,作为一个实施例,所述当前拍摄场景为低照度场景,所述低照度场景包括环境照度低于第一亮度阈值的场景;或者,所述当前拍摄场景为过曝场景,所述过曝场景包括数据超过数据采集单元920能够支持的位宽上限值的场景。
在一种可能的示例中,处理单元930可以通过处理器或处理单元实现。应理解,上述装置900以功能单元的形式体现。这里的术语“单元”可以通过软件和/或硬件的形式实现,本申请实施例对此不作具体限定。
例如,“单元”可以是实现上述功能的软件程序、硬件电路或者二者结合。所述硬件电路可能包括(application specific integrated circuit,ASIC)应用特定集成电路、电子电路、执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、集成逻辑电路,和/或其他可以提供上述功能的合适器件。在一个简单的实施例中,本领域的技术人员可以想到装置900可以采用图4所示的形式。
由上可知,本申请实施例提供了一种拍摄方法和电子设备,通过对闪烁传感器的增益和快门速度进行调整,以保证闪烁传感器能够在较暗环境或过曝环境下都能够精确稳定识别光源频率,从而进行banding现象的消除,提升图像质量,有助于提升用户的拍摄体验。
本申请还提供了一种计算机程序产品,该计算机程序产品被处理器执行时实现本申请中任一方法实施例所述的方法。
该计算机程序产品可以存储在存储器中,经过预处理、编译、汇编和链接等处理过程最终被转换为能够被处理器执行的可执行目标文件。
本申请还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被计算机执行时实现本申请中任一方法实施例所述的方法。该计算机程序可以是高级语言程序,也可以是可执行目标程序。
该计算机可读存储介质可以是易失性存储器或非易失性存储器,或者,可以同时包括易失性存储器和非易失性存储器。其中,非易失性存储器可以是只读存储器(read-only memory,ROM)、可编程只读存储器(programmable ROM,PROM)、可擦除可编程只读存储器(erasable PROM,EPROM)、电可擦除可编程只读存储器(electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(random access memory,RAM),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(static RAM,SRAM)、动态随机存取存储器(dynamic RAM,DRAM)、同步动态随机存取存储器(synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(double data rateSDRAM,DDR SDRAM)、增强型同步动态随机存取存储器(enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(synchlink DRAM,SLDRAM)和直接内存总线随机存取存储器(directrambus RAM,DR RAM)。
本领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的装置和设备的具体工作过程以及产生的技术效果,可以参考前述方法实施例中对应的过程和技术效果,在此不再赘述。
在本申请所提供的几个实施例中,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的方法实施例的一些特征可以忽略,或不执行。以上所描述的装置实施例仅仅是示意性的,单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,多个单元或组件可以结合或者可以集成到另一个系统。另外,各单元之间的耦合或各个组件之间的耦合可以是直接耦合,也可以是间接耦合,上述耦合包括电的、机械的或其它形式的连接。
应理解,在本申请的各种实施例中,各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请的实施例的实施过程构成任何限定。
另外,本文中术语“系统”和“网络”在本文中常被可互换使用。本文中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
总之,以上所述仅为本申请技术方案的较佳实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。
Claims (11)
1.一种拍摄方法,其特征在于,所述方法应用于电子设备,所述电子设备包括摄像头和闪烁传感器,所述方法包括:
启动所述摄像头;
通过所述闪烁传感器采集多个第一RAW数据,所述多个第一RAW数据是所述闪烁传感器采用第一增益和第一快门速度采集的当前拍摄环境的数据;
基于所述多个第一RAW数据确定当前亮度值;
根据第一环境照度和第一对应关系确定目标亮度值,所述第一环境照度用于表征图像传感器确定的所述当前拍摄环境的实际照度,所述第一对应关系中包括不同环境照度下对应的亮度值;
确定所述当前亮度值与所述目标亮度值的差值是否小于差值阈值;
在所述当前亮度值与所述目标亮度值的差值不小于所述差值阈值时,控制所述闪烁传感器采用第二增益和第二快门速度对当前拍摄环境进行采样,获得多个第二RAW数据,其中,所述第二增益和所述第二快门速度是根据所述目标亮度值确定的,所述第二增益与所述第一增益不同,所述第二快门速度与所述第一快门速度不同;
所述摄像头采用调整后的曝光时间进行拍摄,所述调整后的曝光时间为光源频率的整数倍,所述光源频率是根据所述多个第二RAW数据确定的。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
根据所述当前亮度值确定当前曝光量;
根据所述当前曝光量与第一比值确定目标曝光量,所述第一比值是所述目标亮度值与所述当前亮度值间的比值;
在所述当前亮度值与所述目标亮度值的差值不小于所述差值阈值时,利用所述目标曝光量在第二对应关系中查找所述第二增益和所述第二快门速度,所述第二对应关系中包括不同曝光量对应的增益和快门速度。
3.根据权利要求1或2所述的方法,其特征在于,所述控制所述闪烁传感器基于所述第二增益和所述第二快门速度对当前拍摄环境进行采样,包括:
将所述第一增益调整为所述第二增益;
在所述第一增益调整为所述第二增益后,将所述第一快门速度调整为所述第二快门速度。
4.根据权利要求1或2所述的方法,其特征在于,所述基于所述多个第一RAW数据确定当前亮度值,包括:
对所述多个第一RAW数据进行求和取平均值处理,获得所述当前亮度值。
5.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
基于抗条带算法对所述多个第二RAW数据进行傅里叶变换,得到第一频率和第一幅值;
根据所述第一频率和第一幅值,将当前曝光时间调整为光源频率的整数倍,所述光源频率为所述第一频率。
6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
在所述当前亮度值与所述目标亮度值的差值小于所述差值阈值时,采用所述多个第一RAW数据确定光源频率。
7.根据权利要求1或2所述的方法,其特征在于,在控制所述闪烁传感器采用第二增益和第二快门速度对当前拍摄环境进行采样之前,所述方法还包括:
判断所述第二增益与所述第一增益是否相同,以及,所述第二快门速度与所述第一快门速度是否相同;
在所述第二增益与所述第一增益不同,且所述第二快门速度与所述第一快门速度不同时,控制所述闪烁传感器采用所述第二增益和所述第二快门速度对当前拍摄环境进行采样。
8.根据权利要求1或2所述的方法,其特征在于,所述当前拍摄环境为低照度场景,所述低照度场景包括环境照度低于第一亮度阈值的场景;或者,所述当前拍摄环境为过曝场景,所述过曝场景包括数据超过闪烁传感器能够支持的位宽上限值的场景。
9.一种电子设备,其特征在于,包括处理器和存储器,所述处理器和所述存储器耦合,所述存储器用于存储计算机程序,当所述计算机程序被所述处理器执行时,使得所述电子设备执行权利要求1至8中任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有计算机程序,当所述计算机程序被处理器执行时,使得所述处理器执行权利要求1至8中任一项所述的方法。
11.一种芯片,其特征在于,包括处理器,当所述处理器执行指令时,所述处理器执行如权利要求1至8中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211167612.0A CN116320771B (zh) | 2022-09-23 | 2022-09-23 | 一种拍摄方法和电子设备 |
CN202311455840.2A CN117768789A (zh) | 2022-09-23 | 2022-09-23 | 一种拍摄方法和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211167612.0A CN116320771B (zh) | 2022-09-23 | 2022-09-23 | 一种拍摄方法和电子设备 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311455840.2A Division CN117768789A (zh) | 2022-09-23 | 2022-09-23 | 一种拍摄方法和电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116320771A CN116320771A (zh) | 2023-06-23 |
CN116320771B true CN116320771B (zh) | 2023-10-20 |
Family
ID=86794814
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211167612.0A Active CN116320771B (zh) | 2022-09-23 | 2022-09-23 | 一种拍摄方法和电子设备 |
CN202311455840.2A Pending CN117768789A (zh) | 2022-09-23 | 2022-09-23 | 一种拍摄方法和电子设备 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311455840.2A Pending CN117768789A (zh) | 2022-09-23 | 2022-09-23 | 一种拍摄方法和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN116320771B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2024041245A1 (zh) * | 2022-08-24 | 2024-02-29 | 万有引力(宁波)电子科技有限公司 | 一种mr装置及消除mr装置图像闪烁的方法 |
CN116880792B (zh) * | 2023-09-07 | 2024-03-08 | 荣耀终端有限公司 | 一种底层器件的数据调用方法和电子设备 |
CN117938996A (zh) * | 2023-12-28 | 2024-04-26 | 荣耀终端有限公司 | 检测环境光的方法和电子设备 |
CN118317191A (zh) * | 2024-06-05 | 2024-07-09 | 荣耀终端有限公司 | 一种拍摄方法和电子设备 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1932630A (zh) * | 2006-10-27 | 2007-03-21 | 北京中星微电子有限公司 | 自动曝光调节方法与装置 |
CN112351216A (zh) * | 2020-10-10 | 2021-02-09 | 深圳开阳电子股份有限公司 | 检测和消除视频闪烁的方法及图像处理设备 |
WO2021208923A1 (zh) * | 2020-04-13 | 2021-10-21 | 深圳市万普拉斯科技有限公司 | 拍摄闪烁消除方法、装置、拍摄设备和可读存储介质 |
CN114500860A (zh) * | 2020-10-26 | 2022-05-13 | 北京小米移动软件有限公司 | 消除光源闪烁的方法、消除光源闪烁的装置及存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100968978B1 (ko) * | 2008-10-22 | 2010-07-14 | 삼성전기주식회사 | 자동 노출 제어 장치 및 방법 |
TWI423657B (zh) * | 2011-01-25 | 2014-01-11 | Pixart Imaging Inc | 影像系統及其干擾消除方法 |
US9838622B2 (en) * | 2015-03-13 | 2017-12-05 | Apple Inc. | Flicker detection using semiconductor light source |
-
2022
- 2022-09-23 CN CN202211167612.0A patent/CN116320771B/zh active Active
- 2022-09-23 CN CN202311455840.2A patent/CN117768789A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1932630A (zh) * | 2006-10-27 | 2007-03-21 | 北京中星微电子有限公司 | 自动曝光调节方法与装置 |
WO2021208923A1 (zh) * | 2020-04-13 | 2021-10-21 | 深圳市万普拉斯科技有限公司 | 拍摄闪烁消除方法、装置、拍摄设备和可读存储介质 |
CN112351216A (zh) * | 2020-10-10 | 2021-02-09 | 深圳开阳电子股份有限公司 | 检测和消除视频闪烁的方法及图像处理设备 |
CN114500860A (zh) * | 2020-10-26 | 2022-05-13 | 北京小米移动软件有限公司 | 消除光源闪烁的方法、消除光源闪烁的装置及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN116320771A (zh) | 2023-06-23 |
CN117768789A (zh) | 2024-03-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN116320771B (zh) | 一种拍摄方法和电子设备 | |
CN110766621B (zh) | 图像处理方法、装置、存储介质及电子设备 | |
CN112449120B (zh) | 高动态范围视频生成方法及装置 | |
CN110445989B (zh) | 图像处理方法、装置、存储介质及电子设备 | |
CN110830730B (zh) | 电子装置中用于生成移动图像数据的设备和方法 | |
CN116055897B (zh) | 拍照方法及其相关设备 | |
CN113810603B (zh) | 点光源图像检测方法和电子设备 | |
CN116055890B (zh) | 生成高动态范围视频的方法和电子设备 | |
CN115086567B (zh) | 延时摄影方法和装置 | |
WO2022083325A1 (zh) | 拍照预览方法、电子设备以及存储介质 | |
CN111050143A (zh) | 一种图像拍摄方法和终端设备 | |
CN114463191A (zh) | 一种图像处理方法及电子设备 | |
CN116744120A (zh) | 图像处理方法和电子设备 | |
CN117119291B (zh) | 一种出图模式切换方法和电子设备 | |
CN116709042B (zh) | 一种图像处理方法和电子设备 | |
CN115705663B (zh) | 图像处理方法与电子设备 | |
CN117651221A (zh) | 视频处理的方法及电子设备 | |
CN113891008A (zh) | 一种曝光强度调节方法及相关设备 | |
CN116055855B (zh) | 图像处理方法及其相关设备 | |
CN117692783B (zh) | 一种视频拍摄方法及电子设备 | |
CN115526786B (zh) | 图像处理方法及其相关设备 | |
CN117132511B (zh) | 一种图像处理方法及电子设备 | |
CN116723417B (zh) | 一种图像处理方法和电子设备 | |
CN117750190B (zh) | 一种图像处理方法及电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |