「獨立」OpenVINO R2019_2 版本中的「super_resolution_demo」例子的,解決因爲 R2019_1到R2019_2 升級形成的問題

OpenVINO提供了豐富的例子,爲了方便研究和使用,咱們須要將這些例子由原始的demo目錄中分離出來,也就是「獨立」運行,這裏咱們選擇了較爲簡單的 super_resolution_demo來講明問題並標註重點 ;另外一方面,因爲OpenVINO升級比較快,在一些細節的也有較多修改,因爲版本升級帶來的 問題 須要注意,這裏也進行了適當梳理。
本篇博客的前提是「windows平臺 ,而且已經成功在 vs2017 跑通OpenVINO的例子」。若是這個條件不符合能夠參考官方文檔和其餘資料。
1、「獨立」OpenVINO R2019_2 版本中的「super_resolution_demo」例子的
官方例子的名稱爲:super_resolution_demo
咱們建立的例子名稱爲:GOVINO_REBUILD
一、建立console程序 GOVINO_REBUILD
須要注意,下面的操做都是64位的,首先咱們作的是Debug模式
 
二、觀察原例子中的頭文件,打開 "常規"->"附加包含目錄",這些都是咱們須要的(而且已經在機器中正確部署)
其中,gflags和formatreader這個2個庫要特別去掉,由於咱們去除了gflags的繁瑣判斷
成功後應該是這樣
三、打開原例子中 "連接器"->"輸入"->"附加依賴項「,這些都是咱們須要的(而且已經在機器中正確部署)
其中,關於format_reader和gflags的依然是能夠去掉,特別要注意cpu_extension.lib的位置要指定正確。
上圖是修改後的樣子,須要注意的是這裏的配置是能夠直接拷貝的。
四、項目 =》屬性 =》c/c++  =》預處理器=》點擊預處理器定義,編輯,加入_CRT_SECURE_NO_WARNINGS
五、將原目錄(而不是生成的目錄)下的main.cpp和super_resolution_demo.h拷貝到新項目中去(這步也能夠不作而直接轉第6步)
 
而且添加到現有項中去
這個時候,能夠嘗試來運行了,確定會報錯的
將gflags和 format_reader_ptr相關的東西去掉。
然後你還須要界面不少參數調整的問題,最後將整個結果運行成功。
六、或者你能夠直接來使用GOVINO.cpp,這是通過我簡化的「 super_resolution_demo」
直接引入 GOVINO.cpp(能夠將main.cpp和 super_resolution_demo.h刪除)
根據提示,添加
七、最後開始運行
若是報這個錯誤,咱們應該知道如何解決
解決方法有兩種,或者是將這裏的包含cpu_extension.dll的目錄包含到Path中去,
或者是找到正確的,拷貝到一塊兒,注意咱們是將所有dll都拷貝過來的
這個時候,已經開始能夠進入調試。可是你仍然可能會遇到一些問題,參考第2部分。
 
2、解決因爲 R2019_1到R2019_2 升級形成的問題
一、首先明確一下目前發現的R2019_1和R2019_2兩個版本在語法方面的不一樣,發現兩處
一個是在R2019_1中在調入plugin的地方(天龍8步第1步)被改寫爲Core ie;
二個是 R2019_2的第4 ,ie.LoadNetwork中,
ie.LoadNetwork(network"CPU");
須要將」CPU"寫清楚,這個在 R2019_1中是能夠省略的。
二、容易問題的地方和解決提示
 
出現問題的緣由大可能是由於系統中安裝了多個版本的OpenVINO,DLL文件混亂,好比出現下圖這種錯誤
 
 
這裏是一些提示
一、程序的目錄不要放在有空格和中文的地方
雖然OpenVINO中沒有明確說明這個問題,可是這的確是很是容易出現問題的地方:
好比下圖中,我經過Depends進行比較,就發現了一些問題
 
二、使用工具、系統思考分析問題緣由
 
好比這裏出現的問題,程序是能夠生成的,可是在Core ie 生成的時候錯誤,那麼我就要去找,Core是什麼東西,它來自於inferencePlugin,那麼確定就是cpu_extension.dll 或者 inference_engined.dll 這些庫的問題;在使用Depends進行尋找,進一步分析問題。
 
這篇博客中確定還有不少分析不到位的地方,歡迎留言交流!
感謝閱讀至此,但願有所幫助!
 



相關文章
相關標籤/搜索