CN114979465B - 视频处理方法、电子设备及可读介质 - Google Patents

视频处理方法、电子设备及可读介质 Download PDF

Info

Publication number
CN114979465B
CN114979465B CN202210412449.3A CN202210412449A CN114979465B CN 114979465 B CN114979465 B CN 114979465B CN 202210412449 A CN202210412449 A CN 202210412449A CN 114979465 B CN114979465 B CN 114979465B
Authority
CN
China
Prior art keywords
slow motion
motion
event
camera
slow
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN202210412449.3A
Other languages
English (en)
Other versions
CN114979465A (zh
Inventor
李子荣
黄文辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Honor Device Co Ltd
Original Assignee
Honor Device Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202210412449.3A priority Critical patent/CN114979465B/zh
Priority to CN202310651028.0A priority patent/CN116916149A/zh
Publication of CN114979465A publication Critical patent/CN114979465A/zh
Application granted granted Critical
Publication of CN114979465B publication Critical patent/CN114979465B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/631Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
    • H04N23/632Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters for displaying or modifying preview images prior to image capturing, e.g. variety of image resolutions or capturing parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440281Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by altering the temporal resolution, e.g. by frame skipping
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N23/00Cameras or camera modules comprising electronic image sensors; Control thereof
    • H04N23/60Control of cameras or camera modules
    • H04N23/63Control of cameras or camera modules by using electronic viewfinders
    • H04N23/631Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/222Studio circuitry; Studio devices; Studio equipment
    • H04N5/262Studio circuits, e.g. for mixing, switching-over, change of character of image, other special effects ; Cameras specially adapted for the electronic generation of special effects
    • H04N5/2621Cameras specially adapted for the electronic generation of special effects during image pickup, e.g. digital cameras, camcorders, video cameras having integrated special effects capability

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Studio Devices (AREA)

Abstract

本申请实施例提供了一种视频处理方法、电子设备及可读介质,该视频处理方法包括:响应于第一操作,显示慢动作预览界面;响应于第二操作,获取事件相机得到的事件流数据;利用事件流数据,检测检测框内显示的物体为运动物体,并计算运动物体的运动速度;记录事件流数据中的慢动作的开启时间戳;利用速度基准值,确定慢动作倍率,利用慢动作倍率,调整摄像头拍摄的视频流位于第一时间段内的图像的播放帧率。可以看出:电子设备利用在事件流数据中的慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度,确定速度基准值,并利用速度基准值确定慢动作倍率,提高慢动作倍率和运动物体的运动速度的匹配度,提高慢动作视频的播放效果。

Description

视频处理方法、电子设备及可读介质
技术领域
本申请涉及多媒体技术领域,尤其涉及一种视频处理方法、电子设备、计算机程序产品及计算机可读存储介质。
背景技术
随着技术的发展,电子设备能够支持的拍摄功能越来越多,例如,拍摄慢动作视频的功能。为实现拍摄慢动作视频的功能,电子设备配置慢动作录制模式。
电子设备开启慢动作录制模式,电子设备以固定的慢动作倍率来得到慢动作视频。但是,固定的慢动作倍率并不能匹配所有运动物体的运动速度,导致电子设备得到的慢动作视频的播放效果不好。
发明内容
本申请提供了一种视频处理方法、电子设备、程序产品及计算机可读存储介质,目的在于实现以运动物体的运动速度,得到慢动作倍率,提高慢动作视频的播放效果。
为了实现上述目的,本申请提供了以下技术方案:
第一方面,本申请提供了一种视频处理方法,应用于电子设备,该电子设备包括事件相机和摄像头,视频处理方法包括:响应于第一操作,显示慢动作预览界面,其中,第一操作用于启动慢动作录制模式,慢动作预览界面包括检测框和第一控件,第一控件用于控制启动拍摄;响应于第二操作,获取事件相机得到的事件流数据,第二操作为对第一控件的触发操作;事件流数据包括多个事件,每个事件包括时间戳;利用事件流数据,检测检测框内显示的物体为运动物体,并计算运动物体的运动速度;记录事件流数据中的慢动作的开启时间戳,其中,利用慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度,用于确定出大于预设值的速度验证值;利用速度基准值,确定慢动作倍率,速度基准值由利用慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度得到;利用慢动作倍率,调整摄像头拍摄的视频流位于第一时间段内的图像的播放帧率,其中,第一时间段包括:慢动作的开启时间戳在事件流数据中的前一个时间戳和慢动作的开启时间戳之间的时间段。
由上述内容可以看出:电子设备利用事件相机得到的事件流数据,检测检测框内显示的物体为运动物体,并计算运动物体的运动速度;并且,利用在事件流数据中的慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度确定速度基准值,并利用速度基准值确定慢动作倍率,如此,保证了电子设备能够以运动物体的运动速度确定慢动作倍率,提高慢动作倍率和运动物体的运动速度的匹配度,提高慢动作视频的播放效果。
进一步的,事件相机具备低延迟、高帧率的特性。计算事件流数据中的慢动作的开启时间戳,可以利用事件相机的低延迟、高帧率的特性,保证得到事件流数据中的多个慢动作的开启时间戳的间隔较短,进一步保证得到的慢动作倍率能够使慢动作视频的播放效果更加流畅均匀。
在一个可能的实施方式中,利用事件流数据,检测检测框内存在运动物体,并计算运动物体的运动速度,包括:针对事件流数据中的每两个时间戳的事件,利用事件流数据中的每两个时间戳的事件,检测检测框内显示的物体为运动物体,并计算运动物体的运动速度。
在本可能的实施方式中,事件流数据包括多个事件,利用事件流数据中的每两个时间戳的事件,分别检测检测框内显示的物体为运动物体,以及计算运动物体的运动速度,可以进一步保证以运动物体的在不同时刻的运动速度,确定速度基准值以及以速度基准值再确定慢动作倍率,进一步加强慢动作倍率和运动物体在不同时刻的运动速度的匹配度,提升慢动作视频的播放效果。
在一个可能的实施方式中,事件流数据中的每两个时间戳的事件,包括:事件流数据中的每相邻的两个时间戳的事件;或者,事件流数据中、且每间隔预设数量时间戳的两个时间戳的事件。
在一个可能的实施方式中,慢动作倍率为多个,且一个慢动作倍率对应一个慢动作的开启时间戳,每个慢动作倍率设置于慢动作倍率对应的慢动作的开启时间戳对应的事件中。
在一个可能的实施方式中,慢动作的开启时间戳在事件流数据中的前一个时间戳,包括:慢动作的开启时间戳在事件流数据中的前一个相邻时间戳,或者,位于事件流数据之前,且与慢动作的开启时间戳间隔预设数量的时间戳。
在一个可能的实施方式中,利用慢动作倍率,调整摄像头拍摄的视频流位于第一时间段内的图像的播放帧率,包括:利用每个慢动作倍率,调整摄像头拍摄的视频流位于每个慢动作倍率对应的第一时间段内的图像的播放帧率,其中,每个慢动作倍率对应的第一时间段,包括:慢动作倍率对应的慢动作的开启时间戳在事件流数据中的前一个时间戳,和慢动作倍率对应的慢动作的开启时间戳之间的时间段。
在一个可能的实施方式中,利用每个慢动作倍率,调整摄像头拍摄的视频流位于每个慢动作倍率对应的第一时间段内的图像的播放帧率,包括:针对每个慢动作倍率,利用慢动作倍率,计算慢动作倍率对应的第一时间段内的图像的播放帧率;以利用每个慢动作倍率计算得到的图像的播放帧率,编码摄像头拍摄的视频流位于每个慢动作倍率对应的第一时间段内的图像。
在一个可能的实施方式中,利用每个慢动作倍率计算得到的图像的播放帧率,编码摄像头拍摄的视频流位于每个慢动作倍率对应的第一时间段内的图像之前,还包括:确定利用每个慢动作倍率计算得到的图像的播放帧率不小于预设帧率。
在一个可能的实施方式中,该视频处理方法还包括:确定利用慢动作倍率计算得到的图像的播放帧率小于预设帧率;对摄像头拍摄的视频流位于慢动作倍率对应的第一时间段内的图像,进行插帧处理,以使得插帧处理之后的摄像头拍摄的视频流位于慢动作倍率对应的第一时间段内的图像的播放帧率,不小于预设帧率。
在一个可能的实施方式中,慢动作倍率和速度基准值正相关。
在本可能的实施方式中,慢动作倍率和速度基准值正相关,即速度基准值越大,慢动作倍率越大,进一步保证慢动作倍率的大小跟随运动物体的运动速度的大小,提升慢动作倍率和运动物体的运动速度的匹配度,增加慢动作视频的播放效果。
在一个可能的实施方式中,速度基准值由利用慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度得到,包括:速度基准值包括:利用慢动作的开启时间戳对应的事件计算得到的多个运动物体的运动速度中的最大值或平均值,或者,利用慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度。
在一个可能的实施方式中,速度验证值包括:利用慢动作的开启时间戳对应的事件计算得到的多个运动物体的运动速度中的最大值或平均值,或者,利用慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度。
在一个可能的实施方式中,利用慢动作倍率,调整摄像头拍摄的视频流位于第一时间段内的图像的播放帧率,包括:响应于第三操作,利用慢动作倍率,调整摄像头拍摄的视频流位于第一时间段内的图像的播放帧率;其中,第三操作为控制停止拍摄视频的操作。
在一个可能的实施方式中,响应于第二操作,获取事件相机得到的事件流数据,包括:相机应用响应于第二操作,向图像信号处理器ISP发送第一消息,以通过ISP计算慢动作倍率;ISP接收第一消息,获取事件相机得到的事件流数据。
在一个可能的实施方式中,利用事件流数据,检测检测框内显示的物体为运动物体,并计算运动物体的运动速度,包括:ISP利用事件流数据,检测检测框内显示的物体为运动物体,并计算运动物体的运动速度。
第二方面,本申请提供了一种电子设备,包括:一个或多个处理器、存储器、事件相机、摄像头和显示屏;存储器、摄像头、事件相机和显示屏与一个或多个处理器耦合,存储器用于存储计算机程序代码,计算机程序代码包括计算机指令,当一个或多个处理器执行计算机指令时,电子设备执行如第一方面中任意一项的视频处理方法。
第三方面,本申请提供了一种计算机可读存储介质,用于存储计算机程序,计算机程序被执行时,具体用于实现如第一方面中任意一项的视频处理方法。
第四方面,本申请提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行如第一方面中任意一项的视频处理方法。
附图说明
图1为本申请提供的电子设备的硬件结构图;
图2为本申请实施例提供的电子设备的软件框架图;
图3为本申请实施例提供的一例开启慢动作录制模式的示意图;
图4为本申请实施例提供的一例调整检测框大小的示意图;
图5为本申请实施例提供的一例调整检测框位置的示意图;
图6为本申请实施例提供的一例以慢动作录制模式拍摄视频的示意图;
图7为本申请实施例提供的一例图库应用的照片页签界面的示意图;
图8为本申请实施例提供的一例在图库应用查阅慢动作视频的示意图;
图9为本申请实施例提供的一种视频处理方法的信令图;
图10为本申请实施例提供的一种生成慢动作倍率的流程图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请实施例中,“一个或多个”是指一个、两个或两个以上;“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例涉及的多个,是指大于或等于两个。需要说明的是,在本申请实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
在介绍本申请实施例之前,首先对本申请实施例涉及的一些术语或概念进行解释。应理解,本申请对以下术语的命名不作具体限定。以下术语可以有其他命名。重新命名的术语仍满足以下相关的术语解释。
1)慢动作,慢动作摄影,也可称为高帧率摄影,可慢速播放拍摄到的画面内容。
2)视频帧,也可称为图像或图像帧,以960fps为例,在1秒的拍摄时间内电子设备可连续采集到960帧拍摄画面,则每一个拍摄画面即可称为一个视频帧。
3)录制帧率,也称为录像帧率或拍摄帧率,是指电子设备在单位时间内录制或拍摄的视频帧的数量。
4)播放帧率,是指在进行视频播放时,电子设备每秒播放的视频帧的数量。
5)慢动作倍率,也称为慢动作倍数,指示录制帧率和播放帧率的倍数。
目前,慢动作摄影已经成为电子设备的必备功能,电子设备通过控制视频播放时每秒播放的图像帧数小于视频录制时每秒录制的图像帧数,达到慢动作的播放效果。
电子设备开启慢动作录制模式,电子设备以固定的慢动作倍率来得到慢动作视频。一些应用场景下,运动物体为高速运动的物体,如疾驰的车辆,电子设备以固定的慢动作倍率拍摄慢动作视频,因慢动作倍率与运动物体的速度匹配度不高,导致慢动作视频不足以提供慢动作的播放效果。另一些应用场景下,运动物体为普通速度的物体,如奔跑的运动员,电子设备以固定的慢动作倍率拍摄慢动作视频,慢动作倍率也可能与运动物体的速度不匹配,导致慢动作视频中的物体运动过慢,播放效果不好。
基于此,本申请实施例提供一种视频的处理方法,电子设备可通过物体的运动速度来确定慢动作播放倍率,提高慢动作倍率与运动物体速度的匹配度,提升慢动作视频的播放效果。本申请实施例提供的视频处理方法,可以适用于手机,平板电脑,桌面型、膝上型、笔记本电脑,超级移动个人计算机(Ultra-mobile Personal Computer,UMPC),手持计算机,上网本,个人数字助理(Personal Digital Assistant,PDA),可穿戴电子设备和智能手表等带有拍摄功能的电子设备。
并且,本申请实施例中,电子设备配置有事件相机,由事件相机和摄像头配合提供电子设备的慢动作视频的拍摄功能。以下以手机为例,对本申请实施例的电子设备的硬件结构进行介绍。
图1为本申请实施例提供的一种电子设备的组成示例。如图1所示,电子设备100可以包括处理器110,内部存储器120,摄像头130,事件相机131,显示屏140,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,传感器模块180以及按键190等。
可以理解的是,本实施例示意的结构并不构成对电子设备100的具体限定。在另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,智能传感集线器(sensorhub)和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
内部存储器120可以用于存储计算机可执行程序代码,可执行程序代码包括指令。处理器110通过运行存储在内部存储器120的指令,从而执行电子设备100的各种功能应用以及数据处理。内部存储器120可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器120的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
一些实施例中,内部存储器120存储的是用于执行视频处理方法的指令。处理器110可以通过执行存储在内部存储器120中的指令,实现控制电子设备以慢动作录制模式拍摄视频,得到慢动作视频。
电子设备100可以通过ISP,摄像头130,视频编解码器,GPU,显示屏140以及应用处理器等实现拍摄功能。一些实施例中,电子设备100可以通过ISP,摄像头130,视频编解码器,GPU,显示屏140以及应用处理器等实现普通拍摄功能,普通拍摄功能是指以目前存在的常规录制模式拍摄视频或图像。电子设备100可以通过ISP,事件相机131,视频编解码器,GPU,显示屏140以及应用处理器等实现慢动作视频的拍摄功能。
ISP用于处理摄像头130反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。
一些实施例中,ISP还用于利用事件相机131反馈的事件流数据,计算慢动作倍率。
摄像头130用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头130,N为大于1的正整数。
事件相机131(Event-based Camera),其中包含传感器(Dynamic Vision Sensor,DVS;Dynamic and Active Pixel Vision Sensor,DAVIS;或Event-based Sensor,EVS)。事件相机131用于在传感器上的某个像素点的亮度变化达到一定的阈值时,输出一个事件(Event),该事件包括:时间戳、像素坐标与极性。一个事件表达的是“在什么时间,哪个像素点,发生了亮度的增加或减小”。电子设备调用事件相机131拍摄视频时,事件相机131会输出多个事件,多个事件组成事件流数据,该事件流数据包括按照事件中时间戳的前后顺序排列的多个事件。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)4,MPEG2,MPEG3,MPEG4等。
电子设备通过GPU,显示屏140以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏140和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏140用于显示图像,视频等。显示屏140包括显示面板。显示面板可以采用液晶显示屏(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个显示屏140,N为大于1的正整数。
一些实施例中,电子设备以慢动作录制模式拍摄视频,得到慢动作视频,由显示屏140向用户显示。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
电子设备可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备可以通过扬声器170A收听音乐,或收听免提通话。一些实施例中,手机播放慢动作视频时,扬声器170A则转换慢动作视频的音频电信号为声音信号并对外播放。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备可以设置至少一个麦克风170C。在另一些实施例中,电子设备可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
一些实施例中,手机以慢动作录制模式拍摄视频时,麦克风170C采集声音信号,并转换为电信号。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
传感器模块180中,压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏140。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备根据电容的变化确定压力的强度。当有触摸操作作用于显示屏140,电子设备根据压力传感器180A检测触摸操作强度。电子设备也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。
触摸传感器180B,也称“触控器件”。触摸传感器180B可以设置于显示屏140,由触摸传感器180B与显示屏140组成触摸屏,也称“触控屏”。触摸传感器180B用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏140提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180B也可以设置于电子设备的表面,与显示屏140所处的位置不同。
一些实施例中,压力传感器180A和触摸传感器180B可用于检测用户对显示屏140展示的控件、图像、图标、视频等的触控操作。电子设备可响应压力传感器180A和触摸传感器180B检测的触控操作,执行对应流程。电子设备执行的流程的具体内容,可参考下述实施例内容。
示例性的,触摸传感器180B检测到启动事件相机131的触摸命令后,向处理器110发送启动事件相机131的指令,处理器110启动事件相机131,该事件相机131开始生成事件流数据,并在显示屏140显示事件相机131实时得到的事件流数据。触摸传感器180B检测到慢动作视频的开始录制命令后,向处理器110发送开始录制慢动作视频命令,处理器110利用事件相机131得到的事件流数据,生成慢动作视频。
按键190包括开机键,音量键等。按键190可以是机械按键,也可以是触摸式按键。电子设备可以接收按键输入,产生与电子设备的用户设置以及功能控制有关的键信号输入。
在上述部件之上,运行有操作系统。例如
Figure BDA0003604228120000081
操作系统、/>
Figure BDA0003604228120000082
开源操作系统、
Figure BDA0003604228120000083
操作系统等。在该操作系统上可以安装运行应用程序。
电子设备的操作系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的
Figure BDA0003604228120000091
系统为例,示例性说明电子设备的软件结构。
图2是本申请实施例提出的电子设备的软件结构示意图。
分层架构将电子设备的操作系统分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,电子设备的操作系统为Android系统。Android系统可以分为五层,从上至下分别为应用程序(application,APP)层、应用程序框架层(简称为FWK)、系统库、硬件抽象层(HAL)以及内核层。
应用程序层可以包括一系列应用程序包。如图2所示,应用程序包可以包括相机,图库,地图,通话,日历等应用程序。
一些实施例中,相机用于拍摄图像或视频。当然,相机可响应用户的操作,以慢动作录制模式拍摄视频。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,电话管理器,资源管理器,相机框架(CameraFwk),媒体录制器(Media Recorder)等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
电话管理器用于提供电子设备的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
相机框架(CameraFwk)也可以称为相机应用对应的接口,用于提供相机应用和下层模块之间数据传输功能。
媒体录制器(Media Recorder)用于实现视频的录制。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。在本申请一些实施例中,应用冷启动会在Android runtime中运行,Android runtime由此获取到应用的优化文件状态参数,进而Android runtime可以通过优化文件状态参数判断优化文件是否因系统升级而导致过时,并将判断结果返回给应用管控模块。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),三维图形处理库(例如:OpenGL ES),以及二维图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。三维图形处理库用于实现三维图形绘图,图像渲染、合成和图层处理等。二维图形引擎是2D绘图的绘图引擎。
硬件抽象层(HAL)是位于操作系统内核与硬件电路之间的接口层,其目的在于将硬件抽象化。它隐藏了特定平台的硬件接口细节,为操作系统提供虚拟硬件平台,使其具有硬件无关性,可在多种平台上进行移植。
一些实施例中,如图2所示,硬件抽象层包括相机Hal,相机Hal可利用慢动作倍率,处理事件相机131得到的事件流数据,得到慢动作视频。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,传感器驱动,音频驱动和ISP等。一些实施例中,显示驱动用于控制显示屏显示图像;摄像头驱动用于控制摄像头运行。传感器驱动用于控制多个传感器运行,如控制压力传感器和触摸传感器运行。本申请实施例中,设置于内核层的ISP可以理解成:前述电子设备的硬件结构中处理器110中的ISP对应的逻辑处理单元,内核层的ISP的功能如前述电子设备的硬件结构的内容。
硬件层可包括前述提出的可折叠的电子设备硬件部件。示例性的,图2展示了显示屏,事件相机和摄像头。
需要说明的是,本申请实施例虽然以
Figure BDA0003604228120000101
系统为例进行说明,但是其基本原理同样适用于基于/>
Figure BDA0003604228120000102
等操作系统的电子设备。
为了便于理解,本申请以下实施例将以具有图1所示结构的电子设备为例,对本申请实施例提供的视频处理方法进行具体阐述。
本申请以下实施例将以电子设备为手机,手机中安装相机应用,由相机应用启动事件相机拍摄普通视频以及慢动作视频为例,详细介绍本申请提供的视频处理方法。
在本申请的一些实施例中,用户可以手动开启或关闭本申请实施例提供的慢动作录制模式。以下结合图3描述慢动作录制模式的开启入口。
示例性的,用户可以通过触摸手机屏幕上特定的控件、按压特定的物理按键或按键组合、输入语音、隔空手势等方式,指示手机开启相机应用。图3中(a)展示了用户开启相机应用的一种实现方式。如图3中(a)所示,用户点击手机显示屏展示的相机应用图标200以输入开启相机的指示,手机响应于接收到用户开启相机的指示后,手机启动相机应用,控制摄像头运行以显示相机预览界面。示例性的,图3中(b)展示了一种机预览界面,机预览界面也可称为拍摄界面。图3中(b)展示的拍摄界面为手机处于录像模式时的拍摄界面。
需要说明的是,用户指示手机启动相机应用,手机除控制摄像头运行之外,还可控制事件相机运行以得到事件流数据,其中,事件流数据可保存于手机,且不用于生成相机预览界面。
以图3中(b)展示的手机处于录像模式时的拍摄界面为例,手机的拍摄界面可包括:开启或关闭闪光灯的控件201、设置的控件202、切换列表203、展示前一次拍摄的图像的控件204、控制拍摄的控件205以及切换前后摄像头的控件206等。当然,手机的拍摄界面还应该包括图像数据,该图像数据是由摄像头得到。图3中(b)展示手机的拍摄界面中未展示图像数据,但并不构成对手机的拍摄界面的限制。
其中,开启或关闭闪光灯的控件201用于控制摄像头拍摄视频时是否启动闪光灯。
设置的控件202可用于拍摄参数以及拍摄功能的设置,比如,照片比例的设置、手势拍照的设置、笑脸抓拍的设置、视频分辨率的设置等。
切换列表203包括摄像头的多种模式,用户可通过左右滑动该切换列表,实现摄像头的多种模式的切换运行。示例性的,图2中(b)展示的切换列表包括夜景、拍照、录像、全景、更多。更多包括其他未展示于图2中(b)的模式,用户可通过点击更多,显示出处于其他模式。
展示前一次拍摄的图像的控件204与图库应用关联,用于展示摄像头前一次拍摄的图像的缩略图或视频的封面缩略图。用户可通过触控展示前一次拍摄的图像的控件204,由显示屏展示摄像头前一次拍摄的图像或视频。其中,摄像头前一次拍摄的图像或视频是指:在本次拍摄前拍摄、且拍摄时间距本次拍摄时间最近的图像或视频。
控制拍摄的控件205为提供于用户启动拍摄的控件。在手机的录像模式,用户点击控制拍摄的控件205,媒体录制器录制摄像头得到的视频流。
切换前后摄像头的控件206用于实现手机的多个摄像头的切换运行。通常情况下,手机包括与显示屏同侧的摄像头(简称前置摄像头),以及位于手机的外壳上的摄像头(简称后置摄像头),用户可通过点击切换前后摄像头的控件206,实现对手机的前置摄像头和后置摄像头的切换运行。
如图3中(b)所示,用户点击手机显示屏展示的更多控件以输入控制显示屏展示更多模式的指示,手机响应于用户控制显示屏展示“更多”包括的模式的指示,控制手机显示屏显示“更多”包括的模式。示例性的,图3中(c)展示了手机显示屏显示“更多”包括的模式,“更多”包括的模式包括专业录制模式,慢动作录制模式以及动态照片录制模式,基于此,图3中(c)展示的手机的拍摄界面上显示有:专业录制模式的控件207,慢动作录制模式的控件208,以及动态照片录制模式的控件209。其中,慢动作录制模式207用于控制手机拍摄慢动作视频。
如图3中(c)所示,用户点击慢动作录制模式的控件208以输入开启慢动作录制模式的指示,手机响应于开启慢动作录制模式的指示,控制显示屏展示慢动作预览界面。
示例性的,图3中(d)展示了慢动作预览界面,该慢动作预览界面除包括:开启或关闭闪光灯的控件201、设置的控件202、展示前一次拍摄的图像的控件204以及控制拍摄的控件205之外,还包括:检测框210(也可称为检测窗口),切换慢动作播放速率(speed)的控件211,以及用于退出慢动作录制模式的控件212。一些实施例中,因手机可根据运动物体的运动速度,生成慢动作倍率,并以慢动作倍率以确定播放帧率,因此,慢动作预览界面也可不包括切换慢动作播放速率(speed)的控件211。
其中,位于检测框210内的运动物体,其运动速度可通过慢动作处理进行降低,实现慢动作效果。一些实施例中,用户可调整检测框210的位置和大小。
示例性的,图4展示了用户调整检测框210位置的一种方式。如图4中(a)所示,用户选中检测框210后拖动检测框210,检测框210可沿着用户输入的拖动轨迹移动,并停止在用户手离开显示屏的位置点,如图4中(b)所示。
示例性的,图5展示了用户调整检测框210大小的一种方式。如图5中(a)所示,用户以拇指和食指分别选中检测框210的两个相邻边,并沿箭头指示方向输入放大检测框210的操作,检测框210可跟随用户操作放大,如图5中(b)所示。同理,用户也可以拇指和食指分别选中检测框210的两个相邻边,控制拇指和食指相互靠近的方式输入缩小检测框210的操作,检测框210可跟随用户操作缩小。
当然,检测框210的位置调整和大小调整的方式,并不限于图4和图5所示的方式。
切换慢动作播放速率的控件211用于调整录制慢动作视频的帧率。图3中(d)展示的慢动作预览界面显示的录制帧率为4x,可以理解成:手机默认录制帧率为120帧/秒(4x),即电子设备按照120帧/秒进行视频录制,并可以按照30帧/秒的编码速率对采集到的120帧拍摄画面进行编码,原本1秒的视频内容可被慢速播放为4秒的一段慢动作视频,即一段4x的慢动作视频。用户可通过点击切换慢动作播放速率的控件211,控制显示屏显示录制帧率的可选范围以提供用户选择。
示例性的,显示屏显示的录制帧率的可选范围可以是4x到256x。
需要说明的是,本申请实施例中4x速率、32x速率或256x速率是相对于30帧/秒而言的,因此,视频录制帧率的可选范围可以是从120帧/秒到7680帧/秒,例如:120帧/秒(4x)、240帧/秒(8x)、480帧/秒(16x)、960帧/秒(32x)、1920帧/秒(64x)、7680帧/秒(256x)。示例性的,用户可以通过拖动或滑动或点击控件选择录制帧率。当然,显示屏显示录制帧率的可选范围也可以为其他范围,如4x到64x,4x到16x等,并不具体限制。
用于退出慢动作录制模式的控件212用于控制退出慢动作录制模式,用户可通过点击控件212输入退出慢动作录制模式的指示,手机可响应于用户输入的指示,退出慢动作录制模式,并控制手机的显示屏显示相机预览界面。
需要说明的是,慢动作预览界面也应该包括图像数据,该图像数据是也由摄像头得到。图3中(d)展示手机的慢动作预览界面中未展示图像数据,但并不构成对手机的慢动作预览界面的限制。
还需要说明的是,一些实施例中,慢动作预览界面也可不包括检测框210。
一些实施例中,慢动作预览界面还可包括:变焦的控件以及开启/关闭运动侦测功能的运动侦测控件。其中,变焦的控件用于调整摄像头的焦距。
运动侦测控件用于开启/关闭运动侦测。当运动侦测功能开启时,用户点击控制拍摄的控件205后,电子设备不会立刻触发慢动作视频录制。而是当电子设备检测到慢动作预览界面中被拍摄对象的运动满足预设触发条件时,才会自动触发慢动作视频录制。当运动侦测功能关闭时,则在用户手动点击控制拍摄的控件205后便会触发慢动作视频录制。运动侦测控件可被设置为默认为开启状态。当然,运动侦测控件也可不展示于慢动作预览界面,但手机默认启动运动侦测。
以上介绍了控制手机进入慢动作录制模式的方式,但本申请不限于以上述方式开启慢动作录制模式。在本申请的一些实施例中,用户开启慢动作录制模式可以有其他方式。
手机以慢动作录制模式运行,可拍摄慢动作视频。以下结合图6介绍用户控制手机以慢动作录制模式拍摄慢动作视频的过程。
参见图6中(a),用户可点击控制拍摄的控件205控制手机开始拍摄视频。手机响应于用户的点击操作,启动媒体录制器录制摄像头拍摄的视频。并且,事件相机拍摄得到的事件流数据,也保存于手机。
如前述内容,用户启动相机应用,摄像头和事件相机被控制开始运行。一些实施例中,摄像头和事件相机可不同时启动。在用户启动相机应用之后,摄像头被控制运行,以拍摄图像生成相机预览界面,以及慢动作预览界面,但事件相机可不运行。待用户如图6中(a)所示,点击控制拍摄的控件205时,事件相机则被控制运行。
图6中(b)绘示的界面展示了用户利用手机拍摄一场足球比赛过程中的一个画面。图6中(b)绘示的界面包括:停止控件213。在视频的拍摄过程中,用户可以通过点击停止控件213结束拍摄。
如图6中(c)所示,用户在14秒可以点击停止控件213结束拍摄过程,可得到时长为14秒的视频。手机响应于用户的点击操作,保存摄像头拍摄的视频。并且,手机的显示屏如图6中(d)所示,显示相机预览界面。相机预览界面中,展示前一次拍摄的图像的控件204可显示被拍摄的慢动作视频的封面图。
在手机拍摄视频结束之后,手机可将拍摄的慢动作视频保存到图库应用。示例性的,图7展示了图库应用的照片页签的界面,该界面显示有用户利用手机拍摄的慢动作视频214的封面缩略图,以及图像A的缩略图,图像A为手机在拍摄慢动作视频214之前,控制摄像图拍摄得到。
需要说明的是,慢动作视频214由手机利用事件相机得到的事件流数据,得到慢动作倍率,并利用慢动作倍率处理摄像头拍摄的视频流,使其具备慢动作效果。并且,手机利用事件相机得到的事件流数据,得到慢动作倍率,并利用慢动作倍率处理摄像头拍摄的视频流的实现过程,可参见下述图9和图10的内容。
手机在图库应用保存慢动作视频之后,用户可通过图库应用查阅慢动作视频。示例性的,用户在图6中(d)展示的相机预览界面中点击展示前一次拍摄的图像的控件204,或者用户在图8中(a)展示的图库应用的照片页签的界面,点击慢动作视频214的封面缩略图。手机响应于用户的点击操作,在手机的显示屏展示慢动作视频214的浏览界面。
示例性的,图8中(b)展示了慢动作视频214的浏览界面,该浏览界面包括:播放控件215用于对慢动作视频214的播放进行控制。
慢动作视频214的浏览界面还包括分享、收藏、编辑、删除、更多等选项。如果用户点击分享,可以分享慢动作视频214;如果用户点击收藏,可以将慢动作视频214收藏于文件夹;如果用户点击编辑,可以对慢动作视频214执行编辑;如果用户点击删除,则可以删除慢动作视频214;如果用户点击更多,则可以进入对视频的其他操作功能(比如移动、复制、添加备注、隐藏、重命名等等)。
慢动作视频214的浏览界面还包括的慢动作视频214的拍摄信息,通常如图8中(b)或(d)所示,位于慢动作视频214的上方。该慢动作视频214的拍摄信息包括:慢动作视频214的拍摄日期、拍摄时间和拍摄地址。并且,慢动作视频214的浏览界面还可以包括一个圆形控件,该圆形控件内填充字母“i”。用户点击该圆形控件,手机可响应用户的点击操作,在慢动作视频214的浏览界面上显示慢动作视频214的属性信息,示例性的,该属性信息可包括慢动作视频214的存储路径、分辨率、以及被拍摄时,摄像头的配置信息等。
用户如图8中(b)所示,点击播放控件215,手机响应于用户输入的点击操作,在显示屏上播放慢动作视频214。通常情况下,显示屏以全屏显示的方式播放慢动作视频214,如图8中(c)所示。
手机显示屏全屏播放慢动作视频214的过程中,用户可如图8中(c)所示,点击显示屏的任意位置,控制显示屏显示慢动作视频214的播放界面。示例性的,慢动作视频214的播放界面如图8中(d)所示。该播放界面包括:慢动作视频214的图像列表216、播放控件217以及视频列表218;其中:
慢动作视频214的图像列表216包括慢动作视频214的n帧图像,n正整数。手机在拍摄慢动作视频214过程中,基于慢动作视频214中的运动物体的运动速度,来开启或关闭慢动作。运动物体的运动速度不高,不满足预设触发条件,不会开启慢动作;运动物体的运动速度满足预设触发条件,可才开启慢动作,之后,若运动物体的运动速度降低到不满足预设触发条件,则会关闭慢动作。因此,手机拍摄的慢动作视频214可能会被分为标准速度的一个或多个视频段,以及慢动作的一个或多个视频段。
基于此,慢动作视频214的图像列表216,则会跟随标准速度的视频段以及慢动作的视频段的拆分情况,被分为:标准速度的视频段包括的图像,以及慢动作的视频段包括的图像。示例性的,图8中(d)所示的慢动作视频214的图像列表216中,图像1到图像m组成标准速度的视频段,图像k-a到图像k+b组成慢动作的视频段,图像n-p到图像n组成标准速度的视频段。m、n、k、a、b、p均为正整数。
慢动作的视频段位于视频框219内,视频框219为可活动框,视频框219的左边219a和右边219b可被移动。示例性的,用户可选中左边219a并沿水平方向向左或向右滑动,左边219a跟随用户的滑动操作向左或向右移动。同理,用户也可选中右边219b并沿水平方向向左或向右滑动,右边219b跟随用户的滑动操作向左或向右移动。在视频框219的左边219a、右边219b移动后,位于视频框219内的图像则组成慢动作的视频段,在播放时速度较慢。
播放控件217用于对慢动作视频214的播放进行控制。示例性的,如图8中(d)所示,播放控件217包括:启动或停止的控件、可滑动进度条和喇叭控件。启动或停止的控件用于控制慢动作视频214播放或者停止;喇叭控件用于选择是否静音播放慢动作视频214。可滑动进度条用于显示慢动作视频214的播放进度,用户还可通过左右拖动进度条上的圆形控件,来实现调整慢动作视频214的播放进度。
视频列表218包括慢动作视频214的封面缩略图,以及手机保存的4个视频的封面缩略图。视频列表218中,视频1至视频4的排列顺序可按照视频1至视频4的拍摄时间的先后顺序。视频1的拍摄时间在慢动作视频214之前,且与慢动作视频214最接近,与此类推,视频4为手机拍摄并保存视频3之前拍摄并保存。
以下结合前述内容提出的电子设备的软件框架内容,对本申请实施例提供的视频处理方法的流程进行介绍。本实施例是以手机的相机应用被启动之后,手机的摄像头和事件相机被控制开始运行为例进行介绍。
参见图9,手机以慢动作录制模式拍摄慢动作视频的方法,包括下述步骤:
S101、摄像头被启动后拍摄图像,得到视频流。
用户开启相机应用,示例性的,用户如图3中(a)所示,点击相机应用图标200,手机响应于用户的点击操作,启动摄像头。当然,用户还可通过其他方式开启相机应用,具体如前述内容。摄像头被启动之后,可拍摄图像,并得到视频流。
S102、事件相机被启动后拍摄图像,得到事件流数据。
用户启动相机应用,手机响应于相机应用的启动操作,控制事件相机启动。事件相机被启动之后,可拍摄图像,并得到事件流数据。如电子设备的硬件结构的内容所述,事件流数据为事件相机得到的多个事件组成的事件序列,每个事件包括:时间戳、像素坐标与极性。极性是指:像素坐标指示的像素点的亮度变化信息,亮度变化包括亮度变高或者亮度变低。例如,亮度变高所对应的亮度变化信息为1,亮度变低所对应的亮度变化信息为0。
示例性的,每个事件可表示为(x,y,t,p),其中:x,y表示像素坐标,t表示该事件触发的时间戳,p表示极性(例如,0表示该像素点亮度没有变化,1表示该像素点亮度增强,-1表示该像素点亮度降低)。
S103、摄像头通过相机框架向相机应用发送视频流。
如前述电子设备的软件框架内容,相机框架位于应用程序框架层。一些实施例中,摄像头向相机框架发送视频流,相机框架接收到视频流,向相机应用发送视频流。
S104、相机应用利用接收的视频流,显示相机预览界面。
相机应用接收到视频流,该视频流包括摄像头拍摄的多帧图像。因此,相机应用可利用视频流,得到摄像头拍摄的图像,并控制手机的显示屏显示相机预览界面。示例性的,相机预览界面可如图3中(b)所示。
S105、相机应用接收慢动作录制模式的启动操作。
慢动作录制模式的启动操作,用于控制手机开启慢动作录制模式,以慢动作录制模式拍摄视频。一些实施例中,用户如图3中(c)所示,在相机应用的相机预览界面,点击慢动作录制模式的控件208以输入慢动作录制模式的启动操作,相机应用接收慢动作录制模式的启动操作。
S106、相机应用响应于接收慢动作录制模式的启动操作,显示慢动作预览界面。
相机应用接收到慢动作录制模式的启动操作,响应于该启动操作,可显示慢动作预览界面。示例性的,图3中(d)展示了慢动作预览界面。慢动作预览界面包括检测框,检测框的物体,其运动速度可被降低,达到慢动作效果。
需要说明的是,慢动作预览界面中的图像数据,可由摄像头拍摄的视频流得到。
S107、相机应用设置检测框。
检测框可被调整,如图4和图5所示,用户可调整检测框的大小和位置。基于此,用户通过图4或图5提供的方式,调整检测框的大小或位置,相机应用接收用户的调整检测框的操作,响应于该操作,设置检测框的大小或在显示屏的显示位置。
若用户未输入操作以调整检测框,检测框则以默认大小和显示位置显示于慢动作预览界面。
S108、相机应用接收开始拍摄视频的操作。
开始拍摄视频的操作,用于控制手机以慢动作录制模式开始拍摄视频。一些实施例中,用户如图6中(a)所示,在慢动作预览界面,点击控制拍摄的控件205以输入开始拍摄视频的操作,相机应用接收开始拍摄视频的操作。
S109、相机应用响应于开始拍摄视频的操作,通过相机框架向ISP发送消息以通知ISP计算慢动作倍率。
相机应用接收开始拍摄视频的操作,响应于开始拍摄视频的操作,通过相机框架向ISP发送消息,该消息用于通知ISP计算慢动作倍率。其中:慢动作倍率也可以称为慢动作倍数,可以理解成手机以录制帧率拍摄视频得到视频流,再以慢动作倍数指示的播放帧率播放拍摄视频。此种情况下,手机的摄像头拍摄的视频会呈现慢动作的播放效果。
如前述电子设备的软件框架内容,ISP位于内核层,其用于利用事件流数据得到的事件流数据,计算得到慢动作倍率。
一些实施例中,相机应用向相机框架发送消息,相机框架接收到消息之后,向ISP发送消息。
S110、ISP获取事件相机得到的事件流数据。
ISP接收到步骤S109中相机应用发送的消息之后,获取事件相机得到的事件流数据。
S111、ISP利用事件流数据,检测检测框内是否有运动物体。
其中,若ISP利用事件流数据,检测到检测框内有运动物体,则执行步骤S112至步骤S113;若ISP利用事件流数据,检测到检测框内没有运动物体,则返回执行步骤S111,继续检测检测框内是否有运动物体。
事件流数据包括事件相机得到的多个事件,且多个事件中包括事件相机在不同时刻得到的事件,也就是在不同时间戳得到的多个事件,因此,ISP利用事件流数据中多个时间戳的事件,重复检测检测框内是否有运动物体。
需要说明的是,ISP针对事件流数据中的每两个时间戳的事件,检测该两个时间戳的事件所反映的图像的检测框内,是否存在运动物体。当然,ISP利用两个时间戳的事件,检测检测框内存在运动物体,再针对该两个时间戳的事件,利用下述步骤S111至步骤S114,计算两个时间戳的事件对应的慢动作倍率。其中,每两个时间戳的事件,可以理解成每两个相邻时间戳的事件,即按照时间的先后顺序排序的事件流中的每两个相邻时间戳的事件;也可以理解成事件流数据中,每间隔多个时间戳事件的前后两个时间戳事件。
示例性的,事件流数据包括:时间戳A0、A1、A2、A3、A4、A5、A6、A7、A8、A9……At的事件,t为大于9的整数。
ISP可利用时间戳A0的事件和时间戳A1的事件,计算时间戳A0到时间戳A1之间的慢动作倍率,利用时间戳A1的事件和时间戳A2的事件,计算时间戳A1到时间戳A2之间的慢动作倍率,以此类推,ISP利用时间戳At-1的事件和时间戳At的事件,计算时间戳At-1到时间戳At之间的慢动作倍率。
ISP也可间隔一些时间戳,示例性的,间隔2个时间戳。如此,ISP可利用时间戳A0的事件和时间戳A3的事件,计算时间戳A0到时间戳A3之间的慢动作倍率,利用时间戳A3的事件和时间戳A6的事件,计算时间戳A3到时间戳A6之间的慢动作倍率,以此类推,ISP利用时间戳At-3的事件和时间戳At的事件,计算时间戳At-3到时间戳At之间的慢动作倍率。
为了方便说明,本实施例的下述步骤S112至步骤S115,是以两个时间戳的事件,且两个时间戳的事件为相邻的两个时间戳的事件为例来进行介绍。但是,这不限制本实施例只对事件流数据中的两个时间戳的事件执行下述步骤S112至步骤S115。
并且,以下通过图10及其对应的实施例内容,对ISP接收的事件流数据,执行步骤S110至步骤S115的过程进行介绍。
S112、ISP利用事件流数据,计算运动物体的运动速度。
与前述步骤S111相同,事件流数据包括事件相机得到的多个事件,因此,ISP也是针对每两个时间戳的事件,计算该两个时间戳的事件所反映的图像中的运动物体的运动速度。
S113、ISP确定速度校验值大于预设值,ISP记录慢动作的开启时间戳,速度校验值为运动物体的运动速度的最大值或平均值。
ISP设置有预设值,该预设值可为经验值。ISP比对速度校验值和预设值,判断速度校验值是否大于预设值,以识别摄像头拍摄的视频流中的运动物体的速度是否较大,以启动慢动作功能。ISP若确定速度校验值大于预设值,说明摄像头拍摄的视频流中的运动物体的速度较大,可开启慢动作,因此ISP记录事件流数据中的慢动作的开启时间戳。其中:慢动作的开启时间戳用于指示慢动作的开始时刻。
一些应用场景中,显示屏显示的慢动作预览界面中,检测框内包括多个运动物体。如此,ISP通过前述步骤S112,则会计算出多个运动物体的运动速度。ISP则需利用多个运动物体的运动速度,确定出速度校验值。
通常情况下,ISP选择多个运动物体的运动速度中的最大值作为速度校验值;或者,ISP计算多个运动物体的运动速度的平均值,将多个运动物体的运动速度的平均值作为速度校验值。当然,ISP确定速度校验值的方式也不限于此,一些实施例中,ISP也可选择多个运动速度中的第二大值,甚至最小值作为速度校验值。
一些应用场景中,显示屏显示的慢动作预览界面中,检测框内包括一个运动物体。如此,ISP通过前述步骤S112计算出一个运动物体的运动速度,ISP可将该运动物体的运动速度作为速度校验值,并与预设值进行比较。
需要说明的是,ISP执行完步骤S113之后,可执行步骤S115。
S114、ISP确定速度校验值不大于预设值,ISP记录慢动作的关闭时间戳。
若ISP确定速度校验值大于预设值,说明摄像头拍摄的视频中的运动物体的速度不大,需退出慢动作,则ISP记录事件流数据中的慢动作的关闭时间戳。其中:慢动作的关闭时间戳用于指示慢动作的关闭时刻。
一些实施例中,步骤S114也可不执行,可通过步骤S113记录在事件流数据中的慢动作的开启时间戳,并且,事件流数据中属于未被记录慢动作的开启时间戳的时间戳,则可认定为慢动作的关闭时间戳。
需要说明的是,ISP执行完步骤S114之后,可返回执行步骤S110,以获取事件相机得到的事件流数据。
S115、ISP根据速度基准值,确定慢动作倍率,速度基准值为运动物体的运动速度的最大值或平均值。
如前所述,事件流数据包括多个事件,且每个事件包括时间戳,因此,ISP记录事件流数据中的慢动作的开启时间戳,是事件流数据中的事件对应的时间戳。ISP利用慢动作的开启时间戳对应的事件,可以计算出运动物体的运动速度。本步骤中,用于评判的速度基准值的运动物体的运动速度,则指代ISP利用慢动作的开启时间戳对应的事件,计算出运动物体的运动速度。
需要说明的是,慢动作倍率和速度基准值成正相关,即速度基准值越大,慢动作倍率越大,速度基准值越小,慢动作倍率越小。并且,手机以慢动作倍率处理手机拍摄的视频流,得到慢动作视频,慢动作倍率越大,慢动作视频的慢动作效果越强。
ISP根据速度基准值,确定慢动作倍率的方式可由下述三种。
方式1、ISP预先配置速度基准值和慢动作倍率的关系表,该关系表中包括:多个速度基准值和慢动作倍率的对应关系。基于此,ISP将速度基准值作为筛选因子,从速度基准值和慢动作倍率的关系表中进行筛选,筛选出该速度基准值对应的慢动作倍率。
当然,可通过数据统计的方式,来确定多个速度基准值和慢动作倍率的对应关系,并以此来生成速度基准值和慢动作倍率的关系表。
方式2、ISP预先配置计算公式,该ISP可调用该计算公式,来计算速度基准值,得到慢动作倍率。当然,计算公式的计算规则也符合速度基准值和慢动作倍率成正相关的准则。
方式3、ISP预先配置慢动作倍率预测模型,该慢动作倍率预测模型可采用卷积神经网络(Convolutional Neural Network,CNN)等基础网络模型,用于根据输入的速度基准值,预测得到慢动作倍率。
ISP可调用慢动作倍率预测模型,对速度基准值对应的慢动作倍率进行预测,得到预测的慢动作倍率。当然,慢动作倍率预测模型预测速度基准值对应的慢动作倍率的规律,也符合速度基准值和慢动作倍率成正相关的准则。
卷积神经网络通常包括:输入层、卷积层(Convolution Layer)、池化层(Poolinglayer)、全连接层(Fully Connected Layer,FC)和输出层。一般来说,卷积神经网络的第一层是输入层,最后一层是输出层。
慢动作倍率预测模型可采用下述方式进行训练:
构建慢动作倍率预测原始模型。其中,慢动作倍率预测原始模型可选择CNN等基础网络模型。
获取大量的训练样本,训练样本包括:不同的运动速度,并且,每个运动速度被标记出其对应的慢动作倍率。
将训练样本输入到慢动作倍率预测原始模型,由慢动作倍率预测原始模型对训练样本对应的慢动作倍率进行预测,得到预测结果。
利用损失函数对预测结果和每个训练样本的标记结果进行损失值的计算,得到模型的损失值。一些实施例中,可采用交叉熵损失函数、加权损失函数等损失函数进行损失值计算,或者采用多种损失函数组合的方式,计算多种损失值。
判断模型的损失值是否符合模型的收敛条件。一些实施例中,模型收敛条件可以是,模型的损失值小于或等于预先设定的损失阈值。也就是说,可以将模型的损失值和损失阈值进行比较,若模型的损失值大于损失阈值,则可以判断出模型的损失值不符合模型收敛条件,反之,若模型的损失值小于或等于损失阈值,则可以判断出模型损失值符合模型收敛条件。
需要说明的是,多个训练样本,可以针对每一个训练样本计算得到对应的模型的损失值,这种情况下,只有在每一个训练样本的模型损失值均符合模型收敛条件的情况下才会执行,反之,只要有一个训练样本的模型损失值不符合模型收敛条件,则执行后续步骤。
若模型的损失值符合模型的收敛条件,则说明模型训练结束。
若模型的损失值不符合模型的收敛条件,则根据模型的损失值计算得到模型的参数更新值,并以模型的参数更新值,更新慢动作倍率预测原始模型。并利用更新后的模型,继续对训练样本进行处理,得到预测结果,继续执行后续过程,直至模型的损失值符合模型的收敛条件。
需要说明的是,ISP还可选择其他运动速度,作为速度基准值,如多个运动物体的运动速度的第二大值,甚至最小值。若多个运动物体的运动速度均较大,则可选择多个运动物体的最小值,作为速度基准值。
当然,若ISP通过前述步骤S112计算出一个运动物体的运动速度,则选择该运动物体的运动速度为速度基准值。
还需要说明的是,ISP得到的慢动作倍率可被保存。通常情况下,慢动作倍率可被保存于慢动作倍率,慢动作倍率跟随慢动作视频同步保存。
本实施例中,通过步骤S115可确定电子设备以运动物体的运动速度确定慢动作倍率,可以保证慢动作倍率与运动物体的运动速度的匹配度较大,保证以慢动作倍率得到的慢动作视频的播放效果较好。
并且,慢动作倍率与速度基准值成正相关,也可以理解成慢动作倍率与运动物体的运动速度正相关,进一步确保以慢动作倍率得到播放效果较好的慢动作视频的。
S116、相机应用接收停止拍摄视频的操作。
停止拍摄视频的操作,用于控制手机停止拍摄视频。一些实施例中,用户如图6中(c)所示,在慢动作预览界面,点击停止控件213以输入停止拍摄视频的操作,相机应用接收停止拍摄视频的操作。
S117、相机应用响应于停止拍摄视频的操作,通过相机框架向ISP发送消息以通知ISP停止计算慢动作倍率。
相机应用接收停止拍摄视频的操作,响应于停止拍摄视频的操作,通过相机框架向ISP发送消息,该消息用于通知ISP停止计算慢动作倍率。
一些实施例中,相机应用向相机框架发送消息,相机框架接收到消息之后,向ISP发送消息。
需要说明的是,相机应用响应于停止拍摄视频的操作,还可控制事件相机停止运行。但因手机要维持相机预览界面,因此,手机的摄像头继续运行拍摄图像。
S118、ISP向相机hal发送记录的慢动作的开关时间戳、以及慢动作倍率。
慢动作的开关时间戳包括:ISP通过前述步骤S113记录的慢动作的开启时间戳,步骤S114记录的慢动作的关闭时间戳。因相机hal可生成慢动作视频,因此,ISP需要向相机hal发送记录的慢动作的开关时间戳、以及慢动作倍率。
S119、相机hal获取摄像头拍摄的视频流。
因事件相机拍摄视频,得到的是事件流数据和灰度图,不能得到由图像帧组成的视频流,因此,相机hal生成慢工作视频时,需获取摄像头拍摄的视频流。
一些实施例中,相机hal接收到慢动作的开关时间戳、以及慢动作倍率之后,可获取摄像头拍摄的视频流。
并且,相机hal获取的视频流可以是执行插帧算法处理之后的视频流,或者是摄像头拍摄的原始视频流,再对其利用插帧算法进行处理。
S120、相机hal利用慢动作的开关时间戳以及慢动作倍率,调整视频流,得到慢动作视频。
其中,慢动作倍率用于指示录制帧率和播放帧率的倍数关系,因此,相机hal可利用录制帧率和慢动作倍率,计算得到视频流的播放帧率。其中,播放帧率是指手机播放视频时的播放帧率,手机可利用播放帧率来编码视频流,得到慢动作视频。当然,慢动作视频进行播放时,也是以计算得到的播放帧率执行。
但是,因前述步骤S115中计算的慢动作倍率是对应事件流数据中的一个时间戳,其时间单位为μs,而录制帧率是指手机的摄像头拍摄视频时的录制帧率,录制帧率的时间单位为1秒,因此,相机hal利用录制帧率和慢动作倍率,计算得到视频流的播放帧率,要考虑时间戳和录制帧率的单元不统一的问题。
一些实施例中,相机hal计算两个时间戳的时间差和慢动作倍率的乘积,记为第一乘积,相机hal再计算视频流在两个时间戳内的图像的帧数和第一乘积的商,该商值则作为视频流的播放帧率。其中,两个时间戳是指:慢动作的开关时间戳中记录的慢动工作的开启时间戳以及该时间戳的前一个时间戳,当然,该前一个时间戳,可以指代:事件流数据中的前一个且相邻的时间戳,或者时间靠前,且间隔一些时间戳的时间戳。
在上述示例中,设定时间戳A的事件被记录有慢动作的开启时间戳,相机hal计算第一乘积=(时间戳A1-时间戳A0)×慢动作倍率ρ0,相机hal再计算播放帧率=时间戳A1和时间戳A0之间的图像帧数/第一乘积。
需要说明的是,由前述步骤S115的内容可知:一个慢动作倍率,仅针对事件流数据中的一个慢动作的开启时间戳,因此,相机hal采用前述内容,计算得到的视频流的播放帧率,也是视频流中位于前述提到的两个时间戳之间的图像的播放帧率。
还需要说明的是,若相机hal计算出的播放帧率较小,可能会影响慢动作视频的播放效果,因此,相机hal计算得到播放帧率之后,需要比较计算得到的播放帧率和预设帧率值,预设帧率值可为30帧/秒。
相机hal判断计算得到的播放帧率不小于预设帧率值,则相机hal则以计算得到的播放帧率编码视频流,得到慢动作视频,并在播放慢动作视频时以计算得到的播放帧率播放慢动作视频流。
相机hal判断计算得到的播放帧率小于预设帧率值,则对视频流进一步执行插帧算法处理(简称二次插帧处理),使得插针算法处理之后的视频流,满足预设帧率值的播放帧率要求。相机hal再按照预设帧率,编码视频流,得到慢动作视频,并在播放慢动作视频时以预设帧率值播放慢动作视频流。
还需要说明的是,本申请实施例是以相机hal利用慢动作的开关时间戳以及慢动作倍率,调整视频流,得到慢动作视频为例进行说明,但生成慢动作视频的过程,并不限制于由相机hal执行。一些实施例中,ISP也可生成慢动作视频,即ISP可执行前述步骤S119和步骤S120,并且,ISP无需执行步骤S118。
还需要说明的是,因事件相机输出事件流数据中包括多个时间戳的事件,ISP需要针对每两个时间戳的事件执行前述步骤S110至步骤S115。并且,如前述步骤S111的内容,每两个时间戳的事件可为事件流数据中每两个相邻时间戳的事件,或者,事件流数据中,每间隔多个时间戳事件的前后两个时间戳事件。
可知的,事件相机的录制帧率可达到8000帧/秒,即事件相机可以输出最短时间戳间隔是125μs,也就是说:事件相机输出的两个相邻的事件的时间戳间隔为125μs。但是,若手机的摄像头拍摄视频流时的录制帧率可能较低,达不到7680帧/秒甚至更高。基于此,手机会先采用插帧算法处理摄像头拍摄的视频流,使视频流中每秒对应的图像帧可达到7680及或以上。
一些实施例中,手机的ISP或相机hal可获取摄像头拍摄的视频流,并采用插帧算法处理摄像头拍摄的视频流。并且,ISP或相机hal可采用常规的插帧算法,此处不对插帧算法处理视频流的内容进行详细介绍。
以下结合图10,以ISP针对事件流数据中每两个相邻时间戳的事件为例,对ISP执行步骤S110至步骤S115,生成慢动作倍率的流程进行介绍。
如图10所示,ISP计算每两个时间戳的事件对应的慢动作倍率的方法,包括步骤:
S201、获取事件流数据中的前两个时间戳的事件。
如前述内容,事件相机输出事件流数据中包括多个时间戳的事件,在前述内容提及的示例中,事件流数据包括:时间戳A0、A1、A2、A3、A4、A5、A6、A7、A8、A9……At的事件,t为大于9的整数。ISP获取时间戳A0的事件和时间戳A1的事件。
S202、利用前两个时间戳的事件,检测检测框是否有运动物体。
其中,ISP可利用前两个时间戳的事件中的第二个时间戳的事件,检测检测框是否有运动物体,检测框指代图3中(d)展示的检测框210。在前述示例中,ISP时间戳A1的事件,检测检测框是否有运动物体。
当然,ISP也可以利用前两个时间戳的事件中的前一个时间戳的事件,检测检测框是否有运动物体,或者,分别利用前两个时间戳的事件中的每个事件,检测检测框是否有运动物体,并不具体限制。
需要说明的是,因为相机事件的两个时间戳间隔较短,因此,ISP利用前两个时间戳的事件中的前一个时间戳的事件,以及后一个时间戳的事件,执行步骤S202的检测结果,应该相同。基于此,ISP可利用一个时间戳的事件执行步骤S202,且将检测结果分别作为两个时间戳的事件的检测结果。
以下以前两个时间戳的事件中的第二个时间戳的事件,检测检测框是否有运动物体为例进行介绍。
一些实施例中,ISP利用事件流数据中的两个时间戳的事件,检测检测框内是否有运动物体的实施方式如下:
步骤S1、ISP对前两个时间戳的事件中的第二个时间戳的事件进行积分滚动更新,形成事件流三维矩阵。
如前述内容,事件流数据中的每个事件可表示为(x,y,t,p),其中:x,y表示像素坐标,t表示该事件触发的时间戳,p表示极性(例如:1表示该像素点亮度增强,0表示该像素点亮度降低)。由于这种流式的事件数据形式不便于计算机程序处理,故为其构造一个三维矩阵形式的事件三维数组E,其三维坐标分别为t、x、y。
步骤S2、对事件流三维矩阵进行滤波处理,去除噪声信号。
一些实施例中,ISP采用距离最近点距离的方式对事件流三维矩阵进行滤波处理,分离真实信号和噪声信号。具体的步骤如下:
S2.1、对每个事件对应的像素点,按照邻域扩展的方式逐步搜索其邻域,对找到的第一个点(即最接近的事件对应的像素点)计算其欧氏距离。
S2.2、遍历整个事件对应的像素点的最近欧氏距离表,并计算欧氏距离分布的平均值和标准差。
S2.3、对距离最近点欧氏距离大于均值和标准差的数据点,将其作为离群噪声点去除。
S2.4、取保留下来的事件对应的像素点,作为去除噪声信号后的事件流三维矩阵。
步骤S3、计算去除噪声信号后的事件流三维矩阵的每个像素点的运动速度,提取出动态边缘点。
需要说明的是,根据事件相机的特性,在运动时能够产生事件的像素点,应为运动物体的边缘点投影像素。每个边缘像素在每个时刻形成一个事件,随着时间t增加,在时空域中构成一个运动曲线,与相邻边缘点一起,再构成一个运动曲面。
假设运动物体上一个边缘点在一小段运动时间dt内x、y方向上的位移分别为dx、dy,则像素点在x、y轴上的运动速度Vx=dx/dt,Vy=dy/dt,当然这也是该运动曲面在这一点附近的梯度,即运动曲面在x、y方向上的偏导。
考虑到计算的积分时间极短,而物体运动是有惯性的,其运动速度在极短的时间内不易改变,故作出一个设定:每个像素点在一个积分周期内运动速度设为一常数。而在这样极短的时间间隔下,待计算的运动物体本身形状也很难发生改变,故作出第二个设定:设定待检测的运动物体在极短的时间内为刚体,即某像素点的运动速度与周边一小时空域内的点运动速度是一致的。
基于以上两点假设,可得出在极短的积分时间内,某像素点及周围时空邻域内的像素点所构成的运动曲面为一平面。该点的运动速度,即为该平面在x、y方向上对时间的偏导数。
一些实施例中,步骤S3的一种实现方式,包括:
S3.1、对所有像素点进行扫描,具体扫描一次取一个小范围的时空邻域,该时空邻域的空间邻域尺度为ε×ε,时间维度为[t-△t,t+△t],ε为正整数,△t也为正整数。
S3.2、在时空邻域内,使用最小二乘法在每个事件对应的像素点(x,y)附近拟合平面参数。
S3.3、对每个像素点,计算平面x、y方向上的偏导,该偏导即为运动速度。
S3.4、设定一个运动速度阈值,对于运动速度大于阈值的像素点,将其记为运动目标边缘点。
步骤S4、对检测到的边缘点进行集合归类,对未被归类的边缘点进行像素填充,划分出运动物体。
一些实施例中,步骤S4的一种实现方式,包括:
S4.1、扫描检测到的所有边缘点。
S4.2、针对扫描到的一个边缘点,若其尚未被归入某个边缘点集合,则为其单独创建一个边缘点集;若其已被归入某个边缘点集的边缘点,则跳过不做处理。
S4.3、采用宽度优先搜索的方式,搜索该边缘点的所有邻接的边缘点,并将该边缘点的所有邻接的边缘点全部归入到边缘点集内。
S4.4、若边缘点集构成一个闭合曲线,则将该边缘点集的内部像素点与该边缘点集一起构成一个运动目标集合。
S4.5、若该边缘点集未构成一个闭合曲线,则将边缘点集构成一个运动目标集合。
由上述内容可以看出:若利用前两个时间戳的事件中的第二个时间戳的事件,能够换分出动态物体,说明检测框内包括运动物体。并且,若检测框内本身包括多个运动物体,按照上述实现方式,也可确定出每一个运动物体。
S203、利用前两个时间戳的事件,计算运动物体的运动速度。
步骤S202提及的内容中,ISP利用步骤S3,可以计算得到去除噪声信号后的事件流三维矩阵的每个像素点的运动速度,ISP利用步骤S4,可以确定运动物体包括的像素点。因此,ISP可以利用运动物体包括的像素点的运动速度,计算出运动物体的运动速度。
通常情况下,属于同一个运动物体的像素点的运动速度应该相同,或相差不大,因此,ISP可将运动物体包括的像素点的运动速度的平均值,作为运动物体的运动速度;或者,ISP从运动物体包括的像素点的运动速度中,选择数值相同的运动速度作为运动物体的运动速度。
需要说明的是,ISP利用步骤S202中提出的实施方式,检测检测框是否有运动物体时,可计算得到去除噪声信号后的事件流三维矩阵的每个像素点的运动速度和运动物体包括的像素点,因此,ISP可利用运动物体包括的像素点的运动速度,计算出运动物体的运动速度,而不需要再利用前两个时间戳的事件,计算运动物体的运动速度。
并且,若检测框包括多个运动物体,ISP利用步骤S3和步骤S4,可以得到每个运动物体包括的像素点,且每个像素点的运动速度,因此,ISP也可计算出每个运动物体的运动速度。
S204、确定速度校验值,速度校验值为运动物体的运动速度的最大值或平均值。
其中,本步骤的具体内容,可参见前述步骤S113的内容。若ISP利用步骤S203,计算得到多个运动物体的运动速度,则选择运动物体的运动速度的最大值或平均值作为速度校验值。若ISP利用步骤S203,计算得到一个运动物体的运动速度,则选择该运动物体的运动速度作为速度校验值。
需要说明的是,用于确定步骤S204中提及的速度校验值的运动物体的运动速度,是利用事件流数据中前两个时间戳的事件而得到。因此,步骤S204中的速度校验值,仅针对事件流数据的两个时间戳的事件,也就是说:事件流数据的不同时间戳的事件,其通过步骤S202和步骤S203之后,再步骤S204中确定的速度校验值可能是不相同的。
S205、判断速度校验值是否大于预设值。
其中,若ISP判断速度校验值大于预设值,则执行步骤S206,步骤S208至步骤S211,若ISP判断速度校验值不大于预设值,则执行步骤S207。
本步骤的具体实现方式,可参见前述步骤S113的内容,此处不展开说明。
S206、记录慢动作的开启时间戳。
其中,ISP可以标记标识的方式,来记录慢动作的开启时间戳和关闭时间戳。示例性的,ISP可设定慢动作的开启时间戳为第一标识,慢动作的关闭时间戳为第二标识。基于此,ISP针对前两个时间戳的事件中的第一个时间戳的事件,执行前述步骤S202至步骤S205的执行结果,来设定第一标识或第二标识。同理,ISP针对前两个时间戳的事件中的第二个时间戳的事件,执行前述步骤S202至步骤S205的执行结果,来设定第一标识或第二标识。其中,第一标识和第二标识可为数值,或特殊符号等,并无具体限制。
需要说明的是,第一标识或第二标识,可设置于前两个时间戳的事件中。示例性。一个事件表示为(x,y,t,p),可将第一标识或第二标识,跟到p后面。当然,第一标识或第二标识也可单独设置,与事件设置关联关系。
S207、记录慢动作的关闭时间戳。
本步骤的具体实现内容,可参见前述步骤S206内容,此处不再赘述。并且,一些实施例中,步骤S207也可不执行。
需要说明的是,ISP执行步骤S207之后,可继续步骤S210。
S208、确定速度基准值,速度基准值为运动物体的运动速度的最大值或平均值。
其中,本步骤的具体内容,可参见前述步骤S115的内容。并且,步骤S208中用于确定速度基准值的运动物体的运动速度,是指:通过步骤S203计算得到,且通过步骤S205判断出其能确定出大于预设值的速度校验值,也可理解成ISP利用慢动作的开启时间戳对应的事件,通过步骤S203计算得到的运动物体的运动速度。
S209、根据速度基准值,确定前两个时间戳的慢动作倍率。
其中,本步骤的具体内容,也可参见前述步骤S115的内容,此处不展开说明。
S210、获取事件流数据中的下两个时间戳的事件。
其中,下两个时间戳的事件,包括:当前的两个时间戳的事件中的后一个时间戳的事件(简称第二个时间戳的事件),以及第二个时间戳的事件的下一个时间戳的事件。其中,第二个时间戳的事件的下一个时间戳的事件可指代:第二个时间戳的事件在事件流数据中的下一个相邻的时间戳的事件,当然也可指代:第二个时间戳的事件在事件流数据中间隔几个之后的下一个时间戳的事件。
在前述示例中,ISP获取事件流数据中的下两个时间戳的事件是指:获取时间戳A1的事件和时间戳A2的事件。
S211、判断是否停止拍摄视频。
如前述实施例中步骤S116和步骤S117的内容,用户停止拍摄视频,则ISP会接收到相机应用发送的消息。基于此,ISP可通过检测是否收到相机应用发送的消息,来判断是否停止拍摄视频。
其中,若ISP判断用户停止拍摄视频,则执行前述实施例中步骤S118。若ISP判断用户没有停止拍摄视频,则以步骤S210获取的事件流数据中的下两个时间戳的事件,作为要处理的两个时间戳的事件并返回执行步骤S202。
本申请另一实施例还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有指令,当其在计算机或处理器上运行时,使得计算机或处理器执行上述任一个方法中的一个或多个步骤。
计算机可读存储介质可以是非临时性计算机可读存储介质,例如,非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本申请另一实施例还提供了一种包含指令的计算机程序产品。当该计算机程序产品在计算机或处理器上运行时,使得计算机或处理器执行上述任一个方法中的一个或多个步骤。

