Problems running LPR app

• Hardware Jetson Nano
• CUDA version 10.2
• Deepstream app 5.1

I am trying to conect a camera to my ALPR app using deepstream-app so I detect car license plates, i followed all the steps you have given but i still have some isues
I am having this error while running my program, I am looking fordward to get some help because i do not know how solve them:

Warning: ‘input-dims’ parameter has been deprecated. Use ‘infer-dims’ instead.
Warning: ‘input-dims’ parameter has been deprecated. Use ‘infer-dims’ instead.
Unknown or legacy key specified ‘process_mode’ for group [property]
Now playing: rtsp://192.168.8.120/av0_1,

Using winsys: x11
0:00:08.237425030 9427 0x55aa7e84d0 INFO nvinfer gstnvinfer.cpp:619:gst_nvinfer_logger: NvDsInferContext[UID 3]: Info from NvDsInferContextImpl::deserializeEngineAndBackend() <nvdsinfer_context_impl.cpp:1702> [UID = 3]: deserialized trt engine from :/opt/nvidia/deepstream/deepstream-5.1/samples/models/LP/LPR/lpr_us_onnx_b1.engine
INFO: [FullDims Engine Info]: layers num: 3
0 INPUT kFLOAT image_input 3x48x96 min: 1x3x48x96 opt: 4x3x48x96 Max: 16x3x48x96
1 OUTPUT kINT32 tf_op_layer_ArgMax 24 min: 0 opt: 0 Max: 0
2 OUTPUT kFLOAT tf_op_layer_Max 24 min: 0 opt: 0 Max: 0

ERROR: [TRT]: INVALID_ARGUMENT: Cannot find binding of given name: output_bbox/BiasAdd
0:00:08.237648472 9427 0x55aa7e84d0 WARN nvinfer gstnvinfer.cpp:616:gst_nvinfer_logger: NvDsInferContext[UID 3]: Warning from NvDsInferContextImpl::checkBackendParams() <nvdsinfer_context_impl.cpp:1670> [UID = 3]: Could not find output layer ‘output_bbox/BiasAdd’ in engine
ERROR: [TRT]: INVALID_ARGUMENT: Cannot find binding of given name: output_cov/Sigmoid
0:00:08.237697483 9427 0x55aa7e84d0 WARN nvinfer gstnvinfer.cpp:616:gst_nvinfer_logger: NvDsInferContext[UID 3]: Warning from NvDsInferContextImpl::checkBackendParams() <nvdsinfer_context_impl.cpp:1670> [UID = 3]: Could not find output layer ‘output_cov/Sigmoid’ in engine
0:00:08.237727380 9427 0x55aa7e84d0 INFO nvinfer gstnvinfer.cpp:619:gst_nvinfer_logger: NvDsInferContext[UID 3]: Info from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:1806> [UID = 3]: Use deserialized engine model: /opt/nvidia/deepstream/deepstream-5.1/samples/models/LP/LPR/lpr_us_onnx_b1.engine
0:00:08.268150616 9427 0x55aa7e84d0 INFO nvinfer gstnvinfer_impl.cpp:313:notifyLoadModelStatus: [UID 3]: Load new model:dstest2_sgie2_config.txt sucessfully
0:00:08.339355673 9427 0x55aa7e84d0 INFO nvinfer gstnvinfer.cpp:619:gst_nvinfer_logger: NvDsInferContext[UID 2]: Info from NvDsInferContextImpl::deserializeEngineAndBackend() <nvdsinfer_context_impl.cpp:1702> [UID = 2]: deserialized trt engine from :/opt/nvidia/deepstream/deepstream-5.1/samples/models/LP/LPD/usa_pruned.etlt_b1_gpu0_fp16.engine
INFO: [Implicit Engine Info]: layers num: 3
0 INPUT kFLOAT input_1 3x480x640
1 OUTPUT kFLOAT output_bbox/BiasAdd 4x30x40
2 OUTPUT kFLOAT output_cov/Sigmoid 1x30x40

