• 沒有找到結果。

應用於水下休閒活動之即時物件偵測系統 - 政大學術集成

N/A
N/A
Protected

Academic year: 2021

Share "應用於水下休閒活動之即時物件偵測系統 - 政大學術集成"

Copied!
62
0
0

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

全文

(1)國立政治大學資訊科學系 Department of Computer Science National Chengchi University. 碩士論文 Master’s Thesis. 立. 政 治 大. ‧ 國. 學. 應用於水下休閒活動之即時物件偵測系統. ‧. Real-time object detection with applications to underwater. n. y. sit. io. al. er. Nat. recreational activities. Ch. engchi. i Un. v. 研 究 生:鄭文嘉 指導教授:廖文宏. 中華民國一百零九年七月 July 2020. DOI:10.6814/NCCU202001418.

(2) 應用於水下休閒活動之即時物件偵測系統 Real-time object detection with applications to underwater recreational activities. 研 究 生:鄭文嘉 Student:Wen-Chia Cheng 指導教授:廖文宏 Advisor:Wen-Hung Liao. 資訊科學系 碩士論文. 學. ‧ 國. 立. 政 治 大 國立政治大學. ‧. n. er. io. sit. y. Nat. A Thesis submitted to Department of Computer Science National a l Chengchi University iv n C h of the Requirements in partial fulfillment engchi U for the degree of Master in Computer Science. 中華民國一百零九年七月 July 2020. DOI:10.6814/NCCU202001418.

(3) 應用於水下休閒活動之即時物件偵測系統. 摘要 本論文試圖在一般相機所拍攝之水下影像,利用顏色修正技術, 讓目前已存在之影像資料集,經過訓練後,可被用來偵測水下影像。 本研究基於深度學習概念,使用屬於生成對抗網路之 pix2pix network,透過控制 loss function/ iteration/ 資料分群等方式,分析及. 治 政 大 評估各種參數調校,將水下影像進行修正,成為如水面上拍攝之影像 。 立 ‧ 國. 學. 此外,藉由遷移學習概念來訓練模組,分析各種物件之 AP 及整體 mAP,達成水下即時偵測物件的需求。. ‧. sit. y. Nat. 評估及測試不同模型與調整參數,得到最佳結果為:Fish AP 為. er. io. 0.71、Jellyfish AP 為 0.72 及 Diver AP 為 0.39,而整體 mAP 則為 0.606,. n. a. v. l C 相同條件下與未經影像修正相比,mAP 大幅提高了 n i 50.3%。期許此色. hengchi U. 彩修正及偵測系統,讓水下活動人員進行各項休閒之時,即時被面鏡 所限制的有限視野,也能藉著水下相機的架設,迅速偵測出視野內外 所需之物件位置及資訊,在有限時間內,增加水下活動的效益。. 關鍵字: 水下影像; 色彩修正; 物體偵測; 遷移學習; 深度學習。. DOI:10.6814/NCCU202001418.

(4) Real-time object detection with applications to underwater recreational activities. Abstract This thesis attempts to employ color correction techniques to restore underwater images so that object detection models trained with existing image datasets can be used to cope with underwater images without extensive retraining.. 政 治 大. Based on the concept of deep learning, this study uses pix2pix. 立. network, a variant of generative adversarial network (GAN), to enhance. ‧ 國. 學. the color of underwater images. We analyze and evaluate the efficacy of. ‧. restoration by exploring different combinations of loss function/ iteration/ data grouping. The object detection model is trained using transfer learning. y. Nat. meet the requirements of underwater activities.. n. al. er. io. sit. technique, and average precision (AP) and overall mAP are analyzed to. iv. C h that the AP U Experimental results indicate fornFish is 0.71, the AP for engchi. jellyfish is 0.72, and the AP for diver is 0.39, with an overall mAP of 0.606, demonstrating a remarkable 50.3% improvement when color correction is applied. It is expected that users can quickly identify the position and information of objects of interest within the field of view limited by the mask through the system, thereby enhancing the experience of underwater activities. Keywords: Underwater image, Color correction, Object detection, Transfer learning, Deep learning.. DOI:10.6814/NCCU202001418.

(5) 致謝. 感謝我的指導教授廖文宏老師的耐心與關懷,帶領我進入充滿未知與新奇 的研究世界,在這些年來給予最大的包容與悉心指導,讓我在每個研究環節都 有很多想法,是本研究及學位論文最大的推手。另外,承蒙兩位口試委員:李 建興教授與紀明德教授,對於本研究給予相當寶貴的意見,提供更完善的思考 方向與改善方針,使得本論文更加完備。通過資訊科學系的各種課程,引導跨 領域的我在資科研究的領域有更多工具與想法,感謝政治大學資訊科學系,提. 政 治 大. 供不同背景的學生有更多的學習選擇,謝謝所有曾經細心的對我授業指導的老 師們。. 立. ‧ 國. 學. 謝謝吳怡潔學姊在這段期間的關心與支持,在我遇到問題與困難之時,成 為我的技術支援與後盾,減少我走在研究路上的冤枉路。當然還有跟我一同成. ‧. 長、相互砥礪、及互相打氣的實驗室同窗御國同學,不論是上課期間的相互討. sit. y. Nat. 論,或是在工作繁忙之餘提醒彼此的研究項目,都是我最佳的合作夥伴。另. io. al. er. 外,也謝謝同實驗室的學弟與學妹,提醒我許多老師說過的注意事項,讓我避. iv n C hengchi U 此深深感謝你們曾經在我學習路上的幫助與共度所有美好的時光。 n. 免錯誤再次發生。還有許多同班的其他實驗室同學們,雖無法一一點名,但在. 最後,感謝我的家人,過去讓我可以有最大空間的唸書環境,而對現在已 經踏入職場上的我,在面對再一次的求學路程時,經常關心我的學習與研究狀 況,無條件的支持與包容,讓我在這些年無後顧之憂,專心在學業、研究、及 工作,一步步完成每個階段項目,是最辛苦幕後功臣。 僅將此篇論文,獻給我最愛的家人與所有幫助過我的人。 鄭文嘉 謹誌于 台北文山,國立政治大學資訊科學系 2020.07.31. DOI:10.6814/NCCU202001418.

(6) 目錄 第一章. 緒論 ......................................................................................................... 1. 1.1. 研究動機 ................................................................................................. 1. 1.2. 論文架構 ................................................................................................. 4. 第二章. 相關研究 ................................................................................................. 5. 2.1. 水下成像原理 ......................................................................................... 5. 2.2. 深度學習與物件偵測及顏色修正技術 ................................................. 7. 2.3. 色彩修正與生成對抗網路 ................................................................... 13. 第三章. 研究方法 ............................................................................................... 17. 3.1. 基本構想 ............................................................................................... 17. 3.2. 前期研究 ............................................................................................... 18. 立. 政 治 大. ‧. ‧ 國. 學. 水下影像收集 .............................................................................................................. 18. 3.2.2. Paired image 產生 ........................................................................................................ 18. 3.2.3. 模型評估 ...................................................................................................................... 20. 3.2.4. Loss function 評估 ....................................................................................................... 22. 3.2.5. 物體偵測的物件影像收集 .......................................................................................... 24. 3.2.6. 物件偵測模型效能評估 .............................................................................................. 24. y. sit. n. al. er. io. 3.3. Nat. 3.2.1. Ch. engchi. i Un. v. 研究架構設計 ....................................................................................... 24. 3.3.1. 問題陳述 ...................................................................................................................... 24. 3.3.2. 研究架構 ...................................................................................................................... 24. 第四章. 研究過程與結果分析 ........................................................................... 27. 4.1. 研究過程 ............................................................................................... 27. 4.1.1. 資料集說明 .................................................................................................................. 27. 4.1.2. Paired image 產出 ........................................................................................................ 28. 4.1.3. 色彩修正評估階段 ...................................................................................................... 31. 4.1.4. 物件偵測評估階段 ...................................................................................................... 36. 4.1.5. 物件偵測重新訓練階段 .............................................................................................. 37. DOI:10.6814/NCCU202001418.

(7) 4.2. 分析階段 ............................................................................................... 39. 4.2.1. Paired image 分析 ........................................................................................................ 39. 4.2.2. 色彩修正結果分析 ...................................................................................................... 39. 4.2.3. 物件偵測重新訓練結果分析 ...................................................................................... 39. 4.2.4. 顏色修正後的物體偵測結果分析 .............................................................................. 40. 4.3. 系統可行性分析 ................................................................................... 43. 4.3.1. 色彩修正可行性探討 .................................................................................................. 43. 4.3.2. 即時偵測之可行性探討 .............................................................................................. 43. 4.3.3. 即時物體偵測可行性探討 .......................................................................................... 44. 4.4. 研究結果之應用 ................................................................................... 44. 第五章. 結論與未來研究方向 ........................................................................... 45. 未來研究方向 ....................................................................................... 46. 學. 5.2. ‧ 國. 5.1. 治 政 大 結論 ....................................................................................................... 45 立. 參考文獻 ..................................................................................................................... 47. ‧. 附錄 ............................................................................................................................. 50. n. er. io. sit. y. Nat. al. Ch. engchi. i Un. v. DOI:10.6814/NCCU202001418.

(8) 圖目錄 圖 1.1:GoPro Hero 8 ................................................................................................... 3 圖 1.2:Nvidia Jetson-tx2 ............................................................................................. 3 圖 2.1:可見光在純水和海水中的體積吸收係數和衰減波長之關係...................... 6 圖 2.2:各種光源通過海水不同距離的光譜衰減...................................................... 7 圖 2.3:深度神經網路架構.......................................................................................... 7. 政 治 大. 圖 2.4:CNN 建構之神經網路 .................................................................................... 8. 立. 圖 2.5:Convolution 運算 ............................................................................................ 8. ‧ 國. 學. 圖 2.6:Max pooling 運算 ............................................................................................ 9. ‧. 圖 2.7:二階段物件偵測............................................................................................ 13. y. Nat. al. er. io. sit. 圖 2.8:生成對抗網路架構........................................................................................ 14. v. n. 圖 2.9:GAN 訓練流程 .............................................................................................. 15. Ch. engchi. i Un. 圖 3.1:CycleGAN f 生成流程 .................................................................................. 18 圖 3.2:CycleGAN 實現............................................................................................. 19 圖 3.3:cGAN 概念 .................................................................................................... 21 圖 3.4:pix2pix 結構 .................................................................................................. 22 圖 3.5:研究架構........................................................................................................ 25 圖 4.1:CycleGAN 訓練資料集 A 結果................................................................... 29 圖 4.2:CycleGAN 訓練資料集 B 結果 ................................................................... 30. DOI:10.6814/NCCU202001418.

