人工智能YOLO V2 圖像識(shí)別實(shí)驗(yàn)報(bào)告材料_第1頁(yè)
人工智能YOLO V2 圖像識(shí)別實(shí)驗(yàn)報(bào)告材料_第2頁(yè)
人工智能YOLO V2 圖像識(shí)別實(shí)驗(yàn)報(bào)告材料_第3頁(yè)
人工智能YOLO V2 圖像識(shí)別實(shí)驗(yàn)報(bào)告材料_第4頁(yè)
人工智能YOLO V2 圖像識(shí)別實(shí)驗(yàn)報(bào)告材料_第5頁(yè)
已閱讀5頁(yè),還剩34頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶(hù)提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、第一章前言部分課程項(xiàng)目背景與意義課程項(xiàng)目背景視覺(jué)是各個(gè)應(yīng)用領(lǐng)域,如制造業(yè)、檢驗(yàn)、文檔分析、醫(yī)療診斷,和軍事等領(lǐng)域中各種智能/自主系統(tǒng)中不可分割的一部分。由于它的重要性,一些先進(jìn)國(guó)家,例如美國(guó)把對(duì)計(jì)算機(jī)視覺(jué)的研究列為對(duì)經(jīng)濟(jì)和科學(xué)有廣泛影響的科學(xué)和工程中的重大基本問(wèn)題,即所謂的重大挑戰(zhàn)。計(jì)算機(jī)視覺(jué)的挑戰(zhàn)是要為計(jì)算機(jī)和機(jī)器人開(kāi)發(fā)具有與人類(lèi)水平相當(dāng)?shù)囊曈X(jué)能力。機(jī)器視覺(jué)需要圖象信號(hào),紋理和顏色建模,幾何處理和推理,以及物體建模。一個(gè)有能力的視覺(jué)系統(tǒng)應(yīng)該把所有這些處理都緊密地集成在一起。作為一門(mén)學(xué)科,計(jì)算機(jī)視覺(jué)開(kāi)始于60年代初,但在計(jì)算機(jī)視覺(jué)的基本研究中的許多重要進(jìn)展是在80年代取得的。計(jì)算機(jī)視覺(jué)與人類(lèi)視

2、覺(jué)密切相關(guān),對(duì)人類(lèi)視覺(jué)有一個(gè)正確的認(rèn)識(shí)將對(duì)計(jì)算機(jī)視覺(jué)的研究非常有益。計(jì)算機(jī)視覺(jué)是一門(mén)研究如何使機(jī)器“看”的科學(xué),更進(jìn)一步的說(shuō),就是是指用攝影機(jī)和電腦代替人眼對(duì)目標(biāo)進(jìn)行識(shí)別、跟蹤和測(cè)量等機(jī)器視覺(jué),并進(jìn)一步做圖形處理,使電腦處理成為更適合人眼觀察或傳送給儀器檢測(cè)的圖像。作為一個(gè)科學(xué)學(xué)科,計(jì)算機(jī)視覺(jué)研究相關(guān)的理論和技術(shù),試圖建立能夠從圖像或者多維數(shù)據(jù)中獲取信息的人工智能系統(tǒng)。這里所指的信息指Shannon定義的,可以用來(lái)幫助做一個(gè)“決定”的信息。因?yàn)楦兄梢钥醋魇菑母泄傩盘?hào)中提取信息,所以計(jì)算機(jī)視覺(jué)也可以看作是研究如何使人工系統(tǒng)從圖像或多維數(shù)據(jù)中“感知”的科學(xué)??茖W(xué)技術(shù)的發(fā)展是推動(dòng)人類(lèi)社會(huì)進(jìn)步的主要

3、原因之一,未來(lái)社會(huì)進(jìn)一步地朝著科技化、信息化、智能化的方向前進(jìn)。在信息大爆炸的今天,充分利用這些信息將有助于社會(huì)的現(xiàn)代化建設(shè),這其中圖像信息是目前人們生活中最常見(jiàn)的信息。利用這些圖像信息的一種重要方法就是圖像目標(biāo)定位識(shí)別技術(shù)。不管是視頻監(jiān)控領(lǐng)域還是虛擬現(xiàn)實(shí)技術(shù)等都對(duì)圖像的識(shí)別有著極大的需求。一般的圖像目標(biāo)定位識(shí)別系統(tǒng)包括圖像分割、目標(biāo)關(guān)鍵特征提取、目標(biāo)類(lèi)別分類(lèi)三個(gè)步驟。深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究。含多隱層的多層感知器就是一種深度學(xué)習(xí)結(jié)構(gòu)。深度學(xué)習(xí)通過(guò)組合低層特征形成更加抽象的高層表示屬性類(lèi)別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。深度學(xué)習(xí)的概念由Hinton等人于2006年提出?;谏疃?/p>

4、置信網(wǎng)絡(luò)提出非監(jiān)督貪心逐層訓(xùn)練算法,為解決深層結(jié)構(gòu)相關(guān)的優(yōu)化難題帶來(lái)希望,隨后提出多層自動(dòng)編碼器深層結(jié)構(gòu)。此外Lecun等人提出的卷積神經(jīng)網(wǎng)絡(luò)是第一個(gè)真正多層結(jié)構(gòu)學(xué)習(xí)算法,它利用空間相對(duì)關(guān)系減少參數(shù)數(shù)目以提高訓(xùn)練性能。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中的一個(gè)新的研究領(lǐng)域,通過(guò)深度學(xué)習(xí)的方法構(gòu)建深度網(wǎng)絡(luò)來(lái)抽取特征是目前目標(biāo)和行為識(shí)別中得到關(guān)注的研究方向,引起更多計(jì)算機(jī)視覺(jué)領(lǐng)域研究者對(duì)深度學(xué)習(xí)進(jìn)行探索和討論,并推動(dòng)了目標(biāo)和行為識(shí)別的研究,推動(dòng)了深度學(xué)習(xí)及其在目標(biāo)和行為識(shí)別中的新進(jìn)展。基于這個(gè)發(fā)展趨勢(shì),我們小組選擇了基于回歸方法的深度學(xué)習(xí)目標(biāo)識(shí)別算法YOLO的研究。課程項(xiàng)目研究的意義眾所周知,當(dāng)前是信息時(shí)代,信息

5、的獲得、加工、處理以及應(yīng)用都有了飛躍發(fā)展。人們認(rèn)識(shí)世界的重要知識(shí)來(lái)源就是圖像信息,在很多場(chǎng)合,圖像所傳送的信息比其他形式的信息更豐富、真切和具體。人眼與大腦的協(xié)作使得人們可以獲取、處理以及理解視覺(jué)信息,人類(lèi)利用視覺(jué)感知外界環(huán)境信息的效率很高。事實(shí)上,據(jù)一些國(guó)外學(xué)者所做的統(tǒng)計(jì),人類(lèi)所獲得外界信息有80%左右是來(lái)自眼睛攝取的圖像。由此可見(jiàn),視覺(jué)作為人類(lèi)獲取外界信息的主要載體,計(jì)算機(jī)要實(shí)現(xiàn)智能化,就必須能夠處理圖像信息。尤其是近年來(lái),以圖形、圖像、視頻等大容量為特征的圖像數(shù)據(jù)處理廣泛應(yīng)用于醫(yī)學(xué)、交通、工業(yè)自動(dòng)化等領(lǐng)域。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中一種基于對(duì)數(shù)據(jù)進(jìn)行表征學(xué)習(xí)的方法。觀測(cè)值(例如一幅圖像)可以使

