树莓派4B+ python 部署 yolov3模型问题
Created by: phojl
问题描述:树莓派4b+python+yolov3部署
树莓派中已进行编译 arm7+python,利用python 调用nb进行预测 在aistudio 中生成模型,用 paddle-lite 2.6.0 导出 nb,该模型(指的是 param model 非nb)在 paddlex 运行正常。另利用2.6.1导出的nb 模型在安卓手机端部署也是正常的。但导出的2.6.0模型(nb)在 树莓派端运行出现问题: 1)出现的shape 为【100,6】,数据太多 2)出现的bbox定位超出 范围 0.0,0.248,62418460,24242,24134134,2141341
如何处理?
程序代码
在pdddleX 模型运行 与预测是正确的,但 生成nb 之后,在 paddle-lite 部署之后 出现这个问题,代码这样写有没问题?
设置config信息
config = MobileConfig() config.set_model_from_file("/home/pi/Desktop/model466.nb")
创建predictor
predictor = create_paddle_predictor(config) image = Image.open('/home/pi/Desktop/kc.jpg') resized_image = image.resize((608, 608), Image.BILINEAR) image_data = np.array(resized_image).flatten().tolist() #print(image.size) #print(image.shape) #print(np.array(resized_image).reshape(1,1,224,224).flatten().tolist())
设置输入数据
input_tensor = predictor.get_input(0) input_tensor.resize([1, 3, 608,608]) input_tensor.set_float_data(image_data)
size_data = np.array([[608,608]]).flatten().tolist() input_tensor1 = predictor.get_input(1) input_tensor1.resize([1,2]) input_tensor1.set_float_data(size_data)
predictor.run()
得到输出数据
output_tensor = predictor.get_output(0)