真人女神换脸二次元女神

编程入门 行业动态 更新时间:2024-10-25 16:18:46

真人<a href=https://www.elefans.com/category/jswz/34/1762057.html style=女神换脸二次元女神"/>

真人女神换脸二次元女神

最近做一个测试,用到了人脸landmark检测。用到了谷歌开源的mediapipe, 使用系统是windows10,又不能虚拟机。在windows下研究编译了很久,才搞定。其中有个人脸稠密点检测facelandmark, 测试速度很快而且精度也说的过去。目前的开源人脸swap方案都是基于深度学习的,需要大量训练时间,比如deepfake。于是我想采用以前的三角仿射方案做个换脸。虽然我这周映射方案一眼就能看出融合,但作为娱乐问题不大。毕竟不需要训练。

以前用的是dlib的68个点的方案,只是做眉眼以下部分。这次用谷歌这个方案,脸部大部分区域都覆盖到了。对换脸来说体验度也会大大提升。简单地说就是设置原始图和要替换的脸。这两个人脸型越接近,最终效果越好。

采用谷歌的方法首先生成特征点,看一看结果。然后把特征点保存下来。进行三角剖分。三角仿射首先要确定三角形结构。标准做法就是三角剖分,依据维诺图做成delauny三角。这位博主讲的很好,大家参考就行了,地址

生成三角剖分,opencv有实现的方案。这位博主写的很完善,请大家参考。地址
我是一个很懒的人觉得opencv代码太多了,还要写保存代码,太麻烦了,就用matlab做了。

points = load("pts");
x = points(:,1);
y = points(:,2);
tr=delaunay(x ,y);
tr=int32(tetr);
t = [tr(:,[1,2]); tr(:,[2,3]); tr(:,[1,3])];
[t,j,j] = unique(sort(t,2),'rows');

可以直接生成delauny三角,而且可以排序剔除掉重复的。反正只用生成一次。生成的是三角的索引,结果保存下来就可以了。
然后进行仿射变换,把要进行仿射的三角变化过去就行了。请参考opencv写的,地址
都仿射变化之后可以生成结果。速度基本也能令人满意。

大家还可以看

真人女神实时换脸二次元女神


以后我把详细的实现方法和大家分享。

另外,我看了一下face++的收费人脸稠密点检测,准确度很高。我建议把特征点检测换成face++的,对各种侧脸卡通形象都能准确检测,效果应该会更好。

更多推荐

真人女神换脸二次元女神

本文发布于:2023-06-24 14:30:10,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/865722.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:女神   真人   换脸

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!