From e9e350eef16b77f22d9b8244f0edaa66afa0a9ff Mon Sep 17 00:00:00 2001 From: Erli Ouyang Date: Fri, 11 Nov 2022 10:23:48 +0800 Subject: [PATCH 1/2] Update iou_neg_piecewise_sampler.py --- .../task_modules/samplers/iou_neg_piecewise_sampler.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/mmdet3d/models/task_modules/samplers/iou_neg_piecewise_sampler.py b/mmdet3d/models/task_modules/samplers/iou_neg_piecewise_sampler.py index 0f17ff7298..9f0cc894b1 100644 --- a/mmdet3d/models/task_modules/samplers/iou_neg_piecewise_sampler.py +++ b/mmdet3d/models/task_modules/samplers/iou_neg_piecewise_sampler.py @@ -1,4 +1,5 @@ # Copyright (c) OpenMMLab. All rights reserved. +import math import torch from mmdet3d.registry import TASK_UTILS @@ -74,9 +75,11 @@ def _sample_neg(self, assign_result, num_expected, **kwargs): # if the numbers of negative samplers in previous # pieces are less than the expected number, extend # the same number in the current piece. - piece_expected_num = int( - num_expected * - self.neg_piece_fractions[piece_inds]) + extend_num + piece_expected_num = min( + num_expected, + math.ceil( + num_expected * + self.neg_piece_fractions[piece_inds]) + extend_num) min_iou_thr = self.neg_iou_thr[piece_inds + 1] max_iou_thr = self.neg_iou_thr[piece_inds] piece_neg_inds = torch.nonzero( From a64c6a59da8810105818af0c32245d2734b17c1e Mon Sep 17 00:00:00 2001 From: JingweiZhang12 Date: Tue, 15 Nov 2022 10:35:14 +0800 Subject: [PATCH 2/2] fix lint --- .../task_modules/samplers/iou_neg_piecewise_sampler.py | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/mmdet3d/models/task_modules/samplers/iou_neg_piecewise_sampler.py b/mmdet3d/models/task_modules/samplers/iou_neg_piecewise_sampler.py index 9f0cc894b1..c249471052 100644 --- a/mmdet3d/models/task_modules/samplers/iou_neg_piecewise_sampler.py +++ b/mmdet3d/models/task_modules/samplers/iou_neg_piecewise_sampler.py @@ -1,5 +1,6 @@ # Copyright (c) OpenMMLab. All rights reserved. import math + import torch from mmdet3d.registry import TASK_UTILS @@ -77,9 +78,9 @@ def _sample_neg(self, assign_result, num_expected, **kwargs): # the same number in the current piece. piece_expected_num = min( num_expected, - math.ceil( - num_expected * - self.neg_piece_fractions[piece_inds]) + extend_num) + math.ceil(num_expected * + self.neg_piece_fractions[piece_inds]) + + extend_num) min_iou_thr = self.neg_iou_thr[piece_inds + 1] max_iou_thr = self.neg_iou_thr[piece_inds] piece_neg_inds = torch.nonzero(