999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于Kinect體感傳感器的心理宣泄系統的實現

2014-07-01 23:28:48趙建敏許曉偉賈慧媛
傳感器與微系統 2014年8期
關鍵詞:心理模型系統

趙建敏, 許曉偉, 賈慧媛

(1.內蒙古科技大學 信息工程學院,內蒙古 包頭 014010;2.內蒙古科技大學 學工部,內蒙古 包頭 014010)

基于Kinect體感傳感器的心理宣泄系統的實現

趙建敏1, 許曉偉1, 賈慧媛2

(1.內蒙古科技大學 信息工程學院,內蒙古 包頭 014010;2.內蒙古科技大學 學工部,內蒙古 包頭 014010)

擊打宣泄是心理宣泄療法的主要手段。基于Kinect體感傳感器和Direct3D圖形繪制編程接口,設計并實現了心理宣泄系統。系統利用Kinect體感傳感器采集人體關節點坐標信息,控制虛擬拳頭擊打虛擬擊打對象,模擬真實拳擊運動,通過擊打實現心理宣泄。實驗表明:該系統不僅能獲得良好的心理宣泄效果,而且,可以為健身運動提供新的體驗平臺,其計算出的擊打力還可作為拳擊訓練的重要參考標準。

Direct3D; Kinect; 傳感器; 心理宣泄系統; 擊打力

0 引 言

2010年,微軟公司發布了Kinect體感傳感器,新興的體感交互方式強勢崛起,打破了傳統的人機交互方式,使人機交互的理念更徹底地展現出來,且被廣泛地應用于各行各業。

心理治療中,“宣泄療法”是一種常見的有效的減壓方法。隨著對心理健康的重視和心理健康教育的普及,很多學校甚至企業都創建了心理宣泄室。然而,傳統的心理宣泄室,場景單一,對象單一,成本投資大,治療效果受限。

本文提出了一種基于Kinect體感傳感器的虛擬心理宣泄系統,利用Kinect傳感器追蹤人體骨骼,獲取身體運動關節點坐標[1,2],結合Direct3D圖形繪制接口,模擬拳擊運動,實現心理宣泄,呈現出了良好的擊打宣泄效果。該系統不僅能獲得良好的心理治療效果,而且為拳擊運動愛好者提供了全新的健身體驗平臺。同時,系統中設計的基于圖像的擊打力量計算算法,可以為專業拳擊運動員拳擊訓練提供新的輔助手段。此外,也為體感交互技術開辟了新的應用領域。

1 總體設計

本文參照真實拳擊運動項目設計了基于Direct3D和體感交互技術的心理宣泄系統。該系統通過Kinect體感設備對人體動作進行采集捕捉,獲得人體的骨骼圖像數據,篩選出左、右手和手腕關節點的坐標。將手的坐標和虛擬拳頭進行綁定,以現實中的人手帶動屏幕中的虛擬拳頭完成擊打動作,并計算出出拳速度和擊打力。參照拳擊訓練人偶,虛擬擊打對象在虛擬拳頭的擊打下,根據拳速和擊打力搖擺或倒地,體現擊打效果,實現心理宣泄。通過Direct3D圖形繪制接口可進行場景、虛擬擊打對象模型和虛擬拳頭模型的加載、渲染。系統的總體結構圖如圖1所示。

圖1 心理宣泄系統總體結構圖Fig 1 Overall structure of psychological catharsis system

2 骨骼圖像信息的獲取和處理

通過Kinect設備的骨骼追蹤技術獲取人體骨骼圖像信息[3],從中取出關鍵關節點坐標,并進行處理,具體實施流程圖如圖2所示。

圖2 圖像信息的獲取和處理流程圖Fig 2 Flow chart of acquiring and processing of image information

首先,進行體感設備初始化,分為兩部分:檢查Kinect設備狀態和創建設備ID。檢查Kinect設備的狀態,主要是檢查Kinect設備是否連接到電腦上和Kinect設備的驅動是否安裝成功;若設備狀態正常,NuiCreateSensorByIndex函數創建設備ID。

