windows安装labelme打标签并生成二值(黑白)标签图(也是一种特殊的灰度图)

本文详细介绍Labelme标注工具的安装及使用方法,包括环境搭建、标注流程、图像处理技巧等,帮助读者快速掌握并应用于图像标注任务。

安装labelme

1创建conda子环境

例如:conda create -n 子环境名 python=版本

conda create -n labelme python=3.7

输入y回车

2激活conda子环境

conda activate labelme

3安装labelme的依赖包

conda install pyqt
conda install pillow

4安装labelme工具包

pip install labelme

安装的错误

如果出现如下报错
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ConnectTimeoutError(<pip._vendor.urllib3.connection.HTTPSConnection object at 0x000002AA50DBB388>, 'Connection to pypi.org timed out. (connect timeout=15)')': /simple/labelme/ ERROR: Operation cancelled by user
使用下面这句话安装labelme(换安装源)

pip install labelme -i http://pypi.douban.com/simple/ --trusted-host pypi.douban.com

用labelme打标签生成json文件

打开labelme

labelme

1、点击open dir选择包含所有图像的文件夹

在这里插入图片描述
在这里插入图片描述

2、一次按图片顺序对孔打标签

在这里插入图片描述

3、点击保存后,保存json文件

在这里插入图片描述

4、点击next image打下一张

所有图片打完标签之后,所有图片的json也就保存完了

根据json生成图像

激活labelme环境之后,
将cmd命令位置进入到生成的json所在文件夹内
然后输入下面命令生成标签图片

labelme_json_to_dataset 1.json -o label_json/1

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
得到的标签图如下:
在这里插入图片描述
注意,该命令也可以通过python批量生成:

import os
json_PATH = "D:\codespace\labelme\\data3\\Y101H2_7B\\16"
jsos_path_list = os.listdir(json_PATH)
jsos_path_list
for i, file_path in enumerate(jsos_path_list):
    if 'json' in file_path:
        path = 'labelme_json_to_dataset '+file_path+' -o label/'+str(i+1)
        print(path)

将下面批量生成的命令行直接复制到json所在文件夹下即可自动生成标签文件夹,注意要提前新建一个label文件夹,该命令无法自动创建文件夹,下面的命令行有时候需要执行两次,我猜测是因为2、4、6这些下一级的文件夹也需要一个创建的过程,第一次执行创建完成后,第二次执行才会保存。

labelme_json_to_dataset 10_20.json -o label/2
labelme_json_to_dataset 10_4.json -o label/4
labelme_json_to_dataset 15_25.json -o label/6
labelme_json_to_dataset 16_8.json -o label/8
labelme_json_to_dataset 17_32.json -o label/10
labelme_json_to_dataset 17_34.json -o label/12
labelme_json_to_dataset 18_13.json -o label/14
labelme_json_to_dataset 19_14.json -o label/16
labelme_json_to_dataset 19_29.json -o label/18
labelme_json_to_dataset 19_31.json -o label/20
labelme_json_to_dataset 25_8.json -o label/22
labelme_json_to_dataset 26_20.json -o label/24
labelme_json_to_dataset 28_6.json -o label/26
labelme_json_to_dataset 29_26.json -o label/28
labelme_json_to_dataset 3_36.json -o label/30
labelme_json_to_dataset 4_14.json -o label/32
labelme_json_to_dataset 4_25.json -o label/34
labelme_json_to_dataset 4_36.json -o label/36
labelme_json_to_dataset 7_19.json -o label/38
labelme_json_to_dataset 9_22.json -o label/40
常用的图像处理库 opencv(cv2)和PIL.Image
一、PIL.Image.open
H×W×C,RGB,数据类型 PIL.JpegImagePlugin.JpegImageFile
通过 numpy.asarray(image_pil) 可转成 numpy.ndarray
二、cv2.imread
H×W×C,BGR,数据类型 numpy.ndarray
通过 cv2.cvtColor(image_cv2, cv2.COLOR_BGR2RGB) 可转成 RGB

注:以上两种库读取到的图片值不一定完全一样(就算都转成 RGB 的 ndarray 之后也),某些像素的值有可能会相差1。

将标签图像转换为二值图像(基于CV2和阈值)和图像移动操作

我实际代码操作中的图像转换,使用的是基于cv2和阈值的方法。

不转也可以,具体变1的过程,可以在代码的数据读取部分中修改

补充:
# img = cv2.imread('ImproveUnet195seg.png',cv2.IMREAD_GRAYSCALE)
cv2.IMREAD_COLOR:加载彩色图片,这个是默认参数,可以直接写1。 
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五阿哥爱跳舞

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值