我想在ubuntu 16.04中安装OpenCV for python3。 首先,我试着运行
sudo apt-get install python3-opencv
,我几乎是这样安装我所有的python软件的。 但这并不能找到一个软件库。 然而,如果我执行
sudo apt-get install python-opencv
,这个问题是,由于没有在python中添加3,它安装的是python 2,而我并不使用。 我真的很希望不用从源码构建和安装,所以有什么方法可以让我得到一个资源库吗? 我还试着用pip3安装它,它也找不到它。
Ubuntu,如何安装OpenCV for python3?
这将是一个冗长的答案,所以让我们开始吧。
第1步:安装先决条件 : 升级任何预先安装的软件包。
$ sudo apt-get update
$ sudo apt-get upgrade
安装用于编译OpenCV 3.0的开发者工具。
$ sudo apt-get install build-essential cmake git pkg-config
安装用于从磁盘读取各种图像和视频格式的库和包。
$ sudo apt-get install libjpeg8-dev libtiff5-dev libpng-dev libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
安装GTK,这样我们就可以使用OpenCV的GUI功能。
$ sudo apt-get install libgtk2.0-dev
安装用于优化OpenCV内部各种功能的软件包,例如矩阵运算。
$ sudo apt-get install libatlas-base-dev gfortran
第2步:设置Python (第一部分)
让我们下载pip ,一个Python软件包管理器,为Python 3安装。
$ wget https://bootstrap.pypa.io/get-pip.py
$ sudo python3 get-pip.py
让我们用新安装的pip3来设置virtualenv和virtualenvwrapper。
$ sudo pip3 install virtualenv virtualenvwrapper
现在我们可以更新我们的~/.bashrc文件(放在文件的底部)。
# virtualenv and virtualenvwrapper
export VIRTUALENVWRAPPER_PYTHON=/usr/bin/python3
export WORKON_HOME=$HOME/.virtualenvs
source /usr/local/bin/virtualenvwrapper.sh
$ source ~/.bashrc
$ mkvirtualenv cv
第2步:设置Python (第2部分)
我们需要安装Python 3.4+头文件和开发文件。
$ sudo apt-get install python3.4-dev
OpenCV将图像表示为NumPy数组,所以我们需要将NumPy安装到我们的cv虚拟环境中。
$ pip install numpy
第3步:建立并安装OpenCV 3.0与Python 3.4+绑定
$ cd ~
$ git clone https://github.com/opencv/opencv.git
$ cd opencv
$ git checkout 3.0.0
$ cd ~
$ git clone https://github.com/opencv/opencv_contrib.git
$ cd opencv_contrib
$ git checkout 3.0.0
Time to setup the build:
$ cd ~/opencv
$ mkdir build
$ cd build
$ cmake -D CMAKE_BUILD_TYPE=RELEASE \
-D CMAKE_INSTALL_PREFIX=/usr/local \
-D INSTALL_C_EXAMPLES=ON \
-D INSTALL_PYTHON_EXAMPLES=ON \
-D OPENCV_EXTRA_MODULES_PATH=~/opencv_contrib/modules \
-D BUILD_EXAMPLES=ON ..
让我们开始OpenCV的编译过程。
$ make -j4
假设OpenCV 3.0的编译没有错误,你现在可以在你的系统上安装它。
$ sudo make install
$ sudo ldconfig
Step 4: Sym-link OpenCV 3.0
如果你已经到了这一步,OpenCV 3.0现在应该已经安装在/usr/local/lib/python3.4/site-packages/
中。
在这里,我们的OpenCV绑定被存储在cv2.cpython-34m.so
的名称下。
然而,为了在我们的cv虚拟环境中使用OpenCV 3.0,我们首先需要将OpenCV sym-link到cv环境的site-packages目录中,像这样:(请务必注意cv2.cpython-34m.so
)。
$ cd ~/.virtualenvs/cv/lib/python3.4/site-packages/
$ ln -s /usr/local/lib/python3.4/site-packages/cv2.cpython-34m.so cv2.so
注意我是如何把名字从cv2.cpython-34m.so改为cv2.so的 - 这是为了让Python能够使用cv2的名字导入我们的OpenCV绑定。
第5步:测试OpenCV 3.0和Python 3.4+的安装效果
$ workon cv
$ python
>>> import cv2
>>> cv2.__version__
'3.0.0'
希望这有帮助。另外,要感谢阿德里安-罗塞布罗克在他的post.它对我来说是一种魅力。
所以我安装了它,它似乎在工作。 我遇到的唯一问题是,eclipse中的PyDev似乎无法找到cv2。 我可以导入cv2并且运行得很好,但是我发现在eclipse中我不能在编码时使用ctrl+Space的自动完成功能,这很烦人。 我查看了
/usr/local/lib/python3.5/dist-packages
,注意到只有一个cv2的.so文件,而不是像软件包中的其他库一样有一个包含python文件的文件夹。 有什么方法可以让cv2的python文件与eclipse很好地结合起来吗?
好吧,我实际上是通过在pydev中把cv2添加到强制的内置程序中而使其工作的。
此安装与cuda 8不兼容。如果你有cuda 8,请使用最新的cv2 repo。
我为CUDA 8做了这个工作,在Ubuntu 14.04上有这个问题
github.com/opencv/opencv/issues/8036
请看一下
Trevor
发布于
2019-05-15
0
人赞同
I found this:
https://pypi.python.org/pypi/opencv-python
OpenCV on wheels
'用于Python的非官方OpenCV包。
对于Ubuntu 16.04来说,安装是无痛的
pip3 install opencv-python
检查安装情况
python3
Python 3.5.2 (default, Nov 17 2016, 17:05:23)
[GCC 5.4.0 20160609] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import cv2
>>> cv2.__version__
'3.2.0'
不知道为什么没有人提到这个。也许它是新近推出的?
Robin
发布于
2019-05-15
0
人赞同
假设你安装了Python3.x,我用以下方法解决了这个问题。
1: 安装Ubuntu的OpenCV所需的侧边软件包(仅验证:Ubuntu 16.04)。
apt-get update
apt-get install -y libglib2.0.0 libsm6
apt-get install libxext6
apt-get install -y libxrender-dev
2: 在python3.x上安装OpenCV。
pip3 install opencv-contrib-python
k26dr
发布于
2019-05-15
0
人赞同
在python3环境中使用conda。
首先在python3环境下安装conda,如果你还没有,请激活它。
conda create --name py3k python=3
source activate py3k
现在你可以在conda环境下安装opencv。
pip install pillow
conda install -c menpo opencv3=3.1.0
To import in Python:
import cv2
我已经尝试了几个小时的不同解决方案。我在使用cv2.imshow()时一直得到一个错误。现在我试了这个,它终于工作了。谢谢你们
karel
发布于
2019-05-15
0
人赞同
Ubuntu 18.04 and later
在Ubuntu 18.04及以后的版本中,OpenCV(开放计算机视觉)库的Python 3绑定可以通过以下命令从默认的Ubuntu仓库安装。
sudo apt install python3-opencv
开放式计算机视觉库是各种计算机视觉问题的算法和示例代码的集合。该库与IPL(英特尔的图像处理库)兼容,如果有的话,可以使用IPP(英特尔的集成性能基元)以获得更好的性能。
makoulis
发布于
2019-05-15
0
人赞同
这是因为你的机器中安装了多个python。你应该把python3设为默认值,因为默认是python2.7。
我不认为这就是问题所在。 为什么我不能像对待其他库那样为Python3安装它呢?
你只需要在cmake/OpenCVDetectPython.cmake中设置默认的python:set(PYTHON_DEFAULT_EXECUTABLE "${PYTHON3_EXECUTABLE}"。
Fiza
发布于
2019-05-15
0
人赞同
流行的建议的解决方案对我来说是奇迹,在那里sudo apt安装opencv未能正确安装。关于第4步的另一个说明(这可能会使其他人的生活更轻松)。现在看来很简单,但我花了不少时间来解决这个问题(因为我是新手)。
步骤4a:运行以下代码,找出cv2文件的安装位置。你的文件名也可能略有不同。
仅仅因为你在OP说的地方找不到它,这并不意味着安装没有成功。
> $ find /usr/ -iname cv2.*
> /usr/lib/python3/dist-packages/cv2.cpython-38-x86_64-linux-gnu.so
第4b步:如上所述的SymLink OpenCV 3.0
> $ cd ~/anaconda3/virtualenv/lib/python3.8/site-packages/
> $ ln -s /usr/lib/python3/dist-packages/cv2.cpython-38-x86_64-linux-gnu.so cv2.so
Shahan M
:
这真是太精彩了!谢谢你。