NvDsFrameMeta¶
- class pyds.NvDsFrameMeta¶
存储批次中帧的元数据。
- 变量:
base_meta –
NvDsBaseMeta
, 帧的基础元数据。pad_index – int, 批次中帧的流复用器组件的填充或端口索引。
batch_id – int, 帧在批次中的位置。帧的
NvBufSurfaceParams
将在NvBufSurface
的 surfaceList 数组中的 batch_id 索引处。frame_num – int, 源的当前帧号。
buf_pts – int, 存储帧的演示时间戳 (PTS)。
ntp_timestamp – int, 存储 ntp (网络时间协议) 时间戳。
source_id – int, 批次中帧的 Source_id,例如 camera_id。它不需要按顺序排列。
num_surfaces_per_frame – int, 此帧中存在的表面数量。当每帧有多个表面时,这是必需的。
source_frame_width – int, 存储输入到 Gst-streammux 的帧宽度。
source_frame_height – int, 存储输入到 Gst-streammux 的帧高度。
surface_type – int, 子帧的表面类型。当每帧有多个表面时,这是必需的。
surface_index – int, 子帧的表面索引。当每帧有多个表面时,这是必需的。
num_obj_meta – int, 附加到当前帧的对象元数据元素数量。
bInferDone – int, 布尔值,指示是否在给定帧上执行推理。
obj_meta_list – 类型为
NvDsObjectMeta
的对象列表,用于给定帧。display_meta_list – 类型为
NvDsDisplayMeta
的对象列表,用于给定帧。frame_user_meta_list – 类型为
NvDsUserMeta
的对象列表,用于给定帧。misc_frame_info – list of int, 用于其他用户特定的批次信息。
reserved – int, 保留供内部使用。
使用示例
batch_meta = pyds.gst_buffer_get_nvds_batch_meta(hash(gst_buffer)) #Retrieve batch metadata from gst_buffer l_frame = batch_meta.frame_meta_list while l_frame is not None: try: frame_meta = pyds.NvDsFrameMeta.cast(l_frame.data) #Must cast data in frame_meta_list to NvDsFrameMeta object except StopIteration: break frame_number=frame_meta.frame_num #Retrieve current frame number from NvDsFrameMeta object num_rects = frame_meta.num_obj_meta #Retrieve number of objects in frame from NvDsFrameMeta object l_obj=frame_meta.obj_meta_list #Retrieve list of NvDsObjectMeta objects in frame from NvDsFrameMeta object
- cast(*args, **kwargs)¶
重载函数。
cast(self: capsule) -> pyds.NvDsFrameMeta
cast given object/data to
NvDsFrameMeta
, 调用 `pyds.NvDsFrameMeta.cast(data)`cast(self: int) -> pyds.NvDsFrameMeta
cast given object/data to
NvDsFrameMeta
, 调用 `pyds.NvDsFrameMeta.cast(data)`