6、用多種方式來(lái)表示,如每個(gè)像素強(qiáng)度值的向量,或者更抽象地表示成一系列邊、特定形狀的區(qū)域等。而使用某些特定的表示方法更容易從實(shí)例中學(xué)習(xí)任務(wù)(例如,人臉識(shí)別或面部表情識(shí)別)。深度學(xué)習(xí)的好處是用非監(jiān)督式或半監(jiān)督式的特征學(xué)習(xí)和分層特征提取高效算法來(lái)替代手工獲取特征。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)研究中的一個(gè)新的領(lǐng)域,其動(dòng)機(jī)在于建立、模擬人腦進(jìn)行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),它模仿人腦的機(jī)制來(lái)解釋數(shù)據(jù),例如圖像,聲音和文本。目標(biāo)檢測(cè)對(duì)于人來(lái)說(shuō)是再簡(jiǎn)單不過(guò)的任務(wù),但是對(duì)于計(jì)算機(jī)來(lái)說(shuō),它看到的是一些值為0255的數(shù)組,因而很難直接得到圖像中有人或者貓這種高層語(yǔ)義概念,也不清楚目標(biāo)出現(xiàn)在圖像中哪個(gè)區(qū)域。圖像中的目標(biāo)可能出現(xiàn)在任何位置

7、,目標(biāo)的形態(tài)可能存在各種各樣的變化,圖像的背景千差萬(wàn)別,這些因素導(dǎo)致目標(biāo)檢測(cè)并不是一個(gè)容易解決的任務(wù)。這次課程項(xiàng)目,正是基于視覺(jué)、深度學(xué)習(xí)、目標(biāo)識(shí)別而進(jìn)行的,是一個(gè)熱度很高的話(huà)題。基于深度學(xué)習(xí)的目標(biāo)識(shí)別研究具有重大的意義,深度學(xué)習(xí)的目標(biāo)識(shí)別算法對(duì)于未來(lái)能夠使用目標(biāo)檢測(cè)和圖像識(shí)別的手段運(yùn)用于物聯(lián)網(wǎng)、智能設(shè)備、生物制藥經(jīng)濟(jì)調(diào)控等多領(lǐng)域有很大的作用。國(guó)外研究現(xiàn)狀機(jī)器學(xué)習(xí)是一門(mén)專(zhuān)門(mén)研究計(jì)算機(jī)怎樣模擬或?qū)崿F(xiàn)人類(lèi)的學(xué)習(xí)行為,以獲取新的知識(shí)或技能,重新組織已有的知識(shí)結(jié)構(gòu)使之不斷改善自身的性能的學(xué)科。機(jī)器能否像人類(lèi)一樣能具有學(xué)習(xí)能力呢?1959年美國(guó)的塞繆爾(Samuel)設(shè)計(jì)了一個(gè)下棋程序,這個(gè)程序具有學(xué)習(xí)

8、能力,它可以在不斷的對(duì)弈中改善自己的棋藝。4年后,這個(gè)程序戰(zhàn)勝了設(shè)計(jì)者本人。又過(guò)了3年,這個(gè)程序戰(zhàn)勝了美國(guó)一個(gè)保持8年之久的常勝不敗的冠軍。這個(gè)程序向人們展示了機(jī)器學(xué)習(xí)的能力,提出了許多令人深思的社會(huì)問(wèn)題與哲學(xué)問(wèn)題。深度學(xué)習(xí)最近幾年發(fā)展速度十分快,因此同時(shí)也推動(dòng)了目標(biāo)識(shí)別技術(shù)的發(fā)展,技術(shù)的革新總是相互影響的。目標(biāo)檢測(cè)是圖像處理和計(jì)算機(jī)視覺(jué)的一個(gè)重要分支,在理論和實(shí)踐上都有重大意義。近年來(lái),隨著物聯(lián)網(wǎng)的高速發(fā)展與智能終端的廣泛普及,目標(biāo)檢測(cè)技術(shù)成了機(jī)器視覺(jué)領(lǐng)域的研究熱點(diǎn),被國(guó)外學(xué)者廣泛關(guān)注。目標(biāo)檢測(cè)的研究主要包括了基于視頻圖像的目標(biāo)檢測(cè)和基于靜態(tài)圖片的目標(biāo)檢測(cè)。本文主要討論基于靜態(tài)圖片的目標(biāo)檢測(cè)

9、算法,即在靜態(tài)圖片中檢測(cè)并定位所設(shè)定種類(lèi)的目標(biāo)?;陟o態(tài)圖片的目標(biāo)檢測(cè)的難點(diǎn)主要在于圖片中的目標(biāo)會(huì)因光照、視角以及目標(biāo)部等變化而產(chǎn)生變化。針對(duì)以上的難點(diǎn),國(guó)外學(xué)者進(jìn)行了很多嘗試。目前提出的方法主要分為基于形狀輪廓的目標(biāo)檢測(cè)算法和基于目標(biāo)特征的檢測(cè)方法。計(jì)算機(jī)視覺(jué)是指用計(jì)算機(jī)實(shí)現(xiàn)人的視覺(jué)功能,它的研究目標(biāo)就是使計(jì)算機(jī)具有用過(guò)一幅或多幅圖像認(rèn)知周?chē)h(huán)境的能力(包括對(duì)客觀世界三維環(huán)境的感知、識(shí)別與理解)。運(yùn)動(dòng)目標(biāo)檢測(cè)作為計(jì)算機(jī)視覺(jué)技術(shù)的一個(gè)分支,就是對(duì)視場(chǎng)的運(yùn)動(dòng)目標(biāo),如人或交通工具,進(jìn)行實(shí)時(shí)的觀測(cè),并將其分類(lèi),然后分析他們的行為。目前,國(guó)際上許多高校和研究所,如麻省理工學(xué)學(xué)院、牛津大學(xué)等都專(zhuān)門(mén)設(shè)立了

