官方GitHub地址:https://github.com/RangiLyu/nanodet
中文知乎地址: https://zhuanlan.zhihu.com/p/449912627
性能如下图,在一众轻量化目标检测算法中是很有竞争力的。
但是官方给的demo没有基于C++ opencv调用的,因此就有了这篇博客。
系统:Win10
VS2017
opencv:4.5.1GPU版本
前面环境搭建可以依照官方的教程一步步进行,执行完python setup.py develop
输出这个就是成功了。
onnx格式有着很强的移植能力,并且再众多开发板和嵌入式平台上都有着很好的支持,官方也贴心的提供给了转换工具,在tools/export_onnx.py。
我这边的opencv版本是4.5.1,基于CUDA11重新编译了,需要的朋友可以从这里下载。
opencv调用模型核心代码:
this->net = readNet(model_path);
this->net.setPreferableBackend(DNN_BACKEND_CUDA);
this->net.setPreferableTarget(DNN_TARGET_CUDA);
如果没有CUDA的同学,可以将DNN_BACKEND_CUDA和DNN_TARGET_CUDA改成DNN_BACKEND_OPENCV和DNN_TARGET_CPU。
我是直接把调用和推理的过程封装了,模型调用成功会返回true。
项目demo源码在这里。
有不当之处,欢迎批评指正~
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)