Claims (17)

1.一种视频处理方法,其特征在于,应用于电子设备,所述电子设备包括事件相机和摄像头,所述视频处理方法,包括:
响应于第一操作,显示慢动作预览界面,其中,所述第一操作用于启动慢动作录制模式,所述慢动作预览界面包括检测框和第一控件,所述第一控件用于控制启动拍摄;
响应于第二操作,获取所述事件相机得到的事件流数据,其中,所述第二操作为对所述第一控件的触发操作;所述事件流数据包括多个事件,每个事件包括时间戳;
利用所述事件流数据,检测所述检测框内显示的物体为运动物体,并计算所述运动物体的运动速度;
记录所述事件流数据中的慢动作的开启时间戳,其中,利用所述慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度,用于确定出大于预设值的速度验证值;所述慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度对应的速度验证值大于所述预设值,表征所述慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度达到开启慢动作功能的条件;
利用速度基准值,确定慢动作倍率,所述速度基准值由利用所述慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度得到;
利用所述慢动作倍率,调整所述摄像头拍摄的视频流位于第一时间段内的图像的播放帧率,其中,所述第一时间段包括:慢动作的开启时间戳在所述事件流数据中的前一个时间戳和所述慢动作的开启时间戳之间的时间段。
2.根据权利要求1所述的视频处理方法,其特征在于,所述利用所述事件流数据,检测所述检测框内存在运动物体,并计算所述运动物体的运动速度,包括:
针对所述事件流数据中的每两个时间戳的事件,利用所述事件流数据中的每两个时间戳的事件,检测所述检测框内显示的物体为运动物体,并计算所述运动物体的运动速度。
3.根据权利要求2所述的视频处理方法,其特征在于,所述事件流数据中的每两个时间戳的事件,包括:所述事件流数据中的每相邻的两个时间戳的事件;或者,所述事件流数据中、且每间隔预设数量时间戳的两个时间戳的事件。
4.根据权利要求1至3中任意一项所述的视频处理方法,其特征在于,所述慢动作倍率为多个,且一个所述慢动作倍率对应一个慢动作的开启时间戳,每个所述慢动作倍率设置于所述慢动作倍率对应的慢动作的开启时间戳对应的事件中。
5.根据权利要求4所述的视频处理方法,其特征在于,所述慢动作的开启时间戳在所述事件流数据中的前一个时间戳,包括:
所述慢动作的开启时间戳在所述事件流数据中的前一个相邻时间戳,或者,位于所述事件流数据之前,且与所述慢动作的开启时间戳间隔预设数量的时间戳。
6.根据权利要求4所述的视频处理方法,其特征在于,所述利用所述慢动作倍率,调整所述摄像头拍摄的视频流位于第一时间段内的图像的播放帧率,包括:
所述利用每个所述慢动作倍率,调整所述摄像头拍摄的视频流位于每个慢动作倍率对应的第一时间段内的图像的播放帧率,其中,所述每个慢动作倍率对应的第一时间段,包括:所述慢动作倍率对应的慢动作的开启时间戳在所述事件流数据中的前一个时间戳,和所述慢动作倍率对应的慢动作的开启时间戳之间的时间段。
7.根据权利要求6所述的视频处理方法,其特征在于,所述利用每个所述慢动作倍率,调整所述摄像头拍摄的视频流位于每个慢动作倍率对应的第一时间段内的图像的播放帧率,包括:
针对每个所述慢动作倍率,利用所述慢动作倍率,计算所述慢动作倍率对应的第一时间段内的图像的播放帧率;
以利用每个所述慢动作倍率计算得到的图像的播放帧率,编码所述摄像头拍摄的视频流位于每个所述慢动作倍率对应的第一时间段内的图像。
8.根据权利要求7所述的视频处理方法,其特征在于,所述利用每个所述慢动作倍率计算得到的图像的播放帧率,编码所述摄像头拍摄的视频流位于每个所述慢动作倍率对应的第一时间段内的图像之前,还包括:
确定所述利用每个所述慢动作倍率计算得到的图像的播放帧率不小于预设帧率。
9.根据权利要求8所述的视频处理方法,其特征在于,还包括:
确定所述利用所述慢动作倍率计算得到的图像的播放帧率小于预设帧率;
对所述摄像头拍摄的视频流位于所述慢动作倍率对应的第一时间段内的图像,进行插帧处理,以使得插帧处理之后的所述摄像头拍摄的视频流位于所述慢动作倍率对应的第一时间段内的图像的播放帧率,不小于所述预设帧率。
10.根据权利要求1所述的视频处理方法,其特征在于,所述慢动作倍率和所述速度基准值正相关。
11.根据权利要求1所述的视频处理方法,其特征在于,所述速度基准值由利用所述慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度得到,包括:
所述速度基准值包括:利用所述慢动作的开启时间戳对应的事件计算得到的多个运动物体的运动速度中的最大值或平均值,或者,利用所述慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度。
12.根据权利要求1所述的视频处理方法,其特征在于,所述速度验证值,包括:利用所述慢动作的开启时间戳对应的事件计算得到的多个运动物体的运动速度中的最大值或平均值,或者,利用所述慢动作的开启时间戳对应的事件计算得到的运动物体的运动速度。
13.根据权利要求1所述的视频处理方法,其特征在于,所述利用所述慢动作倍率,调整所述摄像头拍摄的视频流位于第一时间段内的图像的播放帧率,包括:
响应于第三操作,利用所述慢动作倍率,调整所述摄像头拍摄的视频流位于第一时间段内的图像的播放帧率;其中,所述第三操作为控制停止拍摄视频的操作。
14.根据权利要求1所述的视频处理方法,其特征在于,响应于第二操作,获取所述事件相机得到的事件流数据,包括:
相机应用响应于所述第二操作,向图像信号处理器ISP发送第一消息,以通过所述ISP计算慢动作倍率;
所述ISP接收所述第一消息,获取所述事件相机得到的事件流数据。
15.根据权利要求1所述的视频处理方法,其特征在于,所述利用所述事件流数据,检测所述检测框内显示的物体为运动物体,并计算所述运动物体的运动速度,包括:
ISP利用所述事件流数据,检测所述检测框内显示的物体为运动物体,并计算所述运动物体的运动速度。
16.一种电子设备,其特征在于,包括:
一个或多个处理器、存储器、事件相机、摄像头和显示屏;
所述存储器、所述摄像头、所述事件相机和所述显示屏与所述一个或多个所述处理器耦合,所述存储器用于存储计算机程序,所述计算机程序包括计算机指令,当所述一个或多个处理器执行所述计算机指令时,所述电子设备执行如权利要求1至15任意一项所述的视频处理方法。
17.一种计算机可读存储介质,其特征在于,用于存储计算机程序,所述计算机程序被执行时,具体用于实现如权利要求1至15任意一项所述的视频处理方法。
CN202210412449.3A 2022-04-19 2022-04-19 视频处理方法、电子设备及可读介质 Active CN114979465B (zh)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN202210412449.3A CN114979465B (zh) 2022-04-19 2022-04-19 视频处理方法、电子设备及可读介质
CN202310651028.0A CN116916149A (zh) 2022-04-19 2022-04-19 视频处理方法、电子设备及可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210412449.3A CN114979465B (zh) 2022-04-19 2022-04-19 视频处理方法、电子设备及可读介质

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN202310651028.0A Division CN116916149A (zh) 2022-04-19 2022-04-19 视频处理方法、电子设备及可读介质

