模型转换工具
Tengine Convert Tool 支持将多种训练框架模型转换成 Tengine 推理框架适配的模型格式 tmfile。最新版本已支持以下框架模型:
Caffe
MXNet
PyTorch(ONNX)
TensorFlow
TFLite
Darknet
MegEngine
OneFlow
PaddlePalle 2.0
同时 Tengine Convert Tool 还支持将其他优秀的端侧框架模型转换成 Tengine 推理框架适配的模型格式 tmfile。最新版本已支持以下框架模型:
ncnn
依赖库安装
sudo apt install libprotobuf-dev protobuf-compiler
源码编译
mkdir build && cd build
cmake ..
make -j`nproc` && make install
编译完成后,生成的可执行文件 tm_convert_tool
存放在 ./build/install/bin/
目录下。
执行模型转换
命令解析
$ ./tm_convert_tool -h
[Convert Tools Info]: optional arguments:
-h help show this help message and exit
-f input type path to input float32 tmfile
-p input structure path to the network structure of input model(*.prototxt, *.symbol, *.cfg)
-m input params path to the network params of input model(*.caffemodel, *.params, *.weight, *.pb, *.onnx, *.tflite)
-o output model path to output fp32 tmfile
Caffe
./tm_convert_tool -f caffe -p mobilenet.prototxt -m mobilenet.caffemodel -o mobilenet.tmfile
MXNet
./tm_convert_tool -f mxnet -p mobilenet.json -m mobilene.params -o mobileent.tmfile
ONNX
./tm_convert_tool -f onnx -m mobilenet.onnx -o mobilenet.tmfile
TensorFlow
./tm_convert_tool -f tensorflow -m mobielenet_v1_1.0_224_frozen.pb -o mobilenet.tmfile
TFLite
./tm_convert_tool -f tflite -m mobielenet.tflite -o mobilenet.tmfile
Darknet
./tm_convert_tool -f darknet -p yolov3.cfg -m yolov3.weights -o yolov3.tmfile
MegEngine
./tm_convert_tool -f megengine -m mobilenet.pkl -o mobilenet.tmfile
OneFlow
./tm_convert_tool -f oneflow -p mobilenet.prototxt -m mobilenet/ -o mobilenet.tmfile
ncnn
./tm_convert_tool -f ncnn -p mobilenet.param -m mobilenet.bin -o mobilenet.tmfile