ml6team / deepstream-python

NVIDIA Deepstream 6.1 Python boilerplate
MIT License
130 stars 36 forks source link

Warning/Error: can't open resnet10.caffemodel_b1_gpu0_fp16.engine #19

Closed flmello closed 1 year ago

flmello commented 1 year ago

Hardware Platform: RTX A4000 NVIDIA-SMI 535.54.03 CUDA Version: 12.2 SO: Ubuntu 22.04 Python: 3.10.6

I can see an warning/error ("WARNING: ../nvdsinfer/nvdsinfer_model_builder.cpp:1482 ") when executing run.py. It complains about not being able to open "resnet10.caffemodel_b1_gpu0_fp16.engine", and this should be a problem, but everything ends OK, inference is being done correctly, and the output too. I expected it not to work, but it works, why? How to avoid this warning?

user@user-Default-string:~/flavio/deepstream-python/deepstream$ sudo docker run -it --gpus all -v ~/flavio/deepstream-python/output:/app/output 9d2546e50693 python3 run.py 'file:///app/data/videos/sample_720p.h264'
[sudo] password for user: 
INFO:app.pipeline.Pipeline:Playing from URI file:///app/data/videos/sample_720p.h264

(gst-plugin-scanner:7): GStreamer-WARNING **: 18:43:36.486: Failed to load plugin '/usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_inferserver.so': libtritonserver.so: cannot open shared object file: No such file or directory

(gst-plugin-scanner:7): GStreamer-WARNING **: 18:43:36.519: Failed to load plugin '/usr/lib/x86_64-linux-gnu/gstreamer-1.0/deepstream/libnvdsgst_udp.so': librivermax.so.0: cannot open shared object file: No such file or directory
INFO:app.pipeline.Pipeline:Creating Pipeline
INFO:app.pipeline.Pipeline:Creating Source bin
INFO:app.pipeline.Pipeline:Creating URI decode bin
INFO:app.pipeline.Pipeline:Creating Stream mux
INFO:app.pipeline.Pipeline:Creating PGIE
INFO:app.pipeline.Pipeline:Creating Tracker
INFO:app.pipeline.Pipeline:Creating Converter 1
INFO:app.pipeline.Pipeline:Creating Caps filter 1
INFO:app.pipeline.Pipeline:Creating Tiler
INFO:app.pipeline.Pipeline:Creating Converter 2
INFO:app.pipeline.Pipeline:Creating OSD
INFO:app.pipeline.Pipeline:Creating Queue 1
INFO:app.pipeline.Pipeline:Creating Converter 3
INFO:app.pipeline.Pipeline:Creating Caps filter 2
INFO:app.pipeline.Pipeline:Creating Encoder
INFO:app.pipeline.Pipeline:Creating Parser
INFO:app.pipeline.Pipeline:Creating Container
INFO:app.pipeline.Pipeline:Creating Sink
INFO:app.pipeline.Pipeline:Linking elements in the Pipeline: source-bin-00 -> stream-muxer -> primary-inference -> tracker -> convertor1 -> capsfilter1 -> nvtiler -> convertor2 -> onscreendisplay -> queue1 -> mp4-sink-bin
INFO:app.pipeline.Pipeline:Starting pipeline
gstnvtracker: Loading low-level lib at /opt/nvidia/deepstream/deepstream/lib/libnvds_nvmultiobjecttracker.so
gstnvtracker: Batch processing is ON
gstnvtracker: Past frame output is OFF
[NvMultiObjectTracker] Initialized
WARNING: ../nvdsinfer/nvdsinfer_model_builder.cpp:1482 Deserialize engine failed because file path: /app/configs/pgies/../opt/nvidia/deepstream/deepstream-6.1/samples/models/Primary_Detector/resnet10.caffemodel_b1_gpu0_fp16.engine open error
INFO: ../nvdsinfer/nvdsinfer_model_builder.cpp:610 [Implicit Engine Info]: layers num: 3
0   INPUT  kFLOAT input_1         3x368x640       
1   OUTPUT kFLOAT conv2d_bbox     16x23x40        
2   OUTPUT kFLOAT conv2d_cov/Sigmoid 4x23x40         

INFO:app.pipeline.Pipeline:Decodebin child added: source
INFO:app.pipeline.Pipeline:Decodebin child added: decodebin0
INFO:app.pipeline.Pipeline:Decodebin child added: h264parse0
INFO:app.pipeline.Pipeline:Decodebin child added: capsfilter0
INFO:app.pipeline.Pipeline:Decodebin child added: nvv4l2decoder0
INFO:app.pipeline.Pipeline:Decodebin pad added
INFO:app.pipeline.Pipeline:Frame Number=0 Number of Objects=0 Vehicle_count=0 Person_count=0
INFO:app.pipeline.Pipeline:Frame Number=1 Number of Objects=0 Vehicle_count=0 Person_count=0
INFO:app.pipeline.Pipeline:Frame Number=2 Number of Objects=0 Vehicle_count=0 Person_count=0
INFO:app.pipeline.Pipeline:Frame Number=3 Number of Objects=0 Vehicle_count=0 Person_count=0
INFO:app.pipeline.Pipeline:Frame Number=4 Number of Objects=0 Vehicle_count=0 Person_count=0
INFO:app.pipeline.Pipeline:Frame Number=5 Number of Objects=10 Vehicle_count=4 Person_count=6
INFO:app.pipeline.Pipeline:Frame Number=6 Number of Objects=10 Vehicle_count=3 Person_count=7
INFO:app.pipeline.Pipeline:Frame Number=7 Number of Objects=10 Vehicle_count=4 Person_count=6
INFO:app.pipeline.Pipeline:Frame Number=8 Number of Objects=8 Vehicle_count=4 Person_count=4
INFO:app.pipeline.Pipeline:Frame Number=9 Number of Objects=9 Vehicle_count=4 Person_count=5
INFO:app.pipeline.Pipeline:Frame Number=10 Number of Objects=10 Vehicle_count=3 Person_count=7
INFO:app.pipeline.Pipeline:Frame Number=11 Number of Objects=11 Vehicle_count=3 Person_count=8
INFO:app.pipeline.Pipeline:Frame Number=12 Number of Objects=11 Vehicle_count=3 Person_count=8
INFO:app.pipeline.Pipeline:Frame Number=13 Number of Objects=9 Vehicle_count=2 Person_count=7
INFO:app.pipeline.Pipeline:Frame Number=14 Number of Objects=7 Vehicle_count=2 Person_count=5
INFO:app.pipeline.Pipeline:Frame Number=15 Number of Objects=10 Vehicle_count=2 Person_count=8

... and so on.

flmello commented 1 year ago

Sorry, not an issue, this is already described at "Caveats" section from README.md

"When running the pipeline you may see an error like ERROR: ../nvdsinfer/nvdsinfer_model_builder.cpp:1484 Deserialize engine failed because file path: /app/data/pgies/yolov4/yolov4_resnet18.etlt_b1_gpu0_fp32.engine open error. This means the .engine file is not present. You can ignore this error as Deepstream will generate this file for you (if an alternative model file such as .etlt or .onnx is present)."