Publications (2)

Publication Number Publication Date
CN114979465A CN114979465A (zh) 2022-08-30
CN114979465B true CN114979465B (zh) 2023-06-23

Family

ID=82976640

Family Applications (2)

Application Number Title Priority Date Filing Date
CN202310651028.0A Pending CN116916149A (zh) 2022-04-19 2022-04-19 视频处理方法、电子设备及可读介质
CN202210412449.3A Active CN114979465B (zh) 2022-04-19 2022-04-19 视频处理方法、电子设备及可读介质

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN202310651028.0A Pending CN116916149A (zh) 2022-04-19 2022-04-19 视频处理方法、电子设备及可读介质

Country Status (1)

Country Link
CN (2) CN116916149A (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115601842B (zh) * 2022-11-28 2023-11-24 荣耀终端有限公司 一种自动抓拍的方法、电子设备及存储介质
CN115661941B (zh) * 2022-12-09 2023-06-09 荣耀终端有限公司 手势识别方法和电子设备

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112422863A (zh) * 2019-08-22 2021-02-26 华为技术有限公司 一种智能录像方法和装置
CN112771843A (zh) * 2020-06-15 2021-05-07 深圳市大疆创新科技有限公司 信息处理方法、装置和成像系统

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105493187A (zh) * 2013-10-04 2016-04-13 英特尔公司 用于动态调整视频回放速度的技术
KR102449872B1 (ko) * 2015-12-18 2022-09-30 삼성전자주식회사 촬영 디바이스 및 그 제어 방법
US11159742B2 (en) * 2016-06-30 2021-10-26 Intel Corporation High-speed video from camera arrays
CN108875708A (zh) * 2018-07-18 2018-11-23 广东工业大学 基于视频的行为分析方法、装置、设备、系统及存储介质
CN112532865B (zh) * 2019-09-19 2022-07-19 华为技术有限公司 慢动作视频拍摄方法及电子设备

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112422863A (zh) * 2019-08-22 2021-02-26 华为技术有限公司 一种智能录像方法和装置
CN112771843A (zh) * 2020-06-15 2021-05-07 深圳市大疆创新科技有限公司 信息处理方法、装置和成像系统

Also Published As

Publication number Publication date
CN116916149A (zh) 2023-10-20
CN114979465A (zh) 2022-08-30

Similar Documents

Publication Publication Date Title
JP7326476B2 (ja) スクリーンショット方法及び電子装置
CN114915726A (zh) 一种拍摄方法及电子设备
CN114979465B (zh) 视频处理方法、电子设备及可读介质
CN112887583B (zh) 一种拍摄方法及电子设备
US11949978B2 (en) Image content removal method and related apparatus
KR101727169B1 (ko) 이미지 필터를 생성하기 위한 방법 및 장치
EP4117272A1 (en) Image processing method and apparatus
CN112650405B (zh) 一种电子设备的交互方法及电子设备
CN116069212B (zh) 一种应用卡片的快速查看方法、电子设备及存储介质
WO2022262475A1 (zh) 拍摄方法、图形用户界面及电子设备
CN112218136B (zh) 视频处理方法、装置、计算机设备及存储介质
CN110290426B (zh) 展示资源的方法、装置、设备及存储介质
CN114827342B (zh) 视频处理方法、电子设备及可读介质
CN113709354A (zh) 一种拍摄方法及电子设备
CN113596319A (zh) 基于画中画的图像处理方法、设备、存储介质和程序产品
CN115550597A (zh) 一种拍摄方法、系统及电子设备
CN114070993B (zh) 摄像方法、装置、摄像设备及可读存储介质
CN116320783B (zh) 一种录像中抓拍图像的方法及电子设备
CN114866860A (zh) 一种播放视频的方法及电子设备
CN115967851A (zh) 快速拍照方法、电子设备及计算机可读存储介质
CN115115679A (zh) 一种图像配准方法及相关设备
CN111275607B (zh) 界面显示方法、装置、计算机设备及存储介质
CN115802148B (zh) 一种获取图像的方法及电子设备
CN110012225B (zh) 一种图像处理的方法、装置以及移动终端
CN115734032A (zh) 视频剪辑方法、电子设备及存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant