YOLOV3——PyTorch训练TensorFlowLite部署模型转换
Posted thunder-wu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了YOLOV3——PyTorch训练TensorFlowLite部署模型转换相关的知识,希望对你有一定的参考价值。
- 主要思路
将训练好的.pt文件转换为keras的.h5文件,再将.h5文件转换为.tflite文件。
- 步骤:
1.环境:PyTorch1.0以上(其他版本也可以,主要是适配下面的开源代码)
.pt转weights下载后在文件内添加pt_to_weights.py。
from models import *
model = Darknet("cfg/yolov3-obj.cfg")#你用于训练的cfg文件
load_darknet_weights(model,"weights/latest.pt")
save_weights(model,path=‘weights/latest.weights‘,cutoff=-1)
2.环境:Tensorflow2.0,要安装keras模块
修改convert.py中
需要避免[None,None,None,3],设置为input_layer = Input(shape=(229, 229, 3)),tensorflow中为静态图,输入要确定。
运行
python convert.py yolov3-obj.cfg latest.weights latest.h5
3.环境:TensorFlow2.0
import tensorflow as tf
converter = tf.lite.TFLiteConverter.from_keras_model_file(‘latest.h5‘)
tflite_model = converter.convert()
open("latest.tflite", "wb").write(tflite_model)
生成后验证是否正确识别即可
以上是关于YOLOV3——PyTorch训练TensorFlowLite部署模型转换的主要内容,如果未能解决你的问题,请参考以下文章
终于搞定PyTorch+YoloV3+TensorRT,在aws上利用G4实例和DLAMI进行迁移训练
深度学习和目标检测系列教程 14-300:训练第一个 YOLOv3 检测器