(9) 圖 4.3:不同 λ 結果.................................................................................................. 32 圖 4.4:訓練集數量控制結果.................................................................................... 33 圖 4.5:訓練迭代次數控制結果................................................................................ 34 圖 4.6:軟體自動修正結果........................................................................................ 35 圖 4.7:潛水員(混合)的 Loss .................................................................................... 38 圖 4.8:水母(混合)的 Loss ........................................................................................ 38 圖 4.9:魚(混合)的 Loss ............................................................................................ 38. 治 政 大 圖 4.10:Diver 偵測結果 ........................................................................................... 40 立 ‧ 國. 學. 圖 4.11:不同訓練集的 fish 偵測信心指數.............................................................. 41 圖 4.12:不同訓練集的 jellyfish 偵測信心指數 ...................................................... 41. ‧. sit. y. Nat. 圖 4.13:不同影像大小的偵測信心指數.................................................................. 42. n. al. er. io. 圖 4.14:將研究結果應用物體偵測系統之示意圖.................................................. 45. Ch. engchi. i Un. v. DOI:10.6814/NCCU202001418.

(10) 式目錄 式 2.1:照度計算.......................................................................................................... 5 式 2.2:樣本數量計算.................................................................................................. 9 式 2.3:recall & precision & F1-score 計算 ................................................................. 9 式 2.4:IOU 計算 ....................................................................................................... 10 式 2.5:AP 計算 ......................................................................................................... 12. 政 治 大. 式 3.1:CycleGAN D&G loss .................................................................................... 19. 立. 式 3.2:CycleGAN cycle loss ..................................................................................... 20. ‧ 國. 學. 式 3.3:CycleGAN total loss ...................................................................................... 20. ‧. 式 3.4:cGAN loss function........................................................................................ 21. y. Nat. al. er. io. sit. 式 3.5:pix2pix L1 loss function ................................................................................ 22. v. n. 式 3.6:pix2pix target function ................................................................................... 22. Ch. engchi. i Un. 式 3.7:WGAN loss function...................................................................................... 23 式 3.8:Weight clip ..................................................................................................... 23 式 3.9:取代 weight clipping 的作法......................................................................... 23 式 3.10:最終使用之 loss function ............................................................................ 23. DOI:10.6814/NCCU202001418.

(11) 表目錄 表 2.1:偵測範例(魚數量).................................................................................... 10 表 2.2:大於 IOU 閥值的偵測範例 .......................................................................... 11 表 2.3:Rank 排序範例 .............................................................................................. 11 表 2.4:precision-recall 計算結果範例 ...................................................................... 12 表 4.1:資料集............................................................................................................ 28. 政 治 大. 表 4.2:CycleGAN 訓練集 NIQE 分數 ..................................................................... 28. 立. 表 4.3:Paired image NIQE 分數 ............................................................................... 30. ‧ 國. 學. 表 4.4:顏色修正評估階段之 NIQE 分數 ................................................................ 31. ‧. 表 4.5:COCO-trained models ................................................................................... 36. y. Nat. al. er. io. sit. 表 4.6:模型評估........................................................................................................ 37. v. n. 表 4.7:影像類型........................................................................................................ 37. Ch. engchi. i Un. 表 4.8:預訓練與重新訓練的比較............................................................................ 39 表 4.9:顏色修正前後的物體偵測結果.................................................................... 40 表 4.10:影像大小比較.............................................................................................. 42. DOI:10.6814/NCCU202001418.

(12) 第一章 緒論 1.1. 研究動機 海洋面積約 362,000,000 平方公里,近地球表面積的 71%。海洋約占地球上 總水量的 97%,在地球生命所需物質的循環,扮演關鍵的角色。海洋生物豐富 而神祕,在澄藍的海平面下方,覆蓋著地球 80%的生物,海浪推動水流,供給. 政 治 大. 氧氣、營養與能量,平衡氣候,孕育地球的生命。. 立. 自古以來,人類便在地表上不斷的探索,爬上高山,走過高原,穿越沙漠,. ‧ 國. 學. 觀察草原上的生物,研究土壤內的礦物,進行太空競賽,人類對於未知領域, 有著無限的探索慾望,當然也會想了解這幾乎覆蓋著整個地球表面的大海。但. ‧. Nat. er. io. sit. 險,即使科技日趨發達的今日,人們還是無法清楚瞭解。. y. 由於人類本身的限制,無法在水下自由的活動,水下的世界至今依然神秘且危. 近年來,水域休閒運動越來越盛行,其可粗分為水面之上(水上)及水面之下. n. al. Ch. i Un. v. (水下)運動,諸如游泳(Swimming)、衝浪(Surf)、或浮潛(Snorkel Diving). engchi. 等都是常見的水上運動;而像需要穿著厚重裝備的水肺潛水(Self-Contained Underwater Breathing Apparatus Diving, Scuba Diving),或具有危險性的自由潛 水(Free Diving)等即為水下運動。事實上,人類可以探索水世界的方法越來越 多,也就越對未知的水領域更好奇,也因為水下休閒活動越來越普及,讓人們可 以更容易更直接的親眼看到所在的海拔深度下的物體。 水下水域運動中的潛水依照入水地點可分為岸潛及船潛,然而,不論是哪一 種方式入水或哪一種方法潛水,都因裝備本身限制而讓人類的視野有很大的侷限, 也因為人類生理先天限制,每天可以潛下水中的時間與次數被侷限著[1]。因此, 1 DOI:10.6814/NCCU202001418.

(13) 目前水下休閒活動都是透過攝影設備紀錄下潛的影像,返回水面上後藉由每次的 紀錄來增加對水下世界細節的了解。然而,利用增加下水次數來了解海域,除非 本身對於該處有多次的下潛經驗,可以在看到物體的當下就知道其資訊,但這僅 限於本身,無法當下將自我理解分享給其他同水域的人。事實上,水下無法使用 言語溝通,只能透過敲擊聲音來提醒其他人,再使用文字來告知物體資訊,這一 來一往的時間,早就錯過了最佳時機,更不用說在不同深度及不同水域有著不同 的聲音傳遞速度[2],而水下的每個生物出現的時機及環境的狀況都是獨一無二 且無法複製,也是目前潛水休閒活動無法解決的難題。. 政 治 大 較長的光如紅光、橙光,容易被吸收。而波長較短的藍光、紫光,在水中較容易 立 此外,紀錄的水下影像有著先天的物理限制[3],因太陽光線射入水中,波長. ‧ 國. 學. 散射或反射,被吸收的相對少。另外,長波長的光能量較低(如紅光、橙光、黃 光),它們能穿透海水的深度並不深,約到水深 100 公尺左右就幾乎沒能量;相. ‧. 反的,波長短的能量較高(如綠光和藍光),則可以穿透的深度較深,約可到達. sit. y. Nat. 水深 200 公尺,這也是為什麼水下影像,越深的地方拍攝出來會越偏藍,也就會. al. n. 距。. er. io. 造成透過紀錄看到的物體與真實的顏色會不同,使得對該物體認知上與實際有差. Ch. engchi. i Un. v. 綜合以上,現階段是否有哪些工具或技術,可以讓我們及時地取得水下物 體的基本資訊,或者可以提醒水下活動人員物體出現的方位及位置呢?水面上 的物體偵測方法非常多,如 SSD、R-CNN[4]、Faster R-CNN[5]、YOLO[6],這些 在物體偵測上都有不錯準確度與良好的偵測速度。 至於水下攝影機部分,一般大眾所熟知品牌,如 GoPro 公司出的運動攝影機 (Hero 8,如圖 1.1 所示),提供任何時間與地點的影像的輸入與紀錄,並可使 用 LiveView 功能及時透過該攝影機的顯示器看到攝影的畫面,搭配許多機器學. 2 DOI:10.6814/NCCU202001418.

(14) 習平台問世(jetson-tx2,如圖 1.2 所示),可將影像即時偵測並將資訊提供給使 用者。. 政 治 大 立圖 1.1、GoPro Hero 8 ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i Un. v. 圖 1.2、Nvidia Jetson-tx2. 然而,上述所提到之物件偵測的深度學習模型都是基於水面上的影像訓練而 來,並無法直接用於水下影像,目前並無系統可提供水下休閒活動即時偵測物體, 而我們歸納上述對於水下運動的初步認識,以及水下影像的物理限制,可以藉由 上述水下攝影機及機器學習平台系統,將色彩修正及物件偵測模型整合,達到即 時輔助之功能。 3 DOI:10.6814/NCCU202001418.

(15) 以下列舉本論文的主要貢獻: 1.. 我們提出經由水下影像做出顏色修正,使得影像紀錄可以正確的呈現出 實際色彩的表現。. 2.. 我們也提出,基於目前已經存在之影像資料集,諸如:Kaggle[21], OpenImage[10],MS COCO [22], ImageNet[23],PASCAL VOC[24], 或甚至是個人過去所紀錄之影像,可以直接使用並訓練出所需要之模型, 將待測影像在偵測前,透過顏色修正後,可提供給各個模型進行物件偵 測,大幅降低訓練資料的收集與整理。. 3.. 政 治 大. 透過此系統,當在進行水下活動之時,可分辨出是否為危險性生物,提. 立. 高水下休閒活動的體驗。. ‧ 國. 學 ‧. 1.2. 論文架構. sit. y. Nat. 本論文架構如下所述。第二章的相關研究中,我們會先探討水下顏色變化與. io. er. 深度之間的關係。此外,也會探討目前物件偵測各種模型的相關議題。在第三章 的研究方法中,首先針對色彩修正(color correction)這個議題,提出本研究的基本. al. n. iv n C 構想,並簡單地展示所做的前期研究,接著針對物件偵測(object detection)各類模 hengchi U 型,進行執行速度及 mAp 進行簡單的比較。得到這些初步的成果後,設計其研 究架構,以及預期的目標。在第四章,將詳細地描述研究的資料蒐集與其過程, 簡介所使用的分析工具,以及研究結果的分析,並討論如何將其應用於水下即時 物體偵測系統。而最後的第五章,本論文將做一個簡單的結論,並提出未來可能 繼續研究發展的方向。. 4 DOI:10.6814/NCCU202001418.

