一種空間絕對位移的感應(yīng)方法及裝置制造方法
【專利摘要】本發(fā)明實施例公開了一種空間絕對位移的感應(yīng)方法及裝置,實現(xiàn)了空鼠遙控在電視機上的光標(biāo)按照與絕對角度相映射的位移速度在該絕對角度方向上進行相對應(yīng)地絕對方向移動,從而解決了由于僅通過傳感器來判別空鼠的相對位移的方案,所導(dǎo)致的空鼠響應(yīng)較慢和移動誤差大的技術(shù)問題。本發(fā)明實施例方法包括:捕捉移動軌跡的水平面角度;根據(jù)獲取到的重力加速度按照預(yù)置算法計算垂直面角度;根據(jù)卡爾曼濾波算法對水平面角速度和垂直面角度進行計算獲取絕對角度;根據(jù)絕對角度確定絕對位移速度,絕對角度與絕對位移速度建立有映射關(guān)系;根據(jù)絕對角度和絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動。
【專利說明】一種空間絕對位移的感應(yīng)方法及裝置
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及定位【技術(shù)領(lǐng)域】,尤其涉及一種空間絕對位移的感應(yīng)方法及裝置。
【背景技術(shù)】
[0002]空中鼠標(biāo)是一種輸入設(shè)備,像傳統(tǒng)鼠標(biāo)一樣操作屏幕光標(biāo),但卻不需要放在任何平面上,在空中晃動就能直接使用,目前空鼠遙控技術(shù)不僅應(yīng)用于電腦,而且在電視遙控領(lǐng)域備受關(guān)注。
[0003]現(xiàn)存的空鼠遙控通過傳感器來判別空鼠的相對位移,通過大量的計算來計算鼠標(biāo)的相對的移動,造成空鼠響應(yīng)較慢的問題。而且,電視空鼠遙控的操作習(xí)慣不同于鼠標(biāo),空鼠遙控的操作不能依賴穩(wěn)定的平面,來衡量相對位移,造成移動的誤差較大。
[0004]為了解決上述提及的由于僅通過傳感器來判別空鼠的相對位移的方案,所導(dǎo)致的空鼠響應(yīng)較慢和移動誤差大的技術(shù)問題,本領(lǐng)域技術(shù)人員日以繼夜地為此進行研究。
【發(fā)明內(nèi)容】
[0005]本發(fā)明實施例提供了一種空間絕對位移的感應(yīng)方法及裝置,實現(xiàn)了空鼠遙控在電視機上的光標(biāo)按照與絕對角度相映射的位移速度在該絕對角度方向上進行相對應(yīng)地絕對方向移動,從而解決了由于僅通過傳感器來判別空鼠的相對位移的方案,所導(dǎo)致的空鼠響應(yīng)較慢和移動誤差大的技術(shù)問題。
[0006]本發(fā)明實施例提供的一種空間絕對位移的感應(yīng)方法,包括:
[0007]捕捉移動軌跡的水平面角度;
[0008]根據(jù)獲取到的重力加速度按照預(yù)置算法計算垂直面角度;
[0009]根據(jù)卡爾曼濾波算法對所述水平面角度和所述垂直面角度進行計算獲取絕對角度;
[0010]根據(jù)所述絕對角度確定絕對位移速度,所述絕對角度與所述絕對位移速度建立有映射關(guān)系。
[0011]根據(jù)所述絕對角度和所述絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動。
[0012]優(yōu)選地,
[0013]捕捉移動軌跡的水平面角度具體包括:
[0014]獲取所述移動軌跡的所述水平面的角速度值;
[0015]對所述角速度值進行預(yù)置時間段的積分獲取所述水平面角度。
[0016]優(yōu)選地,
[0017]根據(jù)獲取到的重力加速度按照預(yù)置算法計算垂直面角度具體包括:
[0018]根據(jù)獲取到的重力加速度按照三角變種函數(shù)算法計算垂直面角度;
[0019]優(yōu)選地,
[0020]所述絕對角度具體包括絕對水平面角度或/和絕對垂直面角度。[0021]本發(fā)明實施例提供的一種空間絕對位移的感應(yīng)裝置,包括:
[0022]捕捉模塊,用于捕捉移動軌跡的水平面角度;
[0023]加速度模塊,用于根據(jù)獲取到的重力加速度按照預(yù)置算法計算垂直面角度;
[0024]絕對角度獲取模塊,用于根據(jù)卡爾曼濾波算法對所述水平面角度和所述垂直面角度進行計算獲取絕對角度;
[0025]映射模塊,用于根據(jù)所述絕對角度確定絕對位移速度,所述絕對角度與所述絕對位移速度建立有映射關(guān)系;
[0026]控制模塊,用于根據(jù)所述絕對角度和所述絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動。
[0027]優(yōu)選地,
[0028]捕捉模塊具體包括:
[0029]角速度獲取子模塊,用于獲取所述移動軌跡的所述水平面的角速度值;
[0030]積分子模塊,用于對所述角速度值進行預(yù)置時間段的積分獲取所述水平面角度。
[0031]優(yōu)選地,
[0032]加速度模塊具體用于根據(jù)獲取到的重力加速度按照三角變種函數(shù)算法計算垂直面角度。
[0033]優(yōu)選地,
[0034]絕對角度獲取模塊具體包括:
[0035]絕對水平面角度獲取子模塊,用于根據(jù)卡爾曼濾波算法對所述水平面角速度進行計算獲取絕對水平面角度。
[0036]或/ 和
[0037]絕對垂直面角度獲取子模塊,用于根據(jù)卡爾曼濾波算法對所述垂直面角度進行計算獲取絕對垂直面角度。
[0038]優(yōu)選地,
[0039]絕對角度獲取模塊為卡爾曼濾波器。
[0040]優(yōu)選地,
[0041 ] 所述捕捉模塊為陀螺儀;
[0042]所述加速度模塊為重力加速計或重力傳感器。
[0043]從以上技術(shù)方案可以看出,本發(fā)明實施例具有以下優(yōu)點:
[0044]本發(fā)明實施例提供了 一種空間絕對位移的感應(yīng)方法及裝置,其中,方法包括:捕捉移動軌跡的水平面角度;根據(jù)獲取到的重力加速度按照預(yù)置算法計算垂直面角度;根據(jù)卡爾曼濾波算法對水平面角度和垂直面角度進行計算獲取絕對角度;根據(jù)絕對角度確定絕對位移速度,絕對角度與絕對位移速度建立有映射關(guān)系;根據(jù)絕對角度和絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動。本實施例中,通過使用卡爾曼濾波算法對分別獲取到的水平面角度和垂直面角度進行濾波處理,從而獲取絕對角度,便能使得空鼠遙控在電視機上的光標(biāo)按照與絕對角度相映射的位移速度在該絕對角度方向上進行相對應(yīng)地絕對方向移動,從而解決了由于僅通過傳感器來判別空鼠的相對位移的方案,所導(dǎo)致的空鼠響應(yīng)較慢和移動誤差大的技術(shù)問題?!緦@綀D】
【附圖說明】
[0045]為了更清楚地說明本發(fā)明實施例或現(xiàn)有技術(shù)中的技術(shù)方案,下面將對實施例或現(xiàn)有技術(shù)描述中所需要使用的附圖作簡單地介紹,顯而易見地,下面描述中的附圖僅僅是本發(fā)明的一些實施例,對于本領(lǐng)域普通技術(shù)人員來講,在不付出創(chuàng)造性勞動性的前提下,還可以根據(jù)這些附圖獲得其它的附圖。
[0046]圖1為本發(fā)明實施例提供的一種空間絕對位移的感應(yīng)方法的一個實施例的流程示意圖;
[0047]圖2為本發(fā)明實施例提供的一種空間絕對位移的感應(yīng)方法的另一個實施例的流程不意圖;
[0048]圖3為本發(fā)明實施例提供的一種空間絕對位移的感應(yīng)裝置的一個實施例的結(jié)構(gòu)示意圖;
[0049]圖4為本發(fā)明實施例提供的一種空間絕對位移的感應(yīng)裝置的另一個實施例的結(jié)構(gòu)示意圖。
【具體實施方式】
[0050]本發(fā)明實施例提供了一種空間絕對位移的感應(yīng)方法及裝置,實現(xiàn)了空鼠遙控在電視機上的光標(biāo)按照與絕對角度相映射的位移速度在該絕對角度方向上進行相對應(yīng)地絕對方向移動,從而解決了由于僅通過傳感器來判別空鼠的相對位移的方案,所導(dǎo)致的空鼠響應(yīng)較慢和移動誤差大的技術(shù)問題。
[0051]為使得本發(fā)明的發(fā)明目的、特征、優(yōu)點能夠更加的明顯和易懂,下面將結(jié)合本發(fā)明實施例中的附圖,對本發(fā)明實施例中的技術(shù)方案進行清楚、完整地描述,顯然,下面所描述的實施例僅僅是本發(fā)明一部分實施例,而非全部的實施例。基于本發(fā)明中的實施例,本領(lǐng)域普通技術(shù)人員在沒有做出創(chuàng)造性勞動前提下所獲得的所有其它實施例,都屬于本發(fā)明保護的范圍。
[0052]請參閱圖1,本發(fā)明實施例提供的一種空間絕對位移的感應(yīng)方法的一個實施例包括:
[0053]101、捕捉移動軌跡的水平面角度;
[0054]本實施例中,當(dāng)用戶需要使用類似空鼠遙控的空間絕對位移的感應(yīng)裝置對類似電視機的屏幕進行操作時,首先空鼠遙控需要根據(jù)用戶手腕運動來捕捉移動軌跡的水平面角度。
[0055]需要說明的是,前述的捕捉移動軌跡的水平面角度捕捉過程將在后續(xù)的實施例中進行詳細的描述,此處便不再贅述。
[0056]102、根據(jù)獲取到的重力加速度按照預(yù)置算法計算垂直面角度;
[0057]在捕捉移動軌跡的水平面角度的同時,需要根據(jù)獲取到的重力加速度按照預(yù)置算法計算垂直面角度,可以理解的是,前述的重力加速度也是在用戶操作空間絕對位移的感應(yīng)裝置進行手腕運動時所獲取到的。
[0058]需要說明的是,前述的預(yù)置算法計算垂直面角度的過程將在后續(xù)的實施例中進行詳細的描述,此處便不再贅述。
[0059]103、根據(jù)卡爾曼濾波算法對水平面角度和垂直面角度進行計算獲取絕對角度;[0060]當(dāng)捕捉移動軌跡的水平面角度和計算垂直面角度之后,需要根據(jù)卡爾曼濾波算法對水平面角度和垂直面角度進行計算獲取絕對角度。
[0061]需要說明的是,前述的卡爾曼濾波算法為公知技術(shù),此處便不再詳細贅述。
[0062]104、根據(jù)絕對角度確定絕對位移速度;
[0063]當(dāng)通過卡爾曼濾波算法獲取到絕對角度之后,需要根據(jù)絕對角度確定絕對位移速度,可以理解的是,前述的絕對角度與絕對位移速度建立有映射關(guān)系,例如在70度的絕對角度或者是60度至-90度的垂直或水平方向的絕對角度范圍,則位移速度為100屏幕像素/IOOms的映射關(guān)系,具體此處不做限定。
[0064]105、根據(jù)絕對角度和絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動。
[0065]本實施例中,根據(jù)絕對角度確定絕對位移速度之后,需要根據(jù)絕對角度和絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動,可以理解的是,前述的絕對方向與絕對角度建立有映射關(guān)系,例如絕對角度為絕對水平面角度或絕對垂直面角度映射的方向分別為左右或上下,該左右或上下方向是基于屏幕上建立一個虛擬的XY軸為定義的,需要說明的是,前述的控制屏幕上的光標(biāo)可以是通過紅外線進行相關(guān)聯(lián)的控制。
[0066]本實施例中,通過使用卡爾曼濾波算法對分別獲取到的水平面角度和垂直面角度進行濾波處理,從而獲取絕對角度,便能使得空鼠遙控在電視機上的光標(biāo)按照與絕對角度相映射的位移速度在該絕對角度方向上進行相對應(yīng)地絕對移動,從而解決了由于僅通過傳感器來判別空鼠的相對位移的方案,所導(dǎo)致的空鼠響應(yīng)較慢和移動誤差大的技術(shù)問題。
[0067]上面是對空間絕對位移的感應(yīng)方法進行詳細的描述,下面將對水平面角度和垂直面角度的獲取過程進行詳細的描述,請參閱圖2,本發(fā)明實施例提供的一種空間絕對位移的感應(yīng)方法的另一個實施例包括:
[0068]201、獲取移動軌跡的水平面的角速度值,對角速度值進行預(yù)置時間段的積分獲取水平面角度;
[0069]本實施例中,當(dāng)用戶需要使用類似空鼠遙控的空間絕對位移的感應(yīng)裝置對類似電視機的屏幕進行操作時,首先空鼠遙控需要根據(jù)用戶手腕運動來捕捉移動軌跡的水平面角度,可以是先獲取移動軌跡的水平面的角速度值,對角速度值進行預(yù)置時間段的積分獲取水平面角度,例如在時間t內(nèi),獲取的角速度為gyro,則水平面角度=gyro*dt,需要說明的是,前述的水平面角度還可以是η次采樣的角度值與(η-l)次采樣的角度值之差值,具體此處不做限定。
[0070]202、根據(jù)獲取到的重力加速度按照三角變種函數(shù)算法計算垂直面角度;
[0071]在捕捉移動軌跡的水平面角度的同時,需要根據(jù)獲取到的重力加速度按照三角變種函數(shù)算法計算垂直面角度,可以理解的是,前述的重力加速度也是在用戶操作空間絕對位移的感應(yīng)裝置進行手腕運動時所獲取到的。
[0072]需要說明的是,前述的三角變種函數(shù)算法計算垂直面角度可以是設(shè)定在該計算公式中X軸方向為豎直朝下的方向,y軸方向為水平朝右的方向,具體此處不做限定,那豎直方向弧度計算公式為:angle = atan2(y, X),其結(jié)果angle以弧度表示并介于-31到π之間(不包括-π )。同理,換算成具體角度的公式為:angle = atan2 (y, x)* (180/3.14),其中,前述的atan2是正切函數(shù)的一個變種,則對于任意不同時等于O的實參數(shù)x和y,atan2(y, x)所表達的意思是坐標(biāo)原點為起點,指向(x,y)的射線在坐標(biāo)平面上與X軸正方向之間的角的角度,需要說明的是,前述的atan2函數(shù)可以在C語言的數(shù)學(xué)標(biāo)準(zhǔn)庫的math, h文件中找至IJ,具體不做限定。
[0073]203、根據(jù)卡爾曼濾波算法對水平面角度和垂直面角度進行計算獲取絕對水平面角度或/和絕對垂直面角度;
[0074]當(dāng)捕捉移動軌跡的水平面角度和計算垂直面角度之后,需要根據(jù)卡爾曼濾波算法對水平面角度和垂直面角度進行計算獲取絕對水平面角度或/和絕對垂直面角度,可以理解的是,在假設(shè)屏幕的平面為xy軸的平面坐標(biāo)系的情況下,該絕對水平面角度為與X軸的夾角進行定義,絕對垂直面角度為與y軸的夾角進行定義,需要說明的是,在本實施例中,本步驟使用卡爾曼濾波算法對水平面角度和垂直面角度進行計算獲取絕對水平面角度或/和絕對垂直面角度的計算過程中提及的假設(shè)屏幕的平面為xy軸的平面坐標(biāo)系與步驟202提及的假設(shè)計算公式中的X軸和I軸的設(shè)定沒有直接聯(lián)系,他們是獨立設(shè)定存在并假設(shè)的。
[0075]需要說明的是,前述的卡爾曼濾波算法為公知技術(shù),此處便不再詳細贅述。
[0076]204、根據(jù)絕對角度確定絕對位移速度;
[0077]當(dāng)通過卡爾曼濾波算法獲取到絕對角度之后,需要根據(jù)絕對角度確定絕對位移速度,可以理解的是,前述的絕對角度與絕對位移速度建立有映射關(guān)系,例如在70度的絕對角度或者是60度至-90度的垂直或水平方向的絕對角度范圍,則位移速度為100屏幕像素/IOOms的映射關(guān)系,具體此處不做限定。
[0078]205、根據(jù)絕對角度和絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動。
[0079]本實施例中,根據(jù)絕對角度確定絕對位移速度之后,需要根據(jù)絕對角度和絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動,可以理解的是,前述的絕對方向與絕對角度建立有映射關(guān)系,例如絕對角度為絕對水平面角度或絕對垂直面角度映射的方向分別為左右或上下,該左右或上下方向是基于屏幕上建立一個虛擬的XY軸為定義的,需要說明的是,前述的控制屏幕上的光標(biāo)可以是通過紅外線進行相關(guān)聯(lián)的控制。
[0080]本實施例中,通過使用卡爾曼濾波算法對分別獲取到的水平面角度和垂直面角度進行濾波處理,從而獲取絕對角度,便能使得空鼠遙控在電視機上的光標(biāo)按照與絕對角度相映射的位移速度在該絕對角度方向上進行相對應(yīng)地絕對移動,從而解決了由于僅通過傳感器來判別空鼠的相對位移的方案,所導(dǎo)致的空鼠響應(yīng)較慢和移動誤差大的技術(shù)問題。
[0081]上面是對水平面角度和垂直面角度的獲取過程進行詳細的描述,為便于理解下面將以一具體應(yīng)用場景對圖2所示的實施例進行詳細的描述,本發(fā)明實施例提供的一種空間絕對位移的感應(yīng)方法的另一個實施例包括:
[0082]本實施例中,當(dāng)用戶需要使用類似空鼠遙控的空間絕對位移的感應(yīng)裝置對類似電視機的屏幕進行操作時,首先空鼠遙控需要根據(jù)用戶手腕運動來捕捉移動軌跡的水平面角度,可以是先獲取移動軌跡的水平面的角速度值,對角速度值進行預(yù)置時間段的積分獲取水平面角度,例如在時間t內(nèi),獲取的角速度為gyro,則水平面角度=gyro*dt,可以是通過C語言進行計算,需要說明的是,前述的水平面角度還可以是η次采樣的角度值與(η-l)次采樣的角度值之差值,具體此處不做限定。當(dāng)捕捉移動軌跡的水平面角度之后,需要通過使用C語言根據(jù)卡爾曼濾波算法對水平面角度進行編程計算獲取絕對水平面角度,可以理解的是,在假設(shè)為xy軸的平面坐標(biāo)系的情況下,該絕對水平面角度為與X軸的夾角進行定義。
[0083]例如通過使用C語言按照前述的公式對水平面角度進行計算的編程語言如下:
【權(quán)利要求】
1.一種空間絕對位移的感應(yīng)方法,其特征在于,包括: 捕捉移動軌跡的水平面角度; 根據(jù)獲取到的重力加速度按照預(yù)置算法計算垂直面角度; 根據(jù)卡爾曼濾波算法對所述水平面角度和所述垂直面角度進行計算獲取絕對角度; 根據(jù)所述絕對角度確定絕對位移速度,所述絕對角度與所述絕對位移速度建立有映射關(guān)系。 根據(jù)所述絕對角度和所述絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動。
2.根據(jù)權(quán)利要求1所述的空間絕對位移的感應(yīng)方法,其特征在于,捕捉移動軌跡的水平面角度具體包括: 獲取所述移動軌跡的所述水平面的角速度值; 對所述角速度值進行預(yù)置時間段的積分獲取所述水平面角度。
3.根據(jù)權(quán)利要求1所述的空間絕對位移的感應(yīng)方法,其特征在于,根據(jù)獲取到的重力加速度按照預(yù)置算法計 算垂直面角度具體包括: 根據(jù)獲取到的重力加速度按照三角變種函數(shù)算法計算垂直面角度。
4.根據(jù)權(quán)利要求1所述的空間絕對位移的感應(yīng)方法,其特征在于,所述絕對角度具體包括絕對水平面角度或/和絕對垂直面角度。
5.一種空間絕對位移的感應(yīng)裝置,其特征在于,包括: 捕捉模塊,用于捕捉移動軌跡的水平面角度; 加速度模塊,用于根據(jù)獲取到的重力加速度按照預(yù)置算法計算垂直面角度; 絕對角度獲取模塊,用于根據(jù)卡爾曼濾波算法對所述水平面角度和所述垂直面角度進行計算獲取絕對角度; 映射模塊,用于根據(jù)所述絕對角度確定絕對位移速度,所述絕對角度與所述絕對位移速度建立有映射關(guān)系; 控制模塊,用于根據(jù)所述絕對角度和所述絕對位移速度控制屏幕上的光標(biāo)進行相對應(yīng)的絕對方向移動。
6.根據(jù)權(quán)利要求5所述的空間絕對位移的感應(yīng)裝置,其特征在于,捕捉模塊具體包括: 角速度獲取子模塊,用于獲取所述移動軌跡的所述水平面的角速度值; 積分子模塊,用于對所述角速度值進行預(yù)置時間段的積分獲取所述水平面角度。
7.根據(jù)權(quán)利要求5所述的空間絕對位移的感應(yīng)裝置,其特征在于,加速度模塊具體用于根據(jù)獲取到的重力加速度按照三角變種函數(shù)算法計算垂直面角度。
8.根據(jù)權(quán)利要求5所述的空間絕對位移的感應(yīng)裝置,其特征在于,絕對角度獲取模塊具體包括: 絕對水平面角度獲取子模塊,用于根據(jù)卡爾曼濾波算法對所述水平面角速度進行計算獲取絕對水平面角度。 或/和 絕對垂直面角度獲取子模塊,用于根據(jù)卡爾曼濾波算法對所述垂直面角度進行計算獲取絕對垂直面角度。
9.根據(jù)權(quán)利要求5所述的空間絕對位移的感應(yīng)裝置,其特征在于,絕對角度獲取模塊為卡爾曼濾波器。
10.根據(jù)權(quán)利要求5所述的空間絕對位移的感應(yīng)裝置,其特征在于,所述捕捉模塊為陀螺儀; 所述加速度模塊為重力加速計或重力傳感器。
【文檔編號】G06F3/0346GK103970297SQ201410235508
【公開日】2014年8月6日 申請日期:2014年5月29日 優(yōu)先權(quán)日:2014年5月29日
【發(fā)明者】施乾坤 申請人:廣州視源電子科技股份有限公司