10、針對(duì)運(yùn)動(dòng)目標(biāo)檢測(cè)的研究組或者研究實(shí)驗(yàn)室。美英等國(guó)家已經(jīng)研究了大量的相關(guān)項(xiàng)目。一些著名公司和研究機(jī)構(gòu),如IBM、Microsoft、麻省理工學(xué)院等近幾年來(lái)投入了大量的人力物力來(lái)進(jìn)行智能監(jiān)控系統(tǒng)的研究,部分成果已經(jīng)轉(zhuǎn)化為產(chǎn)品投入了市場(chǎng)。目前在國(guó)的研究機(jī)構(gòu)中,中國(guó)科學(xué)院自動(dòng)化研究所下屬的模式識(shí)別國(guó)家重點(diǎn)實(shí)驗(yàn)室視覺(jué)監(jiān)控研究處于領(lǐng)先地位。他們?cè)诮煌▓?chǎng)景視覺(jué)監(jiān)控、人的運(yùn)動(dòng)視覺(jué)監(jiān)控和行為模式識(shí)別方面進(jìn)行了深入研究。另外他們也總結(jié)了英國(guó)雷丁大學(xué)VIEWS的車(chē)輛交通監(jiān)控原型系統(tǒng)的研究經(jīng)驗(yàn),在之前的理論研究的基礎(chǔ)上,自行設(shè)計(jì)并初步實(shí)現(xiàn)了一個(gè)擁有完全自主知識(shí)產(chǎn)權(quán)的交通監(jiān)控原型系統(tǒng)vstart(Visualsurve

11、illancestar)。國(guó)其他高校如交通大學(xué)、航空航天大學(xué)也對(duì)這方面進(jìn)行了研究。盡管這樣,目前在運(yùn)動(dòng)目標(biāo)檢測(cè)和視覺(jué)監(jiān)控這方面仍然存在著許多不足:目前國(guó)市場(chǎng)上所見(jiàn)到的大部分智能監(jiān)控產(chǎn)品來(lái)源于國(guó)外,性能和可靠性不夠,并且維護(hù)和安裝問(wèn)題需要外方全方位參加,給國(guó)家安全帶來(lái)了巨大的隱患。目標(biāo)之間互遮擋和人體自遮擋問(wèn)題,尤其是在擁擠狀態(tài)下,多人的檢測(cè)更是難處理。1.3本論文結(jié)構(gòu)本文是基于回歸方法的深度學(xué)習(xí)目標(biāo)識(shí)別算法YOLO的研究。第一章:前言。主要介紹課程項(xiàng)目背景與意義、國(guó)外研究的現(xiàn)狀,以及本論文的結(jié)構(gòu)。第二章:使用工具介紹及安裝。包括CentOS系統(tǒng)、OpenCV工具、CUDA開(kāi)發(fā)環(huán)境、環(huán)境的搭建。

12、第三章:YOLO算法簡(jiǎn)介。包括YOLO方法特點(diǎn)、核心思想和實(shí)現(xiàn)方法、以及YOLO的創(chuàng)新。第四章:訓(xùn)練數(shù)據(jù)采集與制作。包括訓(xùn)練數(shù)據(jù)的采集、訓(xùn)練數(shù)據(jù)的制作。第五章:訓(xùn)練配置、訓(xùn)練及測(cè)試訓(xùn)練效果。包括具體的訓(xùn)練配置、訓(xùn)練過(guò)程和測(cè)試訓(xùn)練效果。第六章:總結(jié)。包含對(duì)本次課程項(xiàng)目實(shí)踐過(guò)程的感想與收獲,以及對(duì)未來(lái)的展望。第二章使用工具介紹及安裝CentOS系統(tǒng)CentOS(CommunityENTerpriseOperatingSystem)是Linux發(fā)行版之一,它是來(lái)自于RedHatEnterpriseLinux依照開(kāi)放源代碼規(guī)定釋出的源代碼所編譯而成。由于出自同樣的源代碼,因此有些要求高度穩(wěn)定性的服務(wù)器

13、以CentOS替代商業(yè)版的RedHatEnterpriseLinux使用。兩者的不同,在于CentOS并不包含封閉源代碼軟件。CentOS,我們有很多人叫它社區(qū)企業(yè)操作系統(tǒng),不管怎么叫它,它都是linux的一個(gè)發(fā)行版本。CentOS并不是全新的linux發(fā)行版,在RedHat家族中有企業(yè)版的產(chǎn)品,它是RedHatEnterpriseLinux,CentOS是RHEL的克隆版本,RHEL是很多企業(yè)采用的linux發(fā)行版本,需要向RedHat付費(fèi)才可以使用,并能得到付過(guò)費(fèi)用的服務(wù)和技術(shù)支持和版本升級(jí)。這個(gè)CentOS可以像REHL一樣的構(gòu)筑linux系統(tǒng)環(huán)境,但不需要向RedHat付任何的費(fèi)用,同

14、樣也得不到任何有償技術(shù)支持和升級(jí)服務(wù)。CentOS有很多特點(diǎn):CentOS就是對(duì)RedHatAS進(jìn)行改進(jìn)后發(fā)布的,各種操作、使用和REDHAT沒(méi)有區(qū)別;CentOS完全免費(fèi),不存在REDHATAS4需要序列號(hào)的問(wèn)題;CentOS獨(dú)有的yum命令支持在線(xiàn)升級(jí),可以即時(shí)更新系統(tǒng),不像REDHAT那樣需要花錢(qián)購(gòu)買(mǎi)支持服務(wù);CentOS修正了許多REDHATAS的BUG?;陂_(kāi)源的特性,Linux環(huán)境被很多技術(shù)人員和公司使用。Linux以它的高效性和靈活性著稱(chēng),Linux模塊化的設(shè)計(jì)結(jié)構(gòu),使得它既能在價(jià)格昂貴的工作站上運(yùn)行,也能夠在廉價(jià)的PC機(jī)上實(shí)現(xiàn)全部的Unix特性,具有多任務(wù)、多用戶(hù)的能力。我們這

15、次的課程項(xiàng)目“基于深度學(xué)習(xí)的目標(biāo)識(shí)別研究”也是在Linux環(huán)境下完成的,因此本次項(xiàng)目實(shí)現(xiàn)使用的是CentOS7.0系統(tǒng)。OpenCV工具OpenCV的全稱(chēng)是:OpenSourceComputerVisionLibrary。OpenCV是-一個(gè)基于(開(kāi)源)發(fā)行的跨平臺(tái)計(jì)算機(jī)視覺(jué)庫(kù),可以運(yùn)行在Linux、Windows和MacOS操作系統(tǒng)上。它輕量級(jí)而且高效,由一系列C函數(shù)和少量C+類(lèi)構(gòu)成,同時(shí)提供了Python、Ruby、MATLAB等語(yǔ)言的接口,實(shí)現(xiàn)了圖像處理和計(jì)算機(jī)視覺(jué)方面的很多通用算法。OpenCV致力于真實(shí)世界的實(shí)時(shí)應(yīng)用,通過(guò)優(yōu)化的C代碼的編寫(xiě)對(duì)其執(zhí)行速度帶來(lái)了可觀的提升,并且可以通過(guò)購(gòu)

