工具与软件:
下面的图 是我们创建的 openvx 的图形。 Graph 总共包含4个节点、2个 Graph 输入参数以及1个 Graph 输出参数 。
在代码中、我们将流水线深度设置为4、并将 Graph 的输入和输出参数以及每个节点的输出参数缓存都设置为4。

下图展示了流水线的图像输入。 我们在每个帧的左上角标记了一个数字、它表示图像的输入顺序。 我们将输入映像数据写入参数 tensor_85、LLE_PreProc 节点将数据从 tensor_85复制到 input_tensors、确保 input_tensors 的正确性。

在 node_ROI 节点中、我们已保存了输出传感器的结果、如下图所示。 其中、只有第一个流水线的输出结果是正确的(用红色√标记)、而其他三个流水线输出不正确的结果(白色图像)。 在 vision_app (分段或物体检测)的示例工程中、我们看到 TIDL 节点都使用 vxReplicaneNode 进行复制、但在我们的代码中、我们不要求同时驱动多个摄像头、因此我们没有使用该操作。 我们不知道这种异常结果是否与之相关。

此外、我们尝试定义了一个与 TIDL 节点具有相同输入和输出的节点、以在 A72上运行、并将其替换为深度学习节点。 管道运行后节点的输出是正确的。
此外、我们还在不使用流水线的情况下运行 Graph、即调用 vxscheduleGraph。 此时、深度学习节点的输出是正常的。
我们在 TI 论坛上发现有人提出了相同的问题: https://e2echina.ti.com/support/machine-translation/mt-processors/f/mt-processors-forum/942829/tda4vh-q1-2-tidl?tisearch=e2e-sitesearch&keymatch=TIDL%20pipeline#
但问题尚未得到解决、因此请咨询 TI 专家来帮助我们解决这个问题。