![sudo apt-getpython-opencv 获取的版本与预期不同](https://linux22.com/image/1140429/sudo%20apt-getpython-opencv%20%E8%8E%B7%E5%8F%96%E7%9A%84%E7%89%88%E6%9C%AC%E4%B8%8E%E9%A2%84%E6%9C%9F%E4%B8%8D%E5%90%8C.png)
sudo apt-get install python-opencv
安装.so
对应于opencv2.4.x的文件,但是我想要对应于opencv3.1的lib。
详细背景:
我正在学习 openCV3.1。运行 opencv 示例所需的一切都已完成,当我运行使用库 cv2.so 的示例 python 脚本时,我意识到该程序由于 cv2.so 版本不正确而出现运行时错误(安装的 cv2.so 对应于 openCV 的 2.4.9 版本,我想要对应于 3.1 版本的 cv2.so)。因此,我认为问题出在 apt-get 源/配置文件等中,我需要帮助来解决。
以下内容可能有助于理解,输出sudo apt-get download python-opencv
:
Get:1 http://in.archive.ubuntu.com/ubuntu xenial/universe amd64 python-opencv amd64 2.4.9.1+dfsg-1.5ubuntu1 [310 kB]
Fetched 310 kB in 21s (14.6 kB/s)
W: Can't drop privileges for downloading as file '/home/bhargav/python-opencv_2.4.9.1+dfsg-1.5ubuntu1_amd64.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
答案1
供您参考,Xenial 中的 opencv 版本只有 2.4.9,详细信息如下:
python-opencv:
Installed: (none)
Candidate: 2.4.9.1+dfsg-1.5ubuntu1
Version table:
2.4.9.1+dfsg-1.5ubuntu1 500
500 http://in.archive.ubuntu.com/ubuntu xenial/universe amd64 Packages
您需要 opencv 3.1,那么您需要安装很多东西,这些东西可以在其他博客中找到。我不会在这里写所有这些,而是可以向您展示链接,因为那里解释得很清楚。 链接在这里。您可以在 Ubuntu 16.04 中按照此方法操作。
答案2
您可以从 PyPI(python 包索引)安装适用于 Python 的 OpenCv:https://pypi.python.org/pypi/opencv-python
- 卸载旧版本
- 确保你的 pip 是最新的:
pip install -U pip
- 安装 opencv-python:
pip install opencv-python
import cv2
- 检查版本:
cv2.__version__
这也适用于虚拟环境。