16、買(mǎi)Intel的IPP高性能多媒體函數(shù)庫(kù)得到更快的處理速度。OpenCV是一個(gè)用于圖像處理、分析、機(jī)器視覺(jué)方面的開(kāi)源函數(shù)庫(kù)。無(wú)論是做科學(xué)研究,還是商業(yè)應(yīng)用,OpenCV都是一個(gè)理想的工具庫(kù)。因?yàn)椋瑢?duì)于這兩者,它完全是免費(fèi)的。該庫(kù)采用C及C+語(yǔ)言編寫(xiě),該庫(kù)的所有代碼都經(jīng)過(guò)優(yōu)化,計(jì)算效率很高,因?yàn)?,它更?zhuān)注于設(shè)計(jì)成為一種用于實(shí)時(shí)系統(tǒng)的開(kāi)源庫(kù)。OpenCV采用C語(yǔ)言進(jìn)行優(yōu)化,而且,在多核機(jī)器上面,其運(yùn)行速度會(huì)更快。它的一個(gè)目標(biāo)是提供友好的機(jī)器視覺(jué)接口函數(shù),從而使得復(fù)雜的機(jī)器視覺(jué)產(chǎn)品可以加速面世。該庫(kù)包含了橫跨工業(yè)產(chǎn)品檢測(cè)、醫(yī)學(xué)圖像處理、安防、用戶(hù)界面、攝像頭標(biāo)定、三維成像、機(jī)器視覺(jué)等領(lǐng)域的超過(guò)500個(gè)

17、接口函數(shù)。同時(shí),由于計(jì)算機(jī)視覺(jué)與機(jī)器學(xué)習(xí)密不可分,該庫(kù)也包含了比較常用的一些機(jī)器學(xué)習(xí)算法。圖像識(shí)別、機(jī)器視覺(jué)在安防領(lǐng)域有所應(yīng)用。并且在航拍圖片、街道圖片中,也要依賴(lài)于機(jī)器視覺(jué)的攝像頭標(biāo)定、圖像融合等技術(shù)。近年來(lái),在入侵檢測(cè)、特定目標(biāo)跟蹤、目標(biāo)檢測(cè)、人臉檢測(cè)、人臉識(shí)別、人臉跟蹤等領(lǐng)域,OpenCV的應(yīng)用及其廣泛,而這些,僅僅是其應(yīng)用的冰山一角。一個(gè)典型的計(jì)算機(jī)視覺(jué)算法,應(yīng)該包含以下一些步驟:數(shù)據(jù)獲取(對(duì)OpenCV來(lái)說(shuō),就是圖片);預(yù)處理;特征提??;特征選擇;分類(lèi)器設(shè)計(jì)與訓(xùn)練;分類(lèi)判別;而OpenCV工具對(duì)這六個(gè)部分,分別提供了API。CUDA開(kāi)發(fā)環(huán)境隨著顯卡的發(fā)展,GPU越來(lái)越強(qiáng)大,而且GPU

18、為顯示圖像做了優(yōu)化。在計(jì)算上已經(jīng)超越了通用的CPU。如此強(qiáng)大的芯片如果只是作為顯卡就太浪費(fèi)了,因此NVidia推出CUDA運(yùn)算平臺(tái),CUDA即ComputeUnifiedDeviceArchitecture,是NVidia利用GPU平臺(tái)進(jìn)行通用并行計(jì)算的一種架構(gòu),該架構(gòu)使GPU能夠解決復(fù)雜的計(jì)算問(wèn)題,它包含了CUDA指令集架構(gòu)(ISA)以及GPU部的并行計(jì)算引擎。開(kāi)發(fā)人員可以利用C語(yǔ)言、OpenCL、Fortran、c+等為CUDA架構(gòu)編寫(xiě)程序。(1)CUDA體系架構(gòu)CUDA體系架構(gòu)由兩部分組成,分別是流處理器陣列(SPA)和存儲(chǔ)器系統(tǒng)。流處理陣列(SPA)的結(jié)構(gòu)又分為兩層:TPC(線(xiàn)程處理器

19、群)和SM(流多處理器)。GPU的巨大計(jì)算能力來(lái)自于SPA中的大量計(jì)算單元。存儲(chǔ)器系統(tǒng)由幾個(gè)部分組成:存儲(chǔ)器控制器(MMC)、固定功能的光柵操作單元(ROP)以及二級(jí)紋理操作。(2)CUDA執(zhí)行模型將CPU作為主機(jī)(Host),而GPU作為協(xié)處理器(Coprocessor)或者設(shè)備(Device),從而讓GPU來(lái)運(yùn)行一些能夠被高度線(xiàn)程化的程序。在這個(gè)模型中,CPU與GPU協(xié)同工作,CPU負(fù)責(zé)進(jìn)行邏輯性強(qiáng)的事務(wù)處理和串行計(jì)算,GPU則專(zhuān)注于執(zhí)行高度線(xiàn)程化的并行處理任務(wù)。一個(gè)完整的CUDA程序是由一系列的設(shè)備端kernel函數(shù)并行步驟和主機(jī)端的串行處理步驟共同組成的。CUDA執(zhí)行模型如下圖:Gri

