CN114463213A - 视频处理方法、视频处理装置、终端及存储介质 - Google Patents
视频处理方法、视频处理装置、终端及存储介质 Download PDFInfo
- Publication number
- CN114463213A CN114463213A CN202210107934.XA CN202210107934A CN114463213A CN 114463213 A CN114463213 A CN 114463213A CN 202210107934 A CN202210107934 A CN 202210107934A CN 114463213 A CN114463213 A CN 114463213A
- Authority
- CN
- China
- Prior art keywords
- frame image
- current frame
- target
- face
- attitude
- 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
- 238000003672 processing method Methods 0.000 title claims abstract description 36
- 238000012545 processing Methods 0.000 title claims description 20
- 238000013519 translation Methods 0.000 claims abstract description 66
- 238000009877 rendering Methods 0.000 claims abstract description 18
- 239000011159 matrix material Substances 0.000 claims description 93
- 230000006870 function Effects 0.000 claims description 43
- 238000005457 optimization Methods 0.000 claims description 14
- 230000015654 memory Effects 0.000 claims description 6
- 238000004590 computer program Methods 0.000 claims description 4
- 230000007704 transition Effects 0.000 abstract description 9
- 230000036544 posture Effects 0.000 description 76
- 238000000034 method Methods 0.000 description 56
- 208000012788 shakes Diseases 0.000 description 51
- 230000000694 effects Effects 0.000 description 28
- 238000004364 calculation method Methods 0.000 description 6
- 238000009499 grossing Methods 0.000 description 6
- 238000012935 Averaging Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 238000004422 calculation algorithm Methods 0.000 description 3
- 238000013527 convolutional neural network Methods 0.000 description 2
- 238000001514 detection method Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 239000000463 material Substances 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000010354 integration Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 239000013598 vector Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Images
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
- G06T5/00—Image enhancement or restoration
- G06T5/50—Image enhancement or restoration using two or more images, e.g. averaging or subtraction
-
- 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
- G06T7/74—Determining position or orientation of objects or cameras using feature-based methods involving reference images or patches
-
- 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
-
- 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/30—Subject of image; Context of image processing
- G06T2207/30196—Human being; Person
- G06T2207/30201—Face
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Studio Devices (AREA)
Abstract
本申请提供一种视频处理方法与装置、终端与存储介质。视频处理方法包括:获取当前帧图像的人脸目标位置。根据相机的姿态数据及当前帧图像的人脸目标位置获取当前帧图像的人脸目标位置对应的虚拟投影位置。根据当前帧图像的人脸目标位置、虚拟投影位置、当前帧图像的旋转姿态项及当前帧图像的平移姿态项获取当前帧图像的目标姿态。及根据当前帧图像的人脸目标位置及当前帧图像的目标姿态对当前帧图像进行渲染,以获取目标图像。本申请的视频处理方法与装置、终端与存储介质中,根据当前帧图像的目标人脸位置和当前帧图像的目标姿态对当前帧图像进行渲染,在保证人脸过渡自然,不产生形变的同时,增加画面整体的稳定性,提升了视频的防抖表现。
Description
技术领域
本申请涉及影像技术领域,更具体而言,涉及一种视频处理方法、视频处理装置、终端、及非易失性计算机可读存储介质。
背景技术
视频画面稳定与否,极大程度上影响视频观感,视频防抖技术可通过对画面进行一定的旋转变形和裁切,获得具有稳定效果的视频。
不同于普通的视频防抖,在有人像的视频中,除去视频整体的防抖效果之外,人脸区域的变化过渡是否平滑自然则更为关键,因此需要对人脸区域进行特殊处理。在保证人脸区域防抖效果的同时,还需要避免由于防抖造成的人像扭曲变形。人像视频防抖方案一般只针对图像进行全局处理,无法兼顾人像和画面整体的防抖效果。由于防抖算法会通过图像的旋转变形对画面整体进行重新的渲染,所以在画面整体较好的防抖效果下,人脸区域会随着画面整体的变化而发生一定的变形,造成人像忽大忽小或扭曲形变的效果;而在保护人像变化自然、避免扭曲变形的条件下,则会损失画面整体的防抖效果,二者难以兼得。
发明内容
本申请实施方式提供一种视频处理方法、视频处理装置、终端、及非易失性计算机可读存储介质,至少用于解决人像防抖效果和画面整体防抖效果难以兼得的问题。
本申请实施方式的视频处理方法包括:获取所述当前帧图像的人脸目标位置。根据相机的姿态数据及所述当前帧图像的人脸目标位置获取所述当前帧图像的人脸目标位置对应的虚拟投影位置。根据所述当前帧图像的人脸目标位置、所述虚拟投影位置、所述当前帧图像的旋转姿态项及所述当前帧图像的平移姿态项获取所述当前帧图像的目标姿态。及根据所述当前帧图像的人脸目标位置及所述当前帧图像的目标姿态对所述当前帧图像进行渲染,以获取目标图像。
本申请实施方式的视频处理装置包括第一获取模块、第二获取模块、第三获取模块及渲染模块。所述第一获取模块用于获取所述当前帧图像的人脸目标位置。所述第二获取模块用于根据相机的姿态数据及所述当前帧图像的人脸目标位置获取所述当前帧图像的人脸目标位置对应的虚拟投影位置。所述第三获取模块用于根据所述当前帧图像的人脸目标位置、所述虚拟投影位置、所述当前帧图像的旋转姿态项及所述当前帧图像的平移姿态项获取所述当前帧图像的目标姿态。所述渲染模块用于根据所述当前帧图像的人脸目标位置及所述当前帧图像的目标姿态对所述当前帧图像进行渲染,以获取目标图像。
本申请实施方式的终端包括一个或多个处理器、存储器、及一个或多个程序。其中,一个或多个所述程序被存储在所述存储器中,并且被一个或多个所述处理器执行,所述程序包括用于执行本申请实施方式的视频处理方法的指令,所述视频处理方法包括:获取所述当前帧图像的人脸目标位置。根据相机的姿态数据及所述当前帧图像的人脸目标位置获取所述当前帧图像的人脸目标位置对应的虚拟投影位置。根据所述当前帧图像的人脸目标位置、所述虚拟投影位置、所述当前帧图像的旋转姿态项及所述当前帧图像的平移姿态项获取所述当前帧图像的目标姿态。及根据所述当前帧图像的人脸目标位置及所述当前帧图像的目标姿态对所述当前帧图像进行渲染,以获取目标图像。
本申请实施方式的非易失性计算机可读存储介质存储有计算机程序,当所述计算机程序被一个或多个处理器执行时,所述处理器执行如下视频处理方法:获取所述当前帧图像的人脸目标位置。根据相机的姿态数据及所述当前帧图像的人脸目标位置获取所述当前帧图像的人脸目标位置对应的虚拟投影位置。根据所述当前帧图像的人脸目标位置、所述虚拟投影位置、所述当前帧图像的旋转姿态项及所述当前帧图像的平移姿态项获取所述当前帧图像的目标姿态。及根据所述当前帧图像的人脸目标位置及所述当前帧图像的目标姿态对所述当前帧图像进行渲染,以获取目标图像。
本申请的视频处理方法、视频处理装置、终端及非易失性计算机可读存储介质中,根据当前帧图像的人脸目标位置和相机的姿态数据获取当前帧图像的人脸目标位置对应的虚拟投影位置。然后,结合当前帧图像的人脸目标位置、虚拟投影位置和当前帧图像的旋转姿态项、当前帧图像的平移姿态项对当前帧图像的整体姿态进行计算,以获取当前帧图像的目标姿态。最终,根据当前帧图像的目标人脸位置和当前帧图像的目标姿态对当前帧图像进行渲染,得到目标图像。结合当前帧图像的目标姿态和当前帧图像的人脸目标位置获取目标图像,在保证人脸过渡自然、不产生形变的同时,增加画面整体的稳定性,提升了视频的防抖表现。
本申请的实施方式的附加方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本申请的实施方式的实践了解到。
附图说明
本申请的上述和/或附加的方面和优点从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:
图1是本申请某些实施方式的视频处理方法的流程图;
图2是本申请某些实施方式的视频处理装置的结构示意图;
图3是本申请某些实施方式的终端的结构示意图;
图4至图14是本申请某些实施方式的视频处理方法的流程图;
图15是本申请某些实施方式的非易失性计算机可读存储介质与处理器的连接示意图。
具体实施方式
下面详细描述本申请的实施方式,所述实施方式的示例在附图中示出,其中,相同或类似的标号自始至终表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅用于解释本申请的实施方式,而不能理解为对本申请的实施方式的限制。
请参阅图1,本申请提供一种视频处理方法,视频包括当前帧图像,视频处理方法包括:
01:获取当前帧图像的人脸目标位置;
03:根据相机的姿态数据及当前帧图像的人脸目标位置获取当前帧图像的人脸目标位置对应的虚拟投影位置;
07:根据当前帧图像的人脸目标位置、虚拟投影位置、当前帧图像的旋转姿态项及当前帧图像的平移姿态项获取当前帧图像的目标姿态;及
09:根据当前帧图像的人脸目标位置及当前帧图像的目标姿态对当前帧图像进行渲染,以获取目标图像。
请结合图2,本申请还提供一种视频处理装置10,视频处理装置10包括第一获取模块11、第二获取模块13、第三获取模块15及渲染模块17。第一获取模块11用于执行01中的方法,即,第一获取模块11用于获取当前帧图像的人脸目标位置。第二获取模块用于执行03中的方法,即,第二获取模块13用于根据相机的姿态数据及当前帧图像的人脸目标位置获取当前帧图像的人脸目标位置对应的虚拟投影位置。第三获取模块15用于执行07中的方法,即,第三获取模块15用于根据当前帧图像的人脸目标位置、虚拟投影位置、当前帧图像的旋转姿态项及当前帧图像的平移姿态项获取当前帧图像的目标姿态。渲染模块17用于执行09中的方法,即,渲染模块17用于根据当前帧图像的人脸目标位置及当前帧图像的目标姿态对当前帧图像进行渲染,以获取目标图像。
本申请还提供一种终端100,终端100包括一个或多个处理器30、存储器50、及一个或多个程序。其中,一个或多个程序被存储在存储器50中,并且被一个或多个处理器30执行,程序包括用于执行本申请实施方式的视频处理方法的指令。即,一个或多个处理器30执行程序时,处理器30可以实现01、03、07及09中的方法。即,一个或多个处理器30用于执行:获取当前帧图像的人脸目标位置;根据相机的姿态数据及当前帧图像的人脸目标位置获取当前帧图像的人脸目标位置对应的虚拟投影位置;根据当前帧图像的人脸目标位置、虚拟投影位置、当前帧图像的旋转姿态项及当前帧图像的平移姿态项获取当前帧图像的目标姿态;及根据当前帧图像的人脸目标位置及当前帧图像的目标姿态对当前帧图像进行渲染,以获取目标图像。
具体地,终端100可以包括但不限于手机、笔记本电脑、平板电脑、智能手表等终端设备。视频处理装置10可以是集成在终端100中的功能模块的集成。本申请仅以终端100是手机为例进行说明,终端100是其他类型的终端设备时的情形与手机类似,在此不详细展开说明。
不同于普通的视频防抖,在有人像的视频中,除去视频整体的防抖效果之外,人脸区域的变化过渡是否平滑自然则更为关键,因此需要对人脸区域进行特殊处理。在保证人脸区域的防抖效果的同时,还需要避免由于防抖造成的人像扭曲变形。人像视频防抖方案一般只针对图像进行全局处理,无法兼顾人像和画面整体的防抖效果。由于防抖算法会通过图像的旋转变形对画面整体进行重新的渲染,所以在画面整体较好的防抖效果下,人脸区域会随着画面整体的变化而发生一定的变形,造成人像忽大忽小或扭曲形变的效果;而在保护人像变化自然、避免扭曲变形的条件下,则会损失画面整体的防抖效果,二者难以兼得。
本申请的视频处理方法中,根据当前帧图像的人脸目标位置和相机的姿态数据获取当前帧图像的人脸目标位置对应的虚拟投影位置。然后,结合当前帧图像的人脸目标位置、虚拟投影位置和当前帧图像的旋转姿态项、当前帧图像的平移姿态项对当前帧图像的整体姿态进行计算,以获取当前帧图像的目标姿态。最终,根据当前帧图像的目标人脸位置和当前帧图像的目标姿态对当前帧图像进行渲染,得到目标图像。结合当前帧图像的目标姿态和当前帧图像的人脸目标位置获取目标图像,在保证人脸过渡自然、不产生形变的同时,增加画面整体的稳定性,提升了视频的防抖表现。
方法01中,第一获取模块11或处理器30针对当前帧图像的人脸区域进行防抖处理,以获取当前帧图像的人脸目标位置,以对人脸区域进行特殊处理,保证人脸区域的防抖效果。
方法03中,结合相机的姿态数据和当前帧图像的人脸目标位置计算得到当前帧图像的人脸目标位置对应的虚拟投影位置。其中,第二获取模块13或处理器30通过利用相机的姿态数据,可以有效处理视频画面中不同的抖动程度,适用于多种运动场景下的人像视频防抖。同时,支持终端100的实时处理,可以及时获取人像防抖的视频结果。
方法07中,当前帧图像的旋转姿态项和当前帧图像的平移姿态项能够反映当前帧图像的虚拟姿态信息。第三获取模块15或处理器30结合当前帧图像的人脸目标位置、虚拟投影位置,当前帧图像的旋转姿态项和当前帧图像的平移姿态项对当前帧图像的整体画面进行计算,以获取当前帧图像的目标姿态,从而保证视频中的人脸过渡自然、不产生形变,同时,还可以增加视频的画面整体的稳定性,提升了视频的防抖效果
方法09中,结合当前帧图像的人脸目标位置和当前帧图像的目标姿态对当前帧图像进行渲染,以获取对应当前帧图像的目标图像。同样地,对于视频中的其他帧图像而言,均执行01、03、07及09中的方法,从而生成具有人像防抖效果的视频。
请参阅图4,在某些实施方式中,视频还包括前一帧图像,01:获取当前帧图像的人脸目标位置,包括:
011:获取当前帧图像的人脸区域的实际中心位置;及
013:根据预设的人像区域防抖的目标函数和实际中心位置获取当前帧图像的人脸目标位置,目标函数是关于当前帧图像的人脸目标位置、前一帧图像的人脸目标位置、以及实际中心位置的函数。
请结合图2,第一获取模块11还用于执行011及013中的方法。即,第一获取模块11还用于:获取当前帧图像的人脸区域的实际中心位置;及根据预设的人像区域防抖的目标函数和实际中心位置获取当前帧图像的人脸目标位置,目标函数是关于当前帧图像的人脸目标位置、前一帧图像的人脸目标位置、以及实际中心位置的函数。
请结合图3,处理器30还用于执行011及013中的方法。即,处理器30还用于:获取当前帧图像的人脸区域的实际中心位置;及根据预设的人像区域防抖的目标函数和实际中心位置获取当前帧图像的人脸目标位置,目标函数是关于当前帧图像的人脸目标位置、前一帧图像的人脸目标位置、以及实际中心位置的函数。
具体地,第一获取模块11或处理器30利用卷积神经网络(Convolutional NeuralNetworks,CNN)人脸检测模型确定当前帧图像的人脸区域,并获取人脸区域中各像素点的位置计算得到当前帧图像的人脸区域的实际中心位置。再对预设的人像区域防抖的目标函数进行求解,以得到当前帧图像的目标人脸位置。其中,预设的人像区域防抖的目标函数是关于当前帧图像的人脸目标位置、前一帧图像的人脸目标位置、及当前帧图像的实际中心位置的函数。前一帧图像的人脸目标位置和当前帧图像的实际中心位置均为已知数据。第一获取模块11或处理器30对预设的人像区域防抖的目标函数进行求解,即可获取得到当前帧图像的人脸目标位置。
请参阅图5,在某些实施方式中,011:获取当前帧图像的人脸区域的实际中心位置,包括:
0111:获取当前帧图像的人脸区域的多个关键点的实际位置;及
0113:对多个关键点的实际位置进行求平均以获取实际中心位置。
请结合图2,第一获取模块11还用于执行0111及0113中的方法。即,第一获取模块11还用于:获取当前帧图像的人脸区域的多个关键点的实际位置;及对多个关键点的实际位置进行求平均以获取实际中心位置。
请结合图3,处理器30还用于执行0111及0113中的方法。即,处理器30还用于:获取当前帧图像的人脸区域的多个关键点的实际位置;及对多个关键点的实际位置进行求平均以获取实际中心位置。
第一获取模块11或处理器30获取当前帧图像的实际中心位置时,利用二维人脸关键点检测算法确定当前帧图像的人脸区域的关键点。其中,人脸区域的关键点可选取人脸的鼻子、眼睛、嘴巴等位置处的一个或多个像素点作为关键点,使得根据关键点的实际位置确定的实际中心位置与当前帧图像的实际人脸区域的中心位置之间的差距较小。
在一个实施例中,第一获取模块11或处理器30获取的人脸区域的关键点为4个,将多个关键点分别记为Li,关键点的总数记为N,其中,i的取值范围为[1,4],Li的实际位置为(xi,yi),(xi,yi)的取值为第一获取模块11或处理器30获取得到的关键点Li的实际位置的取值,则计算当前帧图像的人脸区域的实际中心位置时,对多个关键点的实际位置进行求平均以获取实际中心位置,实际中心位置记为Ct,具体可通过公式(1)表示:
公式(1):Ct=1/N∑iLi
例如,当4个关键点的实际位置分别为(0.00,1.00)、(0.00,8.00)、(6.00,4.00)、(8.00,6.00),则实际中心位置的为((0.00+0.00+6.00+8.00)/4,(1.00+8.00+4.00+6.00)/4),即,实际中心位置为(3.50,4.75)。
请参阅图6,在某些实施方式中,人脸区域具有多个关键点,当前帧图像的人脸目标位置包括多个关键点的目标位置;013:根据预设的人像区域防抖的目标函数和实际中心位置获取当前帧图像的人脸目标位置,包括:
0131:获取当前帧图像中每个关键点的目标位置与前一帧图像中对应的关键点的目标位置之间的差值的1范数以作为第一参数;
0133:获取当前帧图像中每个关键点的目标位置与实际中心位置的差值的绝对值,并从多个绝对值中挑选出最大值以作为第二参数;及
0135:将第一参数与第二参数以预设第一比例进行加权和计算,以得到第一加权和值,将使第一加权和值取最小值时,当前帧图像中所有关键点的目标位置的取值的集合,作为当前帧图像的人脸目标位置。
请结合图2,第一获取模块11还用于执行0131、0133及0135中的方法。即,第一获取模块11还用于:获取当前帧图像中每个关键点的目标位置与前一帧图像中对应的关键点的目标位置之间的差值的1范数以作为第一参数;获取当前帧图像中每个关键点的目标位置与实际中心位置的差值的绝对值,并从多个绝对值中挑选出最大值以作为第二参数;及将第一参数与第二参数以预设第一比例进行加权和计算,以得到第一加权和值,将使第一加权和值取最小值时,当前帧图像中所有关键点的目标位置的取值的集合,作为当前帧图像的人脸目标位置。
请结合图3,处理器30还用于执行0131、0133及0135中的方法。即,处理器30还用于:获取当前帧图像中每个关键点的目标位置与前一帧图像中对应的关键点的目标位置之间的差值的1范数以作为第一参数;获取当前帧图像中每个关键点的目标位置与实际中心位置的差值的绝对值,并从多个绝对值中挑选出最大值以作为第二参数;及将第一参数与第二参数以预设第一比例进行加权和计算,以得到第一加权和值,将使第一加权和值取最小值时,当前帧图像中所有关键点的目标位置的取值的集合,作为当前帧图像的人脸目标位置。
具体地,预设的人像区域防抖的目标函数与当前帧图像的实际中心位置Ct、当前帧图像的人脸目标位置中的多个关键点以及前一帧图像的人脸目标位置的多个关键点相关,其中,当前帧图像的人脸目标位置的关键点的集合为未知数,记为Ht,前一帧图像的人脸目标位置的关键点的集合记为Ht-1,Ht-1为已知量。预设的人像区域防抖的目标函数可用公式(1)表示:
公式(1):argminH(w1||Ht-Ht-1||+w2max(||Ht-Ct||))
其中,||Ht-Ht-1||对应方法0131中的第一参数,即,第一获取模块11或处理器30获取Ht-Ht-1的1范数。如,当前帧图像的人脸目标位置的多个关键点的集合Ht中的多个关键点分别为L1、L2、L3、L4,前一帧图像的人脸目标位置的对应的多个关键点的集合Ht-1中的多个关键点分别为L1,-1、L2,-1、L3,-1、L4,-1,则第一参数为|L1-L1,-1|+|L2-L2,-1|+|L3-L3,-1|+|L4-L4,-1|。max(||Ht-Ct||)对应方法0133中的第二参数,即,第一获取模块11或处理器30计算当前帧图像(人脸区域)的多个关键点中距离(当前帧图像)的实际中心位置最远的一个关键点,分别计算每个关键点的目标位置与实际中心位置之间的差值的绝对值,并从多个绝对值中挑选出最大值以作为第二参数。如,第一个关键点与实际中心位置之间的差值的绝对值记为d1,第二个关键点与实际中心位置之间的差值的绝对值记为d2,第三个关键点与实际中心位置之间的差值的绝对值记为d3,第四个关键点与实际中心位置之间的差值的绝对值记为d4,其中,第三个关键点与实际中心位置之间的差值的绝对值为四个差值的绝对值中的最大值,则第二参数为d3。
第一获取模块11或处理器30以预设第一比例对第一参数和第二参数进行加权和计算,预设第一比例为w1:w2,w1:w2的取值范围可包括但不限于[0,1]。其中,w1表示当前帧图像(整体)与前一帧图像(整体)之间的防抖强度,w1越大,表示当前帧图像与前一帧图像之间的差异越小,图像整体防抖效果越好;w2表示当前帧图像的人脸区域与前一帧图像的人脸区域之间的防抖强度,w2越大,表示当前帧图像的人脸区域与前一帧图像的人脸区域之间的差异越小,图像的人脸区域防抖效果越好。w1和w2的具体取值可根据实际的防抖效果需求进行设置。
最终,第一获取模块11或处理器30利用argmin函数获取第一加权和值(w1*(|L1-L1,-1|+|L2-L2,-1|+|L3-L3,-1|+|L4-L4,-1|)+w2*d3)取最小值时,L1、L2、L3、L4的取值,多个关键点L1、L2、L3、L4的取值的集合即为当前帧图像的人脸目标位置。
综上,预设的人像区域防抖的目标函数可以保证前后连续两帧的目标人像位置距离较近,同时保证当前帧图像的人脸目标位置与当前帧图像的实际人脸位置差距不大,从而使得人脸区域的防抖效果过渡自然。
请参阅图7,在某些实施方式中,当前帧图像的人脸区域具有多个关键点,当前帧图像的人脸目标位置包括多个关键点的目标位置。03:根据相机的姿态数据及当前帧图像的人脸目标位置获取当前帧图像的人脸目标位置对应的虚拟投影位置,包括:
031:获取相机的实际姿态位置;
033:获取相机的内参矩阵、虚拟旋转矩阵及实际旋转矩阵;
035:根据实际姿态位置、内参矩阵、虚拟旋转矩阵及实际旋转矩阵获取单应性矩阵,单应性矩阵与相机的目标姿态位置、实际姿态位置相关;及
037:根据多个关键点的目标位置及单应性矩阵获取多个关键点的虚拟投影位置。
请结合图2,第二获取模块13还用于执行031、033、035及037中的方法。即,第二获取模块13还用于:获取相机的实际姿态位置;获取相机的内参矩阵、虚拟旋转矩阵及实际旋转矩阵;根据实际姿态位置、内参矩阵、虚拟旋转矩阵及实际旋转矩阵获取单应性矩阵,单应性矩阵与相机的目标姿态位置、实际姿态位置相关;及根据多个关键点的目标位置及单应性矩阵获取多个关键点的虚拟投影位置。
请结合图3,处理器30还用于执行031、033、035及037中的方法。即,处理器30还用于:获取相机的实际姿态位置;获取相机的内参矩阵、虚拟旋转矩阵及实际旋转矩阵;根据实际姿态位置、内参矩阵、虚拟旋转矩阵及实际旋转矩阵获取单应性矩阵,单应性矩阵与相机的目标姿态位置、实际姿态位置相关;及根据多个关键点的目标位置及单应性矩阵获取多个关键点的虚拟投影位置。
方法031和033中,第二获取模块13或处理器30根据陀螺仪输入的陀螺仪(Gyroscope,Gyro)数据进行计算,以获取相机的实际姿态位置,记为Pr;第二获取模块13或处理器30根据Gyro数据获取相机的内参矩阵、相机的虚拟旋转矩阵和相机的实际旋转矩阵,并将内参矩阵记为K,虚拟旋转矩阵记为Rv,实际旋转矩阵记为Rr。本申请中,终端100通过利用陀螺仪输入的Gyro数据,使得第二获取模块13或处理器30可以有效处理视频画面中不同的抖动程度,使得视频处理方法可以适用于多种运动场景下的人像视频防抖。
方法035中,第二获取模块13或处理器30将相机的目标姿态位置记为Pv,结合实际姿态位置Pr、内参矩阵K、虚拟旋转矩阵Rv和实际旋转矩阵Rr获取目标姿态位置Pv与实际姿态位置Pr之间的单应性矩阵Q,单应性矩阵Q能够反映相机的目标姿态位置和实际姿态位置之间的变换关系,便于计算当前帧图像的关键点的目标位置对应的虚拟投影位置。
方法037中,由于当前帧图像的人脸目标位置已由第一获取模块11或处理器30获取得到,第二获取模块13或处理器30结合单应性矩阵Q和关键点的目标位置获取各关键点对应的虚拟投影位置,方便后续结合人脸区域的人脸信息和图像的画面整体的姿态信息优化视频的防抖效果,保证人脸过渡自然、不产生变形的同时,实现视频防抖的效果,提升视频的防抖表现。
请参阅图8,在某些实施方式中,035:根据实际姿态位置、内参矩阵、虚拟旋转矩阵及实际旋转矩阵获取单应性矩阵,包括:
0351:获取内参矩阵与实际旋转矩阵的乘积的逆矩阵;及
0353:根据虚拟旋转矩阵与逆矩阵的乘积、及实际姿态位置获取单应性矩阵。
请结合图2,第二获取模块13还用于执行0351及0353中的方法。即,第二获取模块13还用于:获取内参矩阵与实际旋转矩阵的乘积的逆矩阵;及根据虚拟旋转矩阵与逆矩阵的乘积、及实际姿态位置获取单应性矩阵。
请结合图3,处理器30还用于执行0351及0353中的方法。即,处理器30还用于:获取内参矩阵与实际旋转矩阵的乘积的逆矩阵;及根据虚拟旋转矩阵与逆矩阵的乘积、及实际姿态位置获取单应性矩阵。
具体地,单应性矩阵Q可采用公式(2)表示:
公式(2):Q(Pv,Pr)=Rv*(KRr)-1
其中,单应性矩阵Q表示为(Pv,Pr),Pv为相机的目标姿态位置,Pr为相机的实际姿态位置,目标姿态位置Pv和实际姿态位置Pr均为单应性矩阵Q的列向量。Rv为相机的虚拟旋转矩阵,(KRr)-1为内参矩阵K与实际旋转矩阵Rr的乘积的逆矩阵。
第二获取模块13或处理器30结合虚拟旋转矩阵Rv和逆矩阵(KRr)-1的乘积Rv*(KRr)-1及实际姿态位置Pr获取单应性矩阵Q,从而结合单应性矩阵Q和预设的最优化目标函数获取目标姿态。
若当前帧图像的人脸目标位置的包括四个关键点,四个关键点分别记为L1、L2、L3、L4,第二获取模块13或处理器30得到单应性矩阵Q的表达式后,分别获取当前帧图像的人脸目标位置的多个关键点对应的虚拟投影位置,即,各关键点对应的虚拟投影位置可用公式(3)表示:
公式(3):Lv=Q*L
其中,Lv表示关键点的虚拟投影位置,L表示当前帧图像的人脸目标位置的各关键点,L∈{L1,L2,L3,L4}。例如,与关键点L1对应的虚拟投影位置Lv1=Q*L1,与关键点L2对应的虚拟投影位置Lv2=Q*L2,与关键点L3对应的虚拟投影位置Lv3=Q*L3,与关键点L4对应的虚拟投影位置Lv4=Q*L4。
请参阅图9,在某些实施方式中,视频包括前一帧图像和前两帧图像,视频处理方法还包括:
04:根据当前帧图像的虚拟旋转姿态、前一帧图像的虚拟旋转姿态、前两帧图像的虚拟旋转姿态获取当前帧图像的旋转姿态项。
请结合图2,视频处理装置10还包括第四获取模块14,第四获取模块14用于执行04中的方法。即,第四获取模块14用于:根据当前帧图像的虚拟旋转姿态、前一帧图像的虚拟旋转姿态、前两帧图像的虚拟旋转姿态获取当前帧图像的旋转姿态项。
请结合图3,处理器30还用于执行04中的方法。即,处理器30还用于:根据当前帧图像的虚拟旋转姿态、前一帧图像的虚拟旋转姿态、前两帧图像的虚拟旋转姿态获取当前帧图像的旋转姿态项。
当前帧图像的旋转姿态项与当前帧图像、前一帧图像、前两帧图像(前两帧图像为一张图像)的虚拟旋转姿态相关,综合前一帧图像和前两帧图像的虚拟旋转姿态,作为对当前帧图像的画面整体进行防抖处理的优化因素,使得当前帧图像与前面两帧图像之间的差别较小,保证视频中的画面整体过渡自然。同时,结合前一帧图像和前两帧图像(一共两帧图像)对当前帧图像的虚拟旋转姿态进行估算,有效减少第四获取模块14或处理器30的计算量,提高运算效率。当然,也可以结合三帧或者三帧以上的图像的虚拟旋转姿态对当前帧图像的旋转姿态项进行估算,对此不作限制。
请参阅图10,在某些实施方式中,04:根据当前帧图像的虚拟旋转姿态、前一帧图像的虚拟旋转姿态、前两帧图像的虚拟旋转姿态获取当前帧图像的旋转姿态项,包括:
041:获取当前帧图像的虚拟旋转姿态与前一帧图像的虚拟旋转姿态的差值的2范数,以作为第一旋转系数;
043:获取当前帧图像的虚拟旋转姿态与前一帧图像的虚拟旋转姿态的乘积、和前一帧图像的虚拟旋转姿态与前两帧图像的虚拟旋转姿态的乘积之间的差值的2范数,以作为第二旋转系数;及
045:将第一旋转系数与第二旋转系数以预设平滑比例进行加权和计算,以获取当前帧图像的旋转姿态项。
请结合图2,第四获取模块14还用于执行041、043、及045中的方法。即,第四获取模块14还用于:获取当前帧图像的虚拟旋转姿态与前一帧图像的虚拟旋转姿态的差值的2范数,以作为第一旋转系数;获取当前帧图像的虚拟旋转姿态与前一帧图像的虚拟旋转姿态的乘积、和前一帧图像的虚拟旋转姿态与前两帧图像的虚拟旋转姿态的乘积之间的差值的2范数,以作为第二旋转系数;及将第一旋转系数与第二旋转系数以预设平滑比例进行加权和计算,以获取当前帧图像的旋转姿态项。
请结合图3,处理器30还用于执行041、043、及045中的方法。即,处理器30还用于:获取当前帧图像的虚拟旋转姿态与前一帧图像的虚拟旋转姿态的差值的2范数,以作为第一旋转系数;获取当前帧图像的虚拟旋转姿态与前一帧图像的虚拟旋转姿态的乘积、和前一帧图像的虚拟旋转姿态与前两帧图像的虚拟旋转姿态的乘积之间的差值的2范数,以作为第二旋转系数;及将第一旋转系数与第二旋转系数以预设平滑比例进行加权和计算,以获取当前帧图像的旋转姿态项。
在本申请的实施例中,第四获取模块14或处理器30结合两帧图像(前一帧图像和前两帧图像)与当前帧图像获取当前帧图像的旋转姿态项。具体地,将当前帧图像的虚拟旋转姿态记为rv,前一帧图像的虚拟旋转姿态记为rv,-1,前两帧图像的虚拟旋转姿态记为rv,-2,当前帧图像的旋转姿态项记为Er(rv)。
第四获取模块14或处理器30获取得到当前帧图像的虚拟旋转姿态rv、前一帧图像的虚拟旋转姿态rv,-1以及前两帧图像的虚拟旋转姿态rv,-2后,获取当前帧图像的虚拟旋转姿态rv与前一帧图像的虚拟旋转姿态rv,-1之间的差值的2范数,作为第一旋转系数。第四获取模块14或处理器30获取当前帧图像的虚拟旋转姿态rv与前一帧图像的虚拟旋转姿态rv,-1的乘积rvrv,-1,获取前一帧图像的虚拟旋转姿态rv,-1与前两帧图像的虚拟旋转姿态rv,-2的乘积rv,-1rv,-2,将两个乘积rvrv,-1与乘积rv,-1rv,-2之间的差值的2范数作为第二旋转系数。最后,第四获取模块14或处理器30再将第一旋转系数和第二旋转系数以预设平滑比例进行加权和计算,以获取当前帧图像的旋转姿态项Er(rv)。当前帧图像的旋转姿态项Er(rv)可用公式(4)表示:
公式(4):Er(rv)=c0||rv-rv,-1||2+c1||rvrv,-1-rv,-1rv,-2||2
其中,c0和c1为预设平滑系数,c0/c1为预设平滑比例。||rv-rv,-1||2为第一旋转系数,||rvrv,-1-rv,-1rv,-2||2为第二旋转系数。当前帧图像的虚拟旋转姿态rv、前一帧图像的虚拟旋转姿态rv,-1和前两帧图像的虚拟旋转姿态rv,-2均为已知量,计算得到的第一旋转系数和第二旋转系数为具体的数值。
请参阅图9,在某些实施方式中,视频处理方法还可包括:
05:根据当前帧图像的虚拟平移姿态、前一帧图像的虚拟平移姿态、前两帧图像的虚拟平移姿态获取当前帧图像的平移姿态项。
请结合图2,视频处理装置10还可包括第五获取模块16,第五获取模块16用于执行05中的方法。即,第五获取模块16用于:根据当前帧图像的虚拟平移姿态、前一帧图像的虚拟平移姿态、前两帧图像的虚拟平移姿态获取当前帧图像的平移姿态项。
请结合图3,处理器30还用于执行05中的方法。即,处理器30还用于:根据当前帧图像的虚拟平移姿态、前一帧图像的虚拟平移姿态、前两帧图像的虚拟平移姿态获取当前帧图像的平移姿态项。
当前帧图像的平移姿态项与当前帧图像、前一帧图像、前两帧图像的虚拟平移量相关,综合前一帧图像和前两帧图像的虚拟平移量,作为对当前帧图像的画面整体进行防抖处理的优化因素,使得当前帧图像与前面两帧图像之间的差别较小,使得当前帧图像的画面整体过渡自然。同时,结合前一帧图像和前两帧图像对当前帧图像的虚拟平移量进行估算,有效减少第五获取模块16或处理器30的计算量,提高运算效率。当然,也可以结合三帧或者三帧以上的图像的虚拟平移量对当前帧图像的平移姿态项进行估算,对此不作限制。
请参阅图11,在某些实施方式中,05:根据当前帧图像的虚拟平移姿态、前一帧图像的虚拟平移姿态、前两帧图像的虚拟平移姿态获取当前帧图像的平移姿态项,包括:
051:获取当前帧图像的虚拟平移量与前一帧图像的虚拟平移量的差值的2范数,以作为第一平移系数;
053:获取前一帧图像的虚拟平移量与当前帧图像的虚拟平移量的差值、前一帧图像的虚拟平移量与前两帧图像的虚拟平移量的差值之间的和值的2范数,以作为第二平移系数;及
055:将第一平移系数与第二平移系数以预设平滑比例进行加权和计算,以获取当前帧图像的平移姿态项。
请结合图2,第五获取模块16还用于执行051、053及055中的方法。即,第五获取模块16还用于:获取当前帧图像的虚拟平移量与前一帧图像的虚拟平移量的差值的2范数,以作为第一平移系数;获取前一帧图像的虚拟平移量与当前帧图像的虚拟平移量的差值、前一帧图像的虚拟平移量与前两帧图像的虚拟平移量的差值之间的和值的2范数,以作为第二平移系数;及将第一平移系数与第二平移系数以预设平滑比例进行加权和计算,以获取当前帧图像的平移姿态项。
请结合图3,处理器30还用于执行051、053及055中的方法。即,处理器30还用于:获取当前帧图像的虚拟平移量与前一帧图像的虚拟平移量的差值的2范数,以作为第一平移系数;获取前一帧图像的虚拟平移量与当前帧图像的虚拟平移量的差值、前一帧图像的虚拟平移量与前两帧图像的虚拟平移量的差值之间的和值的2范数,以作为第二平移系数;及将第一平移系数与第二平移系数以预设平滑比例进行加权和计算,以获取当前帧图像的平移姿态项。
在本申请的实施例中,第五获取模块16或处理器30结合两帧图像(前一帧图像和前两帧图像)与当前帧图像获取当前帧图像的平移姿态项。具体地,将当前帧图像的虚拟平移量记为t,前一帧图像的虚拟平移量记为t-1,前两帧图像的虚拟平移量记为t-2,当前帧图像的平移姿态项记为Et(t)。
第五获取模块16或处理器30获取得到当前帧图像的虚拟平移量t、前一帧图像的虚拟平移量t-1、前两帧图像的虚拟平移量t-2后,获取当前帧图像的虚拟平移量t与前一帧图像的虚拟平移量t-1之间的差值的2范数,作为第一平移系数。第五获取模块16或处理器30获取前一帧图像的虚拟平移量t-1与当前帧图像的虚拟平移量t之间的差值t-1-t、获取前一帧图像的虚拟平移量t-1与前两帧图像的虚拟平移量t-2之间的差值t-1-t-2,再去两个差值之间的和值的2范数,作为第二平移系数,即,第二平移系数为(t-1-t)+(t-1-t-2)的2范数。最后,第五获取模块16或处理器30再将第一平移系数和第二平移系数以预设平滑系数进行加权和计算,以获取当前帧图像的平移姿态项Et(t)。当前帧图像的平移姿态项Et(t)可用公式(5)表示:
公式(5):Et(t)=c0||t-t-1||2+c1||2t-1-(t+t-2)||2
其中,c0和c1为预设平滑系数,c0/c1为预设平滑比例,与当前帧图像的旋转姿态项的预设平滑系数相同。||t-t-1||2为第一平移系数,||2t-1-(t+t-2)||2为第二平移系数。当前帧图像的虚拟平移量记为t、前一帧图像的虚拟平移量记为t-1、前两帧图像的虚拟平移量记为t-2均为已知量,计算得到的第一平移系数和第二平移系数为具体的数值。
请参阅图12,在某些实施方式中,07:根据当前帧图像的人脸目标位置、虚拟投影位置、当前帧图像的旋转姿态项及当前帧图像的平移姿态项获取当前帧图像的目标姿态,包括:
071:获取当前帧图像的人脸目标位置的目标中心位置;
073:获取每个虚拟投影位置与目标中心位置的差值的2范数以作为当前帧图像的人脸数据项,人脸数据项与当前帧图像的目标姿态相关;及
075:根据预设的最优化目标函数和旋转姿态项、平移姿态项获取当前帧图像的目标姿态,最优化目标函数是关于目标中心位置、旋转姿态项及平移姿态项的函数。
请结合图2,第三获取模块15还用于执行071、073及075中的方法。即,第三获取模块15还用于:获取当前帧图像的人脸目标位置的目标中心位置;获取每个虚拟投影位置与目标中心位置的差值的2范数以作为当前帧图像的人脸数据项,人脸数据项与当前帧图像的目标姿态相关;及根据预设的最优化目标函数和旋转姿态项、平移姿态项获取当前帧图像的目标姿态,最优化目标函数是关于目标中心位置、旋转姿态项及平移姿态项的函数。
请结合图3,处理器30还用于执行071、073及075中的方法。即,处理器30还用于:获取当前帧图像的人脸目标位置的目标中心位置;获取每个虚拟投影位置与目标中心位置的差值的2范数以作为当前帧图像的人脸数据项,人脸数据项与当前帧图像的目标姿态相关;及根据预设的最优化目标函数和旋转姿态项、平移姿态项获取当前帧图像的目标姿态,最优化目标函数是关于目标中心位置、旋转姿态项及平移姿态项的函数。
对于方法071,方法013中已根据预设的人像区域防抖的目标函数计算得到当前帧图像的人脸目标位置,第三获取模块15或处理器30可根据当前帧图像的人脸目标位置获取得到当前帧图像的目标中心位置。当前帧图像的目标中心位置可记为C2。
对于方法073,将当前帧图像的人脸数据项记为Ef(Pv),方法037中已根据人脸区域的多个关键点的目标位置及单应性矩阵获取得到多个关键点的虚拟投影位置Lv,第三获取模块15或处理器30可根据每个关键点的虚拟投影位置Lv与目标中心位置C2之间的差值的2范数,获取当前帧图像的人脸数据项Ef(Pv)。当前帧图像的人脸数据项Ef(Pv)可用公式(6)表示:
公式(6):Ef(Pv)=∑i||Lvi-c2||2
其中,i的取值范围为[0,N],i为整数,N为当前帧图像的人脸区域的关键点的总数。
第三获取模块15或处理器30结合当前帧图像的人脸数据项、当前帧图像的旋转姿态项、当前帧图像的平移姿态项设计最优化目标函数,并对最优化目标函数进行求解,即可获取得到当前帧图像的目标姿态。
请参阅图13,在某些实施方式中,071:获取当前帧图像的目标中心位置,包括:
0711:获取当前帧图像的人脸目标位置的多个关键点的目标位置;及
0713:对多个关键点的目标位置进行求平均以获取目标中心位置。
请结合图2,第三获取模块15还用于执行0711及0713中的方法。即,第三获取模块15还用于:获取当前帧图像的人脸目标位置的多个关键点的目标位置;及对多个关键点的目标位置进行求平均以获取目标中心位置。
请结合图3,处理器30还用于执行0711及0713中的方法。即,处理器30还用于:获取当前帧图像的人脸目标位置的多个关键点的目标位置;及对多个关键点的目标位置进行求平均以获取目标中心位置。
具体地,第三获取模块15或处理器30获取当前帧图像的目标中心位置时,可结合当前帧图像的目标中心位置的多个关键点的目标位置进行求平均计算,以获取当前帧图像的目标中心位置。
请参阅图14,在某些实施方式中,075:根据预设的最优化目标函数和旋转姿态项、平移姿态项获取当前帧图像的目标姿态,包括:
0751:将人脸数据项、旋转姿态项与平移姿态项以预设第二比例进行加权和计算,以得到第二加权和值,将使第二加权和值取最小值时,人脸数据项的取值;及
0753:根据人脸数据项的取值获取当前帧图像的目标姿态。
请结合图2,第三获取模块15还用于执行0751及0753中的方法。即,第三获取模块15还用于:将人脸数据项、旋转姿态项与平移姿态项以预设第二比例进行加权和计算,以得到第二加权和值,将使第二加权和值取最小值时,人脸数据项的取值;及根据人脸数据项的取值获取当前帧图像的目标姿态。
请结合图3,处理器30还用于执行0751及0753中的方法。即,处理器30还用于:将人脸数据项、旋转姿态项与平移姿态项以预设第二比例进行加权和计算,以得到第二加权和值,将使第二加权和值取最小值时,人脸数据项的取值;及根据人脸数据项的取值获取当前帧图像的目标姿态。
具体地,预设的最优化目标函数用公式(7)表示:
公式(7):argmin(wf*Ef(Pv)+wr*Er(rv)+wt*Et(t))
其中,预设第二比例为wf:wr:wt,wf:wr:wt的取值范围可包括但不限于[0,1]。其中,wf的取值越大,则说明人脸数据项的防抖强度越大,则最终获得的当前帧图像的目标姿态Pv与前一帧图像的目标姿态之间的差异越小,图像的画面整体过渡更加自然。wr的取值越大,则说明当前帧图像的旋转姿态项与前一帧图像的旋转姿态项之间的差异越小。wt的取值越大,则说明当前帧图像的平移姿态项与前一帧图像的平移姿态项之间的差异越小。wf、wt、wr的具体取值可根据实际的防抖效果需求进行设置。
最终,第三获取模块15或处理器30利用argmim函数获取第二加权和值(wf*Ef(Pv)+wr*Er(rv)+wt*Et(t))取得最小值时,人脸数据项的取值。由于人脸数据项与当前帧图像的目标姿态Pv相关,根据人脸数据项的取值可计算得到当前帧图像的目标姿态的取值。
综上,渲染模块17或处理器30获得当前帧图像的人脸目标位置和当前帧图像的目标姿态后,对当前帧图像进行重新渲染,从而生成具有人像防抖效果的目标图像。
请参阅图15,本申请还提供一种包含计算机程序201的非易失性计算机可读存储介质200。当计算机程序201被一个或多个处理器30执行时,使得处理器30实现01、03、07、09、011、013、0111、0113、0131、0133、0135、031、033、035、037、0351、0353、04、041、043、045、05、051、053、055、071、073、075、0711、0713、0751、及0753中的方法。
在本说明书的描述中,参考术语“某些实施方式”、“一个例子中”、“示例地”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本申请的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。此外,在不相互矛盾的情况下,本领域的技术人员可以将本说明书中描述的不同实施例或示例以及不同实施例或示例的特征进行结合和组合。
流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本申请的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本申请的实施例所属技术领域的技术人员所理解。
尽管上面已经示出和描述了本申请的实施方式,可以理解的是,上述实施方式是示例性的,不能理解为对本申请的限制,本领域的普通技术人员在本申请的范围内可以对上述实施方式进行变化、修改、替换和变型。
Claims (13)
1.一种视频处理方法,其特征在于,所述视频包括当前帧图像,所述视频处理方法包括:
获取所述当前帧图像的人脸目标位置;
根据相机的姿态数据及所述当前帧图像的人脸目标位置获取所述当前帧图像的人脸目标位置对应的虚拟投影位置;
根据所述当前帧图像的人脸目标位置、所述虚拟投影位置、所述当前帧图像的旋转姿态项及所述当前帧图像的平移姿态项获取所述当前帧图像的目标姿态;及
根据所述当前帧图像的人脸目标位置及所述当前帧图像的目标姿态对所述当前帧图像进行渲染,以获取目标图像。
2.根据权利要求1所述的视频处理方法,其特征在于,所述视频还包括前一帧图像,所述获取所述当前帧图像的人脸目标位置,包括:
获取所述当前帧图像的人脸区域的实际中心位置;及
根据预设的人像区域防抖的目标函数和所述实际中心位置获取所述当前帧图像的人脸目标位置,所述目标函数是关于所述当前帧图像的人脸目标位置、所述前一帧图像的人脸目标位置、以及所述实际中心位置的函数。
3.根据权利要求2所述的视频处理方法,其特征在于,所述人脸区域具有多个关键点,所述当前帧图像的人脸目标位置包括多个所述关键点的目标位置;所述根据预设的人像区域防抖的目标函数和所述实际中心位置获取所述当前帧图像的人脸目标位置,包括:
获取所述当前帧图像中每个所述关键点的目标位置与所述前一帧图像中对应的关键点的目标位置之间的差值的1范数以作为第一参数;
获取所述当前帧图像中每个所述关键点的目标位置与所述实际中心位置的差值的绝对值,并从多个所述绝对值中挑选出最大值以作为第二参数;及
将所述第一参数与所述第二参数以预设第一比例进行加权和计算,以得到第一加权和值,将使所述第一加权和值取最小值时,所述当前帧图像中所有所述关键点的目标位置的取值的集合,作为所述当前帧图像的人脸目标位置。
4.根据权利要求1所述的视频处理方法,其特征在于,所述当前帧图像的人脸区域具有多个关键点,所述当前帧图像的人脸目标位置包括多个所述关键点的目标位置;所述根据相机的姿态数据及所述当前帧图像的人脸目标位置获取所述当前帧图像的人脸目标位置对应的虚拟投影位置,包括:
获取所述相机的实际姿态位置;
获取所述相机的内参矩阵、虚拟旋转矩阵及实际旋转矩阵;
根据所述实际姿态位置、所述内参矩阵、所述虚拟旋转矩阵及所述实际旋转矩阵获取单应性矩阵,所述单应性矩阵与所述相机的目标姿态位置、所述实际姿态位置相关;及
根据多个所述关键点的目标位置及所述单应性矩阵获取多个所述关键点的虚拟投影位置。
5.根据权利要求4所述的视频处理方法,其特征在于,所述根据所述实际姿态位置、所述内参矩阵、所述虚拟旋转矩阵及所述实际旋转矩阵获取单应性矩阵,包括:
获取所述内参矩阵与所述实际旋转矩阵的乘积的逆矩阵;及
根据所述虚拟旋转矩阵与所述逆矩阵的乘积、及所述实际姿态位置获取所述单应性矩阵。
6.根据权利要求1所述的视频处理方法,其特征在于,所述视频包括前一帧图像和前两帧图像,所述视频处理方法还包括:
根据所述当前帧图像的虚拟旋转姿态、所述前一帧图像的虚拟旋转姿态、所述前两帧图像的虚拟旋转姿态获取所述当前帧图像的旋转姿态项。
7.根据权利要求6所述的视频处理方法,其特征在于,所述根据所述当前帧图像的虚拟旋转姿态、所述前一帧图像的虚拟旋转姿态、所述前两帧图像的虚拟旋转姿态获取所述当前帧图像的旋转姿态项,包括:
获取所述当前帧图像的虚拟旋转姿态与所述前一帧图像的虚拟旋转姿态的差值的2范数,以作为第一旋转系数;
获取所述当前帧图像的虚拟旋转姿态与所述前一帧图像的虚拟旋转姿态的乘积、和所述前一帧图像的虚拟旋转姿态与所述前两帧图像的虚拟旋转姿态的乘积之间的差值的2范数,以作为第二旋转系数;及
将所述第一旋转系数与所述第二旋转系数以预设平滑比例进行加权和计算,以获取所述当前帧图像的旋转姿态项。
8.根据权利要求1所述的视频处理方法,其特征在于,所述视频包括前一帧图像和前两帧图像,所述视频处理方法还包括:
根据所述当前帧图像的虚拟平移姿态、所述前一帧图像的虚拟平移姿态、所述前两帧图像的虚拟平移姿态获取所述当前帧图像的平移姿态项。
9.根据权利要求1所述的视频处理方法,其特征在于,所述根据所述当前帧图像的人脸目标位置、所述虚拟投影位置、所述当前帧图像的旋转姿态项及所述当前帧图像的平移姿态项获取所述当前帧图像的目标姿态,包括:
获取所述当前帧图像的人脸目标位置的目标中心位置;
获取每个所述虚拟投影位置与所述目标中心位置的差值的2范数以作为所述当前帧图像的人脸数据项,所述当前帧图像的人脸数据项与所述当前帧图像的目标姿态相关;及
根据预设的最优化目标函数和所述当前帧图像的旋转姿态项、所述当前帧图像的平移姿态项获取所述当前帧图像的目标姿态,所述最优化目标函数是关于所述目标中心位置、所述当前帧图像的旋转姿态项及所述当前帧图像的平移姿态项的函数。
10.根据权利要求9所述的视频处理方法,其特征在于,所述根据预设的最优化目标函数和所述当前帧图像的旋转姿态项、所述当前帧图像的平移姿态项获取所述当前帧图像的目标姿态,包括:
将所述当前帧图像的人脸数据项、所述当前帧图像的旋转姿态项与所述当前帧图像的平移姿态项以预设第二比例进行加权和计算,以得到第二加权和值,将使所述第二加权和值取最小值时,所述当前帧图像的人脸数据项的取值;及
根据所述当前帧图像的人脸数据项的取值获取所述当前帧图像的目标姿态。
11.一种视频处理装置,其特征在于,包括:
第一获取模块,用于获取所述当前帧图像的人脸目标位置;
第二获取模块,用于根据相机的姿态数据及所述当前帧图像的人脸目标位置获取所述当前帧图像的人脸目标位置对应的虚拟投影位置;
第三获取模块,用于根据所述当前帧图像的人脸目标位置、所述虚拟投影位置、所述当前帧图像的旋转姿态项及所述当前帧图像的平移姿态项获取所述当前帧图像的目标姿态;及
渲染模块,用于根据所述当前帧图像的人脸目标位置及所述当前帧图像的目标姿态对所述当前帧图像进行渲染,以获取目标图像。
12.一种终端,其特征在于,包括:
一个或多个处理器、存储器;及
一个或多个程序,其中,一个或多个所述程序被存储在所述存储器中,并且被一个或多个所述处理器执行,所述程序包括用于执行权利要求1至10任意一项所述的视频处理方法的指令。
13.一种存储有计算机程序的非易失性计算机可读存储介质,当所述计算机程序被一个或多个处理器执行时,所述处理器实现权利要求1至10任意一项所述的视频处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210107934.XA CN114463213A (zh) | 2022-01-28 | 2022-01-28 | 视频处理方法、视频处理装置、终端及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210107934.XA CN114463213A (zh) | 2022-01-28 | 2022-01-28 | 视频处理方法、视频处理装置、终端及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN114463213A true CN114463213A (zh) | 2022-05-10 |
Family
ID=81411288
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210107934.XA Pending CN114463213A (zh) | 2022-01-28 | 2022-01-28 | 视频处理方法、视频处理装置、终端及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114463213A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116112761A (zh) * | 2023-04-12 | 2023-05-12 | 海马云(天津)信息技术有限公司 | 生成虚拟形象视频的方法及装置、电子设备和存储介质 |
-
2022
- 2022-01-28 CN CN202210107934.XA patent/CN114463213A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116112761A (zh) * | 2023-04-12 | 2023-05-12 | 海马云(天津)信息技术有限公司 | 生成虚拟形象视频的方法及装置、电子设备和存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11290682B1 (en) | Background modification in video conferencing | |
US8102428B2 (en) | Content-aware video stabilization | |
US11308675B2 (en) | 3D facial capture and modification using image and temporal tracking neural networks | |
CN111557016B (zh) | 用于生成包括模拟的运动模糊的图像的方法和设备 | |
US20220222776A1 (en) | Multi-Stage Multi-Reference Bootstrapping for Video Super-Resolution | |
CN110322542B (zh) | 重建真实世界3d场景的视图 | |
CN107566688B (zh) | 一种基于卷积神经网络的视频防抖方法、装置及图像对齐装置 | |
US8649558B2 (en) | Video processing with region-based warping | |
CN107564063B (zh) | 一种基于卷积神经网络的虚拟物显示方法及装置 | |
Koh et al. | Video stabilization based on feature trajectory augmentation and selection and robust mesh grid warping | |
CN113688907B (zh) | 模型训练、视频处理方法,装置,设备以及存储介质 | |
US10997697B1 (en) | Methods and apparatus for applying motion blur to overcaptured content | |
US11044398B2 (en) | Panoramic light field capture, processing, and display | |
CN106878612A (zh) | 一种基于在线全变差优化的视频稳定方法 | |
JP2022514031A (ja) | パノラマ映像の手ぶれ補正方法及び携帯端末 | |
JP7253621B2 (ja) | パノラマ映像の手ぶれ補正方法及び携帯端末 | |
CN115035456A (zh) | 视频去噪方法、装置、电子设备和可读存储介质 | |
CN114463213A (zh) | 视频处理方法、视频处理装置、终端及存储介质 | |
US20230109047A1 (en) | Methods and apparatus for re-stabilizing video in post-processing | |
CN109658326B (zh) | 一种图像显示方法及装置、计算机可读存储介质 | |
WO2022247394A1 (zh) | 图像拼接方法及装置、存储介质及电子设备 | |
CN114339030B (zh) | 一种基于自适应可分离卷积的网络直播视频稳像方法 | |
US11195247B1 (en) | Camera motion aware local tone mapping | |
CN115914834A (zh) | 视频处理方法及装置 | |
CN117241065B (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 |