【超全】在OAK深度AI相机上部署用户神经网络模型的三种方法

编辑:OAK中国
首发:oakchina.cn
喜欢的话,请多多👍⭐️✍
内容可能会不定期更新,官网内容都是最新的,请查看首发地址链接。

▌前言

Hello,大家好,这里是OAK中国,我是助手君。

OAK相机可以运行几乎所有的人工智能模型,包括用户自己创建和训练的神经网络模型。一个OAK芯片内部可以同时以并联或者串联的模式运行多个AI神经网络模型。

我们可以通过在线或者离线的转换工具,将自己训练好的神经网络模型转换成可以在OAK上加速运行的BLOB格式的神经网络模型。这里提供YOLO模型的三种转换方法,其他框架的模型方法类似,示意图如下:
在这里插入图片描述

YOLO各个版本的详细转换教程可查看此处

▌方法1

直接通过官方提供的yolo系列模型在线转换工具,将YOLO模型转换成OAK上运行的BLOB格式的模型

网址如下:https://tools.luxonis.com/

在这里插入图片描述

▌方法2

先将YOLO模型转换成ONNX,再通过在线转换工具将ONNX模型转换成BLOB格式的模型。该方法不仅仅适合YOLO,也适合TensorFlow、Caffe、Pytorch、OpenVino的转换。

第一步,将YOLO模型转换成ONNX模型

python export_onnx.py -w <path_to_model>.pt -imgsz 320 

参考代码和方法网址如下:https://www.oakchina.cn/2023/03/21/mmyolo-blob/

第二步:通过在线转换工具将ONNX模型转换成BLOB格式
网址:http://blobconverter.luxonis.com/

在这里插入图片描述

▌方法3

采用完全离线的方式实现从yolo到BLOB的完整转换

可以参考我们的本地转换教程:
https://docs.oakchina.cn/en/latest/pages/Advanced/Neural_networks/local_convert_openvino.html
在这里插入图片描述

第一步:自己搭建openvino环境。
第二步:将YOLO模型转换成ONNX模型。

python export_onnx.py -w <path_to_model>.pt -imgsz 320

参考代码和方法网址如下:https://www.oakchina.cn/2023/03/21/mmyolo-blob/

第三步:通过 OpenVino Model Optimizer 将第三方通用模型转换成openvino的模型格式.bin和.xml格式。
第四步:再通过 OpenVino Compile Tool 工具将.IR格式的Openvino模型转换成可以在OAK上运行的.blob格式的模型。

当BLOB模型转换好后,我们将模型路径放在代码里,实现模型的调用运行,具体方法可以参考以下的示例:
https://docs.luxonis.com/projects/api/en/latest/samples/Yolo/tiny_yolo/
https://gitcode.net/oakchina/depthai-examples/-/tree/master/depthai_yolo

▌参考资料

https://docs.oakchina.cn/en/latest/
https://www.oakchina.cn/selection-guide/


OAK中国
| OpenCV AI Kit在中国区的官方代理商和技术服务商
| 追踪AI技术和产品新动态

戳「+关注」获取最新资讯↗↗

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值