1. 程式人生 > >vs2017配置OpenCV教程

vs2017配置OpenCV教程

     最近由於將電腦的vs10版本升級到vs17版,於是需要重新配置OpenCV庫,故在這裡做個記錄吧。

一、安裝vs新版本

     這個時候就看你自己的需求咯。不同版本的vs對c++11標準支援程度和一些新功能都是不一樣的,大家可以去微軟官網下載,也可以去網上找下破解版的,這裡我就只提供一下vs10、vs15的雲盤連結吧:https://pan.baidu.com/s/1mjrMfonAAgYLW5kxTz2_gg。至於其他版本你可以直接百度就行,實在不放心你可以直接百度搜盤盤,然後輸入你想要的版本,會直接出現你想要的雲盤連結。然後按照步驟一步步安裝即可成功。

二、下載OpenCV

        首先是OpenCV的版本選擇。不是所有版本的OpenCV都支援你的Visual Studio版本,同樣的,不是所有版本的Visual Studio都與OpenCV的特定版本相相容。失誤的經歷:在我下載OpenCV時,我就沒有注意到這個問題,下載了OpenCV3.2,按照官方教程配置之後出現了很多問題。後來我發現\opencv\build\x64內只有vc14資料夾,上網查資料發現這裡的vc14對應該版本OpenCV對應的支援版本VS2015 ,類似的對應關係歸納如下:

vc6 -> VS6.0 vc7.0 -> VS2002 vc7.1 -> VS2003 vc8 -> VS2005 vc9 -> VS2008 vc10 -> VS2010 vc11 -> VS2012 vc12 -> VS2013 vc13 -> VS2014 vc14 -> VS2015 vc15->vs2016 (vs高版本可以配置低的vc,但低的vc版不能配置高的vs)。

什麼是版本不匹配呢,如:在D:\OpenCV244\opencv\build\x86,(不同解壓路徑位置不同)
有vc9和vc10和vc11這三個東西,或許你會發現在OpenCV相應的目錄下是沒有vc11這個東西的,vc11是屬於VS2012的編譯器部分,也就是說在OpenCV243裡是不正式支援VS2012的,在OpenCV244裡才開始正式支援VS2012,vc10則是屬於VS2010的編譯器部分,而無論是244還是243裡面都有vc10,所以如果你用的是VS2012以下版本的話,是不會出現OpenCV和VS不匹配的問題。網上的教程都是在VS2010下配置的OpenCV243,所以這樣是不會出現版本不匹配問題的,只要按照步驟配置那四個部分就好了。

這裡我選擇安裝的是vs2017,安裝的OpenCV版本是OpenCV3.4.3。下載連結https://opencv.org/releases.html。至於OpenCV安裝教程很簡單了,直接點選exe檔案然後下一步就可以了。

三、vs配置OpenCV

(1)配置環境變數

(2)配置vs屬性管理器

具體步驟如下:新建一個專案

然後在原始檔上右擊新增新建項。

接下來開啟專案屬相管理器

在屬性管理器中找到你先建的專案檔名下Debug|x64檔案雙擊,此時會出現一個如下對話方塊,接下來我們的設定都會在這個對話方塊裡設定了。

接下來找到對話方塊中的vc++目錄-》包含目錄加入如下內容

在庫目錄下加入如下內容

最後在連結器-》輸入-》附加依賴項中加入opencv_world343d.lib(根據你下載的OpenCV版本對343做相應修改)

在release|x64下右鍵Microsoft cpp 4.user,右鍵屬性,同樣在連結器-》輸入-》附加依賴項加入opencv_world343d.lib。到此所有設定完成。最後我們就來測試一下是否安裝成功:

在新建的原始檔下的test.cpp檔案中輸入以下程式碼

#include<iostream>
#include<opencv2/opencv.hpp>
using namespace std;
using namespace cv;

int main()
{
    Mat src = imread("C:\\Users\\Administrator\\Desktop\\處理效果圖\\7.jpg"); ////換成你電腦上任意圖片的路徑
    imshow("src_pic",src);

    waitKey();
    return 0;
}

如果正確輸出該圖片就說明OpenCV庫配置成功。至此vs2017配置OpenCV3.4.3完工。