一、測試openvino自身的demo
sh build_samples.sh
得到以下結果
在執行的過程中可能會出現下面錯誤
./object_detection_sample_ssd: error while loading shared libraries: libformat_reader.so: cannot open shared object file: no such file or directory
vi ~/.bashrc
二、測試自己建立的工程
例如測試ssd_mobilenetv2模型
#include #include #include #include#include #include using namespace cv;
using namespace inferenceengine;
using namespace std;
template void matu8toblob(const cv::mat& orig_image, inferenceengine::blob::ptr& blob, int batchindex = 0)
// 耗時操作!!
for (size_t h = 0; h < height; h++)
} }}void frametoblob(const mat &frame, inferrequest::ptr &inferrequest, const std::string & inputname)
int main(int argc, char** ar**)
auto inputname = input_info.begin()->first;
for (auto &item : output_info)
// 建立可執行網路
auto exec_network = ie.loadnetwork(network, "cpu");
// 請求推斷
auto infer_request_curr = exec_network.createinferrequestptr();
auto infer_request_next = exec_network.createinferrequestptr();
videocapture capture(input_file);
mat curr_frame, next_frame;
capture.read(curr_frame);
int image_width = curr_frame.cols;
int image_height = curr_frame.rows;
bool islastframe = false;
bool isfirstframe = true;
frametoblob(curr_frame, infer_request_curr, inputname);
while (true)
} auto t0 = std::chrono::high_resolution_clock::now();
if (!islastframe)
// 開啟非同步執行模型
if (isfirstframe)
else
} // 檢查返回資料
if (ok == infer_request_curr->wait(iinferrequest::waitmode::result_ready))
}// 計算執行時間
auto t1 = std::chrono::high_resolution_clock::now();
ms dtime = std::chrono::duration_cast(t1 - t0);
ostringstream ss;
ss << "ssd mobilenetv2 detection fps: " << std::fixed << std::setprecision(2) << 1000 / dtime.count() << "fps";
//ss << "detection time : " << std::fixed << std::setprecision(2) << dtime.count() << " ms";
printf("ssd mobilenetv2 detection fps = %f \n", 1000 / dtime.count());
puttext(curr_frame, ss.str(), point(50, 50), font_hershey_******x, 1.0, scalar(0, 0, 255), 2, 8);
} imshow("pedestrian detection", curr_frame);
char c = waitkey(2);
if (c == 27)
if (islastframe)
// 非同步交換
next_frame.copyto(curr_frame);
infer_request_curr.swap(infer_request_next);
} capture.release();
destroyallwindows();
return 0;
}
2、編輯cmakelists.txt
cmake_minimum_required(version 3.12)
#專案名稱
project(ssd_mobilenetv2_demo)
#設定c++編譯器
set(cmake_cxx_standard 11)
#專案中的include路徑
include_directories(
)#專案中lib路徑
link_directories(
/usr/local/lib64
)#動態庫路徑
link_libraries(
)add_executable(ssd_mobilenetv2_demo ssd_mobilenetv2_openvino.cpp)
mkdir build
cd build
cmake ..
make
執行 ./ssd_mobilenetv2_demo
OpenVINO快速入門
openvino工具套件全稱是openvisualinference neural networkoptimization,是intel於2018年發布的,開源 商用免費 主要應用於計算機視覺 實現神經網路模型優化和推理計算 inference 加速的軟體工具套件。由於其商用免費,且可以把深度學習模...
OpenVINO學習系列1
openvino介紹 使用openvino toolkit 實時推斷 opencv呼叫faster rcnn物件檢測網路 核心元件與功能 openvino主要包括兩個核心元件乙個預訓練模型庫 核心元件 模型優化器 模型優化器model optimizer,模型優化器支援的深度學習框架包括 onnx ...
OpenVINO 公共模型筆記(一)
以下的部落格內容一部分是從openvino官網文件翻譯整理而來,用於記錄整個openvino自帶模型的使用過程。openvino依靠intel cpu執行,因此硬體方面需要保證裝置的cpu為intel cpu 支援的執行環境有 cpu gpu intel神經棒 intel ncs cpu環境硬體要求...