左國才, 蘇秀芝, 王海東 , 吳小平
(1 湖南軟件職業學院, 湖南 湘潭 411100; 2 湖南大學, 長沙 410082)
為了客觀量化地評價高職院校課堂教學質量與學生學習情況,對高職院校學生在上課時的課堂行為進行檢測分析,客觀評估課堂教與學的效果。由于卷積神經網絡(Convolutional Neural Network,CNN)[1]在深度特征提取方面有很強的表現能力,越來越多地應用于各種目標任務檢測,劉智等人[2]設計出構建多尺度深度卷積神經網絡行為識別模型;王軍等人[3]提出基于深度學習模型提取深度特征的異常行為檢測算法;Xiang等人[4]提出基于異常檢測的視頻行為分析;廖鵬等人[5]設計實現基于深度學習的學生課堂異常行為檢測與分析系統。本文總結以上研究成果及研究經驗,提出將深度學習卷積神經網絡CNN經典模型VGG16[6]應用于大學生課堂行為檢測。基于VGG16模型的大學生課堂行為檢測將學生在上課中的課堂行為表現分成2類,即:專注學習與不專注學習。
2014年牛津大學計算機視覺組和Google DeepMind公司的研究員一起研發出了新的深度卷積神經網絡:VGGNet。該模型參加2014年的 ImageNet圖像分類與定位挑戰賽,取得了優異成績:在分類任務上排名第二,在定位任務上排名第一。VGGNet可以看成是加深版本的AlexNet,都是由卷積層、全連接層兩大部分構成。VGG由5層卷積層、3層全連接層、softmz輸出層構成,層與層之間使用mz-pooling(最大化池)分開,所有隱層的激活單元都采用ReLU函數。VGG16的結構圖如圖1所示。VGG16執行過程如圖2所示。
高職院校學生上課中的課堂行為檢測分析,由于攝像頭拍攝時存在一定的角度差,因此教室里的學生課堂監控視頻圖像不能獲取檢測目標(學生)的正面信息,大多為側面信息,同時由于學生課堂視頻數據集的限制及拍攝效果不佳,增加了學生在教室上課時課堂教學視頻中行為檢測的難度,因此本文采用卷積神經網絡CNN經典的VGG16深度學習模型對學生課堂行為進行檢測分析,以提高課堂行為檢測識別率。

圖1 VGG16結構圖

圖2 VGG16執行過程
本文所采用的測試數據集為高職院校學生上課時的真實課堂監控視頻,由于拍攝設備性能不高,拍攝的效果不佳。拍攝設備安裝在教室投影儀左右兩邊以及教室最后兩邊,采集到的課堂教學視頻數據集均有一定傾斜角度,由于班級人數較多,教室較大,學生上課時坐的位置不同,有的集中、有的分散,每個課堂教學視頻中拍攝的學生人數約為10~30個左右。從整個拍攝的課堂教學視頻來看,學生在上課時的課堂行為變化不多,測試時,從拍攝的課堂教學視頻中以4 s的時間間隔抓取一幀圖像,隨機抽取圖像幀選取不同角度、不同教室的實驗數據集總共4 000張,進行訓練。
基于CNN深度學習模型的大學生上課中課堂行為檢測與分析,將大學生在上課中的課堂行為分為專注學習與不專注學習兩類,將學生課堂視頻圖像進行相關預處理操作后,作為實驗數據集。
由于卷積神經網絡CNN模型只能識別包含單個檢測目標的固定格式圖片,因此在進行網絡模型訓練和測試前,需要將圖像進行預處理。
本文中使用深度學習框架工具Matcovnet,采用大型可視化數據庫ImageNet[7]預訓練網絡模型,在線微調各種參數,修改CNN深度學習模型VGG16網絡結構,并且基于已經進行過預訓練的初始化網絡參數,用學生課堂教學視頻提取的課堂行為圖像數據集來進行訓練,使系統達到快速收斂效果。學生課堂行為檢測分析流程如圖3所示。

圖3 課堂行為檢測分析流程圖
部分代碼如下:
model=VGG16(weights='imagenet',include_top=True)
i_path= 'test.jpg'
img=image.load_img(i_path,target_size=(224, 224))
featur=model.preict(x)
pre=decode_preictions(featur,top=5)[0]
forelementinpre:
values.append(element[2])
bar_label.append(element[1])
z=fig.add_subplot(111)
z.bar(range(len(values)),values,tick_label=bar_label,width=0.5,fc='g')
fora,binzip(range(len(values)),values):z.text(a,b+0.000 5,percent(b),ha='center', va = 'bottom',fontsize=7)
本文的圖像數據集是從學生上課中的課堂監控視頻中獲取得到的實驗數據集。針對拍攝的學生上課中的課堂監控視頻,完成數據集圖像數據預處理、修改訓練參數、訓練網絡模型,隨機選擇訓練集和測試集,并設置訓練集與測試集的比例為8:2。“不專注學習”課堂行為實驗結果如圖4所示,“專注學習”課堂行為實驗結果如圖5所示。

圖4 “不專注學習”課堂行為

圖5 “專注學習”課堂行為
實驗結果表明,訓練的網絡模型對學生不專注學習行為的檢測識別率較低,對抬頭專注學習行為檢測識別率較高。不專注學習行為的檢測識別率較低的原因是在初始的學生課堂教學視頻圖像訓練集中,學生不專注學習行為的人數較少,同時所采集的課堂教學視頻圖像序列中不專注學習行為的學生的圖片相應減少,不能從課堂教學視頻圖像訓練集中
提取到足夠的不專注學習行為的特征。用學生課堂教學視頻圖像測試集進行驗證,測試結果見表1。

表1 測試結果
在學生上課時課堂行為檢測分析中,原始課堂教學圖像被用作整個網絡輸入。與傳統的行為檢測算法相比,避免了特征提取的過程。這些特征是由網絡自動從訓練數據集中提取出來的。在每幀課堂教學視頻圖像中,所設計的模型方法能夠用矩形框自動定位到學生課堂行為檢測區域,以及自動識別該課堂行為方式。由于課堂教學視頻圖像數據集數量不夠多、學生課堂行為標記的準確度也有待改進,給實驗的檢測率造成了影響,實驗結果表明,卷積神經網絡CNN具有強大的深度特征提取能力,能夠有效地檢測到學生課堂教學視頻中的課堂行為,取得了良好的檢測識別效果。