CN110245549A - 实时面部和对象操纵 - Google Patents
实时面部和对象操纵 Download PDFInfo
- Publication number
- CN110245549A CN110245549A CN201910173633.5A CN201910173633A CN110245549A CN 110245549 A CN110245549 A CN 110245549A CN 201910173633 A CN201910173633 A CN 201910173633A CN 110245549 A CN110245549 A CN 110245549A
- Authority
- CN
- China
- Prior art keywords
- frame
- model
- modified
- source
- 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.)
- Granted
Links
- 239000011159 matrix material Substances 0.000 claims abstract description 34
- 238000012986 modification Methods 0.000 claims abstract description 20
- 230000004048 modification Effects 0.000 claims abstract description 20
- 238000000034 method Methods 0.000 claims description 40
- 238000009877 rendering Methods 0.000 claims description 9
- 230000015654 memory Effects 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims description 3
- 238000012545 processing Methods 0.000 claims description 2
- 238000001914 filtration Methods 0.000 claims 3
- 238000003672 processing method Methods 0.000 claims 2
- 238000005516 engineering process Methods 0.000 abstract description 14
- 230000001815 facial effect Effects 0.000 abstract description 13
- 230000000007 visual effect Effects 0.000 description 9
- 238000010586 diagram Methods 0.000 description 6
- 238000000605 extraction Methods 0.000 description 4
- 238000001514 detection method Methods 0.000 description 3
- 230000000694 effects Effects 0.000 description 3
- 238000012795 verification Methods 0.000 description 3
- 241000406668 Loxodonta cyclotis Species 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 238000003384 imaging method Methods 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 230000002159 abnormal effect Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 230000008034 disappearance Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 238000009499 grossing Methods 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 239000013589 supplement Substances 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- 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
- G06T15/00—3D [Three Dimensional] image rendering
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/20—Editing of 3D images, e.g. changing shapes or colours, aligning objects or positioning parts
-
- 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
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V20/00—Scenes; Scene-specific elements
- G06V20/60—Type of objects
- G06V20/64—Three-dimensional objects
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/168—Feature extraction; Face representation
- G06V40/171—Local features and components; Facial parts ; Occluding parts, e.g. glasses; Geometrical relationships
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/172—Classification, e.g. identification
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B27/00—Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
- G11B27/02—Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
- G11B27/031—Electronic editing of digitised analogue information signals, e.g. audio or video signals
-
- 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2219/00—Indexing scheme for manipulating 3D models or images for computer graphics
- G06T2219/20—Indexing scheme for editing of 3D models
- G06T2219/2021—Shape modification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06V—IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G06V40/00—Recognition of biometric, human-related or animal-related patterns in image or video data
- G06V40/10—Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
- G06V40/16—Human faces, e.g. facial parts, sketches or expressions
- G06V40/161—Detection; Localisation; Normalisation
- G06V40/166—Detection; Localisation; Normalisation using acquisition arrangements
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Oral & Maxillofacial Surgery (AREA)
- General Health & Medical Sciences (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Architecture (AREA)
- Processing Or Creating Images (AREA)
- Geometry (AREA)
- Studio Devices (AREA)
Abstract
本发明题为“实时面部和对象操纵”。本发明提供了用于修改视频中对象的图像的技术,例如以校正镜头畸变或美化面部。这些技术包括从源视频帧提取和验证对象的特征,随时间推移跟踪那些特征,估计对象的姿态,基于特征修改对象的3D模型,以及基于经修改的3D模型和经修改的本征矩阵和外在矩阵渲染经修改的视频帧。这些技术可实时应用于视频帧序列中的对象。
Description
背景技术
相机已经变小、重量轻并且几乎无所不在。这些小相机常常具有短焦距,并且常常用于拍摄靠近相机的对象的图像,诸如自拍图像。短焦距与对象和相机之间小距离的组合能够在所拍摄的图像中生成对象的投影,这可能看起来会畸变,尤其是与利用更长焦距和与相机的更长距离拍摄的对象图像相比较时。广角镜头的短焦距可生成一种被称为桶形畸变的镜头畸变。与对象中心的短距离相对于与对象上不同点的距离差异可能看起来会使投影畸变,因为对象上更接近相机的部分看起来比对象上更远离相机的部分更大。
例如,自拍照片或视频是拿相机的人的自画像。自拍图像中的对象通常是手拿相机与其面部相距手臂长度或更小距离的人的面部。此外,自拍图像通常是利用智能电话正面的相机拍摄的,因此自拍者在他们拍自拍照时可以在智能电话相机上看到自己的图像。智能电话正面的相机通常具有比智能电话背面的更高质量相机更短的焦距。正面相机的短焦距与相机和面部之间的短臂长度距离的这种组合产生具有投影的图像,这可能看起来会畸变,尤其是与同一智能电话上的背面相机在更长距离处拍摄相同面部的非自拍图像相比较时。在面部的鼻子居中并接近相机时,相对于同一面部的耳朵,鼻子将看起来较大,因为鼻子将更接近相机,还因为桶形畸变将放大图像中心的项目,同时缩小朝向图像边缘的项目。
附图说明
图1A示出了图像拍摄系统拍摄的对象的示例。
图1B示出了示例性图像拍摄系统。
图2示出了对象在图像平面上的示例性投影。
图3A是用于修改视频图像的示例性流程图。
图3B是用于修改视频图像的示例性流程图。
图4是用于修改视频图像的示例性流程图。
具体实施方式
本专利申请描述了用于编辑图像的技术,包括实时编辑所拍摄视频中的三维(3D)对象,诸如面部。这些技术包括从源视频帧提取预先确定的类型的对象(例如面部)的特征,以及估计对象的姿态。可基于所提取的特征来修改预先确定的类型的3D模型。可从期望的相机焦距和对象的姿态导出本征矩阵和外在矩阵。然后可通过基于本征矩阵和外在矩阵以及对象的经修改的3D模型来渲染对象的经修改版本,从而生成经修改的视频帧。在一些方面中,可过滤所提取的特征以实现时间一致性,并可以扩展或以其他方式修改源图像帧中不包括对象的区域,以适应对象的修改。在一些方面中,通过基于经修改的3D模型的特征点位置的投影的二维(2D)图像变形来修改源视频帧。
在一些方面中,可出于美观的原因,并可以基于用户输入,修改在视频中检测到的对象,例如改变形状或姿态。例如,如果眼睛被放大或鼻子的尺寸减小,则为面部的对象可被感知为更美观。当在视频的一帧中识别出具体对象时,可根据预先确定的轮廓自动对所拍摄的视频应用此类美学修改。此类技术可包括在视频帧中检测预先确定的类型的对象;提取所检测到的对象的特征;将所检测到的对象匹配到数据库中的轮廓;在多个帧上跟踪特征;验证特征;以及基于与轮廓相关联的预先确定的对象变更来修改视频帧。
图1A示出了图像拍摄系统拍摄的对象的示例。如图所示,相机系统102可拍摄在相机系统102的视场104之内的对象106的图像。在图1A的实施例中,相机系统102在具有广角镜头的智能电话的正面,并且所拍摄的对象是人的面部,获得自拍式图像。
图1B示出了示例性图像拍摄系统。相机系统102包括具有视场122的镜头系统124和图像传感器104,以及计算机存储器130、控制器132、存储装置126和网络连接128,它们均经由计算机总线134互连。由传感器124拍摄的图像可被存储在存储装置126中,并且可在处于存储器132中时被控制器130分析和修改。经修改的图像可被存储在存储装置126中以供稍后使用,或经由网络128实时传输给观看者。控制器132可控制镜头系统122和传感器124。在一些方面中,可估计或设定132镜头系统122的焦距。本领域的技术人员应了解,虽然存储装置126和存储器130在图1B中被描绘为单独的部件,但在其他方面中,存储装置126和存储器130的功能可在单个部件中。
图2示出了对象在图像平面上的示例性投影。初始位置202中的对象被描绘成沿z轴与图像平面208相距第一距离。向具有焦距210的图像平面208上投射对象导致对象在图像平面208上的投影206。具有焦距210的相机将导致初始位置202中对象的所拍摄图像为投影206。可根据期望的焦距212,通过将对象从初始位置202移动到沿z轴距图像平面208更长距离的补偿位置204,修改此类所拍摄图像。将对象从位置202移动到位置204可导致对象在具有期望的焦距212的图像平面208上投影,该投影与来自初始位置202中的对象的投影206尺寸相同或相似。在另选的方面(未示出)中,从初始位置202移动的对象的投影可导致在图像平面208上生成比来自初始位置的投影206更大或更小的投影。本征矩阵和外在矩阵可用于在图像平面上生成3D模型的投影。可基于相机参数确定本征矩阵,而外在矩阵可基于3D对象的姿态(取向)和位置。
例如,如果利用具有焦距210的广角相机拍摄对象在位置202中的图像,可通过修改投影206以从所拍摄图像去除某种镜头畸变,使得看起来对象是在补偿位置204利用具有期望的焦距212的相机被拍摄的。为了修改所拍摄的图像,可以拟合对象的预先存在的3D模型以匹配所拍摄的投影206。可使用期望的焦距来创建本征矩阵,并且可使用对象的补偿位置204来创建外在矩阵。然后可将3D模型投射到图像平面上以生成投影,以替换初始图像中对象的投影。在一个方面中,不包括对象的初始图像的部分保持相同。在另一个方面中,例如,在改变对象形状显露或模糊在未修改的初始图像中未显露或模糊的图像部分时,也可以修改对象外部的初始图像部分。
图3A是用于修改视频图像的示例性流程图。对于每个所拍摄的帧i(框350),构建帧i中对象的模型(框360)。例如,创建新模型或可修改预先存在的模型。在一些情况下,可定制预先存在的一般模型(诸如一般人脸或其他对象的模型),以匹配所拍摄帧i中检测到的特征。在其他情况下,可使用例如从当前帧i提取的特征,针对当前帧i进一步调整已经例如基于除帧i之外的一个或多个帧中的数据,针对特定对象调整过的预先存在的模型。例如,然后通过减少镜头畸变,或改变对象的镜头畸变,修改对象的模型以改善视觉效果,从而改善感知的对象美观性,例如,可以由用户输入指定(框364)。然后使用经修改的模型,例如,通过生成对象的新渲染,并利用对象的新渲染替换所拍摄帧i中对象的所拍摄渲染,同时使所拍摄帧i中对象的背景基本不受影响,从而渲染经修改的帧i。
图3B是用于修改视频图像的示例性流程图。可针对视频序列的每个所拍摄帧i重复过程300。虚线框是任选的,诸如框302、308、310、312和314。在任选框302中,可估计拍摄视频的相机的焦距。在一些方面中,这可随着相机镜头系统的缩放或聚焦而逐帧变化,并且该估计值可基于直接从镜头系统获得的数据或基于发送到镜头系统的控制信号。在其他方面中,相机的焦距可以是固定的和已知的,因此不是逐帧估计的。可基于估计的焦距来确定源本征矩阵。
框304-312构建或修改所拍摄帧i中对象的模型。在框304中,提取所拍摄帧i中对象的特征。特征可包括视觉上不同的特征的所拍摄帧i中的2D位置。例如,如果对象是面部,则提取的特征可包括面部特征的位置,诸如鼻尖、眼角和嘴角的位置。在框306中,可估计对象的3D形状和姿态。如果存在针对先前帧的姿态或3D形状,则框306可基于前一帧的姿态和/或3D形状来估计帧i的姿态和/或3D形状。姿态可包括对象的3D角位置。可使用从所拍摄帧i估计的姿态在任选框308中导出源外在矩阵。在框306中估计的3D形状可为例如3D线框模型。如果对于先前拍摄的帧,姿态或3D形状估计已存在并且存储在例如存储装置126和/或存储器130中,则可基于预先存在的姿态或形状估计来估计当前姿态或3D形状。
在框310中,可对提取的特征进行验证和调节,以与在(帧i之前或之后的)其他帧中提取的特征实现时间一致性。例如,可以从帧到帧跟踪相同特征,并且可过滤对应特征的位置以平滑所提取特征的运动。另外,在框310中,3D形状(诸如3D线框模型)也可被验证和调节,以实现时间一致性。实现时间一致性的调节可减少针对当前帧的特征和3D模型的估计中的噪声,并且这样的调节还可减轻对特征和3D模型的先前估计中的噪声效应。因此,随着时间推移,可能出现新的提取特征,并且先前提取的特征可能消失。任选框310中的调节可解决新的和消失的特征。框310中的特征和3D模型的验证可包括图4的框422的验证技术,如下所述。例如,如果针对当前帧的特征或3D模型未被验证,可使用各种技术减轻无效特征或模型的视觉效果。例如,可丢弃当前帧(例如,不调节,在将来的处理中不使用,和/或不显示),或者可使用替代手段来估计一组新特征或新3D模型。在当前帧中未检测到任何对象的情况下,可使用像素级的技术而不估计特征或3D模型,以修改当前帧,防止突然的视觉时间变化而不丢弃帧。
例如,在改变对象形状显露或模糊在未修改的当前帧中未显露或模糊的部分时,也可修改对象外部的当前帧的区域。可提供像素级修改技术以解决被显露或模糊的背景的问题。在另一方面,也可随时间推移独立地跟踪对象的背景,从而可从其他帧的背景构建当前帧中对象后方隐藏的背景,在该其他帧中,对象不使同一背景区域模糊,例如因为该其他帧中的对象可在帧中的不同位置或尺寸更小。
在框312中,可基于所提取的特征来修改已知类型的对象的预先存在的模型。例如,被认为是面部的对象的所提取特征可被映射到面部的通用2D或3D线框模型,然后可基于所提取的特征来改变通用线框模型的拐角。例如,通用面部的修改可包括扩大眼睛之间的空间或放大鼻部以匹配被确定为对应于眼角或鼻尖的被提取特征。如果存在所拍摄帧i中具体对象的预先存在的模型(例如,由于基于先前帧修改通用模型的缘故),则在框312中,可修改所拍摄帧i中具体对象的预先存在的模型,以补偿对象的改变(例如,自从前一帧之后发生的改变)。
在一些方面中,该模型可包括除特征位置之外的对象属性。例如,面部模型可包括表达属性,其可包括与嘴角之间的宽度相关的微笑属性的程度。另选地或除此之外,本领域的技术人员将会知道,所估计的3D模型可包括任何其他合适的属性。在拍摄和处理视频图像时,可实时调节这些属性中的一个或多个。
框314-316修改了对象的先前构建的模型,以在框320中呈现更符合期望的图像。在任选框314中,可根据用户输入,实时地或如先前存储的选项那样(如图4的框430中进一步所述)进一步修改3D模型。换句话讲,可通过改变不一定对应于所估计2D特征的元素来修改3D模型。例如,可通过移动对应于眼角的特征位置来放大面部模型中的眼睛。又如,可增大微笑的程度。在一些情况下,此类用户指定的修改可增强或扩大某些面部特征或特性。
在框316中,可导出经修改的本征矩阵和外在矩阵。例如,经修改的本征矩阵可基于期望的焦距,并且可导出对应于所期望焦距的经修改的外在矩阵。例如,如上文结合图2所述,经修改的外在矩阵可基于沿z成像轴适应焦距变化的补偿位置,从而补偿位置将在图像平面中产生对象的投影,该投影在图像平面中的尺寸类似于以初始焦距拍摄的初始位置处对象的投影尺寸。
最后,在框320中,可基于使用经修改的本征矩阵和经修改的外在矩阵将经修改的对象模型投射到图像平面上来渲染经修改的帧i。渲染可通过各种方式完成,诸如通过3D模型的射线追踪或初始对象图像的2D图像变形。在3D射线追踪中,利用经修改的本征矩阵和外在矩阵将经修改的3D模型射线追踪到图像平面上,然后将包含对象的所拍摄图像中的像素替换为对象的新射线追踪的渲染。在2D图像变形中,可根据所提取特征的2D位置将对象的初始图像棋盘格化。可使用经修改的3D模型和经修改的本征矩阵和外在矩阵为所提取的2D特征确定新位置。然后可针对对象的棋盘格化初始2D图像进行图像变形以匹配新的2D特征位置。
图4是用于修改视频图像的示例性流程图。可通过对象识别、对象检测、对象特征提取和跟踪、3D对象建模、优化和图像变形/渲染的组合来实现对诸如面部的刚性3D对象的实时修改,例如包括为了美化或其他特殊视觉效果而进行的修改。如果对象是面部,修改可包括面部识别、面部检测、面部特征提取和跟踪以及3D面部建模。图4示出了用于修改脸部的流程图。
在图4中,相机系统(诸如图1A和图1B的相机系统102)可拍摄一帧(框402)。如果系统尚未初始化(框404),则初始化过程可在框412处开始。在修改对象的图像之前,初始化过程将调用对象检测器(框412)。如果检测到对象(框414),则将检测对象的特征(框416),例如用于在将来的帧之间跟踪特征,并且可在对象数据库中搜索检测到的对象(420)。
如果是数据库中不存在的新对象(框424),则可执行初始化过程以建立新的对象轮廓(框426、框428),该轮廓可包括用于新对象的3D对象模型和修改偏好(430),诸如美化参数或其他期望的效果。在一些方面中,修改偏好可由修改系统的用户指定。例如,可使用特征检测(框416)和面部或对象识别技术,为对象的每个实例(诸如每个面部)分配唯一ID以确定对象特征(框418)。在其他方面中,对象识别技术可在不参考框416中检测到的特征的情况下标识或分配唯一对象ID。同时,可以为对象快速获得3D模型。在一些方面中,可使用在系统102中存储或在外部服务器发现上的现有图像和视频替代或补充输入帧,以获得对象的3D模型。
然后可为用户提供关于她或他希望如何修改其面部或其他对象的一些选项(框430)。修改选项可包括例如形状操纵或视角改变。可通过将修改选项保存为图像变形参数来完成初始化过程(框428)。
稍后,当具有现存轮廓的对象在初始化之后出现在输入帧(框402)中时,可通过对象或面部识别过程(框406),连同保存的对象模型和用户指定的图像变形参数一起,从数据库检索对应的唯一对象ID。如果发现与先前帧中相同的对象,则在包含相同脸部的帧中随时间推移来跟踪面部或其他对象的特征(框410)以获得在时间上一致的面部特征。
在另一方面,如果识别的对象不能在当前输入帧中被跟踪到或与先前帧不相同(框408),则上文所述的初始化过程在框412处开始。可调用对象检测器(框412),并且如果找到对象(框414),则特征检测器(框416)可提供用于后续操作和帧的一组新对象特征,并且对象数据库初始化可如上所述从框420继续。
对对象或面部特征(框418)进行验证(框422)。验证可涉及任意数量的合适度量。验证可包括例如验证在输入图像的2D像素空间中跟踪的特征的变化量(运动量)是平滑的。另选地或除此之外,在输入2D图像中跟踪的特征可被映射至3D模型的特征。例如,可将2D空间中的2D特征位置映射至对象或面部的3D线框模型的3D顶点位置。作为2D平滑化的替代或补充,验证可确保3D模型特征的运动或其他变化是平滑的。又如,除了平滑之外,验证可确定导出的特征是否导致看起来像被跟踪对象的形状。通常,可将机器学习技术用于例如计量检测到的特征可靠的可能性。又如,验证过程可解决出现或消失的特征。
如果对输入帧的验证过程失败,则该帧可被丢弃而不被修改,并且该过程针对下一个传输帧继续(框402)。如果被跟踪特征得到验证,可基于检索的用户指定图像变形参数修改对象(框432),以产生包括经修改对象的修改帧(框434)。在一方面中,输入帧中不包括所识别对象的部分可不被显著改变。对象修改过程可例如包括图3B框314的对象模型修改,可使用上文所述的图3B框320的渲染过程产生经修改的帧(框434)。
在另选的方面中,可使用像素级技术构造经修改的帧而不是丢弃帧。例如,如果框422中的验证失败,或者如果在框414中未检测到对象,则可使用像素级技术来构造经修改的帧,而不是丢弃帧。在先前帧已被修改,并且针对当前帧的验证或对象检测失败的情况下,在先前的修改帧之后呈现(或其他使用)当前的未修改帧可能生成不期望的视觉伪影。类似地,丢弃帧可能产生不期望的视觉伪影。在这些情况下,用于修改当前帧的像素级技术可采用3D模型的部分或对当前或先前帧内容的其他理解,连同像素级技术,以渲染经修改的当前帧而非基于完整3D模型进行渲染,如框320中所示。对不是完整3D模型的帧的理解的示例包括:对对象和背景之间的分离或位置的理解;对对象移动的理解;以及对对象的3D形状的理解。
3D对象模型也可由在执行图4的过程的设备上本地存储或在外部服务器(例如,云)中存储的照片库构建。面部识别可用于自动识别照片库中的特定对象(或用户面部)的照片。筛选过程可选择最适合建模的照片。然后,可应用优化技术从这些面部照片中查找最优3D面部模型。该系统也可扩展到非面部刚性对象。对于每个对象来讲,可构建对象检测器和模型构建器/估计器。一旦检测到对象并估计其3D形状,就可应用相同的技术来操纵对象并渲染不同的效果。在一些方面中,可在相同的输入帧之内处理和修改多个对象。
例如,可以利用非暂态计算机可读存储介质或可以存储指令或指令集的物品实现一些实施例,如果由处理器执行,指令或指令集可以令处理器根据公开的方面执行方法。图1B的控制器132为诸如处理器的示例。可以在非暂态机器可读存储介质上实现示例性方法和计算机程序指令。此外,服务器或数据库服务器可以包括配置成存储机器可执行程序指令的机器可读介质。可在硬件、软件、固件或其组合中实现本发明的各方面的特征并被用于系统、子系统、部件或其子部件中。“机器可读存储介质”可以包括能够存储信息的任何介质。机器可读存储介质的示例包括电子电路、半导体存储器设备、ROM、闪存存储器、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质,或者任何电磁存储设备或光学存储设备。
虽然以上参考一些方面详细地描述了本发明,但是在本发明的范围和实质之内的变化对于本领域的普通技术人员而言将是显而易见的。因此,本发明应被认为仅由所附权利要求书的范围来限制。
Claims (25)
1.一种图像处理方法,包括:
针对视频源的帧:
从源视频帧估计所选择的类型的对象的姿态;
修改所选择的类型的对象的估计3D模型;
基于期望的焦距导出第一矩阵;
基于所述姿态和所述期望的焦距导出第二矩阵;以及
基于所述第一矩阵、所述第二矩阵和经修改的3D模型来渲染经修改的视频帧。
2.根据权利要求1所述的方法,其中所述第一矩阵是经修改的本征矩阵,所述第二矩阵是经修改的外在矩阵,并且所述渲染包括基于所修改的本征矩阵和所修改的外在矩阵来渲染所述3D模型的投影。
3.根据权利要求1所述的方法,还包括:
从所述源视频帧提取所述对象的特征;以及
基于所提取的特征来估计所选择的类型的对象的所述3D模型。
4.根据权利要求1所述的方法,还包括:
从估计的源焦距导出源本征矩阵;以及
从所述姿态导出源外在矩阵。
5.根据权利要求1所述的方法,其中所述对象为面部,且所述3D模型是面部模型,并且还包括针对源视频的所述帧:
根据用户输入调节所述3D模型。
6.根据权利要求1所述的方法,其中从所述视频源的至少一个先前帧提取特征并估计姿态,并且还包括针对所述视频源的所述帧:
过滤所提取的特征以实现时间一致性;以及
过滤所估计的姿态以实现时间一致性。
7.根据权利要求6所述的方法,还包括:
过滤所估计的3D模型以实现时间一致性,以及
过滤所述源视频帧的背景以实现时间一致性。
8.根据权利要求1所述的方法,还包括针对源视频的所述帧:
基于所选择的模型变更来进一步修改所述3D模型,其中所选择的变更包括形状修改或姿态变化。
9.一种图像处理方法,包括:
在视频帧中检测所选择的类型的对象;
提取所检测到的对象的特征;
将所检测到的对象匹配到数据库中的轮廓;
在多个帧上跟踪所述特征;
验证所述特征;以及
基于与所述轮廓相关联的所选择的对象变更来修改所述视频帧。
10.根据权利要求9所述的方法,还包括:
当在所述数据库中没有针对所检测到的对象的匹配时,创建新的轮廓,其中所述新轮廓包括所述对象的3D模型,并且包括由用户输入指定的对象变更。
11.根据权利要求10所述的方法,还包括:
在来自照片或视频库的图像中识别所述对象;以及
部分地基于来自所述照片或视频库的所述图像来生成所述对象的所述3D模型。
12.根据权利要求9所述的方法,其中所述轮廓包括所述对象的3D模型,并且还包括:
修改所述3D模型以产生所选择的对象变更。
13.根据权利要求9所述的方法,其中所选择的类型的对象是面部,并且匹配所检测到的对象包括面部识别。
14.根据权利要求9所述的方法,其中所述验证所述特征包括过滤被跟踪特征以实现时间一致性。
15.根据权利要求9所述的方法,其中所选择的对象变更包括形状修改或姿态改变。
16.根据权利要求9所述的方法,还包括:
将所检测到的对象识别为在先前视频帧中检测到的相同对象;
并且其中所述跟踪对被识别为在所述先前视频帧中检测到的所述相同对象的所检测到的对象的特征进行跟踪。
17.一种图像处理系统,包括:
存储器;以及
控制器,所述控制器针对视频源的帧:
从源视频帧估计所选择的类型的对象的姿态;
修改所选择的类型的对象的估计3D模型;
基于期望的焦距导出第一矩阵;
基于所述姿态和所述期望的焦距导出第二矩阵;以及
基于所述第一矩阵、所述第二矩阵和经修改的3D模型来渲染经修改的视频帧。
18.根据权利要求17所述的系统,其中所述第一矩阵是经修改的本征矩阵,所述第二矩阵是经修改的外在矩阵,并且所述渲染包括基于所修改的本征矩阵和所修改的外在矩阵来渲染所述3D模型的投影。
19.根据权利要求17所述的系统,其中针对源视频的所述帧,所述控制器进一步:
从所述源视频帧提取所述对象的特征;以及
基于所提取的特征来估计所选择的类型的对象的所述3D模型。
20.根据权利要求17所述的系统,其中所述控制器进一步:
从估计的源焦距导出源本征矩阵;以及
从所述姿态导出源外在矩阵。
21.根据权利要求17所述的系统,其中所述对象为面部,且所述3D模型是面部模型,并且其中针对源视频的所述帧,所述控制器进一步:
根据用户输入调节所述3D模型。
22.根据权利要求17所述的系统,其中从所述视频源的至少一个先前帧提取特征并估计姿态,并且其中针对视频源的所述帧,所述控制器进一步:
过滤所提取的特征以实现时间一致性;以及
过滤所估计的姿态以实现时间一致性。
23.根据权利要求17所述的系统,其中针对源视频的所述帧,所述控制器进一步:
过滤所估计的3D模型以实现时间一致性,以及
过滤所述源视频帧的背景以实现时间一致性。
24.根据权利要求17所述的系统,其中针对源视频的所述帧,所述控制器进一步:
基于所选择的模型变更来进一步修改所述3D模型,其中所选择的变更包括形状修改或姿态变化。
25.一种包括指令的计算机可读存储器,所述指令在由处理器执行时,使得针对视频源的帧:
从源视频帧估计所选择的类型的对象的姿态;
修改所选择的类型的对象的估计3D模型;
基于期望的焦距导出第一矩阵;
基于所述姿态和所述期望的焦距导出第二矩阵;以及
基于所述第一矩阵、所述第二矩阵和经修改的3D模型来渲染经修改的视频帧。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US15/917,441 | 2018-03-09 | ||
US15/917,441 US11282543B2 (en) | 2018-03-09 | 2018-03-09 | Real-time face and object manipulation |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110245549A true CN110245549A (zh) | 2019-09-17 |
CN110245549B CN110245549B (zh) | 2023-06-23 |
Family
ID=67843343
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910173633.5A Active CN110245549B (zh) | 2018-03-09 | 2019-03-08 | 实时面部和对象操纵 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11282543B2 (zh) |
CN (1) | CN110245549B (zh) |
Families Citing this family (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109964245A (zh) * | 2016-12-06 | 2019-07-02 | 深圳市大疆创新科技有限公司 | 用于校正广角图像的系统和方法 |
WO2020107266A1 (zh) | 2018-11-28 | 2020-06-04 | 深圳市大疆创新科技有限公司 | 手持云台及其拍摄控制方法 |
US11790950B2 (en) * | 2020-01-14 | 2023-10-17 | Robert Salem Abraham | Film-making using style transfer |
CN114697525B (zh) * | 2020-12-29 | 2023-06-06 | 华为技术有限公司 | 一种确定跟踪目标的方法及电子设备 |
Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5227985A (en) * | 1991-08-19 | 1993-07-13 | University Of Maryland | Computer vision system for position monitoring in three dimensions using non-coplanar light sources attached to a monitored object |
US6246412B1 (en) * | 1998-06-18 | 2001-06-12 | Microsoft Corporation | Interactive construction and refinement of 3D models from multiple panoramic images |
US20090028440A1 (en) * | 2007-07-27 | 2009-01-29 | Sportvision, Inc. | Detecting an object in an image using multiple templates |
CN101763636A (zh) * | 2009-09-23 | 2010-06-30 | 中国科学院自动化研究所 | 视频序列中的三维人脸位置和姿态跟踪的方法 |
US20110148875A1 (en) * | 2009-12-18 | 2011-06-23 | Electronics And Telecommunications Research Institute | Method and apparatus for capturing motion of dynamic object |
US20120287119A1 (en) * | 2011-05-13 | 2012-11-15 | Chimei Innolux Corporation | Timing controller with frequency modulation, converter with frequency modulation for scanning-based backlight unit module, and control system for 3d display |
CN103400409A (zh) * | 2013-08-27 | 2013-11-20 | 华中师范大学 | 一种基于摄像头姿态快速估计的覆盖范围3d可视化方法 |
US20140099031A1 (en) * | 2012-10-04 | 2014-04-10 | Adobe Systems Incorporated | Adjusting a Contour by a Shape Model |
US20150093042A1 (en) * | 2012-06-08 | 2015-04-02 | Huawei Technologies Co., Ltd. | Parameter calibration method and apparatus |
US20150131859A1 (en) * | 2007-02-07 | 2015-05-14 | Samsung Electronics Co., Ltd. | Method and apparatus for tracking object, and method and apparatus for calculating object pose information |
US20150131559A1 (en) * | 2012-12-06 | 2015-05-14 | Markport Limited | Messaging network with a control data channel |
US20150326801A1 (en) * | 2014-05-06 | 2015-11-12 | Kalpana Seshadrinathan | Rectification techniques for heterogeneous camera arrays |
CN105190700A (zh) * | 2013-06-04 | 2015-12-23 | 英特尔公司 | 基于化身的视频编码 |
CN105167798A (zh) * | 2015-10-21 | 2015-12-23 | 穆亚平 | 一种冠状动脉cta影像中提取血管方法 |
US20160217318A1 (en) * | 2013-08-29 | 2016-07-28 | Nec Corporation | Image processing device, image processing method, and program |
US20170069056A1 (en) * | 2015-09-04 | 2017-03-09 | Adobe Systems Incorporated | Focal Length Warping |
CN107484428A (zh) * | 2015-03-25 | 2017-12-15 | “实验室24”股份有限公司 | 用于显示对象的方法 |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4216824B2 (ja) * | 2005-03-07 | 2009-01-28 | 株式会社東芝 | 3次元モデル生成装置、3次元モデル生成方法および3次元モデル生成プログラム |
KR100803611B1 (ko) * | 2006-11-28 | 2008-02-15 | 삼성전자주식회사 | 영상의 부호화, 복호화 방법 및 장치 |
MY171817A (en) * | 2008-09-03 | 2019-10-31 | Mimos Berhad | Tracking and projection system and method thereof |
US20140043329A1 (en) * | 2011-03-21 | 2014-02-13 | Peng Wang | Method of augmented makeover with 3d face modeling and landmark alignment |
US8811686B2 (en) * | 2011-08-19 | 2014-08-19 | Adobe Systems Incorporated | Methods and apparatus for automated portrait retouching using facial feature localization |
US9158963B2 (en) * | 2012-10-04 | 2015-10-13 | Adobe Systems Incorporated | Fitting contours to features |
US10460493B2 (en) * | 2015-07-21 | 2019-10-29 | Sony Corporation | Information processing apparatus, information processing method, and program |
-
2018
- 2018-03-09 US US15/917,441 patent/US11282543B2/en active Active
-
2019
- 2019-03-08 CN CN201910173633.5A patent/CN110245549B/zh active Active
Patent Citations (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5227985A (en) * | 1991-08-19 | 1993-07-13 | University Of Maryland | Computer vision system for position monitoring in three dimensions using non-coplanar light sources attached to a monitored object |
US6246412B1 (en) * | 1998-06-18 | 2001-06-12 | Microsoft Corporation | Interactive construction and refinement of 3D models from multiple panoramic images |
US20150131859A1 (en) * | 2007-02-07 | 2015-05-14 | Samsung Electronics Co., Ltd. | Method and apparatus for tracking object, and method and apparatus for calculating object pose information |
US20090028440A1 (en) * | 2007-07-27 | 2009-01-29 | Sportvision, Inc. | Detecting an object in an image using multiple templates |
CN101763636A (zh) * | 2009-09-23 | 2010-06-30 | 中国科学院自动化研究所 | 视频序列中的三维人脸位置和姿态跟踪的方法 |
US20110148875A1 (en) * | 2009-12-18 | 2011-06-23 | Electronics And Telecommunications Research Institute | Method and apparatus for capturing motion of dynamic object |
US20120287119A1 (en) * | 2011-05-13 | 2012-11-15 | Chimei Innolux Corporation | Timing controller with frequency modulation, converter with frequency modulation for scanning-based backlight unit module, and control system for 3d display |
US20150093042A1 (en) * | 2012-06-08 | 2015-04-02 | Huawei Technologies Co., Ltd. | Parameter calibration method and apparatus |
US20140099031A1 (en) * | 2012-10-04 | 2014-04-10 | Adobe Systems Incorporated | Adjusting a Contour by a Shape Model |
US20150131559A1 (en) * | 2012-12-06 | 2015-05-14 | Markport Limited | Messaging network with a control data channel |
CN105190700A (zh) * | 2013-06-04 | 2015-12-23 | 英特尔公司 | 基于化身的视频编码 |
CN103400409A (zh) * | 2013-08-27 | 2013-11-20 | 华中师范大学 | 一种基于摄像头姿态快速估计的覆盖范围3d可视化方法 |
US20160217318A1 (en) * | 2013-08-29 | 2016-07-28 | Nec Corporation | Image processing device, image processing method, and program |
US20150326801A1 (en) * | 2014-05-06 | 2015-11-12 | Kalpana Seshadrinathan | Rectification techniques for heterogeneous camera arrays |
CN107484428A (zh) * | 2015-03-25 | 2017-12-15 | “实验室24”股份有限公司 | 用于显示对象的方法 |
US20170069056A1 (en) * | 2015-09-04 | 2017-03-09 | Adobe Systems Incorporated | Focal Length Warping |
CN105167798A (zh) * | 2015-10-21 | 2015-12-23 | 穆亚平 | 一种冠状动脉cta影像中提取血管方法 |
Also Published As
Publication number | Publication date |
---|---|
US11282543B2 (en) | 2022-03-22 |
CN110245549B (zh) | 2023-06-23 |
US20190279681A1 (en) | 2019-09-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10540806B2 (en) | Systems and methods for depth-assisted perspective distortion correction | |
US10609282B2 (en) | Wide-area image acquiring method and apparatus | |
CN109643373B (zh) | 估计3d空间中的姿态 | |
CN110245549A (zh) | 实时面部和对象操纵 | |
Goldstein et al. | Video stabilization using epipolar geometry | |
US11562471B2 (en) | Arrangement for generating head related transfer function filters | |
JP2016100899A (ja) | 映像補正方法及び装置 | |
CN107798704B (zh) | 一种用于增强现实的实时图像叠加方法及装置 | |
US9807372B2 (en) | Focused image generation single depth information from multiple images from multiple sensors | |
US10586378B2 (en) | Stabilizing image sequences based on camera rotation and focal length parameters | |
CN109981972B (zh) | 一种机器人的目标跟踪方法、机器人及存储介质 | |
US20140118353A1 (en) | Image processing apparatus and method | |
JP2009093644A (ja) | コンピュータによって実施されるシーン内を移動している物体の3d位置を追跡する方法 | |
CN104424640A (zh) | 对图像进行虚化处理的方法和装置 | |
US10297285B2 (en) | Video data processing method and electronic apparatus | |
WO2023071790A1 (zh) | 目标对象的姿态检测方法、装置、设备及存储介质 | |
WO2021008205A1 (zh) | 图像处理 | |
US11812154B2 (en) | Method, apparatus and system for video processing | |
CN114286064A (zh) | 一种实时对焦方法、装置、系统和计算机可读存储介质 | |
CN108282650B (zh) | 一种裸眼立体显示方法、装置、系统及存储介质 | |
KR101148508B1 (ko) | 모바일 기기 디스플레이의 표시 장치 및 그 방법, 이를 이용하는 모바일 기기 | |
CN103500471A (zh) | 实现高分辨率增强现实系统的方法 | |
US20080226159A1 (en) | Method and System For Calculating Depth Information of Object in Image | |
KR20190129433A (ko) | 파노라마 영상 생성 방법 및 그 장치 | |
JP2022526468A (ja) | 二次元顔画像の2つ以上の入力に基づいて三次元顔モデルを適応的に構築するためのシステムおよび方法 |
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 |