劉貴陽(yáng),李盛陽(yáng),邵雨陽(yáng)
1(中國(guó)科學(xué)院大學(xué),北京 100049)
2(中國(guó)科學(xué)院 太空應(yīng)用重點(diǎn)實(shí)驗(yàn)室,北京 100094)
3(中國(guó)科學(xué)院 空間應(yīng)用工程與技術(shù)中心,北京 100094)
隨著我國(guó)空間技術(shù)的不斷發(fā)展,在視頻衛(wèi)星技術(shù)領(lǐng)域取得了長(zhǎng)足的進(jìn)步.在2015年10月,我國(guó)第一套自主研發(fā)的商用視頻衛(wèi)星“吉林一號(hào)”成功發(fā)射,其光學(xué)載荷對(duì)地成像的全色分辨率達(dá)到0.72米,成為我國(guó)首顆米級(jí)高清動(dòng)態(tài)視頻衛(wèi)星.衛(wèi)星獲取的對(duì)地凝視數(shù)據(jù)可對(duì)工業(yè)、農(nóng)業(yè)、交通等領(lǐng)域提供很多的基礎(chǔ)應(yīng)用[1].針對(duì)于衛(wèi)星視頻數(shù)據(jù),其中也存在著分辨率較低,畫(huà)面抖動(dòng),圖像周邊畸變較為嚴(yán)重等問(wèn)題[2].這些問(wèn)題都對(duì)大場(chǎng)景中目標(biāo)的快速檢測(cè)帶來(lái)較大的影響.但同時(shí)針對(duì)視頻相鄰圖像幀之間的信息的互補(bǔ)特征也給算法設(shè)計(jì)提供了很多新穎的思路.
隨著大數(shù)據(jù)和云計(jì)算的不斷發(fā)展,深度學(xué)習(xí)技術(shù)得到了長(zhǎng)足的發(fā)展,視覺(jué)領(lǐng)域的機(jī)器學(xué)習(xí)模型不斷挑戰(zhàn)著人類在目標(biāo)識(shí)別和目標(biāo)檢測(cè)領(lǐng)域的能力[3].在目標(biāo)分類領(lǐng)域,從 AlxeNet[4]、VGG[5]到 InceptionX[6]、ResNet[7],模型的深度不斷加深,但是運(yùn)算速度不斷加快; 在目標(biāo)檢測(cè)領(lǐng)域,從傳統(tǒng)的滑動(dòng)窗技術(shù)到二階段檢測(cè)框架 RCNN[8]、Fast RCNN[9]、Faster RCNN[10]、SPPNet[11]、RPN[12],再到單階段檢測(cè)框架YOLO[13]、SSD[14],檢測(cè)的準(zhǔn)確率和檢測(cè)效率也在不斷的提高.但是,深度學(xué)習(xí)存在需要目標(biāo)的樣本量巨大,且需要很大的計(jì)算量這兩個(gè)問(wèn)題,而在視頻衛(wèi)星數(shù)據(jù)中缺少大量對(duì)于特定目標(biāo)的標(biāo)注數(shù)據(jù),要想利用深度學(xué)習(xí)技術(shù)解決視頻衛(wèi)星中目標(biāo)檢測(cè)問(wèn)題問(wèn)題,目前必須另辟蹊徑.Tianshu Yu和Ruisheng Wang等在2016年使用圖像數(shù)據(jù)和雷達(dá)點(diǎn)云數(shù)據(jù),同時(shí)輔助使用部分地理信息數(shù)據(jù)(GIS)通過(guò)改進(jìn)圖匹配技術(shù)較好的實(shí)現(xiàn)了街景數(shù)據(jù)中的場(chǎng)景解析[15],雖然可以引入GIS信息進(jìn)行遙感圖像場(chǎng)景匹配之后在對(duì)感興趣區(qū)域進(jìn)行檢測(cè),但融合GIS數(shù)據(jù)本身復(fù)雜度較高且場(chǎng)景中目標(biāo)隨機(jī)存在,并不能較好的提高檢測(cè)效率和準(zhǔn)確率.
本文主要使用改進(jìn)的YOLO[13]模型和內(nèi)容一致性檢測(cè)模型,利用視頻數(shù)據(jù)中相鄰幀之間內(nèi)容的相似性降低精確檢測(cè)的次數(shù),通過(guò)內(nèi)容一致性判斷確定當(dāng)前幀是否需要再檢測(cè)的思路,在保證檢測(cè)精度的前提下,提高了視頻數(shù)據(jù)的檢測(cè)效率.
目前,已有的目標(biāo)檢測(cè)模型分為兩大類: 兩階段檢測(cè)網(wǎng)絡(luò)Fast RCNN[9]、Faster RCNN[10]和單階段檢測(cè)網(wǎng)絡(luò)YOLO[13]、SSD[14].兩階段檢測(cè)網(wǎng)絡(luò)訓(xùn)練流程復(fù)雜,且檢測(cè)效率較低,而單階段網(wǎng)絡(luò)檢測(cè)網(wǎng)絡(luò)雖然速度較快但是檢測(cè)的準(zhǔn)確率略低.本論文主要改進(jìn)YOLO[13]模型,在保證檢測(cè)效率的前提下,提高檢測(cè)準(zhǔn)確率.
原始的YOLO[13]模型的設(shè)計(jì)主要是針對(duì)自然場(chǎng)景中的目標(biāo)檢測(cè)和識(shí)別任務(wù),自然場(chǎng)景中目標(biāo)一般占據(jù)圖像的主體,且目標(biāo)紋理較清晰,因此模型在設(shè)計(jì)時(shí)卷積核一般選擇成7×7和3×3大小,并且經(jīng)過(guò)不斷的下采樣將最后的卷積特征圖固定為7×7這個(gè)尺寸,將原始圖像的尺寸(448×448)在寬和高的方向上同時(shí)各自縮小了64倍.在紋理信息豐富的數(shù)據(jù)集中可以提高計(jì)算效率,但是對(duì)于分辨率不高且經(jīng)過(guò)壓縮的衛(wèi)星視頻數(shù)據(jù)來(lái)說(shuō)這會(huì)丟失大量目標(biāo)的重要特征.因此,如何對(duì)圖像做分割,如何設(shè)計(jì)可以增強(qiáng)小目標(biāo)特征信息的基礎(chǔ)網(wǎng)絡(luò)就變得至關(guān)重要.
由于衛(wèi)星圖像具有低分辨率、視野廣的特點(diǎn),圖像中的目標(biāo)會(huì)變的小且很模糊[1].若繼續(xù)按照原始模型的網(wǎng)格劃分,會(huì)導(dǎo)致多個(gè)目標(biāo)在相同的網(wǎng)格中,導(dǎo)致模型檢測(cè)任務(wù)失敗.
對(duì)于現(xiàn)有的視頻衛(wèi)星數(shù)據(jù),先對(duì)圖像中標(biāo)注的目標(biāo)的寬和高進(jìn)行分別統(tǒng)計(jì),判斷目標(biāo)在尺度上的分布,進(jìn)而指導(dǎo)圖像網(wǎng)格化策略: (1) 網(wǎng)格劃分的粒度以不能同時(shí)包含任意兩個(gè)或者多個(gè)目標(biāo)為最佳; (2) 網(wǎng)格劃分的粒度不宜過(guò)密,否則會(huì)導(dǎo)致全聯(lián)接層參數(shù)量爆炸,模型難以學(xué)習(xí); (3) 多尺度網(wǎng)格劃分時(shí),不同尺度網(wǎng)格之間信息需要互補(bǔ).
統(tǒng)計(jì)目標(biāo)的寬和高的分布情況,繪制分布散點(diǎn)圖如下圖所示.根據(jù)圖中可以得出,目標(biāo)寬和高的分布近似一致,主體分布在30~60像素,且目標(biāo)飛機(jī)的寬和高的比例近似在1:1.
圖1 羅馬·菲烏米奇諾機(jī)場(chǎng)圖像飛機(jī)尺寸分布圖
根據(jù)以上統(tǒng)計(jì)結(jié)果分析可以將圖像(512×512)網(wǎng)格化為13×13大小,但是圖像中目標(biāo)的分布是隨機(jī),當(dāng)兩個(gè)目標(biāo)按照一定的角度相鄰時(shí),13×13的網(wǎng)格并不能很好的圈住某目標(biāo); 當(dāng)目標(biāo)恰好被某個(gè)網(wǎng)絡(luò)恰好分割成1/4時(shí)由于YOLO模型的機(jī)制不能很順利的檢測(cè)到目標(biāo),因此根據(jù)上述的指導(dǎo)規(guī)則(2),擬采用更小的尺度16×16對(duì)目標(biāo)進(jìn)行網(wǎng)格化.對(duì)于16×16的網(wǎng)格化的特征圖中每個(gè)單元的感受野較少,圖像的分辨率僅有0.72米,因此,再設(shè)計(jì)一層較大感受野的網(wǎng)格層,使其可以較好的和16×16的細(xì)網(wǎng)格做檢測(cè)的融合,采用9×9網(wǎng)格去分割圖像,該設(shè)計(jì)也符合規(guī)則(3),將這兩種網(wǎng)格化配合使用可以提高目標(biāo)檢測(cè)的準(zhǔn)確率.
圖2 圖像的網(wǎng)格化策略示意圖
YOLO目標(biāo)檢測(cè)模型反復(fù)使用卷積操作和最大池化操作將448×448的圖像采樣到7×7的特征圖,這種操作在衛(wèi)星數(shù)據(jù)中并不能起到好作用,批量的降采樣導(dǎo)致目標(biāo)的上下文信息損失的很厲害,對(duì)于小目標(biāo)的識(shí)別效果并不是很好[16],且在視頻數(shù)據(jù)中,每一幀圖像都是經(jīng)過(guò)視頻壓縮編碼處理之后,單幀圖像會(huì)變得很模糊,更加不利于這種采樣方式.
在2015年,何凱明等人[7]提出殘差網(wǎng)絡(luò)模型,不僅可以訓(xùn)練更深的網(wǎng)絡(luò)模型,還將底層卷積特征跨層傳輸?shù)缴蠈?更加有利于目標(biāo)的分類; 在2016年,清華大學(xué)人工智能實(shí)驗(yàn)室提出HyerNet結(jié)構(gòu)[12],證明利用反卷積[17]構(gòu)造出來(lái)的超參卷積層對(duì)小目標(biāo)的檢測(cè)有更好的效果; 在2017年,康奈爾大學(xué)、清華大學(xué)、Facebook人工智能研究院聯(lián)合發(fā)表了DenseNet網(wǎng)絡(luò)結(jié)構(gòu)[18],不僅有效的解決了梯度消失問(wèn)題,同時(shí)也強(qiáng)化了特征的傳播和特征的重用.
圖3 反卷積操作示意圖
本文采用跨層連接和反卷積操作整合出不同尺度的超參特征立方體,在不同尺度上強(qiáng)化小目標(biāo)的細(xì)節(jié)特征,具體的設(shè)計(jì)結(jié)構(gòu)如圖4所示.其中網(wǎng)絡(luò)的輸入尺寸是512×512,經(jīng)過(guò)卷積層和池化層之后將尺寸變換到16×16,在經(jīng)過(guò)卷積操作和池化操作之后得到4×4的特征圖,之后對(duì)該層數(shù)據(jù)進(jìn)行反卷積操作得到和C5相同尺寸(9×9)的特征圖DC5,然后通過(guò)對(duì)這兩層特征做連接后進(jìn)行反卷積變化得到特征圖DC4,同理得到特征圖DP3.其中符號(hào)P的含義是該層特征數(shù)據(jù)來(lái)自池化操作,C的含義是該層特征數(shù)據(jù)來(lái)自卷積操作,D的含義是該層特征數(shù)據(jù)來(lái)自反卷積操作.
圖4 部分反卷積網(wǎng)絡(luò)結(jié)構(gòu)示意圖
針對(duì)衛(wèi)星視頻數(shù)據(jù)而言,視頻場(chǎng)景很大,雖然地物場(chǎng)景復(fù)雜,但是整體內(nèi)容的一致性較高,場(chǎng)景中的目標(biāo)運(yùn)動(dòng)相對(duì)在地面觀察來(lái)說(shuō)運(yùn)動(dòng)較慢[19].利用數(shù)據(jù)的這一特點(diǎn),本論文以孿生網(wǎng)絡(luò)為主體,設(shè)計(jì)出內(nèi)容一致性檢測(cè)網(wǎng)絡(luò),跳過(guò)部分圖像幀的檢測(cè),提高檢測(cè)的效率.
孿生網(wǎng)絡(luò)(Siamese Network)是一種相似性度量網(wǎng)絡(luò),核心思想是通過(guò)一組變換將輸入數(shù)據(jù)映射到目標(biāo)空間,在目標(biāo)空間使用簡(jiǎn)單的距離度量進(jìn)行相似度比較[20].算法主要關(guān)注連續(xù)圖像序列中相鄰的圖像內(nèi)容的差異,如何定義內(nèi)容差異程度,如何對(duì)序列圖像做標(biāo)注等這些問(wèn)題都會(huì)直接影響判別的結(jié)果.主動(dòng)拍攝視頻數(shù)據(jù)大致分為固定鏡頭拍攝和運(yùn)動(dòng)鏡頭拍攝.在固定鏡頭拍攝情況下,往往更關(guān)注視野中內(nèi)容的變化,需要對(duì)相鄰幀圖像之間做判斷; 在運(yùn)動(dòng)鏡頭拍攝情況下,需要同時(shí)兼顧視野內(nèi)場(chǎng)景的變化和場(chǎng)景內(nèi)目標(biāo)的變化,這種變化往往來(lái)自場(chǎng)景的漸變和突變,這時(shí)需要假定出關(guān)鍵幀圖像,不斷的跟關(guān)鍵幀之間對(duì)比差異來(lái)判斷內(nèi)容的一致性.本問(wèn)題中衛(wèi)星相對(duì)所拍攝的區(qū)域做凝視拍攝,可以類比為攝像頭相對(duì)目標(biāo)場(chǎng)景靜止,但是鏡頭本身需要根據(jù)軌道衛(wèi)星的狀態(tài)做相對(duì)運(yùn)動(dòng),因此也會(huì)干擾到成像區(qū)域.
實(shí)驗(yàn)對(duì)象是四段時(shí)間為30秒的“吉林一號(hào)”衛(wèi)星視頻數(shù)據(jù)[21],視頻中每幀圖像的尺寸為4096×3072,將每一幀圖像按照8×6的比例進(jìn)行分割,使得每個(gè)區(qū)域的尺寸為512×512.針對(duì)每段視頻中相同的區(qū)域按照給定的規(guī)則進(jìn)行標(biāo)注: 當(dāng)前幀圖像中的每個(gè)目標(biāo)和前一幀中對(duì)應(yīng)的每個(gè)目標(biāo)之間有位置的重合,則判定這兩幀圖像的內(nèi)容是一致的,否則內(nèi)容不一致.圖5中當(dāng)前幀中有四個(gè)標(biāo)注目標(biāo),分別用四個(gè)色塊進(jìn)行表示,圖(b),(c),(d)分別表示下一幀圖像內(nèi)容,實(shí)心色塊表示目標(biāo)在當(dāng)前幀的位置,不同顏色的虛線表示圖(a)中相應(yīng)目標(biāo)的位置.其中圖(a)與(b)幀中內(nèi)容標(biāo)記為一致,圖(a)與(c)、(a)與(d)幀中內(nèi)容均標(biāo)記為不一致.
圖5 內(nèi)容一致判別標(biāo)注示意圖
具體的網(wǎng)絡(luò)結(jié)構(gòu)設(shè)計(jì)如圖6,其中卷積網(wǎng)絡(luò)是共用參數(shù),將兩幀圖像輸入到網(wǎng)絡(luò)中,得到相同維度的全連接層輸出的特征,根據(jù)標(biāo)簽信息去學(xué)習(xí)特征之間的相似性度量.其中,網(wǎng)絡(luò)的主體部分的參數(shù)是共享的,通過(guò)不同的輸入圖像,得到在相同變換空間的特征,再進(jìn)行分類判別.
圖6 內(nèi)容一致性判別網(wǎng)絡(luò)結(jié)構(gòu)示意圖
具備了對(duì)單幀圖像的精細(xì)檢測(cè)能力,也具備了對(duì)于兩幅圖像內(nèi)容一致性的判斷能力,通過(guò)這兩個(gè)功能的配合使用,本文設(shè)計(jì)出整體檢測(cè)流程,如圖7.
圖7 檢測(cè)系統(tǒng)流程示意圖
系統(tǒng)分為四大部分: 圖像切割和圖像增強(qiáng)、內(nèi)容一致性判別網(wǎng)絡(luò)、局部目標(biāo)搜索模塊、神經(jīng)網(wǎng)絡(luò)檢測(cè)模塊.每幀圖像按照512×512的尺寸進(jìn)行切割,得到48張小圖像,然后對(duì)這些圖像進(jìn)行增強(qiáng)變換,鏡像、裁減、形變、擴(kuò)張這些操作按照一定的概率作用在每張圖像上,具體的流程如圖8所示.接著將當(dāng)前幀圖像和關(guān)鍵幀(最近一次使用檢測(cè)網(wǎng)絡(luò)檢測(cè)的圖像)進(jìn)行內(nèi)容一致性檢測(cè),根據(jù)判斷結(jié)果分別進(jìn)行局部目標(biāo)搜索和目標(biāo)檢測(cè)網(wǎng)絡(luò).其中局部目標(biāo)搜索,主要以關(guān)鍵幀中目標(biāo)的位置為核心,按照檢測(cè)出目標(biāo)的尺度在周邊進(jìn)行查找.
圖8 圖像增強(qiáng)示意圖
本實(shí)驗(yàn)中共有四段標(biāo)記數(shù)據(jù),分別是意大利·菲烏米奇諾機(jī)場(chǎng)、印度·英迪拉·甘地國(guó)際機(jī)場(chǎng)、美國(guó)·明尼阿波利斯·圣保羅國(guó)際機(jī)場(chǎng)、突尼斯·迦太基國(guó)際機(jī)場(chǎng).我們使用后三段標(biāo)注數(shù)據(jù)進(jìn)行訓(xùn)練,使用第一段視頻作為測(cè)試,在Ubuntu 16.04的Linux系統(tǒng),硬件信息為Intel(R) Xeon(R) CPU E5-2620 v3 @ 2.40 GHz,NVIDIA GeForce GTX TITAN X GPU,128 GB Memory中進(jìn)行100輪(所有樣本訓(xùn)練一次即為一輪)訓(xùn)練.對(duì)于飛機(jī)這一目標(biāo)的檢測(cè)的平均準(zhǔn)確率是0.912,其中準(zhǔn)確率和召回率的結(jié)果圖如圖9所示.
圖9 檢測(cè)目標(biāo)的準(zhǔn)確率和召回率示意圖
部分實(shí)驗(yàn)結(jié)果圖如圖10所示,其中每張圖像中的目標(biāo)都進(jìn)行了檢測(cè)結(jié)果的標(biāo)注,每個(gè)框的左上方標(biāo)記出該框的置信度大小.紅顏色的框的置信度至少在0.8以上,綠顏色的框的置信度在0.7~0.8,藍(lán)顏色的框在0.6~0.7.
圖10 模型檢測(cè)結(jié)果示意圖
根據(jù)2.1中訓(xùn)練樣本的構(gòu)造規(guī)則,預(yù)先生成相應(yīng)的成對(duì)的訓(xùn)練樣本,設(shè)計(jì)了如下算法1.
算法1.一致性判別網(wǎng)絡(luò)訓(xùn)練樣本構(gòu)造算法1) 先將視頻中的單幀圖像按照512×512的大小進(jìn)行切割,并記錄切割出來(lái)的每個(gè)圖像的相對(duì)原圖像中的坐標(biāo)和幀數(shù);2) 在相同的視頻中,隨機(jī)抽取一幀作為關(guān)鍵幀,找到前后對(duì)應(yīng)的圖像幀序列;3) 記錄出當(dāng)前幀中某個(gè)切割區(qū)域的目標(biāo)的位置,同時(shí)按照目標(biāo)的寬和高生成目標(biāo)的合理潛在區(qū)域;4) 將關(guān)鍵幀圖像信息和其前后幀圖像中對(duì)應(yīng)的切割區(qū)域目標(biāo)進(jìn)行比較,根據(jù)2.1節(jié)中的規(guī)則進(jìn)行標(biāo)記.
將上述算法生成的訓(xùn)練樣本在相同配置的服務(wù)器中進(jìn)行訓(xùn)練,得到了較好的效果.具體分析如下: 對(duì)地凝視的衛(wèi)星視頻數(shù)據(jù)中,場(chǎng)景內(nèi)容近似一致,通過(guò)該模型,可以較好的跳過(guò)相近內(nèi)容的檢測(cè); 且場(chǎng)景中并非所有目標(biāo)都在運(yùn)動(dòng),很多靜止的目標(biāo)可以很好的通過(guò)大圖像切割和內(nèi)容一致性檢測(cè)策略直接確定相應(yīng)的位置,提高了整體的檢測(cè)效率.
表中的數(shù)據(jù)的測(cè)試環(huán)境和訓(xùn)練環(huán)境一致(在TITAN X GPU,Tensorflow 1.4.1),測(cè)試數(shù)據(jù)是將視頻數(shù)據(jù)逐幀提取(每幀大小4096×3072),在內(nèi)存中做8×6的切割后直接進(jìn)行模型測(cè)試,數(shù)據(jù)IO時(shí)間和大圖像切分時(shí)間不在計(jì)算之內(nèi),但是后處理時(shí)間計(jì)算在內(nèi).通過(guò)表中對(duì)比可以看出內(nèi)容判別網(wǎng)絡(luò)將系統(tǒng)的整體檢測(cè)效率提高了50%左右.
表1 模型效率比較
通過(guò)對(duì)檢測(cè)模型的改進(jìn),反卷積網(wǎng)絡(luò)可以較好的對(duì)增強(qiáng)目標(biāo)的上下文信息,同時(shí),利用多個(gè)網(wǎng)格化的策略,可以較好的彌補(bǔ)對(duì)于近鄰目標(biāo)檢測(cè)的準(zhǔn)確率.結(jié)合內(nèi)容一致性判別網(wǎng)絡(luò)實(shí)驗(yàn),可以得出,針對(duì)場(chǎng)景相對(duì)固定,且場(chǎng)景內(nèi)目標(biāo)很多,但運(yùn)動(dòng)目標(biāo)一定的情況下,通過(guò)該策略可以將局部靜態(tài)信息過(guò)濾出去,提高對(duì)視頻整體的檢測(cè)效率.目前檢測(cè)模型的設(shè)計(jì)僅考慮單幀圖像,對(duì)于視頻而言,如何考慮相鄰幀信息,將更多的信息整合到單階段檢測(cè)網(wǎng)絡(luò)將成為下一步的研究熱點(diǎn).