基于多Kinect協(xié)同的深度閾值分割算法識別輪廓交互方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明屬于計(jì)算機(jī)視覺、體感交互領(lǐng)域的技術(shù),具體涉及一種基于多臺Kinect傳 感器通過輪廓互動反映人機(jī)交互的方法。
【背景技術(shù)】
[0002] 體感交互技術(shù)是指通過用戶的肢體隔空操控計(jì)算機(jī),代替以往傳統(tǒng)的鼠標(biāo)和鍵盤 等輸入控制設(shè)備,使得人機(jī)交互的空間更加廣闊,操控更加自由,方式也更加靈活。體感交 互作為一個新興的領(lǐng)域,已經(jīng)逐漸步入了人類的視野,并且日趨火爆,在游戲、醫(yī)療、零售、 以及商業(yè)產(chǎn)品推廣等領(lǐng)域都有著十分廣泛的應(yīng)用前景。
[0003] 由于體感傳感器硬件條件的限制,目前已有的體感交互產(chǎn)品大都只單獨(dú)依靠一臺 體感傳感設(shè)備進(jìn)行信息采集,雖然可以在家庭或特定有限面積的場景中得到有效應(yīng)用,但 是應(yīng)用空間十分有限,尤其是在面對大場景時,往往無法達(dá)到預(yù)期效果。因此,通過研究同 時利用多臺體感傳感設(shè)備有效擴(kuò)展應(yīng)用空間,對今后體感交互產(chǎn)品的發(fā)展有著十分重要的 意義。
[0004] 與此同時,通過多臺體感傳感設(shè)備采集信息時,就需要將通過不同傳感設(shè)備采集 到的信息進(jìn)行標(biāo)定和融合,傳統(tǒng)的標(biāo)定方式僅能處理同一景深的圖像,面對體感傳感器采 集到的帶有深度內(nèi)容的體感信息,研究一種根據(jù)深度進(jìn)行自適應(yīng)調(diào)整的標(biāo)定方式有著十分 重要的意義。
[0005] 除此之外,一種生動新穎的表現(xiàn)形式對體感交互應(yīng)用也有著十分重要的意義。在 曰常生活中,流體在相互融合或分離時由于表面張力的影響,其輪廓會呈現(xiàn)出一種奇妙的 融合過程,在圖形學(xué)領(lǐng)域,人們一直試圖利用計(jì)算機(jī)去模擬這種真實(shí)的現(xiàn)象,但是對于這種 復(fù)雜的流體效果,必須借助精確的物理方程和繁瑣的計(jì)算才能呈現(xiàn)出其運(yùn)動規(guī)律和視覺效 果,然而,由于其計(jì)算的過程的復(fù)雜性,也就導(dǎo)致其應(yīng)用中規(guī)模的局限性。為了能在大規(guī)模 應(yīng)用中,給用戶帶來要流暢的體驗(yàn),因此,研究一種高效的邊緣融合繪制方法,在體感交互
技術(shù)領(lǐng)域有重要意義。
[0006] 目前,在圖形學(xué)領(lǐng)域?qū)τ诹黧w邊緣融合的模擬已經(jīng)十分成熟,但其主要工作都圍 繞著真實(shí)感和實(shí)時性的提升。
[0007] Blinn等人提出了一種通用的流體輪廓融合模型,使用圖形學(xué)方式繪制流體表面 輪廓的融合現(xiàn)象,但只繪制表面的變化過程。Y. Kanamori等人提出了一種基于GPU加速的 大規(guī)模流體融合模擬,這種方式采用基于觀察者目光射線的方式有選擇的繪制大規(guī)模流體 輪廓融合的方法,并采用GPU加速。
[0008] 由上述的方法可以看出,流體輪廓融合的模擬都集中在真實(shí)感和實(shí)時性的提升 上,并未把流體模擬應(yīng)用到體感交互領(lǐng)域。
[0009] 隨著人機(jī)交互領(lǐng)域的蓬勃發(fā)展,體感應(yīng)用作為一種全新的人機(jī)交互方式迫切需要 更加豐富和生動的表現(xiàn)形式,將流體輪廓融合作為一種人機(jī)交互的反饋形式,可以極大豐 富用戶的視覺體驗(yàn),因此,將基于輪廓交互的圖形邊緣融合效果應(yīng)用到體感交互領(lǐng)域具有 重要意義。
【發(fā)明內(nèi)容】
[0010](一)要解決的技術(shù)問題
[0011] 本發(fā)明所要解決的技術(shù)問題是提供一套完整的體感交互應(yīng)用技術(shù),通過互動式邊 緣融合效果來反映體感交互的過程,并擴(kuò)展使用空間的面積,將體感交互方式與流體輪廓 互動效果緊密結(jié)合起來,以提供一種新穎生動的人機(jī)交互的表現(xiàn)形式。
[0012] (二)技術(shù)方案
[0013] 為完成以上目標(biāo),本發(fā)明提出了基于多Kinect協(xié)同的深度閾值分割算法識別輪 廓交互技術(shù),包括以下步驟:(1)多Kinect協(xié)同,在一臺控制主機(jī)上同時驅(qū)動多臺Kinect 深度傳感器,并將采集到的信息進(jìn)行校正;(2)基于深度閾值分割的用戶識別與定位,采集 場景的深度信息對深度信息進(jìn)行處理和篩選,計(jì)算用戶的位置;(3)通過邊緣融合展現(xiàn)輪 廓互動,以模擬流體邊緣融合或分離的方式展現(xiàn)不同間發(fā)生的互動,采用一種基于空間分 布特征的圖形繪制方法,繪制出帶有流體邊緣互動效果的圖形。本發(fā)明的技術(shù)方案如下:
[0014] -種基于多Kinect協(xié)同的深度閾值分割算法識別輪廓交互技術(shù),包括以下步驟:
[0015] 多Kinect協(xié)同,為滿足大場景的需要,在一臺控制主機(jī)上同時驅(qū)動多臺Kinect深 度傳感器,并將采集到的信息進(jìn)行校正并融合;
[0016] 基于深度閾值分割的用戶識別與定位,采集場景的深度信息對深度信息進(jìn)行處理 和篩選,計(jì)算用戶的位置;
[0017] 通過邊緣融合展現(xiàn)輪廓互動,以模擬流體邊緣融合或分離的方式展現(xiàn)不同個體間 發(fā)生的互動,采用一種基于空間分布特征的圖形繪制方法,繪制出帶有流體邊緣融合效果 的圖形,并進(jìn)行顯示。
[0018] 進(jìn)一步的,根據(jù)應(yīng)用場景的實(shí)際大小,在一臺控制主機(jī)上同時驅(qū)動多臺Kinect深 度傳感器;
[0019] 根據(jù)彩色信息進(jìn)行標(biāo)定,并計(jì)算不同Kinect之間的變換矩陣;
[0020] 對深度信息進(jìn)行校正與融合,根據(jù)變換矩陣,對采集到的深度信息進(jìn)行校正,克服 由于來自不同Kinect而導(dǎo)致的畸變。
[0021] 進(jìn)一步的,同時驅(qū)動多臺Kinect的步驟為:通過實(shí)際應(yīng)用場景確認(rèn)部署Kinect數(shù) 量,在同一臺主機(jī)控制器上同時驅(qū)動多臺Kinect設(shè)備,為了方便后續(xù)計(jì)算,在Kinect擺放 時,盡量使每臺Kinect都保持水平,且不同Kinect位于同一水平線上。
[0022] 進(jìn)一步的,所述多Kinect標(biāo)定的步驟如下:
[0023] 單獨(dú)開啟Kinect的RGBA視頻流,獲取場景的彩色信息;
[0024] 使用棋盤格進(jìn)行標(biāo)定,檢測彩色圖像中的棋盤格的位置,為了方便后續(xù)計(jì)算,在擺 放棋盤格時,應(yīng)使棋盤格盡量保持水平;
[0025] 根據(jù)棋盤格在來自不同Kinect彩色圖中的位置關(guān)系,計(jì)算不同Kinect之間的變 換矩陣
,其中,1?表示通過圖像點(diǎn)坐標(biāo)與空間點(diǎn)坐標(biāo)線性求解得到 的單應(yīng)矩陣各個元素的數(shù)值。由于Kinect和棋盤格擺放水平,計(jì)算所得的變化矩陣Μ中 m12、m21、m31、m32近似為0, mn、m22、m33近似為1,因此,變換矩陣可以寫作 其中,(^與cy表示簡化后單應(yīng)矩陣的元素值。
[0026] 進(jìn)一步的,所述深度信息校正與融合的步驟包括:
[0027] 對來自不同Kinect的深度信息進(jìn)行校正和融合;通過計(jì)算所得的不同Kinect 彩色圖之間的變換矩陣
,計(jì)算不同深度圖之間的變換關(guān)系q = MQ,其中
表示簡化后的變換矩陣,
表示變換前的圖像坐標(biāo),X表示橫坐標(biāo) 參數(shù),Y表示縱坐標(biāo)參數(shù),Z表示到攝像機(jī)的距離,
表示變換后的圖像坐標(biāo),X表示 橫坐標(biāo)參數(shù),y表示縱坐標(biāo)參數(shù),w表示齊次坐標(biāo)系參數(shù),且w = Z,根據(jù)深度變換方程,水平 偏移量·
豎直偏移量
求解不同深度下,水平和豎直方向的位移變 換,其中k為深度映射常數(shù),Vdf;pth為深度值,c )!與c ¥表示簡化后單應(yīng)矩陣的元素值,將位移 變換后的深度圖進(jìn)行融合,可以獲得完整的場景深度信息。
[0028] 進(jìn)一步的,基于深度閾值分割的用戶識別與定位的步驟包括:
[0029] 將融合后的場景深度圖轉(zhuǎn)換為單通道灰度圖形式;
[0030] 對轉(zhuǎn)換后的深度圖進(jìn)行閾值分割;
[0031] 對閾值分割后的圖像進(jìn)行篩選,進(jìn)行用戶識別和定位。
[0032] 進(jìn)一步的,將融合后的場景深度圖轉(zhuǎn)換為單通道灰度圖形式,步驟包括:
[0033] 利用融合操作后的完整場景深度信息,結(jié)合深度值與灰度值的映射方程G(x,y) =C (1-Vd_h (X,y) /D_),求解場景中相應(yīng)位置深度信息對應(yīng)的灰度值,其中,C為顏色空間 分布常數(shù),Vd_h(x,y)為相應(yīng)位置的深度值,D_為最大深度??梢垣@得完整場景的灰度圖。
[0034] 進(jìn)一步的,對轉(zhuǎn)換后的深度圖進(jìn)行閾值分割,步驟為,根據(jù)實(shí)際需求調(diào)整閾值大 小,并對深度信息映射的灰度圖進(jìn)行閾值分割。利用過濾閾值DTh_hc]ld對采集到的場景進(jìn)行 二值化。
[0035] 進(jìn)一步的,其特征在于對閾值分割后的圖像進(jìn)行篩選,確定用戶的位置,步驟包 括:
[0036] 去除噪聲的影響;
[0037] 提取輪廓信息,并對輪廓進(jìn)行篩選;
[0038] 計(jì)算用戶位置。
[0039] 進(jìn)一步的,去除噪聲的影響,步驟為:設(shè)計(jì)膨脹核與腐蝕核,對閾值分割后的圖像 進(jìn)行形態(tài)學(xué)操作,進(jìn)行若干次腐蝕和膨脹操作,去除噪聲影響。
[0040] 進(jìn)一步的,提取輪廓信息,并對輪廓進(jìn)行篩選步驟為:
[0041] 提取二值圖像中的最外層輪廓,求解過濾后的二值化圖像的所有輪廓,并根據(jù)面 積閾值Taraa對輪廓進(jìn)行篩選,去除偽輪廓的影響。
[0042] 進(jìn)一步的,計(jì)算用戶位置,步驟為:利用交互中心坐標(biāo)計(jì)算方程
求解真實(shí)輪廓的重心坐標(biāo),其中, array(x,y)為灰度圖中像素值的大小。計(jì)算所得的重心位置即反映用戶位置。
[0043] 進(jìn)一步的,通過邊緣融合展現(xiàn)輪廓互動,步驟包括:
[0044] 交互狀態(tài)判定;
[0045] 繪制輪廓交