Action Recognition Net Integration with Deepstream

Please provide complete information as applicable to your setup.

• Hardware Platform GPU
• DeepStream Version 7.0
• TensorRT Version 8.6.1.6
• NVIDIA GPU Driver Version 535.247.01
**• How to reproduce the issue ? **
The sample deepstream 3d action recognition app which is throwing an error while running the pipeline on sample videos. The error is:
/opt/nvidia/deepstream/deepstream-7.0/sources/apps/sample_apps/deepstream-3d-action-recognition$ ./deepstream-3d-action-recognition -c deepstream_action_recognition_config.txt
num-sources = 4
Now playing: file:///opt/nvidia/deepstream/deepstream/samples/streams/sample_walk.mov, file:///opt/nvidia/deepstream/deepstream/samples/streams/sample_ride_bike.mov, file:///opt/nvidia/deepstream/deepstream/samples/streams/sample_run.mov, file:///opt/nvidia/deepstream/deepstream/samples/streams/sample_push.mov,
WARNING: ../nvdsinfer/nvdsinfer_model_builder.cpp:1494 Deserialize engine failed because file path: /opt/nvidia/deepstream/deepstream-7.0/sources/apps/sample_apps/deepstream-3d-action-recognition/./resnet18_3d_rgb_hmdb5_32.etlt_b4_gpu0_fp16.engine open error
0:00:08.512995051 111901 0x5bfa5e6c60f0 WARN nvinfer gstnvinfer.cpp:679:gst_nvinfer_logger: NvDsInferContext[UID 1]: Warning from NvDsInferContextImpl::deserializeEngineAndBackend() <nvdsinfer_context_impl.cpp:2083> [UID = 1]: deserialize engine from file :/opt/nvidia/deepstream/deepstream-7.0/sources/apps/sample_apps/deepstream-3d-action-recognition/./resnet18_3d_rgb_hmdb5_32.etlt_b4_gpu0_fp16.engine failed
0:00:08.753454414 111901 0x5bfa5e6c60f0 WARN nvinfer gstnvinfer.cpp:679:gst_nvinfer_logger: NvDsInferContext[UID 1]: Warning from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:2188> [UID = 1]: deserialize backend context from engine from file :/opt/nvidia/deepstream/deepstream-7.0/sources/apps/sample_apps/deepstream-3d-action-recognition/./resnet18_3d_rgb_hmdb5_32.etlt_b4_gpu0_fp16.engine failed, try rebuild
0:00:08.753488670 111901 0x5bfa5e6c60f0 INFO nvinfer gstnvinfer.cpp:682:gst_nvinfer_logger: NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::buildModel() <nvdsinfer_context_impl.cpp:2109> [UID = 1]: Trying to create engine from model files
NvDsInferCudaEngineGetFromTltModel: Failed to open TLT encoded model file /opt/nvidia/deepstream/deepstream-7.0/sources/apps/sample_apps/deepstream-3d-action-recognition/./resnet18_3d_rgb_hmdb5_32.etlt
ERROR: ../nvdsinfer/nvdsinfer_model_builder.cpp:733 Failed to create network using custom network creation function
ERROR: ../nvdsinfer/nvdsinfer_model_builder.cpp:799 Failed to get cuda engine from custom library API
0:00:16.271412169 111901 0x5bfa5e6c60f0 ERROR nvinfer gstnvinfer.cpp:676:gst_nvinfer_logger: NvDsInferContext[UID 1]: Error in NvDsInferContextImpl::buildModel() <nvdsinfer_context_impl.cpp:2129> [UID = 1]: build engine file failed
free(): double free detected in tcache 2
Aborted (core dumped)

How to resolve this?

Have you modified the configuration file? 3d_action does not require a custom engine to generate functions

I can run it correctly on DS-7.0 and DS-7.1

I did make the changes as mentioned in the README file.
config_infer_primary_3d_action.txt (2.6 KB)
deepstream_action_recognition_config.txt (2.0 KB)
config_preprocess_3d_custom.txt (2.5 KB)
Find the Configuration files for the deepstream-app and action recognition net above.

This may be caused by incorrect installation. Try using the Docker image of DS7.1. The new version of DeepStream no longer supports etlt, but only ONNX.

export DISPLAY=:0 

xhost +

docker run --gpus all -it --rm --network=host --privileged -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=$DISPLAY -w /opt/nvidia/deepstream/deepstream-7.1 nvcr.io/nvidia/deepstream:7.1-gc-triton-devel

Thanks for your support the application is working when etlt file is replaced with the onnx file.

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