效率与质量齐飞,标注工具全面横评

        ​​​​​​​标注的重要性

        网页端

Label Studio

PaddleLabel

labelbee 

Make Sense

CVAT

跨平台

VoTT​​​​​​​

windows

其他工具 

主流标注工具横向对比

标注的重要性

人工智能的发展过程中,数据、算力、算法缺一不可。目前,深度学习是AI的主流算法,训练数据在深度学习训练中起到重要作用。很多情况下,“大量数据+普通模型”比“小量数据+高级模型”的准确度要高。

模型效果与标注量之前的关系,示意图

早期的AI数据标注行业是劳动密集型行业,门槛较低,市面上大大小小的供应商良莠不齐,质量和数据精度无法保证。随着竞争的加剧,这一行业的头部企业正在显现。目前国内有竞争力的数据标注企业有已获得3300万元Pre-B轮融资的「龙猫数据」,公司主打众包模式,即通过大量C端的人力在APP上实现数据标注的分包。以及从数据交易转型至数据标注方向,通过积累的销售优势服务企业客户的「数据堂」;还有提供从数据标注到模型训练迭代一站式服务的「倍赛Basic Finder」等。在头部企业的竞争中,标注精度和速度是核心竞争点。多重审核机制和智能标注功能是各大公司的核心竞争力。
此前,供AI训练的数据的标注以人工为主,业界普遍探索依靠技术来提升标注的效率。质量管控系统首先利用自动化培训考核工具选择上岗人员,并根据考试结果分配相应难度的标注内容。此外,在标注过程中,系统会对已标注数据进行交叉审核,被标注数据可在用户自定义的标注池、检查池、抽查池中来回流转,保证最终进入完成池的精确度。除了人工质检,系统还设置算法质检,保障数据服务质量的下限,尽量避免漏题和显而易见的错误。

在标注速度方面,还要利用深度学习的模型辅助标注,降低人工劳动重复率。在标注时,平台的智能识别功能可以对物体边界进行高贴合度的分割,标注者只需要对标注数据进行选点即可框出物体。这一功能能将标注效率提升50%-80%。

本文根据部署平台、上手难易等进行了详细的分析

网页端

Label Studio

 告别手动标注时代 | SAM 助力 Label-Studio 形成 SOTA 级半自动标注工具! 【yoloV5实战记录】小白也能训练自己的数据集!

Label Studio支持任务类型

Label Studio检测标注页面
  • 跨平台开源多任务协作标,用户在线协同、用户管理,权限设置
  • 检测标注、分类,分割,关键点标注
  • 支持辅助标注
  • 工作量统计

安装

git clone https://github.com/open-mmlab/playground

pip install opencv-python pycocotools matplotlib onnxruntime onnx
pip install git+https://github.com/facebookresearch/segment-anything.git
cd label_anything
wget https://dl.fbaipublicfiles.com/segment_anything/sam_vit_b_01ec64.pth

安装 Label-Studio 和 label-studio-ml-backend
pip install label-studio==1.7.3
pip install label-studio-ml==1.0.9

启动后端服务
label-studio-ml start sam --port 8003 --with sam_config=vit_b sam_checkpoint_file=./sam_vit_b_01ec64.pth out_mask=True out_bbox=True device=cuda:0
浏览器打开IP:8003会返回
{"model_dir":"playground/label_anything/./sam","status":"UP","v2":false}

另开终端启动 Label-Studio 网页服务
label-studio start --port 8008
浏览器打开IP:8008
注册账号后即可使用

PaddleLabel

百度出品 强大的CV智能标注工具PaddleLabel强势来袭

图像检测标注功能展示

PaddleLabel的强大之处在于,它不仅提供丰富的手工标注功能,还能依托飞桨丰富强大的智能标注模型为降低标注成本。手动标注和智能标注相结合,让标注工作在追求速度的同时更能同时兼顾到精度的需求

  • 简单 手动标注直观易操作,上手成本极低。
  • 高效 支持交互式分割和预标注,标注精度及效率提升显著。
  • 灵活 分类支持单分类和多分类的标注,分割支持多边形、笔刷及交互式分割等多种功能,方便用户根据场景需求切换标注方式。
  • 全流程 与其他飞桨套件密切配合,方便用户完成数据标注、模型训练、模型导出等全流程操作。

