注释
使用ClearML Enterprise,可以对视频和图像帧进行注释。帧支持两种类型的注释:帧对象和帧标签。
注释任务可用于高效组织超数据集版本中的帧注释(参见 注释任务)。
有关如何使用WebApp查看、创建和管理注释的信息,请参阅Annotating Images and Videos。
框架对象
帧对象被标记为感兴趣区域(ROIs),这些区域可以由多边形(包括矩形)、椭圆或关键点界定。这些ROIs对于目标检测、分类或语义分割非常有用。
帧对象可以包括ROI标签、置信度和用于语义分割的掩码。在ClearML Enterprise中,一个或多个标签和来源字典可以与一个ROI关联(尽管多个来源的ROI不常使用)。
框架标签
帧标签应用于整个帧,而不是帧中的某个区域。
用法
添加框架对象
要向SingleFrame添加帧对象注释,请使用SingleFrame.add_annotation()
:
# a bounding box labeled "test" at x=10,y=10 with width of 30px and height of 20px
frame.add_annotation(box2d_xywh=(10, 10, 30, 20), labels=['test'])
box2d_xywh
参数指定了标注的边界框的坐标,labels
参数指定了标注的标签列表。
以以下方式之一输入注释的边界:
poly2d_xy
- 用于创建单个多边形的一组浮点数 (x,y),或用于创建复杂多边形的一组浮点数列表。ellipse2d_xyrrt
- 一个由椭圆的cx、cy、rx、ry和theta组成的列表。- 还有更多!请参阅
SingleFrame.add_annotation
以获取更多选项。
添加帧标签
添加帧标签类似于创建帧对象,不同之处在于不需要指定坐标,因为整个帧都被引用。
使用 SingleFrame.add_annotation()
,但仅指定
labels
参数:
# labels for the whole frame
frame.add_annotation(labels=['frame level label one','frame level label two'])
添加全局注释
添加一个全局注释,该注释将应用于FrameGroup中的所有帧。
使用 FrameGroup.add_global_annotation()
并指定要添加到每个帧的 Annotation 对象:
annotation = ImageAnnotation(labels=["cityscape"], confidence=1.0000,)
frame_group.add_global_annotation(annotation=annotation)