JSON文件转换为图片
from __future__ import print_function
import argparse
import glob
import math
import json
import os
import os.path as osp
import shutil
import numpy as np
import PIL.Image
import PIL.ImageDraw
import cv2
def json2png(json_folder, png_save_folder):
if osp.isdir(png_save_folder):
shutil.rmtree(png_save_folder)
os.makedirs(png_save_folder)
json_files = os.listdir(json_folder)
for json_file in json_files:
json_path = osp.join(json_folder, json_file)
os.system("labelme_json_to_dataset {}".format(json_path))
label_path = osp.join(json_folder, json_file.split(".")[0] + "_json/label.png")
png_save_path = osp.join(png_save_folder, json_file.split(".")[0] + ".png")
label_png = cv2.imread(label_path, 0)
label_png[label_png > 0] = 255
cv2.imwrite(png_save_path, label_png)
if __name__ == '__main__':
json2png(json_folder="testdata/jsons/", png_save_folder="testdata/labels/")
红色图像转换为黑白的二值图像
import os.path as osp
import shutil
import os
from tqdm import tqdm
import cv2
def gt2png(folder_path="C:/Users/chenmingsong/Desktop/unetnnn/data/Training_GT", save_folder="C:/Users/chenmingsong/Desktop/unetnnn/data/Training_Labels"):
if osp.isdir(save_folder):
shutil.rmtree(save_folder)
os.makedirs(save_folder)
else:
os.makedirs(save_folder)
images = os.listdir(folder_path)
with tqdm(total=len(images)) as pbar:
for image in images:
image_name = image.split(".")[0]
src_path = osp.join(folder_path, image)
img = cv2.imread(src_path, 0)
img[img > 0] = 255
save_path = osp.join(save_folder, image_name + ".png")
cv2.imwrite(save_path, img)
pbar.update(1)
print("label convert done")
if __name__ == '__main__':
gt2png()