一種基于Kinect傳感器的投影方法
【專利摘要】本發(fā)明公開了一種基于Kinect傳感器的投影方法。使用本發(fā)明能夠利用Kinect使得投影能夠自動追蹤人體,產(chǎn)生豐富多彩的舞臺效果。本發(fā)明利用Kinect傳感器獲得人體骨骼數(shù)據(jù)流和深度數(shù)據(jù)流,然后根據(jù)深度圖像空間、真實三維空間、投影空間之間的轉(zhuǎn)換關(guān)系,將骨骼數(shù)據(jù)流和深度數(shù)據(jù)流變換到投影空間中,并根據(jù)骨骼點在投影空間中進行人體投影設(shè)置,再經(jīng)投影儀投影至真實三維空間,產(chǎn)生豐富多彩的舞臺效果。本發(fā)明不要演員隨身攜帶設(shè)備,也不需要多臺投影設(shè)備,設(shè)備簡單,使用方便、可靠。
【專利說明】一種基于Kinect傳感器的投影方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及自動化投影【技術(shù)領(lǐng)域】,具體涉及一種基于Kinect傳感器的投影方法?!颈尘凹夹g(shù)】
[0002]傳統(tǒng)的舞臺追光燈絕大多數(shù)是由操作員手動操作,不僅費時費力,對操作員的操作水平要求較高,而且容易產(chǎn)生操作錯誤。而現(xiàn)今新出現(xiàn)的舞臺自動追光燈,都是舞臺演員身上攜帶無線發(fā)射器等設(shè)備,計算機通過判斷設(shè)備的位置從而判斷人的位置,然后追光燈將光投向該位置;因而若演員不小心將設(shè)備遺落,追光燈便會無法判斷人的位置,進而將光投向錯誤的位置,可靠性差。
[0003]Kinect是微軟推出的一款游戲傳感器,它可以自動識別人體,并得到人體20個骨骼點(如頭部、頸部、腕部、腰部等)相對于Kinect的坐標,因此,該傳感器可以應(yīng)用于其他領(lǐng)域,如自動化投影【技術(shù)領(lǐng)域】。
【發(fā)明內(nèi)容】
[0004]有鑒于此,本發(fā)明提供了一種基于Kinect傳感器的投影方法,利用Kinect使得投影能夠自動追蹤人體。
[0005]本發(fā)明的基于Kinect傳感器的投影方法,包括如下步驟:
[0006]步驟1,將Kinect傳感器與投影儀放置在待投影的真實三維空間前方;
[0007]其中,由Kinect傳感器獲得的深度數(shù)據(jù)流形成的深度圖像定義為深度圖像空間,其左上角為原點;定義計算機屏幕為投影空間,其左上角為原點;定義投影儀的投影區(qū)域為真實三維空間,其左上角為真實三維空間原點;投影空間的原點經(jīng)投影儀投射在真實三維空間的原點;
[0008]步驟2,利用Kinect傳感器獲得人體骨骼數(shù)據(jù)流和深度數(shù)據(jù)流,利用深度圖像空間、真實三維空間、投影空間之間的轉(zhuǎn)換關(guān)系,將骨骼數(shù)據(jù)流和深度數(shù)據(jù)流變換到投影空間中;
[0009]步驟3,根據(jù)骨骼點在投影空間中進行人體投影設(shè)置,再經(jīng)投影儀投影至真實三維空間。
[0010]其中,所述步驟2中,人體骨骼數(shù)據(jù)流和深度數(shù)據(jù)流變換到投影空間中的方法如下:
[0011]步驟2.1,利用Kinect for windows SDK程序開發(fā)包將骨骼數(shù)據(jù)流和深度數(shù)據(jù)流變換到深度圖像空間;
[0012]步驟2.2,根據(jù)深度圖像空間與真實三維空間的坐標轉(zhuǎn)換關(guān)系,以及投影空間與真實三維空間的坐標轉(zhuǎn)換關(guān)系,得到深度圖像空間與投影空間之間的轉(zhuǎn)換關(guān)系,利用深度圖像空間與投影空間之間的轉(zhuǎn)換關(guān)系將人體骨骼點映射到投影空間上。
[0013]其中,所述步驟2.2中深度圖像空間與真實三維空間的坐標轉(zhuǎn)換關(guān)系為線性關(guān)系:
【權(quán)利要求】
1.一種基于Kinect傳感器的投影方法,其特征在于,包括如下步驟: 步驟1,將Kinect傳感器與投影儀放置在待投影的真實三維空間前方; 其中,由Kinect傳感器獲得的深度數(shù)據(jù)流形成的深度圖像定義為深度圖像空間,其左上角為原點;定義計算機屏幕為投影空間,其左上角為原點;定義投影儀的投影區(qū)域為真實三維空間,其左上角為真實三維空間原點;投影空間的原點經(jīng)投影儀投射在真實三維空間的原點; 步驟2,利用Kinect傳感器獲得人體骨骼數(shù)據(jù)流和深度數(shù)據(jù)流,利用深度圖像空間、真實三維空間、投影空間之間的轉(zhuǎn)換關(guān)系,將骨骼數(shù)據(jù)流和深度數(shù)據(jù)流變換到投影空間中;步驟3,根據(jù)骨骼點在投影空間中進行人體投影設(shè)置,再經(jīng)投影儀投影至真實三維空間。
2.如權(quán)利要求1所述的基于Kinect傳感器的投影方法,其特征在于,所述步驟2中,人體骨骼數(shù)據(jù)流和深度數(shù)據(jù)流變換到投影空間中的方法如下: 步驟2.1,利用Kinect for windows SDK程序開發(fā)包將骨骼數(shù)據(jù)流和深度數(shù)據(jù)流變換到深度圖像空間; 步驟2.2,根據(jù)深度圖像空間與真實三維空間的坐標轉(zhuǎn)換關(guān)系,以及投影空間與真實三維空間的坐標轉(zhuǎn)換關(guān)系,得到深度圖像空間與投影空間之間的轉(zhuǎn)換關(guān)系,利用深度圖像空間與投影空間之間的轉(zhuǎn)換關(guān)系將人體骨骼點映射到投影空間上。
3.如權(quán)利要求2所述的基于Kinect傳感器的投影方法,其特征在于,所述步驟2.2中深度圖像空間與真實三維空間的坐標轉(zhuǎn)換關(guān)系為線性關(guān)系:
4.如權(quán)利要求3所述的基于Kinect傳感器的投影方法,其特征在于,kn、k12、bn、b12、k21、k22的獲取方法如下:①在與系統(tǒng)距離為L的墻面不同位置放置2個立方體小盒,其在真實三維空間的坐標 ②在深度圖像中找到2個立方體小盒對應(yīng)的像素點坐標(Dxl,Dyl)和(Dx2,Dy2); ③利用(Dxi,Dyi)和(Pxi,Pyi)之間的關(guān)系,i=l,2,確定出(I)式的參數(shù)kn、k12、bn、b12; ④令投影空間右下角坐標為(320,240),用米尺測量出真實三維空間中投影區(qū)域右下角坐標為(Pxb,Pyb, L),得到 k21 = Pxb/320,k22 = Pyb/240 ; ⑤將實驗得到的參數(shù)kn、k12、bn、b12、k21、k22代入式(4),得到距離L下的式(3)的參數(shù)值 kx、ky、bx、by。
5.如權(quán)利要求1~4任意一項所述的基于Kinect傳感器的投影方法,其特征在于,在投影空間中,以需要跟蹤的骨骼點的坐標為圓心,畫一個光斑,該光斑經(jīng)投影儀投影在真實三維空間中。
6.如權(quán)利要求1~4任意一項所述的基于Kinect傳感器的投影方法,其特征在于,在投影空間中,以人體骨骼為分界點將人體分為多個部位,并設(shè)置人體不同部位顯示不同的顏色,再經(jīng)投影儀投影至真實三維空間。
【文檔編號】H04N5/74GK103747196SQ201310752671
【公開日】2014年4月23日 申請日期:2013年12月31日 優(yōu)先權(quán)日:2013年12月31日
【發(fā)明者】楊毅, 呂憲偉, 李一錦, 李星河, 朱昊, 程思源 申請人:北京理工大學