翟福成
(成都信息工程大學(xué) 電子工程學(xué)院,四川 成都 610225)
隨著多媒體文化的發(fā)展,視頻的數(shù)量也呈幾何式地爆炸增長,對視頻的分析和處理具有極大的意義。視頻特征提取往往是視頻處理的關(guān)鍵,有時搜集一些精彩的片段,會由于視頻播放速度太快,導(dǎo)致觀看效果不佳,可通過視頻分幀技術(shù)將動態(tài)視頻轉(zhuǎn)換為靜態(tài)圖像序列,從而一幀一幀反復(fù)觀看。顏色特征是在圖像處理中應(yīng)用最為廣泛的視覺特征,本文研究視頻分幀后每幀圖像的RGB顏色特征以及色調(diào)直方圖,通過提取圖像特征從而更好地分析圖像,進而分析與處理視頻。MATLAB軟件的功能包括數(shù)值計算和可視化圖像處理等,其功能十分強大,包含各種豐富的工具包,廣泛被應(yīng)用于圖像處理相關(guān)的領(lǐng)域研究中[1-3]。MTLAB有著極為方便的圖形用戶界面開發(fā)環(huán)境即GUIDE,其通常被用來制作人機交互性的GUI界面。GUIDE操作十分簡單,它提供了一個初始化的空白界面,用戶通過拖動控件,搭建好靜態(tài)初始界面,接著對M文件中每個控件的回調(diào)函數(shù)進行編寫,即可設(shè)計出直觀、便捷、強大的人機交互界面,實現(xiàn)預(yù)定功能。本文基于GUI工具設(shè)計出一種視頻特征提取系統(tǒng),可完成視頻分幀、圖像讀取、圖像分塊、RGB特征提取、色調(diào)直方圖繪制等功能,界面簡單,便于用戶操作。
視頻特征提取由視頻分幀、圖像分塊、RGB特征提取、色調(diào)直方圖繪制等部分組成。
1.1.1 原理介紹
視頻的本質(zhì)即為圖像,因為人眼識別的頻率即采樣率有限,無法在短時間內(nèi)依次識別多張圖像,所以在單位時間內(nèi)看到的圖像數(shù)目達到或者超過人眼的采樣率所能采到的上限數(shù)目時,給人眼造成的感覺就是畫面是運動的,這就是所謂的視頻流。而使得人眼將靜態(tài)圖像序列感受成動態(tài)視頻的頻率一般為25張圖片/秒,即25幀/秒。此頻率也就是一般人眼所能達到的最大采樣率。
1.1.2 算法步驟
使用VideoReader函數(shù)讀取視頻文件,獲得視頻總時長(秒)、視頻幀速(幀/秒)等信息;通過總時長(Duration)* 幀速(FrameRate)計算出當(dāng)前讀入視頻的總幀數(shù);通過for循環(huán)參數(shù)的設(shè)置來確定本次讀取的幀數(shù)以及讀取間隔;通過read函數(shù)獲取視頻中每一幀的信息;利用imwrite函數(shù)將視頻的每一幀保存成靜態(tài)圖片即將視頻的圖像序列進行保存。
通過以上5步,即可將任意動態(tài)視頻流轉(zhuǎn)變?yōu)殪o態(tài)的圖像序列并進行保存,方便后續(xù)研究。
如果基于全局直接進行RGB特征提取,則提取出的RGB特征只有一個,無法體現(xiàn)出圖像的顏色空間分布信息。而基于選取圖像的不同部分,分別進行RGB特征提取是對圖像全局RGB特征提取的一種改進,使得處理結(jié)果可以包含圖像的顏色空間分布信息,更有利于直觀且細(xì)致地觀察出圖像的特征信息。這種方法往往是將整幅圖像按照某種自定義方式分成若干塊,對每個塊分別計算并提取出其RGB特征信息。相比于全局RGB特征提取,分塊RGB特征提取可以更加有效地提高檢索信息的精度[5]。一般來說,圖像中要處理的目標(biāo)物體往往集中在中間部分,而邊緣部分通常是一些無關(guān)緊要的背景。因此,將圖像進行合理分塊,有助于更加快速準(zhǔn)確地尋找目標(biāo)物體,從而對其進行特征提取。分塊數(shù)量越多,信息檢索的精度越高,但計算機需要存儲的數(shù)據(jù)也就越多;如果目標(biāo)物體較大,但分塊數(shù)量較多,則會無法準(zhǔn)確檢索到目標(biāo)物體。因此,分塊的數(shù)量需要根據(jù)目標(biāo)物體的大小以及計算機系統(tǒng)的運算存儲能力加以選擇。如果目標(biāo)物體較小,而進行處理的計算系統(tǒng)也有能力進行較大的數(shù)據(jù)存儲與運算,則可以將圖像分成較多數(shù)量的塊,提升檢索性能以及對目標(biāo)物體的分析效果。本文采用傳統(tǒng)較為簡潔的3×3圖像分塊。
1.3.1 原理介紹
生活中的圖像一般均為彩色圖像,也叫作RGB圖像。任意一種顏色實際上均可以由不同比例的紅、綠、藍三種顏色混合而成,那么RGB圖像就可以由其二維位置信息和當(dāng)前位置紅、綠、藍分量的大小來唯一確定,故RGB圖像在MATLAB中通常表示為一個M*N*3的三維矩陣。
1.3.2 分量提取
由于圖像為二維信號,故RGB圖像中的第三維度實際上表示的即為顏色。當(dāng)?shù)谌S數(shù)值為1時表示紅色,第三維數(shù)值為2時表示綠色,第三維數(shù)值為3時表示藍色,故可通過下列方法提取出圖像中的紅、綠、藍三個分量。IR = Image(:,:,1);%提取紅色分量IG = Image(:,:,2);%提取綠色分量IB = Image(:,:,3);%提取藍色分量
色調(diào)與光波的波長有關(guān),它表示人的感官對不同顏色的感受,通過繪制色調(diào)直方圖可直觀地感覺出圖像所包含的色調(diào)信息。色調(diào)直方圖是指把整個色調(diào)空間等間隔劃分為若干個色調(diào)空間,然后,分別計算出圖像中每個像素塊的色調(diào)值,并依次統(tǒng)計落在每個色調(diào)區(qū)間內(nèi)的像素數(shù)量,再用每個區(qū)間內(nèi)的像素數(shù)量除以圖像像素總數(shù),便可求得圖像色調(diào)值在每個色調(diào)區(qū)間內(nèi)出現(xiàn)的頻率。建立二維空間坐標(biāo)系,橫坐標(biāo)反映色調(diào)區(qū)間,縱坐標(biāo)反映色調(diào)出現(xiàn)的概率,便可繪出色調(diào)直方圖。本文將整個色調(diào)空間劃分為16個小色調(diào)空間,也稱16bin。然而,色調(diào)直方圖由于只顯示了某一色調(diào)值出現(xiàn)的頻率,沒有顯示出此色調(diào)值所在的空間位置,因此,在實際應(yīng)用分析中,常常將圖像分塊后的特征提取和直方圖的繪制同時進行,以便觀察出圖像的空間位置分布信息以及某一特征出現(xiàn)的具體頻率信息。
圖1 技術(shù)路線
本文通過MATLAB中較為常用的GUIDE來進行GUI界面設(shè)計。設(shè)計流程通常由兩大部分組成,首先設(shè)計系統(tǒng)的初始界面,其次根據(jù)每個控件的功能編寫相應(yīng)的回調(diào)函數(shù)。具體設(shè)計步驟[6]如下:審視系統(tǒng)功能,明確設(shè)計效果;依據(jù)系統(tǒng)所需功能,構(gòu)想簡潔高效的界面初始圖;在MATLAB中輸入GUIDE,啟動GUI界面,根據(jù)構(gòu)想的界面初始圖,利用不同控件搭建靜態(tài)GUI界面;依據(jù)系統(tǒng)功能,編寫各個控件的回調(diào)函數(shù),實現(xiàn)界面的動態(tài)功能;運行界面,對界面整體功能進行檢測與調(diào)試。需要注意的是,在整個GUI界面設(shè)計的過程中,往往不能按部就班地順序執(zhí)行好每一步,經(jīng)常要在各個步驟之間反復(fù)進行,經(jīng)過多次調(diào)試才能達到預(yù)期效果。
本文提出的算法在MATLAB平臺上實現(xiàn),選取一段視頻,對其進行圖像序列獲取,繼而對獲取的圖像進行圖像分塊、RGB特征提取、色調(diào)直方圖繪制等操作,視頻特征提取系統(tǒng)的顯示結(jié)果如圖2所示。
圖2 視頻特征提取系統(tǒng)
分析圖2可知,此系統(tǒng)實現(xiàn)了視頻導(dǎo)入、獲取圖像序列、圖像導(dǎo)入、圖像3×3分塊、RGB特征提取以及色調(diào)直方圖繪制、系統(tǒng)退出等功能。由RGB特征提取結(jié)果可直觀看出圖像每塊的顏色特征,反映了顏色的空間分布特性;由色調(diào)直方圖可直觀看出圖像的整體色調(diào)特征,此圖像色調(diào)分量較多,低色調(diào)所占比重相比于高色調(diào)較大,由此可知,此圖像整體偏向于低色調(diào)。
本文基于MATLAB的GUI工具設(shè)計出一種視頻特征提取系統(tǒng),對視頻內(nèi)容的詳細(xì)分析起到了重要作用。實驗結(jié)果表明,此系統(tǒng)可完成視頻分幀、圖像導(dǎo)入、圖像分塊、RGB特征提取、色調(diào)直方圖繪制等功能,且GUI界面簡潔高效,便于用戶使用,保證用戶對視頻信息進行有效提取。由于視頻處理涉及領(lǐng)域十分廣泛,本文的研究內(nèi)容僅為視頻處理的研究打下了基礎(chǔ),如何提取出更多、更有實際應(yīng)用價值的視頻特征,是未來研究中的重點。