




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
基于卡爾曼濾波和開源視覺庫(kù)OpenCV的運(yùn)動(dòng)目標(biāo)跟蹤問題研究目錄TOC\o"1-3"\h\u16471第一章緒論 41588一、研究課題的目的與意義 421161二、國(guó)內(nèi)外研究現(xiàn)狀 519863三、目標(biāo)跟蹤的難點(diǎn) 519609(一)外界因素的干擾 63619(二)目標(biāo)的陰影與遮擋 69221(三)跟蹤特征難于選擇 620556四、論文主要工作 618781第二章Opencv相關(guān)介紹 719818一、OpenCV介紹 730900二、opencv安裝和環(huán)境配置 7242三、opencv的特點(diǎn) 930869四、OpenCV功能介紹 105254第三章相關(guān)理論基礎(chǔ) 1123634一、圖像處理 111412二、顏色空間選擇 1219933(一)顏色空間RGB 126132(二)顏色空間HSV 1317271(三)顏色空間RGB與顏色空間HSV的轉(zhuǎn)換 132570三、圖像二值化 1426543四、圖像降噪 1521654(一)中值濾波 1528299(二)低通濾波 1526650五、圖像形態(tài)學(xué)濾波 1610454(一)膨脹和腐蝕 164953(二)開運(yùn)算和閉運(yùn)算 1828380六、本章小結(jié) 2026527第四章目標(biāo)識(shí)別與跟蹤 201573一、視覺系統(tǒng)跟蹤的主要流程分析 2020501二、地面目標(biāo)檢測(cè)識(shí)別方法 21493(一)光流法 2131961(二)幀間差分法 2123656(三)背景差分法 221973三、運(yùn)動(dòng)目標(biāo)跟蹤的算法 2214098(一)質(zhì)心跟蹤算法 2210149(二)Camshfit算法 2625243四、本章小結(jié) 2812695第五章卡爾曼濾波相關(guān)知識(shí)及算法 284921一、卡爾曼濾波介紹 2822527二、基于Kalman濾波的Camshift跟蹤算法 293162三、結(jié)果分析 3126678四、本章小結(jié) 329995第六章總結(jié)與展望 3231685一、總結(jié) 3228825二、展望 331286參考文獻(xiàn) 33摘要在計(jì)算機(jī)視覺領(lǐng)域中,運(yùn)動(dòng)目標(biāo)跟蹤是關(guān)鍵問題之一,其在視頻監(jiān)控、軍事、視頻編碼、交通等領(lǐng)域有著重要而廣泛的應(yīng)用。圖像及視頻運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤算法作為計(jì)算機(jī)視覺領(lǐng)域核心技術(shù)之一,已經(jīng)取得諸多研究成果,國(guó)內(nèi)外學(xué)者對(duì)運(yùn)動(dòng)目標(biāo)跟蹤進(jìn)行大量、深入的研究,提出許多有效的運(yùn)動(dòng)目標(biāo)跟蹤算法。本課題主要利用卡爾曼濾波和Camshift算法相結(jié)合,提高運(yùn)動(dòng)目標(biāo)跟蹤精度,將算法進(jìn)行改進(jìn),并通過仿真對(duì)比實(shí)驗(yàn),提高對(duì)運(yùn)動(dòng)目標(biāo)跟蹤有效性和優(yōu)越性。在學(xué)習(xí)過程中,利用軟件程序等對(duì)現(xiàn)有的技術(shù)進(jìn)行學(xué)習(xí)和熟練掌握,對(duì)一些算法和程序進(jìn)行仿真和實(shí)現(xiàn)。主要用到的軟件包括仿真軟件和數(shù)據(jù)庫(kù)的使用與配置。希望通過學(xué)習(xí)和研究已有技術(shù)和進(jìn)行仿真練習(xí)和掌握,以及結(jié)合本專業(yè)已經(jīng)掌握的知識(shí)能對(duì)圖像處理有更好更深刻的認(rèn)識(shí)和理解。首先對(duì)開源視覺庫(kù)OpenCV和卡爾曼濾波相關(guān)的理論知識(shí)進(jìn)行了簡(jiǎn)單介紹,主要是對(duì)其數(shù)據(jù)庫(kù)內(nèi)的函數(shù)以及相關(guān)應(yīng)用進(jìn)行學(xué)習(xí);然后介紹了視覺系統(tǒng)中對(duì)于圖片信息的處理方法,例如顏色空間的選擇與轉(zhuǎn)換、圖像去噪、圖像二值化以及數(shù)學(xué)形態(tài)學(xué)濾波等方式方法。最后結(jié)合之前所學(xué)的理論知識(shí),將開源視覺庫(kù)OpenCV和卡爾曼濾波等算法相結(jié)合,對(duì)運(yùn)動(dòng)目標(biāo)的跟蹤和目標(biāo)檢測(cè)進(jìn)行仿真,實(shí)現(xiàn)好人提高對(duì)運(yùn)動(dòng)目標(biāo)跟蹤的有效性和優(yōu)越性。關(guān)鍵字:卡爾曼濾波;目標(biāo)跟蹤;目標(biāo)識(shí)別緒論一、研究課題的目的與意義在計(jì)算機(jī)視覺領(lǐng)域中,運(yùn)動(dòng)目標(biāo)跟蹤是關(guān)鍵問題之一,其在視頻監(jiān)控、軍事、視頻編碼、交通等領(lǐng)域有著重要而廣泛的應(yīng)用。圖像及視頻運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤算法作為計(jì)算機(jī)視覺領(lǐng)域核心技術(shù)之一,已經(jīng)取得諸多研究成果,國(guó)內(nèi)外學(xué)者對(duì)運(yùn)動(dòng)目標(biāo)跟蹤進(jìn)行大量、深入的研究,提出許多有效的運(yùn)動(dòng)目標(biāo)跟蹤算法。在日常生活中,運(yùn)動(dòng)圖像是我們接觸比較多的,手機(jī)錄視頻,民用無(wú)人機(jī)視頻圖像的實(shí)時(shí)回傳,行人、行駛的交通工具以及其他運(yùn)動(dòng)物體都應(yīng)用到對(duì)運(yùn)動(dòng)目標(biāo)的跟蹤或者檢測(cè),因此在現(xiàn)代生活中,越來越多的人去關(guān)注和發(fā)展對(duì)于運(yùn)動(dòng)目標(biāo)的關(guān)注,而且這項(xiàng)技術(shù)是計(jì)算機(jī)視覺和數(shù)字圖像處理的一個(gè)熱門方向,廣泛應(yīng)用于機(jī)器人導(dǎo)航、智能視頻監(jiān)控、工業(yè)檢測(cè)、航空航天等諸多領(lǐng)域。研究對(duì)運(yùn)動(dòng)目標(biāo)的檢測(cè)與跟蹤,可以更好的方便我們的生活,甚至可以在軍用領(lǐng)域發(fā)揮巨大作用。如:可以對(duì)患病老人進(jìn)行實(shí)時(shí)的跟蹤和監(jiān)視,避免其發(fā)生意外;可以對(duì)留守兒童進(jìn)行監(jiān)視以達(dá)到保護(hù)目的;可以應(yīng)用于警方對(duì)于嫌疑人的追捕和情報(bào)獲取中等諸多方面二、國(guó)內(nèi)外研究現(xiàn)狀運(yùn)動(dòng)目標(biāo)檢測(cè)作為計(jì)算機(jī)視覺技術(shù)的一個(gè)分支,就是對(duì)視場(chǎng)內(nèi)的運(yùn)動(dòng)目標(biāo),如人或者交通工具,進(jìn)行實(shí)時(shí)的觀測(cè),并將其分類,然后分析他們的行為。目前,國(guó)際上許多高校和研究所,如麻省理工學(xué)院、牛津大學(xué)等都設(shè)置了針對(duì)運(yùn)動(dòng)目標(biāo)檢測(cè)的研究組或者研究實(shí)驗(yàn)室。美英等國(guó)家已經(jīng)研究了大量的相關(guān)項(xiàng)目。一些著名的公司和研究機(jī)構(gòu),如IBM、MICROSOFT、等近幾年對(duì)智能監(jiān)控系統(tǒng)進(jìn)行大齡研究,部分成果已經(jīng)轉(zhuǎn)換為產(chǎn)品投入到市場(chǎng)。目前在國(guó)內(nèi)的研究機(jī)構(gòu)中,中國(guó)科學(xué)院北京自動(dòng)化研究所下屬的模式識(shí)別國(guó)家重點(diǎn)實(shí)驗(yàn)室監(jiān)控研究處于領(lǐng)先地位。他們?cè)诮煌▓?chǎng)景視覺監(jiān)控、人的運(yùn)動(dòng)視覺監(jiān)控和行為模式識(shí)別方面做了深入研究。另外他們也總結(jié)了英國(guó)雷丁大學(xué)VIEWS的車輛交通監(jiān)控原型系統(tǒng)的研究經(jīng)驗(yàn)。國(guó)內(nèi)其他大學(xué)如上海交通大學(xué)、北京航空航天大學(xué)也對(duì)這方面進(jìn)行了研究。三、目標(biāo)跟蹤的難點(diǎn)目標(biāo)識(shí)別與跟蹤包括很多重點(diǎn)和難點(diǎn)問題,是一個(gè)繁瑣的過程。目標(biāo)識(shí)別與跟蹤的重點(diǎn)問題是在現(xiàn)實(shí)情況中地面目標(biāo)移動(dòng)的復(fù)雜程度、目標(biāo)與背景之間對(duì)比程度和背景的穩(wěn)定性,甚至可能出現(xiàn)和目標(biāo)相似的物體出現(xiàn)時(shí)導(dǎo)致難以分辨和跟蹤、跟蹤過程當(dāng)中目標(biāo)被遮擋等各種因素。在實(shí)現(xiàn)當(dāng)中各種各樣的原因都會(huì)影響到跟蹤的效果。外界因素的干擾背景因素產(chǎn)生的擾亂是外界因素中的重難點(diǎn)問題,如果背景和目標(biāo)的顏色、灰度或者形狀上比較接近,那么如何把目標(biāo)從背景中提取出來就是一個(gè)難題,提取效果不好就會(huì)導(dǎo)致跟蹤窗口容易去跟蹤其他物體;如果目標(biāo)進(jìn)行高速的移動(dòng)也會(huì)使視覺設(shè)備難以把目標(biāo)提取出來,從而影響跟蹤效果;如果周圍有很大的噪聲或者是視覺系統(tǒng)設(shè)備的分辨率過低時(shí),也會(huì)干擾跟蹤。不僅如此,當(dāng)氣候、光等其他因素產(chǎn)生改變時(shí),也會(huì)有可能致使跟蹤行為失敗。(二)目標(biāo)的陰影與遮擋對(duì)于視覺跟蹤系統(tǒng),目標(biāo)陰影與遮擋的情況經(jīng)常會(huì)發(fā)生。如果當(dāng)背景中亮度產(chǎn)生改變就會(huì)造成目標(biāo)產(chǎn)生一定陰影從而影響跟蹤行為;如果目標(biāo)在一段時(shí)間內(nèi)被完全遮蓋住就會(huì)導(dǎo)致信息的丟失致使跟蹤失敗。(三)跟蹤特征難于選擇一般針對(duì)于視覺跟蹤系統(tǒng),利用視覺進(jìn)行跟蹤往往都會(huì)選擇一些相對(duì)比較明顯的特征,例如色彩、外形輪廓等等。但是由于在跟蹤過程中運(yùn)動(dòng)目標(biāo)的特征信息會(huì)不斷的發(fā)生變化,因此就會(huì)致使一些特征信息難以進(jìn)行判斷,因而跟蹤效果不好。所以如何選取一個(gè)好的跟蹤特征是跟蹤的一個(gè)難點(diǎn)問題[1]。四、論文主要工作通過學(xué)習(xí)有關(guān)識(shí)別與跟蹤的知識(shí),本文圍繞運(yùn)動(dòng)目標(biāo)的識(shí)別與跟蹤來進(jìn)行學(xué)習(xí)介紹。利用Python和OpenCV視覺庫(kù)搭建仿真實(shí)踐平臺(tái),以下幾個(gè)方面是本文進(jìn)行研究的主要內(nèi)容:1、對(duì)開源視覺庫(kù)opencv相關(guān)知識(shí)點(diǎn)進(jìn)行簡(jiǎn)單介紹2、在視覺圖像處理方面,采用顏色空間模型、圖像噪聲消除、圖像二值化處理和形態(tài)學(xué)濾波的方法對(duì)獲取的圖像進(jìn)行處理。3、對(duì)于卡爾曼濾波以及相關(guān)算法進(jìn)行簡(jiǎn)單介紹3、介紹相關(guān)的目標(biāo)檢測(cè)識(shí)別的方法4、在目標(biāo)的跟蹤上,主要是對(duì)Camshfit跟蹤算法進(jìn)行和Kalman濾波的基本原理進(jìn)行研究學(xué)習(xí)介紹以及程序仿真。Opencv相關(guān)介紹一、OpenCV介紹OpenCV是一個(gè)基于BSD許可發(fā)行的跨平臺(tái)計(jì)算機(jī)視覺庫(kù),可以運(yùn)行在Linux、Windows、Android和MacOS操作系統(tǒng)上。它輕量級(jí)而且高效,由一系列C函數(shù)和少量C++類構(gòu)成,同時(shí)提供了Python、Ruby、MATLAB等語(yǔ)言的接口,實(shí)現(xiàn)了圖像處理和計(jì)算機(jī)視覺方面的很多通用算法。OpenCV采用C語(yǔ)言進(jìn)行優(yōu)化,而且,在多核機(jī)器上面,其運(yùn)行速度會(huì)更快。同時(shí),由于計(jì)算機(jī)視覺與機(jī)器學(xué)習(xí)密不可分,該庫(kù)也包含了比較常用的一些機(jī)器學(xué)習(xí)算法。二、opencv安裝和環(huán)境配置首先在OpenCV官網(wǎng)下載OpenCV計(jì)算機(jī)視覺庫(kù),根據(jù)自己的需要下載相應(yīng)的版本。然后進(jìn)行OpenCV安裝。安裝OpenCV也是非常簡(jiǎn)單,直接雙擊運(yùn)行文件,選擇相應(yīng)的安裝目錄。安裝完成后在自己的電腦上添加環(huán)境變量,右擊“我的電腦”,選擇“屬性”,在屬性界面選擇“高級(jí)系統(tǒng)設(shè)置”,打開系統(tǒng)屬性界面,選擇“環(huán)境變量”,然后在“系統(tǒng)變量”下新建系統(tǒng)變量。添加好環(huán)境變量后,就可以建立實(shí)例工程了。環(huán)境配置好后,實(shí)現(xiàn)簡(jiǎn)單的圖片加載,添加必要的頭文件。三、opencv的特點(diǎn)是開源計(jì)算機(jī)視覺,使用目的是開發(fā)實(shí)用應(yīng)用程序獨(dú)立與操作系統(tǒng)、硬件和圖形管理器具有通用的圖像/視頻載入、保存和獲取模塊具有底層和高層的應(yīng)用開發(fā)包內(nèi)部代碼完全開放,方便于初學(xué)者完成快速的入門學(xué)習(xí)多平臺(tái)支持快速的圖像處理能力和強(qiáng)大的矩陣運(yùn)算能力統(tǒng)一的結(jié)構(gòu)和編程風(fēng)格提供一些用于指令集開發(fā)的優(yōu)化代碼四、OpenCV功能介紹OpenCV作為一個(gè)開源視覺庫(kù),不但包含基本的計(jì)算機(jī)視覺,而且也包含圖像監(jiān)控和目標(biāo)識(shí)別等方面內(nèi)容,可為用戶二次開發(fā)提供的理想的應(yīng)用開發(fā)平臺(tái)。OpenCV主要的應(yīng)用功能包括以下幾個(gè)部分:OpenCV具有基礎(chǔ)的數(shù)字圖像處理函數(shù),可以實(shí)現(xiàn)對(duì)圖像或矩陣的濾波、邊緣檢測(cè)等功能,也可以實(shí)現(xiàn)對(duì)圖像數(shù)據(jù)的采樣與差值、圖像色彩空間轉(zhuǎn)換、形態(tài)學(xué)處理以及圖像二值化等操作。圖像處理功能。對(duì)于圖像數(shù)據(jù)可以實(shí)現(xiàn)復(fù)制、轉(zhuǎn)換、設(shè)置、分配、釋放數(shù)據(jù)等操作。包含運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤模塊函數(shù),例如光流算法模塊,背景檢測(cè)差分模塊。輸入輸出功能。攝像頭獲取的視覺或者圖像文件作為輸入,經(jīng)由OpenCV相關(guān)處理,輸出視頻和圖像文件。提供目標(biāo)識(shí)別函數(shù),OpenCV中包含隱馬爾科夫模型和運(yùn)動(dòng)目標(biāo)特征法,用以實(shí)現(xiàn)目標(biāo)識(shí)別的功能。具備GUI功能,可以實(shí)現(xiàn)視頻圖像的顯示、基本事件的處理及控制滾動(dòng)條等功能。對(duì)矩陣和向量可以實(shí)現(xiàn)矩陣積、特征值、奇異值、以及解方程等操作。包含各種分析方法。對(duì)攝像頭的定位。包含隊(duì)列、樹、集合等各種動(dòng)態(tài)數(shù)據(jù)結(jié)構(gòu)。相關(guān)理論基礎(chǔ)一、圖像處理圖像處理的基本流程,首先從視覺系統(tǒng)中提取目標(biāo)的圖像,對(duì)于圖像的顏色空間進(jìn)行選擇,選取相對(duì)于比較好用的HSV空間模型對(duì)圖像進(jìn)行初步的處理,然后對(duì)噪音的進(jìn)行剔除,二值化處理,最后在經(jīng)過形態(tài)學(xué)濾波等流程進(jìn)一步處理識(shí)別,輸出圖像信息,為后續(xù)的運(yùn)動(dòng)目標(biāo)識(shí)別跟蹤提供了理論依據(jù)。具體流程圖,如圖3-1所示。3-1圖像處理基本流程圖二、顏色空間選擇視覺系統(tǒng)經(jīng)常能夠用到的顏色空間模型有RGB、HSV等。其中RGB是目前最常用的顏色系統(tǒng)之一。(一)顏色空間RGBRGB主要是以紅、綠、藍(lán)三種顏色作為最基礎(chǔ)的顏色,經(jīng)過這三種顏色相互變化以及疊加可以得到其他不同的顏色,俗稱為三基色模式[2]。一般情況下RGB分為256個(gè)等級(jí),可以經(jīng)過控制三個(gè)基礎(chǔ)色的大小來控制輸出的顏色。RGB模型中色度關(guān)系如式(3-1)所示:(3-1)依據(jù)上式可以建立出RGB的空間模型,如圖3-2所示:圖3-2RGB空間坐標(biāo)系從上圖可以看出,設(shè)(0,0,0)的位置的顏色是黑色,其他三種顏色,紅、綠、藍(lán)會(huì)根據(jù)自身的坐標(biāo)發(fā)生變化。如果當(dāng)三個(gè)坐標(biāo)值均為最大值時(shí),就是(1,1,1)的位置為白色。如果將(0,0,0)與(1,1,1)的坐標(biāo)相連接,這條線就是灰度變化線。(二)顏色空間HSVHSV與RGB采用三原色混合來描述色彩的方式不同,而是通過S(飽和度)、V(亮度)和H(色調(diào))來描述色彩。如圖3-3所示圖3-3HSV顏色空間模型其中S用來描述飽和度,取值為0~1,數(shù)值越接近1顏色越飽和,V描述明亮程度,取值是從0(黑色)到255(白色),H則用來描述色相,取值是0~360度,該顏色空間是六棱錐,每一個(gè)棱都與一個(gè)H分量相應(yīng),而S則表示顏色的坐標(biāo)點(diǎn)與中軸之間的距離,V是六棱錐從底部到定點(diǎn)的數(shù)值[3]。(三)顏色空間RGB與顏色空間HSV的轉(zhuǎn)換假設(shè)(R,G,B)分別代表顏色的紅、綠、藍(lán)的坐標(biāo),設(shè)是R、G、B中的最大者,設(shè)是最小者。要找到(H,S,V)的值,如下式所示:(3-2)(3-3)(3-4)然后通過設(shè)定特定的顏色閾值來劃分出來目標(biāo)顏色的范圍。通過調(diào)節(jié)顏色通道閾值,利用二值化的方法顯示出來合適的顏色進(jìn)而找到適合的數(shù)值進(jìn)而對(duì)其進(jìn)行形態(tài)學(xué)處理,然后與原圖像進(jìn)行“按位與”,最終得到通過顏色特征所識(shí)別到的跟蹤目標(biāo)前景圖[4]。三、圖像二值化圖像二值化法主要是依據(jù)圖像中目標(biāo)和背景存在灰度值不同的情況,因此可以把圖像分解成為不同灰度級(jí)的組成,通過設(shè)定一個(gè)特定值T,把圖像中的每一個(gè)像素點(diǎn)分開。然后利用產(chǎn)生的二值化圖像來得到所需要檢測(cè)目標(biāo)的運(yùn)動(dòng)信息。設(shè)定值T將圖像分成目標(biāo)和背景兩部分,設(shè)輸入圖像g(x,y),輸出圖像為g`(x,y),如式(2-5)所示則:(3-5)上式就是圖像二值化處理的原理,0代表目標(biāo)信息,1代表背景信息。二值化效果,如圖3-4所示:圖3-4二值化處理效果圖四、圖像降噪(一)中值濾波中值濾波原理就是:先通過需要進(jìn)行處理的像素(x,y)來確定出一個(gè)模板,然后把該圖像中所包含的像素進(jìn)行有序調(diào)整,然后把中位值設(shè)為這個(gè)點(diǎn)的像素值。設(shè)F(x,y)代表點(diǎn)(x,y)的灰度值,模板的大小用A表示,濾波后表達(dá)式[5],如式(2-6)所示。(3-6)中值濾波在特定的情況下,既能夠避免圖像模糊,同時(shí)對(duì)圖像降噪能夠起到特別的效果。如圖3-5所示。圖3-5(二)低通濾波低通濾波是提前設(shè)定出一個(gè)函數(shù)來只允許低頻的信號(hào)通過。如式(2-7)所示。(3-7)式中,F(xiàn)(u,v)代表原始圖像經(jīng)過了傅立葉處理后的圖像;H(u,v)則是提前設(shè)定的傳遞函數(shù)函數(shù);G(u,v)是經(jīng)過處理之后得到的圖像。低通濾波效果如圖3-6所示圖3-6二值化處理效果圖五、圖像形態(tài)學(xué)濾波主要是用來消除圖像中的噪聲,從而獲取到較好的地面運(yùn)動(dòng)目標(biāo)的運(yùn)動(dòng)的數(shù)據(jù)信息。(一)膨脹和腐蝕膨脹的運(yùn)算符是“⊕”,其定義如式:(3-8)利用模板B的元素與原始圖像A進(jìn)行與運(yùn)算,不斷對(duì)圖像里所有的元素進(jìn)行掃描,疊加,計(jì)算出圖像最大值來替換原圖像的像素值。下圖是將原始圖像A進(jìn)行膨脹處理的效果圖,如圖3-7所示。圖3-7膨脹處理A⊕B運(yùn)算程序處理結(jié)果如圖3-8所示:圖3-8膨脹處理效果腐蝕的運(yùn)算符是“-”,其定義如下:(3-9)利用模板B的元素與原始圖像A進(jìn)行運(yùn)算,不斷對(duì)圖像里所有的元素進(jìn)行掃描,疊加,計(jì)算出圖像最小值來替換原圖像的像素值。如圖所示,原始圖像A腐蝕處理的效果圖,如圖3-9所示。圖3-9腐蝕處理A-B運(yùn)算處理結(jié)果如下圖3-10所示:圖3-10腐蝕處理效果(二)開運(yùn)算和閉運(yùn)算開運(yùn)算的基本原理是先腐蝕、后膨脹過程。如圖3-11所示:圖3-11開運(yùn)算原理效果圖圖像先被腐蝕去除掉噪聲,然后在對(duì)處理圖進(jìn)行放大,放大我們需要的區(qū)域。程序運(yùn)算結(jié)果如下圖3-12所示:圖3-12開運(yùn)算過程效果圖閉運(yùn)算基本原理是先膨脹、后腐蝕的過程。如圖3-13所示:圖3-13開運(yùn)算原理效果圖圖像先膨脹,后腐蝕,它可以去除掉內(nèi)部的影響。程序運(yùn)算結(jié)果如下圖3-14所示:圖3-14閉運(yùn)算過程效果圖六、本章小結(jié)本章主要對(duì)視覺系統(tǒng)中的圖像處理的基本流程進(jìn)行主要的介紹。先對(duì)于圖像處理的總體流程以圖的方式進(jìn)行了描述,然后對(duì)于每一步的流程分別進(jìn)行了簡(jiǎn)單的講解。在顏色空間的選擇上主要介紹了視覺常用的顏色空間模型有RGB、HSV等;圖像去噪的濾波方法上介紹了中值濾波和低通濾波兩種濾波方法;進(jìn)一步處理方面介紹了自適應(yīng)閾值法二值化和數(shù)學(xué)形態(tài)學(xué)濾波法,為后面章節(jié)中地面目標(biāo)識(shí)別跟蹤提供了理論依據(jù)。目標(biāo)識(shí)別與跟蹤地面目標(biāo)的識(shí)別是指從視頻序列中將目標(biāo)提取出來,并且獲得目標(biāo)的各種信息。運(yùn)動(dòng)目標(biāo)識(shí)別是實(shí)現(xiàn)目標(biāo)分析、目標(biāo)定位、目標(biāo)跟蹤等功能的基礎(chǔ)。一、視覺系統(tǒng)跟蹤的主要流程分析1、收集圖像數(shù)據(jù):通過視覺設(shè)備來捕獲到視頻信息,將視頻圖像信息傳給控制板。2、視頻圖像信息的處理:利用顏色空間選擇、圖像降噪、圖像二值化、圖像形態(tài)學(xué)濾波等方法對(duì)圖像進(jìn)行處理。3、移動(dòng)目標(biāo)識(shí)別:目標(biāo)信息的識(shí)別是實(shí)現(xiàn)目標(biāo)跟蹤的必備階段。4、目標(biāo)跟蹤:通過識(shí)別目標(biāo)后利用目標(biāo)的數(shù)據(jù)信息進(jìn)行跟蹤[6]。二、地面目標(biāo)檢測(cè)識(shí)別方法(一)光流法光流法是通過圖像中每一個(gè)像素在時(shí)間上發(fā)生的不同的改變和圖像之間本來的相關(guān)性來提取出目標(biāo)的信息。一般來說,光流是根據(jù)目標(biāo)本身或者視覺系統(tǒng)的移動(dòng)而產(chǎn)生的。光流中包含了目標(biāo)信息,因此常??梢员皇褂脕泶_定目標(biāo)的目前的運(yùn)動(dòng)狀況。用光流法對(duì)地面目標(biāo)進(jìn)行識(shí)別時(shí),隨著時(shí)間上發(fā)生的改變,運(yùn)動(dòng)的目標(biāo)的位置也會(huì)隨著發(fā)生一定的改變。因此光流也會(huì)因?yàn)闀r(shí)間發(fā)生改變而產(chǎn)生改變。用光流法不足就是計(jì)算的次數(shù)很多,在對(duì)實(shí)時(shí)的圖像進(jìn)行處理的時(shí)候特別容易產(chǎn)生延時(shí)反應(yīng),實(shí)時(shí)性和準(zhǔn)確性很差,因此很不適用對(duì)于實(shí)時(shí)性要求比較高的視覺跟蹤系統(tǒng)。(二)幀間差分法幀間差分法是在背景處于穩(wěn)定的情況下,通過對(duì)相鄰的幾幀圖像之間進(jìn)行對(duì)比,對(duì)相鄰圖像的相應(yīng)地方的灰度值來通過差分計(jì)算,獲取到相鄰圖像對(duì)應(yīng)位置的差值的絕對(duì)值。幀間差分法不易受到由于光線變化產(chǎn)生的影響。幀間差分法的算法介紹:設(shè)定第k幀圖像用表示和k-1幀圖像用表示,那么,相鄰幀的差分圖像:(4-1)其中表示圖像的離散坐標(biāo),設(shè)定的閾值為T,將圖像同閾值T進(jìn)行比較[7]:(4-2)幀間差分法也有局限性,受到目標(biāo)的移動(dòng)快慢的影響。當(dāng)目標(biāo)的移動(dòng)較快時(shí),檢測(cè)范圍比目標(biāo)范圍要寬,當(dāng)運(yùn)動(dòng)移動(dòng)較慢時(shí),檢測(cè)范圍比目標(biāo)范圍要窄。(三)背景差分法背景差分法就是把目標(biāo)跟背景進(jìn)行差分運(yùn)算后,進(jìn)行更進(jìn)一步的處理,獲得目標(biāo)運(yùn)動(dòng)的灰度圖,是一種比較通用的,對(duì)相對(duì)靜止的場(chǎng)景來進(jìn)行運(yùn)動(dòng)切分的方法。對(duì)其進(jìn)行二值化處理來獲得目標(biāo)運(yùn)動(dòng)的范圍,為了躲開由于環(huán)境光照發(fā)生改變而產(chǎn)生的影響,根據(jù)目前獲得的圖像幀,背景圖像會(huì)進(jìn)行同步的改變和更新。如果把T設(shè)定為前景的灰度閾值,It是當(dāng)前圖像、Bt是背景圖像,那么流程就如下所示:1、對(duì)開始捕獲的視頻圖像進(jìn)行平均值運(yùn)算,從而獲取平均值作為開始的背景Bt;2、對(duì)當(dāng)前圖像和背景進(jìn)行灰度的減運(yùn)算;公式為;3、對(duì)于當(dāng)前幀的像素,若有,則該像素點(diǎn)為前景點(diǎn);4、對(duì)所獲得的的前景圖來進(jìn)行進(jìn)一步的形態(tài)學(xué)濾波處理,進(jìn)一步優(yōu)化效果,例如閉運(yùn)算、膨脹、開運(yùn)算、腐蝕等操作;5、背景圖像依據(jù)當(dāng)前捕獲的圖像幀來進(jìn)行實(shí)時(shí)的改變更新[8];不會(huì)受到運(yùn)動(dòng)目標(biāo)的移動(dòng)速度的影響是這種方法最大的優(yōu)勢(shì),因此可以獲得相對(duì)完整的移動(dòng)目標(biāo)的信息,缺點(diǎn)是當(dāng)光照條件發(fā)生變化時(shí),就會(huì)出現(xiàn)一些偽運(yùn)動(dòng)點(diǎn),會(huì)在一定程度上對(duì)提取結(jié)果的精確性產(chǎn)生影響。運(yùn)動(dòng)目標(biāo)跟蹤的算法(一)質(zhì)心跟蹤算法質(zhì)心跟蹤算法是一種重要的形心跟蹤算法,質(zhì)心跟蹤是基于對(duì)目標(biāo)能量矩的計(jì)算,其特點(diǎn)之一是閾值的大小隨目標(biāo)與背景之間的對(duì)比度高低而變化;二是在整個(gè)目標(biāo)圖像面積上對(duì)于高于閾值得信息做積分運(yùn)算,求取質(zhì)心;三是波門足夠大,能夠框柱目標(biāo)[9]。質(zhì)心跟蹤算法實(shí)現(xiàn)步驟:1、接受邊界框坐標(biāo)并計(jì)算質(zhì)心圖4-1要使用質(zhì)心跟蹤構(gòu)建簡(jiǎn)單的對(duì)象跟蹤算法,第一步是接受來自對(duì)象檢測(cè)器的邊界框坐標(biāo),然后使用它們來計(jì)算質(zhì)心。質(zhì)心追蹤算法假定我們傳遞一組邊界框的(X,Y)坐標(biāo)對(duì)于每個(gè)檢測(cè)到的對(duì)象的每一個(gè)幀。(1)這些邊界框可以是任何類型的對(duì)象檢測(cè)器生成,前提是要針對(duì)幀中的每一幀進(jìn)行計(jì)算視頻。(2)有了邊界框坐標(biāo)后,必須計(jì)算“質(zhì)心”或更簡(jiǎn)單地計(jì)算邊界框的中心(x,y)坐標(biāo)。上面的圖4-1演示了接受一組邊界框坐標(biāo)并計(jì)算質(zhì)心。(3)由于這些是提供給我們算法的邊界框的第一組初始集合,因此我們將為其分配唯一的ID。2、計(jì)算新邊界框與現(xiàn)有對(duì)象之間的歐氏距離圖4-2此圖像中存在三個(gè)對(duì)象,用于使用Python和OpenCV進(jìn)行簡(jiǎn)單的對(duì)象跟蹤。計(jì)算每對(duì)原始質(zhì)心(紫色)和新質(zhì)心(黃色)之間的歐氏距離。對(duì)于視頻流中的每個(gè)后續(xù)幀,應(yīng)用計(jì)算對(duì)象質(zhì)心的步驟1;但是,首先需要確定是否可以將新的對(duì)象質(zhì)心(黃色)與舊的對(duì)象質(zhì)心(紫色)相關(guān)聯(lián),而不是為每個(gè)檢測(cè)到的對(duì)象分配新的唯一ID(這會(huì)破壞對(duì)象跟蹤的目的)。因此,要計(jì)算每對(duì)現(xiàn)有對(duì)象質(zhì)心和輸入對(duì)象質(zhì)心之間的歐氏距離(用綠色箭頭突出顯示)。從圖4-2中可以看到,在圖像中檢測(cè)到三個(gè)對(duì)象??拷膬蓪?duì)是兩個(gè)現(xiàn)有對(duì)象。3、更新(x,y)現(xiàn)有對(duì)象的坐標(biāo)圖4-3簡(jiǎn)單質(zhì)心對(duì)象跟蹤方法將關(guān)聯(lián)的對(duì)象的對(duì)象距離最小化。質(zhì)心跟蹤算法的主要假設(shè)是一個(gè)給定的對(duì)象將潛在地移動(dòng)在后續(xù)的幀之間,可以構(gòu)建對(duì)象跟蹤器將質(zhì)心與后續(xù)幀之間的最小距離相關(guān)聯(lián)。在圖4-3中,質(zhì)心跟蹤器算法將最小化其歐氏距離的質(zhì)心關(guān)聯(lián)起來。4、注冊(cè)新對(duì)象圖4-4在使用Python和OpenCV進(jìn)行對(duì)象跟蹤中,如果輸入檢測(cè)的數(shù)量多于被跟蹤的現(xiàn)有對(duì)象,則需要注冊(cè)新對(duì)象?!白?cè)”僅表示將新對(duì)象添加到跟蹤對(duì)象列表中。圖4-4演示了使用最小歐氏距離關(guān)聯(lián)現(xiàn)有對(duì)象ID,然后注冊(cè)新對(duì)象的過程。5、注銷舊對(duì)象任何合理的對(duì)象跟蹤算法都必須能夠處理對(duì)象丟失,消失或離開視野時(shí)的情況。實(shí)際情況下,如何處理這些情況實(shí)際上取決于對(duì)象跟蹤器的部署位置,因此可以將在舊對(duì)象無(wú)法與任何現(xiàn)有對(duì)象匹配的情況下(總共N個(gè)后續(xù)幀)注銷舊對(duì)象(二)Camshfit算法Camshfit算法是針對(duì)于連續(xù)持續(xù)的視頻進(jìn)行檢測(cè)的,該算法采用引入一個(gè)反饋系統(tǒng),將經(jīng)過上一次檢測(cè)得到的結(jié)果作為下一次進(jìn)行檢測(cè)過程的輸入,可以將搜索的區(qū)域限制在跟蹤的目標(biāo)位置的周圍。其基本的思想就是對(duì)于整個(gè)視頻中的圖像進(jìn)行相關(guān)處理,并且采用Meanshift算法對(duì)該序列中的每一幀圖片都進(jìn)行計(jì)算,從而得到最優(yōu)的迭代結(jié)果。所以正是因?yàn)镃amshift算法對(duì)于每一幀圖片都進(jìn)行一定的處理,從而確保Camshift算法可以不斷的去調(diào)節(jié)跟蹤窗口的大小,這樣的情況下,即使改變了運(yùn)動(dòng)目標(biāo)的形狀的大小,該算法也可以根據(jù)目標(biāo)的變化的情況來適當(dāng)?shù)卣{(diào)節(jié)窗口來進(jìn)行持續(xù)跟蹤。算法的基本流程,如圖4-5所示:圖4-5Camshift算法跟蹤原理圖具體步驟如下:1、對(duì)目標(biāo)區(qū)域內(nèi)的顏色直方圖進(jìn)行計(jì)算。2、依據(jù)上一步得到的顏色直方圖進(jìn)行進(jìn)一步的處理,將起始獲得的圖像進(jìn)一步轉(zhuǎn)變成為顏色概率的分布圖像。3、Meanshift算法迭代過程。Meanshift算法是CamShift算法的重要核心內(nèi)容,其主要的事情就是用于找到地面運(yùn)動(dòng)目標(biāo)的中心在當(dāng)前幀圖像中的具體位置的情況[10]。利用CamShift算法實(shí)現(xiàn)的效果如下圖4-6所示:圖4-6Camshift算法效果圖四、本章小結(jié)地面對(duì)于運(yùn)動(dòng)目標(biāo)識(shí)別是在對(duì)于視覺設(shè)備研究熱點(diǎn)問題,其本質(zhì)就是在視頻中獲得到的圖像中來提取出來目標(biāo)的運(yùn)動(dòng)范圍,并對(duì)圖像中存在的噪聲進(jìn)行處理等。本章介紹了其中基礎(chǔ)的檢測(cè)識(shí)別的方法,如幀間差分法、光流法、背景差分法和他們的適用情況和相關(guān)的限制要求進(jìn)行了介紹研究。進(jìn)而接著介紹了跟蹤上能用到的運(yùn)動(dòng)目標(biāo)跟蹤算法,為后面卡爾曼濾波實(shí)驗(yàn)作出理論基礎(chǔ)??柭鼮V波相關(guān)知識(shí)及算法一、卡爾曼濾波介紹卡爾曼濾波也稱線性二次估計(jì),是一種算法,卡爾曼濾波會(huì)根據(jù)各測(cè)量量在不同時(shí)間下的值,考慮各時(shí)間下的聯(lián)合分布,產(chǎn)生比僅基于單個(gè)測(cè)量值更精確的未知變量的估計(jì)。它適用于估計(jì)一個(gè)動(dòng)態(tài)系統(tǒng)的最優(yōu)狀態(tài),即便是觀測(cè)到系統(tǒng)狀態(tài)參數(shù)含有噪聲,觀測(cè)值不準(zhǔn)確,卡爾曼濾波也能完成對(duì)狀態(tài)真實(shí)值的最優(yōu)估計(jì)?;舅枷胧牵翰捎眯盘?hào)與噪聲的狀態(tài)空間模型,利用前一時(shí)刻地估計(jì)值和現(xiàn)時(shí)刻的觀測(cè)值來更新對(duì)狀態(tài)變量的估計(jì),求出現(xiàn)時(shí)刻的估計(jì)值??柭鼮V波不要求信號(hào)和噪聲都是平穩(wěn)過程的假設(shè)條件。對(duì)于每個(gè)時(shí)刻的系統(tǒng)擾動(dòng)和觀測(cè)誤差(即噪聲),只要對(duì)它們的統(tǒng)計(jì)性質(zhì)作某些適當(dāng)?shù)募俣ǎㄟ^對(duì)含有噪聲的觀測(cè)信號(hào)進(jìn)行處理,就能在平均的意義上,求得誤差為最小的真實(shí)信號(hào)的估計(jì)值。因此,自從卡爾曼濾波理論問世以來,在通信系統(tǒng)、電力系統(tǒng)、航空航天、環(huán)境污染控制、工業(yè)控制、雷達(dá)信號(hào)處理等許多部門都得到了應(yīng)用,取得了許多成功應(yīng)用的成果。二、基于Kalman濾波的Camshift跟蹤算法Kalman濾波是一種通過利用線性系統(tǒng)狀態(tài)來進(jìn)行濾波的方程,通過輸入觀測(cè)到的數(shù)據(jù)信息,對(duì)于線性系統(tǒng)狀態(tài)進(jìn)行了最優(yōu)化計(jì)算。每一種通過傳遞函數(shù)來體現(xiàn)的系統(tǒng)或者包含外部變量數(shù)據(jù)的自動(dòng)回歸系統(tǒng)都可以變成通過狀態(tài)空間來進(jìn)行表示的系統(tǒng),進(jìn)而用Kalman濾波進(jìn)行最優(yōu)化的計(jì)算。在卡曼爾濾波中得到的任何數(shù)據(jù)都無(wú)法消除的不確定性,增益也與觀測(cè)數(shù)據(jù)毫無(wú)關(guān)系。Kalman濾波原理的過程[11]:首先對(duì)狀態(tài)空間模型進(jìn)行創(chuàng)建:(5-1)空間模型中,分別代表這系統(tǒng)噪聲和測(cè)量噪聲。,Q即下文的過程激勵(lì)噪聲Q,,R即下文的測(cè)量噪聲R。Kalman濾波主要公式:(1)狀態(tài)預(yù)測(cè)公式:(5-2)代表在k時(shí)刻時(shí)先驗(yàn)狀態(tài)預(yù)測(cè)值,是濾波時(shí)中間計(jì)算數(shù)據(jù),是根據(jù)k-1時(shí)刻的預(yù)測(cè)結(jié)果。表示k-1時(shí)刻的后驗(yàn)狀態(tài)預(yù)測(cè)值,是經(jīng)過濾波得到的結(jié)果(2)狀態(tài)預(yù)測(cè)協(xié)方差:(5-3)是k時(shí)刻的先驗(yàn)預(yù)測(cè)協(xié)方差是濾波的中間計(jì)算數(shù)據(jù)。表示k-1時(shí)刻的后驗(yàn)預(yù)測(cè)協(xié)方差,是經(jīng)濾波獲得的結(jié)果。(3)濾波增益:(5-4)H是狀態(tài)變量到測(cè)量的轉(zhuǎn)換矩陣。(4)狀態(tài)估計(jì):(5-5)(5)狀態(tài)估計(jì)協(xié)方差:(5-6)圖5-1Kalman濾波工作原理圖圖4-10Kalman濾波和Camshift跟蹤效果圖三、結(jié)果分析跟蹤算法的性能指標(biāo)選取以下三方面:(1)跟蹤算法完成跟蹤任務(wù)時(shí)間算法不同對(duì)相同視頻進(jìn)行跟蹤算法運(yùn)行所消耗的時(shí)間根據(jù)算法的復(fù)雜程度決定的,復(fù)雜程度越低的跟蹤算法可以實(shí)現(xiàn)憑借較少的硬件設(shè)備很快的實(shí)現(xiàn)跟蹤任務(wù)。跟蹤地面運(yùn)動(dòng)目標(biāo)嚴(yán)格要求在算法方面要有很好的運(yùn)算速度,所以實(shí)現(xiàn)跟蹤算法的執(zhí)行時(shí)間是算法的重要性能指標(biāo)之一。(2)跟蹤準(zhǔn)確性跟蹤地面運(yùn)動(dòng)目標(biāo)的準(zhǔn)確性是指跟蹤搜索窗口中目標(biāo)所占區(qū)域與跟蹤搜索窗口總區(qū)域的大小的比值,若比值越大,則跟蹤準(zhǔn)確度越高,跟蹤效果越好。(3)戴斯系數(shù)戴斯系數(shù)主要是用來描述離散數(shù)據(jù)的相似程度。在地面運(yùn)動(dòng)目標(biāo)的跟蹤中,利用戴斯系數(shù)就可以表示出在此跟蹤算法中,地面運(yùn)動(dòng)目標(biāo)出現(xiàn)的區(qū)域B和候選區(qū)域A的相似程度關(guān)系,戴斯系數(shù)定義為:(5-7)戴斯系數(shù)的數(shù)值越小,則說明目標(biāo)出現(xiàn)區(qū)域B和候選區(qū)域A的相似程度越大,跟蹤效果就
溫馨提示
- 1. 本站所有資源如無(wú)特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025廣西樟木鎮(zhèn)儲(chǔ)備村(居)“兩委”后備人才200人考前自測(cè)高頻考點(diǎn)模擬試題及完整答案詳解1套
- 2025廣西防城港市防城區(qū)政務(wù)服務(wù)監(jiān)督管理辦公室招聘1人模擬試卷及答案詳解(名師系列)
- 2025年中共南平市委黨校緊缺急需專業(yè)教師招聘模擬試卷附答案詳解(考試直接用)
- 2025河南省投資促進(jìn)中心招聘1人考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解一套
- 2025年湖南永州雙牌縣人民法院招聘編外聘用人員的考前自測(cè)高頻考點(diǎn)模擬試題及完整答案詳解一套
- 2025福建三明市永安市交通運(yùn)輸局編外駕駛員招聘1人考前自測(cè)高頻考點(diǎn)模擬試題及參考答案詳解
- 2025貴州金麗農(nóng)業(yè)旅游產(chǎn)業(yè)發(fā)展集團(tuán)有限公司模擬試卷及完整答案詳解1套
- 2025年臺(tái)州溫嶺市衛(wèi)生事業(yè)單位公開招聘工作人員48人考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解(奪冠系列)
- 2025江蘇蘇州工業(yè)園區(qū)星慧幼兒園后勤輔助人員招聘1人模擬試卷有答案詳解
- 2025遼寧沈陽(yáng)汽車有限公司招聘8人考前自測(cè)高頻考點(diǎn)模擬試題及答案詳解(歷年真題)
- T-JAASS 128-2024 高標(biāo)準(zhǔn)農(nóng)田排灌系統(tǒng)生態(tài)化建設(shè)技術(shù)規(guī)范
- 高空作業(yè)的安全協(xié)議書(2024版)
- 2024版標(biāo)準(zhǔn)工廠租賃合同模板
- 稅務(wù)盡職調(diào)查報(bào)告
- CIM登峰系列方冰制冰機(jī)技術(shù)服務(wù)手冊(cè)
- 石渣清運(yùn)施工方案
- 高速公路無(wú)人機(jī)施工方案
- 七田真1000圖記憶
- GB/T 42430-2023血液、尿液中乙醇、甲醇、正丙醇、丙酮、異丙醇和正丁醇檢驗(yàn)
- 運(yùn)營(yíng)管理指導(dǎo)手冊(cè)(運(yùn)營(yíng))
- 深靜脈血栓形成的診斷和治療指南第三版
評(píng)論
0/150
提交評(píng)論