安裝完 ubuntu 系統之後立馬安裝此庫。否則後面安裝的時候會造成軟件包衝突。
apt-get libopencv-dev
在 /usr/include/opencv2 目錄下有所有的頭文件。
opencv2_modules.hpp 文件夾裏有與所有 opencv2 的宏。(我理解爲: 判定你當前的 opencv 有沒有某個功能就直接查看該文件的宏就好了)
#define HAVE_OPENCV_CALIB3D
#define HAVE_OPENCV_CONTRIB
#define HAVE_OPENCV_CORE
#define HAVE_OPENCV_FEATURES2D
#define HAVE_OPENCV_FLANN
#define HAVE_OPENCV_GPU
#define HAVE_OPENCV_HIGHGUI
#define HAVE_OPENCV_IMGPROC
#define HAVE_OPENCV_LEGACY
#define HAVE_OPENCV_ML
#define HAVE_OPENCV_OBJDETECT
#define HAVE_OPENCV_OCL
#define HAVE_OPENCV_PHOTO
#define HAVE_OPENCV_STITCHING
#define HAVE_OPENCV_SUPERRES
#define HAVE_OPENCV_TS
#define HAVE_OPENCV_VIDEO
#define HAVE_OPENCV_VIDEOSTAB
core——定義了基本數據結構,包括最重要的Mat和一些其他的模塊
imgproc——該模塊包括了線性和非線性的圖像濾波,圖像的幾何變換,顏色空間轉換,直方圖處理等等
video——該模塊包括運動估計,背景分離,對象跟蹤
calib3d——基本的多視角幾何算法,單個立體攝像頭標定,物體姿態估計,立體相似性算法,3D信息的重建
features2d——顯著特徵檢測,描述,特徵匹配
objdetect——物體檢測和預定義好的分類器實例(比如人臉,眼睛,面部,人,車輛等等)
highgui——視頻捕捉、圖像和視頻的編碼解碼、圖形交互界面的接口
gpu——利用GPU對OpenCV模塊進行加速算法
ml——機器學習模塊(SVM,決策樹,Boosting等等)
flann——Fast Library for Approximate Nearest Neighbors(FLANN)算法庫
legacy——一些已經廢棄的代碼庫,保留下來作爲向下兼容
還有一些其他的模塊,比如FLANN算法庫、Google測試包、Python bingdings等等
opencv3 安裝
安裝依賴
compiler] sudo apt-get install build-essential
[required] sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev
[optional] sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng-dev libtiff-dev libjasper-dev libdc1394-22-dev
cd ~/opencv
mkdir release
cd release
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local ..
make -j4
sudo make install