linux下安裝opencv3.4.0
準備工作
安裝一些庫(g++環境和OpenCV可適應環境)
sudo apt-get install build-essential
sudo apt-get install cmake git libgtk2.0-dev pkg-config libavcodec-dev libavformat-dev libswscale-dev libgtk2.0-dev libv4l-dev
sudo apt-get install python-dev python-numpy libtbb2 libtbb-dev libjpeg-dev libpng12-dev libtiff5-dev libjasper-dev libdc1394-22-dev libandroid-properties1:i386 libhybris-common1:i386 gstreamer*
安裝cmake工具
sudo apt-get install cmake-gui
獲取原始碼
https://opencv.org/releases.html
基本上3.4.x的版本加上了深度學習和機器學習相關的內容。
配置編譯
1、解壓
2、開啟OpenCV目錄新建release存放編譯庫
3、命令列輸入cmake-gui啟動介面
選擇好兩個目錄,一個源目錄,一個編譯目錄
點選configure 選Unix Makefiles其餘預設
4、配置好後若要新增庫再配置一遍
比如安裝拓展庫,拓展庫也可放在OpenCV主目錄下
在OPENCV_EXTRA_MODULE_PATH欄選擇拓展庫模組位置/xxx/opencv-3.4/opencv_contrib-3.4/modules
注:選擇3.4.0的OpenCV原始碼就要選擇3.4.0的拓展庫,不然可能編譯不上。拓展庫可去GitHub找https://github.com/opencv/opencv_contrib/tree/3.4.0
5、在BUILD_opencv_world後面打√
6、點選generate生成Makefile檔案
7、在release目錄下執行make
編譯結束後再bulid的lib目錄下生成*.so庫檔案
8、在release目錄下sudo make install
庫檔案裝到了/usr/local/lib下
9、進行一些配置
sudo /bin/bash -c 'echo "/usr/local/lib" > /etc/ld.so.conf.d/opencv.conf'
sudo ldconfig # 使配置生效
sudo gedit /etc/bash.bashrc
在檔案的末尾新增
PKG_CONFIG_PATH=$PKG_CONFIG_PATH:/usr/local/lib/pkgconfig
export PKG_CONFIG_PATH
儲存
sudo source /etc/bash.bashrc # 使配置生效
測試
1、開啟中端,新建cpp檔案,輸入測試程式碼
#include <iostream>
#include <opencv2/opencv.hpp> //opencv3.x標頭檔案
using namespace std;
using namespace cv;
int main()
{
Mat srcImage = imread("/xxx/1.jpg"); //選擇圖片目錄
imshow("srcIMage",srcImage);
waitKey(0); //顯示停留等待使用者操作,類似Qt
return 0;
}
2、編譯OpenCV
方式一:
g++ `pkg-config opencv --cflags` opencv.cpp -o opencv `pkg-config opencv --libs`
方式二:
簡單點新建Makefile檔案
makefile檔案內容
testopencv:main.cpp
g++ $< -o $@ -lopencv_world
比普通c++程式多連結了一個動態庫。
解除安裝
非圖形編輯器介面的檔案解除安裝通常按如下方法
sudo apt-get install checkinstall # 安裝checkinstall工具,用來管理安裝的檔案,便於解除安裝
sudo checkinstall # 執行checkinstall,按照提示就行操作即可。
安裝完後,在build檔案下生成一個以backup開頭的.tgz的備份檔案和一個以build開頭的.deb安裝檔案。
解除安裝當前的opencv,直接執行dpkg -r build