StyleTransfer (图像风格迁移) 代码解析

代码来源:https://github.com/hwalsuklee/tensorflow-fast-style-transfer

Ⅰ.run_train.py


需用到的包:
(1)numpy  (2)os   (3)tensorflow   (4)argparse

1.parse_args函数



函数的主要作用是变量解析,通过在程序中定义好我们需要的参数,argparse将会从sys.argv中解析这些参数,并自动生成帮助和使用信息。

required = True 的变量是必要的变量,缺少时会报错。
使用argparse后,变量的输入应在cmd或anaconda prompt中进行。
详细用法见官方文档: https://docs.python.org/3/library/argparse.html

函数返回值为另一个check_args函数


2.check_args函数

函数的作用是对可能出现的错误进行处理, 当我们认为某些代码可能会出错时,就可以用try来运行这段代码,如果执行出错,则后续代码不会继续执行,而是直接跳转至错误处理代码,即except语句块,执行完except后,如果有finally语句块,则执行finally语句块,至此,执行完毕。


assert(断言): 是声明其布尔值必须为真的判定,如果发生异常就说明表达示为假。可以理解assert断言语句为raise-if-not,用来测试表示式,其返回值为假,就会触发异常。
首先对内容图片、风格图片的层数、尺寸进行异常处理。


os模块:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431925324119bac1bc7979664b4fa9843c0e5fcdcf1e000;  http://blog.sina.com.cn/s/blog_40669df60102x38g.html

(1) 测试VGG19模型的路径是否存在;
(2) 测试VGG19模型大小是否符合标准;
(3) 测试 train_2014 数据集的路径是否存在;
(4) 测试风格图片路径是否存在;
(5) 测试输出路径,不存在则新建。


其他的try则是对风格图片的属性以及learning rate、epoch、batch 等进行测试
3.add_one_dim函数(暂时跳过)


4.   main主函数

语句功能见注释。

创建session时,可用ConfigProto对session进行参数配置。可配置 控制GPU资源使用率 以及 使用哪块GPU等;




关于程序入口、__name__见文章: http://blog.konghy.cn/2017/04/24/python-entry-program/


Ⅱ.utils.py


需用到的包:(1) numpy (2) os (3) scipy (4) PIL.image

1.get_image 函数

评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

McGregorWwww

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值