1、去openCV官網下載Windows版本安裝包(一個exe文件,下載后解壓安裝到路徑A)。
2、打開CMake配置,在CMake命令參數中輸入:-DCMAKE_PREFIX_PATH="A",多個路徑用分號隔開。
3、在CMakeLists.txt中加入一行:find_package(OpenCV REQUIRED),Ctrl+S。CMake應該不會報錯。
4、到有main()函數的cpp文件中加入:#include <opencv2/opencv.hpp>,看到include下有紅線。
5、回到CMakeLists.txt中加入一行:target_link_libraries( 項目名稱 ${OpenCV_LIBS} ),OpenCV_LIBS應該是在第三部Ctrl+S時配置的環境變量(參見OpenCVConfig.cmake文件:https://github.com/opencv/opencv/blob/master/cmake/templates/OpenCVConfig.cmake.in)。Ctrl+S。CMake不報錯。
6、回到cpp文件,此時include紅線消失。加入一行:using namespace cv; 再在main函數中加入以下代碼:
1 Mat image; 2 image = imread("C:\\Users\\Think\\Pictures\\bachalpsee-mit-foehnstimmung-grindelwald-pic--david-birri_28418.jpg", 1); 3 if (!image.data) 4 { 5 printf("No image data \n"); 6 return -1; 7 } 8 namedWindow("Display Image", WINDOW_AUTOSIZE); 9 imshow("Display Image", image); 10 waitKey(0); 11 return 0;
記得把圖片路徑換成自己的。
這時候運行,會出現錯誤:cannot find opencv_world450d.dll。
試了多種方法,找到這個文件在A路徑下的具體位置,添加到path環境變量中,無效;將此文件直接復制到項目的\build\x64-Debug目錄下,無效。
最后參考了:https://blog.csdn.net/Feeryman_Lee/article/details/106114718
把 opencv\build\x64\vc15\bin 下的所有dll文件復制到C:\Windows\System32 目錄下,再次運行程序,成功顯示圖片。
如此openCV便已經成功配置了。