石 旭,李 輝,李心怡,姚世嚴(yán),李天宇,鄭劍飛
(北京軌道交通路網(wǎng)管理有限公司,北京 100101)
人工智能技術(shù)在安防、金融等諸多行業(yè)已經(jīng)有了較為廣泛的應(yīng)用,但是通過(guò)深入調(diào)研分析,伴隨應(yīng)用場(chǎng)景的差異化,其所能夠選用的算法也是千差萬(wàn)別的,而且同樣的算法可能在軌交行業(yè)精準(zhǔn)度大幅下降,難以滿足業(yè)務(wù)需求。因此,軌道交通行業(yè)在引入人工智能技術(shù)的過(guò)程中,絕不能簡(jiǎn)單地一蹴而就,需要做好充分準(zhǔn)備,針對(duì)自身行業(yè)特性,對(duì)所選用的各類智慧化方案核心算法加以改造、優(yōu)化,以便更加契合實(shí)際應(yīng)用場(chǎng)景,從而實(shí)現(xiàn)精度、成本和穩(wěn)定性達(dá)到行業(yè)應(yīng)用水平的目標(biāo)?;诋?dāng)前智能視頻分析算法精準(zhǔn)度普遍難以滿足應(yīng)用要求的現(xiàn)狀,為此,本文提出了一種針對(duì)軌道交通行業(yè)大客流環(huán)境的新型目標(biāo)檢測(cè)算法。
目標(biāo)檢測(cè)是一種計(jì)算機(jī)視覺(jué)技術(shù),它使我們能夠?qū)⒁曨l中的對(duì)象進(jìn)行識(shí)別和定位。通過(guò)這種識(shí)別和定位,目標(biāo)檢測(cè)可用于計(jì)算場(chǎng)景中的對(duì)象并確定、跟蹤它們的精確位置,同時(shí)準(zhǔn)確地標(biāo)記它們[1]。在視頻圖像分析研究中,核心問(wèn)題包括運(yùn)動(dòng)目標(biāo)檢測(cè)、目標(biāo)跟蹤、圖像分割與行為理解。而目標(biāo)檢測(cè)算法是其中最為基礎(chǔ)、最重要的算法,其存在是為了解決計(jì)算機(jī)視覺(jué)里的一個(gè)最基本任務(wù),那就是我們感興趣的目標(biāo)在圖像中的什么位置。
目前,業(yè)界比較通用的檢測(cè)模型可分為兩階段模型(two-stage)和單階段模型(one-stage)兩類。兩階段檢測(cè)模型精度高而耗時(shí)長(zhǎng),往往對(duì)硬件配置的需求高,且難以做到實(shí)時(shí)檢測(cè),在實(shí)際項(xiàng)目中無(wú)法規(guī)?;瘧?yīng)用。單階段模型選擇犧牲一定的精度,換取速度上的大幅提升。就單階段模型而言,在一些復(fù)雜場(chǎng)景下,由于目標(biāo)尺寸分布廣泛,如果骨干網(wǎng)絡(luò)過(guò)淺,檢測(cè)網(wǎng)絡(luò)設(shè)計(jì)又過(guò)于簡(jiǎn)單,參數(shù)利用不充分,就會(huì)導(dǎo)致目標(biāo)特征信息提取不到位,從而導(dǎo)致檢出困難,誤檢多;反之,如果骨干網(wǎng)絡(luò)過(guò)深,檢測(cè)網(wǎng)絡(luò)較為復(fù)雜,又會(huì)導(dǎo)致模型速度過(guò)慢,無(wú)法做到實(shí)時(shí)檢測(cè),也就失去了應(yīng)用價(jià)值。
正是鑒于目標(biāo)檢測(cè)算法的這種基礎(chǔ)性地位,我們選取了一部分廠商的現(xiàn)有算法來(lái)進(jìn)行有針對(duì)性測(cè)試,進(jìn)而發(fā)現(xiàn)在面對(duì)軌道交通行業(yè)的大客流、遠(yuǎn)視角的特有環(huán)境條件時(shí),現(xiàn)有算法均存在一定概率的漏檢和誤檢,無(wú)法滿足正式使用要求。對(duì)于這些現(xiàn)有技術(shù)的不足之處,以更加適應(yīng)軌道交通行業(yè)的特有環(huán)境為出發(fā)點(diǎn),基于單階段檢測(cè)網(wǎng)絡(luò)進(jìn)行了以下改進(jìn),從而解決上述這些技術(shù)問(wèn)題。
(1)提出了一個(gè)由20層卷積神經(jīng)架構(gòu)組成的骨干網(wǎng)絡(luò)。
(2)檢測(cè)網(wǎng)絡(luò)部分采用特征金字塔的思想,對(duì)骨干網(wǎng)絡(luò)最后一層的輸出進(jìn)行兩次上采樣,從而獲取到3個(gè)尺度的特征圖,同時(shí)將深層語(yǔ)義信息和淺層輪廓信息進(jìn)行特征融合,并分別在3個(gè)尺度的特征圖上對(duì)不同尺度的目標(biāo)進(jìn)行檢測(cè)。
依據(jù)目標(biāo)檢測(cè)算法改進(jìn)思路,本文提出了一種新型目標(biāo)檢測(cè)算法,核心模塊由兩個(gè)網(wǎng)絡(luò)組成。
(1)20層的骨干網(wǎng)絡(luò):該骨干網(wǎng)絡(luò)全部由卷積構(gòu)成,由尺寸為3×3、步長(zhǎng)為2的卷積完成圖像的下采樣,總共對(duì)圖像進(jìn)行了6次下采樣。
(2)檢測(cè)網(wǎng)絡(luò):我們參考了FPN金字塔結(jié)構(gòu),對(duì)最后一個(gè)尺度的特征圖進(jìn)行兩次上采樣(upsample),并且利用通道數(shù)拼接(concat)的方式來(lái)融合對(duì)應(yīng)尺寸的淺層特征信息(backbone feature map),然后再對(duì)其進(jìn)行一次特征提取,來(lái)進(jìn)行檢測(cè)校驗(yàn)。
新型目標(biāo)檢測(cè)算法利用以下步驟,都能夠以一定的精度將視頻中的目標(biāo)物體進(jìn)行定位和識(shí)別[2]。
第一步,準(zhǔn)備模型訓(xùn)練所需要的圖片及其對(duì)應(yīng)的預(yù)標(biāo)注文件。在預(yù)標(biāo)注文件里標(biāo)注的是待檢測(cè)目標(biāo)的最小外接框(x,y,w,h),其中,x表示標(biāo)注框中心點(diǎn)的橫坐標(biāo),y表示標(biāo)注框中心點(diǎn)的縱坐標(biāo),w表示標(biāo)注框?qū)?,h表示標(biāo)注框高。
第二步,開(kāi)始設(shè)定每張尺度特征圖上所使用的錨框(anchor)個(gè)數(shù)。為了保證模型訓(xùn)練的效果,即精度與速度達(dá)到預(yù)先想要的平衡,我們需要在每張尺度特征圖上選取3個(gè)尺寸的錨框。因此,在上述模型中一共需要使用三個(gè)尺度的特征圖,每個(gè)尺度的特征圖上使用3個(gè)錨框,錨框總數(shù)為9。在下述過(guò)程中,我們會(huì)默認(rèn)每個(gè)尺度的特征圖上都使用3個(gè)尺寸的錨框[3]。
第三步,要對(duì)訓(xùn)練集中的標(biāo)注框分別按照尺寸進(jìn)行聚類,聚類的簇?cái)?shù)與錨框總個(gè)數(shù)一致,采用聚類得到的結(jié)果來(lái)做為錨框尺寸。其可視化說(shuō)明如圖1所示。
圖1 關(guān)于步驟三的可視化說(shuō)明
第四步,設(shè)置網(wǎng)絡(luò)檢測(cè)層所要輸出的通道數(shù),通道數(shù)用C_out來(lái)表示:
C_out=(num_cls+4+1)×num_anchor (1)式中,num_cls表示待測(cè)類別數(shù)量;num_anchor表示每個(gè)尺度的特征圖上所選用的錨框個(gè)數(shù)(例如,在步驟二的前提下,num_anchor=3);4表示預(yù)測(cè)框中的4個(gè)位置坐標(biāo)信息;1表示1個(gè)用于判定正負(fù)樣本的參數(shù)。
第五步,設(shè)定負(fù)樣本的判別閾值。在我們所研究的這個(gè)模型下,為了確保模型能夠有較高的召回率,選取了預(yù)測(cè)框與真實(shí)值(ground truth)IoU≥0.3的預(yù)測(cè)框來(lái)作為正樣本保留,其余預(yù)測(cè)樣本作為負(fù)樣本,后續(xù)不參與分類損失的計(jì)算。
第六步,對(duì)我們所構(gòu)建的這個(gè)卷積神經(jīng)網(wǎng)絡(luò)進(jìn)行規(guī)?;瘶颖居?xùn)練,保存最終模型及參數(shù)。
第七步,隨機(jī)準(zhǔn)備一張待檢測(cè)的圖片,加載進(jìn)入我們已經(jīng)訓(xùn)練完成的卷積神經(jīng)網(wǎng)絡(luò)模型,通過(guò)對(duì)所得出的檢測(cè)結(jié)果進(jìn)行驗(yàn)證,評(píng)價(jià)該模型可靠性。
目標(biāo)檢測(cè)的目的是定位和分類視頻圖像中的現(xiàn)有目標(biāo),并用矩形邊界框?qū)ζ溥M(jìn)行標(biāo)記,以顯示存在的可信度。一種方法遵循傳統(tǒng)的目標(biāo)檢測(cè)管道,首先生成區(qū)域建議,然后將每個(gè)建議分類為不同的對(duì)象類別。另一種方法是將目標(biāo)檢測(cè)視為一個(gè)回歸或分類問(wèn)題,采用統(tǒng)一的框架直接獲得最終結(jié)果(類別和位置)[4]?;趨^(qū)域建議的方法主要包括R-CNN、R-FCN、Fast R-CNN、Faster R-CNN、SPP-net、FPN和Mask R-CNN,其中一些方法相互關(guān)聯(lián),如SPP-net使用SPP層修改RCNN[5]。基于回歸或分類的方法主要包括MultiBox、G-CNN、AttentionNet、YOLO、SSD、YOLOv2、DSSD和DSOD[6]。
相比以往目標(biāo)檢測(cè)算法,新型目標(biāo)檢測(cè)算法將在以下3個(gè)方面有明顯提升。
(1)設(shè)計(jì)的20層卷積神經(jīng)架構(gòu)參數(shù)量少,在利用feature extra block模塊降低參數(shù)量的同時(shí),還能加深網(wǎng)絡(luò)深度,從而使得網(wǎng)絡(luò)對(duì)圖像中所需要關(guān)注的特征提取更加充分[7]。相比較于通常的下采樣方式,選用步長(zhǎng)為2的卷積來(lái)完成下采樣工作(pooling),能夠在擴(kuò)大感受野的同時(shí),提取更多有效特征信息。
(2)在檢測(cè)網(wǎng)絡(luò)部分,分別在3個(gè)尺度的特征圖上做檢測(cè),其中大特征圖感受野小,用于對(duì)應(yīng)小目標(biāo),而小特征圖感受野大,用于對(duì)應(yīng)大目標(biāo)。采用這種方式使得模型對(duì)于尺度、比例分布廣的目標(biāo)具備更強(qiáng)的魯棒性。除此之外,通過(guò)淺層網(wǎng)絡(luò)提取出來(lái)的特征更多是作為物體的邊緣以及輪廓相關(guān)信息,而深層網(wǎng)絡(luò)提取的特征則多作為物體的語(yǔ)義信息。隨著網(wǎng)絡(luò)的不斷加深、感受野的加大,這就會(huì)導(dǎo)致一些小目標(biāo)的語(yǔ)義信息丟失,通過(guò)將深層語(yǔ)義信息與淺層輪廓信息相結(jié)合的方式,可以相對(duì)提升圖像中小目標(biāo)的檢測(cè)效果。
(3)由于整體上需要定義的參數(shù)量很少,能夠在確保精度的同時(shí),大幅地提升檢測(cè)速度,使FPS能夠達(dá)到130以上,完全滿足實(shí)時(shí)視頻監(jiān)控系統(tǒng)的應(yīng)用需求。
首先,該算法模型在搭建之初就是完全按照軌道交通行業(yè)特有的環(huán)境條件來(lái)進(jìn)行設(shè)計(jì)的,在訓(xùn)練過(guò)程中所使用的數(shù)據(jù)也全部基于線路、站廳及車輛等環(huán)境中現(xiàn)有視頻監(jiān)控系統(tǒng)來(lái)進(jìn)行采集。這使得該模型對(duì)于軌道交通行業(yè)業(yè)務(wù)場(chǎng)景的適配性非常強(qiáng),能夠有效實(shí)現(xiàn)場(chǎng)景中所需各類目標(biāo)的檢測(cè),從而為進(jìn)一步進(jìn)行數(shù)據(jù)分析奠定了良好基礎(chǔ)[8]。例如,當(dāng)使用在對(duì)換乘通道人員密度、流向等進(jìn)行分析的場(chǎng)景中時(shí),由于該檢測(cè)網(wǎng)絡(luò)模型能夠很好地識(shí)別圖片中出現(xiàn)的各種尺寸的目標(biāo),尤其是小目標(biāo),就可以更為準(zhǔn)確地檢測(cè)出大客流、遠(yuǎn)視角情況下,每一幀圖像中的頭肩數(shù)。
其次,該算法模型性能優(yōu)越,能夠快速完成在單幀圖像中對(duì)目標(biāo)內(nèi)容的檢測(cè),F(xiàn)PS≥130的幀率已覆蓋并超越軌道交通行業(yè)現(xiàn)有視頻監(jiān)控系統(tǒng)全部前端采集設(shè)備的標(biāo)準(zhǔn)幀率[9]。在上述例子中,通過(guò)這種高速檢測(cè),我們可以獲取視頻每一幀畫面內(nèi)所需要關(guān)注的目標(biāo),并通過(guò)數(shù)據(jù)分析手段,判斷出每一個(gè)單獨(dú)目標(biāo)的運(yùn)行軌跡及運(yùn)動(dòng)趨勢(shì),從而明確了解到該監(jiān)測(cè)環(huán)境下的乘客走向,為精準(zhǔn)導(dǎo)流的實(shí)現(xiàn)奠定了技術(shù)基礎(chǔ)。
最后,基于該算法模型簡(jiǎn)單的結(jié)構(gòu)以及更少的參數(shù)量,其對(duì)于硬件資源的消耗也較為友好,使得以邊緣計(jì)算形式進(jìn)行利用成為可能,這既符合行業(yè)發(fā)展大方向,又能夠有效節(jié)約各類改造項(xiàng)目中的資源需求。
得益于近兩年云計(jì)算、物聯(lián)網(wǎng)、大數(shù)據(jù)等先進(jìn)技術(shù)的發(fā)展和成熟,智能視頻監(jiān)控獲得了強(qiáng)有力的技術(shù)支撐,未來(lái)視頻監(jiān)控系統(tǒng)將從根本上改變信息采集、視頻傳輸處理、系統(tǒng)控制的方式和結(jié)構(gòu)形式,有效提高視頻監(jiān)控的智能化程度和使用價(jià)值。
本文通過(guò)分析智能視頻分析技術(shù)中最基礎(chǔ)、最核心的目標(biāo)檢測(cè)算法的技術(shù)現(xiàn)狀,結(jié)合軌道交通行業(yè)特定的應(yīng)用需求和場(chǎng)景,提出一個(gè)適應(yīng)軌交行業(yè)大客流環(huán)境的新型目標(biāo)檢測(cè)算法的技術(shù)思路,力爭(zhēng)解決智能視頻分析技術(shù)在軌道交通行業(yè)落地難的難題。后續(xù),我們將深入研究各個(gè)應(yīng)用場(chǎng)景的業(yè)務(wù)需求,在算法設(shè)計(jì)和研發(fā)過(guò)程中,根據(jù)測(cè)試效果對(duì)新型目標(biāo)檢測(cè)算法的技術(shù)思路進(jìn)行驗(yàn)證和優(yōu)化,為后續(xù)試點(diǎn)應(yīng)用奠定堅(jiān)實(shí)的技術(shù)基礎(chǔ),為“智慧地鐵”的建設(shè)提供有力支撐?!?/p>