diff --git "a/\347\224\250OpenCV\345\256\236\347\216\260\350\266\205\350\275\273\351\207\217\347\232\204NanoDet\347\233\256\346\240\207\346\243\200\346\265\213\346\250\241\345\236\213-2021-03-17.md" "b/\347\224\250OpenCV\345\256\236\347\216\260\350\266\205\350\275\273\351\207\217\347\232\204NanoDet\347\233\256\346\240\207\346\243\200\346\265\213\346\250\241\345\236\213-2021-03-17.md" index d71fb97cab5404c818b3247ecd128aba993b8d2a..9cfba447de84d9c1f60d949b160e2bbdffc9ce7a 100644 --- "a/\347\224\250OpenCV\345\256\236\347\216\260\350\266\205\350\275\273\351\207\217\347\232\204NanoDet\347\233\256\346\240\207\346\243\200\346\265\213\346\250\241\345\236\213-2021-03-17.md" +++ "b/\347\224\250OpenCV\345\256\236\347\216\260\350\266\205\350\275\273\351\207\217\347\232\204NanoDet\347\233\256\346\240\207\346\243\200\346\265\213\346\250\241\345\236\213-2021-03-17.md" @@ -16,7 +16,9 @@ nanodet通过一些论文里的trick组合起来得到了一个兼顾精度、 最后,项目作者借鉴了 YOLO 系列的做法,将边框回归和分类使用同一组卷积进行计算,然后 split 成两份。最后,项目作者借鉴了 YOLO 系列的做法,将边框回归和分类使用同一组卷积进行计算,然后 split 成两份,这样就组成了nanodet网络。 -作者把nanodet发布在github上,项目地址: https://github.com/RangiLyu/nanodet,下载代码和模型文件到本地,按照README文档运行一个前向推理程序。接下来,我阅读前向推理主程序demo.py文件,尝试理解在运行这个主程序时需要调用哪些函数和.py文件。在前向推理主程序demo.py文件,对一幅图片做目标检测是在Predictor类的成员函数inference里实现的,它里面包含了对输入图片做预处理preprocess,前向计算forward和后处理postprocess这三个步骤。Predictor类的定义如下图所示 +作者把nanodet发布在github上,项目地址: https://github.com/RangiLyu/nanodet, + +下载代码和模型文件到本地,按照README文档运行一个前向推理程序。接下来,我阅读前向推理主程序demo.py文件,尝试理解在运行这个主程序时需要调用哪些函数和.py文件。在前向推理主程序demo.py文件,对一幅图片做目标检测是在Predictor类的成员函数inference里实现的,它里面包含了对输入图片做预处理preprocess,前向计算forward和后处理postprocess这三个步骤。Predictor类的定义如下图所示 ![](./imgs/9.jpg) @@ -42,7 +44,9 @@ nanodet通过一些论文里的trick组合起来得到了一个兼顾精度、 综上所述,在预处理模块Pipeline类包含了很多冗余的计算,图像预处理本身是一个简单问题,但是在官方代码里却把简单问题搞复杂化了。 -官方代码仓库(https://github.com/RangiLyu/nanodet)里提供了基于 ncnn 推理框架的实现,基于mnn,libtorch,openvino的实现,但是没有基于Opencv的dnn模块的实现。于是我就编写一套基于Opencv的dnn模块的实现,程序里包含Python和C++两个版本的代码。 +官方代码仓库(https://github.com/RangiLyu/nanodet) + +里提供了基于 ncnn 推理框架的实现,基于mnn,libtorch,openvino的实现,但是没有基于Opencv的dnn模块的实现。于是我就编写一套基于Opencv的dnn模块的实现,程序里包含Python和C++两个版本的代码。 **地址是**: **https://github.com/hpc203/nanodet-opncv-dnn-cpp-python**