labelbee

商汤出品

全平台支持:Mac / Linux / Windows,开箱即用,内置 6 款通用的标注工具,仅需简单配置即可标注支持通用数据,COCO 格式导出,语义分割 Mask 导出

  • 目标检测:车辆、车牌、行人、人脸、工业部件等检测场景
  • 目标分类:检测对象分类、目标特征、是非判断等分类场景
  • 语义分割:人体分割、全景分割、可行驶区域分割、车辆分割等
  • 文本转写:车牌、发票、保单、招牌等文本检测和识别
  • 轮廓线检测:人体轮廓线、车道线等定位线场景
  • 关键点检测:人脸人体关键点、车辆关键点、路沿关键点等定位场景
labelbee
labelbee

Make Sense

MakeSense检测标注
Make Sense关键点标注

CVAT

opencv官方出品工具 CVAT标注工具 docker安装 使用教程

CVAT标注界面

 CVAT 系列CVAT 使用(1) 界面与标注功能介绍​​​​​​​

 之前用过标注工具存在的问题: 不适合多人协作​​​​​​​. 之前用VoTT标注,6个人标注,碰到了很多很多问题:

  • 无法导入别人的标注结果。
  • 任务分配啥的需要离线处理,非常麻烦。
  • 无法看到每个人的工作进度。
  • 程序不稳定:VoTT是桌面应用,经常死机。

总结:

  • 如果只是一个人,稍微标一些数据,其实VoTT是非常好的选择。
  • 如果标注数据比较多,且涉及到多人协作,CVAT的优势就体现出来了。
  • VoTT的学习成本低、安装简单、上手快;CVAT安装复杂(某同事装了一周才装完,doge),功能全。

优点:

  • 它很容易安装和扩展,因为它是一个运行在 Docker 中的 Web 应用程序
  • 它包含了许多自动化工具(如使用 TensorFlow 物体检测 API 的自动标注、视频插值……)
  • 它允许协同工作管理,这样团队中的不同成员就可以在同一个标注任务上协同工作

缺点:

  • UI 相当复杂。例如,对于初次设置标注任务的用户而言,这可能会非常棘手
  • 一开始用起来不是很直观,可能需要几天的时间来掌握

安装,推荐使用docker,一键部署 

git clone https://github.com/opencv/cvat
cd cvat
如果要在cvat服务器之外访问,需要指定CVAT_HOST环境变量。最好的方法是创建docker-compose.override.yml并将localhost改为你的服务器ip,例如改服务器ip为172.16.100.201
先把docker-compose.yml复制到cvat目录后命名为docker-compose.override.yml
cp  docker-compose.yml   docker-compose.override.yml
vim docker-compose.override.yml
cvat_server和cvat_ui中的CVAT_HOST:-localhost改成CVAT_HOST:你的IP地址
修改完成后,docker-compose使用指定文件构建cvat
docker-compose -f docker-compose.override.yml up -d
在浏览器输入你的IP地址:8080即可访问
使用下面的命令创建管理员
docker exec -it cvat_server bash -ic 'python3 ~/manage.py createsuperuser'

快捷键: 

  • 保存: Ctrl + S
  • 删除: Delete
  • 缩放:鼠标滚轴,往上放大,向下缩小
  • 拖动:鼠标左键点击并拖动图片,调整位置
  • 下一帧:F
  • 上一帧:D
  • 向后跳十张: Shift+Ctrl + V
  • 向前跳十张: Shift+Ctrl + C
  • 复制框:Ctrl + C
  • 粘贴框:Ctrl + V
  • 重复上一次标注框参数:N,比如连续标一类头框,那么每次重复标时按N可以直接标下一个头框
  • 对选定对象连续标注接下来所有帧内此对象:Ctrl + B
  • 转换标签:Ctrl+(0..9)

跨平台

labelme: 支持点、线、分割等的标注,跨平台且支持python2.&和3.*,详见labelme 使用教程

  • 优点:跨平台,安装方便使用简单
  • 缺点:只支持矩形框的标注

