專利名稱:一種基于圖像的互動(dòng)輸入控制方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及基于動(dòng)態(tài)圖像的互動(dòng)輸入控制方法及系統(tǒng),尤指一種使用攝像機(jī)或攝像頭攝取動(dòng)態(tài)圖像的互動(dòng)輸入控制方法及系統(tǒng)。
背景技術(shù):
傳統(tǒng)的計(jì)算機(jī)輸入控制裝置主要包括鍵盤、鼠標(biāo)、操縱桿(含各類方向盤、操控手柄、跳舞毯等)和定位裝置(如簡(jiǎn)單的超聲波定位系統(tǒng)、電磁式定位系統(tǒng)等)。但是,除定位裝置以外,上述所有的輸入控制裝置均需要使用者直接接觸,因此在一定程度上限制了使用者的操作空間。
對(duì)于傳統(tǒng)的定位裝置,使用者在操作時(shí)均需要佩戴與之配套的傳感器或反光球。例如,光學(xué)捕捉設(shè)備就是通過提供一定數(shù)量的專用反光球給使用者,讓他們綁定在身體的關(guān)鍵部位,然后通過若干高速攝像機(jī)捕捉并分析使用者的動(dòng)作,進(jìn)而輸出使用者身體各部位的三維坐標(biāo)及空間方向。雖然上述光學(xué)捕捉設(shè)備能提供高精度的數(shù)據(jù),但是其費(fèi)用高昂、調(diào)試復(fù)雜,因而家庭用戶無法接受。
另一方面,傳統(tǒng)的計(jì)算機(jī)游戲都是讓使用者去扮演或控制一個(gè)或多個(gè)虛擬角色來進(jìn)行游戲的,因此使用者與虛擬角色之間在視覺上是隔離的。
最后,傳統(tǒng)的計(jì)算機(jī)輸入方式均采用一臺(tái)圖像輸入設(shè)備(例如攝像頭或攝像機(jī)),因此其視野范圍狹窄。
有鑒于此,提供一種基于圖像的互動(dòng)輸入控制系統(tǒng)以克服上述缺點(diǎn)實(shí)為必要。
發(fā)明內(nèi)容
本發(fā)明的主要目的在于提供一種基于圖像的互動(dòng)輸入控制方法,可實(shí)現(xiàn)實(shí)時(shí)、互動(dòng)、靈活的輸入。
本發(fā)明的另一目的在于提供一種基于圖像的互動(dòng)輸入控制系統(tǒng),可實(shí)現(xiàn)實(shí)時(shí)、互動(dòng)、靈活的輸入。
為達(dá)到上述目的,一種基于圖像的互動(dòng)輸入控制方法,包括如下步驟進(jìn)行圖像采集;對(duì)前述采集的圖像進(jìn)行處理;對(duì)前述處理后的圖像進(jìn)行分析判斷,并得出判斷結(jié)果;對(duì)前述判斷結(jié)果進(jìn)行信號(hào)轉(zhuǎn)換,轉(zhuǎn)換為計(jì)算機(jī)可識(shí)別的信號(hào)。
在本發(fā)明中,所述圖像采集可通過一個(gè)或多個(gè)圖像輸入設(shè)備來進(jìn)行。所述對(duì)采集的圖像進(jìn)行處理的步驟包括將采集的圖像數(shù)據(jù)中的每一幀進(jìn)行縮放處理;對(duì)縮放后的圖像進(jìn)行色彩轉(zhuǎn)換處理;對(duì)色彩轉(zhuǎn)換后的圖像進(jìn)行降噪處理。
所述對(duì)處理后的圖像進(jìn)行分析判斷的步驟包括將降噪處理后的圖像進(jìn)行比較處理;將比較處理得到的圖像進(jìn)行閾值處理;將N幀(N為整數(shù))經(jīng)前述處理的圖像進(jìn)行結(jié)合;將前述結(jié)合后的圖像進(jìn)行區(qū)域判斷。在本發(fā)明中,所述方法在所述信號(hào)轉(zhuǎn)換處理后,還包括進(jìn)行圖像合成的步驟。在進(jìn)行圖像合成前,所述方法還包括判斷所述圖像輸入設(shè)備是否超過一個(gè)的步驟。
若進(jìn)行圖像采集的圖形輸入設(shè)備只有一個(gè)時(shí),則直接將計(jì)算機(jī)產(chǎn)生的虛擬圖像與采集的圖像進(jìn)行疊加;若圖形輸入設(shè)備為多個(gè),則對(duì)多個(gè)圖像輸入設(shè)備采集的圖像進(jìn)行配對(duì),并連接多個(gè)圖像輸入設(shè)備采集的圖像,最后將計(jì)算機(jī)所產(chǎn)生的虛擬圖像和經(jīng)所述連接處理后的圖像進(jìn)行疊加處理。
本發(fā)明一種基于圖像的互動(dòng)輸入控制系統(tǒng),包括圖像采樣模塊、圖像處理模塊、圖像分析模塊、信號(hào)轉(zhuǎn)換模塊。在本發(fā)明另一個(gè)實(shí)施例中,所述互動(dòng)輸入控制系統(tǒng)還包括圖像合成模塊。
在本發(fā)明中,圖像采樣模塊可進(jìn)行圖像采集并將采集的圖像輸入計(jì)算機(jī)。在本發(fā)明一個(gè)實(shí)施例中,圖像采樣模塊為一個(gè)或多個(gè)圖像輸入設(shè)備(例如攝像頭或攝像機(jī)),用于采集使用者的動(dòng)態(tài)或靜態(tài)影像。
所述圖像處理模塊包括三個(gè)控制模塊,分別為縮放模塊(Resize module)、色彩轉(zhuǎn)換模塊(Color space conversion module)和降噪模塊(Noise reduction module)。圖像處理模塊的功能在于將圖像采樣模塊采集的圖像數(shù)據(jù)中的每一幀進(jìn)行縮放、色彩轉(zhuǎn)換和降噪。
其中,縮放模塊用于將圖像采樣模塊采集的圖像的分辨率進(jìn)行縮小,以減少系統(tǒng)的運(yùn)算負(fù)荷;色彩轉(zhuǎn)換模塊用于對(duì)經(jīng)縮放模塊處理后的圖像的顏色進(jìn)行轉(zhuǎn)換,從BGR模式轉(zhuǎn)為GREY模式的功能;而降噪模塊則用于對(duì)經(jīng)過色彩轉(zhuǎn)換模塊處理后的圖像進(jìn)行降噪處理,以去除圖像中不必要的噪點(diǎn)。
所述圖像分析模塊包括四個(gè)控制模塊,分別為比較模塊(Calculate differencemodule)、閾值模塊(Threshold module)、歷史儲(chǔ)存模塊(Update history module)和判斷模塊。所述圖像分析模塊用于對(duì)圖像處理模塊處理后的圖像數(shù)據(jù)進(jìn)行分析,并對(duì)使用者的動(dòng)作進(jìn)行判斷。
其中,所述比較模塊的作用在于通過將圖像處理模塊處理的當(dāng)前幀與上一幀圖像的逐個(gè)象素進(jìn)行相減,得到反映這兩幀圖像差別之處的圖像。所述閾值模塊用于對(duì)前述反映兩幀圖像差別之處的圖像進(jìn)行閾值處理,得到只有黑白的圖像;所述歷史儲(chǔ)存模塊用于對(duì)所述閾值模塊中所產(chǎn)生的黑白圖像以“與”操作的方式和前N幀同樣經(jīng)過前述處理的圖像進(jìn)行結(jié)合(N為整數(shù),視具體情況確定N的值)。所述判斷模塊用于對(duì)經(jīng)歷史儲(chǔ)存模塊結(jié)合后的圖像進(jìn)行區(qū)域判斷,即計(jì)算出每個(gè)區(qū)域中白色象素占該區(qū)域總面積的百分比。
所述信號(hào)轉(zhuǎn)換模塊的功能在于對(duì)所述歷史儲(chǔ)存模塊計(jì)算的百分比結(jié)果進(jìn)行轉(zhuǎn)換,借以轉(zhuǎn)化為計(jì)算機(jī)所能識(shí)別的輸入信號(hào),安裝于計(jì)算機(jī)的計(jì)算機(jī)軟件利用此已轉(zhuǎn)化的信號(hào)實(shí)現(xiàn)使用者與計(jì)算機(jī)之間的互動(dòng)控制。
圖像合成模塊功能在于對(duì)圖像信息和虛擬場(chǎng)景進(jìn)行疊加,并經(jīng)計(jì)算而產(chǎn)生合成的虛擬圖像。所述圖像合成模塊包括配對(duì)模塊(Match module)、連接模塊和疊加模塊。
其中,當(dāng)所述圖像采樣模塊僅采用一個(gè)圖像輸入設(shè)備進(jìn)行圖像采集時(shí),所述配對(duì)模塊不予執(zhí)行;當(dāng)圖像采樣模塊采用兩個(gè)圖像輸入設(shè)備進(jìn)行圖像采集時(shí),系統(tǒng)執(zhí)行本模塊。該配對(duì)模塊的工作原理如下(以二個(gè)圖像輸入設(shè)備為例)首先,所述配對(duì)模塊首先對(duì)第一圖像輸入設(shè)備所采集的圖像進(jìn)行抽樣,假設(shè)抽取圖像樣本;然后利用此樣本在第二圖像輸入設(shè)備所采集的圖像中進(jìn)行查找,并得到與此樣本相似的圖像樣本,并輸出該圖像樣本所在區(qū)域的坐標(biāo)信息。
在本發(fā)明中,所述連接模塊用于連接多個(gè)圖像輸入設(shè)備所采集的圖像,該模塊只有當(dāng)配對(duì)模塊被執(zhí)行后才有效。該模塊的工作原理如下(以前述二個(gè)圖像輸入設(shè)備為例)首先,連接模塊對(duì)前述兩個(gè)圖像的亮度進(jìn)行分析,得到該兩個(gè)圖像亮度的平均值,然后利用此平均值分別設(shè)置這兩個(gè)圖像的亮度;接著利用配對(duì)模塊所得到的圖像樣本所在區(qū)域的坐標(biāo)信息連接兩個(gè)圖像,其中圖像以部分疊加的形式重合于圖像之上,兩個(gè)圖像重合的地方為最相似的區(qū)域。
在本發(fā)明中,疊加模塊用于將計(jì)算機(jī)所產(chǎn)生的虛擬圖像和圖像采樣模塊所采集的圖像進(jìn)行疊加處理,并且計(jì)算機(jī)所產(chǎn)生的虛擬圖像位于圖像采樣模塊所采集的圖像之上。當(dāng)圖像采樣模塊采用兩個(gè)以上圖像輸入設(shè)備進(jìn)行圖像采集時(shí),疊加模塊則將計(jì)算機(jī)所產(chǎn)生的虛擬圖像和所述連接模塊處理后的圖像進(jìn)行疊加處理。
通過該計(jì)算機(jī)系統(tǒng),進(jìn)行計(jì)算機(jī)圖像處理的方法是令一攝像頭或攝像機(jī)對(duì)使用者或場(chǎng)景進(jìn)行持續(xù)拍攝,經(jīng)過由計(jì)算機(jī)采集,得到使用者或場(chǎng)景的影像,此影像被存儲(chǔ)于計(jì)算機(jī)內(nèi)存中,假設(shè)命名為Img0,影像的色彩可以為彩色或灰度。令一圖像處理模塊中的縮放模塊來降低攝像頭或攝像機(jī)所采集的影像Img0的分辨率,根據(jù)具體情況縮小為原尺寸的1/2或1/4甚至更小,借以減少計(jì)算機(jī)的運(yùn)算量,假設(shè)另存為Img1;令一色彩轉(zhuǎn)換模塊圖像處理模塊對(duì)縮小后的影像Img1進(jìn)行色彩空間的轉(zhuǎn)換,把圖像從BGR彩色模式轉(zhuǎn)為GREY灰度,假設(shè)另存為Img2,若計(jì)算機(jī)采集時(shí)已為灰度圖像則比步驟可忽略;令一圖像處理模塊中的降噪模塊對(duì)Img2進(jìn)行降噪處理,借以減少由圖像來源或環(huán)境所產(chǎn)生的不可預(yù)知的噪點(diǎn)。令一圖像分析模塊中的比較模塊對(duì)經(jīng)過以上同樣處理的當(dāng)前幀(假設(shè)為Img2_current)與前一幀(假設(shè)為Img2_pre)相減比較,通過對(duì)兩個(gè)幀圖像的象素間的相減運(yùn)算,借以得到他們的差異之處,假設(shè)結(jié)果為Img3;令一圖像分析模塊中的閾值模塊對(duì)相減后的圖像Img3進(jìn)行閾值(Threshold)處理,產(chǎn)生黑白單色圖像Img4。令一圖像分析模塊中的歷史儲(chǔ)存模塊來儲(chǔ)存該黑白圖像Img4于一個(gè)記錄單色的歷史庫(kù)Img_istory中,該歷史庫(kù)視具體需要以″與″操作合成之前一定數(shù)量的經(jīng)過同樣處理的黑白圖像,例如前15幀;令一圖像分析模塊中的判斷模塊對(duì)圖像Img_history進(jìn)行切割,視具體需要來細(xì)分切割的塊數(shù),并分別統(tǒng)計(jì)每塊中白色象素占該區(qū)域面積的百分比,當(dāng)此百分比超過一定數(shù)量時(shí),令一信號(hào)轉(zhuǎn)換模塊輸出控制響應(yīng)信號(hào),例如前進(jìn)、后退、左移、右移等等。當(dāng)本系統(tǒng)的采集圖像是通過兩個(gè)攝像頭或攝像機(jī)進(jìn)行采集時(shí),令另一個(gè)攝像頭或攝像機(jī)所采集的圖像Img0_2進(jìn)行如上步驟的相同處理,然后令一圖像合成模塊中的配對(duì)模塊對(duì)圖像Img0進(jìn)行抽樣,樣本來自圖像Img0的接近四個(gè)圖像邊緣中的任意一個(gè)矩形區(qū)域,假設(shè)結(jié)果為Img0_sample,該區(qū)域的提取位置視合成的圖像的需要而決定;利用Img0_sample在Img0_2中查找與Img0_sample相似的區(qū)域,并得到該相似區(qū)域的四個(gè)頂點(diǎn)的坐標(biāo)信息,根據(jù)實(shí)際情況拾取其中的一個(gè)值,假如圖像1與圖像2左右連接時(shí),該值為X坐標(biāo)上最大的值,此坐標(biāo)值有兩對(duì),可隨機(jī)抽取其中的一對(duì),假設(shè)為(Matched_x,Matched_y)。令一圖像合成模塊中的連接模塊,取Img0_2中X坐標(biāo)從Matched_x到Img0_2的寬度,Y坐標(biāo)從0到Img0_2的高度的部分圖像Img0_2_1,取Img0的整幅圖像與Img0_2_1相連接,形成新的圖像Img_combined。令一圖像合成模塊中的疊加模塊對(duì)計(jì)算機(jī)所產(chǎn)生的虛擬圖像與Img_combined進(jìn)行疊加,并成為最終的顯示輸出效果。
當(dāng)本系統(tǒng)的采集圖像是通過一個(gè)攝像頭或攝像機(jī)進(jìn)行采集時(shí),直接令一圖像合成模塊中的疊加模塊對(duì)計(jì)算機(jī)所產(chǎn)生的虛擬圖像與Img0進(jìn)行疊加,并成為最終的顯示輸出效果。
采用本發(fā)明后,由于采用攝像頭來制作捕捉設(shè)備,使用者可以在攝像頭或攝像機(jī)拍攝的有效范圍內(nèi)做隨意的動(dòng)作,與傳統(tǒng)的輸入設(shè)備相比較,使用者不需要直接與硬件接觸,輸入方式靈活,而且設(shè)置簡(jiǎn)單。
其次,本發(fā)明一改傳統(tǒng)的純虛擬交互的形式,并且改變了傳統(tǒng)輸入方式視覺上虛擬場(chǎng)景和真實(shí)角色之間的隔離感;本發(fā)明可實(shí)現(xiàn)身臨其境的互動(dòng)方式,讓使用者在視覺上感受到其本人已經(jīng)成為游戲中的一份子,在虛擬時(shí)空中的物體互動(dòng)。例如,使使用者在進(jìn)行游戲時(shí)可以通過攝像頭對(duì)其肢體動(dòng)作進(jìn)行捕捉并分析,最終成為游戲能識(shí)別的輸入控制信號(hào),而且使用者的相貌也可顯示在游戲中,所以大大加深玩家投入度以及游戲的趣味性。
再次,本發(fā)明可以在成本低廉的機(jī)器上實(shí)現(xiàn)實(shí)時(shí)處理,即具有實(shí)時(shí)性。并且由于所需要的設(shè)備均為通用設(shè)備,所以不需要專業(yè)人員維護(hù),維護(hù)簡(jiǎn)單。
最后,本發(fā)明可采用多臺(tái)圖像輸入設(shè)備(例如攝像頭或攝像機(jī)),因此使其視野范圍更加廣闊。
圖1為本發(fā)明互動(dòng)輸入控制系統(tǒng)的物理模塊圖;圖2-4為本發(fā)明進(jìn)行圖像疊加的原理圖;圖5為本發(fā)明互動(dòng)輸入控制系統(tǒng)工作流程圖;圖6為本發(fā)明互動(dòng)輸入控制系統(tǒng)在采用單個(gè)圖像輸入設(shè)備時(shí)的圖像采集示意圖;圖7為本發(fā)明互動(dòng)輸入控制系統(tǒng)在采用單個(gè)圖像輸入設(shè)備時(shí)的圖像采集示意圖;圖8為本發(fā)明互動(dòng)輸入控制系統(tǒng)一個(gè)實(shí)施例的腿部圖像捕捉的示意圖。
具體實(shí)施例方式
下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步的說明。
如圖1所示,本發(fā)明一種基于圖像的互動(dòng)輸入控制系統(tǒng),包括圖像采樣模塊1、圖像處理模塊2、圖像分析模塊3、信號(hào)轉(zhuǎn)換模塊4。在本發(fā)明另一個(gè)實(shí)施例中,所述互動(dòng)輸入控制系統(tǒng)還包括圖像合成模塊5。
在本發(fā)明中,圖像采樣模塊1可進(jìn)行圖像采集并將采集的圖像輸入計(jì)算機(jī)。在本發(fā)明一個(gè)實(shí)施例中,圖像采樣模塊1為一個(gè)或多個(gè)圖像輸入設(shè)備(例如攝像頭或攝像機(jī)),用于采集使用者的動(dòng)態(tài)或靜態(tài)影像。
所述圖像處理模塊2包括三個(gè)控制模塊,分別為縮放模塊21(Resizemodule)、色彩轉(zhuǎn)換模塊22(Color space conversion module)和降噪模塊23(Noisereduction module)。圖像處理模塊2的功能在于將圖像采樣模塊1采集的圖像數(shù)據(jù)中的每一幀進(jìn)行縮放、色彩轉(zhuǎn)換和降噪。
其中,縮放模塊21用于將圖像采樣模塊1采集的圖像的分辨率進(jìn)行縮小,以減少系統(tǒng)的運(yùn)算負(fù)荷;色彩轉(zhuǎn)換模塊22用于對(duì)經(jīng)縮放模塊21處理后的圖像的顏色進(jìn)行轉(zhuǎn)換,從BGR模式轉(zhuǎn)為GREY模式的功能;而降噪模塊23則用于對(duì)經(jīng)過色彩轉(zhuǎn)換模塊22處理后的圖像進(jìn)行降噪處理,以去除圖像中不必要的噪點(diǎn)。
所述圖像分析模塊3包括四個(gè)控制模塊,分別為比較模塊31(Calculatedifference module)、閾值模塊32(Threshold module)、歷史儲(chǔ)存模塊33(Updatehistory module)和判斷模塊34。所述圖像分析模塊3用于對(duì)圖像處理模塊2處理后的圖像數(shù)據(jù)進(jìn)行分析,并對(duì)使用者的動(dòng)作進(jìn)行判斷。
其中,所述比較模塊31的作用在于通過將圖像處理模塊2處理的當(dāng)前幀與上一幀圖像的逐個(gè)象素進(jìn)行相減,得到反映這兩幀圖像差別之處的圖像。所述閾值模塊32用于對(duì)前述反映兩幀圖像差別之處的圖像進(jìn)行閾值處理,得到只有黑白的圖像;所述歷史儲(chǔ)存模塊33用于對(duì)所述閾值模塊32中所產(chǎn)生的黑白圖像以“與”操作的方式和前N幀同樣經(jīng)過前述處理的圖像進(jìn)行結(jié)合(N為整數(shù),視具體情況確定N的值)。所述判斷模塊34用于對(duì)經(jīng)歷史儲(chǔ)存模塊33結(jié)合后的圖像進(jìn)行區(qū)域判斷,即計(jì)算出每個(gè)區(qū)域中白色象素占該區(qū)域總面積的百分比。
所述信號(hào)轉(zhuǎn)換模塊4的功能在于對(duì)所述歷史儲(chǔ)存模塊33計(jì)算的百分比結(jié)果進(jìn)行轉(zhuǎn)換,借以轉(zhuǎn)化為計(jì)算機(jī)所能識(shí)別的輸入信號(hào),安裝于計(jì)算機(jī)的計(jì)算機(jī)軟件利用此已轉(zhuǎn)化的信號(hào)實(shí)現(xiàn)使用者與計(jì)算機(jī)之間的互動(dòng)控制。
圖像合成模塊5功能在于對(duì)圖像信息和虛擬場(chǎng)景進(jìn)行疊加,并經(jīng)計(jì)算而產(chǎn)生合成的虛擬圖像。所述圖像合成模塊5包括配對(duì)模塊51(Matchmodule)、連接模塊52和疊加模塊53。
其中,當(dāng)所述圖像采樣模塊1僅采用一個(gè)圖像輸入設(shè)備進(jìn)行圖像采集時(shí),所述配對(duì)模塊51不予執(zhí)行;當(dāng)圖像采樣模塊1采用兩個(gè)圖像輸入設(shè)備進(jìn)行圖像采集時(shí),系統(tǒng)執(zhí)行本模塊。參考圖2,該配對(duì)模塊51的工作原理如下(以二個(gè)圖像輸入設(shè)備為例)首先,參考圖2,所述配對(duì)模塊51首先對(duì)第一圖像輸入設(shè)備所采集的圖像80進(jìn)行抽樣,假設(shè)抽取圖像樣本95;然后利用此樣本95在第二圖像輸入設(shè)備所采集的圖像82中進(jìn)行查找,并得到與此樣本相似的圖像樣本97,如圖3所示,并輸出該圖像樣本97所在區(qū)域的坐標(biāo)信息。
在本發(fā)明中,所述連接模塊52用于連接多個(gè)圖像輸入設(shè)備所采集的圖像,該模塊只有當(dāng)配對(duì)模塊51被執(zhí)行后才有效。該模塊的工作原理如下(以前述二個(gè)圖像輸入設(shè)備為例)首先,連接模塊52對(duì)圖3所示的兩個(gè)圖像80,82的亮度進(jìn)行分析,得到該兩個(gè)圖像80,82亮度的平均值,然后利用此平均值分別設(shè)置這兩個(gè)圖像80,82的亮度;接著利用配對(duì)模塊51所得到的圖像樣本97所在區(qū)域的坐標(biāo)信息連接兩個(gè)圖像80,82,其中圖像80以部分疊加的形式重合于圖像82之上,兩個(gè)圖像80,82重合的地方為最相似的區(qū)域,如圖4所示。
在本發(fā)明中,疊加模塊53用于將計(jì)算機(jī)所產(chǎn)生的虛擬圖像和圖像采樣模塊1所采集的圖像進(jìn)行疊加處理,并且計(jì)算機(jī)所產(chǎn)生的虛擬圖像位于圖像采樣模塊1所采集的圖像之上。當(dāng)圖像采樣模塊1采用兩個(gè)以上圖像輸入設(shè)備進(jìn)行圖像采集時(shí),疊加模塊53則將計(jì)算機(jī)所產(chǎn)生的虛擬圖像和所述連接模塊52處理后的圖像進(jìn)行疊加處理。
如圖5所示,本發(fā)明基于圖像的互動(dòng)輸入控制方法包括如下步驟步驟100進(jìn)行圖像采集;在本發(fā)明中,可通過一個(gè)或多個(gè)圖像輸入設(shè)備進(jìn)行圖像采集。
步驟200進(jìn)行圖像處理;在本發(fā)明一個(gè)實(shí)施例中,所述步驟200包括三個(gè)子流程,分別為1.將采集的圖像數(shù)據(jù)中的每一幀進(jìn)行縮放處理,步驟211,即將采集圖像的分辨率縮小,以減少系統(tǒng)運(yùn)算負(fù)荷的功能;2.對(duì)縮放后的圖像進(jìn)行色彩轉(zhuǎn)換處理,步驟212,即將縮放處理后的圖像的顏色空間進(jìn)行轉(zhuǎn)換,以實(shí)現(xiàn)從BGR模式到GREY模式的轉(zhuǎn)換流程;3.對(duì)色彩轉(zhuǎn)換后的圖像進(jìn)行降噪處理,步驟213,以去除圖像中不必要的噪點(diǎn)。
步驟300進(jìn)行圖像分析。在本發(fā)明一個(gè)實(shí)施例中,所述步驟300包括四個(gè)子流程,分別為1.對(duì)經(jīng)上述處理后的圖像進(jìn)行比較處理,步驟311,即對(duì)圖像處理后的當(dāng)前幀與上一幀圖像進(jìn)行逐個(gè)象素的相減,得到這兩幀圖像的差別之處;2.將比較處理得到的圖像進(jìn)行閾值處理,步驟312,得到只有黑白的圖像;3.將N幀(N為整數(shù),視具體情況確定N的值)經(jīng)前述處理的圖像進(jìn)行結(jié)合,步驟313,即將經(jīng)前述處理所產(chǎn)生的N幀黑白圖像以“與”操作的方式進(jìn)行結(jié)合;4.將前述結(jié)合后的圖像進(jìn)行區(qū)域判斷,步驟314,即視具體情況,對(duì)每個(gè)區(qū)域中白色象素占該區(qū)域總面積的百分比進(jìn)行計(jì)算。
步驟400將區(qū)域判斷結(jié)果進(jìn)行信號(hào)轉(zhuǎn)換,轉(zhuǎn)換為計(jì)算機(jī)可識(shí)別的信號(hào);計(jì)算機(jī)軟件利用此已轉(zhuǎn)化的信號(hào)實(shí)現(xiàn)使用者與計(jì)算機(jī)之間的互動(dòng)控制。
步驟500進(jìn)行圖像合成。該流程可對(duì)圖像輸入設(shè)備采集并處理的圖像信息和計(jì)算機(jī)所產(chǎn)生的虛擬場(chǎng)景進(jìn)行實(shí)時(shí)縫合。
在進(jìn)行圖像合成前,本發(fā)明互動(dòng)輸入控制系統(tǒng)的工作流程中還包括步驟450,即判斷圖像采樣模塊中的圖像輸入設(shè)備是否超過一個(gè)。若只采用一個(gè)圖形輸入設(shè)備進(jìn)行圖像采集時(shí),則系統(tǒng)直接將計(jì)算機(jī)產(chǎn)生的虛擬圖像與采集的圖像進(jìn)行疊加,即步驟513。若圖形輸入設(shè)備為多個(gè),則系統(tǒng)對(duì)多個(gè)圖像輸入設(shè)備采集的圖像進(jìn)行配對(duì),步驟511,并連接多個(gè)圖像輸入設(shè)備采集的圖像,步驟512,最后將計(jì)算機(jī)所產(chǎn)生的虛擬圖像和經(jīng)所述連接處理后的圖像進(jìn)行疊加處理,步驟513。
通過以上所述的各個(gè)流程,一種基于圖像的互動(dòng)輸入控制方法就這樣完成了。
下面將結(jié)合具體實(shí)施例進(jìn)一步對(duì)本發(fā)明進(jìn)行詳細(xì)說明,以便對(duì)本發(fā)明的目的,特征及優(yōu)點(diǎn)進(jìn)行更深入的理解。
實(shí)施例一參考圖6,所示的是本發(fā)明采用單個(gè)攝像頭或攝像機(jī)11(圖像輸入設(shè)備)時(shí)的圖像采集示意圖。
使用者612需要站在攝像頭或攝像機(jī)11的可視范圍中,也可以只拍攝上半身,所拍攝的可視范圍視具體應(yīng)用而定。使用者612在使用本發(fā)明系統(tǒng)時(shí)只需要正對(duì)著攝像頭或攝像機(jī)11,按指示做相應(yīng)的動(dòng)作。
在本發(fā)明中,首先攝像頭或攝像機(jī)11對(duì)使用者612進(jìn)行圖像采集,采集的圖像分辨率為640*480,顏色深度為24位,幀速為30FPS,當(dāng)前幀圖像儲(chǔ)存為Img_capture。
參考圖1和圖5,縮放模塊21對(duì)攝像頭或攝像機(jī)11所采集的圖像Img_capture的分辨率進(jìn)行縮小,縮小后的尺寸為320*240,從而系統(tǒng)減少了3/4的運(yùn)算量,圖像儲(chǔ)存為Img_resized;經(jīng)過縮放處理之后,色彩轉(zhuǎn)換模塊22會(huì)把圖像Img_resized的顏色深度從BGR彩色模式轉(zhuǎn)換為GREY灰度模式,由于GREY灰度模式的圖像所需要的內(nèi)存空間只是同樣尺寸的BGR彩色模式圖像的1/3,從而再一次減少圖像的處理量,圖像儲(chǔ)存為Img_grey;接著,降噪模塊23對(duì)轉(zhuǎn)換后的圖像Img_grey進(jìn)行降噪,降噪的方法主要是通過降低取樣比和提高采樣比來實(shí)現(xiàn),也可以通過高斯模糊來實(shí)現(xiàn),以降低攝像頭或攝像機(jī)11或環(huán)境所產(chǎn)生的不可預(yù)知的噪點(diǎn),從而減少圖像分析中的誤差,圖像儲(chǔ)存為Img_smooth。
然后,比較模塊31對(duì)經(jīng)過以上同樣處理的當(dāng)前幀Img_smooth_current與前一幀Img_smooth_last進(jìn)行相減比較,通過對(duì)兩個(gè)幀圖像的逐個(gè)象素間的相減運(yùn)算,并對(duì)相減結(jié)果采用絕對(duì)值處理,借以得到它們之間的差異(Difference),每個(gè)象素的取值的范圍為0-255,相減后的圖像儲(chǔ)存為Img_diff。接著,閾值模塊32對(duì)相減后的圖像Img_diff進(jìn)行閾值(Threshold)處理,該模塊對(duì)每個(gè)象素中少于10的值為0,而大于或等于10的值則為1,借以產(chǎn)生黑白圖像Img_bw。下一步,歷史儲(chǔ)存模塊33儲(chǔ)存該黑白圖像Img_bw于一個(gè)記錄單色的歷史庫(kù)Img_history中,該歷史庫(kù)以″與″操作合成前0.3秒的經(jīng)過同樣處理的黑白圖像,也就是0.3*30FPS=9幀。最后,判斷模塊34對(duì)圖像Img_history進(jìn)行切割,畫面被平均分割為四個(gè)矩形區(qū)域,分別統(tǒng)計(jì)每個(gè)區(qū)域中白色象素所占的該區(qū)域面積的比例。
然后,信號(hào)轉(zhuǎn)換模塊4對(duì)上述判斷模塊34統(tǒng)計(jì)的各個(gè)區(qū)域的比例結(jié)果進(jìn)行轉(zhuǎn)換,若此比例超過30%,則程序響應(yīng)左上區(qū)域?yàn)橛?jì)算機(jī)小鍵盤的“7”鍵;相應(yīng)地,程序響應(yīng)右上區(qū)域?yàn)橛?jì)算機(jī)小鍵盤的“9”鍵;程序響應(yīng)左下區(qū)域?yàn)橛?jì)算機(jī)小鍵盤的“1”鍵;程序響應(yīng)右下區(qū)域?yàn)橛?jì)算機(jī)小鍵盤的“3”鍵。
最終,本發(fā)明通過疊加模塊53對(duì)計(jì)算機(jī)611所產(chǎn)生的虛擬圖像與圖像Img_capture進(jìn)行合成,并輸出到計(jì)算機(jī)611的顯示設(shè)備中。
實(shí)施例二圖7所示的是本發(fā)明采用兩個(gè)攝像頭或攝像機(jī)11,12(圖像輸入設(shè)備)時(shí)的圖像采集示意圖。其中兩個(gè)攝像頭11,12分別被放置在不同高度的同一垂線上,各自的拍攝方向持一定角度,并保留一定的夾角。本實(shí)施例以拍攝使用者612全身為例進(jìn)行說明。
攝像頭11采集圖像并儲(chǔ)存為Img_cam1,攝像頭12采集圖像并儲(chǔ)存為Img_cam2。攝像頭11主要拍攝使用者612的上半身,而攝像頭12主要拍攝使用者612的下半身。
假設(shè)上述采集的圖像分辨率均為320*240,顏色深度為24位,幀速為25FPS。圖像處理模塊2中的縮放模塊21對(duì)攝像頭所采集的圖像Img_cam1和Img_cam2的分辨率進(jìn)行縮小,縮小尺寸為160*120,并另存為Img_cam1_sm和Img_cam2_sm;圖像處理模塊2中的色彩轉(zhuǎn)換模塊22分別對(duì)圖像Img_cam1_sm和Img_cam2_sm的顏色深度從BGR彩色模式轉(zhuǎn)換為GREY灰度模式,并分別保存為Img_cam1_sm1和Img_cam2_sm1。
圖像處理模塊2中的降噪模塊23對(duì)轉(zhuǎn)換后的圖像Img_cam1_sm1和Img_cam2_sm1進(jìn)行處理,并保存為相同的變量名。
下面將描述第一個(gè)攝像頭11的捕捉原理,也就是攝像頭11對(duì)使用者612頭部的捕捉處理。
首先,系統(tǒng)在第一次運(yùn)行時(shí)創(chuàng)建一個(gè)與Img_cam1_sm1尺寸和顏色深度相同的空白圖像Img_cam1_sm1_pre。
其次,通過圖像分析模塊3中的比較模塊31對(duì)經(jīng)過以上同樣處理的當(dāng)前幀Img_cam1_sm1與上一幀Img_cam1_sm1_pre的比較,得出不同的灰度圖像Img_cam1_diff。圖像分析模塊3中的閾值模塊32對(duì)灰度圖像Img_cam1_diff進(jìn)行閾值(Threshold)處理,產(chǎn)生黑白單色圖像Img_cam1_bw,保存Img_cam1_sm1為Img_cam1_sm1_pre。對(duì)Img_cam1_bw的上半部分進(jìn)行從上往下的逐行掃描,統(tǒng)計(jì)每行所含有白色象素的數(shù)量N_cam1。若N_cam1超過1/4當(dāng)前掃描水平線上的總象素(水平線上的總象素為160)時(shí),停止掃描。記錄當(dāng)前停留的位置Img_cam1_pos,此位置為使用者612頭部的當(dāng)前位置。若程序?yàn)榈谝淮芜\(yùn)行時(shí)則記錄Img_cam1_pos為Img_cam1_last,并且不執(zhí)行以下程序;當(dāng)Img_cam1_pos大于Img_cam1_last時(shí),計(jì)算Img_cam1_pos減去Img_cam1_last的值,而且該相減后值的比較大時(shí),得到使用者612跳躍的高度(相對(duì)于攝像頭所采集的圖像而言),借以響應(yīng)響應(yīng)程序中的“跳”輸入操作。
下面將描述第二個(gè)攝像頭12的捕捉原理,也就是攝像頭12對(duì)使用者612腿部的捕捉處理。
首先,系統(tǒng)在第一次運(yùn)行時(shí)創(chuàng)建一個(gè)與Img_cam2_sm2尺寸和顏色深度相同的空白圖像Img_cam2_sm2_pre。
其次,圖像分析模塊3中的比較模塊31對(duì)經(jīng)過以上同樣處理的當(dāng)前幀Img_cam2_sm2與Img_cam2_sm2_pre的比較,得出不同的灰度圖像Img_cam2_diff。圖像分析模塊3中的閾值模塊32對(duì)灰度圖像Img_cam2_diff進(jìn)行閾值(Threshold)處理,產(chǎn)生黑白單色圖像Img_cam2_bw。儲(chǔ)存該黑白圖像Img_cam2_bw于一個(gè)記錄單色的歷史庫(kù)Img_cam2_history中,該歷史庫(kù)視具體需要以″與″操作合成之前的圖像。圖像分析模塊3中的歷史儲(chǔ)存模塊33來儲(chǔ)存該黑白圖像Img_cam2_bw于一個(gè)記錄單色的歷史庫(kù)Img_cam2_history中,該歷史庫(kù)以″與″操作合成之前0.2秒的圖像,即0.2*30FPS=6幀。
對(duì)Img_cam2_history進(jìn)行分析,在圖像的高度的一半的地方查找第一個(gè)和最后一個(gè)連續(xù)出現(xiàn)的兩個(gè)連續(xù)的白色象素的位置,如圖8所示,圖8所示的使用者612的一個(gè)腿81’處第一個(gè)連續(xù)出現(xiàn)的兩個(gè)連續(xù)的白色象素的位置83,使用者612的另一個(gè)腿82’處最后一個(gè)連續(xù)出現(xiàn)的兩個(gè)連續(xù)的白色象素的位置84,并保存為Pos_begin和Pos_end。Po_begin和Pos_end之間的距離可粗略的看作為使用者612的兩只腿81’-82’的寬度。圖像分析模塊3中的判斷模塊34決定Pos_begin和Pos_end之間的中點(diǎn),此中點(diǎn)可粗略地區(qū)分使用者的左右腿。以此中點(diǎn)分別向其左右方設(shè)置兩個(gè)矩形區(qū)域,Rect1和Rect2,并計(jì)算這兩區(qū)域中白色象素的總數(shù)量。若任一矩形區(qū)域的白色象素的總數(shù)量值為另一區(qū)域白色象素總數(shù)值的2倍時(shí),則可判斷使用者612相應(yīng)位置的腿在移動(dòng)。若左右腿分別移動(dòng)的間隔時(shí)間少于0.5秒,則判斷使用者612的狀態(tài)為行走或跑,借以響應(yīng)程序中的“跑”輸入操作。
最后,圖像合成模塊5中的配對(duì)模塊51在Img_cam1靠下方的位置上抽取一寬為Img_cam1寬度一半,高度為3個(gè)象素的一個(gè)矩形區(qū)域,并存為圖像Img_cam1_sample。然后,配對(duì)模塊51在Img_cam2中搜索與樣本Img_cam1_sample相似的區(qū)域,并得到四個(gè)矩形頂點(diǎn)相應(yīng)的坐標(biāo),任意取Y坐標(biāo)值最大的兩組坐標(biāo)值中的一對(duì),并存為(Matched_x,Matched_y)。然后合成模塊5中的連接模塊52對(duì)圖像Img_cam1與Img_cam2的亮度信息進(jìn)行分析,得到這兩幅圖像的亮度信息的平均值,利用此平均值分別設(shè)置圖像Img_cam1與Img_cam2的亮度。下一步是合成模塊5中的連接模塊52對(duì)圖像Img_cam1中的整幅圖像和Img_cam2中X坐標(biāo)從0到圖像Img_cam2的寬度,Y坐標(biāo)從Matched_y到Img_cam2的高度的圖像相連接,并保存為Img_combined。因此Img_combined的寬度為Img_cam1的寬度(Img_cam1的寬度與Img_cam2的寬度相等),高度為Img_cam1的高度+(Img_cam2的高度-Matched_y)。最后,圖像合成模塊5中的疊加模塊53對(duì)計(jì)算機(jī)產(chǎn)生的虛擬圖像和圖像Img_combined進(jìn)行疊加,并輸出到計(jì)算機(jī)設(shè)備的顯示設(shè)備中。
在本發(fā)明中,以上所說的計(jì)算機(jī)可以為個(gè)人計(jì)算機(jī)、圖像工作站、手提計(jì)算機(jī)、電視游戲機(jī)、便攜式游戲機(jī)、個(gè)人數(shù)字助理以及移動(dòng)電話其中任一種裝置。
所述攝像頭的光學(xué)感應(yīng)器件是CMOS或CCD,接口為USB或AV接口。其中,CMOS芯片的優(yōu)點(diǎn)是價(jià)格低廉,但刷新率比較低,在室內(nèi)日光燈做主照明時(shí)只能達(dá)到10-20 FPS(Frames Per Second,每秒顯示的幀數(shù)),部分采用內(nèi)置圖像加速芯片的攝像頭則可達(dá)到18-25 FPS。而采用CCD芯片的攝像頭普遍可以穩(wěn)定保持在25 FPS以上,但CCD芯片的成本遠(yuǎn)高于CMOS芯片,故一般只有中高端的攝像頭才會(huì)采用CCD芯片作為其光學(xué)感應(yīng)器件。因此,用戶可根據(jù)需要加以選擇,但是在選用用于家庭捕捉系統(tǒng)的攝像頭就必須選擇能達(dá)到20 FPS以上的,以確保畫面的流暢性,減少滯后。
以上所揭露的僅為本發(fā)明的較佳實(shí)施例而已,當(dāng)然不能以此來限定本發(fā)明之權(quán)利范圍,因此依本發(fā)明申請(qǐng)專利范圍所作的等同變化,仍屬本發(fā)明所涵蓋的范圍。
權(quán)利要求
1.一種基于圖像的互動(dòng)輸入控制方法,包括如下步驟進(jìn)行圖像采集;對(duì)前述采集的圖像進(jìn)行處理;對(duì)前述處理后的圖像進(jìn)行分析判斷,并得出判斷結(jié)果;對(duì)前述判斷結(jié)果進(jìn)行信號(hào)轉(zhuǎn)換,轉(zhuǎn)換為計(jì)算機(jī)可識(shí)別的信號(hào)。
2.根據(jù)權(quán)利要求1所述的互動(dòng)輸入控制方法,其特征在于所述圖像采集可通過一個(gè)或多個(gè)圖像輸入設(shè)備來進(jìn)行。
3.根據(jù)權(quán)利要求1所述的互動(dòng)輸入控制方法,其特征在于所述對(duì)采集的圖像進(jìn)行處理的步驟包括將采集的圖像數(shù)據(jù)中的每一幀進(jìn)行縮放處理;對(duì)縮放后的圖像進(jìn)行色彩轉(zhuǎn)換處理;對(duì)色彩轉(zhuǎn)換后的圖像進(jìn)行降噪處理。
4.根據(jù)權(quán)利要求3所述的互動(dòng)輸入控制方法,其特征在于所述對(duì)處理后的圖像進(jìn)行分析判斷的步驟包括將降噪處理后的圖像進(jìn)行比較處理;將比較處理得到的圖像進(jìn)行閾值處理;將N幀(N為整數(shù))經(jīng)前述處理的圖像進(jìn)行結(jié)合;將前述結(jié)合后的圖像進(jìn)行區(qū)域判斷。
5.根據(jù)權(quán)利要求1或4所述的互動(dòng)輸入控制方法,其特征在于所述方法在所述信號(hào)轉(zhuǎn)換處理后,還包括進(jìn)行圖像合成的步驟。
6.根據(jù)權(quán)利要求5所述的互動(dòng)輸入控制方法,其特征在于在進(jìn)行圖像合成前,所述方法還包括判斷所述圖像輸入設(shè)備是否超過一個(gè)的步驟。
7.根據(jù)權(quán)利要求6所述的互動(dòng)輸入控制方法,其特征在于若進(jìn)行圖像采集的圖形輸入設(shè)備只有一個(gè)時(shí),則直接將計(jì)算機(jī)產(chǎn)生的虛擬圖像與采集的圖像進(jìn)行疊加;若圖形輸入設(shè)備為多個(gè),則對(duì)多個(gè)圖像輸入設(shè)備采集的圖像進(jìn)行配對(duì),并連接多個(gè)圖像輸入設(shè)備采集的圖像,最后將計(jì)算機(jī)所產(chǎn)生的虛擬圖像和經(jīng)所述連接處理后的圖像進(jìn)行疊加處理。
8.一種基于圖像的互動(dòng)輸入控制系統(tǒng),其特征在于所述系統(tǒng)包括圖像采樣模塊;用于圖像采集并將采集的圖像輸入計(jì)算機(jī);圖像處理模塊;用于將所述圖像采樣模塊采集的圖像數(shù)據(jù)中的每一幀進(jìn)行縮放、色彩轉(zhuǎn)換和降噪。圖像分析模塊;用于對(duì)圖像處理模塊處理后的圖像數(shù)據(jù)進(jìn)行分析判斷,并得出判斷結(jié)果;信號(hào)轉(zhuǎn)換模塊;用于對(duì)前述判斷結(jié)果進(jìn)行信號(hào)轉(zhuǎn)換,轉(zhuǎn)換為計(jì)算機(jī)可識(shí)別的信號(hào)。
9.根據(jù)權(quán)利8所述的互動(dòng)輸入控制系統(tǒng),其特征在于所述圖像采樣模塊可包括一個(gè)或多個(gè)圖像輸入設(shè)備。
10.根據(jù)權(quán)利9所述的互動(dòng)輸入控制系統(tǒng),其特征在于所述系統(tǒng)還包括一個(gè)圖像合成模塊,其中所述圖像合成模塊包括配對(duì)模塊(Match module);當(dāng)所述圖像采樣模塊僅采用一個(gè)圖像輸入設(shè)備進(jìn)行圖像采集時(shí),所述配對(duì)模塊不予執(zhí)行;當(dāng)圖像采樣模塊采用兩個(gè)以上的圖像輸入設(shè)備進(jìn)行圖像采集時(shí),系統(tǒng)執(zhí)行本模塊;連接模塊;所述連接模塊用于連接多個(gè)圖像輸入設(shè)備所采集的圖像,該模塊只有當(dāng)配對(duì)模塊被執(zhí)行后才有效;疊加模塊;當(dāng)采用一個(gè)圖形輸入設(shè)備進(jìn)行圖像采集時(shí),則系統(tǒng)直接將計(jì)算機(jī)產(chǎn)生的虛擬圖像與采集的圖像進(jìn)行疊加;若圖形輸入設(shè)備為多個(gè),則系統(tǒng)對(duì)多個(gè)圖像輸入設(shè)備采集的圖像進(jìn)行配對(duì),并連接多個(gè)圖像輸入設(shè)備采集的圖像,最后將計(jì)算機(jī)所產(chǎn)生的虛擬圖像和經(jīng)所述連接處理后的圖像進(jìn)行疊加處理。
全文摘要
本發(fā)明公開了一種基于圖像的互動(dòng)輸入控制方法,包括如下步驟進(jìn)行圖像采集;對(duì)前述采集的圖像進(jìn)行處理;對(duì)前述處理后的圖像進(jìn)行分析判斷,并得出判斷結(jié)果;對(duì)前述判斷結(jié)果進(jìn)行信號(hào)轉(zhuǎn)換,轉(zhuǎn)換為計(jì)算機(jī)可識(shí)別的信號(hào)。在本發(fā)明中,所述方法在所述信號(hào)轉(zhuǎn)換處理后,還包括進(jìn)行圖像合成的步驟。其中,所述圖像采集可通過一個(gè)或多個(gè)圖像輸入設(shè)備(例如攝像頭或攝像機(jī)),來采集使用者的動(dòng)態(tài)或靜態(tài)影像。采用本發(fā)明后,可實(shí)現(xiàn)實(shí)時(shí)、互動(dòng)、靈活地輸入。
文檔編號(hào)G06T1/00GK1564105SQ200410026528
公開日2005年1月12日 申請(qǐng)日期2004年3月18日 優(yōu)先權(quán)日2004年3月18日
發(fā)明者鐘煜曦 申請(qǐng)人:鐘煜曦