# MMdetection算例测试 ## 测试前准备 ### 数据集准备 使用coco数据集,放在./data下. ### 环境部署 ```python yum install python3 yum install libquadmath yum install numactl yum install openmpi3 yum install glog yum install lmdb-libs yum install opencv-core yum install opencv yum install openblas-serial pip3 install --upgrade pip pip3 install opencv-python ``` ### 安装python依赖包 ```python pip3 install torch-1.10.0a0+gitcc7c9c7-cp36-cp36m-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple pip3 install torchvision-0.10.0a0+300a8a4-cp36-cp36m-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple pip3 install mmcv_full-1.3.16-cp36-cp36m-linux_x86_64.whl -i https://pypi.tuna.tsinghua.edu.cn/simple mmdet 安装: cd mmdetection pip3 install -e ``` 注:测试不同版本的dtk,需安装对应版本的库whl包,dtk22.04.1使用python3.7,dtk21.10.1使用python3.6 ## Faster-Rcnn测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py ``` 若使用dtk22.04.1测试,需设置`export MIOPEN_FIND_MODE=1,export MIOPEN_USE_APPROXIMATE_PERFORMANCE=0`以下测试均相同. #### 参数说明 configs/_base_/datasets/coco_detection.py 中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659163369453](image/train/1659163369453.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py ``` ### 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/faster_rcnn_r50_fpn_fp16_1x_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/faster_rcnn_r50_fpn_fp16_1x_coco.py ``` ## Mask-Rcnn测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/mask_rcnn/mask_rcnn_r50_caffe_fpn_mstrain-poly_1x_coco.py ``` #### 参数说明 configs/_base_/datasets/coco_instance.py 中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659164315340](image/train/1659164315340.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/mask_rcnn/mask_rcnn_r50_caffe_fpn_mstrain-poly_1x_coco.py ``` ### 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/mask_rcnn_r50_caffe_fpn_mstrain-poly_1x_fp16_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/mask_rcnn_r50_caffe_fpn_mstrain-poly_1x_fp16_coco.py ``` ## Double-Heads测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/double_heads/dh_faster_rcnn_r50_fpn_1x_coco.py ``` #### 参数说明 configs/_base_/datasets/coco_detection.py 中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659164497462](image/train/1659164497462.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/double_heads/dh_faster_rcnn_r50_fpn_1x_coco.py ``` ### 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/dh_faster_rcnn_r50_fpn_1x_fp16_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/dh_faster_rcnn_r50_fpn_1x_fp16_coco.py ``` ## Cascade-Mask-Rcnn测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/cascade_rcnn/cascade_mask_rcnn_r50_fpn_1x_coco.py ``` #### 参数说明 configs/_base_/datasets/coco_instance.py 中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659165101880](image/train/1659165101880.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/cascade_rcnn/cascade_mask_rcnn_r50_fpn_1x_coco.py ``` ### 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/cascade_mask_rcnn_r50_fpn_1x_fp16_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/cascade_mask_rcnn_r50_fpn_1x_fp16_coco.py ``` ## ResNest测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/resnest/mask_rcnn_s50_fpn_syncbn-backbone+head_mstrain_1x_coco.py ``` #### 参数说明 configs/_base_/datasets/coco_instance.py 中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659165209670](image/train/1659165209670.png) 单卡测试需将type='SyncBN'改为BN: ![1659165231678](image/train/1659165231678.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/resnest/mask_rcnn_s50_fpn_syncbn-backbone+head_mstrain_1x_coco.py ``` ### 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/mask_rcnn_s50_fpn_syncbn-backbone+head_mstrain_1x_fp16_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/mask_rcnn_s50_fpn_syncbn-backbone+head_mstrain_1x_fp16_coco.py ``` ## Dcn测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/dcn/faster_rcnn_r50_fpn_mdpool_1x_coco.py ``` #### 参数说明 configs/_base_/datasets/coco_detection.py 中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659165385359](image/train/1659165385359.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/dcn/faster_rcnn_r50_fpn_mdpool_1x_coco.py ``` ### 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/faster_rcnn_r50_fpn_mdpool_1x_fp16_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/faster_rcnn_r50_fpn_mdpool_1x_fp16_coco.py ``` ## RetinaNet测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/retinanet/retinanet_r50_caffe_fpn_1x_coco.py ``` #### 参数说明 configs/_base_/datasets/coco_detection.py 中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659165489693](image/train/1659165489693.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/retinanet/retinanet_r50_caffe_fpn_1x_coco.py ``` ### 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/retinanet_r50_caffe_fpn_1x_fp16_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/retinanet_r50_caffe_fpn_1x_fp16_coco.py ``` ## VfNet测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/vfnet/vfnet_r50_fpn_1x_coco.py ``` #### 参数说明 configs/vfnet/vfnet_r50_fpn_1x_coco.py中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659165606806](image/train/1659165606806.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/vfnet/vfnet_r50_fpn_1x_coco.p ``` ### 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/vfnet_r50_fpn_1x_fp16_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/vfnet_r50_fpn_1x_fp16_coco.py ``` ## Ssd测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/ssd/ssd300_coco.py ``` #### 参数说明 configs/ssd/ssd300_coco.py中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659165721407](image/train/1659165721407.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/ssd/ssd300_coco.py ``` ## 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/ssd300_fp16_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/ssd300_fp16_coco.py ``` ## Yolov3测试 ### 单卡测试(单精度) ```python ./sing_test.sh configs/yolo/yolov3_d53_mstrain-416_273e_coco.py ``` #### 参数说明 configs/yolo/yolov3_d53_mstrain-608_273e_coco.py中batch_size=samples_per_gpu*卡数,性能计算方法:batch_size/time ![1659166259835](image/train/1659166259835.png) #### 性能关注:time ### 多卡测试(单精度) ```python ./multi_test.sh configs/yolo/yolov3_d53_mstrain-416_273e_coco.py ``` ## 单卡测试(半精度) ```python ./sing_test.sh configs/fp16/yolov3_d53_mstrain-416_273e_fp16_coco.py ``` ### 多卡测试(半精度) ```python ./multi_test.sh configs/fp16/yolov3_d53_mstrain-416_273e_fp16_coco.py ```