CN113572993A - 一种视频处理方法及移动终端 - Google Patents
一种视频处理方法及移动终端 Download PDFInfo
- Publication number
- CN113572993A CN113572993A CN202010345609.8A CN202010345609A CN113572993A CN 113572993 A CN113572993 A CN 113572993A CN 202010345609 A CN202010345609 A CN 202010345609A CN 113572993 A CN113572993 A CN 113572993A
- Authority
- CN
- China
- Prior art keywords
- video frame
- processor
- motion
- video
- mobile terminal
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N5/00—Details of television systems
- H04N5/76—Television signal recording
-
- 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/63—Control of cameras or camera modules by using electronic viewfinders
- H04N23/631—Graphical user interfaces [GUI] specially adapted for controlling image capture or setting capture parameters
- H04N23/632—Graphical 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
-
- 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/68—Control of cameras or camera modules for stable pick-up of the scene, e.g. compensating for camera body vibrations
- H04N23/682—Vibration or motion blur correction
-
- 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/80—Camera processing pipelines; Components thereof
- H04N23/81—Camera processing pipelines; Components thereof for suppressing or minimising disturbance in the image signal generation
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- Studio Devices (AREA)
Abstract
本申请提供一种视频处理方法及移动终端,能够根据运动强度的变化,动态调整EIS的视频帧裁切比例,提高视频拍摄时画面的稳定性,提升用户的录像体验。本申请提供的移动终端包括摄像头、显示屏、运动传感器、处理器;摄像头用于录制视频;显示屏用于显示视频录制界面;运动传感器用于在摄像头录制视频时持续采集运动数据;根据运动数据,确定运动强度是否变化;若运动强度发生变化,视频录制界面用于显示启动动态防抖的提示;显示屏用于接收点击所述提示的触摸操作,处理器用于执行动态防抖。
Description
技术领域
本申请涉及视频技术领域,尤其涉及一种视频处理的方法及移动终端。
背景技术
在视频拍摄者手持终端设备进行视频拍摄时,由于拍摄者手持不问、在运动中拍摄导致终端设备发生抖动。电子图像防抖(electronic image stabilization,EIS)算法通过陀螺仪等运动信息,计算出视频帧成像过程中每个像素的运动矢量,求出单应矩阵建立的输入图与稳像后的输出图像素之间的映射关系,计算运动矢量并对运动路径做平滑性处理。
EIS的实现依赖于对图像的裁剪,但是现有的EIS算法中,由于裁剪比例固定,所以EIS算法能够去除的抖动幅度有限。对于大运动场景来说,裁剪面积不足意味着输出图所需要的像素信息超出了输入图的范围。
发明内容
本申请实施例提供一种视频处理方法及移动终端,能够根据运动强度的变化,动态调整EIS的视频帧裁切比例,提高视频拍摄时画面的稳定性,提升用户的录像体验。
为达上述目的,本申请实施例采用如下方案:
一方面,本申请实施例提供了一种移动终端,该移动终端包括摄像头、显示屏、运动传感器、处理器;
摄像头用于录制视频;显示屏用于显示视频录制界面;
运动传感器用于在摄像头录制视频时持续采集运动数据;
根据运动数据,确定运动强度是否变化;
若运动强度发生变化,视频录制界面用于显示启动动态防抖的提示;
显示屏用于接收点击所述提示的触摸操作,处理器用于执行动态防抖。
在该方案中,用户在录制视频时,如果在大幅度运动的场景下,移动终端可以弹出是否执行动态防抖的提示,以此来提示用户是否开启动态防抖,也即提示用户是否开启动态调整EIS的裁切比例。此种方案给了用户选择权,让用户拥有选择是否使用动态防抖的功能,因为有的用户可能不喜欢裁切比例不断的变化。
在一种可能的设计中,运动传感器包括惯性传感器、加速度传感器、陀螺仪。
在另一种可能的设计中,启动动态防抖的提示包括:动态防抖的说明部分和开关控制部分。
在另一种可能的设计中,摄像头录制视频时会生成视频帧;将运动数据与视频帧进行时间戳对齐,时间戳对齐为根据时间建立运动数据与视频帧的对应关系;对视频帧进行电子图像防抖处理,所述电子图像防抖为对视频帧进行裁切,将经过裁切的所述视频帧进行扭曲;计算视频帧的旋转矢量;根据运动数据,进行路径平滑;路径平滑为优化由所述运动数据组成的曲线;确定移动终端的运动状态;统计经过扭曲的所述视频帧的越界次数;若越界次数大于第一阈值,则增大裁切比例;若越界次数小于等于第一阈值,则保持所述裁切比例。
在另一种可能的设计中,越界为进行所述扭曲前的所述视频帧的部分像素在进行所述扭曲后的所述视频帧中没有定义。
另一方面,本实施例提供一种视频处理方法,包括移动终端的摄像头采集视频帧;
移动终端的运动传感器采集运动数据;
移动终端的处理器将视频帧和运动数据进行时间戳对齐;
处理器对视频帧进行电子图像防抖,电子图像防抖为对视频帧进行裁切,将经过裁切的视频帧进行扭曲;
根据运动数据计算视频帧的旋转矢量;
处理器识别移动终端的运动状态;
处理器对视频帧进行裁切处理,统计经过裁切处理后的视频帧的越界次数;
处理器根据越界次数确定是否调整裁切比例;
若越界次数小于等于第一阈值,则保持裁切比例,处理器计算视频帧对应的H矩阵;根据H矩阵进行图像扭曲处理;
若越界次数大于所述第一阈值,处理器计算视频帧新的裁切比例,生成新的裁切比例下的初始视频帧;
处理器根据移动终端的运动强度变化确定各个所述视频帧的裁切比例;
处理器计算视频帧对应的H矩阵;
根据H矩阵进行图像扭曲处理。
在一种可能的设计中,移动终端的摄像头采集的视频帧存储在存储器的缓存中。
在另一种可能的设计中,运动数据包括:移动终端的加速度、角速度。
在另一种可能的设计中,时间戳对齐为处理器使用样条插值将运动数据由离散值变为连续曲线;处理器对连续曲线进行非线性优化,得到不同连续曲线之间的时间差;处理器循环执行非线性优化,当时间差符合特定条件,循环结束。
在另一种可能的设计中,处理器根据旋转矢量对视频帧进行路径平滑。
在另一种可能的设计中,运动路径平滑为处理器计算运动数据中每两个相邻数据点的向量,并对所有数据点进行遍历;处理器去掉向量相同的两个相邻数据点中的一个;处理器去掉由运动数据组成的数据曲线中的拐点;处理器去掉所有数据点中两个可以直接通过的数据点之间的数据点。
在另一种可能的设计中,越界为经过裁切处理前的视频帧的部分像素在经过裁切处理后的视频帧中没有定义。
在另一种可能的设计中,若越界次数大于第一阈值,移动终端的显示屏显示提示用户开启动态防抖的界面。显示屏接收用户的触摸操作,开启动态防抖。
在另一种可能的设计中,动态防抖为处理器根据运动强度的变化,调整裁切比例。
又一方面,本实施例提供一种计算机可读存储介质,包括指令,当指令在移动终端上运行时,使得移动终端执行上述视频处理的方法。
附图说明
图1是一种经过路径平滑算法处理的陀螺仪数据示意图;
图2A是一种在抖动场景下视频裁切比例的示意图;
图2B是另一种在那个场景下视频裁切比例的示意图;
图3是一种视频处理的方法步骤示意图;
图4A是一种运动传感器确定的运动状态示意图;
图4B是一种不同运动状态下的陀螺仪数据示意图;
图4C是一种不同运动状态下进行运动状态转移的示意图;
图5是一种调整视频裁切比例的方法步骤示意图;
图6是一种开启动态FOV的UI界面示意图;
图7A是一种处理视频抖动的示意图;
图7B是另一种处理视频抖动的示意图;
图8A是一种没有经过路径平滑处理的陀螺仪数据示意图;
图8B是一种经过路径平滑处理的陀螺仪数据示意图;
图9是一种根据运动趋势确定裁切比例尺寸变化的方法步骤示意图;
图10A是一种终端设备采集到的视频帧的示意图;
图10B是一种表示运动强度变化和裁切比例变化的示意图;
图11是另一种表示运动强度变化和裁切比例变化的示意图;
图12是一种调整视频裁切比例的方法步骤示意图;
图13A是一种电子设备的硬件结构示意图;
图13B是一种应用程序框架的结构示意图。
具体实施方式
以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请以下各实施例中,“至少一个”、“一个或多个”是指一个、两个或两个以上。术语“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
下面结合本申请实施例中的附图对本申请实施例进行描述。
现有的EIS算法在计算运动矢量的过程中,需要考虑一段时间窗口内,帧与帧之间的视角变换的平滑性,即运动矢量序列、运动路径需保持一定的平滑性。如图1所示,曲线101为视频拍摄者手持终端拍摄视频时,终端的陀螺仪采集到的数据随时间变化的曲线。图1中的纵轴表示陀螺仪的数据,横轴表示时间数据。曲线102为经过路径平滑算法处理后的陀螺仪数据随时间变化的曲线。路径平滑算法启到的作用是,在不同的帧进行视角变化时,不会由于噪点的出现导致画面出现大幅度的变化而影响观看。EIS防抖算法的实现依赖于对图像的裁剪,而图像的裁剪比例一般是预先设定好的,需要根据互补金属氧化物半导体(complementary metal oxide semiconductor,CMOS)sensor分辨率、图像信号处理器(image signal processor,ISP)处理能力、图像材质(texture)保持等因素来进行设定。而固定的裁剪比例,会导致EIS防抖算法能够去除的抖动幅度受到该裁剪比例的限制。对于剧烈运动的场景,裁剪面积不足会导致视频输出图所需要的像素信息超出了视频输入图的范围。所以为了避免索引到不存在的像素位置,现有的EIS防抖算法采用了增大裁剪面积的方案。但这种方案的缺点是,会导致补偿运动幅度减小、防抖效果减弱的结果。如图2A所示,图像201为采用较小裁剪比例裁剪的视频帧视频帧,箭头203表示图2A中视频帧需要裁切的比例。由图2A可知,在这种情况下,EIS防抖算法能够校正的抖动幅度较小。如图2B所示,图像202为采用较大裁剪比例裁剪的视频帧视频帧,箭头204表示图2B中视频帧需要裁切的比例。由图2B可知,在这种情况下,EIS防抖算法能够校正的抖动幅度较大。所以,随着对图像的裁剪比例的增加,EIS防抖算法能够校正的抖动幅度增大,更加适应于剧烈运动的使用场景。
本申请一实施例,可以根据运动幅度的不同,动态调整裁切比例,以适应不同的运动场景。在小幅运动下,EIS算法使用较低裁切比例,运动幅度增大时,自动进入动态调整模式,自动控制裁切比例,更好地平衡视频稳定性、清晰度和视场角(field of view,FOV)。如图3所示,为一种动态调整裁切比例的方法步骤。在步骤S301中,首先将终端采集到的视频帧元数据进行时间戳对齐。因为视频帧的元数据来源于不同的硬件设备,不同的硬件设备采集的数据在时间上不同。有的元数据来自于经过光学防抖(optical imagestabilization,OIS)的陀螺仪数据,有的元数据来自于惯性测量单元(inertialmeasurement unit,IMU)的角速度和加速度数据,有的元数据来自于图像捕捉单元采集的视频帧。对齐不同的元数据的时间戳有多种算法,以下以一种搜索算法为例,但对齐时间戳的算法并不限于此。时间戳和轨迹是离散记录的,无法直接使用优化方法得到时间差,可以将轨迹通过样条插值变为连续曲线,这样就得到了时间和位姿的近似连续量,然后使用非线性优化的方式求时间差。首先假设两个轨迹的时间差在±10秒以内,以某条轨迹作为reference,选择帧率较高的一个,改变另外一条轨迹的时间戳,从-10秒到+10秒,步长为1秒。这样就得到20条修改时间戳后的轨迹,每一条轨迹都和reference通过时间戳找对应帧即时间戳相差最小的帧,使用求解算法拟合两条轨迹,并计算绝对误差,取误差最小的轨迹对应的时间差,比如-5秒。然后在-5秒±0.1秒的区间内以0.1秒的步长再次做上述操作。直到以0.001秒作为步长搜索后结束。本质上是一种分层次搜索算法。为了提高搜索精度,还可以在使绝对误差最小的时间差附近拟合一条二次曲线,其中自变量是时间差,因变量是绝对误差,取二次曲线的最小值处的时间差作为最终结果。时间搜索的精度依赖于两条轨迹的拟合精度,可以使用交替优化的思想对算法进行优化。将视频帧与OIS和IMU采集的数据进行时间戳对齐,也即把OIS和IMU采集的数据,按照时间戳建立与视频帧一一对应的关系。在步骤S302中,根据经上一步骤时间戳对齐的视频帧,对上述视频帧进行EIS处理。经过EIS处理后,对终端的旋转矢量进行计算,并记录,得出运动路径。上述旋转矢量为,一种描述简谐振动较为直观的几何方法。从坐标原点O(平衡位置)画一矢量,使它的模等于谐振动的振幅A,并令t=0时A与x轴的夹角等于谐振动的初相位φ0,然后使A以等于角频率ω的角速度在平面上绕O点作逆时针转动,这样作出的矢量称为旋转矢量。显然,旋转矢量任一时刻在x轴上的投影x=Acos(ωt+φ0)就描述了一个简谐振动。在步骤S303中,对上一步骤中得到的运动路径进行路径平滑。以下以佛洛依德(Floyd)路径平滑算法为例,但不限于此算法。首先,使用佛洛依德算法把上述运动路径中相邻的共线的点去掉,对所有的数据点进行遍历,并计算相邻的两个向量的方向是否相同。然后,去掉多余的拐点,遍历所有的数据点,去掉其中两个可以直接通过的点之间的点。经过上述两步以后,就可以得到一条平滑的运动路径。在步骤S304中,对终端的运动状态进行识别。具体的识别方法在下文中进行详述。在步骤S305中,根据不同的运动状态,对裁切的画面越界的次数进行统计。如图7A所示,上述越界为,当经过裁切的视频帧进行扭曲操作后,会有部分画面超过未经裁切视频帧的原画幅,此种现象称为“越界”。在步骤S306中,根据不同的越界次数判断是否对裁切比例进行调整。如果不需要调整裁切比例,则进入步骤S307。在步骤S307中,计算各视频帧对应的H矩阵,并进行卷帘门效应(rolling shutter)校正。可以通过罗德里戈公式计算H矩阵,但并不限于此方法。通过罗德里戈公式计算出旋转矩阵,再结合内参矩阵、OIS的平移量,计算出输入图每个像素对应的单应矩阵H。因为CMOS终端在拍摄视频时采取逐行扫描的方式,所以高频率抖动终端即抖动的频率快于一帧刷新的时间,会使得同一帧内的景物出现扭曲的效应,称为卷帘门效应。校正卷帘门效应的方法,首先将图像分成M条,然后在各帧之间平滑第一条图像的R矩阵,最后将视频帧内的其他R矩阵统一对齐到第一条。为了得到平滑的结果,不致使一帧内的各条之间过度太过生硬,使用高斯平滑算法对各视频帧进行路径平滑处理。最后在步骤S314完成对H矩阵的处理,经过对H矩阵的计算,进行图像扭曲(WARP)并输出图像。在步骤S308中,在终端的显示界面提示用户进入动态调整防抖模式,具体情况在下文中详述。在步骤S309中,由用户选择是否进入动态调整防抖模式,如果选择进入动态调整防抖模式则进入下一步骤。如果用户选择不进入动态调整防抖模式,则进入步骤S307。在步骤S310中,确定初始帧,并计算初始帧的裁切比例。在步骤S311中,计算终端运动的趋势,并根据运动的趋势确定现在已经采集的除初始帧外其余各帧的裁切比例。在步骤S312中,对经过步骤S305裁切过的图像做一次运动路径平滑。在步骤S313中,对经过步骤S312处理的各视频帧进行裁切边界保护,避免图像中出现检索不到的像素点,然后进入步骤S307,对重新裁切的图像计算器H矩阵,并做卷帘门效应校正。最后进入步骤S314,完成图像扭曲,并输出图像,上述图像扭曲可以是对H矩阵做仿射变换,仿射变换是一种将二维坐标(x,y)变换到二维坐标(u,v)的线性变换。仿射变换的特点是直线经过仿射变换后依然为直线;直线之间的相对位置关系保持不变,平行线经仿射变换后依然为平行线,且直线上的点的位置顺序不会发生变化;非共线的三对对应点确定一个唯一的仿射变换,也即将一种二维坐标乘了一个矩阵,其中矩阵的特征向量决定了图像变换的方向。上述步骤中,有一些步骤不是必需的,也可以不需要,例如步骤S303、步骤S308、步骤S309、步骤S312、步骤S313。
在一些实施例中,对应上述步骤S304,终端可以基于IMU进行运动状态识别。如图4A所示,终端根据IMU采集的角速度和加速度数据与陀螺仪采集到的数据,对这些数据进行均方根、绝对值积分计算,也可以将数据导入到机器学习预先训练模型中进行学习,得到处理过的数据信息。终端对上述信息进行分类和统计,可以识别不同的运动强度或运动类型。图4A中,将运动状态根据运动强度分了不多的级别,在Level 0中,终端处于静止(static)状态。设置一个运动状态计数器,用来计算运动状态的个数。如图4B所示,为一个不同运动状态的示例。图4B表格中纵轴为陀螺仪的数据,横轴为时间,由图可知,图中左边的部分运动强度较小,识别为走路状态(walking),右边的部分运动强大较大,识别为跑步状态(running)。如图4C所示,为不同运动状态之间的转移。步骤S401为保持相同的运动状态,步骤S402为从低强度的运动状态转换到高强度的运动状态,步骤S403为从高强度的运动状态转换到低强度的运动状态。不同的运动状态转换,终端会在显示屏上弹出提示用户是否进入动态调整防抖的模式,也即上述步骤S308。如果用户选择进入动态调整防抖模式,则需要重新确定裁切的比例。并且对经过重新确定裁切比例的各视频帧,做路径平滑的处理,让视频的显示保持平滑,不出现剧烈的晃动。
在另外一些实施例中,对应上述步骤S304、步骤S305、步骤S306,终端需要根据运动状态的变化,对裁切比例进行调整。如图5所示,为视频帧的裁切比例调整的方法步骤。在步骤S500中,终端将IMU数据与视频帧进行时间戳对齐。步骤S501,判断终端目前的运动状态。在步骤S511中,如果终端的运动强度保持,没有变化,也即上述步骤S401,则进入步骤S512。在步骤S512中,保持视频帧视频帧的裁切比例不变。在步骤S521中,如果终端的运动强度增大,也即上述步骤S402,则进入步骤S522。在步骤S522中,对初始的裁切图像越界次数进行统计。越界是指,裁切后的图像进行防抖校正后,也即进行图像扭曲后,裁切后的图像超过当前显示界面的边界。也即当前显示的界面检索到了没有定义的像素点。在步骤S523中,判断初始的裁切图像越界的统计次数是否大于第一阈值。在步骤S524中,如果初始的裁切图像越界的统计次数没有大于第一阈值,则保持初始的裁切比例。在步骤S525中,如果初始的裁切图像越界的统计次数大于第一阈值,则增大裁切的比例。在步骤S531中,如果运动强度减小,也即上述步骤3,则进入步骤S532。在步骤S532中,先对初始的裁切比例进行缩小。在步骤S533中,统计缩小裁切比例后图像越界的次数。在步骤S534中,判断缩小裁切比例后图像越界的次数是否小于第二阈值。在步骤S535中,如果缩小裁切比例后图像越界次数不小于第二阈值,则保持当前裁切比例。在步骤S536中,如果缩小裁切比例后图像越界次数小于第二阈值,则减小裁切的比例。
在一些实施例中,终端的显示界面可以显示提示用户是否进入动态防抖模式。如图6所示,用户在录制视频的过程中,如果终端判断需要进行裁切比例调整,在视频录制的界面弹出“动态防抖”开启/关闭的提示。界面601为终端进行视频录制的录制画面,界面601上显示经过EIS防抖算法处理过的输出图。当终端在上述步骤S308时,判断需要调整当前裁切比例,则在界面601的区域602自动弹出是否开启“动态防抖”的提示。区域602可位于界面601的任何位置,本申请不做限定。在本实施例中,区域602位于界面601的中间靠下方区域。在区域602中,提示的文字部分可以位于区域602的任何位置,本申请不做限定,本实施例中提示的文字部分位于区域602的上方。提示的文字部分可以为与“动态防抖”意思相近的各种文字,本申请不限制语言的种类以及表达的方式,本实施例以中英文结合的“动态防抖”为例进行说明。在文字提示的下方,有开启和关闭的提示,本申请中不限制开启关闭的语言种类以及表达方式,只要能表达相同的意思即可。开启和关闭的提示可以使用不超过区域602的任意大小字体,本申请不做限制,本实施例以开启和关闭的提示字体字号小于文字提示部分为例。当区域602弹出提示时,用户可以进行触摸或点击操作。用户可以触摸区域602中的文字提示部分,也可以触摸开启和关闭提示部分,本申请不做限制,本实施例以用户触摸区域602的任意部分为例。在用户触摸区域602的任意部分后,开启和关闭提示部分会切换状态,如果是开启状态,则开启部分的显示颜色与关闭部分显示的颜色不同,如果是关闭状态,则原开启部分的显示颜色显示到关闭部分,原关闭部分的显示颜色显示到开启部分。可以理解的是,用户也可以直接触摸开启和关闭部分,如果用户点击开启部分,则开启“动态防抖”相关功能,如果用户点击关闭部分,则关闭“动态防抖”相关功能。
在另外一些实施例中,可以根据当前路径平滑程度、运动强度、触发越界裁切次数等情况,重新确定裁切比例生效的帧和裁切尺寸。当视频帧缓存(buffer)内数据所代表的运动强度达到一定阈值,触发裁切比例调整后,终端可以根据一定步长,循环迭代找到合适的裁切尺寸,本实施例以裁切比例增大为例进行说明。终端根据IMU采集的数据对运动趋势进行预测,并计算当前终端的运动强度。终端重新确定裁切比例的最终目标是根据其运动趋势和运动强度寻找buffer的长度窗口内,可以引起裁切越界的最大的片段。终端可以步进(stepping)地增大裁切比例,步进指的是规律性地增大裁切比例。终端根据每一视频帧的旋转矢量计算输出图的边界点在输入图中的位置,由计算结果可以统计越界的视频帧是哪些,并且可以统计越界的视频帧的数量。通过计算输出图的边界点在输入图中的位置,还可以计算各视频帧的越界尺寸以及各视频帧将越界的部分图像调整到显示区域所需要的调整次数。如图7A所示,如果经计算输出图发生越界的情况,根据初始计算的运动矢量进行调整,发现输出图的部分像素在输入图中无定义。如图7A所示的,左边的视频帧为输入帧,经过计算和图像扭曲后得到右边的图像,也即得到输出图。图7A中所示的情况,即为输出图越界(hit boundary),也即输入图的部分像素在输出图中无定义。终端步进地调整裁切比例,每次步进都计算越界的裁切帧数、计算各越界的裁切帧的尺寸、各越界的裁切帧调整到显示区域内所需要的次数。当上述条件满足一定条件时,如各越界的裁切帧调整到显示区域内所需要的次数满足预设的阈值时,终端就停止步进调整裁切比例。如图7B所示,如果增大裁切的比例,虽然FOV会减小,但是可以保证更少的触发越界情况(crop more,FOVshrink)。如果增大裁切比例,仍然无法让越界的情况减少,则需要降低路径平滑的程度。如图8A和图8B所示,降低路径平滑的程度,如果路径平滑度降低至满足一定条件,如小于预设的某一阈值,越界次数仍然无法满足要求,则继续增大裁切比例,并交替执行以上过程,进行迭代。在迭代的过程中,可以使用越界尺寸和各视频帧调整至显示区域内所需要的次数作为反馈信息,加入到迭代中,自适应地加快迭代的过程,直至找到可以满足条件的视频帧的裁切比例。
在一些实施例中,对应上述步骤S310,终端可以根据运动趋势确定确定是否调整裁切比例。如图9所示,在步骤S900中,终端判断是否触发裁切比例调整。如果触发了裁切比例调整,则进入步骤S910,在步骤S910中视频帧的输入图和输出图匹配裁切比例动态模型。在步骤S911中,根据裁切比例动态模型计算出各视频帧的裁切比例。在步骤S912中,对由新裁切比例处理的输出图进行路径平滑和边界保持处理,也即进行上述实施例中的迭代过程。在步骤S913中,对经过迭代过程确定的裁切比例裁切的视频帧进行图像扭曲(warp)。在步骤S900中,如果终端判断没有触发裁切比例调整,则进入步骤S920,保持当前裁切比例。在步骤S921中,对保持当前裁切比例的视频帧图像进行路径平滑和边界保持处理。在步骤S922中,对经过处理的视频帧进行图像扭曲(warp)。具体的,如图10A所示,当前终端的buffer里存储了2N+1帧,其中N为当前送显帧到最新帧的距离,图10A中的1号帧即为当前送显帧,从2N+1号帧开始进行图像扭曲。如图10B所示,图中的横坐标为时间,纵坐标为经过计算的触发边界的次数。在图10B的第二象限中的曲线101,表示裁切比例为20%时裁切的视频帧触发越界的情况。在图10B的第一象限中的曲线102,表示裁切比例调整到30%时裁切的视频帧触发越界的情况。图10B中的曲线103为经过路径平滑以后的视频帧变化曲线。更进一步地,如图11所示,终端根据运动强度变化的速率调整裁切比例变化的速度,使视角变化更平滑。表示视角的变化可以采用图11的方式,但本申请不做限制,也可采用直线、线段、分段函数直接映射。视角频繁的变化,会造成用户的不适,可以采用如下策略进行限制。如在视频拍摄的过程中,只允许视角发生单方向调整,不允许裁切比例增大后再减小或减小后再增大等。又如,在视频拍摄过程中,只允许视角发生限定次数的调整,例如N次,N为预设的有限数值。又如,在统计不同的运动状态的次数时,当停留在某个运动状态的连续次数达到某一限定次数时,例如M次,才允许视角进行调整。上述对于视角的调整即为对视角裁切比例的调整。
在另一些实施例中,可以根据深度学习的模型来建立运动强度和重新确定裁切比例的映射关系。如图12所示,在步骤S1201中终端采集一定量的视频帧,以单位时间进行视频分段,并且采集IMU和陀螺仪的数据,对这些数据进行均方根和绝对值积分,或者把这些数据输入到机器学习的训练模型中。在步骤S1202中,根据上述传感器采集的数据对每个视频片段内的终端运动强度进行分类和统计。在步骤S1203中,在上述视频片段集内,统计每个视频片段以不同裁切比例裁切时,触发越界的次数,并将其记录。在步骤S1204中,根据记录的不同的视频片段使用的裁切比例,判断触发越界的次数是否小于预设的特定数值,如X阈值。如果触发越界的次数不小于预设的特定数值,则返回步骤S1203继续统计。如果触发越界的次数小于预设的特定数值,则进入步骤S1205。在步骤S1205中,使用神经网络或者机器学习模型对采集的传感器数据进行训练,得到运动强度和最佳裁切比例的对应关系。在步骤S1206中,当第一次检测到根据运动状态或者运动强度需要改变裁切比例时,终端自动提示用户是否开启动态FOV调整模式,具体如图6所示。如果用户选择开启动态FOV调整模式,则根据深度学习模型计算的结果,对裁切比例进行动态调整。
在一些实施例中,终端可以是一种电子设备,如图13A所示,出示了电子设备100的结构示意图。电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本发明实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(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)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。I2S接口和PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
可以理解的是,本发明实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本发明实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图2是本发明实施例的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图13B所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
下面结合捕获拍照场景,示例性说明电子设备100软件以及硬件的工作流程。
当触摸传感器180K接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。以该触摸操作是触摸单击操作,该单击操作所对应的控件为相机应用图标的控件为例,相机应用调用应用框架层的接口,启动相机应用,进而通过调用内核层启动摄像头驱动,通过摄像头193捕获静态图像或视频。
以上描述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内;在不冲突的情况下,本申请的实施例及实施例中的特征可以相互组合。因此,本申请的保护范围应以权利要求的保护范围。
Claims (15)
1.一种移动终端,其特征在于,包括摄像头、显示屏、运动传感器、处理器;
所述摄像头用于录制视频;所述显示屏用于显示视频录制界面;
所述运动传感器用于在所述摄像头录制视频时持续采集运动数据;
根据所述运动数据,确定运动强度是否变化;
若所述运动强度发生变化,所述视频录制界面用于显示启动动态防抖的提示;
所述显示屏用于接收点击所述提示的触摸操作,所述处理器用于执行动态防抖。
2.根据权利要求1所述的移动终端,其特征在于,所述运动传感器包括惯性传感器、加速度传感器、陀螺仪。
3.根据权利要求1所述的移动终端,其特征在于,所述启动动态防抖的提示包括:动态防抖的说明部分和开关控制部分。
4.根据权利要求1所述的移动终端,其特征在于,所述摄像头录制视频时会生成视频帧;将所述运动数据与所述视频帧进行时间戳对齐,所述时间戳对齐为根据时间建立所述运动数据与所述视频帧的对应关系;对所述视频帧进行电子图像防抖处理,所述电子图像防抖为对所述视频帧进行裁切,将经过所述裁切的所述视频帧进行扭曲;计算所述视频帧的旋转矢量;根据所述运动数据,进行路径平滑;所述路径平滑为优化由所述运动数据组成的曲线;确定所述移动终端的运动状态;统计经过所述扭曲的所述视频帧的越界次数;若所述越界次数大于第一阈值,则增大裁切比例;若所述越界次数小于等于第一阈值,则保持所述裁切比例。
5.根据权利要求4所述的移动终端,其特征在于,所述越界为进行所述扭曲前的所述视频帧的部分像素在进行所述扭曲后的所述视频帧中没有定义。
6.一种视频处理方法,其特征在于,包括:
移动终端的摄像头采集视频帧;
所述移动终端的运动传感器采集运动数据;
所述移动终端的处理器将所述视频帧和所述运动数据进行时间戳对齐;
所述处理器对所述视频帧进行电子图像防抖,所述电子图像防抖为对所述视频帧进行裁切,将经过所述裁切的所述视频帧进行扭曲;
根据所述运动数据计算所述视频帧的旋转矢量;
所述处理器识别所述移动终端的运动状态;
所述处理器对所述视频帧进行裁切处理,统计经过所述裁切处理后的所述视频帧的越界次数;
所述处理器根据所述越界次数确定是否调整裁切比例;
若所述越界次数小于等于第一阈值,则保持裁切比例,所述处理器计算所述视频帧对应的H矩阵;根据所述H矩阵进行图像扭曲处理;
若所述越界次数大于所述第一阈值,所述处理器计算所述视频帧新的裁切比例,生成所述新的裁切比例下的初始视频帧;
所述处理器根据所述移动终端的运动强度变化确定各个所述视频帧的裁切比例;
所述处理器计算所述视频帧对应的H矩阵;
根据所述H矩阵进行图像扭曲处理。
7.根据权利要求6所述的方法,其特征在于,所述移动终端的摄像头采集的所述视频帧存储在存储器的缓存中。
8.根据权利要求6所述的方法,其特征在于,所述运动数据包括:所述移动终端的加速度、角速度。
9.根据权利要求6所述的方法,其特征在于,所述时间戳对齐为所述处理器使用样条插值将所述运动数据由离散值变为连续曲线;所述处理器对所述连续曲线进行非线性优化,得到不同所述连续曲线之间的时间差;所述处理器循环执行非线性优化,当所述时间差符合特定条件,所述循环结束。
10.根据权利要求6所述的方法,其特征在于,所述处理器根据所述旋转矢量对所述视频帧进行路径平滑。
11.根据权利要求10所述的方法,其特征在于,所述运动路径平滑为所述处理器计算所述运动数据中每两个相邻数据点的向量,并对所有数据点进行遍历;所述处理器去掉所述向量相同的两个所述相邻数据点中的一个;所述处理器去掉由所述运动数据组成的数据曲线中的拐点;所述处理器去掉所述所有数据点中两个可以直接通过的数据点之间的数据点。
12.根据权利要求6所述的方法,其特征在于,所述越界为经过裁切处理前的所述视频帧的部分像素在经过裁切处理后的所述视频帧中没有定义。
13.根据权利要求6所述的方法,其特征在于,若所述越界次数大于所述第一阈值,所述移动终端的显示屏显示提示用户开启动态防抖的界面;
所述显示屏接收所述用户的触摸操作,开启动态防抖。
14.根据权利要求13所述的方法,其特征在于,所述动态防抖为所述处理器根据所述运动强度的变化,调整所述裁切比例。
15.一种计算机可读存储介质,包括指令,其特征在于,当所述指令在移动终端上运行时,使得所述移动终端执行如权利要求6-14中任一项所述的方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010345609.8A CN113572993B (zh) | 2020-04-27 | 2020-04-27 | 一种视频处理方法及移动终端 |
PCT/CN2021/088267 WO2021218694A1 (zh) | 2020-04-27 | 2021-04-20 | 一种视频处理方法及移动终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010345609.8A CN113572993B (zh) | 2020-04-27 | 2020-04-27 | 一种视频处理方法及移动终端 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113572993A true CN113572993A (zh) | 2021-10-29 |
CN113572993B CN113572993B (zh) | 2022-10-11 |
Family
ID=78157666
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010345609.8A Active CN113572993B (zh) | 2020-04-27 | 2020-04-27 | 一种视频处理方法及移动终端 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN113572993B (zh) |
WO (1) | WO2021218694A1 (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023185096A1 (zh) * | 2022-03-31 | 2023-10-05 | 荣耀终端有限公司 | 图像模糊度的确定方法及其相关设备 |
CN117714875A (zh) * | 2024-02-06 | 2024-03-15 | 博大视野(厦门)科技有限公司 | 一种基于深度神经网络的端到端视频防抖方法 |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN114095659B (zh) * | 2021-11-29 | 2024-01-23 | 厦门美图之家科技有限公司 | 一种视频防抖方法、装置、设备及存储介质 |
CN116723382B (zh) * | 2022-02-28 | 2024-05-03 | 荣耀终端有限公司 | 一种拍摄方法及相关设备 |
CN116704046B (zh) * | 2023-08-01 | 2023-11-10 | 北京积加科技有限公司 | 一种跨镜图像匹配方法及装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5777599A (en) * | 1992-02-14 | 1998-07-07 | Oki Electric Industry Co., Ltd. | Image generation device and method using dithering |
JP2007300581A (ja) * | 2006-05-08 | 2007-11-15 | Casio Comput Co Ltd | 動画撮影装置および動画撮影プログラム |
JP2009284051A (ja) * | 2008-05-20 | 2009-12-03 | Canon Inc | 撮像装置 |
US20120081558A1 (en) * | 2010-06-04 | 2012-04-05 | Panasonic Corporation | Image capture device, image generating method, and computer program thereof |
US20130182134A1 (en) * | 2012-01-16 | 2013-07-18 | Google Inc. | Methods and Systems for Processing a Video for Stabilization Using Dynamic Crop |
CN104065876A (zh) * | 2013-03-22 | 2014-09-24 | 卡西欧计算机株式会社 | 图像处理装置以及图像处理方法 |
US20180255167A1 (en) * | 2015-05-27 | 2018-09-06 | Hirotsugu Takahashi | Stress evaluation program for mobile terminal and mobile terminal provided with program |
CN110213479A (zh) * | 2019-04-30 | 2019-09-06 | 北京迈格威科技有限公司 | 一种视频拍摄防抖方法和装置 |
CN110602386A (zh) * | 2019-08-28 | 2019-12-20 | 维沃移动通信有限公司 | 一种视频录制方法及电子设备 |
CN110731077A (zh) * | 2018-03-23 | 2020-01-24 | 华为技术有限公司 | 视频图像防抖方法和终端 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013017165A (ja) * | 2011-06-10 | 2013-01-24 | Panasonic Corp | 撮像装置 |
KR101659235B1 (ko) * | 2015-08-13 | 2016-09-22 | 삼성전기주식회사 | 흔들림 보정 장치 및 방법 |
JP6821339B2 (ja) * | 2015-09-15 | 2021-01-27 | キヤノン株式会社 | 像振れ補正装置、傾き補正装置、像振れ補正装置の制御方法、傾き補正装置の制御方法 |
-
2020
- 2020-04-27 CN CN202010345609.8A patent/CN113572993B/zh active Active
-
2021
- 2021-04-20 WO PCT/CN2021/088267 patent/WO2021218694A1/zh active Application Filing
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5777599A (en) * | 1992-02-14 | 1998-07-07 | Oki Electric Industry Co., Ltd. | Image generation device and method using dithering |
JP2007300581A (ja) * | 2006-05-08 | 2007-11-15 | Casio Comput Co Ltd | 動画撮影装置および動画撮影プログラム |
JP2009284051A (ja) * | 2008-05-20 | 2009-12-03 | Canon Inc | 撮像装置 |
US20120081558A1 (en) * | 2010-06-04 | 2012-04-05 | Panasonic Corporation | Image capture device, image generating method, and computer program thereof |
US20130182134A1 (en) * | 2012-01-16 | 2013-07-18 | Google Inc. | Methods and Systems for Processing a Video for Stabilization Using Dynamic Crop |
CN104065876A (zh) * | 2013-03-22 | 2014-09-24 | 卡西欧计算机株式会社 | 图像处理装置以及图像处理方法 |
US20180255167A1 (en) * | 2015-05-27 | 2018-09-06 | Hirotsugu Takahashi | Stress evaluation program for mobile terminal and mobile terminal provided with program |
CN110731077A (zh) * | 2018-03-23 | 2020-01-24 | 华为技术有限公司 | 视频图像防抖方法和终端 |
CN110213479A (zh) * | 2019-04-30 | 2019-09-06 | 北京迈格威科技有限公司 | 一种视频拍摄防抖方法和装置 |
CN110602386A (zh) * | 2019-08-28 | 2019-12-20 | 维沃移动通信有限公司 | 一种视频录制方法及电子设备 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2023185096A1 (zh) * | 2022-03-31 | 2023-10-05 | 荣耀终端有限公司 | 图像模糊度的确定方法及其相关设备 |
CN116934654A (zh) * | 2022-03-31 | 2023-10-24 | 荣耀终端有限公司 | 图像模糊度的确定方法及其相关设备 |
CN117714875A (zh) * | 2024-02-06 | 2024-03-15 | 博大视野(厦门)科技有限公司 | 一种基于深度神经网络的端到端视频防抖方法 |
CN117714875B (zh) * | 2024-02-06 | 2024-04-30 | 博大视野(厦门)科技有限公司 | 一种基于深度神经网络的端到端视频防抖方法 |
Also Published As
Publication number | Publication date |
---|---|
CN113572993B (zh) | 2022-10-11 |
WO2021218694A1 (zh) | 2021-11-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN113572993B (zh) | 一种视频处理方法及移动终端 | |
EP3936992A1 (en) | Control method and electronic device | |
WO2022068537A1 (zh) | 一种图像处理方法及相关装置 | |
WO2021027725A1 (zh) | 显示页面元素的方法和电子设备 | |
KR102577396B1 (ko) | 녹화 프레임 레이트 제어 방법 및 관련 장치 | |
CN113747085B (zh) | 拍摄视频的方法和装置 | |
CN112532865B (zh) | 慢动作视频拍摄方法及电子设备 | |
CN111669462B (zh) | 一种显示图像的方法及相关装置 | |
CN113364971A (zh) | 图像处理方法和装置 | |
CN113099146B (zh) | 一种视频生成方法、装置及相关设备 | |
CN113938602B (zh) | 图像处理方法、电子设备、芯片及可读存储介质 | |
CN111768416A (zh) | 照片裁剪方法及装置 | |
CN111553846A (zh) | 超分辨率处理方法及装置 | |
US20230224574A1 (en) | Photographing method and apparatus | |
CN113536866A (zh) | 一种人物追踪显示方法和电子设备 | |
CN111768352A (zh) | 图像处理方法及装置 | |
CN115802146B (zh) | 一种录像中抓拍图像的方法及电子设备 | |
CN114422686A (zh) | 参数调整方法及相关装置 | |
WO2022206589A1 (zh) | 一种图像处理方法以及相关设备 | |
US20230014272A1 (en) | Image processing method and apparatus | |
CN115150542B (zh) | 一种视频防抖方法及相关设备 | |
CN114079725B (zh) | 视频防抖方法、终端设备和计算机可读存储介质 | |
CN114639114A (zh) | 视力检测方法及电子设备 | |
CN115933952B (zh) | 一种触控采样率调节方法及相关装置 | |
EP4329320A1 (en) | Method and apparatus for video playback |
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 |