本文主要介紹在 Windows 中基于 Visual Studio 配置 OpenVINO C++ 開發(fā)環(huán)境,主要步驟有:
-
下載并安裝 Visual Studio Community 版
-
下載并解壓 OpenVINO Runtime
-
下載并解壓 OpenCV
-
在 Visual Studio 中配置項(xiàng)目屬性
-
運(yùn)行 OpenVINO C++ 范例程序,測試開發(fā)環(huán)境
下面,本文將依次詳述。
1.1下載并安裝 Visual Studio Community 版
Microsoft Visual Studio(簡稱VS)是 Windows 平臺(tái)上非常好用的集成開發(fā)環(huán)境(IDE),其 Community 版本免費(fèi)供學(xué)生、開放源代碼參與者和個(gè)人使用。
從下方地址下載 Visual Studio 2022 Community 版,安裝選項(xiàng)如圖 1-1 所示:
https://visualstudio.microsoft.com/zh-hans/downloads/
圖 1-1 Visual Studio 2022安裝選項(xiàng)
1.2 下載并解壓 OpenVINO Runtime
OpenVINO Runtime 2022.3 以壓縮包(OpenVINO Archives)的形式提供,里面包含了開發(fā) OpenVINO C++ 推理程序所必需的文件,如圖 1-2 所示:
-
C++預(yù)處理器所需的頭文件:include文件夾
-
C++鏈接器所需的lib文件:lib文件夾
-
可執(zhí)行文件(*.exe)所需的動(dòng)態(tài)鏈接庫文件:bin文件夾
-
OpenVINO runtime第三方依賴庫文件:3rdparty文件夾
圖 1-2 開發(fā) OpenVINO C++ 推理程序所必需的文件
首先,請讀者先打開下面的鏈接,下載 OpenVINO Runtime 2022.3 壓縮包:
https://www.intel.com/content/www/us/en/developer/tools/openvino-toolkit/download.html
然后,請讀者手動(dòng)新建 C:Program Files (x86)Intelopenvino_2022.3.0 文件夾,并把壓縮包解壓后的文件拷貝到 openvino_2022.3.0 文件夾中,完成OpenVINO Runtime 壓縮包的下載和解壓工作,如圖 1-3 所示。
圖 1-3 下載并解壓 OpenVINO Runtime 壓縮包
1.3 下載并解壓 OpenCV
在端到端的 AI 推理計(jì)算流程中,OpenCV 庫用于實(shí)現(xiàn)圖像載入、數(shù)據(jù)前處理、推理結(jié)果后處理和數(shù)據(jù)可視化,如圖1-4 所示。
圖 1-4 端到端的 AI 推理計(jì)算流程
OpenCV 也是以壓縮包的形式提供,從下方地址下載 Windows 平臺(tái)上的壓縮包:
https://opencv.org/releases/
首先,手動(dòng)新建 C:opencv 文件夾;然后,把 OpenCV 解壓后的 build 文件夾全部拷貝到 C:opencv 文件夾,如圖 1-5 所示,完成 OpenCV 的下載并解壓。
圖 1-5 下載并解壓 OpenCV
1.4 在 Visual Studio 中配置項(xiàng)目屬性
在 Visual Studio 中配置項(xiàng)目屬性,主要是告訴 C++ 編譯器和鏈接器,OpenVINO 和 OpenCV 的頭文件以及庫文件在哪里。
第一步,打開 Visual Studio 2022 Community,在“文件(F)”菜單中選擇“新建(N)→項(xiàng)目(P)”,新建一個(gè) C++ 空項(xiàng)目。
第二步,在“文件(F)菜單”中選擇“新建(N)→文件(F)”,新建一個(gè) main.cpp 文件,并添加到項(xiàng)目管理器的源文件文件夾中。
第三步,在“解決方案資源管理器”中,右鍵單擊項(xiàng)目名稱,在右鍵菜單中選擇“屬性(R)”,啟動(dòng)“屬性頁”對話框。
-
在“配置(C)”欄選擇“所有配置”,在“平臺(tái)(P)”欄選擇“所有平臺(tái)”;
-
在“輸出目錄”輸入
“$(SolutionDir)bin$(Platform)$(Configuration)”;
-
在“中間目錄”輸入
“$(SolutionDir)Intermediate$(Platform)$(Configuration)”
第四步,在“屬性頁”對話框中選中“C/C++→常規(guī)”;在“平臺(tái)(P)”欄選擇“x64”;在“附加包含目錄”中輸入:
-
C:Program Files (x86)Intelopenvino_2022.3.0 untimeinclude
-
C:opencvuildinclude
第五步,在“屬性頁”對話框中選中“鏈接器→常規(guī)”;在“平臺(tái)(P)”欄選擇“x64”;在“附加庫目錄”中輸入:
-
C:Program Files (x86)Intelopenvino_2022.3.0 untimelibintel64$(Configuration)
-
C:opencvuildx64vc16lib
第六步,在“屬性頁”對話框中選中“鏈接器→輸入”,在“配置(C)”欄選擇“Debug”,在“平臺(tái)(P)”欄選擇“x64”,然后在“附加依賴項(xiàng)”中添加:
-
openvinod.lib;opencv_world470d.lib;
-
將“配置(C)”欄改為“Release”,然后在“附加依賴項(xiàng)”中添加:
-
openvino.lib;opencv_world470.lib;
到此,完成在 Visual Studio 中配置 OpenVINO C++ 推理計(jì)算項(xiàng)目屬性。
1.5 運(yùn)行 OpenVINO C++ 范例程序
測試開發(fā)環(huán)境
首先,請將下面的代碼拷貝到 main.cpp 中,源代碼下載地址:
https://gitee.com/ppov-nuc/yolov5_infer/blob/main/test_ov_opencv.cpp
int main(int argc, char* argv[]) {
// -------- Get OpenVINO runtime version --------
std::cout << ov::get_openvino_version().description << ':' << ov::get_openvino_version().buildNumber << std::endl;
// -------- Step 1. Initialize OpenVINO Runtime Core --------
ov::Core core;
// -------- Step 2. Get list of available devices --------
std::vector<std::string> availableDevices = core.get_available_devices();
// -------- Step 3. Query and print supported metrics and config keys --------
std::cout << "Available devices: " << std::endl;
for (auto&& device : availableDevices) {
std::cout << device << std::endl;
}
// -------- Step 4. Read a picture file and show by OpenCV --------
cv::Mat img = cv::imread("zidane.jpg"); //Load a picture into memory
cv::imshow("Test OpenVINO & OpenCV IDE", img);
std::cout << "Image width: " << img.cols << " height: " << img.rows << std::endl;
cv::waitKey(0);
cv::destroyAllWindows();
return 0;
}
然后,將 OpenCV 和 OpenVINO動(dòng)態(tài)鏈接庫所在的位置,添加到path環(huán)境變量中。
-
C :Program Files(x86)Intelopenvino_2022 .3.0 untimeinintel64Release
-
C :Program Files(x86)Intelopenvino_2022 .3.0 untimeinintel64Debug
-
C :Program Files(x86)Intelopenvino_2022 .3.0 untime3rdparty bbin
-
C :opencvuildx64vc16in
最后,編譯并運(yùn)行上述代碼,結(jié)果如下圖所示:
1.6 總結(jié)
本文詳述了從零開始在 Windows 上基于 Visual Studio 配置開發(fā) OpenVINO C++ 推理程序的全過程,并給出了完整的測試程序代碼 test_ov_opencv.cpp。環(huán)境配置成功后,就可以開始用 C++ 編寫 OpenVINO 推理程序了。
審核編輯 :李倩
-
C++
+關(guān)注
關(guān)注
22文章
2114瀏覽量
73865 -
Visual
+關(guān)注
關(guān)注
0文章
255瀏覽量
34329 -
Microsoft
+關(guān)注
關(guān)注
0文章
216瀏覽量
6912
原文標(biāo)題:在Windows中基于Visual Studio配置OpenVINO C++開發(fā)環(huán)境 | 開發(fā)者實(shí)戰(zhàn)
文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論