ModalAI Forum
    • Categories
    • Recent
    • Tags
    • Popular
    • Users
    • Groups
    • Register
    • Login

    No detections when running custom YOLOv8 model on voxl-tflite-server

    VOXL 2
    3
    17
    665
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • S
      svempati @Zachary Lowell 0
      last edited by

      @Zachary-Lowell-0 Got it, I will try that out and will let you know if I have any more questions. Thanks for your help!

      1 Reply Last reply Reply Quote 0
      • S
        svempati @Zachary Lowell 0
        last edited by svempati

        @Zachary-Lowell-0 I wanted to follow up with you again on this, and the issue seems to be the model conversion process from pytorch to tflite. To confirm this, I tried it with the default yolov8n.pt downloaded from ultralytics by entering this command from the gitlab repository:

        python export.py yolov8n.pt
        

        So that I create a new yolov8n_float16.tflite file. However, running this file on voxl-tflite-server shows this output before displaying Error in TensorData<float>: should not reach here:

        WARNING: Unknown model type provided! Defaulting post-process to object detection.
        INFO: Created TensorFlow Lite delegate for GPU.
        INFO: Initialized OpenCL-based API.
        INFO: Created 1 GPU delegate kernels.
        Successfully built interpreter
        
        ------VOXL TFLite Server------
        
         4 5 6
         4 5 6
        Connected to camera server
        
        

        I even tried running export.py on the voxl emulator to account for any differences in the cpu architecture between my computer and the VOXL (between X86 and ARM) but I still get the same error. Do you think there is anything I would be missing? Thank you!

        1 Reply Last reply Reply Quote 0
        • Zachary Lowell 0Z
          Zachary Lowell 0 ModalAI Team
          last edited by

          @svempati said in No detections when running custom YOLOv8 model on voxl-tflite-server:

          WARNING: Unknown model type provided! Defaulting post-process to object detection.

          @svempati I will try recreating this issue today and get back to you!

          S 1 Reply Last reply Reply Quote 0
          • S
            svempati @Zachary Lowell 0
            last edited by

            @Zachary-Lowell-0 Just wanted to follow up to see if you were able to replicate this issue?

            1 Reply Last reply Reply Quote 0
            • Zachary Lowell 0Z
              Zachary Lowell 0 ModalAI Team
              last edited by

              @svempati I was able to use an open source training set and then leverage the docs to make my own custom yolov8 model capable of running on the voxl2 - do you want to provide to me the actual dataset and I can try creating the model and training it on a TPU?

              S 1 Reply Last reply Reply Quote 0
              • S
                svempati @Zachary Lowell 0
                last edited by svempati

                @Zachary-Lowell-0 I would first like to diagnose what is causing the yolov8 model to not work on the voxl 2 for me. Will it only work when you train the model/ export it to tflite on a TPU? I am getting the issue even if I train the yolov8 model on an open source dataset/ use the pretrained yolov8n.pt model downloaded from ultralytics. I want to make sure I can train a yolov8 model on an open source dataset from scratch works on the voxl, so that I can move on to using my custom dataset.

                In case there is no other workaround then I should be able to send you the dataset I am using.

                Thanks!

                1 Reply Last reply Reply Quote 0
                • Zachary Lowell 0Z
                  Zachary Lowell 0 ModalAI Team
                  last edited by

                  Let me try and train a custom model and run a loom on it in the next few days and get that over to you showing how I do it!

                  1 Reply Last reply Reply Quote 0
                  • Zachary Lowell 0Z
                    Zachary Lowell 0 ModalAI Team
                    last edited by

                    https://www.loom.com/share/bf52e252ab09444bb366f265a3f36dc5

                    Alright take a look at this loom please - it might help point you in the right direction in terms of training your model.

                    Zach

                    S 1 Reply Last reply Reply Quote 0
                    • S
                      svempati @Zachary Lowell 0
                      last edited by

                      @Zachary-Lowell-0 Thanks for sharing the video! I looked at it, and I pretty much did the same steps you did. It might be worth mentioning that I had to modify the Dockerfile because the one in the documentation was throwing a version mismatch error when installing the onnx part.

                      This was the original docker command

                      RUN pip3 install ultralytics tensorflow onnx "onnx2tf>1.17.5,<=1.22.3" tflite_support onnxruntime onnxslim "onnx_graphsurgeon>=0.3.26" "sng4onnx>=1.0.1" tf_keras
                      

                      I modified it to this

                      RUN pip3 install ultralytics tensorflow "onnx2tf>1.17.5,<=1.22.3" tflite_support onnxruntime onnxslim "onnx_graphsurgeon>=0.3.26" "sng4onnx>=1.0.1" tf_keras
                      RUN pip3 install onnx==1.20.1
                      

                      I don't think this should cause any issues, but could you confirm?

                      A 1 Reply Last reply Reply Quote 0
                      • A
                        ApoorvThapliyal @svempati
                        last edited by

                        Hey @svempati
                        I trained a model in the docker command as provided by you. I am able to run an inference on potholes following exactly the steps provided by @Zachary-Lowell-0 earlier.
                        Could I ask you what your voxl-tflite-version is? And if you havent yet, could you try to run this version: http://voxl-packages.modalai.com/dists/qrb5165/sdk-1.6/binary-arm64/voxl-tflite-server_0.5.1_arm64.deb
                        Make sure to change the .tflite model and labels as shown in the loom video after the install, then run voxl-configure-tflite

                        Thanks

                        1 Reply Last reply Reply Quote 0
                        • First post
                          Last post
                        Powered by NodeBB | Contributors