亚洲成年人黄色一级片,日本香港三级亚洲三级,黄色成人小视频,国产青草视频,国产一区二区久久精品,91在线免费公开视频,成年轻人网站色直接看

一種手勢(shì)識(shí)別方法

文檔序號(hào):6633739閱讀:176來源:國(guó)知局
一種手勢(shì)識(shí)別方法
【專利摘要】本發(fā)明提供了一種手勢(shì)識(shí)別方法,首先通過對(duì)用戶圖像進(jìn)行邊緣檢測(cè),根據(jù)當(dāng)前圖像和背景圖像的邊緣檢測(cè)結(jié)果,確定出當(dāng)前圖像相對(duì)于背景圖像中的運(yùn)動(dòng)區(qū)域,接下來通過膚色識(shí)別確定出用戶的手部位置,然后根據(jù)各幀圖像中用戶的手部位置的移動(dòng)軌跡,確定用戶的手勢(shì)。本發(fā)明的手勢(shì)識(shí)別方法在不增加硬件的情況下可以減少光照等外部條件影響對(duì)用戶手部位置的識(shí)別,從而在不增加成本的情況下提高了手勢(shì)識(shí)別的準(zhǔn)確率。
【專利說明】一種手勢(shì)識(shí)別方法

【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及圖像識(shí)別【技術(shù)領(lǐng)域】,具體而言,涉及一種手勢(shì)識(shí)別方法。

【背景技術(shù)】
[0002]電視機(jī)等視頻設(shè)備由于用戶都是遠(yuǎn)距離觀看,因此大都使用遙控器操作,隨著產(chǎn)品的智能化越來越高,使用遙控器的操作方式已經(jīng)不能滿足用戶的需求。手勢(shì)控制作為一種新型的控制方式,逐漸被應(yīng)用于控制電視機(jī)等產(chǎn)品上。
[0003]目前較為典型的手勢(shì)識(shí)別技術(shù)是利用攝像頭對(duì)拍攝圖像,通過對(duì)圖像進(jìn)行膚色識(shí)另IJ,識(shí)別出用戶的手部,然后根據(jù)手部的形態(tài)和位移確定用戶的手勢(shì)。手勢(shì)識(shí)別技術(shù)實(shí)現(xiàn)了手部信息的捕捉以及手部信息到命令的轉(zhuǎn)換,但現(xiàn)有的手勢(shì)識(shí)別方法存在一些缺陷,由于膚色識(shí)別主要是對(duì)拍攝到的圖像的色彩進(jìn)行識(shí)別,而色彩本身受到外界光線的影響較大,而電視機(jī)本身又是發(fā)光的,這些光線照射到用戶身上會(huì)使用戶膚色發(fā)生變化,這種影響在夜晚表現(xiàn)的尤為明顯。在這種情況下,膚色識(shí)別的準(zhǔn)確度會(huì)降低,從而使得手勢(shì)識(shí)別的準(zhǔn)確率較低。現(xiàn)有技術(shù)為了解決這一問題,通常使用其他硬件對(duì)人體進(jìn)行檢測(cè),例如輔助攝像頭、紅外傳感器等進(jìn)行輔助識(shí)別,但是這種方法的缺點(diǎn)是顯而易見的:增加了硬件成本。


【發(fā)明內(nèi)容】