20、d(網(wǎng)格)運(yùn)行在SPA上;Block(線(xiàn)程塊)運(yùn)行在SM上;Thread(線(xiàn)程)運(yùn)行在SP上。GridISrhl日!XK/Bl由K;BlXk0劃(1,VC21JJJ8I霍一#專(zhuān)LGrid2-IJBIS3MkSlek徨0|Glock(1町Kernel1SRririlKsrnaI伽(LnHr*祁TtltMAmT(LhriuTddnjpgM-7ES憎素吉產(chǎn)=576憎可PEG圖價(jià)宜件大小:1&.4K&文件喪-四、訓(xùn)練環(huán)境安裝使用YUM安裝OpenCVsudoyuminstallopencv安裝顯卡驅(qū)動(dòng)及其開(kāi)發(fā)工具包CUDA,安裝CUDA必須要有一個(gè)Nvidia的顯卡,本機(jī)的顯卡是GTX860M。CUD

21、A下載網(wǎng)址為:https:/developer.nvidia./cuda-downloads官方還提供了CUDA安裝過(guò)程所需的pdf文檔,仔細(xì)閱讀并按照其步驟安裝即可。此次安裝使用runfile安裝。首先檢測(cè)本機(jī)是否有Nvidia顯卡,執(zhí)行以下命令:lspci|grep-invidia有任何輸出說(shuō)明本機(jī)有Nvidia顯卡,本機(jī)輸出結(jié)果如下:01:00.03Dcontroller:NVIDIACorpora*onGM107MGeForceGTX860M(reva2)接下來(lái)查看系統(tǒng)核版本:uname-m&cat/etc/*release該命令會(huì)顯示系統(tǒng)架構(gòu)以及核版本信息,本機(jī)主要的輸出信息如下:x

22、86_64CentOSLinuxrelease7.3.1611(Core)確認(rèn)編譯器gcc已經(jīng)安裝,該命令會(huì)打印gcc的版本,如果提示找不到命令則說(shuō)明沒(méi)有安裝gcc:gcc-version安裝Kernel-header和kernel-devel,這兩個(gè)包的版本需要和本機(jī)的核版本一致,安裝命令如下:sudoyuminstallkernel-devel-$(uname-r)kernel-headers-$(uname-r)開(kāi)始安裝cuda,本次實(shí)驗(yàn)使用的是runfile安裝。Nouveau是一個(gè)開(kāi)源的3D驅(qū)動(dòng),安裝Nvidia驅(qū)動(dòng)之前需要先將其關(guān)閉。首先要把Nouveau加入黑,創(chuàng)建/etc/mo

23、dprobe.d/blacklist-nouveau.conf文件并寫(xiě)入以下容:blacklistnouveauoptionsnouveaumodeset=0重新生成核initramfssudodracut-force重新啟動(dòng)計(jì)算機(jī),在進(jìn)入登錄界面時(shí),不要登錄,按下ALT+F2進(jìn)入命令提示符模式,使用root用戶(hù)登錄,然后使用init3命令進(jìn)入多用戶(hù)模式開(kāi)始安裝Naidia驅(qū)動(dòng)。執(zhí)行以下命令開(kāi)始安裝CUDA:./cuda_8.0.61_375.26_linux-run安裝過(guò)程會(huì)提示是否安裝CUDA工具箱、CUDA例子等,此次試驗(yàn)中選擇安裝。最后將cuda加入到環(huán)境變量中、重啟,即完成安裝。將c

24、ude加入到環(huán)境變量:exportPATH=/usr/local/cuda-8.0/bin$PATH:+:$PATHexportLD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64$LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH安裝完成OpenCV和CUDA后,需要修改YOLO的Makefile文件并重新編譯。打開(kāi)Makefile文件,將0PENCV=0改為OPENCV=1,將GPU=0改為GPU=1,并執(zhí)行make命令重新編譯。第三章YOLO算法原理YOLO算法簡(jiǎn)介基于深度學(xué)習(xí)方法的一個(gè)特點(diǎn)就是實(shí)現(xiàn)端到端的檢測(cè)。相對(duì)于其它目標(biāo)檢測(cè)與識(shí)別方法

25、(比如FastR-CNN)將目標(biāo)識(shí)別任務(wù)分類(lèi)目標(biāo)區(qū)域預(yù)測(cè)和類(lèi)別預(yù)測(cè)等多個(gè)流程,YOLO將目標(biāo)區(qū)域預(yù)測(cè)和目標(biāo)類(lèi)別預(yù)測(cè)整合于單個(gè)神經(jīng)網(wǎng)絡(luò)模型中,實(shí)現(xiàn)在準(zhǔn)確率較高的情況下快速目標(biāo)檢測(cè)與識(shí)別,更加適合現(xiàn)場(chǎng)應(yīng)用環(huán)境。YOLO為一種新的目標(biāo)檢測(cè)方法,該方法的特點(diǎn)是實(shí)現(xiàn)快速檢測(cè)的同時(shí)還達(dá)到較高的準(zhǔn)確率。作者將目標(biāo)檢測(cè)任務(wù)看作目標(biāo)區(qū)域預(yù)測(cè)和類(lèi)別預(yù)測(cè)的回歸問(wèn)題。該方法采用單個(gè)神經(jīng)網(wǎng)絡(luò)直接預(yù)測(cè)物品邊界和類(lèi)別概率,實(shí)現(xiàn)端到端的物品檢測(cè)。同時(shí),該方法檢測(cè)速非???,基礎(chǔ)版可以達(dá)到45幀/s的實(shí)時(shí)檢測(cè);astYOLO可以達(dá)到155幀/s。與當(dāng)前最好系統(tǒng)相比,YOLO目標(biāo)區(qū)域定位誤差更大,但是背景預(yù)測(cè)的假陽(yáng)性?xún)?yōu)于當(dāng)前最好的

26、方法。人類(lèi)視覺(jué)系統(tǒng)快速且精準(zhǔn),只需看一眼即可識(shí)別圖像中物品及其位置。傳統(tǒng)目標(biāo)檢測(cè)系統(tǒng)采用deformablepartsmodels(DPM)方法,通過(guò)滑動(dòng)框方法提出目標(biāo)區(qū)域,然后采用分類(lèi)器來(lái)實(shí)現(xiàn)識(shí)別。近期的R-CNN類(lèi)方法采用regionproposalmethods,首先生成潛在的boundingboxes,然后采用分類(lèi)器識(shí)別這些boundingboxes區(qū)域。最后通過(guò)post-processing來(lái)去除重復(fù)boundingboxes來(lái)進(jìn)行優(yōu)化。這類(lèi)方法流程復(fù)雜,存在速度慢和訓(xùn)練困難的問(wèn)題。而Y0L0方法將目標(biāo)檢測(cè)問(wèn)題轉(zhuǎn)換為直接從圖像中提取boundingboxes和類(lèi)別概率的單個(gè)回歸問(wèn)題,

27、只需一眼即可檢測(cè)目標(biāo)類(lèi)別和位置。YOLO方法特點(diǎn)YOLO采用單個(gè)卷積神經(jīng)網(wǎng)絡(luò)來(lái)預(yù)測(cè)多個(gè)boundingboxes和類(lèi)別概率,如圖所示:本方法相對(duì)于傳統(tǒng)方法有如下優(yōu)點(diǎn):(1)速度非常快。YOLO預(yù)測(cè)流程簡(jiǎn)單,速度很快。基礎(chǔ)版在TitanXGPU上可以達(dá)到45幀/s;快速版可以達(dá)到150幀/s。因此,YOLO可以實(shí)現(xiàn)實(shí)時(shí)檢測(cè)。(2)YOLO采用全圖信息來(lái)進(jìn)行預(yù)測(cè)。與滑動(dòng)窗口方法和regionproposal-based方法不同,YOLO在訓(xùn)練和預(yù)測(cè)過(guò)程中可以利用全圖信息。FastR-CNN檢測(cè)方法會(huì)錯(cuò)誤的將背景中的斑塊檢測(cè)為目標(biāo),原因在于FastR-CNN在檢測(cè)中無(wú)法看到全局圖像。相對(duì)于FastR

28、-CNN,YOLO背景預(yù)測(cè)錯(cuò)誤率低一半。YOLO可以學(xué)習(xí)到目標(biāo)的概括信息,具有一定普適性。采用自然圖片訓(xùn)練YOLO,采用藝術(shù)圖像來(lái)預(yù)測(cè)。YOLO比其它目標(biāo)檢測(cè)方法(DPM和R-CNN)準(zhǔn)確率高很多。本方法有如下缺點(diǎn):YOLO對(duì)相互靠的很近的物體,還有很小的群體檢測(cè)效果不好,這是因?yàn)橐粋€(gè)網(wǎng)格中只預(yù)測(cè)了兩個(gè)框,并且只屬于一類(lèi)。對(duì)測(cè)試圖像中,同一類(lèi)物體出現(xiàn)的新的不常見(jiàn)的長(zhǎng)寬比和其他情況是。泛化能力偏弱。由于損失函數(shù)的問(wèn)題,定位誤差是影響檢測(cè)效果的主要原因。尤其是大小物體的處理上,還有待加強(qiáng)。YOLO的核心思想和實(shí)現(xiàn)方法YOLO的核心思想YOLO的核心思想就是利用整圖作為網(wǎng)絡(luò)的輸入,直接在輸出層回歸b

29、oundingbox的位置和boundingbox所屬的類(lèi)別。YOLO的實(shí)現(xiàn)方法YOLO的實(shí)現(xiàn)過(guò)程圖解和方法如下:RizcTheImage黒Mbidingho-3JS申DivideTheImageiMe尋7禺卩腫$Aw4gftdthKlMHniIo號(hào)ridcelhb口s*donlh-irccrlc-rs.將一幅圖像分成SxS個(gè)網(wǎng)格(gridcell),如果某個(gè)目標(biāo)的中心落在這個(gè)網(wǎng)格中,則這個(gè)網(wǎng)格就負(fù)責(zé)預(yù)測(cè)這個(gè)目標(biāo)。每個(gè)網(wǎng)格要預(yù)測(cè)B個(gè)boundingbox,每個(gè)boundingbox除了要回歸自身的位置之外,還要附帶預(yù)測(cè)一個(gè)confidence值,這個(gè)confidence代表了所預(yù)測(cè)的box中含

30、有目標(biāo)的置信度和這個(gè)box預(yù)測(cè)的有多準(zhǔn)兩重信息,其值是這樣計(jì)算的:Pr(目標(biāo))IOUtruth(其中如果有目標(biāo)落在一個(gè)gridcell里,第一項(xiàng)取1,pred否則取0。第二項(xiàng)是預(yù)測(cè)的boundingbox和實(shí)際的groundtruth之間的IOU值)。每個(gè)boundingbox要預(yù)測(cè)(x,y,w,h)和confidence共5個(gè)值,每個(gè)網(wǎng)格還要預(yù)測(cè)一個(gè)類(lèi)別信息,記為C類(lèi)。則SxS個(gè)網(wǎng)格,每個(gè)網(wǎng)格要預(yù)測(cè)B個(gè)boundingbox,還要預(yù)測(cè)C個(gè)categories。輸出就是SxSx(5*B+C)的一個(gè)tensor。(注意:class信息是針對(duì)每個(gè)網(wǎng)格的,confidence信息是針對(duì)每個(gè)bound

31、ingbox的)。舉例說(shuō)明:在PASCALVOC中,圖像輸入為448x448,取S=7,B=2,一共有20個(gè)類(lèi)別(C=20)。則輸出就是7x7x30的一個(gè)tensor。整個(gè)網(wǎng)絡(luò)結(jié)構(gòu)如下圖所示:2x2-i-22x2-i-23x3x10243x3m1024-2ixlx2561x1x5123x3x5123x3x1024MaxpoolrMaxpoolLa艸2x2-s-22x22C&nn.Layer在測(cè)試的時(shí)候,每個(gè)網(wǎng)格預(yù)測(cè)的class信息和boundingbox預(yù)測(cè)的confidence信息相乘,就得到每個(gè)boundingbox的class-specificconfidencescore:Pr(cla

32、ssIobject)*Pr(object)*IOUtruth=Pr(class)*IOUtruthpredipred等式左邊第一項(xiàng)就是每個(gè)網(wǎng)格預(yù)測(cè)的類(lèi)別信息,第二三項(xiàng)就是每個(gè)boundingbox預(yù)測(cè)的confidence。這個(gè)乘積即encode了預(yù)測(cè)的box屬于某一類(lèi)的概率,也有該box準(zhǔn)確度的信息。得到每個(gè)box的class-specificconfidencescore以后,設(shè)置閾值,濾掉得分低的boxes,對(duì)保留的boxes進(jìn)行NMS處理,就得到最終的檢測(cè)結(jié)果。YOLO的實(shí)現(xiàn)細(xì)節(jié)預(yù)訓(xùn)練:使用imageNet預(yù)訓(xùn)練,網(wǎng)絡(luò)結(jié)構(gòu)是前20層網(wǎng)絡(luò)加上一個(gè)平均池化層和一個(gè)全連接層。預(yù)測(cè):由于預(yù)測(cè)需

33、要更加精細(xì)的像素,所以把輸入擴(kuò)展成448*448,并且增加了四個(gè)卷積層和兩個(gè)全連接層。在最后一層預(yù)測(cè)中,需要預(yù)測(cè)概率和boundingbox,這里把boundingbox的預(yù)測(cè)歸一化成0到1。激活函數(shù):最后一層的激活函數(shù)使用線(xiàn)性激活函數(shù),而其他層使用leakyReLU的激活函數(shù):誤差傳播:誤差的計(jì)算采用簡(jiǎn)單的平方和誤差函數(shù)。但是,從網(wǎng)絡(luò)結(jié)構(gòu)可以知道,預(yù)測(cè)概率的維數(shù)比預(yù)測(cè)boundingbox的維數(shù)要高,而且,在圖片多的格子是沒(méi)有物體的,這會(huì)使得它們的confidence趨于0。它們的貢獻(xiàn)過(guò)大,會(huì)使得網(wǎng)絡(luò)無(wú)法收斂。我們采用的一個(gè)辦法就是加權(quán),賦予不同的權(quán)值,對(duì)于預(yù)測(cè)boundingbox的,而對(duì)

34、于沒(méi)有目標(biāo)物體的格子的誤差賦予權(quán)值。同時(shí),對(duì)于大的box的小誤差肯定要比小box的小誤差影響更小,于是,采用對(duì)w,h,x,y取平方根的做法,因?yàn)槠椒礁瘮?shù)的圖像隨著x的增大會(huì)變得平緩。此外,一個(gè)網(wǎng)格可能會(huì)預(yù)測(cè)多個(gè)box,希望每個(gè)box負(fù)責(zé)專(zhuān)門(mén)的目標(biāo)物體的預(yù)測(cè)。方法是,對(duì)于一個(gè)物體的truthbox,看哪個(gè)boundingbox的IOU更大,就讓它負(fù)責(zé)這個(gè)box。公式為:其中-對(duì)應(yīng)格子i如果有物體,那相應(yīng)的boundingboxj負(fù)責(zé)這個(gè)物體的預(yù)測(cè)?!氨硎靖褡觟中是否有物體。訓(xùn)練方法:使用隨機(jī)梯度下降法,以及dropout的方法。Y0L0的創(chuàng)新YOLO將物體檢測(cè)作為回歸問(wèn)題求解。基于一個(gè)單獨(dú)的端

35、到端網(wǎng)絡(luò),完成從原始圖像的輸入到物體位置和類(lèi)別的輸出。從網(wǎng)絡(luò)設(shè)計(jì)上,YOLO與RCNN、FastRCNN及FasterRCNN的區(qū)別如下:(1)YOLO訓(xùn)練和檢測(cè)均是在一個(gè)單獨(dú)網(wǎng)絡(luò)中進(jìn)行。YOLO沒(méi)有顯示地求取regionproposal的過(guò)程。而RCNN/FastRCNN采用分離的模塊(獨(dú)立于網(wǎng)絡(luò)之外的selectivesearch方法)求取候選框(可能會(huì)包含物體的矩形區(qū)域),訓(xùn)練過(guò)程因此也是分成多個(gè)模塊進(jìn)行。FasterRCNN使用RPN(regionproposalnetwork)卷積網(wǎng)絡(luò)替代RCNN/FastRNN的selectivesearch模塊,將RPN集成到FastRCNN檢測(cè)

36、網(wǎng)絡(luò)中,得到一個(gè)統(tǒng)一的檢測(cè)網(wǎng)絡(luò)。盡管RPN與FastRCNN共享卷積層,但是在模型訓(xùn)練過(guò)程中,需要反復(fù)訓(xùn)練RPN網(wǎng)絡(luò)和FastRCNN網(wǎng)絡(luò)。(2)YOLO將物體檢測(cè)作為一個(gè)回歸問(wèn)題進(jìn)行求解,輸入圖像經(jīng)過(guò)一次inference,便能得到圖像中所有物體的位置和其所屬類(lèi)別及相應(yīng)的置信概率。而RCNN/FastRCNN/FasterRCNNA將檢測(cè)結(jié)果分為兩部分求解:物體類(lèi)別(分類(lèi)問(wèn)題),物體位置即boundingbox(回歸問(wèn)題)。第四章訓(xùn)練數(shù)據(jù)采集與制作4.1訓(xùn)練數(shù)據(jù)的采集準(zhǔn)備需要訓(xùn)練的圖片:本次實(shí)驗(yàn)訓(xùn)練的是水果的識(shí)別,種類(lèi)一共5種,分別是WaterMelon、StrawBerry、Orange、

37、Pineapple、Apple,每種水果圖片約30-40,總共有171圖片。圖片全部從百度圖片中下載,圖片分辨率一般在400*300像素左右。將圖片按照按照5位數(shù)字從00000遞增開(kāi)始命名,并將其全部放到一個(gè)文件夾中。OMM.jpgOODOl.jpgQft&32.jpgOOGD2.jpg3DO04.jpg0&0&.jpgOOOO&.jpg&Q01ftjpgOOOll.jpg0C0L3jpgODD16.jpgMD17.jpgQ&OiajpgV0M19.jpg0D024.jpgOOO25.jpg0002ftjpg00027.jpg0002a.jpg00029jpg00022jpg00022.jpg

38、00032Jpg00032.jpg0(034jpg00025.jpg0036.jpg00037jpg00038.jpg訓(xùn)練數(shù)據(jù)的制作1.下載并編譯安裝Labellmg,使用這個(gè)軟件給171水果圖片標(biāo)記對(duì)象位置和名稱(chēng)。0FkUW.B,TmIrw/OWNuMIl0MW.H.*.irTw,Mm|1jut-M0i,4iXKi.ppI.tun,ifTvcllM|Tui.冋J(rèn)hkrwi-OU-vpjWT.E.*w.EmiWEi,*pfl.tm-.HVJ.MlTufrw,iUH?M*=*z卩十2mO-Mjidijwe-b&KviUrUhEp冶*17100,I旳xmltrj=F-R:r!T:一L1十殆.:-.

39、Lm出tuiui|WWFk&k,工!九孤兀El!w比耐如心itmdfiTiTir-3.Ejhft/WEfEBCI.q|Ta,WK2曲.2*葉3冋1“*歸M,HKnj+r*.抑.tiflo.imrc,&!frwi-.KiXi円!Mlrwp|WC?*,+Kini.TrwiiWiTdItbOCOW.paiTMlrBTijjwAv.打5ie*EWbi網(wǎng)BC.pj/mTW麗r3.防,g*心Hfj*血.切.*g*i-aiq.BuJgr#啊事itwH*X-|U.hvJJA.打JT(o-rsiODOB9.xml-JUrDstlmage探存(町=-nx2標(biāo)記完成后,Labellmg將會(huì)生成一個(gè)記錄了對(duì)象名稱(chēng)和位

40、置的xml文件,每圖片對(duì)應(yīng)一個(gè)xml文件,xml文件容如下。annotationverified=no,folderDstlmaqe/foldea吃filename胡0089UnknawnOLZO400300c/heights3Dsrmslonpo5QHJnspecifiadu/p。芻gnDD/difTiulta53114BLB7:/bndbox/objectobjnameat9rmelonDD85uwmi門(mén)a114uFvmirin3.按照VOC數(shù)據(jù)集的格式創(chuàng)建一下文件夾結(jié)構(gòu)。darknet項(xiàng)目目錄Icfg配置文件存放目錄src項(xiàng)目源代碼VOCdevkitVOC數(shù)據(jù)集目錄V0C2017數(shù)據(jù)標(biāo)記

41、年份Annitations存放xml標(biāo)記文件OOOOO.xmlxml標(biāo)記文件OOOOl.xmlxml標(biāo)記文件00171.xmlxml標(biāo)記文件|ImageSets圖片相關(guān)信息|Main文件位置信息train.txt保存了全部圖片位置的文件|JPEGImages需要訓(xùn)練的圖片OOOOO.jpg水果圖片OOOOl.jpg水果圖片00171.jpg水果圖片|labelslabels文件OOOOO.txtlabels文件OOOOl.txtlabels文件00170.txtlabels文件4.YOLO不能識(shí)別xml文件,需要將其轉(zhuǎn)化成其識(shí)別的格式。使用項(xiàng)目自帶的voc_label.py腳本可以將xml格式

42、轉(zhuǎn)換成YOLO所需的label文件。打開(kāi)voc_label.py,修改數(shù)據(jù)集年份,要識(shí)別的對(duì)象種類(lèi)名稱(chēng),以及xml文件存放位置等信息。文件容如下圖所示。該腳本同時(shí)會(huì)生成上面目錄結(jié)構(gòu)中的train.txt文件。修改完成后運(yùn)行,將會(huì)生成上面目錄結(jié)構(gòu)所示的labels文件。列=號(hào)蘭iW)訂I-口*Importxml,et:ree.ElEmEntTreiEasETimportpickleimportosfromosimportlistdlrTgetewdfromd占.palhiinportJoinsets=20171train1)classes=strafftberr,watenrielonrappl

43、a.orangerpineappledefconvert(size,box):drf=1./sizefOdh=lB/sizslx=bax0+boxL)/2a0y-box2+box3)/2-Qw二bosL-box:h-box3-box:lx-x*dww二w*dwy二y*dhh-h*dhreturnt羔昭h)dlefconvert_an門(mén)Dt凸tici門(mén)(y(&凸廠imagi&_icl):in_file=open(1VOCd&vkit/WOC%s/ftnnotations/%s.MiniD%(year,imagedd)out_file=open(VOCd&vkit/VDCs/lab|&Ls/l%s

44、.txt%(y&arimage_id)r1w)tree=ET.parse(ln_file)root=tree.getroot()size=root.find(size)iju=int(size.find(width.text)h=int(size.find(height1).text)Python制凄符寬度;合廳27列41*插入生成label文件后,打開(kāi)其中一個(gè),容如下所示。其中第一項(xiàng)“0”代表的是水果的編號(hào),“0”代表草莓,“1”代表西瓜等,后面4項(xiàng)分別是標(biāo)記的對(duì)象在圖片中的位置的比例。00001上ct/nrknet/VOCdevkit/VOC2017/Labels00.426041666&

45、670.5850.431250.7433333333330D.6781250.3766666666670.356250.746666666667第五章訓(xùn)練配置、訓(xùn)練及測(cè)試訓(xùn)練效果5.1訓(xùn)練配置第四章是準(zhǔn)備訓(xùn)練數(shù)據(jù)的全部過(guò)程,接下來(lái)要修改配置文件。創(chuàng)建cfg/s文件,該文件包含了5種水果的名稱(chēng),每行一個(gè)。順序需與前面python腳本中配置的一致,文件容如下。strawberrywatermelonappleorangepineapple創(chuàng)建cfg/myd.data,該文件包含了要識(shí)別的對(duì)象的種類(lèi)個(gè)數(shù)、train.txt文件位置,上述s文件位置,以及生成的訓(xùn)練權(quán)重文件位置。該文件容如下:class

46、es=5train=/home/myd/new/darknet/VOCdevkit/VOC2017/lmageSets/Main/train.txtnames=/home/myd/new/darknet/cfg/sbackup=backup_myd復(fù)制一份cfg/yolo.cfg文件,命名為yolo-myd.cfg,并編輯這個(gè)文件,主要修改文件末尾region層中classes為5.即要識(shí)別的水果種類(lèi)個(gè)數(shù),修改region層上一層convolution層,把其中的filters值修改成50,根據(jù)網(wǎng)上教程,計(jì)算公式為(classes+coords+1)*(NUM),此次試驗(yàn)中具體數(shù)據(jù)為(5+4+

47、1)*5=50。訓(xùn)練過(guò)程執(zhí)行以下命令開(kāi)始訓(xùn)練:./darknetdetectortrain./cfg/myd.datacfg/yolo-myd.cfg執(zhí)行命令后的輸出如下:mydlocalhostdarknet$./darknetdetectortrain./cfg/myd.data./cfg/yolo-myd.cfgyolo-mydlayerfilterssizeinputoutput0conv323x3/1416x416x3-416x416x321max2x2/2416x416x32-208x208x322conv643x3/1208x208x32-208x208x643max2x2/22

48、08x208x64-104x104x644conv1283x3/1104x104x64-104x104x1285conv641x1/1104x104x128-104x104x646conv1283x3/1104x104x64-104x104x1287max2x2/2104x104x128-52x52x1288conv2563x3/152x52x128-52x52x2569conv1281x1/152x52x256-52x52x12810conv2563x3/152x52x128-52x52x25611max2x2/252x52x256-26x26x25612conv5123x3/126x26x

49、256-26x26x51213conv2561x1/126x26x512-26x26x25614conv5123x3/126x26x256-26x26x51215conv2561x1/126x26x512-26x26x25616conv5123x3/126x26x256-26x26x51217max2x2/226x26x512-13x13x51218conv10243x3/113x13x512-13x13x102419conv5121x1/113x13x1024-13x13x51220conv10243x3/113x13x512-13x13x102421conv5121x1/113x13x10

50、24-13x13x51222conv10243x3/113x13x512-13x13x102423conv10243x3/113x13x1024-13x13x102424conv10243x3/113x13x1024-13x13x102425route16conv641x1/126x26x512-26x26x64reorg/226x26x64-13x13x256route2724conv10243x3/113x13x1280-13x13x1024conv501x1/113x13x1024-13x13x50detectionLearningRate:0.01,Momentum:0.9,Decay

51、:0.0005Resizing訓(xùn)練過(guò)程中會(huì)打印訓(xùn)練進(jìn)度的信息,如下所示:Loaded:0.000000secondsRegionAvgIOU:0.160720,Class:0.231168,Obj:0.521430,NoObj:0.413074,AvgRecall:0.000000,count:2RegionAvgIOU:0.180606,Class:0.679878,Obj:0.386150,NoObj:0.408220,AvgRecall:0.000000,count:11:.851959,.851959avg,0.000000rate,0.950000seconds,2imagesLoa

52、ded:0.000000secondsRegionAvgIOU:0.254033,Class:0.317158,Obj:0.520064,NoObj:0.409462,AvgRecall:0.200000,count:5RegionAvgIOU:0.241384,Class:0.085939,Obj:0.527829,NoObj:0.407437,AvgRecall:0.000000,count:12:216.814362,.848206avg,0.000000rate,0.550000seconds,4imagesLoaded:0.000000secondsRegionAvgIOU:0.22

53、6418,Class:0.028838,Obj:0.529031,NoObj:0.421976,AvgRecall:0.000000,count:2RegionAvgIOU:0.001094,Class:0.286836,Obj:0.057044,NoObj:0.412083,AvgRecall:0.000000,count:13:279.181519,.781540avg,0.000000rate,0.550000seconds,6imagesLoaded:0.000000secondsRegionAvgIOU:0.161439,Class:0.111352,Obj:0.491796,NoO

54、bj:0.411375,AvgRecall:0.000000,count:5RegionAvgIOU:0.245507,Class:0.220506,Obj:0.330526,NoObj:0.407965,AvgRecall:0.000000,count:54:250.851227,203.988510avg,0.000000rate,0.580000seconds,8imagesLoaded:0.000000seconds訓(xùn)練過(guò)程中會(huì)每5分鐘生成一次訓(xùn)練數(shù)據(jù)文件到backup_myd/yolo-myd.backup,同時(shí)分階段生成訓(xùn)練權(quán)重,如yolo-myd_100.weights,yolo-myd_200.weights,yolo-myd_300.weights等。經(jīng)過(guò)大約24小時(shí)的訓(xùn)練,生成的訓(xùn)練文件如下:mydlocalhostbackup_myd$Isyolo-myd_10000.we

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶(hù)所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶(hù)上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶(hù)上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶(hù)因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論