CN118042274A - 一种拍照方法和设备 - Google Patents
一种拍照方法和设备 Download PDFInfo
- Publication number
- CN118042274A CN118042274A CN202410338244.4A CN202410338244A CN118042274A CN 118042274 A CN118042274 A CN 118042274A CN 202410338244 A CN202410338244 A CN 202410338244A CN 118042274 A CN118042274 A CN 118042274A
- Authority
- CN
- China
- Prior art keywords
- photographing
- frame acquisition
- preview
- time length
- animation
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 121
- 230000001960 triggered effect Effects 0.000 claims abstract description 4
- 230000008569 process Effects 0.000 claims description 51
- 230000006870 function Effects 0.000 claims description 43
- 230000000694 effects Effects 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 10
- 238000004590 computer program Methods 0.000 claims description 8
- 230000007613 environmental effect Effects 0.000 claims description 7
- 238000012937 correction Methods 0.000 claims description 4
- 230000000903 blocking effect Effects 0.000 abstract description 18
- 230000015556 catabolic process Effects 0.000 abstract description 3
- 238000006731 degradation reaction Methods 0.000 abstract description 3
- 239000010410 layer Substances 0.000 description 44
- 238000012545 processing Methods 0.000 description 16
- 230000003287 optical effect Effects 0.000 description 8
- 230000004044 response Effects 0.000 description 7
- 238000004891 communication Methods 0.000 description 6
- 230000001360 synchronised effect Effects 0.000 description 6
- 230000008859 change Effects 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000033001 locomotion Effects 0.000 description 5
- 238000012885 constant function Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 238000012886 linear function Methods 0.000 description 4
- 238000003825 pressing Methods 0.000 description 4
- 238000005286 illumination Methods 0.000 description 3
- 238000003384 imaging method Methods 0.000 description 3
- 229920001621 AMOLED Polymers 0.000 description 2
- 230000006399 behavior Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 230000002035 prolonged effect Effects 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 238000013459 approach Methods 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 239000004020 conductor Substances 0.000 description 1
- 239000012792 core layer Substances 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000001939 inductive effect Effects 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000004807 localization Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 239000002096 quantum dot Substances 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Studio Devices (AREA)
Abstract
本发明公开了一种拍照方法和设备,所述拍照方法包括:显示拍照的预览界面。检测到拍照触发操作,按照第一时长在预览界面的预览区域显示第一动画,第一时长是对拍照触发操作所触发的拍照操作的帧采集时长的预测值。通过上述实现方式,可提升不同拍照场景中帧采集时长与拍照动画时长的同步性,一方面可以减少因拍照动画时长过短导致的预览卡顿,另一方面可以减少因拍照动画时长过长导致的拍照性能下降。
Description
技术领域
本发明涉及终端技术领域,特别是一种拍照方法和设备。
背景技术
拍照场景中,当用户按下拍照按钮后,相机应用的预览界面会进行一次闪烁,称为“拍照动画”。“拍照动画”可用于提示设备当前正在执行拍照动作,以便用户直观感知到拍照的过程,优化拍照体验。
实际的拍照过程中,当“拍照动画”结束之后,有时会出现预览卡顿的现象,即,预览界面中的显示内容仍然定格在上一预览图像,而并未更新为当前的拍摄对象,影响用户体验。
发明内容
本发明的目的是提供一种拍照方法和设备,用以减少拍照动画结束之后预览卡顿的现象,提升拍照过程的流畅性。
第一方面,本发明提供了一种拍照方法,包括:显示拍照的预览界面,预览界面包括预览区域,预览区域用于显示预览视频;检测到拍照触发操作,按照第一时长在预览区域显示第一动画,第一时长是对拍照触发操作所触发的拍照操作的帧采集时长的预测值。
帧采集时长为用于生成目标图像的各个图像帧的总采集时长。目标图像为拍照场景中最终呈现给用户的图像,一次拍照请求生成的目标图像的数量为一张。对于不同的拍照场景,生成一张目标图像所需采集的图像帧的数量不同,可能是单帧,也可能是多帧,对应的,所需的帧采集时长也不同。在采集的图像帧的数量为多帧的情况下,可基于多帧融合技术,生成一张目标图像,可用于在环境亮度较低、拍摄对象运动等拍照场景中,提升成像效果。
上述实现方案中,通过预测拍照操作的帧采集时长,进而在检测到拍照触发操作后,按照预测的帧采集时长显示拍照动画。从而可以使不同拍照场景下拍照动画的显示时长与帧采集时长尽量同步,一方面可以减少因拍照动画时长短于帧采集时长而引起的预览卡顿,另一方面可以减少因拍照动画时长长于帧采集时长而导致的拍照性能下降。
如上所述的一种拍照方法,在第一方面的某些实现方式中,上述方法还包括:获取场景信息;根据场景信息,预测拍照操作所需的帧采集时长。
本实现方式中,可以通过采集与拍照场景相关的信息,确定与当前拍照场景匹配的帧采集时长。
如上所述的一种拍照方法,在第一方面的某些实现方式中,场景信息包括环境信息和/或设备信息;环境信息包括环境亮度,设备信息包括照相模式信息和/或当前调用的摄像头信息。
如上所述的一种拍照方法,在第一方面的某些实现方式中,根据场景信息,预测拍照操作所需的帧采集时长,包括:根据场景信息,确定拍照操作所对应的帧采集策略;根据各个预设帧采集策略与帧采集时长的映射关系,确定帧采集策略对应的帧采集时长。
本实现方式中,可以预先存储各个帧采集策略与帧采集时长之间的映射关系。那么,当确定当前场景的帧采集策略之后,可直接查询该映射关系以确定对应的帧采集时长,而无需在每次方法执行过程中均对帧采集时长进行计算,可缩短方案执行时长。
如上所述的一种拍照方法,在第一方面的某些实现方式中,上述方法还包括:根据各个预设帧采集策略,分别计算各个预设帧采集策略对应的帧采集时长;生成各个预设帧采集策略与帧采集时长的映射关系。
本实现方式中,可以预先根据帧采集策略计算各个预设场景的帧采集时长,并生成映射关系进行存储。通过预先预存该映射关系,有利于在本申请提供的拍照方法的执行过程中直接获取相关数据并使用,而无需在每次执行过程中重复计算。
如上所述的一种拍照方法,在第一方面的某些实现方式中,根据各个预设帧采集策略,分别计算各个预设帧采集策略对应的帧采集时长,包括:根据各个预设帧采集策略,分别计算各个预设帧采集策略对应的预估帧采集时长;利用修正参数对预估帧采集时长进行修正,得到各个预设帧采集策略对应的帧采集时长;其中,修正参数根据实际帧采集过程的时长误差确定。
本实现方式中,针对实际帧采集过程中可能会存在的时长误差,可对计算出来的帧采集时长进行修正,减小计算到的帧采集时长与实际帧采集时长的误差,提升帧采集时长取值的准确性,进而有利于提升拍照动画的显示过程与实际帧采集过程的同步性。
如上所述的一种拍照方法,在第一方面的某些实现方式中,帧采集策略包括待采集帧数、各帧曝光时长、各帧曝光间隔中至少一项或多项。
如上所述的一种拍照方法,在第一方面的某些实现方式中,按照第一时长在预览区域显示第一动画,包括:按照第一时长在预览区域显示提示动画,提示动画包括提示信息,提示信息用于提示距离帧采集结束的剩余时长。
本实现方式中,按照帧采集时长显示提示动画,可在帧采集过程中提示帧采集的剩余时长,提升用户在拍照等待过程中的用户体验。
如上所述的一种拍照方法,在第一方面的某些实现方式中,按照第一时长在预览区域显示第一动画,包括:按照第一时长在预览区域显示拍照动画。
本实现方式中,按照帧采集时长显示拍照动画,可以有效遮挡帧采集过程中的预览卡顿,提升拍照过程的流畅性。
如上所述的一种拍照方法,在第一方面的某些实现方式中,按照第一时长在预览区域显示拍照动画,包括:在预览区域中预览视频所在图层的上方图层显示黑色图像;依据第一预设函数控制黑色图像的透明度,第一预设函数用于描述第一时长内不同时刻黑色图像的透明度。
本实现方式中,可通过覆盖图层,并通过对所覆盖图层的透明度的控制,实现显示拍照动画。第一预设函数可以是下开口的抛物线函数、线性函数、常数函数等。
如上所述的一种拍照方法,在第一方面的某些实现方式中,按照第一时长在预览区域显示拍照动画,包括:依据第二预设函数控制预览区域中预览视频的模糊程度,第二预设函数用于描述第一时长内不同时刻预览视频的模糊程度。
本实现方式中,可通过对预览界面模糊程度的控制,实现显示拍照动画。第二预设函数可以是下开口的抛物线函数、线性函数、常数函数等。
如上所述的一种拍照方法,在第一方面的某些实现方式中,上述拍照方法还包括:检测到拍照触发操作后,按照帧采集时长播放拍照音效。
本实现方式中,可以使不同拍照场景的快门声的播放时长也能够与帧采集时长同步。
第二方面,本技术方案提供了一种电子设备,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述设备执行时,使得所述设备执行所述第一方面或者第一方面的任一可能的实现方式中的方法。
第三方面,本发明还提供了一种芯片,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行第一方面或第一方面的任一可能的实现方式中的方法。
可选的,作为一种实现方式,所述芯片还可以包括存储器,所述存储器中存储有指令,所述处理器用于执行所述存储器上存储的指令,当所述指令被执行时,所述处理器用于执行第一方面或第一方面的任一可能的实现方式中的方法。
第四方面,本发明还提供了一种计算机可读存储介质,所述计算机可读介质存储用于设备执行的程序代码,所述程序代码包括用于执行第一方面或者第一方面的任一可能的实现方式中的方法的指令。
附图说明
图1是本申请实施例提供的拍照方法的一个场景示意图;
图2是本申请实施例提供的拍照方法的一个示意性流程图;
图3是本申请实施例提供的拍照方法的另一个示意性流程图;
图4是本申请实施例提供的电子设备的一种结构示意图;
图5是本申请实施例提供的拍照方法的一个示意性流程图;
图6是本申请实施例提供的拍照方法的另一个场景示意图;
图7是本申请实施例提供的拍照方法的另一个场景示意图;
图8是本申请实施例提供的拍照方法的另一个场景示意图;
图9是本申请实施例提供的拍照方法的另一个示意性流程图;
图10是本申请实施例提供的拍照方法的另一个场景示意图;
图11是本申请实施例提供的电子设备的软件结构示意图;
图12是本申请实施例提供的拍照方法的另一个示意性流程图;
图13是本申请实施例提供的拍照方法的另一个示意性流程图。
具体实施方式
现如今,手机、平板电脑等电子设备中均配置有相机应用。如图1所示,用户可以通过触发电子设备主界面中的相机应用图标,启动相机应用,并进入相机应用的应用界面。相机应用的应用界面中可包含有拍照模式的预览界面,例如图1中的预览界面11所示,预览界面11中的预览区域111可用于显示当前拍摄对象的预览视频。如图1所示,预览界面11中还可包含有拍照按钮112,用户可通过拍照按钮112触发相机应用在拍照模式下执行拍照。
当用户按下拍照按钮112后,相机应用开始采集一帧或者多帧图像,用以生成目标图像,在一些相关技术中,该目标图像也称为“照片”或者“照片图像”等。在图像采集过程中,由于相机应用无法从摄像头获得当前拍摄对象的预览视频,所以预览区域111将始终显示用户按下拍照按钮112时所对应的一帧预览图像,这一现象可以称为“预览卡顿”。也就是说,此时,即使用户将摄像头对准其他拍摄对象,预览区域111的显示内容也不会同步更新,换言之,预览区域111也不会显示上述其他拍摄对象的预览视频,而是始终显示用户按下拍照按钮112时所对应的一帧预览图像。从按下拍照按钮112至图像采集完成的时间段可以称为帧采集时长,在上述帧采集时长内,预览区域111存在“预览卡顿”。
为了降低用户对上述“预览卡顿”的感知度,同时使用户能够直观感知到拍照过程,目前,当用户按下拍照按钮后,预览界面的预览区域会进行一次闪烁,本申请称之为“拍照动画”。
然而,实际的拍照过程中,当“拍照动画”结束之后,有时仍会出现预览卡顿的现象,即,“拍照动画”结束之后,预览区域中的显示内容仍然定格在用户按下拍照按钮时所对应的一帧预览图像,而并未更新为当前拍摄对象的预览视频,导致在用户视角下,拍照过程不流畅,从而影响用户体验。
经研究,目前拍照动画的显示时长是固定不变的,例如都是150ms,而相机应用在拍照时,帧采集时长随拍照场景的不同而变化,换言之,不同拍照场景下的帧采集时长可能不同,上述拍照动画的显示时长无法与拍照时的帧采集时长适配,是导致上述拍照过程不流畅的主要原因。
具体地,在某些拍照场景下,帧采集时长较长,当拍照动画结束时,帧采集流程仍在继续,相机应用无法获得当前拍摄对象的预览视频,从而仍存在预览卡顿,导致预览卡顿无法全部被拍照动画遮挡,用户仍感知到预览卡顿,拍照体验不够流畅。
例如图2所示,在一些低亮环境、后置摄像头的拍照场景下,相机应用在检测到拍照触发操作之前,相机应用的预览界面中显示当前拍摄对象的预览视频。当检测到拍照触发操作之后,存在以下的并行过程:第一,相机应用开始采集若干帧图像,以生成目标图像。对于该场景,帧采集时长较长,例如是300ms。第二,在采集图像的同时,出现预览卡顿,也即相机应用无法获得预览视频,且当帧采集完成之后,预览卡顿可以随之停止,相机应用可以获得当前拍摄对象的预览视频。第三,相机应用的预览区域显示拍照动画,拍照动画的显示时长为150ms。可见,此种场景中,拍照动画时长小于图像帧采集时长以及预览卡顿时长,当拍照动画结束后,图像帧采集仍未结束,因此预览仍未恢复,预览区域需要显示用户按下拍照按钮时所对应的一帧预览图像直到预览恢复,换言之,预览卡顿无法完全被拍照动画遮挡,从而使预览卡顿的现象被用户感知,影响用户体验。
此外,上述拍照动画的显示时长无法与拍照时的帧采集时长适配,还会在一些拍照场景下影响用户的拍照效率。具体地,对于帧采集时长较短的拍照场景,当帧采集已经结束时,拍照动画仍在显示。虽然拍照动画能够遮挡预览卡顿,但影响拍照效率,尤其是在连拍的场景中,拍照过程的用时将被明显延长,显著影响用户的拍照体验。
例如图2所示,在一些高亮环境、前置摄像头的拍照场景下,在检测到拍照触发操作之前,相机应用的预览区域中显示当前拍摄对象的预览视频。当检测到拍照触发操作之后,存在以下的并行过程:第一,相机应用开始采集若干帧图像,以生成目标图像。对于该场景,帧采集时长较短,例如是100ms。第二,在采集图像的同时,出现预览卡顿,也即相机应用无法获得预览视频,且当帧采集完成之后,预览卡顿可以随之停止,相机应用可以获得当前拍摄对象的预览视频。第三,相机应用的预览区域显示拍照动画,拍照动画的显示时长为150ms。可见,此种拍照场景中,拍照动画时长大于图像帧采集时长以及预览卡顿的时长,当图像帧采集以及预览卡顿结束后,拍照动画仍未结束,导致已恢复的预览视频被拍照动画遮挡,用户视角将误认为图像采集仍未完成。可见,当拍照动画时长大于图像采集时长时,从拍照按钮被按下至预览恢复的时延被拍照动画延长,影响拍照性能。
基于以上问题,提出本申请。
本申请实施例的实现方案中,可对每次拍照时的帧采集时长进行预测,在检测到拍照触发操作后,按照预测的帧采集时长显示拍照动画,从而在每次拍照时使得拍照动画的显示时长与本次拍照的帧采集时长相适应,减少上述帧采集时长较长的拍照场景下拍照流程不流畅的问题。
此外,由于在每次拍照时使得拍照动画的显示时长与本次拍照的帧采集时长相适应,还可以在帧采集时长较短的拍照场景下提高用户的拍照效率。
具体的,相机应用可以支持多种不同的拍照场景,不同的拍照场景配置有不同的帧采集策略,而不同的帧采集策略所需的帧采集时长不同。
例如,当环境光亮度较高时,可能只需要采集一帧图像,利用单帧图像即可生成最终呈现给用户的目标图像,且采集该单帧图像时可以设置较短的曝光时长。此时,图像采集过程用时较短,也即帧采集时长较短。
当环境光亮度较低时,为了提升成像质量,可能需要采集多帧图像,进而通过多帧融合技术,生成最终呈现给用户的目标图像,且需要对其中部分图像帧进行长曝光。此时,图像采集过程用时较长,也即帧采集时长较长。
基于上述说明,本申请实施例中,参考附图3,在相机应用启动之后,可在预览界面中显示当前拍摄对象的预览视频。此时,预览视频随拍摄对象的变化而实时变化。同时,电子设备可根据当前场景信息,预测当前拍照场景下执行拍照操作所需的帧采集时长。响应于用户按下拍照按钮,存在以下3个过程:第一,采集拍照所需的若干帧图像。第二,按照预测的帧采集时长,在预览区域显示拍照动画。第三,在采集图像的同时,出现预览卡顿,也即相机应用无法获得预览视频,且当图像采集完成之后,预览卡顿可以随之停止,相机应用可以获得当前拍摄对象的预览视频。
本申请实施例中,由于拍照动画的显示时长是基于预测出的帧采集时长设置的,因此,可使得拍照动画的显示时长与拍照的帧采集时长尽量接近,一方面可以减少因拍照动画时长过短导致的预览卡顿,另一方面可以减少因拍照动画时长过长导致的拍照性能下降,从而实现提升拍照过程的流畅性以及提升拍照效率的目的。
可理解,本申请实施例可以适用于在拍照模式下拍照时显示拍照动画,也可以适用于相机应用提供的其他照相模式,例如人像模式、夜景模式等,实现上述照相模式下拍照时拍照动画的显示。
图4示出了本申请实施例提供的电子设备100的结构示意图。
电子设备100可以包括处理器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,指纹传感器180H,触摸传感器180K,环境光传感器180L,距离传感器180F。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(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)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过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将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数,包括前置摄像头以及后置摄像头。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如解锁功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如指纹数据、锁屏界面数据等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现访问相机应用的应用锁、指纹拍照等。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。例如,触摸传感器180K可检测作用于主界面中相机应用图标的触摸操作,进而将触摸操作传递给应用处理器,以使显示屏194中显示相机应用界面。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,在拍照场景中,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,在拍摄场景中,电子设备100可以利用距离传感器180F测距以实现快速对焦。
环境光传感器180L用于感知环境光亮度。当相机应用启动后,环境光传感器180L可用于检测环境光亮度,以用于相机应用决策对应的拍照场景。环境光传感器180L也可用于拍照时自动调节白平衡。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。示例性的,当相机应用启动后,电子设备100可以通过接收对音量键的按键输入,触发执行拍照操作。
本申请以下实施例将以具有图4所示结构的电子设备100为例,对本申请实施例提供的拍照方法进行具体阐述。
图5是本申请实施例提供的拍照方法的一个示意性流程图,如图5所示,本申请实施例提供的拍照方法包括:
S101,检测到相机应用启动后,获取当前场景信息。
如图5所示,从相机应用启动到接收到拍照请求,再到帧采集流程结束,期间的各个关键节点包括:相机应用启动、手机按下(onClickDown)、手指抬起(onClickUp)、开始帧采集(doCapture)、帧采集完成(onImageAvailable)。
其中,参考图1,相机应用启动可以是,在检测到用户对电子设备主界面中相机应用图标的触发操作后启动。当相机应用启动后,可显示相机应用的预览界面11,相机应用的预览界面11中可包含有拍照按钮112以及预览区域111,预览区域111可用于显示预览视频。onClickDown用于表示用户手指按压拍照按钮112,onClickUp用于表示用户手指离开拍照按钮112。onClickDown至onClickUp之间的时延表示触发快门的时长。doCapture用于表示帧采集的起始时刻,onImageAvailable用于表示帧采集的结束时刻,此时图像数据采集完成。doCaptureon与ImageAvailable之间的时延表示帧采集时长。对于不同的拍照场景,doCaptureon与ImageAvailable之间的时延不同。
当相机应用启动之后,电子设备可获取当前场景信息。
一种可能的实现方式中,场景信息可包括环境信息,环境信息例如可以包括环境亮度、和/或环境中拍摄对象的运动状态等。此种实现方式中,当检测到相机应用启动之后,电子设备可控制环境光传感器检测当前环境的亮度,和/或,可根据采集到的预览视频,确定环境中拍摄对象的运动状态。
另一种可能的实现方式中,场景信息可包括设备信息,设备信息例如可以包括照相模式信息,和/或当前调用的摄像头信息等。其中,照相模式例如可以包括但不限于拍照模式、人像模式、夜景模式等。当前调用的摄像头信息可以是前置摄像头或者后置摄像头。参考图6所示,相机应用的预览界面中可包括夜景模式、人像模式、拍照模式等多种模式设置按钮501。相机应用可响应于对其中任意一种模式设置按钮501的触发操作,切换至对应的照相模式。同时,相机应用的预览界面中还可包括摄像头切换按钮502,响应于对摄像切换按钮502的触发操作,相机应用可切换当前调用的摄像头,如前置摄像头、后置摄像头。此种实现方式中,当相机应用启动之后,电子设备可获取当前照相模式的信息,和/或当前调用的摄像头信息。
或者,在另外的实现方式中,场景信息还可以同时包括上述环境信息以及设备信息。
S102,根据场景信息,预测拍照操作所需的帧采集时长。
不同的拍照场景对应不同的帧采集策略,帧采集策略例如可以包括待采集的帧数、各帧图像的曝光时长、各帧曝光间隔等任意一项或多项的组合。
具体来说,参考图5所示的各个关键节点,一次onClickDown以及onClickUp可用于表征用户作用于拍照按钮的一次拍照触发操作,此时,相机应用接收到一次拍照请求。对于一次拍照请求,最终生成、并呈现给用户的目标图像的数量为仅一张,但是,实际采集的图像数据可能不止一帧,且实际采集的图像的帧数与拍照场景相关。也就是说,响应于接收到的一次拍照请求,在拍照场景1中,可能仅需要采集一帧图像数据,并经过图像处理生成一张目标图像;在拍照场景2中,也可能需要连续采集多帧图像数据,并对多帧图像数据进行图像处理,生成一张目标图像。
基于上述说明可以理解,基于拍照场景的不同,所采用的帧采集策略不同,所需的帧采集时长不同。待采集的帧数越多、各帧图像的曝光时长越长、各帧曝光间隔越大,则所需的帧采集时长越长。示例性的,对于高亮环境后置摄像头场景,待采集的帧数较少,且帧图像的曝光时长较短,对应的帧采集时长例如可以是150ms;低亮环境后置摄像头场景,待采集的帧数较多,且帧图像的曝光时长较长,对应的帧采集时长例如可以是300ms;对于高亮环境前置摄像头场景,待采集的帧数更少,且帧图像的曝光时长更短,对应的帧采集时长例如可以是100ms。
应当理解,上述各个拍照场景以及对应的帧采集时长仅作为一种示例性的说明,在另外的实现方式中,区分拍照场景时所参考的因素可以不只是环境亮度以及所调用的摄像头,以及,在区分不同拍照场景时对各个因素取值的划分粒度可以更小,所划分的拍照场景可以更多。
本申请实施例中,一种可能的实现方式中,电子设备中可预先存储各个不同的帧采集策略与帧采集时长的映射关系。帧采集时长可根据帧采集策略计算得到。那么,当基于上述步骤S101获取到当前场景信息之后,首先,可基于场景信息确定拍照操作对应的帧采集策略。具体的,不同拍照场景对应有不同的帧采集策略。获取到当前场景信息之后,可基于场景信息从各个帧采集策略中,匹配出与当前拍照场景对应的帧采集策略。进而,可基于上述映射关系,查询当前确定出的帧采集策略所需的帧采集时长。
另一种可能的实现方式中,当基于上述步骤S101获取到当前拍照场景的场景信息后,首先,可基于场景信息确定拍照操作对应的帧采集策略。进而,可根据帧采集策略,计算所需的帧采集时长。
下面对帧采集时长的计算方法进行说明。
一种可能的实现方式中,可基于帧采集策略,根据公式T=T1+T2,计算得到帧采集策略对应的帧采集时长T。其中,T1表示各个待采集的帧的曝光时长之和、T2表示各个待采集的帧的曝光间隔之和。
另一种可能的实现方式中,考虑到实际帧采集过程中可能会存在时长误差,实际的帧采集时长与基于帧采集策略计算得到的帧采集时长可能并不一致。而拍照动画的显示时长应当尽可能与实际帧采集时长一致。因此,此种实现方式中,可根据公式T=T1+T2+Te,计算帧采集时长T。其中,T1表示各个待采集的帧的曝光时长之和,T2表示各个待采集的帧的曝光间隔之和,Te表示当前拍照场景下帧采集过程所对应的误差常数,不同的拍照场景例如可配置不同的误差常数。Te的取值可根据对应拍照场景下帧采集过程的时长误差确定,例如可以为多次帧采集过程的时长误差的均值。通过此种实现方式,可以提升帧采集时长取值的准确性,有利于提升拍照动画的显示过程与实际帧采集过程的同步性。
S103,检测到拍照触发操作后,按照帧采集时长在预览区域中显示拍照动画。
参考图1,预览界面中可包含有拍照按钮,检测到拍照触发操作可以包括,检测到对拍照按钮的点击操作,对应如图5所示的onClickDown以及onClickUp节点。
检测到拍照触发操作之后,参考图5,在onClickUp至doCapture之间的时间段内,相机应用可执行3A设置,包括自动对焦(Automatic Focus,AF)、自动白平衡(Auto WhiteBalance,AWB)以及自动曝光(Auto Exposure,AE)设置。当设置完成之后,进入doCapture节点,按照预设的帧采集策略启动帧采集流程,与此同时,按照与当前帧采集策略匹配的帧采集时长,在预览区域中显示拍照动画。
一种可能的实现方式中,可以在预览区域中预览视频所在图层的上方显示黑色图像,并通过控制黑色图像的透明度,实现拍照动画。
此种实现方式中,可预先设置不同帧采集策略所对应的透明度控制函数,透明度控制函数可用于描述帧采集时长内不同时刻黑色图像的透明度。在预览区域中显示拍照动画具体可以是,在预览区域中预览视频所在图层的上方图层添加一个黑色图像。进而,确定当前帧采集策略所对应的透明度控制函数,并依据确定好的透明度控制函数,对帧采集时长内各个时刻黑色图像的透明度进行控制。示例性的,透明度控制函数例如可以是上开口的抛物线函数。那么,在帧采集时长内,黑色图像的透明度由最高值逐渐变化至最低值,进而由最低值逐渐变化至最高值。其中,最低值例如可以是0,最高值例如可以是100%。基于此种实现方式,用户视角将观察到预览视频逐渐被遮盖又逐渐显现,呈现出“闪黑动画”的效果。当“闪黑动画”结束后,帧采集过程也同时结束,预览区域预览恢复。或者,透明度控制函数也可以是包括常数函数在内的任意一种线性函数,本申请对此不做限制。
另一种可能的实现方式中,显示拍照动画可以通过对预览区域中预览视频的模糊处理实现。
此种实现方式中,可预先设置不同帧采集策略对应的模糊程度控制函数,模糊程度控制函数可用于描述帧采集时长内不同时刻预览视频的模糊程度。在预览区域中显示拍照动画具体可以是,按照模糊程度控制函数,对帧采集时长内各个时刻预览视频的模糊程度进行控制。示例性的,模糊程度控制函数例如可以是下开口的抛物线函数。那么,在帧采集时长内,预览视频的模糊程度由最低值逐渐变化至最高值,进而由最高值逐渐变化至最低值。其中,最低值例如可以是0,最高值例如可以是100%。或者,另外的实现方式中,模糊程度控制函数例如也可以是包括常数函数在内的任意一种线性函数,本申请对此不做限制。基于此种实现方式,对于用户视角,在帧采集时长内,预览区域进入模糊状态。当模糊状态结束后,帧采集同时结束,预览区域预览恢复。
通过上述技术方案,可基于具体的拍照场景适应性调整拍照动画的显示时长,使不同拍照场景下拍照动画的显示时长均能够与帧采集时长尽量同步,从而提升拍照过程的流畅性,改善用户的拍照体验。
本申请另一实施例中,对上述拍照动画显示时长的确定方法作进一步说明。
在实际应用场景中,参考图5,从相机应用启动节点至onClickDown节点之间,拍照场景的场景信息如环境信息、设备信息,并非始终不变。在一个示例中,用户启动相机应用,此时,相机应用默认处于拍照模式并调用后置摄像头,进而,用户通过模式设置按钮,将拍照模式切换为人像模式,并按压拍照按钮触发拍照。显然,从相机应用启动节点至onClickDown节点之间,照相模式发生了一次变化,由拍照模式切换为人像模式。或者,在另一个示例中,用户启动相机应用后,在不改变照相模式的情况下,用户将后置摄像头切换为前置摄像头并按压拍照按钮触发拍照。显然,从相机应用启动节点至onClickDown节点之间,虽然照相模式未改变,但是所调用的摄像头改变。或者,用户在室内有照明的场景中启动相机应用,进而,在不改变照相模式的情况下,关闭照明设备后按压拍照按钮触发拍照。显然,从相机应用启动节点至onClickDown节点之间,环境亮度发生了一次变化,由高亮状态切换为低亮状态。
可见,在相机应用启动后,仅依靠一次场景信息检测可能无法准确表征用户按下拍照按钮时的拍照场景,进而会影响设置的拍照动画时长的可靠性。
本申请实施例中,在启动相机应用后,可检测当前拍照场景的场景信息,包括环境信息、设备信息。进而,可确定出与场景信息匹配的帧采集时长。进一步的,在检测到拍照触发操作之前,当场景信息发生变化后,还可根据变化后的场景信息,重新确定帧采集时长。
具体的,本申请实施例中,在启动相机应用后,可检测设备信息以及当前环境信息,并根据设备信息以及环境信息,确定出与当前拍照场景匹配的帧采集时长。进而,在检测到用户的拍照触发操作之前,执行下述两方面的方法流程:
一方面,可检测用户对照相模式以及对所调用摄像头的切换操作。当检测到对照相模式的切换操作,或者检测到对所调用摄像头的切换操作后,可根据切换后的照相模式以及摄像头的信息重新确定当前拍照场景的帧采集时长。
另一方面,在任意一种照相模式下,可按照设定的时间间隔,周期性对环境信息进行检测,并确定再次检测到的环境信息与先前检测到的环境信息的差值是否超过设定阈值。在差值不超过设定预设的情况下,说明拍照环境未发生较大变化,则不做处理。在差值超过设定预设的情况下,说明拍照环境发生了较大变化,此时,可根据变化后的环境信息,重新确定当前拍照场景的帧采集时长。
本申请实施例中,在确定了新的帧采集时长的情况下,相应的,还可将先前一次确定出的帧采集时长删除。进而,当检测到拍照触发操作之后,可获取最新一次确定出的帧采集时长,并作为拍照动画的时长。
下面结合附图进行举例说明。
示例性的,参考图7,在t1时间点,用户启动相机应用,默认处于拍照模式并调用后置摄像头;在t2时间点,用户将拍照模式切换为人像模式;在t3时间点,用户按压拍照按钮启动拍照操作。
与用户行为相对应的,在t1时间点,电子设备响应于相机应用启动,检测场景信息,包括环境信息以及设备信息,并确定之匹配的帧采集时长L1。确定了帧采集时长L1之后,在t3时间点之前,电子设备可检测对设备信息的设置操作。由于在t2时间点之前未检测到用户对设备信息的设置操作,因此在t2时间点之前,不做处理。在t2时间点,用户切换了照相模式,那么,响应于用户对照相模式的设置操作,电子设备可根据变化后的照相模式的信息,重新确定帧采集时长L2。以及,电子设备还可删除帧采集时长L1。在t3时间点,响应于拍照触发操作,电子设备可基于重新确定出的帧采集时长L2,显示拍照动画。
示例性的,参考图8,在t1时间点,用户在室内有照明的场景中启动相机应用;在t2时间点,用户关闭室内照明设备;在t3时间点,用户按压拍照按钮启动拍照操作。
与用户行为相对应的,在t1时间点,电子设备响应于相机应用启动,检测当前场景信息,包括环境信息以及设备信息,并确定之匹配的帧采集时长L1。确定了帧采集时长L1之后,在t3时间点之前,电子设备可周期性检测环境信息。由于在t2时间点之前拍照环境并未改变,因此在t2时间点之前,各次检测到的环境信息的取值与首次检测到的环境信息的差值均小于设定阈值。此时不做处理。在t2时间点,拍照环境改变,那么,再次检测到的环境信息与首次检测到的环境信息的差值大于设定阈值,此时,电子设备可根据变化后的环境信息,重新确定帧采集时长为L2。以及,电子设备还可删除帧采集时长L1。在t3时间点,响应于拍照触发操作,电子设备可基于重新确定出的帧采集时长L2,显示拍照动画。
本申请另一实施例中,还可在检测到拍照触发操作之后,再检测当前拍照场景的场景信息,并基于场景信息确定当前场景的帧采集时长。
具体的,参考图9,可在检测到拍照触发操作之后,即在onClickUp节点后,利用onClickUp节点以及doCapture节点之间的时间间隔,获取当前拍照场景的场景信息,并确定与场景信息对应的帧采集时长。进而,在doCapture节点之后,按照确定好的帧采集时长,在预览区域中显示拍照动画。
本申请实施例中,在检测到用户触发拍照操作后再对场景信息进行检测,可以在无需进行多次检测的情况下,提升拍照场景检测结果的准确度,同时有利于节约功耗。
进一步的,在拍照场景中,在系统未开启静音模式的情况下,当用户触发拍照按钮后,电子设备会播放拍照音效,即“咔嚓”的快门声。
针对拍照音效,在上述实施例的基础上,当检测到拍照触发操作之后,在确定系统未开启静音模式的情况下,还可以按照确定好的帧采集时长播放拍照音效。从而,可以使不同拍照场景下拍照音效的播放时长也能够与帧采集时长同步,进一步提升用户的拍照体验。
示例性的,电子设备中例如可以预先存储拍照音效,以及不同拍照场景对应的帧采集时长下,拍照音效的播放速度。当检测到拍照触发操作后,此时,电子设备可按照确定好的帧采集时长,确定对应的播放速度,进而,在预览区域内显示拍照动画的同时,可按照确定好的播放速度,播放拍照音效。从而可使得拍照动画的显示时长以及拍照音效的播放时长均能够与帧采集时长同步,提升拍照流程的流畅性。
本申请另一实施例中,针对特定拍照场景,如后置摄像头拍摄夜景的场景,对应的帧采集时长较长,此时如果按照帧采集时长显示拍照动画,则拍照动画的显示时长较长,在用户视角将表现为拍照动画卡顿,影响用户体验。因此,对于此种拍照场景,如图10所示,在检测到拍照触发操作之后,可根据确定好的帧采集时长,在预览区域中显示提示动画。提示动画例如可以包括倒计时提示信息,用于提示距离帧采集结束的剩余时长。或者,提示动画还可以包括请求用户持稳设备的提示信息。
进一步的,在帧采集结束、提示动画停止显示之后,预览恢复,此时,还可在预览区域中显示上述拍照动画。此时,拍照动画的显示时长可以是一预设的固定值,而与具体的帧采集时长无关,如100ms。此时,拍照动画可仅用于用户感知到拍照过程。
在帧采集时长较长的拍照场景中,通过上述实现方式,一方面,可以通过倒计时提示信息提升用户等待过程中的用户体验,另一方面,通过持稳设备的提示信息,有助于提升最终的成像质量。并且,通过预测的帧采集时长来显示倒计时提示信息,可以提升预览界面中显示的倒计时提示信息与实际帧采集过程的匹配程度。
本申请实施例提供的电子设备的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备的软件结构。
图11是本申请实施例提供的电子设备的软件结构示意图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,Android系统从上至下分别包括应用程序层,应用程序框架层,硬件抽象层,以及内核层。
应用程序层可以包括一系列应用程序包。
如图11所示,应用程序包可以包括相机,图库,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图11所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,资源管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括相机应用拍摄的图像,视频,内核层传输的数据等。
视图系统包括可视控件,例如显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括相机应用图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
资源管理器为应用程序提供各种资源,比如图片,视频文件,本地化字符串,图标,布局文件等等。
硬件抽象层可包括决策模块。决策模块可用于确定拍照场景的类型以及对应的帧采集时长。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,传感器驱动。
下面对本申请实施例提供的拍照方法执行过程中,电子设备软件以及硬件的工作流程进行说明。
当触摸传感器180K接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。如图11所示,应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。例如可以是应用程序框架层的内容提供器从内核层的传感器驱动获取原始输入事件。该触摸操作例如是触摸单击操作,该单击操作所对应的控件为相机应用图标的控件。相机应用调用应用框架层的接口,启动相机应用。
相机应用启动之后,将与拍照场景相关的场景信息发送给位于硬件抽象层的决策模块。具体的,如图12所示,相机应用将照相模式的信息发送给决策模块;以及,相机模块调用内核层启动传感器驱动,通过环境光传感器180L检测环境光亮度,并将环境光亮度发送给决策模块;以及,相机应用调用内核层摄像头驱动,获取当前调用的摄像头的信息,并将当前调用的摄像头的信息发送给决策模块。
硬件抽象层的决策模块可基于上述获取到的各个场景信息,确定出与当前场景匹配的帧采集时长。具体实现方式可参考前述实施例,不做赘述。
进一步的,硬件抽象层的决策模块可将帧采集时长的信息发送给相机应用。
相机应用启动之后,还可控制在预览区域中显示当前预览视频。
具体的,如图13所示,相机应用启动后,可控制位于内核层的摄像头驱动采集当前拍摄对象对应的预览视频,并将从摄像头驱动接收到的预览视频发送给位于内核层的显示驱动,由显示驱动实时将当前的预览视频显示在相机应用的预览区域。
在显示预览视频中的一帧预览图像P1时,如果触摸传感器180K接收到针对相机应用界面中拍照按钮的触摸操作,相应的硬件中断被发给内核层,并在内核层加工成原始输入事件存储。相机应用从内核层获取原始输入事件,识别该输入事件,确定接收到拍照请求。
检测到拍照请求之后,如图13所示,相机应用通过调用内核层启动摄像头驱动,通过摄像头193采集一帧或者多帧图像帧,采集到的图像帧可用于生成本次拍照请求所对应的目标图像,且一次拍照请求对应的目标图像的数量为一张。在摄像头193采集图像帧的过程中,预览区域将出现预览卡顿,即,相机应用预览界面的显示内容将不再根据拍摄对象的变化而变化,显示驱动将始终控制预览界面显示接收到拍照请求时所显示的预览图像P1。
在控制摄像头驱动采集图像帧的同时,相机应用还可将上述获取到的帧采集时长的信息发送给显示驱动,由显示驱动根据帧采集时长,控制相机应用的预览区域按照帧采集时长显示拍照动画。具体的,显示驱动可以在预览区域中预览视频所在图层的上方图层显示黑色图像,进而,根据接收到的帧采集时长,确定与之对应的透明度控制函数,利用透明度控制函数,对帧采集时长内各个时刻黑色图像的透明度进行控制。或者,显示驱动可以根据接收到的帧采集时长,确定与之对应的模糊程度控制函数,并利用模糊程度控制函数,对帧采集时长内各个时刻预览视频的模糊程度进行控制。
那么,可使得帧采集过程中预览区域所显示的拍照动画与预览卡顿尽量同步,在有效遮挡预览卡顿、提升拍照过程的流畅性的同时,提升拍照性能。
进一步的,图像帧采集完成之后,相机应用可重新控制摄像头驱动采集当前拍摄对象对应的预览视频,并将从摄像头驱动接收到的预览视频发送给位于内核层的显示驱动进行预览显示。此时,预览卡顿结束,预览恢复。
通过上述实现方案,可在电子设备的各种类型的拍照场景中,使帧采集时长与拍照动画时长匹配,提升拍照过程的流畅性。
应理解,这里的电子设备以功能单元的形式体现。这里的术语“单元”、“模块”可以通过软件和/或硬件形式实现,对此不作具体限定。例如,“单元”、“模块”可以是实现上述功能的软件程序、硬件电路或二者结合。所述硬件电路可能包括应用特有集成电路(application specific integrated circuit,ASIC)、电子电路、用于执行一个或多个软件或固件程序的处理器(例如共享处理器、专有处理器或组处理器等)和存储器、合并逻辑电路和/或其它支持所描述的功能的合适组件。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以结合实施例对每个特定的应用来使用不同方法来实现所描述的功能。
本实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。例如,可以对应各个功能划分各个功能模块,也可以将两个或者两个以上的功能集成在一个处理模块中。上述集成的模块可以采用硬件的形式实现。
本申请实施例还提供了一种电子设备,所述设备包括存储介质和中央处理器,所述存储介质可以是非易失性存储介质,所述存储介质中存储有计算机可执行程序,所述中央处理器与所述非易失性存储介质连接,并执行所述计算机可执行程序以实现上述拍照方法。
本申请实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当该指令在计算机上运行时,使得计算机执行本申请实施例拍照方法的各个步骤。
本申请实施例还提供了一种包含指令的计算机程序产品,当该计算机程序产品在计算机或任一至少一种处理器上运行时,使得计算机执行本申请实施例拍照方法的各个步骤。
本申请实施例还提供一种芯片,包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,以执行本申请提供的拍照方法执行的相应操作和/或流程。
可选地,该芯片还包括存储器,该存储器与该处理器通过电路或电线连接,处理器用于读取并执行该存储器中的计算机程序。进一步可选地,该芯片还包括通信接口,处理器与该通信接口连接。通信接口用于接收需要处理的数据和/或信息,处理器从该通信接口获取该数据和/或信息,并对该数据和/或信息进行处理。该通信接口可以是输入输出接口。
存储器可以是只读存储器(read-only memory,ROM)、可存储静态信息和指令的其它类型的静态存储设备、随机存取存储器(random access memory,RAM)或可存储信息和指令的其它类型的动态存储设备,也可以是电可擦可编程只读存储器(electricallyerasable programmable read-only memory,EEPROM)、只读光盘(compact disc read-only memory,CD-ROM)或其他光盘存储、光碟存储(包括压缩光碟、激光碟、光碟、数字通用光碟、蓝光光碟等)、磁盘存储介质或者其它磁存储设备,或者还可以是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质等。
本申请实施例中,“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示单独存在A、同时存在A和B、单独存在B的情况。其中A,B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项”及其类似表达,是指的这些项中的任意组合,包括单项或复数项的任意组合。例如,a,b和c中的至少一项可以表示:a, b, c, a-b, a-c, b-c,或a-b-c,其中a, b, c可以是单个,也可以是多个。
本领域普通技术人员可以意识到,本文中公开的实施例中描述的各单元及算法步骤,能够以电子硬件、计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,任一功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本申请的具体实施方式,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。本申请的保护范围应以所述权利要求的保护范围为准。
Claims (15)
1.一种拍照方法,其特征在于,包括:
显示拍照的预览界面,所述预览界面包括预览区域,所述预览区域用于显示预览视频;
检测到拍照触发操作,按照第一时长在所述预览区域显示第一动画,所述第一时长是对所述拍照触发操作所触发的拍照操作的帧采集时长的预测值。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取场景信息;
根据所述场景信息,预测拍照操作所需的帧采集时长。
3.根据权利要求2所述的方法,其特征在于,所述场景信息包括环境信息和/或设备信息;所述环境信息包括环境亮度,所述设备信息包括照相模式信息和/或当前调用的摄像头信息。
4.根据权利要求3所述的方法,其特征在于,根据所述场景信息,预测拍照操作所需的帧采集时长,包括:
根据所述场景信息,确定拍照操作所对应的帧采集策略;
根据各个预设帧采集策略与帧采集时长的映射关系,确定所述帧采集策略对应的帧采集时长。
5.根据权利要求4所述的方法,其特征在于,所述方法还包括:
根据各个预设帧采集策略,分别计算所述各个预设帧采集策略对应的帧采集时长;
生成所述各个预设帧采集策略与所述帧采集时长的映射关系。
6.根据权利要求5所述的方法,其特征在于,根据各个预设帧采集策略,分别计算所述各个预设帧采集策略对应的帧采集时长,包括:
根据各个预设帧采集策略,分别计算所述各个预设帧采集策略对应的预估帧采集时长;
利用修正参数对所述预估帧采集时长进行修正,得到所述各个预设帧采集策略对应的帧采集时长;
其中,所述修正参数根据实际帧采集过程的时长误差确定。
7.根据权利要求4-6任意一项所述的方法,其特征在于,所述帧采集策略包括待采集帧数、各帧曝光时长、各帧曝光间隔中至少一项或多项。
8.根据权利要求1所述的方法,其特征在于,按照第一时长在所述预览区域显示第一动画,包括:
按照第一时长在所述预览区域显示提示动画,所述提示动画包括提示信息,所述提示信息用于提示距离帧采集结束的剩余时长。
9.根据权利要求1所述的方法,其特征在于,按照第一时长在所述预览区域显示第一动画,包括:
按照第一时长在所述预览区域显示拍照动画。
10.根据权利要求9所述的方法,其特征在于,按照第一时长在所述预览区域显示拍照动画,包括:
在所述预览区域中所述预览视频所在图层的上方图层显示黑色图像;
依据第一预设函数控制所述黑色图像的透明度,所述第一预设函数用于描述所述第一时长内不同时刻所述黑色图像的透明度。
11.根据权利要求9所述的方法,其特征在于,按照第一时长在所述预览区域显示拍照动画,包括:
依据第二预设函数控制所述预览区域中预览视频的模糊程度,所述第二预设函数用于描述所述第一时长内不同时刻所述预览视频的模糊程度。
12.根据权利要求1所述的方法,其特征在于,所述检测到拍照触发操作后,所述方法还包括:按照所述第一时长播放拍照音效。
13.一种电子设备,其特征在于,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中所述一个或多个计算机程序被存储在所述存储器中,所述一个或多个计算机程序包括指令,当所述指令被所述设备执行时,使得所述设备执行如权利要求1-12中任一项所述的方法。
14.一种芯片,其特征在于,所述芯片包括处理器与数据接口,所述处理器通过所述数据接口读取存储器上存储的指令,执行如上述权利要求1-12中任一项所述的方法。
15.一种存储介质,其特征在于,所述存储介质中存储有程序指令,当其在电子设备上运行时,使得所述电子设备执行如权利要求1-12中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410338244.4A CN118042274A (zh) | 2024-03-25 | 2024-03-25 | 一种拍照方法和设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410338244.4A CN118042274A (zh) | 2024-03-25 | 2024-03-25 | 一种拍照方法和设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118042274A true CN118042274A (zh) | 2024-05-14 |
Family
ID=90987848
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410338244.4A Pending CN118042274A (zh) | 2024-03-25 | 2024-03-25 | 一种拍照方法和设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN118042274A (zh) |
-
2024
- 2024-03-25 CN CN202410338244.4A patent/CN118042274A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3633975B1 (en) | Photographic method, photographic apparatus, and mobile terminal | |
EP3599760B1 (en) | Image processing method and apparatus | |
CN113824873B (zh) | 一种图像处理的方法及相关电子设备 | |
CN112135046A (zh) | 视频拍摄方法、视频拍摄装置及电子设备 | |
CN115706850B (zh) | 图像拍摄的方法、设备和存储介质 | |
CN116055897B (zh) | 拍照方法及其相关设备 | |
EP3062513A1 (en) | Video apparatus and photography method thereof | |
CN111385456A (zh) | 拍照预览方法、装置及存储介质 | |
CN113873161A (zh) | 拍摄方法、装置及电子设备 | |
US20130010169A1 (en) | Imaging apparatus | |
CN112532854B (zh) | 一种图像处理方法与电子设备 | |
CN105426081B (zh) | 移动终端的界面切换装置及方法 | |
CN116723383B (zh) | 一种拍摄方法及相关设备 | |
CN118042274A (zh) | 一种拍照方法和设备 | |
CN111835977B (zh) | 图像传感器、图像生成方法及装置、电子设备、存储介质 | |
JP5660306B2 (ja) | 撮像装置、プログラム、及び撮像方法 | |
CN112312024A (zh) | 拍照处理方法、装置及存储介质 | |
CN112399092A (zh) | 拍摄方法、装置和电子设备 | |
CN116389885B (zh) | 拍摄方法、电子设备及存储介质 | |
CN114071016B (zh) | 图像处理方法、装置、电子设备及存储介质 | |
CN116055855A (zh) | 图像处理方法及其相关设备 | |
CN118175436A (zh) | 图像处理方法及其相关设备 | |
CN116156315A (zh) | 拍摄预览方法、装置、电子设备和存储介质 | |
CN115733913A (zh) | 连续拍照方法及装置、存储介质 | |
CN116916147A (zh) | 图像处理方法、图像发送方法、装置和电子设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination |