【Python】使用Labelme标注自己的数据集并由json生成Ground Truth

本文使用labelme标注自己的数据集,生成json文件,用python脚本读取json文件,生成用于深度学习训练的Ground Truth图片。

安装labelme

1、打开anaconda prompt

2、激活环境conda activate pytorch18_gpu

3、安装labelme pip install labelme

4、在环境下输入:labelme 即可打开labelme。如下:

【Python】使用Labelme标注自己的数据集并由json生成Ground Truth_第1张图片

【Python】使用Labelme标注自己的数据集并由json生成Ground Truth_第2张图片

标注图片

以Google浏览器图标为例,用labelme将四个颜色的区域分别标记为1,2,3,4四个类别,保存输出json文档
【Python】使用Labelme标注自己的数据集并由json生成Ground Truth_第3张图片
考虑到篇幅,这里只保留1类别

{
  "version": "5.0.1",
  "flags": {},
  "shapes": [
    {
      "label": "1",
      "points": [
        [
          256.99999999999994,
          256.35135135135135
        ],
        [
          337.5405405405405,
          295.81081081081084
        ]
      ],
      "group_id": null,
      "shape_type": "circle",
      "flags": {}
    }
  ],
  "imagePath": "3b5cbfd9cad9f7113d34e50527260ef1.png",
  "imageData": "iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAYAAAD0eNT6AACE00lEQVR4nO39eXRc13Xgjf7OvbdGjARAcAIHUQRFUiQ1y7Isy7Imy5IST4pjx+l0p93d+b6401aelddfVl5Wr15ZWVn52lmWO0O/9NfdSSc9pB0/x0nbjiIqiiIr8iBZpkSJpEiKBGcSBECMNVed98ctkAWgABQKd6y7f2tJBApV++x9761z9tln73NAEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEARBEPxE+a2AIAjLc+qJ3YZSCsCo/jeLMe+t8/++KFprqjIboVL9b/5rC/6+7VuH579PEIQAIg6AIPjM0JN7agdtY95/AJ1a6y1KqR6gD9gGpIAkMACsrxHXD2yp/m0ZNCvoAs5U/5tlvPr7ZPX3U8A5IKe1HlJKDVdfr3UcZn+uiJMgCP4jDoAgeEDNID//v07sAXtb9d+t1X/XUzO4r3C23hBuyJwn9xK2UzAODAFnq/+eq/47TI1TgDgHguAp4gAIgsOcemK3pZSaHeAtrs/U92MP9DcCe1g4e1+UkDoAyzGOHUU4hu0UvAO8zfXIQgUoARWtdeWGbx8Rx0AQHEQcAEFYBUNP7rG4PtAbwIDWer9Saiewj+uDfgMh+cVxZbDWGvx1AJbiJHAYOAoc0lq/pZQ6B2SocQwkWiAIzSMOgCA0SDWMb1Ez2AN3c32g3wtsDMtsPQARgJXKHMd2CN4GfgC8jh05yHDdISg52rAgtDDiAAjCIswb8LuBncDtwPuAO4Ht9T4XmsE62BGARmVewHYIfgi8BrwFjGA7BCVxCARhccQBEIQqNQN+HDs5by/wQeA+7Bl+TyNywuIAaDTKhS7AZ/tz2EsHrwDfxY4SiEMgCHUQB0CINENP7oljD/ppYBfwCPaAfysNDvjzCYsD0CIRgOWodQj+BjiInWBYQOvSNkksFCKMOABCpKjO8uOApbXeqJR6EPgI9lr+RifaCNgA6KlMt+Q6KHMM2wk4oLV+USl1EphGogNC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",
  "imageHeight": 512,
  "imageWidth": 512
}

生成Ground Truth

import json
import os
import math
import numpy as np
import PIL.Image
import cv2
from labelme import utils
import glob


def shape_to_mask(img_shape, points, shape_type=None,
                  line_width=10, point_size=5):
    mask = np.zeros(img_shape[:2], dtype=np.uint8)
    mask = PIL.Image.fromarray(mask)
    draw = PIL.ImageDraw.Draw(mask)
    xy = [tuple(point) for point in points]
    if shape_type == 'circle':
        assert len(xy) == 2, 'Shape of shape_type=circle must have 2 points'
        (cx, cy), (px, py) = xy
        d = math.sqrt((cx - px) ** 2 + (cy - py) ** 2)
        draw.ellipse([cx - d, cy - d, cx + d, cy + d], outline=1, fill=1)
    elif shape_type == 'rectangle':
        assert len(xy) == 2, 'Shape of shape_type=rectangle must have 2 points'
        draw.rectangle(xy, outline=1, fill=1)
    elif shape_type == 'line':
        assert len(xy) == 2, 'Shape of shape_type=line must have 2 points'
        draw.line(xy=xy, fill=1, width=line_width)
    elif shape_type == 'linestrip':
        draw.line(xy=xy, fill=1, width=line_width)
    elif shape_type == 'point':
        assert len(xy) == 1, 'Shape of shape_type=point must have 1 points'
        cx, cy = xy[0]
        r = point_size
        draw.ellipse([cx - r, cy - r, cx + r, cy + r], outline=1, fill=1)
    else:
        assert len(xy) > 2, 'Polygon must have points more than 2'
        draw.polygon(xy=xy, outline=1, fill=1)
    mask = np.array(mask, dtype=bool)
    return mask


def _shapes_to_label_select(target, color, img_shape, shapes_data):
    cls = np.zeros(img_shape[:2], dtype=np.int32)
    for shape in shapes_data:
        points = shape['points']
        label = shape['label']
        if(int(label) == target):
            shape_type = shape.get('shape_type', None)
            mask = shape_to_mask(img_shape[:2], points, shape_type)
            cls[mask] = label
    cls = np.where(cls == target, color, 0)
    return cls


if __name__ == '__main__':
    
    # 输入输出路径
    json_data = r"D:\myfile\project\CSDN\1.json"
    output_img = r"D:\myfile\project\CSDN\img"
    output_mask = r"D:\myfile\project\CSDN\mask"

    file_name = json_data.split("\\")[-1]
    file_name = file_name.split(".json")[0]+".png"
    path_img = os.path.join(output_img, file_name)
    path_mask = os.path.join(output_mask, file_name)
    
    # 读取json
    data = json.load(open(json_data))
    imageData = data['imageData']
    source_img = utils.img_b64_to_arr(imageData)
    source_img = cv2.cvtColor(source_img, cv2.COLOR_RGB2BGR)

    # 输出mask
    mask1 = _shapes_to_label_select(1, 255, source_img.shape, data['shapes'])  
    mask2 = _shapes_to_label_select(2, 120, source_img.shape, data['shapes']) 
    mask3 = _shapes_to_label_select(3, 120, source_img.shape, data['shapes']) 
    mask4 = _shapes_to_label_select(4, 120, source_img.shape, data['shapes']) 
    # 并集
    combine_area = np.where(mask1 > 0, mask1, mask2)
    combine_area = np.where(combine_area > 0, combine_area, mask3)
    combine_area = np.where(combine_area > 0, combine_area, mask4)
    # 输出图像
    cv2.imwrite(path_img, source_img)
    cv2.imwrite(path_mask, combine_area)
    print(file_name, combine_area.shape)


输出结果中间圆形灰度值为255,外环灰度值为120
【Python】使用Labelme标注自己的数据集并由json生成Ground Truth_第4张图片

你可能感兴趣的:(python,开发语言,计算机视觉,json)