(16) 第二章 相關研究 在本章節中,我們將針對水下影像做三個部分相關研究之探討。其一是,針 對水下成像原理進行探討;其二,則針對目前物件偵測技術之文獻進行重點回顧; 其三,探討色彩修正及生成對抗網路(Generative Adversarial Network, GAN)的原 理。藉由這三個部分,除了可以得知現今物件偵測的發展,更可以進一步了解在 水下物體偵測相關領域進展概況。. 2.1. 水下成像原理. 立. 政 治 大. ‧ 國. 學. 顏色相關領域中,其研究及發展已經有一定的歷史,而水下光衰(underwater light decay)一般在生活當中不易發現,因為水中的顏色衰減需要有一定的深度,. ‧. 除非去大型的海洋博物館,否則難以察覺這個一直存在的基本現象。Ocean News. Nat. er. io. sit. y. & Technology 期刊在 2013 有針對此現象的基本原理進行說明[7]。 首先,測光,也就是提到有關「照度」的議題時,都牽涉到「平方反比定律」:. n. al. Ch. e𝑬 n= g𝑰 c h i. i Un. v. 𝑫𝟐. 式 2.1、照度計算 其中,E:照度,I:點光源強度,D:受光面與點光源之距離,也就是在某距離 上的照度與光源的亮度成正比,而與其距離的平方成反比。此外,總照度(total illumination)是待測目標的直接照明(direct llumination)和漫射照明(diffuse illumination)的總和。直接照明是指從光源直接進入視線的光,漫射照明是經由 多個散射過程以間接路徑傳播並到達目標的光。不論是直接或漫射,其特性受到 溫度、鹽度、固體溶解的濃度、甚至到水分子本身的結構等各種相關參數的限制。 5 DOI:10.6814/NCCU202001418.

(17) 除了上述參數,光的波長(wavelength of light)與光束角度(beam angle of the light source),共同影響了光的吸收與反射,進而造成光衰減的現象。 會發生直接照明損失(Direct illumination losses)是由於光源與物體之間的 水吸收而造成的。一般而言,光與水分子的相互作用決定了水中的光吸收。當光 子接觸水分子時,會被吸收並轉化為熱能。這種反應的強烈與否取決於於光波長: 紅色和紫色衰減強烈,可見光的藍綠色區域的衰減最小。這就是為什麼海水經常 是藍綠色的原因。此外,水中的其他物質(如,懸浮固體、生物物質、和溶解的 有機物質)也有機會造成進一步光衰減,使得藍色的光衰減更大,而在沿海和河. 政 治 大 向水的顏色往綠色靠近。(如圖 2.1 所示) 立. 口的水域,有機物和其他溶解物質的濃度通常較高,藍色光被吸收率較高而導致. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i Un. v. 圖 2.1、可見光在純水 (Pope and Fry, 1997)和海水(Smith and Baker, 1981)中的體 積吸收係數和衰減波長之關係. 光在其光路徑上行進中,在討論散射現象時,除了原本光束行進路徑的直接 照明分量外,還可以分解成一部分光折射分量及一部分光反射分量,而這兩部分 會偏離原來的光行進方向。如前述,這些變化是由於溫度、懸浮顆粒、及溶解的 固體所引起的。一般而言,散射與光波長存在著一定的關係,但事實上,造成散 射的主因與光行進中的介質成分的關係更為明顯。散射會使得部分光源偏離原本 6 DOI:10.6814/NCCU202001418.

(18) 光路徑,但也會因為散射使得光將返回原光路徑,然後照射在物體上,使得總照 度上升。根據 Ocean News & Technology 期刊上所述,在距光源大於一到兩個衰 減距離處,總照度的散射分量將變得很明顯,並開始超過或已經超過直接照明分 量。因此,當白色光源(全波段)照射在水中時候,反應出的顏色會因吸收和散 射而降低飽和度,然後接近單色光源(特定波段)的顏色,這是不同光波長穿過 水的衰減比例不相同造成的(如圖 2.2 所示)。 光衰減會使得總照度受限制,也 會使得水中傳輸顏色訊息的範圍受到限制。. 政 治 大. 立. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i Un. v. 圖 2.2、各種光源通過海水不同距離的光譜衰減 (Aaron Steiner, ONT, May 2013).. 2.2. 深度學習與物件辨識 提到電腦視覺領域中的物件偵測技術,CNN(convolutional neural network) 是一個必須了解的基礎。如同一般的神經網路(圖 2.3),除了 affine layer 外, 不同的是 CNN 增加新的 convolution layer 及 polling layer(圖 2.4)。. 7 DOI:10.6814/NCCU202001418.

(19) Input image. Affine. ReLU. Affine. ReLU. Affine. ReLU. Affine. ReLU. Affine. Softmax. 圖 2.3、深度神經網路架構. Input image. Conv. ReLU. Polling. Conv. ReLU. Polling. Conv. ReLU. Affine. ReLU. Affine. Softmax. 圖 2.4、CNN 建構之神經網路. 政 治 大. 為了改善 Affine layer 會忽略資料的「形狀」,因此增加了 convolution layer. 立. (圖 2.5),期望將資料的形狀維持住。舉例來說,輸入影像為 RGB 三維形態,. ‧ 國. 學. 類似的空間經常會有類似的像素值,而 RGB 三顏色之間,也有相當緊密的關聯 性;反之,較遠距離的像素通常則沒有緊密的關聯性,這在保持資料形狀的前提. ‧. 下,就多了這個隱藏的關聯性,也就是 affine layer 這種將所有資料當成相同維度. y. Nat. io. sit. 來處理而無法找到的隱藏關聯性。另外,新增加的 polling layer,一般有 max polling. n. al. er. 及 average polling,影像識別通常使用 max polling(圖 2.6),目的為由目標區域. Ch. i Un. v. 取得該區域的最大值,如此一來,可以縮小垂直及水平空間的運算。. engchi. 圖 2.5、Convolution 運算. 8 DOI:10.6814/NCCU202001418.

(20) 圖 2.6、Max polling 運算 有了基本概念後,必須探討的如何評估偵測的成效。一般來說,物體的偵查 評估是基於 F1 socre 或 mAP。所謂的 F1 socre ,針對預測的資料去進行假設,再 把實際結果與假設做適當的運算,得到的即為 F1 score。再仔細說明如下:如果 預測為正,實際為正,則為 true positive(TP);如果預測為正,實際為負,則為. 政 治 大. false positive(FP);如果預測為負,實際為正,則為 false negative(FN);如. 立. 果預測為負,實際為負,則為 true negative(TN)。通常在 dataset 中,我們可以. ‧ 國. 學. 定義出正樣本數為 P,負樣本數為 N,這麼一來,可以得到:. ‧. 𝑷 = 𝑻𝑷 + 𝑭𝑵. n. al. Ch. engchi. y. sit. io. 式 2.2、樣本數量計算. er. Nat. 𝑵 = 𝑻𝑵 + 𝑭𝑷. i Un. v. 基於此基礎,可以定義出兩個指標:recall、precision,其與 F1 score 關係如下: 𝑹𝒆𝒄𝒂𝒍𝒍 =. 𝑻𝑷 𝑻𝑷. = 𝑻𝑷 + 𝑭𝑵 𝑷. 𝑷𝒓𝒆𝒄𝒊𝒔𝒊𝒐𝒏 = 𝑭𝟏 =. 𝑻𝑷. 𝑻𝑷 + 𝑭𝑷. 𝟐𝑻𝑷 𝟐 ∙ 𝑷𝒓𝒆𝒄𝒊𝒔𝒊𝒐𝒏 ∙ 𝑹𝒆𝒄𝒂𝒍𝒍 = 𝟐𝑻𝑷 + 𝑭𝑵 + 𝑭𝑷 𝑷𝒓𝒆𝒄𝒊𝒔𝒊𝒐𝒏 + 𝑹𝒆𝒄𝒂𝒍𝒍. 式 2.3、recall & precision & F1-score 計算. 9 DOI:10.6814/NCCU202001418.

(21) 另一個評估指標為 mAP(mean Average Precision, 即各類 AP 的平均值)。 先說明 IOU (intersection over union):「兩個物件的交集」除以「兩個物件的聯 集」。 𝑰𝒐𝑼 =. 𝑨𝒓𝒆𝒂 𝒐𝒇 𝑶𝒗𝒆𝒓𝒍𝒂𝒑 𝑨𝒓𝒆𝒂 𝒐𝒇 𝑼𝒏𝒊𝒐𝒏. 式 2.4、IoU 計算 因此,如果假設 IoU 的閥值(threshold)為 0.5,則如果 IoU > 0.5,可以被認為 此次偵測為正確檢測(true detection,TP),反之則為錯誤檢測(false detection, FP)。接著說明 AP(Average Precision),假設偵測某一物體(例如偵測魚),. 政 治 大. 實際上有 8 隻魚(ground truth 1~8),而 detection model 偵測出的 Bounding box. 立. 學. ‧ 國. 有 10 個(Bounding box 1~10),根據 IoU 知道 overlap 的多寡,而 ground truth 7&8 沒有偵測到(FN),如表 2.1:. n. al. Ch. engchi. y. Probability 0.9 0.9 0.2 0.8 0.2 0.7 0.3 0.4 0.7 0.9. sit. IoU 0.8 0.7 0.1 0.2 0.1 0.7 0.1 0.2 0.7 0.8. er. io. Bounding Box BB1 BB2 BB3 BB4 BB5 BB6 BB7 BB8 BB9 BB10. ‧. Nat. Ground Truth 1 2 1 2 3 4 3 4 5 6 7 8. i Un. v. 表 2.1、偵測範例(魚數量) 如前述,假設 IoU 的閥值是 0.5,大於 0.5 才是 TP,可得到表 2.2:. 10 DOI:10.6814/NCCU202001418.

