Using DFC and YOLO11n on a custom visdrone dataaset.
I’m getting fairly terrible metrics (AP@50 = .39) in my quantized (and FP_OPTIMIZED) models compared to my .onnx model (AP@50 = .50). I’ve so far been unable to run the native model on the validation set due to the confusion with the model outputs
I’m using a custom visdrone dataset with two classes. With the model script defined to include NMS, the quantized model will have an expected shape of (2, 5, 100) (2 classes, xyxy+conf, 100 detections)
Yet, when I try check my validation results on using the simple parsed model (no optimization), I’ll get this output shape, (80,80,64), which is very similar to the 1x64x80x80 I have in the single /model.23/cv2.0/cv2.0.2/Conv node (which happens to be the first end node listed in the end_node_names
runner = ClientRunner(hw_arch=chosen_hw_arch)
hn, npz = runner.translate_onnx_model(
onnx_path,
onnx_model_name,
start_node_names=["/model.0/conv/Conv"],
end_node_names=["/model.23/cv2.0/cv2.0.2/Conv",
"/model.23/cv3.0/cv3.0.2/Conv",
"/model.23/cv2.1/cv2.1.2/Conv",
"/model.23/cv3.1/cv3.1.2/Conv",
"/model.23/cv2.2/cv2.2.2/Conv",
"/model.23/cv3.2/cv3.2.2/Conv"],
net_input_shapes={"/model.0/conv/Conv": [1, 3, 640, 640]},
)
How can I process/interpret these outputs so I can compare my .onnx model with the parsed .har model?