参考视频:labelme使用指南(转VOC、coco数据集)_哔哩哔哩_bilibili
Labelme用于分割、目标检测数据集创建,同时使用ai标注能大幅提升标注效率
首先第一步配置环境+安装:
pip install labelme
安装好后可以在自己的路径中直接输入labelme启动:
labelme
启动成功的界面如下:
同时命令行中有输出如下:
表示labelme成功安装并成功运行。
手动标注
接着可以在labelme软件的左上角直接打开需要标注的照片和文件夹,右键图片选择建立多边形进行标记,标记你所需要的内容,首尾相连,并命名。成功标记的展示:
标定完成过后,每张图片会生成对应的json文件,文件中是我们标注的每个点,下次使用labelme打开这张照片时就会自动加载json文件,可以继续进行标注。例:
(注意这里将所有的图片和json文件放在一个文件夹中,后面我们进行ai标注时会使用到)
转换VOC和COCO数据集
首先将labelme项目复制到你的文件夹下:
git clone https://github.com/labelmeai/labelme.git
注意这个项目文件夹要和你的照片标注文件夹在一个目录下,即:
(data_annotated是我自己的标注图片文件夹,labelme是项目文件夹,data_dataset_cococ和data_dataset_voc是后面转化的文件夹)
首先制作VOC数据集
我们需要制作ImageSets,JPEGImage,SegmentationClass三个文件夹下的东西,打开刚才克隆的labelme项目,将instance_segmentation下的labelme2coco.py、labelme2voc.py、labels.txt程序复制到你的文件夹下,具体程序目录为:~/labelme/examples/instance_segmentation。
完成后文件夹目录如下:
接着修改labels.txt文件,该文件中存储的我们的所有标记名称,注意这里我们需要保留前两个名称:__ignore__和_background_,在这两个名称下面加上我们自己的名称:
(我的电脑txt无法显示下划线,但实际上是有的)
接着就可以开始转化啦,直接运行命令(将相应的名称改为你们自己的名称):
python labelme2voc.py data_annotated data_dataset_voc --labels labels.txt
(data_annotated是标注图片存放的文件夹,data_dataset_voc是转化成的voc数据集文件夹,labels.txt是标记名称的txt文件,注意命令不要输错)
正常运行命令行输出如下:
接着制作coco数据集
转换coco之前要先安装pycocotools:
pip install pycocotools
接下来的大致过程都相同,只是改变运行的程序,运行命令如下:
python labelme2coco.py data_annotated data_dataset_voc --labels labels.txt
这样coco数据集就制作完成啦!
ai标注
首先启动使用命令行启动labelme(一定要用命令行启动!),在标注时选择创建ai多边形,首次使用会自动下载相应的模型。
一定要用命令行启动的原因是,首次启动ai多边形可能会有报错,这时候只有使用命令行启动的才能在命令行窗口看到报错信息,解决完报错后就能正常启动。
可能遇到的报错
1. 部分库没有进行安装
将库安装即可
2. AttributeError: module ‘skimage‘ has no attribute ‘morphology‘
找到报错的Python文件,将import skimage注释掉,直接 from skimage import morphology,然后直接使用morphology:
3. TypeError: "remove_small_objects" () got an unexpected keyword argument 'out'
直接删除out元素,即将第95行代码改成上图那样,删除后不影响运行,具体原理我也不太懂...
以上这些报错是我遇到过的,成功解决完报错后,就可以进行ai标注啦,右键创建ai多边形,左键点击固定该部分的多边形,回车键结束当前标记,并命名。
整个ai标注过程是动态的,我就不截图了,放一张成功ai标注的命令行窗口:
这样就是成功开始ai标注啦。
最后祝大家标注顺利,论文全中!
版权归原作者 我的酒吧里有炒饭 所有, 如有侵权,请联系我们删除。