用户您好,请详细描述您所遇到的问题,详细的描述有助于帮助我们快速定位,解决问题~Thanks♪(・ω・)ノ
1. 芯片型号:J5
2. 天工开物开发包 OpenExplorer 版本:8 J5_OE_1.1.68
3. 问题定位:板端部署等
参考这个教程,可以生成数据类型为float32的pos_embed.npy文件,此文件就是板端非图像的输入信息吗。但hbm模型的输入信息如下:
input[1]:
name: arg0[pos_embed]
input source: HB_DNN_INPUT_FROM_DDR
valid shape: (1,256,60,20,)
aligned shape: (1,256,60,32,)
aligned byte size: 491520
tensor type: HB_DNN_TENSOR_TYPE_S8
tensor layout: HB_DNN_LAYOUT_NCHW
quanti type: SCALE
stride: (491520,1920,32,1,)
scale data: 0.296522,0.296522.......(256个相同的scale)
也就是数据类型要求int8,上述输入准备教程中也有对浮点Points做量化的过程,量化的scale就是hbm模型中读出来的 0.296522吗?我这样对参考点量化成int8,这个过程哪里有问题吗?与教程中量化成int16比较,主要就改了clip的范围从int16变成int8,数据类型从int16变成int8。
(qat量化后的pth模型pc端推理正确,pc端推理的未经过post_progress的输出和板端hbm模型的原始输出不一致,所以我们怀疑是板端hbm模型的输入不对)
麻烦帮忙看一下,谢谢
scale = [0.296522]
points = np.load(path)
idx=int(path[-5])
points = points.transpose(0, 3, 1, 2) / scale[idx]
points = np.floor(points + 0.5)
points = np.clip(points, -128, 127)
points = points.astype(np.int8)
points.tofile(save_name+".bin")




到文件中,上面保存数据时