[0004]本發(fā)明提供了一種手勢(shì)識(shí)別方法,在不增加硬件的情況下,提高了手勢(shì)識(shí)別的準(zhǔn)確率。
[0005]具體的,本發(fā)明提供了一種手勢(shì)識(shí)別方法,包括:
接收當(dāng)前幀圖像;
對(duì)當(dāng)前幀圖像和預(yù)先設(shè)定的背景圖像進(jìn)行邊緣檢測(cè);
將兩幀圖像的邊緣檢測(cè)結(jié)果進(jìn)行比較,獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域;
對(duì)當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域進(jìn)行膚色識(shí)別,確定當(dāng)前幀圖像中手部的位置;
根據(jù)當(dāng)前幀圖像及前后各幀圖像中手部的位置確定用戶的手部運(yùn)動(dòng)軌跡,根據(jù)所述手部運(yùn)動(dòng)軌跡對(duì)用戶的手勢(shì)進(jìn)行識(shí)別。
[0006]優(yōu)選的,所述將兩幀圖像的邊緣檢測(cè)結(jié)果進(jìn)行比較,獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域包括:計(jì)算當(dāng)前幀圖像邊緣點(diǎn)和背景圖像邊緣點(diǎn)的豪斯多夫距離,根據(jù)兩組邊緣點(diǎn)點(diǎn)集之間的豪斯多夫距離獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域。
[0007]優(yōu)選的,所述計(jì)算當(dāng)前幀圖像邊緣點(diǎn)和背景圖像邊緣點(diǎn)的豪斯多夫距離,根據(jù)兩組邊緣點(diǎn)點(diǎn)集之間的豪斯多夫距離獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域包括:
將背景圖像和當(dāng)前幀圖像劃分為若干個(gè)大小相等的子區(qū)域,計(jì)算當(dāng)前幀圖像中每個(gè)子區(qū)域中圖像邊緣點(diǎn)與背景圖像中對(duì)應(yīng)的子區(qū)域的豪斯多夫距離;
計(jì)算每個(gè)子區(qū)域的豪斯多夫距離與第一閥值的差值,將差值大于所述第一閥值的子區(qū)域確定為當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域。
[0008]優(yōu)選的,所述計(jì)算當(dāng)前幀圖像邊緣點(diǎn)和背景圖像邊緣點(diǎn)的豪斯多夫距離,根據(jù)兩組邊緣點(diǎn)點(diǎn)集之間的豪斯多夫距離獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域包括步驟:
a、將背景圖像和當(dāng)前幀圖像劃分為若干個(gè)大小相等的子區(qū)域,計(jì)算當(dāng)前幀圖像中每個(gè)子區(qū)域中圖像邊緣點(diǎn)與當(dāng)前幀圖像中對(duì)應(yīng)的子區(qū)域的豪斯多夫距離;
b、將每個(gè)子區(qū)域的豪斯多夫距離與第一閥值作比較,若該差值大于第一閥值,則保留該子區(qū)域,否則去除;
C、對(duì)每個(gè)保留的子區(qū)域進(jìn)一步劃分為若干個(gè)大小相等的小塊,計(jì)算每個(gè)小塊的豪斯多夫距離,將每個(gè)小塊的豪斯多夫距離與對(duì)應(yīng)的閥值作比較,若該差值大于該閥值,則保留該小塊,否則去除;
d、重復(fù)步驟C,直至單個(gè)小塊包括的像素點(diǎn)小于預(yù)先設(shè)定的數(shù)量;
e、將所有保留的小塊圖像確定為當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域。
[0009]優(yōu)選的,所述計(jì)算當(dāng)前幀圖像中每個(gè)子區(qū)域中圖像邊緣點(diǎn)與背景圖像中對(duì)應(yīng)的子區(qū)域的豪斯多夫距離包括:計(jì)算當(dāng)前幀子區(qū)域中每個(gè)邊緣點(diǎn)與背景圖像中對(duì)應(yīng)子區(qū)域中的最近的邊緣點(diǎn)的歐式距離,將該距離中的最大值確定為該子區(qū)域的豪斯多夫距離。
[0010]優(yōu)選的,所述計(jì)算當(dāng)前幀圖像中每個(gè)子區(qū)域中圖像邊緣點(diǎn)與背景圖像中對(duì)應(yīng)的子區(qū)域的豪斯多夫距離包括:
計(jì)算當(dāng)前幀子區(qū)域中每個(gè)邊緣點(diǎn)與背景圖像中對(duì)應(yīng)子區(qū)域中的最近的邊緣點(diǎn)的歐式距離,將該距離中的最大值記為該子區(qū)域的第一豪斯多夫距離;
計(jì)算背景圖像子區(qū)域中每個(gè)邊緣點(diǎn)與當(dāng)前幀對(duì)應(yīng)子區(qū)域中的最近的邊緣點(diǎn)的歐式距離,將該距離中的最大值記為該子區(qū)域的第二豪斯多夫距離;
將第一豪斯多夫距離和第二豪斯多夫距離中的最大值確定為該子區(qū)域的豪斯多夫距離。
[0011]優(yōu)選的,所述對(duì)當(dāng)前幀圖像進(jìn)行邊緣檢測(cè)包括:獲得當(dāng)前幀圖像的灰度圖像,對(duì)所述灰度圖像進(jìn)行邊緣檢測(cè)。
[0012]優(yōu)選的,所述獲得當(dāng)前幀圖像的灰度圖像,對(duì)所述灰度圖像進(jìn)行邊緣檢測(cè),包括:對(duì)所述灰度圖像進(jìn)行鄰域平均濾波,對(duì)濾波后的灰度圖像進(jìn)行邊緣檢測(cè)。
[0013]優(yōu)選的,所述根據(jù)當(dāng)前幀圖像及前后各幀圖像中手部的位置確定用戶的手部運(yùn)動(dòng)軌跡包括:計(jì)算當(dāng)前幀圖像及前后各幀圖像中手部的質(zhì)心位置,根據(jù)每幀圖像中手部的質(zhì)心位置確定確定用戶的手部運(yùn)動(dòng)軌跡。
[0014]優(yōu)選的,所述根據(jù)每幀圖像中手部的質(zhì)心位置確定確定用戶的手部運(yùn)動(dòng)軌跡包括:將每幀圖像中手部的質(zhì)心位置坐標(biāo)經(jīng)過至少一次B樣條擬合,獲得手部的運(yùn)動(dòng)軌跡曲線。
[0015]本發(fā)明的實(shí)施例首先通過對(duì)用戶圖像進(jìn)行邊緣檢測(cè),根據(jù)當(dāng)前圖像和背景圖像的邊緣檢測(cè)結(jié)果,確定出當(dāng)前圖像相對(duì)于背景圖像中的運(yùn)動(dòng)區(qū)域,運(yùn)動(dòng)區(qū)域檢測(cè)可以將用戶圖像中靜止的部分或者是運(yùn)動(dòng)不明顯的部分去除,這樣可以方面的去除掉除用戶本身之外的其他圖像內(nèi)容,同時(shí)由于用戶的面部動(dòng)作一般幅度較小,因此也可以通過此步驟去除。由于背景及用戶面部等區(qū)域已經(jīng)被去除,因而接下來通過膚色識(shí)別就可以準(zhǔn)確的確定出用戶的手部位置,然后根據(jù)各幀圖像中用戶的手部位置的移動(dòng)軌跡,確定用戶的手勢(shì)。這樣,就可以減少光照等外部條件影響對(duì)用戶手部位置的識(shí)別,從而在不增加成本的情況下提高了手勢(shì)識(shí)別的準(zhǔn)確率。

