• 沒有找到結果。

基於深度學習框架之衛照圖船艦識別 - 政大學術集成

N/A
N/A
Protected

Academic year: 2021

Share "基於深度學習框架之衛照圖船艦識別 - 政大學術集成"

Copied!
69
0
0

加載中.... (立即查看全文)

全文

(1)國立政治大學資訊科學系 Department of Computer Science National Chengchi University 碩士論文 Master’s Thesis. 立. 政 治 大. ‧ 國. 學. 基於深度學習框架之衛照圖船艦識別. ‧ sit. y. Nat. Detection of Civilian Boat and War Ship in Satellite Images. n. al. er. io. with Deep Learning Framework. Ch. engchi. i n U. v. 研 究 生:吳信賢 指導教授:廖文宏. 中華民國一百零七年七月 July 2018. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(2) 基於深度學習框架之衛照圖船艦識別 Detection of Civilian Boat and War Ship in Satellite Images with Deep Learning Framework. 研 究 生:吳信賢. Student:Shin-Shian Wu. Advisor:Wen-Hung Liao 政 治 大. 指導教授:廖文宏. 國立政治大學. 學. ‧ 國. 立. 資訊科學系. ‧. 碩士論文. er. io. sit. y. Nat A Thesis. n. a lDepartment of Computer submitted to i v Science n U i e n g c hUniversity National Chengchi. Ch. in partial fulfillment of the Requirements for the degree of Master in Computer Science. 中華民國一百零七年七月 July 2018. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(3) 基於深度學習框架之衛照圖船艦識別. 摘要 本論文試圖探究如何在少量資料時利用深度學習的方法以衛照 影像來進行軍民艦船的判斷,並從圖中偵測出所判別的船艦的位置。 本研究使用的方法除了透過深度學習以及 遷移學習(Transfer Learning) 的概念來訓練模組外,鑑於部分分類資料較少也必須用資. 政 治 大 料增強(Data Augmentation)的方式生成部分資料並加入訓練集,藉 立. ‧ 國. 學. 以提高整體船體偵測的準確率。. ‧. 經過不同模型測試與參數調校後,最佳實驗結果得出軍艦 AP 為. sit. y. Nat. 0.816、民船 AP 為 0.908,整體 mAP 為 0.862,期許這樣的成果可進. n. al. er. io. 一步發展為可輔助軍事判圖人員進行相關作業之系統,提升整體作業 效率。. Ch. engchi. i n U. v. 未來以此為基礎希望可以發展更細部的軍事設施判斷模組,進而 可以投入其餘判圖種類之應用,完善其判圖系統。. 關鍵字:深度學習,物體偵測,遷移學習、資料增強、衛照圖資分析。. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(4) Detection of Civilian Boat and War Ship in Satellite Images with Deep Learning Framework. Abstract The objective of this thesis is to develop methods to detect and recognize civilian boats and war ships in satellite images based on deep learning approaches when only limited amount of data are available. The concept of transfer learning is employed to take advantage of existing models. Owing to the restricted availability of certain categorical. 政 治 大. data, this thesis also used data augmentation techniques to generate and. 立. add samples into the training sets to improve the overall accuracy of ship. ‧ 國. 學. detection.. After extensive model selection and parameter fine-tuning, the. ‧. average precision (AP) of war ships and civilian boats has reached 0.816. sit. y. Nat. and 0.908 respectively, and the overall mAP is 0.862. The developed. er. io. framework is ready to be incorporated in a semi-automatic system to. n. a in facilitating the efficiency assist military personnel v of image detection and interpretation.. i l C n hengchi U. This thesis is expected to lay the groundwork for more precise military facility detection models, thus improving efficacy of future military facility image detection systems.. Keywords: Deep Learning; Object Detection; Transfer Learning; Data Augmentation; Satellite Image.. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(5) 致謝辭 本研究及學位論文是在我的指導教授廖文宏老師的耐心關懷和 悉心指導下完成的,另外承蒙另外口試委員花凱龍老師以及紀明德老 師對於本研究寶貴的建議,提供更完善的思考方向與改善空間,也謝 謝在研究所學習的旅程中曾經指導過我的老師們,在學業上給我的精 心指導。. 政 治 大. 另外也謝謝實驗室中幫忙的博士生學姐以及這段期間一起努力. 立. 的學長、姊,有你們的幫忙以及支持才讓我的實驗以及論文可以順利. ‧ 國. 學. 完成。. ‧. 特別謝謝我工作中的組長以及同事幫忙標注那麼多資料,以及在. Nat. io. sit. y. 我撰寫論文的期間對於我工作上的支援,才讓我有時間來撰寫論文,. al. er. 最後謝謝我的家人溫暖的關懷以及鼓勵,還有女友的加油打氣和體貼,. n. v i n Ch 因為你們的支持讓我有了前進的動力,如果沒有你們的幫助,我想這 engchi U 篇論文不會那麼順利的完成。 僅將此篇論文,獻給我最愛的家人以及幫助過我的人們。. 吳信賢 謹誌於 台北木柵,政治大學資科系 2018.7.31. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(6) 目錄 第一章. 緒論 ......................................................................................................... 1. 1.1. 研究動機 ................................................................................................. 1. 1.2. 論文架構 ................................................................................................. 3. 第二章. 相關研究 ................................................................................................. 4. 2.1. 文獻探討 ................................................................................................. 4. 第三章. 研究方法 ............................................................................................... 17. 3.2. 前期研究 ............................................................................................... 18. 學. ‧ 國. 3.1. 治 政 大 基本構想 ............................................................................................... 17 立. 港口資料、衛星影像資料抓取.................................................................................. 18. 3.2.2. 研究分析處理架構、圖片前處理.............................................................................. 22. 3.2.3. 遷移學習的構思 ......................................................................................................... 26. 研究架構設計 ....................................................................................... 29. y. Nat. 3.3. ‧. 3.2.1. 3.3.2. 研究架構 ..................................................................................................................... 30. n. al. er. sit. 問題陳述 ..................................................................................................................... 29. io. 3.3.1. i n U. v. 3.4. 目標設定 ............................................................................................... 31. 第四章. 研究過程與結果分析 ........................................................................... 32. 4.1. 研究過程 ............................................................................................... 32. Ch. engchi. 4.1.1. 演算法選擇 ................................................................................................................. 32. 4.1.2. 測試評估階段 ............................................................................................................. 35. 4.1.3. 資料增強階段 ............................................................................................................. 38. 4.1.4. 模組優化階段 ............................................................................................................. 40. 4.2. 可用性分析 ........................................................................................... 41. 4.2.1. 最後模駔辨識率以及成果 ......................................................................................... 41. 4.2.2. 各模組辨識率比較 ..................................................................................................... 45. 4.2.3. 自動化判圖系統建置 ................................................................................................. 46. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(7) 4.3. 成果分析以及探討 ............................................................................... 47. 第五章. 結論與未來研究方向 ........................................................................... 54. 5.1. 結論 ....................................................................................................... 54. 5.2. 未來研究方向 ....................................................................................... 54. 參考文獻...................................................................................................................... 57. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(8) 圖目錄 圖 2.1:ImageNetClassification with Deep Convolutional Neural Networks 架構 ..... 5 圖 2.2:圖片分類以及物體偵測示意圖…………………………….………..………6 圖 2.3:Precision、Recall、IoU 示意圖………………………..……………………8 圖 2.4:Faster R-CNN 針對不同 Scale 的處理方式………………...........................10 圖 2.5:Mask R-CNN 之架構示意圖…………………………………………….....11 圖 2.6:SSD 網路模組架構…………………………………………..……………..12 圖 2.7:YOLO 網路模組架構…………………………………………………..…..13 圖 2.8:focal loss 示意圖…………………………………………………………....13 圖 2.9:Satellite Imagery Classification Based on Deep Convolution Network 衛照影 像分類結果………………………………………………….……………………….15 圖 2.10:You Only Look Twice: Rapid Multi-Scale Object Detection In Satellite Imagery 中指出飛機跑道以及飛機如果用同一個模組判斷會導致誤差之示意....16. 立. 政 治 大. ‧. ‧ 國. 學. 圖 3.1:Google Earth 搜尋示意……………………………………………...…..….19 圖 3.2:圖左為 web 版圖右為 pro 版,雖然是同一個區域,但是 web 版很明顯會 有浮水印之干擾……………………………………………………………………..20 圖 3.3:ArcGIS 搜尋示意……………………………………………………...........21 圖 3.4:左為 Google Earth 之影像圖,右為 ArcGIS Earth 之影像圖,同一地點但 是圖資並不相同……………………………………………………………………..21 圖 3.5:切分物體偵測示意…………………………………………………………23. sit. y. Nat. n. al. er. io. 圖 3.6:透過 labelImg 標註資料……………………………………………………24 圖 3.7:XML 整理為 CSV 檔…………………….……………………….…...……25 圖 3.8:CSV 轉換 TFRecord 程式示意………………………………….……….....26 圖 3.9:A Survey on Transfer Learning 針對遷移學習之探討示意…………….....27 圖 3.10:左圖為未標註前的原圖、右圖紅色箭頭所標示的黑色物體為 CoCo DataSet 中標注出的小船……………………………………...………………….….29 圖 3.11:研究架構…………………………………………..……………...….…….30 圖 4.1:左方為 One Satge 演算法 SSD 之簡單示意,右方為 Two Stage 演篹法 Faster RCNN 之示意…………………………………………………….……………...…..33 圖 4.2:atrous convolution 示意圖……..……………………………….…..………34. Ch. engchi. i n U. v. 圖 4.3:Speed/accuracy trade-offs for modern convolutional object detectors 論文中 各演算法之準確率比較………………………………………………………..……34 圖 4.4:物體擷取不佳,連船都沒有辨識出來………………………………..…..35 圖 4.5:民船、軍艦辨識錯誤率高………………………………………………....36 圖 4.6:船艦物體偵測率提高…………………………………………………..…..37 圖 4.7:軍艦誤判的狀況……………………………………………………………37. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(9) 圖 4.8:左圖為原影像圖,右圖為資料生成之影像之一…………………………39 圖 4.9:Python 數據增強部分程式碼……………………………………….....…...39 圖 4.10:數據增強後軍艦原先判斷錯誤變成判斷正確的結果…………………....40 圖 4.11:模組 TotalLoss 收斂圖示意………………………...…………………….42 圖 4.12:民船偵測示意圖…………………………………...……………………...43 圖 4.13:軍艦偵測示意圖…………………………………………...……………...43 圖 4.14:針對較小船體也可以偵測出來……………………………………..……44 圖 4.15:海的顏色以及波浪,並沒有影響物體偵測的結果………..……………44 圖 4.16:各演算法針對船體的偵測示意圖…………………..……………………45 圖 4.17:放進資料夾之圖片,處理完後會加上_result 之結果圖示意……..……46 圖 4.18:檔案格式示意圖…………………………..………………………………46 圖 4.19:各軍艦類型差異太大示意………………………………..………………49 圖 4.20:千葉港民船偵測示意圖………………………………..…………………50 圖 4.21:船體被卸貨機器切分的示意圖…………………………………………..51 圖 4.22:左為 faster_rcnn_inception_resnet_v2_atrous 所判斷之民船,圖右為. 立. 政 治 大. ‧. ‧ 國. 學. ssd_mobilenet_v2 判斷之圖………………………………………..………………..52 圖 4.23:左為 faster_rcnn_inception_resnet_v2_atrous 所判斷之軍艦,圖右為 ssd_mobilenet_v2 判斷之圖…………………………………………………………52 圖 4.24:不同尺度的船體偵測示意..........................................................................53. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(10) 表、式目錄 式 2.1:recall,precision,F1-score 示意.................................................................7 式 2.2:AP 計算公式示意.............................................................................................8 表 4.1:研究相關軟硬體環境簡述………………………………………………….32 表 4.2:第一次訓練的資料量....................................................................................35 表 4.3:第二次訓練的資料量.....................................................................................36 表 4.4:數據增強後的資料量.....................................................................................40 表 4.5:faster_rcnn_inception_resnet_v2_atrous 最後之調校參數…….......41 表 4.6:最後調校模組各分類之細部準確率..............................................................42 表 4.7:各演算法辨識 mAP 比較表.............................................................................45. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(11) 第一章 緒論 1.1. 研究動機 隨著全球高解析度衛星部署的數量增加,高解析度衛星影像也如雨後春筍般 不斷的誕生,這些影像的應用包含許多的面向,如氣象、國土監測、地形資訊萃 取、勘災、地球科學研究、教育、建物監測等,著名的應用案例如:. 政 治 大. 2016 年 2. 月 6 日台南強震後,政府以及相關軍事機構提供衛星影像資料於災防中心之應用,. 立. 衛星影像之資料除有效協助分析災害現場,更能加速後續搶救作業之評估。衛星. ‧ 國. 學. 影像對於我們的各領域的幫助可見一斑,然而有一個面向鮮少有人探討,那就是 軍事設施方面的判圖應用。. ‧. sit. y. Nat. 會關注軍事設施的判讀應用主要原因有二,其一是本身的職業,其二為現今. io. er. 深度學習中電腦影像方面的研究已相當廣泛,其中結合衛星影像的應用,近年內 利用深度學習的方式來辨識衛星影像圖資,都獲得不錯的成效,例如找出道路以. al. n. v i n Ch 及建物,或是找出交通工具以及判斷地區應用等,因此本研究也將基於深度學習 engchi U. 框架,針對軍事設施方面的判圖應用來進行初步的嘗試,探討其可行性與準確 率。 其實各國在軍事方面都會應用衛照圖來判斷軍事設施的部署、移動等,用以 進行相對應的軍事戰略策畫,但判斷圖資的人力花費是相當可觀的,本研究預計 使用深度學習電腦視覺(Computer Vision)領域中物體偵測(Object Detection)的方 式,協助找出所關注的物體並且標註出來,這樣對於軍事判圖的這個領域會有相 當的助益,本論文將研究的範圍限定於在衛照圖資中找出軍艦以及民船,並且可 以於圖中將其明確地偵測並予以標註。 1. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(12) 之所以會選擇偵測船艦而不是飛機之類的主題,其中最重要的考量因素是資 料量,畢竟機密的資料是無法公開使用的,在深度學習中資料的取得是第一門檻, 如果是辨識軍機以及民機的話,在公開的圖資中,軍機大部分都會停於停機棚或 是機庫內中,衛星在偵照時就會被這些物體所遮蔽,導致完整的軍機圖資資料取 得不易,但如果是船艦的話,都只會停靠於港口中,衛照影像取得時,較無遮蔽 的情況發生,所以清晰且完整的資料取得較為容易,有了資料的基礎,深度學習 的模組建置才有意義,也希望以本研究中軍艦、民船深度學習辨識的模組以及研 究的架構為出發點,把這個研究的成果擴大,套用在其餘設施辨識模組之建置。. 政 治 大. 此外在衛星影像的選擇,本研究以光學衛星圖像為主,而非雷達衛星影像,. 立. 雷達系統雖因微波具有穿透雲、雨、霧、濛的效果,蒐集地面資訊時不受天候的. ‧ 國. 學. 影響,但是要細部觀察出軍艦、民船之區別,還是需要有高解析度之光學影像資 料,畢竟一開始資料的標註還是需要相關領域的人員來協助,使用雷達影像時,. ‧. 標註相對困難。. sit. y. Nat. io. er. 選擇光學衛星影像辨識的另一個重點為俯視物體的辨識研究,現今空拍機設 施不斷的推陳出新,越來越多人擁有空拍機,空拍照片的資料量及其相關應用需. al. n. v i n Ch 求也越來越多,其中光學衛星高解析度影像其實就與空拍機所攝影之圖片有很大 engchi U 的相似之處,只是影像的解析度會有差異,所以希望藉由這次選擇光學衛星影像 的研究,利用其成果後續亦可應用於空拍機拍攝之物體偵測研究上,未來應用於 軍事上可進行戰場偵查後可進行相關有利的戰略部署,或是結合其餘研究來避免 飛彈誤射的事件再次的發生。 歸納上述對於本研究之動機以及相關背景環境的介紹,冀望透過深度學習中 物體偵測的技術,進行判斷衛照圖中之軍艦、民船之研究,以下列舉本論文的主 要貢獻:. 2. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(13) 1.. 本研究提出經由公開資料所取得的衛星圖像資料,不同解析度的衛星圖 資,透過深度學習的訓練,所獲致之模組可以於衛星影像中進行軍艦以 及民船的偵測,mAP 達 0.862。. 2.. 本研究也提出,即便與原先物體偵測所訓練的辨識的類別不同,亦可透 過遷移學習的概念,利用他人訓練之模組學習其影像之特徵值,並透過 後續模型的訓練調校,得到良好的判斷成果。. 3.. 本研究分析以及證實當衛星影像部分物體訓練及過少時,可利用特定的 資料增益(Data Augmentation)方式來增加訓練集,可有效避免過度擬和. 政 治 大 本研究應用上述深度學習的結果,利用 Python 以及 Tensorflow 模組實 立 (Overfitting)的情況發生。. 4.. 作出一原型應用程式,匯入衛星影像後,得以利用本研究之模組,於匯. ‧ 國. 學. 入之影像中用不同顏色的色框框選出軍艦以及民船,以求未來應用上之. ‧. 便利性。. y. Nat. er. io. sit. 1.2. 論文架構. 本論文架構如下所述。在第二章的相關研究中,我們將會概觀地探討近年來. al. n. v i n 電腦視覺中物體偵測相關議題C ,除此之外對於衛星影像辨識的研究於本章中也會 hengchi U 一併探討。在第三章的研究方法中,首先針對本研究目的,提出基本構想,接下 來簡單地展示基於此構想所做的前期研究,包含如何取得圖資、標註資料,以及 在得到初步的資料後,設計研究架構,並且設定預期的目標。在第四章,將詳細 地描述研究的資料模組訓練過程,簡介所使用開發語言、相關深度學習環境的架 構介紹,以及研究結果分析。另將研究結果與分析,實作為判圖應用程式,並展 示使用範例。最後在第五章中,本論文對所實作的系統做一個簡單的結論,並且 提出未來可能繼續研究發展的方向。. 3. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(14) 第二章 相關研究 本章節針對兩個方向進行相關研究之探討。其一是對於近年來電腦視覺在深 度學習領域中物體偵測的文獻探討;另一方面,則是基於衛星影像於深度學習中 之應用探討,一窺現今在衛星影像於深度學習中所發展之概況。. 2.1. 文獻探討. 立. 政 治 大. 深度學習的研究,雖然不是近幾年才出現的領域,但是近幾年由於硬體. ‧ 國. 學. 的發展,確立了深度網路的實用性。深度學習廣泛的來說是機器學習的分支,一 部分最成功的深度學習方法涉及到對人工神經網路的運用,而本研究所要探討的. ‧. 基本模組架構就是基於人工神經網路所設計出來的,所以以下所提之網路都泛指. y. Nat. sit. 人工神經網路,但深度學習並不是萬能的人工智慧,它其實只能針對特定的需求. al. n. 習的重要成果。. er. io. 來設計,以下我們聚焦圖像分析處理的需求,探討過去電腦視覺領域結合深度學. Ch. engchi. i n U. v. 電腦視覺領域自從在 ImageNet 競賽[1]中出現利用 convolutional neural networks 結合深度學習架構[2] (如圖 2.1 所示)這項技術來進行圖片辨識後,在過 去的幾年內有很大的進步,除了深度學習的進展,另一個是公開圖片訓練集的出 現,例如: PASCAL VOC [3]、ImageNet[4]、MS COCO[5] 等,有了大量的訓練 資料,加上深度學習的幫助,電腦視覺領域因此出現蓬勃的發展。. 4. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(15) 圖 2.1. 政 治 大. ImageNetClassification with Deep Convolutional Neural Networks 架構. 立. [2]. ‧ 國. 學. 影像辨識的發展,可以從 ImageNet ILSVRC[1]挑戰賽(Large Scale. ‧. Visual Recognition Challenge) 題 目 一 窺 端 倪 , 2011 年 題 目 為 影 像 分 類. sit. y. Nat. (Classification)、影像分類及定位(Classification with Localization),到了 2017. io. er. 年題目為物體定位(Object Localization)、物體偵測(Object Detection)、視訊中 的物體偵測(Object Detection from Video),從題目的變化可以了解整個技術. al. n. v i n Ch 的演進。除了圖片的分類,電腦視覺領域還有另一個重要的議題,那就是物 engchi U 體偵測(Object Detection)的研究,物體偵測與圖片的分類最大的差別就是圖 片分類是指一張圖片裡面是何物體,對應一個答案,物體偵測領域要從一張 圖片中辨識出物體, 並且標示出位置來,舉個簡單的例子來說,一張只有 狗的圖片,透過分類的模組會說這張圖片是狗的機率是多少,是狐狸的機率 是多少,因為狗的機率比較高所以答案為狗,而物體偵測方面的研究是基於 這個之上更進一步的研究,是要在圖片找出狗在哪裡,並且在圖片中標選出 來(如圖 2.2 所示)。. 5. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(16) 圖 2.2 圖片分類(左)及物體偵測(右). 政 治 大 分類的研究在過去幾年的比賽內,準確率已經比人判斷的還要高,所以 立. ‧ 國. 學. 本研究的重點放在物體偵測領域,物體偵測的研究跟圖像分類的研究可用下 面的說法來進行區別,其實圖片中多樣物體偵測= 物體的位置 (bounding. ‧. box) + 特徵擷取 (feature extraction) +Image Classification(圖像分類),直觀來. sit. y. Nat. 說,似乎可以用串接方式。先做物體位置, 再做特徵擷取以及分類,但是實. n. al. er. io. 際應用上,並沒有想像的那麼容易,因為一般情況事先不知道這張圖裏面包. v. 含的物體是什麼,自然是無法很明確的去切分到底是要先偵測位置還是要先. Ch. engchi. i n U. 分類,所以近期針對物體偵測的解決方案研究才如此的多樣化,以下就舉幾 個近期知名的物體偵測研究成果來進行探討以及其優點的說明:1.Faster R-CNN[6]、2. Mask R-CNN[7]、3. SSD[8]、4.YOLO[9]、5.Retinanet[10]。 在介紹模組前先來說明模組成效的評估方式,以下介紹較為常見的物體 偵測模組的評估指標 F1 Score 以及 mAP,首先說明何謂 F1 Score。假設預測 資料,預測為正,實際也為正,我們稱為 true positive (TP),假如預測為正, 實際為負,我們稱為 false positive (FP),假如預測為負,實際為正,稱為 false negative (FN),最後,預測為負,實際也為負,稱為 true negative (TN),那麼 如果我們定義一個測試集中,正樣本個數為 P,負樣本個數為 N,P=TP+FN, 6. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(17) N=TN+FP,進一步,我們的定義 recall,precision,F1-score 如式 2-1 所示, 可以看到 recall 體現了對正樣本的識別能力,recall 越高,說明模型對正樣 本的樣本識別能力越強,precision 體現了對負樣本的區分能力,precision 越 高,說明模型對負樣本的區分能力越強,但假如把所有物件都判斷為某類, 那 recall 可以達到 1,但是 precision 將會變得很低,所以就要同時權衡 recall 和 precision 這兩個指標。F1-score 是兩者的綜合,F1-score 越高說明模型 越穩健。. 𝐑𝐞𝐜𝐚𝐥𝐥 =. 𝐓𝐏 𝐓𝐏 = 𝐓𝐏 + 𝐅𝐍 𝐏. 政 治 大 𝐓𝐏. 𝑭𝟏 =. 學. 𝟐𝐓𝐏 𝟐 ⋅ 𝐏𝐫𝐞𝐜𝐢𝐬𝐢𝐨𝐧 ⋅ 𝐑𝐞𝐜𝐚𝐥𝐥 = 𝟐𝐓𝐏 + 𝐅𝐍 + 𝐅𝐏 𝐏𝐫𝐞𝐜𝐢𝐬𝐢𝐨𝐧 + 𝐑𝐞𝐜𝐚𝐥𝐥. ‧. ‧ 國. 立 𝐏𝐫𝐞𝐜𝐢𝐬𝐢𝐨𝐧 = 𝐓𝐏 + 𝐅𝐏. sit. y. Nat. 式 2.1 recall,precision,F1-score 計算方式. n. al. er. io. 接著介紹 mAP,用一張圖來表示物體偵測中準確率(Precision)、召回率. i n U. v. (Recall)以及 IoU(Intersect over Union)的關係(如圖 2.2)由圖中可以很明確的. Ch. engchi. 看出來 IoU 表示了實際物體和預測的 Bounding Box 的聯集除以實際物體和 預測的 Bounding Box 的交集,所以如果假設 IoU 為 0.5 ,那麼 IoU>0.5 則認為是真實的檢測(true detection),否則認為是錯誤的檢測(false detection)。準確率代表了影像的正確預測的數量除以在影像上真實的檢測 的目標數量,而召回率代表了影像的正確預測的數量除以在影像上這一類的 總的目標數量 ,假設我們把 recall 的值從 0 到 1 (0%到 100%)劃分為 11 份:0、0.1、0.2、0.3、0.4、0.5、0.6、0.7、0.8、0.9、1.0,在每個 recall 上我們計算 Precision,然後再計算總和並平均,就是 AP(Average precision). 7. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(18) 值,計算方式如式 2.2。計算每個分類的 AP (例如在本論文中就是民船的 AP 以及軍艦的 AP),求和再平均,得到的就是 mAP 。. 學 圖 2.3 Precision、Recall、IoU 示意圖. ‧. 𝟏 ∑ 𝑹𝒆𝒄𝒂𝒍𝒍 ∈ {𝟎, 𝟎. 𝟏, … . 𝟏}𝐏𝐫𝐞𝐜𝐢𝐬𝐢𝐨𝐧(𝑹𝒆𝒄𝒂𝒍𝒍) 𝟏𝟏. er. io. al. 式 2.2 AP 計算公式. sit. y. Nat. 𝐀𝐏 =. ‧ 國. 立. 政 治 大. n. v i n Ch 了解評估的指標後,接著說明目前物體檢測演算法,目前物體檢測演 engchi U 算法有兩種主流作法:Two-Stage Detector 和 One-Stage Detector,Two-Stage Detector 第一步會先在圖片中提取出數百個候選區域(Object Box Proposals), 再經由分類器(Box Classifier)進一步分類以及修正位置。CNN Based 的 Two-Stage Detector 基本上是依照這樣的思路去設計的(如 Faster R-CNN、 Mask R-CNN)。One-Stage Detector 為了加速到可以即時處理影像則直接簡化 了流程,原本在 Two-Stage 的 Proposal Stage,會輸出在圖片中每個位置出 現物體的機率高低,One-Stage 則直接做了一些修改,在每個位置上直接輸. 8. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(19) 出每個類別的判斷結果,如 SSD、YOLO、Retinanet。接著針對上述所提到 之物體辨識模組進行更一步的說明:. 1. Faster R-CNN(Region-based Convolutional Neural Networks) : Faster R-CNN 為 Fast R-CNN[11]的模組改良版,先從 Fast R-CNN 的概念 談起,在 R-CNN 中,圖片的多個區域都要個別去運算 CNN 特徵, 這些區域很多都是重疊的,也就是說這些重疊區域的 CNN 很多都 是重複算的。所以 Fast R-CNN 的原則就是全部只算一次 CNN 就 好,CNN 擷取出來 的特徵可以讓這多個 區 域共用,所以 Fast. 政 治 大. R-CNN[11] 基 於 上 述 的 概 念 提 出 RoIPooling (Region of Interest. 立. Pooling)的解決方式,使其較原先 R-CNN 的處理速度加快了不少,. ‧ 國. 學. 而 Faster R-CNN 最主要所提出新的變革就是 RPN(Region Proposal Network)[6]的概念,Faster R-CNN 可以簡單地看做「區域生成網絡. ‧. RPN + Fast R-CNN」的系統,經由 RPN 之後,我們便可以得到一些. Nat. sit. y. 最有可能的 bounding box,雖然這些 bounding box 不見得精確,但. n. al. er. io. 是透過類似於 Fast RCNN 的 RoIPooling, 一樣可以很快的對每個. i n U. v. region 分類,並找到最精確的 bounding box 座標。且透過 Faster. Ch. engchi. R-CNN,可以針對 Multi-scale 的特徵擷取(如圖 2.3 所示),因為 RPN 是一個全卷積網絡(FCN),由於沒有全連接層,所以可以輸入任意 分辨率的圖像,經過網路後就得到一個 feature map,雖然處理的速 度會下降,但是可以有效的提高準確率,而這一點就是本研究所關 注的重點之一。. 9. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(20) 圖 2.4 Faster R-CNN 針對不同 Scale 的處理方式[6]. 政 治 大 是一個目標檢測框架,Mask R-CNN 將其擴展爲實例分割框架, 立. 2. Mask R-CNN: Mask R-CNN 擴展自 Faster R-CNN,Faster R-CNN. Mask R-CNN 是建構於 Faster R-CNN 之上,Faster R-CNN 是透過. ‧ 國. 學. RoIPooling 取得 Region proposals 之後,針對每個 region 會再跑. ‧. FCN 取得遮罩分割,但是由 於 RoIPooling 在做 Max pooling 時,. sit. y. Nat. 遮罩會有些許偏移現象,再加上 pooling 下來的結果,會讓 region. io. er. 的尺寸出現非整數的情況,然後取整數的結果就是沒辦法做到 Pixel 層級的遮罩。所以 Mask R-CNN 改採用雙線性插值法(Bilinear. al. n. v i n C hRoIPooling,稱之為 Interpolation)來改善 RoIAlign,RoIAlign 會讓 engchi U. 遮 罩 位 置 更 準確 ( 架構 見 圖 2.4) 。 但 本 研究 採 用 船 艦 判別 採 用 Bounding Box 的方式標註就足以判斷,所以該模組就不列入採用之 考量中. 10. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(21) 圖 2.5 Mask R-CNN 之架構示意圖[7]. 學. 示,其中有幾個關鍵的特點(1)SSD 使用多尺度 bounding boxes 輸出. ‧ 國. 附加到 SSD 所設計之網路的多個特徵圖。這樣表示 SSD 可以有效. ‧. 地模擬可能的 bounding boxes 形狀空間(2)在即時(Realtime)的偵測時,. sit. y. Nat. 輸入解析度較低的圖像時,SSD 可以保證檢測的精度,(3)SSD 消除. io. 了 proposal 生成和後續的畫素或特徵重取樣階段,所以處理的速度. n. al. er. 3.. 政 治 大 SSD(Single Shot 立 MultiBox Detector) : SSD 網路架構設計如圖 2.5 所. v. 也大大的提升了不少(4)跟速度有關,因為 SSD 使用固定的(預設). Ch. engchi. i n U. 框來進行預測,類似於 RPN 中的 anchor 框。但是,不是使用這些 來池化特徵和評估另一個分類器,SSD 同時在每個框中為每個物件 類別產生一個分數。因此 SSD 的方法避免了將 RPN 與 Fast R-CNN 合併的複雜性,所以也大大增加 SSD 模組處理的速度。. 11. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(22) 圖 2.6 SSD 網路模組架構[8]. 政 治 大 型的特性只需要對圖片作一次 CNN 便能夠判斷裡面的物體類別 立. 4. YOLO : YOLO 的全名為 You Only Look Once,顧名思義 YOLO 模. 跟位置,YOLO 的概念是將一張圖片切割成多個方格,每個方格以. ‧ 國. 學. 自己為中心點各自去判多個 bounding boxes 中包含物體的判斷分數. ‧. 跟種類,如果該 bounding box 不包含任何物體,判斷分數便為零,. sit. y. Nat. 而 IOU 則為 bounding box 與 ground truth 的交集面積,交集面積越. io. er. 大,分數越高為該物體的機率就越高。YOLO 模組的架構(見圖 2.6) 有著一個相當大的特點,就是 YOLO 處理的速度相當快,因為 YOLO. al. n. v i n C視為一個單一的迴歸問題,YOLO 將 object detection 在從影像輸入 hengchi U. 到輸出預測結果僅靠一個 CNN 來實現,因為這樣 end-to-end 的特性 使得訓練速度提升,YOLO 於 2016 年時發表 YOLO9000:Better, Faster, Stronger[12]這個架構,基於原先的 YOLO 架構並加入 batch normalization 、 anchor box 等 概 念 , 使 用 了 這 些 改 良 方 式 讓 YOLO9000 不管在辨識速度還是準確率上都有了提升。. 12. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(23) 圖 2.7. 5. Retinanet:. YOLO 網路模組架構[9]. 政 治 大. 由論文名稱 Focal Loss for Dense Object Detection[10]就. 立. 可以大略知道該模組集中於焦點損失(Focal loss)函數的討論上,對. ‧ 國. 學. 於 one stage 準確率不好的原因,作者認為是極度不平衡的正負樣本 類別比例,而類別不均衡問題,該論文作者提出一種新的損失函數:. ‧. focal loss,這個損失函數是在標準交叉熵損失基礎上修改得到的。. y. Nat. sit. 這個函數可以透過減少易分類樣本的權重(如圖 2.7 所示),使得模型. n. al. er. io. 在訓練時更專注於難分類的樣本,藉以解決 one stage 模組準確率的 問題。. Ch. engchi. i n U. v. 圖 2.8 focal loss 示意圖 13. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(24) 簡略來看 Faster R-CNN 基於 RPN 以及 Mask R-CNN 之 Two Stage 的方式, 追求圖片的精準判斷,但卻會加長圖片判斷的時間,而基于 SSD、YOLO、Retinanet 的 One Stage 方式,追求處理的速度,幾乎可以近即時進行圖片的判斷,甚至可 以應用於影片物體的辨識上[13],但對於精準度卻會有些許的不足,所以應用於 哪種面向上,模組的選擇以及優化是很重要的一環。 上面所介紹之文獻,針對物體偵測的圖片都有一個特點,那就是以上所提到的資 料集內鮮少有俯視圖的辨識,那對於俯視圖的辨識是否也可以用深度學習的方式 來進行研究,接著來了解一下過去是否已經有人利用深度學習的方式來進行俯視. 政 治 大. 圖判斷?在第一章有提到光學衛星影像其實概念近於俯視圖片,而其應用層面更. 立. 加的廣泛,所以接著就以光學衛星影像物體辨識為主來進行以下的探討。. ‧ 國. 學. 由於特定類別(尤其是軍事類別)衛星影像取得不易,所以衛星影像的研究資. ‧. 料的取得一直都是一個門檻,雖然說近年有幾場大型的衛照影像辨識比賽剛興起,. sit. y. Nat. 但就過去的研究資料來看,成果還是有限的,過去衛照影像的處理主要著重在分. io. er. 類,例如 Satellite Imagery Classification Based on Deep Convolution Network[14], 該篇論文利用實際之衛照影像,以及它們設計的深度學習架構 DCNN,來判斷建. al. n. v i n 物、樹、水或者是路(成果如圖C 2.8),其判斷成效就論文指出有準確率 96%以上, hengchi U 可以說是相當高的準確率,而另一篇論文 Using Convolutional Networks and. Satellite Imagery to Identify Patterns in Urban Environments at a Large Scale[15],主 要是要處理城市環境規劃以及相似城市的問題,內容則是利用 CNN 處理分類以 及區域劃分,最後用 k-nearest neighbors 進行 Clustering,結果也是相當不錯, 接下來介紹另一種電腦視覺應用於衛照影像處理的方式。. 14. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(25) 政 治 大 圖 2.9 Satellite Imagery Classification Based on Deep Convolution Network 衛照 立. ‧ 國. 學. 影像分類結果[14]. You Only Look Twice: Rapid Multi-Scale Object Detection In Satellite. ‧. Imagery[16],這篇於 2018 年 5 月底所研究之論文,針對衛星影像中的物體包含. y. Nat. sit. 了機場、飛機、船以及建物的偵測,其實該位作者約略 1 年前就有在部落格中提. n. al. er. io. 中相關的概念了[17],這篇部落格的所發表的初步成果也是本研究參考的重要關. i n U. v. 鍵之一,其中最重要的概念有以下幾點 1.該篇論文所提出之新架構基於原先. Ch. engchi. YOLO 之架構,然後進行了些許的簡化以及調整以解決原先 YOLO 在處理小目 標偵測率不佳之問題以及因為 bounding box 問題導致物體如果靠得太近而偵測 率會下降的問題。2.指出偵測大目標(例如機場跑道),以及小目標(例如飛機)必須 建立不同的模組進行判斷(如圖 2.9 所示),否則將會造成判斷的結果不佳。3.將 一張衛星影像圖在處理前可分割為多個小圖,這些小圖經過模組判斷後之成果可 以在組合為原本的大圖且偵測成效也很好,F1 達 0.82 以上。. 15. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(26) 圖 2.10 You Only Look Twice: Rapid Multi-Scale Object Detection In Satellite. 政 治 大. Imagery[15]中指出飛機跑道以及飛機如果用同一個模組判斷會導致誤差之示意. 立. 以上文獻的探討,勾勒出大致的輪廓,對於處理相關電腦視覺、物體偵測. ‧ 國. 學. 議題以及衛星影像之處理的方法及技術,提供較清楚且有效率的方向,讓我們有 可以以此為基礎處理關鍵的問題。下一章,我們將更著重在本研究中提出的關鍵. ‧. 議題:衛星影像的處理以及遷移學習的概念探討。. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 16. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(27) 第三章 研究方法 在本章節中,我們將聚焦在衛星圖資之取得以及遷移學習的概念,根據現階 段可用的資料,如何於衛星圖資中找尋合適之資料進行相關的標註,選擇開發工 具,並提出基本構想。接下來進行前期研究,然後依照結果,評估基本構想的可 行性。最後基於構想,設計出研究的架構、預想研究執行的細節,以及預計取得 的目標。. 立. 3.1. 基本構想. 政 治 大. ‧ 國. 學. 要做深度學習架的訓練,資料的收集是一個很重要的環節,沒有足夠的資料. ‧. 除了會遇到過度擬和的問題外,其模組判斷成效也會不彰,在第二章有提到光學. sit. y. Nat. 圖像衛照資料是難以取得的,且原本內部的資料也無法公開提供出來作為研究使. io. 也就是地理圖資系統的資料開始收集。. n. al. Ch. engchi. er. 用,那最重要的資料該從何而來?所以本研究決定從類似光學影像的公開數據,. i n U. v. 就解析度上來看地理圖資系統的解析度跟光學衛星影像之解析度是沒有差 別的,現今的地理圖資系統解析度都已經提升至 90 公分程度,本研究著重於判 斷軍艦以及民船的判別,想要判別這些物件,在解析度不夠的狀況下,是無法進 行的,雖然公開地理圖資系統所擷取之影像圖資中影像大小與光學衛星有所差異, 且目前深度學習的模組無法處理如此大張之影像,但基於文獻探討中 YOLT[16] 所提出之概念,如果要處理一張很大的圖像,可以分割為數張較小的圖像個別分 析,最後再合併起來,雖然可能會面臨到物體邊緣被切割的問題,但這樣我們就 可以基於影像較小的公開地理圖資系統但解析度較好的圖像先行訓練判斷模組,. 17. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(28) 那這些模組就一樣可以進行物體偵測,最後再把圖像組合起來便可,基於這些原 因,本研究試圖先取得公開地理圖資之圖像來進行軍艦、民船判別的訓練。. 3.2. 前期研究 本研究之判斷物體為船艦,船艦雖然駛於海上,但要從茫茫大海中找尋船艦 之影像勢必會花費大量的時間,所以從港口找尋附近之船艦圖像,然後輔以大海 上的少數船隻為本次研究資料取得的方向,以下就資料收集的方式以及順序進行 介紹。. 3.2.1.. 治 政 港口資料、衛星影像資料抓取 大 立 ‧ 國. 學. 目標既鎖定於港口,首先必須取得我國以及中國大陸之幾大港口資料,再利 用地理圖資之經緯度進行搜尋,這樣資料收集會更加快速,除此之外除了一般商. ‧. 用港口外,必須要收集軍港之資料,才能有效收集到軍艦之圖像,以下列舉幾個. io. sit. y. Nat. 我國以及中國大陸本研究資料所收集之港口。. n. al. er. 我國:基隆港、花蓮港、高雄港、台中港、金門港、澎湖港、馬祖港、左營 港等港口。. Ch. engchi. i n U. v. 中國大陸:三亞港、海口港、湛江港、深圳港、珠海港、常德港、黃石港、 武漢港、青島港、威海港、廈門港、福州港、南京港、上海港、寧波港、大連港、 秦皇島港、天津港、旅順港、舟山港、葫蘆島港、瑜林港、黃埔港、定海港等港 口。 以上港口為大部份資料收集所集中之地區,透過鎖定之港口以及其對應之經 緯度,就可以透過地理圖資系統直接定位該港口位置,接下來介紹本研究如何透 過地理圖資系統進行影像之抓取。. 18. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(29) 本研究所使用之地理圖資系統有兩個,第一個為 Google Earth[18]、第二個 為 ArcGIS Earth[19],除 ArcGIS Earth 需要申請會員外,Google Earth 是可以進行 免費瀏覽的,以下就兩系統分開說明。 Google Earth : Google Earth 是一款 Google 公司開發的系統, Google Earth 把衛星相片、航空照相和地理圖資系統布置在一個地球的三維模型上,透過港口 名稱或是明確的經緯度位置搜尋,該系統可以自動幫使用者定位到關注的地方 (如圖 3.1 所示)。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 3.1 Google Earth 搜尋示意 Google Earth 影像的收集要注意以下幾點 :. 1.. 要把 Google Earth 地理圖資系統所的附加上的地理名稱以及相關的資 訊隱藏,因為這些資訊有可能會覆蓋在你所要偵測的物體上,如果一併 將此圖資抓取的話,會影響到物體偵測中物體影像的完整性,進而影響 到模組的訓練。. 2.. 另一個所要注意的重點,則是 Google 的浮水印,如果是使用網頁上的 Google Earth 所擷取之圖片會有 Google 之浮水印,浮水印也會造成物體 19. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(30) 偵測的準確率,所以建議下載 Google Earth pro,這樣所擷取下之圖片 就不會有浮水印的困擾(如圖 3.2 所示,紅框為浮水印)。. 立. 政 治 大. ‧. ‧ 國. 學. io. n. al. er. 明顯會有浮水印之干擾. sit. y. Nat. 圖 3.2 圖左為 web 版圖右為 pro 版,雖然是同一個區域,但是 web 版很. i n U. v. 以上為本研究 Google Earth 地理圖資系統影像擷取之要點,接下來介紹本. Ch. engchi. 研究所使用的第二個地理圖資系統 ArcGIS Earth,ArcGIS 是由 ESRI [20]出品的 一個地理資訊系統系列軟體的總稱,ESRI 為世界前幾大的地理資訊系統技術供 應商,所以本研究選擇 ESRI 所推出的地理圖資系統來進行衛星影像的收集,一 樣透過港口名稱或是以經緯度搜尋(如圖 3.3 所示),ArcGIS Earth 一樣可以自動 幫使用者定位到關注的地方,以方便後續的圖資擷取。. 20. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(31) 政 治 大. 圖 3.3 ArcGIS 搜尋示意. 立. ArcGIS Earth 跟 Google Earth 一樣,也需注意地理名稱以及相關資訊的文字. ‧ 國. 學. 顯示問題,另外 ArcGIS Earth 不會有浮水印的問題,所以擷取下來的圖資就不用. ‧. 擔心因為浮水印會影響影像判斷的問題,由於兩個地理圖資系統的影像不是共用. sit. y. Nat. 的,所一個港口我們就會有不同的訓練資料(如圖 3.4 所示),有了公開地理圖資. io. n. al. er. 系統的幫助,我們擷取的圖資就具備基本的訓練量。. Ch. engchi. i n U. v. 圖 3.4 左為 Google Earth 之影像圖,右為 ArcGIS Earth 之影像圖,同一地點 但是圖資並不相同 21. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(32) 3.2.2. 研究分析處理架構、圖片前處理 有了基本的影像資料,接著在模組的訓練前,就要進行這些圖片的前置處 理。在處理前,本研究必須先決定研發的工具,才能規劃圖片處理的流程,本研 究在深度學習的語言中選擇了 Python,接著研究的 Framework 選擇 Tensorflow[21] 以及 Keras[22],決定架構後就可以繼續本研究圖片的前處理流程,流程可分為 資料收集、資料標注以及資料格式轉換。 1. 資料收集:在資料收集階段,主要收集各港口之軍艦資料,民船資料由. 政 治 大 第一個為上方有被其餘物體截斷之圖資本研究不列入訓練集中,例如: 立 於較易蒐集,所以採抽樣蒐集,另有些資料於本研究中不列入訓練集中,. 貨船上方有卸載貨物之機械導致船體被截成好幾段(如圖 3.5 所示紅框. ‧ 國. 學. 所框選之艦船為被機械切分的船體,綠框所框選之艦船則是完整沒有被. ‧. 切分之船體,資料本研究會收集綠框所框選之艦船,而紅框所框選的艦. sit. y. Nat. 船則不納入訓練集)、第二個為剛好經過橋,從上方看被橋分成兩段之. io. er. 船艦,因為我們認為不完整的船體如果加入訓練集,會影響到完整船艦 的判斷,所以這些資料就不列入,此階段收集民船資料共 3132 艘,軍. al. n. v i n Ch 艦資料共 3091 艘(本研究最後的總數量),收集完這些資料,接著就是資 engchi U 料的標注。. 22. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(33) 政 治 大. 圖 3.5 切分物體偵測示意. 立. 2. 資料標注:上述所收集到之資料,先分派給有相關背景之專業人員進行. ‧ 國. 學. 相關的標注,再由本論文之研究人員來進行資料的確認,因為部分的人. ‧. 員對於資訊系統不熟稔,所以本研究使用較易操作之資料標注工具. sit. y. Nat. labelImg[23],該工具可以將標註的資料轉為 XML 檔,雖然檔案格式需. io. er. 再處理,但是這樣對於標注人員相對較好操作。標註的內容主要是在圖 片中種類別的艦船 1.軍艦(WarShip)2.民船(NormalShip) (如圖 3.6 所示),. al. n. v i n Ch 標注完的資料會交由作者再次地確認是否有標注錯的狀態,經過修正後 engchi U 才會正式成為本研究的訓練集。. 23. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(34) 政 治 大. 立 圖 3.6 透過 labelImg 標註資料. ‧ 國. 學. 收集完標註的資料後,必須針對本研究所實作的 Framework 轉換成. ‧. Tensorflow 可以處理的格式,所以我們撰寫了一隻程式先把 XML 檔裡. sit. y. Nat. 面的資訊讀取出來,這些資訊包含了(1)檔名(2)圖片的長與寬(3)該物體. io. 的類別(4)物體標註的圖片範圍(xmin、ymin、xmax、ymax),接著把這. n. al. er. 3.. v. 些資訊轉換為 CSV 檔,因為這樣利用 CSV 的功能可以方便計算以及分. Ch. engchi. i n U. 類我所蒐集到的資料,在資料的前期統計中這樣的處理方式可以很方 便的整理前處理的資料,也可以很方便的進行相關的紀錄,蒐集完之 成果如圖 3.7 所示,此外在轉換為 CSV 檔之前,此程式加上了 shuffle 之功用,程式會把全部的資料依照圖片的數量分為訓練 Train.csv 以及 測試集 Test.csv 兩個 CSV 檔,這樣會有助於後續資料處理的流程,有 了 CSV 的資訊後,接著會把圖片資料以及 CSV 整理好繼續接下來的轉 換流程。. 24. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(35) 立. 政 治 大. ‧. ‧ 國. 學 圖 3.7 XML 整理為 CSV 檔. sit. y. Nat. 有了圖片以及 CSV 的資料後,我們撰寫了一隻從 CSV 檔以及圖片檔案轉換. n. al. er. io. 為 TFRecord 檔之程式(程式示意如 3.8),TFRecord 為 Tensorflow 的標準格式,. v. 可以將資料與對應的資料標示(label)儲存在一起,方便在 TensorFlow 中. Ch. engchi. i n U. 使用,最重要的是,如果圖片透過 numpy 以及 tf.variable 讀取至 Tensorflow 中進行模組訓練很容易會造成記憶體不足的問題導致訓練無法繼續下去,所 以本研究選擇將資料轉換為 TFRecord 來處理,且轉為該格式可以有助於我們 在 Tensorflow 的模組訓練速度,由圖 3.8 所示程式碼上方可見我們轉換的相 關資訊,所以經過上述的圖片前處理流程,我們已經準備好了模組訓練的基 本資料了,其中包含了原先的圖片集以及轉換後的 TFRecord 檔案,有了這些 資料集後,面臨了下一個思考的問題,要如何利用這些少量的資料來建置合 適的深度學習模組來進行訓練呢?. 25. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(36) 立. 政 治 大. ‧. ‧ 國. 學 y. Nat. n. al. er. io. sit. 圖 3.8 CSV 轉換 TFRecord 程式示意. 3.2.3. 遷移學習的構思. Ch. engchi. i n U. v. 如果是用相對少量的資料,訓練出來之模組勢必會遇到過度擬和的問題,所 以本研究就遷移學習方面進行探討希望可以解決少量資料訓練之問題,於 2009 年中 A Survey on Transfer Learning[24]這篇論文中已有討論傳統機器學習在遷移 學習上的可行性(見圖 3.9),對於不同的問題利用遷移學習的概念利用 pre-trained model 進而解決類似問題,在我們的推論中這是可行的,就有如譬喻的概念,對 於一個沒有看過老虎的但是看過貓的人,可以對那個人形容說老虎就是比較大隻 的貓,且身上有如同指紋般的紋路,這樣對於沒有看過老虎的人也能從原本貓的 樣子想像出老虎的輪廓,之後看到老虎就能直接的聯想到這是之前形容過的老虎,. 26. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(37) 依照這樣的概念,以下就深度學習的架構來探討遷移學習這樣的概念在物體偵測 上的可行性。. 立. 政 治 大. ‧. ‧ 國. 學 er. io. sit. y. Nat. 圖 3.9 A Survey on Transfer Learning 針對遷移學習之探討[22]. n. al. Ch. engchi. i n U. v. 深度學習需要用數據來訓練,並從數據中獲得資訊,進而把它們轉換成相應 的權重,遷移學習的概念就是從這一層層網路中每個節點的權重,從一個訓練好 的網路遷移到一個全新的網路,而不是從頭開始。這樣做的好處,可以從下面的 例子中做說明,假設你已經有了一個可以高精確度分辨貓和老虎的深度神經網路, 之後想訓練一個能夠分別不同品種的貓的圖片模型,此時需要做的不是從頭訓練 那些用來分辨直線、圓角的神經網路的前幾層,而是利用訓練好的網路,提取低 階特徵,之後只訓練最後幾層神經元,讓其可以分辨貓的品種。. 27. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(38) 我們之選擇這樣的方式去執行,主因是要訓練一個準確率高之模組,資料量 必須要相當相當的大,因為這樣才能充分捕捉數據間不同部分的聯繫(例如圖像 中的紋理和形狀),但是本研究目標的資料並沒有那麼多,另一個我們考量的重 點是,即使我們可以收集到那麼大量的資料,目前也沒有相對應的硬體來進行訓 練,如果要得到 fine tuned 的模組,可能要花費相當長的時間來進行訓練,在前 述的考量下,我們選擇使用遷移學習的概念來訓練本研究之判斷模組。 上一段敘述中提到資料量要大,才能充分捕捉數據間不同部分的特徵,,在 大量公開圖片資料集中較為有名的幾個訓練集分別為 ImageNet、PASCAL VOC、. 政 治 大. COCO DataSet,這幾個網站都提供了大量的資料供訓練,而我們選擇了以 COCO. 立. DataSet 訓練集為主的模組,原因如下:. ‧ 國. 學. 1. 既然提到遷移學習必須選擇類似的資料集來進行訓練,三個公開資料集. ‧. 都有船的圖片,但是 COCO DataSet 針對船的分類上以及物體量是最多. sit. y. Nat. 的,所以如果要利用相關的特徵去找船的話,但我們認為 COCO DataSet. al. v i n Csmall、middle、large COCO DataSet 中對於 h e n g c h i U的物體分布較均衡,其餘兩 n. 2.. io. 助。. er. 所訓練出來的特徵,會讓我們的後續針對船體的偵測會有比較大的幫. 個 DataSet 對於小物體的資料收集較為少(資料集中對於小船的標注可見 圖 3.10),這點對於衛星影像的偵測是有幫助的,因為衛星影像圖片的擷 取有時因為不同的解析度,所擷取出來的圖片不一定是大的物體,對於 部分的小船,我們希望本研究所訓練出來的模組也要可以辨識的出來, 所以我們選擇以 COCO DataSet 所訓練出來的模型進行調校。. 28. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(39) 立. 政 治 大. ‧ 國. 學. 圖 3.10 [4]左圖為未標註前的原圖、右圖紅色箭頭所標示的黑色物體為 CoCo DataSet 中標注出的小船. ‧. sit. y. Nat. 有了訓練的資料,以及決定了模組的訓練方向,接著探討本研究針對我們所預期的. io. 3.3. 研究架構設計. al. n. 進行探討。. er. 目標,要如何利用以上有的資源來進行相關的訓練,以下就本研究的架構設計以及流程. Ch. engchi. i n U. v. 3.3.1. 問題陳述 利用深度學習中遷移學習的概念,究竟對於衛星影像物體,也就是俯視物體 偵測,是否也可以用相同的概念來幫助少量資料集的物體的判斷,利用他人模組 進行調校所訓練出來新的模組,mAP 是否可以到達本研究所預期的目標,以及 不同大小的物體是否可以順利的被偵測出來,是否會有因為俯視物體被其他物體 部分遮蔽而導致無法偵測,以下就我們設計出之研究架構以及步驟進行說明。. 29. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(40) 3.3.2. 研究步驟 本研究利用前述提到的資料前處理處理後的資料透過 Python、Tesorflow 來 建置相關研究架構,其完整之研究架構詳圖 3.11,以下針對架構圖做說明。. 立. 政 治 大. ‧. ‧ 國. 學. n. 圖 3.11 研究架構. Ch. engchi. er. io. sit. y. Nat. al. i n U. v. 藍色的圓圈表示為可取得之公開資料,包含了上方的 Google Earth、ArcGIS Earth 所取得的公開資料,以及 Tensorflow 針對各模組所 Release 模組的 Code 以及訓練好的 CKPT 檔,綠色方框為本研究所處理之流程。. 本章已簡述本研究資料取得到轉換為 TFRecord 之流程,以下就其餘流程做說明, 轉換為 TFRecord 後,我們會利用 Train TFRecord 進行模組的訓練,透過遷移學習的概 念,本研究利用他人使用大量樣本所訓練之模組,透過這些模組,我們希望可以得到具 代表性的特徵擷取層,最後再利用我們的資料把特徵組合起來,進行物體分類辨識層, 進而得到本研究針對船艦的物體偵測模組,訓練出來的模組會透過我們撰寫的評估程式 30. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(41) 來計算該模組 mAP 的高低,如果判斷準確率不佳,我們會選擇調整模組參數重新訓練, 或者是效能實在太差,直接重新選擇更合適之模組,如果訓練之新模組準確率符合我們 的期待,那麼我們就會把訓練好的模組包成 Tensorflow Model File,透過 Python 程式, 使用者只要將圖片放在處理資料夾中,程式就會針對資料夾內的資料進行影像的物體偵 測,並且會呈現出結果讓使用者觀看。. 3.4. 目標設定 本研究的目標是希望利用遷移學習,透過合適的模組選擇以及重新調校,訓. 政 治 大 民船,且 mAP 要達 0.8 以上。 立 本章節針對資料處理以及整體研究設想已有初步的介. 練出準確率高的深度學習架構、藉以透過此模組來框選出衛星圖像中的軍艦以及. ‧. ‧ 國. 學. 紹,下個章節會依據上述的流程執行相關的程序、結果分析以及討論。. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 31. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(42) 第四章 研究過程與結果分析 本章節主要介紹如何使用 Ptyhon 以及 Tensorflow 來進行衛星影像資料判斷 的模組訓練,以及針對訓練的結果進行探討以及分析,以下就開發環境先行說明, 本研究所採用之硬體以及主要開發環境詳表 4.1。 名稱. 版次. CPU. Intel Core i7-6700. Memory. 16GB. 立GTX1070. GPU 卡. io. y. 2.0.8. a 1.6.0 l C h. n. Tensorflow. 3.5.4. sit. Keras. Windows10. Nat. Python. 7.0. er. OS. 9.0. ‧. CUDNN. ‧ 國. CUDA. 1.4.0. 學. labelImg. 政 治 大. engchi. i n U. v. 表 4.1 研究相關軟硬體環境簡述. 4.1. 研究過程 4.1.1. 演算法選擇 在評估本研究之目標前,首先我們先選擇我們認為最合適之模組來進行調校 以及訓練,這樣才能有效初步的評估本研究所設定的目標以及問題是否可以有效 的來達到或是解決,以下就本研究初步演算法選擇做說明。. 32. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(43) 首先本研究追求的是準確率而不是快速,所以 SSD 以及 YOLO 不會是我們 作為最優先考量的演算法,就算是上述提到的 YOLT 基於 YOLO 的演算法調校 後有得到不錯的成果,但我們認為利用 Two Stage 的物體偵測演算法會得到更好 的成果(Stage 示意如圖 4.1)。. 政 治 大. 立. ‧ 國. 學. 圖 4.1[25] 左方為 One Satge 演算法 SSD 之簡單示意,右方為 Two Stage 演 篹法 Faster RCNN 之示意. ‧. 在衛照影像的拍攝中,會因為解析度而有不同尺度(Scale)的照片,使用者所. y. Nat. io. sit. 需要處理的照片,不一定是固定視角的照片,所以影像以及需要判斷的物體解析. n. al. er. 度每次都是不固定的,而 Faster RCNN 的演算法剛好具有可輸入不限照片大小的. Ch. 特性,適合本研究來進行訓練。. engchi. i n U. v. 在 2017 年所發表的論文 Speed/accuracy trade-offs for modern convolutional object detectors[25],剛好也做了相關 Object Detection 各演算法的比較,其中讓 我們注意的一點是他們針對原先的 架構調整了其中的 convolutional feature extractor 來增加他們物體的偵測準確度,例如結合 Inception Resnet 的 Features 然後使用 atrous convolution [26] (如圖 4.2,同樣都是 3x3 Convolution,atrous convolution 可以利用調整更大的 rate,作用在更大的範圍的 feature map 下,得到 更大的 field-of-view,並且維持一樣的參數量),這樣的方式讓特徵圖縮小到同樣 倍數的情況下可以掌握更多圖像的訊息,可以得到更好的速度以及準確率。 33. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(44) 圖 4.2 atrous convolution 示意圖。[26]. 政 治 大. 這篇論文最後比較了幾個利用上述方式的演算法的準確度(如圖 4.3 所示),. 立. 且提到模組經過這樣的調整後對於較小物體的偵測也提升了不少的準確率,所以. ‧ 國. 學. 在 測 試 評 估 的 階 段 , 我 們 就 決 定 利 用 COCO DataSet pre-trained 的 faster_rcnn_inception_resnet_v2_atrous 這個模組來進行遷移學習概念的嘗試,評. ‧. 估我們的所提出的假設是否可行。. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 4.3 Speed/accuracy trade-offs for modern convolutional object detectors 論文 中各演算法之準確率比較[25] 34. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(45) 4.1.2. 測試評估階段 本研究最一開始的所收集的訓練集資料量,各類別資料量如表 4.2 所示。 名稱. 數量. 民船. Training Data 443 + Test Data 41 =484. 軍艦. Training Data 192 + Test Data 19 =211. 表 4.2 第一次訓練的資料量 在初步的評估成果,都是直接以 faster_rcnn_inception_resnet_v2_atrous 的 Pre. 政 治 大. trained Model 進行訓練,並沒有調校,結果為軍艦 AP 0.27,民船 AP 0.49、mAP. 立. 0.38,這對於兩個分類的物體偵測來說實在太低,觀察圖 4.4(紅框為未偵測出之. ‧ 國. 學. 船艦)以及 4.5(紅框為偵測錯誤之船艦)的成果,我們就可以很明顯地看到兩個類 別物體的偵測成果都不佳。. ‧. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 4.4 物體擷取不佳,連船都沒有辨識出來. 35. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(46) 政 治 大 立圖 4.5 民船、軍艦辨識錯誤率高. ‧ 國. 學. 我們認為這是資料量太少的原因,就算使用遷移學習的概念,基本的資料訓 練量還是要足夠,所以後續再收集各大港口的資料,針對各港口收集更多的船艦. ‧. 資料,第二次收集的資料量如表 4.3 所示。. y. al. Training Data 2102 + Test Data 268 = 2370. n. 軍艦. sit. 數量. er. io. 民船. Nat. 名稱. Ch. i n U. v. Training Data 664 + Test Data 63 = 727. engchi. 表 4.3 第二次訓練的資料量 這次 mAP 為 0.78(民船 AP 0.89、軍艦 AP 0.67),跟之前明顯有很大的差距, 但從圖 4.6、4.7 可以發現雖然整體船艦的偵測率提高,但是軍艦的判別還是有蠻 大的落差,軍艦 AP 只有 0.67。. 36. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(47) 立. 政 治 大. ‧. ‧ 國. 學. 圖 4.6 船艦物體偵測率提高. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 4.7 軍艦誤判的狀況 可是針對我國以及中國大陸的軍艦,我們都已經全面收集,要如何得到更多 資料呢?本研究嘗試用另一種方法,也就是數據增強來產生額外的訓練樣本。. 37. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(48) 4.1.3. 資料增強階段 資料可以說是驅使深度學習引擎全力運轉的動力,如果資料太少勢必會面臨 到 over-fitting 的現象,但是有些資料的收集確實無法收集到一定的量,所以這樣 的問題還是會需要解決的,當然解決 over-fitting 會有幾種方式,例如可以使用 dropout 減少幾個神經元,或是利用本研究所採用的數據增強方式,我們會使用 數據增強有以下幾點原因。 1. 資料量實際太少,使用其他方式效果有限,所以還是必須從資料量下手. 政 治 大 衛星影像會有幾點特性,(1)物體不會固定朝某一個方向,因為衛星影像 立 去解決。. 2.. 是可以旋轉的,(2)衛星影像的 Scale 是可以改變的,衛星影像拍照時,. ‧ 國. 學. 如果該衛星支援夠高解析度的鏡頭,每次拍照的解析度是可以依照需求. ‧. 調整(3)依照衛星拍照的角度,就算是相同的物體,也會有些微水平角度. sit. y. Nat. 偏移的現象發生,所以基於這幾點特性,其實我們可以基於原本的圖片. io. n. al. er. 系統化的生成出不同的照片。. i n U. v. 我們利用 Keras 以及 Python 針對軍艦照片隨機針對角度,水平翻轉、. Ch. engchi. 水平或垂直投影變換進行生成,生成的對照圖對應如圖 4.8 所示,並且我們 針對不同的解析度都擷取了幾張圖,最後我們把軍艦的照片增加到 3091 艘。. 38. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(49) 立. 政 治 大. ‧ 國. 學. 圖 4.8 左圖為原影像圖,右圖為資料生成之影像之一. ‧. 資料生成時要注意的一點就是生成圖片 factor 要跟原圖片影像之 factor. n. al. er. io. sit. y. Nat. 相同,否則會造成訓練上的問題,Python 數據增強部分程式碼參數見圖 4.9。. Ch. engchi. i n U. v. 圖 4.9 Python 數據增強部分程式碼 除了軍艦之圖片外,民船的圖片我們也增加了一些資料,所以原先的資 料加上數據增強後的資料量如表 4.4 所示。. 39. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(50) 名稱. 數量. 民船. Training Data 2470 + Test Data 662 = 3132. 軍艦. Training Data 2592 + Test Data 499 = 3091. 表 4.4 數據增強後的資料量 這樣的資料集用原先之模組訓練已可以達到 mAP 0.842,原先軍艦的判 斷率也有提高(如圖 4.10 所示),可見數據增強確實是有助於模組準確率的提 升。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 4.10 數據增強後軍艦原先判斷錯誤變成判斷正確的結果 4.1.4. 模組優化階段 我們確認 faster_rcnn_inception_resnet_v2_atrous 模組之可行性後,便以該模組為 基礎進行相關調校,調校後相關參數如表 4.5,參數調校後,得出結果 mAP 0.862 為調校後最好的成果,相關明確之成果以及其餘模組的比較會於可用性分析中探 討。. 40. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(51) 參數名稱. 參數. first_stage_features_stride. 8. first_stage_atrous_rate. 2. first_stage_localization_loss_weight. 2. first_stage_objectness_loss_weight. 1. first_stage_nms_iou_threshold. 0.7. maxpool_stride. 1. maxpool_kernel_size. 1. second_stage_iou_threshold. 0.6. second_stage_localization_loss_weight. 2. second_stage_classification_loss_weight. 1. 治 政 SOFTMAX 大 0.8. score_converter. 立. momentum_optimizer_value. learning_rate(Step70000). 0.00003. step. 100000. ‧. Batch_size. ‧ 國. 0.0003. 學. initial_learning_rate. 1(此項跟訓練的硬體有關). sit. y. Nat. io. n. al. er. 表 4.5 faster_rcnn_inception_resnet_v2_atrous 最後之調校參數. 4.2. 可用性分析. Ch. engchi. i n U. v. 4.2.1. 最後模組辨識率以及成果 最後細部分類準確率如表 4.6 所示,IOU threshold 表示在一次 bounding box 預測中,該 bounding box 算出的 IoU > IOU threshold 時為預測成功,所以 IOU threshold 越低就越代表評估的時候會將更多相似的物件擷取出來算為正確的預 測,本研究以下所提及之 mAP 都是以常見的 IOU > 0.5 來計算結果,另其訓練 時 TotalLoss 收斂結果如圖 4.11。. 41. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(52) 名稱. mAP. mAP. mAP. (IOU threshold 0.5). (IOU threshold 0.6). (IOU threshold 0.4). 軍艦. 0.816. 0.699. 0.825. 民船. 0.908. 0.754. 0.923. 全部. 0.862. 0.727. 0.874. 表 4.6 最後調校模組各分類之細部準確率. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 4.11 模組 TotalLoss 收斂圖示意 針對民船偵測圖示意如民船示意圖 4.12,可以跟圖 4.6 比較,模組經過調校 後,可以看到針對靠近的船體的偵測 faster_rcnn_inception_resnet_v2_atrous 也都 可以偵測出來。. 42. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(53) 政 治 大. 圖 4.12 民船偵測示意圖. 立. 另故意選擇海上有文字的照片,也不會被影響,軍艦的偵測準確率也上升了. ‧ 國. 學. 不少,偵測結果如圖 4.13 所示。. ‧. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 4.13 軍艦偵測示意圖 針對較小的船艦,也可以偵測的出來,另如果圖片有 google 浮水印,依然 可以辨識的出來,如圖 4.14 所示。. 43. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(54) 政 治 大. 圖 4.14 針對較小船體也可以偵測出來. 立. 海的顏色或是波浪也不會影響辨識,如圖 4.15 所示。. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i n U. v. 圖 4.15 海的顏色以及波浪,並沒有影響物體偵測的結果。 看完了 faster_rcnn_inception_resnet_v2_atrous 調校後的成果,我們用最後所 收集的資料利用各模組進行訓練,來比較一下我們所選擇的模組是否準確率是最 高的。. 44. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(55) 4.2.2. 各模組辨識率比較 我們選擇了另外 3 個演算法來進行比較,分別為 faster_rcnn_resnet101、 faster_rcnn_inception_v2、ssd_mobilenet_v2,表 4.7 為各演算法 mAP 比較。 名稱. 民船. 軍艦. 全部. 後 0.908. 0.816. 0.862. 0.814. 0.836. 0.792. 0.802. 0.359. 0.461. mAP(IOU threshold 0.5) 調. 校. faster_rcnn_inception_resnet_v2_atrous faster_rcnn_resnet101. 0.859. faster_rcnn_inception_v2. 立. ssd_mobilenet_v2. 治 政 0.812 大 0.563. ‧ 國. 學. 表 4.7 各演算法辨識 mAP 比較表. ‧. 其中可以看到 faster_rcnn 在準確率的表現上的確優於 SSD,SSD 在小物體. 、. faster_rcnn_resnet101. 、. io. er. faster_rcnn_inception_resnet_v2_atrous. sit. y. Nat. 的偵測上表現較差(如圖 4.16 所示,圖 4.16 演算法由左至右分別為調校後. al. v i n C h faster_rcnn 還要快上許多。 度或是模組的訓練時間上也的確比起 engchi U n. faster_rcnn_inception_v2、、ssd_mobilenet_v2),但 SSD 在不論在處理圖片的速. 圖 4.16 各演算法針對船體的偵測示意圖 45. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

