0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

OpenVINO開發(fā)配置應(yīng)必備哪些基礎(chǔ)知識?

英特爾物聯(lián)網(wǎng) ? 來源:英特爾物聯(lián)網(wǎng) ? 作者:英特爾物聯(lián)網(wǎng) ? 2021-05-18 09:10 ? 次閱讀

通過第一篇文章我們已經(jīng)了解什么是OpenVINO,它的諸多功能與全應(yīng)用場景支持人工智能落地的能力。本篇我們將重點介紹OpenVINO開發(fā)流程與開發(fā)必備的基礎(chǔ)知識與相關(guān)API函數(shù)對象。

環(huán)境配置

在具體介紹OpenVINO開發(fā)流程與開發(fā)必備基礎(chǔ)知識之前,我們首先需要配置好OpenVINO的開發(fā)環(huán)境,這里我們以Win10系統(tǒng)下OpenVINO C++/Python SDK開發(fā)與應(yīng)用集成為例來完成整個教程的配置與代碼演示?;赩S2017+OpenVINO2021.02版本的環(huán)境配置可以總結(jié)為如下幾個步驟:

1. 打開VS2017,新建一個控制臺應(yīng)用,圖示如下:

圖1

2. 打開屬性管理器

打開屬性管理器,選擇x64/release然后配置包含路徑,庫路徑、通過鏈接器添加lib文件,這部分的配置圖示如下:

包含目錄配置

482a70a8-b4ff-11eb-bf61-12bb97331649.png

庫路徑配置

48500e26-b4ff-11eb-bf61-12bb97331649.png

鏈接器:

487150e0-b4ff-11eb-bf61-12bb97331649.png

圖2

opencv_calib3d451.lib

opencv_core451.lib

opencv_dnn451.lib

opencv_features2d451.lib

opencv_flann451.lib

opencv_gapi451.lib

opencv_highgui451.lib

opencv_imgcodecs451.lib

opencv_imgproc451.lib

opencv_ml451.lib

opencv_objdetect451.lib

opencv_photo451.lib

opencv_stitching451.lib

opencv_video451.lib

opencv_videoio451.lib

inference_engine.lib

inference_engine_c_api.lib

inference_engine_ir_reader.lib

inference_engine_legacy.lib

inference_engine_lp_transformations.lib

inference_engine_onnx_reader.lib

inference_engine_preproc.lib

inference_engine_transformations.lib

最后配置環(huán)境變量,添加以下環(huán)境變量到系統(tǒng)的path中去,圖示如下:

489749a8-b4ff-11eb-bf61-12bb97331649.png

對于開發(fā)環(huán)境配置環(huán)節(jié),如果還有不清楚的,可以參考OpenVINO中文社區(qū)的技術(shù)自愿者分享的視頻,地址如下:

https://www.bilibili.com/video/BV1Hz4y1U7g6

設(shè)備查詢與開發(fā)基礎(chǔ)知識

完成上述配置以后,重啟VS2017,創(chuàng)建一個新的cpp文件,添加下面的代碼到cpp文件中

48cb44f6-b4ff-11eb-bf61-12bb97331649.png

運行結(jié)果如下:

圖3

上述控制臺輸出來自InferenceEngine::Core的設(shè)備查詢函數(shù)GetAvailableDevices,它可以查詢當(dāng)前系統(tǒng)支持IE推理的硬件支持,該函數(shù)如下:

std::vector<:string style="font-size: inherit;color: inherit;line-height: inherit;">InferenceEngine::GetAvailableDevices() const

參數(shù): 無

返回的支持設(shè)備的列表vector

下面的就是加載圖像與顯示圖像,使用的兩個函數(shù)來自O(shè)penVINO中的OpenCV組件支持,兩個相關(guān)函數(shù)如下:

讀取圖像

Mat cv::imread(
const String & filename,
int flags = IMREAD_COLOR
)

參數(shù) filename表示文件路徑(包含文件名)

第二個參數(shù)為默認(rèn)參數(shù)

加載成功返回的圖像像素的矩陣數(shù)據(jù)結(jié)構(gòu)Mat,默認(rèn)讀取加載為彩色圖像,三個通道順序為BGR。

顯示圖像

void cv::imshow(
const String & winname,
InputArray mat
)

參數(shù) winname表示窗口名稱,本例中為“輸入窗口”

參數(shù) mat表示圖像矩陣Mat(顯示圖像的內(nèi)存表示)

最終執(zhí)行結(jié)果圖上圖3所示。對上述代碼,我們可以通過進一筆的簡化,要知道在C++11中,聲明類型可以自動識別,通過auto來表示可以避免代碼過長,同時支持for循環(huán)的時候通過auto自動識別每個item的類型,所以上述查詢設(shè)備與打印部分的代碼:

nferenceEngine::Core ie;
std::vector<:string style="font-size: inherit;color: inherit;line-height: inherit;">devices = ie.GetAvailableDevices();
for (std::string name : devices) {
std::cout << "device name: " << name << std::endl;
}

改寫為如下的代碼:

InferenceEngine::Core ie;
auto devices = ie.GetAvailableDevices();
for (auto name : devices) {
std::cout << "device name: " << name << std::endl;
}

這樣看上去代碼就會比之前的整潔更加直觀一點。在OpenVINO SDK C++的開發(fā)中,有很多類別的聲明都很長,我們可以通過使用C++11支持的自動類型識別關(guān)鍵字auto來減少不必要的代碼書寫,提高編碼效率。此外類InferenceEngine::Core類是表示整個IE引擎的實例,支持從模型加載、輸入與輸出格式獲取與設(shè)置、模型的推理與后處理等一系列的操作。關(guān)于如何使用InferenceEngine::Core實現(xiàn)模型推理的流程與相關(guān)API方法函數(shù)解釋。

