工具/软件:Jupyter Notebook
您好!
我目前使用 Processor SDK Linux 10.00.00.08、Processor SDK RTOS 10.00.00.05和 EdgeAI TIDL 10_00_08_00。
EVM 上的自定义模型的推理结果比之前使用旧版 SDK 版本08.01.00.02进行的研究(同一笔记本、同一模型)中获得的结果要差。 我注意到、虽然我使用的模型文件与之前完全相同、但精度也较低、性能也没有那么好。
使用选项`tensor_bits=8`和`calibration_itations=16`编译模型时,我发现如果使用 edgeai_tidl_tool 示例给出的相同预处理函数,推理结果是错误的:
def preprocess(image_path, size, mean, scale, layout, reverse_channels):
# Step 1
img = cv2.imread(image_path)
# Step 2
img = img[:,:,::-1]
# Step 3
img = cv2.resize(img, (size[1], size[0]), interpolation=cv2.INTER_CUBIC)
# Step 4
img = img.astype('float32')
for mean, scale, ch in zip(mean, scale, range(img.shape[2])):
img[:,:,ch] = ((img.astype('float32')[:,:,ch] - mean) * scale)
# Step 5
if reverse_channels:
img = img[:,:,::-1]
# Step 6
if layout == 'NCHW':
img = np.expand_dims(np.transpose(img, (2,0,1)),axis=0)
else:
img = np.expand_dims(img,axis=0)
return img
但是、当我使用其他选项进行编译时、推理会生成正确的结果(请参阅 笔记本)。
`、我使用编译选项` tensor_bits=8 `和` calibration_iterations=16 μ s 尝试了另一个预处理函数进行推理。 现在, 我可以用正确的结果实现推理,但获得的准确度较低:80% 而不是90%。
请您深入了解造成这种差异的潜在原因吗? 此外、我希望就我可能实施的改进提出任何建议、以提高我的成果。
与使用的笔记本一起使用的模型(来自 edgeai_tidl_tool 的 jupyter 笔记本示例):
e2e.ti.com/.../6661.ssd_5F00_mobilenet_5F00_v2_5F00_300.zip
感谢您的帮助。
此致、
Azer