1.链接
https://github.com/movidius/ncsdk
http://www.eeboard.com/evaluation/movisiudncsupdate/4/
2.SDK安装
git clone -b ncsdk2 https://github.com/movidius/ncsdk.git
make install
验证是否安装成功,运行hello world应用
cd examples/apps/hello_ncs_cpp/
make hello_ncs_cpp
make run
返回如下信息
Hello NCS! Device opened normally.
Goodbye NCS! Device closed normally.
NCS device working.
3.APP
cd ncsdk
git clone -b ncsdk2 https://github.com/movidius/ncappzoo.git
cd ncappzoo
make run
make run过程中可能会有一些应用下载失败,可以直接cd到具体的应用目录中make run
比如鸟的识别:
cd ncappzoo/apps/birds
make run
birds目录中有一个images目录,里面有下载的鸟的图片,也可以自己添加图片进去
运行python3 ./birds.py识别鸟
4.SDK
4.1 通用功能
1.用SDK提供的工具在开发电脑上分析、调整和编译一个DNN模型
2.在开发电脑上的用户原型应用,通过调用NCAPI接口访问神经棒,获得硬件加速推理能力
注:训练阶段不能用SDK
4.2 工具
4.2.1 mvNCCompile
将Caffe/TensorFlow的网络以及关联权重转换成Movidius的内部格式。
Caffe:
mvNCCompile deploy.prototxt -w bvlc_googlenet.caffemodel -s 12 -in input -on prob -is 224 224 -o GoogLeNet.graph
TensorFlow:
mvNCCompile inception-v1.meta -s 12 -in=input -on=InceptionV1/Logits/Predictions/Reshape_1 -is 224 224 -o InceptionV1. graph4.2.2 mvNCProfile
提供层到层的参数数据,评价在神经棒上的Caffe/TensorFlow的网络性能
4.2.3 mvNCCheck
比较运行在神经棒上的网络和编译验证的推理结果
4.3 API
提供软件接口连接神经棒,加载编译后的网络文件,管理输入、输出,执行推理
5.神经棒工作步骤
- 使用预先训练好的TensorFlow/Caffe模型或在Ubuntu/Debian上使用Tensorflow/Caffe 训练网络。
- 使用NCS SDK工具链生成graph文件
- 将graph文件和NCS部署到运行Ubuntu的单板计算机上,我用Raspberry Pi 3 B运行Raspbian(基于Debian)
- 使用Python,通过NCS API将graph文件发送到NCS请求图像预测,处理预测结果并根据结果进行(任意)操作