一、前言
在windows10上嘗試了好幾種方案,如:VS+CMake+opencv、sublineText+CMake+opencv、CLion+OpenCv+CMake。最終選擇使用CLion+OpenCv+CMake,因為我是偏java系列的所以vs用着不熟,又因為subline和eclipse的提示效果不好。所以最終選擇了第三種方案。下面就說說搭建的具體步驟。
二、開發環境搭建
准備工作:
1.下載CMake並安裝。
下載路徑:https://cmake.org/download/
2.下載OpenCV最新的Release安裝包並安裝,此處我使用的4.5.2版本的。
下載路徑:https://opencv.org/releases/
3.安裝CLion。ps:下載路徑省略,網上一搜一大把
開始配置環境
1.打開CMake的GUI,然后分別選擇OpenCv的源代碼路徑以及Camke后的輸出路徑。
2.點擊Configure按鈕進行第一次配置,ps:中間會有ffmpeg下載不下來,這個如果用不到就不用管,直接進行第二次配置。如果能用到百度一下自行解決。
3.點擊Configure進行第二次配置
4.到此配置就結束了。接下來開始make和install
5.進入輸出目錄mbuild,打開cmd並切換到build目錄,執行mingw32-make -j8 耐心等待一會兒就編譯好了。
6.接着執行mingw32-make install 生成我們想要的庫。會在mbuild目錄下生成對應的文件和文件夾,如下所示:
7.在環境變量的path路徑下將:D:\xxx\xxx\tool\opencv4.5.2\mbuild\install\x64\mingw\bin這個目錄配置進去
8.配置CMake
#指定CMake的最小版本 cmake_minimum_required (VERSION 3.8) #定義項目名稱 project ("computervision") # 添加c++ 11標准支持 set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") include_directories($ENV{CMAKE_INCLUDE_PATH}) set(OpenCV_DIR D:/你自己的lib路徑/tool/opencv4.5.2/mbuild/install/x64/mingw/lib) #需要的openCV庫 FIND_PACKAGE(OpenCV REQUIRED) #顯示OpenCV的版本號 MESSAGE("OpenCV versiion : ${OpenCV_VERSION}") MESSAGE("OpenCV include : ${OpenCV_INCLUDE_DIRS}") MESSAGE("OpenCV libs11 : ${OpenCV_LIBS}") MESSAGE("OpenCV DIR : ${OpenCV_DIR}") include_directories(${OpenCV_INCLUDE_DIRS}) link_directories(${OpenCV_LIBS}) MESSAGE("OpenCV libs : ${OpenCV_LIBS}") set(SOURCE main.cpp) # 將源代碼添加到此項目的可執行文件。 add_executable (${PROJECT_NAME} ${SOURCE}) TARGET_LINK_LIBRARIES(${PROJECT_NAME} ${OpenCV_LIBS})
9.測試樣例:
#include <iostream> #include <opencv2/core/core.hpp> #include <opencv2/imgcodecs/imgcodecs.hpp> #include <opencv2/highgui/highgui.hpp> using namespace cv; using namespace std; int main() { std::cout << "Hello, World!" << std::endl; cout << CV_VERSION <<endl; Mat mat = imread("C:\\xxxx\\xxx\\Downloads\\girl.jpg"); if(mat.empty()){ cout << "圖片不存在" <<endl; return -1; } imshow("展示圖像",mat); waitKey(0); return 0; }
10.運行的圖片