【雾天行人车辆检测】手把手教你复现 Image-Adaptive-YOLO 模型 ② :Train!

前言

文章性质:实操记录 💻

主要内容:主要记录了如何调整项目代码以成功运行 train.py 文件,但遇到了 nan 问题。

项目源码:GitHub - wenyyu/Image-Adaptive-YOLO

冷知识+1:小伙伴们不经意的 点赞 👍🏻 与 收藏 ✨ 可以让作者更有创作动力!

目录

前言

Prepare

1、运行 voc_annotation.py

(1)尝试运行

(2)运行报错

① AttributeError: 'Namespace' object has no attribute 'val_annotation'

② FileNotFoundError: [Errno 2] No such file or directory

(3)运行成功

2、运行 data_make.py

3、运行 train.py

(1)尝试运行 

(2)运行报错

① ModuleNotFoundError: No module named 'tqdm'

(3)运行警告(可忽略)

① /root/miniconda3/envs/detection/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py

② /root/miniconda3/envs/detection/lib/python3.7/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py

③ train.py

④ core/yolov3.py-1

⑤ core/common.py-1

⑥ module 'gast'

⑦ core/common.py-2

⑧ util-filters.py

⑨ core/yolov3.py-2

⑩ core/common.py-3

① train.py-2

② core/backbone.py

③ core/common.py-4

④ core/yolov3.py-3 

 ⑤ others

(4)遇到 nan 问题


Prepare

在作者提供的 README.md 文件中,已经有比较详细的步骤说明了。

1、运行 voc_annotation.py

在运行  voc_annotation.py 文件前,需要先下载相关的 PASCAL VOC 数据集。

(1)尝试运行

【Step1】首先需要用 conda activate 命令激活相应的虚拟环境:

conda activate detection

【Step2】接着需要用 cd 命令进入项目的根目录:

cd /root/autodl-tmp/pycharm_project

【Step3】最后只需要用 python 命令执行 voc_annotation.py:

python scripts/voc_annotation.py

(2)运行报错

由于我们在尝试运行 voc_annotation.py 时没有仔细查看该文件的内容,因此不可避免地会出现报错。

① AttributeError: 'Namespace' object has no attribute 'val_annotation'

【错误】AttributeError: 'Namespace' object has no attribute 'val_annotation'

【解决】错误原因:在 argparse 中没有定义 val_annotation 参数,但在代码中却用了。解决方式如下图所示:

② FileNotFoundError: [Errno 2] No such file or directory

【错误】FileNotFoundError: [Errno 2] No such file or directory: '../data/dataset_fog/voc_norm_train.txt'

【解决】将文件路径改为远程服务器中的绝对路径,具体如下图所示:

(3)运行成功

2、运行 data_make.py

【Step1】首先需要用 conda activate 命令激活相应的虚拟环境:

conda activate detection

【Step2】接着需要用 cd 命令进入项目的根目录:

cd /root/autodl-tmp/pycharm_project

【Step3】最后只需要用 python 命令执行 data_make.py:

python ./core/data_make.py

【提醒】这里的 data_make.py 需要运行 2 次,不仅要得到 Voc_foggy_train 还要得到 Voc_foggy_val 。

【注意】在 data_make.py 中可以看到:代码有一个加噪的过程,而且这是一个渐进式的过程,不断地加噪,每个样本共分为 10 级的加噪处理,最终这批数据会工作用于模型的训练拟合。这里是可以人为进行修改的,我把加噪等级修改为3,因为VOC数据集太过于庞大啦。

【警告】我不知道我这样改是否有缺漏!请求改过的人帮忙看看!

3、运行 train.py

在运行  voc_annotation.py 文件前,

(1)尝试运行 

【Step1】首先需要用 conda activate 命令激活相应的虚拟环境:

conda activate detection

【Step2】接着需要用 cd 命令进入项目的根目录:

cd /root/autodl-tmp/pycharm_project

【Step3】最后只需要用 python 命令执行 train.py:

python train.py

(2)运行报错

① ModuleNotFoundError: No module named 'tqdm'

【错误】ModuleNotFoundError: No module named 'tqdm'

【解决】用 pip install 命令安装 tqdm :

pip install tqdm

(3)运行警告(可忽略)

说实话,我很后悔为这些警告修改了代码。下面是我修改的部分截图,后面修改太多就懒得截图了。

① /root/miniconda3/envs/detection/lib/python3.7/site-packages/tensorflow/python/framework/dtypes.py

② /root/miniconda3/envs/detection/lib/python3.7/site-packages/tensorboard/compat/tensorflow_stub/dtypes.py

③ train.py

④ core/yolov3.py-1

⑤ core/common.py-1

⑥ module 'gast'

⑦ core/common.py-2

⑧ util-filters.py

⑨ core/yolov3.py-2

⑩ core/common.py-3

① train.py-2

② core/backbone.py

③ core/common.py-4

④ core/yolov3.py-3 

 ⑤ others

conda install cudatoolkit=10.0 -c https://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/linux-64/

(4)遇到 nan 问题

cd /root/autodl-tmp/pycharm_project
nohup python train.py > logs/temp.log 2>&1 &  
cat logs/temp.log

  • 19
    点赞
  • 17
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 12
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 12
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

作者正在煮茶

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

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

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

打赏作者

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

抵扣说明:

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

余额充值