This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM62A-PET-CALC: Problem using the EDGEAIMMDETECTION library

Part Number: AM62A-PET-CALC

I'm trying to use the library to train a computer vision model, when I use the ./setup.sh command in the edgeaimmdeploy folder, the following problem occurs in the attachment  

 
I'm unable to send the problem. 

but this information The installation failed because the build process could not proceed due to a missing pkg_resources module required by setuptools.



I use this tool edgeai-tensorlab/edgeai-mmdetection at main · TexasInstruments/edgeai-tensorlab 
And compile my model using version: TexasInstruments/edgeai-tidl-tools at rel_10_01 
10.01.00
My computer use Debian 12 and my processor is AM62A

Could you help me figure out how to solve this problem?

  • Hi Romulo, 

    It is our pleasure to help. I do not have a lot of information to conclude the real issue. Would you please, copy and past the error directly here? Meanwhile, here are a few notes:

    • Did you successfully use edgeai-tidl-tools to compile the model? If so, why are you trying to run mmdetection tool?
    • Our tools have been tested and validated on Ubuntu 22.04. 

    Best regards,

    Qutaiba

  • Thank you for your help.

    Let's consider a few things: I'm using the MMdetection library to train my model. I was only able to use TIDltools with example models provided by you, but I would like to train my own model with my own dataset.

    I can't paste the error here because the system thinks it's a virus.

    I also tested it on the indicated Ubuntu and the same problem occurs.

  • Collecting mmcv>=2.2.0
      Using cached mmcv-2.2.0.tar.gz (479 kB)
      Installing build dependencies ... done
      Getting requirements to build wheel ... error
      error: subprocess-exited-with-error
     
      × Getting requirements to build wheel did not run successfully.
      │ exit code: 1
      ╰─> [17 lines of output]
          Traceback (most recent call last):
            File "/home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
              main()
            File "/home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 373, in main
              json_out["return_val"] = hook(**hook_input["kwargs"])
            File "/home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 143, in get_requires_for_build_wheel
              return hook(config_settings)
            File "/tmp/pip-build-env-p8kp7xaf/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 333, in get_requires_for_build_wheel
              return self._get_build_requires(config_settings, requirements=[])
            File "/tmp/pip-build-env-p8kp7xaf/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 301, in _get_build_requires
              self.run_setup()
            File "/tmp/pip-build-env-p8kp7xaf/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 520, in run_setup
              super().run_setup(setup_script=setup_script)
            File "/tmp/pip-build-env-p8kp7xaf/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 317, in run_setup
              exec(code, locals())
            File "<string>", line 5, in <module>
          ModuleNotFoundError: No module named 'pkg_resources'
          [end of output]
     
      note: This error originates from a subprocess, and is likely not a problem with pip.
    ERROR: Failed to build 'mmcv' when getting requirements to build wheel
    Using pip 26.0.1 from /home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/lib/python3.9/site-packages/pip (python 3.9)
    Obtaining file:///home/DML5H74/ddaw/ddaw/Archive_SDK/edgeai-tensorlab/edgeai-mmdeploy
      Running command installing build dependencies
      Using pip 26.0.1 from /home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/lib/python3.9/site-packages/pip (python 3.9)
      Collecting setuptools>=40.8.0
        Obtaining dependency information for setuptools>=40.8.0 from files.pythonhosted.org/.../setuptools-82.0.1-py3-none-any.whl.metadata
        Using cached setuptools-82.0.1-py3-none-any.whl.metadata (6.5 kB)
      Using cached setuptools-82.0.1-py3-none-any.whl (1.0 MB)
      Installing collected packages: setuptools
      ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
      openxlab 0.1.3 requires setuptools~=60.2.0, but you have setuptools 82.0.1 which is incompatible.
      Successfully installed setuptools-82.0.1
      Installing build dependencies ... done
      Running command Checking if build backend supports build_editable
      Checking if build backend supports build_editable ... done
      Running command Getting requirements to build editable
      Traceback (most recent call last):
        File "/home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 389, in <module>
          main()
        File "/home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 373, in main
          json_out["return_val"] = hook(**hook_input["kwargs"])
        File "/home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py", line 157, in get_requires_for_build_editable
          return hook(config_settings)
        File "/tmp/pip-build-env-miv2o4on/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 481, in get_requires_for_build_editable
          return self.get_requires_for_build_wheel(config_settings)
        File "/tmp/pip-build-env-miv2o4on/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 333, in get_requires_for_build_wheel
          return self._get_build_requires(config_settings, requirements=[])
        File "/tmp/pip-build-env-miv2o4on/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 301, in _get_build_requires
          self.run_setup()
        File "/tmp/pip-build-env-miv2o4on/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 520, in run_setup
          super().run_setup(setup_script=setup_script)
        File "/tmp/pip-build-env-miv2o4on/overlay/lib/python3.9/site-packages/setuptools/build_meta.py", line 317, in run_setup
          exec(code, locals())
        File "<string>", line 3, in <module>
      ModuleNotFoundError: No module named 'pkg_resources'
      error: subprocess-exited-with-error
     
      × Getting requirements to build editable did not run successfully.
      │ exit code: 1
      ╰─> No available output.
     
      note: This error originates from a subprocess, and is likely not a problem with pip.
      full command: /home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/bin/python /home/DML5H74/.pyenv/versions/3.9.20/envs/edgeai-mmdetection/lib/python3.9/site-packages/pip/_vendor/pyproject_hooks/_in_process/_in_process.py get_requires_for_build_editable /tmp/tmp8dal_qas
      cwd: /home/DML5H74/ddaw/ddaw/Archive_SDK/edgeai-tensorlab/edgeai-mmdeploy
      Getting requirements to build editable ... error
    ERROR: Failed to build 'file:///home/DML5H74/ddaw/ddaw/Archive_SDK/edgeai-tensorlab/edgeai-mmdeploy' when getting requirements to build editable
    (edgeai-mmdetection) (base) DML5H74@VWTBCLSVA0013:~/ddaw/ddaw/Archive_SDK/edgeai-tensorlab/edgeai-mmdeploy$ 

  • What's the best way to perform the training and then compile using this specific version of TIDL tools?  

  • Hi Romulo,

    If you model is supported, modelmaker is the easiest method to train and compile a model: https://github.com/TexasInstruments/edgeai-tensorlab/tree/main/edgeai-modelmaker

    Best regards,

    Qutaiba

  • I use this tool and obtive successful But when I put it on the board, this happens.

    I finally managed to generate a compiled model, but now this problem keeps appearing: The generated model has the exact same structure as the Texas Instruments model. Has anyone ever seen this happen before?


    IttCtrl_registerHandler: command iss_send_dcc_file registered at location 8
    Error: failed to open i2c bus at /dev/i2c-9
    Warning: Failed to initialize i2c bus. Register read/write will not work !!!
    NETWORK: Opened at IP Addr = 192.168.178.3, socket port=5000!!!
    libtidl_onnxrt_EP loaded 0xaaaaec49eb50
    Final number of subgraphs created are : 1, - Offloaded Nodes - 271, Total Nodes - 271
    Invoke : ERROR: Unable to open network file /opt/model_zoo/ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416//artifacts/su_tidl_net.bin
    terminate called after throwing an instance of 'Ort::Exception'
    what(): Create state function failed. Return value:-1
    Aborted (core dumped)
    root@ddaw:/# ls /opt/model_zoo/ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416//artifacts
    allowedNode.txt su_tidl_io.bin subgraph_0_tidl_io_1.bin tempDir
    onnxrtMetaData.txt su_tidl_net.bin subgraph_0_tidl_net.bin
    root@ddaw:/#

  • Hi Romulo,

    Nice work on getting the compilation step. I have two suggestions regarding the application errors you shared:

    Best regards,

    Qutaiba

  • Thank ou for anwser 

    Another point 

    Using ModelMaker with the settings below, and compiling using SDK version 10.00.01, this problem occurs:

    root@987024c69990:/home/root/examples/osrt_python/ort# python3.10 onnxrt_ep.py -c -m modelo_cinto_best
    Skipping import of model optimizer
    Available execution providers :  ['TIDLExecutionProvider', 'TIDLCompilationProvider', 'CPUExecutionProvider']

    Running 1 Models - ['modelo_cinto_best']


    Running_Model :  modelo_cinto_best  


    Running shape inference on model /home/root/examples/osrt_python/ort/model.onnx

    ========================= [Model Compilation Started] =========================

    Model compilation will perform the following stages:
    1. Parsing
    2. Graph Optimization
    3. Quantization & Calibration
    4. Memory Planning

    ============================== [Version Summary] ==============================

    -------------------------------------------------------------------------------
    |          TIDL Tools Version          |              10_01_00_01             |
    -------------------------------------------------------------------------------
    |         C7x Firmware Version         |              10_01_00_01             |
    -------------------------------------------------------------------------------
    |            Runtime Version           |                1.15.0                |
    -------------------------------------------------------------------------------
    |          Model Opset Version         |                  17                  |
    -------------------------------------------------------------------------------

    NOTE: The runtime version here specifies ONNXRT_VERSION+TIDL_VERSION
    Ex: 1.14.0+1000XXXX -> ONNXRT 1.14.0 and a TIDL_VERSION 10.00.XX.XX

    ============================== [Parsing Started] ==============================

    [TIDL Import]  WARNING: 'meta_layers_names_list' is not provided - running OD post processing in ARM mode
    Number of OD backbone nodes = 0
    Size of odBackboneNodeIds = 0
    Unable to find initializer at index - 1 for node 93
    Unable to find initializer at index - 1 for node 109

    ------------------------- Subgraph Information Summary -------------------------
    -------------------------------------------------------------------------------
    |          Core           |      No. of Nodes       |   Number of Subgraphs   |
    -------------------------------------------------------------------------------
    | C7x                     |                     237 |                       7 |
    | CPU                     |                      34 |                       x |
    -------------------------------------------------------------------------------
    ---------------------------------------------------------------------------------------------------------------------------------
    |       Node        | Node Name |                                            Reason                                             |
    ---------------------------------------------------------------------------------------------------------------------------------
    | Mul               | 330       | The variable inputs in Add/Mul/Sub/Div/Max layer must of be same dimensions or broadcast-able |
    | ReduceMax         | 333       | Reduction is only supported along height                                                      |
    | Gather            | 313       | Only line gather is supported                                                                 |
    | Gather            | 312       | Only line gather is supported                                                                 |
    | Gather            | 308       | Only line gather is supported                                                                 |
    | Gather            | 307       | Only line gather is supported                                                                 |
    | Sub               | 316       | Both inputs as variable are not supported in Sub/Div                                          |
    | Unsqueeze         | 322       | Subgraph does not have any compute node                                                       |
    | Sub               | 311       | Both inputs as variable are not supported in Sub/Div                                          |
    | NonMaxSuppression | 342       | Layer 244 - op type NonMaxSuppression, Unknown input dimension, not supported by TIDL         |
    | Gather            | 344       | Layer 245 - op type Gather, Unknown input dimension, not supported by TIDL                    |
    | Gather            | 364       | Layer 246 - op type Gather, Unknown input dimension, not supported by TIDL                    |
    | Gather            | 343       | Layer 247 - op type Gather, Unknown input dimension, not supported by TIDL                    |
    | Mul               | 352       | Layer 248 - op type Mul, Unknown input dimension, not supported by TIDL                       |
    | Add               | 353       | Layer 249 - op type Add, Unknown input dimension, not supported by TIDL                       |
    | Gather            | 354       | Layer 252 - op type Gather, Unknown input dimension, not supported by TIDL                    |
    | Reshape           | 358       | Layer 253 - op type Reshape, Unknown input dimension, not supported by TIDL                   |
    | Transpose         | 359       | Layer 254 - op type Transpose, Unknown input dimension, not supported by TIDL                 |
    | Reshape           | 361       | Layer 255 - op type Reshape, Unknown input dimension, not supported by TIDL                   |
    | Unsqueeze         | 363       | Layer 256 - op type Unsqueeze, Unknown input dimension, not supported by TIDL                 |
    | Concat            | 365       | Layer 257 - op type Concat, Unknown input dimension, not supported by TIDL                    |
    | Concat            | 369       | Layer 258 - op type Concat, Unknown input dimension, not supported by TIDL                    |
    | Gather            | 372       | Layer 259 - op type Gather, Unknown input dimension, not supported by TIDL                    |
    | Shape             | 373       | Layer 260 - op type Shape, Unknown input dimension, not supported by TIDL                     |
    | Gather            | 375       | Layer 261 - op type Gather, Unknown input dimension, not supported by TIDL                    |
    | Less              | 379       | Layer 262 - op type Less, Unknown input dimension, not supported by TIDL                      |
    | Where             | 381       | Layer 263 - op type Where, Unknown input dimension, not supported by TIDL                     |
    | Reshape           | 383       | Layer 264 - op type Reshape, Unknown input dimension, not supported by TIDL                   |
    | TopK              | 384       | Layer 265 - op type TopK, Unknown input dimension, not supported by TIDL                      |
    | Squeeze           | 386       | Layer 266 - op type Squeeze, Unknown input dimension, not supported by TIDL                   |
    | Unsqueeze         | 367       | Layer 267 - op type Unsqueeze, Unknown input dimension, not supported by TIDL                 |
    | Concat            | 371       | Layer 268 - op type Concat, Unknown input dimension, not supported by TIDL                    |
    | Gather            | 388       | Layer 269 - op type Gather, Unknown input dimension, not supported by TIDL                    |
    | Gather            | 387       | Layer 270 - op type Gather, Unknown input dimension, not supported by TIDL                    |
    ---------------------------------------------------------------------------------------------------------------------------------
    ============================= [Parsing Completed] =============================

    [DEBUG] Input shape: (1, 3, 416, 416), dtype: float32
    [DEBUG] Input min: 0.18431372940540314, max: 1.0
    Unable to find initializer at index - 1 for node 93
    Unable to find initializer at index - 1 for node 109
    ==================== [Optimization for subgraph_0 Started] ====================

    ----------------------------- Optimization Summary -----------------------------
    --------------------------------------------------------------------------------
    |         Layer         | Nodes before optimization | Nodes after optimization |
    --------------------------------------------------------------------------------
    | TIDL_ConvolutionLayer |                        84 |                       84 |
    | TIDL_TransposeLayer   |                         6 |                        0 |
    | TIDL_ReLULayer        |                        74 |                        0 |
    | TIDL_ConcatLayer      |                        18 |                       18 |
    | TIDL_LogLayer         |                         1 |                        0 |
    | TIDL_EltWiseLayer     |                         7 |                        7 |
    | TIDL_PoolingLayer     |                         6 |                        6 |
    | TIDL_ResizeLayer      |                         2 |                        2 |
    | TIDL_BatchNormLayer   |                         0 |                        2 |
    | TIDL_SigmoidLayer     |                         2 |                        0 |
    | TIDL_SliceLayer       |                         3 |                        9 |
    --------------------------------------------------------------------------------

    =================== [Optimization for subgraph_0 Completed] ===================

    The soft limit is 10240
    The hard limit is 10240
    MEM: Init ... !!!
    MEM: Init ... Done !!!
     0.0s:  VX_ZONE_INIT:Enabled
     0.389s:  VX_ZONE_ERROR:Enabled
     0.442s:  VX_ZONE_WARNING:Enabled
     0.8073s:  VX_ZONE_INIT:[tivxInit:190] Initialization Done !!!
    ============= [Quantization & Calibration for subgraph_0 Started] =============

    2026-03-16 20:08:25.968674754 [E:onnxruntime:, sequential_executor.cc:514 ExecuteKernel] Non-zero status code returned while running Mul node. Name:'330' Status Message: /root/onnxruntime/onnxruntime/core/providers/cpu/math/element_wise_ops.h:540 void onnxruntime::BroadcastIterator::Init(ptrdiff_t, ptrdiff_t) axis == 1 || axis == largest was false. Attempting to broadcast an axis by a dimension other than 1. 3 by 3549

    Process Process-1:
    Traceback (most recent call last):
      File "/usr/lib/python3.10/multiprocessing/process.py", line 314, in _bootstrap
        self.run()
      File "/usr/lib/python3.10/multiprocessing/process.py", line 108, in run
        self._target(*self._args, **self._kwargs)
      File "/home/root/examples/osrt_python/ort/onnxrt_ep.py", line 470, in run_model
        imgs, output, proc_time, sub_graph_time, height, width = infer_image(sess, input_images, config)
      File "/home/root/examples/osrt_python/ort/onnxrt_ep.py", line 285, in infer_image
        output = list(sess.run(None, {input_name: input_data}))
      File "/usr/local/lib/python3.10/dist-packages/onnxruntime/capi/onnxruntime_inference_collection.py", line 217, in run
        return self._sess.run(output_names, input_feed, run_options)
    onnxruntime.capi.onnxruntime_pybind11_state.RuntimeException: [ONNXRuntimeError] : 6 : RUNTIME_EXCEPTION : Non-zero status code returned while running Mul node. Name:'330' Status Message: /root/onnxruntime/onnxruntime/core/providers/cpu/math/element_wise_ops.h:540 void onnxruntime::BroadcastIterator::Init(ptrdiff_t, ptrdiff_t) axis == 1 || axis == largest was false. Attempting to broadcast an axis by a dimension other than 1. 3 by 3549

    MEM: Deinit ... !!!
    MEM: Alloc's: 30 alloc's of 71115385 bytes
    MEM: Free's : 30 free's  of 71115385 bytes
    MEM: Open's : 0 allocs  of 0 bytes
    MEM: Deinit ... Done !!!






    My model Configuration:


    common:
      target_module: vision
      task_type: detection
      target_device: AM62A
      run_name: '{date-time}/{model_name}'

    dataset:
      enable: true
      dataset_name: custom_dataset
      input_data_path:
        - /opt/code/model/images/train
        - /opt/code/model/images/val
      input_annotation_path:
        - /opt/code/model/annotations/instances_train.json
        - /opt/code/model/annotations/instances_val.json
      preprocessing:
        input_format: NV12
        resize_method: cv2
        target_size: 416

    training:
      enable: true
      model_name: yolox_nano_lite
      batch_size: 32
      training_epochs: 100
      num_gpus: 1

    export_onnx:
      enable: true
      format: onnx
      imgsz: 416
      dynamic: false
      simplify: true
      opset: 17
      half: false
      device: 0
      export_params: true
      do_constant_folding: true
      decode_in_inference: false

    compilation:
      enable: True
      quantization_type: post_training_int8
      calibration_frames: 30
      calibration_iterations: 30
      advanced_options:
        object_detection:
          meta_arch_type: 6
          decode_boxes: false
          input_format: BGR
          data_type: uint8
          output_format:
            detections_shape: [200, 5]
            class_labels_shape: [200]
          confidence_threshold: 0.5
          pipeline_config:
            camera_resolution: [1920, 1280]
            pipeline_resolution: [640, 640]
            min_resolution: [480, 320]
            final_model_size: [416, 416]
            gstreamer_init: true
            interrupt_handler: true
  • Hi Romulo,

    It seems that you are directly running the compilation script without going through the training which is necessary to prepare for the compilation in this tool. To run the modelmaker appropriately, start with the .run_modelmaker.sh script. See details in this README: https://github.com/TexasInstruments/edgeai-tensorlab/blob/r10.1/edgeai-modelmaker/README.md. I provided the link for the 10.1 release because this is what you seem to be using but please make sure that you use the modelmaker release which matches the SDK on the device. 

    Another suggestion is to run the default example first to make sure that your setup is correct and then try your own dataset. 

    Best regars,

    Qutaiba

  • I used Modelmaker to train the model and then used TIDL Tools to try to compile it. But then I encountered the errors I mentioned. 

  • Model maker does everything for you including training and compilation. No need to use TIDL tools. 

    Best regards,

    Qutaiba

  • Yes, but when I tried to use the compiled model, I encountered the problem I mentioned earlier of it not recognizing the artifacts. Therefore, I would like to train the model and then compile it using the correct version of TIDLtools.

    Please provide a guideline on how I can resolve this issue.

    my sdk using tidel tools version v.10.01.00

    This problem : 
    IttCtrl_registerHandler: command iss_send_dcc_file registered at location 8
    Error: failed to open i2c bus at /dev/i2c-9
    Warning: Failed to initialize i2c bus. Register read/write will not work !!!
    NETWORK: Opened at IP Addr = 192.168.178.3, socket port=5000!!!
    libtidl_onnxrt_EP loaded 0xaaaaec49eb50
    Final number of subgraphs created are : 1, - Offloaded Nodes - 271, Total Nodes - 271
    Invoke : ERROR: Unable to open network file /opt/model_zoo/ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416//artifacts/su_tidl_net.bin
    terminate called after throwing an instance of 'Ort::Exception'
    what(): Create state function failed. Return value:-1
    Aborted (core dumped)
    root@ddaw:/# ls /opt/model_zoo/ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416//artifacts
    allowedNode.txt su_tidl_io.bin subgraph_0_tidl_io_1.bin tempDir
    onnxrtMetaData.txt su_tidl_net.bin subgraph_0_tidl_net.bin
    root@ddaw:/#

  • Is it possible to train using YOLO and then compile using EdgeAI TiDL Tools?

    If so, is there a Texas Instruments tutorial that shows how to make this work?

  • Is it possible to train using YOLO and then compile using EdgeAI TiDL Tools?

    If so, is there a Texas Instruments tutorial that shows how to make this work?

    Yes, you can compile using edgeai-tidl-tools, you can look at this example: https://github.com/TexasInstruments/edgeai-tidl-tools/tree/rel_10_01/examples/osrt_python. Just, update based on the instruction to compile your model. 

    However, if you used modelmaker with release matching your sdk and the compilation went without error, the resulted model should run fine. Would you please provide more details about how are you running the model on the evm?

    Best regards,

    Qutaiba

  • I'm running Modelmaker version 10.01.04, and my vendor informed me that they use version 10.01.00. Should it still work?

    I don't know what else to do to resolve this.

    What's the correct workflow if I'm specifically using version 10.01.00? Do I train using Modelmaker and then compile using the correct version?

    Do I use YOLO to train and then compile in TIDL Tools? I don't know what else to do.

    actually i use the example sent by you  

  • I'm running Modelmaker version 10.01.04, and my vendor informed me that they use version 10.01.00. Should it still work?

    Yes, this should still work.

    Here is the workflow to train/compile a model:

    Option 1: you do not need to train a model and you can just use one of the models in the edgeai_modelzoo. Some models already come packaged with the sdk at /opt/model_zoo. (I understand that you have your own data and you want to train a model but mentioned this just to cover all options. Also, please run at least one of these models with the out of box demos to make sure you EVM setup works as expected). 

    Option 2: You have your own data and you would like to use for training. You can use modelmaker to train one of the supported models. Modelmaker, train and compile for you. 

    Option 3: You have your own model which you already trained and you wish to compile to run on AM62A. For this, you use edgeai-tidl-tools. 

    As I understand, you have your own data and you wish to use modelmaker to train yolox-nano-lite. You can simply use modelmaker and follow the instructions. Most of the work will be editing this file https://github.com/TexasInstruments/edgeai-tensorlab/blob/r10.1/edgeai-modelmaker/config_detection.yaml and then run the script run_modelmaker.sh.

    To run the model on the EVM there are several options, edgeai-gst-apps is the easiest. It comes with the sdk and you can simply modify the config .yaml file to refer to your new model which you produced in the previous step. See this exampel: https://github.com/TexasInstruments/edgeai-gst-apps/blob/main/configs/object_detection.yaml

    Is this what you are using to run the model on the EVM? 

    Best regards,

    Qutaiba

  • So, I don't build all that part of the EVM myself; my supplier does. They use aarch64-oe-linux from the folder I have here.

    I've already tried using Modelmaker, as you can see previously, but I always had problems.

    There's a model they provided that works: ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416, provided by you.

    I run `./arago-2023.10-toolchain-2023.10.sh` using this command. I've attached my C++ code.utils.cpppush_udp_main.cppddaw_demo_main.cpp

  • Thank you for providing the details. 

    So the original "ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416" model works fine but the version you trained/compiled does not work? If that is the case, then it means there is an error with the compilation. 

    I've already tried using Modelmaker, as you can see previously, but I always had problems.

    Did you run modelmaker with the instructions I shared here: README: https://github.com/TexasInstruments/edgeai-tensorlab/blob/r10.1/edgeai-modelmaker/README.md.

    If modelmaker caused problem, what did you use to compile the model which is giving you error on the EVM?

    Is this the contents of the model which works or the model you compiled? 

    root@ddaw:/# ls /opt/model_zoo/ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416//artifacts
    allowedNode.txt su_tidl_io.bin subgraph_0_tidl_io_1.bin tempDir
    onnxrtMetaData.txt su_tidl_net.bin subgraph_0_tidl_net.bin

    The file names seems to be different from those generated by our tool by default. See the example here: 

    ls /opt/model_zoo/ONR-OD-8200-yolox-nano-lite-mmdet-coco-416x416/artifacts/ -l
    total 4952
    -rw-r--r-- 1 root root 1028 Mar 9 2018 allowedNode.txt
    -rw-r--r-- 1 root root 139 Mar 9 2018 onnxrtMetaData.txt
    -rw-r--r-- 1 root root 646036 Mar 9 2018 runtimes_visualization.svg
    -rw-r--r-- 1 root root 94616 Mar 9 2018 subgraph_0_tidl_io_1.bin
    -rw-r--r-- 1 root root 4109436 Mar 9 2018 subgraph_0_tidl_net.bin
    -rw-r--r-- 1 root root 1662 Mar 9 2018 subgraph_0_tidl_net.bin.layer_info.txt
    -rw-r--r-- 1 root root 1372211 Mar 9 2018 subgraph_0_tidl_net.bin.svg
    -rw-r--r-- 1 root root 34722 Mar 9 2018 subgraph_0_tidl_net.bin_netLog.txt

    Best regards,

    Qutaiba

  • Thanks for all the help. One last question for now, lol: is it possible to use the Edge Studio web application somehow while it's installed on the computer?

    I used an example solution there and it worked on my graphics card.

  • The Edge AI Studio is only available as a web application. The alternative to it is to use Modelmaker on your local PC. The simple rule is if Edge AI Studio can train/compile your model then Modelmaker should be able to do it too.

    Best regards,

    Qutaiba

  • The version 10.01 in edgeai studio its a similiar tool a edgeai tensorlab 10.01?

  • Yes, it is the same version. In the background the Edge AI Studio uses a tool similar to Modelmaker for training and compilation.

    Best regards,

    Qutaiba

  • I am closing this thread. Please, submit another question if needed. 

    Best regars,

    Qutaiba