如果想把TensorflowLite模型在手机端部署,需要把模型转换成为Metadata 格式。
代码如下:
from tflite_support.metadata_writers import image_classifier
from tflite_support.metadata_writers import writer_utils
# 这里的label 一定要注意 如果是regression 问题 一定要把label 改成一行
ImageClassifierWriter = image_classifier.MetadataWriter
model_path ="已经训练好的模型.tflite"
label_file = "labels.txt"# 模型输出对应标签
save_path ="metadata_V1.tflite"
input_norm_mean = 0
input_norm_std = 255
writer = ImageClassifierWriter.create_for_inference(
writer_utils.load_file(model_path),
[input_norm_mean],
[input_norm_std],
[label_file])
print(writer.get_metadata_json())
writer_utils.save_file(writer.populate(),save_path)
其中,注意事项
(1)input_norm_mean,input_norm_std 根据训练图片的归一化方式更改
原始公式为 (读取的图片像素

本文介绍了如何将TensorflowLite模型转换为Metadata格式以便于在手机端部署。关键步骤包括使用`image_classifier.MetadataWriter`和`writer_utils`进行转换,并调整输入归一化参数(input_norm_mean和input_norm_std)以匹配训练数据。对于regression模型,标签文件只需包含任意数字。同时,注意标签.txt文件的格式,对于分类问题,每行应写入一个类别名称。
最低0.47元/天 解锁文章
4435

被折叠的 条评论
为什么被折叠?



