NMS算子调用时出错
收藏回复举报
NMS算子调用时出错
t('forum.solved') 已解决
发表于2023-12-26 15:27:33
0 查看

2.调用算子清单中的NonMaxSuppression算子。

算子描述文件:

cke_14764.png

ATC转换成功,但是在调用时需要输入一个scalar tensor(max_outsize)到算子中,那应该怎么定义它的shape?它应该作为一个tensor输入吗?如果作为一个tensor,那它的dim应该是0,但是在创建tensordesc的接口中,dim为0则表示为空tensor。

cke_14765.png

同时,NMS算子是需要使用到这个输入进行输出推到的,此时它应该是一个常量

cke_14766.png

在TopK的算子描述文件中,也指出了传入的是常量

cke_14767.png

但是怎么让它作为一个常量输入?

3.我先暂时把scalar的shape当做是[1],尝试调用。

cke_14768.png

参考的是“执行动态Shape算子示例代码(不注册算子选择器)”给出的示例:

cke_14769.png

提示InferShape失败。

cke_14770.png

日志为log1.txt。

然后尝试直接给定输出shape,不进行shape推导(Add算子是成功的):

cke_14771.png

提示执行错误,同时第三个输入(即标量输入)与实际不符:

cke_14772.png

数据生成代码如下:

cke_14773.png

日志为log2.txt。

我要发帖子