labelme标注工具
1.环境配置
conda create -n labelme
sudo apt-get install python3-pyqt5 # PyQt5
sudo pip3 install labelme
2.激活虚拟环境,并启动labelme
conda activate labelme
labelme
参考链接:图片标注工具Labelme的安装及使用方法
3.数据集标注
在标注时,我们首先要注意几点:
第一,标注关键点时,要先使用矩形框框出目标,再标注关键点;
第二,关键点不用固定的顺序,但每张图像都要保持一致。换句话说1号点是鼻子时,所有的图像1号点都应当是鼻子;
第三,被遮挡的点也应当标记出来;(如果你项目中对于被遮挡的关键点不需要进行检测出来,我觉得可以将被遮挡的关键点不进行标注)
第四,由于labelme无法标注关键点是否可见,默认为1.00000,这里我们不做处理,后续将其全部更改为2.00000,即可。
参考链接:https://blog.csdn.net/qq_39128381/article/details/132620229
如果拍的是人正面的照片,标签数字按照如下图来标注(英文显示错误—例如对于人而言,1应该是right eye。但是在coco8-pose.yaml里面有flip_idx的标签翻转操作)
4.json转txt
通过标注关键点和矩形框,我们得到了符合 labelme 输出结果的 .json 文件,然后我们需要将其转化为 .txt 文件。
# 关键点检测json转txt
import os
import json
import shutil
import time
import numpy as np
from tqdm import tqdm
Dataset_root = '/home/sta/ldz/datasets/pose/labels_json/' # 转化的json文件地址
# 框的类别
bbox_class =["person"]
# 关键点的类别,有多少类就写多少
keypoint_class = ['0','1', '2', '3','4', '5', '6', '7', '8', '9', '10', '11', '12',