其次,檢查是否追蹤到人體骨骼,只有人體和Kinect在一定的距離范圍內,設備才能進行骨骼追蹤。完成骨骼追蹤后,檢查獲得的骨骼信息中是否含有關節點坐標。Kinect傳感器追蹤到人體后,會有2種追蹤狀態:NUI_SKELETON_POSITION_ONLY狀態,僅包含骨骼中心點的坐標,此狀態舍去;NUI_SKELETON_TRACKED狀態,包含所有關節點坐標,從中取出手和手腕關節點坐標。

最后,完成骨骼坐標系到深度坐標系、深度坐標系到屏幕坐標系的轉換。利用NuiTransformSkeletonToDepthImage函數可將骨骼坐標系轉換到深度坐標系,用于拳速和擊打力的計算。

由于控制虛擬拳頭是在屏幕坐標系內完成,因此,需要將深度坐標系轉換成屏幕坐標系。屏幕橫縱坐標的計算見式(1)和式(2)

(1)

(2)

其中,x,y為深度坐標系中的坐標值,width,height為顯示窗口的寬度和高度, ScreenWidth,ScreenHeight為默認的深度圖像分辨率的寬度和高度。

3 虛擬拳頭的渲染和控制

系統將人手關節點的屏幕坐標賦值給虛擬拳頭的中心點,實現人手和虛擬拳頭之間的綁定,以現實中的人手帶動屏幕中的虛擬拳頭完成擊打動作。

首先,進行虛擬拳頭的渲染。在3DSMAX軟件中模仿出拳前臂,繪制出拳頭模型,并賦予其材質和人體皮膚紋理,再以微軟定義的3D模型文件格式即.X文件格式導出[4]。在程序中,用D3DXLoadMeshFromX函數加載.X格式文件,讀出材質和紋理,并設定光照,進行渲染。

其次,進行虛擬拳頭的控制,包含2個方面:位置移動控制和出拳姿態控制。

1)位置移動控制:在程序中,左、右手的坐標定義如下:

D3DPositionScreenHandLeft= {0};

D3DPositionScreenHandRight= {0};

其中D3DPosition結構體的定義如下:

typedefstructD3DPosition

{

floatx;

floaty;

floatz;

}D3DPosition.

從骨骼追蹤數據中獲取左、右手關節點坐標,并將其轉化為屏幕坐標,為變量ScreenHandLeft,ScreenHandRight賦值。在虛擬拳頭渲染的時候,將變量ScreenHandLeft,ScreenHandRight的值放入拳頭的世界變換的平移變換中,實現虛擬拳頭的位置跟隨操控。

2)出拳姿態控制:將左、右手臂等效為2個空間向量:LeftArmVector和RightArmVector,通過4個關節點坐標即左、右手關節點坐標(ScreenHandLeft和ScreenHandRight)和左、右手腕關節點坐標(ScreenWristLeft和ScreenWristRight)計算出。之后,根據手臂空間向量的方向在系統中調整虛擬拳頭姿態,使其根據真實前臂方向改變自身方向。

對于左拳頭姿態改變,獲取當前的ScreenHandLeft的坐標為(x0,y0,z0),ScreenWristLeft的坐標為(x1,y1,z1),則左前臂向量LeftArmVector的坐標為(x0-x1,y0-y1,z0-z1),將此向量投影到XZ平面上,它與Z軸的夾角fAngleY就決定了虛擬拳頭繞拳頭中心點左、右方向旋轉的角度。其中,fAngleY的計算如式(3)

(3)

將左前臂向量投影到YZ平面上,它與Y軸的夾角fAngleX決定了虛擬拳頭繞拳頭中心點上、下方向旋轉的角度。其中,fAngleX的計算如式(4)

(4)

將角fAngleX和fAngleY分別給拳頭模型的世界變換中的繞X軸和Y軸旋轉的2個旋轉變換,就可以實現左拳頭隨著前臂方向改變進行自身姿態的變化。

對于右拳頭的姿態改變,具體計算方法如同左拳頭。

