版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、學校代碼: 10128學 號: 201020906002 本科畢業(yè)論文題 目:濾波器的形狀和尺寸對圖像 濾波的影響 學生姓名:學 院:理學院系 別:物理系專 業(yè):電子信息科學與技術班 級:電科10-1班指導教師:李維雅 講師二 一 四 年 五 月摘 要目前,計算機多媒體網(wǎng)絡技術的發(fā)展,使得人們的大部分知識都由視覺獲得。所以,如何才能在眾多的視頻信息中用最短時間找到自己所需要的內容,已經(jīng)成了一個亟待解決的事情。鏡頭邊界檢測是視頻檢索的關鍵性技術之一。當鏡頭發(fā)生轉換時,會造成一些明顯的變化。例如鏡頭連續(xù)幀之間相應位置像素點差值的變大、顏色分布發(fā)生明顯改變或者物體邊緣的突然出現(xiàn)與消失。鏡頭邊界檢測從
2、本質上講就是檢測這些明顯特征的變化。由于鏡頭中的內容有多種描述方法,所以相應的也有多種鏡頭邊界檢測方法。盡管如此,鏡頭邊界檢測技術還不成熟。本文的主要內容就是使用MATLAB來實現(xiàn)鏡頭邊界檢測,即鏡頭內容的變化,包括突變與漸變。本文主要使用的方法有基于MATLAB連續(xù)幀相減的像素差法與直方圖相減法。關鍵詞:鏡頭邊界檢測;直方圖;突變檢測;漸變檢測; AbstractAt present, the development of computer multimedia network technology, makes the most of the knowledge obtained by t
3、he visual. So, how do we in the video with the shortest time to find the content they need, has become an urgent matter. Shot boundary detection is one of the key technologies for video retrieval. When the the lens conversion occurs, it will cause some significant changes. For example, the differenc
4、e of the lens between consecutive frames corresponding pixel will become larger, color distribution changed significantly or the edges of objects suddenly appear and disappear. In essence, the shot boundary detection is to detect changes in these distinguishing characteristics. Since the contents of
5、 the lens had been variously described method, the corresponding variety of shot boundary detection method. Nevertheless, the shot boundary detection technology is not mature. The main content of this paper is to use MATLAB to achieve the shot boundary detection, changes in the content of the lens,
6、including mutations gradient. In this paper, using the consecutive frames subtraction, histogram subtraction.Keywords:shot boundary detection; histogram; mutation detection; gradient detection;目 錄引言 1第一章 視頻鏡頭邊界檢測概述 21.1 基本概念 21.2 視頻鏡頭邊界分類3 1.3 視頻鏡頭邊界檢測算法分類31.4 視頻數(shù)據(jù)處理過程 41.5 視頻鏡頭邊界檢測過程5 1.6 主要方法及存在的問
7、題6 1.7 性能指標 7第二章 視頻數(shù)據(jù)結構及MATLAB簡介 82.1 視頻數(shù)據(jù)結構 8 2.1.1 視頻數(shù)據(jù)特點8 2.1.2 視頻數(shù)據(jù)的表示8 2.1.3 視頻數(shù)據(jù)處理結構82.2 MATLAB簡介 9 2.2.1 MATLAB組成9 2.2.2 MATLAB主要特點9 2.2.3 MATLAB圖像處理工具箱10第三章 視頻鏡頭突變檢測 113.1 國內外研究現(xiàn)狀 113.2 連續(xù)幀相減及MATLAB實現(xiàn) 12 3.2.1 MATLAB程序流程圖12 3.2.2 連續(xù)幀相減原理13 3.2.3 連續(xù)幀相減程序實現(xiàn)13 3.2.4 連續(xù)幀相減優(yōu)點與缺點153.3 直方圖相減及MATLAB
8、實現(xiàn) 16 3.3.1 MATLAB程序流程圖16 3.3.2 直方圖相減原理17 3.3.3 直方圖相減程序實現(xiàn)17 3.3.4 直方圖相減優(yōu)點與缺點19第四章 視頻鏡頭漸變檢測 204.1 國內外研究現(xiàn)狀 204.2 連續(xù)幀相減及MATLAB實現(xiàn) 214.3 直方圖相減及MATLAB實現(xiàn) 24結論 27參考文獻 28謝辭 29引 言隨著計算機技術的發(fā)展、離散數(shù)學理論的發(fā)展和各領域需求的增長,數(shù)字圖像處理正成為新興的學科蓬勃發(fā)展。如何使數(shù)字視頻里的信息得到充分利用,并在最短的時間里找到我們所需要的內容,是急需解決的問題。因此,視頻分析及檢索技術顯得尤為重要。我們在對視頻分析處理時必須進行鏡頭
9、邊界檢測,以求對視頻的進一步處理成為可能。這更說明了鏡頭邊界檢測技術的重要性。 視頻鏡頭邊界檢測已經(jīng)在近幾年得到深入研究,并應用在不同領域。比如視頻索引,視頻壓縮,視頻訪問和其它幾個方面。鏡頭邊界檢測一直是一個活躍的研究領域,已經(jīng)開發(fā)了許多自動技術來檢測視頻序列中的幀轉換。測量視頻內容不連續(xù)性的最簡單的方法就是比較兩幀之間對應的像素。本文主要使用兩種基于MATLAB的方法進行鏡頭邊界檢測。分別為連續(xù)幀相減和直方圖相減。根據(jù)視頻鏡頭的特點,將鏡頭分為兩類:突變鏡頭和漸變鏡頭。其中大部分是突變鏡頭。當鏡頭發(fā)生轉換時,會造成一些明顯的變化。例如鏡頭連續(xù)幀之間相應位置像素點差值的變大、顏色分布發(fā)生明顯
10、改變或者物體邊緣的突然出現(xiàn)與消失。鏡頭邊界檢測從本質上講就是檢測這些明顯特征的變化。鏡頭邊緣檢測的主要目的是提高鏡頭邊緣檢測的準確率和降低漏檢率,并能對各類不同的鏡頭進行準確區(qū)分和檢測,以得到更高的查全率和查準率。本文的主要內容如下:第一章:鏡頭邊界檢測概述。本章主要介紹了關于視頻的一些基本概念,包括視頻、場景、鏡頭和幀等。還有鏡頭邊界的概念、檢測的流程、主要方法及性能指標等。第二章:視頻數(shù)據(jù)結構MATLAB簡介。主要分析視頻的數(shù)據(jù)結構。第三章:突變檢測。本章主要用MATLAB實現(xiàn)突變鏡頭邊界檢測,包括程序流程圖和程序代碼。其中主要使用了兩種方法,基于連續(xù)幀相減的像素差法和直方圖相減法。并且介
11、紹了兩種方法的原理以及優(yōu)缺點。第四章:漸變檢測。本章主要用MATLAB實現(xiàn)漸變鏡頭邊界檢測。同樣使用了連續(xù)幀相減與直方圖相減兩種方法。檢測鏡頭為溶解漸變鏡頭。本文研究內容是基于MATLAB針對非壓縮域視頻的鏡頭邊界檢測算法。第一章 視頻鏡頭邊界檢測概述1.1 基本概念視頻:視頻一般是由許多個場景拼接而成的,它在時間、空間和圖像結構上都具有一定地連續(xù)性。從根本上講,它是一組動態(tài)的圖像序列,所描述的是一個完整的故事。場景:包含一個或多個鏡頭,并且這些鏡頭內容相近,只是從不同的角度對同一個事件進行描述。一般敘述的是一個階段性的故事。鏡頭:鏡頭是視頻數(shù)據(jù)結構中的基本單位,它由若干幀時間上連續(xù)的圖像組成
12、。在內容上具有很大的相似性。幀:幀作為視頻數(shù)據(jù)結構中的最小單元,從本質上來講是一幅靜態(tài)的的圖像。連續(xù)幀之間會發(fā)生變化。鏡頭邊界:兩個鏡頭發(fā)生轉換的時候,會出現(xiàn)一些明顯的變化。例如鏡頭連續(xù)幀之間相應位置像素點差值的變大、顏色分布發(fā)生明顯的改變或者物體邊緣的突然出現(xiàn)與消失。鏡頭邊界是視頻鏡頭相鄰幀的內容出現(xiàn)了某種意義上的變化,即鏡頭邊界反映的是視頻內容的不連續(xù)性。鏡頭邊界檢測從本質上講就是檢測這些明顯特征的變化。圖1.1 視頻、場景以及幀關系圖1.2 視頻鏡頭邊界分類視頻鏡頭邊界主要有兩種,分別為突變鏡頭邊界與漸變鏡頭邊界。其中突變鏡頭邊界是一個鏡頭直接轉換到另一個鏡頭,兩個鏡頭之間沒有使用任何攝
13、影編輯效果。它的特點是鏡頭的變換發(fā)生在兩幀圖像之間,這兩幀圖像分屬不同的鏡頭,兩幀圖像的最基本特征已發(fā)生改變。漸變鏡頭邊界是指一個鏡頭漸漸過渡到另一個鏡頭,鏡頭之間會有一些空間或時間上的編輯效果,包括淡入淡出,溶解等。它的主要特點是漸變過程中相鄰兩幀圖像變化相對較小,所以漸變過程通常為幾幀到十幾幀。鏡頭漸變包括許多鏡頭切換方式,它的主要特點是漸變過程中相鄰兩幀圖像變化相對較小,所以漸變過程通常為幾幀到十幾幀。與鏡頭突變只有一種不同的是,漸變包括許多種方式,如淡入淡出、溶解等。目前大部分的視頻鏡頭轉換方式為突變鏡頭,少部分為漸變鏡頭。鏡頭突變檢測方法已經(jīng)相對比較成熟,而鏡頭漸變檢測方法還沒有一個
14、普遍通用的算法。1.3 視頻鏡頭邊界檢測算法分類視頻鏡頭邊界檢測算法依照處理對象的不同可以分為:壓縮域鏡頭邊界檢測算法和非壓縮域鏡頭邊界檢測算法。非壓縮域鏡頭邊界檢測算法是針對未經(jīng)過壓縮的數(shù)字視頻的,因此可以利用視頻幀圖像像素域信息,直接對圖像進行各種處理,提取圖像的特征向量,例如灰度直方圖,像素點變化率,邊緣改變率等。壓縮域鏡頭邊界檢測算法是針對經(jīng)過壓縮的數(shù)字視頻的。由于越來越多的視頻是以壓縮形式保存的,所以有必要對壓縮視頻域進行研究。如果先解壓,再用非壓縮域的方法進行分析,不僅要消耗大量的解壓時間,而且需要額外的存儲空間。所以近年來出現(xiàn)了直接對壓縮視頻進行鏡頭邊界檢測的算法。本文研究內容是
15、基于MATLAB針對非壓縮域視頻的鏡頭邊界檢測算法。1.4 視頻數(shù)據(jù)處理過程圖1.2 視頻數(shù)據(jù)處理過程(1)選擇特征向量選擇一個合適的特征向量對鏡頭邊界的正確檢測有很大的幫助。基于連續(xù)幀相減的像素差法對于運動和噪聲十分敏感,容易造成誤檢,而直方圖相減方法又丟失了幀圖像的位置信息,容易造成漏檢測。所以需要找到一個更好的特征或者是特征組合來提高鏡頭邊界的檢測的效果。(2)選擇閾值如何選擇一個合適的閾值是應用幀差法進行鏡頭邊界檢測最關鍵的一個問題,選取的閾值是否合適直接影響著鏡頭邊界檢測的結果。如果選取的閾值過大,會造成漏檢,而閾值太小又會造成誤檢。并且不同類型的視頻需要選擇不同的閾值,很難有一個統(tǒng)
16、一的標準。(3)鏡頭漸變與鏡頭運動的區(qū)別因為鏡頭漸變與鏡頭運動都會使幀間差連續(xù)的增大,所以利用基于MATLAB幀間差的方法很難將鏡頭漸變和鏡頭運動區(qū)分開來。(4)光照變化及閃光引起的誤檢在鏡頭中出現(xiàn)的閃光以及光照條件的變化會造成視頻幀亮度的變化,從而引起視頻幀間差的變化,使得鏡頭邊界檢測出現(xiàn)錯誤,造成誤檢。1.5 視頻鏡頭邊界檢測過程本文所用鏡頭邊界檢測方法的關鍵在于計算相鄰幀間差,第一步要從視頻鏡頭圖像幀中選取合適的特征值,選取的特征值要能準確反映視頻內容的變化程度,然后就是對特征值進行計算,獲取幀間差。第二步進行鏡頭邊界判斷,需要設定一個閾值,然后根據(jù)幀間差與閾值的關系判斷是否發(fā)生了鏡頭的
17、變換?;贛ATLAB解壓縮域鏡頭邊界檢測過程如圖1.3所示,其中F(i)代表視頻鏡頭第i幀圖像,D(i)代表i幀和i+1幀圖像幀間差,S(k)代表檢測到的第k個鏡頭邊界。圖1.3 鏡頭邊界檢測過程1.6 主要方法及存在的問題視頻鏡頭邊界檢測的實質就是檢測視頻鏡頭連續(xù)相鄰幀或非相鄰幀差的差異度或相似度,當相似度或差異度大于或小于一個閾值時,則判定出現(xiàn)視頻鏡頭突變或漸變邊界。(1)利用視頻圖像相鄰幀差檢測鏡頭邊界的方法本文所用的利用視頻圖像相鄰幀差進行鏡頭邊界檢測的方法主要有連續(xù)幀相減法和直方圖相減法,它們是最簡單的計算幀間差的方法,原理也很簡單,基于連續(xù)幀相減的像素差方法的主要原理就是判斷相鄰
18、圖像幀中發(fā)生變化的像素點的多少。首先統(tǒng)計兩幅圖像對應像素點變化率超過閾值F1的像素點個數(shù)。然后,將變化的像素點個數(shù)與第二個預定的閾值F2比較,如果超過范圍,則認為這兩幀之間發(fā)生較大變化,判斷其為鏡頭邊界?;谥狈綀D的方法也是利用視頻圖像幀間差進行鏡頭邊界檢測的方法。首先計算連續(xù)兩幀圖像的直方圖,然后統(tǒng)計相鄰兩幀中所有像素在不同灰度上的分布差異,即直方圖相減。當差異的累加值超過閾值T時,即檢測到鏡頭邊界。還有一種基于塊的鏡頭邊界檢測算法。這種算法將圖像進行分塊,然后將相鄰幀所對應的塊進行比較,統(tǒng)計變化率超過閾值F1的個數(shù)。當個數(shù)超過閾值F2時,即標為視頻鏡頭邊界。這個方法就是根據(jù)視頻幀間差與閾值
19、的關系達到檢測鏡頭邊界的目的,既可以檢測突變鏡頭邊界也可以檢測漸變鏡頭邊界。因為基于連續(xù)幀幀間差的方法有很多,例如本文中所用的基于連續(xù)幀相減的像素差法和直方圖相減法。檢測漸變鏡頭邊界與突變鏡頭邊界唯一不同的是閾值的選取不同。一般來說,只計算相鄰幀的幀間差,對于漸變鏡頭邊界的檢測來講,有一種方法就是當幀間差超過閾值F1時,標記為漸變起始幀,然后接下來每一幀都與起始幀作差,以此來判定鏡頭邊界。(2) 利用視頻鏡頭相鄰幀相似度檢測視頻鏡頭邊界方法直方圖交集法是利用兩個視頻圖像幀直方圖交集來檢測視頻鏡頭邊界的。與其它利用幀間差檢測視頻鏡頭邊界方法不同的是,直方圖交集是檢測連續(xù)兩個視頻圖像幀相似度的。它
20、的原理也比較簡單,具體實現(xiàn)過程如下,首先計算連續(xù)兩幀的直方圖,然后計算直方圖交集,當連續(xù)兩個視頻圖像幀的相似度小于閾值F1時,則判定出現(xiàn)鏡頭邊界。在實際中,經(jīng)常需要將突變鏡頭與漸變鏡頭放在一起檢測。在進行鏡頭漸變檢測時,用檢測鏡頭突變的方法檢測效果并不明顯。所以需要一些方法的組合來實現(xiàn)漸變鏡頭邊界檢測,例如二次幀差法,利用重復幀差值的計算提高漸變鏡頭邊界檢測效率。還可以利用像素差法與直方圖法的結合來實現(xiàn),不僅可以達到好的漸變檢測效果,還能消除攝像機及目標運動對結果的影響?;蛘卟捎弥狈綀D幀差的均值與方差變化來找出漸變鏡頭邊界?,F(xiàn)階段視頻鏡頭邊界檢測算法有很多,但其中大部分不能普遍適用于不同類型的
21、視頻鏡頭,或者僅僅只針對某一類視頻鏡頭中的某一種鏡頭變換,而且這些算法大都對攝像機與物體的運動以及閃光比較敏感,容易出現(xiàn)誤檢與漏檢。本文所采用的方法為基于連續(xù)幀相減的像素差法和直方圖相減法。這兩種方法對于閾值的依賴性較強。如何選擇一個合適的閾值是應用這兩種方法進行鏡頭邊界檢測最關鍵的一個問題,選取的閾值是否合適直接影響著鏡頭邊界檢測的結果。如果選取的閾值過大,會造成漏檢,而閾值太小又會造成誤檢。并且不同類型的視頻需要選擇不同的閾值,很難有一個統(tǒng)一的標準。1.7 性能標準通常,在視頻鏡頭邊界檢測中,要用查全率和準確率兩個概念還衡量檢測算法的檢測精度,這兩個概念定義如下:另外,在鏡頭邊界檢測中還有
22、兩個參數(shù)經(jīng)常被用到,即漏檢率和誤檢率:(1)漏檢率=1-查全率(2)誤檢率=1-查準率第二章 視頻數(shù)據(jù)結構MATLAB簡介在所有的多媒體數(shù)據(jù)類型中,視頻數(shù)據(jù)是最復雜的。因為它所包含的內容比較多,其中不僅包括每個視頻幀圖像的內容,還有鏡頭中目標的運動信息以及隨時間變化的信息。正因為視頻數(shù)據(jù)自身特點如此,所以對視頻數(shù)據(jù)的處理顯得異常艱難。MATLAB可以實現(xiàn)對數(shù)字視頻的讀取以及將數(shù)字視頻分離為幀并用數(shù)字圖像處理工具箱對其進處理。2.1 視頻數(shù)據(jù)結構2.1.1 視頻數(shù)據(jù)特點視頻是對于人類來講,是非常重要的信息源。因為視頻是動態(tài)幀序列的組合,所以它與普通圖像有所不同,除了靜態(tài)圖像可以表示的內容以外,它
23、還包括鏡頭中目標運動的信息以及目標隨時間變化的信息,因此對于視頻數(shù)據(jù)結構的研究很有必要,意義重大。通常來講,視頻所包含的信息量非常大,并且結構也很特殊,例如每一秒視頻包含24幀圖像,而且內容多種多樣,同時每個人對于所看到的內容理解不同,所以對于視頻很難有一個確切的描述與解釋。2.1.2 視頻數(shù)據(jù)的表示視頻數(shù)據(jù)的信息量非常大,所以需要以多種方式來描述視頻數(shù)據(jù)。視頻數(shù)據(jù)本身就有很多屬性,包括像素位置、顏色紋理、形狀以及運動等。因為視頻是一系列視頻圖像幀的集合,所以對視頻數(shù)據(jù)的表示與分析從本質上講也是通過圖像特征對視頻圖像幀進行分析。所以對視頻數(shù)據(jù)的處理也依賴于這些特征,視頻數(shù)據(jù)處理的過程就是對這些
24、視頻圖像幀特征的提取?;叶戎狈綀D也是視頻圖像的一個重要屬性,灰度直方圖是灰度級的函數(shù),它表示圖像中具有某種灰度級的像素的個數(shù),反映了圖像中某種灰度出現(xiàn)的頻率。運動特征、形狀和視頻圖像像素位置對于視頻也是非常重要的屬性,但是這些屬性的提取一般來說比較困難,本文只對視頻圖像幀的像素位置屬性和灰度直方圖屬性作研究。2.1.3 視頻數(shù)據(jù)處理結構在處理視頻數(shù)據(jù)時,需要將視頻數(shù)據(jù)分成視頻、場景、鏡頭和幀四層結構來表示,便于表示其中內容。其中,視頻圖像幀是視頻結構的最底層。視頻圖像處理是一個從最底層開始不斷對視頻進行描述,逐步直到高層表達的過程。而對幀圖像的處理達到鏡頭邊界檢測,使鏡頭分割是對視頻處理的一個
25、基礎操作。2.2 MATLAB簡介2.2.1 MATLAB組成1、MATLAB主包(1)MATLAB語言 MATLAB語言是一種面向對象的程序設計語言,其中包含有各種函數(shù)、控制語句、數(shù)據(jù)類型以及數(shù)據(jù)的輸出功能。(2)句柄圖形 句柄圖形是MATLAB的圖形系統(tǒng)。句柄圖形中擁有用于處理二維和三維數(shù)字圖形的各種指令和高低級命令。(3)MATLAB應用程序接口(API) API是MATLAB程序所提供的,以便于和其他的高級語言進行相互連接的一個互動對接函數(shù)庫,各種語言之間通過對MAT文件的讀寫來實現(xiàn)數(shù)據(jù)信息的相互交流。2、MATLAB工具箱 MATLAB工具箱從功能上看,可以將他們分為學科性的工具包和
26、功能性的工具包兩大部分。其中和圖像處理相關的那些工具箱放在了功能性的工具包中。這些工具能夠十分簡單快捷的對圖像做一些常見的處理工作,例如圖像增強和圖像復原等操作。2.2.2 MATLAB主要特點1、 工作平臺環(huán)境友好MATLAB由一系列工具組成。這些工具大多使用圖形用戶界面,使得用戶對MATLAB軟件中和各種文件及函數(shù)的調用非常方便。2、 程序語言簡單易用MATLAB是一種高級語言,用戶可以根據(jù)實際需要自主的選擇將輸入語句和執(zhí)行命令進行同步處理,也可以先單獨的編寫出每一個應用程序文件,最后再將它們連接起來一起執(zhí)行以完成一個復雜的程序功能。3、 出色的圖形處理功能MATLAB本身具有強大的數(shù)據(jù)可
27、視化功能,能夠方便的將數(shù)據(jù)矩陣轉換成圖形表現(xiàn)出來,特別是在本文所研究的視頻鏡頭邊界檢測應用中,可以方便的使用戶看到具體哪一幀為鏡頭邊界。2.2.3 MATLAB圖像處理工具箱本文所用的MATLAB為MATLAB R2011a。MATLAB提供的圖像處理工具箱提供了很多非常方便的函數(shù)。在視頻處理方面,MATLAB用于讀取視頻的函數(shù)有好多,例如mmreader,Videoreader,aviread和mpgread。本文所用的是aviread,但是aviread對于視頻格式讀取有限制,只能讀取未經(jīng)壓縮的avi視頻和一定壓縮格式的avi視頻。如本文中使用的視頻羅馬假日,MATLAB就不能正常讀取。需
28、要使用WinAVI進行解壓縮,輸出為RGB24格式,才能正常讀取。在本文中,一個1.5M大小的視頻經(jīng)過解壓縮處理后輸出大小為260M左右。這同時也暴露了本文所討論方法的局限性,因為現(xiàn)在大多數(shù)視頻都是經(jīng)過壓縮處理的,如果先解壓,再用本文所討論方法,容易造成時間的浪費。第三章 視頻鏡頭突變檢測3.1 國內外研究現(xiàn)狀本文中的鏡頭突變檢測就是檢測視頻序列中像素點數(shù)目變化與直方圖幀差變化的峰值點,也就是內容變化程度的最大處。首先介紹一下一些典型的視頻鏡頭突變檢測方法。(1)直接利用視頻圖像幀間像素差的方法它是最簡單的計算幀間差的方法,原理也很簡單,具體操作過程如下:由于人眼是以像素為單位來辨別圖象的相似
29、度或者差異度的,兩幀圖像在同一位置上相同像素點的個數(shù)越多,這兩幀圖像就越相似。由此,提出基于連續(xù)幀相減的像素差法。該方法主要原理就是判斷相鄰圖像幀中發(fā)生變化的像素點的多少。首先統(tǒng)計兩幅圖像對應像素點變化率超過閾值F1的像素點個數(shù)。然后,將變化的像素點個數(shù)與第二個預定的閾值F2比較,如果超過范圍,則認為這兩幀之間發(fā)生較大變化,判斷其為鏡頭邊界。由于考慮到了視頻圖像幀的像素位置信息,所以對于視頻鏡頭的檢測比較精確,但是這種方法的主要缺點是對于攝像機及目標運動比較敏感,容易出現(xiàn)誤檢與漏檢。經(jīng)常采用的一種方法是:使用濾波器來降低視頻圖像幀噪聲,在比較一幀的每個像素前,用它的鄰近區(qū)域的平均值來代替,這也
30、過濾了輸入圖像的一些噪聲。(2) 基于連續(xù)幀直方圖相減的方法基于直方圖的方法也是利用視頻圖像幀間差進行鏡頭邊界檢測的方法。具體操作過程如下:首先計算連續(xù)兩幀圖像的直方圖,然后統(tǒng)計相鄰兩幀中所有像素在不同灰度上的分布差異,即直方圖相減。當差異的累加值超過閾值T時,即檢測到鏡頭邊界?;谥狈綀D的方法雖然對于攝像機及目標運動不敏感,但它忽略了幀內的空間變化,所以有可能造成鏡頭邊界的誤檢與漏檢。因為可能存在兩個圖像有類似的直方圖但卻具有完全不同的內容。不過,這種事件的概率是足夠低的。(3) 基于塊的鏡頭邊界檢測算法由于前面兩種方法對于攝像機及目標運動比較敏感,所以我們需要一種方法能夠提高算法對局部運動
31、的容忍度?;趬K的鏡頭邊界檢測算法就可以達到這個目的。它的原理與基于連續(xù)幀相減像素差法類似,所不同的是,這種算法將圖像進行分塊,然后將相鄰幀所對應的塊進行比較,統(tǒng)計變化率超過閾值F1的個數(shù)。當個數(shù)超過閾值F2時,即標為視頻鏡頭邊界。3.2 連續(xù)幀相減MATLAB實現(xiàn)3.2.1 MATLAB程序流程圖i=i+1k=1jhj=1計算像素點變化率e提取幀x(i)與x(i-1),并灰度轉換iframesi=2讀取視頻序列,獲取幀高h,幀寬w,總幀數(shù)frames 假j=j+1kw假e25%存入數(shù)組mmw*h*7%輸出幀號圖3.1 MATLAB程序流程圖3.2.2 連續(xù)幀相減原理由于人眼是以像素為單位來辨
32、別圖象的相似度或者差異度的,兩幀圖像在同一位置上相同像素點的個數(shù)越多,這兩幀圖像就越相似。由此,提出基于連續(xù)幀相減的像素差法。該方法主要原理就是判斷相鄰圖像幀中發(fā)生變化的像素點的多少。首先統(tǒng)計兩幅圖像對應像素點變化率超過閾值F1的像素點個數(shù)。然后,將變化的像素點個數(shù)與第二個預定的閾值F2比較,如果超過范圍,則認為這兩幀之間發(fā)生較大變化,判斷其為鏡頭邊界。 3.2.3 連續(xù)幀相減程序實現(xiàn)圖3.2 視頻羅馬假日突變鏡頭部分視頻幀程序代碼:info=aviinfo(E:Hepburn.avi);%錄入AVI視頻的相關信息mov=aviread(E:Hepburn.avi);%讀入視頻frames=s
33、ize(mov,2);%獲取視頻中的幀總數(shù)w=info.Width;%幀寬h=info.Height;%幀高 m=zeros(frames,1);for i=2:frames x=mov(i-1).cdata(:,:,:); y=mov(i).cdata(:,:,:); a=rgb2gray(x); b=rgb2gray(y); %c=im2double(a); %d=im2double(b); e=abs(a-b)./(a+b); for j=1:h for k=1:w if e(j,k)0.25 %對于突變檢測,像素點變化率閾值可選范圍較大 m(i)=m(i)+1; end end end
34、 if m(i)h*w*0.07%閾值設為總像素點數(shù)的7% disp(i-1); end endn=1:frames;plot(n,m);xlabel(幀數(shù),FontWeight,bold);ylabel(像素點變化數(shù),FontWeight,bold);title(連續(xù)幀相減,FontSize,12,FontWeight,bold,FontName,隸書)圖3.3 連續(xù)幀相減運行結果圖程序運行結果:程序輸出結果為37,110。即第37幀和110幀為鏡頭突變邊界。并且由圖3.3可以看出37與38幀與110與111幀像素差遠遠超出其它相鄰幀像素差。將視頻打成幀圖像,查看第37幀與110幀。程序運行
35、結果正確,第37幀與110幀確實為鏡頭突變邊界。3.2.4 連續(xù)幀相減優(yōu)點與缺點優(yōu)點: 在計算兩視頻幀圖像的幀間差時考慮到了像素的位置關系,因此計算的圖像幀間差較為精確。缺點:對攝像機運動敏感,如放縮、平移。對視頻序列內物體的運動同樣敏感。解決辦法:通過濾波器的使用來降低攝像機及目標運動的干擾,提高算法對于攝像機及目標運動的容忍度。在比較一幀的每個像素前,用它的鄰近區(qū)域的平均值來代替,這也過濾了輸入圖像的一些噪聲。3.3 直方圖相減MATLAB實現(xiàn)3.3.1 MATLAB程序流程圖讀取視頻序列,獲取幀高h,幀寬w,總幀數(shù)framesi=2iframes 提取幀x(i)與x(i-1),并灰度轉換
36、計算x(i)與x(i-1)直方圖幀差g(i)計算幀差累積和計算閾值(累積和的11%左右)g(i)thi=i+1 假輸出幀號圖3.4 MATLAB程序流程圖3.3.2 直方圖相減原理基于直方圖的方法也是利用視頻圖像幀間差進行鏡頭邊界檢測的方法。它的原理也很簡單,具體操作過程如下:首先計算連續(xù)兩幀圖像的直方圖,然后統(tǒng)計相鄰兩幀中所有像素在不同灰度上的分布差異,即直方圖相減。當差異的累加值超過閾值T時,即檢測到鏡頭邊界。3.3.3 直方圖相減程序實現(xiàn)圖3.5 視頻羅馬假日突變鏡頭部分視頻幀程序代碼:info=aviinfo(E:Hepburn.avi);%錄入AVI視頻的相關信息mov=avirea
37、d(E:Hepburn.avi);%讀入視頻frames=size(mov,2);%獲取視頻中的幀總數(shù)w=info.Width;%幀寬h=info.Height;%幀高% for x=1:frames% mov=aviread(E:Hepburn.avi,x);% I=mov.cdata;% J=rgb2gray(I);%轉成灰度圖% imwrite(J,strcat(int2str(m),.,bmp);%將視頻打成幀圖像% endfor i=2:frames x=mov(i-1).cdata(:,:,:);%讀取視頻幀 y=mov(i).cdata(:,:,:); a=rgb2gray(x)
38、;%轉成灰度圖 b=rgb2gray(y); e=imhist(a); f=imhist(b); g(i)=sum(abs(e-f);%直方圖幀差 k=sum(g); th=k*0.11;%閾值設定為差異累加值的11% if g(i)th disp(i-1);%輸出幀號 endendh=1:frames;plot(h,g);%直方圖幀差圖xlabel(幀數(shù),FontWeight,bold);ylabel(直方圖幀差,FontWeight,bold);title(直方圖相減,FontSize,12,FontWeight,bold,FontName,隸書)圖3.6 直方圖相減程序運行結果圖3.3.
39、4 直方圖相減優(yōu)點與缺點優(yōu)點:基于直方圖的方法對于攝像機及目標運動不是特別敏感,因為它沒有考慮圖像幀的位置信息,忽略了幀內的空間變化。缺點:這種方法有可能造成漏檢,因為有可能出現(xiàn)兩個圖像有類似的直方圖但卻是完全不同的內容。然而,這種事件的概率是足夠低。第四章 漸變檢測4.1 國內外研究現(xiàn)狀漸變鏡頭邊界是指一個鏡頭漸漸過渡到另一個鏡頭,鏡頭之間會有一些空間或時間上的編輯效果,包括淡入淡出,溶解等。它的主要特點是漸變過程中相鄰兩幀圖像變化相對較小,所以漸變過程通常為幾幀到十幾幀。與鏡頭突變只有一種不同的是,漸變包括許多種方式,如淡入淡出、溶解等。鏡頭漸變檢測可以單獨進行,也可以和鏡頭突變檢測同時進
40、行。目前鏡頭突變檢測已經(jīng)比較成熟,但是鏡頭漸變檢測還存在一些問題。下面對可以進行鏡頭漸變檢測的方法作一簡單介紹:(1)雙閾值比較法這個方法就是根據(jù)視頻幀間差與閾值的關系達到檢測鏡頭邊界的目的,既可以檢測突變鏡頭邊界也可以檢測漸變鏡頭邊界。因為基于連續(xù)幀幀間差的方法有很多,例如本文中所用的基于連續(xù)幀相減的像素差法和直方圖相減法。檢測漸變鏡頭邊界與突變鏡頭邊界唯一不同的是閾值的選取不同。一般來說,只計算相鄰幀的幀間差,對于漸變鏡頭邊界的檢測來講,有一種方法就是當幀間差超過閾值F1時,標記為漸變起始幀,然后接下來每一幀都與起始幀作差,以此來判定鏡頭邊界。(3) 直方圖交集法直方圖交集法是利用兩個視頻
41、圖像幀直方圖交集來檢測視頻鏡頭邊界的。與其它利用幀間差檢測視頻鏡頭邊界方法不同的是,直方圖交集是檢測連續(xù)兩個視頻圖像幀相似度的。它的原理也比較簡單,具體實現(xiàn)過程如下,首先計算連續(xù)兩幀的直方圖,然后計算直方圖交集,當連續(xù)兩個視頻圖像幀的相似度小于閾值F1時,則判定出現(xiàn)鏡頭邊界。(3)其它方法的組合在實際中,經(jīng)常需要將突變鏡頭與漸變鏡頭放在一起檢測。在進行鏡頭漸變檢測時,用檢測鏡頭突變的方法檢測效果并不明顯。所以需要一些方法的組合來實現(xiàn)漸變鏡頭邊界檢測,例如二次幀差法,利用重復幀差值的計算提高漸變鏡頭邊界檢測效率。還可以利用像素差法與直方圖法的結合來實現(xiàn),不僅可以達到好的漸變檢測效果,還能消除攝像
42、機及目標運動對結果的影響?;蛘卟捎弥狈綀D幀差的均值與方差變化來找出漸變鏡頭邊界。4.2 連續(xù)幀相減MATLAB實現(xiàn)圖4.1 視頻羅馬假日漸變鏡頭部分視頻幀程序代碼:info=aviinfo(E:奧黛麗赫本.avi);%錄入AVI視頻的相關信息mov=aviread(E:奧黛麗赫本.avi);%讀入視頻frames=size(mov,2);%獲取視頻中的幀總數(shù)w=info.Width;%幀寬 h=info.Height;%幀高m=zeros(frames,1);for i=2:frames x=mov(i-1).cdata(:,:,:); y=mov(i).cdata(:,:,:); a=rgb
43、2gray(x); b=rgb2gray(y); %c=im2double(a); %d=im2double(b); e=abs(a-b)./(a+b); for j=1:h for k=1:w if e(j,k)0.25 %對于突變檢測,閾值可選范圍較大(任意) m(i)=m(i)+1; end end end if m(i)h*w*0.02 disp(i-1); end endn=1:frames;plot(n,m);xlabel(幀數(shù),FontWeight,bold);ylabel(像素點變化數(shù),FontWeight,bold);title(連續(xù)幀相減,FontSize,12,FontW
44、eight,bold,FontName,隸書)程序運行結果:111,即第111幀為視頻鏡頭邊界。圖4.2 連續(xù)幀相減程序運行結果圖4.3 直方圖相減MATLAB實現(xiàn)圖4.3 視頻羅馬假日漸變鏡頭部分視頻幀程序代碼:info=aviinfo(E:奧黛麗赫本.avi);%錄入AVI視頻的相關信息mov=aviread(E:奧黛麗赫本.avi);%讀入視頻frames=size(mov,2);%獲取視頻中的幀總數(shù)w=info.Width;%幀寬h=info.Height;%幀高% for x=1:frames% mov=aviread(E:Hepburn.avi,x);% I=mov.cdata;%
45、 J=rgb2gray(I);%轉成灰度圖% imwrite(J,strcat(int2str(m),.,bmp);%將視頻打成幀圖像% endfor i=2:frames x=mov(i-1).cdata(:,:,:);%讀取視頻幀 y=mov(i).cdata(:,:,:); a=rgb2gray(x);%轉成灰度圖 b=rgb2gray(y); e=imhist(a); f=imhist(b); g(i)=sum(abs(e-f);%直方圖幀差 k=sum(g); th=k*0.03;%閾值設定為差異累加值的3% if g(i)th disp(i-1);%輸出幀號 endendh=1:f
46、rames;plot(h,g);%直方圖幀差圖xlabel(幀數(shù),FontWeight,bold);ylabel(直方圖幀差,FontWeight,bold);title(直方圖相減,FontSize,12,FontWeight,bold,FontName,隸書)程序運行結果為:111,即第111幀為視頻鏡頭漸變邊界。圖4.4 直方圖相減程序運行結果圖結論現(xiàn)在,視頻的大量使用,使得視頻內容檢索成為現(xiàn)階段的主要問題。所以鏡頭邊界檢測算法的研究也越來越重要。大部分鏡頭邊界為突變鏡頭邊界,少部分為漸變鏡頭邊界。突變鏡頭邊界算法已比較成熟,漸變鏡頭邊界檢測還沒有一個普遍適用的方法。本文主要用基于連續(xù)幀
47、相減的像素差法和直方圖相減法進行鏡頭邊界檢測。本文首先介紹了關于視頻鏡頭邊界的一些基本概念,包括場景、鏡頭以及幀等。緊接著介紹了視頻鏡頭邊界的概念,視頻鏡頭邊界檢測算法的分類,視頻鏡頭邊界檢測的過程以及主要方法、存在的問題等。還有視頻鏡頭邊界檢測算法的性能指標等。第二章主要對視頻數(shù)據(jù)結構的特點以及表示作了介紹,并對MATLAB作了簡要介紹。本文主要使用的方法為基于MATLAB連續(xù)幀相減的像素差法和直方圖相減法。第三章主要對解壓縮域突變鏡頭的主要方法及MATLAB實現(xiàn)作了介紹。使用連續(xù)幀相減法時,設定當連續(xù)幀對應像素值變化率超過25%時,即判定像素點發(fā)生變化。當發(fā)生變化的像素點數(shù)大于總像素點數(shù)的
48、7%時,即判定為鏡頭邊界。然后又使用了直方圖相減法對突變鏡頭邊界進行檢測,當連續(xù)幀幀差超過累計直方圖幀差和的11%時,即判定為鏡頭邊界。當使用這兩種方法對羅馬假日進行檢測時,檢測結果良好,第37幀和第110幀為突變鏡頭邊界,幀間差遠遠超過閾值。第四章主要對解壓縮漸變鏡頭的主要方法及MATLAB實現(xiàn)作了介紹。本文中漸變鏡頭邊界的檢測與突變鏡頭邊界檢測唯一的不同就是閾值的不同,基于連續(xù)幀相減的像素差法閾值設定為總像素點數(shù)的2%,超過這個閾值就判定為鏡頭邊界。利用直方圖相減法進行檢測時,閾值設定為累積直方圖幀差的3%。當超過這個閾值時,即判定為漸變鏡頭邊界。當使用這兩種方法對羅馬假日進行檢測時,檢測
49、結果良好,第111幀為漸變鏡頭邊界。最后,對全文進行了總結,以及所使用方法的結果作了一個總結性的討論。參考文獻1 周品,李曉東.MATLAB數(shù)字圖像處理.北京.清華大學出版社.2012:2 劉文萍,李也白,張常年.視頻鏡頭邊緣檢測技術.計算機工程與應用.2006.21:3 郭阿弟.鏡頭邊界檢測方法的研究.蘭州大學.2009.4 孟祥如.視頻鏡頭邊界檢測的研究.沈陽工業(yè)大學.2009.5 韓冰.視頻鏡頭邊界檢測方法研究.西安電子科技大學.2004.6 楊倩.視頻鏡頭邊界檢測算法的研究.太原理工大學.2012.7 袁小娟.視頻鏡頭邊界檢測算法的研究.武漢工業(yè)學院.2010.8 葛寶.視頻鏡頭邊界檢
50、測研究.西北大學.2004.9 劉謙雷,楊綠溪,鄒采榮.用于視頻鏡頭突變切換檢測的二次差分法和像素點匹配二次差分法.中國圖象圖形學報.2008.第8卷(A版).第2期.10 岡薩雷斯.數(shù)字圖像處理中文版課件.11 Jordi Mas and Gabriel Fernandez.VIDEO SHOT BOUNDARY DETECTION BASED ON COLOR HISTOGRAM.12 王沫然.MATLAB與科學計算.北京.電子工業(yè)出版社.200313 高展宏,徐文波.基于MATLAB的圖像處理案例教程.北京.清華大學出版社.2011.14 趙書蘭.MATLABR2008數(shù)字圖像處理與分析實例教程.北京.化學工業(yè)出版社.2009.15 牛顥,丁春利,張明,唐博.視頻鏡頭邊緣檢測算法研究與比較.計算機應用研究.第30卷第2期.16 劉政凱,湯曉鷗.視頻檢索中鏡頭分割方法綜述.計算機工程與應用.2002.23.17 王保雄,余松煜.視頻檢索中的鏡頭邊界檢測.紅外與激光工程.第29卷第5期.18 印勇,侯海珍.基于直方圖幀差的自適應鏡頭分割算法.計算機工程與應用.2010,46(9).19 丁洪麗,陳懷新.基于累積直方圖的視頻鏡頭邊界檢測方法.電訊技術.第48卷第3期.20 華維東.視頻實驗報告.謝辭畢業(yè)論文終于要定稿了,要感謝的人有很多。在從開始寫作到最終完
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 二零二五年度農(nóng)村土地租賃協(xié)議模板(農(nóng)業(yè)產(chǎn)業(yè)升級)
- 二零二五年度農(nóng)村宅基地交易合同協(xié)議書(農(nóng)村土地流轉市場建設)2篇
- 2025年度租賃代售房屋廣告推廣服務合同2篇
- 二零二五年度體育場館兼職教練員聘用協(xié)議3篇
- 2025年度農(nóng)村養(yǎng)殖場智能監(jiān)控系統(tǒng)租賃協(xié)議2篇
- 二零二五年度農(nóng)機作業(yè)與農(nóng)村電商物流服務合同3篇
- 二零二五年度公寓樓出租合同樣本(含精裝修、家具家電及物業(yè)費)3篇
- 二零二五年度婚慶行業(yè)獨家競業(yè)禁止授權書3篇
- 2025年度幼兒園后勤保障與設施租賃承包合同3篇
- 2025年農(nóng)村舊房屋買賣與土地承包經(jīng)營權合同3篇
- 事業(yè)單位年度考核方案
- 2024年土地管理法
- 醫(yī)學統(tǒng)計學:醫(yī)學統(tǒng)計學課后習題答案
- 框架玻璃幕墻施工工藝
- 2024年福建省投資開發(fā)集團有限責任公司招聘筆試參考題庫含答案解析
- 23秋國家開放大學《法律職業(yè)倫理》形考任務1-3參考答案
- 中等職業(yè)學校2024年中等職業(yè)教育質量年度報告
- 2023-2024學年福建省廈門市思明區(qū)重點中學七年級(上)期末數(shù)學試卷(含解析)
- 《測量管理體系培訓》課件
- 手機繳費收款授權委托書
- 2024版幼兒園課件《兒童的一百種語言》
評論
0/150
提交評論