0:00:08.339501092 9427 0x55aa7e84d0 INFO nvinfer gstnvinfer.cpp:619:gst_nvinfer_logger: NvDsInferContext[UID 2]: Info from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:1806> [UID = 2]: Use deserialized engine model: /opt/nvidia/deepstream/deepstream-5.1/samples/models/LP/LPD/usa_pruned.etlt_b1_gpu0_fp16.engine
0:00:08.349475709 9427 0x55aa7e84d0 INFO nvinfer gstnvinfer_impl.cpp:313:notifyLoadModelStatus: [UID 2]: Load new model:dstest2_sgie1_config.txt sucessfully
gstnvtracker: Loading low-level lib at /opt/nvidia/deepstream/deepstream-5.1/lib/libnvds_nvdcf.so
gstnvtracker: Batch processing is ON
gstnvtracker: Past frame output is OFF
OpenCV Error: Unknown error code -49 (Input file is empty) in cvOpenFileStorage, file /opencv/opencv-3.3.1/modules/core/src/persistence.cpp, line 4484
~~ CLOG[/dvs/git/dirty/git-master_linux/deepstream/sdk/src/utils/nvdcf/src/modules/NvDCF/NvDCF.cpp, NvDCF() @line 695]: !!![WARNING] Invalid low-level config file is provided. Will go ahead with default values
[NvDCF] Initialized
0:00:09.861695499 9427 0x55aa7e84d0 INFO nvinfer gstnvinfer.cpp:619:gst_nvinfer_logger: NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::deserializeEngineAndBackend() <nvdsinfer_context_impl.cpp:1702> [UID = 1]: deserialized trt engine from :/opt/nvidia/deepstream/deepstream-5.1/samples/models/tlt_pretrained_models/trafficcamnet/resnet18_trafficcamnet_pruned.etlt_b1_gpu0_fp16.engine
INFO: [Implicit Engine Info]: layers num: 3
0 INPUT kFLOAT input_1 3x544x960
1 OUTPUT kFLOAT output_bbox/BiasAdd 16x34x60
2 OUTPUT kFLOAT output_cov/Sigmoid 4x34x60

0:00:09.861832585 9427 0x55aa7e84d0 INFO nvinfer gstnvinfer.cpp:619:gst_nvinfer_logger: NvDsInferContext[UID 1]: Info from NvDsInferContextImpl::generateBackendContext() <nvdsinfer_context_impl.cpp:1806> [UID = 1]: Use deserialized engine model: /opt/nvidia/deepstream/deepstream-5.1/samples/models/tlt_pretrained_models/trafficcamnet/resnet18_trafficcamnet_pruned.etlt_b1_gpu0_fp16.engine
0:00:09.877539966 9427 0x55aa7e84d0 INFO nvinfer gstnvinfer_impl.cpp:313:notifyLoadModelStatus: [UID 1]: Load new model:nvdsanalytics_pgie_config.txt sucessfully
Decodebin child added: source
Running…
Decodebin child added: decodebin0
Decodebin child added: decodebin1
Decodebin child added: rtph264depay0
Decodebin child added: rtppcmadepay0
Decodebin child added: h264parse0
Decodebin child added: capsfilter0
Decodebin child added: alawdec0
In cb_newpad
Decodebin child added: nvv4l2decoder0
Seting bufapi_version

(deepstream-nvdsanalytics-test:9427): GLib-GObject-WARNING **: 11:10:08.586: g_object_set_is_valid_property: object class ‘nvv4l2decoder’ has no property named ‘bufapi-version’
Opening in BLOCKING MODE
Opening in BLOCKING MODE
NvMMLiteOpen : Block : BlockType = 261
NVMEDIA: Reading vendor.tegra.display-size : status: 6
NvMMLiteBlockCreate : Block : BlockType = 261
In cb_newpad
FN = 0 of Str = 0, Nobj = 2 NVeh = 2 NPers = 0 NLic = 0
FN = 1 of Str = 0, Nobj = 2 NVeh = 2 NPers = 0 NLic = 0
FN = 2 of Str = 0, Nobj = 2 NVeh = 2 NPers = 0 NLic = 0
FN = 3 of Str = 0, Nobj = 2 NVeh = 2 NPers = 0 NLic = 0
FN = 4 of Str = 0, Nobj = 2 NVeh = 2 NPers = 0 NLic = 0
FN = 5 of Str = 0, Nobj = 2 NVeh = 2 NPers = 0 NLic = 0
FN = 6 of Str = 0, Nobj = 2 NVeh = 2 NPers = 0 NLic = 0
FN = 7 of Str = 0, Nobj = 2 NVeh = 2 NPers = 0 NLic = 0
open dictionary file failed.
0:00:13.683961651 9427 0x55aa7de140 ERROR nvinfer gstnvinfer.cpp:613:gst_nvinfer_logger: NvDsInferContext[UID 3]: Error in NvDsInferContextImpl::fillClassificationOutput() <nvdsinfer_context_impl_output_parsing.cpp:796> [UID = 3]: Failed to parse classification attributes using custom parse function
terminate called after throwing an instance of ‘std::bad_alloc’
what(): std::bad_alloc
Aborted

See https://docs.nvidia.com/tlt/tlt-user-guide/text/character_recognition/lprnet.html#deploying-the-lprnet-in-the-deepstream-sample,

Deploying the LPRNet in the DeepStream sample

Once you get the TensorRT engine of LPRNet, you could deploy it into DeepStream’s LPDR sample. This sample is a complete solution including car detection, license plate detection, and license plate recognition.

Please try to run inference with the official sample as above mentioned.

Thank you for the advice. I have checked the solution sample. I have realized that my problem was that I did not download the dict.txt. Finally, my problem has been solved.

Greetings

1 Like

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