OpenCV DNN基于深度学习中的卷积神经网络技术实现对常见计算机视觉任务完成,这些支持模型的结构与相关的论文笔者做了汇总。今天这里汇总一下支持的图像分类模型。
01
GooLeNet
2014年提出,OpenCV DNN支持Caffe与tensorflow两个版本的模型加载。相关论文如下:
代码语言:javascript复制https://arxiv.org/pdf/1409.4842.pdf
两个Block结构单元
模型结构
02
AlexNet模型
卷积神经网络模型的开山之作,相关的论文:
代码语言:javascript复制http://cvml.ist.ac.at/courses/DLWT_W17/material/AlexNet.pdf
模型结构:
03
VGG网络
2014年提出,OpenCV支持Caffe模型。
代码语言:javascript复制https://arxiv.org/pdf/1409.1556.pdf
网络结构如下:
04
ResNet网络
残差网络模型在2015年提出,OpenCV从3.3版本开始支持,相关的论文如下:
代码语言:javascript复制https://arxiv.org/pdf/1512.03385.pdf
与VGG模型对比,模型结构:
05
SqueezeNet网络
该模型与MobileNet网络都是支持移动端/端侧可部署的模型,2016提出,相关论文如下:
代码语言:javascript复制https://arxiv.org/pdf/1602.07360.pdf
模型结构
06
MobileNet网络
支持V1与V2版本,包括ONNX格式文件,MobileNet模型最早在2017年提出,论文地址如下:
代码语言:javascript复制https://arxiv.org/pdf/1704.04861.pdf
基于深度可分离实现降低计算与参数的轻量级网络模型,图示如下:
07
DenseNet
该网络是残差网络的升级与改进版本,该模型结构在2016年提出,论文地址如下:
代码语言:javascript复制https://arxiv.org/pdf/1608.06993.pdf
网络中的残差block结构如下:
08
ShuffleNet
该网络最早在2017年提出,如今也更新到多个版本,从最早的V1版本到如今的V3版本,OpenCV DNN模型支持v1版本的图像分类,相关论文如下:
代码语言:javascript复制https://arxiv.org/pdf/1707.01083.pdf
模型结构主要基于MobileNet的深度可分离与组合卷积进一步创新,生成了通道混合操作,其中通道混合结构与shuffle单元结构如下:
此外基于这些网络结构的自定义网络模型同样可以被OpenCV DNN加载与解析完成图像分类任务。
善始者实繁
克终者盖寡