1. 背景
openCV的dldt模块集成了一系列的神经网络的方法,可以直接部署到intel的硬件“神经棒”上去。
鉴于OpenCV一贯的小而精的模型,我们看中它的模型和模型参数,想看看是不是也可以部署到其他框架下。
2. dldt的模型
- 下载:opencv的神经网络的一系列的模型可以再github开源项目open_model_zoo看到,根据readme可以下载相对应的模型(xml)和模型参数(bin)
- 使用:dldt提供了python的接口,可以直接将模型读取出来,示例在官方github项目中也很容易找到。比如物体检测的例子ssd
- api使用说明
3. dldt的安装
- 回过头看dldt的安装还是相对简单的,按照readme的说明就可以了,着重看相应python的说明就好了。
- 安装过程中还是出现了些问题,首先是libcurl.so.4的报错,在网上直接找解决办法比较容易找到,是软链接的问题
- CLDNN那儿出了问题,因为不打算用服务器跑这些工程,只是想用来转出来模型参数,所以这儿可以按照官网提示注销掉。对这些东西不是特别敏感,也没有深入去探究,我猜测可能是硬件“神经棒”和NVIDIA的原因?确切的我也说不清
cmake -DCMAKE_BUILD_TYPE=Release -DGEMM=MKL -DMKLROOT=/home/lidachong/privision/dldt/mklml_lnx_2019.0.1.20180928/ -DENABLE_MKL_DNN=ON -DENABLE_CLDNN=OFF -DENABLE_PYTHON=ON -DPYTHON_EXECUTABLE=`which python3.5` -DPYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so -DPYTHON_INCLUDE_DIR=/usr/include/python3.5 ..
- 可参考这篇安装说明
- 以及相应的Intel官方介绍
- 然后使用的话,需要将相应路径加入到环境变量中去,比如将路径inference-engine/bin/intel64/Release/lib/python_api/python3.6放入到sys.path中