4 目標命中判定與拳速以及擊打力的計算

系統中,擊打對象仿真人偶的創建和渲染與虛擬拳頭相同,將其固定在屏幕的虛擬擊打場地中央,人偶上身作為擊打目標,響應擊打動作。

人體作出擊打動作且屏幕中的拳頭擊中人偶的上半身時,計算出拳速度和擊打力,其流程圖如圖3所示。

圖3 拳擊擊打流程圖Fig 3 Flow chart of boxing hitting

首先,設置擊打目標區域,其計算方法如下:

將上半身目標區域等效為定邊長矩形,其中心點的位置隨擊打后人偶擺動而變化,如圖4所示。

圖4 擊打目標區域變化等效圖Fig 4 Equivalent diagram of change of hitting target area

圖4以人偶模型底部的中心點為原點,建立一個坐標系。初始時,人偶模型不動,與y軸重合,設人偶模型的高度為l,矩形的寬為w,高為h,則矩形中心點A的坐標為(0,l-h/2)。當受到擊打后,人偶模型開始搖擺,當擺角為α時,設中心點A′的坐標為(x,y),計算如下

(5)

(6)

當模型向右偏,位于第一象限時,x取正;向左偏,位于第二象限時,x取負。將獲得的中心點坐標加減矩形的長寬,可獲得目標區域矩形的4個點坐標。

其次,基于擊打目標區域判定是否擊中目標,若左手關節點的屏幕坐標落入目標區域,認為左手擊中目標;否則,同樣的方法判定右手是否擊中目標。

無論是左手還是右手擊中目標后,將其在當前幀和前一幀中的深度坐標系坐標賦值給變量CurrentHandPosition0和LastHandPosition0。在深度坐標系中,X,Y為像素值,Z分量為長度,單位mm。為實現拳速計算,做如下標度變換:設變量坐標在單位換算前的值為(x0,y0,z0),換算后為(x,y,z),則根據KinectSDK中的像素和單位“m”的換算程序得到

其中,width和height分別為深度分辨率的寬和高,在此取320和240。

然后,計算出拳速度和擊打力。

1)出拳速度計算:拳速計算公式如式(7)所示

(7)

其中,CurrentHandPosition和LastHandPosition是擊中目標的那只手在當前幀和前一幀中經過單位轉換后的關節點坐標;CurrentFrameTime和LastFrameTime是當前幀和前一幀的采樣時間,用timeGetTime()獲取。由于關節點坐標均為三維坐標,計算出的速度v也是三維坐標。

2)擊打力計算:拳擊運動在擊打的瞬間,相當于拳頭和人偶的碰撞。根據沖量定律

Ft=mvt-mv,

(8)

令m為手臂的質量,v和vt是拳頭在碰撞時的初速度和末速度,t為碰撞時間,可計算拳頭的擊打力F為

(9)

設m為10kg,vt因拳頭碰撞后靜止,恒為0,v可由式(7)計算獲得,碰撞時間t計算如下:

將拳頭和人偶近似等效為2個質量不等的彈性球體。在兩球碰撞過程中,碰撞時間與兩球半徑之和呈正比,與初速度之和呈反比,而與兩球質量無關[5]。設R1和R2為兩球的半徑,v1和v2為兩球碰撞前的初速度,則碰撞時間t為

(10)

其中,設手的半徑R1為0.05m,初速度v1為v;人偶的半徑R2為0.3m,初速度v2為0,則式(10)可化簡為

(11)

將m=10kg,vt=0以及式(11)帶入式(9)可得

(12)

在上面的公式中,v為三維空間中的矢量,則力的大小如下

(13)

其中

(14)

5 擊打對象響應

根據拳速和擊打力量的大小,系統控制人偶響應擊打動作。

本文設定了擊打力量閾值,若擊打力量大于最大值,人偶倒地;否則,根據動量守恒定律計算碰撞后,人偶擺動初速度,如式(15)所示

(15)

