Nvds_obj_enc_process save the wrong source image

• Hardware Platform Jetson NX
• DeepStream Version 5.1
• JetPack Version 4.5.1
• TensorRT Version 7.1.3

Hello, Sir/Madam
I am running the deepsteam-test5 in my job now. I want to save the image on Jetson platform.
When I set up multiple steams, I found nvds_obj_enc_process has problem. It saved the wrong source image:

This is my config file and pgie config file
test5_dec_infer-resnet_tracker_sgie_tiled_display_int8.txt (10.1 KB)
pgie_yolov4_tlt_config.txt (2.4 KB)

When I ran the same code at my dGPU, I got the correct stream image:

My question is that why cause the different result between Jetson and dGPU because of HW? How to solve the problem like this in Jetson platform? Please help me!

This is the code
deepstream_app.h (6.3 KB)
deepstream_app.cpp (50.3 KB)

Thank you very much.

The Issue you mentioned reproed, we are investigating, will update once progress.

Try with this post Object_id and source id in file name of image save by deepstream-transfer-learning-app is wrong - #13 by XiangjiBU

I tried with this and found the problem. I have the correct “source_id” and incorrect “batch_id” if [streammux] batch_size>1. The function
NvDsFrameMeta *f_meta = (NvDsFrameMeta*) g_list_nth(batch_meta->frame_meta_list, source_id)->data;
solved when frame_meta catch the correct batch_id.
So the new problem is how to ensure the correct batch_id from frame_meta?

The muxer uses a round-robin algorithm to collect frames from the sources. batch_id for each frame does not equal for dGPU and Jetson.

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