您的位置:首页 > 大数据 > 人工智能

Moving Portraits

2014-09-12 15:32 204 查看
                                                                                                       Moving Portraits
                                                 By Ira Kemelmacher-Shlizerman, Eli Shechtman, Rahul Garg, and Steven M. Seitz

《Moving Portraits》论文是利用同一个人的大量的照片来生成脸部动画。将人的照片集看成一个图,每幅照片看作一个节点,两幅照片的相似度看作边权重。构造动画序列的过程就是运用dijkstra算法在图中找出最短路径,得到最优化的图片序列之后,运用交叉溶解的方法来渲染照片序列以得到连续的动画。

1、构造图

每幅照片看作一个结点,边权重来刻画照片的相似度。照片相似度用面部外貌(表情、发型等等)、姿势、时间等等来刻画。

为了计算两幅图片的头部姿态距离,每幅图片要先用脸部检测器进行人脸检测,然后用基准点检测器找出一些基准点。下一步检测姿态,将检测到的人脸区域对齐到一个3D人脸模板模型。从旋转矩阵中估计出头部姿态的几个分量,计算出头部姿态距离。

为了计算面部表情的相似度,通过使用不同的描述子可以获得更好的不变性。文章在一致的脸部区域计算LBP描述子,分别得到眼睛、嘴巴和头发区域的LBP描述子。

是对应于嘴巴、眼睛、头发区域的LBP直方图距离。当照片有日期戳时,可以在公式中加入额外项来度量时间距离。

2、路径

构造好图之后,可以遍历整个图找到一个光滑连续的过渡。通过求解最短路径来获得最优解,dijkstra算法可以很容易的解决。通过在图中游走,我们可以获得任意长度的光滑路径,同时使用一些方法去避免重复。

3、优化以满足实时性的要求

3.1简化相似度描述子,考虑一些相关性(如嘴巴和眼睛等区域在构成表情时的高度相关性)。使用2D仿射图像对齐比用3D变形代价小,效果也不错。使用HOG特征替代使用LBP特征。

3.2使用贪心游走算法,而不采用最优路径。前者运算速度快。

3.3使用多线程。一个进程得到图和选择下一张照片,另外进程来渲染照片间的过渡效果。

3.4用户能够通过设定照片数量控制电影长度。在照片数量特别多或者延时要求高的情况下,还需要其他的优化方法。

4、过渡效果

变形技术能够产生极好的过渡,但需要准确的像素对齐。使用交叉溶解的方法更简单,在短的时间间隔内一幅图像渐入,一幅图像渐出。交叉溶解产生了真实的运动效果,图像边界能够光滑运动,并且能够合成真实的光照变化。交叉溶解流行于变形和图像渲染技术。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  计算机图形学