亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

筆跡手跡的制作方法

文檔序號:6440850閱讀:413來源:國知局
專利名稱:筆跡手跡的制作方法
技術領域
本發(fā)明的一些方面一般涉及用于控制圖形用戶接口(GUI)的裝置和方法。本發(fā)明尤其涉及識別用戶使用基于針筆的輸入系統(tǒng)所形成的手跡,并完成與該手跡有關的功能。
背景技術
一般的計算機系統(tǒng),尤其是使用微軟公司的視窗操作系統(tǒng)等圖形用戶接口(GUI)系統(tǒng)的計算機系統(tǒng),被優(yōu)化用于從輸入文本的一個或多個分立的輸入設備(如鍵盤等)來接收用戶的輸入和用來輸入文本,及用來驅動用戶接口的一個指示設備(如有一個或多個按鈕的鼠標等)。事實上,設計成在微軟公司的視窗操作系統(tǒng)上運行的所有軟件應用程序都被優(yōu)化成以相同方式接收用戶的輸入。例如,很多應用程序充分地利用鼠標右鍵(“右擊”)來顯示與上下文有關的命令菜單。用戶可以通過諸如點擊鼠標的左鍵(“左擊”),或通過點擊鼠標的左鍵或右鍵并在按下按鈕的同時移動鼠標(“左擊拖動”或“右擊拖動”)來用鼠標生成其他的手跡。例如,參見Opera Software的Opera 6.0中的右擊拖動鼠標命令。
在一些環(huán)境中,將不需要或無法使用鼠標。例如,在數(shù)字化板環(huán)境中,主要的輸入設備可以是針筆。雖然針筆試圖為計算機環(huán)境提供類似于在墊上和紙上輸入的感覺,但是目前的系統(tǒng)仍然受到限制。例如,在圖形用戶接口上針筆的使用僅限于在各項目上點擊以進行選擇。例如,參見使用Palm OS 3.x和4.x操作系統(tǒng)的Paim系列產(chǎn)品。此外,在這些系統(tǒng)中,互動方法很麻煩,因為文本條目和命令要在數(shù)字化裝置的專門部分上輸入,而該部分遠離插入點或所選的一個或多個單詞。另外,在基于針筆的輸入環(huán)境中,將不斷地迫使用戶從遠處的工具條選擇工具或操作,而工具條通常位于屏幕的頂部或底部。雖然用戶也可以用字母輸入,或者數(shù)字化裝置可以識別手寫體,但是這些操作分別要求選擇一個鍵盤輸入模式,或在數(shù)字化裝置的預定部分中書寫。簡而言之,為每次新的輸入都要求用戶告訴計算機用戶希望干什么使得對于普通用戶而言難以使用基于針筆的計算機操作。
有一些操作會建立新的文本(例如,書寫、打字、粘貼文本等)。而一些其他的操作會修改文本(高亮顯示、劃墨線、刪除、剪切和移動已有文本)。完成后面這些修改操作的問題是這些操作通常不是大多數(shù)用戶的主要操作模式。即,雖然用戶可以修改文本,但是與建立新文本的主要操作相比,這些操作將是第二位的。因而,用戶將最終需要從修改文本(或其他內容)的操作轉換到建立文本的環(huán)境。常規(guī)的轉換包括切換工具條上的一個按鈕。按鈕可以包括消除按鈕、高亮顯示按鈕等。雖然可以使用戶清楚如何選擇操作模式和模式狀態(tài)(切換按鈕按下與否),但是在不同模式間變換時,使用切換按鈕將是麻煩的,因為用戶通常要不斷地在顯示屏的中央部位和并列在屏幕一端的遠處的工具條(包括有切換按鈕)之間往返移動。這樣的往返移動,以及為了從一個或多個輔助模式切換回主要操作模式所需注意力將把用戶的注意力從主動地閱讀或書寫分散到在模式件進行切換的瑣事中。
前面的基于筆的計算機系統(tǒng)試圖通過把筆的動作解釋成一條命令來解決上述的問題。例如,參見Go公司的Penpoint。但是,Penpoint主要使得能對文本進行基于筆的命令。對于手寫輸入,Penpoint只允許通過特定的筆移動來即刻刪除之前的輸入(這里,筆尖的右左右共線移動也被稱為平面“z”)。Penpoint不提供在頁面上任何地方隨機編輯手寫筆跡的能力。為了將基于筆的輸入系統(tǒng)變成主流計算機環(huán)境的一部分,需要支持實現(xiàn)在頁面上任何地方自由編輯手寫文本。
最后,手寫筆跡通常與非筆跡應用是不兼容的。例如,使用要求文本輸入的應用程序迫使用戶將筆跡轉換成文本。在Palm OS中,需要設置一個插入點,移動到屏幕底部的一專用文本輸入部分,在專用文本輸入部分中輸入文本,然后回到插入點。這些操作將迅速地變成一種麻煩,并迫使用戶不使用具有基于針筆輸入系統(tǒng)的傳統(tǒng)應用程序。

發(fā)明內容
本發(fā)明的諸方面針對于允許用戶直接在顯示表面上書寫的基于筆的計算機系統(tǒng)來解決了上面所指出的一個或多個問題。本發(fā)明的諸方面允許用戶使用手跡來編輯顯示的信息,信息包括但不限于手寫筆跡和文本。此外,在某些方面,可以使用基于手跡的導航。
在研究了下面對較佳實施例的詳細描述之后,將更清楚本發(fā)明這些以及其他特征。


在結合所附示圖進行閱讀時將能更好地理解上面的發(fā)明概述以及下面的較佳實施例詳述,附圖以例子的方式包括在此,而不是對本發(fā)明的限制。
圖1是可用于實現(xiàn)本發(fā)明各方面的示范通用數(shù)字計算機環(huán)境的概要圖。
圖2是根據(jù)本發(fā)明各方面可用的示范輸入板式計算機和針筆的平面圖。
圖3顯示了根據(jù)本發(fā)明諸實施例的各操作模式例子。
圖4和5顯示了根據(jù)本發(fā)明諸實施例的手跡識別過程的例子。
圖6顯示了本發(fā)明諸實施例可用的手跡例子。
圖7顯示了根據(jù)本發(fā)明諸實施例的一個手跡數(shù)據(jù)結構及其相關的方法或屬性例子。
圖8顯示了根據(jù)本發(fā)明諸實施例用于識別一個手跡的方法例子。
具體實施例方式
為了幫助讀者,下面的描述將被分成以下幾個部分術語,通用計算機平臺,手跡,識別手跡,執(zhí)行手跡以及數(shù)據(jù)結構。
術語為了理解該說明書的各方面,定義了以下術語。其他的定義可能已為本領域所知,并可以補充這些定義。
筆跡-一個或多個筆劃的序列或組合。筆劃的序列可能包括排序形式的筆劃。該序列可以按照捕獲的時間或者筆劃在頁面上出現(xiàn)的地方來排序。其他排序也是可能的。筆劃組合可以包括筆劃序列或無序筆劃或它們的任意組合。
另外,一個筆劃可以包括構成該筆劃的所有點,或者僅限于在筆劃方向上表示一個改變的點,以及它們的組合。
筆劃-捕獲到的點的序列或組合。當表現(xiàn)時,點的序列可以用直線連接。筆劃可以用數(shù)種方式來呈現(xiàn)。例如,筆劃可以表示為一個點,以及在下一個或多個點方向上的一個或多個矢量。另外,筆劃可以指多個點和/或矢量的一個簡單列表。簡而言之,一個筆劃意在包括與筆跡有關的多個點和/或部分的任意表示,而不管多個點的根本表示和/或用什么來連接這些點。
點-定義空間位置的信息。可以相對于如一個捕獲空間(例如數(shù)字化裝置上的多個點)和/或一個顯示空間(顯示設備的多個點或像素)來定義點。可以用多種已知的技術來表示點,包括笛卡爾坐標(X,Y)、極坐標(r,Θ)、三維坐標((X,Y,Z),(r,Θ,ρ),(X,Y,t(時間)),(r,Θ,t))、四維坐標((X,Y,Z,t)和(r,Θ,ρ,t))以及其他本領域已知的技術。
表示-確定如何顯示圖形(和/或筆跡)的過程,顯示在屏幕上、打印或者是輸出到其他的文件格式。
單詞-也被稱為一個筆跡單詞。一個單詞是一個或多個筆劃。一個單詞中的每個筆劃具有與之相關的位置。多個單詞還可以被定義為文本單詞或字母組,他們形成了可以在字典中定義的術語。單詞還可以包括標點、字母與數(shù)字的組合以及其他符號,并且可以包括復合單詞。
流-在順序上相互相關的一個或多個單詞。例如,在頁面上記下手寫注釋可以代表一個流。加到每條注釋將一個或多個單詞加到包含這些單詞的流中。流中的每個單詞在該流中具有與之相關的一個位置。
空格-沒有任何顯示內容的區(qū)域。在某些情況下,當指代流中單詞間的間隔時,空格可以看作是沒有筆劃的間隔單詞。當指代頁面上一空白區(qū)域時,空格可以指代頁面上沒有被流占用的區(qū)域。
手跡-可以被解釋成命令的一種圖形或其他筆跡。
通用計算機平臺圖1展示了可以用來實現(xiàn)本發(fā)明各方面的常規(guī)通用數(shù)字計算機環(huán)境的概要圖。圖1中,計算機100包括處理單元110、系統(tǒng)存儲器120以及系統(tǒng)總線130,系統(tǒng)總線將包括系統(tǒng)存儲器的各系統(tǒng)組件連接到處理單元110。系統(tǒng)總線130可以是若干類總線結構中的任一種,包括存儲器總線或存儲器控制器、外圍總線以及使用各種總線架構中的任一種的本地總線。系統(tǒng)存儲器120包括只讀存儲器(ROM)140和隨機存取存儲器(RAM)150。
在ROM 140中存儲的一個基本輸入輸出系統(tǒng)160(BIOS)包含如在啟動期間幫助在計算機100中的元件之間傳輸信息的基本例程。計算機100還包括硬盤驅動器170,用于對硬盤(未示出)進行讀寫;磁盤驅動器180,用于對可拆卸磁盤190進行讀寫;以及光盤驅動器191,用于對諸如CD ROM或其他光媒介等可拆卸光盤192進行讀寫。硬盤驅動器170、磁盤驅動器180以及光盤驅動器191各自通過硬盤驅動器接口192、磁盤驅動器接口193和光盤驅動器接口194被連接到系統(tǒng)總線130。這些驅動器以及它們相關的計算機可讀媒介為個人計算機100提供了對計算機可讀指令、數(shù)據(jù)結構、程序模塊以及其他數(shù)據(jù)的非易失性存儲。本領域的技術人員應該理解在示例的操作環(huán)境中還可以使用可以存儲計算機可訪問的數(shù)據(jù)的其他類型的計算機可讀媒介,如盒式磁帶、閃存卡、數(shù)字視頻盤、Berboulli卡式磁盤、隨機存取存儲器(RAM)、只讀存儲器(ROM)等。
可以在硬盤驅動器170、磁盤190、光盤192、ROM 140或RAM 150上存儲多個程序模塊,包括操作系統(tǒng)195、一個或多個應用程序196、其他程序模塊197以及程序數(shù)據(jù)198。用戶可通過鍵盤101和指示設備102等輸入設備將命令和信息輸入到計算機100中。其他輸入設備(未示出)可以包括麥克風、操縱桿、游戲手柄、圓盤式衛(wèi)星電視天線、掃描儀等。這些以及其他的輸入設備通常通過耦接到系統(tǒng)總線的串行端口接口106被連接到處理單元110,但也可以用如并行端口、游戲端口或通用串行總線(USB)等其他接口來連接。此外,這些設備可經(jīng)由合適的接口(未示出)直接連接到系統(tǒng)總線130上。監(jiān)視器107或者其他類型的顯示設備也可以經(jīng)由如視頻適配器108等接口被連接到系統(tǒng)總線130。除了監(jiān)視器之外,個人計算機一般還可以包括其他的外圍輸出設備(未示出),如揚聲器和打印機。在一較佳實施例中,設置了筆數(shù)字化裝置165以及配套的筆或針筆166以便數(shù)字化地捕獲手畫輸入。盡管顯示了筆數(shù)字化裝置165和處理單元110之間的直接連接,但在實踐中,如本領域已知的,筆數(shù)字化裝置165可以經(jīng)由串行端口、并行端口或其他接口和系統(tǒng)總線130連接至處理單元110。此外,盡管顯示的數(shù)字化裝置165獨立于監(jiān)視器107,數(shù)字化裝置165的可用輸入?yún)^(qū)域最好和監(jiān)視器107的顯示區(qū)域共同延伸。此外,數(shù)字化裝置165可以被集成在監(jiān)視器107中,或者可以作為覆蓋或者附帶于監(jiān)視器107的獨立設備而存在。
計算器100可以工作在使用邏輯連接到一個或多個遠程計算機(如遠程計算機109)的聯(lián)網(wǎng)環(huán)境中。遠程計算機109可以是服務器、路由器、網(wǎng)絡PC、對等設備或其他公共網(wǎng)絡節(jié)點,并一般包括在上面對計算機100所進行的描述中提到的多種或者所有元件,盡管圖1中只展示了記憶存儲設備111。圖1中所描繪的邏輯連接包括局域網(wǎng)(LAN)112和廣域網(wǎng)(WAN)113。這樣的聯(lián)網(wǎng)環(huán)境在辦公室、企業(yè)范圍的計算機網(wǎng)、內聯(lián)網(wǎng)和因特網(wǎng)中是非常常見的。
當被用于LAN網(wǎng)絡環(huán)境中時,計算機100通過網(wǎng)絡接口或適配器114被連接到局域網(wǎng)112。當被用于WAN網(wǎng)絡環(huán)境中時,個人計算機100一般包括調制解調器115或其他用于建立WAN 113(如因特網(wǎng))上的通信的裝置。調制解調器115可以是內部的或者是外部的,它可以經(jīng)由串行端口接口106被連接到系統(tǒng)總線130。在聯(lián)網(wǎng)的環(huán)境中,和個人計算機100相關的所述程序模塊或其部分可以被存儲在遠程記憶存儲設備中。
可以注意到所顯示的網(wǎng)絡連接是示范性的,可以使用其它的在計算機之間建立通信鏈路的技術。假定存在有多種已知協(xié)議中的任一種,如TCP/IP、以太網(wǎng)、FTP、HTTP等,系統(tǒng)可以工作在客戶機-服務器配置中,以允許用戶從基于網(wǎng)站的服務器取回網(wǎng)頁??梢允褂枚喾N常規(guī)網(wǎng)絡瀏覽器中的任一種來顯示和處理網(wǎng)頁上的數(shù)據(jù)。
圖2展示了根據(jù)本發(fā)明各方面可用的基于針筆的計算機處理系統(tǒng)(也稱為輸入板PC)201。圖1系統(tǒng)中的任一或所有特征、子系統(tǒng)和功能可以包括在圖2的計算機中。圖形輸入板PC 201包括一較大的顯示表面202,如,數(shù)字化平板顯示,最好是液晶顯示(LCD)屏,在該顯示表面上顯示了多個窗口203。用針筆204,用戶可以在數(shù)字化顯示區(qū)域上選擇、高亮顯示和書寫。合適的數(shù)字化顯示板例子包括電磁筆數(shù)字化裝置,如Mutoh或Wacom筆數(shù)字化裝置。也可以使用其他類型的筆數(shù)字化裝置,如光學數(shù)字化裝置。輸入板PC 201解釋用針筆204所做的手跡,以便處理數(shù)據(jù)、輸入文本和執(zhí)行常規(guī)的計算機應用任務,如電子表格、文字處理程序等。
針筆可以裝配有按鈕或其他特征來增強它的選擇能力。在一實施例中,針筆可以用“鉛筆”或“筆”來實現(xiàn),其中一端包括一書寫部分,而另一端包括一“擦除”端,當該擦除端在顯示上移過時,表示將要擦除顯示的該部分??梢允褂闷渌愋偷妮斎朐O備,如鼠標、軌跡球等。此外,用戶也可以使用自己的手指來選擇或指點對觸碰敏感或對接近敏感的顯示器上所顯示的圖像部分。因此,術語“用戶輸入設備”(如同這里所用的)意在具有較寬的定義,并包括對已知輸入設備的多種變化。
區(qū)域205顯示了一反饋區(qū)域或接觸區(qū)域,允許用戶確定針筆在數(shù)字化裝置上所接觸的地方。在另一實施例中,在到達本發(fā)明保持狀態(tài)時,區(qū)域205提供了視覺反饋。
手跡手跡一般可以被定義為針筆有意的移動,并且不僅僅是手寫筆跡。當有兩種描繪一個特定的筆跡元素的方法,且第二種方法比第一種更復雜時,最好將第二種方法考慮成或假設成一個手跡。例如,針筆物理地圍繞著一個點移動360度而形成的單個圓可以被視為畫出的一個圓、字母“o”或者數(shù)字零,而沿著自己軌跡的雙重圓可以被視為一個手跡。還可以使用其它的手跡。
圖3顯示了實現(xiàn)手跡的一個過程,其中手跡被顯示成可以從通用操作環(huán)境301訪問。在301中,用戶可以添加筆跡或控制顯示的某個方面(如,重新觀察、卷動等)。一旦在302中建立(和/或識別)了一個手跡,它可以在303中被執(zhí)行。在執(zhí)行之后,通過路徑304回到301,系統(tǒng)準備好接受更多的輸入。
作為替換,可以在稍晚的時間執(zhí)行手跡。在該替換實施例中,手跡可以被表示成筆跡以及稍后執(zhí)行的手跡。執(zhí)行可以在現(xiàn)有的應用程序中執(zhí)行,或者可以被傳遞到另一應用程序而執(zhí)行。
手跡可以被用于各個地方??梢栽陲@示表面上作手跡。此外,還可以在空中做手跡(有些基于筆的計算機系統(tǒng)使用感應技術來檢測筆,并可以知道筆的高度)??梢栽诎粹o和類似控制上做手跡(如,幫助的勾號)??梢杂檬舟E來編輯文本和/或筆跡。可以在顯示的專用輸入部分(固定或臨時的)中做手跡。
標記可以有以下特性中的一個或多個默認動作或控制方法或屬性,動作區(qū)域,位置,大小/范圍以及形狀。其他特性也可以并入該列表中。
默認動作或控制方法或屬性每個手跡可以具有一個或多個與之相關的默認動作。例如,輕點可能具有與之相關的通用的選擇動作。若在該次輕點之前沒有任何其他的輕點,該輕點可能將選擇一個單詞。若在該次輕點之前已經(jīng)進行了一次輕點,則后一次輕點可能將選擇一句話。若在該次輕點之前已經(jīng)進行了兩次輕點,則最后一次輕點可能選擇整個段落。類似地,輕點四次,這最后一次輕點可能選擇全部。
在一些實施例中,默認動作指的是手跡的控制方法和控制屬性。手跡的控制方法或屬性是指該手跡執(zhí)行時將做什么或影響什么。例如,加粗一單詞或選項的手跡的方法或屬性將把該單詞或選項的表示方法改變?yōu)榧哟值淖煮w或表示。此外,選擇手跡的方法或屬性將選擇顯示頁面上的某些事物。該頁面可以具有筆跡、圖形、文本、圖片和/或其他此類項目。
動作區(qū)域手跡的動作區(qū)域是該手跡將影響到的區(qū)域。例如,在勾號表示對一項目或按鈕或用戶界面一部分的查詢幫助的手跡的情形下,勾號的動作區(qū)域可以是該勾號周圍一較小的區(qū)域。因而,用戶可以將勾號的動作區(qū)域設置在用戶需要求助的事物之上。
在一些實施例中,動作區(qū)域可以從一個區(qū)域壓縮成一個點或者點的組合。在上面勾號的例子中,組成該勾號的兩條直線的交點可以是動作區(qū)域。這些實施例可以為用戶提供非常確切地設置每個手跡位置的能力。因此,例如,手跡可以與單個點相關。另一方面,動作區(qū)域較大將是有利的,因為即使針筆稍稍錯過了該手跡將影響的一個預定點,但這個預期的手跡依然影響這個預定區(qū)域。例如,若用戶嘗試在一按鈕上設置一勾號,但是稍稍地偏離了該按鈕,由于大部分勾號仍然位于該按鈕上,所以較大的區(qū)域方法仍將尋求對該按鈕的幫助。
在另一實施例中,動作區(qū)域可以是有界框或有界框的開始。例如,用左括號選擇手跡,拐角的頂部和底部可以是包含選擇的開始。
手跡的動作區(qū)域可以可變的,并可以基于該手跡的一個或多個屬性。例如,在單個單詞上的X可以具有與該手跡相關的一個動作,刪除該單詞(其中該手跡的動作區(qū)域可以是一較小的區(qū)域或者X中心的單個點)。作為替換,在一個段落上的較大的X可以擴展該動作區(qū)域的范圍,以包括整個段落。動作區(qū)域的此類定標可以通過其他的屬性來調整,這些屬性包括但不限于書寫手跡的速度、針筆在數(shù)字化裝置表面上的壓力、針筆的角度(若通過硬件能夠進行角度的檢測)、手跡在顯示屏上的位置、手跡相對于屏幕上所顯示的其他元素(如各種其他的筆記、手跡的角度等)的位置。
位置位置是手跡的另一方面。可以相對于顯示屏和/或相對于屏幕上顯示的其他物體(如筆跡)而測量位置。在某些情況下,手跡位置的重要性可能小于其他方面。在其他情況下,手跡位置可以是最重要的方面之一,或者是手跡的特定特征。例如,若希望選擇一個句子再刪除該句子之外的一個單詞,根據(jù)對在該句子和該刪除單詞之間的X的位置的相關程度的解釋,馬虎的刪除手跡X將具有不同的結果。在一種解決方案中,由于該動作區(qū)域可能包括該選擇并指出該選擇將被刪除,該句子將被刪除。作為替換,該X并不實際地位于該選擇之上進而使得X的位置并不位于該選擇之上這一事實指出該手跡試圖刪除該單詞而不是該選擇區(qū)。
大小/范圍一個手跡可以具有其他的基于手跡大小的特性。該信息允許手跡對它們所修改的內容具有不同的影響或范圍。例如,左括號的高度可以是一行,或者可以是多行。對于三行高的左括號將比兩行高的左括號選擇更大的區(qū)域。
在一替換實施例中,成對的手跡(例如,左和右選擇括號)可能不依賴于大小,而是依賴于位置,因為左和右選擇括號可以明確一個有界框,或者將被選擇的文本流的開始和結束。
形狀手跡形狀可以與它們所覆蓋的區(qū)域有關。例如,三行高的左括號的高度/寬度比可以與僅一行高的左括號不同。此外,一些手跡的實際形狀內容可以根據(jù)大小而不同。例如,在文本下方用來使其強化或大寫的波浪線越長,則它可能具有更多的凸起。因而,手跡的識別可以包括將該手跡的大小歸一化到一個單位區(qū)域。識別可以包括匹配形狀以確定是否將單個手跡(波浪線)重復了多次來覆蓋一較大的區(qū)域。
識別手跡能夠越精確地識別一個實際的手跡,就越好。此外,筆跡應該最好不會被誤認為是手跡。圖4顯示了一用于將特定筆劃識別成手跡并將它們與非手跡筆劃做區(qū)分的示例過程。
在步驟401中,接收到一個筆劃。在步驟403中,系統(tǒng)確定是否接收到了一個手跡。該確定可以包括定標、重定向和/或其他操作來確定接收到的筆劃是否是一個手跡。系統(tǒng)還可以由步驟404查看最近的筆劃,因為當與其它筆劃獨立開來或者組合起來時,某些筆劃都可以看成是手跡。例如,在段落上的輕點可以選擇敲擊位置下面的單詞。兩次輕點(意味著除了步驟401的當前輕點之外,系統(tǒng)還需要重新調用來自步驟404的第一次輕點)可以選擇包含有原來輕點下方的單詞的句子或段落。
若沒有接收到手跡,在401中接收到的筆劃在步驟402中被表示。作為替換,對于多個筆劃可能被停止表示,直到在步驟403確定它們將不是一個手跡的組合,然后再在步驟402中被一起顯示。
若在步驟403中接收到一個手跡,將警告系統(tǒng)出現(xiàn)了一個手跡。該警告可以包括手跡標志的設定。作為替換,可以包括手跡以及額外的信息(包括以下的一個或多個手跡的大小、手跡的形狀、手跡的動作區(qū)域以及控制方法或屬性)的發(fā)送。此外,可以警告在步驟401接收到該筆劃的應用程序出現(xiàn)了該手跡(包括或不包括額外的信息)。
在替換實施例中,所有的筆劃可以在接收到時就被表示,以立即提供反饋給用戶。在這些實施例中,步驟405可以消除形成該手跡的一個或多個筆劃。
在又一個實施例中,如步驟406所示,可以確定與該手跡相關的對象,并將其提供該系統(tǒng)或應用程序(步驟407),以允許系統(tǒng)或應用程序執(zhí)行該手跡或確定何時執(zhí)行該手跡。該對象可以是如屏幕上顯示的一個對象(如按鈕、文本、圖形或任何其他類似的顯示對象),手跡可以畫在該對象上方或附近。例如,當手跡是一個勾號時,對象可以是一個按鈕,勾號手跡使得發(fā)生與該按鈕相關的特定動作。作為另外的例子,對象是一個文本單詞,手跡是在該單詞上畫的一個大寫B(tài),與該大寫B(tài)手跡相關的對象將被變?yōu)榇謱戵w。
一旦手跡被確定,圖4可以立即執(zhí)行這些手跡。圖5顯示了一替換實施例,其中不由系統(tǒng)而是由應用程序確定筆劃是否是手跡。圖5提供了首先捕獲筆劃,然后在另一時間再執(zhí)行是手跡的筆劃的選擇。例如,圖5的過程對于那些在執(zhí)行改變之前希望看見對文件的所有修改的用戶而言將是有用的。
在步驟501中,接收一個筆劃。在步驟502中,該筆劃被表示,而筆劃的組合被傳遞給應用程序503。在步驟504,應用程序閱讀該一個或多個筆劃。在步驟505,應用程序確定接收到的一個或多個筆劃是否是一個手跡。該方案允許識別應用程序特定的手跡,而不僅是系統(tǒng)范圍的手跡。
若在步驟504沒有接收到手跡,應用程序處理筆劃505。若在步驟504接收到手跡,應用程序在步驟506處理該手跡。
圖8顯示了識別手跡的另一個實施例。在步驟801,接收一個筆劃。在步驟802,規(guī)范化該筆劃。此外,可以在步驟802進行其他步驟,包括下面的任意一個或多個1.按照筆與顯示表面的接觸,即接觸和不接觸(例如0放下,1提起,),將接收到的一個或多個筆劃分成單個點的串。
2.用來自數(shù)字化裝置的物理維度數(shù)據(jù)將X和Y坐標定標成預定的大小(如一平方英寸)。在一實施例中,定標信息可以被丟棄。作為替換,也可以保留定標信息備用。
3.定標多個點的輸入時間,并重新采樣該筆跡以生成預定個數(shù)的點(如200個)。在一個實施例中,可以丟棄定標信息。作為替換,也可以保留定標信息備用。
4.可以計算額外的項目,包括筆劃纏繞、筆劃持續(xù)時間、筆劃的縱橫比、任意點到連接端點部分的最大距離、變形的點等5.為每個x,y和z坐標計算Chebychev多項式。
6.組合Chebychev多項式、纏繞、定標、持續(xù)時間中的一部分或全部,并定標和輸入到一個或多個Bayes網(wǎng)絡??梢詾槊總€手跡使用一個獨立的Bayes網(wǎng)絡。
7.將處理后的一個或多個筆劃傳遞給每個Bayes網(wǎng)絡,并取得一個分數(shù)。識別任何超過一個閾值的網(wǎng)絡。若確實有一個網(wǎng)絡識別一手跡,則將該手跡傳遞給應用程序或系統(tǒng)。若沒有則指出沒有識別出手跡。
步驟803確定一個或多個筆劃是否是一個手跡。這可以包括上面的步驟7的匹配。若是的話,系統(tǒng)確定動作區(qū)域805中的單詞或筆劃,并在步驟806將動作區(qū)域中的手跡ID和對象發(fā)送給系統(tǒng)或應用程序。
若不是,則在步驟804,系統(tǒng)確定是否已經(jīng)達到了最大的筆劃數(shù)(如四個筆劃)。若不是,這系統(tǒng)在步驟808為下一個筆劃做準備。否則,系統(tǒng)在步驟807丟棄最早接收到的筆劃,然后在步驟808為下一個筆劃做準備。
下面列出了多種示例手跡及其相關方法或屬性。
字體屬性改變-為了使一個單詞(或文本的其他部分)加粗,在該單詞或文本的其他部分上畫一個大寫B(tài)。還可以在該單詞上畫一個大寫I使其變成斜體、畫一個U加下劃線、畫DU加雙下劃線、畫0V加上劃線、畫N變正常字體。也可以實現(xiàn)其他的屬性改變。一些手跡識別的實施例可以包括對相互并列的筆劃的確定。這里,用一個筆劃在一個單詞上書寫可以幫助系統(tǒng)或應用程序得知已經(jīng)發(fā)生了一個手跡。
斷行-一個右下拐角可以被解釋成進行斷行、回車、新段落等的手跡。而右上拐角可以實施相反的功能。
剪切/復制/粘貼-可以用X來剪切,用C或加圈的X來復制,用插入記號來粘貼。可以用兩個插入記號來進行特殊的粘貼。
選擇-可用左右方括號來定義選擇。作為替換,左圓括號默認選擇一個單詞。在進一步的替換中,重復的左/右圓括號按照需要調整選擇。箭頭手跡可以進行精細(一次一個字符)調整?;ɡㄌ柨梢赃M行不連續(xù)的選擇。
文本/列表/圖形分組-在一個選擇上所做的段落手跡將筆跡組成文本,并識別筆跡流(也被稱為回流)。作為替換,一個分段手跡將其變成圖形或列表。這也可以在列表的情況中使用(如L手跡)。
手跡可以被應用于其他的應用程序,包括英特網(wǎng)網(wǎng)頁和電子表格。通過使用各方向上的短劃,在瀏覽器中所觀察的文件可以可以向上和向下滾動。多個短劃可以修改頁面或文件向上和向下滾動距離。在電子表格中,垂直的括號可以定義列的集合。補字號(向上或轉動的)可以是插入行和/或列的手跡。
圖6顯示了多種不同的手跡。下面的表格描述了這些手跡以及可能與其中每一個相關的不同變化。也可以使用其它的字形、變化和語義。


以下表格列出了可能的手跡控制。


執(zhí)行手跡手跡的執(zhí)行可能取決于應用程序將對手跡做何處理(給定手跡的大小、形狀和位置)以及操作系統(tǒng)如何將關于該手跡的信息傳遞給應用程序。一些手跡可以由操作系統(tǒng)解釋,并且可以按照一個或多個鼠標和/或鍵盤的移動而傳遞給應用程序。其他手跡可能無法由操作系統(tǒng)識別,而是只能由應用程序識別。這里,應用程序需要根據(jù)手跡的各方面或各特性確定對手跡做何處理。此外,可以用手跡解釋程序來將不啟用手跡的應用程序和不理解一給定手跡或者根本不理解手跡的操作系統(tǒng)進行接口。
數(shù)據(jù)結構圖7顯示了一個可用于表示手跡的數(shù)據(jù)結構701的例子。也可以使用其他數(shù)據(jù)結構,包括數(shù)組、鏈表等。段702與手跡的普遍規(guī)范有關。段703與刪除手跡有關。段704與開始選擇手跡有關。
段705包括手跡標識符。如本領域已知,手跡表示符可以是Unicode字符,或者可以是GUID。段706顯示了手跡的規(guī)范化形狀。對于手跡703,規(guī)范化的形狀是“x”。對于手跡704,規(guī)范化的形狀是“[”。段706包括手跡的動作區(qū)域。例如,對于手跡703,動作區(qū)域是位于形成該手跡的兩條直線交叉處下方的點。對于手跡704,動作區(qū)域是該括號右邊的筆劃、一個或多個單詞。
段708描述了與該手跡相關的控制方法或屬性。對于手跡703,相關的控制方法或屬性是“刪除”。對于手跡704,相關的控制方法或屬性是“開始選擇”。
雖然通過例子的方式顯示了實施本發(fā)明的示例系統(tǒng)和方法,但是當然可以理解本發(fā)明并不限于這些實施例。本領域的技術人員可以進行修改,尤其是根據(jù)前面的教導。例如,前述實施例的每個元件可以單獨的應用,或者與其他實施例的元件共同使用。盡管已經(jīng)用所附的權利要求定義了本發(fā)明,這些權利要求也只是示例性的,因為本發(fā)明意在包括這里所描述的元件和步驟的任意組合或再組合。因而,可以由任意數(shù)量的替換組合來定義本發(fā)明,它們以各種組合或再組合從描述(包括說明書、權利要求書和附圖)中引入了一個或多個元件。相關技術領域的技術人員將清楚,根據(jù)本發(fā)明的說明書,本發(fā)明諸方面的替換組合,不管是獨立的還是與這里所定義的一個或多個元件或步驟相結合,可以被用作本發(fā)明的修改或替換,或者本發(fā)明的一部分。這里所包含的書面發(fā)明描述意在覆蓋所有這些修改和替換。
權利要求
1.一種用于確定是否從正在觀看頁面的用戶接收到一手跡的方法,包括接收所述頁面上的一個筆劃;確定該筆劃是否包括一個手跡;以及提醒系統(tǒng)或應用程序已經(jīng)接收到了所述手跡。
2.如權利要求1所述的方法,其特征在于,進一步包括消除形成該手跡的筆劃。
3.如權利要求1所述的方法,其特征在于,進一步包括確定與所述手跡相關的一個對象;以及與所述手跡一起將所述對象傳遞到所述系統(tǒng)或所述應用程序。
4.如權利要求1所述的方法,其特征在于,進一步包括以下步驟表示接收到的筆劃。
5.如權利要求1所述的方法,其特征在于,所述筆劃位于所述頁面上的任何地方。
6.一種用于確定是否從正在觀看頁面的用戶接收到一手跡的方法,包括接收所述頁面上的一個筆劃;在所述頁面上表示所述筆劃;將所述筆劃發(fā)送到應用程序;在所述應用程序中確定所述筆劃是否包括一個手跡;以及處理所述手跡。
7.一種用于存儲手跡的數(shù)據(jù)結構,包括與所述手跡的標識相關的第一部分;描述所述手跡的規(guī)范化形狀的第二部分;描述所述手跡的動作區(qū)域的第三部分;以及描述默認動作或控制方法或屬性的第四部分。
8.一種用于確定接收到的筆劃是否是手跡的方法,包括規(guī)范化至少一個筆劃,以建立規(guī)范化的至少一個筆劃;為至少一個筆劃的坐標計算Chebychev多項式;組合規(guī)范化的至少一個筆劃與Chebychev多項式,以建立Bayes網(wǎng)絡;為已知的手跡比較所述Bayes網(wǎng)絡與之前計算出的Bayes網(wǎng)絡;確定所述Bayes網(wǎng)絡是否與所述計算出的Bayes網(wǎng)絡中的一個相關;以及若所述Bayes網(wǎng)絡與所述計算出的Bayes網(wǎng)絡中的一個相關,則將所述至少一個筆劃處理成對應于所述計算出的Bayes網(wǎng)絡中的所述一個的手跡。
9.如權利要求8所述的方法,其特征在于,進一步包括將所述至少一個筆劃壓縮成單個點的串;以及使用所述單個點的串建立所述Bayes網(wǎng)絡。
10.如權利要求8所述的方法,其特征在于,進一步包括定標所述至少一個筆劃的多個點的輸入時間以建立一定標時間;以及用所述定標時間建立所述Bayes網(wǎng)絡。
11.如權利要求10所述的方法,其特征在于,進一步包括計算至少一個筆劃的纏繞和持續(xù)時間;以及在所述Bayes網(wǎng)絡中使用所述定標時間。
12.一種計算機可讀媒介,包括有一種用于確定是否從正在觀看頁面的用戶接收到一手跡的程序,該程序包括用于完成下列步驟的指令接收所述頁面上的一個筆劃;確定該筆劃是否包括一個手跡;以及提醒系統(tǒng)或應用程序已經(jīng)接收到了所述手跡。
13.如權利要求12所述的計算機可讀媒介,其特征在于,所述程序進一步包括完成下列步驟的指令消除形成該手跡的筆劃。
14.如權利要求12所述的計算機可讀媒介,其特征在于,所述程序進一步包括完成下列步驟的指令確定與所述手跡相關的一個對象;以及與所述手跡一起將所述對象傳遞到所述系統(tǒng)或所述應用程序。
15.如權利要求12所述的計算機可讀媒介,其特征在于,所述程序進一步包括用于完成表示接收到的筆劃的步驟的指令。
16.如權利要求12所述的計算機可讀媒介,其特征在于,所述筆劃位于所述頁面上的任何地方。
17.一種用于實現(xiàn)手跡的系統(tǒng),包括與顯示相關的數(shù)字化裝置,用于顯示頁面;針筆;以及處理器,其中,當在所述頁面上任何地方接收到一筆劃時,通過所述針筆和所述數(shù)字化裝置之間的互動,所述處理器確定所述筆劃是否包括一手跡,并使用所述手跡的動作區(qū)域及其方法或屬性來對所述手跡進行處理。
全文摘要
描述了一種用于捕獲和實現(xiàn)手寫手跡的系統(tǒng)與處理過程。用戶可以使用手跡來快速地命令基于筆的輸入設備完成操作。用所述的實施例,用戶可以用基于筆的計算機平臺中的一支筆來編輯文本或手寫筆跡,并使所做的編輯影響該文本或筆跡。
文檔編號G06K9/62GK1437136SQ0310434
公開日2003年8月20日 申請日期2003年1月31日 優(yōu)先權日2002年2月8日
發(fā)明者G·赫蘭德, A·古納斯 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1