(22) Bounding Box BB1 BB2 BB3 BB4 BB5 BB6 BB7 BB8 BB9 BB10. IoU>0.5 1 1 0 0 0 1 0 0 1 1. Probability 0.9 0.9 0.2 0.8 0.2 0.7 0.3 0.4 0.7 0.9. 表 2.2、大於 IoU 閥值的偵測範例. 政 治 大. 再根據 Probability 來排出順序,如表 2.3:. n. Ch. engchi. Probability 0.9 0.9 0.9 0.8 0.7 0.7 0.4 0.3 0.2 0.2. y. sit. er. ‧ 國 io. al. IoU>0.5 1 1 1 0 1 1 0 0 0 0. ‧. Nat. Bounding Box BB1 BB2 BB10 BB4 BB6 BB9 BB8 BB7 BB3 BB5. 學. Rank 1 2 3 4 5 6 7 8 9 10. 立. i Un. v. 表 2.3、Rank 排序範例. 可以計算各個大於該 rank 下的 precision 及 recall,可得到表 2.4. 𝒑𝒓𝒆𝒄𝒊𝒔𝒊𝒐𝒏 =. 𝒓𝒆𝒄𝒂𝒍𝒍 =. >≥ 該𝑹𝒂𝒏𝒌被判斷為魚的個數A >≥ 該𝑹𝒂𝒏𝒌的總個數A. >≥ 該𝑹𝒂𝒏𝒌被判斷為魚的個數A >真的為魚的個數A 11 DOI:10.6814/NCCU202001418.

