微信公众号:OpenCV学堂
关注获取更多计算机视觉与深度学习知识
安装OpenVINO2022.1
2022版本的安装包跟之前的不一样地方包括:
-OpenCV部分不在默认安装包中-Dev Tools 跟 Runtime安装方式不同-Dev Tools包模型转换器跟其它开发组件-Runtime主要负责模型推理,支持Python跟C++
在intel官方下载页面选择如下:

下载之后点击安装,出现的第一个画面如下:

点击【Continue】

选择第一种,推荐安装方式,点击【Continue】

点击【Install】就会开始正式安装过程!这个过程中如果你没有安装VS2019会有一个警告出现,直接选择忽视,继续安装即可!因为我VS2017。
配置OpenVINO2022开发环境
1. 包含目录

2. 库目录

3. 附加依赖项添加

这样就完成了
最后配置好环境变量

然后重启VS2017,执行如下代码测试:
#include
#include
using namespace cv;
using namespace std;
int main(int argc, char** argv) {
// 创建IE插件, 查询支持硬件设备
ov::Core ie;
vector<string> availableDevices = ie.get_available_devices();
for (int i = 0; i < availableDevices.size(); i++) {
printf("supported device name : %s \n", availableDevices[i].c_str());
}
return 0;
}运行结果如下:

最新SDK使用解析
01
模型加载
ov::CompiledModel compiled_model = ie.compile_model(onnx_path, "AUTO");ov::InferRequest infer_request = compiled_model.create_infer_request();
02
获取输入
ov::Tensor input_tensor = infer_request.get_input_tensor();ov::Shape tensor_shape = input_tensor.get_shape();
03
把图像填充输入tensor数据
size_t num_channels = tensor_shape[1];
size_t h = tensor_shape[2];
size_t w = tensor_shape[3];
Mat blob_image;
resize(src, blob_image, Size(w, h));
blob_image.convertTo(blob_image, CV_32F);
blob_image = blob_image / 255.0;
// NCHW
float* image_data = input_tensor.data();
for (size_t row = 0; row < h; row++) {
for (size_t col = 0; col < w; col++) {
image_data[row * w + col] = blob_image.at(row, col);
}
}4
推理跟后处理
// 执行预测
infer_request.infer();
// 获取输出数据
auto output_tensor = infer_request.get_output_tensor();
const float* detection = (float*)output_tensor.data();
最后总结
01
输入与输出获取
ov::InferRequest支持直接获取输入跟输出tensor,分别对应方法是
get_input_tensor()get_output_tensor()
get_tensor(name)02
C4996错误

03
代码行变动
04
Python版本支持


扫码查看OpenCV+OpenVIO+Pytorch系统化学习路线图

推荐阅读
CV全栈开发者说 - 从传统算法到深度学习怎么修炼
2022入坑深度学习,我选择Pytorch框架!
Pytorch轻松实现经典视觉任务
教程推荐 | Pytorch框架CV开发-从入门到实战
OpenCV4 C++学习 必备基础语法知识三
OpenCV4 C++学习 必备基础语法知识二
OpenCV4.5.4 人脸检测+五点landmark新功能测试
OpenCV4.5.4人脸识别详解与代码演示
OpenCV二值图象分析之Blob分析找圆
OpenCV4.5.x DNN + YOLOv5 C++推理
OpenCV4.5.4 直接支持YOLOv5 6.1版本模型推理
OpenVINO2021.4+YOLOX目标检测模型部署测试
比YOLOv5还厉害的YOLOX来了,官方支持OpenVINO推理
