Openvino Mac版部署踩坑记录

前几天在Ubuntu上使用了openvino觉得速度还行,想着在自己的Mac上也装一个,来实现在家也能为社会主义做贡献的梦想(手动狗头),然后坑就来了,历经各种试错,终于找到解决方案,分享给后来之人。

首先奉上Intel Openvino的官方安装教程链接:https://docs.openvinotoolkit.org/2021.2/openvino_docs_install_guides_installing_openvino_macos.html

教程一定要从头到尾看,看一遍再装,坑就在细节里:

首先,硬件环境一定要符合要求,目前官方提供的完整安装包只支持Intel芯片,也就是X86架构,今年5月份开始计划逐步支持ARM架构,但还没有稳定的工具包,着急尝鲜的同学可以上github下载ARM架构Plugin,自己编译库,附上Github Pulgin下载链接

https://github.com/openvinotoolkit/openvino_contrib

接着就是软件环境,官方文档要求软件环境如下:

  • CMake 3.10 or higher
  • Python 3.6 - 3.7
  • Apple Xcode* Command Line Tools
  • (Optional) Apple Xcode* IDE (not required for OpenVINO, but useful for development)

 特别注意python环境目前只能是3.6-3.7版本,别装3.8,系统自带的2也是不行的,不然库文件对不上会一直报错。其他安装都没啥问题,要是缺了,系统会提醒你啥没装,安装就好。我就说一下python环境的配置,这一步没搞好,后面问题太多了。

python环境安装可以采用直接官网下载或者anaconda安装两种方式,都没有问题,我是用了官网下载python的方法,链接如下:

https://www.python.org/downloads/macos/

推荐下载3.7,安装完成后记着配置环境变量,方法如下:

vim ~/.bash_profile

输入‘i’,进入编辑模式,在文件最后一行加入一下环境变量,然后’esc‘,输入’:wq‘,保存即可。

alias python=/usr/local/bin/python3.7

最后

source ~/.bash_profile.sh

 激活环境变量,在终端窗口输入python,如果版本为3.7,说明安装成功了。

最后,安装openvino,前面的环境要求配置好,这一步没什么难度,官网下载openvino,选择root权限或者admin权限安装,一直下一步就好,最后一步安装完成,会跳转到网页环境变量页面,标题设置如下:

Set the Environment Variables

You need to update several environment variables before you can compile and run OpenVINO™ applications. Open the macOS Terminal* or a command-line interface shell you prefer and run the following script to temporarily set your environment variables:

 我们直接把它写到环境变量里,不需要每次都配置,首先:

vi ~/.bash_profile

接着添加环境变量命令如下 ,如果是按照root权限或者amin权限,路径应该是一样的,大家看好自己的路径,不确定的直接“command+shift+g”进入‘/opt’看看自己的路径,拷到命令行,老套路保存一下,source激活一下。

source /opt/intel/openvino_2021/bin/setupvars.sh

打开新的终端提示如下表示么得问题了,后续的demo环境依赖看自己需求按着教程作就好。

[setupvars.sh] OpenVINO environment initialized

我的踩坑 就在这最后一步,其实我在Ubuntu也遇到了这个问题,当时稀里糊涂能用,就没再管,但最终在mac上安装还是遇到了,困扰了我两个周末,问题如下: 

[setupvars.sh] WARNING: Can not find OpenVINO Python binaries by path /Users/python [setupvars.sh] WARNING: OpenVINO Python environment does not set properly [setupvars.sh] OpenVINO environment initialized

重点看第一条,python binaries找不到,这个就是提示python环境没设置好,就算显示初始化了,最后也调用不了的,想要解决这个问题就得看setupvars.sh是怎么配置的,打开openvino的bin目录下的setupvars.sh,根据文末的echo设置找到问题出在 “${INTEL_OPENVINO_DIR}/python",取到的路径不是我们想要的路径,回看22-23行代码配置如下${INTEL_OPENVINO_DIR}

export INTEL_OPENVINO_DIR="$INSTALLDIR"
export INTEL_CVSDK_DIR="$INTEL_OPENVINO_DIR"

终端检查INTEL_OPENVINO_DIR路径显示为/usrs/xuejun,阿西,这个路径下么得python,怎么能行。

~ % echo $INTEL_OPENVINO_DIR 

问题找到了,那就把openvino下的python路径添加到这里即可,如下:

export INTEL_OPENVINO_DIR="/opt/intel/openvino_2021"

保存一下,打开新的终端,吴彦祖再度楼露出了会心的微笑。

 一切就绪,跑个demo,结果如下