The tracker does not take effect

TX2 NX
jetpack 4.6 
deepstream6.0.1
Yolov5 6.1

The tracker does not take effect, run yolvo5 via deepstream, the output is as follows:

deepstream-app -c deepstream_app_config.txt

Using winsys: x11 
gstnvtracker: Loading low-level lib at /opt/nvidia/deepstream/deepstream-6.0/lib/libnvds_nvmultiobjecttracker.so
~~ CLOG[/dvs/git/dirty/git-master_linux/deepstream/sdk/src/utils/nvmultiobjecttracker/include/modules/NvMultiObjectTracker/NvTrackerParams.hpp, getConfigRoot() @line 54]: [NvTrackerParams::getConfigRoot()] !!![WARNING] Invalid low-level config file caused an exception, but will go ahead with the default config values
gstnvtracker: Batch processing is ON
gstnvtracker: Past frame output is ON
~~ CLOG[/dvs/git/dirty/git-master_linux/deepstream/sdk/src/utils/nvmultiobjecttracker/include/modules/NvMultiObjectTracker/NvTrackerParams.hpp, getConfigRoot() @line 54]: [NvTrackerParams::getConfigRoot()] !!![WARNING] Invalid low-level config file caused an exception, but will go ahead with the default config values
[NvMultiObjectTracker] Initialized
Deserialize yoloLayer plugin: yolo
0:00:06.054614543 10113      0x5f1ac40 INFO                 nvinfer gstnvinfer.cpp:638:gst_nvinfer_logger:<primary_gie> NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::deserializeEngineAndBackend() <nvdsinfer_context_impl.cpp:1900> [UID = 1]: deserialized trt engine from :/home/lcfc/Desktop/test5/model_b1_gpu0_fp32.engine
INFO: [Implicit Engine Info]: layers num: 5
0   INPUT  kFLOAT data            3x640x640       
1   OUTPUT kFLOAT num_detections  1               
2   OUTPUT kFLOAT detection_boxes 25200x4         
3   OUTPUT kFLOAT detection_scores 25200           
4   OUTPUT kFLOAT detection_classes 25200           

0:00:06.054914415 10113      0x5f1ac40 INFO                 nvinfer gstnvinfer.cpp:638:gst_nvinfer_logger:<primary_gie> NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:2004> [UID = 1]: Use deserialized engine model: /home/lcfc/Desktop/test5/model_b1_gpu0_fp32.engine
0:00:06.312491843 10113      0x5f1ac40 INFO                 nvinfer gstnvinfer_impl.cpp:313:notifyLoadModelStatus:<primary_gie> [UID 1]: Load new model:/home/lcfc/Desktop/test5/config_infer_primary_yoloV5.txt sucessfully

Runtime commands:
	h: Print this help
	q: Quit

	p: Pause
	r: Resume

NOTE: To expand a source in the 2D tiled display and view object details, left-click on the source.
      To go back to the tiled display, right-click anywhere on the window.


**PERF:  FPS 0 (Avg)	
**PERF:  0.00 (0.00)	
** INFO: <bus_callback:194>: Pipeline ready

Opening in BLOCKING MODE 
NvMMLiteOpen : Block : BlockType = 260 
NVMEDIA: Reading vendor.tegra.display-size : status: 6 
NvMMLiteBlockCreate : Block : BlockType = 260 
** INFO: <bus_callback:180>: Pipeline running

**PERF:  17.32 (17.21)	
**PERF:  18.01 (17.70)	
**PERF:  17.56 (17.59)	
**PERF:  17.77 (17.70)	
**PERF:  17.45 (17.59)	
**PERF:  13.61 (16.91)	
**PERF:  13.71 (16.41)	
**PERF:  13.74 (16.07)	
**PERF:  13.73 (15.78)	
**PERF:  13.77 (15.57)	
Quitting
[NvMultiObjectTracker] De-initialized
App run successful

I’ve added the following to the config file:

