Please provide complete information as applicable to your setup.
• Hardware Platform (Jetson / GPU) x86 RTX-3060
• DeepStream Version 6.1
• JetPack Version (valid for Jetson only) N/A
• TensorRT Version 8.2.5.1
• NVIDIA GPU Driver Version (valid for GPU only) 525.125.06
• Issue Type( questions, new requirements, bugs) questions
• 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)
Hi,
I have a specific requirement to modify the existing deepstream-app
in order to skip or avoid tracking for specific class ID, however as per some exiting threads or similar topic doesn’t seems to address my problem as pointed out in post #232376, in my case i want to skip tracking only for specif class_id and allow the rest of the detected class_id to go through the tracking element, so i don’t find any straight forward way to achieve this using main app config or something similar, hence i intercepted the tracking probe function and tried to nullify the object_id(tracking ID) and other relevant attributes assigned by the tracking element for the specific class ID as below,
static void write_kitti_track_output (AppCtx * appCtx, NvDsBatchMeta * batch_meta)
{
for (NvDsMetaList * l_frame = batch_meta->frame_meta_list; l_frame != NULL;
l_frame = l_frame->next) {
NvDsFrameMeta *frame_meta = l_frame->data;
guint stream_id = frame_meta->pad_index;
for (NvDsMetaList * l_obj = frame_meta->obj_meta_list; l_obj != NULL;
l_obj = l_obj->next) {
NvDsObjectMeta *obj = (NvDsObjectMeta *) l_obj->data;
if(obj->class_id == 9)
{
obj->tracker_confidence = 0;
obj->object_id = (void *)NULL;
GstBuffer *buf = (GstBuffer *) obj;
g_mutex_lock (&appCtx->app_lock);
nvds_copy_gst_meta_to_frame_meta(buf, batch_meta, frame_meta);
g_mutex_unlock (&appCtx->app_lock);
}
}
}
}
As per above code i tried to directly change the NvDsObjectMeta *obj
with attributes obj->tracker_confidence
and obj->object_id
to null
which should imply no tracking ID is associated for the given class ID and sgie
will infer the ROI for given class ID for every frame. But nvds_copy_gst_meta_to_frame_meta
function is giving segmentation fault while running the app.
So what could be the possible work around for this issue.
Thank you.