OpenCV安装
此安装在ubuntu16上实验,为C++版本的安装,安装Python版本的没有这么复杂,只需要pip安装即可。注意的是安装之前保证sudo apt-get install libgtk-3-dev
安装过,否则无法用imshow之类的命令显示图像。
环境准备
- 更新系统文件
sudo apt-get update
sudo apt-get upgrade
- 安装一些开发工具
sudo apt-get install build-essential cmake pkg-config
- Opancv通常调用其他的图像I/O处理JPEG,PNG,TIGG等文件,因此需要安装这些库文件
sudo apt-get install libjpeg8-dev libtiff5-dev libjasper-dev libpng12-dev
- 安装下面的包处理视频流和访问相机的帧
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get install libxvidcore-dev libx264-dev
- 安装GTK库使用OpenCV的GUI工具
sudo apt-get install libgtk-3-dev libgtk2.0-dev
(注意,这个工具最好在安装OpenCV 之前安装否则会提示:)
OpenCV Error: Unspecified error (The function is not implemented. Rebuild the library with Windows, GTK+ 2.x or Carbon support. If you are on Ubuntu or Debian, install libgtk2.0-dev and pkg-config, then re-run cmake or configure script) in cvShowImage, file /feedstock_root/build_artefacts/opencv_1495918814239/work/opencv-3.2.0/modules/highgui/src/window.cpp, line 583
需要卸载你的OpenCV然后再次安装OpenCV。
安装Python版本OpenCV
- 安装Python,因为面向未来的考虑,这里安装Python3,如果你已经安装了Python包管理工具Anaconda,可以直接通过Conda安装Python3(安装(推荐使用Anaconda3 4.4,如果你仅仅需要Opencv和简单的numpy库,你也可以不用安装完整的Anaconda,直接安装(2),否则安装Anaconda(1)
------------------安装Anaconda----------------------
wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-4.4.0-Linux-x86_64.sh
bash Anaconda3-4.4.0-Linux-x86_64.sh
-------------------只安装Python3----------------------
sudo apt-get install python2.7-dev python3.5-dev #(2)
- Anaconda安装OpenCV3.2.0
conda install opencv
测试OpenCV python版本
import cv2
img = cv2.imread('cat.jpg')
cv2.imshow('imgdemo',img)
cv2.waitkey(100)
如图:
至此你就可以用Python OpenCV处理视觉问题。
注意:安装的时候必须完整的安装OpenCV所需要的库和包,有是有可能你的包没有安装完全,直接安装OpenCV,也会安装成功,但是某些功能无法使用如果你在显示OpenCV的时候发现出现如下错误gtk2-dev xx的错误:
通常是因为libgtk-3-dev并没有安装,所以你需要安装这个库,卸载你的OpenCV然后再次安装OpenCV。
安装OpenCV 3.3.0(C++版本)(非必须)
git clone https://github.com/opencv/opencv.git
git clone https://github.com/opencv/opencv_contrib.git
mkdir ~/opencv
mv opencv-3.3.0 ~/opencv
mv opencv_contrib ~/opencv
cd ~/opencv/opencv-3.3.0
mkdir build
cmake -DCMAKE_BUILD_TYPE=RELEASE \
-DCMAKE_INSTALL_PREFIX=/usr/local \
-DINSTALL_PYTHON_EXAMPLES=ON \
-DINSTALL_C_EXAMPLES=OFF \
-DOPENCV_EXTRA_MODULES_PATH=~/opencv/opencv_contrib/modules \
-DPYTHON_EXECUTABLE=~/anaconda3/bin/python3 \
-DBUILD_EXAMPLES=ON ..
如无意外将出现如下:
make j2
这里你需要改动的是
-DOPENCV_EXTRA_MODULES_PATH=~/opencv/opencv_contrib/modules
-
如果你是完全按照上面操作的,这里不需要改,如果不是确定opencv_contrib中models路径,替换后面的路径为你电脑上的路径。
-
如果你没有安装anaconda3,你需要查找你的Python,你可以用
which python
找到你的路径,替换上面的路径为你自己的路径。
下面是关于安装完整OpenCV相关的一些文件,自此你的opencv工作已经完成。
更多软件包安装
安装gstreamer-1.12.1
- 安装依赖bison
sudo apt-get install bison
- 安装flex
sudo apt-get install flex
- 下载gstreamer-1.12.1
wget https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.12.1.tar.xz
tar -xJvf gstreamer-1.12.1.tar.xz
cd gstreamer-1.12.1
./configure
make
sudo make install
- 安装gst-plugins-base-1.12.1
wget https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.12.1.tar.xz
tar -xJvf gst-plugins-base-1.12.1.tar.xz
cd gst-plugins-base-1.12.1
./configure
make
make install
下载opencv和opencv_contrib
wget http://sourceforge.net/projects/opencvlibrary/files/opencv-unix/3.2.0/opencv-3.2.0.zip
wget https://github.com/opencv/opencv_contrib/archive/3.2.0.tar.gz
unzip opencv-3.2.0.zip -d ~/
tar -xzvf 3.2.0.tar.gz -C ~/opencv-3.2.0/
cd ~/opencv-3.2.0
mkdir build
cd build
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=ON -D PYTHON_INCLUDE_DIR=/usr/include/python3.5m -D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0 -D INSTALL_C_EXAMPLES=OFF -D OPENCV_EXTRA_MODULES_PATH=/home/hpc/opencv-3.2.0/opencv_contrib/modules -D PYTHON_EXCUTABLE=/home/hpc/anaconda3/bin/python -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_GTK=ON -D WITH_OPENGL=ON -D BUILD_EXAMPLES=ON ..
安装FFmpeg
- 安装依赖fribidi
wget http://fribidi.org/download/fribidi-0.19.7.tar.bz2
tar -xjvf fribidi-0.19.7.tar.bz2
cd fribidi-0.19.7
./configure
make
sudo make install
- 安装 fdk-aac
wget http://downloads.sourceforge.net/opencore-amr/fdk-aac-0.1.5.tar.gz
tar -xzvf fdk-aac-0.1.5.tar.gz
cd fdk-aac-0.1.5
./configure
make
sudo make install
- 安装harfbuzz
wget http://www.freedesktop.org/software/harfbuzz/release/harfbuzz-1.4.6.tar.bz2
#安装
安装ippicv(如果安装不成功手动安装)
wget https://raw.githubusercontent.com/opencv/opencv_3rdparty/81a676001ca8075ada498583e4166079e5744668/ippicv/ippicv_linux_20151201.tgz
tar -xzvf ippicv_linux_20151201.tgz
cd ippicv_lnx
mv ./ippicv_lnx ~/opencv-3.2.0/build/3rdparty/ippicv/
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D INSTALL_PYTHON_EXAMPLES=ON -D PYTHON_INCLUDE_DIR=/usr/include/python3.5m -D PYTHON_LIBRARY=/usr/lib/x86_64-linux-gnu/libpython3.5m.so.1.0 -D INSTALL_C_EXAMPLES=OFF -D OPENCV_EXTRA_MODULES_PATH=/home/hpc/opencv-3.2.0/opencv_contrib-3.2.0/modules -D PYTHON_EXCUTABLE=/home/hpc/anaconda3/bin/python -D WITH_TBB=ON -D WITH_V4L=ON -D WITH_GTK=ON -D WITH_OPENGL=ON -D BUILD_EXAMPLES=ON ..