roLabelImg:支持旋转矩形标注的工具

labelImg:基于python开发的标注工具

VoTT

微软开发

提供了非常棒的用户体验,这可能会在你标注时为你节省大量的时间和精力,但是BUG很多,经常崩溃,目前已经没人维护了。

优点:

  • 代码写得非常好(在 React 中),并且完美地定义了接口,因此获取代码和添加所需的额外功能都很容易
  • 正如我所说的,UX 是完美的,它有一个黑色的主题和一个跟随鼠标的虚线网格,所以很容易知道从哪里开始标注一个边界框。这看起来像是一种额外嘉奖,但是相信我,这对于标注来说真的很重要!
  • 它提出使用深度学习算法来自动检测对象(它附带了在 COCO 数据集上训练的 SSD 模型)
  • 它是一个 web 应用程序和一个电子应用程序。这使你可以将它作为一个重客户端使用,也可以将它作为 web 浏览器中运行的应用程序来使用

缺点:

  • 要使用 web 应用程序版本,你需要将数据托管在微软的云计算服务 Azure 上(然而,电子版应用程序允许你在硬盘上使用数据,但需要使用 npm 安装程序)
  • 它没有提供一个内置的 API(但是,通过调整代码,使你的私有 API 能够与之通信,这是非常容易的)
  • 你不能给整张图片贴标签:你只被允许绘制带有相关标签的边界框(或多边形)。

VGG Image Annotator (VIA)一款开源的图像标注工具,由Visual Geometry Group开发。可以在线和离线使用,可标注矩形、圆、椭圆、多边形、点和线。标注完成后,可以导出为csv和json文件格式。使用教程

优点

1.人脸数据标注提供了各种方便的操作,人脸数据标注首选工具

2.网页源代码开源,可离线使用还可进行二次开发,比如增加鼠标十字线

3.标框可以复制(可前后帧复制),同样大小可直接复制且继承属性

不足

多边形工具,一旦绘制完多边形无法增加锚点,只能调节点的位置

yolo_mark:用于图像检测任务的数据集制作

windows

MRLabeler:如果只在windows下用的话首推我的工具,上手快,有校验脚本,可大大减轻工作量

其他工具 

semantic-segmentation-editor日立旗下,可用于分割、框等的标注,配置略繁琐,教程少

annotation_tools:coco数据集标注工具, 2年多没更新

od-annotation采用python-flask框架开发,基于B/S方式交互,支持多人同时标注Note:不支持手动调整矩形框大小,界面略简陋

dataset-annotator:Scalable, cross-platform ion-electron app that allows the user to annotate an image dataset.

  • 26
    点赞
  • 163
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
如果您认为vtkDataSetTriangleFilter的效率太低,可能有一些优化策略可以尝试。以下是一些可能的解决方案: 1. 减少输入数据的复杂性:如果可能的话,尝试减少输入数据的复杂性,例如减少点的数量或降低数据的维度。 2. 使用更高效的算法:vtkDataSetTriangleFilter使用的算法可能在某些情况下效率较低。您可以尝试使用其他更高效的三角化算法,例如CGAL库中的算法。 3. 并行处理:如果您的系统支持并行计算,使用vtkParallelExecutor或vtkMultiThreader等VTK中提供的并行处理机制来加速计算。 4. 调整参数:某些算法和滤波器可能有一些可调整的参数,通过调整这些参数来优化性能。例如,可以尝试调整vtkDataSetTriangleFilter中的参数来控制细化程度或平滑度。 5. 硬件加速:确保您的系统具备足够的硬件加速功能,例如使用支持GPU加速的图形卡。 6. 使用更高级的数据结构:考虑将数据存储在更高级的数据结构中,例如使用KD树来提高搜索性能。 7. 降低输出分辨率:如果输出结果的分辨率不是非常重要,可以尝试降低输出网格的分辨率,以提高计算速度。 这些是一些常见的优化策略,但具体的优化方法可能取决于您的具体应用场景和数据特征。您可以根据情况尝试这些方法,或者根据具体需求自行探索其他优化策略。 希望这些提示能对您有所帮助!如果您有任何其他问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值