其中,m1為手臂質量,設為10kg,初速度v1由式(7)計算得出,因擊打完后手臂靜止故末速度v2為0;m2為人偶質量,設為25kg,擊打前人偶靜止故其初速度v1為0。將已知變量的值帶入式(15)可化簡為

(16)

通過多次擊打嘗試和屏幕中的實際效果顯示,得出了速度和搖擺角度之間的一個近似線性公式

(17)

其中,k≈0.1rad·s/m,fAngle是人偶首次搖擺的最大角度,根據實際效果,角度每周期大約衰減10 %,直到人偶擺角小于0.05rad,停止擺動。

人偶倒地和擺動效果,是通過Direct3D中世界變換的旋轉變換來實現的。無論是倒地還是搖擺,把人偶運動方向簡化為4個原子方向即左、右、前、后方向。其中,左、右方向繞Z軸旋轉,前、后方向繞X軸旋轉。若實現模型倒下效果,則給繞X軸或者Z軸的旋轉變換函數賦值π/2或者-π/2;實現模型繞X軸或者Z軸的搖擺fAngleX或fAngleY角度的效果,則給繞X軸或者Z軸的旋轉變換函數賦值fAngleX,fAngleY。

為了增強心理宣泄系統的空間感和真實感,基于Direct3D加載了三維天空和三維地面來豐富場景,并通過PlaySound函數添加了背景音效。此外,系統根據宣泄對象,設計了宣泄菜單,通過Kinect體感設備的手勢識別來進行菜單選定[6]。

6 拳擊擊打力的實驗驗證

為了驗證公式(13)中計算出的擊打力F是否符合實際,進行了多次試驗,實驗數據和計算結果如表1所示。

表1 擊打力的實驗數據Tab 1 Experimental datas of punching force

實際中,普通人的擊打力量為1 000~1 500 N,實驗結果顯示:虛擬系統中,擊打力量在此范圍內,滿足系統要求,可以作為拳擊訓練的重要參考。

7 結束語

本文基于Direct3D圖形繪制接口完成了場景、拳頭模型和人偶模型的渲染、加載;利用Kinect體感設備獲取人體關節點坐標信息,對虛擬拳頭進行位置移動和姿態控制,并在人體作出擊打動作后,計算出拳速和擊打力量,進而控制人偶作出擊打響應動作,仿照實物擊打宣泄療法,實現了虛擬心理宣泄系統。此系統開辟了體感應用的新領域,為心理宣泄療法提供了一種全新的手段,也為拳擊運動愛好者提供了新的體驗平臺。

[1] Abedan Kondori Farid,Shahrouz Yousefi,Li Haibo,et al.3D head pose estimation using the Kinect[C]∥International Confe-rence on Wireless Communications and Signal Processing:IEEE,2011:1-4.

[2] Biswas K K,Basu Saurav Kumar.Gesture recognition using Microsoft Kinect[C]∥Proceedings of the 5th International Confe-rence on Automation,Robotics and Applications:IEEE,2011:100-103.

[3] 林海波,梅為林,張 毅,等.基于Kinect骨骼信息的機械臂體感交互系統的設計[J].計算機應用與軟件,2013,30(2):157-160,176.

[4] 顏 武,鄧定華.游戲開發中基于Direct3D之3D模型運用[J].計算機與現代化,2006(7):90-94.

[5] 鄭煥武.碰撞時間的定量計算[J].四川師范大學學報,2001,24(5):23-25.

[6] 羅 元,謝 彧,張 毅.基于Kinect傳感器的智能輪椅手勢控制系統的設計與實現[J].機器人,2012,34(1):110-113,119.

Implementation of psychological catharsis system based on Kinect somatosensory sensor

ZHAO Jian-min1, XU Xiao-wei1, JIA Hui-yuan2

(1.School of Information Engineering,Inner Mongolia University of Science and Technology,Baotou 014010,China; 2.Department of Student Affairs,Inner Mongolia University of Science and Technology,Baotou 014010,China)

