目录
MNN框架是什么?
MNN是一个轻量级的深度神经网络推理引擎,在端侧加载深度神经网络模型进行推理预测,端侧可以是手机端或者IOT端,是推动深度学习算法落地的重要工具
MNN特点
- 轻量性:MNN文件很小,只有几兆,可以方便地部署到移动设备和各种嵌入式设备
- 通用性:支持
Tensorflow
、Caffe
、ONNX
等主流模型文件格式,支持CNN
、RNN
、GAN
等常用网络,具有多种OP - 高效性:第三方计算库,依靠大量手写汇编实现核心运算
- 易用性: 有高效的图像处理模块,覆盖常见的形变、转换等需求,支持回调机制,可以在网络运行中插入回调,提取数据或者控制运行走向
跑通第一个姿态检测demo
- 网址github ,下载mnn
- 安装3.0以上版本的protobuf
- 按照以下步骤进行
cd mnn cd schema && ./generate.sh mkdir build && cd build cmake -DMNN_BUILD_DEMO=ON .. make -j8
- 把tensorflow模型转换成mnn模型tensorflow模型
./MNNConvert -f TF --modelFile XXX.pb --MNNModel XXX.mnn --bizCode biz
-
执行姿态检测程序,其中input.jpg为输入图片名称,pose.png为输出图片名称
./multiPose.out model.mnn input.jpg pose.png