CN116137037A - 相机运动场景确定方法及装置、可读介质和电子设备 - Google Patents
相机运动场景确定方法及装置、可读介质和电子设备 Download PDFInfo
- Publication number
- CN116137037A CN116137037A CN202111364063.1A CN202111364063A CN116137037A CN 116137037 A CN116137037 A CN 116137037A CN 202111364063 A CN202111364063 A CN 202111364063A CN 116137037 A CN116137037 A CN 116137037A
- Authority
- CN
- China
- Prior art keywords
- scene
- angular velocity
- camera
- target
- frequency
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/20—Analysis of motion
- G06T7/246—Analysis of motion using feature-based methods, e.g. the tracking of corners or segments
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/73—Determining position or orientation of objects or cameras using feature-based methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T7/00—Image analysis
- G06T7/70—Determining position or orientation of objects or cameras
- G06T7/77—Determining position or orientation of objects or cameras using statistical methods
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2207/00—Indexing scheme for image analysis or image enhancement
- G06T2207/10—Image acquisition modality
- G06T2207/10016—Video; Image sequence
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Computer Vision & Pattern Recognition (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Bioinformatics & Computational Biology (AREA)
- Evolutionary Biology (AREA)
- Probability & Statistics with Applications (AREA)
- Image Analysis (AREA)
Abstract
本公开提供一种相机运动场景确定方法及装置、计算机可读介质和电子设备,涉及视频防抖技术领域。该方法包括:获取拍摄目标视频时所采集的相机姿态参数;构建滑动时间窗口,并通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据;对所述目标统计数据进行分类,确定拍摄所述目标视频时的至少一种相机运动场景。本公开能够通过惯性测量数据快速准确识别相机运动场景,计算复杂度低,识别效率高,支持实时处理。
Description
技术领域
本公开涉及视频防抖技术领域,具体涉及一种相机运动场景确定方法、相机运动场景确定装置、计算机可读介质和电子设备。
背景技术
随着科学技术的飞速发展,人们越来越喜欢通过智能手机上的相机记录生活。为了让用户有更好的相机拍摄体验,相机或手机厂商针对相机拍照或拍摄视频开发算法,使拍摄的照片更加清晰,视频更加稳定,而不同的相机运动场景所采用的算法并不相同。
目前,相关技术方案中要么仅能检测出相机的运动,无法准确识别相机的运动场景,要么只能识别一种运动场景,无法实现对多类型相机运动场景的检测,并且计算量大,识别效率低,检测结果也会出现明显跳变,不适用于实时检测环境。
发明内容
本公开的目的在于提供一种相机运动场景确定方法、相机运动场景确定装置、计算机可读介质和电子设备,进而至少在一定程度上提高相机运动场景的识别效率,降低计算量,提升检测结果的稳定性。
根据本公开的第一方面,提供一种相机运动场景确定方法,包括:
获取拍摄目标视频时所采集的相机姿态参数;
构建滑动时间窗口,并通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据;
对所述目标统计数据进行分类,确定拍摄所述目标视频时的至少一种相机运动场景。
根据本公开的第二方面,提供一种相机运动场景确定装置,包括:
姿态参数获取模块,用于获取实时拍摄目标视频时所采集的相机姿态参数;
统计数据计算模块,用于构建滑动时间窗口,并通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据;
运动场景确定模块,用于对所述目标统计数据进行分类,确定拍摄所述目标视频时的至少一种相机运动场景。
根据本公开的第三方面,提供一种计算机可读介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述的方法。
根据本公开的第四方面,提供一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储一个或多个程序,当一个或多个程序被一个或多个处理器执行时,使得一个或多个处理器实现上述的方法。
本公开的一种实施例所提供的相机运动场景确定方法,获取拍摄目标视频时所采集的相机姿态参数,然后可以构建滑动时间窗口,并通过滑动时间窗口中的相机姿态参数计算目标统计数据,对目标统计数据进行分类,确定拍摄目标视频时的至少一种相机运动场景。一方面,通过相机姿态参数计算目标统计数据,并通过对目标统计数据进行分类得到至少一种相机运动场景,不仅能够实现对多种相机运动场景的识别,并且通过对目标统计数据进行分类的方式检测相机运动场景,能够有效降低计算量,提升检测效率,适用于实时检测环境;另一方面,通过构建滑动时间窗口实现对相机姿态参数的处理,能够有效避免由于相机姿态参数误差而导致检测结果突变的情况,提升检测结果的稳定性,提高检测结果的准确度。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1示出了可以应用本公开实施例的一种示例性系统架构的示意图;
图2示出了可以应用本公开实施例的一种电子设备的示意图;
图3示意性示出本公开示例性实施例中一种相机运动坐标轴的示意图;
图4示意性示出本公开示例性实施例中一种相机运动场景确定方法的流程示意图;
图5示意性示出本公开示例性实施例中一种在环拍场景下滑动时间窗口采集得到的三个方向轴的平均角速度变化的曲线示意图;
图6示意性示出本公开示例性实施例中一种在静止场景下滑动时间窗口采集得到的三个方向轴的平均角速度变化的曲线示意图;
图7示意性示出本公开示例性实施例中一种在小幅度低频场景下滑动时间窗口采集得到的三个方向轴的平均角速度变化的曲线示意图;
图8示意性示出本公开示例性实施例中一种在大幅度低频场景下滑动时间窗口采集得到的三个方向轴的平均角速度变化的曲线示意图;
图9示意性示出本公开示例性实施例中一种在高频振动场景下滑动时间窗口采集得到的三个方向轴的平均角速度变化的曲线示意图;
图10示意性示出本公开示例性实施例中一种在环拍场景、静止场景、小幅度低频场景、大幅度低频场景、高频振动场景下的滑动时间窗口中最大角速度与三个方向轴的平均角速度的比例的变化示意图;
图11示意性示出本公开示例性实施例中一种检测环拍场景的流程示意图;
图12示意性示出本公开示例性实施例中一种在环拍场景下通过离散傅里叶变换得到滑动时间窗口中角速度数据各频率波形的分布示意图;
图13示意性示出本公开示例性实施例中一种在静止场景下通过离散傅里叶变换得到滑动时间窗口中角速度数据各频率波形的分布示意图;
图14示意性示出本公开示例性实施例中一种在小幅度低频场景下通过离散傅里叶变换得到滑动时间窗口中角速度数据各频率波形的分布示意图;
图15示意性示出本公开示例性实施例中一种在大幅度低频场景下通过离散傅里叶变换得到滑动时间窗口中角速度数据各频率波形的分布示意图;
图16示意性示出本公开示例性实施例中一种在高频振动场景下通过离散傅里叶变换得到滑动时间窗口中角速度数据各频率波形的分布示意图;
图17示意性示出本公开示例性实施例中一种检测高频振动场景的流程示意图;
图18示意性示出本公开示例性实施例中一种在环拍场景、静止场景、小幅度低频场景、大幅度低频场景、高频振动场景下的滑动时间窗口中最大角速度的变化示意图;
图19示意性示出本公开示例性实施例中一种在环拍场景、静止场景、小幅度低频场景、大幅度低频场景、高频振动场景下的滑动时间窗口中最大角速度方差的变化示意图;
图20示意性示出本公开示例性实施例中一种检测大幅度低频场景的流程示意图;
图21示意性示出本公开示例性实施例中一种检测小幅度低频场景的流程示意图;
图22示意性示出本公开示例性实施例中一种对检测结果进行平滑的流程示意图;
图23示意性示出本公开示例性实施例中一种确定相机运动场景的流程示意图;
图24示意性示出本公开示例性实施例中一种分层次确定目标视频的相机运动场景的流程示意图;
图25示意性示出本公开示例性实施例中相机运动场景确定装置的组成示意图。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
图1示出了可以应用本公开实施例的一种相机运动场景确定方法及装置的示例性应用环境的系统架构的示意图。
如图1所示,系统架构100可以包括终端设备101、102、103中的一个或多个,网络104和服务器105。网络104用以在终端设备101、102、103和服务器105之间提供通信链路的介质。网络104可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。终端设备101、102、103可以是各种具有图像采集功能的电子设备,包括但不限于台式计算机、便携式计算机、智能手机和平板电脑等等。应该理解,图1中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。比如服务器105可以是多个服务器组成的服务器集群等。
本公开实施例所提供的相机运动场景确定方法一般由终端设备101、102、103中执行,相应地,相机运动场景确定装置一般设置于终端设备101、102、103中。但本领域技术人员容易理解的是,本公开实施例所提供的相机运动场景确定方法也可以由服务器105执行,相应的,相机运动场景确定装置也可以设置于服务器105中,本示例性实施例中对此不做特殊限定。
举例而言,在一种示例性实施例中,可以是用户通过终端设备101、102、103将拍摄目标视频时所采集的相机姿态参数上传至服务器105,服务器通过本公开实施例所提供的相机运动场景确定方法检测得到至少一种相机运动场景后,将检测结果传输给终端设备101、102、103等,以使终端设备101、102、103根据检测结果调用相应的视频防抖算法对图像或者视频进行处理。
本公开的示例性实施方式提供一种用于实现相机运动场景确定方法的电子设备,其可以是图1中的终端设备101、102、103或服务器105。该电子设备至少包括处理器和存储器,存储器用于存储处理器的可执行指令,处理器配置为经由执行可执行指令来执行相机运动场景确定方法。
下面以图2中的移动终端200为例,对电子设备的构造进行示例性说明。本领域技术人员应当理解,除了特别用于移动目的的部件之外,图2中的构造也能够应用于固定类型的设备。在另一些实施方式中,移动终端200可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或软件和硬件的组合实现。各部件间的接口连接关系只是示意性示出,并不构成对移动终端200的结构限定。在另一些实施方式中,移动终端200也可以采用与图2不同的接口连接方式,或多种接口连接方式的组合。
如图2所示,移动终端200具体可以包括:处理器210、内部存储器221、外部存储器接口222、通用串行总线(Universal Serial Bus,USB)接口230、充电管理模块240、电源管理模块241、电池242、天线1、天线2、移动通信模块250、无线通信模块260、音频模块270、扬声器271、受话器272、麦克风273、耳机接口274、传感器模块280、显示屏290、摄像模组291、指示器292、马达293、按键294以及用户标识模块(subscriber identification module,SIM)卡接口295等。其中传感器模块280可以包括深度传感器2801、压力传感器2802、陀螺仪传感器2803等。
处理器210可以包括一个或多个处理单元,例如:处理器210可以包括应用处理器(Application Processor,AP)、调制解调处理器、图形处理器(Graphics ProcessingUnit,GPU)、图像信号处理器(Image Signal Processor,ISP)、控制器、视频编解码器、数字信号处理器(Digital Signal Processor,DSP)、基带处理器和/或神经网络处理器(Neural-Network Processing Unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
NPU为神经网络(Neural-Network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现移动终端200的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
处理器210中设置有存储器。存储器可以存储用于实现六个模块化功能的指令:检测指令、连接指令、信息管理指令、分析指令、数据传输指令和通知指令,并由处理器210来控制执行。
充电管理模块240用于从充电器接收充电输入。电源管理模块241用于连接电池242、充电管理模块240与处理器210。电源管理模块241接收电池242和/或充电管理模块240的输入,为处理器210、内部存储器221、显示屏290、摄像模组291和无线通信模块260等供电。
移动终端200的无线通信功能可以通过天线1、天线2、移动通信模块250、无线通信模块260、调制解调处理器以及基带处理器等实现。其中,天线1和天线2用于发射和接收电磁波信号;移动通信模块250可以提供应用在移动终端200上的包括2G/3G/4G/5G等无线通信的解决方案;调制解调处理器可以包括调制器和解调器;无线通信模块260可以提供应用在移动终端200上的包括无线局域网(Wireless Local Area Networks,WLAN)(如无线保真(Wireless Fidelity,Wi-Fi)网络)、蓝牙(Bluetooth,BT)等无线通信的解决方案。在一些实施例中,移动终端200的天线1和移动通信模块250耦合,天线2和无线通信模块260耦合,使得移动终端200可以通过无线通信技术与网络以及其他设备通信。
移动终端200通过GPU、显示屏290及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏290和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器210可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
移动终端200可以通过ISP、摄像模组291、视频编解码器、GPU、显示屏290及应用处理器等实现拍摄功能。其中,ISP用于处理摄像模组291反馈的数据;摄像模组291用于捕获静态图像或视频;数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号;视频编解码器用于对数字视频压缩或解压缩,移动终端200还可以支持一种或多种视频编解码器。
外部存储器接口222可以用于连接外部存储卡,例如Micro SD卡,实现扩展移动终端200的存储能力。外部存储卡通过外部存储器接口222与处理器210通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器221可以用于存储计算机可执行程序代码,可执行程序代码包括指令。内部存储器221可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储移动终端200使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器221可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(Universal Flash Storage,UFS)等。处理器210通过运行存储在内部存储器221的指令和/或存储在设置于处理器中的存储器的指令,执行移动终端200的各种功能应用以及数据处理。
移动终端200可以通过音频模块270、扬声器271、受话器272、麦克风273、耳机接口274及应用处理器等实现音频功能。例如音乐播放、录音等。
深度传感器2801用于获取景物的深度信息。在一些实施例中,深度传感器可以设置于摄像模组291。
压力传感器2802用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器2802可以设置于显示屏290。压力传感器2802的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。
陀螺仪传感器2803可以用于确定移动终端200的运动姿态。在一些实施方式中,可以通过陀螺仪传感器2803确定移动终端200围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器2803可以用于拍摄防抖、导航、体感游戏场景等。
此外,还可以根据实际需要在传感器模块280中设置其他功能的传感器,例如气压传感器、磁传感器、加速度传感器、距离传感器、接近光传感器、指纹传感器、温度传感器、触摸传感器、环境光传感器、骨传导传感器等。
移动终端200中还可包括其它提供辅助功能的设备。例如,按键294包括开机键,音量键等,用户可以通过按键输入,产生与移动终端200的用户设置以及功能控制有关的键信号输入。再如,指示器292、马达293、SIM卡接口295等。
目前大多数具有图像采集功能的终端设备,如智能手机等,均会配置惯性测量单元(Inertial Measurement Unit,IMU)。一般而言,IMU会安装在被测物体的重心上,IMU在运行时可以测量当前时刻相机沿相机坐标系中三个轴运动的角速度。
为方便说明以及理解,本公开实施例中的相机坐标系可以如图3所示,当终端设备处于默认屏幕方向时,X轴为水平向右延伸,Y轴为垂直向上延伸,Z轴为垂直于屏幕向外延伸,容易理解的是,在图3所示的相机坐标系中,屏幕后面的坐标将具有负Z值。
在相关技术中,关于相机运动场景检测分类的方案较少,大多是一些运动检测方案,如一种方案中是通过提取视频帧的SURF(Speeded Up Robust Features,加速稳健特征)特征描述子,然后匹配相邻视频帧的SURF特征描述子得到相邻帧的运动情况,另一种方案是将视频帧表示成具有顶点X、Y和t的图像体,然后将图像体沿着(X,t)或(Y,t)平面分片绘制曲线,然后通过对视频子集曲线搜索来定位运动,但是,这两种方案只能检测出当前帧时刻相机的运动情况,而没有对当前时刻相机运动场景进一步分类。
另外,一种技术方案中是在全景SLAM(Simultaneous Localization andMapping,即时定位与地图构建)中使用运动传感器来检测相机的平移运动,另一种技术方案是使用场景流来判断当前相机是否是剧烈运动,但是,第一种技术方案只能够检测平移运动场景,第二种技术方案只能够检测剧烈运动场景,运动场景检测太单一,无法实现对包含多种类型相机运动场景的检测。
还有一种技术方案是通过传感器采集预定时间段内移动终端的运动数据,然后统计运动数据中最大值超过预定值的次数,最后根据所述次数分析出移动终端当前的运动场景,但是,这种技术方案的运动场景检测结果容易受噪声数据的影响,检测结果误差大,检测结果不平滑,并且检测结果会有明显跳变。
再还有一种技术方案是使用图像内容来分析相机运动场景,但是这种技术方案通过图像内容分析相机运动场景时,计算开销较大,不利于实时检测环境。
基于相关技术方案中的一个或者多个问题,本公开首先提供了一种相机运动场景确定方法,下面以终端设备执行该方法为例,对本公开示例性实施方式的相机运动场景确定方法进行具体说明。
图4示出了本示例性实施方式中一种相机运动场景确定方法的流程,包括以下步骤S410至步骤S420:
在步骤S410中,获取拍摄目标视频时所采集的相机姿态参数。
在一示例性实施例中,相机姿态数据是指用于表征拍摄目标视频对应的相机姿态的数据,例如,相机姿态数据可以是拍摄目标视频时终端设备采集的惯性测量数据,也可以是拍摄目标视频时终端设备采集的重力加速度数据,本示例实施例对此不作限定。
在步骤S420中,构建滑动时间窗口,并通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据。
在一示例性实施例中,滑动时间窗口是指能够根据指定的单位长度来框住时间序列,从而计算框内的统计指标的一种数据统计方式,相当于一个长度指定的滑块正在刻度尺上面滑动,每滑动一个时间单位即可反馈滑块内的数据,例如,滑动时间窗口可以是当前时刻周围固定大小为90帧的窗口,也可以是当前时刻周围固定大小为60帧的窗口,当然,滑动时间窗口的大小具体根据实际应用场景进行自定义确定,如精度要求较小、特征变化较平滑的应用场景可以选择较大的滑动时间窗口,精度要求较大、特征变化较频繁的应用场景可以选择较小滑动时间窗口,本示例实施例对此不做任何特殊限定。
目标统计数据是指与相机姿态参数相关联、能够用于区别不同相机运动场景下的相机姿态参数的统计数据,例如,目标统计数据可以是相机姿态参数中的最值特征,也可以是相机姿态参数的变化波动频率,当然,还可以其他与相机姿态参数相关联、能够用于区别不同相机运动场景下的相机姿态参数的统计数据,本示例实施例对此不作特殊限定。
在步骤S430中,对所述目标统计数据进行分类,确定拍摄所述目标视频时的至少一种相机运动场景。
在一示例性实施例中,相机运动场景是指通过终端设备上的相机拍摄视频时的运动变化情况,例如,相机运动场景可以是用户握持终端设备慢走的拍摄场景,也可以是将终端设备固定在交通工具上进行拍摄的拍摄场景,当然,还可以其他各种类型的运动场景,本示例实施例不一一举例说明。
本实施例中根据不同相机运动场景的运动变化规律,可以将多种多样的相机运动场景划分为五种基本相机运动场景,这五个基本相机运动场景可以是环拍场景、高频振动场景、大幅度低频场景、小幅度低频场景,静止场景。
其中,环拍场景是指相机绕自身某一轴做绕轴旋转运动的运动场景,例如,环拍场景可以是用户手持终端设备进行拍摄并原地旋转以对周围的景物转拍摄的运动场景。
高频振动场景是指相机在拍摄过程中做高频率的振动,例如,高频振动场景可以是将相机固定在机动车辆上进行拍摄的运动场景,此时发动机会带着相机一起做高频振动。
大幅度低频场景是指相机的运动幅度较大、运动频率较低的运动场景,例如大幅度低频场景可以是用户手持相机在跑动的过程中进行拍摄的运动场景。
小幅度低频场景是指相机的运动幅度较小、运动频率较低的运动场景,例如小幅度低频场景可以是用户手持相机平缓走动时进行拍摄的运动场景。
静止场景是指相机处于静止状态时进行拍摄的场景,例如,静止场景可以是将相机静止放置在三脚架上进行拍摄的场景。
下面对步骤S410至步骤S430进行详细解释说明。
在一示例性实施例中,相机姿态参数可以包括惯性测量数据,惯性测量数据是终端设备中的惯性测量单元在相机进行拍摄时实时采集的数据,该数据可以用于表征相机的姿态,拍摄得到的视频中每一帧图像都对应一个惯性测量数据。
该惯性测量数据可以包括当前时刻相机沿着三个方向轴(即X轴、Y轴、Z轴)运动的角速度,角速度是指描述物体绕圆心运动的快慢程度的数据,即角速度用于单位时间内沿着某个方向轴转动的速度。
可选的,可以将开始拍摄时采集的一定时间段内的惯性测量数据、以及即将结束拍摄时采集的一定时间段内的惯性测量数据进行剔除,这样可以避免由于用户开启相机以及关闭相机时产生的抖动对检测结果的影响,减少噪声数据,提升检测结果的稳定性以及准确性。
图5至图9分别示意性示出了本示例实施例中通过实验数据测得的在环拍场景、静止场景、小幅度低频场景、大幅度低频场景、高频振动场景下滑动时间窗口采集得到的三个方向轴的平均角速度变化的示意图。参考图5至图9中各运动场景的三个方向轴的平均角速度变化曲线可以明显看出,在环拍场景下某一方向轴的滑动时间窗口采集到的平均角速度的绝对值明显大于另外两个方向轴,且旋转轴的角速度绝对值较大。因此可以通过一方向轴的平均角速度与另外两个方向轴的平均角速度的差距确定属于环拍场景的惯性测量数据。
在一示例实施例中,可以对滑动时间窗口中惯性测量数据进行平均计算,得到三个方向轴各自对应的平均角速度,进而可以确定平均角速度中的最大角速度。
举例而言,假设当前时刻对应的滑动时间窗口的大小为90帧,那么每帧都对应一个惯性测量数据,对这90个惯性测量数据中相同方向轴对应的角速度求平均值得到该方向轴对应的平均角速度,如得到三个方向轴各自对应的平均角速度分别为vx,vy,vz,那么可以平均角速度中的最大角速度可以表示为关系式(1),关系式(1)如下:
vmax=max(|vx|,|vy|,|vz|) (1)
其中,vmax可以表示最大角速度,max可以表示取最大值,|vx|可以表示沿着X方向轴运动的平均角速度的绝对值,|vy|可以表示沿着Y方向轴运动的平均角速度的绝对值,|vz|可以表示沿着Z方向轴运动的平均角速度的绝对值。
但是,通过对图7、图8、图9的分析可以看出,小幅度低频场景、大幅度低频场景、高频振动场景下某一方向轴对应的平均角速度的绝对值也是有可能大于另外两个方向轴的平均角速度的绝对值的,无法有效将环拍场景与小幅度低频场景、大幅度低频场景、高频振动场景进行区分,因此还需要找到其他能够有效区分环拍场景与其他类型的相机运动场景的目标统计数据。
图10示意性示出了本示例实施例中通过实验数据测得的环拍场景、静止场景、小幅度低频场景、大幅度低频场景、高频振动场景下的滑动时间窗口中最大角速度与三个方向轴的平均角速度的比例的变化示意图。参考图10可以发现,各类型的相机运动场景中,只有环拍场景对应的最大角速度与三个方向轴的平均角速度的比例一直稳定在固定值附近,而其他类型的相机运动场景的比例关系随机变化。因此,可以继续将最大角速度与三个方向轴的平均角速度的比例数据作为筛选环拍场景的目标统计数据。
在一示例性实施例中,根据对图5至图9的分析可知,环拍场景下最大角速度的曲线变化有一定规律,因此可以将最大角速度作为分类环拍场景的目标统计数据,根据对图10的分析可知,可以通过最大角速度与三个方向轴的平均角速度的比例数据将环拍场景与其他类型的相机运动场进行有效区分,因此可以将最大角速度与三个方向轴的平均角速度的比例数据作为分类环拍场景的目标统计数据。
本示例实施例中可以计算最大角速度的平方与平均角速度的平方和之间的比例数据,并将最大角速度与比例数据作为目标统计数据。通过对最大角速度进行平方,并对各个方向轴的平均角速度进行平方,并将最大角速度的平方与平均角速度的平方和之间的比例数据作为目标统计数据,相比于将最大角速度与三个方向轴的平均角速度的比例数据作为目标统计数据,能够将较小的差异进行放大,这样可以更加容易筛选出环拍场景,提高环拍场景的筛选准确性。
举例而言,可以通过关系式(2)计算比例数据:
其中,P可以表示最大角速度与三个方向轴的平均角速度的比例数据,vmax可以表示最大角速度,vx可以表示沿着X方向轴运动的平均角速度,vy可以表示沿着Y方向轴运动的平均角速度的绝对值,vz可以表示沿着Z方向轴运动的平均角速度的绝对值。
在一示例性实施例中,可以通过图11中的步骤实现对目标统计数据的分类,参考图11所示,具体可以包括:
步骤S1110,获取第一角速度阈值以及比例阈值;
步骤S1120,若确定所述最大角速度大于或者等于所述第一角速度阈值,且所述比例数据大于或者等于所述比例阈值,则确定所述目标统计数据属于所述环拍场景。
其中,第一角速度阈值是指用于筛选最大角速度满足环拍场景的统计特征的数据,例如,第一角速度阈值可以是0.4,也可以是0.3,当然,还可以是其他阈值,具体可以根据实际的应用场景进行自定义设置,本示例实施例对此不做任何特殊限定。
比例阈值是指用于筛选最大角速度与三个方向轴的平均角速度的比例满足环拍场景的统计特征的数据,例如,比例阈值可以是0.95,也可以是0.9,具体可以根据实际的应用场景进行自定义设置,本示例实施例对此不做任何特殊限定。
通过对图5至图10的分析可知,在当前时刻的滑动时间窗口中的最大角速度大于或者等于第一角速度阈值,且比例数据大于或者等于比例阈值时,就可以认为当前时刻的相机运动场景是环拍场景,因此将满足该条件的目标统计数据认定为属于环拍场景,即当前时刻的运动场景的检测结果为环拍场景。
可以理解的是,如果确定最大角速度小于第一角速度阈值,或者比例数据小于比例阈值,或者最大角速度小于第一角速度阈值且比例数据小于比例阈值,则可以认为该运动场景不是环拍场景,继续对目标统计数据按照其他运动场景的统计特征进行分类。
通过对实验结果的分析,可以将最大角速度以及最大角速度与三个方向轴的平均角速度的比例数据作为目标统计数据,并通过预先设定的第一角速度阈值以及比例阈值将目标统计数据进行分类,以实现将环拍场景与其他类型的相机运动场景区分开,环拍场景的识别准确度较高,同时对目标统计数据的分类过程的计算量较小,节省系统计算开销的同时,提高检测效率。
图12至图16分别示意性示出了本示例实施例中通过实验数据测得的在环拍场景、静止场景、小幅度低频场景、大幅度低频场景、高频振动场景下通过离散傅里叶变换得到滑动时间窗口中角速度数据各频率波形的分布示意图。参考图12至图16中各运动场景下角速度数据各频率波形的分布曲线可以明显看出,高频振动场景在高频波形的分布权重更大。因此可以通过滑动时间窗口中的角速度数据的平均波动频率确定属于高频振动场景的惯性测量数据。
在一示例性实施例中,可以在剔除掉噪声数据后,以幅值为权重计算滑动时间窗口中的角速度数据的平均波动频率,并可以将最大角速度以及平均波动频率作为目标统计数据。
举例而言,可以通过关系式(3)计算滑动时间窗口中的角速度数据的平均波动频率:
其中,f可以表示滑动时间窗口中的角速度数据的平均波动频率,fi可以表示不同波形对应的频率,Ai可以表示频率为fi的波形与原数据信号的相关系数。
可选的,可以通过图17中的步骤实现对目标统计数据的分类,参考图17所示,具体可以包括:
步骤S1710,获取第二角速度阈值以及波动频率阈值;
步骤S1720,若确定所述最大角速度大于或者等于所述第二角速度阈值,且所述平均波动频率大于或者等于所述波动频率阈值,则确定所述目标统计数据属于所述高频振动场景。
其中,第二角速度阈值是指用于筛选最大角速度满足高频振动场景的统计特征的数据,例如,第二角速度阈值可以是0.1,也可以是0.2,当然,还可以是其他阈值,具体可以根据实际的应用场景进行自定义设置,本示例实施例对此不做任何特殊限定。
波动频率阈值是指用于筛选平均波动频率满足高频振动场景的统计特征的数据,例如,平均波动频率可以是90Hz,也可以是100Hz,具体可以根据实际的应用场景进行自定义设置,本示例实施例对此不做任何特殊限定。
通过对图12至图16的分析可知,在当前时刻的滑动时间窗口中的最大角速度大于或者等于第二角速度阈值,且平均波动频率大于或者等于波动频率阈值时,就可以认为当前时刻的相机运动场景是高频振动场景,因此将满足该条件的目标统计数据认定为属于高频振动场景,即当前时刻的运动场景的检测结果为高频振动场景。
可以理解的是,如果确定最大角速度小于第二角速度阈值,或者平均波动频率小于波动频率阈值,或者最大角速度小于第二角速度阈值且平均波动频率小于波动频率阈值,则可以认为该运动场景不是高频振动场景,继续对目标统计数据按照其他运动场景的统计特征进行分类。
通过对实验结果的分析,可以将最大角速度以及平均波动频率作为目标统计数据,并通过预先设定的第二角速度阈值以及波动频率阈值将目标统计数据进行分类,以实现将高频振动场景与其他类型的相机运动场景区分开,高频振动场景的识别准确度较高,同时对目标统计数据的分类过程的计算量较小,节省系统计算开销的同时,提高检测效率。
图18示意性示出了本示例实施例中通过实验数据测得的环拍场景、静止场景、小幅度低频场景、大幅度低频场景、高频振动场景下的滑动时间窗口中最大角速度的变化示意图。参考图18所示,可以看出,静止场景、小幅度低频场景、大幅度低频场景的最大角速度有着明显差异,即大幅度低频场景的最大角速度大于小幅度低频场景的最大角速度,小幅度低频场景的最大角速度大于静止场景的最大角速度。
图19示意性示出了本示例实施例中通过实验数据测得的环拍场景、静止场景、小幅度低频场景、大幅度低频场景、高频振动场景下的滑动时间窗口中最大角速度方差的曲线变化示意图。参考图19所示,可以看出,静止场景、小幅度低频场景、大幅度低频场景的最大角速度方差也存在着明显差异,即大幅度低频场景的最大角速度方差大于小幅度低频场景的最大角速度方差,小幅度低频场景的最大角速度方差大于静止场景的最大角速度方差。
通过图18以及图19的分析可知,可以通过最大角速度以及最大角速度方差对静止场景、小幅度低频场景、大幅度低频场景进行有效区分。
在一示例性实施例中,可以计算滑动时间窗口中三个方向轴各自对应的角速度方差,然后确定角速度方差中的最大角速度方差,并将最大角速度以及最大角速度方差作为目标统计数据。
举例而言,假设当前时刻对应的滑动时间窗口的大小为90帧,那么每帧都对应一个惯性测量数据,对这90个惯性测量数据中相同方向轴对应的角速度求方差得到该方向轴对应的角速度方差,如得到三个方向轴各自对应的角速度方差分别为dx,dy,dz,那么可以角速度方差中的最大角速度方差可以表示为关系式(4):
dmax=max(dx,dy,dz) (4)
其中,dmax可以表示最大角速度方差,max可以表示取最大值,dx可以表示沿着X方向轴运动的角速度的方差,dy可以表示沿着Y方向轴运动的角速度的方差,dz可以表示沿着Z方向轴运动的角速度的方差。
在一示例性实施例中,可以通过图20中步骤对对目标统计数据进行分类,参考图20所示,具体可以包括:
步骤S2010,若确定所述目标统计数据不属于环拍场景,则获取第三角速度阈值和第一角速度方差阈值;
步骤S2020,若所述最大角速度大于或者等于第三角速度阈值,且所述最大角速度方差大于或者等于第一角速度方差阈值,则确定所述目标统计数据属于所述大幅度低频场景。
其中,第三角速度阈值是指用于筛选最大角速度满足大幅度低频场景的统计特征的数据,例如,第三角速度阈值可以是0.5,也可以是0.6,当然,还可以是其他阈值,具体可以根据实际的应用场景进行自定义设置,本示例实施例对此不做任何特殊限定。
第一角速度方差阈值是指用于筛选最大角速度方差满足大幅度低频场景的统计特征的数据,例如,第一角速度方差阈值可以是0.3,也可以是0.4,具体可以根据实际的应用场景进行自定义设置,本示例实施例对此不做任何特殊限定。
在确定目标统计数据不属于环拍场景时,可以通过第三角速度阈值以及第一角速度方差阈值将目标统计数据进行分类,确定出大幅度低频场景。
通过对实验结果的分析,可以将最大角速度以及最大角速度方差作为目标统计数据,用于对静止场景、小幅度低频场景、大幅度低频场景三个统计分布特征较为相似的相机运动场进行区分;并通过预先设定的第三角速度阈值以及第一角速度方差阈值将目标统计数据进行分类,以实现将大幅度低频场景与静止场景、小幅度低频场景进行有效区分,提高大幅度低频场景的识别准确度。
在一示例性实施例中,可以通过图21中步骤对对目标统计数据进行分类,参考图21所示,具体可以包括:
步骤S2110,若确定所述目标统计数据不属于环拍场景,且不属于大幅度低频场景,则获取第四角速度阈值和第二角速度方差阈值;
步骤S2120,若所述最大角速度大于或者等于第四角速度阈值,且所述最大角速度方差大于或者等于第二角速度方差阈值,则确定所述目标统计数据属于所述小幅度低频场景。
其中,第四角速度阈值是指用于筛选最大角速度满足小幅度低频场景的统计特征的数据,例如,第三角速度阈值可以是0.1,也可以是0.2,当然,还可以是其他阈值,具体可以根据实际的应用场景进行自定义设置,本示例实施例对此不做任何特殊限定。
第二角速度方差阈值是指用于筛选最大角速度方差满足小幅度低频场景的统计特征的数据,例如,第二角速度方差阈值可以是0.03,也可以是0.04,具体可以根据实际的应用场景进行自定义设置,本示例实施例对此不做任何特殊限定。
在确定目标统计数据不属于环拍场景,且不属于大幅度低频场景时,可以通过第四角速度阈值以及第二角速度方差阈值将目标统计数据进行分类,确定出小幅度低频场景。
通过对实验结果的分析,可以将最大角速度以及最大角速度方差作为目标统计数据,用于对静止场景、小幅度低频场景、大幅度低频场景三个统计分布特征较为相似的相机运动场进行区分;并通过预先设定的第四角速度阈值以及第二角速度方差阈值将目标统计数据进行分类,以实现将小幅度低频场景与静止场景进行有效区分,提高小幅度低频场景的识别准确度。
在一示例性实施例中,可以在确定目标统计数据不属于环拍场景、不属于高频振动场景、不属于大幅度低频场景以及不属于小幅度低频场景时,则可以确定目标统计数据属于静止场景。
由于环拍场景和高频振动场景具有较明显的统计分布特征,因此可以通过较明显的目标统计数据先将环拍场景和高频振动场景分类出来,如可以通过最大角速度以及最大角速度与平均角速度的比例数据将环拍场景先分类出来,或者可以通过最大角速度以及平均波动频率将高频振动场景先分类出来。在确定既不是环拍场景,也不是高频振动场景时,可以对大幅度低频场景、小幅度低频场景、静止场景这三个属于低频运动的、分布特征较为相似的场景,通过最大角速度以及最大角速度方差上的差异性进行逐步分类筛选,确定出大幅度低频场景、小幅度低频场景或者静止场景,实现对目标视频的相机运动场景的准确识别,这样在保证检测结果准确性的同时,时间复杂度低,有效减少系统的计算开销,使相机运动场景的检测可以适用于实时处理系统,提高相机运动场景的检测的适用范围。
在一示例性实施例中,可以通过图22中的步骤实现对检测结果的平滑,参考图22所示,具体可以包括:
步骤S2210,获取所述滑动时间窗口中确定的各相机运动场景的原始置信度;
步骤S2220,根据所述原始置信度计算各相机运动场景的指数加权平均值,并将所述指数加权平均值作为各相机运动场景的真实置信度;
步骤S2230,对所述滑动时间窗口中各相机运动场景的所述真实置信度进行排序,并计算最大真实置信度与次最大真实置信度之间的差值;
步骤S2240,获取置信度差值阈值,若确定所述差值大于或者等于所述置信度差值阈值,则将所述最大真实置信度对应的相机运动场景作为最终输出结果;
步骤S2250,若确定所述差值小于所述置信度差值阈值,则将上一时刻的滑动时间窗口对应的相机运动场景作为最终输出结果。
其中,置信度是指滑动时间窗口中检测到的多个运动相机场景的可信程度,例如,对于时刻为t的滑动时间窗口,系统检测出可能的相机运动场景有环拍场景、大幅度低频场景,其中,环拍场景的置信度为0.9,大幅度低频场景的置信度为0.1,则说明系统认定该滑动时间窗口属于环拍场景的概率有90%,属于大幅度低频场景的概率有10%。当然,此处仅是示意性举例说明,并不应对本示例实施例造成任何特殊限定。
由于即使使用了90帧的滑动时间窗口中的数据,但是对于60FPS的视频也不过只有1.5秒,在整个连续的运动过程中某些滑动时间窗口的检测结果可能会产生突变,为了进一步保证检测结果的稳定性,可以通过滑动平均来对场景检测结果平滑。例如可以通过原始置信度对应的指数加权平均值重新表征检测出的相机运动场景的置信度,即真实置信度。
举例而言,可以通过关系式(5)计算原始置信度对应的真实置信度,即原始置信度对应的指数加权平均值,关系式(5)可以如下所示:
ct=βct-1+(1-β)θt (5)
其中,ct可以表示t时刻检测结果的原始置信度对应的指数加权平均值,ct-1可以表示t-1时刻检测结果的原始置信度对应的指数加权平均值,θt可以表示某个相机运动场景的置信度,β可以表示预先设置的权重数据,例如,权重数据可以是0.95,也可以是0.9,当然,该权重数据可以根据实际应用场景进行自定义设置,本示例实施例对此不做特殊限定。
可以理解的是,如果简单的将最大真实置信度对应的相机运动场景作为当前的相机运动场景,那么若两个相机运动场景A和B的真实置信度相差不大时,那么可能会出现运动场景A和B交替获得最大真实置信度的情况,仍然会造成相机运动场景的检测结果的波动。
进一步的,可以将滑动时间窗口中各相机运动场景的真实置信度进行排序,并计算最大真实置信度与次最大真实置信度之间的差值,若确定差值大于或者等于置信度差值阈值,此时可以认为相机运动场景的检测结果不会产生波动,则可以将最大真实置信度对应的相机运动场景作为最终输出结果。
可以在确定最大真实置信度与次最大真实置信度之间的差值小于置信度差值阈值时,可以认为相机运动场景的检测结果会产生波动,此时可以将上一时刻的滑动时间窗口对应的相机运动场景作为最终输出结果,以保证相机运动场景的检测结果的稳定性。
通过确定滑动时间窗口中相机运动场景的最大真实置信度与次最大真实置信度之间的差值是否超过置信度差值阈值,并在差值小于置信度差值阈值时将上一时刻的检测结果作为当前时刻的检测结果,避免检测结果的波动,实现相机运动场景的检测结果的平滑与稳定,便于后续处理,避免由于检测结果波动导致系统频繁重新计算而产生的系统性能下降的问题,保证系统的处理效率。
图23示意性示出本公开示例性实施例中一种确定相机运动场景的流程示意图。
参考图23所示,步骤S2310,获取实时拍摄的目标视频以及该目标视频对应的惯性测量数据;
步骤S2320,构建滑动时间窗口,并统计滑动时间窗口中的惯性测量数据得到目标统计数据;
步骤S2330,对目标统计数据进行分类,确定检测结果,检测结果可以包括至少一种相机运动场景;
步骤S2340,通过平滑策略对确定的检测结果进行平滑,平滑策略可以是如图22所示的处理流程;
步骤S2350,输出最终检测结果。
图24示意性示出本公开示例性实施例中一种分层次确定目标视频的相机运动场景的流程示意图。
参考图24所示,步骤S2330可以通过步骤S2410至步骤S2480实现对目标统计数据进行分类,确定检测结果:
步骤S2410,对目标视频进行环拍场景检测,例如,可以通过滑动时间窗口中的最大角速度以及最大角速度与各轴的平均角速度的比例数据对环拍场景进行检测;
步骤S2420,判断环拍场景是否检测成功,若检测成功,则直接执行步骤S2470,否则继续执行步骤S2430;
步骤S2430,对目标视频进行高频振动场景检测,例如,可以通过滑动时间窗口中的最大角速度以及平均波动频率对高频振动场景进行检测;
步骤S2440,判断高频振动场景是否检测成功,若检测成功,则直接执行步骤S2470,否则继续执行步骤S2450;
步骤S2450,对目标视频进行其他类型的运动场景检测,例如,可以通过滑动时间窗口中的最大角速度以及最大角速度方差对静止场景、小幅度低频场景、大幅度低频场景进行分层检测;
步骤S2460,判断静止场景、小幅度低频场景、大幅度低频场景是否检测成功,若检测成功,则执行步骤S2470,否则继续执行步骤S2480;
步骤S2470,通过图22中的平滑策略对检测结果进行平滑处理;
步骤S2480,确定最终输出结果。
在一示例性实施例中,可以获取相机运动场景对应的视频防抖策略,根据视频防抖策略对目标视频进行防抖处理,得到平滑稳定显示的目标视频。其中,视频防抖策略是指终端设备制造商根据不同的相机运动场景设置的用于提高目标视频的拍摄质量的防抖算法,例如,在检测到目标视频属于环拍场景时,视频防抖策略可以是对目标视频的上下抖动幅度进行消除,以保证环拍场景下目标视频的稳定性和平滑性,当然,视频防抖策略还可以是预先设置好的其他类型的相机运动场景对应的防抖算法,本示例实施例不以此为限。
可以理解的是,目标视频可以包括至少一种相机运动场景,例如,一种拍摄场景是用户手持终端设备进行环拍后,然后跑步到机动车辆,并将相机固定在机动车辆上进行拍摄的拍摄场景,那么对于该目标视频,应用本示例实施例中的相机运动场景确定方法,可以检测出第一段时间的环拍场景、第二段时间的大幅度低频场景、第三段时间的高频振动场景,那么在对目标视频进行防抖处理时,对目标视频在第一段时间匹配环拍场景对应的视频防抖策略进行防抖处理,对目标视频在第二段时间匹配大幅度低频场景对应的视频防抖策略进行防抖处理,对目标视频在第三段时间匹配高频振动场景对应的视频防抖策略进行防抖处理,最终实现目标视频的防抖处理,得到平滑稳定显示的目标视频。当然,此处仅是示意性举例说明,并不应对本示例实施例造成任何特殊限定。
综上所述,本示例性实施方式中,获取拍摄目标视频时所采集的相机姿态参数,然后可以构建滑动时间窗口,并通过滑动时间窗口中的相机姿态参数计算目标统计数据,对目标统计数据进行分类,确定拍摄目标视频时的至少一种相机运动场景。一方面,通过相机姿态参数计算目标统计数据,并通过对目标统计数据进行分类得到至少一种相机运动场景,不仅能够实现对多种相机运动场景的识别,并且通过对目标统计数据进行分类的方式检测相机运动场景,能够有效降低计算量,提升检测效率,适用于实时检测环境;另一方面,通过构建滑动时间窗口实现对相机姿态参数的处理,能够有效避免由于相机姿态参数误差而导致检测结果突变的情况,提升检测结果的稳定性,提高检测结果的准确度。
需要注意的是,上述附图仅是根据本公开示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
进一步的,参考图25所示,本示例的实施方式中还提供一种相机运动场景确定装置2500,可以包括姿态参数获取模块2510、统计数据计算模块2520和运动场景确定模块2530。其中:
姿态参数获取模块2510用于获取拍摄目标视频时所采集的相机姿态参数;
统计数据计算模块2520用于构建滑动时间窗口,并通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据;
运动场景确定模块2530用于对所述目标统计数据进行分类,确定拍摄所述目标视频时的至少一种相机运动场景。
在一示例性实施例中,相机姿态参数可以包括惯性测量数据,惯性测量数据可以包括三个方向轴各自对应的角速度;相机运动场景确定装置2500可以包括最大角速度确定单元,该最大角速度确定单元可以用于:
对所述滑动时间窗口中所述惯性测量数据进行平均计算,得到三个方向轴各自对应的平均角速度;
确定所述平均角速度中的最大角速度。
在一示例性实施例中,统计数据计算模块2520可以用于:
计算所述最大角速度的平方与所述平均角速度的平方和之间的比例数据;
将所述最大角速度与所述比例数据作为所述目标统计数据。
在一示例性实施例中,相机运动场景可以包括环拍场景,运动场景确定模块2530可以用于:
获取第一角速度阈值以及比例阈值;
若确定所述最大角速度大于或者等于所述第一角速度阈值,且所述比例数据大于或者等于所述比例阈值,则确定所述目标统计数据属于所述环拍场景。
在一示例性实施例中,统计数据计算模块2520可以用于:
计算所述滑动时间窗口中的角速度数据的平均波动频率;
将所述最大角速度以及所述平均波动频率作为所述目标统计数据。
在一示例性实施例中,相机运动场景可以包括高频振动场景,运动场景确定模块2530可以用于:
获取第二角速度阈值以及波动频率阈值;
若确定所述最大角速度大于或者等于所述第二角速度阈值,且所述平均波动频率大于或者等于所述波动频率阈值,则确定所述目标统计数据属于所述高频振动场景。
在一示例性实施例中,统计数据计算模块2520可以用于:
计算所述滑动时间窗口中三个方向轴各自对应的角速度方差;
确定所述角速度方差中的最大角速度方差;
将所述最大角速度以及所述最大角速度方差作为所述目标统计数据。
在一示例性实施例中,相机运动场景可以包括大幅度低频场景,运动场景确定模块2530可以用于:
若确定所述目标统计数据不属于环拍场景,则获取第三角速度阈值和第一角速度方差阈值;
若所述最大角速度大于或者等于第三角速度阈值,且所述最大角速度方差大于或者等于第一角速度方差阈值,则确定所述目标统计数据属于所述大幅度低频场景。
在一示例性实施例中,相机运动场景可以包括小幅度低频场景,运动场景确定模块2530可以用于:
若确定所述目标统计数据不属于环拍场景,且不属于大幅度低频场景,则获取第四角速度阈值和第二角速度方差阈值;
若所述最大角速度大于或者等于第四角速度阈值,且所述最大角速度方差大于或者等于第二角速度方差阈值,则确定所述目标统计数据属于所述小幅度低频场景。
在一示例性实施例中,相机运动场景可以包括静止场景,运动场景确定模块2530可以用于:
若确定所述目标统计数据不属于环拍场景、不属于高频振动场景、不属于大幅度低频场景、不属于小幅度低频场景,则确定所述目标统计数据属于所述静止场景。
在一示例性实施例中,相机运动场景确定装置2500可以用于:
获取所述滑动时间窗口中确定的各相机运动场景的原始置信度;
根据所述原始置信度计算各相机运动场景的指数加权平均值,并将所述指数加权平均值作为各相机运动场景的真实置信度;
对所述滑动时间窗口中各相机运动场景的所述真实置信度进行排序,并计算最大真实置信度与次最大真实置信度之间的差值;
获取置信度差值阈值,若确定所述差值大于或者等于所述置信度差值阈值,则将所述最大真实置信度对应的相机运动场景作为最终输出结果;
若确定所述差值小于所述置信度差值阈值,则将上一时刻的滑动时间窗口对应的相机运动场景作为最终输出结果。
在一示例性实施例中,相机运动场景确定装置2500可以用于:
获取所述相机运动场景对应的视频防抖策略;
根据所述视频防抖策略对所述目标视频进行防抖处理,得到平滑稳定显示的目标视频。
上述装置中各模块的具体细节在方法部分实施方式中已经详细说明,未披露的细节内容可以参见方法部分的实施方式内容,因而不再赘述。
所属技术领域的技术人员能够理解,本公开的各个方面可以实现为系统、方法或程序产品。因此,本公开的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
本公开的示例性实施方式还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本公开的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当程序产品在终端设备上运行时,程序代码用于使终端设备执行本说明书上述“示例性方法”部分中描述的根据本公开各种示例性实施方式的步骤。
需要说明的是,本公开所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
在本公开中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本公开中,计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
此外,可以以一种或多种程序设计语言的任意组合来编写用于执行本公开操作的程序代码,程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限。
Claims (15)
1.一种相机运动场景确定方法,其特征在于,包括:
获取拍摄目标视频时所采集的相机姿态参数;
构建滑动时间窗口,并通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据;
对所述目标统计数据进行分类,确定拍摄所述目标视频时的至少一种相机运动场景。
2.根据权利要求1所述的方法,其特征在于,所述相机姿态参数包括惯性测量数据,所述惯性测量数据包括三个方向轴各自对应的角速度;所述方法还包括:
对所述滑动时间窗口中所述惯性测量数据进行平均计算,得到三个方向轴各自对应的平均角速度;
确定所述平均角速度中的最大角速度。
3.根据权利要求2所述的方法,其特征在于,所述通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据,包括:
计算所述最大角速度的平方与所述平均角速度的平方和之间的比例数据;
将所述最大角速度与所述比例数据作为所述目标统计数据。
4.根据权利要求3所述的方法,其特征在于,所述相机运动场景包括环拍场景,所述对所述目标统计数据进行分类,包括:
获取第一角速度阈值以及比例阈值;
若确定所述最大角速度大于或者等于所述第一角速度阈值,且所述比例数据大于或者等于所述比例阈值,则确定所述目标统计数据属于所述环拍场景。
5.根据权利要求2所述的方法,其特征在于,所述通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据,包括:
计算所述滑动时间窗口中的角速度数据的平均波动频率;
将所述最大角速度以及所述平均波动频率作为所述目标统计数据。
6.根据权利要求5所述的方法,其特征在于,所述相机运动场景包括高频振动场景,所述对所述目标统计数据进行分类,包括:
获取第二角速度阈值以及波动频率阈值;
若确定所述最大角速度大于或者等于所述第二角速度阈值,且所述平均波动频率大于或者等于所述波动频率阈值,则确定所述目标统计数据属于所述高频振动场景。
7.根据权利要求2所述的方法,其特征在于,所述通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据,包括:
计算所述滑动时间窗口中三个方向轴各自对应的角速度方差;
确定所述角速度方差中的最大角速度方差;
将所述最大角速度以及所述最大角速度方差作为所述目标统计数据。
8.根据权利要求7所述的方法,其特征在于,所述相机运动场景包括大幅度低频场景,所述对所述目标统计数据进行分类,包括:
若确定所述目标统计数据不属于环拍场景,则获取第三角速度阈值和第一角速度方差阈值;
若所述最大角速度大于或者等于第三角速度阈值,且所述最大角速度方差大于或者等于第一角速度方差阈值,则确定所述目标统计数据属于所述大幅度低频场景。
9.根据权利要求8所述的方法,其特征在于,所述相机运动场景包括小幅度低频场景,所述对所述目标统计数据进行分类,包括:
若确定所述目标统计数据不属于环拍场景,且不属于大幅度低频场景,则获取第四角速度阈值和第二角速度方差阈值;
若所述最大角速度大于或者等于第四角速度阈值,且所述最大角速度方差大于或者等于第二角速度方差阈值,则确定所述目标统计数据属于所述小幅度低频场景。
10.根据权利要求9所述的方法,其特征在于,所述相机运动场景包括静止场景,所述对所述目标统计数据进行分类,包括:
若确定所述目标统计数据不属于环拍场景、不属于高频振动场景、不属于大幅度低频场景、不属于小幅度低频场景,则确定所述目标统计数据属于所述静止场景。
11.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述滑动时间窗口中确定的各相机运动场景的原始置信度;
根据所述原始置信度计算各相机运动场景的指数加权平均值,并将所述指数加权平均值作为各相机运动场景的真实置信度;
对所述滑动时间窗口中各相机运动场景的所述真实置信度进行排序,并计算最大真实置信度与次最大真实置信度之间的差值;
获取置信度差值阈值,若确定所述差值大于或者等于所述置信度差值阈值,则将所述最大真实置信度对应的相机运动场景作为最终输出结果;
若确定所述差值小于所述置信度差值阈值,则将上一时刻的滑动时间窗口对应的相机运动场景作为最终输出结果。
12.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述相机运动场景对应的视频防抖策略;
根据所述视频防抖策略对所述目标视频进行防抖处理,得到平滑稳定显示的目标视频。
13.一种相机运动场景确定装置,其特征在于,包括:
姿态参数获取模块,用于获取拍摄目标视频时所采集的相机姿态参数;
统计数据计算模块,用于构建滑动时间窗口,并通过所述滑动时间窗口中的所述相机姿态参数计算目标统计数据;
运动场景确定模块,用于对所述目标统计数据进行分类,确定拍摄所述目标视频时的至少一种相机运动场景。
14.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至12中任一项所述的方法。
15.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1至12任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111364063.1A CN116137037A (zh) | 2021-11-17 | 2021-11-17 | 相机运动场景确定方法及装置、可读介质和电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111364063.1A CN116137037A (zh) | 2021-11-17 | 2021-11-17 | 相机运动场景确定方法及装置、可读介质和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116137037A true CN116137037A (zh) | 2023-05-19 |
Family
ID=86333110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111364063.1A Pending CN116137037A (zh) | 2021-11-17 | 2021-11-17 | 相机运动场景确定方法及装置、可读介质和电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116137037A (zh) |
-
2021
- 2021-11-17 CN CN202111364063.1A patent/CN116137037A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108596976B (zh) | 相机姿态追踪过程的重定位方法、装置、设备及存储介质 | |
CN109086709B (zh) | 特征提取模型训练方法、装置及存储介质 | |
CN109299315B (zh) | 多媒体资源分类方法、装置、计算机设备及存储介质 | |
WO2020069116A1 (en) | Techniques for generating media content | |
CN110650379B (zh) | 视频摘要生成方法、装置、电子设备及存储介质 | |
CN110163066B (zh) | 多媒体数据推荐方法、装置及存储介质 | |
CN111432245B (zh) | 多媒体信息的播放控制方法、装置、设备及存储介质 | |
CN110933468A (zh) | 播放方法、装置、电子设备及介质 | |
CN108156374A (zh) | 一种图像处理方法、终端及可读存储介质 | |
CN111738365B (zh) | 图像分类模型训练方法、装置、计算机设备及存储介质 | |
CN111104980A (zh) | 确定分类结果的方法、装置、设备及存储介质 | |
CN111416996B (zh) | 多媒体文件检测方法、播放方法、装置、设备及存储介质 | |
CN111836073B (zh) | 视频清晰度的确定方法、装置、设备及存储介质 | |
CN111625682A (zh) | 视频的生成方法、装置、计算机设备及存储介质 | |
WO2020221121A1 (zh) | 视频查询方法、装置、设备及存储介质 | |
CN112843677B (zh) | 一种系统延时确定方法、装置、设备和存储介质 | |
CN110675473A (zh) | 生成gif动态图的方法、装置、电子设备及介质 | |
CN110853124A (zh) | 生成gif动态图的方法、装置、电子设备及介质 | |
CN112001442A (zh) | 特征检测方法、装置、计算机设备及存储介质 | |
CN109671425B (zh) | 音频分类方法、装置及存储介质 | |
CN116137037A (zh) | 相机运动场景确定方法及装置、可读介质和电子设备 | |
CN111488895A (zh) | 对抗数据生成方法、装置、设备及存储介质 | |
CN113343709B (zh) | 意图识别模型的训练方法、意图识别方法、装置及设备 | |
WO2021129444A1 (zh) | 文件聚类方法及装置、存储介质和电子设备 | |
CN111259252B (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 |