赞
踩
- conda create --name swin python=3.6 -y
- conda activate swin
可自行更改虚拟环境名字和python版本3.6-3.8都可
torch1.5.0,torchvision 0.6.0
pip install torch==1.5.0 torchvision==0.6.0
有两种安装方式,都安装成功过,可自行选择安装
(1)
pip install mmcv-full==1.4.0 -f https://download.openmmlab.com/mmcv/dist/cu102/torch1.5.0/index.html
(2)
- pip install -U openmim
- mim install mmcv-full==1.7.0
- sudo apt-get install cython
- get clone https://github.com/cocodataset/cocoapi
- make
- pip install pycocotools
如果安装不上,参考下面详细的安装方式
(1)自己的torch>=1.8.0,则安装下列方式安装
- git clone https://github.com/NVIDIA/apex.git
- cd apex
- python setup.py install --cuda_ext --cpp_ext
(2)自己的torch<1.8.0,则安装下列方式安装
- git clone https://github.com/NVIDIA/apex.git
- cd apex
- git reset --hard 3fe10b5597ba14a748ebb271a6ab97c09c5701ac
- python setup.py install --cuda_ext --cpp_ext
- git clone https://github.com/open-mmlab/mmdetection.git
- cd mmdetection
- pip install -v -e .
以上是比较难安装的必须库,其他库缺什么装什么即可!!!
one:路径/mmdet/datasets/coco.py的第23行CLASSES
two:路径/mmdet/core/evaluation/class_names.py的第67行coco_classes
修改为自己数据集的类别
three:将evaluation = dict(interval=1, metric='bbox')改为
evaluation = dict(interval=1, metric='bbox',save_best='auto')
路径/configs/base/models/mask_rcnn_swin_fpn.py中的num_classes,也有两处大概在第54行和73行,修改为自己数据集的类别数量
路径/configs/base/datasets/coco_detection.py,第2行的data_root数据集根目录路径,第8行的img_scale可以根据需要修改,下面train、test、val数据集的具体路径ann_file根据自己数据集修改
第31行的samples_per_gpu表示batch size大小,太大会内存溢出
第32行的workers_per_gpu表示每个GPU对应线程数,2、4、6、8按需修改
路径/configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_3x(1x)-coco.py中:
第69行的max_epochs按需修改
第3行’…/base/datasets/coco_instance.py’修改为’…/base/datasets/coco_detection.py’
第69行的max_epochs按需修改
路径/configs/base/default_runtime.py中:
第1行interval=1表示每1个epoch保存一次权重信息
第4行interval=50表示每50次打印一次日志信息
第14行load_from表示加载训练好的权重路径,可以不设置,在训练时终端中给定
将mask_rcnn_swin_fpn.py文件中的67-79行内容,如下,注释掉,切记注意括号匹配
- mask_roi_extractor=dict(
- type='SingleRoIExtractor',
- roi_layer=dict(type='RoIAlign', output_size=14, sampling_ratio=0),
- out_channels=256,
- featmap_strides=[4, 8, 16, 32]),
- mask_head=dict(
- type='FCNMaskHead',
- num_convs=4,
- in_channels=256,
- conv_out_channels=256,
- num_classes=80,
- loss_mask=dict(
- type='CrossEntropyLoss', use_mask=True, loss_weight=1.0))
单卡训练命令:sudo python tools/train.py configs/swin/选择对应的配置文件,例如
sudo python tools/train.py configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_1x_coco.py --options "classwise=True"
多卡训练命令:sudo tools/dist_train.sh configs/swin/选择对应的配置文件 GPU数量,例如
sudo tools/dist_train.sh configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_1x_coco.py 6 --options "classwise=True"
上述的6代表GPU的个数,根据自己服务器配置更改
测试图片命令:sudo python demo/image_demo.py 图片路径 configs/swin/选择对应的配置文件 选择对应权重的路径,例如:
sudo python demo/image_demo.py demo/demo.jpg configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_1x_coco.py mask_rcnn_swin_tiny_patch4_window7_1x.pth
测试视频命令:sudo python demo/video_demo.py 视频路径 configs/swin/选择对应的配置文件 选择对应权重的路径 --device cuda:0 --out 保存路径/保存名,例如:
sudo python demo/video_demo.py demo/CT.mp4 configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_1x_coco.py mask_rcnn_swin_tiny_patch4_window7_1x.pth --device cuda:0 --out predict/CT.mp4
有疑问欢迎评论区交流!!!
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。