Reduced detection accuracy of the secondary model

• Hardware Platform (Jetson / GPU) T4 GPU
• DeepStream Version 5.0
• TensorRT Version 7.0
• NVIDIA GPU Driver Version (valid for GPU only) 10.2

I am building a pipeline that has a people detection model - tracker - secondary model for face mask detection.

I am facing a lot of false negatives for the secondary model. However, upon training, the model achieved a good validation score. I cropped the images detected by the primary model and passed them manually to the face-mask model (without a pipeline). The model could detect most of the masks with a very high probability (98%).

The face mask model is FasterRCNN resnet18. It detects 2 classes: face mask and human face

The configuration file is attached.
config_infer_secondary_face_mask_detection.txt (2.7 KB)

What can I do to increase the detection accuracy of the secondary model in the pipeline?

1 Like

Hey, could you check the difference in pre/post process between w/o a pipeline?

[+1] I faced this problem too, the secondary detection have less accuracy than normal using engine trt or origin model.

So the accuracy is lower than that without a DS pipeline, right?
May I know how do you measure the accuracy?

I crop the object from the primary engine, then use trt exec of secondary engine with that input, the output of secondary engine by trt directly give objects. But DS pipeline do not have.

Hey, could you try as DeepStream SDK FAQ - #9 by mchi to make sure the input object for sgie w/o DS pipeline are the same.