1.创建python虚拟环境
在anaconda3下创建(python >= 3.6 Torch >= 1.8)
conda create -n blendmask python=3.6
conda activate blendmask
安装pytorch、torchvision(根据对应cuda版本及python要求找对应版本pytorch)
# 我的版本是CUDA 11.1,用下面命令安装,最好采用conda install安装,pip install 容易出错
conda install pytorch==1.8.0 torchvision==0.9.0 torchaudio==0.8.0 cudatoolkit=11.1 -c pytorch -c conda-forge
2.Detectron 2 0.6离线下载
git clone https://github.com/facebookresearch/detectron2.git
3.pycocotools安装
cd detectron2
git clone https://github.com/cocodataset/cocoapi.git
cd cocoapi/PythonAPI
python setup.py build_ext install
若gcc: error: pycocotools/_mask.c: 没有那个文件或目录
pip install cython
重新安装pycocotools
4.AdelaiDet离线下载
cd ../../ #(cd到detectron2目录下)
git clone https://github.com/aim-uofa/AdelaiDet.git
5.Detectron2编译安装
python setup.py build develop
Error:提示socks依赖找不到,pip版本太低
解决办法:(不需要pip升级,安装socks依赖即可)终端运行:
unset all_proxy unset ALL_PROXY
pip install pysocks
source ~/.bashrc
重新打开终端编译安装即可。
6.编译安装AdelaiDet
cd AdelaiDet
python setup.py build develop
Error集锦:
Error1:ModuleNotFoundError: No module named 'pythran'
原因:缺少python模块
解决办法:
pip install pythran
然后重新编译运行;
Error2:For Python 2.7, please install the 0.14.x Long Term Support release using:
$ pip install 'scikit-image<0.15'
error: Setup script exited with 1
原因:sckit版本和python版本不对应
解决办法:(不要升级Python版本)按提示运行
pip install 'scikit-image<0.15'
自动寻找合适版本并进行安装
7.demo运行(AdelaiDet目录下运行)
cd AdelaiDet
1)下载权重:
wget https://cloudstor.aarnet.edu.au/plus/s/glqFc13cCoEyHYy/download -O fcos_R_50_1x.pth
2)运行demo
python demo/demo.py \
--config-file configs/FCOS-Detection/R_50_1x.yaml \
--input input1.jpg input2.jpg \
--opts MODEL.WEIGHTS fcos_R_50_1x.pth
注:input1,input2 是自己准备的待运行图片
Error:
python缺少包解决办法,下载缺少的包并安装(注意安装在对应的虚拟环境,不是base环境)