MaskRCNN环境配置

一、Ananconda虚拟环境

1、python环境

(1)创建虚拟环境

conda create -n MaskRCNN python=3.6

conda activate MaskRCNN

(2)安装依赖包

conda install ipython pip

pip install ninja yacs cython matplotlib tqdm opencv-python requests
-i https://pypi.tuna.tsinghua.edu.cn/simple

2、Pytorch1.2.0

(1)下载如下两个文件,网址:https://download.pytorch.org/whl/cu100/torch_stable.html

torch-1.2.0-cp36-cp36m-win_amd64.whl

torchvision-0.4.0-cp36-cp36m-win_amd64.whl

(2)pip安装下载的两个文件,用绝对路径

pip install path/torch-1.2.0-cp36-cp36m-win_amd64.whl

pip install path/torchvision-0.4.0-cp36-cp36m-win_amd64.whl

3、pycocotools

git clone https://github.com/cocodataset/cocoapi.git

cd cocoapi/PythonAPI

python setup.py install

备注:有问题参考https://www.cnblogs.com/yihe/p/8467984.html

4、安装apex

git clone https://github.com/NVIDIA/apex

cd apex

pip install -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" ./

python setup.py install

5、安装maskrcnn benchmark

git clone https://github.com/facebookresearch/maskrcnn-benchmark.git

cd maskrcnn-benchmark

python setup.py build develop

 

二、运行官方Demo

(1)在Jupyter Notebook中打开/home/bai/maskrcnn-benchmark/demo/Mask_R-CNN_demo.ipynb

(2)错误信息: ModuleNotFoundError: No module named 'maskrcnn_benchmark'--->

 

三、制作自己的数据集

(1)安装自己的数据集

pip install scikit-image -i https://pypi.tuna.tsinghua.edu.cn/simple
pip install labelme -i https://pypi.tuna.tsinghua.edu.cn/simple

labelme

(2)标注数据转换

python labelme2cocoAll.py roadscene_train --output instances_train2017.json
python labelme2cocoAll.py roadscene_val --output instances_val2017.json
 

四、训练

(1)在maskrcnn-benchmark根目录下面的datasets文件夹下,创建目录结构如下:

---coco

      |---annotations

            |---instances_train2017.json

            |---instances_val2017.json

      |---train2017

            |---训练图片

      |---val2017

            |---验证图片

(2)配置文件选择和修改

根目录下的configs文件夹里面有很多yaml网络配置文件,这里选择的是
e2e_mask_rcnn_R_50_FPN_1x.yaml,更改如下:
拷贝文件并改名为:my_e2e_mask_rcnn_R_50_FPN_1x.yaml, 内容修改如下:

(3)预训练权重文件准备

python weights/trim_detectron_model.py --pretrained_path weights/e2e_mask_rcnn_R_50_FPN_1x.pth --save_path weights/my_pretrained_R_50.pth

(4)重新编译项目

python setup.py build develop
(5)网络训练

python tools/train_net.py --config-file configs/my_e2e_mask_rcnn_R_50_FPN_1x.yaml MODEL.ROI_BOX_HEAD.NUM_CLASSES 6 SOLVER.IMS_PER_BATCH 4 SOLVER.BASE_LR 0.001 SOLVER.MAX_ITER 36000 SOLVER.STEPS " (24000, 32000)" TEST.IMS_PER_BATCH 1 MODEL.RPN.FPN_POST_NMS_TOP_N_TRAIN 2000
其中MODEL.ROI_BOX_HEAD.NUM_CLASSES的值根据自己的数据集物体的个数设定为:物体的个数+1

  • 3
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值