




已閱讀5頁,還剩53頁未讀, 繼續(xù)免費閱讀
(機械電子工程專業(yè)論文)基于稀疏光流場的序列圖像分析研究.pdf.pdf 免費下載
版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
中文摘要 動態(tài)序列圖像分析是計算機視覺研究領域中十分熱門的問題,它的基本任 務是從圖像序列確定物體三維運動參數(shù)及結構參數(shù)?;痉治龇椒ㄓ袃煞N:基 于特征的方法和基于光流的方法。由于經典光流法對噪聲敏感,算法費時,不 利于對目標進行實時跟蹤。因此本文結合兩種方法,采用稀疏光流法進行計算。 首先,本文采用微軟公司提供的7 w ( v i d e of o rw i n d o w s ) 軟件包開發(fā)純 軟件的視頻采集程序,提高了程序的通用性; 其次,對采集的圖像進行圖像平滑、閾值分割和邊緣跟蹤等一系列預處理, 以去處圖像噪聲,分離目標物體和背景,并提取出目標物體的邊緣點,為稀疏 光流場的計算做好準備; 再次,采用面積約束和夾角約束相配合的方法快速準確地提取特征點,并 利用具有強大并行處理能力的h o p f i e l d 神經網絡來完成序列圖像間特征點的松 弛匹配,在此基礎上利用視差計算特征點處的稀疏光流: 最后,利用稀疏光流進行三維物體運動參數(shù)和結構參數(shù)的估計。采用散焦 法估計物體深度,并進行深度修正以滿足測量精度要求,從而解決了單目視覺 估計深度的難題;在獲取物體深度信息的條件下,采用一種從光流場恢復物體 三維運動參數(shù)的強壯算法,只需要5 個特征點就可以唯一確定物體三維運動參 數(shù)。 關鍵詞:序列圖像分析,稀疏光流,特征點,散焦法,單目視覺 a b s t r a c t t h e a n a l y s i so fd y n a m i ci m a g es e q u e n c e si saq u i t eh o tt o p i ci nc o m p u t e rv i s i o n , a n di t sb a s i ct a s ki st oe s t i m a t e3 - dm o t i o na n ds t r u c t u r ep a r a m e t e r sf r o ma s e q u e n c e o f i m a g e s t h e r ea r et w ob a s i ca n a l y s i sa p p r o a c h e s :t h ef e a t u r e b a s e da p p r o a c ha n d t h eo p t i c a lf l o wb a s e da p p r o a c h ,b e c a u s et h ec l a s s i c a l o p t i c a l f l o wa l g o r i t h mi s s e n s i t i v et on o i s ea n d t i m e - c o n s u m i n g ,i ti sn o te x t r e m e l ys u i t a b l ef o rt r a c k i n gt i m e l y t h u s ,w ea d o p ts p a r s eo p t i c a lf l o wa p p r o a c hb yc o m b i n gt h a tt w oa p p r o a c h e si nt h i s p a p e r f i r s t l y , i nt h i sp a p e r , w ed e v e l o p v i d e o c a p t u r ep r o g r a mc o m p l e t e l yb ys o f t w a r e m e t h o dw i t hv f ws o f t w a r ep a c k a g ep r o v i d e db ym i c r o s o f tc o r p o r a t i o n , a n di nt h i s w a y t h e g e n e r a l i t yo f t h ep r o g r a m i si m p r o v e d s e c o n d l y ,i no r d e rt oe l i m i n a t ei m a g en o i s e ,s e p a r a t et h eo b j e c tf r o mb a c k g r o u n d a n de x t r a c te d g ep o i n t so f t h eo b j e c t ,as e r i e so f p r e - p m c e s s i n g sa r ec a r r i e do u tt ot h e i m a g e sc a p t u r e d ,s u c ha si m a g es m o o t h i n g ,t h r e s h o l ds e g m e n t i n ga n de d g et r a c k i n g t h i sm a k e s p r e p a r a t i o n s f o rt h e c o m p u t a t i o no f s p a r s eo p t i c a lf l o w f i e l d t h i r d l y , w ee x t r a c tf e a t u r ep o i n t so ft h eo b j e c tq u i c k l ya n de x a c t l yb yt h e m e t h o do fc o m b i n i n ga r e ac o n s t r a i n ta n da n g l ec o n s t r a i n t ,a n dr i s et h eh o p f i e l d n e u r a ln e t w o r kw i mm a s s i v e l yp a r a l l e lp r o c e s s i n gc a p a b i l i t yt op e r f o r mr e l a x a t i o n m a t c h i n go ff e a t u r ep o i n t sw i t h i ns e q u e n c e so fi m a g e s o nt h i s b a s i sw ec o m p u t e s p a r s eo p t i c a lf l o w o f t h ef e a t u r ep o i n t sb ym e a n s o f p a r a l l a x f i n a l l y , w ee s t i m a t e3 - dm o t i o na n ds t r u c t u r ep a r a m e t e r so f t h eb o d yb ys p a r s e o p t i c a lf l o w i no r d e rt o s o l v et h em o n o c u l a rv i s i o np r o b l e mo fe s t i m a t i n gd e p t h e s t i m a t i o n ,w ee s t i m a t et h ed e p t ho f t h eo b j e c tb ym e a n so f p o s i t i o n f r o m - d e f o c u s , a n dc a r r yo u td e p t ha d j u s t i n gt om e e tt h em e a s u r ep r e c i s i o nd e m a n d u n d e rt h e c o n d i t i o no f a c q u i r i n gd e p t hi n f o r m a t i o n ,3 - dm o t i o np a r a m e t e r so f t h eo b j e c tc a nb e e s t i m a t e du n i q u e l yo n l yu s i n g5f e a t u r ep o i n t sw i t har o b u s ta l g o r i t h mo fr e c o v e r i n g 3 一dm o t i o n p a r a m e t e r so f t h eo b j e c tf r o mo p t i c a lf l o w f i e l d k e yw o r d s :i m a g es e q u e n c e s a n a l y s i s ,s p a r s eo p t i c a lf l o w , f e a t u r ep o i n t , p o s i t i o n - f r o m d e f o c u s ,m o n o c u l a r v i s i o n 獨創(chuàng)性聲明 本人聲明所呈交的學位論文是本人在導師指導下進行的研究工作和取得的 研究成果,除了文中特別加以標注和致謝之處外,論文中不包含其他人已經發(fā) 表或撰寫過的研究成果,也不包含為獲得苤壅盤鱟或其他教育機構的學位或 證書而使用過的材料。與我一同工作的同志對本研究所做的任何貢獻均已在論 文中作了明確的說明并表示了謝意。 學位論文作者簽名:叛( 2 d 易簽字日期:l 枷t - 年 f 月日 學位論文版權使用授權書 本學位論文作者完全了解墨盜盤堂有關保留、使用學位論文的規(guī)定。 特授權苤洼盤堂可以將學位論文的全部或部分內容編入有關數(shù)據(jù)庫進行檢 索,并采用影印、縮印或掃描等復制手段保存、匯編以供查閱和借閱。同意學 校向國家有關部門或機構送交論文的復印件和磁盤。 ( 保密的學位論文在解密后適用本授權說明) 學位論文作者簽名:; 玟舅 導師簽名:j 閃,j 簽字目期:講年 f 月調 簽字日期;2 。牛年,月2 日 第一章緒論 1 1 選題背景及意義 第一章緒論 動態(tài)圖像是針對運動的物體或景物而言的,他們不僅是空間位置的函數(shù), 而且是隨時間變化的,它為我們提供了比單一圖像更豐富的信息。在對某一景 物拍攝到的圖像序列中,相鄰兩幀圖像間至少有一部分像元的灰度發(fā)生了變化, 這個圖像序列就稱之為動態(tài)圖像序列【l 】。 動態(tài)圖像分析的基本任務是從圖像序列中檢測出運動信息,識別與跟蹤運 動目標和估計運動目標三維運動及結構參數(shù)。它涉及到圖像處理、圖像分析、 人工智能與模式識別、計算機視覺等研究領域,是圖像處理與計算機視覺領域 中的一個非?;钴S的分支,在工業(yè)生產、醫(yī)療衛(wèi)生、國防建設等領域得到了廣 泛應用,因此對它的研究具有十分重要的現(xiàn)實意義。 早期的序列圖像處理主要是針對電視信號的處理和傳輸,如基于三維運動的 圖像分割、增強、濾波、編碼壓縮等,故仍屬于圖像處理的范疇。隨著計算機 視覺研究的深入,三維運動及結構信息的處理已成為序列圖像處理的主題,同 時研究的難度也隨之增大。1 9 7 9 年在美國費城召開了第一次序列圖像處理的專 題討論會,以后關于該領域的會議、??爸魅找嬖龆啵梢哉f它已成為當 今計算機視覺的一大熱點。國內開展動態(tài)序列圖像分析研究最早是在8 0 年代初, 北方交通大學信息所在此取得了國內領先的成果。以后相繼一些大學和科研機 構也在這一領域做了不少工作,如復旦大學、浙江大學、北京大學等,目前已 形成了全國范圍的精干強大的科研隊伍,有關動態(tài)序列圖像分析的研究日新月 異,不斷有新的成果出現(xiàn)。 目前動態(tài)序列圖像分析主要有兩類方法:類是基于光流的連續(xù)處理方法, 類是基于特征的離散處理方法。 1 1 1 基于特征的方法 基于特征的方法利用了特征位置的變化信息,通常分為三步:一,從相繼兩 幅或多幅不同時刻的圖像中抽取顯著特征,如與拐角、邊界、有明顯標記的區(qū) 域對應的點、線或曲線等。二,在圖像幀間尋找特征點的對應關系,也稱匹配。 三,依據(jù)這些特征之間的對應來計算物體的結構( 形狀、位置等) 和運動信息。 u l l m a l l l 2 1 指出,由三幅正投影圖像中四組對應點可確定剛體三維運動參數(shù)和 第一章緒論 不共面四點結構的精確模型,z h u a n g 3 】和h u a n g l 4 給了解決該問題的線性算法。 但正投影只適用于一些特殊情況,在真實世界中一般都采用透視投影。 r o a c h 和a g g a r w a l 【5 l 通過透視投影變換從視圖中計算物體的結構和運動。他 們認為相繼兩個視圖上的五個對應點對恢復運動參數(shù)和結構參數(shù)是必要的。由 于位置變量有2 7 個,而方程只有2 0 個,因此他們假設第一幅視圖對應的攝像 機6 個參數(shù)為0 和絕對深度為任意值。所以這種方法不能得到絕對深度。 t s a i 6 】和l o n g u e t - h i g g i n s 7 】考慮了曲面物體的情況,分別獨立提出了一種利 用兩幅圖像中8 對對應點計算剛體旋轉和平移矩陣的算法,他們都十分重視計 算的唯一性。l o n g u e t h i g g i n s 8 】后來指出,退化的結構會影響他們的8 點算法。 z h u a n g l 9 給出了一種通用的線性算法,耐0 】建立了兩種運動分解方式下的剛體運 動方程,給出了一種求解旋轉矩陣的線性算法,證明般情況下有兩組解。 y e n 和h u a n g “1 提出了迭代解法,用球面投影方法提出了三個視圖七條線之 間的對應,他們把剛體運動分解為繞通過原點軸線的轉動和一個移動。對于純 旋轉運動,兩條線在兩個視圖之間的對應對決定旋轉短陣已經足夠充分。對于 純移動,通過三個視圖五條線之間的對應可產生一個線性方程系統(tǒng),據(jù)此可以 求解平移運動。對于一般情況,可用三個視圖六條線之間的對應求解。但是該 方法對噪聲比較敏感。 基于特征方法的優(yōu)點在于抗噪性能好,適用于長時間大運動量的處理。但 復雜點是特征提取和對應問題,并且目前的方法在求解三維運動參數(shù)中還含有 一個需要先驗知識才能確定的因子。 1 1 2 基于光流的方法 光流的概念是g i b s o n 于1 9 5 0 年首先提出的。所謂光流是指圖象中模式運動 的速度。光流場是一種二維( 2 d ) 瞬時速度場,其中的2 d 速度矢量是景物中可見 點的三維( 3 d ) 速度矢量在成象表面的投影。光流不僅包含了被觀察物體的運動 信息,而且攜帶著有關景物三維結構的豐富信息。 光流計算首先是由h o r n 和s c h u n c k t l 2 1 提出的。1 9 8 1 年,h o m 和s c h u n c k 提 出了計算光流的基本等式,但利用基本等式來求解光流場是一個不適定問題, 這是因為每一點上的光流都是一個速度向量,它有兩個分量,而由運動引起的 圖像上每一點亮度的變化僅僅提供了一個約束,因此必須引入一些附加的約束 條件,才能得到唯一解。 h o i t i 等人依據(jù)同一運動物體所產生的光流場是連續(xù)和平滑的假設,提出了 第一章緒論 在光流場上附加約束( 整體平滑約束) ,將光流計算問題轉化為一個變分問題, 用來解決光流計算的不適定問題。l u c a s 和k a n a d e 日】提出了局部光滑的約束條 件,即假設在一個小的空間鄰域q 上,景物的運動矢量保持恒定,然后使用加 權最小二乘法估計光流。t e r z o p o u l o s 1 4 1 和h i l d r e t h 15 】也分別提出了更好的有向平 滑度約束條件。y a c h i d a 1 6 在此基礎上提出了迭代算法,使光滑性約束條件不僅 涉及空間域也涉及時間域。 h a r a l i c k 掣 】的光流計算方法是將三維物體的表面分割成許多小的平面,他 們假設三維物體上每個小平面有近似的運動參數(shù)且運動參數(shù)在短時間內為常 量,依據(jù)此思想提出了計算光流附加約束。t r e t i a k 等【”】提出了不同的思路,他 們將速度看作局部常量,直接對基本等式求偏導,得到了與h a r a l i c k 等的光流 計算方法相似的算法。n a g e l 【1 9 】全面地對灰度場附加約束進行了研究。國內復旦 大學吳立德教授領導的課題組曾對灰度時變圖象的光流場計算理論和方法進行 過研究,并提出了多通道方法口。 除了基于灰度的方法以外,計算光流的方法還有基于能量的方法【2 1j 、基于 區(qū)域的光流場計算方法【2 2 l 、基于像素遞歸的光流場計算方法、基于隨機平滑度 約束條件的貝葉斯光流場分析法,以及傅立葉自適應平滑約束方法和幾何約束 方法等。b e a u c h e m i n 等 23 對光流的計算做了一個很好的全面綜述。 雖然基于光流的方法不需要進行連續(xù)圖像間特征的匹配,但存在著某些缺 點。首先,光流的計算需要微分運算,而圖象的微分運算是噪聲敏感的;其次 光流的計算常用松弛法的迭代運算,算法費時,難以滿足實時控制的要求。 1 2 研究方法的選擇 1 2 1 單目視覺方法的選擇 計算機視覺系統(tǒng)獲取物體三維信息最簡單的方法是立體視覺方法,即用兩臺 攝像機對同一物體攝取圖像,根據(jù)兩幅圖像的視差來得到物體的三維信息。該 方法仿照人的雙眼獲取物體的三維信息,原理簡單,但該方法有一個難以解決 的匹配問題。為了計算三維物體某一點的空間數(shù)據(jù),必須在兩臺攝像機的像平 面上找出對應于同一物體點的兩個像點,當要計算的物體點很多時,這個找對 應匹配像點的問題是很難解決的。一般采用相關算予方法,而對應點的搜索沿 內極線進行。 采用單目視覺,即用一臺攝像機攝取動態(tài)序列圖像來進行物體三維運動和結 第一章緒論 構參數(shù)的估計,就可以避免多攝像機的匹配問題,比較容易應用于實際。但是 用單目視覺估計物體深度信息是極為困難的,一般認為,由于從像點出發(fā)通過 焦點所作的射線上的無數(shù)個點都與這個像點對應,這就造成了物體絕對深度信 息的丟失。 p e n t l a n d l 2 4 j 于1 9 8 7 年提出了用聚焦圖像和散焦圖像恢復物體絕對深度的算 法。在攝像機標定的情況下,根據(jù)散焦圖像擴展函數(shù)的0 值,就可以方便的得 到物點的深度。這是用單目攝像機且只用一幅圖像恢復物體深度有成效的方法。 如果通過調節(jié)透鏡組焦距或圖像平面與透鏡之間的距離,得到聚焦圖像,則得 到的物體深度極為準確。s u b b a r a o 【2 5 】推導了階躍型邊緣散焦圖像恢復物體深度的 算法,并提出了線擴展函數(shù)的概念。他的方法涉及到對圖像的微分運算,而微 分運算是噪聲敏感的,因而只能得到深度的不精確估計。s h m l g 。h o n gl a i 2 6 】提出 了由模糊邊緣恢復物體深度的通用算法,此方法去邊緣附近點的灰度值來估計 物體深度。他們的算法是對目標函數(shù)進行優(yōu)化,迭代算法計算時間很長( 長達 2 4 秒) 難于用在實時跟蹤中。 本文利用散焦法估計物體深度,并進行深度修正以滿足測量精度的要求,從 而解決了單目視覺估計深度的難題。在已知深度的條件下,對序列圖像進行運 動分析,再從而恢復物體的三維運動參數(shù)。 1 2 2 稀疏光流方法的選擇 由于基于特征的方法和基于光流的方法各有其優(yōu)缺點:基于光流的方法只 依賴于圖像灰度值的變化,不需要進行圖像間的匹配,但對噪聲敏感,僅適用 于短時間小運動量的處理,且計算速度慢;基于特征的方法對噪聲不太敏感, 適用于長時間大運動量的處理,且計算速度快,但圖像間的特征匹配比較困難。 為了揚長避短,本論文汲取兩種方法的優(yōu)點,采用了一種混合法一稀疏 光流法,即首先利用基于特征的方法在一幅圖像上抽取相對稀疏、但有明顯差 別的角點,并在相繼兩幅圖像間進行特征點的匹配;其次利用視差計算出特征 點的光流,并利用稀疏光流進行物體三維運動參數(shù)和結構參數(shù)的估計。 采用稀疏光流法有以下優(yōu)點: ( 1 ) 對噪聲不敏感因為計算的僅是特征點的光流,只要預先對圖像進行 必要的預處理,使特征點的提取較準確,就能減小噪聲的影響:并且 計算光流時沒有用到微分運算,也可大大減少噪聲的影響。 ( 2 ) 運算速度快利用基于光流的方法需要計算圖像上每一個像素處 第一章緒論 的光流( 稠密光流) ,而該方法僅計算特征點的光流,所以速度要快 得多; ( 3 ) 可以計算幀間大的視差運動,邊緣不被模糊,并且t b 較適合多目標的 場合。 近年來有不少文章提到稀疏光流( s p a r s ef l o w ) 的方法鯽,但由于提取特征 點并在序列圖像間進行特征點匹配比較困難,有的文章采用人為指定特征點的 方法來獲取特征點,有的方法僅適用于物體表面紋理結構特別強的情況,這些 都無法滿足實際需要。本論文在提取特征點前對圖像進行了一系列的預處理, 在提取特征點時又采用了面積約束和夾角約束相配合的方法,能夠準確快速的 提取特征點,采用h o p f i e l d 神經網絡 2 8 】實現(xiàn)序列圖像間特征點的松弛匹配,從 而很好地解決了匹配問題。 1 3 本論文的主要研究內容 本論文首先采用單目視覺方法獲取實時視頻圖像,并對采集的視頻圖像進 行特定的預處理,去除圖像的噪聲,加強圖像中有用信息:然后利用本文提出 的稀疏光流法計算特征點處的光流場;最后利用特征點處的稀疏光流進行三維 重構,估計目標物體的三維運動參數(shù)和結構參數(shù)。 本論文共分六章: 第一章為緒論,主要簡要介紹序列圖像分析的研究現(xiàn)狀及意義、本文研究方 法的選擇和主要研究內容。 第二章為視頻圖像采集與預處理,主要介紹用v f w 軟件包進行視頻圖像的 實時采集。并對采集的視頻圖像進行圖像增強、閾值分割等預處理,以及如何 顯示和存儲圖像; 第三章介紹稀疏光流場的計算過程,主要包括:首先利用面積約束和夾角 約束相配合的方法進行特征點的提取,其次采用h o p f i e l d 神經網絡實現(xiàn)序列圖 像間特征點的松弛匹配,最后利用視差計算特征點處的稀疏光流; 第四章為由稀疏光流場來恢復物體的三維結構信息和運動信息,首先利用 散焦法估計物體的深度,然后在已知深度信息的條件下,利用5 個特征點處的 光流來恢復物體的三維運動參數(shù)。 第五章為程序設計及實驗,在對程序進行介紹的基礎上,做了大量實驗來 驗證本文所述方法的正確性。 第六章為結論和展望。 第二章視頻圖像采集與預處理 第二章視頻圖像采集與預處理 視頻圖像采集是進行序列圖像分析的前提,本文采用v c + + 提供的v f w ( v i d e of o rw i n d o w s ) 函數(shù)庫開發(fā)純軟件的視頻采集程序。由于外界環(huán)境和輸入 設備的影響,直接從攝像機采集到的圖像質量較差,含有大量噪聲,圖像不清 晰,不利于提取特征點和進行特征點匹配,因此要對采集的初始圖像進行一系 列的預處理。 2 1 視頻圖像的實時采集 用m i c r o s o f t 公司推出的v f w 軟件可以對視頻圖像進行采集、編輯和播放 等操作,但要把視頻采集功能添加到自己的應用程序當中,必須自己編寫程序。 實現(xiàn)方法有兩種:第一種方法是利用視頻設備生產廠商提供的軟件開發(fā)工具箱 ( s d k ) 來開發(fā)應用程序;第二種方法是使用v c + + 提供的v f w 函數(shù)庫,開發(fā) 基于w i n d o w s 的視頻捕獲應用程序。用前者編程具有很大的局限性:它依賴于 硬件,即采集卡改變,編寫的圖像采集程序也隨之改變,大大降低了工作效率; 本文采用v f w 函數(shù)庫編寫純軟件的、適合任何視頻采集卡的通用視頻采集程序。 2 1 1 a v f c a p 窗口類簡介 運用v f w 函數(shù)庫進行視頻采集編程主要是通過a v l c a p 窗口類來實現(xiàn),它 是一個簡單易用的、基于消息的接口,用戶可以用它來訪問視頻及音頻采集硬 件,并控制采集視頻流到硬盤的過程。a v i c a p 窗口類的主要功能為: 進行音頻、視頻采集,并將采集到的數(shù)據(jù)保存到一個a v i 文件中。也可 以指定保存數(shù)據(jù)的文件名,并可將該文件復制到另外一個文件: 動態(tài)地將視頻和音頻輸入設備與應用程序連接和斷開; 以預覽( p r e v i e w ) 或疊加( o v e r l a y ) 模式顯示輸入的實時視頻信號; 可以設置視頻采集的幀率; 可以顯示控制視頻源和視頻格式的對話框; 可以創(chuàng)建、保存和裝載與視頻圖像相關的調色板,并可將它復制到剪切 板: 可以將采集到的單幀圖像保存為d i b ( d e v i c ei n d e p e n d e n tb i t m a p ) 格式。 第二章視頻圖像采集與預處理 2 1 2 用a v i c a p 窗口類實現(xiàn)視頻采集 為了實現(xiàn)視頻采集,a v i c a p 窗口類提供了大量的宏、消息和函數(shù),這里只 按照采集程序的一般過程介紹幾個關鍵的宏和函數(shù)的使用方法,其他宏和函數(shù) 的使用方法可以參閱v c + + 6 0 的m s d n 幫助。 1 創(chuàng)建采集窗口 采集窗口是被采集的視頻圖像的預覽窗口,它是所有采集操作的基礎。采 集窗口是通過調用c a p c r e a t e c a p t u r e w i n d o w 函數(shù)創(chuàng)建的,如果函數(shù)調用成功, 則返回捕獲窗口的句柄。 2 將采集窗口和指定的采集設備相連 我們可以用宏c a p d r i v e r c o n n e c t ( g w n d c a p ,n l n d e x ) 將采集窗口和指定的采 集設備相連接。其中g w n d c a p 為采集窗口的句柄,n l n d e x 為指定的采集設備的 號碼,該索引號允許的范圍是0 9 。當有多個視頻設備時,捕獲窗口可以根據(jù)索 引號選擇指定的視頻設備進行連接。我們可以通過c a p g e t d r i v e r d e s c r i p t i o n 獲得 系統(tǒng)中所有采集設備的名稱和版本號。 調用宏c a p d r i v e r d i s c o r m e c t ( g w n d c a p ) 將采集窗1 2 1 和指定的采集設備斷 開。 3 獲得與采集窗口相連的硬件驅動的能力 c a p d r j v e r c a p s 結構中定義了采集驅動器的能力,如有無視頻疊加能力, 有無控制視頻源和視頻格式的對話框等。我們定義了c a p d r i v e r c a p s g c a p d r i v e r c a p s ,通過調用宏c a p d r i v e r g e t c a p s ( g w n d c a p ,& g c a p d r i v e r c a p s , s i z e o f f c a p d r i v e r c a p s ) ) ,在g c a p d r i v e r c a p s 中就復制了與當前采集窗口相連 的驅動設備的各項能力,這時可以通過對話框完成對視頻采集的控制。 4 設置捕獲窗口的顯示模式 顯示視頻有預覽和疊加兩種模式。用宏c a p p r e v i e w 將顯示模式設置成 p r e v i e w 模式,而用宏c a p o v e r l a y 則將顯示模式設置成o v e r l a y 模式。p r e v i e w 模 式把數(shù)字化的幀從采集硬件傳到系統(tǒng)內存,并利用o d i 函數(shù)在采集窗口中顯示, 占用大量c p u 時間,大部分設備都支持預覽模式;而o v e r l a y 模式將采集緩沖區(qū) 的內容直接在監(jiān)視器上顯示,不用c p u 資源,但只有一部分視頻卡支持疊加模 式,可調用宏c a p d r i v e r g e t c a p s 來判斷視頻設備是否具備o v e r l a y 模式。 用預覽模式顯示: 第二章視頻圖像采集與預處理 e a p p r e v i e w r a t e ( g w n d c a p ,6 6 ) ;設置顯示幀率 c 印p r e v i e w ( g w n d c a p ,t r u e ) ;開始預覽盟示 要結束預覽顯示可用: c a p p r e v i e w ( g w n d c a p ,f a l s e ) ; 疊加模式與此方法相似,只是把c a p p r e v i e w 改為c a p o v e r l a y 。 本文采用預覽模式顯示視頻,因為在后面的視頻采集中,我們要通過回調函 數(shù)得到內存緩沖區(qū)中視頻數(shù)據(jù)的地址,因此所采用的顯示方式必須具有把內存 作為緩沖區(qū)來存放視頻數(shù)據(jù)的能力,它是獲得視頻數(shù)據(jù)的必要條件。 5 獲取和設置采集窗口參數(shù) 使用宏c a p c a p t u r e g e t s e t u p 可以獲取當前采集參數(shù)設置,該宏得到的參數(shù) 放在c a p t u r e p a r m s 結構中,這個結構包含的參數(shù)控制視頻流捕獲過程,如 捕獲速率、捕獲時使用的緩沖量、捕獲如何終止等;可以對c a p t u r e p a r m s 結構中的參數(shù)進行修改,然后調用宏c a p c a p t u r e s e t s e t u p 進行更新。 6 注冊回調函數(shù) 回調函數(shù)是針對w i n d o w s 中的窗口而設置的,回調過程由系統(tǒng)完成,而函 數(shù)的具體內容則由程序員設定。系統(tǒng)中某一回調函數(shù)被設定后,在某一特定的 條件滿足時,系統(tǒng)自動調用該回調函數(shù)。a v i c a p 窗口類共提供了七種回調函數(shù), 常用的主要有以下四種回調函數(shù): 1 ) 預覽回調函數(shù)c a p s e t c a l l b a c k o n f r a m e ( ) 用它登汜的回調函數(shù)在每采集完一幀后被調用。利用這個回調函數(shù)可以通 過v i d e o h d r 結構中的1 p d a t a 指針得到所采集數(shù)據(jù)并對它進行處理。 2 ) 數(shù)據(jù)流回調函數(shù)c a p s e t c a l l b a c k o n v i d e o s t r e a m ( ) 用它登記的回調函數(shù)在采集的視頻流圖像存盤之前被調用; 3 ) 狀態(tài)回調函數(shù)c a p s e t c a l l b a c k o n s t a t u s ( ) 用它登記的回調函數(shù)在采集窗口發(fā)生改變時被調用; 4 1 出錯回調函數(shù)c a p s e t c a l l b a c k o n e r r o r s ( ) 用它登記的回調函數(shù)在采集過程出錯時被調用,通過編寫相應的回調函數(shù) 代碼我們可以及時對錯誤進行處理。 7 采集圖像到緩存或文件并進行相應處理 視頻采集主要有兩種形式:單幀采集和連續(xù)視頻流采集。 第二章視頻圖像采集與預處理 1 1 單幀采集 我們可以調用宏c a p g r a b f r a m e ( g w n d c a p ) 和c a p g r a b f r a m e n o s t o p ( g w n d c a p ) 來進行單幀采集。前者會產生圖像凍結效果,而后者從視頻采集卡獲得的幀 數(shù)據(jù)不被壓縮地存入視頻緩沖區(qū)中,之后將其顯示出來,對預覽或疊加模式的 視頻顯示沒有影響。 對于獲得的單幀圖像我們可以進行三種處理:調用宏c a p f i l e s a v e d i b ( ) 把緩 沖區(qū)的圖像轉化成d i b 位圖保存到磁盤、調用宏e a p e d i t c o p y ( g w n d c a p ) 拷貝到 剪切板和放在幀緩沖區(qū)以便及時進行處理。 2 ) 連續(xù)視頻流采集 連續(xù)視頻流采集也有兩種方法: c a p c a p t u r e s e q u e n c e ( g w n d c a p ) ;可把采集到的視頻流數(shù)據(jù)存盤 c a p c a p t u r e s e q u e n c e n o f i l e ( g w n d c a p ) ;不保存采集到的視頻流數(shù)據(jù) 和單幀采集一樣,視頻流采集既可以將視頻流采集到a v i 文件中進行存盤, 也可以利用登記的回調函數(shù),把視頻流數(shù)據(jù)先放在幀緩沖區(qū),再對幀緩沖區(qū)內 的視頻數(shù)據(jù)進行實時處理。 2 2 數(shù)字圖像預處理 2 2 1 灰度直方圖 灰度直方圖是數(shù)字圖像處理中一個最簡單、最有用的工具,它描述了一幅圖 像灰度級的內容。任何一幅圖像的直方圖都包括了可觀的信息,某些類型的圖 像還可以由其直方圖完全描述。 灰度直方圖是灰度值的函數(shù),描述的是圖像中具有該灰度值的像素的個數(shù), 其橫坐標表示像素的灰度級別,縱坐標是該灰度出現(xiàn)的概率( 像素的個數(shù)) 。繪 制處理前后兩幅圖像的灰度直方圖,可以直觀地對處理前后的圖像進行比較。 2 、2 2 圖像增強 圖像增強的方法分為空域法和頻域法兩類,空域法主要是對圖像中的各個像 素點進行操作,它可以用下式來描述: g ( x ,y ) = f ( x ,y ) h ( x ,y ) ( 2 1 ) 其中他力是處理前的圖像;甙x 表示處理后的圖像; ( x 力為空間運算函數(shù)。 第二章視頻圖像采集與預處理 頻域法是在圖像的某個變換域內( 通常是頻率域中) 對圖像的變換值進行 操作,然后變換回空間域。例如:可以先對圖像進行傅立葉變換,再對圖像的 頻譜進行某種修正( 如濾波等) ,最后將修正后的圖像進行傅立葉反變換到空間 域中,從而增強該圖像,它是一種間接處理方法,可以用圖2 - 1 來描述該過程。 圖2 - i 頻率域增強模型 1 圖像平滑 圖像平滑主要是為了消除噪聲,它包括空域法和頻域法兩大類:在空間域 內可以用領域平均來減少噪聲;在頻率域,由于噪聲頻譜通常多在高頻段,因 此可以采用各種形式的低通濾波方法來減少噪聲。在空域法中,圖像平滑的常 用方法是采用中值濾波或均值濾波,對于中值濾波,就是指把以某點( x 為中心 的小窗口內的所有像素的灰度按從大到小的順序排列,將中閭值作為( x 處的灰 度值( 若窗口中有偶數(shù)個像素,則取兩個中間值的平均) 。但對于細節(jié)多,特別是 點、線、頂點多的圖像不宜采用中值濾波;對于均值濾波,常采用模板法來實 現(xiàn),即通過一個點和它周圍的幾個點的某種運算( 通常是平均運算) 來消除突 然變化的點,從而濾掉一定的噪聲。由于本課題提取的特征點為六角螺栓的頂 點,所以應該采用均值濾波進行圖像平滑。 均值濾波常用的模板有: 平均模板( b o x 模板) 高斯模板( g a u s s 模板) i - 1 11 三1 11 + li 9 1 1 1 l j r 1 2 1 土l2 4 + 2 l 1 6 1 1 2 1 j ( 2 2 ) ( 2 3 ) 中間的+ 表示中心元素,即用該元素做為處理后的元素。例如 2 + 1 】表示將 自身的2 倍加上右邊的元素作為新值,而【21 + 】則表示將自身加上左邊元素的2 倍作為新值。 平滑模板的思想是通過一點和周圍8 個點的平均來去除突然變化的點,濾 掉一定的噪聲。它雖然考慮了鄰域點的作用,但沒考慮各點位置的影響,對于 第二章視頻圖像采集與預處理 所有的9 個點都一視同仁,所以平滑的效果并不理想;而高斯模板考慮了離某 點越近的點對該點的影響應該越大,引入了加權系數(shù),使平滑的效果比較理想。 如下例所示:設圖像為 22 32 46 56 圍元素直接從原圖拷貝) ,結果為: l 2222 采用模板:l ;三:;三:; i5 666 r 2222 采用模板z :l ;4 三。;:; i5666 22 33 45 6 6 ,分別用上述兩種模板進行處理( 周 可以看到,原圖中出現(xiàn)噪聲的區(qū)域是第2 行第2 列和第3 行第2 列,灰度 從2 跳到6 ,用b o x 模板處理后,灰度從3 1 1 跳到4 3 3 ;用高斯模板處理后, 灰度從3 跳到4 5 6 ,都緩和了跳變的幅度,從這一點上看,兩者都達到了平滑 的目的。但是,原圖中的第3 ,第4 行總的來說,灰度值是比較高的,經模板1 處理后,第3 行第2 列元素的灰度變成了4 3 3 ,與第3 、第4 行的總體灰度相比 偏小,而且原圖中第3 行第2 列元素的灰度為6 ,第3 行第3 列元素的灰度為4 , 變換后,后者4 5 6 反而比前者4 3 3 大了。而采用高斯模板考慮了位置的影響, 沒有出現(xiàn)這些問題。 模板運算是一項非常耗時的運算。以式( 2 3 ) 為例,每個像素完成一次模板 操作要用9 次乘法,8 次加法和1 次除法。對于一幅n t n ( 寬度x 高度) 的圖象, 就要用到9 ( n - 2 ) 2 次乘法,8 ( n 2 ) 2 次加法和( n _ 2 ) 2 次除法,算法復雜度為o ( n 2 ) 。 為了提高運算速度,本文將2 維模板運算轉換成l 維模板運算,例如式( 2 3 ) 可 以分解成一個水平模板和一個豎直模板,即: r l 21 r1 r1 壺 i :;f 2 三f + f 。 1 2 4 1 】= 去l2 l ?!? 2 + 1 】e 2 。鄰 這樣,改進后將進行6 ( n 一2 ) ( n 1 ) 次乘法,4 ( n 一2 ) ( n - 1 ) 次加法和- 2 ) 2 次除法 操作,大大減少了乘法和加法運算。 第二章視頻圖像采集與預處理 l _ _ 1 6 例如:設圖像為 12 35 3 47 7 56 42 6 13 8 l5 86 料小l 12 32 46 56 4 2 53 45 86 ,直接經過模板去i 童到處理后變?yōu)?,采用分解后的模板來處理,結果為 12 32 4 6 56 4 2 5 3 45 86 料 19 31 2 42 0 52 5 1 2 2 1 53 1 95 3 86 1 = 1 6 12 35 3 47 7 56 42 6 13 8 15 86 ( 2 - 5 ) 圖像平滑往往使圖像的邊界、輪廓變的模糊,而圖像銳化可以使圖像的邊 緣、輪廓線以及圖像的細節(jié)變的清晰。平滑處理后圖像變模糊的根本原因是: 圖像受到了平均或積分運算。因此對圖像進行逆運算( 如微分運算) 就可以使 其變的清晰,常用的方法是梯度銳化。 設圖像為m ,定義如在點( x 力處的梯度矢量g ,( x ,y ) 為: g f ( x ,y ) = 可 a x 可 印 梯度的幅度用g 【,( 蕾y ) 】表示,其值為 g 廠( 五y ) 】= ( 2 - 6 ) ( 2 7 ) 因為梯度的方向在函數(shù)m 最大變化率方向上,因此梯度的數(shù)值就是m 力 在其最大變化率方向上的單位距離上增加的量。 對于離散的數(shù)字圖像,上式可以改寫為: g 【m ) 】:瓜而f 幣可礦面而f 麗( 2 - 8 ) 第二章視頻圖像采集與預處理 為了計算方便,也可以采用下面的近似計算公式: g ,( ) 】蘭j f 廠( _ ,) 一f ( i + l ,) i + j 【廠( ,) 一廠( t ,+ 1 ) g 廠( t ,) 】蘭i 【廠( t j ) 一f ( i + l ,- ,+ 1 ) 】| + l l 廠( f + i _ ,) 一廠( t ,+ 1 ) 】i 式( 2 - 9 ) 和( 2 1 0 ) 的示意圖如圖2 - 2 所示。 a i ,j ) 一叫( i ,+ 1 ) 蓯f ,) j ( i ,) k a i ,j + 1 ) 以f + i ,、f + 1 + l : ( 2 9 ) r 2 一l o ) 圖2 2 計算公式示意圖 如果直接采用梯度值g 氕x ,州來表示圖像,即令9 0 ,y ) = g 【a x ,州,則由 上面的公式可見:在圖像變化緩慢的地方其值很小( y a 應于圖像較暗) ;而在線 條輪廓等變化較快的地方其值很大。這就使得圖像在經過梯度運算后變清晰, 從而達到銳化的目的。 由于在圖像變化緩慢的地方梯度很小,所以圖像會變得很暗,我們采用以 下方法來優(yōu)化:先給一個閾值,如果梯度值g 【蓯x ,州小于該閾值,則保持 原灰度值不變;否則賦值為g 【a x ,y ) 】: s ,- 粥如出凄端篡 g ( 五y ) = 1 ,( 蕾y )( g 【廠( 墨y ) ) z _ 11 或者: g c 圳= ,急,徽裟甕 p 喲 g ( 五y ) = 1 ,( 葛_ y )( g 【,( 葺y ) t 式中z ( i j ) 是圖像上( f 力點的灰度值,( f 力是( f j ) 點的權值系數(shù),一般( 取1 0 。 ( 3 ) 求出新的閾值; t k + i :z o + z b 佗一1 6 ) 2 ( 4 ) 如果t k = t t m 則結束,否則芷一n l ,轉步驟( 2 ) 。 根據(jù)上面的算法對圖像進行閾值分割,效果比較理想。 2 2 4 輪廓跟蹤與種子填充 輪廓跟蹤的目的是為了獲得圖像的外部輪廓特征;種子填充是輪廓跟蹤的逆 過程。它們處理的都是經過閾值分割的二值圖。 1 輪廓跟蹤 輪廓跟蹤的基本方法是:先根據(jù)某些嚴格的“探測準則”找出目標物體輪廓 上的像素,再根據(jù)這些像素的某些特征用一定的“跟蹤準則”找出目標物體上的其 它像素。 迄今,已有許多有關輪廓跟蹤的算法,但大多數(shù)算法計算量比較大,速度 第二章視頻圖像采集與預處理 慢,不能滿足實時跟蹤的要求,本文采用一種快速算法,能夠滿足實際的需要。 該算法的思路是:首先按照從左到右,從下到上的順序搜索,找到的第一個黑 點定是最左下方的邊界點;然后從該邊界點開始,定義初始的搜索方向為沿 左上方,如果左上方的點是黑點,則為邊界點,否則搜索方向順時針旋轉4 5 度, 這樣一直找到第一個黑點為止;最后把這個黑點作為新的邊界點,在當前搜索 方向的基礎上逆時針旋轉9 0 度,繼續(xù)用同樣的方法搜索下一個黑點,直到返回 最初的邊界點為止。圖2 3 為這一輪廓跟蹤算法的示意圖,其中箭頭代表搜索方 向。 & oo 。 南poo 兩ooo。 。 、 圖2 3 輪廓跟蹤算法 2 種子填充 本文采用種子填充是為了把邊界內外點的像素值區(qū)分開來,邊界外的點像 素值為2 5 5 ,而邊界上和邊界內的點經種子填充后都置為0 ,為后面的特征點提 取服務。 種子填充算法的突出優(yōu)點是能對具有任意復雜邊界的區(qū)域進行填充。然而, 種子填充算法需要建立一個堆棧來存放種子,并有大量重復的種子進棧。當填 充的區(qū)域面積較大時,由于所占用的棧空間太大,從而使填充不能完成、甚至 會出現(xiàn)系統(tǒng)崩潰。解決上述問題的辦法之一是掃描線種子填充算法。
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年【R1快開門式壓力容器操作】考試題庫及答案
- 2025年公路水運工程試驗檢測師公共基礎試題庫及答案(法規(guī)與技術標準)
- 2025年監(jiān)理工程師之交通工程目標控制考試題庫含答案a卷
- 橋梁招標課件
- 2025年品牌營銷經理招聘面試模擬題與技巧解析
- 2026屆安徽省亳州市第三十二中學高三化學第一學期期中聯(lián)考模擬試題含解析
- 2025年電商運營崗位筆試模擬題及答案解析
- 2025護士資格證考試題庫及答案
- 2025年大數(shù)據(jù)與人工智能課程考試試題及答案
- 2025年旅游管理與規(guī)劃項目的考試試題及答案
- 土地出租合同書電子版
- 小升初測試(試題)-2023-2024學年六年級下冊數(shù)學蘇教版
- 《化妝品穩(wěn)定性試驗規(guī)范》
- 二氧化碳靜態(tài)爆破施工方案樣本
- 青少年抑郁癥的預防和干預策略
- 考公行測言語理解與表達題庫之選詞填空公考公務員考試省考國考310題(含答案)
- 2021年度計算機審計初級網絡培訓測試題
- 康復科康復評定表
- 八年級年級主任工作計劃
- 英漢互譯單詞練習打印紙
- 四川JS-004竣工驗收報告
評論
0/150
提交評論