Skip to content

Commit 6e91614

Browse files
authored
CodeCamp #102: support SOLO deployment with OpenVINO (#1454)
* feat: support solo mmdet3.x openvino 2.0 api * feat: support solo mmdet3.x openvino * fix: lint * fix: add solo head test * docs: add supported_modesl * docs: add supported_models * fix: fix unreasonable code * fix: fix ci failed * feat: add linspace func rewrite * fix: fix unreasonable rewrite linspace__onnx * fix: change func name from __onnx to __default * feat: add solo test regression
1 parent aaa880e commit 6e91614

File tree

20 files changed

+533
-29
lines changed

20 files changed

+533
-29
lines changed

docs/en/03-benchmark/benchmark.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -638,6 +638,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
638638
<th align="center" colspan="3">TensorRT</th>
639639
<th align="center">PPLNN</th>
640640
<th align="center">Ascend</th>
641+
<th algin="center">OpenVINO</th>
641642
</tr>
642643
</thead>
643644
<tbody>
@@ -654,6 +655,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
654655
<td align="center">int8</td>
655656
<td align="center">fp16</td>
656657
<td align="center">fp32</td>
658+
<td align="center">fp32</td>
657659
</tr>
658660
<tr>
659661
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/yolo/yolov3_d53_320_273e_coco.py">YOLOV3</a></td>
@@ -668,6 +670,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
668670
<td align="center">33.5</td>
669671
<td align="center">-</td>
670672
<td align="center">-</td>
673+
<td align="center">-</td>
671674
</tr>
672675
<tr>
673676
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/ssd/ssd300_coco.py">SSD</a></td>
@@ -682,6 +685,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
682685
<td align="center">-</td>
683686
<td align="center">-</td>
684687
<td align="center">-</td>
688+
<td align="center">-</td>
685689
</tr>
686690
<tr>
687691
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/retinanet/retinanet_r50_fpn_1x_coco.py">RetinaNet</a></td>
@@ -696,6 +700,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
696700
<td align="center">36.3</td>
697701
<td align="center">36.5</td>
698702
<td align="center">36.4</td>
703+
<td align="center">-</td>
699704
</tr>
700705
<tr>
701706
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/fcos/fcos_r50_caffe_fpn_gn-head_1x_coco.py">FCOS</a></td>
@@ -710,6 +715,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
710715
<td align="center">-</td>
711716
<td align="center">-</td>
712717
<td align="center">-</td>
718+
<td align="center">-</td>
713719
</tr>
714720
<tr>
715721
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/fsaf/fsaf_r50_fpn_1x_coco.py">FSAF</a></td>
@@ -724,6 +730,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
724730
<td align="center">37.2</td>
725731
<td align="center">37.4</td>
726732
<td align="center">-</td>
733+
<td align="center">-</td>
727734
</tr>
728735
<tr>
729736
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/3.x/configs/centernet/centernet_r18_8xb16-crop512-140e_coco.py">CenterNet</a></td>
@@ -738,6 +745,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
738745
<td align="center">-</td>
739746
<td align="center">-</td>
740747
<td align="center">-</td>
748+
<td align="center">-</td>
741749
</tr>
742750
<tr>
743751
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/yolox/yolox_s_8x8_300e_coco.py">YOLOX</a></td>
@@ -752,6 +760,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
752760
<td align="center">29.3</td>
753761
<td align="center">-</td>
754762
<td align="center">-</td>
763+
<td align="center">-</td>
755764
</tr>
756765
<tr>
757766
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py">Faster R-CNN</a></td>
@@ -766,6 +775,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
766775
<td align="center">37.1</td>
767776
<td align="center">37.3</td>
768777
<td align="center">37.2</td>
778+
<td align="center">-</td>
769779
</tr>
770780
<tr>
771781
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/atss/atss_r50_fpn_1x_coco.py">ATSS</a></td>
@@ -780,6 +790,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
780790
<td align="center">-</td>
781791
<td align="center">-</td>
782792
<td align="center">-</td>
793+
<td align="center">-</td>
783794
</tr>
784795
<tr>
785796
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/cascade_rcnn/cascade_rcnn_r50_caffe_fpn_1x_coco.py">Cascade R-CNN</a></td>
@@ -794,6 +805,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
794805
<td align="center">-</td>
795806
<td align="center">40.4</td>
796807
<td align="center">-</td>
808+
<td align="center">-</td>
797809
</tr>
798810
<tr>
799811
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/gfl/gfl_r50_fpn_1x_coco.py">GFL</a></td>
@@ -808,6 +820,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
808820
<td align="center">-</td>
809821
<td align="center">-</td>
810822
<td align="center">-</td>
823+
<td align="center">-</td>
811824
</tr>
812825
<tr>
813826
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/reppoints/reppoints_moment_r50_fpn_1x_coco.py">RepPoints</a></td>
@@ -822,6 +835,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
822835
<td align="center">-</td>
823836
<td align="center">-</td>
824837
<td align="center">-</td>
838+
<td align="center">-</td>
825839
</tr>
826840
<tr>
827841
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/detr/detr_r50_8x2_150e_coco.py">DETR</a></td>
@@ -835,6 +849,8 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
835849
<td align="center">40.1</td>
836850
<td align="center">-</td>
837851
<td align="center">-</td>
852+
<td align="center">-</td>
853+
<td align="center">-</td>
838854
</tr>
839855
<tr>
840856
<td align="center" rowspan="2"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/mask_rcnn/mask_rcnn_r50_fpn_1x_coco.py">Mask R-CNN</a></td>
@@ -849,6 +865,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
849865
<td align="center">-</td>
850866
<td align="center">38.0</td>
851867
<td align="center">-</td>
868+
<td align="center">-</td>
852869
</tr>
853870
<tr>
854871
<td align="center">mask AP</td>
@@ -860,6 +877,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
860877
<td align="center">-</td>
861878
<td align="center">-</td>
862879
<td align="center">-</td>
880+
<td align="center">-</td>
863881
</tr>
864882
<tr>
865883
<td align="center" rowspan="2"><a href="https://github.com/open-mmlab/mmdetection/blob/master/configs/swin/mask_rcnn_swin-t-p4-w7_fpn_1x_coco.py">Swin-Transformer</a></td>
@@ -874,6 +892,7 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
874892
<td align="center">-</td>
875893
<td align="center">-</td>
876894
<td align="center">-</td>
895+
<td align="center">-</td>
877896
</tr>
878897
<tr>
879898
<td align="center">mask AP</td>
@@ -885,6 +904,22 @@ Users can directly test the performance through [how_to_evaluate_a_model.md](../
885904
<td align="center">-</td>
886905
<td align="center">-</td>
887906
<td align="center">-</td>
907+
<td align="center">-</td>
908+
</tr>
909+
<tr>
910+
<td align="center" rowspan="2"><a href="https://github.com/open-mmlab/mmdetection/tree/3.x/configs/solo">SOLO</a></td>
911+
<td align="center" rowspan="2">Instance Segmentation</td>
912+
<td align="center" rowspan="2">COCO2017</td>
913+
<td align="center">mask AP</td>
914+
<td align="center">33.1</td>
915+
<td align="center">-</td>
916+
<td align="center">-</td>
917+
<td align="center">-</td>
918+
<td align="center">-</td>
919+
<td align="center">-</td>
920+
<td align="center">-</td>
921+
<td align="center">-</td>
922+
<td align="center">32.7</td>
888923
</tr>
889924
</tbody>
890925
</table>

docs/en/03-benchmark/supported_models.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@ The table below lists the models that are guaranteed to be exportable to other b
2222
| [RepPoints](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/reppoints) | MMDetection | N | N | Y | N | ? | Y | N | N |
2323
| [DETR](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/detr) | MMDetection | N | Y | Y | N | ? | N | N | N |
2424
| [CenterNet](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/centernet) | MMDetection | N | Y | Y | N | ? | N | N | N |
25+
| [SOLO](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/solo) | MMDetection | N | N | N | N | N | Y | N | N |
2526
| [ResNet](https://github.com/open-mmlab/mmclassification/tree/1.x/configs/resnet) | MMClassification | Y | Y | Y | Y | Y | Y | Y | Y |
2627
| [ResNeXt](https://github.com/open-mmlab/mmclassification/tree/1.x/configs/resnext) | MMClassification | Y | Y | Y | Y | Y | Y | Y | Y |
2728
| [SE-ResNet](https://github.com/open-mmlab/mmclassification/tree/1.x/configs/seresnet) | MMClassification | Y | Y | Y | Y | Y | Y | Y | Y |

docs/en/04-supported-codebases/mmdet.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -210,3 +210,4 @@ Besides python API, mmdeploy SDK also provides other FFI (Foreign Function Inter
210210
| [Cascade Mask R-CNN](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/cascade_rcnn) | Instance Segmentation | Y | N | N | N | Y |
211211
| [Mask R-CNN](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/mask_rcnn) | Instance Segmentation | Y | Y | N | N | Y |
212212
| [Swin Transformer](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/swin) | Instance Segmentation | Y | Y | N | N | N |
213+
| [SOLO](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/solo) | Instance Segmentation | N | N | N | N | Y |

docs/zh_cn/03-benchmark/benchmark.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -633,6 +633,7 @@ GPU: ncnn, TensorRT, PPLNN
633633
<th align="center" colspan="3">TensorRT</th>
634634
<th align="center">PPLNN</th>
635635
<th align="center">Ascend</th>
636+
<th algin="center">OpenVINO</th>
636637
</tr>
637638
</thead>
638639
<tbody>
@@ -649,6 +650,7 @@ GPU: ncnn, TensorRT, PPLNN
649650
<td align="center">int8</td>
650651
<td align="center">fp16</td>
651652
<td align="center">fp32</td>
653+
<td align="center">fp32</td>
652654
</tr>
653655
<tr>
654656
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/yolo/yolov3_d53_320_273e_coco.py">YOLOV3</a></td>
@@ -663,6 +665,7 @@ GPU: ncnn, TensorRT, PPLNN
663665
<td align="center">33.5</td>
664666
<td align="center">-</td>
665667
<td align="center">-</td>
668+
<td align="center">-</td>
666669
</tr>
667670
<tr>
668671
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/ssd/ssd300_coco.py">SSD</a></td>
@@ -677,6 +680,7 @@ GPU: ncnn, TensorRT, PPLNN
677680
<td align="center">-</td>
678681
<td align="center">-</td>
679682
<td align="center">-</td>
683+
<td align="center">-</td>
680684
</tr>
681685
<tr>
682686
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/retinanet/retinanet_r50_fpn_1x_coco.py">RetinaNet</a></td>
@@ -691,6 +695,7 @@ GPU: ncnn, TensorRT, PPLNN
691695
<td align="center">36.3</td>
692696
<td align="center">36.5</td>
693697
<td align="center">36.4</td>
698+
<td align="center">-</td>
694699
</tr>
695700
<tr>
696701
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/fcos/fcos_r50_caffe_fpn_gn-head_1x_coco.py">FCOS</a></td>
@@ -705,6 +710,7 @@ GPU: ncnn, TensorRT, PPLNN
705710
<td align="center">-</td>
706711
<td align="center">-</td>
707712
<td align="center">-</td>
713+
<td align="center">-</td>
708714
</tr>
709715
<tr>
710716
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/fsaf/fsaf_r50_fpn_1x_coco.py">FSAF</a></td>
@@ -719,6 +725,7 @@ GPU: ncnn, TensorRT, PPLNN
719725
<td align="center">37.2</td>
720726
<td align="center">37.4</td>
721727
<td align="center">-</td>
728+
<td align="center">-</td>
722729
</tr>
723730
<tr>
724731
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/3.x/configs/centernet/centernet_r18_8xb16-crop512-140e_coco.py">CenterNet</a></td>
@@ -733,6 +740,7 @@ GPU: ncnn, TensorRT, PPLNN
733740
<td align="center">-</td>
734741
<td align="center">-</td>
735742
<td align="center">-</td>
743+
<td align="center">-</td>
736744
</tr>
737745
<tr>
738746
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/yolox/yolox_s_8x8_300e_coco.py">YOLOX</a></td>
@@ -747,6 +755,7 @@ GPU: ncnn, TensorRT, PPLNN
747755
<td align="center">29.3</td>
748756
<td align="center">-</td>
749757
<td align="center">-</td>
758+
<td align="center">-</td>
750759
</tr>
751760
<tr>
752761
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/faster_rcnn/faster_rcnn_r50_fpn_1x_coco.py">Faster R-CNN</a></td>
@@ -761,6 +770,7 @@ GPU: ncnn, TensorRT, PPLNN
761770
<td align="center">37.1</td>
762771
<td align="center">37.3</td>
763772
<td align="center">37.2</td>
773+
<td align="center">-</td>
764774
</tr>
765775
<tr>
766776
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/atss/atss_r50_fpn_1x_coco.py">ATSS</a></td>
@@ -775,6 +785,7 @@ GPU: ncnn, TensorRT, PPLNN
775785
<td align="center">-</td>
776786
<td align="center">-</td>
777787
<td align="center">-</td>
788+
<td align="center">-</td>
778789
</tr>
779790
<tr>
780791
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/cascade_rcnn/cascade_rcnn_r50_caffe_fpn_1x_coco.py">Cascade R-CNN</a></td>
@@ -789,6 +800,7 @@ GPU: ncnn, TensorRT, PPLNN
789800
<td align="center">-</td>
790801
<td align="center">40.4</td>
791802
<td align="center">-</td>
803+
<td align="center">-</td>
792804
</tr>
793805
<tr>
794806
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/gfl/gfl_r50_fpn_1x_coco.py">GFL</a></td>
@@ -803,6 +815,7 @@ GPU: ncnn, TensorRT, PPLNN
803815
<td align="center">-</td>
804816
<td align="center">-</td>
805817
<td align="center">-</td>
818+
<td align="center">-</td>
806819
</tr>
807820
<tr>
808821
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/reppoints/reppoints_moment_r50_fpn_1x_coco.py">RepPoints</a></td>
@@ -817,6 +830,7 @@ GPU: ncnn, TensorRT, PPLNN
817830
<td align="center">-</td>
818831
<td align="center">-</td>
819832
<td align="center">-</td>
833+
<td align="center">-</td>
820834
</tr>
821835
<tr>
822836
<td align="center"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/detr/detr_r50_8x2_150e_coco.py">DETR</a></td>
@@ -830,6 +844,8 @@ GPU: ncnn, TensorRT, PPLNN
830844
<td align="center">40.1</td>
831845
<td align="center">-</td>
832846
<td align="center">-</td>
847+
<td align="center">-</td>
848+
<td align="center">-</td>
833849
</tr>
834850
<tr>
835851
<td align="center" rowspan="2"><a href="https://github.com/open-mmlab/mmdetection/tree/master/configs/mask_rcnn/mask_rcnn_r50_fpn_1x_coco.py">Mask R-CNN</a></td>
@@ -844,6 +860,7 @@ GPU: ncnn, TensorRT, PPLNN
844860
<td align="center">-</td>
845861
<td align="center">38.0</td>
846862
<td align="center">-</td>
863+
<td align="center">-</td>
847864
</tr>
848865
<tr>
849866
<td align="center">mask AP</td>
@@ -855,6 +872,7 @@ GPU: ncnn, TensorRT, PPLNN
855872
<td align="center">-</td>
856873
<td align="center">-</td>
857874
<td align="center">-</td>
875+
<td align="center">-</td>
858876
</tr>
859877
<tr>
860878
<td align="center" rowspan="2"><a href="https://github.com/open-mmlab/mmdetection/blob/master/configs/swin/mask_rcnn_swin-t-p4-w7_fpn_1x_coco.py">Swin-Transformer</a></td>
@@ -869,6 +887,7 @@ GPU: ncnn, TensorRT, PPLNN
869887
<td align="center">-</td>
870888
<td align="center">-</td>
871889
<td align="center">-</td>
890+
<td align="center">-</td>
872891
</tr>
873892
<tr>
874893
<td align="center">mask AP</td>
@@ -880,6 +899,22 @@ GPU: ncnn, TensorRT, PPLNN
880899
<td align="center">-</td>
881900
<td align="center">-</td>
882901
<td align="center">-</td>
902+
<td align="center">-</td>
903+
</tr>
904+
<tr>
905+
<td align="center" rowspan="2"><a href="https://github.com/open-mmlab/mmdetection/tree/3.x/configs/solo">SOLO</a></td>
906+
<td align="center" rowspan="2">Instance Segmentation</td>
907+
<td align="center" rowspan="2">COCO2017</td>
908+
<td align="center">mask AP</td>
909+
<td align="center">33.1</td>
910+
<td align="center">-</td>
911+
<td align="center">-</td>
912+
<td align="center">-</td>
913+
<td align="center">-</td>
914+
<td align="center">-</td>
915+
<td align="center">-</td>
916+
<td align="center">-</td>
917+
<td align="center">32.7</td>
883918
</tr>
884919
</tbody>
885920
</table>

docs/zh_cn/03-benchmark/supported_models.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
| [RepPoints](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/reppoints) | MMDetection | N | N | Y | N | ? | Y | N | N |
2323
| [DETR](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/detr) | MMDetection | N | Y | Y | N | ? | N | N | N |
2424
| [CenterNet](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/centernet) | MMDetection | N | Y | Y | N | ? | N | N | N |
25+
| [SOLO](https://github.com/open-mmlab/mmdetection/tree/3.x/configs/solo) | MMDetection | N | N | N | N | N | Y | N | N |
2526
| [ResNet](https://github.com/open-mmlab/mmclassification/tree/1.x/configs/resnet) | MMClassification | Y | Y | Y | Y | Y | Y | Y | Y |
2627
| [ResNeXt](https://github.com/open-mmlab/mmclassification/tree/1.x/configs/resnext) | MMClassification | Y | Y | Y | Y | Y | Y | Y | Y |
2728
| [SE-ResNet](https://github.com/open-mmlab/mmclassification/tree/1.x/configs/seresnet) | MMClassification | Y | Y | Y | Y | Y | Y | Y | Y |

0 commit comments

Comments
 (0)