开源
animeGAN:动漫面部绘制的实现
来源:元经纪     阅读:652
网站管理员
发布于 2023-06-16 02:32
查看主页

概述

一个简单的生成对抗网络的 PyTorch 实现,专注于动漫面部绘制。这些图像是从 DCGAN 模型生成的,该模型在 143,000 个动漫人物脸上训练了 100 个时期。操纵潜在代码可以实现从第一行图像到最后一行的转换。图像不干净,可以观察到一些异常值,这会降低生成图像的质量。使用爬虫工具 gallery-dl 从 danbooru.donmai.us 收集了 126 个标签的动漫风格图像。然后图像由动漫人脸检测器 python-anime face 处理。生成的数据集包含约 143,000 个动漫面孔。请注意,某些标签在裁剪后可能不再有意义,即“制服”标签下的裁剪面部图像可能不包含制服的可见部分。

随机生成的图像

这些图像是从 DCGAN 模型生成的,该模型在 143,000 个动漫人物脸上训练了 100 个时期。

图像插值

[hidecontent type="logged" desc="隐藏内容:登录后可查看"]

操纵潜在代码,可以实现从第一行图像到最后一行的转换。

原始图像

图像不干净,可以观察到一些异常值,这会降低生成图像的质量。

用法

要运行实验,

$ python main.py --dataRoot path_to_dataset/

DCGAN 的预训练模型也在这个 repo 中,在 jupyter notebook 中播放它。

动漫脸数据集

使用爬虫工具gallery-dl从danbooru.donmai.us收集了 126 个标签的动漫风格图像。然后这些图像由动漫人脸检测器python-animeface处理。生成的数据集包含约 143,000 个动漫面孔。请注意,某些标签在裁剪后可能不再有意义,即“制服”标签下的裁剪面部图像可能不包含制服的可见部分。

如何从头开始构建数据集?

先决条件:gallery-dl、python-animeface

  1. 下载动漫风格的图像

    # download 1000 images under the tag "misaka_mikoto"
    gallery-dl --images 1000 "https://danbooru.donmai.us/posts?tags=misaka_mikoto"
    
    # in a multi-processing manner
    cat tags.txt | \
    xargs -n 1 -P 12 -I 'tag' \ 
    bash -c ' gallery-dl --images 1000 "https://danbooru.donmai.us/posts?tags=$tag" '
  2. 从下载的图像中提取人脸

    import animeface
    from PIL import Image
    
    im = Image.open('images/anime_image_misaka_mikoto.png')
    faces = animeface.detect(im)
    x,y,w,h = faces[0].face.pos
    im = im.crop((x,y,x+w,y+h))
    im.show() # display

我清理了原始数据集,新版本的数据集有 126 个标签的 115085 张图像。您可以从以下位置访问图像:

请勿商用。

我学到的东西

  1. GAN 真的很难训练。
  2. DCGAN 通常效果很好,简单地添加全连接层会导致问题。
  3. 在我的案例中,G 的更多层会产生更好的图像,因为 G 应该比 D 更强大。
  4. 为 D 的输入和标签添加噪声有助于稳定训练。
  5. 使用不同的输入并生成分辨率(64x64 vs 96x96),在训练过程中似乎没有明显差异,生成的图像也非常相似。
  6. Binray Noise 作为 G 的输入非常有效,但图像不如 Gussian Noise 的图像好,想法归功于@cwhy ['Binary Noise' 这里我的意思是伯努利分布在 p = 0.5]

[/hidecontent]

 
免责声明:本文为用户发表,不代表网站立场,仅供参考,不构成引导等用途。 开源
一文详细介绍什么是SMO公司?
【2023年9月17日-18日南京】2023南京人工智能产业发展大会暨可信AI大会
张家界元宇宙馆要建设了!
苹果开放iPhone 16系列员工购买通道 郭明錤:销量低于预期证据
对话三星电子张代君:大模型降价、免费潮对手机厂商和老百姓来说是好事

首页

分类

定制方案

消息

我的