一种录像方法及电子设备
技术领域
本申请涉及电子技术领域,尤其涉及一种录像方法及电子设备。
背景技术
在进行视频播放时,若手机等电子设备每秒播放的帧数小于视频录制时每秒录制的帧数,则会有慢动作的播放效果。例如,如果以30帧/秒(frames per second,fps)的播放帧率播放视频,那么若电子设备以60fps的录像帧率录制视频,则会有2倍的慢动作播放效果;若电子设备以120fps的录像帧率录制视频,则会有4倍的慢动作播放效果。
人眼对高速运动物体的分辨能力有限,慢动作视频有助于人们看清楚高速运动过程的运动细节。录制视频时的录像帧率越高,慢动作播放效果越好,人眼越容易看清具体的运动细节。
目前,手机等电子设备中,图像传感器支持的最大帧率为通常较低,例如为30fps、60fps、120fps或240fps等,电子设备的录像帧率也为30fps、60fps、120fps或240fps,通常不能满足人们希望分辨高速运动过程的需求。例如,参见图1所示的播放效果图,当采用240fps的录像帧率录制水滴下落过程的视频,采用30fps的播放帧率播放视频时,用户仍然难以看清水滴落到水面的反弹过程或者落到水面时溅起的小水珠的运动细节。
发明内容
本申请实施例提供一种录像方法及电子设备,能够使得录像帧率大于图像传感器硬件支持的最大帧率,提高用户录制慢动作视频的体验。
为达到上述目的,本申请实施例采用如下技术方案:
一方面,本申请实施例提供了一种录像方法,可以应用于具有图像传感器的电子设备,包括:电子设备首先打开相机,而后显示录像预览界面,并在检测到用户的录像指示后录制视频。其中,该视频的录像帧率大于原始帧率,该原始帧率为录像时图像传感器硬件支持的最大帧率。并且,该视频包括慢动作类型的视频。在该方案中,电子设备的录像帧率可以大于图像传感器硬件支持的最大录像帧率,也就是说电子设备的录像帧率可以更高,电子设备录制的视频中的慢动作视频能够更好地满足用户分辨高速运动过程的需求。
在一种可能的设计中,视频还包括快动作类型的视频或常速类型的视频中的至少一种;视频的录像帧率为慢动作类型的视频的录像帧率、慢动作类型的视频的录像帧率和慢动作类型的视频的录像帧率中的最大值或平均值。在该方案中,当该视频为不同类型的视频的组合时,该视频播放的动作时快时慢,可以给用户以视觉上的强烈冲击,提高用户的震撼感和录制体验。
在另一种可能的设计中,视频的长度为预设长度,视频的格式为预设格式,格式包括视频类型和视频类型对应的视频在视频中的位置,视频类型包括慢动作视频、常速视频或快动作视频中的至少一种。当电子设备录制的视频始终具有同一的、固定的格式时,可以提高该类电子设备或该型号的电子设备的辨识度和标识性。
在另一种可能的设计中,在录制视频之前,该方法还包括:在预览状态下,电子设备根据原始帧率采集原始视频帧,并且,电子设备缓存最近T时间内采集的原始视频帧,T为预设长度。电子设备录制视频具体包括:电子设备根据缓存的原始视频帧以及预设格式生成视频。在该方案中,电子设备可以提前一段时间缓存原始视频帧,并根据缓存的原始视频帧生成视频,以便于能够更有效地记录用户想要慢动作播放的高速运动过程。
在另一种可能的设计中,电子设备录制视频,具体包括:电子设备录制第一视频类型的视频。在电子设备检测到第二视频类型指示后,切换为录制第二视频类型的视频,第一视频类型或第二视频类型为慢动作视频类型。在该方案中,用户可以实时控制当前录制视频的类型和格式。
在另一种可能的设计中,电子设备录制视频还包括:在检测到用户的暂停指示后,电子设备暂停录制视频;在检测到用户的继续录像指示后,电子设备继续录制视频;在检测到用户的停止指示后,电子设备停止录制视频。在该方案中,用户可以实时控制当前录制视频的时长。
在另一种可能的设计中,该方法还包括:电子设备保存视频;电子设备在检测到用户的参数信息指示后,显示视频的参数信息。其中,该参数信息包括视频的录像帧率。这样,可以便于用户了解所录制的视频对应的录像帧率。
在另一种可能的设计中,电子设备录制视频包括:电子设备根据原始帧率采集原始视频帧;在不同原始视频帧之间插入至少一个新的视频帧;电子设备根据原始视频帧以及新的视频帧生成视频。也就是说,电子设备可以通过插帧来提高录像帧率。
在另一种可能的设计中,当待录制视频为慢动作类型时,电子设备录制慢动作类型视频,具体可以包括:电子设备根据原始视频帧采集原始视频帧;电子设备在相邻两个原始视频帧之间插入n个新的视频帧,n为正整数;电子设备根据原始视频帧以及新的视频帧生成慢动作类型视频。在需要录制慢动作类型的视频时,电子设备可以通过插帧来提高录像帧率,从而提高慢动作视频的播放效果。
在另一种可能的设计中,电子设备在相邻两个原始视频帧之间插入n个新的视频帧,n为正整数,具体包括:电子设备将相邻两个原始视频帧中的第一原始视频帧和第二原始视频帧分别划分为q个图像块,q为正整数。然后,电子设备在第二原始视频帧上与第一原始视频帧的图像块i对应位置的预设范围内,搜索与图像块i的残差值最小的图像块j,图像块j为与图像块i匹配的图像块。其中,i为1至q之间的整数,j为正整数;电子设备根据第二原始视频帧上与第一原始视频帧上相匹配的图像块的位置确定图像块的运动矢量。之后,电子设备根据图像块的运动矢量确定待插入的n个新的视频帧中图像块的位置。而后,电子设备根据待插入的n个新的视频帧中图像块的位置,生成待插入的n个新的视频帧。然后,电子设备将生成的n个新的视频帧插入第一原始视频帧和第二原始视频帧之间。在该方案中,电子设备可以通过相匹配的图像块准确地确定运动矢量,并根据运动矢量生成待插入的视频帧,从而以软件的方式插入新的视频帧,可以节省成本,且易于维护。
另一方面,本申请实施例提供了一种录像方法,包括:首先,电子设备打开相机。而后,电子设备显示录像预览界面。在预览状态下,电子设备根据原始帧率采集原始视频帧。在检测到用户的录像指示后,电子设备根据缓存的原始视频帧以及预设格式生成视频。其中,视频的录像帧率大于原始帧率,原始帧率为录像时图像传感器硬件支持的最大帧率,视频包括慢动作类型的视频。并且,视频的长度为预设长度,视频的格式为预设格式,格式包括视频类型和视频类型对应的视频在视频中的位置,视频类型包括慢动作视频、常速视频或快动作视频中的至少一种。
另一方面,本申请实施例提供了一种电子设备,电子设备包括图像传感器,该电子设备还包括:开启单元,用于打开相机;显示单元,用于显示录像预览界面;录制单元,在检测到用户的录像指示后录制视频,视频的录像帧率大于原始帧率,原始帧率为录像时图像传感器硬件支持的最大帧率,视频包括慢动作类型的视频。
在一种可能的设计中,视频还包括快动作类型的视频或常速类型的视频中的至少一种。视频的录像帧率为慢动作类型的视频的录像帧率、慢动作类型的视频的录像帧率和慢动作类型的视频的录像帧率中的最大值或平均值。
在另一种可能的设计中,视频的长度为预设长度,视频的格式为预设格式,格式包括视频类型和视频类型对应的视频在视频中的位置,视频类型包括慢动作视频、常速视频或快动作视频中的至少一种。
在另一种可能的设计中,录制单元具体用于:在录制视频之前,在预览状态下,根据原始帧率采集原始视频帧;缓存最近T时间内采集的原始视频帧,T为预设长度;根据缓存的原始视频帧以及预设格式生成视频。
在另一种可能的设计中,录制单元具体用于:录制第一视频类型的视频;在检测到第二视频类型指示后,切换为录制第二视频类型的视频,第一视频类型或第二视频类型为慢动作视频类型。
在另一种可能的设计中,录制单元具体用于:在检测到用户的暂停指示后,暂停录制视频;在检测到用户的继续录像指示后,继续录制视频;在检测到用户的停止指示后,停止录制视频。
在另一种可能的设计中,电子设备还包括:保存单元,用于在录制单元录制视频之后保存视频;显示单元还用于,在检测到用户的参数信息指示后,显示视频的参数信息,参数信息包括视频的录像帧率。
在另一种可能的设计中,录制单元具体用于:根据原始帧率采集原始视频帧;在不同原始视频帧之间插入至少一个新的视频帧;根据原始视频帧以及新的视频帧生成视频。
另一方面,本申请实施例提供了一种电子设备,包括一个或多个处理器和一个或多个存储器。该一个或多个存储器与一个或多个处理器耦合,一个或多个存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,使得电子设备执行上述任一方面任一项可能的设计中的录像方法。
另一方面,本申请实施例提供了一种计算机存储介质,包括计算机指令,当计算机指令在电子设备上运行时,使得电子设备执行上述任一方面任一项可能的设计中的录像方法。
另一方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述任一方面任一项可能的设计中的录像方法。
附图说明
图1为现有技术中的慢动作视频播放效果示意图;
图2为本申请实施例提供的一种手机的硬件结构示意图;
图3为本申请实施例提供的一种录像方法流程图;
图4为本申请实施例提供的一种录像过程示意图;
图5为本申请实施例提供的另一种录像过程示意图;
图6为本申请实施例提供的一种慢动作视频播放效果示意图;
图7为本申请实施例提供的慢动作、常速与快动作视频对比图;
图8-1为本申请实施例提供的另一种录像过程示意图;
图8-2为本申请实施例提供的另一种录像过程示意图;
图8-3为本申请实施例提供的另一种录像过程示意图;
图9为本申请实施例提供的另一种录像过程示意图;
图10-1为本申请实施例提供的另一种录像过程示意图;
图10-2为本申请实施例提供的另一种录像过程示意图;
图11-1为本申请实施例提供的一种设置界面示意图;
图11-2为本申请实施例提供的另一种设置界面示意图;
图12为本申请实施例提供的另一种录像过程示意图;
图13为本申请实施例提供的另一种录像过程示意图;
图14-1为本申请实施例提供的另一种录像过程示意图;
图14-2为本申请实施例提供的另一种录像过程示意图;
图15为本申请实施例提供的另一种设置界面示意图;
图16-1为本申请实施例提供的一种播放过程示意图;
图16-2为本申请实施例提供的一种播放过程示意图;
图17-1为本申请实施例提供的一种参数信息显示示意图;
图17-2为本申请实施例提供的另一种参数信息显示示意图;
图18为本申请实施例提供的另一种录像方法流程图;
图19为本申请实施例提供的一种下采样过程示意图;
图20为本申请实施例提供的一种运动矢量计算过程示意图;
图21为本申请实施例提供的两种运动矢量场示意图;
图22为本申请实施例提供的一种插帧效果示意图;
图23为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了便于理解,示例的给出了部分与本申请实施例相关概念的说明以供参考。如下所示:
原始帧率:在进行视频录制时,图像传感器的硬件支持的单位时间内可以采集的最大视频帧的数量。
录像帧率:电子设备在单位时间内录制的视频帧的数量。在本申请实施例中,当存在插帧时,录像帧率为插帧后单位时间内的总的视频帧的数量,大于原始帧率。
播放帧率:在进行视频播放时,电子设备每秒播放的视频帧的数量。
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行描述。其中,在本申请实施例的描述中,除非另有说明,“/”表示或的意思,例如,A/B可以表示A或B;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,在本申请实施例的描述中,“多个”是指两个或多于两个。
本申请实施例提供的录像方法可以应用于手机、平板电脑、可穿戴设备、车载设备、增强现实(augmented reality,AR)/虚拟现实(virtual reality,VR)设备、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本、个人数字助理(personal digital assistant,PDA)等任意可以通过摄像头进行视频录制的电子设备上,本申请实施例对此不作任何限制。
以本申请实施例中的电子设备为手机为例,对手机的通用硬件架构进行说明。如图2所示,手机200可以包括:通信模块220、存储器230、传感器模块240、输入设备250、显示屏260、音频模块280、处理器210、相机模块291、电源管理模块295等。这些部件之间可以以总线连接,也可以直连连接。本领域技术人员可以理解,图2中示出的手机结构并不构成对手机的限定,可以包括比图2更多的部件,或者组合某些部件,或者不同的部件布置。
其中,相机模块291可以用于通过摄像头采集图像,从而进行拍照、录像、视频聊天、视频会议、扫描二维码/条码以及面部信息识别等。其中,录像可以包括慢镜头录像、正常速度录像或快镜头录像等。
通信模块220用于与其它网络实体进行通信,例如从服务器接收信息或向服务器发送相关数据等。通信模块220可以包括射频(radio frequency,RF)模块229、蜂窝模块221、无线保真(wireless fidelity,WIFI)模块223、以及GPS模块227等。RF模块229可以用于收发信息或通话过程中,信号的接收和发送,特别地,将接收到的信息给处理器210处理;另外,将处理器210生成的信号发送出去。通常,RF电路21可以包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器(low noise amplifier,LNA)、双工器等。此外,RF电路21还可以通过无线通信与网络和其他设备通信。蜂窝模块221和WIFI模块223可以用于连接网络。GPS模块可以用于进行定位或导航。
处理器210是手机200的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器230内的软件程序和/或模块,以及调用存储在存储器230内的数据,执行手机200的各种功能和处理数据,从而对手机200进行整体监控。在具体实现中,作为一种实施例,处理器210可包括一个或多个处理单元。
存储器230可用于存储数据、软件程序以及模块,可以是易失性存储器(volatilememory),例如随机存取存储器(random-access memory,RAM);或者非易失性存储器(non-volatile memory),例如只读存储器(read-only memory,ROM),快闪存储器(flashmemory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);或者上述种类的存储器的组合。具体的,存储器230内可存储程序代码,该程序代码用于使处理器210通过执行该程序代码,执行本申请实施例提供的提示信息显示方法。存储器230可以包括内部存储器232和外部存储器234。
传感器模块240可以包括手势传感器240A、陀螺仪传感器240B、气压传感器240C、磁传感器240D和加速度传感器240E等,可以用于检测手机在各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如手机倾斜的角度、正面朝上、侧面朝上、横竖屏切换、相关游戏、磁力计姿态校准或运动)、振动识别相关功能(比如计步器、敲击或运动)等。需要说明的是,手机200还可以包括其它传感器,比如握力传感器(可以用于检测手机是否为手持状态)、接近传感器(可以利用位移传感器对接近的物体具有敏感特性来识别物体的接近)、RGB传感器、生物特征传感器、温度/湿度传感器、光传感器(可以用于检测手机是否在口袋、包里等)或UV传感器等,在此不再赘述。
输入设备250可以包括触控面板(touch panel,TP)252、笔传感器254、按键256、超声输入设备258以及输入感测模块259等,用于实现手机200的输入和输出功能。
显示屏260可以包括显示面板262、全息设备264、以及投影仪266等设备。其中,显示面板262可以用于在手机上显示图形用户界面(graphical user interface,GUI),图形用户界面上包括各种应用图标(icon)、服务图标、组件(widget)或标识等。具体的,显示屏260可以是具有触摸功能的LCD或OLED屏幕等。
其中,触控面板252和显示面板262还可以称为触摸显示屏幕,触摸显示屏幕可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触摸显示屏幕上或在触摸显示屏幕附近的操作),并根据预先设定的程式驱动相应的连接装置。还可用于显示由用户输入的信息或提供给用户的信息(如通过摄像头采集到的图像)以及手机的各种菜单。例如,可以采用电阻式、电容式、红外光感以及超声波等多种类型实现触摸显示屏幕,本发明实施例对此不进行限定。
其中,用户在触摸显示屏幕附近的操作可以称之为悬浮触控,能够进行悬浮触控的触摸显示屏幕可以采用电容式、红外光感以及超声波等实现。例如,当手指等目标靠近或远离电容式触摸显示屏幕时,触摸显示屏幕中的自电容和互电容的电流会随之发生变化,从而使得电子设备可以检测到悬浮测控。再例如,红外光感触摸显示屏幕可以利用红外LED和红外发光二极管发射光线,手机通过检测用户手指等目标反射回的屏幕光线,实现悬浮手势的识别和追踪。
音频模块280可以包括扬声器282、接收机284、耳机286或麦克风288等,用户采集或播放音频信号。
电源管理模块295,可以包括电池296,用于通过电源管理系统与处理器210逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。
此外,手机200还可以包括用户识别模块、指示器、电机等功能模块,在此不再一一赘述。
以下将通过具体实施例对本申请提供的录像方法进行详细描述。
参见图3,本申请实施例提供一种录像方法,可以应用于具有图像传感器的电子设备,该方法可以包括:
301、电子设备打开相机。
用户在需要录像时,可以指示电子设备打开相机。例如,用户可以通过点击相机图标来指示电子设备打开相机,或者用户可以通过语音方式指示电子设备打开相机,或者用户可以在黑屏状态下在屏幕上画“C”形轨迹来指示电子设备打开相机等,本申请实施例对电子设备打开相机的触发方式不予限定。
302、电子设备显示录像预览界面。
示例性的,参见图4,若打开相机后电子设备直接进入拍照模式或其它非录像模式,则用户可以指示切换到录像模式,此时电子设备打开录像预览界面110。
示例性的,参见图5,若打开相机后电子设备直接进入录像模式(例如电子设备打开相机后默认为录像模式,或者用户上次使用相机时为录像模式),则电子设备直接打开录像预览界面110。在录像预览界面,用户可以预览待拍摄对象。
303、电子设备在检测到用户的录像指示后录制视频,视频的录像帧率大于原始帧率,该原始帧率为录像时图像传感器硬件支持的最大帧率,该视频包括慢动作类型的视频。
电子设备在检测到用户的录像指示后开始录制视频,该录像指示可以有多种形式,例如可以是语音指示,也可以是用户点击如图4或图5的录制按钮120的指示等,本申请实施例对此不予具体限定。
在本申请实施例中,视频的录像帧率大于原始帧率,也就是说电子设备的录像帧率不受电子设备中图像传感器硬件能力的限制。举例来说,若电子设备采用的图像传感器硬件支持的最大帧率为240fps,则电子设备录制视频时的实际录像帧率可以大于240fps。
具体的,电子设备中采用的图像传感器硬件可支持的最大帧率,可以根据图像传感器的型号、数据手册以及规格参数等获知。电子设备录制的视频整体的平均录像帧率,以及该视频各时间段内实际的录像帧率可以通过测试获得。
在录制慢动作视频时,录像帧率越高,则电子设备在单位时间内录制的视频帧数越多,视频帧上呈现的运动细节也越多,不同视频帧上图像细节之间的跳跃性越小;在播放帧率相同的条件下,录像帧率越高则播放时长越长,用户也就有更为充足的时间看清高速运动中的更多运动细节。
因而,在本申请实施例中,当电子设备的录像帧率大于图像传感器硬件支持的最大录像帧率时,电子设备的录像帧率可以更高,电子设备录制的视频中的慢动作视频能够更好地满足用户分辨高速运动过程的需求。
举例来说,在录制水滴下落后反弹的过程时,实际碰撞和反弹时间是在一瞬间(例如仅为0.1秒(s))发生的。若采用现有技术录制频率为240tps,播放帧率为30tps,则正常0.1s内发生的运动过程在0.8s内播放,慢动作播放效果示意图可以参见上述图1;在本申请实施例中,若录像帧率大于为240tps,例如为960tps,则0.1s内发生的运动过程在3.2s内播放。示例性的,采用本申请实施例提供的录像方法录制的慢动作视频的播放效果示意图可以参见图6。对比图6和图1可知,图6可以使得用户更为清楚地看到水滴下落时碰撞并反弹的运动细节。
在本申请实施例提供的录像方法中,电子设备的录像帧率大于图像传感器硬件支持的最大帧率相当于扩展了图像传感器本身具有的录像能力,当电子设备采用硬件配置较低的图像传感器(例如原始帧率为30fps或60fps的图像传感器)时,也可以将录像帧率提高到960tps或更高,从而可以满足用户对慢动作视频录像的需求,提高用户的录像体验。
此外,现有技术中还存在一种三层式图像传感器,在成像区域(pixel section)和处理回路(circuit section)之间还包括一层动态随机存取存储器(dynamic randomaccess memory,DRAM),该DRAM可以用于暂存录制的影像数据,使得图像传感器在单位时间内能够处理更多的图像帧,从而使得三层式图像传感器硬件支持的最大帧率可以达到960fps。然而,即使电子设备采用该种高硬件配置的三层式图像传感器,也仅能使得电子设备的录像帧率为图像传感器硬件支持的最大帧率,而不会超过图像传感器硬件支持的最大帧率。并且,由于受DRAM存储能力的局限,采用该种特殊的三层式图像传感器的电子设备的录像时间短(例如仅能录制0.2秒),分辨率低(例如仅为720p),很难满足用户的录像需求。
而在本申请实施例中,电子设备的录像帧率不仅可以大于图像传感器硬件支持的最大帧率,而且不需要考虑硬件DRAM存储能力的局限,录像时长和分辨率都不受限制(例如,录像时长可以为十几分钟或更长,分辨率可以为1080p或更高),不包括DRAM的普通图像传感器也可以适用。
其中,在录制视频时,电子设备可以首先根据原始帧率录制原始视频帧,而后根据原始视频帧在相邻原始视频帧之间进行插帧,从而使得录像帧率高于原始帧率。具体的,电子设备在录制慢动作类型的视频时,可以通过插帧提高录像帧率;而在录制非慢动作类型的视频时,则不进行插帧处理,采用原始帧率进行视频录制。
在本申请实施例中,电子设备录制的视频除了可以包括慢动作类型的视频以外,还可以包括快动作类型的视频或常速类型的视频等中的至少一种。其中,快动作类型还可以包括缩时摄影(或延时摄影)。也就是说,电子设备录制的视频可以是不同视频类型的视频的组合。
参见图7,慢动作类型视频可以理解为T1时间段内采集的视频帧在T2时间段内播放,且T1<T2;与慢动作视频类型相对应,快动作类型视频可以理解为T1时间段内采集的视频帧在T3时间段内播放,且T1>T3。常速类型的视频是指按照正常的时间关系进行录制和播放,可以理解为T1时间段内采集的视频帧在T1时间段内播放。其中,在录制快动作类型的视频时,电子设备可以将根据原始帧率采集到的原始视频帧进行等间隔抽帧处理,从而根据抽帧后的视频帧生成快动作类型的视频。
需要说明的是,当该视频为不同类型的视频的组合时,该视频播放的动作时快时慢,可以给用户以视觉上的强烈冲击,提高用户的震撼感和录制体验。
对于视频的录像帧率来说,当所录制的视频仅包括慢动作类型的视频时,该视频整个为慢动作视频,该视频的录像帧率为慢动作类型视频的视频帧率,慢动作类型视频的视频帧率大于原始帧率。当所录制的视频包括慢动作类型的视频以外的其它类型的视频时,该视频的帧率可以为不同类型的视频分别对应的录像帧率中的最大值,或者为不同类型的视频分别对应的录像帧率的平均值。具体的,不同类型的视频分别对应的录像帧率中的最大值为慢动作类型的视频对应的录像帧率。
由于本申请实施例中的视频包括慢动作视频,与常规的常速录像模式不同,因而电子设备的录像模式可以包括多种。例如,参见图8-1,录像模式具体可以包括第一录像模式和第二录像模式,第一录像模式用于录制常规的常速视频;当用户选择第二录像模式时,电子设备通过本申请实施例提供的方法进行视频录制,且录像帧率大于原始帧率。再例如,参见图8-2,在录像模式下,用户可以点击设置按钮,从而打开与录像相关的各项设置,并从多种具体的录像模式中选择一种。示例性的,当用户选择超级录像模式(或超级慢动作录像模式)时,进入超级录像模式的录像预览界面,电子设备通过本申请实施例提供的方法进行视频录制,且录像帧率大于原始帧率。再例如,参见图8-3,在打开相机后的非录像模式下,用户也可以点击设置按钮,从而打开与拍照和录像相关的各项设置,并从多种具体的录像模式中选择超级录像模式,进入超级录像模式的录像预览界面,并通过本申请实施例提供的方法进行视频录制。
在一种可能的设计中,电子设备录制的视频的时长可以为预设时长,该预设长度可以是电子设备出厂时预设的,也可以是用户预设的。当该视频为预设长度时,用户只需要触发录像指示,而不需触发停止指示就可以自动完成视频的录制,因而可以减少用户的手动操作,给用户以智能录制的较好体验。在该设计中,示例性的,参见图9,电子设备上可以仅包括录制按钮而不包括暂停按钮和停止按钮。
其中,该预设长度可以较短,例如可以小于或者等于1分钟,以满足用户自动录制短视频的需求。并且,由于某些分享平台对视频时长有限制(例如微信要求的视频时长不应超过10s),当该视频为预设长度时,该预设长度可以小于或者等于分享平台的时长限制,这样可以方便用户上传和分享该视频。
在一种可能的实施方式中,在上述步骤303中,电子设备可以根据缓存的原始视频帧生成视频。在步骤303之前,在预览状态下,电子设备还可以根据原始帧率采集原始视频帧,并缓存最近T时间内采集的原始视频帧。
由于从用户发现自己想要录制一个运动过程到用户触发录像指示之间存在时间差,当用户触发慢动作类型指示时,待拍摄的运动过程可能已经开始了一段时间,尤其是当该运动过程为高速运动过程时,待拍摄的运动过程可能已经结束了,因而电子设备可以提前一段时间T缓存原始视频帧,并根据缓存的原始视频帧生成视频,以便于能够更有效地记录用户想要慢动作播放的高速运动过程。电子设备提前一段时间缓存视频帧的方式在录制瞬时高速运动的物体时更能提高用户的使用体验。其中,当电子设备视频的长度为预设长度时,T可以为该预设长度。
示例性的,该种实现方式对应的录制过程示意图可以参见图10-1和图10-2。需要说明的是,由于用户在图10-1和图10-2中的(b)中点击录制按钮指示录制视频后,电子设备根据缓存的原始视频帧以及预设格式生成视频需要一定的时间,因而参见图10-1和图10-2中的(c),电子设备可能不会在电子设备点击录制按钮后立即生成视频并在130位置显示生成的视频,参见图10-1和图10-2中的(d),稍等片刻后电子设备才会在区域130处显示生成的视频,以提示用户视频已录制完成。并且,参见图10-1和图10-2中的(a),由于需要提前缓存原始视频帧,因而在预览状态下,电子设备需要对准被拍摄对象以实时进行图像采集。
此外,在图10-2中,当用户点击超级录像模式右边的关闭标记140时,电子设备可以退出超级录像模式,回到常规录像模式或拍照模式。在图10-2中,当用户点击录像按钮右边的关闭标记150时,电子设备可以取消对当前视频的录制。
另外,在本申请实施例中,电子设备录制的视频可以具有多种不同的格式,该格式内容可以包括视频类型和视频类型对应的视频在视频中的位置,该视频类型包括慢动作视频、常速视频或快动作视频中的至少一种。示例性的,格式具体可以参见如下表1。
在一种可能的实现方式中,电子设备录制的视频的格式可以为预设格式。当电子设备录制的视频始终具有同一的、固定的格式时,可以提高该类电子设备或该型号的电子设备的辨识度和标识性。
表1
在上述表1中,不同格式中的t1、t2、t3、t4以及时间片的大小可以根据实际需要进行设置。
当电子设备视频的长度为预设长度,视频的格式为预设格式时,电子设备可以在用户触发录像指示后自动生成标识性较强且便于分享的视频。
并且,当电子设备视频的长度为预设长度,视频的格式为预设格式时,在步骤303中录制视频之前,在预览状态下,电子设备可以根据原始帧率采集原始视频帧,并缓存最近预设长度T时间内采集的原始视频帧。在步骤303中,电子设备可以根据缓存的原始视频帧以及预设格式,生成具有预设长度和预设格式的视频。示例性的,该录制过程示意图也可以参见图10-1或图10-2。
在其它的实现方式中,参见图11-1,在录制视频前,用户可以打开设置界面,从多个视频的待选格式中选择一个待录制的格式;在录制视频时,电子设备可以根据用户选择的待录制的格式录制视频。或者,参见图11-2,用户还可以自主设置待录制视频的格式,电子设备可以根据用户自主设置的格式生成个性化的视频。
在本申请实施例另一种可能的设计中,视频的长度是用户根据实际需要在录像过程中实时控制的,用户可以通过暂停、继续和停止指示选择想要录制的运动过程,跳过不想要录制的运动过程。具体的,参见图12,在录制视频时,若电子设备检测到用户的暂停指示,则暂停录制视频;若电子设备检测到用户的继续录像指示,则继续录制视频;若电子设备检测到用户的停止指示,则停止录制视频。在图12中,160表示暂停按钮,170表示继续录制按钮,180表示停止按钮。
当视频长度由用户实时控制时,在步骤303中录制视频之前,在显示录像预览界面时,即在预览状态下,电子设备也可以根据原始帧率采集原始视频帧,并缓存最近T时间内采集的原始视频帧;在步骤303中,电子设备根据缓存的原始视频帧以及检测到用户的录像指示后采集的原始视频帧生成视频帧。
或者,当视频长度由用户实时控制时,电子设备可以不事先缓存原始视频帧,电子设备在检测到用户的录像指示后根据采集到的原始视频帧进行实时处理,从而生成视频。因而在用户触发停止指示后,电子设备基本上也完成了视频的录制,如图12所示,在用户点击停止按钮180后,电子设备几乎可以在区域130处立即显示生成的视频。
此外,当待录制视频的格式不是预设格式或用户选择的格式时,电子设备在步骤303中录制视频具体可以包括:电子设备录制第一视频类型的视频;在检测到第二视频类型指示后,电子设备切换为录制第二视频类型的视频。其中,第一视频类型与第二视频类型不同,且第一视频类型或第二视频类型为慢动作视频类型。具体的,电子设备在检测到用户的录像指示并刚刚开始录制的初始视频类型可以为预设的视频类型。或者,电子设备也可以在检测到用户的录像指示和初始视频类型指示后开始录制初始视频类型对应的视频。
示例性的,参见图13中的(a),初始视频类型为常速视频类型,用户在点击录制按钮后,电子设备录制常速视频类型视频;参见图13中的(b),当电子设备检测到用户的慢动作类型指示时,切换为录制慢动作类型视频;若电子设备检测到用户的快动作类型指示,则再次切换为录制快动作类型视频;若电子设备检测到用户的常速类型指示,则再次切换为录制常速类型视频。
在一种具体实施方式中,当电子设备检测到用户的慢动作类型指示,切换为录制慢动作视频时,具体可以对检测到用户慢动作类型指示时刻之前的时间段T内以及检测到用户的慢动作类型指示时刻之后的视频帧进行插帧,从而生成慢动作视频。由于在录制过程中,从用户发现自己想要录制一个运动过程到用户触发慢动作类型指示之间存在时间差,当用户触发慢动作类型指示时,待拍摄的运动过程可能已经开始了一段时间,尤其是当该运动过程为高速运动过程时,待拍摄的运动过程可能已经结束了,因而电子设备可以根据用户慢动作类型指示时刻之前时间段T内的原始视频帧,提前一段时间录制慢动作视频,以便于用户能够更有效地记录想要慢动作播放的运动过程。
另外,当待录制视频的格式不是预设格式或用户选择的格式时,电子设备还可以在录制过程中自动切换视频录制类型。例如,当被拍摄对象的运动速度大于或者等于预设值时,可以切换为慢动作类型视频进行录制;当被拍摄对象的运动速度小于预设值时,可以切换为常速类型或快动作类型视频录制。再例如,当电子设备识别到被拍摄对象时,切换为待拍摄对象对应的格式进行视频拍摄。例如,电子设备最初可以录制默认类型(例如常速类型)的视频,参见图14-1,当电子设备识别到被拍摄对象为水滴或水滴下落时,切换为根据水滴或水滴下落对应的格式4继续录制视频;或者,当电子设备识别到被拍摄对象为老鹰或老鹰起飞时,切换为老鹰或老鹰起飞对应的格式5继续录制视频;或者,参见图14-2,当电子设备识别到被拍摄对象为骏马或骏马奔驰时,切换为骏马或骏马奔驰对应的格式6继续录制视频。示例性的,格式4可以为:固定时长0.3s,快动作视频(0.05s)+慢动作视频(0.25s)。此外,当电子设备自动切换视频录制类型时,还可以在录制过程中实时显示当前时刻录制的视频的类型。
在另一种可能的实现方式中,参见图15,电子设备中可以预先保存有待拍摄对象和格式的对应关系。当电子设备检测到用户指示的待拍摄对象时,可以根据该待拍摄对象对应的格式录制视频。
此外,在另一些实施例中,电子设备录制的视频也可以仅包括快动作类型或慢动作类型中的至少一种,表1中视频的格式中也可以仅包括快动作类型或慢动作类型中的至少一种。示例性的,表1中视频的格式还可以包括格式7:t1秒常速视频+t2秒快速视频+t3秒常速视频。
另外,在视频录制完成后,电子设备可以自动播放录制的视频,以便于用户及时查看慢动作视频的录制效果;或者,在视频录制完成后,电子设备可以显示如图16-1所示的待播放界面,在用户指示播放后播放该视频;或者,参见图16-2,在视频录制完成后,在检测到用户的播放指示后才播放该视频。
进一步地,在视频录制完成后,电子设备可以保存录制的视频,并在检测到用户用于查看保存的视频的参数信息指示后,显示该视频的参数信息。其中,该参数信息包括视频的录像帧率,以便于用户了解所录制的视频,尤其是慢动作视频的录像帧率是多大。此外,该参数信息还可以其它信息,以便于用户对该视频的各方面有更为详细的了解。例如,其它信息可以包括文件名、时间、拍摄地点、文件格式、宽度、高度、时长、文件大小、分辨率、机型、制造商或路径等中的一种或多种。
并且,当所录制的视频包括慢动作类型的视频以外的其它类型的视频时,参数信息中视频的录像帧率也可以为该最大值或平均值;或者参数信息中也可以显示不同类型的视频分别对应的录像帧率。
示例性的,参见图17-1或图17-2,当用户点击已保存视频的“参数信息”选项时,电子设备显示具体的参数信息。
具体的,在本申请实施例的步骤303中,不论待录制视频的格式是否为预设格式,若当前时刻待录制的视频或视频为慢动作类型,则电子设备录制该慢动作类型的视频,具体可以包括:
3031、电子设备根据原始视频帧采集原始视频帧。
3032、电子设备在相邻两个原始视频帧之间插入n个新的视频帧,n为正整数。
其中,插入n个新的视频帧的原始视频帧可以是在预览状态下提前缓存的原始视频帧,也可以是检测到用户的录像指示后电子设备采集到的视频帧。通过插帧处理,电子设备可以将录像帧率提高至n*原始帧率。
3033、电子设备根据原始视频帧以及新的视频帧生成慢动作类型视频。
此外,若待录制的视频为常速类型或快动作类型,则电子设备不需要进行插帧处理。
当待录制视频为慢动作类型时,图18示出了另一种电子设备录制慢动作类型视频的流程图,主要可以包括电子设备中的图像传感器(sensor)采集原始视频帧,图像信号处理器(image signal processing,ISP)对原始视频帧进行处理,而后电子设备提高录像帧率,之后电子设备进行视频编码,从而生成视频。其中,电子设备提高录像帧率的过程可以包括预处理、运动估计、运动矢量后处理以及插帧处理等。以下将以相邻的原始视频帧1和原始视频帧2为例进行说明。
在预处理过程中,电子设备将原始视频帧1和原始视频帧2分别划分为q(例如在图20所举示例中,原始视频帧1和原始视频帧2分别被划分为q=M*N)个小的图像块,后续处理都将基于图像块进行。并且,电子设备将原始视频帧1和原始视频帧2分别进行下采样,转换为分辨率更小的图像,以便基于小分辨率的图进行后续复杂的计算,从而降低运算量。参见图19,100表示原始视频帧,190表示图像块,图(a)和图(b)中的小圆点表示像素。
在运动估计时,参见图20,针对原始视频帧1中的每一个图像块,在原始视频帧2中对应位置的周围一定范围内(例如图20中虚线框所示的[-p,p]范围内)搜索。当搜索到的图像块2与原始视频帧1中的当前图像块1的残差值最小时,可以认为原始视频帧2中的图像块2是与原始视频帧1中当前图像块1匹配的图像块。而后,电子设备根据原始视频帧1中当前图像块1的坐标与原始视频帧2中的图像块2的坐标,计算出当前图像块1的运动矢量(x+u,y+v),其中(x,y)表示原始视频帧1中当前图像块1的坐标,(u,v)表示图像块2相对于当前图像块1的位置偏移量。
在运动矢量后处理过程中,电子设备可以通过邻域中值滤波或加权平均滤波等平滑滤波方法,提高运动矢量的准确度和平滑度。示例性的,参见图21,(a)是计算获得的各图像块对应的运动矢量场,其中,有个别图像块的运动矢量出错;(b)是经过后处理纠正后的运动矢量场,各图像块的运动矢量趋势保持一致。
而后电子设备根据经过上述处理后的运动矢量,计算待插入的n个新的视频帧中与图像块1和图像块2对应的n个图像块的位置。在分别确定待插入的n个新的视频帧中q个图像块的位置后,生成该n个待插入的图像块,并将该n个待插入的图像块插入原始视频块1和原始视频块2之间。示例性的,插帧后的效果示意图可以参见图22。具体的,在图22中,(a)和(b)表示原始视频帧,(c)和(d)表示在原始视频帧(a)和(b)之间插入的新的视频帧。
需要说明的是,本申请实施例通过软件方法进行插帧,成本更低,且易于更新和维护。并且,本申请实施例提供的录像方法是在录制过程中进行插帧,与在播放过程中进行插帧相比,在录制过程中进行插帧可以在该视频传送给其它设备或转存到其它介质后再次播放时,仍然实现慢动作播放。
可以理解的是,为了实现上述功能,电子设备包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的算法步骤,本申请能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
本申请实施例可以根据上述方法示例对电子设备、服务器进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
在采用对应各个功能划分各个功能模块的情况下,图23示出了上述实施例中涉及的电子设备的一种可能的组成示意图,如图23所示,该电子设备2300可以包括:启动单元2301、显示单元2302和录制单元2303。
其中,确定单元2301,可以用于支持电子设备2300执行图3所示录像方法中的步骤301。显示单元2302可以用于支持电子设备2300执行图3所示录像方法中的步骤302。录制单元2303可以用于支持电子设备2300执行图3所示录像方法中的步骤303。
录制单元2303还可以用于支持电子设备2300在预览状态下,根据原始帧率采集原始视频帧;缓存最近T时间内采集的原始视频帧,T为预设长度;根据缓存的原始视频帧以及预设格式生成视频。
此外,录制单元2303还可以用于支持电子设备2300首先录制第一视频类型的视频;在检测到第二视频类型指示后,切换为录制第二视频类型的视频,第一视频类型或第二视频类型为慢动作视频类型。
录制单元2303还可以用于支持电子设备2300在检测到用户的暂停指示后,暂停录制视频;在检测到用户的继续录像指示后,继续录制视频;在检测到用户的停止指示后,停止录制视频。
录制单元2303还可以用于支持电子设备2300根据原始帧率采集原始视频帧;在不同原始视频帧之间插入至少一个新的视频帧;根据原始视频帧以及新的视频帧生成视频。
进一步地,电子设备2300还可以包括保存单元2304,可以用于支持电子设备2300在录制单元录制视频之后保存视频。显示单元232还用于支持电子设备2300在检测到用户的参数信息指示后,显示视频的参数信息,参数信息包括视频的录像帧率。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
本申请实施例提供的电子设备,用于执行上述录像方法,因此可以达到与上述录像方法和GUI显示方法相同的效果。
在采用集成的单元的情况下,可将上述开启单元2301和录制单元2303集成为处理模块,将上述显示单元2302集成为显示模块,将上述保存单元集成为存储模块。
其中,处理模块用于对电子设备的动作进行控制管理,例如,处理模块用于支持电子设备执行图3中的步骤301和303,和/或用于本文所描述的技术的其它过程。显示模块可以用于支持电子设备执行图3中的步骤302,还可以向用户显示图形用户界面、图像或参数信息等。存储模块用于存储电子设备的程序代码、录制的视频以及视频的各项参数信息。
其中,处理模块可以是处理器或控制器,例如可以是中央处理器(centralprocessing unit,CPU),图形处理器(graphics processing unit,GPU),通用处理器,数字信号处理器(digital signal processor,DSP),专用集成电路(application-specificintegrated circuit,ASIC),现场可编程门阵列(field programmable gate array,FPGA)或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。
显示模块可以为显示器,可以用于显示由用户输入的信息、提供给用户的信息以及终端的各种菜单的设备,具体可以采用液晶显示器、有机发光二极管等形式来配置显示器。另外,显示器上还可以集成触控板,用于采集在其上或附近的触摸事件,并将采集到的触摸信息发送给其他器件(例如处理器等)。
存储模块可以是存储器,该存储器可以包括高速RAM,还可以包括非易失存储器,例如磁盘存储器件、闪存器件或其他易失性固态存储器件等。
此外,电子设备还可以包括通信模块,可以用于支持电子设备与其他网络实体的通信,例如与服务器之间的通信。该通信模块具体可以为射频电路、蓝牙芯片、WIFI芯片等与其他电子设备交互的设备。
在一种具体实现中,当处理模块为处理器,显示模块为显示器,存储模块为存储器时,本申请实施例所涉及的电子设备具体可以为图2所示的手机。
本申请实施例还提供一种计算机存储介质,该计算机存储介质中存储有计算机指令,当该计算机指令在电子设备上运行时,该电子设备执行上述相关方法步骤实现上述实施例中的录像方法。
本申请实施例还提供了一种计算机程序产品,当该计算机程序产品在计算机上运行时,使得计算机执行上述相关方法步骤,以实现上述实施例中的录像方法。
另外,本申请的实施例还提供一种装置,这个装置具体可以是芯片,组件或模块,该装置可包括相连的处理器和存储器;其中,存储器用于存储计算机执行指令,当装置运行时,处理器可执行存储器存储的计算机执行指令,以使芯片执行上述各方法实施例中的录像方法。
其中,本申请实施例提供的电子设备、计算机存储介质、计算机程序产品或芯片均用于执行上文所提供的对应的方法,因此,其所能达到的有益效果可参考上文所提供的对应的方法中的有益效果,此处不再赘述。
通过以上实施方式的描述,所属领域的技术人员可以了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以权利要求的保护范围为准。