Scailable Nx AI Manager Custom Trained Object Detection Model (YOLOv8 or YOLOv10) Doesn't Predict

In Progress

Comments

6 comments

  • Avatar
    Josef Joubert

    Hi, thank you for question.

     

    Since you got a model up and running, I'm assuming that the device and the installation works well, and the problem lies with the specific models. 

    Did you have a look at the ONNX Requirements? https://nx.docs.scailable.net/for-data-scientists/onnx-requirements
    Specifically note the ONNX version, static input sizes and named outputs. 

    If your model adheres to these requirements, but still doesn't work, is there a way you can make this model available to us so we can have a look at what the problem might be?

    0
    Comment actions Permalink
  • Avatar
    Benedictus Visto Kartika

    Hi, thank you for your reply.

    Recently we managed to make our custom fine tuned YOLOv8 object detection model works well, but for the YOLOv10 we managed to make it work as well but not really well. We understand that the model is very new, recently published, we think that the main reason is because when we do so.check(g) for the YOLOv10, it has quite a lot operator that is not supported yet.
    Is it normal that the model can run on nx despite many operators are not supported yet?

    Yes, The main problem is somehow solved, but if you guys have insight or tested on the YOLOv10 performance, please let us know. Thank you.

    Above is the YOLOv8 model. Our custom fine tuned model.

    Above is the YOLOv10 model. This is the base model by them YOLOv10n.pt that we convert to onnx

    The YOLOv10 model that we tested is available on this link

    0
    Comment actions Permalink
  • Avatar
    Josef Joubert

    I believe we do not support Yolov10 yet, as it is indeed quite new. 

    Thank you for sharing your model. We will have a look next week. If it is not too much effort to include support for these new operators, we will look at doing it in the short term.

    0
    Comment actions Permalink
  • Avatar
    Benedictus Visto Kartika

    Thank you for the reply and confirmation.

    Regarding the support for the operators, when I checked the YOLOv8 model, it does have some unsupported operators as well.

    Can the team check as well for the YOLOv8 model? As for now what we are aware is that even though there's unsupported operators, the model still can work but it may affect its performance. Hopefully it is fixed as well for YOLOv8 so that it performs at its best as I believe the model has already been on the attention as there's an available guide for it (link)

    Below is the snippet to check the onnx model.

    import sclblonnx as so

    g = so.graph_from_file("best-complete.onnx")
    print(so.check(g))
    0
    Comment actions Permalink
  • Avatar
    Ayoub Assis

    Hi Benedictus Visto Kartika
    Thanks for pointing out to the operators validation error. 
    We'll update the "sclblonnx" package in the coming days/weeks to suppress those errors, as the latest version of the Nx AI Manager supports any Vision ONNX model with IR version up to 17.

    When we support the Yolov10 model, we'll provide a guide that shows how to correctly generate an ONNX that works with the AI Manager. 
    Keep you posted.

     

    0
    Comment actions Permalink
  • Avatar
    Ayoub Assis

    Hi Benedictus Visto Kartika, you can find a tutorial for deploying Yolov10 using the Nx toolkit here: https://github.com/scailable/nxai-model-to-onnx

    0
    Comment actions Permalink

Please sign in to leave a comment.