張?zhí)煨?/p>
(福建船政交通職業(yè)學(xué)院 信息工程系,福建 福州 350007)
基于PDE的視頻圖像數(shù)據(jù)快速預(yù)處理方法
張?zhí)煨?/p>
(福建船政交通職業(yè)學(xué)院 信息工程系,福建 福州 350007)
通過人手識別跟蹤模擬實驗,研究基于偏微分方程方法(PDE)的視頻圖像數(shù)據(jù)快速預(yù)處理方法.實驗根據(jù)顏色模型,利用邊緣信息、顏色信息和圖像的幀差對人手進行分離,并在邊緣檢測部分,提出簡單背景環(huán)境下基于PDE概率統(tǒng)計的一種檢測方法,減少了邊緣檢測的時間,實現(xiàn)了視頻圖像數(shù)據(jù)的快速預(yù)處理.
PDE;圖像預(yù)處理;邊緣檢測;圖像去噪;二值化
視頻圖像處理是當(dāng)今計算機科學(xué)最重要的應(yīng)用之一,其處理技術(shù)廣泛應(yīng)用于人工智能、視頻遙感、自動化控制、多媒體設(shè)計等多個領(lǐng)域,并且隨著數(shù)學(xué)理論的發(fā)展而日漸成熟.它最基本的工作是圖像恢復(fù)和圖像重建,其中圖像預(yù)處理是其極其重要的一個步驟.
目前,在視頻圖像預(yù)處理階段,運用最多的是圖像分割和圖像邊緣檢測兩種做法.本文主要通過人手識別跟蹤模擬實驗,研究基于偏微分方程方法PDE(partial differential equations) 的視頻圖像數(shù)據(jù)快速預(yù)處理方法.實驗中利用邊緣信息、顏色信息和圖像的幀差對人手進行分離,并在邊緣檢測部分,提出一個在簡單背景環(huán)境下基于PDE概率統(tǒng)計的檢測方法,減少了邊緣檢測的時間,實現(xiàn)了視頻圖像數(shù)據(jù)的快速預(yù)處理.
本處理方法從顏色模型出發(fā),對常規(guī)基于灰度的邊緣檢測算法做了部分修改,充分應(yīng)用了圖像的彩色信息對目標(biāo)圖像進行邊緣檢測,并提出了一種自適應(yīng)的二值化閾值確定方法對邊緣檢測后的結(jié)果進行二值化.在自適應(yīng)局部閾值的計算中,提出了優(yōu)化的計算方法,可以快速獲得閾值.最后輔以人手的顏色信息,獲得了在簡單背景下可接受的邊緣檢測結(jié)果.
目前,大部分人手識別跟蹤系統(tǒng)是通過檢測手的膚色,將人手在圖像中的可能區(qū)域定位出來.然而,由于實際物理器件性能的限制以及周圍環(huán)境光的影響,即使經(jīng)過大量顏色訓(xùn)練得到的顏色判定方法,也未必能十分準確地得到結(jié)果[1].不同攝像頭的感光性能不同,在一個攝像頭上訓(xùn)練出的結(jié)果未必適合于另一個攝像頭.另外,不同的背景環(huán)境光線,會造成膚色的偏移現(xiàn)象.要解決這些問題,理論方面比較復(fù)雜,仍然在不斷研究中,并且實現(xiàn)代價太大,使用起來未必效果很好.因此有些應(yīng)用結(jié)合了邊緣檢測以及手的運動的連續(xù)圖像的前后差異來解決這個問題.本文設(shè)計的人手識別模擬實驗主要選擇了邊緣檢測的方式來識別人手.
2.1 顏色模型
作為一個視頻圖像處理的應(yīng)用程序,顏色模型是不可避免的話題.在多媒體計算機圖像處理中,由于不同的應(yīng)用目的,人們?yōu)榭梢姽饨⒃S多模型,不同的模型是針對不同類型的應(yīng)用而設(shè)計的,它們沒有本質(zhì)的不同,無論哪種模型,都是為了能按照既定的目的,正確地進行圖像處理工作.比較常見的模型有RGB(red-green-blue)模型、HSI(hue-saturation-intensity)模型、YCbCr模型等,本文主要使用RGB模型和HSI模型兩個模型,其中RGB模型將紅、綠、藍3種顏色歸一化處理成一個單位立方體,通過調(diào)節(jié)不同顏色分量的比例,表示出不同的顏色,主要用于描述檢測圖像信息的色彩空間.而HSI顏色模型從色調(diào)、飽和度、光強度3個維度出發(fā)對RGB模型進一步推導(dǎo),使檢測出的顏色空間形狀描述更接近人對顏色的理解,主要應(yīng)用于各類面向色彩處理的領(lǐng)域.
2.2 邊緣檢測
眾所周知,視頻采集系統(tǒng)采集動態(tài)圖像實際上是以每秒24張圖片以上的速率進行采集,并同時連續(xù)顯示出來,這一系列圖片在人眼看來,就是動態(tài)的圖像[2].在微軟提供的AMCAP視頻捕獲程序中,對Video capture pin的設(shè)置中可以看到,系統(tǒng)接口提供的采集速率(fr/s)為:6、12、15、18、20、25、30,這就是攝像頭能夠支持的采集速率.不同攝像頭的采集能力不同,顯示的值也不盡相同,速率越高,看到的圖像連續(xù)性越好.在具體處理時,本文設(shè)計的邊緣檢測的處理對象是由攝像頭采集到的每一張靜態(tài)圖片.
使用邊緣檢測的方法,顏色的偏差對檢測結(jié)果帶來的影響就小得多.邊緣檢測技術(shù)方法是多種多樣的,用的比較多的做法是首先將圖像平滑去噪聲,然后用邊緣檢測算子進行檢測,接著設(shè)定一定的閾值,將滿足閾值限制要求的像素提取出來,獲得檢測結(jié)果[3].某些算法還通過Canny算法中的遲滯性過程,對檢測結(jié)果加以優(yōu)化.本實驗對以上這些步驟進行一定的修改,以提高靈活性和準確性.主要包括:去噪聲、算子操作以及二值化3個部分.下面分別進行闡述.
2.2.1 去噪聲
PDE給出了圖像的連續(xù)模型,使得算法的合成十分自然,使同時去除噪聲和保護邊緣的方案易于操作.最值得注意的是PDE方法能夠得到具有較好的穩(wěn)定性和質(zhì)量的圖像,特別是對具有突變邊緣、角點、信號連續(xù)性較差的圖像和動態(tài)圖像[4],利用PDE去噪的過程就是采用具有各向同性的高斯函數(shù)作為卷積核,對圖像進行平滑處理.仿生學(xué)中對動物眼睛的研究驗證了類似功能的存在,并且這也是常用的方式,差別在于標(biāo)準差大小的選擇,而目前還沒有統(tǒng)一的選擇標(biāo)準,本文選擇了這種方式.高斯函數(shù)的形式如下:
(1)
假設(shè)輸入圖像為G(x,y),輸出圖像為H(x,y),符號?為卷積操作,
H(x,y)=G(x,y)?f(x,y).
(2)
在實驗中發(fā)現(xiàn),若尺度過小,則平滑的效果有限;而尺度過大,則會模糊掉邊緣,同時產(chǎn)生邊緣變形的問題.為了盡可能地保持邊緣的原始信息,本實驗系統(tǒng)選擇了用小尺度進行平滑,盡量保持圖像的原始局部信息.之所以選擇用小尺度平滑,還有另一個原因——后面的邊緣提取操作是基于統(tǒng)計方法進行的,也具備一定的去噪聲的功能,本步驟的去噪聲操作是為了使最終結(jié)果得到進一步的改善.
2.2.2 邊緣檢測算子及操作
為了方便實現(xiàn)邊緣的提取操作,人們推導(dǎo)了一系列的邊緣檢測算子,例如Robert算子、Prewitt算子、Sobel算子、拉普拉斯算子等.這些算子作用在灰度圖像上,算子和對應(yīng)的像素進行加權(quán)計算就可以得出中心像素的值.
但是,這樣一來,色調(diào)和飽和度信息就被排除在考慮范圍之外.根據(jù)日常經(jīng)驗,灰度、色調(diào)和飽和度在人感知色彩的時候是不可分割的3個部分,在不同情況下,不同的分量起到不同的作用.在決定物體邊緣的時候,根據(jù)分量所占的權(quán)重,應(yīng)該考慮以下形式的加權(quán)變量d.
假設(shè)Wi(i=1,2,3)為權(quán)重dg表示灰度的變化,dc表示色調(diào)的變化,ds表示飽和度的變化,
d=w1dg+w2dc+w3ds.
(3)
可以換一個角度考慮這個問題,在顏色空間中,某個點與坐標(biāo)軸原點的連線是一個向量,這個向量與3個坐標(biāo)軸分別有3個夾角.隨著這個點在顏色空間中的運動,3個夾角開始發(fā)生變化.這是一個特性,夾角的變化就體現(xiàn)了權(quán)重的變化.顏色空間的兩個點之間的差距,可以理解為兩個向量的差.HSI空間如此,RGB空間也是如此.
回過頭來觀察一下這些算子,以3×3大小的Prewitt算子為例,它分為水平算子和垂直算子兩個算子.水平算子計算出來的結(jié)果等效于對應(yīng)模板中心.
值的像素最終計算結(jié)果是將該像素在水平方向相鄰的兩個像素做差分計算,同樣垂直算子計算出來的結(jié)果等效于該像素垂直相鄰的兩個像素做差分計算.
于是,將數(shù)值差分更改為向量差分,向量差分的結(jié)果就是兩個向量差的模.這樣就完成了在彩色空間直接應(yīng)用邊緣檢測算子的任務(wù).
假設(shè)對一個3×3模板做一個編號,編號用兩個下標(biāo)表示,第一個下標(biāo)表示列,分別為1、2、3,第二個下標(biāo)表示行,分別為1、2、3,dh為水平算子的計算結(jié)果,dv為垂直算子的計算結(jié)果,R為顏色向量,d為該像素與相鄰像素的差別,那么這個計算的表述如下,
(4)
這種更改,相當(dāng)于將原圖分解成R、G、B 3個通道分別檢測后進行合成.在實際的室內(nèi)簡單場景中,本算法與Canny算法的比較結(jié)果見圖1.這里的Canny算法代碼(C代碼)是從網(wǎng)絡(luò)上下載的,在該代碼中,高斯過程的模板為{0.000 1,0.001 8,0.021 5,0.096 5,0.159 2,0.096 5,0.021 5,0.001 8,0.000 1},檢測函數(shù)中的3個原始參數(shù)nGrayLevel, dPercentNotEdge, dTHRatio分別為64,0.7,0.4,本比較過程中將其第二個參數(shù)改為0.93,在這種室內(nèi)簡單環(huán)境中效果明顯改善,結(jié)果放在第3列中.本算法閾值下限設(shè)為80.
從效果上看,本算法的結(jié)果未必比下載的算法差很多,差距基本在弱邊緣即模棱兩可的邊緣附近,其中第二組圖片是在極昏暗情況下攝像頭自適應(yīng)增強的圖片,可以看出,下載的代碼出現(xiàn)了錯誤的多重邊緣,而本算法沒有發(fā)生這樣的錯誤.同時,下載算法中調(diào)用時要求給出邊緣像素在圖片像素中占比的參數(shù),而本算法不需要.從運行時間上看,下載算法處理圖片的平均時間為60 ms,本算法平均時間為30 ms,節(jié)省一半時間.可見本算法還算是有效的,并且后續(xù)處理中,本算法的結(jié)果是足夠用的.
圖1 本算法與Canny算法的檢測結(jié)果比較Fig.1 Comparison of measuring result between the suggested and Canny algorithm
2.2.3 圖像二值化
經(jīng)過邊緣檢測算子對圖像的上述處理后,需要進一步對圖像進行二值化,才能最終得到邊緣信息.
二值化圖像實際上就是對圖像設(shè)定閾值,對于滿足閾值約束的像素被最終標(biāo)記為邊緣,不滿足約束的像素被丟棄.在一幅二值化圖像中,非邊緣的像素標(biāo)記為0,邊緣像素標(biāo)記為1.在這一步驟中,閾值的設(shè)定是至關(guān)重要的,直接關(guān)系到二值化結(jié)果的好壞.在本次實驗中,設(shè)置了兩個閾值,一個是固定閾值,一個是浮動閾值,這種方法表現(xiàn)較好.
首先考慮在一幅理想的經(jīng)過邊緣算子處理過的圖像G中,背景的值為Min,實際邊緣處的像素值為Max.要分割這二者,閾值t的取值范圍為Min (5) 假設(shè)E是圖像G中各點值的數(shù)學(xué)期望,g是G中取值高于E的像素的數(shù)學(xué)期望與E的差.顯然有 (6) 因而 Min (7) 令 t=E+g. (8) 將式(8)代入式(5)就得到一個完整的邊緣判別式. 在這種理想的圖像中,t能正確地分割出邊緣與背景.可以想象,在這幅圖像中,如果背景不是單一的取值為Min,而是由于紋理和若干噪聲的存在而造成若干的起伏,剔除掉低于E的那部分起伏像素,那么這種起伏中高于E的像素不會太多,如果此時邊緣取值明顯高于背景,那么t將在E和Max之間更偏向Max,背景像素仍然可以被過濾掉. 隨著起伏程度的增加,直到高于E的背景像素的數(shù)量明顯超過邊緣像素的數(shù)量,并且這些像素的方差開始增大到一定程度時,t才會出現(xiàn)明顯的錯誤劃分,將非邊緣部分錯誤判別為邊緣. 實驗表明,在背景中存在大量復(fù)雜而明顯的紋理時,這種劃分方法才會出現(xiàn)明顯的錯誤,一般的人工環(huán)境,t都能工作得較好. 在實際圖像中,由于光線強弱不同,往往會導(dǎo)致有些邊緣變得很微弱,如果采用全局的t,會導(dǎo)致這些弱邊緣被忽略,而有些背景像素的值又被光線增強,造成錯誤.因此可以將t局部化,在一個范圍較小,但是又含有的像素數(shù)量能滿足統(tǒng)計方法的要求即可(比如16×16的范圍).此外,對于環(huán)境中人眼感覺比較光滑,但實際上像素值有一定差別的背景,可以設(shè)置一個閾值下限tg,低于這個下限的像素,全部標(biāo)記為背景.這樣,上述邊緣判別標(biāo)準可以修改成如下形式 (9) 2.2.4 算法的效率問題 按照2.2.3所述,局部閾值的確定需要以每個像素為中心,統(tǒng)計一個16×16的窗口后才能得出結(jié)果,處理一幅圖像算法復(fù)雜度為O(N2×M2),以一幅320×240大小的圖片為例,統(tǒng)計一個像素,需要訪問512個像素(第一次掃描這256個像素,得到數(shù)學(xué)期望,第二次掃描這256個像素,得到高于數(shù)學(xué)期望那部分像素的數(shù)學(xué)期望,前后總共相當(dāng)于訪問了512個像素),整幅圖像訪問像素的次數(shù)就達到了39 321 600次.這個算法貌似非常耗時,實際上由于很多像素的訪問是重復(fù)工作,稍做近似并給予優(yōu)化,效率可以提高許多,算法復(fù)雜度變成O(N2),即掃描3次圖像,就能得出結(jié)果.由于是統(tǒng)計結(jié)果,實際算法并不是針對每個像素做統(tǒng)計工作,而是設(shè)定一個小步長,跳躍著統(tǒng)計,具體優(yōu)化算法如下. 1)將整幅圖像分割為一系列8×8的小塊.每個小塊、該塊的右邊相鄰的小塊、下方相鄰的小塊以及右下方的小塊總共4個小塊構(gòu)成一個大塊.每個小塊用兩個變量表示,一個為E8,一個為g8.每4個小塊構(gòu)成的大塊對應(yīng)兩個變量,一個為E16,一個為g16. 2)掃描一次圖像,做累加,可以得到每個小塊對應(yīng)的E8以及每個大塊對應(yīng)的E16. 3)對圖像做第二次掃描,對每個高于E的像素值,將其與E的差做累加,得到每個小塊對應(yīng)的g8以及每個大塊對應(yīng)的g16. 4)最后掃描一次圖像,對于像素值高于E16+g16的像素,標(biāo)記為邊緣,否則標(biāo)記為背景. 需要說明的是,在圖像的最右邊列小塊其右邊沒有像素,它的E和g可以參照其左邊列相鄰的小塊;同樣,在圖像最下方一行的小塊,由于它的下方?jīng)]有其他像素,它的E和g參照其上方相鄰的小塊. 2.2.5 顏色的利用 雖然單純使用邊緣檢測方法可以得出所需要的結(jié)論,但是為了后期優(yōu)化,提高處理速度的需要,還可以引入顏色區(qū)分方法,其方法采用的是MICHAEL等[5]提到的簡單判別式方法. 假設(shè)紅、綠、藍分別用R、G、B表示,3個判別參數(shù)分別為P1、P2、P3見式(10),皮膚顏色的判別式見式(11). 這里皮膚顏色的檢測不是為了人手區(qū)域的可能位置定位,前面提到,本次實驗使用的是邊緣檢測的方式檢測人手,檢測皮膚顏色的意義在于:在實踐中發(fā)現(xiàn),由于光線原因,人手邊緣附近往往與手中心的顏色有一定的差別,這樣檢測出來的區(qū)域往往不覆蓋手的邊緣.而當(dāng)手離攝像頭較近的時候,手上的紋理就會在檢測結(jié)果中呈現(xiàn)出來,這些對于尋找邊緣是明顯無用的干擾信息,通過識別顏色,可將它們從檢測結(jié)果中過濾掉,以提高檢測速度. (10) (11) 2.2.6 單像素邊緣的獲取 由于邊緣是圖像中變化較強烈的像素,這種變化往往不是理想的突變,而是在一個局部范圍內(nèi)發(fā)生的漸變,因此由以上算法得出的結(jié)果,往往不是單像素邊緣,而是粗線條的邊緣,為了后期處理方便,需要對以上結(jié)果求局部極大值,即對圖像求偏導(dǎo),則單邊緣滿足 (12) 實際計算中,鄰域大小選擇為3個像素左右基本夠用. 圖2是本算法對兩張實際圖片的處理結(jié)果示例,左邊是原始圖像,右邊是檢測結(jié)果. 圖2 原始圖像的單像素邊緣示例Fig.2 Example of original images’ outline plotted by single pixel 圖像的邊緣檢測工作是圖像預(yù)處理過程中最重要的一個步驟,其檢測速度和檢測準確性直接影響圖像預(yù)處理效率.本文設(shè)計的圖像預(yù)處理方法,圖像邊緣檢測工作對檢測速度和檢測準確性兩個矛盾做了折中處理,利用PDE模型對常規(guī)的邊緣檢測算法進行了一定的修改,并充分應(yīng)用圖像的彩色信息快速實現(xiàn)了對目標(biāo)圖像的邊緣檢測.人手識別跟蹤模擬實驗時,完成一個總流程花費80 s,而圖像預(yù)處理只占了30 s.事實證明,該方法經(jīng)濟有效,在簡單背景下能以較小時間代價快速實現(xiàn)質(zhì)量達標(biāo)的圖像預(yù)處理. [1] 齊蘇敏,黃賢武,劉家盛. 利用基于顏色的自適應(yīng)形狀模型實現(xiàn)手勢跟蹤[J]. 計算機應(yīng)用研究, 2008, 25(2): 485-487. [2] 王修暉,鮑虎軍. 基于自適應(yīng)遺傳算法的手勢識別[J]. 計算機輔助設(shè)計與圖形學(xué)學(xué)報,2007, 19(8): 1 056-1 062. [3] 張力娜,李小林.張順利.基于PDE的圖像分解于邊緣檢測的一種新方法[J]. 科學(xué)技術(shù)與工程,2012, 12(22): 1 671-1 815. [4] 蔣淑靜,黑保琴,張九星,等.基于PDE的自適應(yīng)各向異性圖像配準方法研究[J].通信學(xué)報,2013,34(5): 192-199. [5] MICHAEL I, ANDREW B. Condensation-conditional Density Propagation for Visual Tracking[J]. International Journal of Computer Vision, 1998, 29(1): 5-28. 聲 明 為擴大本刊及作者知識信息交流渠道,加強知識信息推廣力度,本刊已許可CNKI(中國知網(wǎng))及其系列數(shù)據(jù)庫、萬方數(shù)據(jù)資源系統(tǒng)數(shù)據(jù)化期刊群、維普中文科技期刊數(shù)據(jù)庫等,以數(shù)字化方式復(fù)制、匯編、發(fā)行、信息網(wǎng)絡(luò)傳播本刊全文.該著作權(quán)使用費及相關(guān)稿酬,本刊均用于作者文章發(fā)表、出版、推廣交流(含信息網(wǎng)絡(luò)),以及贈送樣刊等用途,不再另行向作者支付.凡作者向本刊提交文章發(fā)表之行為即視為同意我刊上述聲明. 河南教育學(xué)院學(xué)報編輯部 Fast Preprocessing Method of Video Image Data Based on PDE ZHANG Tianxing (FujianChuanzhengCommunicationsCollege,DepartmentofInformationEngineering,Fuzhou350007,China) A fast preprocessing method of video image data based on partial differential equation method (PDE) is studied by means of hand identification and tracking simulation experiment. Color model based experiments were carried out to separate the human hand by use of edge information, color information and image frame. On the edge detection part, the detection method based on PDE probability statistics are put forward under a simple background environment,which reduces the time of edge detection to realize the fast preprocessing of video image data. PDE; image preprocessing; edge detection; image denoising; binarization 2015-09-07 福建省教育廳B類科技項目(JB14144) 張?zhí)煨?1977—),女,福建福州人,福建船政交通職業(yè)學(xué)院信息工程系講師. 10.3969/j.issn.1007-0834.2015.04.012 TN911.73 A 1007-0834(2015)04-0043-063 小結(jié)