摘要:隨著科技的發(fā)展,各種手寫(xiě)輸入、語(yǔ)言輸入法不斷涌現(xiàn)。計(jì)算機(jī)的操作方式也越來(lái)越接近自然言語(yǔ)。手勢(shì)識(shí)別系統(tǒng)由數(shù)學(xué)攝像頭作為輸入設(shè)備,以為人體動(dòng)作為操作指令,指揮操作計(jì)算機(jī)系統(tǒng)動(dòng)作。人體動(dòng)作通過(guò)數(shù)學(xué)攝像頭,轉(zhuǎn)化為計(jì)算機(jī)能識(shí)別的二進(jìn)制圖像信息,經(jīng)過(guò)圖像處理算法,使人們的操作意圖能被計(jì)算機(jī)理解。
本文所實(shí)現(xiàn)手勢(shì)識(shí)別,利用OpenCV提供的各種圖像處理算法,將從數(shù)學(xué)攝像頭采集的圖像視頻信息,通過(guò)圖像濾波,圖像分割等算法,提取到有用的手形信息,再對(duì)其進(jìn)行輪廓特征分析,運(yùn)動(dòng)信息分析。得出圖像視頻的操作意圖,并轉(zhuǎn)化為計(jì)算機(jī)指令,傳遞給操作系統(tǒng)。實(shí)現(xiàn)了直接由人體動(dòng)作操作計(jì)算機(jī)的目的。
關(guān)鍵詞:圖像濾波;圖像分割;輪廓特征分析;OpenCV
中圖分類(lèi)號(hào):TP311.52 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1007-9599 (2012) 21-0000-03
隨著計(jì)算機(jī)技術(shù)的不斷發(fā)展,以及計(jì)算機(jī)使用的不斷普及,與計(jì)算機(jī)的交互方式也在不斷地發(fā)生著變化。手勢(shì)語(yǔ)言是一種依靠動(dòng)作和視覺(jué)進(jìn)行交流的特殊語(yǔ)言,它還是一種包含信息量最多的人體語(yǔ)言,它與語(yǔ)音和書(shū)面表語(yǔ)言等自然表達(dá)語(yǔ)言的表達(dá)能力相同。
感知物體的顯著性,可以通過(guò)物體的顏色、紋理、邊緣、形狀來(lái)進(jìn)行描述[1]。當(dāng)今感知人體語(yǔ)言識(shí)別技術(shù)比較流行并應(yīng)用在游戲操作中,稱(chēng)為體感游戲。體感游戲同樣帶有攝像頭等感應(yīng)設(shè)備,通過(guò)識(shí)別人體的肢體動(dòng)作,控制進(jìn)行游戲。一般體感游戲著重于技體操作進(jìn)行識(shí)別,對(duì)手形等細(xì)節(jié)并沒(méi)太多的處理。本文著重于對(duì)人們手形識(shí)別的研究,實(shí)現(xiàn)以手形對(duì)計(jì)算機(jī)進(jìn)行操作。
1 圖像處理基礎(chǔ)技術(shù)
1.1 手勢(shì)圖像與背景分割
圖像分割(Image segmentation)是機(jī)算機(jī)領(lǐng)域中極為重要的內(nèi)容之一,是實(shí)現(xiàn)自動(dòng)圖像分析時(shí)首先需完成的操作[2]。在現(xiàn)實(shí)環(huán)境中,由于各樣不同的背景、光線、陰暗等變化,使得手勢(shì)圖像從背景中分割出來(lái)相當(dāng)困難。
經(jīng)研究發(fā)現(xiàn),人類(lèi)皮膚的顏色在色度空間中的分布被證明是聚類(lèi)在色度空間中一個(gè)較小的區(qū)域中[3]。為了減少環(huán)境的影響,一般我們會(huì)使用HSV顏色空間來(lái)進(jìn)行了分割處理。由于HSV顏色空間中,V代表了亮度,它對(duì)就應(yīng)于全部光能且可量化為光源亮度[4]。這樣的話(huà),我們就能去除光線帶來(lái)的一部分影響。
經(jīng)過(guò)前人對(duì)圖像算法的研究,我們可以通過(guò)多種途徑對(duì)圖像手形前景與背景進(jìn)行分割:
1)基于像素顏色的分割方法;
2)基于幀差計(jì)算分割方法;
3)基于建立背景模型的分割方法。
1.2 手勢(shì)預(yù)處理
圖像去噪的一個(gè)重要任務(wù)就是去除噪聲的同時(shí)盡可能地保留圖像的邊緣和細(xì)節(jié)[5]。為了更好地對(duì)手勢(shì)區(qū)域進(jìn)行識(shí)別,需要對(duì)采集得到的圖像進(jìn)行一些處理,使得分割出來(lái)的手勢(shì)區(qū)域更加完整。
(1)圖像平滑處理
平滑處理也稱(chēng)為模糊處理,是一項(xiàng)經(jīng)常使用的圖像處理技術(shù)。OpenCV提供cvSmooth個(gè)函數(shù)實(shí)現(xiàn)了圖像平滑處理,該函數(shù)實(shí)現(xiàn)了中值濾波、高斯濾波、雙邊濾波三種濾波的方法。
(2)圖像形態(tài)濾波學(xué)
圖像形態(tài)學(xué)包括膨脹和腐蝕、開(kāi)運(yùn)算和閉運(yùn)算等。開(kāi)運(yùn)算和閉運(yùn)算作為數(shù)學(xué)形態(tài)學(xué)非常重要的運(yùn)算,不但擁有腐蝕和膨脹的功能,同時(shí)還具有本身的多項(xiàng)圖像處理和分析特征[6]。
2 算法具體實(shí)現(xiàn)
2.1 算法思路
在手勢(shì)識(shí)別系統(tǒng)中,第一步,我們希望獲取到完整的手勢(shì)形狀,根據(jù)手勢(shì)形狀輪廓特征,或者直方圖特征等,對(duì)手勢(shì)進(jìn)行識(shí)別。對(duì)于手勢(shì)的運(yùn)動(dòng)識(shí)別,更可使用幀差分圖像的方式,獲取到手勢(shì)運(yùn)動(dòng)的方向。
2.2 圖像分割算法實(shí)現(xiàn)
圖像分割算法使用CodeBook算法實(shí)現(xiàn)。和對(duì)圖像預(yù)處理相似地,我們也可以通過(guò)平滑、閾值等方法,對(duì)分割后的圖像再度進(jìn)行濾波,去噪等處理。而在對(duì)圖像分割后的結(jié)果進(jìn)行處理,使用圖像形態(tài)學(xué)進(jìn)行處理更為有效。在圖像處理基礎(chǔ)技術(shù)中,已經(jīng)討論過(guò)相關(guān)的圖像形態(tài)學(xué)方法,通常使用開(kāi)運(yùn)算或閉運(yùn)算。在存在連續(xù)噪聲雜點(diǎn)時(shí)。使用開(kāi)運(yùn)算對(duì)消降雜點(diǎn)尤為有效。
計(jì)算機(jī)光盤(pán)軟件與應(yīng)用2012年21期