图像标注工具竞品分析.docx
- 文档编号:5341
- 上传时间:2023-04-28
- 格式:DOCX
- 页数:24
- 大小:3.16MB
图像标注工具竞品分析.docx
《图像标注工具竞品分析.docx》由会员分享,可在线阅读,更多相关《图像标注工具竞品分析.docx(24页珍藏版)》请在冰点文库上搜索。
图像标注工具竞品分析
图像标注工具竞品分析
1.什么是图像标注
图像标注是在原始图像打上标签的行为。
在锻炼深度学习模型前,需求准备足量的,已被标注的样本用于锻炼。
而图像标注就是样本准备中的一个步骤,如图1:
图1:
Supervisely中的图片标注
原始图像类型包括:
二维图片、三维图片、视频等。
标注方式包括:
标签、包围框(二维和三维方式)、点、线、多边形、像素图(Bitmap)。
依据不同的标注方式,图像标注类型可分为:
1.分类(Classification):
辨认出图片中有什么物体,如上图中的1号箭头,表示整张图片中有people,经过标签停止标注。
2.检测(Detection):
比图片分类再进一步,不只晓得图片里有什么,还检测出物体大约位置,即物体所属包围框(BoundingBox)的位置,如上图中的2号用包围框标注了一个行人。
经过包围框/线+标签停止标注。
3.分割(Segmentation):
比目的检测再进一步,晓得每个像素属于哪个标签,如上图中的3号描画出了行人像素级别的轮廓。
详细还可细分红语义分割(SemanticSegmentation)和实例分割(InstanceSegmentation)两类,语义分割用于辨认不同品种的物体,而实例分割在语义分割的根底上进一步辨别了同类物体中的不同实例。
经过多边形/像素图+标签停止标注。
4.姿势估量(PoseEstimation):
又称关键点检测,主要用于辨认图像内的关键区域,例如表情辨认,运动姿态检测等。
经过点/线+标签停止标注。
5.视频行为辨认(VideoActionRecognition):
辨认目的的企图,例如辨认打架行为,这种场景很难仅凭单张图片判别(比方在单张图片下打架和拥抱是相似的),通常需求辨认一段视频才干判别目的企图。
仅通常运用包围框/点/线+标签的在插值形式下停止标注。
下图为各个标注类型的示例:
通常,企业会有形形色色的标注需求,作为一款通用的标注产品,产品功用(如支持各种输入格式,各种标注类型,各种标注方式,以及额外功用)会是我们关注的一个重点。
另一方面,实践状况中标注是一件非常费时费力的工作,例如需求标出上图中的大局部行人,而这样的图片至少得有几百上千张。
由此可见,因而用户体验是我们需求关注的另一个重点。
综上,本文将主要从产品功用和用户体验这两个维度来剖析行业中的代表性产品。
2.中心业务流程
完成图片标注锻炼的整个工作流程,通常需求阅历”数据准备”、”数据标注”、“数据进化”三个环节。
详细业务流程如下图所示:
图3:
图像标注通用业务流程
2.1数据准备
数据准备包含:
数据采集、数据预处置两步。
1.数据采集:
采集途径很多如:
本地上传,调用其他数据集数据,摄像头数据导入,从云效劳调用获取数据等。
2.数据预处置:
数据清洗是获取高质量锻炼数据的前提,并且经过清洗不合格的数据也能够减少无意义的标注工作,进步标注效率。
数据清洗通常的操作包括:
清洗含糊数据,清洗类似数据,裁剪,旋转,镜像,图片亮度,图片比照度,图片锐化等。
2.2数据标注
数据标注包括:
树立标注集、数据标注、标注审核。
2.2.1树立标注集
标注集是标注工作的根本任务管理单元,在此不做过多赘述。
2.2.2数据标注
详细方式见表1:
表1:
数据标注详细方式
2.2.3标注审核
针对“任务标注”,标注审核是对下发的标注任务停止管理并对标注结果审核,普通审核维度包括:
标注进度、验收状况、标签数量、难例、标注质量等。
针对“自动标注”,标注审核是对自动标注的结果停止逐一检查确认,并修正标注有误的图片。
2.3数据进化
数据进化包括:
模型锻炼、模型推理。
2.3.1模型锻炼:
是将标注数据停止锻炼得出模型结果的过程。
2.3.2模型推理:
用于对锻炼的模型结果停止校验预测,并将错误或者有误差的校验结果记载下来带入到下一次模型锻炼中用于模型的优化迭代,从而构成由数据标注到模型锻炼再到模型迭代优化的闭合环路。
3.竞品简介
目前市面上标注工具较多,首先需求肯定竞品选取准绳:
∙基于Web的应用,扫除本地应用及挪动端应用,理由:
和笔者公司产品形态分歧
∙有线上体验环境,理由:
可以体验才干给出精确剖析
∙功用较为完善,有代表性,理由:
完善的产品参考意义更大
∙因众包形式与笔者公司的产品战略有偏向,扫除基于数据众包形式的产品,如AmazonMechanicalTurk。
综上,选取了以下3款竞品:
1.CVAT:
Intel出品的开源标注工具,发布于2018年6月。
其支持视频、图片等多种数据类型的标注,功用全面。
2.ModelArts:
华为出品的机器学习平台,发布于2018年10月,其中包含了数据标注模块。
其支持从数据导入到模型运维的全流程开发,锻炼速度较快。
3.Supervisely:
俄罗斯DeepSystem旗下的模型锻炼平台,发布于2017年8月。
其数据标注功用强大,特别是SmartTool令人影响深入:
能够快速完成语义分割任务的标注。
表2:
3款产品的概括比照
4.功用比照
本节中,针对3款产品,我们从依据第2章的中心业务流程来探求产品功用间差别。
4.1CVAT
CVAT的运用流程固然非常简单,但功用非常全面和丰厚。
图4:
CVAT的标注流程
4.1.1创立数据集
CVAT中以标注任务(Task)的概念替代数据集,一个任务能够包含多个作业,每个作业能够分配一个标注人员。
在创立标注任务时,CVAT也提供了丰厚的高级选项,例如:
1.支持运用GitLFS:
GitLargeFileStorage,大文件的git管理插件。
2.调整图片质量:
经过降低图片质量(紧缩比)来加快高清图片的加载。
3.作业数和堆叠数:
假如一个任务中的图片量很大,能够将其分红多个作业。
再配合堆叠数,能够完成分配一张图片到多个作业的效果,不过暂时没有想到堆叠数的运用场景。
总结来看,CVAT在标注任务模块汇中的一个优势是支持直接上传视频类型文件,上传完的视频会被依据用户设定的帧率(Frame)转换成图片。
CVAT在该模块中也有个明显的优势:
短少一个统一的视角去总览任务中一切的图片(如下图所示,任务详情页中仅能看到首张图的照片),以及每张图片上一切的标注,揣测是由于由于一张图片可能存在在多个作业中所招致。
图5:
CVAT的标注任务详情页
4.1.2自动标注
由于CVAT并未提供模型效劳的才能,其自动标注功用还处在开展的初期,仅能满足个人实验。
添加自动标注模型需求用户上传模型文件,而非镜像或API,这种非效劳化的方式很容易由于运转环境差别(例如2个效劳器上装置了不同版本的依赖包),而影响标注胜利率以及精确率。
4.1.3人工标注
4.1.3.1人工标注支持3种标注形式,且各个形式之前可来回切换:
1.规范形式(Standard):
用于常规标注。
2.属性标注形式(AttributeAnnotation):
在“属性形式”下用户能够专注于修正标注框属性和标签属性,提升了对标注属性检查和修正的效率。
此形式特地用于对同一个物体设置一个或多个属性的场景,如人脸标注中需求标注年龄,性别等。
3.标签标注形式(TagAnnotation):
在“标签形式”下用户能够疾速完成增删标签和对标签属性的选择和修正。
同时为图片分类型标必定制的形式,还可为每个标签设置快捷键。
极大提升了图片分类的标注效率。
4.1.3.2针对CVAT我们体验下来总结了以下几点优势:
1)灵敏的标签和属性定义
同一图片能够标注多个标签,且一个标签能够设置多个属性且平台将属性定义分为:
多选(Select)、单选(Radio)、能否(Checkbox)、文本(Text)、数字(Number)五种。
CVAT标签自定义的自在度根本满足了绝大局部的标注需求。
图6:
CVAT中的5种标签属性
2)丰厚的标注方式
为了支持各品种型的标注,CVAT提供了6种的标注方式,包括:
标签、点、矩形、折线、多边形、长方体等。
同时支持AI多边形标注:
只需指定至少四个点就能够在系统的协助下框选出一个目的的轮廓,这点同Supervisely相同,我们者体验下来在AI辨认速度上还是等待进一步提升。
3)标注方式快捷键的统一
选择一个标注方式则快捷键”N“就代表这种标注方式。
重新选择标注方式则”N”代表的方式随之对应改动。
快捷键的统一进一步降低了用户的操作本钱。
4)任务剖析
经过任务剖析仪表板中的剖析,您能够查看每个用户在每个任务上破费了几时间,以及他们在任何时间范围内完成了几工作,任务剖析拓展了CVAT的团队标注才能。
图7:
CVAT中的Analytics仪表板(图片来源CVAT用户手册)
5)追踪形式(Trackmode)
用于对视频文件停止标注。
视频会依照帧率被分割成若干画面(Frame)。
用户仅需在关键画面(Keyframe,和Flash中的关键帧很相似)上停止标注,关键画面之间的画面也会自动带上标注。
CVAT目前仅支持包围框和点运用插值形式。
Propagate功用很适用,场景:
假如想将当前图片中的标注传送(Propagate)给后面的n张图片。
同时CVAT的追踪形式分离兼并(Merge)功用、分割(Split)功用共同支撑起CVAT独具优势的视频或动图标注才能。
4.1.3.3可能正由于其支持的功用过于丰厚,招致运用起来有一定的学习本钱,用户体验会有些差强者意。
例如:
1.标注时图片无法预览无法获知图片的总体标注状况,当下次在进入作业时不能快速定位到未标注的图片,这点虽说对与效率不会有太大影响但会影响用户的操作体验。
2.另外假如是做用户图片分类的标注,则需求运用属性形式,这一点用户难以感知。
(我们一开端还以为只能经过画一个完整掩盖图片的框才干完成)
4.2ModelArts
Modelarts在2019年10月17日版本更新后(特别是团队标注功用),业务流程掩盖趋于完好。
整体用户流程如下:
图8:
ModelArts的标注流程(图片来自ModelArts官网)
由于本文以数据标注功用的讨论为主,数据标注之后的功用(包括锻炼、推理、数据校正等)不在本文的讨论范围内。
4.2.1创立数据集
在创立图片数据集时,ModelArts将图像标注类型设定在了数据集层面,即创立数据集时就需求辨别标注类型.
这一点与Supervisely和CVAT区别较大,详细剖析见Supervisely的人工标注章节。
目前支持图片分类及目的检测两种任务。
图9:
ModelArts中放入创立数据集
4.2.2数据处置
华为的数据处置功用位于对象存储效劳中,其提供了便利且功用全面的图片处置才能。
华为对象存储效劳中提供了“图形界面形式”和“代码编辑形式”两种图片处置操作方式,适用了普通用户和开发者用户的运用。
同时最终的处置结果寄存于内容分发网络(ContentDeliveryNetwork,CDN)加速,后续恳求能够经过URL直接从CDN下载,能够将结果用于恣意能够经过URL导入数据的标注平台,极大的拓展了平台的功用拓展性。
华为图片处置提供的才能主要包括:
设置图片效果(亮度、比照度、锐化、含糊)、设置缩略、旋转图片、剪切图片、设置水印、转化格式、紧缩图片。
图10:
华为对象存储中的图片处置模块
4.2.3智能标注
ModelArts智能标注包含:
主动学习(半自动标注)和预标注(全自动标注),目前只要“图像分类”和“物体检测”类型的数据集支持智能标注功用。
下面简单剖析一下智能标注模块:
1.系统只对未标注图片停止标注,这样能够减少反复标注,减少关于运算资源的糜费。
2.运用效果不理想,系统实践体验下来标注的精确性大约只能维持在60%。
系统挑选难例的精确性也较低。
3.全自动标注支持选择自行锻炼的模型或ModelArts自带模型,在模型选择上灵敏性较高,在下次停止作业时能够继承每次标注的结果进一步提升模型的精确率。
4.智能标注结果展现页面能够停止条件挑选,可选的条件包括:
难例级,标签,样本创立时间,文件名,标注人,样本属性,置信度。
精准的挑选能够满足大局部场景的需求。
4.2.4人工标注
华为ModelArts人工标注的特性主要有以下三点:
4.2.4.1目的检测标注支持多达6种方式的标注
包括方形、多边形、正圆、点、单线、虚线(见图11),丰厚的标注方式掩盖了更普遍的标注场景,同时能够进步标注的精度。
4.2.4.2高效的标签选择方式
在数据标注的交互上,华为ModelArts在画完选框后会自动弹出标签下拉框曾经展开的添加标签弹窗(见图11),省去了用户框选完成后自行点击标签下拉框的步骤。
且弹出的标签选项卡就在选框旁边(见图11),这样减短了滑动鼠标选择标签的鼠标挪动行程。
图11:
ModelArts图像检测的数据标注界面
4.2.4.3图片分组
在标注预览页面华为ModelArts提供了图片分组功用(见图12),此功用会运用聚类算法或依据明晰度、亮度、图像颜色对图片停止分组。
自动分组能够了解为数据标注的预处置,用户可依据分组结果,停止分组打标、图片清洗等操作。
此功用能够进步图片标注效率,特别是在图片分类标注的状况下再配合批量标注功用能够在标注速度上有质的提升。
但我们在实践体验后觉得此功用分组的胜利率较低。
图12:
ModelArts中的图片自动分组
4.2.5团队标注
华为ModelArts的团队标注功用设置很齐全,有很多亮点,这里从创立,标注,审核三个方面讨论:
4.2.5.1创立
华为启用团队标注后能够直接指定标注团队,也能够选择指定管理员然后由管理员分配标注人力并做审核工作。
选则完类型后团队成员会收到系统邮件,按邮件提示能够很轻松的完成标注和审核。
能够选择能否将新增文件自动同步至标注团队。
同时能够选择标注团队的文件能否加载智能标注结果。
这些操作增加了管理员对任务分配和自动标注之间关系的调理自在度。
图13:
ModelArts团队标注创立页面
4.2.5.2标注
标注一张图片并保管后,图片自动进入“待审核”状态。
我们以为这样的状态切换超出用户预期,特别是用户假如还想再检查标注能否有误的话还需切换到“待审核”页面去检查,这样会给用户带来不便。
“待审核”的图片依然能够修正,在管理员发起验收前,修正有效。
但在验收时,假如图片被抽样到则修正不会保管在数据集中,假如图片未被抽样到则修正会被保管在数据集中。
这样的审核逻辑限定能够减少在审核中产生不用要的紊乱,避免审核结果产生误差。
4.2.5.3审核
ModelArts将审核称为“验收”,验收分了2个层级:
单张图片的验收和一批次图片的验收。
流程是用户对一批图片做验收。
审核层级过多,逻辑复杂,招致操作结果可能不契合用户预期。
标注状态紊乱:
例如管理员分配图片A给到标注人a,a标注完,管理员运用智能标注同时标注图片A,假如2个结果都被管理员确认,无论先确认哪种标注,最后只要智能标注的结果有效,而标注人a的标注则无效。
ModelArts提供了审核的仪表盘,仪表盘便当了审核的统计环节,用可视化的方式展现了任务进度。
仪表盘的评判指标包括:
验收停顿统计、难例集数量、标签数与含标签的样本数、标注人停顿统计等5个,见图14:
图14:
ModelArts中的标注审核仪表盘
4.3Supervisely
图15:
Supervisely的标注流程
从图中能够看到团队标注一块的逻辑相比其他产品愈加复杂,剖析背后的缘由:
外表上看很多步骤是为了满足团队标注这一需求(特别是外部标注团队),包括创立团队、约请成员、创立标注作业、标注审核等等,但实质上则是平安把控和质量把控需求:
1.平安把控表现在管理员能够分配给团队成员不同的角色以控制成员的权限,例如标注者(Annotator)只能查看本人任务中的图片;
2.质量把控表现在标注完后还会有管理员审核标注状况以保证标注质量。
因而,这样复杂的链路是一个企业级标注产品应有的设计,虽然这样不可防止会形成用户认知本钱的升高,以及用户体验的降低。
4.3.1创立数据集
在Supervisely中,用户能够在一个数据集中完成4种标注(视频标注除外),即分类、检测、分割、姿势估量。
与ModelArts不同,Supervisely对数据集的定位更像是图片集。
一批图片只需求导入一次,无论做哪品种型的标注都能够在同一个数据集上完成。
且后续做锻炼时,能够直接得到一张图片上的一切标注。
综上,Supervisely统一的数据集模块,提升了图片导入,图片标注以及图片后处置的效率。
但这种方式也有缺陷:
一切标注类型的操作形式固定,无法针对特定类型(例如Modelarts的图片分类可同时选择多张图片一同标注)做深化优化。
4.3.2数据处置
Supervisely的数据处置模块叫做DTL,DataTransformationLanguage,是一种基于JSON的脚本言语,经过配置DTL脚本能够完成兼并数据集、标签映射、图片加强、格式转换、图片去噪、图片翻转等46种操作,满足各类数据处置需求。
图16:
Supervisely中为图片参加高斯含糊
固然功用相比ModelArts来说愈加强大,但是由于仅提供代码方式操作,仅合适工程师,但是大局部工程师已控制经过python处置图片的方式,再额外学习一种言语无疑会增加学习本钱。
另一方面这种特殊的言语对效率的提升也存在未知数,例如用户想停止某种图片操作,但调研了半天发现该言语不支持,最后还是要经过python来完成,到头来降低了效率。
4.3.3自动标注
Supervisely目前提供了14款预锻炼的模型,锻炼用数据大局部来自COCO(微软发布的大型图像数据集),少局部来自PASCALVOC2012,Cityscapes,ADE20K等其他公开数据集。
在自动标注局部,Supervisely的优势在于支持语义分割型的自动标注,加上产品在语义分割型的人工标注上具有出色的体验,使这类型任务的标注效率得以大幅提升。
Supervisely的自动标注模块产品化水平较低,主要表现在以下两点:
1.由于自身不提供模型锻炼及推理效劳,需求用户自行准备自动标注所需的硬件环境,且限制较多(仅支持NvidiaGPU,需求Linux和Cuda驱动)。
2.经过JSON格式的配置文件来配置模型推理参数(见图17)。
相比华为简单的配置界面,这种方式的灵敏性固然更高,但用户真的需求那么配置还是指想系统直接给出一个自动标注的结果就好呢?
图17:
Supervisely(左)与华为ModelArts(右)的全自动标注配置比照
4.3.4人工标注
Supervisely的标注功用非常强大,主要有以下2个特性:
1.丰厚的标注方式:
为了支持各品种型的标注,Supervisely提供了多达9种的标注方式,包括:
标签、点、矩形、折线、多边形、长方体、像素图、智能工具(SmartTool)、关键点等。
2.复杂的标签系统:
笼统出了对象(Object),类(Class),标签(Tag)三个实体,在复杂场景中进步了实体之间的复用性。
4.3.4.1丰厚的标注方式
在一切9种标注方式中,智能工具令人印象深入:
智能工具用于分割类型的标注,用户只需求2次点击框选一个物体,经过算法对目的停止描边即可完成一个初步的分割,再经过标注积极点和消极点完成准确标注,大大降低了分割类任务的标注本钱。
4.3.4.2复杂的标签系统
为了满足一个数据集涵盖多种标注类型的需求,Supervisely有一套复杂的标签系统。
我们经过对3款产品的ER图来详细剖析一下这套标签系统的优劣。
但是每个行人的属性又有不同,例如行人A戴帽,行人B不戴帽.假如我们需求辨别戴帽的行人和不戴帽的行人,一种做法是创立两个标签:
戴帽的行人、不戴帽的行人。
但这样的两个标签会丧失关联性——假如模型只需检测行人,还需求对这两个标签停止转换,效率较低。
比拟合理的做法是在行人标签下创立一个属性——能否戴帽;并笼统出一个概念:
对象。
用户每画一个包围框,系统就会创立一个对象(例如:
行人A),每个对象会对应一个标签(例如:
行人),然后每个对象能够设置该标签所具有的属性值(例如:
能否戴帽=是)。
CVAT和ModelArts都是这样的做法,区别是CVAT能够直接为图片加上标签,用于图片分类。
而ModelArts由于划分了图片分类和目的检测数据集,因而标签仅能在图片分类型数据中被应用在图片上。
图20:
CVAT(左)和ModelArts(右)的图片-对象-标签ER图比照
而Supervisely则是把标签和属性拆分红了两个实体(如下图):
这种做法能够进步属性的复用,例如在Supervisely中,用户只需求定义一遍颜色属性,之后无论是标注行人还是车辆的颜色都能够应用同一个“颜色”下面的属性,进步了复杂标注集的准备效率。
但同时这种做法对用户体验设计提出了较大应战,从上手难度来看,Supervisely无疑是三款产品中最难上手的。
图21:
Supervisely的图片-对象-标签-对象ER图
5.总结与瞻望
5.1总结比照
下表为三款标注产品的功用总结:
表3:
三款产品的功用总结比照
1.CVAT:
人工标注功用最为强大,但自动标注功较为单薄。
独有的追踪形式免去了对视频的预处置,对标注效率的提升也非常宏大。
CVAT的任务剖析功用由于环境缘由未能完整体验,从引见来看应该会在这块发力。
2.ModelArts:
作为华为云的一个功用模块,ModelArts的产品战略也愈加倾向通用性,平台性。
经过与华为OBS系统的分离给其带来了强大的数据处置才能也强化了其平台的可拓展性和兼容性。
同时自动标注和半自动标注作为ModelArts的优势是CVAT和Supervisely所不具备的,也从侧面表现了ModelArts依托华为云所带来的强大运算力和算法优势。
总体来说ModelArts是一个平衡的选手,具有优秀的业务拓展才能。
3.Supervisely:
整体功用最为完善,合适企业级应用。
对语义分割类任务支持较好,但局部功用(如数据处置,自动标注)需求经过代码方式完成,效率提升有限。
当然我们也发现有一些功用在3款产品中都没有看到,例如水印功用,会适用于失密请求的场景,如监狱,银行等。
5.2标注工具的将来趋向
5.2.1人工标注这个环节不会消逝
这其实是个悖论:
假定我需求锻炼一个CV模型,锻炼模型需求准备标注好的图片,假如图片标注只需求自动标注而无需人工干预,那意味着模型曾经可以精确预测出结果.
假如能做到精确预测,阐明曾经这个模型曾经被锻炼完整,不再需求锻炼,这就和假定相悖了。
5.2.2自动标注的价值主要表现在单个标注需求破费较长时间的标注类型中,如分割和姿势估量
既然人工标注一定会存在,那么自动标注存在意义就是进步人工标注效率,而非替代人工标注。
在分类和检测任务这类单次标注耗时较短的场景中,自动标注的价值较小。
假定从0开端完成一个标注破费5秒钟,而曾经停止了自动标注的状况下,修正一个标注需求花2秒,标注效率提升60%(假定跑自动标注模型是在下班之后,不影响人工标注时间)。
但我们看到可能有些图片上模型的标注结果偏向太大,这样用户还需求话1秒来删掉自动标注的结果,反而这次标注的效率降低了20%(IE,1/5),如此高的负收益使得整体效率算下来没有进步很多。
5.2.3人工标注的主要内容将从创立标注转变为修正标注
固然人工标注环节不会消逝,但显然自动标注将会在标注环节起到越来越重要的作用,今后常见的标注流程
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 图像 标注 工具 分析