編者按:CV中的目標物體識別進步非???,但是想對衛(wèi)星圖像進行目標識別仍然困難重重。美國研究者就提出了一種方法——You Only Look Twice,能清晰地看到衛(wèi)星圖像中的汽車、飛機場上的飛機及建筑物,并開放了代碼(見文末)。以下是論智帶來的編譯。
在大范圍圖像中對小目標進行檢測是衛(wèi)星圖像分析的主要問題。雖然深度學習方法為基于地面的目標檢測提供了許多方法,將這種技術(shù)轉(zhuǎn)化為圖片是非常重要的步驟。其中最大的挑戰(zhàn)就是所有像素的數(shù)量和每張圖片的地理內(nèi)容:一張DigitalGlobe(美國的一家商業(yè)空間圖像和地理空間內(nèi)容提供商,并操控數(shù)臺遙感航天器)衛(wèi)星圖片涵蓋了64m2以上的土地,有超過2.5億個像素。另一個挑戰(zhàn)是,我們想要觀察的對象物體非常?。ń?jīng)常在10像素左右),這對傳統(tǒng)的計算機視覺技術(shù)來說是一項很復雜的任務。為了解決這個問題,我們提出了一個流程,即“You Only Look Twice”(只需看兩眼),它能以每秒大于0.5平方米的速度對衛(wèi)星圖像進行評估掃描,可以快速地在不同范圍內(nèi)對目標物體進行檢測,同時只需較少的訓練數(shù)據(jù)。我們在圖片的原始分辨率下對圖片進行評估,同時生成的車輛定位F1分數(shù)大于0.8。之后我們又系統(tǒng)地測試了降低分辨率和目標物體尺寸后的效果,最后得出當尺寸降至5像素時,系統(tǒng)的識別率仍然很高。
遇到的挑戰(zhàn)
深度學習方法在傳統(tǒng)目標檢測上的應用是非常重要的。而衛(wèi)星圖像的特殊性使能夠解決空間前景內(nèi)容、能進行旋轉(zhuǎn)變換以及大范圍搜索的算法成為必要的。除了安裝細節(jié),算法還必須滿足以下四個條件:
小空間范圍(small spatial extent):與ImageNet數(shù)據(jù)集中的清晰大圖不同,衛(wèi)星圖像中的目標物體通常很小,并且分布較密集。在衛(wèi)星成像領(lǐng)域,分辨率通常被定義為“地面采樣距離(GSD)”,它描述了一個像素的實際距離。商業(yè)用途的圖像尺寸在DigitalGlobe的30厘米GSD到衛(wèi)星成像的3—4米GSD左右。這意味著,即使在最高的分辨率下,汽車之類的小目標也只有15像素左右大小。
完全的旋轉(zhuǎn)不變性(rotation invariance):從空中看到的物體可能會有各種朝向。比如,船行進的方向可能有許多中,但是像ImageNet中的大樹卻總是垂直的。
訓練樣本頻率(training example frequency):訓練數(shù)據(jù)相對不足。
極高分辨率(ultra high resolution):輸入的圖像非常大,常常有百萬像素。所以簡單地對輸入圖像尺寸進行下采樣不合適。
DigitalGlobe在巴拿馬運河附近拍攝的8×8km(約16000×16000像素)的圖像,GSD為50cm。紅框表示416×416像素大小的區(qū)域
You Only Look Twice
為了解決模型無法檢測像素過小的目標、難以生成全新比例的圖像等限制,我們提出了一種經(jīng)過優(yōu)化的為衛(wèi)星圖像目標檢測框架:You Only Look Twice(YOLT)。我們擴展了Darknet神經(jīng)網(wǎng)絡框架,同時更新了一些C函數(shù)庫一共地理空間圖像分析,并且整合了外部Python庫。我們選擇Python用戶社群來進行預處理和后處理。在更新完C代碼和進行預處理和后處理之間,參與者無需對C有深入了解。
網(wǎng)絡結(jié)構(gòu)
為了減少模型的粗糙度同時增強檢測密集物體時的精確度,我們所使用的是一個具有22層的網(wǎng)絡,并且以16為系數(shù)進行降采樣。所以輸入一張416×416像素的圖片會生成一個26×26的網(wǎng)格。該網(wǎng)絡受30層的YOLO啟發(fā),經(jīng)過優(yōu)化后專為檢測小型密集對象。密集網(wǎng)格對散布型場景(如機場)可能不太重要,但是對高密度場景(如停車場)非常重要。
空中成像的目標物體檢測對標準網(wǎng)絡架構(gòu)的挑戰(zhàn)。兩張圖片來自統(tǒng)一數(shù)據(jù)集。左圖中的模型將4000×4000像素的測試圖像降采樣到416×416,圖中共有1142輛車,沒有一輛被識別出來。右圖中的模型同樣是416×416,漏報率過多是由于車輛密度太大,13×13的網(wǎng)格無法將它們分辨出來
為了提高模型識別小物體的準確度,我們還加入了一個穿透層,與最后的52×52圖層連接起來成為最后的卷積層,可以讓探測器獲得擴展后的特征向量更細微的特征。
測試過程
在測試時,我們將不同尺寸的測試圖片分割成可操作的小圖,并將每個小圖在訓練過的模型上進行實驗。如下圖所示:
測試過程是從左圖移動到右圖,重疊部分在右下圖中用紅色表示。重疊部分的非極大抑制對于改善小圖邊緣的目標檢測是非常有必要的
許多衛(wèi)星成像的性能都依賴于其內(nèi)部拍攝全局大圖的能力。所以,小型圖像芯片遠不如由衛(wèi)星平臺自己拍攝的大型圖像。物體檢測的最后一步就是將成百上千張測試芯片連接到最后的圖像層中。
目標檢測結(jié)果
最初,我們想只訓練一個分類器,讓其能夠辨認交通工具、基礎(chǔ)設(shè)施等許多種類的物體。但是結(jié)果并不理想,在對機場的識別中,我們發(fā)現(xiàn)這樣的結(jié)果:
這一通用模型產(chǎn)生了較差的結(jié)果。檢測到的飛機被紅框圈起來,可以看到還有幾架被遺漏。另外藍框內(nèi)是被模型誤解的“跑道”
要解決這一問題,我們試著利用衛(wèi)星成像中的規(guī)模信息,運行兩個不同的分類器:一個用于識別交通工具和建筑,另一個用來檢查機場。第一種分類器的尺寸為200m,第二種為2500m。我們將測試照片分成合適尺寸的小圖,然后將每張小圖輸入到分類器中。最終將多個分類器的結(jié)果結(jié)合成最后一張圖像,我們發(fā)現(xiàn)檢測率在0.3和0.4之間的生成的F1分數(shù)最高。以下是目標檢測器在各個類別下的表現(xiàn):
可以看到,YOLT在機場、飛機和船幾個類別中表現(xiàn)得很好
細節(jié)表現(xiàn)分析
接著,我們在COWC數(shù)據(jù)集上測試了YOLT對汽車的檢測結(jié)果,下圖是在每個場景中模型的F1分數(shù)以及對汽車數(shù)量計算的精確度:
上面的圖示COWC中每個測試場景的F1分數(shù),下面的圖是將檢測次數(shù)作為標準數(shù)值的一部分
不同分辨率下的目標檢測。左圖的GSD為15cm,F(xiàn)1分數(shù)為0.94。右圖的GSD為90cm,F(xiàn)1分數(shù)為0.84
結(jié)語
目標檢測算法在定位類似ImageNet數(shù)據(jù)集中的圖片上取得了巨大進步,但是這類算法通常不適合用于衛(wèi)星圖片中的目標檢測。為了解決這一限制,我們提出了一種完全卷積的神經(jīng)網(wǎng)絡模型(YOLT),它能快速定位衛(wèi)星圖片中的汽車、建筑和機場。最終的F1分數(shù)從0.6到0.9不等,取決于不同的檢測種類。代碼目前已在GitHub上開放.
-
神經(jīng)網(wǎng)絡
+關(guān)注
關(guān)注
42文章
4771瀏覽量
100772 -
數(shù)據(jù)集
+關(guān)注
關(guān)注
4文章
1208瀏覽量
24703 -
深度學習
+關(guān)注
關(guān)注
73文章
5503瀏覽量
121169
原文標題:“只需看兩次”——對衛(wèi)星圖像進行快速目標識別的新方法
文章出處:【微信號:jqr_AI,微信公眾號:論智】歡迎添加關(guān)注!文章轉(zhuǎn)載請注明出處。
發(fā)布評論請先 登錄
相關(guān)推薦
評論