Ubuntu16.04 配置OpenCV3.4.2及基本使用
- 2019 年 10 月 29 日
- 筆記
Ubuntu16.04 配置OpenCV3.4.2及基本使用
作者:OpenS_Lee
1背景知識
OpenCV是一個基於BSD許可(開源)發行的跨平台計算機視覺庫,可以運行在Linux、Windows、Android和Mac OS操作系統上。它輕量級而且高效——由一系列 C 函數和少量 C++ 類構成,同時提供了Python、Ruby、MATLAB等語言的接口,實現了圖像處理和計算機視覺方面的很多通用算法。
OpenCV用C++語言編寫,它的主要接口也是C++語言,但是依然保留了大量的C語言接口。該庫也有大量的Python、Java and MATLAB/OCTAVE(版本2.5)的接口。這些語言的API接口函數可以通過在線文檔獲得。如今也提供對於C#、Ch、Ruby,GO的支持。
所有新的開發和算法都是用C++接口。一個使用CUDA的GPU接口也於2010年9月開始實現
2 Ubuntu16.04 配置OpenCV3.4.2
OpenCV需求包:
· GCC 4.4.x or later
· CMake 2.8.7 or higher
· Git
· GTK+2.x or higher, including headers (libgtk2.0-dev)
· pkg-config
· Python 2.6 or later and Numpy 1.5 or later with developer packages (python-dev, python-numpy)
· ffmpeg or libav development packages: libavcodec-dev, libavformat-dev, libswscale-dev
· [optional] libtbb2 libtbb-dev
· [optional] libdc1394 2.x
· [optional] libjpeg-dev, libpng-dev, libtiff-dev, libjasper-dev, libdc1394-22-dev
· [optional] CUDA Toolkit 6.5 or higher
1. 在Opencv官網下載OpenCV3.4.2 Sources 網址鏈接:https://opencv.org/releases.html
如果下載太慢可在「FPGA開源工作室」微信公眾號回復「OpenCV」得到百度雲盤鏈接。

圖1 OpenCV3.4.2 Sources
2. 將下載好的壓縮包copy到Ubuntu系統下並解壓縮。
unzip opencv-3.4.2.zip

3. 進入到解壓後的文件包中安裝依賴庫。
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
4. 安裝cmake
sudo apt-get install cmake
5. 安裝完cmake之後 ,創建編譯文件夾build
mkdir build
cd build
6. 執行cmake
cmake -D CMAKE_BUILD_TYPE=Release -D CMAKE_INSTALL_PREFIX=/usr/local ..
7. 等待cmake命令執行完成然後執行make
sudo make
sudo make install
8.sudo make install 執行完畢後OpenCV編譯過程就結束了,接下來就需要配置一些OpenCV的編譯環境首先將OpenCV的庫添加到路徑,從而可以讓系統找到
sudo gedit /etc/ld.so.conf.d/opencv.conf
執行此命令後打開的可能是一個空白的文件,不用管,只需要在文件末尾添加
/usr/local/lib

9.執行如下命令使得剛才的配置路徑生效
sudo ldconfig
10.配置bash
sudo gedit /etc/bash.bashrc
在最末尾添加
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH

保存,執行如下命令使得配置生效
source /etc/bash.bashrc
更新
sudo updatedb
OpenCV安裝配置完成接下來我們建立一個小程序測試測試。
1 建立一個display.cpp文件
vi display.cpp
#include <stdio.h>
#include <opencv2/opencv.hpp>
using namespace cv;
int main(int argc, char** argv )
{
if ( argc != 2 )
{
printf("usage: DisplayImage.out <Image_Path>n");
return -1;
}
Mat image;
image = imread( argv[1], 1 );
if ( !image.data )
{
printf("No image data n");
return -1;
}
namedWindow("Display Image", WINDOW_AUTOSIZE );
imshow("Display Image", image);
waitKey(0);
return 0;
}
2 建立CMakeLists.txt
Vi CMakeLists.txt

3. 運行cmake .
cmake .
4. 運行make
make
5. 運行./display lena.png
./display lena.png
結果顯示了一張lena.png圖片。

OpenCV基本配置成功。
希望學習到更多圖像處理相關知識可以到opencv官網或者OpenCV中文網學習。