2016-08-17 62 views
0

我一直在关注在MacOS上安装OpenCV的this指南。我被困在第8步,你在哪里拍摄一切。使用VirtualEnv在Mac上安装OpenCV Python绑定:无法找到解释器

~/opencv/build目录,我跑

$ cmake 
    -D CMAKE_BUILD_TYPE=RELEASE 
    -D CMAKE_INSTALL_PREFIX=/usr/local 
    -D PYTHON2_PACKAGES_PATH=~/.virtualenvs/cv/lib/python2.7/site-packages 
    -D PYTHON2_LIBRARY=/usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/bin 
    -D PYTHON2_INCLUDE_DIR=/usr/local/Frameworks/Python.framework/Headers -D INSTALL_C_EXAMPLES=OFF 
    -D INSTALL_PYTHON_EXAMPLES=ON 
    -D BUILD_EXAMPLES=ON 
    -D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules .. 

如果我从VENV外运行CMake的命令,它未能找到在virtualenv中解释/ numpy的版本:

-- Python 2: 
--  Interpreter:     /usr/local/bin/python2.7 (ver 2.7.12) 
--  Libraries:     /usr/local/Cellar/python/2.7.12/Frameworks/Python.framework/Versions/2.7/bin (ver 2.7.12) 
--  numpy:      /Library/Python/2.7/site-packages/numpy/core/include (ver 1.11.0) 
--  packages path:    /Users/peter/.virtualenvs/cv/lib/python2.7/site-packages 

如果我从venv跑出:

-- Python 2: 
--  Interpreter:     /Users/peter/.virtualenvs/cv/bin/python2.7 (ver 2.7.6) 

找到正确的inter preter,但不会找到numpy路径。

我可以吃我的蛋糕吗?

回答

1

那么,最终我采用了以下方法:不要打扰让cmake使用virtualenv解释器。您可以编译opencv并将cv2.so文件复制到您的virtualenv中。在我的情况下,这涉及到与tutorial出发,然后使用命令

cp /usr/local/lib/python2.7/site-packages/cv2.so ~/projects/spiking-experiments/venv/lib/python2.7/site-packages/ 

要复制的文件。现在我可以从virtualenv中导入cv2。