Deepstream 3d-action-recognition app with deepstream test5 app as secondary gie

• GPU RTX 3050 ti
• DS 6.3
• NVIDIA GPU Driver Version 535
• New Requirement

I am intergrating 3d action recognition app(2d pretrained model) with deepstream app/test5 as sgie, primary model as person detector and secondary as action recognition. I added custom output parser function from action recognition app to deepstream app sgie(as a probe), but no secondary classfications coming

Main config file

[application]
enable-perf-measurement=1
perf-measurement-interval-sec=5

[tiled-display]
enable=1
rows=2
columns=2
width=1280
height=720
gpu-id=0
nvbuf-memory-type=0

[source0]
enable=1
type=3
uri=file:///media/sameer/Extras/deepstream-6.3/samples/streams/sample_walk.mov
num-sources=1
gpu-id=0
cudadec-memtype=0

[source1]
enable=1
type=3
uri=file:///media/sameer/Extras/deepstream-6.3/samples/streams/sample_run.mov
num-sources=1
gpu-id=0
cudadec-memtype=0

[sink0]
enable=1
type=2
sync=1
source-id=0
gpu-id=0
nvbuf-memory-type=0

[osd]
enable=1
gpu-id=0
border-width=1
text-size=15
display-text=1
text-color=1;1;1;1;
text-bg-color=0.3;0.3;0.3;1
font=Serif
show-clock=0
clock-x-offset=800
clock-y-offset=820
clock-text-size=12
clock-color=1;0;0;0
nvbuf-memory-type=0

[streammux]
gpu-id=0
live-source=0
batch-size=4
batched-push-timeout=40000
width=1920
height=1080
enable-padding=0
nvbuf-memory-type=0

[primary-gie]
enable=1
gpu-id=0
input-tensor-meta=0
batch-size=4
bbox-border-color0=1;0;0;1
bbox-border-color1=0;1;1;1
bbox-border-color2=0;0;1;1
bbox-border-color3=0;1;0;1
interval=0
gie-unique-id=1
nvbuf-memory-type=0
config-file=config_infer_primary.txt

[secondary-pre-process0]
enable=1
operate-on-gie-id=1
config-file=///media/sameer/Extras/deepstream-6.3/sources/apps/sample_apps/deepstream-app-3daction/config_preprocess_2d_custom.txt

[tracker]
enable=1
respectively
tracker-width=960
tracker-height=544
ll-lib-file=/opt/nvidia/deepstream/deepstream/lib/libnvds_nvmultiobjecttracker.so
ll-config-file=config_tracker_NvDCF_perf.yml
gpu-id=0
display-tracking-id=1

[secondary-gie0]
enable=1
gpu-id=0
input-tensor-meta=1
batch-size=4
gie-unique-id=2
operate-on-gie-id=1
operate-on-class-ids=1;2;3;4
config-file=///media/sameer/Extras/deepstream-6.3/sources/apps/sample_apps/deepstream-app-3daction/config_infer_primary_2d_action.txt

[tests]
file-loop=0

preprocess config

[property]
enable=1
target-unique-ids=2

# 0=process on objects 1=process on frames

process-on-frame=0

# network-input-shape: batch, channel x sequence, height, width

network-input-shape= 4;192;224;224

network-input-shape= 4;96;224;224

# 0=RGB, 1=BGR, 2=GRAY

network-color-format=0
# 0=NCHW, 1=NHWC, 2=CUSTOM
network-input-order=2
# 0=FP32, 1=UINT8, 2=INT8, 3=UINT32, 4=INT32, 5=FP16
tensor-data-type=5
tensor-name=input_rgb

processing-width=224
processing-height=224

# 0=NVBUF_MEM_DEFAULT 1=NVBUF_MEM_CUDA_PINNED 2=NVBUF_MEM_CUDA_DEVICE
# 3=NVBUF_MEM_CUDA_UNIFIED  4=NVBUF_MEM_SURFACE_ARRAY(Jetson)

scaling-pool-memory-type=0
# 0=NvBufSurfTransformCompute_Default 1=NvBufSurfTransformCompute_GPU
# 2=NvBufSurfTransformCompute_VIC(Jetson)
scaling-pool-compute-hw=0
# Scaling Interpolation method
# 0=NvBufSurfTransformInter_Nearest 1=NvBufSurfTransformInter_Bilinear 2=NvBufSurfTransformInter_Algo1
# 3=NvBufSurfTransformInter_Algo2 4=NvBufSurfTransformInter_Algo3 5=NvBufSurfTransformInter_Algo4
# 6=NvBufSurfTransformInter_Default
scaling-filter=0
tensor-buf-pool-size=8

custom-lib-path=/opt/nvidia/deepstream/deepstream/lib/libnvds_custom_sequence_preprocess.so
custom-tensor-preparation-function=CustomSequenceTensorPreparation

[user-configs]
channel-scale-factors=0.007843137;0.007843137;0.007843137
channel-mean-offsets=127.5;127.5;127.5
stride=1
subsample=0

#[group-0]
#src-ids=0;1
#process-on-roi=0
#roi-params-src-0=0;0;1500;720
#roi-params-src-1=0;0;1500;720
#roi-params-src-2=0;0;1280;720
#roi-params-src-3=0;0;1280;720

config_infer_primary_2d_action.txt

[property]
gpu-id=0

tlt-encoded-model=/media/sameer/Extras/deepstream-6.3/sources/apps/sample_apps/deepstream-test5-3daction/resnet18_2d_rgb_hmdb5_32.etlt
tlt-model-key=nvidia_tao
#model-engine-file=/media/sameer/Extras/deepstream-6.3/sources/apps/sample_apps/deepstream-app-3daction/resnet18_2d_rgb_hmdb5_32.etlt_b4_gpu0_fp32.engine

labelfile-path=/media/sameer/Extras/deepstream-6.3/sources/apps/sample_apps/deepstream-app-3daction/labels.txt
batch-size=4
process-mode=2

input-tensor-from-meta=1

network-mode=2
gie-unique-id=2

network-type=1

output-tensor-meta=1
tensor-meta-pool-size=8

There is nvpreprocess for SGIE sample in /opt/nvidia/deepstream/deepstream/samples/configs/deepstream-app/config_preprocess_sgie.txt

The nvpreprocess plugin and library are open source. The /opt/nvidia/deepstream/deepstream/sources/apps/sample_apps/deepstream-3d-action-recognition/custom_sequence_preprocess is also open source. Please refer to the samples and debug with the source code.

config_preprocess_sgie.txt-in this file
[group-1]
src-ids=2
custom-input-transformation-function=CustomAsyncTransformation
operate-on-class-ids=0
process-on-all-objects=0
roi-params-src-2=1300;300;600;700
input-object-min-width=100
input-object-min-height=100

in config_preprocess_2d_custom.txt-
[group-0]
src-ids=0;1;2;3
process-on-roi=1
roi-params-src-0=0;0;1280;720
roi-params-src-1=0;0;1280;720
roi-params-src-2=0;0;1280;720
roi-params-src-3=0;0;1280;720

what to replace in place of “CustomAsyncTransformation”

The “process-on-frame=0” in property group, “operate-on-class-ids=x” and “process-on-all-objects=1” in group group should be set for SGIE.

There is no update from you for a period, assuming this is not an issue anymore. 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.