对于监督学习算法而言,数据决定了任务的上限,而算法只是在不断逼近这个上限。世界上最遥远的距离就是我们用同一个模型,但是却有不同的任务。但是数据标注是个耗时耗力的工作,下面介绍几个图像标注工具:
Labelme适用于图像分割任务的数据集制作:
它来自下面的项目
https://github.com/wkentaro/labelme
该软件实现了最基本的分割数据标注工作,在save后将保持Object的一些信息到一个json文件中,如下:
https://github.com/wkentaro/labelme/blob/master/static/apc2016_obj3.json
同时该软件提供了将json文件转化为labelimage的功能:
Labelmg适用于图像检测任务的数据集制作:
它来自下面的项目
https://github.com/tzutalin/labelImg
其中标签存储功能和“Next Image”、“Prev Image”的设计使用起来比较方便。
该软件最后保存的xml文件格式和ImageNet数据集是一样的。
yolo_mark适用于图像检测任务的数据集制作:
它来自于下面的项目
https://github.com/AlexeyAB/Yolo_mark
它是yolo2的团队开源的一个图像标注工具,为了方便其他人使用yolo2训练自己的任务模型。在linux和win下都可运行,依赖opencv库。
Vatic适用于图像检测任务的数据集制作:
它来自下面的项目
http://carlvondrick.com/vatic/
比较特别的是,它可以做视频的标注,比如一个25fps的视频,只需要隔100帧左右手动标注一下物体的位置,最后在整个视频中就能有比较好的效果。这依赖于软件集成的opencv的追踪算法。
Sloth适用于图像检测任务的数据集制作:
它来自下面的项目
https://github.com/cvhciKIT/sloth;
https://cvhci.anthropomatik.kit.edu/~baeuml/projects/a-universal-labeling-tool-for-computer-vision-sloth/
在标注label的时候,该软件可以存储标签,并呈现标注过的图片中的bbox列表。
Annotorious适用于图像检测任务的数据集制作:
它来自下面的项目
http://annotorious.github.io/index.html
代码写的相当规范,提供了相应的API接口,方便直接修改和调用。
RectLabel适用于图像检测任务的数据集制作:
它来自下面的项目
https://rectlabel.com/
这是一个适用于Mac OS X的软件,而且可以在apple app store中直接下载。
VoTT适用于图像检测任务的数据集制作:
它来自下面的项目
https://github.com/Microsoft/VoTT/
微软的开源工具,既可以标注视频,也可以标注图片,而且支持已有模型的集成,功能强大。
IAT适用于图像分割任务的数据集制作:
它来自下面的项目
http://www.ivl.disco.unimib.it/activities/imgann/
比较有特色的是,它支持一些基础形状的选择,比如要分割的物体是个圆形的,那么分割时可以直接选择圆形,而不是用多边形选点。
images_annotation_programme适用于图像检测任务的数据集制作:
它来自下面的项目
https://github.com/frederictost/images_annotation_programme
除此之外,还有很多类似的工具,与上面的工具相比,并没有什么特色了,我们只给出链接,不详细介绍了:
https://github.com/tzutalin/ImageNet_Utils
https://github.com/sweppner/labeld
http://www.robots.ox.ac.uk/~vgg/software/via/
https://alpslabel.wordpress.com/2017/01/26/alt/
https://github.com/christopher5106/FastAnnotationTool
https://lear.inrialpes.fr/people/klaeser/software_image_annotation