Hitting catharsis is the primary means of psychological catharsis therapy.Based on Kinect somatosensory sensor and Direct3D graphics rendering programming interface,psychological catharsis system is designed and implemented.This system uses Kinect somato sensory sensor to collect coordinates information of joints of human body,to control virtual fist to hit virtual hitting objects,and to simulate real scene of boxing,in order to achieve psychological catharsis by hitting.Experimental results show that this system can not only achieve good psychological catharsis effect,but also can provide a new experience platform for fitness exercises,and at the same time,the impact force calculated can be used as an important reference of boxing training.

Direct3D; Kinect; sensor; psychological catharsis system; impact force

10.13873/J.1000—9787(2014)08—0119—04

2013—11—06

TP 311

A

1000—9787(2014)08—0119—04

趙建敏(1982-),男,內蒙古包頭人,碩士,講師,主要從事人機交互、控制模式識別研究。

猜你喜歡
心理模型系統
一半模型
看見具體的自己
光明少年(2024年5期)2024-05-31 10:25:59
Smartflower POP 一體式光伏系統
工業設計(2022年8期)2022-09-09 07:43:20
心理“感冒”怎樣早早設防?
當代陜西(2022年4期)2022-04-19 12:08:54
WJ-700無人機系統
ZC系列無人機遙感系統
北京測繪(2020年12期)2020-12-29 01:33:58
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
心理感受
娃娃畫報(2019年11期)2019-12-20 08:39:45
連通與提升系統的最后一塊拼圖 Audiolab 傲立 M-DAC mini
主站蜘蛛池模板: 成人午夜精品一级毛片| 国产成在线观看免费视频| 国产综合色在线视频播放线视| 在线国产综合一区二区三区| 就去吻亚洲精品国产欧美| 操美女免费网站| 99热线精品大全在线观看| 高清无码不卡视频| 久久久久人妻一区精品色奶水| 国产亚卅精品无码| 一级毛片免费的| 亚洲A∨无码精品午夜在线观看| 中文字幕永久在线观看| 亚洲欧美一级一级a| 精品视频一区二区三区在线播| 国产真实乱人视频| 国产h视频免费观看| 婷婷六月在线| 国产乱人伦偷精品视频AAA| 欧美精品1区2区| 国产欧美日韩在线在线不卡视频| 日韩人妻少妇一区二区| 国产亚洲精品资源在线26u| 精品色综合| 亚洲成在线观看 | 国产一区在线观看无码| 久久成人免费| 最新国产网站| 国产精品九九视频| 国产网站一区二区三区| 亚洲永久色| 98超碰在线观看| 国产精品亚洲а∨天堂免下载| 精品久久久久久中文字幕女| 亚洲性色永久网址| 日韩资源站| 国产18在线| 在线免费看片a| 欧美日韩国产成人高清视频| 女人18毛片水真多国产| 欧美翘臀一区二区三区| 亚洲侵犯无码网址在线观看| 久久香蕉国产线看观看精品蕉| 欧洲精品视频在线观看| 内射人妻无套中出无码| 97视频精品全国在线观看| 日本伊人色综合网| 亚洲精品不卡午夜精品| 久久九九热视频| 亚洲另类国产欧美一区二区| 日韩在线影院| 久久这里只有精品66| 91无码人妻精品一区二区蜜桃| 日韩av在线直播| 91福利一区二区三区| 午夜免费小视频| 免费国产无遮挡又黄又爽| 日韩欧美国产三级| 国产日韩精品一区在线不卡| 九九免费观看全部免费视频| 男女性色大片免费网站| 高潮毛片无遮挡高清视频播放| 欧美日韩v| 日本在线欧美在线| 亚洲国产午夜精华无码福利| 自慰高潮喷白浆在线观看| 国产人免费人成免费视频| 九色免费视频| 国产福利拍拍拍| 99热最新网址| 国产女人18水真多毛片18精品 | 久久综合九九亚洲一区| 国产精品三级av及在线观看| 69综合网| 国产在线精品人成导航| 久久精品人人做人人| www.亚洲一区二区三区| 国产永久在线视频| 2021天堂在线亚洲精品专区| 日韩午夜伦| 91成人在线观看视频| 国产午夜一级毛片|