APP下载

基于Xception 的座位状态检测模型

2019-12-27刘晨怡姜丽芬钟长鸿

关键词:个数座位卷积

刘晨怡,姜丽芬,王 亭,钟长鸿,梁 妍

(天津师范大学计算机与信息工程学院,天津300387)

本文提出一种基于深度可分离卷积Xception[14]的轻量级座位状态检测模型.该模型首先将采集到的图像利用实例分割框架FCIS[15]进行目标识别,提取出含有目标的特定样本,再输入包含9 个卷积层的神经网络中进行特征提取,利用Focal Loss[16]损失函数处理网络训练中正负样本比例失衡的问题;将训练得到的初级特征、中级特征、高级特征进行融合后,再输入全连接层进行全局特征整合;最后利用Sigmoid 回归算法进行座位状态分类识别.利用公开数据集和实地拍摄图片集进行实验,将本文模型与ResNet-50 模型[17]、Xception 模型[14]和基于人脸识别的座位检测方法[18]进行对比,结果表明,本文模型识别精度最高,为91%,高于ResNet-50 模型的85%、Xception 模型的89%和基于人脸识别的座位状态检测方法的82%.

1 模型构建

座位状态检测模型包括输入层、卷积层、池化层、全连接层和输出层.模型使用6 个深度可分离卷积构成基本的特征提取器,6 个深度可分离卷积层分为3个模块,均使用残差连接. 模型的整体架构如图1所示.

图1 基于Xception 的座位状态检测模型结构Fig.1 Model structure of Xception-based seat status detection

1.1 输入层

输入层输入经过预处理的图像.使用实例分割框架FCIS 对图像进行预处理,FCIS 是首个端到端的全卷积实例分割模型.图像经过预处理后,可筛选出相关的物体信息,以便对无效信息进行弱化.

1.2 卷积层

图像经过预处理后,其大小统一为224×224×3,将其输入卷积核尺寸分别是(3,3,64)与(3,3,128)的卷积层进行特征提取.卷积层的计算公式为

其中:AL为第L 卷积层的输出;f(·)为卷积层的激活函数;WL为卷积核;“*”代表卷积操作; bL为偏置参数.将得到的特征提取图输入到深度可分离卷积中,进行特征的进一步提取,依次提取初级、 中级和高级特征.深度可分离卷积原理如图2 所示.

在由深度可分离卷积构成的3 个模块中,分别使用了尺寸为(3,3,128)、(3,3,256)、(3,3,512)的深度可分离卷积核.每个卷积核用同样的方法对图像进行处理,不同的卷积核会自动提取图像的边缘、明暗、轮廓等信息.模型可以自动提取图像的多个特征,得到多张特征提取图.

图2 深度可分离卷积原理Fig.2 Schematic of depth separable convolution

深度可分离卷积能够大幅度减少参数,因而其计算量较传统卷积大幅缩减.深度可分离卷积在深度卷积和1×1 卷积后都增加了BN 层和Relu 激活层.深度可分离卷积的结构如图3 所示.

式中下标v表示黏性项, 其他各变量的意义参见文献[22]. 湍流模拟采用k-ω SST湍流模型[22-23], 该模型在模拟弱分离的黏性问题中具有较高的精度. 采用有限体积法对流动主控方程及湍流模型方程进行数值求解, 时间推进采用LU-SGS方法[24-26], 空间处理采用Roe格式的通量差分离散, 黏性项采用中心差分格式加人工耗散项[23].

BN 层用于对数据进行归一化,以保证每层的数据分布稳定,避免输入数据的偏移造成的影响.Relu层增加了神经网络各层之间的非线性关系,通过Relu稀疏后的模型能够更好地挖掘相关特征、拟合训练数据,同时有效地克服了梯度消失的问题.Relu 激活层的激活函数为

图3 深度可分离卷积的结构Fig.3 Structure of depth separable convolution

1.3 池化层

池化层的处理方式一般有最大池化、 平均值池化、中值池化等.为了对输出做筛选降维,在每个深度可分离卷积模块中均设置一个最大池化层,其使用的池化核为(2,2),长、宽方向的步长都为2,深度方向的步长为1.设池化核的宽为fx,高为fy,在池化核范围fx×fy 内的训练参数采用最大值来替代,则最大池化公式为

1.4 残差连接

每个深度可分离卷积模块的连接均采用残差连接,每个卷积模块由2 个深度可分离卷积层、1 个最大池化层和一个为了匹配输入输出大小一致的1×1卷积层连接组成,如图4 所示.

图4 残差连接Fig.4 Residual connection

设输入为X,左侧为经过卷积、池化、归一化等操作的输出F(X),右侧为经过1×1 卷积的输出G(X).经过残差连接的输出为F(X)+G(X).残差连接是在元素层面上执行加法运算.

1.5 特征融合

融合连接方式如图5 所示.3 个深度可分离卷积模块分别得到初级特征图、中级特征图和高级特征图.将3 类特征图分别采用全局平均池化,在结构上采用正则化防止过拟合,直接剔除黑箱特征,并直接赋予各通道的实际类别含义.最后再利用连接运算将各类特征组合起来,输入全连接层.

图5 融合连接Fig.5 Fusion connection

1.6 全连接层和输出层

全连接层有2 个,在前面的特征融合后,第1 个全连接层中每个节点都与896 个节点连接,用于综合前面提取的特征,它可以整合具有类别区分性的局部信息;第2 个全连接层的输出由Sigmoid 逻辑回归进行分类.

1.7 Focal Loss 函数

为解决正负样本比例的均衡问题,在模型中增加了Focal Loss 损失函数.该损失函数可降低简单负样本在训练中所占的比例,使得模型在训练时更专注于较难分类的样本.Focal Loss 函数的计算公式为

其中:α 用于调节正负样本所占的比例,前景类别使用α,对应的背景类别使用1-α;γ 用于对简单样本进行权重抑制;y′为不同类别的分类概率.本文通过实验确定了最优的α 和γ 的取值.

2 实验分析

2.1 数据集的建立

根据场景要求,采用公开数据集VOC2012 和IKEA的部分数据以及实地拍摄的图片数据构成训练和测试数据集.共选取了10 715 张样本图片,其中2 954张图片作为正样本,正样本包含了多人场景、 单人场景的就座图片,7 761 张图片作为负样本,负样本数据集筛选了不同形状的空椅子、椅子上有物品、椅子周围有人等多种情景.数据集中训练集样本占样本总数的85%,测试集样本占15%,样本标签统计如表1所示.

表1 样本标签统计Tab.1 Sample label statistics

为了减少其他物体对提取目标特征的干扰,利用实例分割模型FCIS 进行图像预处理,对无效信息进行了弱化. 首先对图像中的椅子和人进行检测框框选,若存在人与椅子的检测框产生交集,则取出包含多个检测框的最大矩形框作为样本; 若只检测到椅子,则只取椅子的检测框作为样本.通过FCIS 的预处理,只保留了检测目标如椅子、 人等,因此可以减少周围环境对座位检测的影响.按照上述方法对原图像进行分割,部分原图像及分割后的图像如图6 所示.

图6 FCIS 图像预处理结果Fig.6 Image preprocessing results of FCIS

2.2 参数设置

本文通过实验进行手动调参,使模型结构达到最优.需要调整的参数包括全连接层数、 全连接层节点个数、Focal Loss 的参数 α 和 γ.

(1)全连接层数.

增加全连接层个数可以提高模型的非线性表达能力,获得更全面的信息,进而提高模型的学习能力.设置不同全连接层的个数进行实验,取10 次实验识别精度的平均值.结果显示,当全连接层数为1、2 和3时,模型识别精度分别为0.885 0、0.887 5 和0.887 5.由于全连接层个数的增加会提高训练成本,为了使模型既具有较高的识别精度,又能保持良好的性能,确定全连接层的个数为2.

(2)全连接层节点个数.

全连接层节点个数是深层神经网络的重要参数之一.全连接层节点个数过多,会使模型复杂度提高,网络训练时间变长,给模型训练带来额外的成本;全连接层节点个数过少,会使模型性能变差.在确定全连接层个数为2 的情况下,考察第1 层全连接层节点数对模型性能的影响,实验结果显示,当节点数分别为 128、256 和 384 时,模型识别精度分别为 0.900 0、0.907 5 和0.870 0,由此确定第1 层全连接层节点个数为256.

(3)Focal Loss 函数的参数 α 和 γ.

α 的范围是[0,1],本文数据集的负样本数量比正样本数量多,因此需要通过设置α 的取值以调节正负样本所占的比例,使其相对均衡.首先固定γ=2,取不同的α,实验结果显示,当α=0.6、0.7 和0.8 时,模型识别精度较高,分别为0.895 0、0.902 5 和0.907 5.因此取α=0.8.接下来固定α=0.8,设置不同的γ 取值,当γ=3、4 和5 时,模型识别精度分别为0.907 5、0.902 5 和0.910 0,因此取γ=5.

综上,通过实验确定了模型的几个重要的参数:全连接层个数为2、第1 层全连接层节点个数为256,Focal Loss 中的 α 与 γ 的值分别为 0.8 和 5.

2.3 实验结果

为了验证本文模型的有效性和性能,搭建了原模型 Xception(14 个模块,36 个卷积层)、ResNet-50 以及利用人脸识别技术对座位状态进行检测等3 种网络模型,利用上面的数据集进行对比实验,得到座位识别的统计结果如表2 所示.

表2 4 种模型的识别精度Tab.2 Identification accuracies of 4 models

由表2 可知,本文提出的轻量级座位状态检测网络模型性能最优,识别精度为91%,高于ResNet-50模型的85%和基于人脸识别的座位检测模型的82%,略高于Xception 模型的89%,但Xception 模型的结构远比本文模型复杂,基于人脸识别的座位检测模型由于易受到遮挡、 人体姿势可变性等因素的干扰,因此识别精度不高.

3 结论

提出一种基于Xception 的轻量级座位状态检测模型,运用实例分割框架FCIS 进行图像预处理以减少无效信息的影响,增强模型对座位状态的判断准确率.实验结果表明,本文提出的座位状态检测模型在真实场景下的识别精度达到91%,高于常见的检测模型,且性能较为优异,具有较好的应用前景.

猜你喜欢

个数座位卷积
换座位
基于3D-Winograd的快速卷积算法设计及FPGA实现
怎样数出小正方体的个数
卷积神经网络的分析与设计
等腰三角形个数探索
怎样数出小木块的个数
从滤波器理解卷积
巴士上的座位
怎样数出小正方体的个数
基于傅里叶域卷积表示的目标跟踪算法