码迷,mamicode.com
首页 > 其他好文 > 详细

语义分割标注labelme图片处理过程

时间:2020-01-21 18:19:24      阅读:413      评论:0      收藏:0      [点我收藏+]

标签:sha   图片处理   count   asa   microsoft   merge   区域   一个   style   

过程(前提是labelme已经安装好)

1在终端输入:

技术图片

2点击左侧Open Dir选择需要标注的数据文件夹

3制作图像分割的数据,选择多边形,点击左侧的 create polygons ,回到图片,按下鼠标左键会生成一个点,完成标注后会形成一个标注区域,同时弹出labelme的框,键入标签名字,点击 OK或者回车完成标注。

技术图片

 

4标注完成后,点击save保存成同名的.json文件,然后在终端输入:

技术图片

  会生成json文件夹,里面有五个文件,其中label.png和info.yaml使我们需要的

5图片变化的过程:

 技术图片

 

 merge.py

#!/usr/bin/env python3
# -*- coding: utf-8 -*-

import cv2
import gdal

input_file_path = "mayd.tif"
output_file_path = "mayd_new.png"

dataset = gdal.Open(input_file_path)

im_width = dataset.RasterXSize
im_height = dataset.RasterYSize
im_bands = dataset.RasterCount

im = dataset.ReadAsArray(0,0,im_width,im_height)

print("before merge:",im.shape)

b = im[0,:,:]
g = im[1,:,:]
r = im[2,:,:]

merged = cv2.merge([b,g,r])

print("after merge:",merged.shape)

cv2.imwrite(output_file_path,merged)

whi_bla.py文件

#!/usr/bin/env python3
# -*- coding: utf-8 -*-


import cv2
import numpy as np

def whi_bla(color,img):
    print(img.shape)
    img_ = np.zeros([img.shape[0],img.shape[1]])
    for i in range(img.shape[0]):
        for j in range(img.shape[1]):
            if img[i,j,0]==color[0] and img[i,j,1]==color[1] and img[i,j,2]==color[2]:
                img_[i,j]=255
            else:
                img_[i,j]=0
        print(i, is ok)
    return img_

if __name__=="__main__":
    img = cv2.imread("label7.png")
    print(img.shape)
    color = [0,0,128]                 #根据具体的图像设置color的值,bgr
    img_ = whi_bla(color,img)
    print(img_.shape)
    cv2.imwrite("7_0.png",img_)

 

为了防止自己再次忘记,所以把过程写下来,我写的这个是按着自己的情况来的,仅供参考,不具有普遍性。

 

语义分割标注labelme图片处理过程

标签:sha   图片处理   count   asa   microsoft   merge   区域   一个   style   

原文地址:https://www.cnblogs.com/loyolh/p/12222305.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!