I was experimenting with the pre-trained YOLO11n detection model from Ultralytics, and I found that if I convert it into a Blob like this:
$ python3 -c 'from ultralytics import YOLO ; model = YOLO("yolo11n.pt") ; model.export(format="onnx")'
$ python3 -m blobconverter --onnx-model yolo11n.onnx --shaves 3
...and then try to run the model using the YOLOv8 example code, I get the following error over and over again:
[1944301041162F1200] [1.3] [3.861] [DetectionNetwork(1)] [error] Mask is not defined for output layer with width '8400'. Define at pipeline build time using: 'setAnchorMasks' for 'side8400'.
If however I use the online model exporter to convert the weights file yolo11n.pt
into a blob, then it works.
Why is that? Is there some missing blobconverter
option that the online tool applies automatically behind the scenes?