2020年4月1日:
cd lib sh make.sh
错误一:
Traceback (most recent call last): File "setup.py", line 14, in <module> from Cython.Distutils import build_ext ImportError: No module named Cython.Distutils
解决办法:
conda install Cython
错误二:
错误原文:
Compiling nms kernels by nvcc... ./make.sh: line 25: nvcc: command not found Traceback (most recent call last): File "build.py", line 4, in <module> from torch.utils.ffi import create_extension File "/home/xingduan/miniconda2/envs/faster_rcnn_pyt/lib/python2.7/site-packages/torch/utils/ffi/__init__.py", line 1, in <module> raise ImportError("torch.utils.ffi is deprecated. Please use cpp extensions instead.") ImportError: torch.utils.ffi is deprecated. Please use cpp extensions instead.
原因分析:查询发现/usr/local/cuda下面已经将cuda安装好了,只是没有添加到当前窗口中来,所以运行如下两个命令即可。
解决办法:
export LD_LIBRARY_PATH=/usr/local/cuda/lib:$LD_LIBRARY_PATH export PATH=/usr/local/cuda/bin:$PATH
错误三:
错误原文:
Traceback (most recent call last): File "build.py", line 4, in <module> from torch.utils.ffi import create_extension File "/home/xingduan/miniconda2/envs/faster_rcnn_pyt/lib/python2.7/site-packages/torch/utils/ffi/__init__.py", line 1, in <module> raise ImportError("torch.utils.ffi is deprecated. Please use cpp extensions instead.") ImportError: torch.utils.ffi is deprecated. Please use cpp extensions instead.
错误原因分析:当前运行的pytorch比faster_rcnn_pyt中的要新,在新的PyTorch 版本中,torch.utils.ffi被弃用了,需要用其他包来替代。
错误四:
错误原文:
Traceback (most recent call last): File "build.py", line 33, in <module> extra_objects=extra_objects File "/home/xingduan/miniconda2/envs/faster_rcnn_pyt/lib/python2.7/site-packages/setuptools/__init__.py", line 163, in __init__ _Command.__init__(self, dist) File "/home/xingduan/miniconda2/envs/faster_rcnn_pyt/lib/python2.7/distutils/cmd.py", line 59, in __init__ raise TypeError, "dist must be a Distribution instance" TypeError: dist must be a Distribution instance
原因分析:
总结:错误三和错误四统一通过将pytorch的版本降到0.4.0即可解决。
2020年4月2日:
将上述错误一到四突破之后,即可成功编译faster_rcnn的代码。
尝试编译faster_rcnn:
CUDA_VISIBLE_DEVICES=$GPU_ID python trainval_net.py --dataset COCO --net vgg16 --bs $BATCH_SIZE --nw $WORKER_NUMBER --lr $LEARNING_RATE --lr_decay_step $DECAY_STEP --cuda
错误五:
错误原文:
(faster_rcnn_pyt) xingduan@gpu2:~/pyProjects/faster-rcnn.pytorch$ CUDA_VISIBLE_DEVICES=0 python trainval_net.py --dataset COCO --net vgg16 --bs 1 --nw 1 --lr 0.001 --lr_decay_step 1000 --cuda
Traceback (most recent call last):
File "trainval_net.py", line 27, in <module>
from roi_data_layer.roidb import combined_roidb
File "/home/xingduan/pyProjects/faster-rcnn.pytorch/lib/roi_data_layer/roidb.py", line 12, in <module>
from datasets.factory import get_imdb
File "/home/xingduan/pyProjects/faster-rcnn.pytorch/lib/datasets/factory.py", line 14, in <module>
from datasets.pascal_voc import pascal_voc
File "/home/xingduan/pyProjects/faster-rcnn.pytorch/lib/datasets/pascal_voc.py", line 23, in <module>
from .imdb import imdb
File "/home/xingduan/pyProjects/faster-rcnn.pytorch/lib/datasets/imdb.py", line 14, in <module>
from model.utils.cython_bbox import bbox_overlaps
File "__init__.pxd", line 918, in init model.utils.cython_bbox
ValueError: numpy.ufunc size changed, may indicate binary incompatibility. Expected 216 from C header, got 192 from PyObject
错误原因分析:numpy 版本过低
解决办法:更新numpy 版本至 1.16.0
conda install numpy==1.16.0
本文详细记录了Faster R-CNN从编译到运行过程中遇到的多个常见错误及其解决办法,包括Cython安装、PyTorch版本兼容、CUDA配置和numpy版本更新等关键步骤。
4430

被折叠的 条评论
为什么被折叠?



