深度学习为图片人物换装【python代码教程】

 

aHR0cHM6Ly9tbWJpei5xbG9nby5jbi9tbWJpel9w

在观看本文之前,请答应我要善良。昨天预告了下,发现很多同学对这个模型都表示出兴趣,甚至有好多同学后台发来照片让我帮他们脱裤子。授人以鱼不如授人以渔,请这些同学好自为之~

01效果演示

本文案例使用的是开源项目instagan,是一种比较新的gan模型建模原理,来自2019年ICLR的论文,

下面看下效果对照:

(出于人道主义,会把人物的长裤脱掉然后换上短裙)

02环境配置

首先玩这个模型需要两个前提条件:

  1. 有梯子

  2. python3.6版本

  3. 有GPU环境(因为源代码是要求必须在GPU的Cuda环境下运行,如果没有GPU的同学推荐用PAI里面的DSWhttps://data.aliyun.com/product/learn ,比较便宜 )

(1)下载实验代码:https://github.com/sangwoomo/instagan

(2)下载pre-trained model,如果只是实验就直接用训练好的模型即可:https://drive.google.com/drive/folders/1xb9rR21MhMVselc6HTmOr73WOkOviFmO

(如果只玩换裤子这个实验,下载pants2skirt_mhp_instagan这个模型即可)

(3)安装代码中的requirement.txt中的依赖包

最后把下载的model文件放到代码文件的根目录下,目录结构如下(蓝色部分为模型文件夹,里面是200_net_G_A.pth和200_net_G_B.pth):

完成以上步骤,整个环境就搭建好了。

03使用模型做图片转换

注:这个项目的代码有很多hard code的逻辑,需要严格按照下面的做法执行才有可能跑通,包括所有文件的命名。

(1)先设置需要转换的图片

在datasets目录下新增一个test文件夹,构建如下的文件格式

testA和testB存放需要转换的原图,类似于“效果演示中”穿着长裤的图片,testA_seg和testB_seg需要存放mask图片。mask文件是转换图片中的裤子样式,如下图对应实例图片左边的女生裤子(如果想转换其它部位,就不用我举例子了吧):

mask图片还需要与被转换图片命名一致,详细规则参见源代码中的datasets,如果不一致会出现以下错误:https://github.com/sangwoomo/instagan/issues/5

(2)执行图片转换逻辑

在工程的根目录下执行以下代码,使用工程下的test.py这个测试代码:

 python test.py --dataroot ./datasets/test --model instagan --name pants2skirt_mhp_instagan --loadSizeH 240 --loadSizeW 160 --fineSizeH 240 --fineSizeW 160 --ins_per 2 --ins_max 20

如果没有报错的话在GPU环境下1分钟就可以执行完毕,代码执行完毕后在工程的results文件夹下就能看到转换好的图片了。

04总结

整个项目的效果还是不错的,不过可能代码还没来得及优化,可能在实验的过程中有很多坑,大家需要一定的debug能力才能把工程跑起来,小白不太建议使用哈。

 


原文链接
本文为云栖社区原创内容,未经允许不得转载。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/519962.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

java通过HTTPS协议POST提交接收JSON格式数据

文章目录一、客户端实现1. HttpsApiUtils 测试方法2. 返回报文监控二、服务端实现2.1. 配置SSL 实现HTTPS2.2. 添加post接口方法2.3. 服务端监控三、进阶测试3.1. 客户端发送对象3.2. 服务端监控3.3. 客户端解析返回报文一、客户端实现 声明:不用引入任何第三方jar…

2018年AI和ML(NLP、计算机视觉、强化学习)技术总结和2019年趋势(下)

4、工具和库 工具和库是数据科学家的基础。我参与了大量关于哪种工具最好的辩论,哪个框架会取代另一个,哪个库是经济计算的缩影等等。 但有一点共识--我们需要掌握该领域的最新工具,否则就有被淘汰的风险。 Python取代其他所有事物并将自己…

Elasticsearch7.15.2 出现 node validation exception 的问题处理

3个异常如下: [1]: max file descriptors [65535] for elasticsearch process is too low, increase to at least [65536][2]: memory locking requested for elasticsearch process but memory is not locked[3]: max virtual memory areas vm.max_map_count [6553…

最强NLP模型BERT可视化学习

2018年是自然语言处理(Natural Language Processing, NLP)领域的转折点,一系列深度学习模型在智能问答及情感分类等NLP任务中均取得了最先进的成果。近期,谷歌提出了BERT模型,在各种任务上表现卓越,有人称其…

一分钟看懂通信铁塔

戳蓝字“CSDN云计算”关注我们哦!作者 | 无线深海责编 | 阿秃说到铁塔,相信大家都很熟悉。我们走在路上,到处都可以看到它们。作为通信工程师来说,我们所说的铁塔,往往是特指那些专门用于通信用途的塔。现实生活中&…

html立体魔方图片制作,ppt怎么制作三维视图的魔方图 ppt制作三维魔方图详细教程...

很多用户在制作PPT展示图的时候,有时候需要制作三维立体的魔方图,制作步骤简单,不过还有很多的用户不清楚如何制作,那么下面小编就为大家分享PPT制作三维魔方图的详细步骤教程,不会制作的朋友可以参照下面的步骤教程多…

PMP考试技巧(必备)

(一) 关键词篇 第 1 章 引论 看到“驱动变革”——选项中找“将来状态” 看到“依赖关系”——选项中找“项目集管理” 看到“价值最大化”——选项中找“项目组合管理” 看到“可行性研究”——选项中找“商业论证” 第 2 章 项目运行环境 看到“…

IDE 插件新版本发布,开发效率 “biu” 起来了

近日,Cloud Toolkit正式推出了面向 IntelliJ 和 Eclipse 两个平台的新款插件,本文挑选了其中三个重大特性进行解读,点击文末官网跳转链接,可查看详细的版本说明。 本地应用一键部署到任何机器上IDE 内置的命令行终端文件上传到服…

爬取6271家死亡公司数据,看十年创业公司消亡史

戳蓝字“CSDN云计算”关注我们哦!作者 | 朱小五责编 | 阿秃前段时间老罗和王校长都成为自己的创业公司成了失信人,小五打算上IT桔子看看他们的公司。意外发现IT桔子出了个死亡公司库(https://www.itjuzi.com/deathCompany)&#x…

阿里重磅开源首款自研科学计算引擎Mars,揭秘超大规模科学计算

日前,阿里巴巴正式对外发布了分布式科学计算引擎 Mars 的开源代码地址,开发者们可以在pypi上自主下载安装,或在Github上获取源代码并参与开发。 此前,早在2018年9月的杭州云栖大会上,阿里巴巴就公布了这项开源计划。Ma…

html5链接教程,关于html a、html超链接基础教程

一、html a语法被链接内容html a超链接机关图同时锚文本_锚链接又被各人喻为超链接。Href值:网址,网址一定加上http://域名相对路径,如htef"/abc/",代表本站内锚文本target指标值以下:_blank -- 在新窗口中掀开链接 _pa…

阿里大规模数据中心性能分析

郭健美,阿里巴巴高级技术专家,目前主要从事数据中心的性能分析和软硬件结合的性能优化。CCF 系统软件专委和软件工程专委的委员。曾主持国家自然科学基金面上项目、入选上海市浦江人才计划A类、获得 ACMSIGSOFT “杰出论文奖”。担任 ICSE18NIER、ASE18、…

推出云游戏解决方案后,腾讯在这场沙龙上还说了什么?

近日腾讯在京举办腾讯云媒体开放日,其中在云游戏专场,腾讯研究院研究员俞点和腾讯视频云业务总经理李郁韬分别进行了分享。俞点指出,腾讯从2016年开始便针对云游戏进行技术开发和积累,进入2019年后云游戏迎来爆发,谷歌…

一份关于机器学习端到端学习指南

人工智能、机器学习已经火了有一阵了,很多程序员也想换到这方向,目前有关于深度学习基础介绍的材料很多,但很难找到一篇简洁的文章提供实施机器学习项目端到端的指南,从头到尾整个过程的相关指南介绍。因此,个人在网上…

从NeurIPS 2018看AI发展路线!

去年9月份的时候,我发表过一份技术报告,阐述了我认为人工智能最重要的挑战,大概有以下四个方面: 可伸缩性(Scalability)计算或存储的成本不与神经元的数量成二次方或线性比例的神经网络; 持续…

2亿用户背后的Flutter应用框架Fish Redux

背景 在闲鱼深度使用 Flutter 开发过程中,我们遇到了业务代码耦合严重,代码可维护性糟糕,如入泥泞。对于闲鱼这样的负责业务场景,我们需要一个统一的应用框架来摆脱当下的开发困境,而这也是 Flutter 领域空缺的一块处…

打包上传web html,将webApp打包上传到App Store

将webApp打包上传到Appstore流程:先将html5写好的webApp通过html5编辑器Builder打包为ipa包,打包流程下图image发行为原生安装包后如图所示:image咋们发行的是iOS版本,所以最上面一栏选者iOS,支不支持iPad版本看自己需求&#xff…

国内首家!华为获5G核心网电信设备进网许可证;亚马逊或颠覆博通等芯片制造商?2020年5G总投资额达0.9万亿元……...

关注并标星星CSDN云计算 速递、最新、绝对有料。这里有企业新动、这里有业界要闻,打起十二分精神,紧跟fashion你可以的!每周两次,打卡即read更快、更全了解泛云圈精彩newsgo go goiPhone 12全系渲染图(图片来源网络&am…

老代码多=过度耦合=if else?阿里巴巴工程师这样捋直老代码

简介 在业务开发的过程中,往往存在平台代码和业务代码耦合严重难以分离、业务和业务之间代码交织缺少拆解的现象。平台和业务代码交织导致不易修改,不同业务的代码交织增加了不同负责团队之间的协同成本。因此不论从代码质量,还是从团队协作…

阿里高级技术专家:研发效能的追求永无止境

背景 大约在5年前,也就是2013年我刚加入阿里的时候,那个时候 DevOps 的风刚吹起来没多久,有家公司宣称能够一天发布几十上百次,这意味着相比传统软件公司几周一次的发布来说,他们响应商业需求的能力可以甩后者几条街&…