CN117692786A - 一种拍摄方法、电子设备和存储介质 - Google Patents

一种拍摄方法、电子设备和存储介质 Download PDF

Info

Publication number
CN117692786A
CN117692786A CN202410137626.0A CN202410137626A CN117692786A CN 117692786 A CN117692786 A CN 117692786A CN 202410137626 A CN202410137626 A CN 202410137626A CN 117692786 A CN117692786 A CN 117692786A
Authority
CN
China
Prior art keywords
image
vector
brightness
luminance
camera
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.)
Pending
Application number
CN202410137626.0A
Other languages
English (en)
Inventor
黄宇星
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202410137626.0A priority Critical patent/CN117692786A/zh
Publication of CN117692786A publication Critical patent/CN117692786A/zh
Pending legal-status Critical Current

Links

Landscapes

  • Studio Devices (AREA)

Abstract

本申请提供一种拍摄方法、电子设备和存储介质,涉及图像处理领域,能够去除图像中的banding现象,提高用户的拍摄体验。该方法应用于电子设备,电子设备的拍摄场景的光源包括亮度周期性变化的频闪光源。该方法包括:获取第一图像和第二图像;第一图像和第二图像的被摄主体相同,第一图像中存在图像条带banding,第二图像存在运动模糊;基于第一图像和第二图像,确定特征量;特征量用于表征光源亮度变化;基于特征量对第一图像中的banding进行去除,得到目标图像。

Description

