CN111951180B - 图像抖动校正方法、装置、计算机设备和存储介质 - Google Patents
图像抖动校正方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN111951180B CN111951180B CN202010656021.4A CN202010656021A CN111951180B CN 111951180 B CN111951180 B CN 111951180B CN 202010656021 A CN202010656021 A CN 202010656021A CN 111951180 B CN111951180 B CN 111951180B
- Authority
- CN
- China
- Prior art keywords
- image frame
- target
- data
- gyroscope
- matrix
- 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
Links
- 238000012937 correction Methods 0.000 title claims abstract description 67
- 238000000034 method Methods 0.000 title claims abstract description 53
- 239000011159 matrix material Substances 0.000 claims abstract description 295
- 238000013507 mapping Methods 0.000 claims abstract description 287
- 238000012549 training Methods 0.000 claims abstract description 118
- 230000001131 transforming effect Effects 0.000 claims abstract description 52
- 230000003287 optical effect Effects 0.000 claims abstract description 26
- 238000004590 computer program Methods 0.000 claims description 32
- 230000002708 enhancing effect Effects 0.000 abstract description 4
- 238000004422 calculation algorithm Methods 0.000 description 18
- 230000002265 prevention Effects 0.000 description 7
- 238000013528 artificial neural network Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 6
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000001133 acceleration Effects 0.000 description 4
- 210000002569 neuron Anatomy 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000009466 transformation Effects 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 238000013500 data storage Methods 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 230000006641 stabilisation Effects 0.000 description 2
- 238000011105 stabilization Methods 0.000 description 2
- 230000001360 synchronised effect Effects 0.000 description 2
- 239000013598 vector Substances 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000013135 deep learning Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000007781 pre-processing Methods 0.000 description 1
- 238000005070 sampling Methods 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 230000000087 stabilizing effect Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T5/00—Image enhancement or restoration
- G06T5/80—Geometric correction
-
- 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/10004—Still image; Photographic image
-
- 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/20—Special algorithmic details
- G06T2207/20081—Training; Learning
-
- 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/20—Special algorithmic details
- G06T2207/20084—Artificial neural networks [ANN]
-
- 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/20—Special algorithmic details
- G06T2207/20212—Image combination
- G06T2207/20221—Image fusion; Image merging
Landscapes
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Studio Devices (AREA)
Abstract
本申请涉及一种图像抖动校正方法、装置、计算机设备和存储介质。该图像抖动校正方法包括:获取目标图像帧数据和目标图像帧数据对应的目标陀螺仪数据;对目标陀螺仪数据进行变换,得到目标陀螺仪数据对应的目标陀螺仪映射矩阵;将目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵;矩阵映射网络是根据目标图像帧数据对应的历史图像帧训练数据和目标陀螺仪数据对应的历史陀螺仪训练数据训练得到的;应用目标图像帧映射矩阵,对目标图像帧数据进行变换,得到校正图像帧数据;校正图像帧数据为经过抖动校正后的目标图像帧数据。从而实现通过目标陀螺仪数据来增强相机防抖系统,消除具有光学防抖系统的相机中图像抖动的目的。
Description
技术领域
本申请涉及图像处理技术领域,特别涉及一种图像抖动校正方法、装置、计算机设备和存储介质。
背景技术
随着图像处理技术的不断发展,各种各样的防止图像抖动或者对图像抖动进行处理的技术应运而生。在获取图像的过程中,一般会出现由于拍摄设备或拍摄条件等原因造成的图像抖动、模糊等。为了尽可能地得到没有抖动的图像,传统技术中,通常采用基于陀螺仪的算法来消除图像抖动。
然而,由于具有光学防抖系统的相机中的图像帧数据是经过光学防抖系统处理后的数据,其图像帧数据中记录的抖动与陀螺仪中数据中记录的抖动不一致,因此,无法采用基于陀螺仪的算法来增强相机的防抖系统,也无法采用基于陀螺仪的算法消除具有光学防抖系统的相机中的图像抖动,造成大量的数据资源浪费。
发明内容
基于此,有必要针对上述技术问题,提供一种图像抖动校正方法、装置、计算机设备和存储介质。
一种图像抖动校正方法,所述方法包括:
获取目标图像帧数据和所述目标图像帧数据对应的目标陀螺仪数据;
对所述目标陀螺仪数据进行变换,得到所述目标陀螺仪数据对应的目标陀螺仪映射矩阵;
将所述目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵;其中,所述矩阵映射网络是根据所述目标图像帧数据对应的历史图像帧训练数据和所述目标陀螺仪数据对应的历史陀螺仪训练数据训练得到的;
应用所述目标图像帧映射矩阵,对所述目标图像帧数据进行变换,得到校正图像帧数据;其中,所述校正图像帧数据为经过抖动校正后的目标图像帧数据。
在其中一个实施例中,所述获取目标图像帧数据和所述目标图像帧数据对应的目标陀螺仪数据,包括:
获取初始图像帧数据;
对所述初始图像帧数据进行划分,得到至少一个目标图像帧数据;
查找与所述目标图像帧数据对应的陀螺仪数据,得到所述目标陀螺仪数据。
在其中一个实施例中,每一所述目标图像帧数据对应一个目标陀螺仪数据;
所述对所述目标陀螺仪数据进行变换,得到所述目标陀螺仪数据对应的目标陀螺仪映射矩阵,将所述目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵,包括:
对每一所述目标陀螺仪数据进行变换,得到每一所述目标陀螺仪数据对应的目标陀螺仪映射矩阵;
将每一所述目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出每一所述目标陀螺仪映射矩阵对应的目标图像帧映射矩阵。
在其中一个实施例中,所述应用所述目标图像帧映射矩阵,对所述目标图像帧数据进行变换,得到校正图像帧数据,包括:
应用每一所述目标图像帧映射矩阵,对与每一所述目标图像帧映射矩阵对应的目标图像帧数据进行变换,得到每一所述目标图像帧数据对应的校正图像帧数据;
对每一所述目标图像帧数据对应的校正图像帧数据进行融合,得到融合后的校正图像帧数据。在其中一个实施例中,所述查找与所述目标图像帧数据对应的陀螺仪数据,得到所述目标陀螺仪数据,包括:
对于每一目标图像帧数据,确定出一个对应的目标时间;
按照所述目标时间,查找所述目标图像帧数据对应的陀螺仪数据,得到所述目标陀螺仪数据。
在其中一个实施例中,所述对所述目标陀螺仪数据进行变换,得到所述目标陀螺仪数据对应的目标陀螺仪映射矩阵,包括:
根据所述目标陀螺仪数据对应的时间和位姿,确定出所述目标陀螺仪数据对应的目标旋转矩阵;
获取所述目标图像帧数据对应的相机内参;
根据所述目标旋转矩阵和所述相机内参,确定出所述目标陀螺仪映射矩阵。
在其中一个实施例中,所述目标图像帧数据为具有光学防抖系统的相机输出的图像帧数据。
在其中一个实施例中,所述目标陀螺仪映射矩阵为所述目标陀螺仪数据与经过预设时间间隔后的间隔陀螺仪数据之间的映射矩阵;
所述目标图像帧映射矩阵为所述目标图像帧数据与经过所述预设时间间隔后的间隔图像帧数据之间的映射矩阵。
在其中一个实施例中,所述应用所述目标图像帧映射矩阵,对所述目标图像帧数据进行变换,得到校正图像帧数据,包括:
按照所述目标图像帧映射矩阵,将所述目标图像帧数据向所述间隔图像帧数据映射,得到所述校正图像帧数据。
在其中一个实施例中,所述矩阵映射网络的确定方式,包括
获取所述历史图像帧训练数据和所述历史图像帧训练数据对应的历史陀螺仪训练数据;
对所述历史陀螺仪训练数据进行变换,得到所述历史陀螺仪训练数据对应的第一映射矩阵;
对所述历史图像帧训练数据进行变换,得到所述历史图像帧训练数据对应的第二映射矩阵;
将所述第一映射矩阵作为输入,所述第二映射矩阵作为输出,对预设的初始映射网络进行训练,得到所述矩阵映射网络。
一种图像抖动校正装置,所述装置包括:
数据获取模块,用于获取目标图像帧数据和所述目标图像帧数据对应的目标陀螺仪数据;
陀螺仪映射矩阵确定模块,用于对所述目标陀螺仪数据进行变换,得到所述目标陀螺仪数据对应的目标陀螺仪映射矩阵;
图像帧映射矩阵确定模块,用于将所述目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵;其中,所述矩阵映射网络是根据所述目标图像帧数据对应的历史图像帧训练数据和所述目标陀螺仪数据对应的历史陀螺仪训练数据训练得到的;
图像抖动校正模块,用于应用所述目标图像帧映射矩阵,对所述目标图像帧数据进行变换,得到校正图像帧数据;其中,所述校正图像帧数据为经过抖动校正后的目标图像帧数据。
一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述任一项所述方法的步骤。
一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任一项所述方法的步骤。
上述图像抖动校正方法、装置、计算机设备和存储介质,通过获取目标图像帧数据和目标图像帧数据对应的目标陀螺仪数据,对目标陀螺仪数据进行变换,得到目标陀螺仪数据对应的目标陀螺仪映射矩阵,将目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵,由此可以将目标陀螺仪数据转化为相应的目标陀螺仪映射矩阵,并通过矩阵映射网络得到目标陀螺仪数据对应的目标图像帧映射矩阵,应用目标陀螺仪数据对应的目标图像帧映射矩阵,对目标图像帧数据进行变换,将目标陀螺仪数据作用于目标图像帧数据,得到校正图像帧数据,实现通过目标陀螺仪数据来增强相机防抖系统,消除具有光学防抖系统的相机中图像抖动的目的,实现对数据资源的有效利用。
附图说明
图1为一个实施例中图像抖动校正方法的流程示意图;
图2为一个实施例中图像抖动校正方法的流程示意图;
图3为一个实施例中步骤S200的一种可实施方式的流程示意图;
图4为一个实施例中映射网络确定方法的流程示意图;
图5为一个实施例中图像抖动校正方法的流程示意图;
图6为一个实施例中图像帧划分示意图;
图7为一个实施例图像抖动校正装置的结构框图;
图8为一个实施例中计算机设备的内部结构图。
具体实施方式
为了使本申请的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本申请进行进一步详细说明。应当理解,此处描述的具体实施例仅仅用以解释本申请,并不用于限定本申请。
可以理解本申请中所使用的术语“第一”、“第二”等可在本文中用于描述各种条件关系,但这些条件关系不受这些术语限制。这些术语仅用于将一个条件关系与另一个条件关系区分开来。
在一个实施例中,如图1所示,提供了一种图像抖动校正方法,包括以下步骤:
步骤S100,获取目标图像帧数据和目标图像帧数据对应的目标陀螺仪数据。
步骤S200,对目标陀螺仪数据进行变换,得到目标陀螺仪数据对应的目标陀螺仪映射矩阵。
步骤S300,将目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵;其中,矩阵映射网络是根据目标图像帧数据对应的历史图像帧训练数据和目标陀螺仪数据对应的历史陀螺仪训练数据训练得到的。
步骤S400,应用目标图像帧映射矩阵,对目标图像帧数据进行变换,得到校正图像帧数据;其中,校正图像帧数据为经过抖动校正后的目标图像帧数据。
其中,目标图像帧数据是指从相机中导出的图像像素信息,同时包括对应的图像获取时间,可选地相机采样率可以为30fps。目标陀螺仪数据是指时间上与目标图像帧数据对应的陀螺仪数据,包括相机对应的陀螺仪在立体空间X、Y、Z轴上的瞬时角加速度,可选地,陀螺仪采集率为6组每帧,即每个图像帧有6组陀螺仪数据。目标陀螺仪映射矩阵为目标陀螺仪数据与经过预设时间间隔后的间隔陀螺仪数据之间的映射矩阵,例如,当预设时间间隔为30fps时,目标陀螺仪映射矩阵为0秒时目标陀螺仪数据与30fps间隔陀螺仪数据之间的映射矩阵,该映射矩阵反映了0秒时目标陀螺仪数据与30fps间隔陀螺仪数据之间的映射关系,0秒时目标陀螺仪数据与30fps陀螺仪数据之间的差异可以看作是一种抖动。可选地,目标图像帧映射矩阵为目标图像帧数据与经过预设时间间隔后的间隔图像帧数据之间的映射矩阵。
具体地,获取目标图像帧数据和目标图像帧数据对应的目标陀螺仪数据,对目标陀螺仪数据进行变换,得到目标陀螺仪数据与经过预设时间间隔后的间隔陀螺仪数据之间的目标陀螺仪映射矩阵。将目标陀螺仪映射矩阵输入预设的矩阵映射网络,得到目标图像帧数据与经过预设时间间隔后的间隔图像帧数据之间的目标图像帧映射矩阵。可选地,按照目标图像帧映射矩阵,将目标图像帧数据向间隔图像帧数据映射,得到校正图像帧数据,使得目标图像帧数据与间隔图像帧数据对齐,消除目标图像帧数据与间隔图像帧数据之间的抖动,得到校正图像帧数据。
可选地,若目标图像帧数据为视频中的图像帧数据,为实现消除视频中的抖动,需要将目标图像帧数据向间隔图像帧数据映射,例如,将0秒时的目标陀图像帧数据向T秒后(或3T秒前)的图像帧数据映射,将0秒时的目标图像帧数据与T秒后(或3T秒前)的图像帧数据对齐,消除视频中的抖动。可选地,若目标图像帧数据为照片中的图像帧数据,为实现消除拍照过程中的抖动,鉴于存在一定的曝光时间或快门时间,需要将目标图像帧数据向间隔图像帧数据映射,例如,将0秒时的目标图像帧数据向T秒后(或3T秒前)的图像帧数据映射,将0秒时的目标图像帧数据与T秒后(或3T秒前)的图像帧数据对齐,消除拍照过程中的抖动。
上述图像抖动校正方法,通过获取目标图像帧数据和目标图像帧数据对应的目标陀螺仪数据,对目标陀螺仪数据进行变换,得到目标陀螺仪数据对应的目标陀螺仪映射矩阵,将目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵,由此可以将目标陀螺仪数据转化为相应的目标陀螺仪映射矩阵,并通过矩阵映射网络得到目标陀螺仪数据对应的目标图像帧映射矩阵,应用目标陀螺仪数据对应的目标图像帧映射矩阵,对目标图像帧数据进行变换,将目标陀螺仪数据作用于目标图像帧数据,得到校正图像帧数据,实现通过目标陀螺仪数据来增强相机防抖系统,消除具有光学防抖系统的相机中图像抖动的目的,实现对数据资源的有效利用。同时通过陀螺仪数据,克服了通过图像特征点进行抖动校正过程中贫特征点造成的抖动校正不理想的问题,实现了无需特征点的算法,并且在任意分辨率下保持算法的有效性。
在一个实施例中,如图2所示,提供了一种图像抖动校正方法,包括以下步骤:
步骤S10,获取初始图像帧数据。
步骤S20,对初始图像帧数据进行划分,得到至少一个目标图像帧数据。
步骤S30,查找与目标图像帧数据对应的陀螺仪数据,得到目标陀螺仪数据。
步骤S40,对每一目标陀螺仪数据进行变换,得到每一目标陀螺仪数据对应的目标陀螺仪映射矩阵;将每一目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出每一目标陀螺仪映射矩阵对应的目标图像帧映射矩阵。
步骤S50,应用每一目标图像帧映射矩阵,对与每一目标图像帧映射矩阵对应的目标图像帧数据进行变换,得到每一目标图像帧数据对应的校正图像帧数据;对每一目标图像帧数据对应的校正图像帧数据进行融合,得到融合后的校正图像帧数据。
关于步骤S10至S30,其中,初始图像帧数据是指从相机中导出的图像像素信息,同时包括对应的图像获取时间,可选地相机采样率可以为30fps。
具体地,由于帘卷相机图像生成的特点,为实现更为精确的抖动校正,需要对初始图像帧数据进行划分,划分为更小的目标图像帧数据,例如将初始图像帧数据划分为6个小部分,得到6个目标图像帧数据。并查找与每一目标图像帧数据对应的陀螺仪数据,得到6个对应的目标陀螺仪数据。
可选地,对于每一目标图像帧数据,确定出一个对应的目标时间;按照目标时间,查找目标图像帧数据对应的目标陀螺仪数据。
具体地,每一目标图像帧数据均对应一个获取该目标图像帧数据的目标时间,按照该目标时间,确定出相机对应的陀螺仪的目标陀螺仪数据。
在根据步骤S10至步骤S30得到初始图像帧数据对应的至少一个目标图像帧数据和至少一个目标图像帧数据对应的至少一个目标陀螺仪数据后,对于一个目标图像帧数据和目标图像帧数据对应的目标陀螺仪数据执行步骤S40、S50中的处理。
关于步骤S40、S50,具体地,在对初始图像帧数据进行划分,得到每一目标图像帧数据以及每一目标图像帧数据对应一个目标陀螺仪数据后,对每一目标陀螺仪数据进行变换,得到每一目标陀螺仪数据对应的目标陀螺仪映射矩阵,并将每一目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出每一目标陀螺仪映射矩阵对应的目标图像帧映射矩阵,接着,应用每一目标图像帧映射矩阵,对与每一目标图像帧映射矩阵对应的目标图像帧数据进行变换,得到每一目标图像帧数据对应的校正图像帧数据,并对每一目标图像帧数据对应的校正图像帧数据进行融合,得到融合后的校正图像帧数据。该融合后的校正图像帧数据为初始图像帧数据对应的抖动校正后的图像帧数据。由此,便可由初始图像帧数据,得到初始图像帧数据经过抖动校正后的图像帧数据。
上述图像抖动校正方法,获取初始图像帧数据,对初始图像帧数据进行划分,得到至少一个目标图像帧数据,并查找与目标图像帧数据对应的目标陀螺仪数据,能够得到相对于初始图像帧数据更小部分的目标图像帧数据,为后续在目标图像帧数据的基础上进行图像抖动校正提供基础,达到更为精确的抖动校正。并且,对每一目标陀螺仪数据进行变换,得到每一目标陀螺仪数据对应的目标陀螺仪映射矩阵;将每一目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出每一目标陀螺仪映射矩阵对应的目标图像帧映射矩阵;应用每一目标图像帧映射矩阵,对与每一目标图像帧映射矩阵对应的目标图像帧数据进行变换,得到每一目标图像帧数据对应的校正图像帧数据;对每一目标图像帧数据对应的校正图像帧数据进行融合,得到融合后的校正图像帧数据。能够对初始图像帧数据中的至少一个目标图像帧数据,在更为细分的部分进行抖动校正,实现更为精确的抖动校正,并对至少一个抖动校正后的校正图像帧数据进行融合,得到整个图像的抖动校正,实现通过目标陀螺仪数据来增强相机防抖系统,消除具有光学防抖系统的相机中图像抖动的目的。
在其中一个实施例中,如图3所示,为步骤S200的一种可实施方式的流程示意图,其中,对目标陀螺仪数据进行变换,得到目标陀螺仪数据对应的目标陀螺仪映射矩阵,包括以下步骤:
步骤S210,根据目标陀螺仪数据对应的时间和位姿,确定出目标陀螺仪数据对应的目标旋转矩阵。
步骤S220,获取目标图像帧数据对应的相机内参。
步骤S230,根据目标旋转矩阵和相机内参,确定出目标陀螺仪映射矩阵。
具体地,根据每个时刻目标图像帧对应的目标陀螺仪数据计算旋转矩阵,具体计算方式如公式(1)所示:
R=cosθI+(1-cosθ)nnT+sinθn^ (1)
其中,I为单位矩阵,θ为旋转角度,n为单位向量,^为反对称转换符。
通过公式(1)可以获得目标陀螺仪数据所对应的目标旋转矩阵,将目标旋转矩阵作为相机外参,用于目标陀螺仪映射矩阵的计算。
通过标定得到相机内参,并计算目标陀螺仪映射矩阵,具体计算方式如公式(2)所示:
W(t1,t2)=KR′(t1)RT(t2)K-1 (2)
其中,t1为采集目标图像帧数据对应的时间,t2为在t1的基础上,进过预设时间间隔的时刻,图像帧数据采集的结束时刻或者参考对齐的图像时刻,K为相机内参。
可选地,目标图像帧数据为具有光学防抖系统的相机输出的图像帧数据。
具体地,目标图像帧数据为具有光学防抖系统的相机输出的图像帧数据,采用步骤S100至步骤S400中的方法实现对具有光学防抖系统的相机输出的目标图像帧数据进行抖动校正。
上述实施例中,根据目标陀螺仪数据对应的时间和位姿,确定出目标陀螺仪数据对应的目标旋转矩阵,获取目标图像帧数据对应的相机内参,并根据目标旋转矩阵和相机内参,确定出目标陀螺仪映射矩阵,能够为根据目标陀螺仪映射矩阵确定出目标图像帧映射矩阵提供基础,同时,目标图像帧数据为具有光学防抖系统的相机输出的图像帧数据,最终实现应用目标图像帧映射矩阵,对目标图像帧数据进行变换以增强相机防抖系统,消除具有光学防抖系统的相机中图像抖动的目的。
在一个实施例中,如图4所示,提供了一种映射网络确定方法,包括以下步骤:
步骤S310,获取历史图像帧训练数据和图像帧训练数据对应的历史陀螺仪训练数据。
步骤S320,对历史陀螺仪训练数据进行变换,得到历史陀螺仪训练数据对应的第一映射矩阵。
步骤S330,对历史图像帧训练数据进行变换,得到历史图像帧训练数据对应的第二映射矩阵。
步骤S340,将第一映射矩阵作为输入,第二映射矩阵作为输出,对预设的初始映射网络进行训练,得到矩阵映射网络。
其中,历史图像帧训练数据是指从相机中导出的历史图像的图像像素信息,同时包括对应的图像获取时间,可选地相机采样率可以为30fps。历史陀螺仪训练数据是指时间上与图像帧训练数据对应的陀螺仪数据,包括相机对应的陀螺仪在立体空间X、Y、Z轴上的瞬时角加速度,可选地,陀螺仪采集率为6组每帧,即每个图像帧有6组陀螺仪数据。第一映射矩阵为历史陀螺仪训练数据与经过预设时间间隔后的间隔陀螺仪训练数据之间的映射矩阵,例如,当预设时间间隔为30fps时,第一映射矩阵为0秒时陀螺仪训练数据与30fps陀螺仪训练数据之间的映射矩阵,该映射矩阵反映了0秒时陀螺仪训练数据与30fps陀螺仪训练数据之间的映射关系,0秒时陀螺仪训练数据与30fps陀螺仪训练数据之间的差异可以看作是一种抖动。同样地,第二映射矩阵为历史图像帧训练数据与经过预设时间间隔后的间隔图像帧训练数据之间的映射矩阵。
具体地,获取历史图像帧训练数据和历史图像帧训练数据对应的历史陀螺仪训练数据。应用上述实施例中的公式(1)和公式(2),对历史陀螺仪训练数据进行变换,得到历史陀螺仪训练数据对应的陀螺仪映射矩阵,并将该陀螺仪映射矩阵确定为第一映射矩阵。对历史图像帧训练数据进行变换,得到历史图像帧训练数据对应的第二映射矩阵。可选地,基于图像特征点的方法对历史图像帧训练数据进行变换,得到历史图像帧训练数据对应的第二映射矩阵。在得到第一映射矩阵和第二映射矩阵后,将第一映射矩阵作为输入,第二映射矩阵作为输出,对预设的初始映射网络进行训练,得到矩阵映射网络。
上述映射网络确定方法,通过获取历史图像帧训练数据和历史图像帧训练数据对应的历史陀螺仪训练数据;对历史陀螺仪训练数据进行变换,得到历史陀螺仪训练数据对应的第一映射矩阵;对历史图像帧训练数据进行变换,得到历史图像帧训练数据对应的第二映射矩阵,并将将第一映射矩阵作为输入,第二映射矩阵作为输出,对预设的初始映射网络进行训练,得到矩阵映射网络。能够通过训练得到矩阵映射网络,解决无法将陀螺仪数据作用在拥有光学防抖系统的相机上的问题。同时通过陀螺仪数据,克服了通过图像特征点进行抖动校正过程中贫特征点造成的抖动校正不理想的问题,实现了无需特征点的算法,并且在任意分辨率下保持算法的有效性。
对图像抖动进行校正往往依赖于基于陀螺仪的算法或者基于特征点的算法,而基于陀螺仪的算法,可以矫正帘卷相机因逐行曝光造成的扭曲,并起到稳定视频拍摄的作用,但是不能作用在拥有光学防抖系统的相机上。基于特征点的算法能够作用在拥有光学防抖系统的相机上,但是对于画面特征点质量有着较高的要求,在贫特征点场景下(例如,大海、夜晚、雪地等等)都很难实施。为克服基于陀螺仪的算法和基于特征点的算法的缺点,提供了一个具体实施例,如图5所示,提供了一种图像抖动校正方法,可以通过深度神经网络算法,基于陀螺仪的数据,解决相机稳定中的帘卷相机矫正、快速图像防抖,并且基于稳定结果,来提升拍摄图像的质量,具体包括如下步骤:
步骤S1,陀螺仪/图像帧数据收集导出。实现相机角加速度数据的采集和回传。在一部相机(或具有相机功能的手机)中安装底层定制库,输出内核时间(线程执行操作系统代码已经经过了多少个100ns的CPU时间),通过内核时间找到视频时间轴上某个时间点对应的图像帧数据(通过底层接口导出每个时间点对应的图像帧,相机采样率为30fps,即每秒三十帧)和陀螺仪数据(陀螺仪在立体空间X、Y、Z轴上的瞬时角加速度,陀螺仪采集率为6组每帧,即每个图像帧有6组陀螺仪数据),陀螺仪数据记录真实的运动轨迹,图像帧数据对应原始视频经过光学防抖修正之后的数据。然后通过传输协议将陀螺仪/图像帧数据导出,进行数据预处理,计算出图像帧数据和陀螺仪数据分别对应的单应性矩阵(单应性矩阵是一个3X3的矩阵,将矩阵拉平成一组大小为9的向量并取前8个元素)。
步骤S2,单应性矩阵推导。实现基于相机陀螺仪数据推理单应性矩阵。训练一个全连接神经网络,训练集由38400组陀螺仪数据以及图像帧数据组成,网络为输入输出8个神经元,处理一维数据的全连接网络,网络有17个隐藏层,1个输入层,1个输出层。网络结构是呈纺锤形(从输入层开始每层神经元递增,中间层神经元数量达到最大值,然后神经元数量开始递减,直到输出层)。通过训练,神经网络可以学习到陀螺仪数据单应性矩阵到图像帧数据单应性矩阵之间的映射,真实运动轨迹到真实运动轨迹经光学防抖修正后的模拟运动轨迹的映射。在神经网络收敛后,输入原始陀螺仪数据对应的单应性矩阵,输出预测的单应性矩阵。具体地,陀螺仪数据对应的单应性矩阵可以由上述方法中的公式(1)和公式(2)确定。
步骤S3,图像帧对齐模块。实现基于推理得到的单应性矩阵,增强光学防抖系统,对图像帧矫正和对齐,实现进一步视频防抖功能。视频拍摄过程中即使有光学防抖,仍然会有一些剩余的抖动,基于陀螺仪算法和深度学习算法,可以进一步消除这些残余的抖动。
其中,视频数据和陀螺仪在时间轴上是一一对应的,比如某一个时间点对应一个图像帧和一组陀螺仪数据,更具体第,如图6所示,一个图像帧自顶向下由6个patch组成,每一个patch对应一组陀螺仪数据。
从相邻两帧的角度出发,视频防抖的目标就是通过图像映射变换,将其中一帧图像和另外一帧图像对齐,具体地,计算两帧对应patch之间的单应性矩阵,通过单应性矩阵对每个patch分别进行映射变换,将变换后的6个patch重新融合,得到消除抖动的图像帧,实现视频防抖。
上述实施例中,通过相机对应的陀螺仪采集实时信号,并通过深度神经网络推理和输出的信号增强光学防抖相机以实现到视频防抖的目的。其中,通过神经网络解决了陀螺仪算法无法作用在拥有光学防抖系统的相机上的问题,同时通过采集陀螺仪信号实现了无需特征点的算法,并且在任意分辨率下保持算法的有效性。
应该理解的是,虽然图1-5的流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,图1-5中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
在一个实施例中,如图7所示,提供了一种图像抖动校正装置,包括:数据获取模块701、陀螺仪映射矩阵确定模块702、图像帧映射矩阵确定模块703和图像抖动校正模块704,其中:
数据获取模块701,用于获取目标图像帧数据和目标图像帧数据对应的目标陀螺仪数据;
陀螺仪映射矩阵确定模块702,用于对目标陀螺仪数据进行变换,得到目标陀螺仪数据对应的目标陀螺仪映射矩阵;
图像帧映射矩阵确定模块703,用于将目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵;其中,矩阵映射网络是根据目标图像帧数据对应的历史图像帧训练数据和目标陀螺仪数据对应的历史陀螺仪训练数据训练得到的;
图像抖动校正模块704,用于应用目标图像帧映射矩阵,对目标图像帧数据进行变换,得到校正图像帧数据;其中,校正图像帧数据为经过抖动校正后的目标图像帧数据。
在其中一个实施例中,数据获取模块701还用于获取初始图像帧数据;对初始图像帧数据进行划分,得到至少一个目标图像帧数据;查找与目标图像帧数据对应的陀螺仪数据,得到目标陀螺仪数据。
在其中一个实施例中,每一目标图像帧数据对应一个目标陀螺仪数据;陀螺仪映射矩阵确定模块702还用于对每一目标陀螺仪数据进行变换,得到每一目标陀螺仪数据对应的目标陀螺仪映射矩阵;图像帧映射矩阵确定模块703还用于将每一目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出每一目标陀螺仪映射矩阵对应的目标图像帧映射矩阵。
在其中一个实施例中,图像抖动校正模块704还用于:应用每一目标图像帧映射矩阵,对与每一目标图像帧映射矩阵对应的目标图像帧数据进行变换,得到每一目标图像帧数据对应的校正图像帧数据;对每一目标图像帧数据对应的校正图像帧数据进行融合,得到融合后的校正图像帧数据。
在其中一个实施例中,数据获取模块701还用于对于每一目标图像帧数据,确定出一个对应的目标时间;按照目标时间,查找目标图像帧数据对应的陀螺仪数据,得到目标陀螺仪数据。
在其中一个实施例中,陀螺仪映射矩阵确定模块702还用于根据目标陀螺仪数据对应的时间和位姿,确定出目标陀螺仪数据对应的目标旋转矩阵;获取目标图像帧数据对应的相机内参;根据目标旋转矩阵和相机内参,确定出目标陀螺仪映射矩阵。
在其中一个实施例中,图像抖动校正装置还包括数据存储模块,用于存储目标图像帧数据,目标图像帧数据为具有光学防抖系统的相机输出的图像帧数据。
在其中一个实施例中,数据存储模块还用于存储目标陀螺仪映射矩阵和目标图像帧映射矩阵;目标陀螺仪映射矩阵为目标陀螺仪数据与经过预设时间间隔后的间隔陀螺仪数据之间的映射矩阵;目标图像帧映射矩阵为目标图像帧数据与经过预设时间间隔后的间隔图像帧数据之间的映射矩阵。
在其中一个实施例中,图像抖动校正模块704还用于按照目标图像帧映射矩阵,将目标图像帧数据向间隔图像帧数据映射,得到校正图像帧数据。
在其中一个实施例中,图像抖动校正装置还包括矩阵映射网络确定模块,用于获取历史图像帧训练数据和历史图像帧训练数据对应的历史陀螺仪训练数据;对历史陀螺仪训练数据进行变换,得到历史陀螺仪训练数据对应的第一映射矩阵;对历史图像帧训练数据进行变换,得到历史图像帧训练数据对应的第二映射矩阵;将第一映射矩阵作为输入,第二映射矩阵作为输出,对预设的初始映射网络进行训练,得到矩阵映射网络。
关于图像抖动校正装置的具体限定可以参见上文中对于图像抖动校正方法或映射网络确定的限定方法,在此不再赘述。上述图像抖动校正装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
在一个实施例中,提供了一种计算机设备,该计算机设备可以是服务器,其内部结构图可以如图8所示。该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统、计算机程序和数据库。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的数据库用于存储图像抖动校正数据或映射网络确定数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种图像抖动校正方法或映射网络确定方法。
本领域技术人员可以理解,图8中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现以下步骤:
获取目标图像帧数据和目标图像帧数据对应的目标陀螺仪数据;
对目标陀螺仪数据进行变换,得到目标陀螺仪数据对应的目标陀螺仪映射矩阵;
将目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵;其中,矩阵映射网络是根据目标图像帧数据对应的历史图像帧训练数据和目标陀螺仪数据对应的历史陀螺仪训练数据训练得到的;
应用目标图像帧映射矩阵,对目标图像帧数据进行变换,得到校正图像帧数据;其中,校正图像帧数据为经过抖动校正后的目标图像帧数据。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:获取初始图像帧数据;对初始图像帧数据进行划分,得到至少一个目标图像帧数据;查找与目标图像帧数据对应的陀螺仪数据,得到目标陀螺仪数据。
在其中一个实施例中,每一目标图像帧数据对应一个目标陀螺仪数据;处理器执行计算机程序时还实现以下步骤:对每一目标陀螺仪数据进行变换,得到每一目标陀螺仪数据对应的目标陀螺仪映射矩阵;将每一目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出每一目标陀螺仪映射矩阵对应的目标图像帧映射矩阵。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:应用每一目标图像帧映射矩阵,对与每一目标图像帧映射矩阵对应的目标图像帧数据进行变换,得到每一目标图像帧数据对应的校正图像帧数据;对每一目标图像帧数据对应的校正图像帧数据进行融合,得到融合后的校正图像帧数据。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:对于每一目标图像帧数据,确定出一个对应的目标时间;按照目标时间,查找目标图像帧数据对应的陀螺仪数据,得到目标陀螺仪数据。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:根据目标陀螺仪数据对应的时间和位姿,确定出目标陀螺仪数据对应的目标旋转矩阵;获取目标图像帧数据对应的相机内参;根据目标旋转矩阵和相机内参,确定出目标陀螺仪映射矩阵。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:目标图像帧数据为具有光学防抖系统的相机输出的图像帧数据。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:目标陀螺仪映射矩阵为目标陀螺仪数据与经过预设时间间隔后的间隔陀螺仪数据之间的映射矩阵;目标图像帧映射矩阵为目标图像帧数据与经过预设时间间隔后的间隔图像帧数据之间的映射矩阵。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:按照目标图像帧映射矩阵,将目标图像帧数据向间隔图像帧数据映射,得到校正图像帧数据。
在其中一个实施例中,处理器执行计算机程序时还实现以下步骤:获取历史图像帧训练数据和历史图像帧训练数据对应的历史陀螺仪训练数据;对历史陀螺仪训练数据进行变换,得到历史陀螺仪训练数据对应的第一映射矩阵;对历史图像帧训练数据进行变换,得到历史图像帧训练数据对应的第二映射矩阵;将第一映射矩阵作为输入,第二映射矩阵作为输出,对预设的初始映射网络进行训练,得到矩阵映射网络。
在一个实施例中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现以下步骤:
获取目标图像帧数据和目标图像帧数据对应的目标陀螺仪数据;
对目标陀螺仪数据进行变换,得到目标陀螺仪数据对应的目标陀螺仪映射矩阵;
将目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵;其中,矩阵映射网络是根据目标图像帧数据对应的历史图像帧训练数据和目标陀螺仪数据对应的历史陀螺仪训练数据训练得到的;
应用目标图像帧映射矩阵,对目标图像帧数据进行变换,得到校正图像帧数据;其中,校正图像帧数据为经过抖动校正后的目标图像帧数据。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取初始图像帧数据;对初始图像帧数据进行划分,得到至少一个目标图像帧数据;查找与目标图像帧数据对应的陀螺仪数据,得到目标陀螺仪数据。
在其中一个实施例中,每一目标图像帧数据对应一个目标陀螺仪数据;计算机程序被处理器执行时还实现以下步骤:对每一目标陀螺仪数据进行变换,得到每一目标陀螺仪数据对应的目标陀螺仪映射矩阵;将每一目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出每一目标陀螺仪映射矩阵对应的目标图像帧映射矩阵。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:应用每一目标图像帧映射矩阵,对与每一目标图像帧映射矩阵对应的目标图像帧数据进行变换,得到每一目标图像帧数据对应的校正图像帧数据;对每一目标图像帧数据对应的校正图像帧数据进行融合,得到融合后的校正图像帧数据。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:对于每一目标图像帧数据,确定出一个对应的目标时间;按照目标时间,查找目标图像帧数据对应的陀螺仪数据,得到目标陀螺仪数据。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:根据目标陀螺仪数据对应的时间和位姿,确定出目标陀螺仪数据对应的目标旋转矩阵;获取目标图像帧数据对应的相机内参;根据目标旋转矩阵和相机内参,确定出目标陀螺仪映射矩阵。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:目标图像帧数据为具有光学防抖系统的相机输出的图像帧数据。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:目标陀螺仪映射矩阵为目标陀螺仪数据与经过预设时间间隔后的间隔陀螺仪数据之间的映射矩阵;目标图像帧映射矩阵为目标图像帧数据与经过预设时间间隔后的间隔图像帧数据之间的映射矩阵。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:按照目标图像帧映射矩阵,将目标图像帧数据向间隔图像帧数据映射,得到校正图像帧数据。
在其中一个实施例中,计算机程序被处理器执行时还实现以下步骤:获取历史图像帧训练数据和历史图像帧训练数据对应的历史陀螺仪训练数据;对历史陀螺仪训练数据进行变换,得到历史陀螺仪训练数据对应的第一映射矩阵;对历史图像帧训练数据进行变换,得到历史图像帧训练数据对应的第二映射矩阵;将第一映射矩阵作为输入,第二映射矩阵作为输出,对预设的初始映射网络进行训练,得到矩阵映射网络。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM以多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双数据率SDRAM(DDRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请专利的保护范围应以所附权利要求为准。
Claims (12)
1.一种图像抖动校正方法,其特征在于,所述方法包括:
获取目标图像帧数据和所述目标图像帧数据对应的目标陀螺仪数据;
对所述目标陀螺仪数据进行变换,得到所述目标陀螺仪数据对应的目标陀螺仪映射矩阵;
将所述目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵;其中,所述矩阵映射网络是根据所述目标图像帧数据对应的历史图像帧训练数据和所述目标陀螺仪数据对应的历史陀螺仪训练数据训练得到的;
应用所述目标图像帧映射矩阵,对所述目标图像帧数据进行变换,得到校正图像帧数据;其中,所述校正图像帧数据为经过抖动校正后的目标图像帧数据;
其中,所述矩阵映射网络的确定方式,包括:
获取所述历史图像帧训练数据和所述历史图像帧训练数据对应的历史陀螺仪训练数据;
对所述历史陀螺仪训练数据进行变换,得到所述历史陀螺仪训练数据对应的第一映射矩阵;
对所述历史图像帧训练数据进行变换,得到所述历史图像帧训练数据对应的第二映射矩阵;
将所述第一映射矩阵作为输入,所述第二映射矩阵作为输出,对预设的初始映射网络进行训练,得到所述矩阵映射网络。
2.根据权利要求1所述的方法,其特征在于,所述获取目标图像帧数据和所述目标图像帧数据对应的目标陀螺仪数据,包括:
获取初始图像帧数据;
对所述初始图像帧数据进行划分,得到至少一个目标图像帧数据;
查找与所述目标图像帧数据对应的陀螺仪数据,得到所述目标陀螺仪数据。
3.根据权利要求2所述的方法,其特征在于,每一所述目标图像帧数据对应一个目标陀螺仪数据;
所述对所述目标陀螺仪数据进行变换,得到所述目标陀螺仪数据对应的目标陀螺仪映射矩阵,将所述目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵,包括:
对每一所述目标陀螺仪数据进行变换,得到每一所述目标陀螺仪数据对应的目标陀螺仪映射矩阵;
将每一所述目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出每一所述目标陀螺仪映射矩阵对应的目标图像帧映射矩阵。
4.根据权利要求3所述的方法,其特征在于,所述应用所述目标图像帧映射矩阵,对所述目标图像帧数据进行变换,得到校正图像帧数据,包括:
应用每一所述目标图像帧映射矩阵,对与每一所述目标图像帧映射矩阵对应的目标图像帧数据进行变换,得到每一所述目标图像帧数据对应的校正图像帧数据;
对每一所述目标图像帧数据对应的校正图像帧数据进行融合,得到融合后的校正图像帧数据。
5.根据权利要求2所述的方法,其特征在于,所述查找与所述目标图像帧数据对应的陀螺仪数据,得到所述目标陀螺仪数据,包括:
对于每一目标图像帧数据,确定出一个对应的目标时间;
按照所述目标时间,查找所述目标图像帧数据对应的陀螺仪数据,得到所述目标陀螺仪数据。
6.根据权利要求1所述的方法,其特征在于,所述对所述目标陀螺仪数据进行变换,得到所述目标陀螺仪数据对应的目标陀螺仪映射矩阵,包括:
根据所述目标陀螺仪数据对应的时间和位姿,确定出所述目标陀螺仪数据对应的目标旋转矩阵;
获取所述目标图像帧数据对应的相机内参;
根据所述目标旋转矩阵和所述相机内参,确定出所述目标陀螺仪映射矩阵。
7.根据权利要求1所述的方法,其特征在于,所述目标图像帧数据为具有光学防抖系统的相机输出的图像帧数据。
8.根据权利要求1所述的方法,其特征在于,所述目标陀螺仪映射矩阵为所述目标陀螺仪数据与经过预设时间间隔后的间隔陀螺仪数据之间的映射矩阵;
所述目标图像帧映射矩阵为所述目标图像帧数据与经过所述预设时间间隔后的间隔图像帧数据之间的映射矩阵。
9.根据权利要求8所述的方法,其特征在于,所述应用所述目标图像帧映射矩阵,对所述目标图像帧数据进行变换,得到校正图像帧数据,包括:
按照所述目标图像帧映射矩阵,将所述目标图像帧数据向所述间隔图像帧数据映射,得到所述校正图像帧数据。
10.一种图像抖动校正装置,其特征在于,所述装置包括:
数据获取模块,用于获取目标图像帧数据和所述目标图像帧数据对应的目标陀螺仪数据;
陀螺仪映射矩阵确定模块,用于对所述目标陀螺仪数据进行变换,得到所述目标陀螺仪数据对应的目标陀螺仪映射矩阵;
图像帧映射矩阵确定模块,用于将所述目标陀螺仪映射矩阵输入预设的矩阵映射网络,输出目标图像帧映射矩阵;其中,所述矩阵映射网络是根据所述目标图像帧数据对应的历史图像帧训练数据和所述目标陀螺仪数据对应的历史陀螺仪训练数据训练得到的;
图像抖动校正模块,用于应用所述目标图像帧映射矩阵,对所述目标图像帧数据进行变换,得到校正图像帧数据;其中,所述校正图像帧数据为经过抖动校正后的目标图像帧数据;
所述装置还包括矩阵映射网络确定模块,用于获取所述历史图像帧训练数据和所述历史图像帧训练数据对应的历史陀螺仪训练数据;对所述历史陀螺仪训练数据进行变换,得到所述历史陀螺仪训练数据对应的第一映射矩阵;对所述历史图像帧训练数据进行变换,得到所述历史图像帧训练数据对应的第二映射矩阵;将所述第一映射矩阵作为输入,所述第二映射矩阵作为输出,对预设的初始映射网络进行训练,得到所述矩阵映射网络。
11.一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至9中任一项所述方法的步骤。
12.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至9中任一项所述方法的步骤。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010656021.4A CN111951180B (zh) | 2020-07-09 | 2020-07-09 | 图像抖动校正方法、装置、计算机设备和存储介质 |
PCT/CN2021/074908 WO2022007396A1 (zh) | 2020-07-09 | 2021-02-02 | 图像抖动校正方法、装置、计算机设备、存储介质及产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202010656021.4A CN111951180B (zh) | 2020-07-09 | 2020-07-09 | 图像抖动校正方法、装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN111951180A CN111951180A (zh) | 2020-11-17 |
CN111951180B true CN111951180B (zh) | 2024-05-14 |
Family
ID=73340116
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202010656021.4A Active CN111951180B (zh) | 2020-07-09 | 2020-07-09 | 图像抖动校正方法、装置、计算机设备和存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN111951180B (zh) |
WO (1) | WO2022007396A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111951180B (zh) * | 2020-07-09 | 2024-05-14 | 北京迈格威科技有限公司 | 图像抖动校正方法、装置、计算机设备和存储介质 |
CN112637496B (zh) * | 2020-12-21 | 2022-05-31 | 维沃移动通信有限公司 | 图像矫正方法及装置 |
CN113329170B (zh) * | 2021-05-10 | 2022-10-21 | 浙江大华技术股份有限公司 | 图像抖动校正方法、装置、计算机设备和可读存储介质 |
CN113776556B (zh) * | 2021-05-30 | 2024-05-07 | 南京理工大学 | 基于数据融合的陀螺仪与相机相对位置矩阵标定方法 |
CN114390197B (zh) * | 2021-12-27 | 2024-08-02 | 维沃移动通信有限公司 | 拍摄方法和装置、电子设备及可读存储介质 |
CN118338127B (zh) * | 2024-06-13 | 2024-08-20 | 博大视野(厦门)科技有限公司 | 一种基于自编码器的视频低延时防抖方法、装置及设备 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109922267A (zh) * | 2019-04-01 | 2019-06-21 | 珠海全志科技股份有限公司 | 基于陀螺仪数据的图像防抖处理方法、计算机装置及计算机可读存储介质 |
WO2019174640A1 (zh) * | 2018-03-16 | 2019-09-19 | 深圳岚锋创视网络科技有限公司 | 一种全景视频防抖方法及便携式终端 |
CN110602393A (zh) * | 2019-09-04 | 2019-12-20 | 南京博润智能科技有限公司 | 一种基于图像内容理解的视频防抖方法 |
WO2020091262A1 (ko) * | 2018-10-30 | 2020-05-07 | 삼성전자 주식회사 | 인공 신경망을 이용한 이미지 처리 방법 및 이를 지원하는 전자 장치 |
CN111225155A (zh) * | 2020-02-21 | 2020-06-02 | Oppo广东移动通信有限公司 | 视频防抖方法、装置、电子设备、计算机设备和存储介质 |
Family Cites Families (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104954631B (zh) * | 2014-03-25 | 2018-02-27 | 腾讯科技(深圳)有限公司 | 一种视频处理方法、装置和系统 |
CN105635588B (zh) * | 2016-02-25 | 2019-03-01 | 杭州格像科技有限公司 | 一种稳像方法及装置 |
US10547784B2 (en) * | 2017-06-19 | 2020-01-28 | SighTour Technologies, Inc. | Image stabilization |
CN109410130B (zh) * | 2018-09-28 | 2020-12-04 | 华为技术有限公司 | 图像处理方法和图像处理装置 |
CN110954134B (zh) * | 2019-12-04 | 2022-03-25 | 上海有个机器人有限公司 | 陀螺仪偏差校正方法、校正系统、电子设备及存储介质 |
CN111951180B (zh) * | 2020-07-09 | 2024-05-14 | 北京迈格威科技有限公司 | 图像抖动校正方法、装置、计算机设备和存储介质 |
-
2020
- 2020-07-09 CN CN202010656021.4A patent/CN111951180B/zh active Active
-
2021
- 2021-02-02 WO PCT/CN2021/074908 patent/WO2022007396A1/zh active Application Filing
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2019174640A1 (zh) * | 2018-03-16 | 2019-09-19 | 深圳岚锋创视网络科技有限公司 | 一种全景视频防抖方法及便携式终端 |
WO2020091262A1 (ko) * | 2018-10-30 | 2020-05-07 | 삼성전자 주식회사 | 인공 신경망을 이용한 이미지 처리 방법 및 이를 지원하는 전자 장치 |
CN109922267A (zh) * | 2019-04-01 | 2019-06-21 | 珠海全志科技股份有限公司 | 基于陀螺仪数据的图像防抖处理方法、计算机装置及计算机可读存储介质 |
CN110602393A (zh) * | 2019-09-04 | 2019-12-20 | 南京博润智能科技有限公司 | 一种基于图像内容理解的视频防抖方法 |
CN111225155A (zh) * | 2020-02-21 | 2020-06-02 | Oppo广东移动通信有限公司 | 视频防抖方法、装置、电子设备、计算机设备和存储介质 |
Non-Patent Citations (2)
Title |
---|
BPNN辅助KF的MEMS陀螺仪数据处理方法;段志强;刘洁瑜;汪立新;李新三;沈强;;压电与声光(02);全文 * |
一种基于神经网络的畸变图像校正方法;王珂娜, 邹北骥, 黄文梅;中国图象图形学报(05);全文 * |
Also Published As
Publication number | Publication date |
---|---|
WO2022007396A1 (zh) | 2022-01-13 |
CN111951180A (zh) | 2020-11-17 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111951180B (zh) | 图像抖动校正方法、装置、计算机设备和存储介质 | |
CN107689035B (zh) | 一种基于卷积神经网络的单应性矩阵确定方法及装置 | |
CN111669514B (zh) | 高动态范围成像方法和装置 | |
CN105701837A (zh) | 一种相机几何标定处理方法及装置 | |
JP5243477B2 (ja) | ブラー補正装置およびブラー補正方法 | |
CN110740247B (zh) | 视频增稳方法、装置、计算机设备及存储介质 | |
CN112367474A (zh) | 一种自适应光场成像方法、装置及设备 | |
CN112017215B (zh) | 图像处理方法、装置、计算机可读存储介质及计算机设备 | |
CN109327626A (zh) | 图像采集方法、装置、电子设备和计算机可读存储介质 | |
CN112396558A (zh) | 图像处理方法、装置及计算机可读存储介质 | |
CN111372000B (zh) | 视频防抖方法和装置、电子设备及计算机可读存储介质 | |
CN110049237A (zh) | 摄像头防抖方法、装置、电子设备和计算机存储介质 | |
CN110490196A (zh) | 主体检测方法和装置、电子设备、计算机可读存储介质 | |
US11967096B2 (en) | Methods and apparatuses of depth estimation from focus information | |
CN110599586A (zh) | 一种半稠密场景重建方法、装置、电子设备及存储介质 | |
CN114943773A (zh) | 相机标定方法、装置、设备和存储介质 | |
CN108444452B (zh) | 目标经纬度和拍摄装置的三维空间姿态的检测方法及装置 | |
CN111462021B (zh) | 图像处理方法、装置、电子设备和计算机可读存储介质 | |
KR101982755B1 (ko) | 항공 영상을 정합하는 방법 및 장치 | |
CN112437253A (zh) | 一种视频拼接方法、装置、系统、计算机设备和存储介质 | |
CN115272462A (zh) | 一种相机位姿估计方法、装置及电子设备 | |
CN112203023B (zh) | 一种十亿像素视频生成方法及装置、设备、介质 | |
CN110475068B (zh) | 图像处理方法及装置 | |
CN113538318A (zh) | 图像处理方法、装置、终端设备以及可读存储介质 | |
CN116645274A (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 |