动手学深度学习——8. 人物肖像画
动手学深度学习——8. 人物肖像画
记录一下学习深度学习的一些。本篇记录一下使用 U^2-Net (paper) 生成人物肖像画,还有 APDrawingGAN。
环境:
- Windows 10
- 8700K
- 2070
- Pytorch 1.7.1
U^2-Net 是一个用于显著目标检测的网络 (Salient Object Detection),至于为什么叫 U^2-Net,看网络结构
checkpoints:
- GoogleDrive
- Baidu pan:chgd
肖像生成
使用 U^2-Net 生成肖像很简单,官方提供详细的操作流程,不过有一点小瑕疵的就是,官方在测试的时候别没有禁用梯度,也就是没有在 with torch.no_grad():
域下进行 forward
,占用不少显存,导致一些分辨率稍大的图片,例如 1080P 之类在本机会报错 OOM。同时,demo 的 normalize 与 test 不同,会导致结果稍微差一点,表现明显的就是头发没那么密实,所以我修改了一番。
demo:
input = input/np.max(input)tmpImg[:,:,0] = (input[:,:,2]-0.406)/0.225
tmpImg[:,:,1] = (input[:,:,1]-0.456)/0.224
tmpImg[:,:,2] = (input[:,:,0]-0.485)/0.229
fixed:
img = img / np.max(img)
tmpImg[:, :, 2] = (img[:, :, 0] - 0.406) / 0.225
tmpImg[:, :, 1] = (img[:, :, 1] - 0.456) / 0.224
tmpImg[:, :, 0] = (img[:, :, 2] - 0.485) / 0.229
生成:
python pics_2_portrait.py --ckpt path_to_model --output dir_to_output input_dir
对比结果:
demo | test | fixed |
---|---|---|
![]() |
![]() |
![]() |
效果展示:
src | dst |
---|---|
![]() |
![]() |
![]() |
![]() |
![]() |
![]() |
可以看到第三张的背景有点瑕疵,可见对于复杂背景的还是难以处理,当然也可能和训练模型的数据有关,作者使用的是 APDrawing dataset,实体较少,就140名不同的艺术家的面部照片,分辨率为 512×512512 \times 512512×512,其余的都是增强得来,即旋转缩放之类。
这个网络不仅可以生成人物的肖像,还可以生成其他生物的,我试了一些狗子的,效果尚可。待有空再试一下用 U^2-Net 训练肖像生成,人像分割和显著物体检测,还有 APDrawingGAN。
视频生成
素描视频生成其实就是将视频的每帧读取出来,按照单张相片进行处理,处理完毕后再写入文件即可。这里的视频读取及写入分别使用了 OpenCV 的 VideoCapture 和 VideoWriter。
python video_2_portrait.py --ckpt path_to_model --output path_to_output_video path_to_video
由于视频素材不好找,而且处理时间过长,没有效果展示了。尝试了一下 16 分钟的 1080P 的 60fps 的视频,处理时间长达8小时。
Code
- Scripts
动手学深度学习——8. 人物肖像画相关推荐
- 「动手学深度学习」在B站火到没谁,加这个免费实操平台,妥妥天花板!
论 AI 圈活菩萨,非李沐老师莫属. 前有编写「动手学深度学习」,成就圈内入门经典,后又在B站免费讲斯坦福 AI 课,一则艰深硬核讲论文的视频播放量36万,不少课题组从导师到见习本科生都在追番. 如此 ...
- 《动手学深度学习》中文第二版预览版发布
点击上方"视学算法",选择加"星标"或"置顶" 重磅干货,第一时间送达 作者丨李沐@知乎 来源丨https://zhuanlan.zhihu ...
- 收藏 |《动手学深度学习》中文版PDF
对于初学者来说,直接阅读英文资料,效率慢,估计读着读着都没有信心读下去了.对于初学者,中文资料是再好不过了.今天小编就来安利一本中文资料--中文版本的<动手学深度学习>. 资料领取: 扫码 ...
- 深度学习经典教程:深度学习+动手学深度学习
作者:[美] Ian,Goodfellow(伊恩·古德费洛),[加] Yoshua,Bengio(约书亚·本吉奥)等 出版社:人民邮电出版社 品牌:异步图书 出版时间:2019-06-01 深度学习经 ...
- 资源 | 李沐等人开源中文书《动手学深度学习》预览版上线
来源:机器之心 本文约2000字,建议阅读10分钟. 本文为大家介绍了一本交互式深度学习书籍. 近日,由 Aston Zhang.李沐等人所著图书<动手学深度学习>放出了在线预览版,以供读 ...
- 最新版 | 2020李沐《动手学深度学习》
点击上方"AI遇见机器学习",选择"星标"公众号 重磅干货,第一时间送达 强烈推荐李沐等人的<动手学深度学习>最新版!完整中文版 PDF 终于 在 ...
- 动手学深度学习需要这些数学基础知识
https://www.toutiao.com/a6716993354439066124/ 本附录总结了本书中涉及的有关线性代数.微分和概率的基础知识.为避免赘述本书未涉及的数学背景知识,本节中的少数 ...
- 《动手学深度学习》PyTorch版GitHub资源
之前,偶然间看到过这个PyTorch版<动手学深度学习>,当时留意了一下,后来,着手学习pytorch,发现找不到这个资源了.今天又看到了,赶紧保存下来. <动手学深度学习>P ...
- 用PyTorch实现的李沐《动手学深度学习》,登上GitHub热榜,获得700+星
晓查 发自 凹非寺 量子位 报道 | 公众号 QbitAI 李沐老师的<动手学深度学习>是一本入门深度学习的优秀教材,也是各大在线书店的计算机类畅销书. 作为MXNet的作者之一,李沐老 ...
最新文章
- HALCON基于形变的模板匹配实现
- 结合自己造的轮子实践按需加载
- 2.1.1Remove Duplicates from Sorted Arr
- 各浏览器CSS兼容问题
- [react] 简要描述下你知道的react工作原理是什么?
- redis stream学习总结
- ORACLE多条件的统计查询(case when)
- 【人脸识别】FaceNet详解
- Pandas to_string
- Visual Assist X Options 常用宏
- 原生node写一个静态资源服务器
- JSK-129 判断日期是否符合格式【入门】
- 几个跨平台移动App开发方案框架比较
- 郑义宣就任韩国现代汽车集团会长;爱立信携手中国电信运用爱立信频谱共享技术 | 美通企业日报...
- 单片机4*4矩阵键盘的原理
- apue第三版P106:ftw程序中使用的path_alloc
- Installation Installing SDKMAN
- 【论文阅读一】Adaptive Cross-Modal Few-shot Learning
- 已达到人类水准语音识别模型的whisper,真的有这么厉害吗?
- 一、webpack的全局安装和局部安装以及使用
热门文章
- weblogic子节点服务器启动常见错误汇总
- 二极管电路的分析方法
- HPLC分类及其原理
- 对编程相关的某些概念的思考
- Lammps 如何计算速度矢量分布?
- 华尔街日报创新大奖!
- 3——ls-wc-管道符号-alias-路径-touch-通配符
- 操作系统 段页式存储管理
- cisco packet tracer_sign up(基于临时邮箱/qq邮箱注册并成功在软件中登录)(2021.9实践)(应对Sorry, we can‘t find a NetAcad...)
- Cisco思科网络插件Contiv (一) 安装