(23) Rank 1 2 3 4 5 6 7 8 9 10. Bounding Box BB1 BB2 BB10 BB4 BB6 BB9 BB8 BB7 BB3 BB5. IoU>0.5 1 1 1 0 1 1 0 0 0 0. Probability 0.9 0.9 0.9 0.8 0.7 0.7 0.4 0.3 0.2 0.2. Precision 1 1 1 0.75 0.8 0.833 0.714 0.625 0.556 0.5. Recall 0.125 0.25 0.375 0.375 0.5 0.625 0.625 0.625 0.625 0.625. 表 2.4、precision-recall 計算結果範例. 政 治 大 根據 precision 及 recall,AP 就是計算這 precision-recall curve 下的面積。另外, 立. ‧ 國. 𝟏 𝑹𝒆𝒄𝒂𝒍𝒍 ∈ {𝟎, 𝟎. 𝟏, 𝟎. 𝟐, … , 𝟎. 𝟗, 𝟏. 𝟎}𝑷𝒓𝒆𝒄𝒊𝒔𝒊𝒐𝒏(𝑹𝒆𝒄𝒂𝒍𝒍) 𝟏𝟏. ‧. io. y. sit. Nat. 式 2.5、AP 計算. n. al. er. 𝑨𝑷 =. 學. 將 recall 細分為 11 等分,在 recall 上算 precision,也可以寫出式 2.5:. i Un. mAP 即為計算每個分類的 AP 後,總和再求其平均。. Ch. engchi. v. 了解評估成效的指標及 CNN 的基礎後,接著我們繼續探討電腦視覺中的物 件偵測模型。整體來看,目前物件偵測主要可分為 2 種作法:二階段處理(Twostage Learning 與一階段處理(One-stage Learning)。 二階段處理,會用某些方法,如 Selective Search,先選出候選區域(Region Proposal),一般會在圖片上取出約數百個候選的區域。然後針對選出的區域透過 分類器(classifier)再進行物件辨識,進一步找出分類及位置修正,需注意的是, 因為選出的物件大小不會相同,因此 classifier 可能只能做到分類,但也可能有特 徵擷取及分類。R-CNN、Fast R-CNN、Faster R-CNN 等皆屬此類。二階段處理最 12 DOI:10.6814/NCCU202001418.

(24) 大的問題是:如果選出來的物件太多,例如,一張圖之中就選出三千個候選區域, 那麼第二階段的使用 classifier 辨識就必須用重複做三千次,假設一個候選區域 辨識要 0.05 秒,則三千個候選區域至少需要 150 秒,在現今主流使用上,如每 個人都有的手機或家中簡單的監視設備,並不會有計算能力強大 GPU 提供平行 運算,也就無法達到即時的物件偵測。. RCNN. Fast RCNN. Region proposal (SS). Region proposal (SS). Feature extraction (Deep Net). Feature extraction. 立. 圖 2.7、二階段物件偵測. Feature extraction Classification + Rect refine (Deep Net). 學. ‧ 國. Rect refine (Regression). Region proposal. 治 政 大 (Deep Net). Classification + Rect refine. Classification (SVM). Faster RCNN. ‧. sit. y. Nat. 基於上述缺點,一階段方法因而產生,此類方法不需要先選出候選區域再做. io. er. 辨識,而是將兩個任務一次做完,換句話說,使用一個深度神經網路模型就可以 同時偵測物件位置及辨識物件,如 YOLO[29]、Single Shot Detector (SSD)[8]、. al. n. iv n C RetinaNet [25 ]等。然而,雖然大幅提高運算速度,但整體辨識準確度與二階段方 hengchi U 法相比,通常都比較差,這時候就端看設定之運算速度下,整體辨識率是否可以 接受,而就目前看來,如果資料集準備上及標籤設定沒太大問題,基本都在可接 受範圍內。. 2.3. 色彩修正與生成對抗網路 由前述可知,水下影像會有顏色衰減(color decay)的現象,如何恢復消失的 色彩至今仍然是一個難題。Sea-thru[26]在 2019 年被提出,主要基於物理修正方 式,藉由考慮了光吸收及散射的物理特性,將影像恢復成如同在空氣中拍攝一 13 DOI:10.6814/NCCU202001418.

(25) 樣。Sea-thru 所需要的資料集不同於目前已經存在之影像資料,需要一些前置作 業:其一為必須準備帶有深度訊息(RGBD)的影像,即為物體與相機的深度關係 (range map)。這部分須藉由帶有深度資訊的相機進行水下影像的拍攝,或是一 個場景藉由多張不同角度的影像來計算出深度資訊。其二,訓練階段,每張水 下影像必須包含一個彩色色卡(Color Checker)來當參考。而收集到的水下影像, 其顏色變化與懸浮固體、生物物質、及溶解的有機物質都有關係,如採用物理 修正,將會受到海域的限制。另外,使用物體與相機之間的深度資訊,存在一 個硬體限制: 距離相機較遠的部分其深度資訊一般回報無限大,或者,如採用 多張影像計算深度,除了低光源造成距離分析困難,更會產生盲區而缺少資訊。. 政 治 大. 生成對抗網路(Generative Adversarial Network,GAN)[9]或許可以解決這些問題。. 立. 由圖 2.8 可看出 GAN 基本上為 2 個 Network:Discriminator 及 Generator。. sit. y. Fake Image. n. al. er. io Real Image. ‧. ‧ 國. 學. Generator Network. Nat. Noise. Ch. iv Discriminator n Network hi U. engc. Predict Label. 圖 2.8、生成對抗網路架構. Discriminator Network 簡單來說就是藉由訓練一個神經網路去分辨 fake image 跟 real image。將 real 標註 1,fake 標註 0,進行 training 即可。而 Generator Network 的概念就是要訓練出一個神經網路讓 Discriminator 分辨出來的結果越 接近 real 越好,即 Predict Label 越接近 1 越好,loss 的 target 為 1,然後再更新 generator 權重(weight)。 14 DOI:10.6814/NCCU202001418.

(26) 事實上,可以把 Generator NN 及 Discriminator NN 看成一個完整的神經網 路,可以假設共 20 層 layer 的 NN,Generator 是前 10 層,Discriminator 是後 10 層,然後這個模型做出的預估,其值越要接近 1 越好,如此即可較為簡單來看 這個模型。但是這裡我們只更新 Generator 的 weight,Discriminator 的 weight 要維持,這樣才可以將更新後的 Generator 所產生出來的假圖,在 Discriminator 上的值越接近真實的結果。我們可以用一個結論來表示,其實就是更新生成器 的參數讓 Discriminator 接近真實的結果,如圖 2.9。. 立. 政 治Fake 大 Image. 學. ‧ 國. Noise. Generator Network. D_Loss. Nat. n. Ch. engchi. er. io. al. Real Image. sit. y. ‧. Discriminator Network. G_Loss. i Un. v. 圖 2.9、GAN 訓練流程. 透過 G_Loss 更新 Generator NN 的參數,類似的想法,透過 D_Loss 來更新 Discriminator NN 的參數。其中 G_Loss 為 Generator 所產生的 fake image 且輸 入給 Discriminator 後與 1 的 loss,而 D_Loss 為 Generator 產生的 fake image 輸 入給 Discriminator 後與 0 的 loss,以及加上 real image 輸入給 Discriminator 後 與 1 的 loss。基於此概念,可以將因顏色衰減的影像,透過 GAN 產出接近顏色 正常的影像,進行類似顏色修正的行為,產生出如同在水面上拍攝的影像。 15 DOI:10.6814/NCCU202001418.

(27) 針對以上文獻的探討,基本上可以產出此研究大致的架構,也對於處理相關 此研究相關的方法,能夠提供較清晰的方向。下一章,將針對兩部分進行討論: 色彩修正中 model 及 loss function 的評估,以及各類物件偵測模型的優劣評估。. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i Un. v. 16 DOI:10.6814/NCCU202001418.

(28) 第三章 研究方法 在本章節中,我們將著重在顏色修正及物件偵測偵測模型的討論與分析,也 會根據目前可用的技術或工具,找出評估指標,進而提出本研究的基本構想。 緊接著為進行前期研究,依照研究的結果,分析及評估基本的研究構想之可行 性。基於這個基本構想為前提,設計出研究的架構細節、執行的分段分配,以 及預期目標。. 3.1. 基本構想. 立. 政 治 大. ‧ 國. 學. 在水下影像中,經常因為水的深淺而導致影像有不同的顏色表現,也會因為 海域的不同,即便是在相同的深度及相同的光源,也會出現有不同的水下影像。. ‧. 深度學習架構的訓練,其訓練集的收集為影響結果的重要因素之一,針對此部分,. Nat. sit. y. 雖本身有潛水執照並有水下的影像紀錄,但樣本的數量及品質仍然不足以用於此. n. al. er. io. 研究,因此對於水下顏色修正,除了自有的資料集以外,仍會進行更多的水下影. i Un. 像收集,也需要收集用於 GAN 模型的訓練資源。. Ch. engchi. v. 而藉由完成的顏色修正模型,在物件偵測部分則不需特別針對水下影像資料 集的收集,反而可以使用目前開源的一般影像,進行訓練。因此這個階段主要會 在與各個物件偵測模型的速度與精確度去分析與比較。. 17 DOI:10.6814/NCCU202001418.

(29) 3.2. 前期研究 針對色彩修正部分,將分四個小節在前期研究中,所涉的相關實作技術,包 括:水下影像收集;產出 GAN 模型所需之 paired image; 模型評估;Loss function 評估。 即時物件偵測模型部分,分為兩個小節在這前期研究中,同樣的,所涉的相 關實作技術,包含:目標物件影像收集;一階段模型效能評估。相信在取得這兩 大部分的成果後,有助於將基本構想與後續實作。. 3.2.1. 水下影像收集. 立. 政 治 大. 使用 open source 的 ImageNet 收集水中影像及空氣中影像,並基於光線充. 差。. ‧. ‧ 國. 學. 足與否、影像模糊程度、顏色衰減狀況,肉眼將其分類為 2 組:品質好與品質. sit. y. Nat. 3.2.2. Paired image 產生. n. al. er. io. 要使用 GAN,必須要 paired image 來比對與評分,而在有限的單一風格的影. i Un. v. 像 下 , 可 以 使 用 style transfer 將 相 同 影 像 轉 換 成 所 需 要 的 風 格 , 利 用. Ch. engchi. CycleGAN[11],可以將 3.2.1 分類出品質好的影像,轉換出水下風格的影像,進 而產出 paired image,其概念如圖 3.1。. G. Dx. X. Y. Dy. F 圖 3.1、CycleGAN 生成流程 18 DOI:10.6814/NCCU202001418.

(30) CycleGAN 為:從 X 生成 Y,再從 Y 生成 X,如此的迴圈(cycle),而其所需的 訓練資料集與一般 GAN 不同,不必成對,乃是需要兩種不同風格的資料即可, 如;欲想將白天的影像變成晚上的影像,則分別準備白天的影像與晚上的影像。 實作上,採用圖 3.2 的想法去實現。分別為 2 個 Generator:G & F;另外 2 個 Discriminator:Dx & Dy。. Dy. G. Dx. X’. io. n. al. G. Y’. er. F. y. ‧. Nat. Y. X’. 學. ‧ 國. 立. 政 Y’ 治 大 F. sit. X. Ch. i Un. 圖 3.2、CycleGAN 實現. engchi. v. 同 GAN 相同,一樣採用 Loss 優化,但分 2 個部分,對 D 及 G 進行優化,式 3.1。 𝑳𝑮𝑨𝑵 (𝑮, 𝑫𝒀 , 𝑿, 𝒀) = 𝔼𝒚~𝒑𝒅𝒂𝒕𝒂(𝒚) Q𝒍𝒐𝒈𝑫𝒚 (𝒚)T + 𝔼𝒙~𝒑𝒅𝒂𝒕𝒂 (𝒙)[𝒍𝒐𝒈(𝟏 − 𝑫𝒀 (𝑮(𝒙)))] 𝑳𝑮𝑨𝑵 (𝑭, 𝑫𝑿 , 𝑿, 𝒀) = 𝔼𝒙~𝒑𝒅𝒂𝒕𝒂 (𝒙) [𝒍𝒐𝒈𝑫𝑿 (𝒙)] + 𝔼𝒚~𝒑𝒅𝒂𝒕𝒂(𝒚) [𝒍𝒐𝒈(𝟏 − 𝑫𝑿 (𝑭(𝒚)))] 式 3.1、CycleGAN D&G loss. 19 DOI:10.6814/NCCU202001418.

(31) 除了對 D & G 優化,還進行了對 cycle 優化,期望可以當 X 生成 Y’後再生成的 X’能夠越接近 X 越好,式 3.2。 𝑿 → 𝑮(𝑿) → 𝑭>𝑮(𝑿)A ≈ 𝑿 ∶ 𝒇𝒐𝒓𝒘𝒂𝒓𝒅 𝒄𝒚𝒄𝒍𝒆 𝒄𝒐𝒏𝒔𝒊𝒔𝒕𝒆𝒏𝒄𝒚 𝒀 → 𝑭(𝒀) → 𝑮>𝑭(𝒀)A ≈ 𝒀 ∶ 𝒃𝒂𝒄𝒌𝒘𝒂𝒓𝒅 𝒄𝒚𝒄𝒍𝒆 𝒄𝒐𝒏𝒔𝒊𝒔𝒕𝒆𝒏𝒄𝒚 𝑳𝒄𝒚𝒄 (𝑮, 𝑭) = 𝔼𝒙~𝒑𝒅𝒂𝒕𝒂 (𝒙) [∥ 𝑭>𝑮(𝒙)A − 𝒙 ∥ 𝟏] + 𝔼𝒚~𝒑𝒅𝒂𝒕𝒂(𝒚) [∥ 𝑮>𝑭(𝒚)A − 𝒚 ∥ 𝟏] 式 3.2、CycleGAN cycle loss 因此,全部的 loss function 可以看成式 3.3: 𝑳𝑮𝑨𝑵 (𝑮, 𝑭, 𝑫𝑿 , 𝑫𝒀 ) = 𝑳𝑮𝑨𝑵 (𝑮, 𝑫𝒀 , 𝑿, 𝒀) + 𝑳𝑮𝑨𝑵 (𝑭, 𝑫𝑿 , 𝑿, 𝒀) + 𝑳𝒄𝒚𝒄 (𝑮, 𝑭) 式 3.3、CycleGAN total loss. 立. 3.2.3. 模型評估. 政 治 大. ‧ 國. 學. 目前 GAN 相關的模型很多,而影響參數變化的 loss function 也很多,因此. ‧. 在完成 paired image 後,可進行這兩部分的評估。. sit. y. Nat. 由於目標為需要將原本為水下拍攝的圖像生成如同水面上拍攝的圖像,因此. io. n. al. er. 選用 GAN base 來做初步評估,但傳統的 GAN 模型有以下的缺點:. i Un. v. 1. 無法由使用者控制,基本上為輸入一個隨機雜訊(random noise),然後輸. Ch. engchi. 出一個隨機影像(random image),而我們需要的是一個輸入,產出一個對 應於輸入的輸出(同型態); 2. 解低度低,影像品質不佳。 為了達成可以控制輸出,也就是產生出我們需要的圖像,而基於 GAN 模型的概 念,開始評估實際可使用的 model。首先我們思考到的是:既然 GAN 為隨機產 出輸出,直觀上來看,為了控制這個輸出,就必須加上條件(condition),cGAN (conditional GAN)[13]為最早的 GAN 變形出的模型,將原本 GAN 中的機率改. 20 DOI:10.6814/NCCU202001418.

(32) 成條件機率,達到控制的需求,而條件可以是 image、label、或是 text 等,其 loss function 如式 3.4。. 𝐦𝐚𝐱d𝔼𝒙~𝒑𝒅𝒂𝒕𝒂 (𝒚) [𝒍𝒐𝒈𝑫(𝒙|𝒚)]+𝔼𝒙~𝒑𝑮(𝒚) [𝐥𝐨𝐠 (𝟏 − 𝑫(𝒙|𝒚))]i 𝑫. 式 3.4、cGAN loss function. 訓練時,先將條件接上原始數據,再行訓練,圖 3.3 為其概念,也就是任一個 pair. 政 治 大. 都可選一個條件及一個輸出,然後訓練 GAN。. 立. Image Label Text Sequence Voice …. ‧. ‧ 國. 學. Image Label Text Sequence Voice …. n. er. io. sit. y. Nat. al. Ch. engchi. 圖 3.3、cGAN 概念. i Un. v. 再進一步來看,cGAN 可以使用 image 當成條件機率,當然也可將影像大小當成 條件,使得輸入大小等於輸出大小,藉由 cGAN 概念產出成對之影像(paired image),例如輸入輪廓或 mask,產出相同輪廓或 mask 的真實圖片,當然也可將 黑白圖片當輸入,產出彩色圖的輸出。這樣的想法下,pix2pix network [14]便是 一個可以實現的神經網路,架構如圖 3.4。. 21 DOI:10.6814/NCCU202001418.

(33) X. G. G(X). Y D. Fake. D. X. Real. X. 圖 3.4、pix2pix 架構. 政 治 大. pix2pix 的 generator 含有 Unet[15]的結構在其中,用 Unet 取代原本 encoder-. 立. decoder 的架構。核心想法為:輸入與輸出的外觀表現也許會不同,但整體結構. ‧ 國. 學. 應該要類似,也就是輸入某些底層資訊可以分享給輸出,才能達到我們要的 image to image translation。. ‧ sit. y. Nat. 3.2.4. Loss function 評估. n. al. er. io. pix2pix network 的 loss function 是基於 cGAN 做變化(式 3.4),額外增加一. i Un. v. 個與 target 影像的差距的比較,目的為讓輸出越像越好,如式 3.5.. Ch. engchi. 𝓛𝑳𝟏 (𝑮) = 𝔼𝒙,𝒚,𝒛 [∥ 𝒚 − 𝑮(𝒙, 𝒛) ∥ 𝟏] 式 3.5、pix2pix L1 loss function. 新的 target function 則變成式 3.6。 𝑮 = 𝒂𝒓𝒈 𝐦𝐢𝐧 𝐦𝐚𝐱 𝓛𝒄𝑮𝑨𝑵 (𝑮, 𝑫) + 𝝀𝓛𝑳𝟏 (𝑮) 𝑮. 𝑫. 式 3.6、pix2pix target function. 22 DOI:10.6814/NCCU202001418.

(34) 實作上,GAN 在訓練是不穩定也不容易收斂,在訓練到某一個程度後,又或者 是 Generator 及 Discriminator 有出現不平衡狀況,會導致梯度漸漸變小、而 loss function 漸漸呈現飽和,最後 loss function 將無法提供 Generator 及 Discriminator 參數改善的建議,甚至會導致崩潰。為了解決這個問題,便採用 Wasserstein Distance[16],也就是 WGAN[17]所提出的方法。WGAN 的 Loss function 如式 3.7。 另外,WGAN 為了讓梯度變化在一定範圍內,也就是讓 Lipschiz 連續,增加一 個限制:weight clip(式 3.8),限制 NN 的參數[-K, K]。 𝑳(𝑫) = −𝔼𝒙~𝑷𝝉 [𝑫(𝒙)] + 𝔼𝒙~𝑷𝒈 [𝑫(𝒙)]. 政 治 大. 𝑳(𝑮) = −𝔼𝒙~𝑷𝒈 [𝑫(𝒙)]. 式 3.7、WGAN loss function 立. ‧ 國. 學 ‖𝛁𝒙 𝑫(𝒙)‖𝒑 ≤ 𝑲, ∀𝒙 ∈ 𝑿. ‧. 式 3.8、Weight clip. io. sit. y. Nat. n. al. er. 然而,weight clip 的方法會使得大部分的 weight 往極端的兩端靠近([-K, K]),. Ch. i Un. v. 因此需要一個新的方法來取代 weight clip,WGAN-GP[18]可以進一步解決 weight. engchi. clip 造成的問題,式 3.9 為取代 weight clip 的方法: [‖𝛁𝒙 𝑫(𝒙)‖𝒑 − 𝑲]𝟐 式 3.9、取代 weight clipping 的作法. 新的 Loss function 即為本論文未來訓練顏色修正時的依據,如式 3.10: u =∈ 𝒙 + (𝟏−∈)𝒙 t = 𝑮(𝒛), 𝒙 t 𝒙 t)] + 𝝀𝔼5𝒙~𝒑𝒙( [∥ 𝜵𝒙5 𝑫(𝒙 w) ∥𝟐 − 𝟏]𝟐 𝓛 = −𝔼𝒙~𝒑𝝉 [𝑫(𝒙)] + 𝔼𝒙4~𝒑𝒈 [𝑫(𝒙 式 3.10、最終使用之 loss function 23 DOI:10.6814/NCCU202001418.

(35) 3.2.5. 物件偵測之影像收集 物件偵測訓練資料取自 open source 的 openImage V6[10],並使用 big-query[12] 分出所需要之影像進行訓練。另外,因 openImage 的資料隨時可能變動,本論文 的收集時間為 2019 年 7 月到 2020 年 4 月期間,keyword 為 Fish、Jellyfish、 Triggerfish、Swordfish、Milkfish、Cartilaginous fish。. 3.2.6. 物件偵測模型效能評估 針對 SSD 及 Faster RCNN 效能進行評估。. 政 治 大. 至此已解決了大部分的實作技術問題,接下來闡述本論文的研究架構設計。. 立. ‧ 國. ‧. 3.3.1. 問題陳述. 學. 3.3. 研究架構設計. sit. y. Nat. 藉由 GAN 方法將水下圖像轉換成一般影像,但實際上是否可以讓現有的物. al. er. io. 件偵測模型直接套用呢?此外,利用遷移學習的方式來訓練現有的模型,其效能. v. n. 上是否可以滿足所需呢?綜合我們前述所提出的,在經過這一連串的機器學習,. Ch. engchi. i Un. 是否能夠達到即時的水下物體偵測呢?針對這些問題,我們設計了以下的研究 架構,並在第四章「研究過程與結果分析」之中回答這些問題。. 3.3.2. 研究架構 此研究整體架構如圖 3.5, 開發工具使用 Tensorflow 及 Python。訓練 顏色修正的平台為 CPU: Intel Core i9/ GPU: Nvidia Titan RTX / CUDA 10/ OS: Ubuntu;訓練物件偵測的平台為 CPU: Intel Core i9/ GPU: Nvidia GeForce 2080 Ti / CUDA 10/ OS: Ubuntu。. 24 DOI:10.6814/NCCU202001418.

(36) Color correction pix2pix model. Evaluation. Train. Object detection. Adjustment parameters. Existing CKPT. openImage. Model selection bad. One-stage model. Img Data. 治 政 Test 大 New CKPT. Nat. y. Color correction. ‧. The image to be detected. New CKPT. 學. ‧ 國. 立. good. Evaluation. ReTrain. Label Data. New CKPT. bad. Test. CycleGAN. good. io. n. Object a ldetection. Ch. sit. Img Data. bad. Paired image. New CKPTn i v. er. ImageNet. Result. engchi U. 圖 3.5、研究架構 如圖 3.5 所示,研究架構又可分為 3 個部分:色彩修正流程,物件偵測流 程,以及系統整合流程。 圓柱狀圖示為公共開源(open source)的資料集,可收集到 image data 及 label data。其中,色彩修正部分使用 imageNet dataset,而物件偵測部分使用 openImage dataset。CKPT(check point)則是每次訓練的過程會產生的檔案,為一個檢查文件, 紀錄了模型檔案路徑及訓練過程中所有節點上保存的模型名稱,當然也包含最後 25 DOI:10.6814/NCCU202001418.

(37) 一次的保存的模型名稱,藉著這個 CKPT 讀取相對應的網路權重資訊及參數資 訊,同時也可讀取該模型的網路結構,也就是說,我們在 tensorflow 下訓練的結 果藉由 CKPT 保存所有的變量及網路結構,供給未來需要的時候使用。, 色彩修正流程及物件偵測流程將產出新的模型,其中物件偵測採遷移學習 (transfer learning)方式,基於 open source 的預訓練模型(pre-trained model),配合 訓練資料進行重新訓練而得到新的結果。色彩修正的評估因缺乏真實資料 (ground-truth),依據實際產出的結果進行肉眼及 NIQE[28]分數高低判斷,確認是 否良好的顏色修正。物件偵測的評估依據 mAP 及 speed 數值,評估是否符合需. 政 治 大 正後再做物體偵測,最後確認 mAP 高低來評估其結果。 立. 求。而系統整合流程部分則依據前 2 個流程得到的結果,將待測影像進行顏色修. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. engchi. i Un. v. 26 DOI:10.6814/NCCU202001418.

(38) 第四章 研究過程與結果分析 在本章節中,主要介紹色彩修正及物件偵測模型訓練資料的蒐集以及訓練 過程觀察。先利用 CycleGAN 產出 pix2pix 所需的 paired image,接著使用 pix2pix 訓練出水下顏色修正的 CKPT;同時,進行物件偵測模型的選定,並基於遷移學 習的概念針對欲偵測的類別重新訓練。再將水下影像透過 pix2pix 模型搭配 CKPT 產出修正後的影像,透過物件偵測模型做出分析、評估、與修正。此外,. 政 治 大 based 所產出的影像,分數越低則影像清晰程度則越好,品質越佳。 立. 還會進行影像品質好壞的判斷,這部分將使用 NIQE[28]分數來量化藉由 GAN. ‧. ‧ 國. 學. 4.1. 研究過程. 4.1.1. 資料集說明. sit. y. Nat. io. er. 因物體在相機的成像效果與拍攝時的光線行經的介質有關,在此我們可簡單. al. 的定義相機拍攝時所在的位置:水中(即本論文所提的水下)及空氣中(即水面之. n. iv n C 上)。而資料集收集則分 3 個需求:用於訓練 h e n g c CycleGAN h i U 模型,用於訓練 pix2pix 模型、及用於訓練物件偵測模型,如表 4.1 所示。. 27 DOI:10.6814/NCCU202001418.

(39) Set # images Note 訓練資料集 A(空氣中/水中) 9853/9764 品質好 CycleGAN. Pix2pix. Object detection. 訓練資料集 B(空氣中/水中) 9139/9246 品質差 測試資料集(空氣中). 6128. 訓練資料集. 6128. 測試資料集. 1814. Diver 訓練資料集. 1023. Diver 測試資料集. 231. Jellyfish 訓練資料集. 2002. Jellyfish 測試資料集. 487. 利用 CycleGAN 產出. 水中:空氣中=42:58. Fish 訓練資料集. 28465 治 Fish 測試資料集政 7563 大 立. 水中:空氣中=34:66. 表 4.1、資料集. ‧ 國. 學. 4.1.2. Paired image 產出. ‧. 此階段目標是產出 GAN 模型所需要的 paired image,而這部分則使用. y. Nat. er. io. sit. CycleGAN 來進行。根據式 3.3 為其 loss function,並將 ImageNet 收集的影像依 據品質分為訓練資料集 A 及訓練資料集 B,其 NIQE 分數如表 4.2。由 NIQE 分. n. al. Ch. i Un. 數可知,資料集 A 的品質平均而言較資料集 B 高。. 訓練資料集 A 訓練資料集 B. engchi. v. Max. Min. Avg. 22.638 27.701. 14.173 17.286. 18.693 21.513. 表 4.2、CycleGAN 訓練集 NIQE 分數比較. 28 DOI:10.6814/NCCU202001418.

(40) 使用訓練資料集 A 的實際產出的結果如圖 4.1,A1~D1 分別為輸入的原始圖片, A2~D2 分別為透過 CycleGAN 產出 paired image。使用訓練資料集 B 的實際產 出的結果如圖 4.2。A1~C1 分別為輸入的原始圖片,A2~C2 分別為透過 CycleGAN 產出 paired image,表 4.3 為使用測試集產出結果的 NIQE 分數。. (A1). (A2). 學. (B1). ‧ 國. 立. 政 治 大 (B2). ‧. n. er. io. sit. y. Nat. al. (C1). Ch. e n g(C2) chi. (D1). i Un. v. (D2). 圖 4.1、CycleGAN 訓練資料集 A 結果 29 DOI:10.6814/NCCU202001418.

(41) (A1). (A2). (B1). (B2). 立. ‧ 國. 學 (C2). ‧. (C1). 政 治 大. io. sit. y. Nat. n. al. er. 圖 4.2、CycleGAN 訓練資料集 B 結果. 訓練資料集 A 結果 訓練資料集 B 結果. Ch. engchi. i Un. v. Max. Min. Avg. 23.7651 29.0858. 14.8812345 18.1585564. 19.629 22.585. 表 4.3、Paired image NIQE 分數. 30 DOI:10.6814/NCCU202001418.

(42) 4.1.3. 色彩修正評估階段 在此階段裡,使用上階段基於訓練資料集 A 產出的 paired image 當成訓練 資料,對 pix2pix model 進行訓練,而訓練所使用的 loss function 即為式 3.10: 𝓛 = −𝔼𝒙~𝒑𝝉 [𝑫(𝒙)] + 𝔼𝒙~𝒑𝒈 [𝑫(𝒙)] + 𝝀𝔼𝒙~𝒑𝒙 [𝛁𝒙 𝑫(𝒙) ∥𝒑 − 𝟏]𝟐 而顏色修正評估階段的各個 NIQE 分數如表 4.4。. 項目 5. 10 立. 76.546. 17.561. 22.768. 15.998. 21.197. 16.073. 20.707. 15.775. 20.510. 15. 24.840. 3064. 29.237. 17.858. 23.160. 6128. 25.672. 15.998. 21.197. 38000. 25.672. 15.998. 21.197. 15.477. 20.412. 24.959. n. al. Ch. 153000. y. sit. io. 24.959. er. ‧ 國. 63.992. ‧. Nat 影像處理 軟體比較. 83.195. 12.5. 76500. Iteration. Avg. 學. 訓練集數量. Min. 政 治28.524大 25.672. 7.5 λ. Max. i Un. 24.483. 189500. e n g c 23.219 hi. 306000. v 16.073. 20.079. 15.384. 19.831. 22.982. 14.835. 19.735. GAN based. 22.982. 14.835. 19.735. GIMP Auto white Balance. 76.064. 58.040. 64.770. G’MIC-QT Color balance. 78.441. 59.528. 68.695. 表 4.4、顏色修正評估階段之 NIQE 分數. 31 DOI:10.6814/NCCU202001418.

(43) 首先針對 loss function 中的𝝀進行分析評估,基於 Iteration = 38000,Number of Training Data = 6128,圖片解析度為 512x512,結果見圖 4.3。A 為輸入的原始 圖片,B 為 λ = 5 的輸出結果,C 為 λ = 7.5 的輸出結果,D 為 λ = 10 的輸出結果, E 為 λ = 12.5 的輸出結果,F 為 λ = 15 的輸出結果。. (A1). (A2). (B1). (B2). (B3). (C2). (C3). 政 治 大. 立. n. al. er. io. sit. y. Nat (D1). ‧. ‧ 國. 學. (C1). (A3). (E2). Ch. i Un (E3). engchi. (E1). (E2). (E3). (F1). (F2). (F3). v. 圖 4.3、不同 𝝀 結果 32 DOI:10.6814/NCCU202001418.

(44) 對於 paired image 的數量多寡,進行分析評估,基於𝝀= 10,Iteration = 38000,圖 片解析度為 512x512,見圖 4.4。A 為輸入的原始圖片,B 為訓練集數量=3064 的 輸出結果,C 為訓練集數量=6128 的輸出結果。. (A1). (A2). (B1). (B2). 立. 政 治 大(B3). (C2). (C3). Nat. n. al. Ch. engchi. er. io. 圖 4.4、訓練集數量控制結果. sit. y. ‧. ‧ 國. 學. (C1). (A3). i Un. v. 33 DOI:10.6814/NCCU202001418.

(45) 接著就 iteration 的次數進行分析評估,基於𝝀 = 10,Number of Training Data = 6128,圖片解析度為 512x512,結果見圖 4.5。A 為輸入的原始圖片,B 為 Iteration = 38000 的結果,C 為 Iteration = 76500 的結果,D 為 Iteration = 153000 的結果, E 為 Iteration = 189500 的結果,F 為 Iteration = 306000 的結果。. (A1). (A2). (B1). (B2). (B3). (C2). (C3). (E2). (E3). 立. 政 治 大. ‧. ‧ 國. 學. (C1). (A3). n. al. Ch. engchi. er. io. sit. y. Nat (D1). i Un. (E1). (E2). (E3). (F1). (F2). (F3). v. 圖 4.5、訓練迭代次數控制結果 34 DOI:10.6814/NCCU202001418.

(46) 一般而言,在攝影的角度上要修正色彩,通常是將白平衡調整為正確的色溫 後才拍照或錄影,或者加上濾鏡來改變接受到的顏色狀況,最後才做光源的補償。 而此研究不討論光源補償部分,因為此為直接將水中影像的物理限制做出強制優 化。另外,當影像已經完成拍攝後,傳統做法上,乃是透過影像修飾軟體做出修 正,這裡使用 GIMP 的 AWB 及 GIMC plugin 的 color balance,圖片解析度為 512x512,如圖 4.6。A 為 GAN based 的輸出結果,B 為 GIMP Auto white Balance 的輸出結果,C 為 G’MIC-QT Color balance 的輸出結果。可以看出影像處理軟體 的結果雜訊明顯,中間的顏色並未修正正確,尤其在低對比的圖像更出現顏色完 全錯誤。. 政 治 大 (A3). (B2). (B3). n. (C1). sit. er. io. al. y. ‧. Nat. (B1). (A2). 學. (A1). ‧ 國. 立. Ch. engchi. (C2). i Un. v. (C3). 圖 4.6、軟體自動修正結果. 35 DOI:10.6814/NCCU202001418.

(47) 4.1.4. 物件偵測評估階段 針對一階段物件偵測模型及使用 google tensorflow API [19]做出分析及評估 結果。根據 Tensorflow detection model zoo,可以預先挑選出可使用的模型,如表 4.5。 Model name. Speed (ms). ssd_mobilenet_v1_coco ssd_mobilenet_v1_0.75_depth_coco ssd_mobilenet_v1_quantized_coco ssd_mobilenet_v1_0.75_depth_quantized_coco ssd_mobilenet_v1_ppn_coco ssd_mobilenet_v1_fpn_coco ssd_resnet_50_fpn_coco ssd_mobilenet_v2_coco ssd_mobilenet_v2_quantized_coco ssdlite_mobilenet_v2_coco ssd_inception_v2_coco faster_rcnn_inception_v2_coco faster_rcnn_resnet50_coco rfcn_resnet101_coco faster_rcnn_resnet101_coco faster_rcnn_inception_resnet_v2_atrous_coco faster_rcnn_nas. 政 治 大. er. io. sit. y. ‧. Nat. al. 學. ‧ 國. 立. 30 26 29 29 26 56 76 31 29 27 42 58 89 92 106 620 1833. iv n C 表 4.5、COCO-trained h e n g c hmodels[19] i U n. COCO mAP 21 18 18 16 20 32 35 22 22 22 24 28 30 30 32 37 43. Outputs Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes Boxes. 由 表 4.5 , 基 於 speed 及 mAP , 預 先 選 定 ssd_resnet_50_fpn_coco 、 faster_rcnn_nas、及 faster_rcnn_inception_resnet_v2_atrous_oidv4 進行評估。此外, 也加入 YOLO V4[29]進行評估,並使用針對移動裝置的 Tensorflow lite 深度學習 框架。進行方式為將待偵測的圖片進行前述之色彩修正,並使用預訓練模型偵測。 測試集部分,我們偵測 3 個類別,diver 數量為 231 張,fish 數量為 7563 張, jellyfish 數量為 487 張。而每個模型針對五種條件的圖片:original 為原始圖片, 其他四種為色彩修正模型不同迭代次數的生成圖像,圖片解析度為 512x512,計 算 mAP 及每張圖片處理所需的時間來評估及選定,見表 4.6。 36 DOI:10.6814/NCCU202001418.

(48) mAP Time per pic. Model. Original. Number of iterations 38000. 76500. 153000. 306000. ssd_resnet_50_fpn_coco. 0.43s. 0.21. 0.31. 0.34. 0.34. 0.40. YOLO V4. 0.008s. 0.11. 0.18. 0.22. 0.23. 0.25. faster_rcnn_nas. 7.14s. 0.33. 0.31. 0.41. 0.46. 0.46. faster_rcnn_inception_ resnet_v2_atrous_oidv4. 1.71s. 0.28. 0.28. 0.34. 0.39. 0.40. 表 4.6、模型評估. 4.1.5. 物件偵測重新訓練階段. 立. 政 治 大. ‧ 國. 學. 這個階段為選定一物件偵測模型後,藉由遷移訓練概念,輸入 pre-trained ckpt、 訓練集、進行模型的重新訓練。基於速度與偵測率,此研究使用. ‧. ssd_resnet50_v1_fpn 為偵測模型,使用的訓練集分為 3 種類型:水中影像、空氣. Nat. sit. y. 中影像、及綜合(水中與空氣中) 影像,見表 4.7。圖 4.7(潛水員-混合)、圖 4.8(水. n. al. er. io. 母-混合) 、及圖 4.9(魚-混合)為各類別的 loss 結果,因潛水員身上裝備較複雜,. i Un. v. 其收斂結果並非很好,而魚及水母的 loss 結果則有收斂。 Diver. Ch. engchi Fish. Jellyfish. 空氣中. 水中. 表 4.7、不同影像類型 37 DOI:10.6814/NCCU202001418.

(49) 圖 4.7、潛水員(混合)的 Loss. 立. 政 治 大. ‧. ‧ 國. 學. n. er. io. sit. y. Nat. al. Ch. i Un. 圖 4.8、水母(混合)的 Loss. engchi. v. 圖 4.9、魚(混合)的 Loss 38 DOI:10.6814/NCCU202001418.

(50) 4.2. 分析階段 由研究過程的每個階段,都得到一些結果,此部分即針對這些結果進行分析。. 4.2.1. Paired image 分析 由圖 4.1、圖 4.2、及表 4.3,使用訓練資料集 A(品質好)所產出的結果一般都 比訓練資料集 B(品質差)產出的結果好,因此在這部分,我們會採用訓練資料集 A 所做出的結果來成為 GAN 模型需要的 paired images。. 4.2.2. 色彩修正結果分析. 政 治 大 圖 4.3 顯示,λ 必須大於或等於 10,其結果才能符合我們需求。而圖 4.4 來 立. ‧ 國. 學. 看,數量較多的訓練集,產出的圖像清晰度及顏色部分都較好,這部分符合深度 學習基本預期。圖 4.5 部分,迭代次數與顏色修正結果成正向趨勢,這部分也可. ‧. 以知道其結果為使用 WGAN-GP 的收斂效果是正向的。. y. Nat. er. io. al. sit. 4.2.3. 物件偵測重新訓練結果分析. v. n. 表 4.8 為預訓練偵測的結果與使用混合訓練集進行重新訓練的偵測結果,重. Ch. engchi. i Un. 新訓練後的 AP 皆有提高。資料集數量部分,diver 的訓練/測試為 1023/231, jellyfish 的訓練/測試為 2002/487,fish 的訓練/測試為 28465/7563,未做顏色修正, 圖片解析度為 512x512。 AP. Pre-Trained. Re-Train. Diver. 0.23. 0.32. Jellyfish. 0.26. 0.50. Fish. 0.26. 0.39. 表 4.8、預訓練與重新訓練的比較. 39 DOI:10.6814/NCCU202001418.

(51) 4.2.4. 顏色修正後的物體偵測結果分析 前述,重新訓練模型使用之個別訓練集可分為三種型態:水中影像、空氣中 影像、及混合影像,而比例上,diver 的水中:空氣中約為 75%:25% (767:256), fish 的水中:空氣中約為 34%:66% (9678:18787),而 jellyfish 的水中:水空氣 中約為 42%:58% (840:1162);測試集部分,diver 為 231 張,fish 為 7563 張, jellyfish 為 487 張,圖片解析度皆為 512x512,分別進行重新訓練並測試結果。 由表 4.9 可看出當圖片經過顏色修正(Gen),AP 均有提升。 Diver Original Gen 0.32 0.41. AP 混合資料集. fish Original Gen. 0.50 治 0.67 政 0.39 大0.72 0.60. 0.31. 空氣中資料集. Jellyfish Original Gen. 立 表 4.9、顏色修正前後的物體偵測結果. 0.39. 0.68. 0.50. 0.71. ‧ 國. 學. Diver 類別因潛水員本身的裝備很多,例如氣瓶、頭套、手套、蛙鏡、蛙鞋. ‧. 等,樣式顏色等都不盡相同,加上水中影像拍攝時,經常拍到潛水員的局部,使. sit. y. Nat. 得此類別的 AP 偏低。圖 4.10 為偵測的結果,(A)(B)正確找出潛水員,(C)(D)標. io. n. al. er. 示錯誤,(E)(F)未找到潛水員. Ch. engchi. i Un. v. (A). (C). (E). (B). (D). (F). 圖 4.10、Diver 偵測結果 40 DOI:10.6814/NCCU202001418.

(52) 此研究為基於顏色修正將水中拍攝影像修正成如在空氣介質中拍攝的影像, 因此我們在重新訓練物體偵測模型時,將資料集鎖定在拍攝於空氣介質中的資料, 此條件下的 mAP 則為 0.607。 另外,取出測試集中 15 張影像,比較偵測準確度(魚:圖 4.11,水母:圖 4.12), x 軸為圖片編號,y 軸為信心指數(confidence score)。由圖可以發現,如果模型重 新訓練,使用混合影像(空氣中加上水中)當成訓練集,發生部分偵測的結果反而 不如原始影像。此研究在偵測影像的前處理為顏色修正,其目的為將水中拍攝的 影像修正為如同空氣中拍攝,因此將混合影像當成訓練集,則與實際環境有所不. 政 治 大 用的訓練參數為: λ = 10,Iteration = 306000。 立. 同,造成部分偵測的結果較差。此部分偵測圖片大小皆為 512*512,顏色修正使. 0.80 0.70. 0.50 0.40. 0.10. sit. 0.20. y. Nat. 0.30. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 0.57. 0.31. 0.52. 0.66. 0.57. 0.48. 0.52. 0.24. 0.23. 0.35. 0.57. 0.70. 0.58. 0.52. 0.77. mixture. 0.65. 0.51. 0.63. 0.62. 0.72. 0.65. 0.63. 0.36. 0.29. 0.53. 0.69. 0.80. 0.57. 0.56. 0.87. air. 0.74. 0.63. 0.77. 0.79. 0.74. 0.72. 0.53. 0.61. 0.64. 0.78. 0.85. 0.72. 0.67. 0.91. io. 1. pre-train. n. al. 0.78. Ch. engchi U. er. Confi.. 0.60. ‧. ‧ 國. 0.90. 0.00. Fish. 學. 1.00. v ni. 圖 4.11、不同訓練集的 fish 偵測信心指數. 圖 4.12、不同訓練集的 jellyfish 偵測信心指數. 41 DOI:10.6814/NCCU202001418.

(53) 另外,圖片大小對於偵測結果也會有差異,訓練集及測試集的圖片大小為 512*512 的結果基本優於 256*256,如表 4.10 所示,此為使用空氣中訓練集進行 訓練。 而取測試集中 Jellyfish 類別的 15 張影像,分別以訓練集影像大小與測試集 影像大小來比較,x 軸為圖片編號,y 軸為信心指數,而 bar 的表示為:訓練集 影像大小-測試集影像大小。例如,512-256 代表訓練集影像大小為 512*512,測 試集影像大小為 256*256,以此類推,如圖 4.13。. 政 治Jellyfish 大 256*256 512*512 256*256 512*512 立. AP. Diver. 測試影像⼤⼩. 訓練集影像. 0.39. 0.61. 0.72. 0.38. 0.39. 0.66. 0.71. 0.63. 0.71. 0.68. 0.71. ‧. 256*256. 0.34. 256*256 512*512. 學. 512*512. ‧ 國. 訓練集影像. fish. n. al. er. io. sit. y. Nat. 表 4.10、影像大小比較 (256*256 vs. 512*512). 1.00 0.90. Ch. 0.80. Jellyfish. engchi. i Un. v. 0.70. Confi.. 0.60 0.50 0.40 0.30 0.20 0.10 0.00. 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 512-256. 0.55. 0.72. 0.68. 0.84. 0.58. 0.73. 0.85. 0.73. 0.79. 0.73. 0.79. 0.76. 0.59. 0.74. 0.91. 256-256. 0.56. 0.74. 0.70. 0.87. 0.59. 0.75. 0.88. 0.77. 0.83. 0.77. 0.82. 0.78. 0.62. 0.78. 0.94. 512-512. 0.68. 0.73. 0.66. 0.84. 0.65. 0.77. 0.86. 0.77. 0.81. 0.78. 0.83. 0.83. 0.65. 0.72. 0.93. 256-512. 0.69. 0.73. 0.67. 0.84. 0.66. 0.77. 0.86. 0.77. 0.81. 0.77. 0.82. 0.82. 0.65. 0.72. 0.93. 圖 4.13、不同影像大小的偵測信心指數. 42 DOI:10.6814/NCCU202001418.

(54) 4.3. 系統可行性分析 我們已經在前面根據顏色修正及物體偵測的兩個流程完成結果產出與分析, 而針對可行性的部分,我們在這個系統希望達到之目標如下: 1.. 透過顏色修正後的影像,是否能提供給重新訓練後的模型使用?. 2.. 選用的物體偵測模型,在 mAP 及 speed 基礎上,是否可用於此研究?. 3.. 遷移學習的方式來訓練現有的模型,其結果是否可以滿足水中物體的偵 測?. 4.3.1. 色彩修正可行性探討. 立. 政 治 大. ‧ 國. 學. 模型評估階段的結果(見表 4.6),藉由迭代次數不同的色彩修正後的圖像,提 供給原始 ckpt 的 ssd_resent_50_fpn_coco 模型做偵測,顏色修正前的 mAP 為 0.21,. ‧. 迭代次數為 306000 的 mAP 提升到 0.40,另外兩個模型的結果也是相同,顏色修. Nat. sit. n. al. er. io. 步驟有其效果。. y. 正後的 mAP 高於未做顏色修正,圖片大小為 512*512。由此可見,此顏色修正. 4.3.2.. C 即時偵測之可行性探討 h. engchi. i Un. v. 在模型評估階段中,time cost 為 cpu 基礎(CPU: Dual-Core Intel Core i5/ GPU: Intel Iris/ OS: macOS Catalina),使用 SSD 模型的平均處理一張影像約 0.4 秒(約 2.2FPS),而根據 Persistence of Vision (POV) [27],人眼暫存畫面約 10ms,也就 是 10 FPS,如將此模型實現在 TX2 平台(GPU 平台),其 time cost 將會快約 10 倍,便可達到畫面流暢與即時之需求。. 43 DOI:10.6814/NCCU202001418.

(55) 4.3.3. 即時物體偵測可行性探討 由 4.2.3 的分析與偵測結果,原始 ckpt 是無法偵測水中影像中的 jellyfish 與 fish,以遷移學習做重新訓練,結果為可偵測 jellyfish 與 fish,顯示其可行性。. 4.4. 研究結果之應用 Image input Color correction model. 立. Object detection model. 政 治 大. Embedded. ‧. ‧ 國. 學 y. sit. io. n. al. er. Nat. Result in image: - Location - Class. Ch. i Un. v. 圖 4.14、將研究結果應用物體偵測系統之示意圖. engchi. 我們從上面的研究結果中,在收到即時拍攝的水中影像後,完成顏色修正, 並將修正後影像進行物體偵測,再將結果輸出到顯示器中,如圖 4.14 的示意圖 所展示。由於具有顏色修正功能,因此如有未來增加偵測類別的需求,只需要收 集日常影像即可,再藉由遷移學習的概念,只需再重新訓練物體偵測模型即可。. 44 DOI:10.6814/NCCU202001418.

參考文獻

相關文件

Godsill, “Detection of abrupt spectral changes using support vector machines: an application to audio signal segmentation,” Proceedings of the IEEE International Conference

Shih and W.-C.Wang “A 3D Model Retrieval Approach based on The Principal Plane Descriptor” , Proceedings of The 10 Second International Conference on Innovative

D.Wilcox, “A hidden Markov model framework for video segmentation using audio and image features,” in Proceedings of the 1998 IEEE Internation Conference on Acoustics, Speech,

[16] Goto, M., “A Robust Predominant-F0 Estimation Method for Real-time Detection of Melody and Bass Lines in CD Recordings,” Proceedings of the 2000 IEEE International Conference

Jones, "Rapid Object Detection Using a Boosted Cascade of Simple Features," IEEE Computer Society Conference on Computer Vision and Pattern Recognition,

Harma, “Automatic identification of bird species based on sinusoidal modeling of syllables,” in Proceedings of IEEE International Conference on Acoustics, Speech,

programming, logic/reasoning, signal processing, computer vision, pattern recognition, mechanical structure, psychology, and cognitive science, to well control or to represent

Zhang, “ Face recognition using Laplacianfaces,” IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. Zhang, “Orthogonal Laplacianfaces for face