当前位置:   article > 正文

记录运行SiamMask代码时遇到的问题以及解决方法_modulenotfounderror: no module named 'tools.datase

modulenotfounderror: no module named 'tools.dataset_converters

1,代码下载地址

https://github.com/foolwood/SiamMask

2, 我的环境

Ubuntu 16.04
在这里插入图片描述

3, 问题以及解决方法

3.1 找不到python.h

在这里插入图片描述
解决方法-----安装必须的依赖包
之前曾经安装过这些依赖包,但是和其他项目冲突,当时卸载了,后来忘记重新安装。
现在重新安装。

pip install -r requirements.txt
bash make.sh
  • 1
  • 2

在这里插入图片描述

3.2 ModuleNotFoundError: No module named ‘tools’

experiments/siammask_sharp$ python ../../tools/demo.py --resume SiamMask_DAVIS.p
th --config config_davis.json
Traceback (most recent call last):
  File "../../tools/demo.py", line 7, in <module>
    from tools.test import *
ModuleNotFoundError: No module named 'tools'

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7

原因:PYTHONPATH配置失败
解决方法:把下列指令中的“$PWD”换成当前目录的绝对路径。

export PYTHONPATH=$PWD:$PYTHONPATH
  • 1

如下图所示。
我下载的代码存放路径为 /home/anna/object_track_xu/3_SiamMask/2_code/Siammask-master/
所以使用如下命令配置 PYTHONPATH环境变量。

export PYTHONPATH = $PYTHONPATH:/home/anna/object_track_xu/3_SiamMask/2_code/Siammask-master/
  • 1

然后使用如下命令打印 PYTHONPATH环境变量,检查一下siammask代码存放路径是否包含在 PYTHONPATH环境变量 中。

echo $PYTHONPATH
  • 1

在这里插入图片描述

成功运行测试代码。

3.3 Evaluate performance on VOT的时候报错

bash test_mask_refine.sh config_vot.json SiamM
ask_VOT.pth VOT2016 0
fatal: Not a git repository (or any of the parent directories): .git
python: can't open file '/tools/test.py': [Errno 2] No such file or directory
  • 1
  • 2
  • 3
  • 4

找不到 /tools/test.py。
tools/test.py是在 siammask这个项目的根目录里面,而不是操作系统的根目录里面。
应该是尝试运行test.py的时候,目录配置有问题。
打开 test_mask_refine.sh,找到出问题的执行test.py的那一行,显示使用了$ROOT。
所以需要确认ROOT的定义是否有问题。

python -u $ROOT/tools/test.py \
  • 1

找到ROOT的定义,发现是用git命令获取当前仓库的根目录。
但我不是用git命令获取的这个siammask代码,所以当前代码所在目录不是git仓库。
这样获取的ROOT会有问题。

ROOT=`git rev-parse --show-toplevel`
  • 1

验证:在命令行中,执行上述git命令,果然返回错误提示。

(siammask) anna@anna-TM1801:~/object_track_xu/3_SiamMask/2_code/SiamMask-master/experiments/siammask_sharp$ git rev-parse --show-toplevel
fatal: Not a git repository (or any of the parent directories): .git

  • 1
  • 2
  • 3

问题解决方法:
不使用git命令获取ROOT路径。
而是手动配置ROOT路径。
缺点:修改了测试文件所在目录之后,这个ROOT路径需一起被修改。

成功运行Evaluate performance on VOT2016