[tracker]
enable=1
# For NvDCF and DeepSORT tracker, tracker-width and tracker-height must be a multiple of 32, respectively
tracker-width=640
tracker-height=384
ll-lib-file=/opt/nvidia/deepstream/deepstream-6.0/lib/libnvds_nvmultiobjecttracker.so
# ll-config-file required to set different tracker types
# ll-config-file=config_tracker_IOU.yml
ll-config-file=config_tracker_NvDCF_perf.yml
# ll-config-file=config_tracker_NvDCF_accuracy.yml
# ll-config-file=config_tracker_DeepSORT.yml
gpu-id=0
enable-batch-process=1
enable-past-frame=1
display-tracking-id=1
[application]
........
kitti-track-output-dir=/home/lcfc/Desktop/track

It looks like the video in tile hasn’t changed, and the txt files in the track is empty

Can you have a try with DS sample which have tracker?

C/C++ Sample Apps Source Details — DeepStream 6.1.1 Release documentation (nvidia.com)

I run source12_1080p_dec_infer-resnet_tracker_tiled_display_fp16_tx2.txt and
source8_1080p_dec_infer-resnet_tracker_tiled_display_fp16_nano.txt (Unchanged)
The app run successful,but all target do not have unique label of themselves(actually no labels)

I am having the same issue as well. The tracker file does not take effect. I am using deepstream 6.0 and yolov4.

@1105781123 did your issue got solved?

not yet,I think the configuration of the track was rejected for some reason.

Can you have a try with below sample without any changes? I can see the person id and car id on the screen.

nvidia@nvidia-desktop:/opt/nvidia/deepstream/deepstream-6.0/sources/apps/sample_apps/deepstream-test2$ ./deepstream-test2-app /opt/nvidia/deepstream/deepstream/samples/streams/sample_720p.h264

I run: deepstream-test2-app /opt/nvidia/deepstream/deepstream/samples/streams/sample_720p.h264 I can see person id and car id like “person 32” “person 300”

In my case, it worked after I gave the full path to ll-config-file.

I changed
ll-config-file=config_tracker_IOU.yml

to

ll-config-file=/home/user/deepstream-custom-app/configs/config_tracker_IOU.yml

2 Likes

Thanks for help first of all.
I edited the path just now,but it did not work,too.Coulu you share your config?
Mine:

[tracker]
enable=1
# For NvDCF and DeepSORT tracker, tracker-width and tracker-height must be a multiple of 32, respectively
tracker-width=640
tracker-height=384
ll-lib-file=/opt/nvidia/deepstream/deepstream-6.0/lib/libnvds_nvmultiobjecttracker.so
# ll-config-file required to set different tracker types
# ll-config-file=config_tracker_IOU.yml
ll-config-file=/opt/nvidia/deepstream/deepstream-6.0/samples/configs/deepstream-app/config_tracker_NvDCF_perf.yml
# ll-config-file=config_tracker_NvDCF_accuracy.yml
# ll-config-file=config_tracker_DeepSORT.yml
gpu-id=0
enable-batch-process=1
enable-past-frame=1
display-tracking-id=1

and run : deepstream-app -c deepstream_app_config.txt

My tracker file is as follows

[tracker]
enable=1
tracker-width=640
tracker-height=384
gpu-id=0
ll-lib-file=/opt/nvidia/deepstream/deepstream-6.0/lib/libnvds_nvmultiobjecttracker.so
ll-config-file=/home/rootroot/deepstream-custom-app/configs/config_tracker_IOU.yml
#ll-config-file=/home/rootroot/deepstream-custom-app/configs/config_tracker_NvDCF_accuracy.yml
#ll-config-file=/home/rootroot/deepstream-custom-app/configs/config_tracker_DeepSort.yml

enable-batch-process=1
#display-tracking-id=1
#enable-past-frame=1

Do you use your own compiled deepstream app, or do you use the deepstream app from Deepstreem SDK ?

I am using the python application. My code is built around deepstream-test2 and deepstream-imagedata-multistream.

deepstream-test2 is using tracker. You should check that.

okay,really thanks for help!

@1105781123 Is the issue solved?

Yes,The detection ability of my model becomes weaker after it is converted to tensor