編輯:jq

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • C++
    C++
    +關(guān)注

    關(guān)注

    21

    文章

    2090

    瀏覽量

    73420
  • 代碼
    +關(guān)注

    關(guān)注

    30

    文章

    4700

    瀏覽量

    68117
  • SDK
    SDK
    +關(guān)注

    關(guān)注

    3

    文章

    1015

    瀏覽量

    45626

原文標(biāo)題:OpenVINO開發(fā)配置與必備基礎(chǔ)知識

文章出處:【微信號:英特爾物聯(lián)網(wǎng),微信公眾號:英特爾物聯(lián)網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關(guān)推薦

    Verilog HDL的基礎(chǔ)知識

    本文繼續(xù)介紹Verilog HDL基礎(chǔ)知識,重點介紹賦值語句、阻塞與非阻塞、循環(huán)語句、同步與異步、函數(shù)與任務(wù)語法知識。
    的頭像 發(fā)表于 10-24 15:00 ?78次閱讀
    Verilog HDL的<b class='flag-5'>基礎(chǔ)知識</b>

    負(fù)載開關(guān)基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《負(fù)載開關(guān)基礎(chǔ)知識.pdf》資料免費下載
    發(fā)表于 10-08 09:56 ?1次下載
    負(fù)載開關(guān)<b class='flag-5'>基礎(chǔ)知識</b>

    品質(zhì)管理基礎(chǔ)知識

    品質(zhì)管理基礎(chǔ)知識
    的頭像 發(fā)表于 09-24 11:04 ?176次閱讀
    品質(zhì)管理<b class='flag-5'>基礎(chǔ)知識</b>

    哪有FPGA的verilog編程基礎(chǔ)知識

    沒接觸過FPGA開發(fā),那個verilog編程有什么入門基礎(chǔ)知識學(xué)習(xí)的?
    發(fā)表于 04-29 23:09

    FPGA基礎(chǔ)知識介紹

    電子發(fā)燒友網(wǎng)站提供《FPGA基礎(chǔ)知識介紹.pdf》資料免費下載
    發(fā)表于 02-23 09:45 ?27次下載

    鴻蒙開發(fā)【設(shè)備開發(fā)基礎(chǔ)知識

    鴻蒙開發(fā)基礎(chǔ)知識講解
    的頭像 發(fā)表于 01-29 18:44 ?865次閱讀
    鴻蒙<b class='flag-5'>開發(fā)</b>【設(shè)備<b class='flag-5'>開發(fā)</b><b class='flag-5'>基礎(chǔ)知識</b>】

    射頻與微波基礎(chǔ)知識

    射頻與微波基礎(chǔ)知識
    的頭像 發(fā)表于 01-16 10:05 ?752次閱讀
    射頻與微波<b class='flag-5'>基礎(chǔ)知識</b>

    電氣技術(shù)基礎(chǔ)知識

    電氣技術(shù)基礎(chǔ)知識
    的頭像 發(fā)表于 12-14 09:11 ?1432次閱讀
    電氣技術(shù)<b class='flag-5'>基礎(chǔ)知識</b>

    電子元器件的基礎(chǔ)知識

    電子元器件的基礎(chǔ)知識
    的頭像 發(fā)表于 12-04 10:42 ?4776次閱讀
    電子元器件的<b class='flag-5'>基礎(chǔ)知識</b>

    經(jīng)典設(shè)計經(jīng)驗筆記,電子工程師必備基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《經(jīng)典設(shè)計經(jīng)驗筆記,電子工程師必備基礎(chǔ)知識.pdf》資料免費下載
    發(fā)表于 11-21 11:13 ?13次下載
    經(jīng)典設(shè)計經(jīng)驗筆記,電子工程師<b class='flag-5'>必備</b><b class='flag-5'>基礎(chǔ)知識</b>

    電子工程師必備基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《電子工程師必備基礎(chǔ)知識.pdf》資料免費下載
    發(fā)表于 11-20 11:29 ?33次下載
    電子工程師<b class='flag-5'>必備</b><b class='flag-5'>基礎(chǔ)知識</b>

    嵌入式開發(fā)系統(tǒng)基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《嵌入式開發(fā)系統(tǒng)基礎(chǔ)知識.pdf》資料免費下載
    發(fā)表于 11-17 10:59 ?11次下載
    嵌入式<b class='flag-5'>開發(fā)</b>系統(tǒng)<b class='flag-5'>基礎(chǔ)知識</b>

    SPI協(xié)議基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《SPI協(xié)議基礎(chǔ)知識.pdf》資料免費下載
    發(fā)表于 11-16 10:32 ?1次下載
    SPI協(xié)議<b class='flag-5'>基礎(chǔ)知識</b>

    電池的基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《電池的基礎(chǔ)知識.doc》資料免費下載
    發(fā)表于 11-15 11:29 ?1次下載
    電池的<b class='flag-5'>基礎(chǔ)知識</b>

    紅外熱成像基礎(chǔ)知識

    電子發(fā)燒友網(wǎng)站提供《紅外熱成像基礎(chǔ)知識.pdf》資料免費下載
    發(fā)表于 11-01 09:44 ?5次下載
    紅外熱成像<b class='flag-5'>基礎(chǔ)知識</b>