專利名稱:一種基于智能手機的三維交互方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于人機交互領(lǐng)域,具體地涉及基于智能手機的三維交互方法及系統(tǒng)。
背景技術(shù):
近年來,隨著計算機軟硬件及信息網(wǎng)絡(luò)的發(fā)展,人們信息獲取的來源已經(jīng)不局限于傳統(tǒng)的辦公桌上。可呈現(xiàn)更多內(nèi)容的大尺寸、高分辨率電子屏幕越來越多地出現(xiàn)在非公共場所(家庭式大尺寸液晶電視、家用投影儀)以及公共場所(會議室、演講廳、機場、火車站、購物中心、博物館)等。電子大屏幕雖然可以呈現(xiàn)大量豐富的內(nèi)容,但是由于缺乏合適的交互技術(shù)與交互設(shè)備,多數(shù)不具有互動性,用戶很難獲得感興趣的內(nèi)容或者去影響改變大屏幕的內(nèi)容。傳統(tǒng)的WMP界面交互設(shè)備如鼠標、鍵盤機動性較差,且通常情況下只支持單人交互;若采用觸摸屏式的交互,也需要考慮公共物品保護以及價格昂貴等因素。在這種情形下,人們迫切需要一種便捷的、廉價的交互技術(shù)用于這些新型的交互場合。相比于傳統(tǒng)的設(shè)備如鼠標,智能手機具有明顯優(yōu)勢首先,手機做為一種日常生活通訊設(shè)備,易于攜帶、移動,其使用空間不受限制;其次,機載的攝像頭、觸摸屏、慣性傳感器等提供了強大的多通道輸入能力;再次,CPU越來越高的主頻以及越來越大的機載內(nèi)存,都為手機作為計算平臺和交互輸入設(shè)備提供了可能;最后,通過Wifi或者藍牙連接,手機可以遠距離與大屏幕進行無線通信。智能手機,尤其是像iPhone、Android等配有高像素攝像頭、大尺寸多點觸摸屏幕、豐富的傳感器的手機,給大屏幕交互領(lǐng)域帶來了新的希望。當前手機作為交互設(shè)備與大屏幕進行交互的方式主要有以下幾種方式一、通過手機物理按鍵對遠程大屏幕進行操作;方式二、將大屏幕的圖像發(fā)送并顯示在手機觸摸屏上操作,然后將操作發(fā)送回至大屏幕;方式三、通過用攝像頭來進行大屏幕的控制。第一種交互方式將物理按鍵與大屏幕上的操作進行功能映射;由于手機物理按鍵的數(shù)目限制,此種交互方式僅能實現(xiàn)少數(shù)較為簡單的操作,若要實現(xiàn)復(fù)雜或者更多的操作時,則需采用組合鍵,這必然會增加用戶的記憶負擔(dān)。第二種交互方式將大屏幕上的內(nèi)容通過無線網(wǎng)絡(luò)發(fā)送并顯示到手機觸摸屏上,對觸摸屏的操作直接映射為對大屏幕的操作;此種交互方式較為直觀,但是由于通訊過程中涉及圖像的實時傳送、交互過程易出現(xiàn)延遲,并且對于一些三維應(yīng)用場景,對觸摸屏的二維觸摸操作不能正確的反應(yīng)用戶的交互意圖。第三種交互方式通過基于視覺的運動跟蹤,將手機當做一種指向設(shè)備使用,但由于大多數(shù)基于攝像頭的姿態(tài)解算算法復(fù)雜度較高,交互過程延遲較大,并且開啟攝像頭耗電量大,會造成交互設(shè)備續(xù)航能力下降,進而影響用戶體驗;并且多數(shù)基于攝像頭的算法只能達到水平垂直兩個方向自由度的交互,同時由于用戶長時間操作會感覺疲勞(需伸直手臂將攝像頭對準設(shè)備屏幕或者背景環(huán)境)。
綜上所述,無論是哪一種交互方式,在信息的及時傳遞、方便快捷的操作、三維場景再現(xiàn)和能耗方面都均在不同程度的缺陷。
發(fā)明內(nèi)容
針對現(xiàn)有技術(shù)中存在的技術(shù)問題,本發(fā)明的目的在于提供一種基于智能手機的交互方法及系統(tǒng),使得用戶在與大屏幕交互的過程中,不受物理空間的限制,不僅可以用三維交互設(shè)備(例如智能手機、任天堂的Wii、索尼的PS3手柄等)代替鼠標、鍵盤等二維交互設(shè)備在二維交互界面或者場景的交互,還能用于在三維交互界面或者場景的交互。為實現(xiàn)上述目的,我們提出一種基于智能手機的三維交互方法,包括以下步驟I)建立大屏幕服務(wù)器與智能手機客戶 端之間的通訊連接;2)客戶端基于傳感器(加速度計、陀螺儀、磁力計及觸屏感應(yīng)裝置等)執(zhí)行交互操作(旋轉(zhuǎn)手機或者觸摸屏輸入)通過空間姿態(tài)解算獲得客戶端的姿態(tài)角[的及空間指向,其中V為航向角,0為俯仰角4為傾斜角;3)客戶端對觸摸屏區(qū)域進行功能劃分,通過將空間姿態(tài)與觸摸屏事件融合,封裝成交互消息數(shù)據(jù)包,通過無線方式發(fā)送給服務(wù)器端;4)服務(wù)器端接收交互消息數(shù)據(jù)包后,提取出交互消息中的空間姿態(tài)信息與觸摸屏事件;5)服務(wù)器端對空間姿態(tài)信息以及觸摸屏事件進行交互映射;若是二維交互場景,則映射為鼠標、鍵盤等2D操作;若是三維交互場景,則映射為虛擬三維空間內(nèi)物體的選擇與控制等3D操作;6)完成當前任務(wù)后,切換回默認狀態(tài);7)重復(fù)步驟S2至S5,直至全部交互任務(wù)完成。針對上述方法,我們提出一種基于智能手機的三維交互系統(tǒng),包括客戶端、網(wǎng)絡(luò)層和服務(wù)器端,客戶端和服務(wù)器端通過網(wǎng)絡(luò)層連接,其中客戶端包括客戶端交互界面層和客戶端應(yīng)用邏輯層,對應(yīng)的服務(wù)器端包括服務(wù)器端應(yīng)用邏輯層和服務(wù)器端交互界面層;客戶端交互界面層獲取空間姿態(tài)和觸屏狀態(tài),并將這些數(shù)據(jù)發(fā)送至客戶端應(yīng)用邏輯層進行計算、編碼,然后通過網(wǎng)絡(luò)層將編碼后的數(shù)據(jù)發(fā)送至服務(wù)器端,服務(wù)器端的應(yīng)用邏輯層對接收到的數(shù)據(jù)進行解碼,還原其交互映射狀態(tài),并通過服務(wù)器端交互界面層顯示。所述網(wǎng)絡(luò)層可以是無線連接模式,包括wifi和/或藍牙,也可以是有線連接模式,本發(fā)明在以無線連接時效果最為突出。所述客戶端交互界面層包括傳感器,其中傳感器包括加速度計、陀螺儀、磁力計和觸屏感應(yīng)裝置等。所述客戶端應(yīng)用邏輯層包括空間姿態(tài)解算模塊、觸屏數(shù)據(jù)處理模塊、交互信息編碼模塊和網(wǎng)絡(luò)管理模塊;空間姿態(tài)解算模塊和觸屏數(shù)據(jù)處理模塊對客戶端交互界面層的原始數(shù)據(jù)進行計算處理,將處理后的數(shù)據(jù)傳輸至交互消息編碼模塊進行編碼打包,然后通過網(wǎng)絡(luò)管理模塊發(fā)送至網(wǎng)絡(luò)層。所述空間姿態(tài)計算模塊對智能手機的運動狀態(tài)進行計算,包括快速運動狀態(tài)、接近靜止狀態(tài),及誤差校準。所述觸屏數(shù)據(jù)處理模塊對智能手機的觸摸屏上感應(yīng)到的觸摸狀態(tài)、觸點數(shù)量及觸摸位置進行數(shù)據(jù)處理。所述服務(wù)器端應(yīng)用邏輯層包括網(wǎng)絡(luò)管理模塊、交互信息解碼模塊和交互映射模塊;其中交互信息解碼模塊通過網(wǎng)絡(luò)管理模塊對從網(wǎng)絡(luò)層獲取的交互信息進行解碼,然后將解碼后的信息傳輸至服務(wù)器交互映射模塊。
所述服務(wù)器端交互映射模塊包括二維交互映射模塊和三維交互映射模塊,通過獲取的解碼信息,依據(jù)交互事件列表進行查詢,然后進行空間姿態(tài)和觸屏事件的二維和/或三維交互映射。所述二維交互映射包括鼠標左鍵單雙擊、鼠標右鍵單雙擊、鼠標拖拽等動作。所述三維交互映射包括選擇、操縱、導(dǎo)航等動作。所述服務(wù)器端交互界面層包括二維交互界面和三維交互界面。本方法為具有大屏幕顯示設(shè)備的計算機系統(tǒng)提供了一種簡單有效的基于智能手機的三維交互技術(shù)。在交互的過程中引入了傳感器與觸摸屏輸入融合的思想,只需要一臺支持觸屏和具備網(wǎng)絡(luò)連接端口(尤其是具備Wifi或者藍牙等無線連接端口)的智能手機,通過手機的旋轉(zhuǎn)與觸摸屏的輸入結(jié)合,便能夠?qū)崿F(xiàn)用戶與大屏幕顯示設(shè)備的交互。本發(fā)明使得基于智能手機的大屏幕交互支持的操作自由度大大提升,并且交互過程實時、準確,交互體驗得以改善。與現(xiàn)有技術(shù)相比,本發(fā)明具有如下的有益技術(shù)效果I.本交互方法基于智能手機可通過無線通訊的方式實現(xiàn)了與大屏幕交互,是對傳統(tǒng)鍵盤鼠標交互的一大擴展。2.本發(fā)明創(chuàng)新性提出基于傳感器計算手機的空間姿態(tài)和基于觸屏手指動作的交互,結(jié)合觸摸屏輸入,不僅可以達到交互過程的實時、準確,而且傳感器相比于攝像頭而言,耗電量較小,交互設(shè)備續(xù)航能力增強。3.本發(fā)明可以通過對觸摸屏區(qū)域進行針對性的劃分以及改變交互事件列表,實現(xiàn)不同的交互映射方式以適應(yīng)應(yīng)用場景,可擴展性強。4.本發(fā)明支持基于手機運動跟蹤的自然人機交互。用戶的交互過程不需要學(xué)習(xí)其它新的知識,只需像使用手機一樣,通過旋轉(zhuǎn)手機,以及結(jié)合觸摸屏的輸入,即可與大屏幕進行交互。5.本交互方法充分利用了智能手機的便攜性,易于實現(xiàn)、成本上的相對低廉,而且操作簡單,在常用的計算機環(huán)境下,將極大改善參與者的用戶體驗,在提高了大屏幕交互體驗的同時,也支持基于手持設(shè)備上的輸入和輸出,促進了與個人信息管理設(shè)備(手持設(shè)備)間的信息交流,方便了用戶任務(wù)的完成。
圖I為本發(fā)明系統(tǒng)的結(jié)構(gòu)框圖;圖2為空間姿態(tài)解算流程圖;圖3為空間姿態(tài)二維映射示意圖;圖4為空間姿態(tài)三維映射示意圖;圖5為二維交互觸摸屏區(qū)域劃分圖;圖6為三維交互觸摸屏區(qū)域劃分圖;圖7為手機模擬鼠標指向; 圖8為手機摸擬鼠標左鍵單/雙擊;圖9為手機摸擬鼠標拖拽;圖10為手機摸擬鼠標右鍵單擊;
圖11為三維交互指向與選擇操作;圖12為三維交互物體沿X軸移動;圖13為三維交互物體沿y軸移動;圖14為三維交互物體繞z軸轉(zhuǎn)動;圖15為三維交互物體沿z軸移動;圖16為三維交互物體放大與縮小。
具體實施方式
為了使本技術(shù)領(lǐng)域的技術(shù)人員更好的理解,下面結(jié)合附圖和實施方式對本交互方法作進一步的詳細說明,所描述的實施例僅旨在便于對本發(fā)明的理解,本發(fā)明并不局限于此。為了實現(xiàn)本發(fā)明的方法及系統(tǒng),實施時采用的計算機CPU主頻為2. 66GHz,內(nèi)存為4G,硬盤為500G的計算機或其他類型的計算機,采用的智能手機其ARM CPU主頻為IG Hz,內(nèi)存為512M,操作系統(tǒng)為Android2. 3。在服務(wù)器端的PC和客戶端的手機上分別采用C++和.Java編制相關(guān)程序。本發(fā)明系統(tǒng)的結(jié)構(gòu)框圖請參見圖I。首先構(gòu)造客戶端交互界面層,如圖I所示,利用加速度計、陀螺儀、磁力計等后臺儀器獲取客戶端的傳感器數(shù)據(jù)(如加速度計值、陀螺儀值、磁力計值),通過交互界面的觸屏感應(yīng)裝置獲取用戶操作的觸摸屏數(shù)據(jù)(狀態(tài)、位置),并將傳感器數(shù)據(jù)與觸屏數(shù)據(jù)做為輸入的原始數(shù)據(jù)發(fā)送給客戶端應(yīng)用邏輯層。對于應(yīng)用場景的不同,觸摸屏的功能區(qū)域也會不同,例如本發(fā)明中針對二維用戶場景,提出了如圖5的功能區(qū)域劃分,而針對三維用戶場景,我們則提出了如圖6的功能區(qū)域劃分。然后構(gòu)造客戶端應(yīng)用邏輯層。如圖I所示,該層具有客戶端空間姿態(tài)解算模塊、客戶端觸屏數(shù)據(jù)處理模塊、客戶端交互消息編碼模塊和客戶端網(wǎng)絡(luò)管理模塊等。客戶端應(yīng)用邏輯層獲取傳感器數(shù)據(jù)后,由客戶端空間姿態(tài)解算模塊計算手機的空間姿態(tài),客戶端應(yīng)用邏輯層會根據(jù)不同的運動狀態(tài)采用不用的解算法。本發(fā)明中,當狀態(tài)判斷為快速運動時,采用基于陀螺儀積分的龍格庫塔法計算空間姿態(tài);而當狀態(tài)判斷為接近靜止時,通過加速度計值重力分解法計算空間姿態(tài);然后通過校準模塊消除運動狀態(tài)下積分產(chǎn)生的累積誤差,最后將計算獲得的空間姿態(tài)數(shù)值輸入交互消息編碼模塊,具體過程如圖2所示。上述通過姿態(tài)解算獲得空間指向的具體過程包括I)獲取三軸加速度計值[ax,ay,az],通過計算其模值對手機運動狀態(tài)進行判斷(步驟I)。若模值近似等于重力加速度計g,則判斷手機處于靜止狀態(tài),否則手機處于快速運動狀態(tài)。2)若手機處于快速運動狀態(tài),獲取t時刻的陀螺儀值[ x,coy, coj。陀螺儀值 即手機繞空間坐標系三個坐標軸[x,y,z]的角速度值。根據(jù)四階龍格庫塔法對下一時刻t+T的空間姿態(tài)進行解算(步驟2),計算t+T時刻的四元數(shù)Q(t+T)(步驟3),計算過程如下依據(jù)四元數(shù)微分方程
權(quán)利要求
1.一種基于智能手機的三維交互方法,包括以下步驟 1)建立服務(wù)器與智能手機客戶端之間的連接; 2)客戶端基于傳感器執(zhí)行交互操作通過空間姿態(tài)解算獲得客戶端的姿態(tài)角M及空間指向,其中V為航向角,0為俯仰角A為傾斜角; 3)客戶端對觸摸屏區(qū)域進行功能劃分,通過將空間姿態(tài)與觸摸屏事件融合,封裝成交互消息數(shù)據(jù)包,并發(fā)送給服務(wù)器端; 4)服務(wù)器端接收交互消息數(shù)據(jù)包后,提取出交互消息中的空間姿態(tài)信息與觸摸屏事件; 5)服務(wù)器端對空間姿態(tài)信息以及觸摸屏事件進行交互映射,若是二維交互場景,則映射為2D操作;若是三維交互場景,則映射為3D操作。
2.如權(quán)利要求I所述的交互方法,其特征在于,所述傳感器包括加速度計、陀螺儀、磁力計和觸屏傳感器。
3.如權(quán)利要求I所述的交互方法,其特征在于,所述獲得空間指向的方法為 1)獲取三軸加速度計值[\,ay,az],通過計算其模值判斷手機的運動狀態(tài); 2)若手機處于快速運動狀態(tài),獲取t時刻的陀螺儀值[ x, y,Co J ;并對下一時刻t+T的空間姿態(tài)進行解算,計算t+T時刻的四元數(shù)Q(t+T); 3)若手機處于接近靜止狀態(tài),則計算0和爐,同時Hiagbegim為t時刻磁力計值,Hiagend為t+T 時刻磁力計值,根據(jù)其變化值算出V ; 4)用接近靜止狀態(tài)下的空間四元數(shù)Q'對運動狀態(tài)下陀螺儀積分所得空間四元數(shù)Q進行校準,消除其累積誤差;
4.如權(quán)利要求I所述的交互方法,其特征在于,所述交互操作包括旋轉(zhuǎn)手機、觸摸屏輸入。
5.一種基于智能手機的三維交互系統(tǒng),包括客戶端、網(wǎng)絡(luò)層和服務(wù)器端,客戶端和服務(wù)器端通過網(wǎng)絡(luò)層連接,其中 客戶端包括客戶端交互界面層和客戶端應(yīng)用邏輯層,對應(yīng)的服務(wù)器端包括服務(wù)器端應(yīng)用邏輯層和服務(wù)器端交互界面層;客戶端交互界面層獲取空間姿態(tài)和觸屏狀態(tài),并將這些數(shù)據(jù)發(fā)送至客戶端應(yīng)用邏輯層進行計算、編碼,然后通過網(wǎng)絡(luò)層將編碼后的數(shù)據(jù)發(fā)送至服務(wù)器端,服務(wù)器端的應(yīng)用邏輯層對接收到的數(shù)據(jù)進行解碼,還原其交互映射狀態(tài),并通過服務(wù)器端交互界面層顯示。
6.如權(quán)利要求5所述的交互系統(tǒng),其特征在于,所述客戶端交互界面層設(shè)有傳感器,所述傳感器包括加速度計、陀螺儀、磁力計和觸屏感應(yīng)裝置。
7.如權(quán)利要求5所述的交互系統(tǒng),其特征在于,所述客戶端應(yīng)用邏輯層包括空間姿態(tài)解算模塊、觸屏數(shù)據(jù)處理模塊、交互信息編碼模塊和網(wǎng)絡(luò)管理模塊;空間姿態(tài)解算模塊和觸屏數(shù)據(jù)處理模塊對客戶端交互界面層的原始數(shù)據(jù)進行計算處理,將處理后的數(shù)據(jù)傳輸至交互消息編碼模塊進行編碼打包,然后通過網(wǎng)絡(luò)管理模塊發(fā)送至網(wǎng)絡(luò)層; 所述空間姿態(tài)計算模塊對智能手機的運動狀態(tài)進行計算,包括快速運動狀態(tài)計算、接近靜止狀態(tài)計算,及誤差校準;所述觸屏數(shù)據(jù)處理模塊對智能手機的觸摸屏上感應(yīng)到的觸摸狀態(tài)、觸點數(shù)量及觸摸位置進行數(shù)據(jù)處理。
8.如權(quán)利要求5所述的交互系統(tǒng),其特征在于,所述服務(wù)器端應(yīng)用邏輯層包括網(wǎng)絡(luò)管理模塊、交互信息解碼模塊和交互映射模塊;其中交互信息解碼模塊通過網(wǎng)絡(luò)管理模塊對從網(wǎng)絡(luò)層獲取的交互信息進行解碼,然后將解碼后的信息傳輸至服務(wù)器交互映射模塊。
9.如權(quán)利要求5所述的交互系統(tǒng),其特征在于,所述服務(wù)器端交互映射模塊包括二維交互映射模塊和三維交互映射模塊,通過獲取的解碼信息,依據(jù)交互事件列表進行查詢,然后進行空間姿態(tài)和觸屏事件的二維和/或三維交互映射。
10.如權(quán)利要求9所述的交互系統(tǒng),其特征在于,所述二維交互映射包括鼠標左鍵單雙擊、鼠標右鍵單雙擊、鼠標拖拽動作;所述三維交互映射包括選擇、操縱、導(dǎo)航動作。
全文摘要
一種基于智能手機的三維交互方法及系統(tǒng),其系統(tǒng)包括客戶端、網(wǎng)絡(luò)層和服務(wù)器端,客戶端和服務(wù)器端通過網(wǎng)絡(luò)層連接,其中客戶端和服務(wù)器端均包括交互界面層和應(yīng)用邏輯層??蛻舳私换ソ缑鎸荧@取空間姿態(tài)和觸屏狀態(tài)后,將其發(fā)送至客戶端應(yīng)用邏輯層進行計算其運動狀態(tài),并進行編碼,然后通過網(wǎng)絡(luò)層將編碼后的數(shù)據(jù)發(fā)送至服務(wù)器端,服務(wù)器端應(yīng)用邏輯層對接收到的數(shù)據(jù)進行解碼,還原其二維或三維交互映射狀態(tài),并通過服務(wù)器端交互界面層顯示。本發(fā)明支持基于手機運動跟蹤的自然人機交互,創(chuàng)新性提出基于傳感器計算手機的空間姿態(tài)和基于觸屏手指動作的交互,結(jié)合觸摸屏輸入,不僅可以達到交互過程的實時、準確,而且耗電量較小,交互設(shè)備續(xù)航能力增強。
文檔編號H04M1/725GK102664988SQ20121008087
公開日2012年9月12日 申請日期2012年3月23日 優(yōu)先權(quán)日2012年3月23日
發(fā)明者張鳳軍, 戴國忠, 戴志軍, 王宏安, 程龍 申請人:中國科學(xué)院軟件研究所