湯 凍,奚曉軼,閆 濤
(江蘇省廣播電視總臺(tái),江蘇 南京 210013)
監(jiān)聽(tīng)監(jiān)看是廣播電視安全播出的重要環(huán)節(jié)。播出機(jī)房值班人員需同時(shí)監(jiān)看上百個(gè)活動(dòng)畫(huà)面,存在一定的視覺(jué)盲區(qū)。長(zhǎng)時(shí)間監(jiān)看大量活動(dòng)畫(huà)面,人員易產(chǎn)生視覺(jué)疲勞,導(dǎo)致注意力下降。部分畫(huà)面異?,F(xiàn)象出現(xiàn)時(shí)長(zhǎng)可能不足0.5 s,難以被人眼或監(jiān)看設(shè)備捕捉。如果多個(gè)畫(huà)面異常同時(shí)出現(xiàn),值班人員難以快速準(zhǔn)確判斷故障原因,可能延誤播出故障的及時(shí)處理。同時(shí),傳統(tǒng)監(jiān)聽(tīng)監(jiān)看系統(tǒng)對(duì)系統(tǒng)硬件的要求較高。隨著人工智能技術(shù)的發(fā)展,人工智能技術(shù)為智能化的異態(tài)畫(huà)面檢測(cè)提供了新的思路和方法。
江蘇省廣播電視總臺(tái)研發(fā)了一套廣播電視異態(tài)畫(huà)面檢測(cè)系統(tǒng)和分析系統(tǒng),通過(guò)人工智能圖像識(shí)別技術(shù),實(shí)時(shí)識(shí)別異態(tài)畫(huà)面,提示值班人員關(guān)注播出異常。在研發(fā)過(guò)程中,項(xiàng)目組發(fā)現(xiàn)由于廣播電視節(jié)目畫(huà)面異態(tài)樣本少,用一般方法訓(xùn)練的模型的識(shí)別精度無(wú)法滿(mǎn)足需求。本文通過(guò)分析廣播電視異態(tài)畫(huà)面的故障特征,提出了一種用于電視節(jié)目播出異態(tài)識(shí)別的模型訓(xùn)練方法,解決了樣本量少以及準(zhǔn)確度低的問(wèn)題,提高了圖像識(shí)別的準(zhǔn)確度和識(shí)別速度,得到適用于廣播電視播出應(yīng)用場(chǎng)景的神經(jīng)網(wǎng)絡(luò)模型。
為了使系統(tǒng)可以分辨出異態(tài)畫(huà)面和正常畫(huà)面,并識(shí)別出異態(tài)畫(huà)面具體是哪一類(lèi)異態(tài)畫(huà)面,需要對(duì)異態(tài)特征進(jìn)行分析。常用的圖像特征有顏色特征、紋理特征、形狀特征以及空間關(guān)系特征。然而,人工進(jìn)行圖像特征提取很難做到準(zhǔn)確,也就導(dǎo)致后續(xù)識(shí)別的準(zhǔn)確度不高。人工智能卷積神經(jīng)網(wǎng)絡(luò)(Convolutional Neural Networks,CNN)模型,可實(shí)現(xiàn)每一層神經(jīng)網(wǎng)絡(luò)學(xué)習(xí)不同類(lèi)型的特征,自動(dòng)組合并給出結(jié)果,從而實(shí)現(xiàn)對(duì)圖片的自動(dòng)特征提取與分類(lèi)[1]。
電視播出過(guò)程中可能出現(xiàn)的異態(tài)畫(huà)面一般包括視頻丟失、黑場(chǎng)、單色場(chǎng)、測(cè)試卡及彩條等。在對(duì)LeNet、AlexNet、GoogleNet、ResNet[2]等 經(jīng) 典 神 經(jīng)網(wǎng)絡(luò)架構(gòu)進(jìn)行測(cè)試和比較后,綜合考慮樣本量、網(wǎng)絡(luò)結(jié)構(gòu)以及網(wǎng)絡(luò)深度對(duì)模型訓(xùn)練時(shí)間和精度的影響,本文最終選定Caffe深度學(xué)習(xí)框架和AlexNet神經(jīng)網(wǎng)絡(luò)結(jié)構(gòu),進(jìn)行網(wǎng)絡(luò)調(diào)試和模型訓(xùn)練。
模型訓(xùn)練的流程主要包括數(shù)據(jù)處理、模型參數(shù)調(diào)整、模型訓(xùn)練、數(shù)據(jù)測(cè)試以及模型輸出等。訓(xùn)練流程如圖1所示。
圖1 模型訓(xùn)練流程
具體實(shí)施過(guò)程中,按照廣播電視播出中經(jīng)常出現(xiàn)的異常畫(huà)面進(jìn)行圖像數(shù)據(jù)收集并分類(lèi);對(duì)圖像進(jìn)行尺寸歸一化;再對(duì)圖像進(jìn)行增強(qiáng)操作,如圖像傾斜角度、亮度、對(duì)比度調(diào)整等操作;對(duì)增強(qiáng)后的圖像數(shù)據(jù)創(chuàng)建LMDB數(shù)據(jù)庫(kù);根據(jù)訓(xùn)練環(huán)境定義AlexNet結(jié)構(gòu),設(shè)置輸出分類(lèi)數(shù)量;配置訓(xùn)練過(guò)程參數(shù),優(yōu)化訓(xùn)練速度,防止過(guò)度擬合。具體訓(xùn)練步驟如圖2所示。
圖2 具體訓(xùn)練步驟
模型訓(xùn)練需要收集大量數(shù)據(jù),輸入神經(jīng)網(wǎng)絡(luò)中,通過(guò)不斷調(diào)整網(wǎng)絡(luò)參數(shù),使最終識(shí)別結(jié)果準(zhǔn)確度滿(mǎn)足設(shè)計(jì)需求。現(xiàn)有成熟的圖像識(shí)別數(shù)據(jù)庫(kù)如ImageNet[3],MNIST等,大多是基于數(shù)字、動(dòng)物、植物以及常見(jiàn)物品,而廣播電視異態(tài)圖像并不在通用的圖像識(shí)別數(shù)據(jù)庫(kù)中,數(shù)據(jù)集量也較少,需要自定義數(shù)據(jù)集,并通過(guò)數(shù)據(jù)處理,增加樣本量,以達(dá)到訓(xùn)練要求。
考慮到廣播電視播出的節(jié)目異態(tài)畫(huà)面實(shí)際情況,本文選擇的圖像異態(tài)主要包括彩條(75%,100%)、測(cè)試卡、單色畫(huà)面(黑色、綠色、灰色、白色等)三種類(lèi)型。
原始的圖像數(shù)據(jù)可以從信號(hào)發(fā)生器的測(cè)試信號(hào)中選取。由于大多數(shù)測(cè)試信號(hào)不會(huì)在正常播出時(shí)出現(xiàn),因此僅選取彩條、單色場(chǎng)等信號(hào)。另外一個(gè)圖像收集途徑是通過(guò)互聯(lián)網(wǎng)爬取測(cè)試卡、彩條等圖片,手工刪除不符合的圖片并進(jìn)行分類(lèi),如圖3所示。
圖3 測(cè)試信號(hào)集和網(wǎng)絡(luò)數(shù)據(jù)集
由于本項(xiàng)目的數(shù)據(jù)集比較小,為避免訓(xùn)練過(guò)程中產(chǎn)生過(guò)擬合的情況,導(dǎo)致模型無(wú)法學(xué)習(xí)到樣本的特征從而沒(méi)法進(jìn)行準(zhǔn)確識(shí)別,同時(shí)考慮到本項(xiàng)目所訓(xùn)練的模型是應(yīng)用于攝像頭拍攝的畫(huà)面識(shí)別,攝像頭拍攝畫(huà)面可能存在亮度不均勻、角度傾斜等問(wèn)題,為讓圖像數(shù)據(jù)進(jìn)一步貼近實(shí)際,提高識(shí)別的準(zhǔn)確性,因此需要對(duì)收集的數(shù)據(jù)進(jìn)行增強(qiáng)處理。
圖像增強(qiáng)包括平移、旋轉(zhuǎn)、亮度調(diào)節(jié)等方式[4]。平移是一種幾何變換,它將圖像中每個(gè)對(duì)象的位置映射到最終輸出圖像中的新位置。旋轉(zhuǎn)是將原始的圖像像素在位置空間上做變換??紤]到白天/黑夜不同光線(xiàn)條件,為了消除圖像在不同背景中存在的差異,通過(guò)色彩抖動(dòng)調(diào)整的是圖像的亮度、飽和度和對(duì)比度。經(jīng)過(guò)圖像增強(qiáng)后,圖像數(shù)據(jù)庫(kù)增加到每個(gè)分類(lèi)約1 000張圖片。部分經(jīng)過(guò)增強(qiáng)的圖片如圖4所示。
圖4 圖像增強(qiáng)效果示例
神經(jīng)網(wǎng)絡(luò)模型訓(xùn)練是經(jīng)過(guò)前向傳播計(jì)算損失函數(shù)(loss),描述模型的預(yù)測(cè)值與真實(shí)值之間的差距大小,指導(dǎo)調(diào)整優(yōu)化參數(shù),使模型在訓(xùn)練過(guò)程中朝著收斂的方向前進(jìn),否則可能無(wú)法達(dá)到所需的識(shí)別精度。在數(shù)據(jù)集中,通過(guò)將數(shù)據(jù)集切分為訓(xùn)練集(train)和驗(yàn)證集(val)[5],利用val數(shù)據(jù)來(lái)驗(yàn)證模型是否過(guò)擬合問(wèn)題,并以此來(lái)調(diào)節(jié)訓(xùn)練參數(shù)。
本項(xiàng)目使用的廣播電視播出異態(tài)分類(lèi)數(shù)據(jù)集共有3個(gè)類(lèi)別,分別建立colorbar(彩條)、tvtest(測(cè)試卡)和mono(單色畫(huà)面)三個(gè)圖像數(shù)據(jù)文件夾。樣本的類(lèi)別一般以字符串類(lèi)型的類(lèi)別名區(qū)分,但是對(duì)于神經(jīng)網(wǎng)絡(luò)來(lái)說(shuō),首先需要將類(lèi)別進(jìn)行數(shù)字編碼。colorbar,tvtest和mono分別對(duì)應(yīng)0,1,2的分類(lèi)標(biāo)簽。類(lèi)別名與數(shù)字的映射關(guān)系一旦創(chuàng)建,一般不能變動(dòng)。train和val下的圖片分別生成train.txt和val.txt的標(biāo)簽文件。將圖片和標(biāo)簽生成Caffe框架所需要的LMDB格式數(shù)據(jù)集,就完成了模型訓(xùn)練所需要的數(shù)據(jù)準(zhǔn)備。
AlexNet模型由卷積層和全連接層[6]兩大部分組成。AlexNet的優(yōu)勢(shì)在于網(wǎng)絡(luò)增大(5個(gè)卷積層+3個(gè)全連接層+1個(gè)Softmax層),同時(shí)解決過(guò)擬合問(wèn)題,并且利用多GPU加速計(jì)算。AlexNet模型的深度為8層,卷積層5層,全連接層3層,分類(lèi)數(shù)目有1 000類(lèi)。
為了使神經(jīng)網(wǎng)絡(luò)模型更好地適用于廣播電視播出異態(tài)畫(huà)面數(shù)據(jù)集,需要對(duì)AlexNet模型的網(wǎng)絡(luò)層參數(shù)進(jìn)行調(diào)整。
原模型中輸入的batch_size(批次數(shù))參數(shù)是256,表示該批次輸入圖像為256個(gè)。根據(jù)訓(xùn)練的機(jī)器性能,將batch數(shù)目往下調(diào)到64,以免產(chǎn)生內(nèi)存溢出的錯(cuò)誤。但是由于batch_size比較小,樣本覆蓋面過(guò)低,產(chǎn)生了非常多的局部極小點(diǎn),在步長(zhǎng)和方向的共同作用下,數(shù)據(jù)產(chǎn)生震蕩,導(dǎo)致不收斂。因此,需要調(diào)節(jié)其他的參數(shù)來(lái)保證數(shù)據(jù)的收斂。在這種情況下,把learning rate(學(xué)習(xí)率)調(diào)節(jié)到0.02,相當(dāng)于加大了步長(zhǎng),這樣可以在一定程度上避免震蕩,圖5所示為經(jīng)過(guò)調(diào)整文件內(nèi)容。
圖5 部分模型參數(shù)調(diào)整
參數(shù)調(diào)整后,通過(guò)Caffe框架進(jìn)行模型訓(xùn)練。通過(guò)設(shè)置總訓(xùn)練輪次和斷點(diǎn)優(yōu)化訓(xùn)練過(guò)程。本項(xiàng)目每訓(xùn)練100輪,模型就會(huì)被保存一次。經(jīng)過(guò)對(duì)模型的loss曲線(xiàn)查看,可以發(fā)現(xiàn)模型訓(xùn)練速度很快,損失函數(shù)逐步下降而收斂,100次左右就降到了很低的地方,因此訓(xùn)練200輪次就可以得到適合的模型。最終訓(xùn)練生成的caffe_alexnet_train_iter_200.caffemodel模型,其Loss曲線(xiàn)如圖6所示。
圖6 損失函數(shù)曲線(xiàn)
模型訓(xùn)練好后,通過(guò)OpenCV調(diào)用模型,對(duì)圖片進(jìn)行分類(lèi)預(yù)測(cè),以驗(yàn)證模型識(shí)別的準(zhǔn)確性。圖7為輸入一張實(shí)際的機(jī)房監(jiān)看畫(huà)面,預(yù)測(cè)為tvtest(測(cè)試卡)的可能性達(dá)到99.99%,預(yù)測(cè)準(zhǔn)確。
圖7 彩條預(yù)測(cè)效果
對(duì)于攝像頭拍攝的視頻,通過(guò)對(duì)視頻中每一幀畫(huà)面進(jìn)行檢測(cè),即可得到檢測(cè)結(jié)果。經(jīng)過(guò)測(cè)試,該模型對(duì)測(cè)試集數(shù)據(jù)中的異態(tài)畫(huà)面識(shí)別精度超過(guò)97%,實(shí)際應(yīng)用中,對(duì)彩條、測(cè)試卡以及單色畫(huà)面等三類(lèi)異態(tài)畫(huà)面的識(shí)別準(zhǔn)確度達(dá)到90%以上。
通過(guò)本文方法訓(xùn)練得到的廣播電視節(jié)目異態(tài)識(shí)別模型,在廣播電視異態(tài)畫(huà)面檢測(cè)和分析系統(tǒng)中得到了較好的應(yīng)用。在實(shí)際使用中,通過(guò)機(jī)房攝像頭/碼流采集板卡等實(shí)時(shí)采集電視播出監(jiān)看視頻,系統(tǒng)可實(shí)時(shí)、準(zhǔn)確地識(shí)別出異態(tài)畫(huà)面,并標(biāo)注異態(tài)信息,提示值班人員關(guān)注播出異常。在此基礎(chǔ)上,通過(guò)對(duì)異態(tài)數(shù)據(jù)的智能分析、異態(tài)碼流精準(zhǔn)定位回看,系統(tǒng)能給出智能決策分析,輔助值班人員全面、高效、準(zhǔn)確地掌握安播運(yùn)行狀態(tài),以較低成本解決安全播出監(jiān)看全面性、準(zhǔn)確性和可靠性問(wèn)題。