labelme输出16位图片转8位图片

需要将labelme的16位输出结果图片,转化为opencv可以读取的8位图片。
在根目录下建立几个文件夹,存储数据。
labelme_json:存放各json经 labelme_json_to_dataset 转化后的输出结果
cv2_mask:存放输出结果
labelme输出16位图片转8位图片_第1张图片在根目录文件夹下建一个 cv2_16to8.py
内容如下

#!/usr/bin/env python
# _*_ coding: UTF-8 _*_
import os
import cv2
import natsort
import numpy as np
from skimage import io
input_file = "labelme_json/" 
out_file = "cv2_mask/"
img_type = ".png"

for root, dirs, files in os.walk(input_file,topdown=True):
    for name in natsort.natsorted(dirs):
        file_name = os.path.join(input_file + name,"label_viz" + img_type)
        img = io.imread(file_name) 
        img = img.astype(np.uint8)
        cv2.imwrite(os.path.join(out_file ,name + img_type),img)

在终端打开运行,即得输出结果

labelme输出16位图片转8位图片_第2张图片

你可能感兴趣的:(格式转换,opencv,计算机视觉,深度学习)