(siammask) anna@anna-TM1801:~/object_track_xu/3_SiamMask/2_code/SiamMask-master/experiments/siammask_sharp$ 
(siammask) anna@anna-TM1801:~/object_track_xu/3_SiamMask/2_code/SiamMask-master/experiments/siammask_sharp$ bash test_mask_refine.sh config_vot.json SiamM
ask_VOT.pth VOT2016 0
test_mask_refine.sh: line 8: ./: Is a directory
[2019-07-14 08:18:22,400-rk0-test.py#555] Namespace(arch='Custom', config='config_vot.json', cpu=False, dataset='VOT2016', debug=False, gt=False, log='log_test.txt', mask=True, refine=True, resume='SiamMask_VOT.pth', save_mask=False, video='', visualization=False)
[2019-07-14 08:18:22,677-rk0-features.py# 66] Current training 0 layers:
	
[2019-07-14 08:18:22,678-rk0-features.py# 66] Current training 1 layers:
	
[2019-07-14 08:18:22,728-rk0-load_helper.py# 31] load pretrained model from SiamMask_VOT.pth
[2019-07-14 08:18:26,047-rk0-load_helper.py# 25] remove prefix 'module.'
[2019-07-14 08:18:26,050-rk0-load_helper.py# 18] used keys:356
/home/anna/miniconda3/envs/siammask/lib/python3.6/site-packages/torch/nn/functional.py:1890: UserWarning: nn.functional.upsample is deprecated. Use nn.functional.interpolate instead.
  warnings.warn("nn.functional.upsample is deprecated. Use nn.functional.interpolate instead.")
[2019-07-14 08:18:30,598-rk0-test.py#416] (1) Video: bag          Time: 4.1s Speed: 47.4fps Lost: 0
[2019-07-14 08:18:33,320-rk0-test.py#416] (2) Video: ball1        Time: 2.2s Speed: 47.5fps Lost: 0
[2019-07-14 08:18:34,364-rk0-test.py#416] (3) Video: ball2        Time: 0.9s Speed: 46.8fps Lost: 0
[2019-07-14 08:18:50,754-rk0-test.py#416] (4) Video: basketball   Time: 15.0s Speed: 48.4fps Lost: 1
[2019-07-14 08:19:02,103-rk0-test.py#416] (5) Video: birds1       Time: 7.1s Speed: 47.8fps Lost: 0
[2019-07-14 08:19:15,315-rk0-test.py#416] (6) Video: birds2       Time: 11.2s Speed: 48.0fps Lost: 0
[2019-07-14 08:19:19,976-rk0-test.py#416] (7) Video: blanket      Time: 4.6s Speed: 49.2fps Lost: 0
[2019-07-14 08:19:21,942-rk0-test.py#416] (8) Video: bmx          Time: 1.7s Speed: 45.2fps Lost: 0
[2019-07-14 08:19:30,348-rk0-test.py#416] (9) Video: bolt1        Time: 7.1s Speed: 49.5fps Lost: 0
[2019-07-14 08:19:36,509-rk0-test.py#416] (10) Video: bolt2        Time: 5.9s Speed: 49.9fps Lost: 1
[2019-07-14 08:19:40,048-rk0-test.py#416] (11) Video: book         Time: 3.2s Speed: 54.2fps Lost: 4
[2019-07-14 08:19:43,453-rk0-test.py#416] (12) Video: butterfly    Time: 3.1s Speed: 48.0fps Lost: 0

  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27

3.4 No module named ‘custom’

运行demo的时候,报错:[] Traceback (most recent call last): File “…/…/tools/demo.py”, line 26, in from custom import Custom ModuleNotFoundError: No module named ‘custom’ [/code]
然后我pip imstall custom 发现安装不上报错:
ERROR: Command errored out with exit status 1: python setup.py egg_info Check the logs for full command output

custom不是一个公开的按照包,而是siammask作者写的一个python文件。
可以在siammask根目录下搜索“custom”,定位custom文件的路径。
如果搜索到了这个文件,但是运行demo的时候确报错,说“ No module named ‘custom’ ",有可能是某个系统路径没有设置好,存放custom的文件夹没有被添加到demo运行时的搜索路径中。
有可能是PYTHONPATH环境变量配置失败。
在这里插入图片描述检查PYTHONPATH环境变量:

echo $PYTHONPATH
  • 1

在terminal中输入“echo $PYTHONPATH”,打印出的PYTHONPATH环境变量应该类似于下图,其中应该包含siammask根目录。否则就说明PYTHONPATH环境变量配置失败。
在这里插入图片描述

配置PYTHONPATH环境变量:
参考这个博客的“3.2 ModuleNotFoundError: No module named ‘tools’”。

另外,也可以参考python 环境变量设置PYTHONPATH,了解解决 import 问题的方法,以及 配置PYTHONPATH环境变量的方法。

4. 实验结果

每个视频的目标跟踪框坐标 保存在文件夹:SiamMask-master/experiments/siammask_sharp/test/VOT2018/
log输出保存在文件:SiamMask-master/experiments/siammask_sharp/logs/test_VOT2018.log
使用目标跟踪框坐标 结果计算 评分

python ../../tools/eval.py --dataset VOT2018 --tracker_prefix C --result_dir ./test/VOT2018
  • 1

在这里插入图片描述

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/我家自动化/article/detail/375454?site=
推荐阅读
相关标签
  

闽ICP备14008679号