目标检测标签(坐标)转换

不同的标注格式


目标检测的标签格式有XML,TXT,JSON等;

目标检测的坐标格式有:

  • VOC(XML)格式:
    (Xmin,Ymin,Xmax,Ymax),分别代表左上角和右下角的两个坐标;
  • YOLO(TXT)格式:
    (Xcenter,Ycenter,W,H),其中x,y,w,h为归一化后的数值,分别代表中心点坐标和宽、高;
  • COCO(JSON)格式:
    (Xmin, Ymin, W, H),其中x,y,w,h均不是归一化后的数值,分别代表左上角坐标和宽、高;

坐标格式转换


(Xmin,Ymin,Xmax,Ymax)–>(X,Y,W,H)

def convert(size, box):
    dw = 1./size[0]
    dh = 1./size[1]
    x = (box[0] + box[2])/2.0
    y = (box[1] + box[3])/2.0
    w = box[2] - box[0]
    h = box[3] - box[1]
    x = x*dw
    w = w*dw
    y = y*dh
    h = h*dh
    return (x,y,w,h)

(Xmin,Ymin,W,H)–>(X,Y,W,H)

def convert(size, box):
    dw = 1./size[0]
    dh = 1./size[1]
    x = box[0] + box[2]/2.0
    y = box[1] + box[3]/2.0
    w = box[2]
    h = box[3]
    x = x*dw
    w = w*dw
    y = y*dh
    h = h*dh
    return (x,y,w,h)

标签格式转换


参考:https://github.com/ssaru/convert2Yolo

支持各种格式

你可能感兴趣的:(目标检测)