![](https://img.haomeiwen.com/i2607041/4e1c07a6cbced5c0.gif)
先给出参考文献
[1] Stephen Karungaru, Minoru Fukumi, and Norio Akamatsu. Morphing Human Faces: Automatic Control Points Selection And Color Transition. World Academy of Science, Engineering and Technology. 2005.
[2] Liao, J., Lima, R. S., Nehab, D., Hoppe, H., Sander, P. V., and Yu, J. Automating image morphing using structural similarity on a halfway domain. ACM Trans. Graph.
本文不讲述详细的实施细节,只是提供paper和开源算法的死路,使用到的主要的技术为Delaunay三角剖分和仿射变换。
网上讲述算法原理的有很多,大家想要探寻技术细节请自寻搜索。
Delaunay三角剖分:
技术分享:Delaunay三角剖分算法介绍 - 知乎 (zhihu.com)
仿射变换:
图像的仿射变换 - 知乎 (zhihu.com)
通过三角剖分和仿射变换可以实现以下的动图效果,以人变成狮子为例,人和狮子都可以提取脸部的关键点,关键点的相对位置是一一对齐的(首先关键点的总数是相同的,然后人的眼睛位置的关键点对应的也是狮子眼睛位置的关键点),通过Delaunay三角剖分后,对每一个三角都进行人到狮子的仿射变换(中间有多个中间的结果,并不是一下就映射过来的),就形成了人到狮子的变换,感兴趣的话大家自行搜索face morphing:
A study on face morphing algorithms (stanford.edu)
![](https://img.haomeiwen.com/i2607041/42d55d9d8fd8c6eb.gif)
既然可以实现这样的映射了,那么实现文章开头单张图像的动态化就很简单了,聪明的你可是试着思考下如何实现单张图像的动态化,相信你可以的,考虑关键点如何设计,考虑如何形成连续的gif。
网友评论