Please provide complete information as applicable to your setup.
• Hardware Platform (Jetson Xavie NX)
• DeepStream 6.1
• JetPack Version 5.0.2-b231
• TensorRT Version
• Issue Type( fps is slow )
• How to reproduce the issue ? ( just run the defult tao deepstream-facelandmark.app with following command)
After installing the deepstream 6.1 and tao apps, I build the deepstream-faciallandmark.app. then I run the following command:
./deepstream-faciallandmark-app 3 …/…/…/configs/facial_tao/sample_faciallandmarks_config.txt v4l2:///dev/video0 ./landmarks
May Camera is logitech input is 1920x1080.
The displayed screen seems to be about at between 0.2 fps. Is it the best speed with Jetson xavier nx??
Any suggestions to make deepstream-facelandmark.app at jetson Nx faster?**
log:
./deepstream-faciallandmark-app 3 …/…/…/configs/facial_tao/sample_faciallandmarks_config.txt v4l2:///dev/video0 ./landmarks
Request sink_0 pad from streammux
Now playing: v4l2:///dev/video0
Using winsys: x11
0:00:08.284452113 9307 0xffff44002330 INFO nvinfer gstnvinfer.cpp:646:gst_nvinfer_logger: NvDsInferContext[UID 2]: Info from NvDsInferContextImpl::deserializeEngineAndBackend() <nvdsinfer_context_impl.cpp:1900> [UID = 2]: deserialized trt engine from :/opt/nvidia/deepstream/deepstream-6.1/samples/deepstream_tao_apps/models/faciallandmark/faciallandmarks.etlt_b32_gpu0_int8.engine
INFO: [FullDims Engine Info]: layers num: 4
0 INPUT kFLOAT input_face_images 1x80x80 min: 1x1x80x80 opt: 32x1x80x80 Max: 32x1x80x80
1 OUTPUT kFLOAT conv_keypoints_m80 80x80x80 min: 0 opt: 0 Max: 0
2 OUTPUT kFLOAT softargmax 80x2 min: 0 opt: 0 Max: 0
3 OUTPUT kFLOAT softargmax:1 80 min: 0 opt: 0 Max: 0
ERROR: [TRT]: 3: Cannot find binding of given name: softargmax,softargmax:1,conv_keypoints_m80
0:00:08.352923691 9307 0xffff44002330 WARN nvinfer gstnvinfer.cpp:643:gst_nvinfer_logger: NvDsInferContext[UID 2]: Warning from NvDsInferContextImpl::checkBackendParams() <nvdsinfer_context_impl.cpp:1867> [UID = 2]: Could not find output layer ‘softargmax,softargmax:1,conv_keypoints_m80’ in engine
0:00:08.353346511 9307 0xffff44002330 INFO nvinfer gstnvinfer.cpp:646:gst_nvinfer_logger: NvDsInferContext[UID 2]: Info from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:2003> [UID = 2]: Use deserialized engine model: /opt/nvidia/deepstream/deepstream-6.1/samples/deepstream_tao_apps/models/faciallandmark/faciallandmarks.etlt_b32_gpu0_int8.engine
0:00:09.583761373 9307 0xffff44002330 INFO nvinfer gstnvinfer_impl.cpp:328:notifyLoadModelStatus: [UID 2]: Load new model:…/…/…/configs/facial_tao/faciallandmark_sgie_config.txt sucessfully
0:00:09.585165641 9307 0xffff44002330 WARN nvinfer gstnvinfer.cpp:643:gst_nvinfer_logger: NvDsInferContext[UID 1]: Warning from NvDsInferContextImpl::initialize() <nvdsinfer_context_impl.cpp:1161> [UID = 1]: Warning, OpenCV has been deprecated. Using NMS for clustering instead of cv::groupRectangles with topK = 20 and NMS Threshold = 0.5
0:00:14.821665570 9307 0xffff44002330 INFO nvinfer gstnvinfer.cpp:646:gst_nvinfer_logger: NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::deserializeEngineAndBackend() <nvdsinfer_context_impl.cpp:1900> [UID = 1]: deserialized trt engine from :/opt/nvidia/deepstream/deepstream-6.1/samples/deepstream_tao_apps/models/faciallandmark/facenet.etlt_b1_gpu0_int8.engine
INFO: [Implicit Engine Info]: layers num: 3
0 INPUT kFLOAT input_1 3x416x736
1 OUTPUT kFLOAT output_bbox/BiasAdd 4x26x46
2 OUTPUT kFLOAT output_cov/Sigmoid 1x26x46
0:00:14.890578721 9307 0xffff44002330 INFO nvinfer gstnvinfer.cpp:646:gst_nvinfer_logger: NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:2003> [UID = 1]: Use deserialized engine model: /opt/nvidia/deepstream/deepstream-6.1/samples/deepstream_tao_apps/models/faciallandmark/facenet.etlt_b1_gpu0_int8.engine
0:00:15.034486837 9307 0xffff44002330 INFO nvinfer gstnvinfer_impl.cpp:328:notifyLoadModelStatus: [UID 1]: Load new model:…/…/…/configs/facial_tao/config_infer_primary_facenet.txt sucessfully
Decodebin child added: source
Decodebin child added: decodebin0
Running…
Decodebin child added: nvjpegdec0
In cb_newpad
###Decodebin pick nvidia decoder plugin.
Frame Number = 0 Face Count = 1
Frame Number = 1 Face Count = 1
Frame Number = 2 Face Count = 1
Frame Number = 3 Face Count = 1
##################################################
config_infer_primary_facenet.txt :
[property]
gpu-id=0
net-scale-factor=0.0039215697906911373
tlt-model-key=nvidia_tlt
tlt-encoded-model=…/…/models/faciallandmark/facenet.etlt
labelfile-path=labels_facenet.txt
int8-calib-file=…/…/models/faciallandmark/facenet_cal.txt
model-engine-file=…/…/models/faciallandmark/facenet.etlt_b1_gpu0_int8.engine
infer-dims=3;416;736
uff-input-order=0
uff-input-blob-name=input_1
batch-size=1
process-mode=1
model-color-format=0
#0=FP32, 1=INT8, 2=FP16 mode
network-mode=1
num-detected-classes=1
interval=0
gie-unique-id=1
output-blob-names=output_bbox/BiasAdd;output_cov/Sigmoid
[class-attrs-all]
pre-cluster-threshold=0.2
group-threshold=1
#xSet eps=0.7 and minBoxes for cluster-mode=1(DBSCAN)
eps=0.2
#minBoxes=3
###################################
facial_landmark_sgie.txt :
[property]
gpu-id=0
model-engine-file=…/…/models/faciallandmark/faciallandmarks.etlt_b32_gpu0_int8.engine
tlt-model-key=nvidia_tlt
tlt-encoded-model=…/…/models/faciallandmark/faciallandmarks.etlt
int8-calib-file=…/…/models/faciallandmark/fpenet_cal.txt
#dynamic batch size
batch-size=32
###0=FP32, 1=INT8, 2=FP16 mode
network-mode=1
num-detected-classes=1
output-blob-names=softargmax,softargmax:1,conv_keypoints_m80
#0=Detection 1=Classifier 2=Segmentation 100=other
network-type=100
#xEnable tensor metadata output
output-tensor-meta=1
#1-Primary 2-Secondary
process-mode=2
gie-unique-id=2
operate-on-gie-id=1
net-scale-factor=1.0
offsets=0.0
input-object-min-width=5
input-object-min-height=5
#0=RGB 1=BGR 2=GRAY
model-color-format=2
[class-attrs-all]
threshold=0.0
##############################
sample_facial_landarks:
numLandmarks=80
maxBatchSize=32
inputLayerWidth=80
inputLayerHeight=80