编程开源技术交流,分享技术与知识

网站首页 > 开源技术 正文

「优秀开源AI项目推荐」simple_faceswap:基于dlib的换脸程序

wxchong 2024-07-03 02:39:51 开源技术 12 ℃ 0 评论

使用opencv-python和dlib实现的简单换脸程序。

  • 周杰伦的帅气照:
  • 利用杰伦的脸作为替换的脸的换脸效果:

开源项目地址:https://github.com/Jacen789/simple_faceswap

准备:

  • pip安装opencv-python、dlib
  • 下载dlib人脸形状检测器模型数据:shape_predictor_68_face_landmarks.dat.bz2,并解压在models文件夹下

实现步骤:

  1. 使用dlib的shape_predictor_68_face_landmarks.dat模型获取人脸图片im1和摄像头图片im2的68个人脸特征点。
  2. 根据上一步获得的特征点得到两张图片的人脸掩模im1_mask和im2_mask。
  3. 利用68个特征点中的3个特征点,对人脸图片im1进行仿射变换使其脸部对准摄像头图片中的脸部,得到图片affine_im1。
  4. 对人脸图片的掩模im1_mask也进行相同的仿射变换得到affine_im1_mask。
  5. 对掩模im2_mask和掩模affine_im1_mask的掩盖部分取并集得到union_mask。
  6. 利用opencv里的seamlessClone函数对仿射变换后的affine_im1和摄像头图片im2进行泊松融合,掩模为union_mask,得到融合后的图像seamless_im。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表