python3装没装opencv_无法使用python3安装openCV 3.1.0. CMAKE没有正确包含或链接python

本文记录了解决在Ubuntu16.04上安装OpenCV3.1.0遇到的问题,特别是在配置CMake时遇到的Python3相关链接错误的过程。通过调整CMake命令和清理缓存,最终成功安装并使Python3能够正常识别OpenCV。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我正试图在我的机器上安装带有

Python3的OpenCV 3.1.0.因为我有Ubuntu 16.04,所以我完全按照本指南操作:

但是,在运行cmake后,我在第4步遇到了麻烦.我的cmake程序的输出有这个片段:

-- OpenCL:

-- Version: dynamic

-- Include path: /home/kevin/opencv-3.1.0/3rdparty/include/opencl/1.2

-- Use AMDFFT: NO

-- Use AMDBLAS: NO

--

-- Python 2:

-- Interpreter: /home/kevin/.virtualenvs/cv/bin/python (ver 3.5.2)

--

-- Python 3:

-- Interpreter: /home/kevin/.virtualenvs/cv/bin/python3 (ver 3.5.2)

--

-- Python (for build): /home/kevin/.virtualenvs/cv/bin/python

--

-- Java:

-- ant: NO

-- JNI: /usr/lib/jvm/java-8-oracle/include /usr/lib/jvm/java-8-oracle/include/linux /usr/lib/jvm/java-8-oracle/include

-- Java wrappers: NO

-- Java tests: NO

cmake文件似乎没有正确链接python部分(libraries,numpy,packages_path)下缺少的属性.我尝试编译opencv并安装它,当我加载python3并导入cv时,它说它无法找到cv包.

我尝试修改CMAKE命令,因此我没有使用指南建议的内容,而是添加了三个参数来强制cmake包含缺少的python属性(最后三个属性是我的修改):

cmake -D CMAKE_BUILD_TYPE=RELEASE \

-D CMAKE_INSTALL_PREFIX=/usr/local \

-D INSTALL_PYTHON_EXAMPLES=ON \

-D INSTALL_C_EXAMPLES=OFF \

-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib-3.1.0/modules \

-D PYTHON_EXECUTABLE=~/.virtualenvs/cv/bin/python \

-D BUILD_EXAMPLES=ON \

-D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so \

-D PYTHON_NUMPY_INCLUDE_DIR=~/.virtualenvs/cv/lib/python3.5/site-packages/numpy/core/include \

-D PYTHON_PACKAGES_PATH=~/.virtualenvs/cv/lib/python3.5/site-packes ..

但是,仍然,cmake的输出是相同的(它只列出解释器,没有其他python属性),当我尝试构建opencv并安装它时,我的python解释器找不到opencv包.

我完成安装opencv之后,我的/usr/local/lib/python3.5/文件没有site-packages目录.

谁能指出我正确的方向?我一直在尝试搜索过去几个小时如何解决这个问题,但到目前为止找不到方法,所以我非常感谢任何指导.谢谢!

更新

我意识到我必须在cmake命令中添加-D BUILD_opencv_python3 = yes,以便opencv查找python库.但是,这是我从cmake获得的新输出:

-- Python 3:

-- Interpreter: /home/kevin/.virtualenvs/cv/bin/python (ver 3.5.2)

-- Libraries: NO

-- numpy: NO (Python3 wrappers can not be generated)

-- packages path: lib/python3.5/site-packages

知道为什么cmake没有正确找到我的python 3库(即使我在cmake选项中添加“-D PYTHON_LIBRARY = /usr/lib / x86_64-linux-gnu / libpython3.5m.so”)?

更新

我通过删除整个/ build目录并在新目录上运行cmake来解决问题.我认为错误继续出现是因为cmake进行了一些缓存,但添加标志-D BUILD_opencv_python3 = yes似乎对我有用.

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值