Linux下自带 python2 和 python3,按道理来说是 安装pip 和 pip3 之后是可以直接安装 opencv的, 但是在使用时会遇到错误,cv2.imshow()函数出错,如下:
此时自己内心的os是非常难过的,就去网上查找答案,最终得出自己的结论是,利用pip安装得到的是别人已经配置好了环境的opencv,别人的电脑系统和一些配置与自己的是不一样的,所以就会出错。得出了如下可行的安装方案:
申明:源码安装的话可以在python2 和 python3 中同时安装opencv,这点是非常好的,并且在pytorch这样的包也推荐
使用源码安装
在安装之前进行更新
sudo apt update
sudo apt upgrade
sudo apt-get update
sudo apt-get upgrade
1、安装源码安装需要的编译环境 gcc cmake
sudo apt-get install build-essential pkg-config cmake cmake-gui
2、安装python的管理包pip
sudo apt-get install python-pip
sudo apt-get install python3-pip
3、安装python的数据分析包
pip install numpy scipy matplotlib scikit-image scikit-learn
pip3 install numpy scipy matplotlib scikit-image scikit-learn
时间较长,如果觉得慢的话可以安装镜像(清华)
mkdir ~/.pip
vim ~/.pip/pip.conf
# 在pip.conf 中添加以下内容
[global]
index-url = https://pypi.tuna.tsinghua.edu.cn/simple
[install]
trusted-host=mirrors.aliyun.com
4、安装opencv的依赖包
sudo apt-get install checkinstall yasm gfortran git ffmpeg
sudo apt-get install libxvidcore4 libgtk-3-dev
sudo apt-get install libjpeg8-dev libjasper-dev
sudo apt-get install libtiff5-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libdc1394-22-dev
sudo apt-get install libxine2-dev libv4l-dev
sudo apt-get install libqt4-dev libgtk2.0-dev libtbb-dev
sudo apt-get install libatlas-base-dev
sudo apt-get install libfaac-dev libmp3lame-dev libtheora-dev
sudo apt-get install libvorbis-dev libxvidcore-dev
sudo apt-get install libopencore-amrnb-dev libopencore-amrwb-dev
sudo apt-get install x264 v4l-utils
还有一些可选择的依赖包,也建议安装
sudo apt-get install libprotobuf-dev protobuf-compiler
sudo apt-get install libgoogle-glog-dev libgflags-dev
sudo apt-get install libgphoto2-dev libeigen3-dev libhdf5-dev doxygen
5、从官网上下载 opencv 源码安装包
https://sourceforge.net/projects/opencvlibrary/files/opencv-unix/3.4.0/opencv-3.4.0.zip/download?use_mirror=jaist
或者点这里下载最新的opencv版本
下载完成之后进入到解压的opencv3.4中,创建自己的built目录,用于安装配置环境
cd ~
cd