From 458ffc14caafbd53995b1664a773cb6df141d7e5 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Haian=20Huang=28=E6=B7=B1=E5=BA=A6=E7=9C=B8=29?= <1286304229@qq.com> Date: Mon, 26 Apr 2021 15:49:26 +0800 Subject: [PATCH] Fix empty bbox error in mask_head of carafe (#5062) * Fix empty bbox error in mask_head of carafe * add onnx error tips --- mmdet/models/roi_heads/test_mixins.py | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/mmdet/models/roi_heads/test_mixins.py b/mmdet/models/roi_heads/test_mixins.py index 78a092a431a..7deaa1d7232 100644 --- a/mmdet/models/roi_heads/test_mixins.py +++ b/mmdet/models/roi_heads/test_mixins.py @@ -254,6 +254,14 @@ def simple_test_mask(self, ori_shapes = tuple(meta['ori_shape'] for meta in img_metas) scale_factors = tuple(meta['scale_factor'] for meta in img_metas) + if all(det_bbox.shape[0] == 0 for det_bbox in det_bboxes): + if torch.onnx.is_in_onnx_export(): + raise RuntimeError('[ONNX Error] Can not record MaskHead ' + 'as it has not been executed this time') + segm_results = [[[] for _ in range(self.mask_head.num_classes)] + for _ in range(len(det_bboxes))] + return segm_results + # The length of proposals of different batches may be different. # In order to form a batch, a padding operation is required. if isinstance(det_bboxes, list):