目录
一、模型框架
此次课程设计我所用的模型是深度学习里面的VGG16卷积神经网络模型,在模型训练过程中,所用的贯序式模型,就是一层层链接,最后得到输出层。在之前的中期报告中,对于两个题目我分别用的是肤色检测和CNN模型,但是,在之后的程序设计当中,我发现对于两者所训练的结果准确率不高,并且分类效果不明显。所以我选用深度学习里面的VGG16作为模型。
从下面两个图可以看出,VGG16共有16个层,这也是VGG16名称的由来,是一个相当深的卷积神经网络。VGG各种级别的结构都采用了5段卷积,每一段有一个或多个卷积层。同时每一段的尾部都接着一个最大池化层来缩小图片尺寸。每一段内的卷积核数量一致,越靠后的卷积核数量越多 64-128-256-512-512。经常出现多个完全一样的卷积层堆叠在一起的情况。16的卷积网络是stride=1,kernel size=3,padding=1的卷积,池化层则使用的是最大池化层,stride=2,kernel size=2。
白色部分为卷积层,红色部分为池化层(使用最大池化),蓝色部分为全连接层,其中卷积层和全连接层的激活函数都使用relu。vgg16总共有16层,13个卷积层和3个全连接层,第一次经过64个卷积核的两次卷积后,采用一次pooling,第二次经过两次128个卷积核卷积后,再采用pooling,再重复两次三个512个卷积核卷积后,再pooling,最后经过三次全连接。下面就是VGG16的模型结构解释。
二、数据预处理
(1)模板数据集
本次设计主要使用的是老师所发的十种花卉图片,共有400多张,分别是0-9种花卉,如下: