[0001]
本发明涉及动作识别领域,具体而言,涉及一种课堂行为识别方法、装置、电子设备及存储介质。
背景技术:[0002]
课堂教学是学校教育教学的主要阵地,对课堂教学进行过程性评价对教学质量的提高具有重要的意义,而学生课堂行为表现又是课堂教学评价的重要组成部分。目前针对学生课堂行为理解进行的研究还不够广泛,有研究者在教室场景下利用kinect设备提取人体骨骼特征向量,然后再用svm分类器对特征向量进行分类和识别,此方法需要在教室里架设专门的设备,使用传统的机器学习方法进行分类,操作较复杂且准确率不高。随着深度学习技术的飞速发展,后续的研究者陆续将深度学习技术运用到课堂行为理解中,通过搭建学生课堂行为识别数据集,训练深度神经网络,使网络成功识别出上课、睡觉、玩手机、做笔记、看书、东张西望等行为,平均识别率为91.91%。
[0003]
深度学习技术的引入,为学生课堂行为理解的研究提供了新思路和方法,准确率也极大提升。然而学生课堂行为复杂,识别效果容易受学生体态、穿着、背景等的影响,在没有大规模学生课堂行为数据集的支持下,不利于深度神经网络的训练。
[0004]
针对上述问题,目前尚未有有效的技术解决方案。
技术实现要素:[0005]
本申请目的在于提供一种课堂行为识别方法、装置、电子设备及存储介质,可以提高课堂行为识别分类的正确率。
[0006]
第一方面,本申请实施例提供了一种课堂行为识别方法,包括:
[0007]
获取待识别目标的人体图像;采用第一预设网络模型提取所述人体图像的人体骨架图像;根据预先训练的目标神经网络模型对所述人体骨架图像进行识别,得到所述待识别目标的课堂行为类别。
[0008]
本申请实施例首先通过提取学生课堂行为图像的人体骨架关键信息,再结合预先训练的目标卷积神经网络模型对学生课堂行为进行识别,可以得到理想的课堂行为识别结果。
[0009]
可选地,在本申请实施例所述的一种课堂行为识别方法中,所述获取待识别目标的人体图像,包括:获取待识别目标的原始图像;对所述原始图像进行裁剪处理,得到所述待识别目标的人体图像。
[0010]
可选地,在本申请实施例所述的一种课堂行为识别方法中,所述第一预设网络模型为基于openpose开源框架建立的模型。
[0011]
可选地,在本申请实施例所述的一种课堂行为识别方法中,所述课堂行为识别方法,还包括:获取样本图像集,所述样本图像集包括多个人体骨架图像样本;将多个人体骨架图像样本输入预设神经网络模型进行训练,得到所述预先训练的目标神经网络模型。
[0012]
可选地,在本申请实施例所述的一种课堂行为识别方法中,将所述多个人体骨架图像样本中的一参与训练的人体骨架图像样本输入预设神经网络模型进行训练,并基于训练的结果获取对应的交叉熵损失函数;
[0013]
判断所述交叉熵损失函数的损失值是否小于预设阈值;
[0014]
若小于所述预设阈值,则结束训练;
[0015]
若大于所述预设阈值,则将所述交叉熵损失函数的损失值进行反向传播以更新所述预设神经网络模型的权重,并返回所述将所述多个人体骨架图像样本中的一参与训练的人体骨架图像样本输入预设神经网络模型进行训练的步骤。
[0016]
可选地,在本申请实施例所述的一种课堂行为识别方法中,所述预设神经网络模型的结构包括依次连接的第一提取层、第二提取层、第三提取层、第四提取层、第一全连接层、第二全连接层以及输出层。
[0017]
可选地,在本申请实施例所述的一种课堂行为识别方法中,所述第一提取层、第二提取层、第三提取层以及第四提取层分别包括依次连接的第一卷积层、第二卷积层以及最大池化层。
[0018]
第二方面,本申请实施例还提供了一种课堂行为识别装置,包括:
[0019]
获取模块,用于获取待识别目标的人体图像;
[0020]
提取模块,用于采用第一预设网络模型提取所述人体图像的人体骨架图像;
[0021]
识别模块,用于采用预先训练的目标神经网络模型对所述人体骨架图像进行识别,得到所述待识别目标的课堂行为类别。
[0022]
第三方面,本申请实施例提供一种电子设备,包括处理器以及存储器,所述存储器存储有计算机可读取指令,当所述计算机可读取指令由所述处理器执行时,运行如上述第一方面提供的所述方法中的步骤。
[0023]
第四方面,本申请实施例提供一种存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时运行如上述第一方面提供的所述方法中的步骤。
[0024]
本申请的其他特征和优点将在随后的说明书阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请实施例了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
[0025]
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本申请的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
[0026]
图1为本申请实施例提供的课堂行为识别方法的一种流程图。
[0027]
图2为本申请实施例提供的人体骨架图像提取示意图。
[0028]
图3为本申请实施例提供的cnn-10卷积神经网络。
[0029]
图4为本申请实施例提供的课堂行为识别装置的一种结构示意图。
[0030]
图5为本申请实施例提供的电子设备的一种结构示意图。
具体实施方式
[0031]
下面将结合本申请实施例中附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本申请实施例的组件可以以各种不同的配置来布置和设计。因此,以下对在附图中提供的本申请的实施例的详细描述并非旨在限制要求保护的本申请的范围,而是仅仅表示本申请的选定实施例。基于本申请的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本申请保护的范围。
[0032]
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步定义和解释。同时,在本申请的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
[0033]
请参照图1,图1是本申请实施例提供的课堂行为识别方法的流程图。该方法用于对学生的课堂行为进行识别,以助于对课堂教学进行评价。其中,该课堂行为识别方法,包括以下步骤:
[0034]
s101、获取待识别目标的人体图像。
[0035]
s102、采用第一预设网络模型提取所述人体图像的人体骨架图像;
[0036]
s103、根据预先训练的目标神经网络模型对所述人体骨架图像进行识别,得到所述待识别目标的课堂行为类别。
[0037]
其中,在该步骤s101中,待识别的目标是收集的课堂行为为上课、睡觉、玩手机、做笔记、看书、东张西望的学生。该人体图像为用相机拍摄的原始图像,并对原始图像进行处理得到的对应的待识别目标的人体图像。当然,该人体图像还可以为相机拍摄的原始图像。
[0038]
具体地,在一些实施例中,该步骤s101可以包括以下步骤:s1011、获取待识别目标的原始图像;s1012、对原始图像进行裁剪处理,得到待识别目标的人体图像。
[0039]
其中,在该步骤s1011中,其获取待识别目标的原始图像的方法为采用相机拍摄某实验小学学生的单人图像,也可为采用相机拍摄某实验小学学生的多人图像,还可以为从课堂录制视频中截取某实验小学学生的单人图像。
[0040]
进一步地,在s1012步骤中,对获取的原始图像进行裁剪处理,其方法为,首先,找出原始图像以人体骨架关键点构建的人体上半身区域,将找出的人体上半身区域进行裁剪保存,然后以裁剪保存的图像长边为基准,将图像统一缩放成112*112的大小,得到该待识别目标的人体图像。其中,在本实验中,获取的待识别目标的人体图像共7类,包括举手、听课、东张西望、阅读、书写、起立以及睡觉。
[0041]
在该步骤s102中,采用第一预设网络模型提取该人体图像的人体骨架图像。其中,该第一预设神经网络模型为基于openpose开源框架建立的模型,该第一预设神经网络模型可以为典型的vgg网络架构,也可为其他典型的网络架构。
[0042]
在一些实施例中,该步骤s102包括以下步骤:s1021、获取待识别目标的人体图像,该人体图像为上述步骤所述的处理后的原始图像。s1022、将该待识别目标的人体图像输入到第一预设网络模型进行相关计算,输出人体骨架图像。
[0043]
在s1022步骤中,将该待识别目标的人体图像输入到第一预设网络模型中,经第一预设网络模型进行相关计算,由第一预设网络模型输出层输出每一个待识别目标人体图像的人体关节以及人体关节的位置坐标,将各个关节根据位置坐标进行有序连接,最终获得
人体骨架图像。在本实施例中,以获得的人体骨架图像的五分之四作为训练样本,剩余的五分之一作为测试样本。其中,采用第一预设网络模型提取该人体图像的人体骨架图像如图2所示。
[0044]
其中,在该步骤s103中,根据预先训练的目标神经网络模型对该获得的人体骨架图像进行识别,以得到该待识别目标的课堂行为类别。
[0045]
具体地,在一些实施例中,该步骤s103包括:s1031、将获取的人体骨架图像输入到预先训练的目标神经网络模型中进行特征提取,以得到人体骨架图像的特征;s1032、将该获得的人体骨架图像特征输入到softmax函数中,以得到该课堂行为类别的概率分布情况;s1033、根据所述概率分布情况获取对应的课堂行为类别结果。其中,该概率分布情况用于描述该课堂行为属于各种分类的概率。例如,对于某一测试的人体骨架图像而言,其最后得出的概率分布情况为:p1、p2、p3、p4、p5、p6、p7,其中p1、p2、p3、p4、p5、p6、p7分别对应的课堂行为类别为a1、a2、a3、a4、a5、a6、a7。其中,该p1、p2、p3、p4、p5、p6、p7中p2最大,因此,该某一测试的人体图像对应的分类为a2类别。
[0046]
其中,在该步骤s1031之前,该方法还包括:s10311、获取样本图像集,该样本图像集包括多个人体骨架图像样本;s10312、将多个人体骨架图像样本输入预设神经网络模型进行训练,得到预先训练的目标神经网络模型。
[0047]
其中,在s10312步骤中,该预设神经网络模型为cnn-10卷积神经网络模型,如图3所示,该cnn-10卷积神经网络模型包括依次连接的第一提取层、第二提取层、第三提取层、第四提取层、第一全连接层、第二全连接层以及输出层。其中该第一提取层、第二提取层、第三提取层以及第四提取层分别包括依次连接的第一卷积层、第二卷积层以及最大池化层。
[0048]
其中,设置该第一提取层的第一卷积层以及第二卷积层的卷积核大小为3*3,卷积核的数目均设置为16,该第一提取层中的第一卷积层以及第二卷积层用于提取输入的人体骨架图像样本的特征。其中,该第一提取层中的最大池化层用于对第二卷积层输出的特征图进行特征选择和信息过滤,保留需要的有用信息。其中,输入的人体骨架图像样本的大小为112*112,在经过第一提取层中的最大池化层处理后,输出的人体骨架特征图的大小为56*56。
[0049]
其中,设置该第二提取层的第一卷积层以及第二卷积层的卷积核大小为3*3,卷积核的数目均设置为32,该第二提取层中的第一卷积层以及第二卷积层用于提取第一提取层中最大池化层输入的人体骨架特征图的特征。其中,该第二提取层中的最大池化层用于对第二卷积层输出的特征图进行特征选择和信息过滤,保留需要的有用信息。其中,输入到第二提取层的人体骨架特征图的大小为56*56,在经过第二提取层中的最大池化层处理后,输出的人体骨架特征图的大小为28*28。
[0050]
其中,设置该第三提取层的第一卷积层以及第二卷积层的卷积核大小为3*3,卷积核的数目均设置为64,该第三提取层中的第一卷积层以及第二卷积层用于提取第二提取层中最大池化层输入的人体骨架特征图的特征。其中,该第三提取层中的最大池化层用于对第二卷积层输出的特征图进行特征选择和信息过滤,保留需要的有用信息。其中,输入到第三提取层的人体骨架特征图的大小为28*28,在经过第三提取层中的最大池化层处理后,输出的人体骨架特征图的大小为14*14。
[0051]
其中,设置该第四提取层的第一卷积层以及第二卷积层的卷积核大小为3*3,卷
积核的数目均设置为128,该第四提取层中的第一卷积层以及第二卷积层用于提取第三提取层中最大池化层输入的人体骨架特征图的特征。其中,该第四提取层中的最大池化层用于对第二卷积层输出的特征图进行特征选择和信息过滤,保留需要的有用信息。其中,输入到第四提取层的人体骨架特征图的大小为14*14,在经过第四提取层中的最大池化层处理后,输出的人体骨架特征图的大小为7*7。
[0052]
其中,在第一提取层、第二提取层、第三提取层以及第四提取层中,其第一卷积层、第二卷积层中的激活函数选择relu激活函数,添加relu激活函的作用为抑制网络模型出现表达能力不够的问题,因此需要在模型的每一个神经元输出中添加一个激活函数来去除网络模型的线性化。在其他实施例中,该激活函数还可以为sigmoid、elu、prelu等。
[0053]
其中,将上述第四提取层提取的128个7*7大小的人体骨架特征图输入到第一全连接层中,由第一全连接层对第四提取层输入的人体骨架特征图进行批归一化操作以及dropout操作,这两个操作步骤都能进一步地对网络模型训练出现过拟合的情况进行抑制,第一全连接层将提取的人体骨架特征图进一步地输入到第二全连接层进行处理,最后,由第二全连接层将提取的人体骨架特征图输入到输出层中。
[0054]
在上述过程中,训练该cnn-10卷积神经网络的方法为:将人体骨架图像样本中的一参与训练的人体骨架图像样本输入该cnn-10卷积神经网络模型中,并经过该cnn-10卷积神经网络模型进行前向传播,获取该前向传播获得的交叉熵损失函数的损失值,判断该交叉熵损失函数的损失值是否小于预设阈值,若小于设置的预设阈值,则结束训练;若大于设置的预设阈值,则将该交叉熵损失函数的损失值进行反向传播以更新该cnn-10卷积神经网络模型的权重,并返回将多个人体骨架图像样本中的一参与训练的人体骨架图像样本输入cnn-10卷积神经网络模型进行训练的步骤。
[0055]
其中,该训练好的cnn-10卷积神经网络模型即为该预先训练的目标神经网络模型。
[0056]
最后,在s103步骤中,根据预先训练的目标神经网络模型对该人体骨架图像进行识别,得到该待识别目标的课堂行为类别。
[0057]
综上所述,本申请提出的一种课堂行为识别方法,首先通过提取图像中的人体骨架图像,再将提取的人体骨架图像输入到cnn-10卷积神经网络模型中进行训练与测试,可以有效排除学生体态、穿着、背景等无关信息的干扰,突出关键有效信息,降低识别复杂度,具有良好的识别率与泛化能力。
[0058]
请参照图4,图4是本申请实施例中一种课堂行为识别装置的结构示意图。该课堂行为识别装置包括:获取模块201、提取模块202以及识别模块203。
[0059]
其中,该获取模块201用于获取待识别目标的人体图像,其中,该人体图像可以为相机拍摄的原始图像,并对原始图像进行处理得到的对应的待识别目标的人体图像,当然,该待识别目标的人体图像也可为相机拍摄的原始图像。
[0060]
在一些实施例中,该获取模块还包括相应地处理模块,具体为,获取相机拍摄的原始图像,找出原始图像以人体骨架关键点构建的人体上半身区域,将找出的人体上半身区域进行裁剪保存,然后以裁剪保存的图像长边为基准,将图像统一缩放成112*112的大小,得到该待识别目标的人体图像。
[0061]
其中,该提取模块202采用第一预设网络模型提取该人体图像的人体骨架图像,其
中,将该待识别目标的人体图像输入到第一预设网络模型中,经第一预设网络模型进行相关计算,由第一预设网络模型输出层输出每一个待识别目标人体图像的人体关节以及人体关节的位置坐标,将各个关节根据位置坐标进行有序连接,最终获得人体骨架图像。
[0062]
在一些实施例中,该第一预设神经网络模型为基于openpose开源框架建立的模型,其中,该第一预设神经网络模型可以为典型的vgg网络架构,也可为其他典型的网络架构。
[0063]
其中,该识别模块203采用预先训练的目标神经网络模型对该人体骨架图像进行识别,得到该待识别目标的课堂行为类别。其中,在具体实施例中,将获取的人体骨架图像输入到预先训练的目标神经网络模型中进行特征提取,以得到人体骨架图像的特征;将该获得的人体骨架图像特征输入到softmax函数中,以得到该课堂行为类别的概率分布情况;根据所述概率分布情况获取对应的课堂行为类别结果。其中,该概率分布情况用于描述该课堂行为属于各种分类的概率。例如,对于某一测试的人体骨架图像而言,其最后得出的概率分布情况为:p1、p2、p3、p4、p5、p6、p7,其中p1、p2、p3、p4、p5、p6、p7分别对应的课堂行为类别为a1、a2、a3、a4、a5、a6、a7。其中,该p1、p2、p3、p4、p5、p6、p7中p2最大,因此,该某一测试的人体图像对应的分类为a2类别。
[0064]
其中,在具体的实施例中,该识别模块203采用预先训练的目标神经网络模型对该人体骨架图像进行识别之前,还包括获取样本图像集,该样本图像集包括多个人体骨架图像样本;将多个人体骨架图像样本输入预设神经网络模型进行训练,得到预先训练的目标神经网络模型;其中,该预设神经网络模型为cnn-10卷积神经网络模型,该cnn-10卷积神经网络模型包括依次连接的第一提取层、第二提取层、第三提取层、第四提取层、第一全连接层、第二全连接层以及输出层,其中该第一提取层、第二提取层、第三提取层以及第四提取层分别包括依次连接的第一卷积层、第二卷积层以及最大池化层。
[0065]
其中,训练该cnn-10卷积神经网络的方法为:将人体骨架图像样本中的一参与训练的人体骨架图像样本输入该cnn-10卷积神经网络模型中,并经过该cnn-10卷积神经网络模型进行前向传播,获取该前向传播获得的交叉熵损失函数的损失值,判断该交叉熵损失函数的损失值是否小于预设阈值,若小于设置的预设阈值,则结束训练;若大于设置的预设阈值,则将该交叉熵损失函数的损失值进行反向传播以更新该cnn-10卷积神经网络模型的权重,并返回将多个人体骨架图像样本中的一参与训练的人体骨架图像样本输入cnn-10卷积神经网络模型进行训练的步骤,该训练好的cnn-10卷积神经网络模型即为该预先训练的目标神经网络模型,最后,根据预先训练的目标神经网络模型对该人体骨架图像进行识别,得到该待识别目标的课堂行为类别。
[0066]
由上可知,本申请实施例首先通过提取学生课堂行为图像的人体骨架关键信息,再结合预先训练的目标卷积神经网络模型对学生课堂行为进行识别,得到理想的课堂行为识别结果。
[0067]
请参照图5,图5为本申请实施例提供的一种电子设备的结构示意图,本申请提供一种电子设备3,包括:处理器301和存储器302,处理器301和存储器302通过通信总线303和/或其他形式的连接机构(未标出)互连并相互通讯,存储器302存储有处理器301可执行的计算机程序,当计算设备运行时,处理器301执行该计算机程序,以执行时执行上述实施例的任一可选的实现方式中的方法。
[0068]
本申请实施例提供一种存储介质,所述计算机程序被处理器执行时,执行上述实施例的任一可选的实现方式中的方法。
[0069]
其中,存储介质可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(static random access memory,简称sram),电可擦除可编程只读存储器(electrically erasable programmable read-only memory,简称eeprom),可擦除可编程只读存储器(erasable programmable read only memory,简称eprom),可编程只读存储器(programmable red-only memory,简称prom),只读存储器(read-only memory,简称rom),磁存储器,快闪存储器,磁盘或光盘。
[0070]
在本申请所提供的实施例中,应该理解到,所揭露装置和方法,可以通过其它的方式实现。以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,又例如,多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些通信接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
[0071]
另外,作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
[0072]
再者,在本申请各个实施例中的各功能模块可以集成在一起形成一个独立的部分,也可以是各个模块单独存在,也可以两个或两个以上模块集成形成一个独立的部分。
[0073]
在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
[0074]
以上所述仅为本申请的实施例而已,并不用于限制本申请的保护范围,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。