0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

OpenVINO2022 Dev Tools安装与使用

OpenCV学堂 来源:OpenCV学堂 作者:OpenCV学堂 2022-06-22 11:49 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

引言

OpenVINO2022版本发布之后,对之前旧版本的功能做明确的划分,其中仍然通过exe方式安装程序的是runtime推理包,支持ONNX、IR、PADDLE等模型读取与推理。但是模型优化转换、模型库下载功能等其他功能被分在一个叫Dev Tool的部分。该部分可以通过pip方式直接安装,然后通过命令行直接直线,完成模型的转换,下载等操作,跟之前版本易用性有较大提升!做个对比如下:

c4e9eb5c-f1dd-11ec-ba43-dac502259ad0.png

Dev Tools安装与使用

Dev Tools安装非常方便,直接通过官方脚本命令行选择安装即可,唯一需要注意的是选择模型框架支持,我选择了ONNX/Pytorch格式转换支持,安装的命令行如下:
pip install openvino-dev[onnx,pytorch]==2022.1.0
执行完这条命令行就算是安装好了,只要网络不挂就可以安装成功! 安装完成,转换一个ONNX格式的模型为IR格式(xml/bin)文件,以Pytorch的ResNet18为例,先转换为ONNX,代码如下:
model = models.resnet18(pretrained=True) model.eval() model.cpu()
 dummy_input1 = torch.randn(1, 3, 224, 224) torch.onnx.export(model, (dummy_input1), "resnet_model.onnx", verbose=True)

然后直接运行命令行就可以转换IR格式文件,截图如下:

c4faca6c-f1dd-11ec-ba43-dac502259ad0.png

c504bedc-f1dd-11ec-ba43-dac502259ad0.png

模型下载

安装完成Dev Tools之后,下载模型,只要执行命令行即可:举例如下:
omz_downloader --name person-detection-0200
表示下载模型person-detection-0200是一个轻量化的人脸检测模型。omz_downloader支持的参数:
--all表示下载全部模型,建议别这么干!--name 下载一个或者多个指定名称的模型,推荐这么干!--precisions 表示下载的模型精度参数,支持FP32/FP18/INT8

c51d4754-f1dd-11ec-ba43-dac502259ad0.png

Python SDK使用

对比之前Python版本的SDK,好用了不少,最明显的感受就是不用读输入输出,然后一堆设置了,对单个输入输出的网络,调用就特别的简洁更方便!开发者更加容易上手!上面我已经成功转换一个pytorch图像分类模型为IR格式,现在就可以使用它,基于OpenVINO2022版本最新Python SDK部署调用,实现代码如下:
#加载标签数据
withopen('imagenet_classes.txt')asf:
labels=[line.strip()forlineinf.readlines()]


defresnet_demo():
ie=Core()
#model=ie.read_model(model="resnet_model.onnx")
model=ie.read_model(model="resnet_model.xml")
compiled_model=ie.compile_model(model=model,device_name="CPU")

output_layer=compiled_model.output(0)

means=np.zeros((224,224,3),dtype=np.float32)
means[:,:]=(0.485,0.456,0.406)
dev=np.zeros((224,224,3),dtype=np.float32)
dev[:,:]=(0.229,0.224,0.225)

image=cv.imread("D:/images/space_shuttle.jpg")
rgb=cv.cvtColor(image,code=cv.COLOR_BGR2RGB)

#resizetoMobileNetimageshape
input_image=cv.resize(src=rgb,dsize=(224,224))
blob_img=np.float32(input_image)/255.0
input_x=(blob_img-means)/dev
input_x=input_x.transpose((2,0,1))
input_x=np.expand_dims(input_x,0)
print(input_x.shape)

result_infer=compiled_model([input_x])[output_layer]
result_index=np.argmax(result_infer)
cv.putText(image,labels[result_index],(20,50),cv.FONT_HERSHEY_SIMPLEX,1.0,(0,0,255),2)

cv.imshow("OpenVINO2022+PythorchResNet18",image)
cv.waitKey(0)
cv.destroyAllWindows()


if__name__=="__main__":
resnet_demo()

审核编辑 :李倩

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 模型
    +关注

    关注

    1

    文章

    3873

    浏览量

    52341
  • 脚本
    +关注

    关注

    1

    文章

    413

    浏览量

    29318

