-
Notifications
You must be signed in to change notification settings - Fork 306
Description
模型:picodet_s_416_coco_lcnet
环境:window11,paddlelite=2.13rc;paddledetection中训练模型经过两次转化切换至nb模型;
conda activate paddle_env
python tools/export_model.py
-c configs/picodet/picodet_s_416_coco_lcnet.yml
-o weights=output/best_model.pdparams \
paddle_lite_opt
--model_file=./picodet_s_416_coco_lcnet/model.pdmodel
--param_file=./picodet_s_416_coco_lcnet/model.pdiparams
--optimize_out_type=naive_buffer
--optimize_out=./model
--valid_targets=arm
--enable_fp16=false
运行代码:
from paddlelite.lite import *
import numpy as np
from PIL import Image
def mobile_infer():
# (1) 设置配置信息
config = MobileConfig()
config.set_model_from_file("./model.nb")
# (2) 创建预测器
predictor = create_paddle_predictor(config)
# (3) 从图片读入数据
image = Image.open('测试/05.jpg')
resized_image = image.resize((416, 416), Image.BILINEAR)
image_data = np.array(resized_image).transpose(2, 0, 1).reshape(1, 3, 416, 416)
# image_data = image_data.astype('float32')
# (4) 设置输入数据
input_tensor = predictor.get_input(0)
input_tensor.from_numpy(image_data)
# (5) 执行预测
predictor.run()
# (6) 得到输出数据
output_tensor = predictor.get_output(0)
print(output_tensor.shape())
print(output_tensor.numpy())
if name == 'main':
mobile_infer()
Process finished with exit code -1073741819 (0xC0000005)
目标:
想在电脑上执行nb模型输出结果进行模型调优,而不用在安卓上进行测试,简化开发流程,但是paddlelite的python api跑不通(linux环境下也试过无法跑通)