风格迁移2-02:MUNIT(多模态无监督)-源码训练测试-报错解决

2023-10-28 01:30

本文主要是介绍风格迁移2-02:MUNIT(多模态无监督)-源码训练测试-报错解决,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

以下链接是个人关于 MUNIT(多模态无监督)-图片风格转换,的所有见解,如有错误欢迎大家指出,我会第一时间纠正。有兴趣的朋友可以加微信 17575010159 相互讨论技术。若是帮助到了你什么,一定要记得点赞!因为这是对我最大的鼓励。 文末附带 \color{blue}{文末附带} 文末附带 公众号 − \color{blue}{公众号 -} 公众号 海量资源。 \color{blue}{ 海量资源}。 海量资源

风格迁移2-00:MUNIT(多模态无监督)-目录-史上最新无死角讲解

注意,本人编写该博客的时间为 2020 / 04 / 3 ,也就是说,你现在下载的作者代码或许 \color{red}{注意,本人编写该博客的时间为2020/04/3,也就是说,你现在下载的作者代码或许} 注意,本人编写该博客的时间为2020/04/3,也就是说,你现在下载的作者代码或许
和本人的代码不一样(如果作者有更新过)还有就是,本人调试该代码为 W i n d s 系统 \color{red}{和本人的代码不一样(如果作者有更新过)还有就是,本人调试该代码为Winds系统} 和本人的代码不一样(如果作者有更新过)还有就是,本人调试该代码为Winds系统
即下面的报错都是 W i n d s 下使用 p y c h a r m 报错的过程,以及解决办法 \color{red}{即下面的报错都是Winds下使用pycharm报错的过程,以及解决办法} 即下面的报错都是Winds下使用pycharm报错的过程,以及解决办法

环境安装

这是pytorch官网安装指南:https://pytorch.org/get-started/previous-versions/
本人的cuda版本为cuda10.0,pytorch为v1.0.0(上链接可以找到),主要使用anconda3执行了如下指令:

 conda create -n pytorch-MUNIT  -y python=3.6conda install pytorch==1.2.0 torchvision==0.4.0 cudatoolkit=10.0 -c pytorch# 下载安装包(从前面的官网链接找到合适版本),从其中找到合适的版本https://download.pytorch.org/whl/cu100/torch_stable.html# 下载完成之后执行如下指令python -m pip install --upgrade pippip install torch-1.0.0-cp36-cp36m-win_amd64.whl

安装完成之后,请配置好pycharm,下面我们就开始调试代码了,起码要让测试以及训练程序跑起来。再这之前,通过上一篇博客,大家应该下载好了预训练模型,放置如下:
在这里插入图片描述

代码测试

首先,我们还是先阅读项目中的README.md,进入其中的Please check out the user manual page:
https://github.com/NVlabs/MUNIT/blob/master/USAGE.md
可以看到如下:
在这里插入图片描述
直接粘贴复制再终端运行:

python test.py --config configs/edges2shoes_folder.yaml --input inputs/edge.jpg --output_folder outputs --checkpoint models/edges2shoes.pt --a2b 1

报错一
File “E:\2.ChiPeak\3.FaceDataGenerate\1.MUNIT\1.MUNIT-master\utils.py”, line 6, in
import torchfile
ModuleNotFoundError: No module named ‘torchfile’

pip install torchfile
pip install numpy
pip install torchvision==0.2.1
pip install pyyaml

报错二
File “D:\Users\94428\anaconda3\envs\pytorch-MUNIT\lib\site-packages\PIL\Image.py”, line 2843, in open
fp = builtins.open(filename, “rb”)
FileNotFoundError: [Errno 2] No such file or directory: ‘inputs/edge.jpg’

inputs目录存在文件如下:
在这里插入图片描述

# 修改一下图片名即可,执行如下
python test.py --config configs/edges2shoes_folder.yaml --input inputs/edges2shoes_edge.jpg --output_folder outputs --checkpoint models/edges2shoes.pt --a2b 1

然后在输出目录可以看到如下照片:
在这里插入图片描述
这样我们就完成了初步的测试,可以在执行如下指令

python test.py --config configs/edges2shoes_folder.yaml --input inputs/edges2shoes_edge.jpg  --output_folder outputs --checkpoint models/edges2shoes.pt --a2b 1 --style inputs/edges2handbags_handbag.jpg

可以看到其生成了绿色的鞋子图片如下:
在这里插入图片描述

数据训练

我们可以看到如下部分:
在这里插入图片描述
先不管那么多,我们执行:

python train.py --config configs/edges2shoes_folder.yaml

报错一
Traceback (most recent call last):
File “train.py”, line 17, in
import tensorboardX
ModuleNotFoundError: No module named ‘tensorboardX’

pip install tensorboardX

报错二

File “E:\2.ChiPeak\3.FaceDataGenerate\1.MUNIT\1.MUNIT-master\data.py”, line 91, in make_dataset
assert os.path.isdir(dir), ‘%s is not a valid directory’ % dir
AssertionError: ./datasets/edges2shoes/trainA is not a valid directory

本人数据目录放置如下:
在这里插入图片描述
所以修改 edges2shoes_folder.yaml 的代码如下

#data_root: ./datasets/edges2shoes/     # dataset folder location
data_root: ../2.Dataset/edges2shoes        # dataset folder location

报错三

File “E:\2.ChiPeak\3.FaceDataGenerate\1.MUNIT\1.MUNIT-master\data.py”, line 91, in make_dataset
assert os.path.isdir(dir), ‘%s is not a valid directory’ % dir
AssertionError: …/2.Dataset/edges2shoes\trainA is not a valid directory
该错误表示,我们数据的格式,是不符合规范的。

