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.

PROCESSOR-SDK-J722S: TIDL model import tool can't transfer

Part Number: PROCESSOR-SDK-J722S

Tool/software:

Hi team:

I try to use tidl_model_import.out to tranfer onnx file but failed.

error log:

root@914dec19bac9:/app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/tidl_tools# ./tidl_model_import.out ../ken_test_model/test.txt 
========================= [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_00_04_00             |
-------------------------------------------------------------------------------
|         C7x Firmware Version         |              10_00_02_00             |
-------------------------------------------------------------------------------

TIDL Meta pipeLine (proto) file  : /app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/ken_test_model/yolov5s6_pose_640_ti_lite_metaarch.prototxt  
yolo_v3
yolo_v3
ONNX model (Proto) file      : /app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/ken_test_model/yolov5s6_pose_640_ti_lite_54p9_82p2.onnx  
TIDL network file            : /app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/ken_test_model/yolov5s6_pose_640_ti_lite_54p9_82p2.bin  
TIDL IO info file            : /app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/ken_test_model/yolov5s6_pose_640_ti_lite_54p9_82p2  
Current ONNX OpSet version   : 11  
============================ [Optimization started] ============================

[TIDL Import] [PARSER] ERROR: Layer 122, :detections_det is missing inputs in the network and cannot be topologically sorted. Missing inputs are: -- [tidl_import_common.cpp, 4204]
  Input 0: 380, dataId=220
  Input 1: 819, dataId=231
  Input 2: 1258, dataId=242
  Input 3: 1697, dataId=252
[TIDL Import]  ERROR:  - Failed in function: tidl_optimizeNet -- [tidl_import_core.cpp, 2604]
[TIDL Import]  FATAL ERROR: Network Optimization failed -- [tidl_import_main.cpp, 500]
[TIDL Import] Aborting

[environment]

TIDL SDK version :10.00.04.00

Input onnx file and prototxt file from https://github.com/TexasInstruments/edgeai-yolov5/tree/main/pretrained_models/models/keypoint/coco/edgeai-yolov5

config file :

modelType          = 2
numParamBits       = 8
numFeatureBits     = 8
quantizationStyle  = 3
#quantizationStyle  = 2
inputNetFile       = "/app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/ken_test_model/yolov5s6_pose_640_ti_lite_54p9_82p2.onnx"
 
outputNetFile      = "/app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/ken_test_model/yolov5s6_pose_640_ti_lite_54p9_82p2.bin"
outputParamsFile   = "/app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/ken_test_model/yolov5s6_pose_640_ti_lite_54p9_82p2"

inDataFormat = 1
inWidth  = 640
inHeight = 640 
inNumChannels = 3
numFrames = 1
inData  =   "/app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/ken_test_model/0003.jpg"
# 0 = JPEG/PNG/BMP; 1 = binary; 2 = list
inFileFormat = 0
perfSimConfig = /app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/tidl_tools/device_config.cfg
inElementType = 0
metaArchType = 4
metaLayersNamesList =  "/app/ken/tda4/TIDL10.00.04.00/edgeai-tidl-tools/ken_test_model/yolov5s6_pose_640_ti_lite_metaarch.prototxt"
postProcType = 2

Q1 : Is the symptom caused by a wrong config setting?

Q2 :  please tell me where to find the TIDL onnx unsupport node list

Thanks for your kindly help.

  • Hi Ken;

    For Q1: could you provide the exact commands and steps that you did? So we can replicate what you have done, to see if we will see the same error.

    For Q2: I will look into the list. And get back with you.

    Thanks and regards

    Wen Li

  • Hi Wen:

    I setup TIDL by below command (on PC, Ubuntu22.04):

    git clone https://github.com/TexasInstruments/edgeai-tidl-tools.git
    cd edgeai-tidl-tools/
    git checkout 110634e30a121b6efdfba8faf75c347e21caa49e
    export SOC=am67a
    source ./setup.sh
    
    export SOC=<Your SOC name>
    export TIDL_TOOLS_PATH=$(pwd)/tidl_tools
    export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$TIDL_TOOLS_PATH
    export ARM64_GCC_PATH=$(pwd)/gcc-arm-9.2-2019.12-x86_64-aarch64-none-linux-gnu
    mkdir build && cd build
    cmake ../examples && make -j && cd ..
    

    Then

    cd <local path>/TIDL10.00.04.00/edgeai-tidl-tools/tidl_tools#
    ./tidl_model_import.out ../ken_test_model/test.txt 

    Thank you very much for your help with testing.

  • Hi Wen:

    Sorry that I have one more question:

    Can tidl_model_import.out generate param.yaml?

    I noticed that the example model includes this YAML file,

    but when I used tidl_model_import.out,

    the generated files did not include param.yaml.