问小白 wenxiaobai
资讯
历史
科技
环境与自然
成长
游戏
财经
文学与艺术
美食
健康
家居
文化
情感
汽车
三农
军事
旅行
运动
教育
生活
星座命理

开源项目Barbershop:用AI给人像照片换发型和发色

创作时间:
2025-01-22 20:15:25
作者:
@小白创作中心

开源项目Barbershop:用AI给人像照片换发型和发色

Barbershop是一个开源项目,能够实现给人像照片更换发型和发色的功能。该项目基于GAN(生成对抗网络)技术,能够实现高质量的图像合成,效果非常逼真。本文将介绍该项目的技术原理和使用方法。

技术原理

Barbershop项目的核心技术是基于GAN的图像混合。由于光照、几何和部分遮挡的复杂关系会导致图像不同部分之间的耦合,因此无缝混合多个图像的特征极具挑战性。尽管最近关于 GAN 的研究能够合成真实的头发或面部,但仍然很难将它们组合成单个、连贯且合理的图像,而不是一组不连贯的图像块。

为了解决这个问题,Barbershop项目提出了一种基于GAN反转的图像混合解决方案。具体来说,项目提出了一种新的图像混合潜在空间,它能够更好地保留细节和编码空间信息,并提出一种新的GAN嵌入算法,它能够稍微修改图像以符合常见的分割掩码。这种新颖的表示方法能够从多个参考图像中传输视觉属性,包括痣和皱纹等特定细节。因为我们在潜在空间中进行图像混合,所以我们能够合成连贯的图像。这种方法避免了其他方法中存在的混合伪影,并找到全局一致的图像。

使用方法

Barbershop项目提供了两种部署方式:本地部署和Google Colab部署。这里我们主要介绍Google Colab部署方式。

  1. 设置环境:选择GPU和Python版本
  2. 下载源码
    !git clone https://github.com/ZPdesu/Barbershop.git
    
  3. 进入根目录
    %cd Barbershop
    
  4. 安装依赖项:将environment.yaml文件中需要pip的包复制出来,粘贴进新建的一个requirements.txt中,然后运行
    !pip install -r requirements.txt
    
  5. 人脸预处理
    !python align_face.py
    
  6. 进行推理
    !python main.py --im_path1 90.png --im_path2 15.png --im_path3 117.png --sign realistic --smooth 5
    

实验效果

下面是几个实验效果示例:



处理后生成的mask图:

处理后生成的结果图:



项目地址

© 2023 北京元石科技有限公司 ◎ 京公网安备 11010802042949号