經常有使用者問這樣的問題:「我想從影像上提取***,能不能做?」
遇到這樣的問題,我通常也只能含糊的回答:「能不能做得看看資料情況」。雖然是實話,可很多使用者聽完是一頭霧水,依然感到不滿足,「這沒有解答我的問題嘛」。
但另一方面我也很為難。深度學習的效果確實是跟資料質量和目標地物的特徵密切相關的,缺乏這些背景資訊武斷的下結論就等於耍流氓,就好比你問乙個理財規劃師「我想在北京買房,能不能買」一樣。
既然這個問題很難說清楚,我們不妨換個角度理解。通常使用者問這個問題的時候,大部分手裡是沒有資料的,所以讓他們把資料給我看看也辦不到,到這一步其實問題就被轉化為了「我想從影像上提取***,需要什麼樣的資料才能做?」
這個問題倒是值得**。通常深度學習使用的影像資料會關注解析度、波段數、影像位數、影像大小和覆蓋面積、拍攝季節、成果型別(dom,是否帶投影……)、影像色調、目標特徵等因素。
1、影像波段數和位數
目前arcgis是只支援3波段8位影像,因此對於多波段需要先預處理成3波段(當然esri日後也會支援多波段),對於一些16位或者32位的影像則需要預處理成8位才能進行後面的深度學習操作。
2、影像解析度
這裡指空間解析度。解析度大概是這些因素中目前最重要的乙個因素之一,它通常對「能不能提」的回答起著決定性作用。對遙感非常了解的人通常不會問這個問題,倒是很多來自業務領域的使用者或者不太了解影像的人會面臨這個困惑,他們大多對解析度沒有感覺。我們以具體的場景為例為大家說明。
影像的空間解析度指是的乙個影像像元代表的地面長度,解析度10公尺意味著乙個畫素代表地面10m距離,一座10m*10m=100平的房子,在10m解析度的影像上就是乙個畫素點,想在10m解析度的影像上提取這樣一座房子,意味著在影像成千萬上億的畫素裡面找這樣乙個畫素點,且不說特徵是否明顯能不能被準確找到,聽起來就知道這個提取是否靠譜。
解析度8m,常見的居民建築物基本不可見,能提取城市主幹道
解析度3.25m,能提取主要居民房屋(但圖斑偏小可能不夠精確)和更細節的道路路網
解析度0.8m,能提取絕大部分居民房屋,提取的路網會非常精細但也更加複雜
看完相信大家已經有了基本概念,總體而言,識別房屋、建築物(居民住房為主)等地物,要求的影像解析度至少是公尺級,或1m以下,如果提取特殊地物如體育館、操場、大型廠房則可根據實際情況降低或提高對解析度的要求。
補充一句,因為影像在arcgis中瀏覽時存在多比例尺概念,比如8m的解析度使用者可以縮放到接近馬賽克的極限,也有人會說這放大了房子也挺清楚的呀!但實際上深度學習在匯出樣本、推理時都是按照真實的解析度大小來做的,不會用放大的那個大比例尺。大家在確定特定解析度下地物的大小時,需要在影像圖層名上右鍵,選擇「1:1縮放到源解析度」的選項才能看到地物在影像中真正的大小。
那麼提取道路呢?容易理解的是,不同解析度下肯定都能提取路網,但級別肯定不同,比如上圖中8m解析度的影像上,我們依然可以看出城市一級主幹道,在0.8m的影像裡,甚至能看到田間小路。我對道路的國家分級標準不了解,因此提路網我暫時沒有經驗資料可以給到大家,有提路網需求的使用者可以自己先明確要提取的道路的級別,路寬等資訊,然後根據上述對解析度的理解和感受確定影像的解析度。
還有很大一類使用者的需求是提細小的目標,如特殊植物(如硼鹼草)、水稻、菸苗、果苗(通常用來估產等)、汽車、井蓋等,這類微小物體的識別對影像解析度要求就很高,首先必須能在影像上看清楚,比如下面解析度為3.2m的影像,能看清種植區,用來提取種植區域統計種植面積還是可行的,但如果想要準確的獲取植株數,則必須至少厘公尺級。
解析度3.2m,能看清種植區域,可以統計種植面積
解析度0.05m,能看清種植的類別和棵數,可以提取植株數量和種植類別
解析度0.05m,能看清地面井蓋,能否實現井蓋分類還需進一步確認
3、待提取地物特徵
目標特徵是需要考慮的一類因素是因為會關係到提取的效果好壞。很多人可能還沒有意識到,基於視覺的深度學習並非適合解決所有問題,它要求目標的特徵足夠明顯,最好是人眼能夠一眼識別的,像上面例子中的道路、房屋、樹苗等都屬於特徵明顯的地物。當要提取的目標地物與周圍背景沒有特別明顯的區分時,提取的效果都會打折扣。
以下圖為例,使用者想從影像圖上僅提取小區裡面兩棟房子之間的綠化區域,最終用於評估小區的綠化率,這個問題就非常難,小區之間的綠化與正常道路的綠化沒有太大區別,並且還受房屋影像的影響,即便花費很多時間去做優化,實際提取的效果都很難達到實用級別。
注意我說的「很難達到實用級別」的意思是,ai能給您乙個初步的提取結果,但是想從這個初步結果上再進一步提公升效果的話,需要付出的調優精力通常都遠遠大於大家的心理預期,甚至都可能超過人工處理的成本。
4、其它
其它因素還有影像大小和覆蓋面積、拍攝季節、成果型別(dom,是否帶投影……)、影像色調等,這些都好理解:
拍攝季節和影像色調主要是會對某些地物的特徵造成一些影響,比如想提取植被,最好就不要選擇冬天的影像。
而成果型別主要在針對一些特殊情況下有用,比如通常都是用dom提取,但是dom在提取建築時有時會遇到下圖中房屋的「倒伏」現象,通過真正射影像成果就能避免這一問題。有些使用者拿到的是一些不帶座標的jpg檔案,當然流程上可以提取出想要的內容,但後期結果的後處理和分析上反而會花費很多任務作是做座標校正和轉換。
5、總結
對於深度學習而言,高質量的資料就等於成功了一半,這句話一點都不誇張。想要使用ai技術的各位使用者,首先需要明確自己的需求和對成果精度的預期,然後獲取滿足精度要求的影像資料並做好各種預處理,那些做到事半功倍的效果的使用者,他們在資料質量、樣本數量和工作思路和方法上都是花費了很多心思去做準備工作的,再結合深度學習就能最大化的提公升工作效率。
在此恭喜所有想嘗試使用ai的使用者順利入坑,「我輩中人,躬身入局,幹就是了!」,試過才知道是不是適合自己。
深度學習(一)深度學習學習資料
持續更新 一 學習清單 1 收集了各種最新最經典的文獻,神經網路的資源列表 2 計算機視覺學習清單 3 機器學習學習清單 二 訓練資料 人臉資料 1 香港中文大學訓練資料集 此資料庫包含了20w張人臉,每張標註了5個特徵點 以及幾十種屬性 是否微笑 膚色 髮色 性別等屬性 2 68個人臉特徵點 3 ...
深度學習 為什麼深度學習需要大記憶體?
本文主要譯介自graphcore在2017年1月的這篇部落格 why is so much memory needed for deep neural networks。介紹了深度學習中記憶體的開銷,以及降低記憶體需求的幾種解決方案。考慮乙個單層線性網路,附帶乙個啟用函式 h w 1x w 2h w...
什麼是深度學習?為何需要深度學習?
深度學習有如下一些眾所周知且被廣泛接受的定義。1 深度學習是機器學習的子集。2 深度學習使用級聯的多層 非線性 處理單元,稱為人工神經網路 ann 以及受大腦結構和功能 神經元 啟發的演算法。每個連續層使用前一層的輸出作為輸入。3 深度學習使用ann進行特徵提取和轉換,處理資料,查詢模式和開發抽象。...