




下載本文檔
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、第一章前言部分1.1課程項目背景與意義1.1.1課程項目背景視覺是各個應(yīng)用領(lǐng)域,如制造業(yè)、檢驗、文檔分析、醫(yī)療診斷,和軍事等領(lǐng)域中各種智能/自主系統(tǒng)中不可分割的一部分。由于它的重要性,一些先進(jìn)國家,例如美國把對計算機(jī)視覺的研究列為對經(jīng)濟(jì)和科學(xué)有廣泛影響的科學(xué)和工程中的重大基本問題, 即所謂的重大挑戰(zhàn)。計算機(jī)視覺的挑戰(zhàn)是要為計算機(jī)和機(jī)器人開發(fā)具有與人類水平相當(dāng)?shù)囊曈X能力。機(jī)器視覺需要圖象信號,紋理和顏色建模,幾何處理和推理,以及物體建模。一個有能力的視覺系統(tǒng)應(yīng)該把所有這些處理都緊密地集成在一起。作為一門學(xué)科,計算機(jī)視覺開始于60年代初,但在計算機(jī)視覺的基本研究中的許多重要進(jìn)展是在80年代取得的。
2、計算機(jī)視覺與人類視覺密切相關(guān),對人類視覺有一個正確的認(rèn)識將對計算機(jī)視覺的研究非常有益。計算機(jī)視覺是一門研究如何使機(jī)器“看”的科學(xué),更進(jìn)一步的說,就是是指用攝影機(jī)和電腦代替人眼對目標(biāo)進(jìn)行識別、跟蹤和測量等機(jī)器視覺,并進(jìn)一步做圖形處理,使電腦處理成為更適合人眼觀察或傳送給儀器檢測的圖像。作為一個科學(xué)學(xué)科, 計算機(jī)視覺研究相關(guān)的理論和技術(shù), 試圖建立能夠從圖像或者多維數(shù)據(jù)中獲取信息的人工智能系統(tǒng)。這里所指的信息指Shannon定義的,可以用來幫助做一個“決定”的信息。因為感知可以看作是從感官信號中提取信息,所以計算機(jī)視覺也可以看作是研究如何使人工系統(tǒng)從圖像或多維數(shù)據(jù)中“感知”的科學(xué)??茖W(xué)技術(shù)的發(fā)展是
3、推動人類社會進(jìn)步的主要原因之一,未來社會進(jìn)一步地朝著科技化、信息化、智能化的方向前進(jìn)。在信息大爆炸的今天,充分利用這些信息將有助于社會的現(xiàn)代化建設(shè),這其中圖像信息是目前人們生活中最常見的信息。利用這些圖像信息的一種重要方法就是圖像目標(biāo)定位識別技術(shù)。不管是視頻監(jiān)控領(lǐng)域還是虛擬現(xiàn)實(shí)技術(shù)等都對圖像的識別有著極大的需求。一般的圖像目標(biāo)定位識別系統(tǒng)包括圖像分割、目標(biāo)關(guān)鍵特征提取、目標(biāo)類別分類三個步驟。深度學(xué)習(xí)的概念源于人工神經(jīng)網(wǎng)絡(luò)的研究。含多隱層的多層感知器就是一種深度學(xué)習(xí)結(jié)構(gòu)。深度學(xué)習(xí)通過組合低層特征形成更加抽象的高層表示屬性類別或特征,以發(fā)現(xiàn)數(shù)據(jù)的分布式特征表示。深度學(xué)習(xí)的概念由Hinton等人于2
4、006年提出?;谏疃戎眯啪W(wǎng)絡(luò)提出非監(jiān)督貪心逐層訓(xùn)練算法,為解決深層結(jié)構(gòu)相關(guān)的優(yōu)化難題帶來希望,隨后提出多層自動編碼器深層結(jié)構(gòu)。此外Lecun等人提出的卷積神經(jīng)網(wǎng)絡(luò)是第一個真正多層結(jié)構(gòu)學(xué)習(xí)算法,它利用空間相對關(guān)系減少參數(shù)數(shù)目以提高訓(xùn)練性能。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中的一個新的研究領(lǐng)域,通過深度學(xué)習(xí)的方法構(gòu)建深度網(wǎng)絡(luò)來抽取特征是目前目標(biāo)和行為識別中得到關(guān)注的研究方向,引起更多計算機(jī)視覺領(lǐng)域研究者對深度學(xué)習(xí)進(jìn)行探索和討論,并推動了目標(biāo)和行為識別的研究,推動了深度學(xué)習(xí)及其在目標(biāo)和行為識別中的新進(jìn)展?;谶@個發(fā)展趨勢,我們小組選擇了基于回歸方法的深度學(xué)習(xí)目標(biāo)識別算法YOLO勺研究。1.1.2課程項目研究的意
5、義眾所周知,當(dāng)前是信息時代,信息的獲得、加工、處理以及應(yīng)用都有了飛躍發(fā)展。人們認(rèn)識世界的重要知識來源就是圖像信息,在很多場合,圖像所傳送的信息比其他形式的信息更豐富、真切和具體。人眼與大腦的協(xié)作使得人們可以獲取、處理以及理解視覺信息,人類利用視覺感知外界環(huán)境信息的效率很高。事實(shí)上,據(jù)一些國外學(xué)者所做的統(tǒng)計,人類所獲得外界信息有80流右是來自眼睛攝取的圖像。由此可見,視覺作為人類獲取外界信息的主要載體,計算機(jī)要實(shí)現(xiàn)智能化,就必須能夠處理圖像信息。尤其是近年來,以圖形、圖像、視頻等大容量為特征的圖像數(shù)據(jù)處理廣泛應(yīng)用于醫(yī)學(xué)、交通、工業(yè)自動化等領(lǐng)域。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)中一種基于對數(shù)據(jù)進(jìn)行表征學(xué)習(xí)的方法
6、。觀測值(例如一幅圖像)可以使用多種方式來表示,如每個像素強(qiáng)度值的向量,或者更抽象地表示成一系列邊、特定形狀的區(qū)域等。而使用某些特定的表示方法更容易從實(shí)例中學(xué)習(xí)任務(wù)(例如,人臉識別或面部表情識別)。深度學(xué)習(xí)的好處是用非監(jiān)督式或半監(jiān)督式的特征學(xué)習(xí)和分層特征提取高效算法來替代手工獲取特征。深度學(xué)習(xí)是機(jī)器學(xué)習(xí)研究中的一個新的領(lǐng)域,其動機(jī)在于建立、模擬人腦進(jìn)行分析學(xué)習(xí)的神經(jīng)網(wǎng)絡(luò),它模仿人腦的機(jī)制來解釋數(shù)據(jù),例如圖像,聲音和文本。目標(biāo)檢測對于人來說是再簡單不過的任務(wù),但是對于計算機(jī)來說,它看到的是一些值為0255的數(shù)組,因而很難直接得到圖像中有人或者貓這種高層語義概念,也不清楚目標(biāo)出現(xiàn)在圖像中哪個區(qū)域。
7、圖像中的目標(biāo)可能出現(xiàn)在任何位置,目標(biāo)的形態(tài)可能存在各種各樣的變化,圖像的背景千差萬別,這些因素導(dǎo)致目標(biāo)檢測并不是一個容易解決的任務(wù)。這次課程項目,正是基于視覺、深度學(xué)習(xí)、目標(biāo)識別而進(jìn)行的,是一個熱度很高的話題?;谏疃葘W(xué)習(xí)的目標(biāo)識別研究具有重大的意義,深度學(xué)習(xí)的目標(biāo)識別算法對于未來能夠使用目標(biāo)檢測和圖像識別的手段運(yùn)用于物聯(lián)網(wǎng)、智能設(shè)備、生物制藥經(jīng)濟(jì)調(diào)控等多領(lǐng)域有很大的作用。1.2國內(nèi)外研究現(xiàn)狀機(jī)器學(xué)習(xí)是一門專門研究計算機(jī)怎樣模擬或?qū)崿F(xiàn)人類的學(xué)習(xí)行為,以獲取新的知識或技能,重新組織已有的知識結(jié)構(gòu)使之不斷改善自身的性能的學(xué)科。機(jī)器能否像人類一樣能具有學(xué)習(xí)能力呢?1959年美國的塞繆爾(Samuel
8、)設(shè)計了一個下棋程序,這個程序具有學(xué)習(xí)能力,它可以在不斷的對弈中改善自己的棋藝。4年后,這個程序戰(zhàn)勝了設(shè)計者本人。又過了3年,這個程序戰(zhàn)勝了美國一個保持8年之久的常勝不敗的冠軍。這個程序向人們展示了機(jī)器學(xué)習(xí)的能力,提出了許多令人深思的社會問題與哲學(xué)問題。深度學(xué)習(xí)最近幾年發(fā)展速度十分快,因此同時也推動了目標(biāo)識別技術(shù)的發(fā)展,技術(shù)的革新總是相互影響的。目標(biāo)檢測是圖像處理和計算機(jī)視覺的一個重要分支,在理論和實(shí)踐上都有重大意義。近年來,隨著物聯(lián)網(wǎng)的高速發(fā)展與智能終端的廣泛普及,目標(biāo)檢測技術(shù)成了機(jī)器視覺領(lǐng)域的研究熱點(diǎn),被國內(nèi)外學(xué)者廣泛關(guān)注。目標(biāo)檢測的研究主要包括了基于視頻圖像的目標(biāo)檢測和基于靜態(tài)圖片的目標(biāo)
9、檢測。 本文主要討論基于靜態(tài)圖片的目標(biāo)檢測算法,即在靜態(tài)圖片中檢測并定位所設(shè)定種類的目標(biāo)?;陟o態(tài)圖片的目標(biāo)檢測的難點(diǎn)主要在于圖片中的目標(biāo)會因光照、視角以及目標(biāo)內(nèi)部等變化而產(chǎn)生變化。針對以上的難點(diǎn),國內(nèi)外學(xué)者進(jìn)行了很多嘗試。目前提出的方法主要分為基于形狀輪廓的目標(biāo)檢測算法和基于目標(biāo)特征的檢測方法。計算機(jī)視覺是指用計算機(jī)實(shí)現(xiàn)人的視覺功能, 它的研究目標(biāo)就是使計算機(jī)具有用過一幅或多幅圖像認(rèn)知周圍環(huán)境的能力(包括對客觀世界三維環(huán)境的感知、識別與理解)。運(yùn)動目標(biāo)檢測作為計算機(jī)視覺技術(shù)的一個分支,就是對視場內(nèi)的運(yùn)動目標(biāo),如人或交通工具,進(jìn)行實(shí)時的觀測,并將其分類,然后分析他們的行為。目前,國際上許多高校
10、和研究所,如麻省理工學(xué)學(xué)院、牛津大學(xué)等都專門設(shè)立了針對運(yùn)動目標(biāo)檢測的研究組或者研究實(shí)驗室。美英等國家已經(jīng)研究了大量的相關(guān)項目。一些著名公司和研究機(jī)構(gòu),如舊M、Microsoft、麻省理工學(xué)院等近幾年來投入了大量的人力物力來進(jìn)行智能監(jiān)控系統(tǒng)的研究,部分成果已經(jīng)轉(zhuǎn)化為產(chǎn)品投入了市場。目前在國內(nèi)的研究機(jī)構(gòu)中, 中國科學(xué)院北京自動化研究所下屬的模式識別國家重點(diǎn)實(shí)驗室視覺監(jiān)控研究處于領(lǐng)先地位。他們在交通場景視覺監(jiān)控、人的運(yùn)動視覺監(jiān)控和行為模式識別方面進(jìn)行了深入研究。另外他們也總結(jié)了英國雷丁大學(xué)VIEWS勺車輛交通監(jiān)控原型系統(tǒng)的研究經(jīng)驗,在之前的理論研究的基礎(chǔ)上,自行設(shè)計并初步實(shí)現(xiàn)了一個擁有完全自主知識產(chǎn)
11、權(quán)的交通監(jiān)控原型系統(tǒng)vstart(Visualsurveillancestar)。國內(nèi)其他高校如上海交通大學(xué)、北京航空航天大學(xué)也對這方面進(jìn)行了研究。盡管這樣,目前在運(yùn)動目標(biāo)檢測和視覺監(jiān)控這方面仍然存在著許多不足:目前國內(nèi)市場上所見到的大部分智能監(jiān)控產(chǎn)品來源于國外,性能和可靠性不夠,并且維護(hù)和安裝問題需要外方全方位參加,給國家安全帶來了巨大的隱患。目標(biāo)之間互遮擋和人體自遮擋問題,尤其是在擁擠狀態(tài)下,多人的檢測更是難處理。1.3本論文結(jié)構(gòu)本文是基于回歸方法的深度學(xué)習(xí)目標(biāo)識別算法YOLO勺研究。第一章:前言。主要介紹課程項目背景與意義、國內(nèi)外研究的現(xiàn)狀,以及本論文的結(jié)構(gòu)。第二章:使用工具介紹及安裝。
12、包括CentOS系統(tǒng)、OpenCVT具、CUDAff發(fā)環(huán)境、環(huán)境的搭建。第三章:YOLOJ法簡介。包括YOLOJ法特點(diǎn)、核心思想和實(shí)現(xiàn)方法、以及YOLO的創(chuàng)新。第四章:訓(xùn)練數(shù)據(jù)采集與制作。包括訓(xùn)練數(shù)據(jù)的采集、訓(xùn)練數(shù)據(jù)的制作。第五章:訓(xùn)練配置、訓(xùn)練及測試訓(xùn)練效果。包括具體的訓(xùn)練配置、訓(xùn)練過程和測試訓(xùn)練效果。第六章:總結(jié)。包含對本次課程項目實(shí)踐過程的感想與收獲,以及對未來的展望。第二章使用工具介紹及安裝2.1 CentOS系統(tǒng)CentOS(CommunityENTerpriseOperatingSystem)是Linux發(fā)行版之一,它是來自于RedHatEnterpriseLinux依照開放源代碼
13、規(guī)定釋出的源代碼所編譯而成。由于出自同樣的源代碼,因此有些要求高度穩(wěn)定性的服務(wù)器以CentOS替代商業(yè)版的RedHatEnterpriseLinux使用。兩者的不同,在于CentOS并不包含封閉源代碼軟件。CentOS我們有很多人叫它社區(qū)企業(yè)操作系統(tǒng),不管怎么叫它,它都是linux的一個發(fā)行版本。CentOS并不是全新的linux發(fā)行版,在RedHat家族中有企業(yè)版的產(chǎn)品,它是RedHatEnterpriseLinux,CentOS是RHEL勺克隆版本,RHEL是很多企業(yè)采用的linux發(fā)行版本, 需要向RedHat付費(fèi)才可以使用, 并能得到付過費(fèi)用的服務(wù)和技術(shù)支持和版本升級。這個CentOS
14、可以像REHL一樣的構(gòu)筑linux系統(tǒng)環(huán)境,但不需要向RedHat付任何的費(fèi)用,同樣也得不到任何有償技術(shù)支持和升級服務(wù)。CentOS很多特點(diǎn):CentOS就是對RedHatAS進(jìn)行改進(jìn)后發(fā)布的,各種操作、使用和REDHA股有區(qū)別;CentOS完全免費(fèi), 不存在REDHATAS4!要序列號的問題;CentOS獨(dú)有的yum命令支持在線升級, 可以即時更新系統(tǒng), 不像REDHATJB樣需要花錢購買支持服務(wù);CentOS修正了許多REDHATAS勺BUG基于開源的特性,Linux環(huán)境被很多技術(shù)人員和公司使用。Linux以它的高效性和靈活性著稱,Linux模塊化的設(shè)計結(jié)構(gòu),使得它既能在價格昂貴的工作站上
15、運(yùn)行,也能夠在廉價的PC機(jī)上實(shí)現(xiàn)全部的Unix特性,具有多任務(wù)、多用戶的能力。我們這次的課程項目“基于深度學(xué)習(xí)的目標(biāo)識別研究”也是在Linux環(huán)境下完成的,因此本次項目實(shí)現(xiàn)使用的是CentOS7.0系統(tǒng)。2.2 OpenCV工具OpenCV勺全稱是:OpenSourceComputerVisionLibrary。OpenCV!一個基于(開源)發(fā)行的跨平臺計算機(jī)視覺庫,可以運(yùn)行在Linux、Windows和MacOS操作系統(tǒng)上。它輕量級而且高效,由一系列C函數(shù)和少量C+類構(gòu)成,同時提供了Python、RubyMATLA繇語言的接口,實(shí)現(xiàn)了圖像處理和計算機(jī)視覺方面的很多通用算法。OpenCN力于真
16、實(shí)世界的實(shí)時應(yīng)用, 通過優(yōu)化的C代碼的編寫對其執(zhí)行速度帶來了可觀的提升,并且可以通過購買Intel的IPP高性能多媒體函數(shù)庫得到更快的處理速度。OpenCV是一個用于圖像處理、 分析、 機(jī)器視覺方面的開源函數(shù)庫。 無論是做科學(xué)研究,還是商業(yè)應(yīng)用,OpenCV都是一個理想的工具庫。因為,對于這兩者,它完全是免費(fèi)的。該庫采用C及C+郵言編寫,該庫的所有代碼都經(jīng)過優(yōu)化,計算效率很高,因為,它更專注于設(shè)計成為一種用于實(shí)時系統(tǒng)的開源庫。OpenCV采用C語言進(jìn)行優(yōu)化,而且,在多核機(jī)器上面,具運(yùn)行速度會更快。它的一個目標(biāo)是提供友好的機(jī)器視覺接口函數(shù),從而使得復(fù)雜的機(jī)器視覺產(chǎn)品可以加速面世。該庫包含了橫跨工
17、業(yè)產(chǎn)品檢測、醫(yī)學(xué)圖像處理、安防、用戶界面、攝像頭標(biāo)定、三維成像、機(jī)器視覺等領(lǐng)域的超過500個接口函數(shù)。同時,由于計算機(jī)視覺與機(jī)器學(xué)習(xí)密不可分,該庫也包含了比較常用的一些機(jī)器學(xué)習(xí)算法。圖像識別、機(jī)器視覺在安防領(lǐng)域有所應(yīng)用。并且在航拍圖片、街道圖片中,也要依賴于機(jī)器視覺的攝像頭標(biāo)定、圖像融合等技術(shù)。近年來,在入侵檢測、特定目標(biāo)跟蹤、目標(biāo)檢測、人臉檢測、人臉識別、人臉跟蹤等領(lǐng)域,OpenCV勺應(yīng)用及其廣泛,而這些,僅僅是其應(yīng)用的冰山一角。一個典型的計算機(jī)視覺算法,應(yīng)該包含以下一些步驟:(1)數(shù)據(jù)獲取(對OpenC原說,就是圖片);(2)預(yù)處理;(3)特征提?。?4)特征選擇;(5)分類器設(shè)計與訓(xùn)練;
18、(6)分類判別;而OpenCVT具對這六個部分,分別提供了API。2.3 CUDA開發(fā)環(huán)境隨著顯卡的發(fā)展,GPU來越強(qiáng)大,而且GPlfe顯示圖像做了優(yōu)化。在計算上已經(jīng)超越了通用的CPU如此強(qiáng)大的芯片如果只是作為顯卡就太浪費(fèi)了,因此NVidia推出CUDA1算平臺,CUD/PComputeUnifiedDeviceArchitecture,是NVidia利用GPU臺進(jìn)行通用并行計算的一種架構(gòu),該架構(gòu)使GPUfg夠解決復(fù)雜的計算問題,它包含了CUDA旨令集架構(gòu)(ISA)以及GPlft部的并行計算引擎。開發(fā)人員可以利用C語言、OpenCLFortran、C+等為CUDA構(gòu)編寫程序。(1)CUDM系架
19、構(gòu)CUDA體系架構(gòu)由兩部分組成,分別是流處理器陣列(SPA和存儲器系統(tǒng)。流處理陣列(SPA的結(jié)構(gòu)又分為兩層:TPC(線程處理器群)和SM(流多處理器)。GPU勺巨大計算能力來自于SPA中的大量計算單元。存儲器系統(tǒng)由幾個部分組成:存儲器控制器(MMC、固定功能的光柵操作單元(ROP以及二級紋理操作。(2)CUD軟行模型將CPU乍為主機(jī)(Host),而GPU為協(xié)處理器(Coprocessor)或者設(shè)備(Device),從而讓GPK運(yùn)行一些能夠被高度線程化的程序。在這個模型中,CPlUfGPLB同工作,CPU5責(zé)進(jìn)行邏輯性強(qiáng)的事務(wù)處理和審行計算,GPU專注于執(zhí)行高度線程化的并行處理任務(wù)。一個完整的C
20、UD雁序是由一系列的設(shè)備端kernel函數(shù)并行步驟和主機(jī)端的用行處理步驟共同組成的。CUDA執(zhí)行模型如下圖:Grid(網(wǎng)格)運(yùn)行在SPA;Block(線程塊)運(yùn)行在SM;Thread(線程)運(yùn)行在SP上。CPUCPUSerialGrid1BlockGKCKGlockQ3忤叫2.0)國HKS步然:Bish%刮(111(21)戶J1T-Block(1,1TLE(LG)n( (n口網(wǎng)Timiiliili*:*mXU恒*rtHD(inFW1由f-BirSjIds竭與rikund1Kernel不是一個完整的程序,而只是其中的一個關(guān)鍵并行計算步驟。Kernel以一個網(wǎng)格(Grid)的形式執(zhí)行,每個網(wǎng)格由若
21、干個線程塊(block)組成,每一個線程塊又由若干個線程(thread)組成。在CUDA的架構(gòu)下,一個程序分為兩個部份:Host端和Device端。Host端是指在CPU上執(zhí)行的部份,而Device端則是在顯示芯片(GPU上執(zhí)行的部份。Device端的程序又稱為kernel。通常Host端程序會將數(shù)據(jù)準(zhǔn)備好后,復(fù)制到顯卡的內(nèi)存中,再由顯示芯片執(zhí)行Device端程序,完成后再由Host端程序?qū)⒔Y(jié)果從顯卡的內(nèi)存中取回。由于CPU存取顯卡內(nèi)存時只能透過PCIExpress接口,因此速度較慢,因此不能經(jīng)常進(jìn)行這類動作,以免降低效率。由于顯示芯片大量并行計算的特性,它處理一些問題的方式和一般CPU是不同
22、的。主要的特點(diǎn)包括:(1)內(nèi)存存取latency(等待時間)的問題:CPU通常使用cache來減少存取主內(nèi)存的次數(shù),以避免內(nèi)存latency影響到執(zhí)行效率。顯示芯片則多半沒有cache(或很小),而利KernelCodeKernelGT聞 M用并行化執(zhí)行的方式來隱藏內(nèi)存的latency(即當(dāng)?shù)谝粋€thread需要等待內(nèi)存讀取結(jié)果時,則開始執(zhí)行第二個thread,依此類推)。(2)分支指令的問題:CPU通常利用分支預(yù)測等方式來減少分支指令造成的流水線。顯示芯片則多半使用類似處理內(nèi)存latency的方式。不過,通常顯示芯片處理分支的效率會比較差。因此,最適合利用CUDA處理的問題,是可以大量并行化
23、的問題,才能有效隱藏內(nèi)存的latency,并有效利用顯示芯片上的大量執(zhí)行單元。使用CUDA時,同時有上千個thread在執(zhí)行是很正常的。因此,如果不能大量并行化的問題,使用CUDA就沒辦法達(dá)到最好的效率了。在這個過程中,CPUS任的工作為控制GPIB行,調(diào)度分配任務(wù),并能做一些簡單的計算,而大量需要并行計算的工作都交給GPU實(shí)現(xiàn)。另外需要注意的是,由于CPU存取顯存時只能通過PCI-Express接口,速度較慢,因此不能經(jīng)常進(jìn)行,以免降低效率。通??梢栽诔绦蜷_始時將數(shù)據(jù)復(fù)制進(jìn)GPU顯存,然后在GPU內(nèi)進(jìn)行計算,直到獲得需要的數(shù)據(jù),再將其復(fù)制到系統(tǒng)內(nèi)存中。2.4環(huán)境的搭建一、項目源代碼下載與安裝
24、1.使用git把項目源代碼下載到本地gitclonehttps:/ .測試識別對象:./darknetdetectcfg/yolo.cfgyolo.weightsdata/dog.jpgI在上述命令中,detect表示調(diào)用darknet的對象識別功能,cfg/yolo.cfg是配置文件,包含各層網(wǎng)絡(luò)的參數(shù)、要識別的物體種類數(shù)等,yolo.weights是上一步下載的權(quán)重數(shù)據(jù),data/dog.jpg是要進(jìn)行對象識別的照片,照片內(nèi)容如下圖:執(zhí)行命令:mydfelocBlhoitdarknet:5./darknetdetectcfg/yolo.cfgyolo.weightsdete/dog.jpg
25、layerfilterssxre0canv323x3/1m3x2x2/2canv643x3/3max2x2/4conv1283x3/5canv641X1/6canv1283x3/7max8canv2562x2/3x3/9conv12fl1x1/10canv2563x3/11max2x2/12canv5123x3/13canv2561X1/14can*5123x3/15canv2561X1/16conv5123x3/17max2x2/IBcanv10243x3/canv5121X1/20canv21canv22canv23conv10243X3/5121x1/10243x3/1023x3/102
26、43x3/161X1/2724canvrouteconvreorqroute22266662226666 ssss回片回999999955577773aa3J3J3J1111111999999955577773aa3J3J3J1111111608X3608X32304X32304X64152X64152X128152X64152X12876X12876X25676X12876X25638X25630X51260fix608i304X304xinput2 25 51 13X51219X51219X102419K51219X102419K512igX10241X102438x25638X51238
27、x25630conv4251x1/31detectionLoadingweightsfromyclo.data/dog.jpg;Predictedirdog:82truek:65%bieycli:85%1x38K51223SX38X54119X19K1280119x19K1O24weights.-Cone!0.350000secondsoutput60Sx32304X32304x64152X64152x128152x64152x12876x12676st25676x12B76X25638x25638x5123&x25638x51238X25638x51219X51219*102419x
28、51219X1024ISx51219X102419102419X102438x6419x若$19X102419x425XXXXXXXXXXMXXXXXXXXXXXMXXXXXXXXXXXXMXXXXXXXXXXXMXX84422226666888888999999990005555777733333311111111844222266668888889999999900055557777333333111111116 6331111331111fi999fi9990041 1上圖顯示檢測過程在0.35秒內(nèi)完成, 這是安裝完顯卡驅(qū)動后運(yùn)行的結(jié)果, 在安裝顯卡驅(qū)動前,使用CPU!行圖像檢測,花費(fèi)時
29、間大約為8秒。命令執(zhí)行完成后,將會把識別結(jié)果生成到predictions.jpg,打開圖片如下圖所示:四、訓(xùn)練環(huán)境安裝1.使用YUMK裝OpenCVsudoyuminstallopencv2.安裝顯卡驅(qū)動及其開發(fā)工具包CUDAe裝CUDA、須要有一個Nvidia的顯卡,本機(jī)的顯卡是GTX860MCUDAF載網(wǎng)址為:https:/ 該命令會打印gcc的版本, 如果提示找不到命令則說明沒有安裝gcc:gcc-version安裝Kernel-header和kernel-devel,這兩個包的版本需要和本機(jī)的內(nèi)核版本一致,安裝命令如下:sudoyuminstallkernel-devel-$(unam
30、e-r)kernel-headers-$(uname-r)開始安裝cuda,本次實(shí)驗使用的是runfile安裝。Nouveau是一個開源的3D驅(qū)動, 安裝Nvidia驅(qū)動之前需要先將其關(guān)閉。首先要把Nouveau加入黑名單,創(chuàng)建/etc/modprobe.d/blacklist-nouveau.conf文件并寫入以下內(nèi)容:blacklistnouveauoptionsnouveaumodeset=0重新生成內(nèi)核initramfs:sudodracut-force重新啟動計算機(jī),在進(jìn)入登錄界面時,不要登錄,按下ALT+F2進(jìn)入命令提示符模式,使用root用戶登錄,然后使用init3命令進(jìn)入多用戶
31、模式開始安裝Naidia驅(qū)動。執(zhí)行以下命令開始安裝CUDA./cuda_8.0.61_375.26_linux-run安裝過程會提示是否安裝CUDA:具箱、CUD刷子等,此次試驗中選擇安裝。最后將cuda加入到環(huán)境變量中、重啟,即完成安裝。將cude加入到環(huán)境變量:exportPATH=/usr/local/cuda-8.0/bin$PATH:+:$PATHexportLD_LIBRARY_PATH=/usr/local/cuda-8.0/lib64$LD_LIBRARY_PATH:+:$LD_LIBRARY_PATH3.安裝完成OpenCq口CUDAf,需要修改YOLO勺Makefile文件
32、并重新編譯。 打開Makefile文件, 將OPENCV=0fc為OPENCV=1將GPU=0fc為GPU=1并執(zhí)行make命令重新編譯。第三章YOLOT法原理3.1YOLO算法簡介基于深度學(xué)習(xí)方法的一個特點(diǎn)就是實(shí)現(xiàn)端到端的檢測。相對于其它目標(biāo)檢測與識別方法(比如FastR-CNN)將目標(biāo)識別任務(wù)分類目標(biāo)區(qū)域預(yù)測和類別預(yù)測等多個流程,YOLO等目標(biāo)區(qū)域預(yù)測和目標(biāo)類別預(yù)測整合于單個神經(jīng)網(wǎng)絡(luò)模型中,實(shí)現(xiàn)在準(zhǔn)確率較高的情況下快速目標(biāo)檢測與識別,更加適合現(xiàn)場應(yīng)用環(huán)境。YOLO為一種新的目標(biāo)檢測方法, 該方法的特點(diǎn)是實(shí)現(xiàn)快速檢測的同時還達(dá)到較高的準(zhǔn)確率。作者將目標(biāo)檢測任務(wù)看作目標(biāo)區(qū)域預(yù)測和類別預(yù)測的回歸
33、問題。該方法采用單個神經(jīng)網(wǎng)絡(luò)直接預(yù)測物品邊界和類別概率,實(shí)現(xiàn)端到端的物品檢測。同時,該方法檢測速非常快,基礎(chǔ)版可以達(dá)到45幀/s的實(shí)時檢測;FastYOLO可以達(dá)到155幀/s。與當(dāng)前最好系統(tǒng)相比,YOLO目標(biāo)區(qū)域定位誤差更大,但是背景預(yù)測的假陽性優(yōu)于當(dāng)前最好的方法。人類視覺系統(tǒng)快速且精準(zhǔn),只需看一眼即可識別圖像中物品及其位置。傳統(tǒng)目標(biāo)檢測系統(tǒng)采用deformablepartsmodels(DPM)方法, 通過滑動框方法提出目標(biāo)區(qū)域,然后采用分類器來實(shí)現(xiàn)識別。近期的R-CNN類方法采用regionproposalmethods,首先生成潛在的boundingboxes,然后采用分類器識另U這些
34、boundingboxes區(qū)域。最后通過post-processing來去除重復(fù)boundingboxes來進(jìn)行優(yōu)化。這類方法流程復(fù)雜,存在速度慢和訓(xùn)練困難的問題。而YOLOJ法將目標(biāo)檢測問題轉(zhuǎn)換為直接從圖像中提取boundingboxes和類別概率的單個回歸問題,只需一眼即可檢測目標(biāo)類別和位置。3.2 YOLO方法特點(diǎn)YOLOR用單個卷積神經(jīng)網(wǎng)絡(luò)來預(yù)測多個boundingboxes和類別概率,如圖所示:1.Xtiizcmage.tintcuvolutiano)nwM&rk.*.NTMICKsuppre-SMon.本方法相對于傳統(tǒng)方法有如下優(yōu)點(diǎn):(1)速度非???。YOLOW測流程簡單,
35、速度很快?;A(chǔ)版在TitanXGPU上可以達(dá)到45幀/s;快速版可以達(dá)到150幀/s。因此,YOLOT以實(shí)現(xiàn)實(shí)時檢測。(2) YOLO采用全圖信息來進(jìn)行預(yù)測。與滑動窗口方法和regionproposal-based方法不同,YOLOS訓(xùn)練和預(yù)測過程中可以利用全圖信息。FastR-CNN僉測方法會錯誤的將背景中的 斑 塊 檢 測 為 目 標(biāo) , 原 因 在 于FastR-CNN在 檢 測 中 無 法 看 到 全 局 圖 像 。 相 對 于FastR-CNN,YOLCS景預(yù)測錯誤率低一半。(3) YOLOT以學(xué)習(xí)到目標(biāo)的概括信息,具有一定普適性。采用自然圖片訓(xùn)練YOLO采用藝術(shù)圖像來預(yù)測。YOLQ
36、匕其它目標(biāo)才測方法(DPMf口R-CNN準(zhǔn)確率高很多。本方法有如下缺點(diǎn):(1) YOLO對相互靠的很近的物體,還有很小的群體檢測效果不好,這是因為一個網(wǎng)格中只預(yù)測了兩個框,并且只屬于一類。(2)對測試圖像中,同一類物體出現(xiàn)的新的不常見的長寬比和其他情況是。泛化能力偏弱。(3)由于損失函數(shù)的問題,定位誤差是影響檢測效果的主要原因。尤其是大小物體的處理上,還有待加強(qiáng)3.3 YOLO的核心思想和實(shí)現(xiàn)方法1 .YOLO的核心思想YOLO的核心思想就是利用整張圖作為網(wǎng)絡(luò)的輸入,直接在輸出層回歸boundingbox的位置和boundingbox所屬的類別。2 .YOLO的實(shí)現(xiàn)方法YOLO勺實(shí)現(xiàn)過程圖解和
37、方法如下:(1)將一幅圖像分成SxS個網(wǎng)格(gridcell),如果某個目標(biāo)的中心落在這個網(wǎng)格中,則這個網(wǎng)格就負(fù)責(zé)預(yù)測這個目標(biāo)。(2)每個網(wǎng)格要預(yù)測B個boundingbox,每個boundingbox除了要回歸自身的位置之外,還要附帶預(yù)測一個confidence值, 這個confidence代表了所預(yù)測的box中含有目標(biāo)的置信度和這個box預(yù)測的有多準(zhǔn)兩重信息,其值是這樣計算的:Pr(目標(biāo))“IOU;黑(其中如果有目標(biāo)落在一個gridcell里,第一項取1,否則取0。第二項是預(yù)測的boundingbox和實(shí)際的groundtruth之間的IOU值)。(3)每個boundingbox要預(yù)測(x
38、,y,w,h)和confidence共5個值,每個網(wǎng)格還要預(yù)測一個類別信息,記為C類。則SxS個網(wǎng)格,每個網(wǎng)格要預(yù)測B個boundingbox,還要預(yù)測C個categories。輸出就是SxSx(5*B+C)的一個tensor。(注意:class信息是針對每個網(wǎng)格的,confidence信息是針對每個boundingbox的)。舉例說明:在PASCALVOC,圖像輸入為448x448,取S=7,B=2,一共有20個類別(C=20)。則輸出就是7x7x30的一個tensorThtImag#Divid*Th*ImagtgridcvlhbixMdon愉*irccrJc-n.TrainTh*N*tw很
39、To蘆TiwihH91ylM產(chǎn)中MbU”ndboundingboacjoordmac-ji.整個網(wǎng)絡(luò)結(jié)構(gòu)如下圖所示:(4)在測試的時候,每個網(wǎng)格預(yù)測的class信息和boundingbox預(yù)測的confidence信息相乘,就得至U每個boundingbox的class-specificconfidencescore:Pr(class|object)*Pr(object)*IOU器d=Pr(class尸IOU黑;等式左邊第一項就是每個網(wǎng)格預(yù)測的類別信息,第二三項就是每個boundingbox預(yù)測的confidence。這個乘積即encode了預(yù)測的box屬于某一類的概率, 也有該box準(zhǔn)確度的
40、信息。(5)彳馬至U每個box的class-specificconfidencescore以后, 設(shè)置閾值, 濾掉得分低的boxes,對保留的boxes進(jìn)行NMSt理,就得到最終的檢測結(jié)果。3 .4YOLO的實(shí)現(xiàn)細(xì)節(jié)1.預(yù)訓(xùn)練:使用imageNet預(yù)訓(xùn)練,網(wǎng)絡(luò)結(jié)構(gòu)是前20層網(wǎng)絡(luò)加上一個平均池化層和一個全連接層。2.預(yù)測:由于預(yù)測需要更加精細(xì)的像素,所以把輸入擴(kuò)展成448*448,并且增加了四個卷積層和兩個全連接層。在最后一層預(yù)測中,需要預(yù)測概率和boundingbox,這里把boundingbox的預(yù)測歸一化成0到1。Cori*.附6四川Lflytr2x2+2Con.LagrCon*.Laye
41、nMoKpcolLaX*r3K3婚M2x2+:1x1近我3處512Ma*pwlLoy*都36Cnrw.Lderi24-t2MKp*llyrCann.LaytrConn.Layer3.激活函數(shù):最后一層的激活函數(shù)使用線性激活函數(shù),而其他層使用函數(shù):E,ii二0otherwise4 .誤差傳播:誤差的計算采用簡單的平方和誤差函數(shù)。但是,從網(wǎng)絡(luò)結(jié)構(gòu)可以知道,預(yù)測概率的維數(shù)比預(yù)測boundingbox的維數(shù)要高,而且,在圖片中大多的格子是沒有物體的,這會使得它們的confidence趨于0。它們的貢獻(xiàn)過大,會使得網(wǎng)絡(luò)無法收斂。我們采用的一個辦法就是加權(quán),賦予不同的權(quán)值,對于預(yù)測boundingbox的
42、,而對于沒有目標(biāo)物體的格子的誤差賦予權(quán)值。同時,對于大的box的小誤差肯定要比小box的小誤差影響更小,于是,采用對w,h,x,y取平方根的做法,因為平方根函數(shù)的圖像隨著x的增大會變得平緩。此外,一個網(wǎng)格可能會預(yù)測多個box,希望每個box負(fù)責(zé)專門的目標(biāo)物體的預(yù)測。方法是,對于一個物體的truthbox,看哪個boundingbox的IOU更大,就讓它負(fù)責(zé)這個box。公式為:S2BAooon!瑞備尸+(弧-灰尸=0j=O+入*E上::(1j.iij仆L/Ji=i) )j=ti+4252口:丁(G-a)mj工口+ZZ折3(e)-仇尸i=0cCtfaswi(leakyReLU的激活R叫其中行對應(yīng)格
43、子i如果有物體,那相應(yīng)的boundingboxj負(fù)責(zé)這個物體n嗎I的預(yù)測。tJ表示格子i中是否有物體。5 .訓(xùn)練方法:使用隨機(jī)梯度下降法,以及dropout的方法。6 .4YOLO的倉I新YOLO#物體檢測作為回歸問題求解?;谝粋€單獨(dú)的端到端網(wǎng)絡(luò),完成從原始圖像的輸入到物體位置和類別的輸出。從網(wǎng)絡(luò)設(shè)計上,YOL0ttRCNNFastRCNNiFasterRCNN的區(qū)別如下:(1)YOLOHI練和檢測均是在一個單獨(dú)網(wǎng)絡(luò)中進(jìn)行。YOLO沒有顯示地求取regionproposal的過程。而RCNN/FastRCNNR用分離的模塊(獨(dú)立于網(wǎng)絡(luò)之外的selectivesearch方法)求取候選框(可能
44、會包含物體的矩形區(qū)域),訓(xùn)練過程因此也是分成多個模塊進(jìn)行。FasterRCNN使用RPN(regionproposalnetwork)卷積網(wǎng)絡(luò)替代RCNN/FastRNN勺selectivesearch模塊, 將RPN成到FastRCNN檢測網(wǎng)絡(luò)中,得到一個統(tǒng)一的檢測網(wǎng)絡(luò)。盡管RPN與FastRCNN共享卷積層,但是在模型訓(xùn)練過程中,需要反復(fù)訓(xùn)練RPNR絡(luò)和FastRCNIW絡(luò)。(2) YOLO等物體檢測作為一個回歸問題進(jìn)行求解,輸入圖像經(jīng)過一次inference,便能得到圖像中所有物體的位置和其所屬類別及相應(yīng)的置信概率。而RCNN/FastRCNN/FasterRCNNA檢測結(jié)果分為兩部分求
45、解:物體類別(分類問題),物體位置即boundingbox(回歸問題)。RCNNFastRCNNFasterRCNNYOLOregionproposalmodulePNregionproposulmoduledetrztionnetworkYOLOnetworkftatureKtractkonFastRCNNfeatureextractionnetworkclasSificatioriiregression第四章訓(xùn)練數(shù)據(jù)采集與制作4.1訓(xùn)練數(shù)據(jù)的采集準(zhǔn)備需要訓(xùn)練的圖片:本次實(shí)驗訓(xùn)練的是水果的識別,種類一共5種,分別是WaterMelon、StrawBerry、Orange、Pineapple、
46、Apple,每種水果圖片約30-40張,總共有171張圖片。圖片全部從百度圖片中下載,圖片分辨率一般在400*300像素左右。將圖片按照按照5位數(shù)字從00000遞增開始命名,并將其全部放到一個文件夾中。4.2訓(xùn)練數(shù)據(jù)的制作1.下載并編譯安裝LabelImg,使用這個軟件給171張水果圖片標(biāo)記對象位置和名稱。0OO32jpg叩9OT034jpgOOOQDjpg00001jpg00003JpgOOOOBjpg00009,pgDOOLOjpgMM16.jpg00017jpg】1尊9fOClQ.jpgX)012jpg0W;3jpg000i4,jpg00015,JDC00021jpg000箝Jpg2.標(biāo)
47、記完成后,Labellmg將會生成一個記錄了對象名稱和位置的xml文件,每張圖片對應(yīng)一個xml文件,xml文件內(nèi)容如下。打開/mOOOBJ.xml除存IS_CXIcannotstlorerifleJ=ncefoLde口stImmgaw/I2Lfl000911erwe+/home/iryd/all/DstImage/09089Jpattcs-oun:*UnknoMy/MSiiWCAGdcfthA46gZhidth*-chiighil300i30/s氈1立MIIF產(chǎn)“白匕號廣21。門11川P-?Unspec1fld4/*00MMrdr15史/KEZL-會止yiri的+31葺/iin140/-m白乂
48、syra/max*/object-smeu-wataruiel門二mw*Unspeciflad./poseDcdlifficultGbridbox85*/xfliin-Fil七ladymiridXTIL常舟符K:度;3,行L列工-插入3 .按照VOO據(jù)集的格式創(chuàng)建一下文件夾結(jié)構(gòu)darknet項目目錄Icfg配置文件存放目錄一.I-src項目源代碼I-VOCdevkitVOC數(shù)據(jù)集目錄IIVOC2017數(shù)據(jù)標(biāo)記年份Annitations存放xml標(biāo)記文件I00000.xmlxml標(biāo)記文件I00001.xml1xml標(biāo)記文件Ixml標(biāo)記文件ImageSets圖片相關(guān)信息I-Main文件位置信息II
49、-train.txt保存了全部圖片位置的文件JPEGImages需要訓(xùn)練的圖片I00000.jpg水果圖片I00001.jpg水果圖片一.I00171.jpg水果圖片labelslabels文件|-00000.txtlabels文件|00001.txt1IIIlabels文件I.|-00170.txtlabels文件4.YOLO不能識別xml文件,需要將其轉(zhuǎn)化成其識別的格式。使用項目自帶的voc_label.py腳本可以將xml格式轉(zhuǎn)換成YOLO所需的label文件。打開voc_label.py,修改數(shù)據(jù)集年份,要識別的對象種類名稱,以及xml文件存放位置等信息。文件內(nèi)容如下圖所示。該腳本同時
50、會生成上面目錄結(jié)構(gòu)中的train.txt文件。修改完成后運(yùn)行,將會生成上面目錄結(jié)構(gòu)所示的labels文件。vtK-LitKlpy除存伸)I=_Dxm.:i-txril,etree,ElementIreeET-tpickleIriD&rti-in“),tllytdirfg電tuwd1-1ii4ii.i-Dr:iJoinsots=(Z0L7.train)ul已與ERE=ct,lwflTcrmHlonBfappleorargBrplnsapplfidefL.?r?(size,box:dw=j,號二工白dh-1./slze:.x-(box6+bcu1|/2.0y-lbox2+box3)/2.G
51、W-boxtl-DQXJ|-|toxr-1-1XI*CWW-y=y*dhh=h*dhreturntx0h】defLU-dwtiiirJtatc(yearrijiage_id)iln_fleapen(VOCdevkit/VOCTaa/Arrwtatlons/s.xml/悝drimage_ld)|aut_fneopen(0Cdvklt/VDC4aAflta|En.txt(y#artlnaga_ld)f1)trH-ET.parse416x416x32-416x416x322x2/2208x208x322conv643x3/1208x208x32-208x208x643max2x2/2208x208x
52、64-104x104x644conv1283x3/1104x104x64-104x104x1285conv641x1/1104x104x128-104x104x646conv1283x3/1104x104x64-104x104x1287max2x2/2104x104x128-52x52x1288conv2563x3/152x52x128-52x52x2569conv1281x1/152x52x256-52x52x12810conv2563x3/152x52x128-52x52x25611max2x2/252x52x256-26x26x25612conv5123x3/126x26x256-26x
53、26x51213conv2561x1/126x26x512-26x26x25614conv5123x3/126x26x256-26x26x51215conv2561x1/126x26x512-26x26x25616conv5123x3/126x26x256-26x26x51217max2x2/226x26x512-13x13x51218conv10243x3/113x13x512-13x13x102419conv5121x1/113x13x1024-13x13x51220conv10243x3/113x13x512-13x13x102421conv5121x1/113x13x1024-13x1
54、3x51222conv10243x3/113x13x512-13x13x102423conv10243x3/113x13x1024-13x13x102424conv25route10243x3/11613x13x1024-13x13x102426conv641x1/126x26x512-26x26x6427reorg28route/226x26x64-13x13x256272429conv10243x3/113x13x1280-13x13x102430conv501x1/131detection13x13x1024-13x13x50LearningRate:0.01,Momentum:0.9,
55、Decay:0.0005Resizing訓(xùn)練過程中會打印訓(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: 186.851959,186.851959avg,0.000000rate,0.950000second
56、s,2imagesLoaded: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,189.848206avg,0.000000rate,0.550000seconds,4imagesLoaded:0.000000secondsR
57、egionAvgIOU:0.226418,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,198.781540avg,0.000000rate,0.550000seconds,6imagesLoaded:0.000000secondsRegionAvgIOU:0.161439,Class:0.111352,Obj:0.491796,NoObj: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)練過程中會每5分鐘生成一次訓(xùn)練數(shù)據(jù)文件到backup_myd/yolo-myd.backup,同時分
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025-2030壓鑄模市場投資前景分析及供需格局研究研究報告
- 2025-2030衛(wèi)衣產(chǎn)業(yè)政府戰(zhàn)略管理與區(qū)域發(fā)展戰(zhàn)略研究咨詢報告
- 辦公租賃托管合同標(biāo)準(zhǔn)文本
- 2025-2030醫(yī)療養(yǎng)老行業(yè)發(fā)展分析及投資戰(zhàn)略研究報告
- 2025-2030剃須刀市場行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 小學(xué)生數(shù)學(xué)期末考核測驗(四年級下冊)
- 一年級語文下冊期末考試(真題)
- 考題六年級語文下學(xué)期期末考試
- 2025-2030全球及中國自行車零配件行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 2025-2030全球及中國移動交戰(zhàn)行業(yè)市場現(xiàn)狀供需分析及投資評估規(guī)劃分析研究報告
- 粉末冶金調(diào)機(jī)員培訓(xùn)
- 學(xué)校結(jié)核病防治工作制度
- 《H水電站水能規(guī)劃與防洪設(shè)計》18000字(論文)
- 建筑施工現(xiàn)場突發(fā)事件應(yīng)急預(yù)案及要求措施
- 阿拉善盟社區(qū)工作者招聘真題2024
- 村衛(wèi)生室管理培訓(xùn)
- 安全培訓(xùn)創(chuàng)傷急救
- 2025山西地質(zhì)集團(tuán)招聘37人筆試參考題庫附帶答案詳解
- 企業(yè)安全知識培訓(xùn)課件
- 2025年梅河口康美職業(yè)技術(shù)學(xué)院單招職業(yè)技能考試題庫必考題
- 用款申請單模板
評論
0/150
提交評論