linux下cmake+opencv開啟攝像頭
阿新 • • 發佈:2019-01-31
一、必備條件:
gcc、cmake 、opencv
1、安裝gcc: sudo apt-get install gcc
2、安裝cmake :sudo apt-get install cmake
3、安裝opencv
二、編寫CMakeLists.txt、原始檔OpenCamera.cpp
1、CMakeLists.txt
cmake_minimum_required(VERSION 3.5) project( OpenCamera ) find_package( OpenCV REQUIRED ) add_executable(OpenCamera OpenCamera.cpp ) target_link_libraries( OpenCamera ${OpenCV_LIBS} )
2、OpenCamera.cpp
#include <opencv2/opencv.hpp> #include <iostream> using namespace std; using namespace cv; int main() { Mat image; VideoCapture cap; //open camera cap.open(0); if(!cap.isOpened()) { cout<<"camera open failed!"<<endl; return -1; } else { cout<<"Camera open success!"<<endl; } //usage cout<<"Print \"ESE\" key exit!"<<endl; char ch; while(1) { cap>>image; if(image.empty()) { cout<<"Image is empty!"<<endl; break; } imshow("camera",image); ch=waitKey(30); if(ch==27) break; } return 0; }
3 、編譯、生成可執行檔案
//在原始檔目錄下
mkdir build
cd build
cmake ..
make
在build目錄下即可生成可執行檔案 OpenCamera
4、執行程式 ./OpenCamera
5、結果展示
三、總結
近段時間剛接觸cmake,編寫CMakeLists.txt。以前都是在整合環境中寫程式碼。按一下綠色的三角形按鈕就可以執行程式,甚至都不關心可執行檔案是放置在哪裡,感覺一切都是自然而然的自動。雖然這個CMakeLists.txt比較簡單,第一次使用Vim寫程式碼,幾行程式碼,就生成了可執行檔案,感覺棒棒噠。有點理解大神們為什麼都喜歡使用linux、喜歡使用命令行了。