CVAT图像标注工具的使用指南

CVAT简介

CVAT(Computer Vision Annotation Tool)是一个由OpenCV维护的开源标注工具,它支持对象检测分类、跟踪和分割等多种任务的标注。本文将重点介绍如何使用CVAT进行对象检测的图像标注,尽管CVAT还具有许多其他功能,例如视频标注、语义分割标注、多边形标注等。对于界面中每个元素的详细指南,可以参考CVAT的官方文档。此外,还有CVAT对象检测视频教程,订阅YouTube频道以获取更多内容!

CVAT与其他标注工具

CVAT是众多类似DIY标注工具中的一员,例如LabelImg计算机视觉标注工具。建议尝试自己标注一批图像(50+),并训练一个像YOLOv4这样的最新模型,以查看计算机视觉任务是否已经通过当前技术得到解决。将展示用于标注来自无人机的公共航拍海事对象检测数据集的步骤。尽管使用了特定的数据集,但本文旨在成为如何标注对象检测数据集以及如何使用标注工具进行对象检测的通用指南。可以自由选择其他类似的航拍图像数据集。

如何使用CVAT标注图像

如果是第一次接触CVAT,那么应该首先启动CVAT网站,这是开始标注数据的最快方式。一旦进入CVAT网站,将看到类似于此的页面:CVAT主任务页面。从那里,可以在CVAT中启动新任务,并将图像拖入进行标注。需要指定想要检测的对象的类别标签。请仔细指定这些标签,因为希望在开始标注之前确保拥有所有需要的类别。一旦数据上传完成,返回到任务页面。从那里,将看到一个任务页面。进入CVAT标注作业,当创建任务时,将自动设置CVAT标注作业。请注意任务/作业的语义层次结构。现在可以点击进入标注任务并开始工作。当进入标注屏幕时,将看到以下内容。

在CVAT中绘制标注

CVAT提供了多种类型的图形用于标注:矩形(边界框)、多边形、折线、点、椭圆、长方体和标签。以下是这些工具如何使用的例子。可以点击“创建图形”并在希望检测器检测的对象周围绘制一个框。边界框可能适用于项目,但如果需要更紧密的对象轮廓以获得更好的性能,可以使用多边形工具。类似于多边形工具,还可以选择使用折线标注工具。以下是一个多边形选项的视频。除了手动标注工具外,CVAT还提供了模型辅助标注,允许使用人工智能自动化标注工作。可以在CVAT中使用Roboflow模型,允许在CVAT中比以往更快地标注图像。有了这个设置,Roboflow模型(或Roboflow Universe上的任何模型)将自动标注需要标注的新图像。如有需要,可以调整和删除标注。查看Roboflow CVAT集成指南,深入了解如何开始使用Roboflow模型与CVAT。在AI工具部分,将找到交互器和检测器,它们有助于创建多边形。交互器包括Deep Extreme Cut (DEXTR)、Feature Backpropagating Refinement Scheme (f-BRS)、High Resolution Net (HRNet)和Inside-Outside-Guidance。检测器包括Mask RCNN和Faster RCNN,这些是适用于特定标签的深度学习模型。如果数据集包括这些模型支持的对象,将能够非常快速地标注这些对象,感谢自动应用的标签。

从CVAT导出标注

首先,需要点击“保存”。CVAT不会自动保存工作。然后点击“菜单”,在CVAT中将看到以下选项:CVAT菜单。然后需要点击“导出任务数据集”,可以选择不同的格式:标签VOC XML、标签COCO JSON、标签YOLO注释等。在导出之前,请确保知道需要的格式以训练选择的特定模型。如果需要将标注转换为CVAT不支持的格式,Roboflow提供免费的数据集转换到26+格式。恭喜!现在有了一个标注好的数据集。

在本地机器上安装CVAT

如果对CVAT非常感兴趣,可以在本地配置它。CVAT网站有以下限制:每个用户最多10个任务,上传的数据限制为500Mb。在本地,将不受这些限制,因为机器将承担重任。要在本地启动CVAT,首先在终端窗口克隆CVAT仓库。git clone https://github.com/opencv/cvat.git,然后进入cd cvat。如果没有Docker,安装Docker。查看Docker是否成功安装:docker version。现在在本地构建CVAT并使用以下命令启动:docker-compose builddocker-compose up -d。这将需要一段时间来运行。它正在构建本地机器上的CVAT依赖项。然后可以在本地CVAT服务中创建用户名,通过执行到其中:docker exec -it cvat bash -ic 'python3 ~/manage.py createsuperuser'。现在,打开浏览器并输入http://localhost:8080/。这将导航到本地CVAT!可以稍后回来并重新启动服务。如果在登录CVAT时遇到问题,可以使用无缓存重新构建:docker-compose build --no-cachedocker-compose up -d

CVAT标注提示、技巧和最佳实践

当在CVAT中操作时,请考虑下游模型仔细标注对象。在处理数据集时,请记住以下标注最佳实践:1)围绕对象进行完整标注;2)对于遮挡的对象——完整标注它们;3)通常标注部分出框的对象;4)注意不要标注许多重叠或完全包含在彼此之内的框。这可能会让模型非常困惑。CVAT提示:从最常出现的类别开始标签列表。它将是绘制框时的默认选项。首先标注每个类别中的所有对象——可以专注于它们并一次性更改所有标签。输入“N”以绘制新框。

CVAT的替代品

CVAT只是许多计算机视觉标注工具中的一个。如果想知道它是否适合,可能想要阅读终极对象检测指南或尝试Roboflow Annotate,它旨在简化像CVAT这样的开源工具所具有的许多粗糙边缘。常见的CVAT替代品包括:LabelImg:LabelImg是一个用Python编程语言编写的免费图像标注工具。LabelMe:LabelMe由MIT创建,是一个用于计算机视觉任务的免费标注工具。想要开始标注数据吗?Roboflow提供简单的标注,带有智能建议的默认值。毫不奇怪,用户使用Roboflow可以更快地标注。使用Roboflow Annotate。

在CVAT中标注计算机视觉数据集后的下一步

一旦数据集在CVAT中被标注,是时候转向创建计算机视觉模型了!Roboflow使能够轻松地加载数据(只需拖放图像和来自CVAT的标注文件)。可以使用增强功能生成更多数据,例如为计算机视觉翻转图像、随机裁剪和创建合成计算机视觉数据。如果有兴趣使用数据增强来增加训练图像数量(在CVAT中花费更少的时间),这是一个很好的指南,关于在计算机视觉中使用数据增强。当准备好时,使用Roboflow Train一键训练模型,并使用Web应用程序或网络摄像头快速测试模型。或者,可以从Roboflow导出数据到任何格式,并开始训练计算机视觉模型。关于如何训练YOLOv4和如何训练EfficientDet的帖子是训练模型的良好起点,然后从模型评估中,可以估计可能需要收集和标注的更多数据。训练后仅74张航拍无人机图像的推理。

沪ICP备2024098111号-1
上海秋旦网络科技中心:上海市奉贤区金大公路8218号1幢 联系电话:17898875485