ubuntu18 Swin-Transformer-Object-Detection

1、目标检测:https://github.com/SwinTransformer/Swin-Transformer-Object-Detection
原文地址:https://arxiv.org/abs/2103.14030
代码地址:https://github.com/microsoft/Swin-Transformer
注:Swin-Transformer-Object-Detection中mmdet可能会发生报错,说目标文件不存在,先不用急,先装好环境,自然就不会报错了
安装参考链接:
链接1
链接2
链接3

2、环境安装
1)安装mmcv
可自行百度mmcv安装方式,按版本安装,教程很多

 pip install mmcv-full==1.2.2 -f https://download.openmmlab.com/mmcv/dist/cu110/torch1.7.1/index.html

2)安装mmdetction
安装包网址

pip install -r requirements.txt
python setup.py develop

pip install -r requirements/build.txt
pip install -v -e .

注意mmdetcton与mmcv版本的对应

3)安装Apex
安装包网址

cd apex-master
pip install -v --no-cache-dir --global-option="--cpp_ext" --global-option="--cuda_ext" .

git clone https://github.com/NVIDIA/apex
cd apex
pip install -r requirements.txt
python setup.py install --cpp_ext

安装成功:

Processing dependencies for apex==0.1
Finished processing dependencies for apex==0.1

3、测试环境
参考命令:

python demo/image_demo.py demo/demo.jpg configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_3x_coco.py mask_rcnn_swin_tiny_patch4_window7.pth

用终端命令可能会报错,直接去pycharm下面跑,直接给出文件的地址。
把image_dome.py 放到根目录下

def main():
    parser = ArgumentParser()

    parser.add_argument(
        '--device', default='cuda:0', help='Device used for inference')
    parser.add_argument(
        '--score-thr', type=float, default=0.3, help='bbox score threshold')
    args = parser.parse_args()

    condfig = 'configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_3x_coco.py'

    checkpoint = 'moby_mask_rcnn_swin_tiny_patch4_window7_3x_2.pth'

    img = 'img.png'

    model = init_detector(condfig, checkpoint, device=args.device)

    result = inference_detector(model, img)

    show_result_pyplot(model, img, result, score_thr=args.score_thr)

预训练模型 mask_rcnn_swin_tiny_patch4_window7.pth可在代码地址处下载,记得修改名字

4、训练
1)准备coco数据集 中的(数据集准备部分)
在准备coco数据集的过程中,我在Ubuntu下生成不了coco训练集的文件,一直会出现以下报错,无论是安装Pyside还是Qt5都解决不了这个问题,希望有大佬可以指点一下。

ubuntu18 Swin-Transformer-Object-Detection
于是我就转到win10下面生成
COCO API的Windows安装
有可能需要安装vs,不用怕麻烦,直接去网上找安装VS的教程,等待安装好就行,重启电脑后,COCO API安装会很顺利。
生成coco数据集的代码
生成的.json文件中,可能需要修改图片的地址

2) 修改changemaskrcnn.py中num_class并运行
3) 修改configs_base_\models\mask_rcnn_swin_fpn.py中num_classes
4) 修改configs_base_\default_runtime.py中interval,load_from
5) 修改configs\swin\mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_3x_coco.py中的max_epochs、lr
6) 修改configs_base_\datasets\coco_instance.py中samples_per_gpu和workers_per_gpu
7) 修改mmdet\datasets\coco.py中CLASSES
8) python tools/train.py configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_3x_coco.py
如果出现:
RuntimeError: cuda runtime error (30) : unknown error at /opt/conda/conda-bld/pytorch_160730172917/work/aten/Thc/THCBlas.cu:255
这种报错,直接运行

sudo python tools/train.py configs/swin/mask_rcnn_swin_tiny_patch4_window7_mstrain_480-800_adamw_3x_coco.py

9)测试模型:和 3、测试环境的命令相同,注意修改一些文件
随便打了一些标签的测试结果

ubuntu18 Swin-Transformer-Object-Detection

参考视频1
参考视频2

Original: https://blog.csdn.net/L_YXDE/article/details/121441145
Author: L_YXDE
Title: ubuntu18 Swin-Transformer-Object-Detection

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/686978/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球