错误的 python opencv cmake 安装包路径

Wrong python packages path for opencv cmake installation

我一直在尝试使用 virtualenv 按照 pyimagesearch.com 中的 opencv 安装步骤进行操作。一切正常,除了包路径:它应该是 /Users/JLee/Envs/cv/lib/python2.7/site-packages 但它被配置为 lib/python2.7/site-packages

在 Python 中,import cv2 在全局设置中运行良好,但在 'cv' 虚拟环境中不起作用。

按照网站上的步骤进行操作时,我首先没有安装 virtualenv,然后意识到我还没有安装它,所以我稍后安装了它并再次按照步骤操作。这可能是个问题吗?

 Python 2:
--     Interpreter:                 /Users/JLee/Envs/cv/bin/python2.7 (ver 2.7.10)
--     Libraries:                   /usr/lib/libpython2.7.dylib (ver 2.7.10)
--     numpy:                       /Users/JLee/Envs/cv/lib/python2.7/site-packages/numpy/core/include (ver 1.11.1)
--     packages path:               lib/python2.7/site-packages

这是cmake配置构建的代码:

cmake -D CMAKE_BUILD_TYPE=RELEASE 
-D CMAKE_INSTALL_PREFIX=/usr/local \ 
-D PYTHON2_PACKAGES_PATH=/Users/JLee/Envs/cv/lib/python2.7/site-packages \ 
-D PYTHON2_LIBRARY=/usr/local/Cellar/python/2.7.11/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=/Users/JLee/Developer/opencv_project/opencv_contrib/modules ..

提前感谢您的帮助!

出于某种原因,CMake 似乎没有自动确定您的虚拟环境的 site-packages 目录。但这不是问题,因为您需要做的就是 cv2.so 文件中的 sym-link。

在磁盘上找到您的 cv2.so 文件(根据您的输出,它似乎在 lib/python2.7/site-packages 中)然后 sym-link 进入您的 Python 虚拟环境site-packages 目录。从那里开始,一切都会按预期进行。