Error while use onnx model in DS6.0

Hi sir,here is my env info:
**• x86 platform with RTX 3060
**• DeepStream Version 6.0
**• TensorRT Version 8.2.2
**• CUDA Veersion 11.5
**• NVIDIA GPU Driver Version 495.29.05

I follow the Hello AI World step link below ,create an ONNX model and want to use it in my DS6.0 server

But got some error information while use the ONNX model like this:


Upload the config file, modle file and label file with one package, Facilitate troubleshooting!
toy.tar.gz (37.2 MB)

I saw this error, could you check if the lable file exists?

I check the label file error and resolve it,but the model still can’t running and then stucked in blcak screen.

you need to change “output-blob-names=output_cov/Sigmoid;output_bbox/BiasAdd” in config_infer_primary_detectnet_v2.txt to be the output name of your model

Ok,I change the config file with output-blob-names=scores;boxes,and the warning message disappeared,but still got two error message in the end.
like this:

Here is the model information,thank you sir!

Hi @Bigmao ,
For a detector network,

  1. you’d better to set “network-type=0” instead of “is-classifier=0” because “is-classifier” is deprecated
  2. current issue is on the post-processing , there are two options
    2.1 if you want to leverage the post-processor in DeepStream which implemenatiaon is in DetectPostprocessor::parseBoundingBox(…) function in file /opt/nvidia/deepstream/deepstream/sources/libs/nvdsinfer/nvdsinfer_context_impl_output_parsing.cpp, the network outputs must follow the requirement of this parser function, e.g. the output layers need to be “bbox” (for bboxes) and “cov” (for confidence), and some other requirements as you can check from the code. I edited your model outputs to be “bbox” and “cov”, but it still failed on post-processor, so I would suggested you to implement your own bbox parser function.
    2.2 custom your own bbox parser function, for this, you could refer to DeepStream sample - /opt/nvidia/deepstream/deepstream/sources/objectDetector_SSD
is-classifier=0
output-blob-names=MarkOutput_0
parse-bbox-func-name=NvDsInferParseCustomSSD
custom-lib-path=nvdsinfer_custom_impl_ssd/libnvdsinfer_custom_impl_ssd.so

Thanks!

Hi mchi,
Thank you for your help, but I not familiar with bbox parser function, and can’t found a doc about this.So I read the nvdsparsebbox_ssd.cpp code only changed the class number part.
Make code with cuda 11.5 and revised 2 config file,but still got an error.
Attaching the relevant file for reference, Sir!

The log is very straightforward, the problem is in parser.
You have to understand the meaning of the output data of the two output layers, and then implement the parser for yourself.

1 Like

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