专栏算法工具链在J5对BEVFormer算法进行Calibration操作时遇到报错

在J5对BEVFormer算法进行Calibration操作时遇到报错

已解决
Lmh2024-08-29
157
4

J5_OE_1.1.74

在对BEVFormer算法进行Calibration操作的时候发生了如下图1所示报错信息;报错部分代码如图2所示153行,另外根据报错信息所示,是执行循环操作时的报错;那么请问在Calibration过程中所有执行循环或判断操作的相关代码都会报错吗?这类问题该如何解决呢?

我们已经掌握了from horizon_plugin_pytorch.utils.fx_helper import wrap as fx_wrap 这种包装函数的处理,但是这段代码是BEV算法中在做特征时序融合操作,我们不希望被包装,那么能否有其他处理手段来解决这类循环操作的报错呢?

算法工具链
征程5
评论1
0/1000
  • Huanghui
    Lv.5
    你好,是的,Calibration过程会对模型结构进行调整已插入校准节点,其中所有执行循环或判断操作的相关代码都会报错!目前处理这个文档的方法就是fx_wrap,而且fx_wrap是不会影响功能的。
    2024-09-03
    0
    3
    • Lmh回复Huanghui:

      你好,之前另外一位地平线的工程师给我们讲的是: 使用fx_wrap函数是将被包装的部分代码跳过calibration操作,使得这部分的性能受到影响;

      但是你现在所讲意思是说fx_wrap函数并不会跳过calibration操作,也就是说被包装的部分仍然进行了calibration操作, 那这个fx_wrap函数的具体功能到底是什么呢?

      2024-09-03
      0
    • Huanghui回复Lmh:
      不是这个意思哈,我的意思是fx_wrap之前的报错应该因为Calibration模型生成过程对原始模型结构的变动导致的,fx_wrap函数包装后相当于是个功能黑盒,内部的复杂逻辑会被包装起来,calibration操作是不会探入到内部逻辑的,也就是跳过。这也是让你们吧这部分逻辑整体包起来的原因。
      2024-09-03
      0
    • 默认32832回复Huanghui:

      您好!请问使用fx_wrap包装之后模型的精度是否会下降呢?

      2024-09-03
      0