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.

[参考译文] TDA4VM:fastbev 模型应用程序和 IT's onnx 文件使用情况

Guru**** 2858300 points
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1625537/tda4vm-fastbev-model-application-and-it-s-onnx-file-usage

器件型号: TDA4VM
Thread 中讨论的其他器件: TDA4VH

我发现 FastBEV 已成功应用于 TDA4 电路板、我也想尝试此操作。 但是、我在将 fastbev.pt 转换为 ONNX 文件的第一步时失败了。 我无法将 fastbev.pt 转换为单个 ONNX 文件、只能生成多个 ONNX 文件、这很难使用 TIDL 导入。
那么、是否有办法获取将 fastbev.pt 转换为单个 ONNX 文件的脚本?
如果脚本不可用、我是否可以获取已导入并部署在 TDA4 电路板上的原始 FastBEV ONNX 文件?
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我建议您使用 edgeai-tensorlab 来训练和导出模型。

    https://github.com/TexasInstruments/edgeai-tensorlab

    您可以在里面找到 fastbev 模型、

    https://github.com/TexasInstruments/edgeai-tensorlab/tree/main/edgeai-mmdetection3d

    https://github.com/TexasInstruments/edgeai-tensorlab/tree/main/edgeai-mmdetection3d/projects_edgeai/FastBEV

    该模型将具有一个适用于 TIDL 的经优化模型。

    我能否获取已导入并部署在 TDA4 板上的原始 FastBEV ONNX 文件?

    我们在最新的 11.2 SDK 中的 j784s4 (TDA4VH) 器件中启用了演示。 大家可以查看它。
    https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-j784s4/11_02_00_06/exports/docs/vision_apps/docs/user_guide/group_apps_dl_demos_app_tidl_bev.html
    该演示将包含编译后的工件。 您可以从 edgeai-tensorlab 存储库中生成 onnx 模型。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

      根据 https://github.com/TexasInstruments/edgeai-tensorlab/tree/main/edgeai-mmdetection3d/projects_edgeai/FastBEV、我已成功地将 bev 模型转移到 onnx 文件 、但在 TIDL 导入中失败。上传的图像是错误和相关设置。有什么建议可以解决这个问题吗?

    THs.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    能否将 degg_level 设置为 2 并共享日志

    您还可以尝试使用最新的 SDK 版本 11_02_04_00

    我可以看到仍然不支持 2 层、您能在此处共享模型吗? 并参考 https://github.com/TexasInstruments/edgeai-tidl-tools/blob/master/docs/od_meta_arch.md 并在编译期间添加 od_meta_arch。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Gokul。

    从客户上传模型。

    e2e.ti.com/.../LH_5F00_BEV_5F00_files.zip

    非常感谢!

    Yong

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Yong:

    您分享的模型与 edgeai-tensorlab 中的模型不同,客户在哪里获得了模型,它是从原始 fastbev 存储库?

    我将分享使用在 tda4 器件中验证的 fastbev 模型的步骤。

    1.克隆 edgeai-tidl-tools、  https://github.com/TexasInstruments/edgeai-tidl-tools

    2.结账到分公司 11_02_07_00,

    cd edgeai-tidl-tools
    git checkout 11_02_07_00
    

    3.按照文档 github.com/.../edgeai-tidl-tools 设置 edgeai-tidl-tools

    4.下载模型和 prototxt 文件,
    http://software-dl.ti.com/jacinto7/esd/modelzoo/11_02_00/models/vision/detection_3d/pandaset/mmdet3d/fastbev_mod_pandaset_nms_r18_f1_256x704_20251215.onnx

    将下载的模型放入/edgeai-tidl-tools/runtimes/examples/data/models/fastbev_mod_pandaset_nms_r18_f1_256x704_20251215.onnx 中

    http://software-dl.ti.com/jacinto7/esd/modelzoo/11_02_00/models/vision/detection_3d/pandaset/mmdet3d/fastbev_mod_pandaset_nms_r18_f1_256x704_20251215.prototxt

    将下载的文件放在 edgeai-tidl-tools/runtimes/examples/data/prototxt/fastbev_mod_pandaset_nms_r18_f1_256x704_20251215.prototxt 内

    edgeai-modelzoo、 https://github.com/TexasInstruments/edgeai-tensorlab/tree/main/edgeai-modelzoo 中提供了链接
    https://github.com/TexasInstruments/edgeai-tensorlab/blob/main/edgeai-modelzoo/models/vision/detection_3d/pandaset/mmdet3d/fastbev_mod_pandaset_nms_r18_f1_256x704_20251215.onnx.link

    5.编辑 config.yaml 文件以添加 fastbev 模型,请参阅以下补丁

    diff --git a/runtimes/examples/python/basic_example/config.yaml b/runtimes/examples/python/basic_example/config.yaml
    index fc6e618..bcd3dcc 100644
    --- a/runtimes/examples/python/basic_example/config.yaml
    +++ b/runtimes/examples/python/basic_example/config.yaml
    @@ -22,6 +22,20 @@ infer_options:
     
     models:
       # ONNX Models
    +  fastbev:
    +    path: ../../data/models/fastbev_mod_pandaset_nms_r18_f1_256x704_20251215.onnx
    +    inputs: ../../data/inputs/fast_bev_valid_input.bin  # add your custom input file here
    +    compile_options:
    +      "object_detection:meta_layers_names_list" : ../../data/prototxt/fastbev_mod_pandaset_nms_r18_f1_256x704_20251215.prototxt
    +      "object_detection:meta_arch_type" : 7
    +    pre_process_info:
    +      input_mean : [123.675, 116.28, 103.53]
    +      input_scale : [0.017125, 0.017507, 0.017429]
    +    post_process_info:
    +      task_type: "detection"
    +      labels: ../../data/inputs/labels.txt
    +      label_offset: 1
    +    runtime: onnxrt
       cl-ort-resnet18-v1:
         path: ../../data/models/resnet18_opset9.onnx
         inputs: ../../data/inputs/airshow.jpg

    6.编译模型,

    cd edgeai-tidl-tools/runtimes/examples/python/basic_example;
    python3 basic_example.py -m fastbev -c

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    客户在哪里获得了模型、它是来自原始 fastbev 存储库

    是的、我从原始 fasebev github repo,按照你的 edgeai-tensorlab fastbev 导出 onnx 代码,将原始的 pth bev 模型转换到 onnx

    主要区别就在这里

    这是由 onnx_network.py 中的 extract_feat_neck3d 引起的、len(mlvl_feat_split)=4、输入 img shape=[24,3,256,704],xy_coor shape=[4375000]、我们使用 4 帧作为输入来训练 nuscens 数据集。除了这些、它几乎是相同的进程。
    |节点|节点名称|原因|
    -------------------------------------------------------------------------------------------------------
    | Concat | Concat_522 |第 167 层 — 运算类型 Concat、未知输入尺寸、TIDL 不支持|
    |整形|整形 525 |第 168 层 — 操作类型整形,未知输入尺寸,TIDL 不支持
    在 FAST 中、凹痕和整形是相当常见的节点。

    请不要让我在编译 edgeai 工具上从零开始,你能告诉我为什么 onnx 模型在 concat 重塑节点上失败,或者它们不是真正的原因。你能尝试在[报价 userid=“355179" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1625537/tda4vm-fastbev-model-application-and-it-s-onnx-file-usage/6291133 ] lh_bev_files.zip中转换 onnx 模型吗?

    在 tidl_11_01_06_00 和 11_02_04_00 版本下。

    希望得到解答和建议。

    THs.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    由于 osrt 模型的优化,凹板和整形之间的转置节点被移除,但移除后凹板的输出和整形的输入没有正确处理,这就是为什么存在未知的尺寸误差。

    您能禁用 onnxruntime 优化吗?

    在 if 条件中添加您的模型名称、或在 onnxrt_ep.py 内的第 70 行添加以下代码:
    so.graph_optimization_level = RT.GraphOptimizationLevel.ORT_DISABLE_ALL

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

      在 edgeai-tidl-tools/examples/osrt_python/ort/onnxrt_ep.py 中、我已经尝试添加  

    so.graph_optimization_level = 第 71 行的 RT.GraphOptimizationLevel.ORT_DISABLE_ALL、
    commet #如果 model ==“cl-ort-deit-tiny":“:
        # so.graph_optimization_level = RT.GraphOptimizationLevel.ORT_DISABLE_ALL 在第 295 行,
    然后尝试使用 TIDL 11.1.6.00 从 nx 进行转换、但以相同的两个节点未知输入维度不会发生任何变化

     在 IF 条件中添加模型名称的第二种方法、就像我 在第 297 行中所做的那样
    如果 model =“fastbev_result202601010908_simple.onnx":“:
        so.graph_optimization_level = RT.GraphOptimizationLevel.ORT_DISABLE_ALL 、注释#so.graph_optimization_level = RT.GraphOptimizationLevel.ORT_DISABLE_ALL(第 72 行)
     但是,仍然没有改变。
     我做了什么,或者你可以尝试转换 onnx 成功?
     希望你的答复
    THs.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    [引述 userid=“434795" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1625537/tda4vm-fastbev-model-application-and-it-s-onnx-file-usage/6294002

    我已尝试添加  

    so.graph_optimization_level = 第 71 行的 RT.GraphOptimizationLevel.ORT_DISABLE_ALL、
    [/报价]

    只添加这条线就应该起作用、

    [引述 userid=“434795" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1625537/tda4vm-fastbev-model-application-and-it-s-onnx-file-usage/6294002
    如果 model =“fastbev_result202601010908_simple.onnx":“:
        so.graph_optimization_level = RT.GraphOptimizationLevel.ORT_DISABLE_ALL 、注释#so.graph_optimization_level =
    [/报价]

    在 if 条件下、必须从 model_config.py 文件中给出模型名称、
      

    从 model_config.py 中提供相应的模型名称

    这样、您应该可以解决不受支持的层、我使用的工具版本为 11_02_04_00

    但我也面临这个错误、

    这是因为一些中间层输出尺寸为 270MB、并且有 2-3 层输出需要此类存储器、这在 EVM 中是不现实的。 通常、我们在 EVM 中为暂存存储器分配 128 或 256MB。

    您的模型占用更多内存的原因是您的输入是 24x3x256x704、我们仅使用 6x3x256x704 输入验证、这是该模型的 6 个输入图像。 在您的情况下,它的 24 个图像,我认为你正在尝试用 4 个批次进行批处理。 这需要更多的内存空间。 因此、我建议您删除批处理输入、然后为您的模型提供 6 个输入图像。

    我仍然建议使用 edgeai-modelzoo 中提供的模型、该模型已在 tda4 器件上验证。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

      我仍然不明白如何 在 if 条件下从 model_config.py 文件中给出模型名称,你能告诉我 如何用我的 onnx 模型添加模型名称吗?

      与我的 ‌同事讨论,24 图像训练的高精度,但现在是弱,无论什么 6 图像。似乎是时候让 edgeai-tidl-tools 设置来做 bev 训练和 onnx 导出

    THs.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

      与我的 ‌同事讨论,24 图像训练为高精度,但现在是弱,无论什么 6 图像。似乎是时候让 edgeai-tidl-tools 设置来执行 bev 训练和 onnx 导出[/报价]

    好的。

     我仍然无法理解如何 在 if 条件下从 model_config.py 文件中给出模型名称、您能告诉我 如何使用我的 onnx 模型添加模型名称吗?

    我使用的是 11_02_04_00 工具、其中接口已更改为.yaml 文件、我已共享我的配置、

    [quote userid=“637485" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1625537/tda4vm-fastbev-model-application-and-it-s-onnx-file-usage/6291621 编辑 config.yaml 文件以添加 fastbev 模型、请参阅以下补丁[/quote]

    能否共享您的 model_config.py 文件、我会为您指定正确的字符串以添加 if 条件。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

      由于某些原因、我们目前无法使用 tidl11.2 版本进行工程师开发、但 tidl11.1.6.0 是我们正在开发的一款。

    您能否共享您的 model_config.py 文件

    我们使用 python onnxruntime 并将 tidl 设置为环境以执行 tidl 导入。 我发现您在 TI edgeai-tool 中使用 config.yaml、我所做的是 基于 原始导入程序  https://software-dl.ti.com/jacinto7/esd/processor-sdk-rtos-jacinto7/08_00_00_12/exports/docs/tidl_j7_08_00_00_10/ti_dl/docs/user_guide_html/md_tidl_model_import.html。  那么,你能给我一些关于 如何做进口商与我的 onnx 模型的建议吗?

    THs.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

      由于某些原因、我们目前无法使用 tidl11.2 版本进行工程开发、但 tidl11.1.6.0 是我们正在开发的版本。

    好的。

    我仍然建议使用基于 python 的工具从 edgeai-tidl-tools 导入

    无论如何、如果您要使用旧的导入方法、请按照步骤 4 从 edgeai-modelzoo 下载模型

    4. 下载模型和 prototxt 文件、

    然后参考以下配置文件并根据需要进行修改、

    modelType          = 2
    numParamBits       = 8
    inElementType      = 1 5
    rawDataInElementType = 6 5
    inputNetFile      = "../../test/testvecs/models/public/onnx/fastbev_mod_pandaset_nms_r18_f1_256x704_20251215.onnx"
    outputNetFile      = "../../test/testvecs/config/tidl_models/onnx/tidl_net_fast_bev.bin"
    outputParamsFile   = "../../test/testvecs/config/tidl_models/onnx/tidl_io_fast_bev_"
    inDIM1 = 1 1
    inDIM2 = 6 1
    inWidth  = 704 160000
    inHeight =  256 1
    inNumChannels = 3 1
    inDataNamesList =  "imgs, xy_coor"
    #outDataNamesList =  "/Sigmoid_output_0, /Reshape_6_output_0, /Reshape_8_output_0"
    inData = "../../test/testvecs/largeInputs/fast_bev_valid_input.bin"
    inDataFormat = 1 
    inFileFormat = 1
    metaArchType = 7
    metaLayersNamesList =  "../../test/testvecs/config/import/public/onnx/tidl_import_fast_bev_metaarch.prototxt"
    # 3d od post processing
    postProcDataId = 1
    postProcType    = 6

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

      我已经使用 tidl_11_01_06_00 将 onnx 模型转移到 bin、我想检查是否已正确转换。  

    PC_DSP_TEST_dl_algo.out s:subgraph_0_tidl_io_.qunat_stats_config.txt 是我用于测试具有单个图像输入的输出频段的方法、但现在模型输入需要 6 个图像 (6、3,256,704) 和 xy_Coors、我从未涉及过这些图像。您能否介绍如何使用 PC_DSP_TEST_dl_algo.out 正确测试频段、或者是否有任何其他方法?
      希望你的建议。
    THs.
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    s:subgraph_0_tidl_io_.qunat_stats_config.txt 是我用来测试具有单图像输入的输出箱的方式

    不、这不是用于推理的配置文件。

    模型输入需要 6 个图像 (6,3,256,704) 和 xy_Coors,我从来没有处理过。你能告诉我如何正确测试容器吗

    您应该在编译期间给模型的输入正确吗? 然后、在 qunatisization 阶段、只有标度值会正确更新。

    inData 文件指定输入数据。 如果使用 rawdatainput 格式、则将 6 个图像后跟 xy_Coors 存储在.bin 文件中、并在导入/推理过程中将该文件作为输入。 转储尺寸为 (6、3,256,704) 的 6 个帧、并转储尺寸合适的 xy_Coors。 您还应该 根据必须转储的情况检查 rawDataInElementType、如果 rawDataInElementType == 6 for images、那么它是 float32 类型的数据、因此转储的数据应该是 float32 类型、如果 rawDataInElementType == 5 for xy_Coors、则转储的数据应该是 int32 类型。

    或者、如果使用基于 python 的工具、则可以将图像和 xy_Coors 加载为 NumPy 对象并将其提供给模型。 如果您有基于 python 的工具、则很容易、否则您必须生成.bin 文件以进行输入。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

      我的 config.txt  combined_data.bin 简单地生成了:

    float32_tensor = np.random.randn (63,256,704).astype (np.float32)
    int32_tensor = np.random.randint (010000、size=(240000,)、dtype=np.int32).reshape(1、12400001)
    float32_bytes = float32_tensor.tobytes ()
    int32_bytes = int32_tensor.tobytes ()
    bin_file =“combined_data.bin"</s>“
    open (bin_file'wb') 设置 f
      F.write (float32_bytes)
      F.write (int32_bytes)

    使用  tidl_model_import.out config.txt 将 onnx 传输到 tidl 频段。 它已编译并收到错误:
    ---------------------------- 网络编译器跟踪------------------------------------
    图层输入 3、8 的数据类型错误
    错误:错误代码=
    [TIDL Import]致命错误:网络编译器执行失败 — 内存规划失败,返回代码为–65280 -[tidl_import_core.cpp、1061]
    [TIDL 导入]中止
    我认为 是由 onnx 模型中的 int64 类型数据引起的,但 int64 只存在于 Resize、Split 和 Reshape 节点中,而 fastbev_mod_pandaset_NMS_R18_F1_256x704_20251215.onnx 也存在。那么,问题是什么?
    此外、如果 tidl 传输成功并生成 net.bin io.bin、如何测试这些图块是正确的 ro 推理?PC_DSP_TEST_dl_algo.out  s:subgraph_0_tidl_io_.qunat_stats_config.txt 是我在 PC 上测试图块的方法
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

      这是我的 config.txt  combined_data.bin 生成简单:

    好的。

    图层输入 3、8
    的数据类型错误

    根据错误 int32 位输入、为不受支持的 BatchNorm 层提供。 在模型中没有这样的层、但在编译过程中可能会添加该层以进行优化。
    我怀疑您的 xy_Coors 维度为 240000 的原因、其中 edgeai 模式的维度为 160000。 但如果没有您的模型、我无法确认原因是否如此。 您可以通过查看此文件 subgraph_0_tidl_net.bin.html 来查看是否添加了任何 batchnorm 图层来共享您的最新模型或检查中间结果吗?

    此外、如果 tidl 传输成功并生成 net.bin io.bin、如何测试这些区间是否适合 ro 推理?

    您可以创建不同的 config.txt 进行推理、并使用以下配置作为推理参考、然后  使用该配置文件运行 PC_dsp_test_dl_algo.out。

    netBinFile = "testvecs/config/tidl_models/onnx/tidl_net_fast_bev.bin"
    ioConfigFile   = "testvecs/config/tidl_models/onnx/tidl_io_fast_bev_1.bin"
    outData =   testvecs/output/fast_bev_out.bin
    inFileFormat = 1
    inData = testvecs/largeInputs/fast_bev_valid_input.bin  # add your input file here
    postProcType    = 5

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    是的、batchnorm 添加了 netlog.txt 如下

    好的、不应该在数据作为 Int32 进入的开始处添加、或者应该在 batchnorm 层之前添加数据转换层。

    您能分享一下您的模型、让我看看为什么要添加它。 也可以尝试添加数据服务器层。

    此外、、我也在试用 TIdl_11.2、python3 basic_example.py -suffered、get bboxs.bin、labels.bin、scors.bin、这只是一个 onx 推理文件。 是否有任何方法可以进行诸如  PC_dsp_test_dl_algo.out config.txt 之类的推理?

    此外、您已在 CONFIG.YAML 文件中添加了模型、并且可以通过将 debug_level 设置为 2 并在目标上启用远程内核日志(通过运行“source /opt/vision_apps/vision_apps_init.sh)来验证模型是否在 c7x 上运行

    [quote userid=“637485" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1625537/tda4vm-fastbev-model-application-and-it-s-onnx-file-usage/6291621 编辑 config.yaml 文件以添加 fastbev 模型、请参阅以下补丁

    这将从 c7x 打印推理日志、您可以使用这些日志来确认 c7x 上正在进行推理。

    此外、在主机端、您还应该在设置调试级别后看到如下所示的一些推理日志。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    e2e.ti.com/.../fastbev.rar

    你(们)好

    您能否分享您的模型、让我看看为什么添加该模型

    请参阅上传文件 fixte_fastbev_result202504091503_simple.onnx 是我正在使用的模型,  

    用于验证模型是否已完全编译的编译日志

    fixedbevcompile(添加.log 以读取) 日志  

    REST 文件为 import config.txt 和 inference.txt、用于在 tidl 11.1 下进行 tidl 导入和推理

    此外、tidl11.2 下的编译箱出乎意料地慢、慢

    int 这一步已经花了将近 8 个小时! 现在仍然没有完成。 任何参数都可以帮助加速这一过程吗? 配置如下所示

    如果编译成功、如何测试 net.bin、io.bin 是否正确导入? 在 tidl11.1 下、我可以使用 PC_dsp_test_dl_algo.out s:config.txt 进行测试、但在 tidl 11.2 python envs 下、如何测试?python3 basic_example.py -assumed 似乎不是正确的方法、或者设置的配置是错误的。

    希望收到您的 答复

    THs.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    请参阅上传文件、fixte_fastbev_result202504091503_simple.onnx 是我正在使用的模型、 

    让我检查一下并更新您。

    int 这一步花了将近 8 个小时! 现在仍然没有完成。 任何参数都可以帮助加速这一过程吗? 配置显示在下方

    这不会花费很长时间、您可以在编译时指定模型名称吗?

    python3 basic_example.py -m fastbev -c“

    如果编译成功、如何测试 net.bin、io.bin 是否正确导入? 在 tidl11.1 下、我可以使用 PC_dsp_test_dl_algo.out s:config.txt 进行测试、但在 tidl 11.2 python envs 下、如何测试?python3 basic_example.py -assumed 似乎不是正确的方法、或者我设置的配置是错误的。

    成功编译后、在 推断选项中将 DEBUG_LEVEL 设置为 2

    并运行、
    “Python3 basic_example.py -m fastbev“

    共享日志之后、日志应类似于使用 PC_dsp_test_dl_algo.out 测试模型的方式。
    让我检查日志并确认推理是否正确进行。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    你(们)好

    python3 basic_example.py -m fastbev

      在这个推论中,如何将 models.fastbev.path?设置为与**.onnx,或者我应该使用 net.bin,io.bin? 我认为是**.onnx 绝对不正确

    这是 tidl11.2 下的编译日志、它与我自己的 onnxtuntime 编译解决方案非常相似。

    此致

    Ji.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

      在这个推论中,如何设置 models.fastbev.path?编译为**.onnx,或者我应该使用 net.bin,io.bin ? 我认为是**.onnx 绝对不正确

    您不必为 net.bin 和 io.bin 指定修补程序、您必须设置 onnx 路径本身。 因此、 每当您运行推理时、脚本将在运行时/examples/model-artifacts/fastbev/artifacts 内生成编译的工件、它将从该文件内获取 net.bin 和 io.bin。  

    我认为是**.onnx 绝对不正确

    不、脚本的工作方式是这样的。 如果您仍有疑问、请尝试删除 runtimes/examples/model-artifacts/fastbev/artifacts 文件夹中的.bin 文件、并且您应该会在推断期间看到错误、即找不到文件。

    [引述 userid=“637485" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1625537/tda4vm-fastbev-model-application-and-it-s-onnx-file-usage/6305558

    成功编译后、在 推断选项中将 DEBUG_LEVEL 设置为 2

    并运行、
    “Python3 basic_example.py -m fastbev“

    [/报价]

    您能尝试一下并共享日志吗?

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    查看 fastbev_config 文件、似乎有与我分享的不同的配置、

    、然后参考以下配置文件并根据您的要求进行修改、

    此 inDataNorm 参数在输入中添加了 batchnorm 层、其中存在 int32 数据类型、当前不支持对 batchnorm 的 int32 位输入、因此从文件中删除此 config 参数并尝试再次编译。 在 preproc 节点中执行标准化、而不是使用此 batchnorm 图层。
    无论如何、我将生成一个内部 Jira、以便在导入阶段报告此错误。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    因此、从您的文件中删除此配置参数、然后尝试再次编译

    是、我注释 inDataNorm=1、编译成功

    python3 basic_example.py -m fastbev

    没有任何变化,编译仍然需要很长的时间,这使我不喜欢 tidl11.2 做一些开发。当我设置环境时发生了什么错误?你可以尝试编译我的 onnx 文件来测试它是否是 onnx 模型或系统环境的问题?  

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    我这边也需要更多时间、

    如果您只想检查模型是否正在成功编译、则可以将 CALIBRATION_FRAMES 和 CALIBRATION_ITEDIations 减少为 1。 这可能会影响精度、但您可以确认模型在硬件中运行良好。

    这将使模型编译速度更快、但不建议在最终部署中使用。 一旦您知道模型成功编译和运行且没有任何问题、则增加 CALIBRATION_FRAME 和迭代、并使其编译更长的持续时间。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我仍然建议你尝试从 edgeai-modelzoo fastbev 模型,如上一个答复中提到的。 这将优化后处理、并在最终编译模型中减少节点数。

    我将分享使用在 tda4 设备中验证的 fastbev 模型的步骤。

    此致、
    Gokul

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    edgeai-modelzoo 中的 fastbev 模型、如上一篇回复中所述

    模型在几分钟内编译得非常快、

    [报价 userid=“637485" url="“ url="~“~/support/processors-group/processors/f/processors-forum/1625537/tda4vm-fastbev-model-application-and-it-s-onnx-file-usage/6311896 ] calibration_frames 和 calibration_iterations to 1

    这仍然花费了将近 4 个小时,不管怎样,它比 10 个小时前更好。

    我将尝试使用 edgeai-tensorlab 通过 nuscens 数据集训练 fastbev。

    TIDL11.1 经过编译和参考后也取得了成功、汇编时间不到 20 分钟。

    THs.

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好、

    感谢您的更新。

    如果您需要更多信息、或者如果此问题得到解决、我可以关闭此主题。

    此致、
    Gokul