【正文】
直線出來(lái),基于 OpenCV 的計(jì)算機(jī)視覺技術(shù)研究與實(shí)現(xiàn) 11 然后再看有多少點(diǎn)符合這條直線。所以說(shuō)粒子濾波較之蒙特卡洛濾波,計(jì)算量較小。首先肯定 不知道目標(biāo)在哪里,那就隨機(jī)的撒粒子。 經(jīng)過(guò)步驟三后,我們又重新獲得了這一時(shí)刻的校正值,后面就不斷循環(huán)步驟二和步驟三即可完成 Kalman 濾波過(guò)程。()(39。H 為 Kalman 類初始化給定的測(cè)量矩陣。)((c o r r e kxHkzkKkxkxs t a t ec t e d ????? ( ) 其中 x39。 (3)調(diào)用 Kalman 這個(gè)類的 correct 方法得到加入觀察值校正后的狀態(tài)變量值矩陣,其公式為: ))(39。這樣進(jìn)過(guò)計(jì)算就得到了系統(tǒng)狀態(tài)的預(yù)測(cè)值 x39。(pr kuBkxAkxkxs t a t ee d i c t e d ????? ( ) 其中 x(k1)為前一狀態(tài)的校正值,第一個(gè)循環(huán)中在初始化過(guò)程中已經(jīng)給定了,后面的循環(huán)中 Kalman 這個(gè)類內(nèi)部會(huì)計(jì)算。 (2)調(diào)用 Kalman 這個(gè)類的 predict 方法得到狀態(tài)的預(yù)測(cè)值矩陣,預(yù)測(cè)狀態(tài)的計(jì)算公式如下: )()1()(39。 在這個(gè)理論框架中,有兩個(gè)公式一定要懂,即: kkkk wuBxAx ????? ?1 ( ) kkk vxHz ??? ( ) 第一個(gè)方程為系統(tǒng)的運(yùn) 動(dòng)方程,第二個(gè)方程為系統(tǒng)的觀測(cè)方程,學(xué)過(guò)自控原理中的現(xiàn)代控制理論的同學(xué)應(yīng)該對(duì)這 2 個(gè)公式( 與 )很熟悉。另一個(gè)依據(jù)是可以用測(cè)量手段 來(lái)測(cè)量那個(gè)變量的值,當(dāng)然該測(cè)量也是有誤差的,也只能作為依據(jù),不過(guò)這兩個(gè)依據(jù)的權(quán)重比例不同。 卡爾曼跟蹤算法 Kalman 濾波理論主要應(yīng)用在現(xiàn)實(shí)世界中個(gè),并不是理想環(huán)境。 光流法的前提假設(shè): ( 1) 相鄰幀之間的亮度恒定; ( 2) 相鄰視頻幀的取幀時(shí)間連續(xù),或者,相鄰幀之間物體的運(yùn)動(dòng)比較“微小”; ( 3) 保持空間一致性;即,同一子圖像的像素點(diǎn)具有相同的運(yùn)動(dòng)。光流的研究是利用圖像序列中的像素強(qiáng)度數(shù)據(jù)的時(shí)域變化和相關(guān)性來(lái)確定各自像素位置的“運(yùn)動(dòng)”。一般而言,光流是由于場(chǎng)景中前景目標(biāo)本身的移動(dòng)、相機(jī)的運(yùn)動(dòng),或者兩者的共同運(yùn)動(dòng)所產(chǎn)生的。 跟蹤視線內(nèi)運(yùn)動(dòng)狀態(tài)物體的方法 基于光流跟蹤算法 流的概 念是 Gibson 在 1950 年首先提出來(lái)的。如果新來(lái)的像素值對(duì)碼本中每個(gè)碼元都不匹配,則有可能是由于背景是動(dòng)態(tài)的,所以我們需要為其建立一個(gè)新的碼元,并且設(shè)置相應(yīng)的碼元成員變量。 codebook 算法 該算法為圖像中每一個(gè)像素點(diǎn)建立一個(gè)碼本,每個(gè)碼本可以包括多個(gè)碼元,每個(gè)碼元有它的學(xué)習(xí)時(shí)最大最小閾值,檢測(cè)時(shí)的最大最小閾值等成員。其次,對(duì)于每一幀中的每一個(gè)像素進(jìn)行 基于 OpenCV 的計(jì)算機(jī)視覺技術(shù)研究與實(shí)現(xiàn) 8 處理,看其是否匹配某個(gè)模型,若匹配,則將其歸入該模型中,并對(duì)該模型根據(jù)新的像素值進(jìn)行更新,若不匹配,則以該像素建立一個(gè)高斯模型,初始化參數(shù),代理原有模型中最不可能的模型。 到這里為止,混合高斯模型的建?;就瓿伞S捎谑菍?duì)運(yùn)動(dòng)目標(biāo)的背景提取建模,因此需要對(duì)高斯模型中方差和均值兩個(gè)參數(shù)實(shí)時(shí)更新。 混合高斯模型使用 K(基本為 3 到 5 個(gè))個(gè)高斯模型來(lái)表征圖像中各個(gè)像素點(diǎn)的特征 ,在新一幀圖像獲得后更新混合高斯模型,用當(dāng)前圖像中的每個(gè)像素點(diǎn)與混合高斯模型匹配 ,如果成功則判定該點(diǎn)為背景點(diǎn),否則為前景點(diǎn)。建模的基本思想是從當(dāng)前幀中提取前景,其目的是使背景更接近當(dāng)前視頻幀的背景。而建模正是背景目標(biāo)提取的一個(gè)重要環(huán)節(jié)。通過(guò)將直方圖的多峰特性看作是多個(gè)高斯分布的疊加,可以解決圖像的分割問(wèn)題。如果圖像所包含的目標(biāo)區(qū)域和背景區(qū)域相比比較大,且背景區(qū)域和目標(biāo)區(qū)域在灰度上有一定的差異,那么該圖像的灰度直方圖呈現(xiàn)雙峰 谷形狀,其中一個(gè)峰對(duì)應(yīng)于目標(biāo),另一個(gè)峰對(duì)應(yīng)于背景的中心灰度。 基于 OpenCV 的計(jì)算機(jī)視覺技術(shù)研究與實(shí)現(xiàn) 7 高斯混合背景建模法 高斯模型就是用高斯概率密度函數(shù)(正態(tài)分布曲線)精確地量化事物,將一個(gè)事物分解為若干的基于高斯概率密度函數(shù)(正態(tài)分布曲線)形成的模型。其實(shí) 2D 速度矢量就是可見的 3D 速度矢量在平面上的一個(gè)投影,給圖像中的每個(gè)像素一個(gè)速度的矢量,從而形成一個(gè)圖像的運(yùn)動(dòng)場(chǎng),每時(shí)每刻圖形上的點(diǎn)都 與 3D 立體物體上的點(diǎn)一一對(duì)應(yīng),即投影關(guān)系就是 2D 轉(zhuǎn)換到 3D 的兩者間的關(guān)系,根據(jù)速度矢量的特征,從而分析動(dòng)態(tài)情況。還有一些改進(jìn)的算法,主要致力于減少光照影響和檢測(cè)慢速物體變化。不適用于攝像頭運(yùn)動(dòng)的情況。 定位視線內(nèi)運(yùn)動(dòng)狀態(tài)物體 的方法 常見的傳統(tǒng)檢測(cè)方法 ( 1) 背景差分法: 原理是 實(shí)時(shí)輸入的圖像與背景進(jìn)行比較, 能完整快速地分割出運(yùn)動(dòng)圖像。 定位運(yùn)動(dòng)狀態(tài)物體即對(duì)于視線范圍中運(yùn)動(dòng)物體的檢測(cè),主要措施分為兩種:宏觀檢測(cè)法以及微觀檢測(cè)法。 基于 OpenCV 的計(jì)算機(jī)視覺技術(shù)研究與實(shí)現(xiàn) 6 第二章 定位與跟蹤視線范圍內(nèi)運(yùn)動(dòng)狀態(tài)物體方法 定位與追蹤視線范圍內(nèi)運(yùn)動(dòng)狀態(tài)物體顧名思義是讓計(jì)算機(jī)模擬人類眼睛視覺對(duì)物體的觀察、定位并追蹤的能力。 MATLAB: MATLAB 是矩陣實(shí)驗(yàn)室 ( Matrix Laboratory) 之意。其中包含了各類濾波,色彩以及幾何,數(shù)學(xué)轉(zhuǎn)換,型態(tài)學(xué)計(jì)算分析,校正,分類辨識(shí),形狀搜尋等等基本的幾何以及影像計(jì)算功能,由于這些功能大多并非針對(duì)特定工作設(shè)計(jì)的,因此只要用得到圖像處理的地方,就可以用 HALCON 強(qiáng)大的計(jì)算 分析能力來(lái)完成工作。 HALCON 源自學(xué)術(shù)界,它有別于市面一般的商用軟件包。 OpenCV 包括以下幾個(gè)模塊,具體功能是: CV:主要的 OpenCV 函數(shù); CVAUX:輔助的(實(shí)驗(yàn)性的) OpenCV 函數(shù)。它包含了超過(guò) 500 個(gè)函數(shù)來(lái)實(shí)現(xiàn)用于圖形處理和基于 OpenCV 的計(jì)算機(jī)視覺技術(shù)研究與實(shí)現(xiàn) 5 計(jì)算機(jī)視覺方面的通用算法。 Visual C++是 Microsoft 公司推出的開發(fā) Win32 環(huán)境程序,面向?qū)ο蟮目梢暬删幊滔到y(tǒng)。研究的主要方向?yàn)閺?fù)雜環(huán)境中的運(yùn)動(dòng)物體的跟蹤算法以及模型定位。 國(guó)內(nèi)的研發(fā)機(jī)構(gòu)與人員也開展了對(duì)于計(jì)算機(jī)視覺技術(shù)的研究。 針對(duì)于計(jì)算機(jī)視覺技術(shù)廣闊的發(fā)展前景,很多發(fā)達(dá)國(guó)家都早已瞄準(zhǔn)了這個(gè)應(yīng)用市場(chǎng),并且開展了大量的相關(guān)技術(shù)項(xiàng)目的開發(fā)和研究。 ( 3) 對(duì)于實(shí)時(shí)采集到的圖像信息,所具有的原始數(shù)據(jù)極其豐富,因?yàn)椴杉臅r(shí)間間隔非常小,所以圖像相鄰幀之間有很強(qiáng)的相關(guān)性,利用好這個(gè)關(guān)鍵點(diǎn),對(duì)于提高整個(gè)檢測(cè)、跟蹤系統(tǒng)的效率極其具有實(shí)際意義。 ( 2) 在簡(jiǎn)單場(chǎng)景下,分析目標(biāo)物體是相對(duì)比較簡(jiǎn)單的?;?OpenCV 的計(jì)算機(jī)視覺技術(shù)研究與實(shí)現(xiàn) 4 對(duì)于這方面的研究和發(fā)展,已經(jīng)廣泛的應(yīng)用于控制系統(tǒng)中的視頻檢測(cè)系統(tǒng)、視頻編解碼技術(shù)、軍事上的制導(dǎo)、雷達(dá)視頻圖像中的目標(biāo)分析等等。為了有效的完善計(jì)算機(jī)對(duì)數(shù)據(jù)處理已經(jīng)應(yīng)用的能力,人們開始研究計(jì)算機(jī)視覺技術(shù),從最初的人工智能的子方向,計(jì)算機(jī)視覺技術(shù)作為一個(gè)完整的研究領(lǐng)域已經(jīng)活躍了長(zhǎng)達(dá) 40 年之久。圖像分析一般劃分為四個(gè)主要的過(guò)程: 傳感設(shè)備的輸入; 目標(biāo)物體的分割; 目標(biāo)物體的識(shí)別; 解釋識(shí)別所得到的信息。其研究方向的實(shí)質(zhì)是:針對(duì)連續(xù)的圖像中,一幀幀圖像的差分比較,提取出不同的部分,根據(jù)圖像的分割技術(shù),就可以提取出每幀圖像的不同部分,即運(yùn)動(dòng)的物體,同時(shí)根據(jù)數(shù)學(xué)算法和函數(shù)就可以針對(duì)于運(yùn)動(dòng)目標(biāo)進(jìn)行識(shí)別和跟蹤了。因此,對(duì)于運(yùn)動(dòng)物體的研究方向也就慢慢衍生為檢測(cè)、分析視頻的序列圖像中的運(yùn)動(dòng)物體。生活中,人們所看到的一切連續(xù)活動(dòng)的場(chǎng)景,實(shí)際上就是一系列連續(xù)變化的模擬圖 像組成的。 計(jì)算機(jī)視覺圖像分析技術(shù) 對(duì)于信息化的時(shí)代,人們?cè)缫呀?jīng)越來(lái)越注重于信息的處理與獲取。而計(jì)算機(jī)工業(yè) 水平的飛速提高以及人工智能、并行處理和神經(jīng)元網(wǎng)絡(luò)等學(xué)科的發(fā)展,更促進(jìn)了計(jì)算機(jī)視覺系統(tǒng)的實(shí)用化和涉足許多復(fù)雜視覺過(guò)程的研究。 70 年代中期,麻省理工學(xué)院 (MIT)人工智能 (AI)實(shí)驗(yàn)室正式開設(shè)“機(jī)器視覺”課程,由國(guó)際著名學(xué)者 B. K. P. Hom 教授講授。 60 年代, Roberts(1965)通過(guò)計(jì)算機(jī)程序從數(shù)字圖像中提取出諸如立方體、楔形體、棱柱體等多面體的三維結(jié)構(gòu),并對(duì)物體形狀及物體的空間關(guān)系進(jìn)行描述。當(dāng)時(shí)的工作主要集中在二維圖像分析和識(shí)別上,如光學(xué)字符識(shí)別。因?yàn)樗坏梢蕴峁┠繕?biāo)的運(yùn)動(dòng)軌跡,也為場(chǎng)景中運(yùn)動(dòng)目標(biāo)的運(yùn)動(dòng)分析、場(chǎng)景分析提供了可靠的數(shù)據(jù)來(lái)源。視頻中的目標(biāo)檢測(cè)與跟蹤是指計(jì)算機(jī)代替人眼進(jìn)行對(duì)外界物體運(yùn)動(dòng)的感知和理解分析,從而利用這樣的只能系統(tǒng)為人類生活工作提供便利。相信在不久的將來(lái),擁有高級(jí)視覺系統(tǒng)的智能電子產(chǎn)品會(huì)給人們的 生活帶來(lái)更大的方便。經(jīng)過(guò)研究人員不懈努力,全新的信息技術(shù)和媒體手段的出現(xiàn),使得更加有效和友好的人機(jī)交互方式得到了發(fā)展,新型的人機(jī)交互將不再依賴傳統(tǒng)輸入設(shè)備??梢哉f(shuō)所有人都有這么一個(gè)期盼,人機(jī)之間的交流可以像人與人之間的交流一樣暢通和友好。 基于 OpenCV 的計(jì)算機(jī)視覺技術(shù)研究與實(shí)現(xiàn) 2 第一章 緒 論 系統(tǒng)開發(fā)背景 長(zhǎng)期以來(lái),計(jì)算機(jī)就像文盲一樣,總是被動(dòng)地接受鍵盤的輸入信息,而不能主動(dòng)的從現(xiàn)實(shí)世界中獲取信息并智能的處理。 隨著日益發(fā)展成熟的計(jì)算機(jī)自身的視覺技術(shù) ,以及日益顯現(xiàn)的計(jì)算機(jī)視覺技術(shù)的光明未來(lái),綜合應(yīng)用與計(jì)算機(jī)視覺技術(shù)的處理軟件程序相繼的研發(fā),能夠預(yù)期到期在現(xiàn)代以及未來(lái)的各個(gè)尖端的技術(shù)領(lǐng)域中將開拓出越來(lái)越大的應(yīng)用市場(chǎng)。作為一個(gè)新興學(xué)科,計(jì)算機(jī)視覺是通過(guò)對(duì)相關(guān)的理論和技術(shù)進(jìn)行研究,從而試圖建立從圖像或多維數(shù)據(jù)中獲取“信息”的人工智能系統(tǒng)。計(jì)算機(jī)視覺( Computer Vision, CV) 是一門研究如何讓計(jì)算機(jī)達(dá)到人類那樣“看”的學(xué)科。 關(guān)鍵詞: 計(jì)算機(jī)視覺, 目標(biāo)檢測(cè), OpenCV,混合高斯背景模型 V Abstract Computer vision technology is the use of cameras and puter withclassification, human eyes have identification, tracking, visual function ofdecision. A puter vision system is created in the graphic or threedimensional image data, to a plete artificial intelligence system to obtain required information. Based on the study of the puter vision technology, for moving target detection and tracking in the future development, and put forward a set ofdetection, detection system based on the OpenCV library visual tracking dynamicobjects within sight of, recognition, in order to simulate human tracking,classification function. Dynamic target detection and tracking is an important partin the field of puter vision, which has wide application prospect in the fields of industrial, medical, aerospace, military, has received the widespread attention,and bees a hotspot in the field of puter vision. In this paper, based on the existing research results, the static and dynamic scenes of moving targetdetection and tracking is deeply discussed. This paper summarizes the current situation of the development of putervision technology at home and abroad, indepth study of the puter vision technology, image processing technology, the dynamic detection technology and other relevant information. Expounds design, dynamic object detection system of puter vision technology OpenCV39。 詳細(xì)闡述了基于 OpenCV 的計(jì)算機(jī)視覺技術(shù)的動(dòng)態(tài)物體檢測(cè)系統(tǒng)的設(shè)計(jì)方案、工作原理、以及實(shí)現(xiàn)。本文在現(xiàn)有研究成果的基礎(chǔ)上,對(duì)靜態(tài)和動(dòng)態(tài)場(chǎng)景下的運(yùn)動(dòng)目標(biāo)檢測(cè)與跟蹤進(jìn)行了深入的討論。本文在研