Sample deepstream_nvdsanalytics_test - Can’t remove object outside ROI from meta object list

Hello,

I’m running the sample deepstream_nvdsanalytics_test (c++) and I don’t understand why the objects outside ROI are not deleted.

For example, I defined a ROI and as you can see, there is one vehicle in the ROI but the log still contains more vehicles (7):
Frame Number = 104 of Stream = 0 ; Number of objects = 7 ; Vehicle Count = 7 ; Objs in ROI RF = 1

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)

1 Like

Please provide complete information as applicable to your setup.

• Hardware Platform (Jetson / GPU)
Jetson Nano
• DeepStream Version
Deepstream 6.0.1
• JetPack Version (valid for Jetson only)
Jetpack 4.6.2
• TensorRT Version
TensorRT 8
• Issue Type( questions, new requirements, bugs)
I’m running the sample deepstream_nvdsanalytics_test (c++) and I don’t understand why the objects outside ROI are not deleted.
For example, I defined a ROI and as you can see, there is one vehicle in the ROI but the log still contains more vehicles (7):
Frame Number = 104 of Stream = 0 ; Number of objects = 7 ; Vehicle Count = 7 ; Objs in ROI RF = 1

• 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)
Docker image nvcr.io/nvidia/deepstream-l4t-6.0.1-samples
Sample deepstream_nvdsanalytics_test (c++)

did you modify the code or configuration file? if yes, please share the diff.

I have not changed anything

what is your video input?

/opt/nvidia/deepstream/deepstream-6.0/samples/streams/sample_1080p_h264.mp4

“Number of objects = 7” means there are 7 objects in the whole picture, “Vehicle Count = 7” means there are 7 vehicles in the whole picture, “Objs in ROI RF = 1” means there are one object in the ROI. please refer to nvdsanalytics_src_pad_buffer_probe of deepstream_nvdsanalytics_test.cpp,

In the config_nvdsanalytics.txt file:

## Per stream configuration
[roi-filtering-stream-0]
#enable or disable following feature
enable=1
#ROI to filter select objects, and remove from meta data
roi-RF=700;0;1300;0;1300;200;700;200
#remove objects in the ROI
inverse-roi=0
class-id=-1

It is indicated that the filtered objects are removed from the metadata (#ROI to filter select objects, and remove from meta data). However, the objects are still in obj_meta_list.
Each object (l_obj) is browsed in the obj_meta_list with the loop :
for (l_frame = batch_meta->frame_meta_list; l_frame != NULL; l_frame = l_frame->next)

And the filtered objects are still in this list.

How can we remove them?

Thanks

“inverse-roi = 0” means only count the objects inside the ROI, it will not remove object mea, if want to remove meta, please refer to Cannot remove obj from frame meta - #6 by minhsaco99

There is no update from you for a period, assuming this is not an issue any more.
Hence we are closing this topic. If need further support, please open a new one.
Thanks

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