Skip to main content

单帧

class dataframe.SingleFrame(id=None, source=None, width=None, height=None, timestamp=None, size=None, hash=None, preview_uri=None, preview_uri_timestamp=None, metadata=None, annotations=None, mask_source=None, context_id=None)

单帧对象,表示一个带有附加元数据的单个文件

创建一个空的SingleFrame并填充来自**kwargs的字段

  • 参数

    • id (str ) – 表示整个系统中帧的UUID。 UUID (A-z,0-9),如果是int/float类型,自动转换为字符串 如果为None,将根据源URI创建一个唯一标识符 如果源不可用,将使用随机生成的UUID

    • source (str ) – 数据框源文件的URI链接。 (如果是本地文件,file:// 前缀将自动添加)

    • width (int ) – 数据框的宽度(整数)。如果不适用则为 None

    • height (int ) – 数据帧的高度(整数)。如果不适用则为None

    • timestamp (int ) – 数据帧的时间戳(整数)。如果不适用则为零/无

    • size (int ) – 源文件的大小(整数),以字节为单位。如果不适用则为None

    • hash (str ) – 源文件内容的哈希值(字符串)。如果不适用则为 None

    • preview_uri (str ) – 数据框可视化预览的URI链接。 通常是浏览器支持的格式,从支持的来源服务器提供,也可以是直接的文件链接。

    • preview_uri_timestamp (int ) – 时间戳(或索引)(整数),适用于URI 链接到数据框的可视化预览。(另见preview_uri)

    • metadata (dict ) – 与数据框一起存储的通用字典(dict)。字典必须是可json化的。

    • annotations (list ) – 适用于此数据框的注释列表(Annotation 对象)。

    • mask_source (str ) – 此数据帧的掩码文件的URI链接(str)。如果不适用则为None

    • context_id (str ) – 上下文ID。用于默认帧的聚合。如果未设置,则从第一个源的URI中填充。


preview_uri

属性 preview_uri

  • 返回类型

    str

  • 返回

    与preview_source可互换, URI链接到数据框的可视化预览。(另见preview_uri_timestamp)


预览URI时间戳

属性 preview_uri_timestamp

  • 返回类型

    int

  • 返回

    可与preview_source_timestamp互换, 时间戳(或索引)(整数)有效,用于数据帧可视化预览的URI链接。 (另见preview_uri)


mask_source

属性 mask_source

  • 返回类型

    str

  • 返回

    此数据框的掩码文件的URI链接(str)。如果不适用则为None

如果注册了多个掩码,始终返回列表中的第一个


masks_source

属性 masks_source

  • 返回类型

    Dict[str, str]

  • 返回

    掩码ID字典(例如“00”,“01”等)到URI链接(str)为此数据帧的掩码文件。


起源

属性 origin

返回框架的所有者数据集/版本信息(数据集是版本的集合), 包括数据集ID、数据集名称、版本ID和版本名称。 注意:这是一个自动生成的只读属性。

  • 返回类型

    Dict[str, str]


数据集版本元数据

属性 dataset_version_metadata

返回框架的所有者数据集版本元数据(只读)。

  • 返回类型

    dict

  • 返回

    字典


blob

属性 blob

  • 返回类型

    str

  • 返回

    与框架一起存储的非索引数据(字符串)


源数据

属性 sourcedata

  • 返回类型

    dict

  • 返回

    与数据框一起存储的通用字典。


添加注释

**add_annotation(poly2d_xy=None, poly3d_xyz=None, points2d_xy=None, points3d_xyz=None, box2d_xywh=None, box3d_xyzwhxyzwh=None, ellipse2d_xyrrt=None, mask_rgb=None, frame_class=None, id=None, labels=None, confidence=None, metadata=None, kwargs)

根据提供的参数创建一个注释实例,并将其添加到单帧的注释列表中。

info

如果提供了多个以下内容: poly2d_xy / poly3d_xyz / points2d_xy / points3d_xyz / box2d_xywh / box3d_xyzwhxyzwh / ellipse2d_xyrrt / mask_rgb 将为每个内容创建一个注释实例。创建的注释将通过提供的ID进行关联。如果未提供ID,将自动创建一个。

  • 参数

    • poly2d_xy (Union[Sequence[Union[int, float]], Sequence[Sequence[Union[int, float]]], None]) – 单个多边形的浮点数列表 (x,y), 或复杂多边形的浮点数列表的列表。

    • poly3d_xyz (Union[Sequence[Union[int, float]], Sequence[Sequence[Union[int, float]]], None]) – 单个多边形的浮点数列表 (x,y,z), 或复杂多边形的浮点数列表的列表。

    • points2d_xy (Union[Sequence[Union[int, float]], Sequence[Sequence[Union[int, float]]], None]) – 关键点集合的浮点数对 (x,y) 列表,

    • points3d_xyz (Union[Sequence[Union[int, float]], Sequence[Sequence[Union[int, float]]], None]) – 关键点集合的浮点数三元组 (x,y,z) 列表,

    • box2d_xywh (Union[Sequence[Union[int, float]], Sequence[Sequence[Union[int, float]]], None]) – 边界框,四个或五个浮点数表示:X,Y,宽度,高度, 可选(角度)

    • box3d_xyzwhxyzwh (Union[Sequence[Union[int, float]], Sequence[Sequence[Union[int, float]]], None]) – 边界框,四个浮点数表示:X,Y,宽度,高度

    • ellipse2d_xyrrt (Union[Sequence[Union[int, float]], Sequence[Sequence[Union[int, float]]], None]) – 椭圆的cx, cy, rx, ry, theta列表

    • mask_rgb (Union[Sequence[Union[int, float]], Sequence[Sequence[Union[int, float]]], None]) – RGB 列表(如 [r, g, b])。

    • frame_class (Optional[Sequence[str]]) – 字符串列表,帧级别的标签(类)。 它相当于传递 labels 而不需要任何特定的注释类型。

    • id (Optional[str]) – 表示特定注释的字符串。用于跟踪对象。None 是一个有效的选项。

    • labels (Optional[Sequence[str]]) – 标签列表(字符串)。如果没有传递特定的注释(例如多边形、框等),标签将等同于frame_class注释

    • confidence (Optional[float]) – 标注置信度(浮点数)。可选

    • metadata (Optional[dict]) – 用于存储多个字段/值的通用字典

    • kwargs (如果注册了自定义注解类 *, * 你可以使用其中一个注册的注解类型名称来提供值,以便创建自定义注解类的实例。 ) –

  • 返回类型

    List[Annotation]

  • 返回

    包含单个值(在添加单个实例的情况下)或多个值(在添加多个实例的情况下)的索引列表(int)


remove_annotation

**remove_annotation(index=None, kwargs)

从注释列表中移除一个注释。 要移除的注释是基于注释列表中的索引位置选择的。

  • 参数

    • index (Optional[int]) – (int) 要移除的注释的索引

    • kwargs (Dict ) –

  • 返回类型

    Union[Annotation, None, Sequence[Annotation]]

  • 返回

    移除的注释实例,或为None


remove_annotations

remove_annotations(id=None, label=None, labels=None)

从注释列表中移除一个或多个注释。 根据ID和/或标签选择要移除的注释。

info

不提供任何参数将删除所有注释

info

注释的ID不是系统ID,而是用户提供的值。

这意味着注释可能具有一个ID值为None。

  • 参数

    • id (Optional[str]) – 用户提供的字母数字ID,用于标识要删除的注释

    • 标签 (Optional[str]) – 一个字符串标签。任何包含此标签的注释将被移除。

    • labels (Optional[Sequence[str]]) – 一个字符串标签列表。任何标签与此列表完全匹配的注释将被移除。

  • 返回类型

    Sequence[Annotation]

  • 返回

    移除的注释实例


获取注释

get_annotations(id=None, index=None)

从注释列表中检索注释。根据注释列表中的索引位置或根据注释ID(可以应用于具有相同ID的一组注释)选择注释。

  • 参数

    • id (str ) – 要检索的注释的字母数字ID

    • index (int ) – 要删除的注释的索引

  • 返回类型

    Sequence[Annotation]

  • 返回

    注释列表


id

属性ID

  • 返回类型

    Optional[str]

  • 返回

    表示整个系统中框架的UUID


来源

属性源

  • 返回类型

    Optional[str]

  • 返回

    URI 链接到数据框的源文件(如果本地文件 file:// 是从源前缀发出的)


宽度

属性宽度

  • 返回类型

    Optional[int]

  • 返回

    数据框的宽度(整数)。如果未设置,则返回 None


高度

属性高度

  • 返回类型

    Optional[int]

  • 返回

    数据框的高度(整数)。如果未设置,则返回 None


时间戳

属性 时间戳

  • 返回类型

    int

  • 返回

    数据帧时间戳(整数),或索引。如果不适用则为零(0)


大小

属性大小

  • 返回类型

    Optional[int]

  • 返回

    源文件的大小(整数),以字节为单位。


哈希

属性哈希

  • 返回类型

    Optional[str]

  • 返回

    源文件内容的哈希值(字符串)。


预览源

属性预览源

  • 返回类型

    str

  • 返回

    数据框的可视化预览的URI链接。(另见preview_uri_timestamp)


上下文ID

属性 context_id

  • 返回类型

    str

  • 返回

    数据框的上下文ID(字符串)。如果未设置,则从源URI填充


预览源时间戳

属性 preview_source_timestamp

  • 返回类型

    int

  • 返回

    时间戳(或索引)(整数)适用于数据框可视化预览的URI链接。 (另请参阅preview_uri)


元数据

属性元数据

  • 返回类型

    dict

  • 返回

    与数据框一起存储的通用字典。


注释

属性注释

  • 返回类型

    List[Annotation]

  • 返回

    适用于此数据框的注释列表(Annotation对象)。 请注意,您可以直接添加到由此属性返回的列表中。


复制

copy()

返回此SingleFrame的副本,带有新的随机UUID。

  • 返回类型

    SingleFrame

  • 返回

    单帧对象


获取本地资源

get_local_source(raise_on_error=False, skip_size_check=False, force_download=False)

检索远程文件并返回一个可以直接使用的本地文件的链接。 :类型 raise_on_error: bool :参数 raise_on_error: 如果为True,则在访问文件失败时引发异常。

如果为False(默认值),在出错时返回None并将错误打印到日志中。

  • 参数

    • skip_size_check (bool) – 如果为True,将返回大小为零字节的文件。

    • force_download (bool) – 如果为True,将忽略本地缓存并下载文件。

    • raise_on_error (bool ) –

  • 返回类型

    Optional[str]

  • 返回

    文件的完整路径 (str)


获取本地掩码源

get_local_mask_source(raise_on_error=False, mask_id=None, skip_size_check=False, force_download=False)

检索远程掩码文件并返回可以直接使用的本地文件的链接。

  • 参数

    • raise_on_error (bool) – 如果为True,则在访问文件失败时引发异常。 如果为False(默认值),则在错误时返回None并将错误打印到日志中。

    • mask_id (Optional[str]) – 如果提供了,返回特定的mask_id本地文件副本。

    • skip_size_check (bool) – 如果为True,将返回大小为零字节的文件。

    • force_download (bool) – 如果为True,将忽略本地缓存并下载文件。

  • 返回类型

    Optional[str]

  • 返回

    文件的完整路径 (str)


获取本地掩码源

get_local_masks_source(raise_on_error=False, skip_size_check=False, force_download=False)

检索远程掩码文件并返回可以直接使用的本地文件链接列表。

  • 参数

    • raise_on_error (bool) – 如果为True,则在访问文件失败时引发异常。 如果为False(默认值),则在出错时将None附加到本地文件列表并将错误打印到日志中。

    • skip_size_check (bool) – 如果为True,将返回大小为零字节的文件。

    • force_download (bool) – 如果为True,将忽略本地缓存并下载文件。

  • 返回类型

    Dict[str, Optional[str]]

  • 返回

    掩码ID(即“00”、“01”等)到文件完整路径(str)的字典


获取本地预览源

get_local_preview_source(raise_on_error=False, skip_size_check=False, force_download=False)

检索远程预览文件并返回可直接使用的本地文件的链接。

  • 参数

    • raise_on_error (bool) – 如果为True,则在访问文件失败时引发异常。 如果为False(默认值),则在错误时返回None并将错误打印到日志中。

    • skip_size_check (bool) – 如果为True,将返回大小为零字节的文件。

    • force_download (bool) – 如果为True,将忽略本地缓存并下载文件。

  • 返回类型

    Optional[str]

  • 返回

    文件的完整路径 (str)


to_dict

to_dict()

返回符合REST API规范的字典

  • 返回类型

    dict

  • 返回

    API兼容的字典,可直接与REST-API一起使用


SingleFrame.from_dict

classmethod from_dict(singleframe_dict)

从符合REST API的字典构建SingleFrame

  • 参数

    singleframe_dict (dict ) – 从 SingleFrame.to_dict() 返回的字典

  • 返回类型

    联合[FrameGroup, 单帧]

  • 返回

    从REST API字典构建的FrameGroup对象


更新源文件哈希值

update_source_files_hash(allow_download=False)

更新内部源文件的哈希(SHA2)值 使用以下内容更新 self.sourcedata:

self.sourcedata['hash'] = {
'source': sha2_hash,
'mask_source': [sha2_hash, ...],
'preview_source': sha2_hash,
}
  • 参数

    allow_download (bool ) – 如果为False(默认),仅计算本地URL文件的哈希值, 否则下载并更新文件内容的哈希值

  • 返回类型

    ()


get_source_hash

get_source_hash()

返回源哈希的字典。 示例:

{
'source': sha2_hash,
'mask_source': [sha2_hash],
'preview_source': sha2_hash,
}
  • 返回类型

    字典[字符串, (整数, 字符串)]

  • 返回

    字典