文章目录
- 1. 模型概述
- 2. 迁移过程
- 2.1 将`ckpt`的权重文件转换为`pb`的权重文件。
- 2.2 将`pb`的权重文件迁移为 BM1684 `bmodel`模型
- 2.3 迁移后pipeline搭建
- 2.4 使用streamlit部署
- 3. 效果展示
AnimateGAN 是一个基于 GAN 的动漫生成模型,可以将真实的场景照片转换成动漫形式。本文将介绍如何将 AnimateGAN 迁移到 Sophon 并使用 Streamlit
部署。
代码地址: https://github.com/sophgo/sophpi-shaolin
1. 模型概述
AnimateGAN
是基于CartoonGAN
的改进,并提出了一个更加轻量级的生成器架构。在论文中还提出了三个全新的损失函数用于提升风格化的动漫视觉效果,这三个损失函数分别是灰度风格损失,灰度对抗损失和颜色重建损失。
AnimateGAN 论文:AnimateGAN: A Generative Adversarial Network for Anime Character Animation
代码地址:https://github.com/TachibanaYoshino/AnimeGAN
体验地址: https://animegan.js.org/
2. 迁移过程
2.1 将ckpt
的权重文件转换为pb
的权重文件。
使用common_freeze_script.py
脚本将https://github.com/TachibanaYoshino/AnimeGAN 库存中ckpt
的权重文件转换为pb
的权重文件。
或者使用我们处理好的权重文件,执行 bash prepare.sh
下载并转换。
2.2 将pb
的权重文件迁移为 BM1684 bmodel
模型
使用 sophon sdk
的bmnett
命令将pb
的权重文件迁移为bmodel
模型。
具体为: python3 convert_pt_2_bmodel.py
如果执行bash prepare.sh
则不需要再转模型
2.3 迁移后pipeline搭建
使用sophon sail
加载和推理模型。
通过python3 inference.py --images_path 图片文件夹 --output_path 输出文件夹
命令进行推理,具体参数请参考脚本。
2.4 使用streamlit部署
安装依赖 pip3 install -r requirements.txt
执行 streamlit run demo_web.py
该命令会提示一个网址,打开网址即可进行体验。
3. 效果展示
选择图片后,即可进行推理,推理结果如下: