使用基于圖案的計(jì)算機(jī)視覺(jué)的計(jì)算機(jī)設(shè)備的輸入的制作方法
【專利說(shuō)明】使用基于圖案的計(jì)算機(jī)視覺(jué)的計(jì)算機(jī)設(shè)備的輸入
[0001]相關(guān)申請(qǐng)的交叉引用
本申請(qǐng)涉及與本申請(qǐng)同日提交的題為“CAPACITIVE INPUT FOR COMPUTER PROGRAM”的共同轉(zhuǎn)讓的、共同未決的申請(qǐng)第12/792,567號(hào)(代理人案號(hào)SCEA09071US00),其整體內(nèi)容通過(guò)引用合并于此。
[0002]本申請(qǐng)涉及與本申請(qǐng)同日提交的題為“MAGNETIC INPUT FOR COMPUTER DEVICE”的共同轉(zhuǎn)讓的、共同未決的申請(qǐng)第12/792,586號(hào)(代理人案號(hào)SCEA09072US00),其整體內(nèi)容通過(guò)引用合并于此。
技術(shù)領(lǐng)域
[0003]本發(fā)明的實(shí)施例通常涉及計(jì)算機(jī)娛樂(lè)設(shè)備,且更具體地,涉及使用基于圖案的計(jì)算機(jī)視覺(jué)的計(jì)算機(jī)娛樂(lè)設(shè)備的接口。
【背景技術(shù)】
[0004]視頻游戲已變?yōu)榉浅A餍械膴蕵?lè)形式。典型的視頻游戲利用接口或控制器從用戶接收輸入。常見(jiàn)類型的控制器是使用按鈕或操縱桿來(lái)提供輸入的手持控制器。通常被稱為“跳舞毯”的另一類型的控制器與基于跳舞的游戲一起使用。在典型的基于跳舞的游戲中,提示用戶響應(yīng)于視頻屏幕上顯示的某種視覺(jué)指示符在特定的時(shí)間按壓跳舞毯上的選定按鈕。在跳舞毯中,控制按鈕典型地被集成到塑料墊中。用戶可以通過(guò)在該墊(mat)的相應(yīng)的區(qū)域上踩踏或跳舞來(lái)按壓不同的控制按鈕。
[0005]跳舞毯基本上用作通過(guò)腳(與手相對(duì))進(jìn)行操作的按鈕控制器。然而,跳舞毯不跟蹤用戶的腳的接近(proximi ty)。
[0006]本發(fā)明的實(shí)施例出自該背景。
[0007]本發(fā)明的實(shí)施例出自該背景。
【發(fā)明內(nèi)容】
[0008]本發(fā)明涉及一種用于計(jì)算機(jī)設(shè)備的輸入裝置,包括:
計(jì)算機(jī)處理器,被配置為執(zhí)行計(jì)算機(jī)可執(zhí)行指令,其中所述指令被配置為使所述計(jì)算機(jī)設(shè)備:
a)從相機(jī)獲得在表面上形成的結(jié)構(gòu)上編碼圖案的至少一部分的圖像,其中所述結(jié)構(gòu)上編碼圖案包括多個(gè)元素,其中每個(gè)元素通過(guò)識(shí)別該元素相對(duì)于所述表面的位置和取向的信息進(jìn)行編碼;以及
b)識(shí)別所述圖像中的一個(gè)或多個(gè)圖案元素的至少一部分;以及
c)根據(jù)所述圖像中的所述一個(gè)或多個(gè)圖案元素中編碼的信息,確定所述相機(jī)相對(duì)于所述表面的位置。
[0009]本發(fā)明還涉及一種用于接收針對(duì)計(jì)算機(jī)程序的輸入的方法。
【附圖說(shuō)明】
[0010]通過(guò)結(jié)合附圖考慮如下的詳細(xì)描述,可以容易地理解本發(fā)明的實(shí)施例的示例,其中:
圖1是圖示根據(jù)本發(fā)明的實(shí)施例的計(jì)算機(jī)系統(tǒng)的輸入裝置的示意圖。
[0011 ] 圖2A是可以與圖1的接口一起使用的結(jié)構(gòu)上編碼圖案(structurally encodedpattern)的示例的示意圖。
[0012]圖2B-2E是圖示根據(jù)結(jié)構(gòu)上編碼圖案中的元素的圖像確定相機(jī)的位置和取向的示例的示意圖。
[0013]圖3是使用根據(jù)本發(fā)明的可替選的實(shí)施例的計(jì)算機(jī)系統(tǒng)的輸入裝置的系統(tǒng)示例的示意圖。
[0014]圖4是使用根據(jù)本發(fā)明的另一可替選的實(shí)施例的計(jì)算機(jī)系統(tǒng)的輸入裝置的系統(tǒng)示例的示意圖。
[0015]圖5是根據(jù)本發(fā)明的實(shí)施例的計(jì)算機(jī)系統(tǒng)的框圖。
【具體實(shí)施方式】
[0016]盡管下面的詳細(xì)描述出于說(shuō)明的目的包含許多具體細(xì)節(jié),但是本領(lǐng)域的普通技術(shù)人員將認(rèn)識(shí)到,針對(duì)下面的細(xì)節(jié)的許多變化方案和更改方案在本發(fā)明的范圍內(nèi)。因此,在不喪失要求保護(hù)的本發(fā)明的任何一般性的情況下,并且未對(duì)要求保護(hù)的本發(fā)明強(qiáng)加限制的情況下闡述了下文描述的本發(fā)明的示例性實(shí)施例。
[0017]本發(fā)明的實(shí)施例利用了在這里被稱為基于圖案的計(jì)算機(jī)視覺(jué)的概念。
[0018]根據(jù)本發(fā)明的實(shí)施例,輸入裝置可以使用基于圖案的計(jì)算機(jī)視覺(jué)跟蹤相機(jī)相對(duì)于表面的位置和/或運(yùn)動(dòng)。結(jié)構(gòu)上編碼圖案被印刷在表面上。相機(jī)分析包括圖案部分的表面的圖像以確定相機(jī)相對(duì)于該表面的相對(duì)位置(x,y,z)和取向(俯仰(pitch)、滾轉(zhuǎn)(roll)和偏航(yaw))。計(jì)算機(jī)視覺(jué)系統(tǒng)可以通過(guò)分析捕捉的實(shí)時(shí)圖像中的圖案部分(圖像中的參照?qǐng)D案元素與圖案元素相對(duì)于表面的坐標(biāo)位置),來(lái)跟蹤相機(jī)的位置和取向。
[0019]根據(jù)本發(fā)明的實(shí)施例,結(jié)構(gòu)上編碼圖案(有時(shí)被稱為計(jì)算機(jī)碼(cyber-code))可以被印刷在墊或其他表面上。相機(jī)可以被安裝在每個(gè)用戶的腳背上或者用戶的手掌上。
[0020]根據(jù)第一實(shí)施例,計(jì)算機(jī)設(shè)備的輸入裝置101可以包括計(jì)算機(jī)處理器106,其可以被配置為執(zhí)行計(jì)算機(jī)可執(zhí)行指令108。指令108被配置為使計(jì)算機(jī)設(shè)備獲得在表面上形成的結(jié)構(gòu)上編碼圖案102的至少一部分的圖像103。可以通過(guò)耦合到處理器106的相機(jī)104獲得圖像103。相機(jī)104可以捕捉圖案102的位于相機(jī)的視場(chǎng)FOV內(nèi)的部分的圖像。圖像103可以以模擬或數(shù)字?jǐn)?shù)據(jù)的形式存儲(chǔ)在耦合到處理器106的存儲(chǔ)器105中。相機(jī)104可以通過(guò)適當(dāng)?shù)臄?shù)據(jù)鏈路耦合到處理器106和/或存儲(chǔ)器105,該數(shù)據(jù)鏈路可以通過(guò)電氣或光纖線纜或者諸如射頻(RF)、紅外或自由空間光鏈路的無(wú)線手段來(lái)實(shí)現(xiàn)??商孢x地,存儲(chǔ)器105、處理器106可以由作為相機(jī)104的部件的集成電路實(shí)現(xiàn)。
[0021]結(jié)構(gòu)上編碼圖案102包括多個(gè)元素。每個(gè)元素通過(guò)識(shí)別(identify)元素相對(duì)于表面的位置和取向的信息進(jìn)行編碼。指令108被配置為使處理器106識(shí)別圖像103中的一個(gè)或多個(gè)元素的至少一部分。指令可以進(jìn)一步被配置為根據(jù)圖像103中的一個(gè)或多個(gè)圖案元素中編碼的信息來(lái)確定相機(jī)相對(duì)于表面的位置。
[0022]處理器106可以將相機(jī)位置用作針對(duì)計(jì)算機(jī)程序110的輸入。作為示例,且并非作為限制,程序110可以是諸如視頻游戲程序的游戲程序。
[0023]作為示例,且并非作為限制,圖2A圖示了可能的結(jié)構(gòu)上編碼圖案202的示例。結(jié)構(gòu)上編碼圖案202可以通過(guò)例如印刷在墊上來(lái)形成??商孢x地,圖案202可以被印刷或者以其他形式直接形成在地板、墻壁或者其他適當(dāng)?shù)谋砻嫔?。結(jié)構(gòu)上編碼圖案可以包括多個(gè)單元(cell)201。每個(gè)單元包含不同于圖案中的每個(gè)其他單元中的每個(gè)其他元素的特有的元素。網(wǎng)格線203可以便于彼此區(qū)分單元。在圖2A中示出的示例中,每個(gè)單元201中的圖案基于3 X3的正方形網(wǎng)格。網(wǎng)格中的正方形是黑色或白色的。每個(gè)元素內(nèi)的黑色和白色正方形的圖案被選擇為使得沒(méi)有兩個(gè)元素是相同的。這樣,處理器106可以通過(guò)單元中的黑色和白色的正方形的圖案來(lái)識(shí)別圖像中的給定單元。
[0024]在該實(shí)施例的一些形式中,處理器106可以被配置為通過(guò)將圖像103與表示圖案202的參考數(shù)據(jù)比較來(lái)確定相機(jī)的位置。存在根據(jù)參考數(shù)據(jù)從圖像確定相機(jī)位置的許多方法。例如,圖像的中心C可以與三維相機(jī)位置在圖案202的平面上的投影關(guān)聯(lián)。每個(gè)單元可以與圖案202中的已知位置關(guān)聯(lián)。如圖2B中所示,指令108可以識(shí)別與圖像103的中心C最接近的單元201。與圖像中心C最接近的單元的位置可以提供粗略位置??梢酝ㄟ^(guò)確定圖像中心C相對(duì)于單元201的中心C ’的位置來(lái)細(xì)化該粗略位置。
[0025]處理器106還可以分析圖像103以確定相機(jī)104相對(duì)于圖案202的平面的垂直距離D。如這里使用的,術(shù)語(yǔ)“垂直距離”指的是沿垂直于圖案的平面的軸的距離。作為示例,如圖2C中所示,可以將圖像103中的單元202的特征尺寸w與單元202的參考尺寸W比較。當(dāng)相機(jī)104處于距圖案202的已知垂直距離Dref處時(shí),可以確定參考尺寸W??梢愿鶕?jù)已知的垂直距離Dref和比W/w來(lái)確定垂直距離D。
[0026]D = Dref (ff/w) O
[0027]如圖2D和圖2E中所示,指令108還可以被配置為確定相機(jī)104相對(duì)于圖案202的角取向。例如,每個(gè)元素201中的黑色和白色正方形的圖案可以被選擇為使得每個(gè)元素并非相對(duì)于垂直于所述表面的平面的軸旋轉(zhuǎn)對(duì)稱。如果圖案不是旋轉(zhuǎn)對(duì)稱的,則如圖2D中所示,處理器106可以通過(guò)將圖像103中的單元201的取向與參考單元201’的取向比較來(lái)確定相機(jī)相對(duì)于垂直于所述表面的平面的軸的旋轉(zhuǎn)取向角度Φ。
[0028]可替選地,指令108可以使處理器106分析圖像103中的單元201的失真來(lái)確定相機(jī)相對(duì)于圖案202的俯仰或滾轉(zhuǎn)。例如,如圖2E中所示,指令可以分析關(guān)于圖像103中的單元中的網(wǎng)格線或者單元之間的網(wǎng)格線的會(huì)聚角度(convergence angle)θ。會(huì)聚角度Θ可以與相機(jī)相對(duì)于圖案202的俯仰角度相關(guān)。
[0029]圖3中示出的關(guān)于該裝置的許多變化在本發(fā)明的實(shí)施例的范圍內(nèi)。例如,如上文提到的,結(jié)構(gòu)上編碼圖案可以被形成為墊。墊可以由允許墊被卷起或折疊用于存放的柔性材料制成。作為示例,且并非作為限制,墊可以由聚合物,橡