一种拍摄方法、电子设备和存储介质
技术领域
申请涉及终端技术领域,尤其涉及一种拍摄方法、电子设备和存储介质。
背景技术
随着电子设备技术的不断发展,越来越多的电子设备支持多种拍照模式。当用户需要通过电子设备拍摄高速运动的物体时,可以通过在电子设备中相机应用程序进行设置(例如设置为高速拍摄模式或者抓拍模式),使得相机应用控制摄像图进行拍照时,以较低的曝光时长来拍摄运动物体。这样,便可以减少对运动物体拍摄时产生的运动模糊问题。可以理解的,由于曝光时长较短,所以拍摄高速运动的物体时,需要电子设备处于光线充足的环境中,以便电子设备可以抓拍到运动物体瞬间状态的清晰图像。
当电子设备的拍摄时的环境为光线充足的户外场景时,光源为不会产生频闪的自然光,电子设备拍摄的图像无异常符合用户需求。当拍摄环境为室内时,光源则一般是会随市电周期变化而变化的照明设备(例如电灯)。即照明设备的亮度会受交流电的影响,随着交流电幅值的周期性变化,照明设备的亮度也发生相应的变化。例如,照明设备在50赫兹(Hz)交流电的驱动下工作,则每秒钟照明设备频闪100次。这种情况下,在采用短曝光(即较短的曝光时长)进行拍摄中,由于摄像头拍摄图像采用的是行曝光,光源的频闪则会导致电子设备的摄像头采集图像的过程中不同行的亮度不一致,从而使得最终生成的图像上存在明亮程度不同的条纹,影响用户的拍摄体验。
发明内容
本申请实施例提供一种拍摄方法、电子设备和存储介质,能够去除图像中的banding现象,提高用户的拍摄体验。
为了达到上述目的,本申请实施例采用如下技术方案:
第一方面,本申请实施例提供一种拍摄方法,应用于电子设备,电子设备的拍摄场景的光源包括亮度周期性变化的频闪光源。该方法包括:获取第一图像和第二图像;第一图像和第二图像的被摄主体相同,第一图像中存在图像条带banding,第二图像存在运动模糊;基于第一图像和第二图像,确定特征量;特征量用于表征光源亮度变化;基于特征量对第一图像中的banding进行去除,得到目标图像。
基于本申请提供的技术方案,在拍摄图像时,可以同时获取长曝光图像(即第二图像)和短曝光图像(即第一图像)。由于长曝光图像的曝光时长较长且为光源亮度变化半周期的整数倍,所以该长曝光图像中不会存在banding,但会存在运动模糊。而短曝光图像的曝光时长较短且不为光源亮度变化半周期的整数倍,所以该长曝光图像中会存在banding,但不会存在运动模糊。基于此,电子设备可以利用长曝光图像和短曝光图像得出能够表征光源亮度变化的特征量。基于该特征量,则可以进一步对短曝光图像进行处理以去除banding,从而得到无banding且无运动模糊的图像,保证了用户的拍摄体验。
在第一方面的一种可能的实现方式中,电子设备包括第一摄像头和第二摄像头;获取第一图像和第二图像,包括:通过第一摄像头采用第一曝光时长进行行曝光以获取第一图像,并通过第二摄像头采用第二曝光时长进行行曝光以获取第一图像;其中,第一曝光时长小于第二曝光时长,第一曝光时长不为光源亮度变化的半周期的整数倍,第二曝光时长为光源亮度变化的半周期的整数倍。
基于上述设计方式,电子设备可以通过自身具备的多个摄像头同时或近似同时的获取到的包括针对运动物体的短曝光时长在内的不同曝光时长(包括第一曝光时长和第二曝光时长)的多个图像。该多个不同曝光时长的图像则背景高度一致,且被摄主题的位置高度一致。这样一来,便可以得到一致性足够好的第一图像和第二图像,进而可以得到能够更好的表征光源亮度变化的特征量,进而得到无banding且无运动模糊的目标图像,提高用户的拍摄体验。
在第一方面的一种可能的设计方式中,获取第一图像和第二图像,包括:响应于用户对目标应用的拍摄功能的开启操作,显示拍摄界面;响应于用户在拍摄界面中实施的拍摄操作,获取第一图像和第二图像。
基于上述设计方式,电子设备便可以在拍摄功能开启的情况下,顺利的获取第一图像和第二图像。
在第一方面的一种可能的设计方式中,基于第一图像和第二图像,确定特征量,包括:确定第一图像的banding方向;将第一图像沿banding方向进行逐像素相加,得到第一图像对应的第一向量,并将第二图像沿该banding方向进行逐像素相加,得到第二图像对应的第二向量;将第一向量进行亮度转换得到第一亮度向量,并将第二向量进行亮度转换得到第二亮度向量;基于第一亮度向量与第二亮度向量,确定特征量。
基于上述设计方式,第一图像和第二图像是不同摄像头获取的,所以必然存在移动的内容不一致问题。考虑到同行或同列像素的累加,是可以将运动模糊和图像内容不一致对同位置像素的影响减小。所以,为了避免上述问题,可以通过对第一图像和第二图像中同行或同列的像素进行累加处理,得到第一向量和第二向量。而第一向量和第二向量中的元素会存在反映不同颜色空间的不同值,所以为了避免颜色的影响,可以对第一向量和第二相连进行亮度转换得到第一亮度向量与第二亮度向量。之后,则可以基于第一亮度向量与第二亮度向量得出能够更为准确的表征出光源亮度变化的特征量。此外,由于光源亮度的变化主要体现在与flicker条纹方向(即banding方向)垂直的方向上,所以这里的像素累加可以是在banding方向上的累加。这样一来,便可以顺利得到特征量,方便对第一图像中的banding进行去除,从而得到目标图像。
在第一方面的一种可能的设计方式中,将第一向量进行亮度转换得到第一亮度向量,并将第二向量进行亮度转换得到第二亮度向量,包括:利用预设亮度转换公式,对第一向量中的元素进行亮度转换,以得到第一亮度向量;利用预设亮度转换公式,对第一向量中的元素进行亮度转换,以得到第二亮度向量。
基于上述设计方式,依据特定的亮度转换公式,便可以将第一向量和第二向量中,元素包括的不同颜色空间的值整合为亮度,避免后续确定特征量时,颜色的影响。
在第一方面的一种可能的设计方式中,基于第一亮度向量与第二亮度向量,确定特征量,包括:将第一亮度向量与第二亮度向量逐元素相除,得到特征量。
基于上述设计方式,由于第一亮度向量是可以反映出第一图像中,光源亮度的变化和图像中物体本身的颜色等特征造成的亮度变化;而第二亮度向量则是可以反映出第二图像中物体本身的颜色等特征造成的亮度变化。所以通过将第一亮度向量与第二亮度向量逐元素相除,便可以得到能够表征光源亮度变化的特征量,为后续去除banding提供了数据支持。
在第一方面的一种可能的设计方式中,基于第一亮度向量与第二亮度向量,确定特征量,包括:利用向量生成模型对第一亮度向量与第二亮度向量进行处理,得到第三亮度向量;向量生成模型具备利用存在banding且无运动模糊的图像的亮度向量,和不存在banding且存在运动模糊的图像的亮度向量,得到与存在banding且无运动模糊的图像的亮度向量表征的除光源亮度变化以外的亮度特征,相同的亮度向量;第三亮度向量表征的亮度变化特征与第一亮度向量表征的除光源亮度变化以外的亮度变化特征相同。
实际中电子设备的不同摄像头的规格是不一致的,即不同摄像头的图像传感器采集图像的性能是存在差异的。所以基于第一图像和第二图像两者同位置的像素可能是存在差异的。因此,基于第一图像和第二图像得到的特征量会因为该问题不能很精准的反映出光源亮度的变化,进而不能得到呈现效果更好的目标图像。基于此,为了得到更能精准的反映出光源亮度的变化的特征量,上述设计方式中,可以采用预先训练的向量生成模型对第一亮度向量和第二亮度向量进行处理,得到亮度变化特征与第一亮度向量表征的除光源亮度变化以外的亮度变化特征相同的第三亮度向量。可以认为通过与第一摄像头相同规格的摄像头,采用第一曝光时长对第一图像中的内容进行拍摄得到图像后,对该图像进行与第一图像生成第一亮度向量相同的处理过程后,得到的即为第三亮度向量。这样一来,使用第一亮度向量和第三亮度向量生成特征量,则可以消除由于第一摄像头和第二摄像头的规格不同导致对特征量的不利影响,得到更能反映出光源亮度变化的更为精准的特征量。
在第一方面的一种可能的设计方式中,利用向量生成模型对第一亮度向量与第二亮度向量进行处理,得到第三亮度向量之前,该方法还包括:获取至少一组样本数据和与样本数据对应的监督数据;样本数据包括第一样本亮度向量和第二样本亮度向量,监督数据包括第三样本量向量;第一样本亮度向量为存在banding且无运动模糊的第一样本图像的亮度向量,第二样本亮度向量为不存在banding且存在运动模糊的第二样本图像的亮度向量,第三样本亮度则为第三样本图像的亮度向量;第一样本图像、第二样本图像和第三样本图像的被摄主体相同;拍摄第一样本图像的摄像头与拍摄第二样本图像的摄像头规格不同,拍摄第一样本图像的摄像头与拍摄第三样本图像的摄像头规格相同;以至少一组样本数据作为训练数据,样本数据对应的监督数据作为监督信息,迭代训练初始向量生成模型,以得到训练后的向量生成模型。
基于上述设计方式,可以通过监督学习的方式,训练得到向量生成模型。该向量生成模型具备利用存在banding且无运动模糊的图像的亮度向量,和不存在banding且存在运动模糊的图像的亮度向量,得到与存在banding且无运动模糊的图像的亮度向量表征的除光源亮度变化以外的亮度特征,相同的亮度向量的能力。为后续确定特征向量提供了数据支持。
在第一方面的一种可能的设计方式中,基于特征量对第一图像中的banding进行去除,得到目标图像,包括:在banding方向为图像中行方向的情况下,将第一图像与特征量进行逐列相除,得到目标图像;在banding方向为图像中列方向的情况下,将第一图像与特征量进行逐行相除,得到目标图像。
基于上述设计方式,根据banding方向的不同,便可以采用不同的方式,使用特征量去除第一图像中的banding,从而得到目标图像,提高用户的使用体验。
第二方面,本申请实施例还提供一种拍摄装置,该装置可以应用于电子设备。该装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,例如,获取模块和处理模块。
其中,获取模块,用于获取第一图像和第二图像;第一图像和第二图像的被摄主体相同,第一图像中存在图像条带banding,第二图像存在运动模糊。处理模块,则用于基于获取模块获取的第一图像和第二图像,确定特征量;特征量用于表征光源亮度变化。处理模块还用于基于特征量对第一图像中的banding进行去除,得到目标图像。
第三方面,本申请提供一种电子设备,该电子设备包括多个摄像头、显示屏、存储器和一个或多个处理器;摄像头、显示屏、存储器与处理器耦合;其中,存储器中存储有计算机程序代码,计算机程序代码包括计算机指令,当计算机指令被处理器执行时,使得电子设备执行如第一方面及其任一种可能的设计方式提供的拍摄方法。
第四方面,本申请提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当所述计算机指令在电子设备上运行时,使得电子设备执行如第一方面及其任一种可能的设计方式提供的拍摄方法。
第五方面,本申请提供一种计算机程序产品,当计算机程序产品在电子设备上运行时,使得电子设备执行如第一方面及其任一种可能的设计方式提供的拍摄方法。
可以理解地,上述提供的第二方面至第五方面提供的技术方案所能达到的有益效果,可参考第一方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种拍摄场景示意图;
图2为本申请实施例提供的一种banding现象出现原理示意图;
图3为本申请实施例提供的一种拍摄方法的原理示意图;
图4为本申请实施例提供的一种电子设备的硬件架构示意图;
图5为本申请实施例提供的一种电子设备的软件架构示意图;
图6为本申请实施例提供的一种拍摄图像的场景示意图;
图7为本申请实施例提供的一种拍摄方法的流程示意图;
图8为本申请实施例提供的一种开启拍摄界面的场景示意图;
图9为本申请实施例提供的一种开启抓拍模式的场景示意图;
图10为本申请实施例提供的一种获取第一图像和第二图像的示意图;
图11为本申请实施例提供的banding方向示意图;
图12为本申请实施例提供的一种生成特征量的示意图;
图13为本申请实施例提供的一种生成目标图像的方法示意图;
图14为本申请实施例提供的另一种拍摄方法的流程示意图;
图15为本申请实施例提供的一种生成目标图像的方法示意图;
图16为本申请实施例提供的一种拍摄装置的结构示意图;
图17为本申请实施例提供的一种计算机程序产品的结构示意图。
具体实施方式
本申请以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括复数表达形式,除非其上下文中明确地有相反指示。还应当理解,“/”表示或的意思,例如,A/B可以表示A或B;文本中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。
在本申请中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本申请所描述的实施例可以与其它实施例相结合。
本申请以下实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为暗示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征,在本申请实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
首先,对本申请实施例中涉及名词进行如下说明:
(1)频闪(flicker):交流电网中的传输的能量并不是稳定不变的, 而是随着一个固定频率(例如50Hz)进行变化,这个频率一般被称为工频;工频所带来能量变化称为flicker。
(2)曝光时长:曝光时长是指从相机快门打开到关闭这段时间内光线照射到底片或感光器的时间。
(3)图像条带(Banding)现象:摄像头的图像传感器通过逐行曝光(即行曝光)的方式采集图像时,如果不同行的像素点接收到的能量不同,将导致电子设备拍摄得到的拍摄图像上存在明暗条纹(或称为flicker条纹或水波纹),即Banding现象。例如,在图像传感器采集图像时,如果因光源亮度变化的周期和曝光时长存在差异等原因造成曝光时亮度发生变化,会使得一帧图像中不同行的曝光量(接收到的光能量)不同,从而拍摄得到的拍摄图像上会存在亮暗变化的条纹。
示例性地,对于50HZ交流电,即每秒钟灯光亮暗100次的带电光源。若电子设备的曝光时长满足半周期(即10ms)的整数倍,则曝光积分(integration)周期可以抵消banding;若电子设备的曝光时长不满足10ms的整数倍,则采集图像时的曝光量会按交流电正弦波规律波动,导致图像中出现有规律的条纹。
(4)神经网络:神经网络是指将多个单一的神经单元联结在一起形成的网络,即一个神经单元的输出可以是另一个神经单元的输入;每个神经单元的输入可以与前一层的局部接受域相连,来提取局部接受域的特征,局部接受域可以是由若干个神经单元组成的区域。
(5)卷积神经网络(convolutional neuron network,CNN):卷积神经网络是一种带有卷积结构的深度神经网络。卷积神经网络包含了一个由卷积层和子采样层构成的特征选取器,该特征选取器可以看作是滤波器。卷积层是指卷积神经网络中对输入信号进行卷积处理的神经元层。在卷积神经网络的卷积层中,一个神经元可以只与部分邻层神经元连接。一个卷积层中,通常包含若干个特征平面,每个特征平面可以由一些矩形排列的神经单元组成。同一特征平面的神经单元共享权重,这里共享的权重就是卷积核。共享权重可以理解为提取图像信息的方式与位置无关。卷积核可以以随机大小的矩阵的形式初始化,在卷积神经网络的训练过程中卷积核可以通过学习得到合理的权重。另外,共享权重带来的直接好处是减少卷积神经网络各层之间的连接,同时又降低了过拟合的风险。
(6)反向传播算法:神经网络可以采用误差反向传播(back propagation,BP)算法在训练过程中修正初始的神经网络模型中参数的大小,使得神经网络模型的重建误差损失越来越小。具体地,前向传递输入信号直至输出会产生误差损失,通过反向传播误差损失信息来更新初始的神经网络模型中参数,从而使误差损失收敛。反向传播算法是以误差损失为主导的反向传播运动,旨在得到最优的神经网络模型的参数,例如权重矩阵。
(7)RGB:RGB色彩模式(也翻译为“红绿蓝”)是工业界的一种颜色标准,是通过对红(Red)、绿(Green)、蓝(Blue)三个颜色通道的变化以及它们相互之间的叠加来得到各式各样的颜色的,RGB即是代表红、绿、蓝三个通道的颜色,这个标准几乎包括了人类视力所能感知的所有颜色,是目前运用最广的颜色系统之一。RGB值就是指某个像素的三个通道的,并使用整数来表示。通常情况下,RGB值各有256个,从0、1、2...直到255。其中,虽然数字最高是255,但0也是数值之一,因此共256个。例如某个像素的RGB值可以为(122,255,0)。对于某帧图像而言,在对其进行处理时,可以将其认为由R、G和B三个通道的三张不同的图像合成得到的。R通道对应的图像中的每个像素的值则可以是该像素对应的红色的亮度值,G通道对应的图像中的每个像素的值则可以是该像素对应的红色的亮度值,B通道对应的图像中的每个像素的值则可以是该像素对应的红色的亮度值。
目前,为了减少拍摄高速物体时产生的运动模糊问题,用户可以控制电子设备采用曝光时长较小的短曝光方式拍摄运动物体的图像。这种拍摄方式中,参照图1所示,如果电子设备在拍摄运动物体时所处的环境为室内,则可以由室内的照明设备(例如日光灯)作为光源提供照明。该照明设备的亮度会收交流电的影响,呈周期性变化。当室内的照明设备在交流电的驱动下工作时,频率为50Hz的交流电使得照明设备在1s中频闪次数为100。当交流电的的工作电压的频率为60Hz时,则会使得照明设备在1s中频闪次数为120。
较短的曝光时长是不满足频闪光源的半周期的整数倍的。这样,由于电子设备的摄像头拍摄图像采用的是行曝光,同一帧图像中不同行的曝光时长相同,曝光开始时间不同。所以,这样会使得电子设备得到的图像帧中不同行的曝光量不同,进而使得图像帧出现明暗不一的flicker条纹,严重影响用户的拍摄体验。
可以理解的,运动物体可以是人物也可以是动物、车辆、机器人等。本申请实施例以运动物体是人物为例进行相关说明。
示例性的,参照图2中(a)所示,在光源为受电源周期变化影响的情况下,光源的亮度变化是如正弦波样式的周期性变化。在该场景下,用户可以使用电子设备使用小于光源的周期的短曝光时长,进行行曝光获取图像帧。由于采用行曝光的方式获取高速运动物体的图像帧时,会使得同一帧图像中不同行的曝光量或所能接收到的光能量(光源亮度变化波形的在一次行曝光时长内的积分值)不同。例如,帧i中第一行(行1)像素的曝光量(行1积分区域的大小)要明显大于第n行(行n)像素的曝光量(行n积分区域的大小)。图1中提到的积分时间(integration time )可以是指图像传感器收集光信号的时间,或者可以是指图像传感器对光信号进行积分的时间长度。消隐时间(blanking time),是指在图像传感器的行曝光过程中,从一行结束到下一行开始的时间间隔。
这样一来,最终得到的图像帧则可以如图2中(b)所示。该图像帧中存在亮度不一样的横向的条纹,即licker条纹或水波纹。也就是说,电子设备使用短曝光时长曝光拍摄的图像存在banding。这将使得用户使用电子设备进行拍摄的拍摄体验很不好。
针对上述问题,本申请实施例提供一种拍摄方法,应用于电子设备中。该方法的应用场景可以是在光源包括照明设备的情况下,拍摄高速运动物体的拍摄场景。例如,在室内场景对体育比赛(如篮球比赛、游泳比赛等)进行拍摄的拍摄场景。又例如,在室外场地进行活动时,室外阳光光照不足的情况下使用照明设备提供光照,以供用户对室外亲子活动、室外足球比赛等内容进行拍摄的拍摄场景。
在该技术方案中,参照图3所示,电子设备在拍摄图像时,可以在获取一张曝光时长较长且为光源亮度变化半周期的整数倍的长曝光图像的同时,获取一张曝光时长较短且不为光源亮度变化半周期的整数倍的短曝光图像。其中,短曝光图像中的被摄主体不会存在运动模糊,但会存在flicker条纹,即存在banding。长曝光图像中的被摄主体会存在运动模糊,但不会存在flicker条纹,即不存在banding。
之后,电子设备可以利用短曝光图像和长曝光图像,得到能够表征出光源亮度变化的特征量。最后,电子设备则可以基于该特征量对短曝光图像进行处理,以得到既不存在运动模糊,也不会存在banding的目标图像。
基于本申请提供的技术方案,在拍摄图像时,可以同时获取长曝光图像和短曝光图像。由于长曝光图像的曝光时长较长且为光源亮度变化半周期的整数倍,所以该长曝光图像中不会存在banding,但会存在运动模糊。而短曝光图像的曝光时长较短且不为光源亮度变化半周期的整数倍,所以该长曝光图像中会存在banding,但不会存在运动模糊。基于此,电子设备可以利用长曝光图像和短曝光图像得出能够表征光源亮度变化的特征量。基于该特征量,则可以进一步对短曝光图像进行处理以去除banding,从而得到无banding且无运动模糊的图像,保证了用户的拍摄体验。
下面结合附图对本申请实施例提供的技术方案进行详细表述。
本申请提供的技术方案可以应用在具备拍摄功能的电子设备中。在一些实施例中,该电子设备可以是手机、平板电脑、手持计算机、个人计算机(personal computer,PC),超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificial intelligence, AI)设备、可穿戴式设备、车载设备、智能家居设备和/或智慧城市设备等电子设备,本申请实施例对该电子设备的具体类型不作特殊限制。
示例性的,以电子设备是手机为例,图4示出了本申请实施例提供的一种电子设备的结构示意图。
参照图4所示,电子设备可以包括处理器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,用户标识模块(subscriber identification module,SIM)卡接口194,以及摄像头195等。其中,传感器模块180可以包括压力传感器,陀螺仪传感器,气压传感器,磁传感器,加速度传感器,距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器,环境光传感器,骨传导传感器等。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以是电子设备的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
充电管理模块140用于从供电设备(例如充电器、笔记本电能等)接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备的无线充电线圈接收无线充电输入。
充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。其中,电池142具体可以为多个电池串联组成。电源管理模块141用于连接电池142、充电管理模块140与处理器110。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏193,摄像头195,和无线通信模块160等供电。电源管理模块141还可以用于监测电池的电压、电流、电池循环次数、电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。
外部存储器接口120可以用于连接外部的非易失性存储器,实现扩展电子设备的存储能力。外部的非易失性存储器通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部的非易失性存储器中。
内部存储器121可以包括一个或多个随机存取存储器(random access memory,RAM )和一个或多个非易失性存储器(non-volatile memory, NVM)。随机存取存储器可以由处理器110直接进行读写,可以用于存储操作系统或其他正在运行中的程序的可执行程序(例如机器指令),还可以用于存储用户及应用程序的数据等。非易失性存储器也可以存储可执行程序和存储用户及应用程序的数据等,可以提前加载到随机存取存储器中,用于处理器110直接进行读写。
触摸传感器,也称“触控器件”。触摸传感器可以设置于显示屏193,由触摸传感器与显示屏193组成触摸屏,也称“触控屏”。触摸传感器用于监测作用于其上或附近的触摸操作。触摸传感器可以将监测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏193提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器也可以设置于电子设备的表面,与显示屏193所处的位置不同。
环境光传感器用于感知环境光亮度。例如:环境光传感器可以测量环境光的四个通道的光强度。环境光传感器将测量到的环境光的四个通道的光强度输出给处理器110。处理器110可以对环境光传感器输出的环境光的四个通道的光强度进行处理得到环境光的光强度。在亮屏状态下,电子设备可以根据得到的环境光的光强度自适应调节显示屏亮度。
压力传感器用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器可以设置于显示屏193。压力传感器的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。当有触摸操作作用于显示屏193,电子设备根据压力传感器监测所述触摸操作强度。电子设备也可以根据压力传感器的监测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
在一些实施例中,电子设备可以包括1个或N个摄像头195,N为大于1的正整数。在本申请实施例中,摄像头195的类型可以根据硬件配置以及物理位置进行区分。例如,设置在电子设备的显示屏193那一面的摄像头可以称为前置摄像头,设置在电子设备的后盖那一面的摄像头可以称为后置摄像头;又例如,焦距短、视越大的摄像头可以称为广角摄像头,焦距长、视角小的摄像头可以称为普通摄像头。其中,焦距的长短、视角的大小为相对概念,并无具体的参数限定,因此广角摄像头和普通摄像头也是一个相对概念,具体可以根据焦距、视角等物理参数进行区分。
电子设备通过GPU,显示屏193,以及应用处理器等实现显示功能。GPU为图像编辑的微处理器,连接显示屏193和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
电子设备可以通过ISP,摄像头195,视频编解码器,GPU,显示屏193以及应用处理器等实现拍摄功能。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。本申请实施例中,每个图像帧的帧绘制过程中,都会使用的GPU的功能,以使得最终显示的画面获得更好的显示效果和性能表现。
ISP用于处理摄像头195反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头195中。摄像头195用于捕获静态图像或视频。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
显示屏193用于显示图像,视频等。显示屏193包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备可以包括1个或N个显示屏193,N为大于1的正整数。
本申请实施例中,显示屏193可用于显示电子设备需要的页面(例如,拍照界面等),并在该界面中显示来自任一个或多个摄像头195拍摄的图像。
电子设备的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。
移动通信模块150可以提供应用在电子设备上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏193显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或者其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
SIM卡接口194用于连接SIM卡。SIM卡可以通过插入SIM卡接口194,或从SIM卡接口194拔出,实现和电子设备的接触和分离。电子设备可以支持一个或多个SIM卡接口。SIM卡接口194可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口194可以同时插入多张卡。SIM卡接口194也可以兼容外部存储卡。电子设备通过SIM卡和网络交互,实现通话以及数据通信等功能。一个SIM卡对应一个用户号码。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备的结构限定。在本申请另一些实施例中,电子设备也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
当然,可以理解的,上述图4所示仅仅为电子设备的形态为手机时的示例性说明。若电子设备是平板电脑,手持计算机,PC,PDA,可穿戴式设备(如:智能手表、智能手环)等其他设备形态时,电子设备的结构中可以包括比图4中所示更少的结构,也可以包括比图4中所示更多的结构,在此不作限制。
可以理解的是,一般而言,电子设备功能的实现除了需要硬件的支持外,还需要软件的配合。电子设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android®系统为例,示例性说明电子设备的软件结构。
图5为本申请实施例提供的电子设备的软件系统的分层架构示意图。分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口(例如API)通信。
在一些示例中,参照图5所示,在本申请实施例中,将电子设备的软件分为五层,从上至下分别为应用程序层,框架层(或称为应用程序框架层),系统库和安卓运行时(android runtime),HAL层(hardware abstraction layer,硬件抽象层)以及驱动层(或称为内核层)。其中,系统库和安卓运行时还可以称为本地框架层或者native层。
其中,应用程序层可以包括一系列的应用程序。如图7所示,应用程序层可以包括相机、图库、日历、地图、WLAN、蓝牙、音乐、视频、短信息、通话、导航、新闻、即时通讯等应用程序(application,APP)。
在一些实施例中,用户可以通过对应用程序层中的某些具备拍照功能的目标应用的操作进行拍摄,得到用户需要的照片或视频。
示例性的,以目标应用为相机应用,用户使用相机应用进行拍照为例,电子设备可以响应于用户打开相机应用的操作,显示拍摄界面。拍摄界面可以如图6中(a)所示。拍摄界面中的预览区域601可以显示电子设备的摄像头当前拍摄到的内容,该拍摄界面中还可以包括拍摄控件602。该拍摄控件204在被用户触发后,相机应用则可以依次通过框架层的相机服务、HAL层的相机模块指示驱动层中的相机驱动来驱动电子设备的摄像头,对当前拍摄到的区域进行拍照,以得到最终的图像。在拍照完成后,电子设备则可以通过如图6中(b)所示的成片预览界面603显示最终拍摄得到的图像。其中,成片预览界面603中则还可以包括有保存控件604。该保存控件604被触发后,相机应用则可以在图库或者任意可行的存储空间中存储成片预览界面603中展示的图像。
在一些实施例中,相应用于对拍照控件602的触发操作,电子设备在拍照完成后,可以不显示成品预览界面,而是之直接将拍照得到的图像存储在图库或者任意可行的存储空间中。在用户需要查看该图像时,则可以通过任意可能的操作,打开图库或任意可行的存储空间,以使得电子设备显示如图6中(c)所示的图片详情界面605。该图片详情界面605中则可以展示有电子设备拍摄得到的图像。
在一些可能的实施例中,目标应用还可以为微信®、企业微信®等任意可能的具备拍摄功能的应用。在本申请实施例中,目标应用可以同时控制两个摄像头以不同的曝光时长采集短曝光图像和长曝光图像。其中,短曝光图像中的被摄主体不会存在运动模糊,但会存在flicker条纹,即存在banding。长曝光图像中的被摄主体会存在运动模糊,但不会存在flicker条纹,即不存在banding。
之后,目标应用可以基于短曝光图像和长曝光图像得到能够表征光源亮度变化的特征量。最后,电子设备则可以基于该特征量对短曝光图像进行处理,以得到既不存在运动模糊,也不会存在banding的目标图像。
当然上述目标应用的部分功能也可以由电子设备的软件框架中其他层的任意可行的模块实现,本申请对此不做具体限制。
框架层为应用程序层的应用程序提供应用编程接口(application programminginterface,API)和编程框架。应用程序框架层包括一些预先定义的函数或服务。例如,应用程序框架层可以包括活动管理器、窗口管理器、内容提供器、音频服务、视图系统、电话管理器、资源管理器、通知管理器、包管理器和相机服务等,本申请实施例对此不做任何限制。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。这些数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。在一些实施例中,视图系统中还可以包括或启动渲染线程,以完成绘制帧缓冲等操作。
电话管理器用于提供电子设备的通信功能。例如,电话管理器可以管理通话应用的通话状态 (包括发起,接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
包管理器在安卓®系统中是用于管理应用程序包的。它允许应用程序获取关于已安装应用和它们的服务、权限等的详细信息。包管理器还用于管理应用程序的安装、卸载和升级等事件。
相机服务的主要作用是为应用程序提供统一的接口和功能,以访问和操作相机设备。以下是相机服务的一些主要作用:
相机访问:相机服务提供了访问相机硬件的接口,使应用程序能够与相机设备进行通信。它抽象了底层的相机驱动程序和硬件细节,隐藏了底层实现的差异性,使应用程序可以在不同设备上统一地使用相机功能。
相机控制:相机服务提供了相机设置和控制的功能,例如调整曝光、对焦、闪光灯等参数,以及切换前后摄像头等操作。应用程序可以通过相机服务对相机进行灵活的控制和配置,以满足不同的摄影需求。
例如,相机服务提供了图像捕获的功能,允许应用程序获取相机拍摄到的图像数据。它可以提供不同的图像格式、分辨率和帧率选项,以适应不同应用场景的需求。相机服务还可以支持图像处理功能,例如实时滤镜、图像美化、人脸识别等。它可以与相机模组配合使用,对图像数据进行实时处理或分析,以提供更多的视觉效果或功能。相机服务还可以提供相机(即相机模组)状态和事件的回调机制,使应用程序能够及时获取相机模组的状态变化或完成拍摄等事件。通过回调,应用程序可以及时响应相机操作,例如更新UI界面、执行其他逻辑等。
综上所述,相机服务在软件系统架构的框架层中扮演着桥梁的角色,它封装了底层的相机硬件细节,提供了统一的接口和功能,为应用程序提供了方便的相机访问、控制、图像捕获和处理等能力。
系统库可以包括多个功能模块。例如:表面管理器(surface manager) ,媒体库(Media Libraries),OpenGL ES,SGL等。表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。OpenGL ES用于实现三维图形绘图,图像渲染,合成,和图层处理等。SGL是2D绘图的绘图引擎。安卓运行时(android runtime)包括核心库和ART虚拟机。androidruntime负责安卓系统的调度和管理。核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。应用程序层和应用程序框架层运行在ART虚拟机中。ART虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。ART虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
HAL层是位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。HAL层提供标准界面,向更高级别的 Java API 框架(即框架层)显示设备硬件功能。HAL 层包含多个库模块,其中每个模块都为特定类型的硬件组件实现一个界面,例如:audio HAL音频模块,bluetooth HAL蓝牙模块,camera HAL相机模块(还可称为相机HAL或相机硬件抽象模块),sensors HAL传感器模块(或称为Isensor service,传感器服务)。
在本申请实施例中,相机HAL(即相机模块)主要用于发挥承上启下的作用,可以通过HAL层的HIDL接口对相机服务提供自身的方法(或称为函数或API),使相机服务可以和底层驱动进行通信(即使相机服务的指令可以传输至相机模组,使相机模组按照指令工作)。这样,应用层的应用程序便可以通过相机服务调用相机HAL对相机驱动进行控制,从而起到控制摄像头拍照的目的。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,相机驱动,音频驱动,传感器驱动、电池驱动等,本申请不做限定。
其中,传感器驱动具体可以包括电子设备包含的每个传感器的驱动,例如环境光传感器驱动等。示例性的,环境光传感器驱动可以响应于传感器模块获取检测数据的指示或指令,将环境光传感器的检测数据及时的发送给传感模块。相机驱动则可以驱动电子设备中的摄像头进行拍摄。
本申请实施例中提供的技术方案均可以在具有上述硬件架构或者软件架构的电子设备中实现。
基于上述图4所示的硬件架构和图5所示的软件架构,以下结合图7所示,对本申请实施例提供的拍摄方法进行介绍。图7为本申请实施例提供的一种拍摄方法的流程示意图。参照图7所示,以电子设备为手机,且电子设备的拍摄场景的光源包括亮度周期性变化的照明设备(或称为频闪光源)为例,该拍摄方法可以包括S701-S708:
S701、手机接收用户对目标应用的拍摄功能的开启操作,并响应于该开启操作,显示拍摄界面。
本申请实施例中,手机可以包括多个摄像头,在手机接收到用户打开目标应用的拍摄功能的情况(即实施该开启操作)下,手机可以同时通过至少一个或多个摄像头同时获取同一拍摄区域的图像,并显示拍照界面。在一些示例中,目标应用的拍摄功能启动后,可以连续生成多个预览请求,并依次向电子设备中与图像相关的功能模块发送各预览请求,电子设备中与图像相关的功能模块响应于各预览请求,则可以采集raw图并基于raw图生成各预览请求对应的预览图像,并显示在拍摄界面的预览区域中。
其中,目标应用可以为手机中任一具备有拍照功能的应用。例如,相机、微信®、QQ®等。示例性地,开启操作可以为用户在手机屏幕上实施的操作,也可以为语音指令,本申请实施例对启动操作的具体表现形式不作限定。下述实施例以启动操作为用户在手机屏幕上实施的操作为例进行示例性说明。
例如,以目标应用为相机应用,启动操作为点击操作例,如图8中的(a)所示,手机显示的桌面中可以包括相机应用的图标,用户可以在桌面中对相机应用的图标实施点击操作,以开启相机应用的拍摄功能。电子设备接收并响应于用户对相机应用图标的点击操作,可以启动相机应用,显示图8中的(b)所示的拍摄界面。该拍摄界面中的预览区域801中则用于显示当前摄像头获取到的画面或图像,即预览画面或预览图像。
在手机显示了拍摄界面后,用户便可以根据自身需求实施拍摄操作,以使得手机进行拍照或录像。由于本申请所要起到技术目的是,得到运动物体无运动模糊且无banding的图像。所以本申请提供的实施例中,在手机显示了拍摄界面后,手机可以响应于用户在任意可能的时刻实施的拍摄操作,获取多个不同曝光时长的图像进行处理,从而得到最终用于显示给用户查看或保存的目标图像。该目标图像可以是去除了运动模糊且无banding的包含运动物体运动时瞬时状态的图像。
在一种容易实现的方案中,手机可以使用单个摄像头针对同一运动物体获取不同曝光时长的图像。但是,由于单个摄像头获取多张图像必然要逐个获取,即获取不同图像的时刻相差较大(至少是一个刷新率对应的帧间隔时长)。同时,由于运动物体的状态会随时间实时变化,所以单个摄像头获取的多个不同曝光时长的图像之间的差异会较大,最终进行后处理后得到的目标图像也会收到较大的影响,从而使得目标图像对运动物体瞬时状态的呈现效果不够理想。所以,在本申请实施例中,为了使得最终后处理得到的目标图像对运行物体瞬时状态的呈现效果更好,手机响应于用户的拍摄操作,可以通过自身具备的多个摄像头同时或近似同时的获取到的包括针对运动物体的短曝光时长在内的不同曝光时长的多个图像。该多个不同曝光时长的图像则背景高度一致,且被摄主题的位置高度一致。
在本申请实施例中,是以手机包括两个摄像头(例如第一摄像头和第二摄像头),且在手机接收到用户对目标应用的拍摄功能的开启操作时,手机可以同时通过该两个摄像头分别获取对应的图像(例如,第一摄像头获取的第一图像和第二摄像头获取的第二图像)为例进行示意说明的。第一摄像头获取的第一图像和第二摄像头获取的第二图像的时刻相同或近似相同。例如,以摄像图启动后显示的预览画面的刷新率为30fps为例,第一摄像头获取到第一图像和第二摄像头获取到第二图像的时间差最大为1/(2×帧率)≈33/2ms。
此外,由于拍摄运动物体的需求不是用户使用电子设备拍摄的一般化需求,所以一般的,在手机响应于用户对目标应用的拍摄功能的开启操作,显示拍摄界面时,手机的默认拍摄模式是常规模式。常规模式下,电子设备可以会使用该多个摄像头以相同的长曝光时长获取图像,而不会获取到不同曝光时长的图像。基于此,在一些实施例中,在手机响应于用户对目标应用的拍摄功能的开启操作显示了拍摄界面后,用户还应通过任意可行的模式调整操作,将手机的拍摄模式转换为能够使用多个摄像头获取到不同曝光时长的多个图像的抓拍模式或高速拍摄模式。
例如,结合图8中(b)所示的实例,参照图9中(a)所示,拍摄界面中可以包括抓拍模式控件91,用户可以在拍摄界面中对抓拍模式控件91实施触发操作(即模式调整操作)。响应于用户对抓拍模式控件91实施的触发操作,手机可以将拍摄模式转换为抓拍模式。在一些示例中,用户也可以在图9中的(a)所示的拍摄界面中输入滑动操作(即模式调整操作),以将焦点位置(图9中小三角形指示的位置)滑动到抓拍模式控件91上,从而使得手机将拍摄模式转换为抓拍模式。
S702、响应于用户在拍摄界面实施的拍摄操作,手机通过第一摄像头获取第一图像,并通过第二摄像头获取第二图像。
如图10所示,以运动物体为人物为例,在人物进行运动的过程中,用户可以根据自身需求选择实施拍摄操作的时刻。在手机接收到用户对目标应用的拍摄操作时,作为响应,手机可以通过第一摄像头获取第一图像,并通过第二摄像头获取第二图像。之后,手机便可以对第一图像和第二图像进行后处理,得到去除运动模糊且无banding的用于显示的图像数据。具体处理过程后续实施例中详细描述,此处不做赘述。
在本申请实施例中,手机通过第一摄像头获取第一图像时,可以通过第一摄像头对应的第一图像传感器以第一曝光时长进行行曝光,从而得到第一图像。手机通过第二摄像头获取第二图像时,可以通过第二摄像头对应的第二图像传感器按照第二曝光时长进行行曝光,从而得到第二图像。第一图像和第二图像的拍摄内容或被摄主体相同。
其中,第一曝光时长可以小于第二曝光时长。也就是说,第一摄像头获取第一图像时,可以采用较短的第一曝光时长,第二摄像头获取第二图像时,可以采用较长的第二曝光时长。一般的,该第一曝光时长不为光源亮度变化的半周期的整数倍,因此如图10所示,第一摄像头获取的第一图像中被拍摄对象没有运动模糊,但是第一摄像头获取的第一图像中被拍摄对象中会存在banding。这里的光源亮度变化是指电子设备所处拍摄场景的光源的亮度变化,其受到了频闪光源的影响,所以其亮度变化可以认为是频闪光源的亮度变化,本申请中其余公开内容中类似内容同理。
一般的,第二曝光时长可以为光源亮度变化的半周期的整数倍。因此如图10所示,第二摄像头获取的第二图像中被拍摄对象会存在运动模糊,但是第二摄像头获取的第二图像中被拍摄对象中不会存在banding。实际中,存在频闪或亮度变化的光源是收到了市电的影响,而市电的频率一般为50Hz,其半周期为10ms,所以第二曝光时长可以被预设为10ms的整数倍。当然,由于用户使用电子设备的场景千差万别,为了更好的得到无banding的第二图像,手机可以在响应于用户打开目标应用的拍摄功能,显示拍摄界面时,通过任意可能的传感器检测外界光源亮度变化频率,进而对第二曝光时长的大小进行适时的调整,使得第二曝光时长为光源亮度变化的半周期的整数倍。
当然,在一些实施例中,有可能第一曝光时长虽然较小,但可能刚好与光源亮度变化的半周期相同。此时,第一图像也是不存在banding现象的。该情况可以由手机通过任意可能的传感器检测光源亮度的变化频率后,与第一曝光时长比较得到。在这种情况下,手机则可以直接将第一图像作为最终的目标图像,而不需要再实施后续实施例中基于第一图像和第二图像的后处理操作。
示例性的,以第一图像和第二图像为三通道的RGB图像为例,在本申请实施例中,第一图像对应的像素矩阵可以用X1来表示,X1的规格尺寸可以为H×W×3。第二图像可以用X2来表示, X2的规格尺寸可以为H×W×3。其中,H指单个通道的子图像中像素的行数,W指单个通道的子图像中像素的列数,3则值R、G、B三个通道。
在手机得到第一图像和第二图像后,便可以通过第一图像和第二图像确定出能够表征出光源亮度变化的特征量。在一种可能的实现方式中,由于图像中像素亮度的变化是光源亮度的变化和图像中物体本身的颜色等特征共同叠加决定的,而第一图像和第二图像中物体本身的颜色等特征是相同的。所以,手机可以直接使用第一图像的像素矩阵逐元素除以第二图像的像素矩阵,从而得到可以反映出光源亮度变化的像素矩阵,即特征量。
但是,由于第一图像和第二图像的曝光时长不同,所以第一图像和第二图像中同一位置的像素可能存在微小差异(即图像内容不一致),且第二图像中存在运动模糊。而这都会使得第一图像和第二图像中相同元素的亮度差异变大。这样一来,最终得到的特征量收到运动模糊的影响较为严重,会使得最终目标图像的呈现效果变差。此外,三通道的像素矩阵逐元素的除法计算量也较大,对于手机的计算资源消耗较大。
而考虑到同行或同列像素的累加,是可以将运动模糊和图像内容不一致对同位置像素的影响减小。所以,为了避免上述问题,可以通过对第一图像和第二图像中同行或同列的像素进行累加处理后,以累加得到的像素矩阵(或称为向量)进行亮度转换后进行逐元素相除,从而得到能够更为准确的表征出光源亮度变化的特征量。具体的,由于光源亮度的变化主要体现在与flicker条纹方向(即banding方向)垂直的方向上,所以这里的像素累加可以是在banding方向上的累加。因此,S702后执行S703-S706。
S703、手机确定第一图像的banding方向。
在手机通过第一摄像头获取第一图像,并通过第二摄像头获取第二图像之后,手机可以确定出第一图像对应的banding方向。从而手机可以基于第一图像对应的banding方向,得到第一图像对应的第一向量以及第二图像对应的第二向量。
由于手机通过第一摄像头获取第一图像时,手机是通过第一摄像头对应的第一图像传感器按照第一曝光时长进行行曝光,从而得到第一图像。其中,行曝光中“行”的方向是图像传感器在设置到手机上后就固定的,一般的,“行”的方向平行于手机在竖屏状态时,显示屏的水平方向(即从左边框到右边框的方向)。基于此,手机可以基于手机拍摄时的状态,来确定第一图像的banding方向。例如,参照图11中(a)所示,在手机竖屏拍摄得到第一图像的情况下,banding方向为第一图像中的行方向(或者称为横向)。又例如,参照图11中(b)所示,在手机横屏拍摄得到第一图像的情况下,banding方向为第一图像中的列方向(或者称为纵向)。
S704、手机将第一图像沿banding方向进行逐像素相加,得到第一图像对应的第一向量,并将第二图像沿该banding方向进行逐像素相加,得到第二图像对应的第二向量。
在手机确定出第一图像对应的banding方向之后,手机可以将第一图像沿第一图像对应的banding方向进行逐像素相加,得到第一图像对应的第一向量。同时,手机可以将第二图像沿第一图像对应的banding方向进行逐像素相加,得到第二图像对应的第二向量。从而手机可以基于第一图像对应的第一向量以及第二图像对应的第二向量得到能够表征光源亮度变化的特征量。
在一些示例中,若banding方向为行方向,则手机将第一图像沿banding方向进行逐像素相加,得到第一图像对应的第一向量,具体可以为:手机将第一图像中每一行的像素的像素值进行相加,从而得到第一图像对应的第一向量。同理,手机将第二图像沿banding方向进行逐像素相加,得到第二图像对应的第二向量,具体可以为:手机将第二图像中每一行的像素的像素值进行相加,从而得到第二图像对应的第二向量。
以第一图像为RGB图像为例,手机将第一图像中每一行的像素进行相加,即手机将第一图像中每一行的每个像素对应的三个颜色空间(即R、G、B)的值分别进行相加,从而得到第一向量中对应第一图像的每一行像素的三个颜色空间(或称为三个颜色通道)的值的相加值,即包括一行所有像素的R颜色空间的值的相加值、一行所有像素的G颜色空间的值的相加值和一行所有像素的B颜色空间的值的相加值。
也就是说,手机将第一图像沿banding方向进行逐像素相加,得到第一图像对应的第一向量,是一个二维向量,可以用Y1表示,Y1中的一个维度为第一图像中像素的列数,另一个维度为第一图像的通道数量。示例性的,以第一图像为RGB图像,banding方向为行方向为例,Y1的大小可以为H×3。H为第一图像中每个通道的子图像中像素的列数,3则代表R、G、B三个通道的数量。也就是说Y1中可以包括H个元素,每个元素则包括三个通道的值。
同理,手机将第二图像沿banding方向进行逐像素相加,得到第二图像对应的第二向量,是一个二维向量,可以用Y2表示,Y2中的一个维度为第二图像中像素的列数,另一个维度为第二图像的通道数量。示例性的,以第二图像为RGB图像,banding方向为行方向为例,Y2的大小可以为H×3。H为第二图像中每个通道的子图像中像素的列数,3则代表R、G、B三个通道的数量。也就是说Y2中可以包括H个元素,每个元素则包括三个通道的值。
需要说明的是,本申请实施例中对手机得到第一图像对应的第一向量以及第二图像对应的第二向量之间的先后顺序并不进行限定。即在手机确定出第一图像的banding方向之后,手机可以先得到第一图像对应的第一向量,之后再得到第二图像对应的第二向量;手机也可以先得到第二图像对应的第二向量,之后再得到第一图像对应的第一向量;手机也可以同时得到第二图像对应的第二向量以及第一图像对应的第一向量。
由于特征量主要用于反映光源的亮度变化,所以第一向量和第二向量中用于标识颜色控件的通道数是要进一步消除的。基于此,可以按照特定的方式,将第一向量中和第二向量中用于同一行像素的三个通道的累加值,整合为统一的亮度值,即执行S705。
S705、手机将第一向量进行亮度转换得到第一亮度向量,并将第二向量进行亮度转换得到第二亮度向量。
在手机得到第一图像对应的第一向量以及第二图像对应的第二向量之后,手机可以将第一向量进行亮度转换,得到第一亮度向量,并将第二向量进行亮度转换,得到第二亮度向量。从而手机可以基于第一亮度向量以及第二亮度向量,得到能够表征出光源亮度变化的特征量。
在一些示例中,以第一图像和第二图像为RGB图像为例,手机将第一向量进行亮度转换,得到第一亮度向量,可以为手机通过下述公式一(即预设亮度转换公式),将第一向量中的元素进行亮度转换,从而得到第一亮度向量。
公示一:Y(亮度)=(0.299×R)+(0.587×G)+(0.114×B);
其中,Y可以表示第一向量中第一元素转换后的亮度值(即第一亮度向量中的元素),R可以表示第一向量中第一元素包括的R颜色空间的值,G可以表示第一向量中第一元素包括的G颜色空间的值,B可以表示第一向量中第一元素包括的B颜色空间的值。第一元素可以为第一向量中任一个元素。
第一亮度向量可以称为一维向量,可以用V1表示。
示例性的,参照图12中(a)所示,第一亮度向量中沿元素方向(即第一个元素到最后一个元素的方向)的元素变化情况(即元素值的变化情况),可以明显看出收到了光源亮度变化的影响。例如,该元素变化情况可以为近似正弦波的变化。该元素方向可以等同于第一图像中的banding方向的垂直方向,例如banding方向为行方向,则元素方向为列方向。
同理,以第一图像和第二图像为RGB图像为例,手机将第二向量进行亮度转换,得到第二亮度向量,可以为手机通过下述公式一,将第二向量中的元素进行亮度转换,从而得到第二亮度向量。
公示一:Y(亮度)=(0.299×R)+(0.587×G)+(0.114×B);
其中,Y可以表示第二向量中第二元素转换后的亮度值(即第二亮度向量中的元素),R可以表示第二向量中第二元素包括的R颜色空间的值,G可以表示第二向量中第二元素包括的G颜色空间的值,B可以表示第二向量中第二元素包括的B颜色空间的值。第二元素可以为第二向量中任一个元素。
第二亮度向量可以称为一维向量,可以用V2表示。
示例性的,参照图12中(b)所示,第二亮度向量中沿元素方向(即第一个元素到最后一个元素的方向)的元素变化情况(即元素值的变化情况),可以明显看出其未受到光源亮度变化的影响。例如,该元素方向可以等同于第一图像中的banding方向的垂直方向,例如banding方向为行方向,则元素方向为列方向。
需要说明的是,除了上述S703-S705公开的先沿banding方向进行逐像素累加后,进行亮度状态这一种得到第一亮度向量和第二亮度向量的方式以外,还可以先将第一图像和第二图像中的每个像素的多个通道的值转换为亮度值后,在沿banding方向进行逐像素的累计,从而得到第一亮度向量和第二亮度向量。
具体的,在手机得到第一图像后,手机也可以先依据上述公式一将第一图像中每个像素进行亮度转换,得到每个像素对应的亮度值,即得到第三向量。第三向量可以为二维向量,一个维度为第一图像中像素的列,另一个维度为第一图像中像素的行。第三向量的大小可以为H×W。之后,手机将第三向量中,第一图像中每个像素对应的亮度值,沿banding方向进行逐像素相加,从而得到第一亮度向量。
同理,在手机得到第二图像后,手机也可以先依据上述公式一将第二图像中每个像素进行亮度转换,得到每个像素对应的亮度值,即得到第四向量。第四向量可以为二维向量,一个维度为第二图像中像素的列,另一个维度为第二图像中像素的行。第四向量的大小可以为H×W。之后,手机将第四向量中,第二图像中每个像素对应的亮度值,沿banding方向进行逐像素相加,从而得到第二亮度向量。
此外,需要说明的是,本申请对手机得到第一向量对应的第一亮度向量以及第二向量对应的第二亮度向量的具体顺序并不进行具体限制。即在手机得到第一向量以及第二向量之后,手机可以先得到第一向量对应的第一亮度向量,之后再得到第二向量对应的第二亮度向量;手机也可以先得到第二向量对应的第二亮度向量,之后再得到第一向量对应的第一亮度向量;手机也可以同时得到第二向量对应的第二亮度向量以及第一向量对应的第一亮度向量。
S706、手机将第一亮度向量与第二亮度向量进行逐元素相除,得到特征量。
在手机得到第一亮度向量以及第二亮度向量之后,手机可以将第一亮度向量与第二亮度向量进行逐像素相除,从而得到能够表征光源亮度变化的特征量。具体的,以特征量为V3,第一亮度向量V1和第二亮度向量V2为例,V3=V1/V2。也就是说,手机将第一亮度向量中每个元素除以第二亮度向量中对应位置的元素,则可以得到特征量。例如,手机将第一亮度向量中的第三元素除以第二亮度向量中的第四元素,从而得到第五元素,第五元素即特征量中的元素。第三元素可以为第一亮度向量中的任一个元素,第四元素为第二亮度向量中与第一亮度向量中第三元素位置相对应的元素。该特征量V3具体可以为一维向量,该特征量V3中则包括预设数量个元素。在bading方向为行方向时,预设数量为H,特征量的规格尺寸则可以为H×1;在bading方向为列方向时,预设数量为W,特征量的规格尺寸则可以为W×1。该特征量中的某个元素是第一亮度向量中的对应位置的元素除以第二亮度向量中对应位置的元素得到的。
示例性的,特征量中沿元素方向(即第一个元素到最后一个元素的方向)的元素变化情况(即元素值的变化情况),可以如图12中(c)所示。可以明显看出其元素变化情况可以为近似正弦波的变化。该元素方向可以等同于第一图像的banding方向的垂直方向。
S707、手机将第一图像与特征量进行逐列或逐行相除,得到目标图像。
在banding方向为图像中行方向的情况下,S707具体可以为手机将第一图像与特征量进行逐列相除,得到目标图像。在banding方向为图像中列方向的情况下,S707具体可以为手机将第一图像与特征量进行逐行相除,得到目标图像。该S707还可以称为手机利用特征量对将第一图像中的元素进行逐列或逐行加权,得到目标图像。示例性的,参照图13所示,在手机得到特征量后,便可以利用特征量对第一图像进行逐列或逐行加权,从而得到无运动模糊且无banding的目标图像。
由于特征量是可以反映出手机拍着的图像中,光源亮度在banding方向的垂直方向上的变化情况的。所以,在手机得到特征量之后,手机可以将第一图像与特征量进行逐列或逐行相除,从而去除第一图像中因光源亮度变化(或闪烁)导致的banding。从而得到物banding且无运动模糊的目标图像。
在一些实施例中,以banding方向为行方向为例,由于第一图像(即X1)的规格尺寸均为H×W×3,特征量(即V3)的规格尺寸为H×1。因此,手机将第一图像与特征量进行逐列相除,得到目标图像具体可以包括:手机将第一图像第一列中的第六元素除以特征量中的第七元素,从而得到第八元素。其中,第一列中为第一图像中任一列,第六元素为第一列中的任一个元素,第七元素为与第六元素位置对应的元素。例如,第六元素为第一列中的第三个元素,则第七元素为特征量中的第三个元素。第八元素为目标图像的第二列中的像素值,第二列可以为对应第一图像中的第一列的一列,第八元素在第二列中的位置与第六元素在第一列中的位置相同。
S708、手机保存和/或显示目标图像。
在手机得到目标图像后,手机可以保存和/或显示该目标图像。具体是保存目标图像还是显示目标图像,根据手机当前的使用场景而定,本申请对此不做具体限制。例如,用户实施的拍摄操作具体为拍照操作,则手机可以保存并显示目标图像。
需要说明的是,上述是实施例提供的拍摄方法也可以应用在预览画面中。在应用于预览画面中时,该拍摄方法中的S702则可以为:手机通过第一摄像头获取第一图像,并通过第二摄像头获取第二图像。之后,S707得到的目标图像则为一帧预览图像,S708则可以为显示目标图像。
基于本申请实施例提供的技术方案,在手机拍摄图像时,可以同时获取长曝光图像和短曝光图像。由于长曝光图像的曝光时长(即第二曝光时长)较长且为光源亮度变化半周期的整数倍,所以该长曝光图像中不会存在banding,但会存在运动模糊。而短曝光图像的曝光时长(即第一曝光时长)较短且不为光源亮度变化半周期的整数倍,所以该长曝光图像中会存在banding,但不会存在运动模糊。基于此,手机可以利用长曝光图像和短曝光图像得出能够表征光源亮度变化的特征量。基于该特征量,则可以进一步对短曝光图像进行处理,从而得到无banding且无运动模糊的图像,保证了用户的拍摄体验。
上述实施例中,特征量是基于第一摄像头获取的第一图像和第二摄像头获取的第二图像得出的,但是,实际中手机的不同摄像头的规格是不一致的,即不同摄像头的图像传感器采集图像的性能是存在差异的。所以基于第一图像和第二图像两者同位置的像素可能是存在差异的。因此,基于第一图像和第二图像得到的特征量会因为该问题不能很精准的反映出光源亮度的变化,进而不能得到呈现效果更好的目标图像。
基于此,为了得到更能精准的反映出光源亮度的变化的特征量,本申请实施例提供的拍摄方法,也可以采用预先训练的向量生成模型对第一亮度向量和第二亮度向量进行处理,得到亮度变化特征与第一亮度向量表征的除光源亮度变化以外的亮度变化特征相同的第三亮度向量。可以认为通过与第一摄像头相同规格的摄像头,采用第一曝光时长对第一图像中的内容进行拍摄得到图像后,对该图像进行与第一图像生成第一亮度向量相同的处理过程后,得到的即为第三亮度向量。这样一来,使用第一亮度向量和第三亮度向量生成特征量,则可以消除由于第一摄像头和第二摄像头的规格不同导致对特征量的不利影响,得到更能反映出光源亮度变化的更为精准的特征量。
以下结合图13所示,对本申请实施例提供的另一种拍摄方法进行介绍。图14为本申请实施例提供的另一种拍摄的流程示意图。参照图14所示,以手机为手机,且电子设备的拍摄场景的光源包括亮度周期性变化的照明设备(或称为频闪光源)为例,该拍摄方法可以包括S1401-S1409:
S1401、手机接收用户对目标应用的拍摄功能的开启操作,并响应于该开启操作,显示拍摄界面。
本实施例中S1401的具体实现可以参照上述S701中的过程,本实施例在此不再赘述。
S1402、响应于用户在拍摄界面实施的拍摄操作,手机通过第一摄像头获取第一图像,并通过第二摄像头获取第二图像。
本实施例中S1402的具体实现可以参照上述S702中的过程,本实施例在此不再赘述。
S1403、手机确定第一图像对应的banding方向。
本实施例中S1403的具体实现可以参照上述S703中的过程,本实施例在此不再赘述。
S1404、手机将第一图像沿banding方向进行逐像素相加,得到第一图像对应的第一向量,并将第二图像沿该banding方向进行逐像素相加,得到第二图像对应的第二向量。
本实施例中S1404的具体实现可以参照前述实施例中S704的相关表述,本实施例在此不再赘述。
S1405、手机将第一向量和进行亮度转换得到第一亮度向量,并将第二向量进行亮度转换得到第二亮度向量。
本实施例中S1405的具体实现可以参照前述实施例中S705的相关表述,本实施例在此不再赘述。
示例性的,参照图15所示,在实施了S1401-S1405后,便可以将第一图像转换为第一亮度向量V1,将第二图像转换为第二亮度向量V2。
S1406、手机利用向量生成模型,对第一亮度向量和第二亮度向量进行处理,以得到第三亮度向量。
其中,特征量用于表征光源亮度变化。向量生成模型具备利用存在banding且无运动模糊的图像的亮度向量,和不存在banding且存在运动模糊的图像的亮度向量,得到与存在banding且无运动模糊的图像的亮度向量表征的除光源亮度变化以外的亮度特征,相同的亮度向量。
示例性的,参照图15所示,通过S1406,则可以利用向量生成模型得到第三亮度向量V3。
在本申请实施例中,还提供一种向量生成模型的训练方法,该方法可以包括S1和S2:
S1、获取至少一组样本数据和与样本数据对应的监督数据。
其中,每组样本数据包括第一样本亮度向量和第二样本亮度向量,监督数据则为第三样本量向量。
其中,第一样本亮度向量为存在banding且无运动模糊的第一样本图像的亮度向量,第二样本亮度向量为不存在banding且存在运动模糊的第二样本图像的亮度向量,第三样本亮度则为第三样本图像的亮度向量。第一样本图像、第二样本图像和第三样本图像的拍摄内容或被摄主体相同。
在一些实施例中每组样本数据及其对应的监督数据的获取过程可以包括X1-X3:
X1、在光源包括频闪光源的拍摄场景下,通过第一样本摄像头针对运动的目标物体在第一时刻,采用第一曝光时长进行曝光拍摄得到第一样本图像;通过第二样本摄像头针对运动的目标物体在第一时刻,采用第二曝光时长进行曝光拍摄得到第二样本图像;通过第三样本摄像头针对运动的目标物体在第一时刻,采用第二曝光时长进行曝光得到第三样本图像。
其中,第一样本摄像头和第二样本摄像头的规格不同,第一样本摄像头和第三样本摄像头的规格相同。第三样本图像为不存在banding且存在运动模糊的图像。第一曝光时长和第二曝光时长的相关定义,则可以参照前述实施例中的相关表述。
X2、基于第一样本图像确定第一样本亮度向量,基于第二样本图像确定第二样本亮度向量,并基于第三样本图像确定第三样本亮度向量。
具体的,基于样本图像(第一样本图像或第二样本图像或第三样本图像)确定相应的样本亮度向量(第一样本亮度向量或第二样本亮度向量或第三样本亮度向量)的实现方式,可以参照前述实施例中基于第一图像得到第一亮度向量和基于第二图像得到第二亮度向量的实现过程(即S703-S705)的相关表述,此处不再赘述。
不同组的样本数据及其对应的监督数据的获取方式类似,此处不再赘述。
S2、以至少一组样本数据作为训练数据,样本数据对应的监督数据作为监督信息,迭代训练初始向量生成模型,以得到训练后的向量生成模型。
其中,初始向量生成模型的框架可以采用任意可行的卷积神经网络(Convolutional Neural Networks, CNN)架构,或者其他任意可行的神经网络架构,本申请对此不做具体限制。
S2具体可以包括如下步骤:
1、初始化向量生成模型。
其中,初始化向量生成模型具体可以是依据任意可行的初始化方法初始化该初始向量生成模型中的权值参数和偏置参数等参数。常用的初始化方法有四种,分别是高斯初始化、Xavier初始化、MSRA初始化和He初始化。一般都是把偏置参数初始化为0,对权值参数进行随机初始化。具体的初始化过程本申请不再详细介绍。
2、将样本数据输入初始向量生成模型,得到预测亮度向量。
2步骤中的样本数据为至少一组样本数据中的任一组。
3、训练设备根据预测亮度向量和样本数据对应的监督数据,确定损失值。
其中,损失值具体可以是依据任意可行的损失函数得到的。例如均值平方差(meansquared error,MSE),MSE具体是计算预测值(预测亮度向量)和真实值(样本数据对应的监督数据)之间的欧氏距离。本申请对此不做具体限制。
4、根据损失值迭代更新初始向量生成模型,以得到向量生成模型。
该步骤具体可以是依据损失值更新初始行为模型中的权重参数和偏置参数等。在每次更新后,则重复执行2-4步骤,直至损失值小于预设阈值。每次重复执行时,输入至初始向量生成模型中的样本数据可以不同。将损失值小于预设阈值时的初始向量生成模型作为训练后的向量生成模型。预设阈值可以是依据经验得出的,可以认为在损失值小于预设阈值的情况下,该向量生成模型对行为模式的识别误差属于可接受的范围。
基于上述S1和S2对应的技术方案,可以通过监督学习的方式,训练得到向量生成模型。该向量生成模型具备利用存在banding且无运动模糊的图像的亮度向量,和不存在banding且存在运动模糊的图像的亮度向量,得到与存在banding且无运动模糊的图像的亮度向量表征的除光源亮度变化以外的亮度特征,相同的亮度向量的能力。为后续确定特征向量提供了数据支持。
需要说明的是,上述S1和S2对应的技术方案可以由手机本身实施,也可以由训练设备实施后将向量生成模型提供给手机使用,本申请对此不做具体限制。
S1407、手机将第一亮度向量与第三亮度向量进行逐元素相除,得到特征量。
本申请实施例中,S1407的具体实现可以参照前述实施例中S706的相关表述,此处不再赘述。两者区别在于,S1407在实现时,是用第一亮度向量中的元素除以第三亮度向量中相同位置的元素,而S706则是用第一亮度向量中的元素除以第二亮度向量中相同位置的元素。
示例性的,参照图15所示,基于对第一亮度向量V1和第三亮度向量V3进行逐元素相除,则可以得到特征量。
S1408、手机将第一图像与特征量进行逐列或逐行相除,得到目标图像。
本申请实施例中,S1408的具体实现可以参照前述实施例中S707的相关表述,此处不再赘述。
示例性的,参照图15所示,在手机得到特征量后,便可以利用特征量对第一图像进行逐列或逐行加权(即逐列或逐行相除),从而得到无运动模糊且无banding的目标图像。
S1409、手机保存或显示目标图像。
本申请实施例中,S1409的具体实现可以参照前述实施例中S708的相关表述,此处不再赘述。
基于S1401-S1409对应的技术方案,在手机拍摄图像时,可以同时获取长曝光图像和短曝光图像。由于长曝光图像的曝光时长(即第二曝光时长)较长且为光源亮度变化半周期的整数倍,所以该长曝光图像中不会存在banding,但会存在运动模糊。而短曝光图像的曝光时长(即第一曝光时长)较短且不为光源亮度变化半周期的整数倍,所以该长曝光图像中会存在banding,但不会存在运动模糊。基于此,手机可以利用长曝光图像和短曝光图像得出相应的反映短曝光图像的亮度变化的第一亮度向量和反映长曝光图像的亮度变化的第二亮度向量。之后,可以通过向量生成模型对第一亮度向量和第二亮度向量进行处理,得到与第一亮度向量表征的除光源亮度变化以外的亮度特征相同的第三亮度向量。之后,则可以基于第一亮度向量和第三亮度向量得到能够表征光源亮度变化的特征量。基于该特征量,则可以进一步对短曝光图像进行处理,从而得到无banding且无运动模糊的图像,保证了用户的拍摄体验。
此外,相比于前述S701-S708对应的技术方案,该技术方案中得到的第三亮度向量相比于第二亮度向量,和第一亮度向量的元素变化趋势更为相似,所以最终可以得到更为精准的特征量,也就能够得到呈现效果更好的目标图像,进一步提高了用户的拍摄体验。
可以理解的是,上述电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本发明实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
本申请实施例可以根据上述方法示例对上述电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本发明实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,参照图16所示,本申请实施例还提供了一种拍摄装置,该装置可以应用于电子设备中,且亮度周期性变化的照明设备为电子设备的拍摄场景提供光照。该装置可以包括获取模块1601和处理模块1602。
其中,获取模块1601,用于获取第一图像和第二图像;第一图像和第二图像的被摄主体相同,第一图像中存在图像条带banding,第二图像存在运动模糊。处理模块1602,则用于基于获取模块1601获取的第一图像和第二图像,确定特征量;特征量用于表征光源亮度变化。处理模块1602还用于基于特征量对第一图像中的banding进行去除,得到目标图像。
此外,获取模块1601和处理模块1602的配合,还可以使得拍摄装置完成前述实施例中提供的拍摄方法中的所有步骤。
关于上述实施例中的拍摄阿黄纸,其中各个模块执行操作的具体方式已经在前述实施例中的拍摄方法的实施例中进行了详细描述,此处不再具体阐述。其相关的有益效果也可参照前述拍摄方法的相关有益效果,此处不再赘述。
本申请实施例还提供一种电子设备,该电子设备包括:多个摄像头、显示屏、存储器和一个或多个处理器;摄像头、显示屏、存储器与处理器耦合;其中,存储器中存储有计算机程序代码,计算机程序代码包括计算机指令,当计算机指令被处理器执行时,使得电子设备执行如前述实施例提供的拍摄方法。该电子设备的具体结构可参照图4中所示的电子设备的结构。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行如前述实施例提供的拍摄方法。
本申请实施例还提供一种计算机程序产品,该计算机程序产品包含可执行指令,当该计算机程序产品在电子设备上运行时,使得电子设备执行如前述实施例提供的拍摄方法。
图17示意性地示出本发明实施例提供的计算机程序产品的概念性局部视图,在一个实施例中,计算机程序产品是使用信号承载介质1700来提供的。所述信号承载介质1700可以包括一个或多个程序指令,其当被一个或多个处理器运行时可以提供以上针对图4描述的功能或者部分功能。因此,例如,参考前述实施例中提供的邻区测量方法中的一个或多个特征或步骤可以由与信号承载介质1700相关联的一个或多个指令来承担。此外,图17中的程序指令也描述示例指令。
在一些示例中,信号承载介质1700可以包含计算机可读介质1701,诸如但不限于,硬盘驱动器、紧密盘(CD)、数字视频光盘(DVD)、数字磁带、存储器、只读存储记忆体(read-only memory,ROM)或随机存储记忆体(random access memory,RAM)等等。
在一些实施方式中,信号承载介质1700可以包含计算机可记录介质1702,诸如但不限于,存储器、读/写(R/W)CD、R/W DVD、等等。
在一些实施方式中,信号承载介质1700可以包含通信介质1703,诸如但不限于,数字和/或模拟通信介质(例如,光纤电缆、波导、有线通信链路、无线通信链路、等等)。
信号承载介质1700可以由无线形式的通信介质1703(例如,遵守IEEE 802.150标准或者其它传输协议的无线通信介质)来传达。一个或多个程序指令可以是,例如,计算机可执行指令或者逻辑实施指令。
在一些示例中,还可以包括用于接收外界数据并存储的写数据装置,其可以被配置为,响应于通过计算机可读介质1701、计算机可记录介质1702、和/或通信介质1703中的一个或多个程序指令,提供各种操作、功能、或者动作。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置/设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (11)

1.一种拍摄方法,其特征在于,应用于电子设备,电子设备的拍摄场景的光源包括亮度周期性变化的频闪光源,所述方法包括:
获取第一图像和第二图像;所述第一图像和第二图像的被摄主体相同,所述第一图像中存在图像条带banding且无运动模糊,所述第二图像存在运动模糊且无banding;
基于所述第一图像和所述第二图像,确定特征量;所述特征量用于表征光源亮度变化;
基于所述特征量对所述第一图像中的banding进行去除,得到目标图像。
2.根据权利要求1所述的方法,其特征在于,所述电子设备包括第一摄像头和第二摄像头;所述获取第一图像和第二图像,包括:
通过所述第一摄像头采用第一曝光时长进行行曝光以获取第一图像,并通过所述第二摄像头采用第二曝光时长进行行曝光以获取第一图像;
其中,所述第一曝光时长小于所述第二曝光时长,所述第一曝光时长不为光源亮度变化的半周期的整数倍,所述第二曝光时长为所述光源亮度变化的半周期的整数倍。
3.根据权利要求1所述的方法,其特征在于,所述获取第一图像和第二图像,包括:
响应于用户对目标应用的拍摄功能的开启操作,显示拍摄界面;
响应于用户在所述拍摄界面中实施的拍摄操作,获取所述第一图像和所述第二图像。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述基于所述第一图像和所述第二图像,确定特征量,包括:
确定所述第一图像的banding方向;
将所述第一图像沿所述banding方向进行逐像素相加,得到所述第一图像对应的第一向量,并将所述第二图像沿该所述banding方向进行逐像素相加,得到所述第二图像对应的第二向量;
将所述第一向量进行亮度转换得到第一亮度向量,并将所述第二向量进行亮度转换得到第二亮度向量;
基于所述第一亮度向量与所述第二亮度向量,确定所述特征量。
5.根据权利要求4所述的方法,其特征在于,所述将所述第一向量进行亮度转换得到第一亮度向量,并将所述第二向量进行亮度转换得到第二亮度向量,包括:
利用预设亮度转换公式,对所述第一向量中的元素进行亮度转换,以得到所述第一亮度向量;
利用预设亮度转换公式,对所述第一向量中的元素进行亮度转换,以得到所述第二亮度向量。
6.根据权利要求4所述的方法,其特征在于,所述基于所述第一亮度向量与所述第二亮度向量,确定所述特征量,包括:
将所述第一亮度向量与所述第二亮度向量逐元素相除,得到所述特征量。
7.根据权利要求4所述的方法,其特征在于,所述基于所述第一亮度向量与所述第二亮度向量,确定所述特征量,包括:
利用向量生成模型对所述第一亮度向量与所述第二亮度向量进行处理,得到第三亮度向量;所述向量生成模型具备利用存在banding且无运动模糊的图像的亮度向量,和不存在banding且存在运动模糊的图像的亮度向量,得到与存在banding且无运动模糊的图像的亮度向量表征的除光源亮度变化以外的亮度特征,相同的亮度向量;所述第三亮度向量表征的亮度变化特征与所述第一亮度向量表征的除光源亮度变化以外的亮度变化特征相同。
8.根据权利要求7所述的方法,其特征在于,利用向量生成模型对所述第一亮度向量与所述第二亮度向量进行处理,得到第三亮度向量之前,所述方法还包括:
获取至少一组样本数据和与所述样本数据对应的监督数据;所述样本数据包括第一样本亮度向量和第二样本亮度向量,所述监督数据包括第三样本量向量;所述第一样本亮度向量为存在banding且无运动模糊的第一样本图像的亮度向量,所述第二样本亮度向量为不存在banding且存在运动模糊的第二样本图像的亮度向量,所述第三样本亮度则为第三样本图像的亮度向量;所述第一样本图像、所述第二样本图像和所述第三样本图像的被摄主体相同;拍摄所述第一样本图像的摄像头与拍摄所述第二样本图像的摄像头规格不同,拍摄所述第一样本图像的摄像头与拍摄所述第三样本图像的摄像头规格相同;
以所述至少一组样本数据作为训练数据,所述样本数据对应的所述监督数据作为监督信息,迭代训练初始向量生成模型,以得到训练后的向量生成模型。
9.根据权利要求4所述的方法,其特征在于,所述基于所述特征量对所述第一图像中的banding进行去除,得到目标图像,包括:
在所述banding方向为图像中行方向的情况下,将所述第一图像与所述特征量进行逐列相除,得到所述目标图像;
在所述banding方向为图像中列方向的情况下,将所述第一图像与所述特征量进行逐行相除,得到所述目标图像。
10.一种电子设备,其特征在于,包括:多个摄像头、显示屏、存储器和一个或多个处理器;所述摄像头、所述显示屏、所述存储器与所述处理器耦合;其中,所述存储器中存储有计算机程序代码,所述计算机程序代码包括计算机指令,当所述计算机指令被所述处理器执行时,使得所述电子设备执行如权利要求1-9任一项所述的拍摄方法。
11.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得所述电子设备执行如权利要求1-9中任一项所述的拍摄方法。
CN202410137626.0A 2024-02-01 2024-02-01 一种拍摄方法、电子设备和存储介质 Pending CN117692786A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202410137626.0A CN117692786A (zh) 2024-02-01 2024-02-01 一种拍摄方法、电子设备和存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202410137626.0A CN117692786A (zh) 2024-02-01 2024-02-01 一种拍摄方法、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN117692786A true CN117692786A (zh) 2024-03-12

Family

ID=90126830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202410137626.0A Pending CN117692786A (zh) 2024-02-01 2024-02-01 一种拍摄方法、电子设备和存储介质

Country Status (1)

Country Link
CN (1) CN117692786A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108462837A (zh) * 2018-03-13 2018-08-28 中兴通讯股份有限公司 拍摄方法及装置
CN112738414A (zh) * 2021-04-06 2021-04-30 荣耀终端有限公司 一种拍照方法、电子设备及存储介质
CN113688820A (zh) * 2021-08-25 2021-11-23 维沃移动通信有限公司 频闪条带信息识别方法、装置和电子设备
CN116188279A (zh) * 2021-11-25 2023-05-30 华为技术有限公司 图像处理及模型训练方法及电子设备
CN116744120A (zh) * 2022-09-15 2023-09-12 荣耀终端有限公司 图像处理方法和电子设备

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108462837A (zh) * 2018-03-13 2018-08-28 中兴通讯股份有限公司 拍摄方法及装置
CN112738414A (zh) * 2021-04-06 2021-04-30 荣耀终端有限公司 一种拍照方法、电子设备及存储介质
CN113688820A (zh) * 2021-08-25 2021-11-23 维沃移动通信有限公司 频闪条带信息识别方法、装置和电子设备
CN116188279A (zh) * 2021-11-25 2023-05-30 华为技术有限公司 图像处理及模型训练方法及电子设备
CN116744120A (zh) * 2022-09-15 2023-09-12 荣耀终端有限公司 图像处理方法和电子设备

Similar Documents

Publication Publication Date Title
CN112532857B (zh) 一种延时摄影的拍摄方法及设备
CN111327814A (zh) 一种图像处理的方法及电子设备
CN111107292B (zh) 一种录像帧率的控制方法、移动终端及计算机存储介质
WO2022017261A1 (zh) 图像合成方法和电子设备
CN112333397B (zh) 图像处理方法和电子设备
CN113170037B (zh) 一种拍摄长曝光图像的方法和电子设备
CN114095666B (zh) 拍照方法、电子设备和计算机可读存储介质
CN114640783B (zh) 一种拍照方法及相关设备
CN113810603A (zh) 点光源图像检测方法和电子设备
CN115272138A (zh) 图像处理方法及其相关设备
CN115242983A (zh) 拍摄方法、电子设备、计算机程序产品及可读存储介质
CN116996762A (zh) 一种自动曝光方法、电子设备及计算机可读存储介质
WO2021180046A1 (zh) 图像留色方法及设备
CN113891008B (zh) 一种曝光强度调节方法及相关设备
CN115529419B (zh) 一种多人工光源下的拍摄方法及相关装置
CN117692786A (zh) 一种拍摄方法、电子设备和存储介质
CN115529409A (zh) 一种拍摄方法及相关装置
CN117201930B (zh) 一种拍照方法和电子设备
CN116887047B (zh) 一种对焦方法、电子设备和存储介质
CN116055872B (zh) 图像获取方法、电子设备和计算机可读存储介质
CN116723418B (zh) 拍照方法和相关装置
WO2024046162A1 (zh) 一种图片推荐方法及电子设备
CN116723410A (zh) 调节帧间隔的方法和装置
CN118042263A (zh) 一种图像采集方法、电子设备和存储介质
CN116744118A (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