[0016]

【專利附圖】

【附圖說明】
[0017]圖1是本發(fā)明實(shí)施例的一種手勢(shì)識(shí)別方法的示意圖;
圖2是本發(fā)明實(shí)施例的優(yōu)選的一種手勢(shì)識(shí)別方法的示意圖;
圖3是本發(fā)明實(shí)施例的當(dāng)前幀圖像邊緣點(diǎn)和背景圖像邊緣點(diǎn)之間的豪斯多夫距離的計(jì)算方法的示意圖;
圖4是本發(fā)明實(shí)施例的每個(gè)小塊中前幀圖像邊緣點(diǎn)和背景圖像邊緣點(diǎn)之間的豪斯多夫距離的計(jì)算方法的示意圖。
[0018]

【具體實(shí)施方式】
[0019]為了能夠更清楚地理解本發(fā)明的上述目的、特征和優(yōu)點(diǎn),下面結(jié)合附圖和【具體實(shí)施方式】對(duì)本發(fā)明進(jìn)行進(jìn)一步的詳細(xì)描述。
[0020]在下面的描述中闡述了很多具體細(xì)節(jié)以便于充分理解本發(fā)明,但是,本發(fā)明還可以采用其他不同于在此描述的其他方式來實(shí)施,因此,本發(fā)明并不限于下面公開的具體實(shí)施例的限制。
[0021]圖1是根據(jù)本發(fā)明的實(shí)施例的手勢(shì)識(shí)別方法的流程圖。
[0022]如圖1所示,根據(jù)本發(fā)明的實(shí)施例的手勢(shì)識(shí)別方法可以包括以下步驟:
步驟102,接收用戶圖像;
具體的,這里的用戶圖像是連續(xù)的用戶圖像,例如視頻。用戶圖像可以通過攝像頭拍攝獲得。一般情況下,攝像頭獲得的用戶圖像都是RGB圖像。
[0023]步驟104,對(duì)當(dāng)前幀圖像和預(yù)先設(shè)定的背景圖像進(jìn)行邊緣檢測(cè);
具體的,這里的背景圖像是預(yù)先設(shè)定的,可以是當(dāng)前幀圖像前面的任一一幀圖像。背景圖像可以是固定某幀圖像,例如接收到的第I幀圖像,第3幀圖像;也可以按照某種規(guī)則確定,例如每隔幾幀重新確定一個(gè)背景圖像;也可以將滿足某種條件的圖像幀作為背景圖像,例如當(dāng)檢測(cè)到有運(yùn)動(dòng)物品時(shí),將有運(yùn)動(dòng)物品的第I幀作為背景圖像。
[0024]邊緣檢測(cè)的算法可以是Sobel算子算法、Robert算子算法或Canny算法等等,本發(fā)明實(shí)施例不做限制。
[0025]為了使邊緣檢測(cè)的結(jié)果更為準(zhǔn)確,本實(shí)施例可優(yōu)選的對(duì)圖像進(jìn)行平滑處理,平滑處理可以有效的去除圖像中的噪點(diǎn),這樣邊緣檢測(cè)的結(jié)果更為準(zhǔn)確。進(jìn)一步的,為了減少邊緣檢測(cè)的運(yùn)算量,也可以先將圖像的灰度信息提取出來,獲得灰度圖像,這樣,只需要根據(jù)圖像的亮度進(jìn)行邊緣檢測(cè)的計(jì)算。
[0026]步驟106,將兩幀圖像的邊緣檢測(cè)結(jié)果進(jìn)行比較,獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域; 步驟104對(duì)背景圖像和當(dāng)前幀圖像進(jìn)行了邊緣檢測(cè),得到兩幀圖像的所有邊緣點(diǎn),這些邊緣點(diǎn)分別組成兩個(gè)邊緣點(diǎn)集,將兩組圖像的邊緣點(diǎn)集進(jìn)行比較,即可判斷出當(dāng)前幀圖像相對(duì)于背景圖像,哪些部分發(fā)生了變化,變化的部分即為當(dāng)前幀相對(duì)于背景圖像的運(yùn)動(dòng)區(qū)域。例如通過聚類、或者使用主動(dòng)輪廓線跟蹤法提取等。
[0027]步驟108,對(duì)當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域進(jìn)行膚色識(shí)別,確定當(dāng)前幀圖像中手部的位置;
在實(shí)際應(yīng)用中,由于圖像中的運(yùn)動(dòng)目標(biāo)可以包括很多方面,例如用戶的頭部運(yùn)動(dòng),手中的物品,或者是其他運(yùn)動(dòng)的物體等等。為了對(duì)用戶的手勢(shì)進(jìn)行識(shí)別,就需要對(duì)用戶的手部進(jìn)行識(shí)別。
[0028]一般的手部識(shí)別都是先通過膚色識(shí)別去除掉除人體膚色,這樣保留下來的圖像中可能包括用戶的面部、手部及裸露的其他部位等,需要通過其他方法進(jìn)一步確定用戶的手部。本實(shí)施例中,由于步驟106對(duì)運(yùn)動(dòng)目標(biāo)的輪廓進(jìn)行了提取,而在實(shí)際應(yīng)用中,用戶面部的動(dòng)作都比較小,可以在步驟106中進(jìn)行剔除,這樣,在一般情況下,本實(shí)施例通過膚色識(shí)別就可以直接識(shí)別出用戶的手部。
[0029]步驟110,根據(jù)當(dāng)前幀圖像及前后各幀圖像中手部的位置確定用戶的手部運(yùn)動(dòng)軌跡,根據(jù)所述手部運(yùn)動(dòng)軌跡對(duì)用戶的手勢(shì)進(jìn)行識(shí)別。
[0030]在每幀圖像中的用戶手部位置確定之后,通過將每幀圖像中用戶的手部位置按照時(shí)間順序排列,即可獲得用戶的手部運(yùn)動(dòng)軌跡,通過用戶的手部運(yùn)動(dòng)軌跡,即可識(shí)別出用戶的手勢(shì)。
[0031]以上對(duì)本發(fā)明的手勢(shì)識(shí)別方法進(jìn)行了總體的說明,下面通過具體的實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)的說明。
[0032]圖2所示為一種本發(fā)明實(shí)施例的手勢(shì)識(shí)別方法的流程圖。
[0033]步驟202,接收用戶圖像,初始化第一幀圖像為背景圖像。
[0034]在接收到用戶圖像時(shí),需要獲取每幀圖像的寬度、高度、存放圖像的指針等信息。
[0035]步驟204,對(duì)圖像進(jìn)行預(yù)處理。
[0036]為了減少圖像的邊緣檢測(cè)計(jì)算量并提高邊緣檢測(cè)的準(zhǔn)確度,本發(fā)明實(shí)施例通過以下過程對(duì)圖像進(jìn)行前期處理:
(I)獲取每幀用戶圖像的灰度圖像。攝像頭拍攝的用戶圖像一般都是RPG格式,通過亮度提取即可獲得一幀灰度圖像,具體過程不再贅述。
[0037](2)對(duì)獲得的灰度圖像進(jìn)行鄰域平均濾波,消除圖像的噪聲信號(hào)。一般的圖像由于光線或者攝像器材本身的原因,拍攝的圖像會(huì)存在一些噪點(diǎn),這些噪點(diǎn)可能對(duì)后續(xù)的處理會(huì)造成影響,因此,本發(fā)明實(shí)施例通過對(duì)圖像進(jìn)行鄰域平均濾波來消除圖像的噪聲信號(hào)。
[0038]步驟206,對(duì)預(yù)處理后的圖像進(jìn)行邊緣檢測(cè)。
[0039]步驟208,求當(dāng)前巾貞圖像邊緣點(diǎn)和背景圖像邊緣點(diǎn)之間的Hausdorff距離(豪斯多夫距離),根據(jù)這兩組點(diǎn)集之間的Hausdorff距離關(guān)系獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域。
[0040]下面以分辨率為400*300的圖像為例對(duì)該步驟進(jìn)行詳細(xì)說明:
圖3是步驟208的一個(gè)具體實(shí)現(xiàn)過程,如圖3所示:
步驟2081,把當(dāng)前幀圖像和背景圖像分成若干小塊,依次計(jì)算當(dāng)前幀圖像和背景圖像相對(duì)應(yīng)的每塊小圖像的hausdorff距離,將每個(gè)小塊的hausdorff距離與一個(gè)預(yù)先設(shè)定的閥值作比較,若大于該閥值,則保留該小塊的圖像,負(fù)責(zé)剔除。
[0041]這里的小塊可以是矩形、十字形或其他形狀。在本例中,400*300的圖像被分成12個(gè)矩形小塊,每塊的大小為100*100。依次計(jì)算當(dāng)前幀圖像和背景圖像相對(duì)應(yīng)的每塊小圖像的hausdorff距離,將每個(gè)小塊的hausdorff距離與一個(gè)預(yù)先設(shè)定的閥值作比較,如果這個(gè)距離小于該閾值,就認(rèn)為這塊圖像內(nèi)沒有運(yùn)動(dòng)的手勢(shì)輪廓并把這塊小圖像置為黑色;如果大于一定的閾值,就把這個(gè)小圖像保存下來。對(duì)保留下來的小圖像執(zhí)行步驟2082,如果沒有保留下來的小圖像就結(jié)束。
[0042]步驟2082,將保留的小塊進(jìn)一步劃分為若干個(gè)更小的小塊,依次計(jì)算當(dāng)前幀圖像和背景圖像相對(duì)應(yīng)的每塊小圖像的hausdorff距離,將每個(gè)小塊的hausdorff距離與另一個(gè)預(yù)先設(shè)定的閥值作比較,若大于該閥值,則保留該小塊的圖像,負(fù)責(zé)剔除。
[0043]在本例中,具體的,進(jìn)一步把保留下來的100*100的小圖像分為25*25,依次求當(dāng)前幀圖像和背景圖像相對(duì)應(yīng)的每塊小圖像的hausdorff距離,如果這個(gè)距離小于一定的閾值,就認(rèn)為這塊圖像內(nèi)沒有運(yùn)動(dòng)的手勢(shì)輪廓并把這塊小圖像置為黑色;如果大于一定的閾值,就把這個(gè)小圖像保存下來。對(duì)保留下來的小圖像執(zhí)行步驟2082,如果沒有保留下來的小圖像就結(jié)束。
[0044]本例中的圖像尺寸為400*300,如果圖片的尺寸較大,需要重復(fù)步驟2082,重復(fù)將保留的圖像進(jìn)行分割,直到每個(gè)小塊小于預(yù)先設(shè)定的尺寸。
[0045]步驟2083,通過對(duì)比當(dāng)前幀圖像和背景圖像,去除掉靜止的邊緣點(diǎn)。
[0046]在本例中,具體的,再把25*25的小圖像分為5*5,依次遍歷當(dāng)前幀圖像內(nèi)的每一個(gè)小塊,找到每個(gè)小塊圖像的邊緣點(diǎn)坐標(biāo),再把這個(gè)坐標(biāo)對(duì)應(yīng)到背景圖像上,在背景圖像上如果這個(gè)點(diǎn)是邊緣點(diǎn),則認(rèn)為這個(gè)點(diǎn)在當(dāng)前幀圖像上為靜止的邊緣點(diǎn),去除掉;在背景圖像上如果這個(gè)點(diǎn)不是邊緣點(diǎn),則認(rèn)為這個(gè)點(diǎn)在當(dāng)前巾貞圖像上為運(yùn)動(dòng)的手勢(shì)輪廓點(diǎn),保留下來。
[0047]步驟2084,根據(jù)保留下來的邊緣點(diǎn)確定出運(yùn)動(dòng)區(qū)域。
[0048]在本例中,具體的,對(duì)當(dāng)前幀圖像內(nèi)保留下來的邊緣點(diǎn)畫一個(gè)最小包圍盒,將這個(gè)包圍盒的頂點(diǎn)坐標(biāo)記錄下來。
[0049]需要說明的是,圖3所示的方法是步驟208的一個(gè)優(yōu)選方案,一般情況下,本發(fā)明實(shí)施例并不需要步驟2081至2084的所有步驟。實(shí)際上,在步驟2081中,根據(jù)用戶圖像的大小,將圖像劃分為比較小的小塊,通過設(shè)定不同的閥值,即可實(shí)現(xiàn)步驟208的效果。
[0050]例如,在步驟2081中,將分辨率為400*300的圖像劃分為100個(gè)40*30的小塊,通過依次計(jì)算當(dāng)前幀圖像和背景圖像相對(duì)應(yīng)的每塊小圖像的hausdorff距離,將每個(gè)小塊的hausdorff距離與一個(gè)預(yù)先設(shè)定的閥值作比較,若大于該閥值,則保留該小塊的圖像,負(fù)責(zé)剔除。這樣,保留下來的小塊對(duì)應(yīng)的圖像即可確定為運(yùn)動(dòng)區(qū)域。
[0051]同樣的,步驟2083也是一種優(yōu)選的方案,不使用步驟2083同樣能達(dá)到步驟208的效果,當(dāng)然,步驟的多少在效果上有所不同,運(yùn)算量也有不同。
[0052]在上述步驟中,對(duì)于每個(gè)小塊中當(dāng)前巾貞圖像和背景圖像中邊緣點(diǎn)的hausdorff距離的計(jì)算有多種方法,本實(shí)施例優(yōu)選的使用以下方法實(shí)現(xiàn):
圖4所示為一個(gè)子區(qū)域或小塊中,當(dāng)前幀圖像和背景圖像中邊緣點(diǎn)的hausdorff距離的計(jì)算方法。
[0053]步驟402,獲得背景圖像和當(dāng)前幀圖像邊緣點(diǎn)集的坐標(biāo)和個(gè)數(shù)。
[0054]為了說明方便,這里將背景圖像的邊緣點(diǎn)記為Bi,將當(dāng)前幀圖像的邊緣點(diǎn)記為Ai0
[0055]步驟404,計(jì)算當(dāng)前幀圖像邊緣點(diǎn)集中的每個(gè)點(diǎn)Ai到距離此點(diǎn)最近的背景圖像邊緣點(diǎn)之間的歐氏距離,然后將該距離中的最大值作為第一 hausdorff距離,第一 hausdorff距離實(shí)際上是當(dāng)前幀圖像邊緣點(diǎn)集到背景圖像邊緣點(diǎn)集的hausdorff距離。
[0056]步驟406,計(jì)算背景圖像邊緣點(diǎn)集中的每個(gè)點(diǎn)Bi到距離此點(diǎn)最近的當(dāng)前幀圖像邊緣點(diǎn)之間的歐氏距離,然后取該距離中的最大值作為第二 hausdorff距離,第二 hausdorff距離實(shí)際上是背景圖像邊緣點(diǎn)集到當(dāng)前幀圖像邊緣點(diǎn)集的hausdorff距離。
[0057]步驟408,把第一 hausdorff距離和第一 hausdorff距離兩者中的最大值作為這兩個(gè)點(diǎn)集的hausdorff距離。
[0058]需要說明的是,上述步驟是本發(fā)明實(shí)施例的一個(gè)優(yōu)選的hausdorff距離計(jì)算方法,實(shí)際上,將通過步驟404確定的第一 hausdorff距離或步驟406確定的第二 hausdorff距離中的任--個(gè)作為兩個(gè)點(diǎn)集之間的hausdorff距離也是可以的。
[0059]上述步驟中的歐氏距離也可以是其他距離,例如像素間的直線距離,或明可夫斯基距離等。
[0060]步驟210,對(duì)當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域進(jìn)行膚色識(shí)別,得到用戶手部的位置。
[0061]一般情況下,攝像頭獲得的圖像是RGB格式的。RGB格式中的R值、G值、B值分別表示紅色、綠色和藍(lán)色的值。一般情況下,人體的膚色都是紅色占主導(dǎo),無論光照如何變化都是這樣,在圖像表現(xiàn)上,就是人體膚色的R值大于G值和B值,根據(jù)這一特點(diǎn),對(duì)R、G、B的值進(jìn)行一次篩選,剔除R值小于G值或B值的區(qū)域,只留下符合條件的色彩區(qū)域,如果沒有其他與膚色相近的顏色的干擾,這樣就可以大體上檢測(cè)出人體膚色的區(qū)域。
[0062]為了更準(zhǔn)確的識(shí)別出膚色區(qū)域,本實(shí)施例在RGB檢測(cè)的基礎(chǔ)上將圖片在YCrCb和/或HSV色彩空間中繼續(xù)進(jìn)行檢測(cè)。HSV是一個(gè)表示色相、飽和度和亮度的色彩空間,這個(gè)色彩空間的模型對(duì)應(yīng)于圓柱坐標(biāo)系中的一個(gè)圓錐形子集。在HSV顏色模型中,每一種顏色和它的補(bǔ)色相差180°。飽和度S取值從O到1,所以圓錐頂面的半徑為I。HSV顏色模型所代表的顏色域是CIE色度圖的一個(gè)子集,這個(gè)模型中飽和度為百分之百的顏色,其純度一般小于百分之百。YCrCb是表示色差的色彩空間,Cr與Cb是紅色與綠色的差和綠色與藍(lán)色的差,人體這兩個(gè)差值是有一定范圍的。HSV色彩空間中利用的H值,這個(gè)值相當(dāng)于圖像的亮度,利用色相值值可以剔除一些曝光過度引起的誤差。例如,可以將H值的范圍選擇為0.1>H>0.01; M Cr/Cb的比值范圍選擇為1.1786>Cr/Cb>0.5641,或者也可以將Cr與Cb分別計(jì)算,閾值范圍選擇為165>Cr>110、195>Cb>140,不過也可以根據(jù)實(shí)際需要進(jìn)行調(diào)整。通過這樣的檢測(cè)和篩選,同樣可以檢測(cè)出圖像中人體膚色的區(qū)域。
[0063]步驟212,通過圖像中用戶手部的位置獲得手部的質(zhì)心點(diǎn)坐標(biāo)。
[0064]手勢(shì)圖像的質(zhì)心點(diǎn)可以是手部區(qū)域形成的不規(guī)則圖像的重心,也可以是其他的點(diǎn)。本實(shí)施例可以通過一種簡(jiǎn)單的方法計(jì)算手部的質(zhì)心位置。在手部的邊緣坐標(biāo)中,選取最上面的一個(gè)點(diǎn)、最下面的一個(gè)點(diǎn),最左邊的一個(gè)點(diǎn)和最右邊的一個(gè)點(diǎn)。當(dāng)最上面的點(diǎn)為多個(gè)時(shí),優(yōu)選的選取最中間的點(diǎn),其他的三個(gè)點(diǎn)也可采用類似的方式。將最上面的坐標(biāo)點(diǎn)和最下面的點(diǎn)連線形成一個(gè)直線,最左邊的點(diǎn)和最右邊的點(diǎn)連線形成另一條直線,這兩成直線會(huì)有一個(gè)交叉點(diǎn),這個(gè)點(diǎn)即可作為手部的質(zhì)心點(diǎn)。
[0065]上面記載的質(zhì)心位置計(jì)算方法相對(duì)簡(jiǎn)單,本實(shí)施例也可使用其他方法確定手部的質(zhì)心位置,例如通過間隔選取手部邊緣的至少3個(gè)點(diǎn),將這些點(diǎn)依次連線形成一個(gè)多邊形,通過計(jì)算該多邊形的重心,將該重心位置確定為手部的質(zhì)心位置。
[0066]步驟214,根據(jù)每幀圖像的手勢(shì)圖像的質(zhì)心點(diǎn)坐標(biāo),獲得用戶的手勢(shì)運(yùn)動(dòng)軌跡。
[0067]在前面的步驟中,已經(jīng)得到了各幀圖像中用戶的手部圖像的質(zhì)心點(diǎn)坐標(biāo),這樣,根據(jù)時(shí)間順序,將每幀圖像中用戶的手部圖像的質(zhì)心點(diǎn)坐標(biāo)進(jìn)行連線,得到一個(gè)曲線,根據(jù)這一這一曲線即可獲得用戶的手勢(shì)運(yùn)動(dòng)軌跡。
[0068]在本實(shí)施例中,為了更準(zhǔn)確的確定出用戶的手勢(shì)運(yùn)動(dòng)軌跡,優(yōu)選的對(duì)由多個(gè)質(zhì)心點(diǎn)坐標(biāo)的連線進(jìn)行平滑處理,這樣可以消除曲線中的噪點(diǎn)。具體的,本實(shí)施例對(duì)上述曲線進(jìn)行B樣條擬合,例如經(jīng)過三次B樣條擬合,可以得到一個(gè)圓滑的軌跡曲線,這一軌跡曲線即可作為用戶的手勢(shì)運(yùn)動(dòng)軌跡。當(dāng)然,這里的B樣條擬合也可以是2次、I次或多次。
[0069]以上結(jié)合附圖詳細(xì)說明了根據(jù)本發(fā)明的技術(shù)方案,本發(fā)明的手勢(shì)識(shí)別方法首先通過對(duì)用戶圖像進(jìn)行邊緣檢測(cè),根據(jù)當(dāng)前圖像和背景圖像的邊緣檢測(cè)結(jié)果,確定出當(dāng)前圖像相對(duì)于背景圖像中的運(yùn)動(dòng)區(qū)域,運(yùn)動(dòng)區(qū)域檢測(cè)可以將用戶圖像中靜止的部分或者是運(yùn)動(dòng)不明顯的部分去除,這樣可以方面的去除掉除用戶本身之外的其他圖像內(nèi)容,同時(shí)由于用戶的面部動(dòng)作一般幅度較小,因此也可以通過此步驟去除。由于背景及用戶面部等區(qū)域已經(jīng)被去除,因而接下來通過膚色識(shí)別就可以準(zhǔn)確的確定出用戶的手部位置,然后根據(jù)各幀圖像中用戶的手部位置的移動(dòng)軌跡,確定用戶的手勢(shì)。這樣,就可以減少光照等外部條件影響對(duì)用戶手部位置的識(shí)別,從而在不增加成本的情況下提高了手勢(shì)識(shí)別的準(zhǔn)確率。
[0070]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例而已,并不用于限制本發(fā)明,對(duì)于本領(lǐng)域的技術(shù)人員來說,本發(fā)明可以有各種更改和變化。凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
[0071]本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn)品的流程圖和/或方框圖來描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和/或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/或方框的結(jié)合??商峁┻@些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專用計(jì)算機(jī)、嵌入式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。
[0072]這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
[0073]這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的步驟。
[0074]盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員一旦得知了基本創(chuàng)造性概念,則可對(duì)這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。
[0075]顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā)明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
【權(quán)利要求】
1.一種手勢(shì)識(shí)別方法,其特征在于,包括: 接收當(dāng)前幀圖像; 對(duì)當(dāng)前幀圖像和預(yù)先設(shè)定的背景圖像進(jìn)行邊緣檢測(cè); 將當(dāng)前幀圖像和背景圖像的邊緣檢測(cè)結(jié)果進(jìn)行比較,獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域; 對(duì)當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域進(jìn)行膚色識(shí)別,確定當(dāng)前幀圖像中手部的位置; 根據(jù)當(dāng)前幀圖像及前后各幀圖像中手部的位置確定用戶的手部運(yùn)動(dòng)軌跡,根據(jù)所述手部運(yùn)動(dòng)軌跡對(duì)用戶的手勢(shì)進(jìn)行識(shí)別。
2.根據(jù)權(quán)利要求1所述的手勢(shì)識(shí)別方法,其特征在于,所述將兩幀圖像的邊緣檢測(cè)結(jié)果進(jìn)行比較,獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域包括: 計(jì)算當(dāng)前幀圖像邊緣點(diǎn)和背景圖像邊緣點(diǎn)的豪斯多夫距離,根據(jù)兩組邊緣點(diǎn)點(diǎn)集之間的豪斯多夫距離獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域。
3.根據(jù)權(quán)利要求2所述的手勢(shì)識(shí)別方法,其特征在于,所述計(jì)算當(dāng)前幀圖像邊緣點(diǎn)和背景圖像邊緣點(diǎn)的豪斯多夫距離,根據(jù)兩組邊緣點(diǎn)點(diǎn)集之間的豪斯多夫距離獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域包括: 將背景圖像和當(dāng)前幀圖像劃分為若干個(gè)大小相等的子區(qū)域,計(jì)算當(dāng)前幀圖像中每個(gè)子區(qū)域中圖像邊緣點(diǎn)與背景圖像中對(duì)應(yīng)的子區(qū)域的豪斯多夫距離; 計(jì)算每個(gè)子區(qū)域的豪斯多夫距離與第一閥值的差值,將差值大于所述第一閥值的子區(qū)域確定為當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域。
4.根據(jù)權(quán)利要求2所述的手勢(shì)識(shí)別方法,其特征在于,所述計(jì)算當(dāng)前幀圖像邊緣點(diǎn)和背景圖像邊緣點(diǎn)的豪斯多夫距離,根據(jù)兩組邊緣點(diǎn)點(diǎn)集之間的豪斯多夫距離獲得當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域包括步驟: a、將背景圖像和當(dāng)前幀圖像劃分為若干個(gè)大小相等的子區(qū)域,計(jì)算當(dāng)前幀圖像中每個(gè)子區(qū)域中圖像邊緣點(diǎn)與當(dāng)前幀圖像中對(duì)應(yīng)的子區(qū)域的豪斯多夫距離; b、將每個(gè)子區(qū)域的豪斯多夫距離與第一閥值作比較,若該差值大于第一閥值,則保留該子區(qū)域,否則去除; C、對(duì)每個(gè)保留的子區(qū)域進(jìn)一步劃分為若干個(gè)大小相等的小塊,計(jì)算每個(gè)小塊的豪斯多夫距離,將每個(gè)小塊的豪斯多夫距離與對(duì)應(yīng)的閥值作比較,若該差值大于該閥值,則保留該小塊,否則去除; d、重復(fù)步驟c,直至單個(gè)小塊包括的像素點(diǎn)小于預(yù)先設(shè)定的數(shù)量; e、將所有保留的小塊圖像確定為當(dāng)前幀圖像的運(yùn)動(dòng)區(qū)域。
5.根據(jù)權(quán)利要求3或4所述的手勢(shì)識(shí)別方法,其特征在于,所述計(jì)算當(dāng)前幀圖像中每個(gè)子區(qū)域中圖像邊緣點(diǎn)與背景圖像中對(duì)應(yīng)的子區(qū)域的豪斯多夫距離包括: 計(jì)算當(dāng)前幀子區(qū)域中每個(gè)邊緣點(diǎn)與背景圖像中對(duì)應(yīng)子區(qū)域中的最近的邊緣點(diǎn)的歐式距離,將該距離中的最大值確定為該子區(qū)域的豪斯多夫距離。
6.根據(jù)權(quán)利要求3或4所述的手勢(shì)識(shí)別方法,其特征在于,所述計(jì)算當(dāng)前幀圖像中每個(gè)子區(qū)域中圖像邊緣點(diǎn)與背景圖像中對(duì)應(yīng)的子區(qū)域的豪斯多夫距離包括: 計(jì)算當(dāng)前幀子區(qū)域中每個(gè)邊緣點(diǎn)與背景圖像中對(duì)應(yīng)子區(qū)域中的最近的邊緣點(diǎn)的歐式距離,將該距離中的最大值記為該子區(qū)域的第一豪斯多夫距離; 計(jì)算背景圖像子區(qū)域中每個(gè)邊緣點(diǎn)與當(dāng)前幀對(duì)應(yīng)子區(qū)域中的最近的邊緣點(diǎn)的歐式距離,將該距離中的最大值記為該子區(qū)域的第二豪斯多夫距離; 將第一豪斯多夫距離和第二豪斯多夫距離中的最大值確定為該子區(qū)域的豪斯多夫距離。
7.根據(jù)權(quán)利要求1所述的手勢(shì)識(shí)別方法,其特征在于,所述對(duì)當(dāng)前幀圖像進(jìn)行邊緣檢測(cè)包括: 獲得當(dāng)前幀圖像的灰度圖像,對(duì)所述灰度圖像進(jìn)行邊緣檢測(cè)。
8.根據(jù)權(quán)利要求5所述的手勢(shì)識(shí)別方法,其特征在于,所述獲得當(dāng)前幀圖像的灰度圖像,對(duì)所述灰度圖像進(jìn)行邊緣檢測(cè),包括: 對(duì)所述灰度圖像進(jìn)行鄰域平均濾波,對(duì)濾波后的灰度圖像進(jìn)行邊緣檢測(cè)。
9.根據(jù)權(quán)利要求1所述的手勢(shì)識(shí)別方法,其特征在于,所述根據(jù)當(dāng)前幀圖像及前后各幀圖像中手部的位置確定用戶的手部運(yùn)動(dòng)軌跡包括: 計(jì)算當(dāng)前幀圖像及前后各幀圖像中手部的質(zhì)心位置,根據(jù)每幀圖像中手部的質(zhì)心位置確定確定用戶的手部運(yùn)動(dòng)軌跡。
10.根據(jù)權(quán)利要求7所述的手勢(shì)識(shí)別方法,其特征在于,所述根據(jù)每幀圖像中手部的質(zhì)心位置確定確定用戶的手部運(yùn)動(dòng)軌跡包括: 將每幀圖像中手部的質(zhì)心位置坐標(biāo)經(jīng)過至少一次B樣條擬合,獲得手部的運(yùn)動(dòng)軌跡曲線。
【文檔編號(hào)】G06K9/00GK104392210SQ201410634943
【公開日】2015年3月4日 申請(qǐng)日期:2014年11月13日 優(yōu)先權(quán)日:2014年11月13日
【發(fā)明者】王勇進(jìn), 杜堯堯, 周玉, 馮志全 申請(qǐng)人:海信集團(tuán)有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1