NvDsMetaPool vs NvDsMetaList & NvDsObjectMeta vs NvDsClassifierMeta

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU)
• DeepStream Version
• JetPack Version (valid for Jetson only)
• TensorRT Version
• NVIDIA GPU Driver Version (valid for GPU only)
• Issue Type( questions, new requirements, bugs)
• How to reproduce the issue ? (This is for bugs. Including which sample app is using, the configuration files content, the command line used and other details for reproducing)
• Requirement details( This is for new requirement. Including the module name-for which plugin or for which sample application, the function description)

What exactly is the difference between the two?

NvDsMetaPool seems to include two NvDsMetaLists (empty_list and full_list), but I am bit confused what they do in a pipeline. For example, how frameMetaPool and frameMetaList differ?

Also, in my understanding NvDsObjectMetas are detected objects in a frame. So the number of ObjectMetas will be same as the number of instances detected in a given frame. Then, what is a ClassifierMeta? How come an ObjectMeta can have multiple ClassifierMetas?

1 Like

Hi @junghyun.hwang , Basicly, the NvDsClassifierMetaList or NvDsMetaLists is a GList. You can refer the ink below
https://docs.gtk.org/glib/struct.List.html
Its function is to optimize algorithms such as search a specific Metadata.

Yeah, then how does pool and lists differ?

Pool is defined by deepstream, lists is defined by GObject. We add some other parameters into the pool struct. You can read the source code from below path in your env, Thanks

/opt/nvidia/deepstream/deepstream-x.x/sources/includes/nvdsmeta.h
1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.