02.图像分割中将掩码转换为坐标点的方法(多目标)

场景

图像分割中,模型输出二值掩码图,转化为目标轮廓的xy坐标点对集合(一张掩码图对应多个目标)

实现

import numpy as np
from imantics import Mask
def mask2polygons(mask):
    output = []
    polygons_list = (Mask(mask).polygons()).points
    for polygons in polygons_list:
        saved_length = 40 if len(polygons) > 300 else 30 if len(polygons) > 200 else 20 \
                          if len(polygons) > 100 else 10 if len(polygons) > 50 else 0 \
                          if len(polygons) > 30 else 1
        polygons = np.concatenate((polygons[::saved_length],polygons[-1:]))
        output.append(polygons.tolist())
    return output
    
    

你可能感兴趣的:(目标检测,计算机视觉,人工智能)