原文标题:OpenVINO2022 Dev Tools安装与使用

文章出处:【微信号:CVSCHOOL,微信公众号:OpenCV学堂】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    FPGA技术教程Linux开发:Petalinux安装

    apt-get install iproute2 gawk python3 build-essential gcc git make net-tools libncurses-dev tftpd-hpa
    的头像 发表于 04-20 16:30 900次阅读

    Linux Kernel 6.1 tools目录全解析 | RK平台ARM64交叉编译实战指南

      在瑞芯微( RK ) ARM64 平台嵌入式 Linux 开发、内核调试与硬件外设测试中, Linux 内核源码自带的 tools 目录 是官方标配的工具集合,涵盖性能分析、设备调试、系统管理
    的头像 发表于 04-16 18:42 7767次阅读
    Linux Kernel 6.1 <b class='flag-5'>tools</b>目录全解析 | RK平台ARM64交叉编译实战指南

    RISC-V工具链搭建

    /bin 4) 工具链编译 $ cd ~/rocket-tools 安装依附包:sudo apt-get install autoconf automake autotools-dev curl
    发表于 10-29 08:02

    搭建自己的ubuntu系统之VMware Tools安装

    接下来安装VMware Tools,如果不安装该工具,在Windows主机和虚拟机之间无法使用复制粘贴、文件拖拽。首先右击VMware导航栏上的“虚拟机”,然后在下拉框中点击“安装VM
    发表于 09-25 09:45

    无法在NPU上推理OpenVINO™优化的 TinyLlama 模型怎么解决?

    在 NPU 上推断 OpenVINO™优化的 TinyLlama 模型。 遇到的错误: get_shape was called on a descriptor::Tensor with dynamic shape
    发表于 07-11 06:58

    无法将Tensorflow Lite模型转换为OpenVINO™格式怎么处理?

    将 Tensorflow Lite 模型转换为 OpenVINO™ 格式。 遇到的错误: FrontEnd API failed with OpConversionFailure:No translator found for TFLite_Detection_PostProcess node.
    发表于 06-25 08:27

    请问OpenVINO™ 是否支持 Rust 绑定?

    无法确定OpenVINO™是否支持 Rust 绑定。
    发表于 06-25 07:45

    无法运行Whisper Asr GenAI OpenVINO™ Notebook怎么解决?

    冉小 声说-asr-genai OpenVINO™笔记本。 遇到的错误: Port for tensor name cache_position was not found.
    发表于 06-25 07:41

    请问如何优化OpenVINO™工具套件中的内存使用?

    运行OpenVINO™推断时找不到优化内存使用情况的方法。
    发表于 06-25 06:56

    请问是否可以在通用Windows平台中构建OpenVINO™ GenAI C++ 应用程序?

    无法在通用 Windows 平台中构建OpenVINO™ GenAI C++ 应用程序
    发表于 06-24 07:35

    请问Openvino是否支持 Risc-V (riscv64) 架构?

    在spacemit k1型板(bpi-f3)上编译OpenVINO™,但失败。 使用 riscv64 构建OpenVINO™并崩溃。
    发表于 06-24 07:26

    请问如何通过OpenVINO™加速启用稳定的扩散 Web UI?

    无法运行具有OpenVINO™加速的稳定扩散 Web UI。
    发表于 06-24 06:48

    使用Openvino™ GenAI运行Sdxl Turbo模型时遇到错误怎么解决?

    使用 OpenVINO™ GenAI 运行 SDXL Turbo 模型。 遇到的错误: RuntimeError :- Check ov_tokenizer || ov_detokenizer Neither tokenizer nor detokenizer models were provided
    发表于 06-24 06:38

    无法将Openvino™ 2025.0与onnx运行时Openvino™ 执行提供程序 1.16.2 结合使用,怎么处理?

    使用OpenVINO™与英特尔 i5-8500 CPU 和超核处理器 630 iGPU 一起部署模型。 使用了 Microsoft.ML.OnnxRuntime.OpenVino
    发表于 06-24 06:31

    为什么无法通过“pip install openvino-dev==2025.0.0”安装 2025.0 OpenVINO™?

    通过“pip install openvino-dev==2025.0.0OpenVINO™ 2025.0 安装。 收到的错误: ERROR: No matching distribution found for
    发表于 06-23 08:13