安装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。

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

被折叠的 条评论
为什么被折叠?