(56) 4.2.3. 自動化判圖系統建置 為了可以方便使用者使用,後續利用 Python 寫了一個可以讓使用者方便使 用的圖片預測程式,讓使用者不需要操作 Tensorflow 就可以對於想處理的圖片 進行預測,使用者只需要把圖片放在資料夾中,然後執行我們寫的 Python 檔後, 再開啟資料夾,就可以看到我們所預測的圖片會存在於資料夾中(如圖 4.17 所 示)。. 政 治 大. 立. ‧. ‧ 國. 學. 圖 4.17 放進資料夾之圖片,處理完後會加上_result 之結果圖示意. y. Nat. io. sit. 該程式之撰寫是改寫了 Tensorflow 之程式把訓練完成之模組包成 Tensorflow. n. al. er. Model File(檔案格式如圖 4.18 所示,打包之模組檔,主要包含模組 fine tune 後的 ckpt. i n U. v. 檔,以及 Tensorflow Model File(frozen_inference_graph.pb),有了這幾個檔案,我. Ch. engchi. 們就可以利用程式來呼叫模組進行圖片預測),接著撰寫 Python 程式,把使用者丟 入之圖片,利用模組以及 matplotlib 處理完之資料另存於資料夾中,讓使用者只需執行 程式便可以得到結果預測之圖片,. 圖 4.18 檔案格式示意圖 46. DOI:10.6814/THE.NCCU.EMCS.004.2018.B02.

參考文獻

相關文件

目的 培養理性、智慧之人 培養具有基本能力之人 教學方法 古代典籍 基本學科(博雅教育) 重視教師教學能力 基礎學科(學科知識).

6 《中論·觀因緣品》,《佛藏要籍選刊》第 9 冊,上海古籍出版社 1994 年版,第 1

The first row shows the eyespot with white inner ring, black middle ring, and yellow outer ring in Bicyclus anynana.. The second row provides the eyespot with black inner ring

設計了正立方體框架的組合,在計算方塊個數與框架的差異性可透過等差數列的概念作 結合;而作品「腳踏實地」

哈佛大學教授夏爾(Jeanne Chall)1983 年曾以六個階段描述兒童學習 閱讀的歷程,這六個階段又可分成兩大部份,分別是: 「學習如何讀」(learn to read ),「透過閱讀學習知識」(read to

這個開放的課程架構,可讓學校以不同 進程組織學習經歷、調節學習內容的廣

學習範疇 主要學習成果 級別 級別描述 學習成果. 根據學生的認知發展、學習模式及科本

扣連生活,提升興趣 提升閱讀深度 加強文學感悟