Как предотвратить наложение в карте сегментации? - PullRequest
0 голосов
/ 23 сентября 2019

Я использую Mask_RCNN в моем проекте, чтобы сегментировать части устройства.Он работает нормально, за исключением того факта, что выходные данные (карта сегментации) имеют перекрывающиеся области, что создает огромные проблемы позже в конвейере, который я имею.Смотрите изображение ниже для справки.Там, например, круг (оранжевый диск) перекрывается с ридером (фиолетовый).

segmentation_map

Другими словами, я хотел бы иметь карты сегментации без перекрывающихся сегментов.Кто-нибудь использовал Mask_RCNN для задач сегментации?Поскольку он работает на основе региональных предложений, я немного запутался в подходе к проблеме.Как мы можем гарантировать, что каждый обнаруженный экземпляр будет иметь свои пиксели от самого себя, а не от других экземпляров?Как мы можем сделать сегменты уникальными?

# Compute overlaps [rpn_rois, gt_boxes]
overlaps = np.zeros((rpn_rois.shape[0], gt_boxes.shape[0]))
for i in range(overlaps.shape[1]):
    gt = gt_boxes[i]
    overlaps[:, i] = utils.compute_iou(
        gt, rpn_rois, gt_box_area[i], rpn_roi_area)

Я заглянул в код и увидел, что есть даже комментарий с упоминаниями о перекрытиях.Однако я не мог понять, что именно нужно там изменить, чтобы избежать перекрытий.Не может быть просто удалить весь раздел кода.

Может ли кто-нибудь помочь мне в этом отношении?

PS: я спрашивал об этом там, но не получил ответа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...