Skip to main content

注释

使用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)