CN116261041A - 拍摄方法、装置、设备及存储介质 - Google Patents
拍摄方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN116261041A CN116261041A CN202210259157.0A CN202210259157A CN116261041A CN 116261041 A CN116261041 A CN 116261041A CN 202210259157 A CN202210259157 A CN 202210259157A CN 116261041 A CN116261041 A CN 116261041A
- Authority
- CN
- China
- Prior art keywords
- camera module
- frame rate
- exposure frame
- exposure
- shooting
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
- H04W52/0209—Power saving arrangements in terminal devices
- H04W52/0261—Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/60—Control of cameras or camera modules
- H04N23/65—Control of camera operation in relation to power supply
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N23/00—Cameras or camera modules comprising electronic image sensors; Control thereof
- H04N23/70—Circuitry for compensating brightness variation in the scene
- H04N23/72—Combination of two or more compensation controls
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W52/00—Power management, e.g. TPC [Transmission Power Control], power saving or power classes
- H04W52/02—Power saving arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Computer Networks & Wireless Communication (AREA)
- Studio Devices (AREA)
Abstract
本申请提供一种拍摄方法、装置、设备及存储介质,涉及拍摄领域。该方法包括:从配置的相机模组中确定第一相机模组和第二相机模组,调整第一相机模组的曝光帧率为第一曝光帧率、第二相机模组的曝光帧率为第二曝光帧率。控制第二相机模组与第一相机模组进行协同拍摄,具体地,控制第一相机模组开始拍摄第一帧,控制第二相机模组开始拍摄第二帧,第二帧的开始时间比第一帧的开始时间延后第一时长,第一时长与第一曝光帧率以及第二曝光帧率相关。该方法中,第一相机模组和第二相机模组能够以不同的曝光帧率进行拍摄,各自的曝光出图可以在帧尾保持同步,保证了拍摄图像的出图效果的同时,降低了相机模组由于非必要高帧率而产生的功耗。
Description
本申请要求于2021年12月08日提交国家知识产权局、申请号为202111491363.6、申请名称为“一种显示方法及电子设备”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请实施例涉及拍摄领域,尤其涉及一种拍摄方法、装置、设备及存储介质。
背景技术
在多摄协同拍摄场景中,终端设备(如手机)可以设置有多颗相机(camera)模组。在进行拍摄时,终端设备可以通过多颗camera模组同时拍摄得到与多颗camera模组一一对应的多张图像,并将多张图像进行融合处理得到最终的拍摄图像。
目前,终端设备通过多颗camera模组进行拍摄时,可以通过硬同步控制技术控制多颗camera模组在拍摄阶段每一帧图像的画面开始曝光的时间戳保持一致,以保证多颗camera模组拍摄到的图像的画面统一性,进而提升融合图像(即最终的拍摄图像)的出图效果。
但是,目前的硬同步控制技术中,从camera模组需要跟随主camera模组,与主camera模组保持相同的曝光帧率,而从camera模组与主camera模组保持相同的曝光帧率会导致终端设备产生较高的功耗。
发明内容
本申请提供一种拍摄方法、装置、设备及存储介质,可以适用于配置有多颗(如至少两颗)camera模组的终端设备进行多摄协同拍摄的场景,实现主camera模组和从camera模组以不同的曝光帧率进行拍摄,最大程度上降低从camera模组由于非必要高帧率而产生的功耗,从而有效降低终端设备在多摄协同拍摄场景下的功耗。
第一方面,本申请提供一种拍摄方法,所述方法包括:终端设备从配置的相机模组中确定第一相机模组和第二相机模组。终端设备将第一相机模组的曝光帧率调整为第一曝光帧率,将第二相机模组的曝光帧率调整为第二曝光帧率;第一曝光帧率和第二曝光帧率不同。终端设备控制第一相机模组以第一曝光帧率进行拍摄,并控制第二相机模组以第二曝光帧率与第一相机模组进行协同拍摄。
所述终端设备控制第一相机模组以第一曝光帧率进行拍摄,并控制第二相机模组以第二曝光帧率与第一相机模组进行协同拍摄,包括:终端设备控制第一相机模组开始拍摄第一帧,控制第二相机模组开始拍摄第二帧,其中,第二帧的开始时间比第一帧的开始时间延后第一时长,第一时长与第一曝光帧率以及第二曝光帧率相关。
该拍摄方法中,第一相机模组可以认为是主camera模组,第二相机模组可以认为是从camera模组。终端设备通过为主camera模组和从camera模组配置不同的曝光帧率(如第一曝光帧率和第二曝光帧率),使得主camera模组和从camera模组以不同的曝光帧率进行拍摄,可以最大程度上降低从camera模组由于非必要高帧率而产生的功耗,从而有效降低终端设备在多摄协同拍摄场景下的功耗。
终端设备控制第一相机模组开始拍摄第一帧,控制第二相机模组开始拍摄第二帧,第二帧的开始时间比第一帧的开始时间延后第一时长,第一时长与第一曝光帧率以及第二曝光帧率相关,可以实现根据主camera模组的曝光帧率和从camera模组的曝光帧率,控制从camera模组开始曝光出图的时间。通过在拍摄过程中根据主camera模组的曝光帧率和从camera模组的曝光帧率,控制从camera模组开始曝光出图的时间,可以实现从camera模组的曝光出图与主camera模组的曝光出图在帧尾保持同步,保证了主camera模组和从camera模组拍摄到的图像的画面统一性,进而提升了最终的拍摄图像的出图效果。
在一些实现方式中,第一时长与第一曝光帧率以及第二曝光帧率相关,包括:第一时长等于第三曝光帧率对应的帧长与第二曝光帧率对应的帧长之间的差值。第三曝光帧率是小于或等于第二曝光帧率、且能够整除第一曝光帧率的所有值中的最大值。
以第一曝光帧率为Sm,第二曝光帧率为Ss为例,第三曝光帧率可以是以Sm为基准,基于Ss向下降低帧率确定第一个能够整除Sm的帧率Ss1,也即,Ss1是小于或等于Ss、且能够整除Sm的所有值中的最大值。第一时长可以是Ss1对应的帧长与Ss对应的帧长之间的差值(如差值的绝对值)。
可选地,所述方法还包括:终端设备控制第一相机模组在第一帧的开始时间延迟第一时长后发出第一信号。所述终端设备控制第二相机模组开始拍摄第二帧,包括:终端设备控制第二相机模组根据配置的感知第一信号的间隔次数感知第一信号;响应于感知到的第一信号,终端设备控制第二相机模组开始拍摄第二帧。
其中,第一信号可以是XVS脉冲信号、VSYNC脉冲信号、FSIN脉冲信号等脉冲信号。终端设备控制第一相机模组在第一帧的开始时间延迟第一时长后发出第一信号,也即终端设备可以控制第一相机模组发出第一信号的时间是在第一帧的开始时间往后延迟第一时长。例如,假设第一时长为Δt,第一相机模组拍摄第一帧的帧头对应的时刻为t,则第一相机模组发出第一信号的实际时刻为(t+Δt)。
终端设备控制第二相机模组根据配置的感知第一信号的间隔次数感知第一信号;响应于感知到的第一信号,终端设备控制第二相机模组开始拍摄第二帧,可以使得第二帧开始拍摄的时间比第一帧延后第一时长,从而实现根据第一相机模组的曝光帧率和第二相机模组的曝光帧率,控制第二相机模组开始曝光出图的时间。
可选地,所述方法还包括:终端设备根据第一曝光帧率和第二曝光帧率,为第二相机模组配置感知第一信号的间隔次数,以及,为第一相机模组配置发出第一信号的时间为在第一帧的开始时间延迟第一时长。
如上所述,以第一曝光帧率为Sm,第二曝光帧率为Ss为例,第一时长可以是Ss1对应的帧长与Ss对应的帧长之间的差值。终端设备可以通过为第一相机模组配置发出第一信号的时间为在第一帧的开始时间延迟第一时长,实现控制第一相机模组在第一帧的开始时间延迟第一时长后发出第一信号。终端设备还可以通过为第二相机模组配置感知第一信号的间隔次数,实现终端设备控制第二相机模组根据配置的感知第一信号的间隔次数感知第一信号。
在一些实现方式中,第二相机模组配置的感知第一信号的间隔次数等于第一曝光帧率除以第三曝光帧率的商减1后的值。
同样以第一曝光帧率为Sm,第二曝光帧率为Ss为例,第二相机模组配置的感知第一信号的间隔次数可以是以Sm为基准,基于Ss向下降低帧率确定第一个能够整除Sm的第三曝光帧率Ss1后,将Sm除以Ss1的商减去1后的值。或者,也可以是将Sm除以Ss得到的值向下取整后的值。
在一些实现方式中,所述方法还包括:终端设备从配置的相机模组中确定第三相机模组。终端设备调整第三相机模组的曝光帧率,使第三相机模组的曝光帧率满足:第二曝光帧率为第三相机模组的曝光帧率的整数倍。终端设备控制第三相机模组以调整后的曝光帧率与第一相机模组和第二相机模组进行协同拍摄。
所述终端设备控制第三相机模组以调整后的曝光帧率与第一相机模组和第二相机模组进行协同拍摄,包括:终端设备控制第三相机模组根据配置的感知第一信号的间隔次数感知第一信号。响应于感知到的第一信号,终端设备控制第三相机模组开始拍摄当前帧。
其中,第三相机模组也可以作为从camera模组。对多摄协同拍摄的场景而言,从的数量可以为一颗或多颗。当从camera模组的数量为一颗时,不存在第三相机模组。当从camera模组的数量为多颗(如两颗或两颗以上)时,多颗从camera模组的最低曝光帧率可能相同或不同,此时,第二相机模组可以是多颗从camera模组中最低曝光帧率最大的目标从camera模组,第三相机模组可以是多颗从camera模组中除目标从camera模组之外的其余从camera模组。
在本申请中,终端设备通过调整第三相机模组的曝光帧率,使第二曝光帧率为第三相机模组的曝光帧率的整数倍,可以使得第三相机模组能够以调整后的曝光帧率与第一相机模组和第二相机模组进行协同拍摄,基本实现同步出图。如:终端设备也可以控制第三相机模组根据配置的感知第一信号的间隔次数感知第一信号。响应于感知到的第一信号,终端设备可以控制第三相机模组开始拍摄当前帧。
可选地,所述方法还包括:终端设备根据第二曝光帧率、第三相机模组的曝光帧率、以及第二相机模组配置的感知第一信号的间隔次数,为第三相机模组配置感知第一信号的间隔次数。
终端设备通过为第三相机模组配置感知第一信号的间隔次数,可以实现控制第三相机模组根据配置的感知第一信号的间隔次数感知第一信号。
在一些实现方式中,第三相机模组配置的感知第一信号的间隔次数等于第二相机模组配置的感知第一信号的间隔次数加上第一值的和,第一值是第二曝光帧率除以第三相机模组的曝光帧率的商减1后的值。
以第二曝光帧率为Ss,第三相机模组的曝光帧率为Sr(Ss为Sr的整数倍),第二相机模组感知脉冲信号的间隔次数为(Y-1)为例,终端设备可以确定Ss除以Sr的商减1后的值作为第一值,第三相机模组配置的感知第一信号的间隔次数可以等于Ss除以Sr的商减1后的值与(Y-1)的和。
在一些实现方式中,所述方法还包括:检测到拍摄场景的场景信息发生变化,终端设备将第一相机模组的曝光帧率调整为第四曝光帧率,将第二相机模组的曝光帧率调整为第五曝光帧率。终端设备控制第一相机模组以第四曝光帧率进行拍摄,并控制第二相机模组以第五曝光帧率与第一相机模组进行协同拍摄。
所述终端设备控制第一相机模组以第四曝光帧率进行拍摄,并控制第二相机模组以第五曝光帧率与第一相机模组进行协同拍摄,包括:终端设备控制第一相机模组开始拍摄第三帧,控制第二相机模组开始拍摄第四帧,其中,第四帧的开始时间比第三帧的开始时间延后第二时长,第二时长与第四曝光帧率以及第五曝光帧率相关。
示例性地,一些可能的场景中,拍摄环境的场景信息可能会发生变化,终端设备需要根据场景信息的变化调整部分或全部camera模组,以保证更好的拍摄效果。例如,当拍摄环境亮度发生变化的时候,终端设备需要调整部分或全部camera模组的曝光时间保持拍摄效果的亮度一致性。如当环境亮度很低的时候,为了使得画面亮度一致,通常需要对应很长的曝光时间,如果此时曝光时间比当前帧的帧长大,需要对应增加帧长,即降低帧率,简称降帧。当环境亮度从暗场景回到正常亮度时,过长的帧长又需要复原,即升高帧率,简称升帧。当环境亮度发生大幅度变化或器件感光度差异较大时,对camera模组进行灵活的升降帧可以带来更好的拍摄效果,达到多摄间曝光效果一致性和不同环境亮度下更好的曝光一致性,提升图像融合效果。
在本申请中,检测到拍摄场景的场景信息发生变化后,终端设备可以对第一相机模组和第二相机模组的曝光帧率进行调整。如:终端设备将第一相机模组的曝光帧率调整为第四曝光帧率,将第二相机模组的曝光帧率调整为第五曝光帧率。
可选地,第五曝光帧率和第二曝光帧率不同,第四曝光帧率和第一曝光帧率可以相同或不同。
在调整第一相机模组和第二相机模组的曝光帧率后,终端设备可以控制第一相机模组以第四曝光帧率进行拍摄,并控制第二相机模组以第五曝光帧率与第一相机模组进行协同拍摄。具体地,终端设备可以控制第一相机模组开始拍摄第三帧,控制第二相机模组开始拍摄第四帧,其中,第四帧的开始时间比第三帧的开始时间延后第二时长,第二时长与第四曝光帧率以及第五曝光帧率相关。
针对拍摄场景的场景信息发生变化后进行升降帧的场景,该方法仍然可以保证第二相机模组的曝光出图与第一相机模组的曝光出图在帧尾保持同步,从而保证升降帧场景下第一相机模组和第二相机模组拍摄到的图像的画面统一性,提升最终的拍摄图像的出图效果。
可选地,检测到拍摄场景的场景信息发生变化后,终端设备还可以调整第三相机模组的曝光帧率,第三相机模组的曝光帧率与第二相机模组的曝光帧率相关,调整方式可以参见前述实现方式中所述,不再赘述。
在一些实现方式中,第二时长与第四曝光帧率以及第五曝光帧率相关,包括:第二时长等于第六曝光帧率对应的帧长与第五曝光帧率对应的帧长之间的差值。第六曝光帧率是小于或等于第五曝光帧率、且能够整除第四曝光帧率的所有值中的最大值。
第二时长与第一时长类似。例如,以第四曝光帧率(可以称为第一相机模组的期望曝光帧率)为Sm_new,第五曝光帧率(可以称为第二相机模组的期望曝光帧率)为Ss_new为例,第六曝光帧率可以是以Sm_new为基准,基于Ss_new向下降低帧率确定的第一个能够整除Sm_new的帧率Ss1_new,即Ss1_new是小于或等于Ss_new、且能够整除Sm_new的所有值中的最大值。第二时长可以等于Ss1_new对应的帧长与Ss_new对应的帧长之间的差值(可以是差值的绝对值)。
可选地,所述方法还包括:终端设备控制第一相机模组在第三帧的开始时间延迟第二时长后发出第一信号。所述终端设备控制第二相机模组开始拍摄第四帧,包括:终端设备控制第二相机模组根据配置的感知第一信号的间隔次数感知第一信号。响应于感知到的第一信号,终端设备控制第二相机模组开始拍摄第四帧。
终端设备控制第一相机模组在第三帧的开始时间延迟第二时长后发出第一信号,也即终端设备可以控制第一相机模组发出第一信号的时间是在第三帧的开始时间往后延迟第二时长。终端设备控制第二相机模组根据配置的感知第一信号的间隔次数感知第一信号;响应于感知到的第一信号,终端设备控制第二相机模组开始拍摄第四帧,可以使得第四帧开始拍摄的时间比第三帧延后第二时长,从而实现根据第一相机模组的曝光帧率和第二相机模组的曝光帧率,控制第二相机模组开始曝光出图的时间。
可选地,所述方法还包括:终端设备根据第四曝光帧率和第五曝光帧率,为第一相机模组配置发出第一信号的时间为在第三帧的开始时间延迟第二时长。
如上所述,以第四曝光帧率为Sm_new,第五曝光帧率为Ss_new为例,第二时长可以等于Ss1_new对应的帧长与Ss_new对应的帧长之间的差值。终端设备可以通过为第一相机模组配置发出第一信号的时间为在第三帧的开始时间延迟第二时长,实现控制第一相机模组在第三帧的开始时间延迟第二时长后发出第一信号。
可选地,第四曝光帧率小于或等于第五曝光帧率的Z倍,或者,第四曝光帧率对应的帧长的Z倍大于或等于第五曝光帧率的对应的帧长。其中,Z等于第二相机模组配置的感知第一信号的间隔次数加1后的值。
由于第二相机模组感知第一信号的间隔次数在起流阶段已经确定,所以,基于硬同步本身的约束,第四曝光帧率和第五曝光帧率之间满足:第四曝光帧率小于或等于第五曝光帧率的Z倍,或者,第四曝光帧率对应的帧长的Z倍大于或等于第五曝光帧率的对应的帧长。在第四曝光帧率和第五曝光帧率之间满足前述关系的情况下,第四曝光帧率和第五曝光帧率之间总是可以实现期望的帧率组合。
在一些实现方式中,所述方法还包括:终端设备对第一帧和第二帧进行融合处理,得到第一图像。
第一图像即多摄协同拍摄场景下得到的最终拍摄图像,可以具有较好的出图效果。
在一些实现方式中,终端设备从配置的相机模组中确定第一相机模组和第二相机模组,可以包括:终端设备获取当前拍摄场景的场景信息、以及配置的相机模组的能力信息;终端设备根据场景信息、以及能力信息,从配置的相机模组中确定第一相机模组和第二相机模组。
例如,终端设备可以在启动拍摄功能时(如启动运行拍摄应用程序),获取当前拍摄场景的场景信息。示例性地,所述场景信息包括以下一种或多种:焦距信息、光线信息、用户的拍摄需求。
终端设备获取当前拍摄场景的场景信息,可以包括:终端设备根据当前拍摄场景对应的预览画面、传感器信息(如光线传感器采集的光线信息)、第一操作中的一种或多种,获取当前拍摄场景的场景信息。其中,第一操作为在终端设备显示的第一界面选择拍摄模式,和/或,设置拍摄参数的操作。
或者,终端设备也可以通过对当前拍摄场景对应的预览画面进行识别,获取当前拍摄场景对应的场景信息。例如,终端识别可以通过识别当前拍摄场景对应的预览画面,确定用户的拍摄需求是否为人像、景物,或者,确定当前拍摄场景的光线信息等。或者,终端设备还可以结合对当前拍摄场景对应的预览画面的识别结果、以及光线传感器等硬件的检测参数、用户的操作等,综合确定当前拍摄场景的场景信息。
可选地,相机模组的能力信息包括以下一种或多种:最大曝光帧率、拍摄的合理焦距、出图色彩模式。
在一些实现方式中,第一曝光帧率和第二曝光帧率可以是由终端设备根据当前拍摄场景的场景信息、以及终端设备配置的相机模组的能力信息确定第一相机模组和第二相机模组的最低曝光帧率后,基于第一相机模组和第二相机模组的最低曝光帧率分别确定的。例如,第一曝光帧率大于或等于第一相机模组的最低曝光帧率。第二曝光帧率大于或等于第二相机模组的最低曝光帧率。
第二方面,本申请实施例提供一种拍摄装置,该装置可以应用于终端设备,用于实现上述第一方面所述的拍摄方法。该装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块或单元。例如,该装置可以包括:配置模块、拍摄模块等。
其中,配置模块,用于从配置的相机模组中确定第一相机模组和第二相机模组;将第一相机模组的曝光帧率调整为第一曝光帧率,将第二相机模组的曝光帧率调整为第二曝光帧率;第一曝光帧率和第二曝光帧率不同。
拍摄模块,用于控制第一相机模组以第一曝光帧率进行拍摄,并控制第二相机模组以第二曝光帧率与第一相机模组进行协同拍摄。
拍摄模块,具体用于控制第一相机模组开始拍摄第一帧,控制第二相机模组开始拍摄第二帧,其中,第二帧的开始时间比第一帧的开始时间延后第一时长,第一时长与第一曝光帧率以及第二曝光帧率相关。
在一些实现方式中,第一时长与第一曝光帧率以及第二曝光帧率相关,包括:第一时长等于第三曝光帧率对应的帧长与第二曝光帧率对应的帧长之间的差值。第三曝光帧率是小于或等于第二曝光帧率、且能够整除第一曝光帧率的所有值中的最大值。
可选地,拍摄模块,还用于控制第一相机模组在第一帧的开始时间延迟第一时长后发出第一信号;以及,控制第二相机模组根据配置的感知第一信号的间隔次数感知第一信号,响应于感知到的第一信号,控制第二相机模组开始拍摄第二帧。
可选地,配置模块,还用于根据第一曝光帧率和第二曝光帧率,为第二相机模组配置感知第一信号的间隔次数,以及,为第一相机模组配置发出第一信号的时间为在第一帧的开始时间延迟第一时长。
在一些实现方式中,第二相机模组配置的感知第一信号的间隔次数等于第一曝光帧率除以第三曝光帧率的商减1后的值。
在一些实现方式中,配置模块,还用于从配置的相机模组中确定第三相机模组,调整第三相机模组的曝光帧率,使第三相机模组的曝光帧率满足:第二曝光帧率为第三相机模组的曝光帧率的整数倍。拍摄模块,还用于控制第三相机模组以调整后的曝光帧率与第一相机模组和第二相机模组进行协同拍摄。
拍摄模块,具体用于控制第三相机模组根据配置的感知第一信号的间隔次数感知第一信号,响应于感知到的第一信号,控制第三相机模组开始拍摄当前帧。
可选地,配置模块,还用于根据第二曝光帧率、第三相机模组的曝光帧率、以及第二相机模组配置的感知第一信号的间隔次数,为第三相机模组配置感知第一信号的间隔次数。
在一些实现方式中,第三相机模组配置的感知第一信号的间隔次数等于第二相机模组配置的感知第一信号的间隔次数加上第一值的和,第一值是第二曝光帧率除以第三相机模组的曝光帧率的商减1后的值。
在一些实现方式中,配置模块,还用于检测到拍摄场景的场景信息发生变化,将第一相机模组的曝光帧率调整为第四曝光帧率,将第二相机模组的曝光帧率调整为第五曝光帧率。拍摄模块,还用于控制第一相机模组以第四曝光帧率进行拍摄,并控制第二相机模组以第五曝光帧率与第一相机模组进行协同拍摄。
拍摄模块,具体用于控制第一相机模组开始拍摄第三帧,控制第二相机模组开始拍摄第四帧,其中,第四帧的开始时间比第三帧的开始时间延后第二时长,第二时长与第四曝光帧率以及第五曝光帧率相关。
在一些实现方式中,第二时长与第四曝光帧率以及第五曝光帧率相关,包括:第二时长等于第六曝光帧率对应的帧长与第五曝光帧率对应的帧长之间的差值。第六曝光帧率是小于或等于第五曝光帧率、且能够整除第四曝光帧率的所有值中的最大值。
可选地,拍摄模块,还用于控制第一相机模组在第三帧的开始时间延迟第二时长后发出第一信号,以及控制第二相机模组根据配置的感知第一信号的间隔次数感知第一信号,响应于感知到的第一信号,控制第二相机模组开始拍摄第四帧。
可选地,配置模块,还用于根据第四曝光帧率和第五曝光帧率,为第一相机模组配置发出第一信号的时间为在第三帧的开始时间延迟第二时长。
可选地,第四曝光帧率小于或等于第五曝光帧率的Z倍,或者,第四曝光帧率对应的帧长的Z倍大于或等于第五曝光帧率的对应的帧长。其中,Z等于第二相机模组配置的感知第一信号的间隔次数加1后的值。
在一些实现方式中,拍摄模块,还用于对第一帧和第二帧进行融合处理,得到第一图像。
应当理解,该拍摄装置可以用于实现前述第一方面中所述的拍摄方法的全部功能,不再一一赘述。
第三方面,本申请实施例提供一种电子设备,包括:处理器,用于存储所述处理器可执行指令的存储器;所述处理器被配置为执行所述指令时,使得所述电子设备实现如第一方面及第一方面的任意一种可能的实现方式中所述的方法。
第四方面,本申请实施例提供一种计算机可读存储介质,其上存储有计算机程序指令;当所述计算机程序指令被电子设备执行时,使得电子设备实现如第一方面及第一方面的任意一种可能的实现方式中所述的方法。
第五方面,本申请实施例还提供一种计算机程序产品,包括计算机可读代码,当所述计算机可读代码在电子设备中运行时,使得电子设备实现如第一方面及第一方面的任意一种可能的实现方式中所述的方法。
上述第三方面至第五方面中,电子设备可以是第一方面中所述的终端设备。
上述第二方面至第五方面所具备的有益效果,可参考第一方面中所述,在此不再赘述。
应当理解的是,本申请中对技术特征、技术方案、有益效果或类似语言的描述并不是暗示在任意的单个实施例中可以实现所有的特点和优点。相反,可以理解的是对于特征或有益效果的描述意味着在至少一个实施例中包括特定的技术特征、技术方案或有益效果。因此,本说明书中对于技术特征、技术方案或有益效果的描述并不一定是指相同的实施例。进而,还可以任何适当的方式组合本实施例中所描述的技术特征、技术方案和有益效果。本领域技术人员将会理解,无需特定实施例的一个或多个特定的技术特征、技术方案或有益效果即可实现实施例。在其他实施例中,还可在没有体现所有实施例的特定实施例中识别出额外的技术特征和有益效果。
附图说明
图1为两颗camera模组的硬同步控制原理示意图;
图2为本申请实施例提供的终端设备的结构示意图;
图3为本申请实施例提供的拍摄方法的流程示意图;
图4为本申请实施例提供的从camera模组仅包括目标从camera模组的场景下硬同步控制原理的示意图;
图5为本申请实施例提供的从camera模组包括目标从camera模组和其余从camera模组的场景下硬同步控制原理的示意图;
图6为本申请实施例提供的拍摄方法的另一流程示意图;
图7为本申请实施例提供的从camera模组仅包括目标从camera模组的场景下降帧原理的示意图;
图8为本申请实施例提供的终端设备的软件架构实现原理示意图;
图9为本申请实施例提供的拍摄装置的结构示意图。
具体实施方式
以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个或两个以上(包含两个)。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。术语“连接”包括直接连接和间接连接,除非另外说明。
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。
在本申请实施例中,“示例性地”或者“例如”等词用于表示作例子、例证或说明。本申请实施例中被描述为“示例性地”或者“例如”的任何实施例或设计方案不应被解释为比其它实施例或设计方案更优选或更具优势。确切而言,使用“示例性地”或者“例如”等词旨在以具体方式呈现相关概念。
在多摄协同拍摄场景中,终端设备(如手机)可以设置有多个或多颗(两颗及两颗以上)相机(camera)模组,camera模组也称为摄像头模组。终端设备在进行拍摄时,可以通过多颗camera模组同时拍摄得到与多颗camera模组一一对应的多张图像。终端设备可以将多张图像进行融合处理,得到最终的拍摄图像。最终的拍摄图像可以具有更好的拍摄效果(或称为出图效果)。
例如,在一种可能的场景中,终端设备可以包括彩色camera和景深camera。终端设备在进行拍摄时,可以通过彩色camera拍摄得到彩色图像、同时通过景深camera拍摄得到黑白图像。终端设备可以将彩色camera拍摄得到的彩色图像、以及景深camera拍摄得到的黑白图像进行融合处理,得到最终的拍摄图像。最终的拍摄图像中可以包含更加丰富的景深信息,出图效果可以更好。
目前,终端设备通过多颗camera模组进行拍摄时,可以通过硬同步控制技术控制多颗camera模组在拍摄阶段每一帧图像的画面开始曝光的时间戳保持一致,以保证多颗camera模组拍摄到的图像的画面统一性,进而提升融合图像(即最终的拍摄图像)的出图效果。
例如,目前常见的硬同步控制技术的主要原理为:终端设备通过多颗camera模组进行拍摄时,将多颗camera模组划分为一颗主(master)camera模组和其他从(slave)camera模组,并控制主camera模组和从camera模组保持相同的曝光帧率(也即,从camera模组的曝光帧率跟随主camera模组的曝光帧率,在同一拍摄预览时间内,主camera模组和从camera模组的曝光帧数相同),主camera模组在拍摄阶段每一帧图像的帧头对应的时刻发出XVS脉冲信号,其他从camera模组感知主camera模组发出的XVS脉冲信号。其他从camera模组在每一次感知到主camera模组发出的XVS脉冲信号时,开始当前帧的曝光出图;其他从camera模组完成当前帧的曝光出图后,等待下一次主camera模组发出的XVS脉冲信号,直至感知到下一次主camera模组发出的XVS脉冲信号时,再开始下一帧的曝光出图。从而,多颗camera模组在拍摄阶段每一帧图像的画面开始曝光的时间戳可以保持一致。
示例性地,以终端设备通过两颗camera模组实现多摄协同拍摄的场景为例,图1为两颗camera模组的硬同步控制原理示意图。两颗camera模组中,其中一个camera模组作为主camera模组,另外一个camera模组作为从camera模组。
如图1所示,主camera模组和从camera模组可以保持相同的曝光帧率。主camera模组在拍摄阶段每一帧图像的帧头对应的时刻发出XVS脉冲信号。其中,帧头可以用帧首定界符(start-of-frame delimiter,SOF)表示,帧尾可以用帧尾定界符(end-of-framedelimiter,EOF)表示。从camera模组感知到XVS脉冲信号时,可以开始当前帧的曝光出图。主camera模组的有效帧长略微大于从camera模组的有效帧长。例如,camera模组的帧长一般是指SOF至下一个SOF之间的长度,而有效帧长是指SOF至EOF的长度与每帧中非曝光空行(vertical blank,vblank,也称空白无效行时间、或者垂直消隐、又或者场消隐)的长度之和。终端设备可以通过调整主camera模组和从camera模组的vblank的长短使得主camera模组的有效帧长略微大于从camera模组的有效帧长。vblank的含义为上一帧最后一行读出结束到下一帧第一行读出开始的时间。从camera模组在当前帧曝光出图结束后,将会等待主camera发送的XVS脉冲信号,直到感知到下一次主camera模组发出的XVS脉冲信号时,再开始下一帧的曝光出图。通过这种方式,可以保证主camera模组和从camera模组的每帧帧头的时间戳一致,达到毫秒级相同时间的出图效果。
但是,上述目前的硬同步控制技术中,主camera模组和从camera模组保持相同的曝光帧率,会导致终端设备产生较高的功耗。
例如,在多摄协同拍摄场景中,终端设备进行多图融合时,一般需要以主camera模组的出图为基准,而主camera模组会设置为较高的曝光帧率(即单位时间内更多的曝光帧数)以保证拍摄效果的高动态性。而从camera模组则会跟随主camera模组的曝光帧率,保持同样的高曝光帧率。当主camera模组和从camera模组保持相同的高曝光帧率时,会导致终端设备产生较高的相机功耗,如:终端设备会出现发热甚至发烫的现象。当终端设备达到一定温度上限时,终端设备的camera模组可能无法维持高性能的工作模式,而影响最终的拍摄效果。
在此背景技术下,本申请实施例提供了一种拍摄方法,可以适用于配置有多颗(如至少两颗)camera模组的终端设备进行多摄协同拍摄的场景。该方法中,终端设备首先可以从配置的camera模组中确定拍摄需要用到的主camera模组和从camera模组,并为主camera模组和从camera模组配置不同的曝光帧率。然后,终端设备可以控制主camera模组和从camera模组以不同的曝光帧率进行拍摄,在拍摄过程中,终端设备可以根据主camera模组的曝光帧率和从camera模组的曝光帧率,控制从camera模组开始曝光出图的时间,使得从camera模组的曝光出图可以与主camera模组的曝光出图在帧尾保持同步。
该方法中,主camera模组和从camera模组以不同的曝光帧率进行拍摄,可以最大程度上降低从camera模组由于非必要高帧率而产生的功耗,从而有效降低终端设备在多摄协同拍摄场景下的功耗。从camera模组的曝光出图与主camera模组的曝光出图在帧尾保持同步,可以保证主camera模组和从camera模组拍摄到的图像的画面统一性,进而提升最终的拍摄图像的出图效果。也即,该方法可以在保证多颗camera模组的拍摄效果的前提下,最大程度上降低终端设备的功耗。
可选地,本申请实施例中,终端设备可以是具有拍摄功能的手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等移动终端,或者,也可以是数码相机、单反相机/微单相机、运动摄像机、云台相机、无人机等专业的拍摄设备,本申请实施例对终端设备的具体类型不作限制。
应当理解,终端设备具有至少两颗camera模组,用于实现多摄协同拍摄。
示例性地,以终端设备为手机为例,图2为本申请实施例提供的终端设备的结构示意图。如图2所示,手机可以包括处理器210,外部存储器接口220,内部存储器221,通用串行总线(universal serial bus,USB)接口230,充电管理模块240,电源管理模块241,电池242,天线1,天线2,移动通信模块250,无线通信模块260,音频模块270,扬声器270A,受话器270B,麦克风270C,耳机接口270D,传感器模块280,按键290,马达291,指示器292,摄像头293,显示屏294,以及用户标识模块(subscriber identification module,SIM)卡接口295等。
处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
其中,控制器可以是手机的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器210中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器210中的存储器为高速缓冲存储器。该存储器可以保存处理器210刚用过或循环使用的指令或数据。如果处理器210需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器210的等待时间,因而提高了系统的效率。
在一些实施例中,处理器210可以包括一个或多个接口。接口可以包括集成电路(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)接口,SIM接口,和/或USB接口等。
外部存储器接口220可以用于连接外部存储卡,例如Micro SD卡,实现扩展手机的存储能力。外部存储卡通过外部存储器接口220与处理器210通信,实现数据存储功能。例如,可以将多摄协同拍摄场景下拍摄得到的图片,又或者其他图片、音乐、视频等文件保存在外部存储卡中。
内部存储器221可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器210通过运行存储在内部存储器221的指令,从而执行手机的各种功能应用以及数据处理。例如,内部存储器221可以存储有用于实现本申请实施例提供的拍摄方法的计算机可执行程序代码,处理器210通过运行这部分计算机可执行程序代码的指令,可以实现本申请实施例提供的拍摄方法。
内部存储器221还可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(如相机应用)等。存储数据区可存储手机使用过程中所创建的数据(比如图像数据,电话本)等。此外,内部存储器221可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
充电管理模块240用于从充电器接收充电输入。充电管理模块240为电池242充电的同时,还可以通过电源管理模块241为手机供电。电源管理模块241用于连接电池242,充电管理模块240,以及处理器210。电源管理模块241也可接收电池242的输入为手机供电。
手机的无线通信功能可以通过天线1,天线2,移动通信模块250,无线通信模块260,调制解调处理器以及基带处理器等实现。天线1和天线2用于发射和接收电磁波信号。手机中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
手机可以通过音频模块270,扬声器270A,受话器270B,麦克风270C,耳机接口270D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
传感器模块280可以包括压力传感器280A,陀螺仪传感器280B,气压传感器280C,磁传感器280D,加速度传感器280E,距离传感器280F,接近光传感器280G,指纹传感器280H,温度传感器280J,触摸传感器280K,环境光传感器280L,骨传导传感器280M等。手机进行拍摄时,可以通过传感器模块280采集当前拍摄场景的场景信息,如:通过温度传感器280J采集当前拍摄场景的温度,通过环境光传感器280L采集当前拍摄场景的光线等。
手机可以通过摄像头293进行拍摄。摄像头293也可以称为camera模组,本申请实施例中,摄像头293的数量为至少两个,不同摄像头的类型可以不同。例如,摄像头293可以是彩色camera模组、黑白camera模组、景深camera模组、长焦(或远焦)camera模组、广角camera模组、微距camera模组等。本申请对摄像头293的数量、以及每个摄像头293的具体类型不作限制。
示例性地,摄像头293可以包括镜头(lens)和传感器(sensor)。在拍摄照片或者拍摄视频时,打开快门,光线可以通过摄像头293的镜头被传递到sensor上。sensor可以将通过镜头的光信号转换为电信号,再对电信号进行A/D转换,输出对应的数字信号。该数字信号经过后续的RAW域处理、ISP处理、以及YUV域处理等,即可以得到拍摄的照片或视频画面。
在一种可能的设计中,sensor的感光元件可以是电荷耦合器件(charge coupleddevice,CCD),sensor还包括A/D转换器。在另外一种可能的设计中,sensor的感光元件可以是互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)。
显示屏294用于显示图像,视频等。显示屏294包括显示面板。显示面板可以采用液晶显示屏(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个显示屏294,N为大于1的正整数。例如,显示屏294可以用于显示应用程序界面,应用程序界面可以是相机界面。
手机通过GPU,显示屏294,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏294和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
可以理解的是,图2所示的结构并不构成对手机的具体限定。在一些实施例中,手机也可以包括比图2所示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置等。又或者,图2所示的一些部件可以以硬件,软件或软件和硬件的组合实现。
另外,当终端设备是其他平板电脑、可穿戴设备、车载设备、AR/VR设备、笔记本电脑、UMPC、上网本、PDA等具有拍摄功能的移动终端,或者,数码相机、单反相机/微单相机、运动摄像机、云台相机、无人机等专业的拍摄设备时,这些其他终端设备的具体结构也可以参考图2所示。示例性地,其他终端设备可以是在图2给出的结构的基础上增加或减少了组件,在此不再一一赘述。
还应当理解的是,终端设备(如手机)中可以运行有一个或多个拍摄应用程序,以便通过运行拍摄应用程序,实现拍摄的功能。例如,该拍摄应用程序可以包括系统级应用“相机”应用。又例如,该拍摄应用程序还可以包括其他安装在终端设备中的能够用于拍摄的应用程序。在此对拍摄应用程序的具体类型也不作限制。
下面结合图3所示的流程,对本申请实施例提供的拍摄方法进行示例性说明。
示例性地,图3为本申请实施例提供的拍摄方法的流程示意图。该拍摄方法可以应用于终端设备。如图3所示,该方法可以包括:
301、从配置的camera模组中确定主camera模组和从camera模组,并分别确定主camera模组和从camera模组的最低曝光帧率。
示例性地,终端设备在启动拍摄功能时,可以获取当前拍摄场景对应的场景信息,然后可以根据场景信息、以及配置的camera模组的能力信息,从配置的camera模组中确定主camera模组和从camera模组(即确定适合拍摄当前拍摄场景的主camera模组和从camera模组),并分别确定主camera模组和从camera模组的最低曝光帧率。
可选地,场景信息可以包括:当前拍摄场景的焦距信息、当前拍摄场景的光线信息、用户的拍摄需求等。
其中,当前拍摄场景的焦距信息可以是指终端设备与当前拍摄场景中的被拍物体之间的焦距(即拍摄距离)。焦距可以决定拍摄图像清晰范围的距离远近,焦距越大,景深越小,拍摄角度也越小。
当前拍摄场景的光线信息可以是指当前拍摄场景中的光线明暗程度、光线是否有动态明暗变化(多光源场景)等。可选地,当前拍摄场景的光线信息可以是由终端设备中配置的传感器采集到的传感器信息得到的。例如,可以由环境光传感器(光线传感器)采集得到光线信息。
用户的拍摄需求是指用户在终端设备上选择或设置的拍摄模式、拍摄参数等。
例如,终端设备可以包括一个拍摄应用程序,终端设备可以响应于用户启动拍摄应用程序的操作,启动运行该拍摄应用程序。在启动运行该拍摄应用程序后,终端设备即启动了拍摄功能。终端设备可以通过该拍摄应用程序调用配置的camera模组实现拍摄功能。终端设备在启动运行拍摄应用程序后,可以通过拍摄应用程序显示拍摄界面,拍摄界面中可以包括可供用户选择的多种拍摄模式分别对应的功能控件,如,拍摄模式可以包括:大光圈模式、人像模式、虚化模式、慢动作模式、高动态模式、夜景模式等。用户可以在拍摄界面通过点击对应的功能控件选择一种或多种拍摄模式,终端设备可以响应于用户选择拍摄模式的操作,确定用户的拍摄需求。例如,用户可以点击人像模式对应的功能控件,终端设备可以确定用户的拍摄需求包括:拍摄人像或人像模式。
其中,终端设备在启动运行拍摄应用程序后,通过拍摄应用程序显示的拍摄界面也称为第一界面。用户在拍摄界面选择拍摄模式,和/或,设置拍摄参数的操作也可以称为第一操作。
一些实施例中,终端设备也可以通过对当前拍摄场景对应的预览画面进行识别,获取当前拍摄场景对应的场景信息。例如,终端识别可以通过识别当前拍摄场景对应的预览画面,确定用户的拍摄需求是否为人像、景物,或者,确定当前拍摄场景的光线信息等。
或者,终端设备还可以结合对当前拍摄场景对应的预览画面的识别结果、以及光线传感器等硬件的检测参数、用户的操作等,综合确定当前拍摄场景的场景信息。
需要说明的是,上述提到的当前拍摄场景对应的场景信息仅为示例性说明,本申请实施例对终端设备所获取的当前拍摄场景对应的场景信息的具体类型、以及终端设备获取当前拍摄场景的场景信息的具体方式均不作限制。
在获取到当前拍摄场景对应的场景信息后,终端设备可以根据场景信息、以及配置的camera模组的能力信息,从配置的camera模组中确定主camera模组和从camera模组。其中,从camera模组的数量可以为一颗或多颗。主camera模组的最低曝光帧率大于任意一颗从camera模组的最低曝光帧率。
应当理解,终端设备所确定的主camera模组和从camera模组即构成了适合拍摄当前拍摄场景的camera模组组合(或称为多摄协同组合),能够用于对当前拍摄场景进行协同拍摄。
一些实施例中,终端设备配置的camera模组的能力信息可以预设在终端设备中,如:每个camera模组可以存储各自的能力信息,终端设备可以获取到每个camera模组的能力信息。
示例性地,camera模组的能力信息可以包括:最大曝光帧率、拍摄的合理焦距、出图色彩模式等。
例如,假设终端设备配置的camera模组包括:彩色camera模组、黑白camera模组、景深camera模组、长焦camera模组、广角camera模组,前述camera模组的能力信息可以如下:
1)彩色camera模组的最大曝光帧率为30帧每秒(frames per second,FPS)或者60FPS,拍摄的合理焦距为0.8X-5X之间,出图色彩模式为彩色。
2)黑白camera模组的最大曝光帧率为30FPS,拍摄的合理焦距为0.8X-5X之间,出图色彩模式为无色彩或黑白。
3)景深camera模组的最大曝光帧率为30FPS,拍摄的合理焦距为0.8X-5X之间,出图色彩模式为彩色,能够快速、远距离(1-10米)获取精度更好的景深信息。
4)长焦camera模组的最大曝光帧率为30FPS,拍摄的合理焦距为3X以上,出图色彩模式为彩色。
5)广角camera模组的最大曝光帧率为30FPS,拍摄的合理焦距为0.1X-1X之间,出图色彩模式为彩色。
假设步骤301中终端设备采集的当前拍摄场景对应的场景信息为:大光圈人像模式、焦距1X-3X之间,则终端设备可以结合彩色camera模组、黑白camera模组、景深camera模组、长焦camera模组、以及广角camera模组各自的能力信息,根据1X-3X的焦距场景,确定不需要长焦camera模组和广角camera模组;根据大光圈模式,选择彩色camera模组作为主camera模组提供主要的图像信息,选择黑白camera模组作为从camera模组提供更加丰富的光线明暗信息;根据人像模式选择景深camera模组作为从camera模组以提供更好的虚化效果。也即,该场景下,终端设备可以选择彩色camera模组作为主camera模组,黑白camera模组和景深camera模组作为从camera模组。
假设步骤301中终端设备采集的当前拍摄场景对应的场景信息为:大光圈非人像模式、焦距1X-3X之间,则终端设备可以结合彩色camera模组、黑白camera模组、景深camera模组、长焦camera模组、以及广角camera模组各自的能力信息,根据1X-3X的焦距场景,确定不需要长焦camera模组和广角camera模组;根据大光圈模式,选择彩色camera模组作为主camera模组提供主要的图像信息,选择黑白camera模组作为从camera模组提供更加丰富的光线明暗信息;根据非人像模式确定不需要景深camera模组。也即,该场景下,终端设备可以选择彩色camera模组作为主camera模组,黑白camera模组作为从camera模组。
上述示例说明了焦距在1X-3X之间时,不需要长焦camera模组和广角camera模组的情况。下面对需要长焦camera模组或广角camera模组的情况进行说明。
可选地,当焦距在0.5X-1X之间时,终端设备可以根据焦距的具体变化,确定是否需要广角camera模组,并在需要广角camera模组时,在广角camera模组和彩色camera模组中进行主从camera模组的决策。
例如,焦距由1X向0.5X过渡的过程中,终端设备根据焦距的具体变化,进行主从camera模组的决策的方式可以如下:
1)当焦距小于1X、大于0.9X时,终端设备可以选择彩色camera模组作为主camera模组,确定不需要广角camera模组。
2)当焦距小于或等于0.9X、大于0.7X时,终端设备可以选择彩色camera模组作为主camera模组,选择广角camera模组作为从camera模组。
3)当焦距小于或等于0.7X、大于0.5X时,终端设备可以选择彩色camera模组作为从camera模组,选择广角camera模组作为主camera模组。
4)当焦距小于或等于0.5X时,终端设备可以选择广角camera模组作为主camera模组,确定不需要彩色camera模组。
类似地,当焦距在3X-5X之间时,终端设备可以根据焦距的具体变化,确定是否需要长焦camera模组,并在需要长焦camera模组时,在长焦camera模组和彩色camera模组中进行主从camera模组的决策。
例如,焦距由3X向5X过渡的过程中,终端设备根据焦距的具体变化,进行主从camera模组的决策的方式可以如下:
1)当焦距大于3X、小于3.5X时,终端设备可以选择彩色camera模组作为主camera模组,选择长焦camera模组作为从camera模组。
2)当焦距大于或等于3.5X、小于5X时,终端设备可以选择彩色camera模组作为从camera模组,选择长焦camera模组作为主camera模组。
3)当焦距大于或等于5X时,终端设备可以选择长焦camera模组作为主camera模组,确定不需要彩色camera模组。
需要说明的是,上述终端设备根据当前拍摄场景对应的场景信息、以及终端设备配置的camera模组的能力信息,从终端设备配置的camera模组中确定适合拍摄当前拍摄场景的主camera模组和从camera模组的过程仅为示例性说明。应当理解,当前拍摄场景对应的场景信息为其他类型时,终端设备确定适合拍摄当前拍摄场景的主camera模组和从camera模组的方式也可以有所变化,在此不作限制。
一些实施例中,终端设备确定适合拍摄当前拍摄场景的主camera模组和从camera模组的规则可以是人为进行配置的。终端设备可以按照人为配置的规则确定适合拍摄当前拍摄场景的主camera模组和从camera模组。
本申请实施例对终端设备确定适合拍摄当前拍摄场景的主camera模组和从camera模组的具体方式不作限制。
终端设备确定出适合拍摄当前拍摄场景的主camera模组和从camera模组后,可以分别确定主camera模组和从camera模组的最低曝光帧率。
例如,如上所述,当前拍摄场景对应的场景信息包括:大光圈人像模式、焦距1X-3X之间时,终端设备可以确定彩色camera模组作为主camera模组,黑白camera模组和景深camera模组作为从camera模组。由于一般的大光圈人像模式不会涉及到拍摄主体的动态移动,对于帧率没有过高的要求,所以,终端设备可以确定彩色camera模组的最低曝光帧率为30FPS以保证较好的出图效果,确定黑白camera模组的最低曝光帧率为10-12FPS即可满足提供光线明暗变化的需求,确定景深camera模组的最低曝光帧率为7.5FPS或10FPS即可满足提供场景中的距离信息的需求。
可选地,终端设备确定主camera模组和从camera模组的最低曝光帧率的规则也可以是人为配置的规则,例如,可以由厂家在终端设备出厂前为终端设备配置确定主camera模组和从camera模组的最低曝光帧率的规则。
本申请对终端设备确定主camera模组和从camera模组的最低曝光帧率的具体方式也不作限制。
302、将主camera模组的曝光帧率调整为第一曝光帧率,第一曝光帧率大于或等于主camera模组的最低曝光帧率。
例如,终端设备可以将主camera模组的曝光帧率调整为主camera模组的最低曝光帧率,或者,调整为大于主camera模组的最低曝光帧率的某个值。如:主camera模组的最低曝光帧率为30FPS,终端设备可以将主camera模组的曝光帧率调整为30FPS、或者40FPS、又或者60FPS等。
可以理解的,主camera模组的曝光帧率最大可以被调整为主camera模组支持的最大曝光帧率。也即,第一曝光帧率小于或等于主camera模组支持的最大曝光帧率。
303、将从camera模组中最低曝光帧率最大的目标从camera模组的曝光帧率调整为第二曝光帧率,第二曝光帧率大于或等于目标从camera模组的最低曝光帧率。
如上所述,步骤301中所确定的从camera模组的数量可以为一颗或多颗。当从camera模组的数量为一颗时,步骤303中所述的目标从camera模组即是指该唯一的一颗从camera模组。当从camera模组的数量为多颗(如两颗或两颗以上)时,步骤301中所确定的多颗从camera模组的最低曝光帧率可能相同或不同,此时,步骤303中所述的目标从camera模组是指多颗从camera模组中最低曝光帧率最大的从camera模组。
可以理解的,目标从camera模组的数量可以是一个或多个。例如,存在多个从camera模组的最低曝光帧率最大且相同时,最低曝光帧率最大的多个从camera模组均为目标从camera模组。
可选地,目标从camera模组的数量是多个时,步骤303中可以根据任意一个目标从camera模组的最低曝光帧率,对所有目标从camera模组的曝光帧率进行调整。
例如,以第二曝光帧率等于目标从camera模组的最低曝光帧率为例,假设存在3个从camera模组,第1个从camera模组的最低曝光帧率为18FPS,第2个从camera模组的最低曝光帧率也为18FPS,第3个从camera模组的最低曝光帧率为10FPS,则第1个从camera模组和第2个从camera模组为目标从camera模组,步骤303中可以将第1个从camera模组和第2个从camera模组的曝光帧率分别调整为18FPS。第3个从camera模组可以称为其余从camera模组。
在本申请中,目标从camera模组可以认为是所有从camera模组中相对重要的camera模组,在所有从camera模组中,目标从camera模组对多摄协同拍摄所得到的最终拍摄图像的出图效果的影响程度相对更大一些。
304、调整从camera模组中除目标从camera模组之外的其余从camera模组的曝光帧率,使其余从camera模组的曝光帧率满足:第二曝光帧率为其余从camera模组的曝光帧率的整数倍,且其余从camera模组的曝光帧率大于或等于其余从camera模组的最低曝光帧率。
可以理解的,第二曝光帧率为其余从camera模组的曝光帧率的整数倍时,其余从camera模组的曝光帧率小于或等于第二曝光帧率。
示例性地,假设从camera模组中除目标从camera模组之外的其余从camera模组的数量为i,i为大于0的整数,第二曝光帧率为S0,第1颗其余从camera模组的最低曝光帧率为S1,第2颗其余从camera模组的最低曝光帧率为S2,……,第i颗其余从camera模组的最低曝光帧率为Si,则步骤304中终端设备调整每颗其余从camera模组的曝光帧率的具体方式可以包括:以S0为基准,调整第1颗其余从camera模组的曝光帧率S'1,使S'1满足:S0=X1*S'1,X1为大于0的整数,S1≤S'1≤S0;调整第2颗其余从camera模组的曝光帧率S'2,使S'2满足:S0=X2*S'2,X2为大于0的整数,S2≤S'2≤S0;……;以此类推,调整第i颗其余从camera模组的曝光帧率S'i,使S'i满足:S0=Xi*S'i,Xi为大于0的整数,Si≤S'i≤S0。“≤”表示小于或等于。“*”表示乘积。
可选地,终端设备按照上述方式对每颗其余从camera模组的曝光帧率进行调整的过程中,对于第i颗其余从camera模组,当第i颗其余从camera模组对应的Xi和S'i的组合包括多种时,终端设备可以将第i颗其余从camera模组的曝光帧率S'i调整为多种组合中最小的一种。
例如,假设S0为30FPS,第i颗其余从camera模组的最低曝光帧率Si为10FPS,则终端设备调整第i颗其余从camera模组的曝光帧率S'i,使S'i满足:S0=Xi*S'i,Xi为大于0的整数,Si≤S'i≤S0时,Xi和S'i的组合可以包括以下(1)至(3)所示的三种:
(1)Xi为1,S'i为30FPS;
(2)Xi为2,S'i为15FPS;
(3)Xi为3,S'i为10FPS;
此时,终端设备可以将第i颗其余从camera模组的曝光帧率S'i调整为10FPS。
也即,对第i颗其余从camera模组:当其余从camera模组的最低曝光帧率至第二曝光帧率的范围内包括多个S'i,满足第二曝光帧率为S'i的整数倍时,终端设备可以将多个S'i中的最小值配置为第i颗其余从camera模组的曝光帧率。
当然,终端设备按照上述方式对每颗其余从camera模组的曝光帧率进行调整的过程中,对于第i颗其余从camera模组,当第i颗其余从camera模组对应的Xi和S'i的组合包括多种时,终端设备也可以将第i颗其余从camera模组的曝光帧率S'i调整为多种组合中的任意一种,在此不作限制。
以终端设备确定主camera模组为彩色camera模组,从camera模组为黑白camera模组和景深camera模组,彩色camera模组的最低曝光帧率为30FPS,黑白camera模组的最低曝光帧率为12FPS,景深camera模组的最低曝光帧率为10FPS为例:本申请实施例中,黑白camera模组可以是目标从camera模组,景深camera模组可以是其余从camera模组,终端设备可以按照上述方式,调整彩色camera模组的曝光帧率为30FPS(即第一曝光帧率),调整黑白camera模组的曝光帧率为12FPS(即第二曝光帧率),调整景深camera模组的曝光帧率为12FPS(即第二曝光帧率为景深camera模组的曝光帧率的1倍)。
上述步骤301-304所述的过程即终端设备从配置的camera模组中确定拍摄需要用到的主camera模组和从camera模组,并为主camera模组和从camera模组配置不同的曝光帧率的过程。
在本申请中,主camera模组可以被称为第一相机模组,目标从camera模组可以被称为第二相机模组,其余从camera模组可以被称为第三相机模组。
需要说明的是,本申请对步骤302-304的执行顺序并不作限制。例如,步骤302-304可以同时执行,或者步骤303和步骤304也可以在步骤302之前执行,又或者,步骤303也可以在304之后执行等。
以步骤302-304同时执行为例,终端设备可以预先确定好第一曝光帧率、第二曝光帧率、以及每个其余从camera模组的曝光帧率的目标值(参见步骤304所述),然后,分别对主camera模组和从camera模组的曝光帧率进行配置。
另外,还需要说明的是,对于部分场景而言,其余从camera模组的数量可能为0个。例如,从camera模组的数量为一颗时,仅存在目标从camera模组,不存在其余从camera模组。又例如,从camera模组的数量为多颗、且多颗从camera模组的最低曝光帧率均相同时,也仅存在目标从camera模组,不存在其余从camera模组。对于其余从camera模组的数量为0个的情况而言,本申请实施例提供的该拍摄方法中实际不存在步骤304。
下面继续对终端设备根据主camera模组的曝光帧率和从camera模组的曝光帧率,控制从camera模组开始曝光出图的时间的过程进行说明。
305、根据第一曝光帧率和第二曝光帧率,为目标从camera模组配置感知脉冲信号的间隔次数,以及,为主camera模组配置发出脉冲信号的延迟(delay)时间。
其中,为目标从camera模组配置的感知脉冲信号的间隔次数是指:目标从camera模组对主camera模组发出的脉冲信号,间隔几次感知一次。例如,终端设备为某颗目标从camera模组配置的感知脉冲信号的间隔次数为2次,则该颗目标从camera模组对主camera模组发出的脉冲信号,每间隔2次感知一次。目标从camera模组对主camera模组发出的某次脉冲信号进行感知是指:目标从camera模组可以对主camera模组本次发出的脉冲信号进行响应,开始当前帧的拍摄。
以第一曝光帧率为Sm,第二曝光帧率为Ss为例,终端设备根据第一曝光帧率和第二曝光帧率,为目标从camera模组配置感知脉冲信号的间隔次数,可以包括:以Sm为基准,基于Ss向下降低帧率确定第一个能够整除Sm的帧率Ss1,将Sm除以Ss1的商减去1后的值配置为目标从camera模组配置感知脉冲信号的间隔次数。或者,也可以理解为,为目标从camera模组配置的感知脉冲信号的间隔次数实际上是将Sm除以Ss得到的值向下取整后的值。
也即,终端设备可以以Sm为基准,基于Ss向下降低帧率确定第一个满足Sm=Y·Ss1、且Y为大于0的整数的帧率Ss1,将Y减去1后的值配置为目标从camera模组配置感知脉冲信号的间隔次数。或者,终端设备可以以Sm为基准,将Sm除以Ss得到的值向下取整后的值配置为目标从camera模组配置感知脉冲信号的间隔次数。
例如,假设第一曝光帧率为30FPS,第二曝光帧率为18FPS,则终端设备可以以30FPS为基准,基于18FPS向下降低帧率确定出第一个能够整除30FPS的帧率为15FPS,得到30FPS除以15FPS的商减去1后的值为1,并配置目标从camera模组配置感知脉冲信号的间隔次数为1次。或者,终端设备可以先以30FPS为基准,将30FPS除以18FPS得到的值向下取整,得到的值为1,然后,可以配置目标从camera模组配置感知脉冲信号的间隔次数为1次。可以看到,两种方式所确定的结果是相同的。
同样以第一曝光帧率为Sm,第二曝光帧率为Ss为例,终端设备根据第一曝光帧率和第二曝光帧率,为主camera模组配置脉冲信号的延迟时间,可以包括:以Sm为基准,基于Ss向下降低帧率确定第一个能够整除Sm的帧率Ss1(参见上面所述,不再赘述),将Ss1对应的帧长(帧间隔时长)与Ss对应的帧长之间的差值(可以是差值的绝对值)配置为主camera模组发出脉冲信号的延迟时间。
例如,如上所述,当第一曝光帧率为30FPS,第二曝光帧率为18FPS时,终端设备可以以30FPS为基准,基于18FPS向下降低帧率确定出第一个能够整除30FPS的帧率为15FPS。此时,终端设备可以确定出15FPS对应的帧长约为66.667毫秒(ms),18FPS对应的帧长约为55.556ms,两个帧长之间的差值为11.11ms。终端设备可以配置主camera模组发出脉冲信号的延迟时间为11.11ms。
可选地,其他一些实现方式中,终端设备也可以根据第一曝光帧率对应的帧长和第二曝光帧率对应的帧长,为目标从camera模组配置感知脉冲信号的间隔次数,以及,为主camera模组配置发出脉冲信号的延迟时间。其原理与根据第一曝光帧率和第二曝光帧率配置间隔次数和延迟时间的方式相似。
例如,终端设备可以以第一曝光帧率对应的帧长(如LSm)为基准,基于第二曝光帧率对应的帧长(如LSs)向上增大帧长确定第一个能够被LSm整除的帧率LSs1,将LSs1除以LSm的商减去1后的值配置为目标从camera模组配置感知脉冲信号的间隔次数。
又例如,终端设备可以以第一曝光帧率对应的帧长(如LSm)为基准,基于第二曝光帧率对应的帧长(如LSs)向上增大帧长确定第一个能够被LSm整除的帧率LSs1,将LSs1与LSs之间的差值(可以是差值的绝对值)配置为主camera模组发出脉冲信号的延迟时间。
本申请中,可以将上述Ss1称为第三曝光帧率,可以理解的,第三曝光帧率是一个用于计算的中间值,并不会实际配置到某个camera模组。第三曝光帧率(Ss1)是小于或等于Ss、且能够整除Sm的所有值中的最大值。也即,脉冲信号的延迟时间与Sm以及Ss相关。
306、根据第二曝光帧率、其余从camera模组的曝光帧率、以及目标从camera模组感知脉冲信号的间隔次数,为其余从camera模组配置感知脉冲信号的间隔次数。
与目标从camera模组感知脉冲信号的间隔次数类似,为其余从camera模组配置的感知脉冲信号的间隔次数是指:其余从camera模组对主camera模组发出的脉冲信号,间隔几次感知一次。例如,终端设备为某颗其余从camera模组配置的感知脉冲信号的间隔次数为2次,则该颗其余从camera模组对主camera模组发出的脉冲信号,每间隔2次感知一次。其余从camera模组对主camera模组发出的某次脉冲信号进行感知是指:其余从camera模组可以对主camera模组本次发出的脉冲信号进行响应,开始当前帧的拍摄。
以第二曝光帧率为Ss,其余从camera模组的曝光帧率为Sr(Ss为Sr的整数倍),目标从camera模组感知脉冲信号的间隔次数为(Y-1)为例,终端设备根据第二曝光帧率、其余从camera模组的曝光帧率、以及目标从camera模组感知脉冲信号的间隔次数,为其余从camera模组配置感知脉冲信号的间隔次数,可以包括:确定Ss除以Sr的商减1后的值,将Ss除以Sr的商减1后的值与(Y-1)的和配置为其余从camera模组感知脉冲信号的间隔次数。
也即,其余从camera模组配置的感知第一信号的间隔次数等于目标从camera模组配置的感知第一信号的间隔次数加上第一值的和,第一值是Ss除以Sr的商减1后的值。
例如,假设第二曝光帧率为24FPS,某颗其余从camera模组的曝光帧率为24FPS,目标从camera模组感知脉冲信号的间隔次数为1次,则终端设备可以将该颗其余从camera模组感知脉冲信号的间隔次数配置为(24/24-1+1=1)次。
又例如,假设第二曝光帧率为24FPS,某颗其余从camera模组的曝光帧率为12FPS,目标从camera模组感知脉冲信号的间隔次数为1次,则终端设备可以将该颗其余从camera模组感知脉冲信号的间隔次数配置为(24/12-1+1=2)次。
一些实施例中,终端设备中可以预设有第二曝光帧率与其余从camera模组感知脉冲信号的间隔次数的对应关系。该对应关系可以按照上述确定其余从camera模组感知脉冲信号的间隔次数的方式得到,并提前配置在终端设备中。终端设备可以根据第二曝光帧率、以及其余从camera模组的曝光帧率,查询该对应关系,确定其余从camera模组感知脉冲信号的间隔次数。
还需要说明的是,与步骤304类似,对于上述其余从camera模组的数量为0个的场景而言,本申请实施例提供的该拍摄方法中实际也不存在步骤306。
307、通过主camera模组和从camera模组进行拍摄,在拍摄过程中,主camera模组在每一帧的帧头对应的时刻按照发出脉冲信号的延迟时间延迟后发出脉冲信号;从camera模组根据配置的感知脉冲信号的间隔次数感知主camera模组发出的脉冲信号,并在感知到脉冲信号后开始当前帧的拍摄。
应当理解,这里所述的从camera模组可以包括目标从camera模组和其余从camera模组。也即,对于任意一个从camera模组而言,该从camera模组可以响应于感知到主camera模组发出的脉冲信号,开始当前帧的拍摄。
可选地,终端设备可以对主camera模组发出脉冲信号的频率进行配置,以使得主camera模组在每一帧的帧头对应的时刻按照发出脉冲信号的延迟时间延迟后发出脉冲信号。例如,假设发出脉冲信号的延迟时间为Δt,主camera模组拍摄某一帧的帧头对应的时刻为t,则主camera模组发出脉冲信号的实际时刻为(t+Δt)。
上述步骤305-307所述的过程即终端设备根据主camera模组的曝光帧率和从camera模组的曝光帧率,控制从camera模组开始曝光出图的时间的过程。主camera模组在每一帧的帧头对应的时刻按照发出脉冲信号的延迟时间延迟后发出脉冲信号,从camera模组根据配置的感知脉冲信号的间隔次数感知主camera模组发出的脉冲信号,并在感知到脉冲信号后开始当前帧的拍摄,即可使得从camera模组的曝光出图可以与主camera模组的曝光出图在帧尾保持基本同步。
本申请中,主camera模组拍摄的当前帧可以称为第一帧,目标从camera模组拍摄的当前帧可以称为第二帧,终端设备可以控制主camera模组开始拍摄第一帧,控制从camera模组开始拍摄第二帧。其中,第二帧的开始时间比第一帧的开始时间延后了上述脉冲信号的延迟时间,脉冲信号的延迟时间与所述第一曝光帧率以及所述第二曝光帧率相关。
下面以脉冲信号为XVS脉冲信号为例,分别以从camera模组仅包括目标从camera模组、以及从camera模组包括目标从camera模组和其余从camera模组等两个示例,进行举例说明。需要说明的是,本申请对脉冲信号的具体类型并不作限制。例如,本申请实施例中所述的脉冲信号还可以是VSYNC脉冲信号、FSIN脉冲信号等。在本申请中,前述XVS脉冲信号、VSYNC脉冲信号、FSIN脉冲信号等脉冲信号均可以称为第一信号。
示例性地,图4为本申请实施例提供的从camera模组仅包括目标从camera模组的场景下硬同步控制原理的示意图。如图4所示,假设某种拍摄场景下(如傍晚光线较暗的场景),终端设备确定主camera模组为彩色camera模组,从camera模组为黑白camera模组,彩色camera模组的最低曝光帧率为30FPS,黑白camera模组的最低曝光帧率为18FPS,其中,彩色camera模组具有较高的拍摄性能;黑白camera模组可以采集灰度信息,提供更加丰富的亮度明暗变化。此时,用于进行多摄协同拍摄的从camera模组仅包括一颗目标从camera模组(即黑白camera模组),不存在其余从camera模组。
按照上文中所述的方式,终端设备可以调整彩色camera模组的曝光帧率为30FPS,调整黑白camera模组的曝光帧率为18FPS,并根据30FPS和18FPS,为黑白camera模组配置感知脉冲信号的间隔次数为1次,以及,为彩色camera模组配置发出脉冲信号的延迟时间为11.11ms(图中所示的tdelay即发出脉冲信号的延迟时间)。在通过彩色camera模组和黑白camera模组进行拍摄的过程中,彩色camera模组可以按照30FPS在每一帧的帧头(SOF)对应的时刻向后延迟11.11ms后发出XVS脉冲信号,黑白camera模组可以对彩色camera模组发出的XVS脉冲信号每间隔1次、感知1次,并在每次感知到彩色camera模组发出的XVS脉冲信号后开始当前帧的拍摄。也即,黑白camera模组在感知1次彩色camera模组发出的XVS脉冲信号后,对之后第1次接收到的彩色camera模组发出的XVS脉冲信号不感知,并在完成当前帧的拍摄后等待XVS脉冲信号,对第2次接收到的彩色camera模组发出的XVS脉冲信号进行感知。
结合图4可以看到,彩色camera模组和黑白camera模组的曝光出图将会在帧尾保持同步,其曝光出图的时间戳将会保持一致。例如,彩色camera模组每2帧时长为66.66ms,黑白camera模组每帧实际间隔为66.66ms,彩色camera模组和黑白camera模组每帧实际生效时长一致,保持曝光出图的时间戳一致。
示例性地,图5为本申请实施例提供的从camera模组包括目标从camera模组和其余从camera模组的场景下硬同步控制原理的示意图。如图5所示,假设终端设备确定主camera模组为彩色camera模组,从camera模组为黑白camera模组和景深camera模组;彩色camera模组的最低曝光帧率为30FPS,黑白camera模组的最低曝光帧率为18FPS,景深camera模组的最低曝光帧率为12FPS。用于进行多摄协同拍摄的从camera模组包括一颗目标从camera模组(即黑白camera模组),以及一颗其余从camera模组(即景深camera模组)。
按照上文中所述的方式,终端设备可以调整彩色camera模组的曝光帧率为30FPS,调整黑白camera模组的曝光帧率为18FPS,调整景深camera模组的曝光帧率也为18FPS(黑白camera模组的曝光帧率为景深camera模组的曝光帧率的整数倍),并根据30FPS和18FPS,为黑白camera模组配置感知脉冲信号的间隔次数为1次,为彩色camera模组配置发出脉冲信号的延迟时间为11.11ms(即图中所示的tdelay),为景深camera模组配置感知脉冲信号的间隔次数为1次。在通过彩色camera模组、黑白camera模组、以及景深camera模组进行拍摄的过程中,彩色camera模组可以按照30FPS在每一帧的帧头(SOF)对应的时刻向后延迟11.11ms后发出XVS脉冲信号,黑白camera模组和景深camera模组可以分别对彩色camera模组发出的XVS脉冲信号每间隔1次、感知1次,并在每次感知到彩色camera模组发出的XVS脉冲信号后开始当前帧的拍摄。也即,黑白camera模组和景深camera模组分别在感知1次彩色camera模组发出的XVS脉冲信号后,对之后第1次接收到的彩色camera模组发出的XVS脉冲信号不感知,并在完成当前帧的拍摄后等待XVS脉冲信号,对第2次接收到的彩色camera模组发出的XVS脉冲信号进行感知。
结合图5可以看到,彩色camera模组、黑白camera模组、以及景深camera模组的曝光出图将会在帧尾保持同步,其曝光出图的时间戳将会保持一致。例如,彩色camera模组每2帧时长为66.66ms,黑白camera模组每帧实际间隔为66.66ms,景深camera模组每帧实际间隔也为66.66ms,彩色camera模组、黑白camera模组、以及景深camera模组每帧实际生效时长一致,保持曝光出图的时间戳一致。
可选地,本申请实施例中,从camera模组内部可以设置有计数器,从camera模组可以通过计数器对接收到的主camera模组发出的XVS脉冲信号的次数进行计数。从camera模组可以根据计数器的计数结果确定本次接收到的XVS脉冲信号为第几次,确定是否达到配置的感知XVS脉冲信号的间隔次数,从而进一步确定是否感知本次接收到的主camera模组发出的XVS脉冲信号。
按照步骤307所述的方式,终端设备可以通过主camera模组和从camera模组拍摄得到每个camera模组分别对应的图像,然后终端设备可以对主camera模组和从camera模组拍摄到的图像进行融合处理,得到最终拍摄图像。如,该方法还包括步骤308。
308、对主camera模组和从camera模组拍摄到的图像进行融合处理,得到最终拍摄图像。
在本申请中,终端设备对主camera模组和从camera模组拍摄到的图像进行融合处理,得到的最终拍摄图像可以称为第一图像。例如,终端设备可以对主camera模组拍摄的第一帧和从camera模组拍摄的第二帧进行融合处理,得到第一图像。
可选地,终端设备将主camera模组和从camera模组拍摄到的图像进行融合处理时,可以分别选取主camera模组和从camera模组最近一次拍摄到的一帧图像进行融合处理。例如,在彩色camera模组拍摄到一帧图像后,终端设备对彩色camera模组、黑白camera模组、以及景深camera模组拍摄到的图像进行融合处理时,如果彩色camera模组拍摄这一帧图像时,黑白camera模组和景深camera模组也分别感知XVS脉冲信号拍摄了一帧图像,则终端设备彩色camera模组、黑白camera模组、以及景深camera模组当前拍摄到的三帧图像进行融合处理。如果彩色camera模组拍摄这一帧图像时,黑白camera模组感知XVS脉冲信号拍摄了一帧图像,而景深camera模组没有感知XVS脉冲信号,则终端设备可以将彩色camera模组和黑白camera模组拍摄到的当前帧图像、以及景深camera模组上一次感知XVS脉冲信号拍摄的图像进行融合处理。
本申请实施例提供的拍摄方法中,终端设备通过为主camera模组和从camera模组配置不同的曝光帧率,使得主camera模组和从camera模组以不同的曝光帧率进行拍摄,可以最大程度上降低从camera模组由于非必要高帧率而产生的功耗,从而有效降低终端设备在多摄协同拍摄场景下的功耗。同时,通过在拍摄过程中根据主camera模组的曝光帧率和从camera模组的曝光帧率,控制从camera模组开始曝光出图的时间,可以实现从camera模组的曝光出图与主camera模组的曝光出图在帧尾保持同步,保证了主camera模组和从camera模组拍摄到的图像的画面统一性,进而提升了最终的拍摄图像的出图效果。
也即,该方法中的目标从camera模组可以以任意的帧率与主camera模组之间实现硬同步,该方法可以在保证多颗camera模组的拍摄效果的前提下,最大程度上降低终端设备的功耗。
例如,前述图5所示的示例中,彩色camera模组可以以30FPS的曝光帧率进行拍摄,黑白camera模组和景深camera模组可以分别以18FPS的曝光帧率进行拍摄,同时,彩色camera模组、黑白camera模组、以及景深camera模组在拍摄时曝光出图将会在帧尾保持同步,以保证画面的一致性。由于黑白camera模组和景深camera模组的曝光帧率低于彩色camera模组的曝光帧率,无需与彩色camera模组的曝光帧率保持一致,所以,黑白camera模组和景深camera模组消耗的功耗可以更低。
可选地,终端设备通过主camera模组和从camera模组进行拍摄时,在主camera模组和每颗从camera模组起流工作的首帧预曝光阶段,可以先控制主camera模组和每颗从camera模组的首帧帧长相同(即曝光出图的第一帧的帧长相同),以保证主camera模组和每颗从camera模组首帧出图的时间保持一致,从而使得主camera模组和每颗从camera模组在首帧出图时已保持相同的出帧时间。之后,从第二帧开始,终端设备则按照上文所述的方式控制主camera模组和每颗从camera模组进行拍摄。
例如,以前述实施例中所述的主camera模组为彩色camera模组,从camera模组为黑白camera模组和景深camera模组的示例为例,假设彩色camera模组、黑白camera模组、以及景深camera模组在拍摄过程中分别对应的帧间隔约为33毫秒(ms)、55ms和55ms,则终端设备可以在彩色camera模组、黑白camera模组、以及景深camera模组起流工作的首帧预曝光阶段,控制彩色camera模组、黑白camera模组、以及景深camera模组分别对应的第一帧的帧长相同。如:终端设备可以将黑白camera模组、以及景深camera模组分别对应的第一帧的vblank的时长进行压缩,控制彩色camera模组、黑白camera模组、以及景深camera模组分别对应的第一帧的帧长均为33ms。或者,终端设备可以将彩色camera模组对应的第一帧的vblank的时长进行拉长,控制彩色camera模组、黑白camera模组、以及景深camera模组分别对应的第一帧的帧长均为55ms等。
本申请对终端设备控制主camera模组和每颗从camera模组的首帧帧长相同的具体实现方式不作限制。
可选地,终端设备可以向主camera模组和每颗从camera模组下发首帧预曝光帧长,主camera模组和每颗从camera模组可以根据终端设备下发的首帧预曝光帧长,曝光第一帧。
以上实施例主要介绍了本申请实施例提供的拍摄方法中主camera模组和从camera模组在起流工作时实现硬同步的场景。还有一些可能的场景中,拍摄环境的场景信息可能会发生变化,终端设备需要根据场景信息的变化调整部分或全部camera模组,以保证更好的拍摄效果。
例如,当拍摄环境亮度发生变化的时候,终端设备需要调整部分或全部camera模组的曝光时间保持拍摄效果的亮度一致性。如当环境亮度很低的时候,为了使得画面亮度一致,通常需要对应很长的曝光时间,如果此时曝光时间比当前帧的帧长大,需要对应增加帧长,即降低帧率,简称降帧。当环境亮度从暗场景回到正常亮度时,过长的帧长又需要复原,即升高帧率,简称升帧。当环境亮度发生大幅度变化或器件感光度差异较大时,对camera模组进行灵活的升降帧可以带来更好的拍摄效果,达到多摄间曝光效果一致性和不同环境亮度下更好的曝光一致性,提升图像融合效果。
下面对本申请实施例提供的拍摄方法中进行升降帧的情况进行示例性说明。
示例性地,图6为本申请实施例提供的拍摄方法的另一流程示意图。如图6所示,该方法可以包括:
601、根据场景信息的变化和目标从camera模组感知脉冲信号的间隔次数,确定主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率。
其中,由于目标从camera模组感知脉冲信号的间隔次数在起流阶段(图3所示的流程)已经确定,所以,基于硬同步本身的约束,主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率之间满足如下关系:主camera模组的期望曝光帧率小于或等于目标从camera模组的期望曝光帧率的Z倍,或者,主camera模组的期望曝光帧率对应的帧长的Z倍大于或等于目标从camera模组的期望曝光帧率对应的帧长。Z为大于0的整数,Z等于目标从camera模组配置感知脉冲信号的间隔次数加1后的值。也即,Z等于上述实施例中所述的Y。
以主camera模组的期望曝光帧率为Sm_new,目标从camera模组的期望曝光帧率为Ss_new为例,主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率之间满足的关系可以表示为:Sm_new≤Z*Ss_new。或者,以主camera模组的期望曝光帧率对应的帧长为LSm_new,目标从camera模组的期望曝光帧率为LSs_new为例,主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率之间满足的关系可以表示为:LSm_new*Z≥LSs_new。
在主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率之间满足上述关系的情况下,主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率之间总是可以实现期望的帧率组合。
可选地,相较于起流阶段的第一曝光帧率和第二曝光帧率而言,在根据场景信息的变化和目标从camera模组感知脉冲信号的间隔次数,确定主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率时,可能存在如下情况:1)主camera模组的期望曝光帧率较第一曝光帧率发生了变化,目标从camera模组的期望曝光帧率较第二曝光帧率发生了变化;2)主camera模组的期望曝光帧率等于第一曝光帧率(即未发生变化),目标从camera模组的期望曝光帧率较第二曝光帧率发生了变化;3)主camera模组的期望曝光帧率较第一曝光帧率发生了变化,目标从camera模组的期望曝光帧率等于第二曝光帧率(即未发生变化)。
需要说明的是,关于主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率属于上面哪种情况,是由终端设备基于具体的场景信息的变化来确定的,本申请对终端设备的决策机制并不限制。
例如,假设起流阶段中的主camera模组的第一曝光帧率为30FPS,目标从camera模组的第二曝光帧率为24FPS,则起流阶段中主camera模组发出脉冲信号的延迟时间(如用“XVS delay”表示)为25ms。此时,主camera模组每2帧时长为66.66ms;目标从camera模组自身帧长为41.66ms,每帧实际间隔为66.66ms;主camera模组和目标从camera模组每帧实际生效时长一致,保持曝光时间戳一致。而当拍摄环境突然变暗,亮度很低时,假设此时目标从camera模组的感光性较差,需要超过40ms以上的曝光,此时可以保持主camera模组的帧率不变(即主camera模组的期望曝光帧率等于第一曝光帧率),并降低目标从camera模组的帧率,以满足较长曝光的需要(即目标从camera模组的期望曝光帧率小于第二曝光帧率)。如:需要将目标从camera模组的曝光帧率由24FPS降低至15FPS时,步骤601中可以确定目标从camera模组的期望曝光帧率为15FPS。
类似地,升帧的场景与降帧的场景类似,不再详细举例。
602、将主camera模组的曝光帧率调整为主camera模组的期望曝光帧率,以及将目标从camera模组的曝光帧率调整为目标从camera模组的期望曝光帧率。
603、调整其余从camera模组的曝光帧率,使其余从camera模组的曝光帧率满足:目标从camera模组的期望曝光帧率为其余从camera模组的曝光帧率的整数倍,且其余从camera模组的曝光帧率大于或等于其余从camera模组的最低曝光帧率。
步骤603中调整其余从camera模组的曝光帧率,使其余从camera模组的曝光帧率满足:目标从camera模组的期望曝光帧率为其余从camera模组的曝光帧率的整数倍的方式,可以上述步骤304中调整其余从camera模组的曝光帧率,使其余从camera模组的曝光帧率满足:第二曝光帧率为其余从camera模组的曝光帧率的整数倍的方式,不再赘述。
还应当理解,与上述步骤304类似,对于其余从camera模组的数量为0个的场景而言,本申请实施例提供的该拍摄方法中实际也不存在步骤603。
604、根据主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率,为主camera模组配置发出脉冲信号的延迟时间。
根据主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率,为主camera模组配置发出脉冲信号的延迟时间的过程,可以参考上述步骤305中根据第一曝光帧率和第二曝光帧率,为主camera模组配置发出脉冲信号的延迟时间的过程。
例如,以主camera模组的期望曝光帧率为Sm_new,目标从camera模组的期望曝光帧率为Ss_new为例,终端设备根据Sm_new和Ss_new,为主camera模组配置脉冲信号的延迟时间,可以包括:以Sm_new为基准,基于Ss_new向下降低帧率确定第一个能够整除Sm_new的帧率Ss1_new,将Ss1_new对应的帧长与Ss_new对应的帧长之间的差值(可以是差值的绝对值)配置为主camera模组发出脉冲信号的延迟时间。
例如,如上所述,当主camera模组的期望曝光帧率为30FPS,目标从camera模组的期望曝光帧率为15FPS时,终端设备可以以30FPS为基准,基于15FPS向下降低帧率确定出第一个能够整除30FPS的帧率为15FPS(本身)。此时,终端设备可以确定出Ss1_new对应的帧长与Ss_new对应的帧长之间的差值为0ms。终端设备可以配置主camera模组发出脉冲信号的延迟时间为0ms。
可选地,其他一些实现方式中,终端设备也可以以主camera模组的期望曝光帧率对应的帧长(如LSm_new)为基准,基于目标从camera模组的期望曝光帧率对应的帧长(如LSs_new)向上增大帧长确定第一个能够被LSm_new整除的帧率LSs1_new,将LSs1_new与LSs_new之间的差值(可以是差值的绝对值)配置为主camera模组发出脉冲信号的延迟时间。在此不作限制。
605、通过主camera模组和从camera模组进行拍摄,在拍摄过程中,主camera模组在每一帧的帧头对应的时刻按照发出脉冲信号的延迟时间延迟后发出脉冲信号;从camera模组根据配置的感知脉冲信号的间隔次数感知主camera模组发出的脉冲信号,并在感知到脉冲信号后开始当前帧的拍摄。
步骤605可以参考上述步骤307所述,不再赘述。
应当理解的是,步骤605中所述的发出脉冲信号的延迟时间是指步骤604中根据主camera模组的期望曝光帧率和目标从camera模组的期望曝光帧率,为主camera模组配置的发出脉冲信号的延迟时间。步骤307中所述的发出脉冲信号的延迟时间是指步骤305中根据第一曝光帧率和第二曝光帧率,为主camera模组配置的发出脉冲信号的延迟时间。
在本申请中,步骤305中为主camera模组配置的发出脉冲信号的延迟时间可以称为第一时长,步骤605中为主camera模组配置的发出脉冲信号的延迟时间可以称为第二时长。主camera模组的期望曝光帧率可以称为第四曝光帧率,目标从camera模组的期望曝光帧率可以称为第五曝光帧率。也即,本申请中,检测到拍摄场景的场景信息发生变化后,终端设备可以将第一相机模组的曝光帧率调整为第四曝光帧率,将第二相机模组的曝光帧率调整为第五曝光帧率,控制所述第一相机模组以第四曝光帧率进行拍摄,并控制第二相机模组以第五曝光帧率与所述第一相机模组进行协同拍摄。
其中,终端设备控制第一相机模组以第四曝光帧率进行拍摄,并控制第二相机模组以第五曝光帧率与第一相机模组进行协同拍摄时,第一相机模组拍摄的当前帧可以称为第三帧,第二相机模组拍摄的当前帧可以称为第四帧。也即,终端设备控制第一相机模组以第四曝光帧率进行拍摄,并控制第二相机模组以第五曝光帧率与第一相机模组进行协同拍摄,可以包括:终端设备控制第一相机模组开始拍摄第三帧,控制第二相机模组开始拍摄第四帧,其中,第四帧的开始时间比第三帧的开始时间延后第二时长,第二时长与第四曝光帧率以及第五曝光帧率相关。
第二时长与第四曝光帧率以及第五曝光帧率相关,包括:第二时长等于第六曝光帧率对应的帧长与第五曝光帧率对应的帧长之间的差值;第六曝光帧率是小于或等于第五曝光帧率、且能够整除第四曝光帧率的所有值中的最大值。如,第六曝光帧率即上述Ss1_new。
上述步骤601-605所述的过程即升降帧场景下,终端设备调整camera模组的曝光帧率后,并通过camera模组以调整后的曝光帧率进行拍摄的过程。通过步骤601-604所述的过程完成升降帧场景下的相关配置后,步骤605中在进行拍摄时,从camera模组的曝光出图仍然可以与主camera模组的曝光出图在帧尾保持同步。
也即,本申请实施例提供的拍摄方法中,针对拍摄场景的场景信息发生变化后进行升降帧的场景,仍然可以保证从camera模组的曝光出图与主camera模组的曝光出图在帧尾保持同步,从而保证升降帧场景下主camera模组和从camera模组拍摄到的图像的画面统一性,提升最终的拍摄图像的出图效果。
例如,图7为本申请实施例提供的从camera模组仅包括目标从camera模组的场景下降帧原理的示意图。如图7所示,假设某种拍摄场景下,终端设备确定了一个主camera模组和一个从camera模组(作为目标从camera模组),在起流阶段调整主camera模组的曝光帧率为30FPS,调整从camera模组的曝光帧率为24FPS,并根据30FPS和24FPS,为从camera模组配置感知脉冲信号的间隔次数为1次,以及,为主camera模组配置发出脉冲信号的延迟时间为tdelay(tdelay为25ms)。在通过主camera模组和从camera模组进行拍摄的过程中,主camera模组可以按照30FPS在每一帧的帧头(SOF)对应的时刻向后延迟tdelay后发出XVS脉冲信号,从camera模组可以对主amera模组发出的XVS脉冲信号每间隔1次、感知1次,并在每次感知到主camera模组发出的XVS脉冲信号后开始当前帧的拍摄。
当拍摄环境突然变暗,亮度很低时,假设此时从camera模组的感光性较差,需要超过40ms以上的曝光,此时保持主camera模组的帧率不变,并降低从camera模组的帧率至15FPS时,需要为主camera模组配置发出脉冲信号的延迟时间为tdelay=0ms。在通过主camera模组和从camera模组进行拍摄的过程中,主camera模组可以按照30FPS在每一帧的帧头(SOF)对应的时刻向后延迟0ms后发出XVS脉冲信号(即不延迟发出XVS脉冲信号的时间),从camera模组可以对主amera模组发出的XVS脉冲信号每间隔1次、感知1次,并在每次感知到主camera模组发出的XVS脉冲信号后开始当前帧的拍摄。
结合图7可以看到,从camera模组完成了降帧,但降帧后主camera模组和从camera模组仍然可以保持曝光出图的时间戳一致。
在本申请实施例提供的拍摄方法中,主camera模组和从camera模组进行拍摄时,对于升降帧的场景,中间只需要过渡1至2帧的图像即可达到主camera模组的期望曝光帧率和从camera模组的期望曝光帧率,使得主camera模组和从camera模组按照期望曝光帧率进行拍摄。
另外,可以理解的,对于图6所示的实施例而言,还可以包括对主camera模组和从camera模组拍摄到的图像进行融合处理,得到最终拍摄图像的步骤,不再赘述。
可选地,以上实施例中所述的调整从camera模组中除目标从camera模组之外的其余从camera模组的曝光帧率,使其余从camera模组的曝光帧率满足第二曝光帧率为其余从camera模组的曝光帧率的整数倍,也可以是指:调整从camera模组中除目标从camera模组之外的其余从camera模组的曝光帧率,使第二曝光帧率与任意一颗其余从camera模组的曝光帧率之间互成倍数比例关系,且任意两颗其余从camera模组的曝光帧率之间也互成倍数比例关系,在此不作限制。
需要说明的是,本申请前述实施例中虽然是以两颗camera模组、以及三颗camera模组分别为例进行说明,但应当理解,本申请实施例提供拍摄方法可以适用于四颗camera模组或者其他更多数量的camera模组进行协同拍摄的场景,本申请对camera模组的数量不作限制
应当理解,以上各实施例中所述仅为对本申请实施例提供的拍摄方法的示例性说明。在其他一些可能的实现方式中,以上所述的各实施例也可以删减或增加某些执行步骤,或者以上实施例中所述的部分步骤的顺序也可以进行调整,本申请对此均不作限制。
示例性地,图8为本申请实施例提供的终端设备的软件架构实现原理示意图。如图8所示,本申请实施例中,终端设备的软件架构可以包括:应用层(applications)、应用框架层(application framework)、硬件抽象层(hardware abstract layer,HAL)、内核层(kernel)、硬件驱动(driver)层。
其中,应用层可以包含多个应用,如:应用层可以包含电子邮件、短信、日历、地图、浏览器和联系人管理等系统应用,以及拍摄应用程序(如相机应用)。
本申请实施例中,终端设备根据当前拍摄场景对应的场景信息、以及终端设备配置的camera模组的能力信息,从终端设备配置的camera模组中确定(决策)适合拍摄当前拍摄场景的主camera模组和从camera模组的功能、决策主camera模组和每颗从camera模组的最低曝光帧率的功能、以及决策主camera模组和每颗从camera模组实际拍摄的曝光帧率的功能,可以在应用框架层(application framework)中实现。终端设备根据应用框架层的决策结果,配置主从camera模组的功能,以及配置主从camera模组的曝光帧率、从camera模组感知脉冲信号的间隔次数的功能,可以在硬件抽象层(HAL)中实现。内核层(kernel)可以根据硬件抽象层(HAL)的配置结果进行寄存器读写,以控制主从camera模组的曝光帧率、主camera模组发出脉冲信号的频率、从camera模组感知脉冲信号的间隔次数等。硬件驱动层可以调用相应的camera模组按照寄存器的读写逻辑实现相应的功能。如:camera模组可以包括camera模组1、camera模组2、camera模组3等。
对应于前述实施例中所述的拍摄方法,本申请实施例还提供一种拍摄装置,该装置可以应用于终端设备,用于实现前述实施例所述的拍摄方法。该装置的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块或单元。
例如,图9为本申请实施例提供的拍摄装置的结构示意图。如图9所示,该装置可以包括:配置模块901、拍摄模块902。
其中,配置模块901,用于从配置的相机模组中确定第一相机模组和第二相机模组;将第一相机模组的曝光帧率调整为第一曝光帧率,将第二相机模组的曝光帧率调整为第二曝光帧率;第一曝光帧率和第二曝光帧率不同。
拍摄模块902,用于控制第一相机模组以第一曝光帧率进行拍摄,并控制第二相机模组以第二曝光帧率与第一相机模组进行协同拍摄。
拍摄模块902,具体用于控制第一相机模组开始拍摄第一帧,控制第二相机模组开始拍摄第二帧,其中,第二帧的开始时间比第一帧的开始时间延后第一时长,第一时长与第一曝光帧率以及第二曝光帧率相关。
在一些实现方式中,第一时长与第一曝光帧率以及第二曝光帧率相关,包括:第一时长等于第三曝光帧率对应的帧长与第二曝光帧率对应的帧长之间的差值。第三曝光帧率是小于或等于第二曝光帧率、且能够整除第一曝光帧率的所有值中的最大值。
可选地,拍摄模块902,还用于控制第一相机模组在第一帧的开始时间延迟第一时长后发出第一信号;以及,控制第二相机模组根据配置的感知第一信号的间隔次数感知第一信号,响应于感知到的第一信号,控制第二相机模组开始拍摄第二帧。
可选地,配置模块901,还用于根据第一曝光帧率和第二曝光帧率,为第二相机模组配置感知第一信号的间隔次数,以及,为第一相机模组配置发出第一信号的时间为在第一帧的开始时间延迟第一时长。
在一些实现方式中,第二相机模组配置的感知第一信号的间隔次数等于第一曝光帧率除以第三曝光帧率的商减1后的值。
在一些实现方式中,配置模块901,还用于从配置的相机模组中确定第三相机模组,调整第三相机模组的曝光帧率,使第三相机模组的曝光帧率满足:第二曝光帧率为第三相机模组的曝光帧率的整数倍。拍摄模块902,还用于控制第三相机模组以调整后的曝光帧率与第一相机模组和第二相机模组进行协同拍摄。
拍摄模块902,具体用于控制第三相机模组根据配置的感知第一信号的间隔次数感知第一信号,响应于感知到的第一信号,控制第三相机模组开始拍摄当前帧。
可选地,配置模块901,还用于根据第二曝光帧率、第三相机模组的曝光帧率、以及第二相机模组配置的感知第一信号的间隔次数,为第三相机模组配置感知第一信号的间隔次数。
在一些实现方式中,第三相机模组配置的感知第一信号的间隔次数等于第二相机模组配置的感知第一信号的间隔次数加上第一值的和,第一值是第二曝光帧率除以第三相机模组的曝光帧率的商减1后的值。
在一些实现方式中,配置模块901,还用于检测到拍摄场景的场景信息发生变化,将第一相机模组的曝光帧率调整为第四曝光帧率,将第二相机模组的曝光帧率调整为第五曝光帧率。拍摄模块902,还用于控制第一相机模组以第四曝光帧率进行拍摄,并控制第二相机模组以第五曝光帧率与第一相机模组进行协同拍摄。
拍摄模块902,具体用于控制第一相机模组开始拍摄第三帧,控制第二相机模组开始拍摄第四帧,其中,第四帧的开始时间比第三帧的开始时间延后第二时长,第二时长与第四曝光帧率以及第五曝光帧率相关。
在一些实现方式中,第二时长与第四曝光帧率以及第五曝光帧率相关,包括:第二时长等于第六曝光帧率对应的帧长与第五曝光帧率对应的帧长之间的差值。第六曝光帧率是小于或等于第五曝光帧率、且能够整除第四曝光帧率的所有值中的最大值。
可选地,拍摄模块902,还用于控制第一相机模组在第三帧的开始时间延迟第二时长后发出第一信号,以及控制第二相机模组根据配置的感知第一信号的间隔次数感知第一信号,响应于感知到的第一信号,控制第二相机模组开始拍摄第四帧。
可选地,配置模块901,还用于根据第四曝光帧率和第五曝光帧率,为第一相机模组配置发出第一信号的时间为在第三帧的开始时间延迟第二时长。
可选地,第四曝光帧率小于或等于第五曝光帧率的Z倍,或者,第四曝光帧率对应的帧长的Z倍大于或等于第五曝光帧率的对应的帧长。其中,Z等于第二相机模组配置的感知第一信号的间隔次数加1后的值。
在一些实现方式中,拍摄模块902,还用于对第一帧和第二帧进行融合处理,得到第一图像。
类似地,该拍摄装置可以用于实现前述方法实施例中所述的拍摄方法的全部功能,不再一一赘述。
应当理解,该装置还可能包括用于实现前述实施例所述的拍摄方法的其他模块或单元,如:显示模块、自动曝光(auto exposure,AE)模块、控制模块等,在此并未一一示出。
应理解以上装置中单元(或称为模块)的划分仅仅是一种逻辑功能的划分,实际实现时可以全部或部分集成到一个物理实体上,也可以物理上分开。且装置中的单元可以全部以软件通过处理元件调用的形式实现;也可以全部以硬件的形式实现;还可以部分单元以软件通过处理元件调用的形式实现,部分单元以硬件的形式实现。
例如,各个单元可以为单独设立的处理元件,也可以集成在装置的某一个芯片中实现,此外,也可以以程序的形式存储于存储器中,由装置的某一个处理元件调用并执行该单元的功能。此外这些单元全部或部分可以集成在一起,也可以独立实现。这里所述的处理元件又可以称为处理器,可以是一种具有信号的处理能力的集成电路。在实现过程中,上述方法的各步骤或以上各个单元可以通过处理器元件中的硬件的集成逻辑电路实现或者以软件通过处理元件调用的形式实现。
在一个例子中,以上装置中的单元可以是被配置成实施以上方法的一个或多个集成电路,例如:一个或多个专用集成电路(application specific integrated circuit,ASIC),或,一个或多个数字信号处理器(digital signal process,DSP),或,一个或者多个现场可编辑逻辑门阵列(field programmable gate array,FPGA),或这些集成电路形式中至少两种的组合。
再如,当装置中的单元可以通过处理元件调度程序的形式实现时,该处理元件可以是通用处理器,例如中央处理器(central processing unit,CPU)或其它可以调用程序的处理器。再如,这些单元可以集成在一起,以片上系统(system-on-a-chip,SOC)的形式实现。
在一种实现中,以上装置实现以上方法中各个对应步骤的单元可以通过处理元件调度程序的形式实现。例如,该装置可以包括处理元件和存储元件,处理元件调用存储元件存储的程序,以执行以上方法实施例所述的方法。存储元件可以为与处理元件处于同一芯片上的存储元件,即片内存储元件。
在另一种实现中,用于执行以上方法的程序可以在与处理元件处于不同芯片上的存储元件,即片外存储元件。此时,处理元件从片外存储元件调用或加载程序于片内存储元件上,以调用并执行以上方法实施例所述的方法。
例如,本申请实施例还可以提供一种装置,如:电子设备。该电子设备可以包括:处理器,用于存储所述处理器可执行指令的存储器;所述处理器被配置为执行所述指令时,使得所述电子设备实现如前述实施例所述的方法。该存储器可以位于该电子设备之内,也可以位于该电子设备之外。且该处理器包括一个或多个。
示例性地,该电子设备可以是具有拍摄功能的手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等移动终端,或者,也可以是数码相机、单反相机/微单相机、运动摄像机、云台相机、无人机等专业的拍摄设备,本申请实施例对电子设备的具体类型不作限制。
在又一种实现中,该装置实现以上方法中各个步骤的单元可以是被配置成一个或多个处理元件,这里的处理元件可以为集成电路,例如:一个或多个ASIC,或,一个或多个DSP,或,一个或者多个FPGA,或者这些类集成电路的组合。这些集成电路可以集成在一起,构成芯片。
例如,本申请实施例还提供一种芯片,该芯片可以应用于上述电子设备。芯片包括一个或多个接口电路和一个或多个处理器;接口电路和处理器通过线路互联;处理器通过接口电路从电子设备的存储器接收并执行计算机指令,以实现如前述实施例所述的方法。
本申请实施例还提供一种计算机程序产品,包括计算机可读代码,当计算机可读代码在电子设备中运行时,使得电子设备实现如前述实施例所述的方法。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。
基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,如:程序。该软件产品存储在一个程序产品,如计算机可读存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
例如,本申请实施例还可以提供一种计算机可读存储介质,其上存储有计算机程序指令;当所述计算机程序指令被电子设备执行时,使得电子设备实现如前述实施例所述的方法。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。
Claims (17)
1.一种拍摄方法,其特征在于,所述方法包括:
终端设备从配置的相机模组中确定第一相机模组和第二相机模组;
所述终端设备将所述第一相机模组的曝光帧率调整为第一曝光帧率,将所述第二相机模组的曝光帧率调整为第二曝光帧率;所述第一曝光帧率和所述第二曝光帧率不同;
所述终端设备控制所述第一相机模组以所述第一曝光帧率进行拍摄,并控制所述第二相机模组以所述第二曝光帧率与所述第一相机模组进行协同拍摄;
所述终端设备控制所述第一相机模组以所述第一曝光帧率进行拍摄,并控制所述第二相机模组以所述第二曝光帧率与所述第一相机模组进行协同拍摄,包括:
所述终端设备控制所述第一相机模组开始拍摄第一帧,控制所述第二相机模组开始拍摄第二帧,其中,所述第二帧的开始时间比所述第一帧的开始时间延后第一时长,所述第一时长与所述第一曝光帧率以及所述第二曝光帧率相关。
2.根据权利要求1所述的方法,其特征在于,所述第一时长与所述第一曝光帧率以及所述第二曝光帧率相关,包括:
所述第一时长等于第三曝光帧率对应的帧长与所述第二曝光帧率对应的帧长之间的差值;所述第三曝光帧率是小于或等于所述第二曝光帧率、且能够整除所述第一曝光帧率的所有值中的最大值。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
所述终端设备控制所述第一相机模组在所述第一帧的开始时间延迟所述第一时长后发出第一信号;
所述终端设备控制所述第二相机模组开始拍摄第二帧,包括:
所述终端设备控制所述第二相机模组根据配置的感知第一信号的间隔次数感知所述第一信号;
响应于感知到的第一信号,所述终端设备控制所述第二相机模组开始拍摄第二帧。
4.根据权利要求3所述的方法,其特征在于,所述方法还包括:
所述终端设备根据所述第一曝光帧率和所述第二曝光帧率,为所述第二相机模组配置感知第一信号的间隔次数,以及,为所述第一相机模组配置发出第一信号的时间为在所述第一帧的开始时间延迟所述第一时长。
5.根据权利要求3或4所述的方法,其特征在于,所述第二相机模组配置的感知第一信号的间隔次数等于所述第一曝光帧率除以所述第三曝光帧率的商减1后的值。
6.根据权利要求3-5任一项所述的方法,其特征在于,所述方法还包括:
所述终端设备从配置的相机模组中确定第三相机模组;
所述终端设备调整所述第三相机模组的曝光帧率,使所述第三相机模组的曝光帧率满足:所述第二曝光帧率为所述第三相机模组的曝光帧率的整数倍;
所述终端设备控制所述第三相机模组以调整后的曝光帧率与所述第一相机模组和所述第二相机模组进行协同拍摄;
所述终端设备控制所述第三相机模组以调整后的曝光帧率与所述第一相机模组和所述第二相机模组进行协同拍摄,包括:
所述终端设备控制所述第三相机模组根据配置的感知第一信号的间隔次数感知所述第一信号;
响应于感知到的第一信号,所述终端设备控制所述第三相机模组开始拍摄当前帧。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
所述终端设备根据所述第二曝光帧率、所述第三相机模组的曝光帧率、以及所述第二相机模组配置的感知第一信号的间隔次数,为所述第三相机模组配置感知第一信号的间隔次数。
8.根据权利要求6或7所述的方法,其特征在于,所述第三相机模组配置的感知第一信号的间隔次数等于所述第二相机模组配置的感知第一信号的间隔次数加上第一值的和,所述第一值是所述第二曝光帧率除以所述第三相机模组的曝光帧率的商减1后的值。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述方法还包括:
检测到拍摄场景的场景信息发生变化,所述终端设备将所述第一相机模组的曝光帧率调整为第四曝光帧率,将所述第二相机模组的曝光帧率调整为第五曝光帧率;
所述终端设备控制所述第一相机模组以所述第四曝光帧率进行拍摄,并控制所述第二相机模组以所述第五曝光帧率与所述第一相机模组进行协同拍摄;
所述终端设备控制所述第一相机模组以所述第四曝光帧率进行拍摄,并控制所述第二相机模组以所述第五曝光帧率与所述第一相机模组进行协同拍摄,包括:
所述终端设备控制所述第一相机模组开始拍摄第三帧,控制所述第二相机模组开始拍摄第四帧,其中,所述第四帧的开始时间比所述第三帧的开始时间延后第二时长,所述第二时长与所述第四曝光帧率以及所述第五曝光帧率相关。
10.根据权利要求9所述的方法,其特征在于,所述第二时长与所述第四曝光帧率以及所述第五曝光帧率相关,包括:
所述第二时长等于第六曝光帧率对应的帧长与所述第五曝光帧率对应的帧长之间的差值;所述第六曝光帧率是小于或等于所述第五曝光帧率、且能够整除所述第四曝光帧率的所有值中的最大值。
11.根据权利要求10所述的方法,其特征在于,所述方法还包括:
所述终端设备控制所述第一相机模组在所述第三帧的开始时间延迟所述第二时长后发出第一信号;
所述终端设备控制所述第二相机模组开始拍摄第四帧,包括:
所述终端设备控制所述第二相机模组根据配置的感知第一信号的间隔次数感知所述第一信号;
响应于感知到的第一信号,所述终端设备控制所述第二相机模组开始拍摄第四帧。
12.根据权利要求11所述的方法,其特征在于,所述方法还包括:
所述终端设备根据所述第四曝光帧率和所述第五曝光帧率,为所述第一相机模组配置发出第一信号的时间为在所述第三帧的开始时间延迟所述第二时长。
13.根据权利要求9-12任一项所述的方法,其特征在于,所述第四曝光帧率小于或等于所述第五曝光帧率的Z倍,或者,所述第四曝光帧率对应的帧长的Z倍大于或等于所述第五曝光帧率的对应的帧长;
其中,Z等于所述第二相机模组配置的感知第一信号的间隔次数加1后的值。
14.根据权利要求1-13任一项所述的方法,其特征在于,所述方法还包括:
所述终端设备对所述第一帧和所述第二帧进行融合处理,得到第一图像。
15.一种拍摄装置,其特征在于,所述装置包括:
配置模块,用于从配置的相机模组中确定第一相机模组和第二相机模组;将所述第一相机模组的曝光帧率调整为第一曝光帧率,将所述第二相机模组的曝光帧率调整为第二曝光帧率;所述第一曝光帧率和所述第二曝光帧率不同;
拍摄模块,用于控制所述第一相机模组以所述第一曝光帧率进行拍摄,并控制所述第二相机模组以所述第二曝光帧率与所述第一相机模组进行协同拍摄;
所述拍摄模块,具体用于控制所述第一相机模组开始拍摄第一帧,控制所述第二相机模组开始拍摄第二帧,其中,所述第二帧的开始时间比所述第一帧的开始时间延后第一时长,所述第一时长与所述第一曝光帧率以及所述第二曝光帧率相关。
16.一种电子设备,其特征在于,包括:处理器,用于存储所述处理器可执行指令的存储器;
所述处理器被配置为执行所述指令时,使得所述电子设备实现如权利要求1-14任一项所述的方法。
17.一种计算机可读存储介质,其上存储有计算机程序指令;其特征在于,
当所述计算机程序指令被电子设备执行时,使得电子设备实现如权利要求1-14任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/CN2022/135998 WO2023103885A1 (zh) | 2021-12-08 | 2022-12-01 | 拍摄方法、装置、设备及存储介质 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111491363 | 2021-12-08 | ||
CN2021114913636 | 2021-12-08 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116261041A true CN116261041A (zh) | 2023-06-13 |
Family
ID=86684990
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210259157.0A Pending CN116261041A (zh) | 2021-12-08 | 2022-03-16 | 拍摄方法、装置、设备及存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN116261041A (zh) |
WO (1) | WO2023103885A1 (zh) |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10057499B1 (en) * | 2017-02-21 | 2018-08-21 | Motorola Mobility Llc | Automatic exposure control convergence procedure by auxiliary camera |
CN107147837A (zh) * | 2017-06-30 | 2017-09-08 | 维沃移动通信有限公司 | 一种拍摄参数的设置方法和移动终端 |
CN108900779B (zh) * | 2018-06-28 | 2020-10-16 | 努比亚技术有限公司 | 初始自动曝光收敛方法、移动终端及计算机可读存储介质 |
CN108965732B (zh) * | 2018-08-22 | 2020-04-14 | Oppo广东移动通信有限公司 | 图像处理方法、装置、计算机可读存储介质和电子设备 |
-
2022
- 2022-03-16 CN CN202210259157.0A patent/CN116261041A/zh active Pending
- 2022-12-01 WO PCT/CN2022/135998 patent/WO2023103885A1/zh active Application Filing
Also Published As
Publication number | Publication date |
---|---|
WO2023103885A1 (zh) | 2023-06-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2019241111B2 (en) | Shooting method, apparatus, and device | |
WO2022262260A1 (zh) | 一种拍摄方法及电子设备 | |
CN110505411B (zh) | 图像拍摄方法、装置、存储介质及电子设备 | |
CN111212235B (zh) | 一种长焦拍摄的方法及电子设备 | |
US9723191B2 (en) | RAW camera peripheral with handheld mobile unit for processing RAW image data | |
US11532076B2 (en) | Image processing method, electronic device and storage medium | |
WO2022262344A1 (zh) | 一种拍摄方法及电子设备 | |
WO2015025740A1 (ja) | 制御装置、制御方法、および電子機器 | |
CN108419008B (zh) | 一种拍摄方法、终端及计算机可读存储介质 | |
WO2022252780A1 (zh) | 拍摄方法及电子设备 | |
EP4376433A1 (en) | Camera switching method and electronic device | |
WO2023077939A1 (zh) | 摄像头的切换方法、装置、电子设备及存储介质 | |
CN113630558B (zh) | 一种摄像曝光方法及电子设备 | |
WO2024093432A1 (zh) | 拍摄帧率控制方法、电子设备、芯片系统及可读存储介质 | |
CN116668862B (zh) | 图像处理方法与电子设备 | |
CN115767262B (zh) | 拍照方法及电子设备 | |
CN113497880A (zh) | 一种拍摄图像的方法及电子设备 | |
CN116048323B (zh) | 图像处理方法及电子设备 | |
CN117651221A (zh) | 视频处理的方法及电子设备 | |
CN116261041A (zh) | 拍摄方法、装置、设备及存储介质 | |
WO2023273836A1 (zh) | 拍摄方法、装置、设备及存储介质 | |
CN116055855B (zh) | 图像处理方法及其相关设备 | |
WO2023160220A1 (zh) | 一种图像处理方法和电子设备 | |
EP4287607A1 (en) | Image processing method and electronic device | |
CN116051368B (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 |