本人参考 scripts/demo_train_edges2shoes.sh 脚本对数据做了处理,本人比较尴尬,因为都 wind 和 linux 的脚本书写都比较陌生,所以把数据拷贝到 linux 下,把 edges2shoes.tar.gz 解压之后,得到 edges2shoes 目录如下:
在这里插入图片描述
在该目录(edges2shoes)下,执行了如下指令:

for f in train/*; do convert -quality 100 -crop 50%x100% +repage $f train%d/${f##*/}; done;for f in val/*; do convert -quality 100 -crop 50%x100% +repage $f test%d/${f##*/}; done;mv train0 trainAmv train1 trainBmv test0 testAmv test1 testB

执行完之后,目录显示如下:
在这里插入图片描述
本人用的办法真的蠢,哈哈。然后又压缩,放置到 winds 下的原目录中。

报错四
in the main module:
if name == ‘main’:
freeze_support()

该错误主要是没有在 linux 环境下导致的结果,在 train.py 添加 if name == ‘main’: 如下:

import tensorboardX
import shutil
if __name__ == '__main__':parser = argparse.ArgumentParser()......

其后的代码都右移一个 tab 键。

调试成功之后,本人打印如下:

Elapsed time in update: 7.770969
Elapsed time in update: 0.784000
Elapsed time in update: 0.757999
Elapsed time in update: 0.749000
Elapsed time in update: 0.754998
Elapsed time in update: 0.757999
Elapsed time in update: 0.756999
Elapsed time in update: 0.761999
Elapsed time in update: 0.755001
Elapsed time in update: 0.753999
Iteration: 00000010/01000000
Elapsed time in update: 0.766001
Elapsed time in update: 0.758998
Elapsed time in update: 0.758000
Elapsed time in update: 0.641000
Traceback (most recent call last):

结语

到这里为止,代码已经跑起来了,下面会为大家进行论文翻译,以及源码的阅读。

在这里插入图片描述

这篇关于风格迁移2-02:MUNIT(多模态无监督)-源码训练测试-报错解决的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/289776

相关文章

Spring 中的循环引用问题解决方法

《Spring中的循环引用问题解决方法》:本文主要介绍Spring中的循环引用问题解决方法,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录什么是循环引用?循环依赖三级缓存解决循环依赖二级缓存三级缓存本章来聊聊Spring 中的循环引用问题该如何解决。这里聊

Spring Boot中JSON数值溢出问题从报错到优雅解决办法

《SpringBoot中JSON数值溢出问题从报错到优雅解决办法》:本文主要介绍SpringBoot中JSON数值溢出问题从报错到优雅的解决办法,通过修改字段类型为Long、添加全局异常处理和... 目录一、问题背景:为什么我的接口突然报错了?二、为什么会发生这个错误?1. Java 数据类型的“容量”限制

关于MongoDB图片URL存储异常问题以及解决

《关于MongoDB图片URL存储异常问题以及解决》:本文主要介绍关于MongoDB图片URL存储异常问题以及解决方案,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录MongoDB图片URL存储异常问题项目场景问题描述原因分析解决方案预防措施js总结MongoDB图

SpringBoot项目中报错The field screenShot exceeds its maximum permitted size of 1048576 bytes.的问题及解决

《SpringBoot项目中报错ThefieldscreenShotexceedsitsmaximumpermittedsizeof1048576bytes.的问题及解决》这篇文章... 目录项目场景问题描述原因分析解决方案总结项目场景javascript提示:项目相关背景:项目场景:基于Spring

解决Maven项目idea找不到本地仓库jar包问题以及使用mvn install:install-file

《解决Maven项目idea找不到本地仓库jar包问题以及使用mvninstall:install-file》:本文主要介绍解决Maven项目idea找不到本地仓库jar包问题以及使用mvnin... 目录Maven项目idea找不到本地仓库jar包以及使用mvn install:install-file基

最详细安装 PostgreSQL方法及常见问题解决

《最详细安装PostgreSQL方法及常见问题解决》:本文主要介绍最详细安装PostgreSQL方法及常见问题解决,介绍了在Windows系统上安装PostgreSQL及Linux系统上安装Po... 目录一、在 Windows 系统上安装 PostgreSQL1. 下载 PostgreSQL 安装包2.

Mysql如何解决死锁问题

《Mysql如何解决死锁问题》:本文主要介绍Mysql如何解决死锁问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录【一】mysql中锁分类和加锁情况【1】按锁的粒度分类全局锁表级锁行级锁【2】按锁的模式分类【二】加锁方式的影响因素【三】Mysql的死锁情况【1

SpringBoot内嵌Tomcat临时目录问题及解决

《SpringBoot内嵌Tomcat临时目录问题及解决》:本文主要介绍SpringBoot内嵌Tomcat临时目录问题及解决,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,... 目录SprinjavascriptgBoot内嵌Tomcat临时目录问题1.背景2.方案3.代码中配置t

Java 正则表达式URL 匹配与源码全解析

《Java正则表达式URL匹配与源码全解析》在Web应用开发中,我们经常需要对URL进行格式验证,今天我们结合Java的Pattern和Matcher类,深入理解正则表达式在实际应用中... 目录1.正则表达式分解:2. 添加域名匹配 (2)3. 添加路径和查询参数匹配 (3) 4. 最终优化版本5.设计思

如何解决idea的Module:‘:app‘platform‘android-32‘not found.问题

《如何解决idea的Module:‘:app‘platform‘android-32‘notfound.问题》:本文主要介绍如何解决idea的Module:‘:app‘platform‘andr... 目录idea的Module:‘:app‘pwww.chinasem.cnlatform‘android-32