两个人的电影免费视频_国产精品久久久久久久久成人_97视频在线观看播放_久久这里只有精品777_亚洲熟女少妇二三区_4438x8成人网亚洲av_内谢国产内射夫妻免费视频_人妻精品久久久久中国字幕

檢測墨水輸入中列表的系統(tǒng)和方法

文檔序號:6431677閱讀:241來源:國知局
專利名稱:檢測墨水輸入中列表的系統(tǒng)和方法
技術(shù)領(lǐng)域
本發(fā)明一般涉及計算機系統(tǒng),尤其涉及檢測墨水輸入中列表的改進的系統(tǒng)與方法。
背景技術(shù)
檢測列表的能力對那些要用墨水輸入或墨水便箋直接在他們的計算機上書寫或繪制的用戶是很重要的。當前的硬件和軟件都能夠相當好地捕獲表示手寫的墨水,但目前不能同樣地檢測和表示手寫結(jié)構(gòu)的含義,諸如墨水輸入中各項的列表的含義。因此,用戶可改為使用基于菜單的應(yīng)用程序來為諸如列表之類的文本產(chǎn)生結(jié)構(gòu)??捎蛇@類應(yīng)用程序為用戶呈現(xiàn)在格式化輸入文本時選擇和/或使用各種結(jié)構(gòu)。例如,字處理應(yīng)用程序可包括一個菜單選項用于將文本格式化為著重號方式或編號方式的項列表。
對手繪對象識別的研究至今已產(chǎn)生了少量結(jié)果。例如,已使用不斷增加的識別算法,它們可以識別簡單的幾何形狀,諸如從以特定次序產(chǎn)生的特定數(shù)量的筆畫中識別圓或方框。但是,這類不斷增加的算法依賴于筆畫次序和/或假設(shè)特定的筆畫數(shù)量來識別特定的手繪對象。這樣一種方法有幾個原因使其不是穩(wěn)固的。首先,這些不斷增加的算法都沒有解決分組問題,即決定哪些筆畫集合因那些筆畫代表特定的結(jié)構(gòu)或形狀而歸在一起。在沒有將屬于一個結(jié)構(gòu)或形狀的筆畫分組在一起的情況下,不斷增加的算法就不可能適應(yīng)多筆畫結(jié)構(gòu),諸如列表。
所需要的是檢測和表示手寫結(jié)構(gòu)的含義的方法,它可不受形成給定結(jié)構(gòu)所要求的筆畫輸入次序和/或筆畫數(shù)的影響。任何這樣的系統(tǒng)和方法都應(yīng)該能夠檢測多筆畫手寫結(jié)構(gòu)并能夠確定表示一個手寫結(jié)構(gòu)的哪些筆畫集合歸在一起。

發(fā)明內(nèi)容
簡要地,本發(fā)明提供了用于檢測墨水輸入中列表的一種系統(tǒng)和方法。為此,提供一種檢測器,可檢測列表,諸如墨水輸入中著重號方式或編號方式的項列表。檢測器可包括用于選擇可形成墨水輸入內(nèi)列表的行分組的列表候選檢測器、用于檢測列表內(nèi)手寫行的縮進層的列表縮進檢測器、用于檢測在列表的手寫行中的著重號的著重號檢測器、和用于提供列表結(jié)構(gòu)的列表結(jié)構(gòu)檢測器。
本發(fā)明可檢測和表示手寫結(jié)構(gòu)諸如列表的含義,通過先進行列表候選識別來選擇可能形成墨水輸入內(nèi)列表的行分組。還可對候選列表的每一行進行縮進層聚類,以分組候選列表的縮進層。然后可執(zhí)行著重號檢測來識別墨水輸入內(nèi)手寫行中的著重號,諸如圖形或字母數(shù)字著重號。最后,可確定出列表的結(jié)構(gòu),包括列表項之間的關(guān)系,而且可確認候選列表為至少包括兩個著重號方式項的有效列表。
在一個實施例中,著重號檢測可通過檢測著重號伴侶來進行,它們是在相同縮進層上、可能以具有與著重號候選相似特征開始的行配對。行配對中著重號候選的特征可用來確定行配對是否為著重號伴侶的可能性。如果著重號候選的特征的可能性超過了閾值,則行配對可看作著重號伴侶且著重號候選可看作有效的著重號。否則,如果著重號候選的行是具有著重號候選子集的縮進層集合的成員且確定著重號伴侶集合中的行數(shù)與縮進層集合中的行數(shù)的比例高于一個閾值,則候選著重號可看作是有效的著重號。
好處在于,本系統(tǒng)和方法不受可形成手繪結(jié)構(gòu)的筆畫輸入次序和筆畫數(shù)的影響。其它優(yōu)點將從以下結(jié)合附圖的詳細描述中變得顯而易見,其中


圖1是方框圖,通常表示可在其中結(jié)合本發(fā)明的計算機系統(tǒng);圖2是方框圖,通常表示按照本發(fā)明的一個方面用于檢測墨水輸入中列表的系統(tǒng)組件的示例性結(jié)構(gòu);圖3是流程圖,通常表示按照本發(fā)明的一個方面檢測墨水輸入中列表并產(chǎn)生列表結(jié)構(gòu)所采取的步驟;圖4是示例性圖解,通常表示按照本發(fā)明的一個方面,墨水輸入中手寫對象的結(jié)構(gòu)化關(guān)系,用于執(zhí)行列表的檢測;圖5是流程圖,通常表示按照本發(fā)明的一個方面,列表檢測所采取的步驟的一個實施例;圖6是一流程圖,通常表示按照本發(fā)明的一個方面,列表候選識別所采取的步驟的一個實施例;
圖7提供示例性圖解,通常表示按照本發(fā)明的一個方面的列表候選;圖8是流程圖,通常表示按照本發(fā)明的一個方面,進行縮進層聚類所采取的步驟的一個實施例;圖9提供示例性圖解,通常表示按照本發(fā)明的一個方面,在縮進層聚類之后的候選列表;圖10是流程圖,通常表示按照本發(fā)明的一個方面進行著重號檢測所采取的步驟的一個實施例;圖11是流程圖,通常表示按照本發(fā)明的一個方面進行著重號伴侶檢測所采取的步驟的一個實施例;圖12是流程圖,通常表示按照本發(fā)明的一個方面進行列表結(jié)構(gòu)確定所采取的步驟的一個實施例;圖13是示例性圖解,通常表示按照本發(fā)明的一個方面的候選列表結(jié)構(gòu)的一個實施例;以及圖14是示例性圖解,通常表示按照本發(fā)明的一個方面在執(zhí)行繪畫對象的列表檢測之后,墨水輸入中手寫對象的結(jié)構(gòu)關(guān)系。
具體實施例方式
示例性操作環(huán)境圖1示出了可在其上實現(xiàn)本發(fā)明的合適的計算系統(tǒng)環(huán)境。計算系統(tǒng)環(huán)境100只是合適的計算環(huán)境的一個例子,而并非想建議任何對本發(fā)明使用范圍或功能性的限制。計算環(huán)境100也不應(yīng)解釋為對示例性操作環(huán)境100中所示的任何一個組件或其組合具有任何依賴性或者要求。
本發(fā)明可操作于大量其它通用或?qū)S糜嬎阆到y(tǒng)環(huán)境或配置??珊线m于使用本發(fā)明的眾所周知的計算系統(tǒng)、環(huán)境和/或配置的例子包括但不限于個人計算機、服務(wù)器計算機、手持或膝上型設(shè)備、平板設(shè)備、無頭服務(wù)器、多處理器系統(tǒng)、基于微處理器系統(tǒng)、機頂盒、可編程消費電子產(chǎn)品、網(wǎng)絡(luò)PC、小型機、大型機、包括任意上述系統(tǒng)或設(shè)備的分布式計算環(huán)境等等。
本發(fā)明可在可由計算機執(zhí)行的、諸如程序模塊的計算機可執(zhí)行指令的通用環(huán)境中描述。通常,程序模塊包括例程、程序、對象、組件、數(shù)據(jù)結(jié)構(gòu)等等,它們執(zhí)行特定任務(wù)或?qū)崿F(xiàn)特定抽象數(shù)據(jù)類型。本發(fā)明還可在分布式計算環(huán)境中實施,其中任務(wù)可由通過通信網(wǎng)絡(luò)連接的遠程處理設(shè)備完成。在分布式計算環(huán)境中,程序模塊可位于本地和/或遠程計算機的包括存儲器存儲設(shè)備在內(nèi)的存儲介質(zhì)中。
參考圖1,用于實現(xiàn)本發(fā)明的示例性系統(tǒng)包括計算機110形式的通用計算設(shè)備。計算機110的組件可包括,但不限于,處理單元120、系統(tǒng)存儲器130和連接包括系統(tǒng)存儲器在內(nèi)的各種系統(tǒng)組件至處理單元120的系統(tǒng)總線121。系統(tǒng)總線121可以是幾種總線結(jié)構(gòu)類型的任何一或多種,包括存儲器總線或存儲控制器、外部設(shè)備總線和使用多種多樣總線結(jié)構(gòu)任何一種的局部總線。作為例子,而非限制,這樣的結(jié)構(gòu)包括工業(yè)標準結(jié)構(gòu)(ISA)總線、微通道結(jié)構(gòu)(MCA)總線、擴展ISA(EISA)總線、視頻標準協(xié)會(VESA)局部總線以及外設(shè)部件互連(PCI)總線,它也被稱為中間層(Mezzanine)總線。
計算機110一般包括多種多樣的計算機可讀介質(zhì)。計算機可讀介質(zhì)可以是任何能夠由計算機110存取的可用介質(zhì),并包括易失性和非易失性介質(zhì)以及可移動和不可移動介質(zhì)。作為例子,而非限制性地,計算機可讀介質(zhì)可包括計算機存儲介質(zhì)和通信介質(zhì)。計算機存儲介質(zhì)包括以存儲諸如計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù)等信息的任何方法或技術(shù)實現(xiàn)的易失性的和非易失性的、可移動的和不可移動的介質(zhì)。計算機存儲介質(zhì)包括,但不限于,RAM、ROM、EEPROM、閃存或其它存儲技術(shù)、CD-ROM、數(shù)字多功能盤(DVD)或其它光盤存儲器、磁盒、磁帶、磁盤存儲器或其它磁存儲設(shè)備,或者可能被用于存儲想要的信息并能由計算機110存取的任何其它介質(zhì)。通信介質(zhì)一般包括在諸如載波或其它傳輸機制的調(diào)制數(shù)據(jù)信號中的計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊或其它數(shù)據(jù),并包括任何信息傳遞介質(zhì)。術(shù)語“調(diào)制數(shù)據(jù)信號”意指具有其以在信號中編碼信息的方式設(shè)置或改變的一個或多個特征的信號。作為例子,而非限制性地,通信介質(zhì)包括諸如有線網(wǎng)絡(luò)或直接線纜連接的有線介質(zhì)和無線介質(zhì),諸如聲音、RF、紅外和其它無線介質(zhì)。上述各項的任何組合也應(yīng)該包括在計算機可讀介質(zhì)的范圍內(nèi)。
系統(tǒng)存儲器130包括易失性的和/或非易失性的存儲器形式的計算機存儲介質(zhì),諸如只讀存儲器(ROM)131和隨機存取存儲器(RAM)132。基本輸入/輸出系統(tǒng)133(BIOS),包含幫助計算機110內(nèi)部件之間傳送信息的基本例程,諸如在起動期間,它一般被存儲在ROM 131中。RAM 132一般包含由處理單元120直接存取和/或當前正在操作的數(shù)據(jù)和/或程序模塊。作為例子,而非限制,圖1示出操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137。
計算機110還可包括其它可移動的/不可移動的、易失性的/非易失性的計算機存儲介質(zhì)。只是作為例子,圖1示出讀寫不可移動的、非易失性的磁介質(zhì)的硬盤驅(qū)動器141,讀寫可移動的、非易失性的磁盤152的磁盤驅(qū)動器151,和讀寫可移動的、非易失的光盤156諸如CD ROM或其它光介質(zhì)的光盤驅(qū)動器155。能用于示例操作環(huán)境的其它可移動的/不可移動的、易失性的/非易失性的計算機存儲介質(zhì)包括,但不限于,磁帶盒、閃存卡、數(shù)字多功能盤、數(shù)字視頻帶、固態(tài)RAM、固態(tài)ROM等等。硬盤驅(qū)動器141一般通過不可移動的存儲器接口諸如接口140連接至系統(tǒng)總線121,而磁盤驅(qū)動器151和光盤驅(qū)動器155一般由可移動的存儲器接口諸如接口150連接至系統(tǒng)總線121。
上面所述和在圖1中所示的驅(qū)動器及其相關(guān)聯(lián)的計算機存儲介質(zhì),為計算機110提供計算機可讀指令、數(shù)據(jù)結(jié)構(gòu)、程序模塊和其它數(shù)據(jù)的存儲。在圖1中,例如,硬盤驅(qū)動器141被示出為存儲操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147。注意這些組件可以與操作系統(tǒng)134、應(yīng)用程序135、其它程序模塊136和程序數(shù)據(jù)137或者相同,或者不同。操作系統(tǒng)144、應(yīng)用程序145、其它程序模塊146和程序數(shù)據(jù)147在這里給出不同的數(shù)字,以說明在最低程度上它們是不同的拷貝。用戶可通過輸入設(shè)備,諸如手寫板、或電子數(shù)字化儀164、話筒163、鍵盤162和通常被稱為鼠標的定點設(shè)備161、軌跡球或觸摸墊,將命令和信息輸入到計算機110中。未示出于圖1的其它輸入設(shè)備可包括操縱桿、游戲墊、衛(wèi)星天線、掃描儀或其它設(shè)備,包括包含生物傳感器、環(huán)境傳感器、位置傳感器或其它類型傳感器的設(shè)備等等。這些和其它輸入設(shè)備常常通過連接到系統(tǒng)總線的用戶輸入接口160連接至處理單元120,但也可以通過其它接口和總線結(jié)構(gòu)連接,諸如并行端口、游戲端口或通用串行總線(USB)。監(jiān)視器191或其它類型的顯示設(shè)備也通過一個接口諸如視頻接口190連接至系統(tǒng)總線121。監(jiān)視器191還可與觸摸屏板之類的集成在一起。注意顯示器和/或觸摸屏板可物理地連接在包括計算設(shè)備110其中的機架上,諸如平板型個人計算機。另外,諸如計算設(shè)備110之類的計算機還可包括其它外部輸出設(shè)備諸如揚聲器195和打印機196,它們可通過輸出外部接口194等連接。
計算機110可在使用邏輯連接至一個或多個計算機諸如遠程計算機180的網(wǎng)絡(luò)化環(huán)境中運行。遠程計算機180可以是個人計算機、服務(wù)器、路由器、網(wǎng)絡(luò)PC、對等設(shè)備或其它一般網(wǎng)絡(luò)節(jié)點,并且一般包括上面相對于計算機110所述的部件的許多或全部,盡管在圖1中只示出存儲器存儲設(shè)備181。圖1中所示的邏輯連接包括局域網(wǎng)(LAN)171和廣域網(wǎng)(WAN)173,但還可包括其它網(wǎng)絡(luò)。這樣的網(wǎng)絡(luò)環(huán)境在辦公室、企業(yè)范圍的計算機網(wǎng)絡(luò)、內(nèi)聯(lián)網(wǎng)和因特網(wǎng)中是很普遍的。當在LAN網(wǎng)絡(luò)環(huán)境中使用時,計算機110通過網(wǎng)絡(luò)接口或適配器170連接至LAN 171。當在WAN網(wǎng)絡(luò)環(huán)境中使用時,計算機110一般包括調(diào)制解調(diào)器172或用于在WAN173諸如因特網(wǎng)上建立通信的其它工具。調(diào)制解調(diào)器172,可以是內(nèi)置的或外置的,可通過用戶輸入接口160或其它適當?shù)臋C制連接至系統(tǒng)總線121。在網(wǎng)絡(luò)化環(huán)境中,相對于計算機110所示的程序模塊,或者其部分,可存儲在遠程存儲器存儲設(shè)備中。作為例子,而非限制性地,圖1例示了駐留在存儲器設(shè)備181上的遠程應(yīng)用程序185。將意識到,所示的網(wǎng)絡(luò)連接是示例性的,并且可使用在計算機之間建立通信鏈路的其它方法。
檢測墨水輸入中的列表本發(fā)明通常針對用于檢測墨水輸入中列表的系統(tǒng)和方法。用戶可毫無限制地在手寫輸入裝置上自由地繪制列表。列表可具有許多筆畫且筆畫的輸入次序可以是任意的,因此本系統(tǒng)和方法可接受任何墨水作為輸入。如這里所用的,列表指至少有兩個著重號方式的列表項的結(jié)構(gòu),其中一個列表項包括至少一行并可包括一個著重號。
特別地,本系統(tǒng)和方法可選擇行分組作為候選列表。然后可進行縮進層聚類(indentation level clustering)和著重號檢測,以便確定列表的結(jié)構(gòu)。最后,可確定列表的結(jié)構(gòu),包括列表項之間的關(guān)系。如將要理解的,這里所述的各種方框圖、流程圖和場合都只是例子,并且還有許多本發(fā)明將應(yīng)用的其它場合。
轉(zhuǎn)到附圖中的圖2,示出了一個方框圖,通常表示檢測墨水輸入中列表的系統(tǒng)組件的示例結(jié)構(gòu)。那些本領(lǐng)域熟練技術(shù)人員將意識到,圖中例示的方框中實現(xiàn)的功能可作為單獨組件實現(xiàn),或者方框中的幾個或所有的功能可在單一組件中實現(xiàn)。例如,列表候選檢測器206的功能可包括在墨水分析器202中。或者列表結(jié)構(gòu)檢測器212的功能可作為單獨組件來實現(xiàn)。
墨水分析器202可接受任何墨水,包括具有繪畫對象的墨水。墨水分析器202可包括有效連接的列表檢測器204。通常,墨水分析器202和列表檢測器204可以是任何類型的可執(zhí)行軟件代碼,諸如內(nèi)核組件、應(yīng)用程序、鏈接庫、對象等等。列表檢測器204可包括有效連接的列表候選檢測器206、有效連接的著重號檢測器208、有效連接的列表縮進檢測器210和有效連接的列表結(jié)構(gòu)檢測器212,列表候選檢測器206用于從墨水輸入中選擇可形成候選列表的行分組,著重號檢測器208用于檢測列表行中的著重號,列表縮進檢測器210用于檢測列表行的縮進層,列表結(jié)構(gòu)檢測器212用于提供列表的結(jié)構(gòu),包括列表項之間的關(guān)系。這些組件的每一個還可以是任何類型的可執(zhí)行軟件代碼,諸如內(nèi)核組件、應(yīng)用程序、鏈接庫、對象或其它類型的可執(zhí)行軟件代碼。
圖3呈現(xiàn)一流程圖,通常表示檢測墨水輸入中的列表并產(chǎn)生列表結(jié)構(gòu)所采取的步驟。在步驟302,可分析任何墨水,包括具有諸如列表之類的手寫結(jié)構(gòu)的墨水。例如,在一個實施例中,可接受一頁墨水作為輸入并分析。在這個實施例中,墨水分析器,例如,可以沒有該頁墨水的先驗知識。因此,可執(zhí)行諸如單詞分組、書寫/繪畫分類及繪畫分組的基本算法。為了進行單詞分組,筆畫可分組成單詞、行和塊等層次。為了這么做,單詞分組過程可包括筆畫特征提取來捕獲距離、幾何不相似性和直線性以及其它筆畫特征。單詞分組過程還可包括按照時間信息動態(tài)編程以分組筆畫。單詞分組過程還可包括按照空間信息聚類以分組筆畫。在分組中識別的單詞、行和塊不必相應(yīng)于實際語義單詞、行和塊。事實上,組可包括手寫結(jié)構(gòu)諸如列表的筆畫。
為進行書寫/繪畫分類,可識別可將書寫與繪畫區(qū)分開來的各種特征。例如,可使用單個單詞征,諸如曲率、密度和其它手寫模型特征,將書寫與繪畫區(qū)分開來。在一個實施例中,可使用上下文特征,諸如時間和空間環(huán)境特征,將書寫與繪畫區(qū)分開來。各種特征的每一個可映射到一個模糊函數(shù)上,且可按照模糊函數(shù)的組合來確定書寫和繪畫之間的分類。
進行單詞分組和書寫/繪畫分類后,可通過進行繪畫分組來很好地組織繪制筆畫。為進行繪制分組,繪制筆畫可按照它們之間的空間關(guān)系分組為獨立的對象。一種有效的基于網(wǎng)格的方法可用來將墨水筆畫適配到具有合適大小的圖像網(wǎng)格中??蓸擞泩D像網(wǎng)格以找到相連的組件。每個相連的組件可相應(yīng)于一個繪畫對象。然后可應(yīng)用啟發(fā)式規(guī)則來調(diào)整繪畫對象。
使用由墨水分析器生成的書寫行和繪制筆畫,可在步驟304進行列表檢測,以確定手寫對象是否是一個列表,且如果是,則提供該列表的結(jié)構(gòu)。列表檢測首先可進行列表候選識別,以識別候選列表。然后還可進行縮進層聚類和著重號檢測,以便確定列表的結(jié)構(gòu)。最后,可確定列表的結(jié)構(gòu)。在步驟306,可作為輸出生成列表結(jié)構(gòu)。列表結(jié)構(gòu)可以是層次結(jié)構(gòu),諸如表示列表的結(jié)構(gòu)化關(guān)系的有向的非循環(huán)的圖形。
圖4提供一示例性圖解,通常表示墨水輸入中手寫對象的結(jié)構(gòu)化關(guān)系,用于執(zhí)行列表的檢測。根402可表示墨水輸入,諸如一頁墨水輸入,它可包括書寫和一或多個繪畫對象,諸如繪畫對象404和406。書寫可結(jié)構(gòu)化地由段落408表示,它可由具有由筆畫414形成的單詞412的行410組成。繪畫對象404可具有相關(guān)的內(nèi)容,諸如可通過由行410組成的段落408結(jié)構(gòu)化表示的文本,行410具有由筆畫414形成的單詞412??蓹z測諸如列表之類的手寫結(jié)構(gòu)并可在墨水輸入402中確定其結(jié)構(gòu)。
圖5提供一流程圖,通常表示檢測列表所采取的步驟的一個實施例。在步驟502,可執(zhí)行列表候選識別以在墨水輸入內(nèi)選擇可形成內(nèi)列表的行分組。還可在步驟504對列表候選的每一行執(zhí)行縮進層聚類,以分組列表候選的縮進層。行的縮進在此定義為從行的左邊緣到列表的左邊緣的距離??s進可以分組成層(level)且同一層的縮進是類似的。在步驟506,隨后可進行著重號檢測以識別著重號。著重號可以由一個或幾個筆畫組成并可開始一行。通常有兩種類型的著重號,圖形著重號和字母數(shù)字著重號。圖形著重號可包括點、破折號、圓、長方形等等。圖形著重號的形狀一般是類似的。字母數(shù)字著重號可包括字母字符、數(shù)字或者字母字符和/或數(shù)字的組合。一般地,字母數(shù)字著重號的序列是遞增的。在同一縮進層上的著重號通常是相同類型的。最后,結(jié)構(gòu)可在步驟508確定列表的結(jié)構(gòu),包括列表項之間的關(guān)系。然后可確認候選列表為有效列表,如果它可至少包括兩個著重號方式的項。
圖6提供一流程圖,通常表示列表候選識別所采取的步驟的一個實施例。在步驟602,輸入到列表檢測器的每一書寫行都可設(shè)置為列表候選。在一個實施例中,列表檢測器可一次只在一組這樣的類行上工作。在步驟604,可確定是否行分組中只有一個列表候選設(shè)置為列表候選。如果是,則可完成列表候選識別。如果否,則可在步驟606生成列表候選配對。可在步驟608從生成的所有列表候選配對中選擇一個列表候選配對。然后在步驟610可確定是否合并列表候選配對。如果兩個列表中的行的角度幾乎相同且列表的相鄰行間的垂直距離很小,則在步驟612可將列表候選合并為一個新的列表候選,且過程返回至步驟604。否則,可在步驟614確定是否有另一個可合并的列表候選配對。如果是,則過程可返回步驟608以選擇一個列表候選配對。如果否,則列表候選識別過程結(jié)束。
圖7提供示例性圖解,通常表示列表候選。有三種例示的列表候選列表1702、列表2 704和列表3 706。列表1 702不可以與列表2 704合并,因為兩個列表中行的角度的差太大。列表2 704和列表3 706不可以合并在一起,因為列表2 704的最后一行與列表3 706的第一行之間的垂直距離太大。長方形708可表示由一個實施例中墨水分析器所進行的單詞分組得到的塊分組(blockgrouping)。列表候選可包括塊分組,諸如列表3 706中的三個塊分組,例如。
圖8提供一流程圖,通常表示進行縮進層聚類所采取的步驟的一個實施例。候選列表的行可以根據(jù)每行的縮進聚類成縮進層分組。為了這么做,可計算每行的縮進,并隨后可將縮進聚類成幾個縮進層分組。一個列表項的縮進層可等同于其第一行的縮進層。
在一個實施例中,所用的縮進層聚類方法可能是模式識別中眾所周知的k-均值聚類算法。給定c層,mi是層Γi的平均縮進,mi=1NΣy∈Γiy,]]>y是行的縮進,Ni是層Γi中的行數(shù),而Je是所有層的均方差之和。聚類的目標是最小化Je,它定義為Je=Σi=1cΣy∈Γi||y-mi||2]]>在步驟802,平均縮進層可初始化為mi=i*l,給定縮進的初始步長l,且將要檢查的行的計數(shù)器設(shè)置為要檢查的行數(shù)。為了支持用戶可以用不同的大小書寫墨水便箋的情況,在一個實施例中可使用標準化的縮進。例如,縮進可由列表候選中的平均行高來標準化,其中縮進的初始步長l可以是1.4*平均行高。
在步驟804,可得到下一行y∈Γi。然后可在步驟806確定從y縮進到每層的平均縮進的距離。而且在步驟808可找到離y∈Γi最近的縮進層Γj。在步驟810,如果最近的縮進層等于當前縮進層,那么在步驟816行計數(shù)器減1,且對那行的縮進聚類結(jié)束。否則,在步驟812可將該行移至最近的縮進層。然后在步驟814可重新計算每個縮進層的平均位置,并且行計數(shù)器可設(shè)置為要檢查的行的數(shù)量。在步驟820,可確定行計數(shù)器是否為零。如果是,則過程返回步驟804以獲取下一行y∈Γi。如果否,則結(jié)束用于在該層的縮進的過程。
圖9提供一示例性圖解,通常表示縮進層聚類之后的候選列表。候選列表902有六行。在縮進層聚類結(jié)束時,行1、3和5在縮進層1中,而行2、4和6在縮進層2中。橢圓904包圍著縮進層1中各行的著重號,而橢圓906包圍著縮進層2中各行的著重號。
可以在縮進層聚類之后進行著重號檢測。著重號檢測可確定列表的項是否包括著重號。因此,對于著重號檢測過程,列表中每行的第一個單詞可看作著重號候選。根據(jù)經(jīng)驗觀察,如果列表中的兩行具有相同的縮進層且始于一個著重號,則這兩行的著重號通常是相同的符號,諸如圖形著重號或字母數(shù)字著重號。因此,在列表中相同縮進層的兩行可能都由一個著重號開始,如果兩行的著重號候選具有相似的特征。這樣著重號伴侶(bullet partner)這里定義為在列表中相同縮進層的、可始于具有相似特征的著重號候選的兩行。兩個這樣的行之一是另一個的著重號伴侶。注意著重號伴侶可以是或可以不是相鄰行。在著重號檢測中,著重號伴侶的著重號候選可看作著重號。
圖10提供一流程圖,通常表示進行著重號檢測所采取的步驟的一個實施例。在步驟1002,可對著重號候選行進行著重號伴侶檢測。在步驟1004,可檢查在相同縮進層上的著重號候選的諸相鄰行以確定一個相鄰行是否是著重號候選行的著重號伴侶。如果是,則在步驟1010,著重號候選可看作著重號。如果沒有檢測到著重號伴侶,則可在步驟1006確定是否著重號候選行是具有著重號伴侶的子集的縮進層集合的成員。如果否,則如在步驟1012所指出的,候選著重號不可看作是著重號。如果著重號候選行是具有著重號伴侶的子集的縮進層集合的成員,且可在步驟1008確定該著重號伴侶集合中的行數(shù)與縮進層集合中的行數(shù)之比高于閾值,則如在步驟1010所指出的,候選著重號可看作是著重號。如果否,則如在步驟1012所指出的,候選著重號不可看作是著重號。在一個實施例中,閾值可經(jīng)驗性地設(shè)置在0.66。那些本領(lǐng)域熟練技術(shù)人員將意識到可以使用其它閾值。
圖11提供進行著重號伴侶檢測所采取的步驟。在一個實施例中,著重號伴侶檢測可檢查在給定縮進層上每一個行配對是否是著重號伴侶。好處在于,由行配對檢查著重號可提高用于著重號檢測的過程的穩(wěn)固性。例如,碰到一個難看的著重號作為著重號候選可能不會導(dǎo)致未能在同一列表中檢測其它著重號。
為提高著重號伴侶檢測過程的分析速度,可使用簡單的特征,用于從可能作為一行第一個單詞出現(xiàn)的普通單詞中檢測著重號。這些特征可包括使用繞著著重號候選的邊界框的寬度與高度。例如,圖形著重號和數(shù)字著重號的邊界框的大小通常是相近的,而可能作為一行第一個單詞出現(xiàn)的普通單詞的邊界框的大小可能變化巨大。更明確地說,著重號的邊界框常常不和作為一行第一個單詞出現(xiàn)的普通單詞的邊界框同寬同高。那些本領(lǐng)域熟練技術(shù)人員將意識到,可以使用其它簡單的特征,諸如著重號候選和該行下一個單詞的距離。一般地,從著重號到該行的下一個單詞的距離常常大于一行中兩個普通單詞之間的距離。
在一個實施例中,用于檢測著重號的以下五個特征可用來計算兩行可能是著重號伴侶的概率Δh=|h(Ra)-h(Rb)|,Δw=|w(Ra)-w(Rb)|,w=max(w(Ra),w(Rb)),Δs=min(sa,sb)/max(sa,sb)和d=min(da,db)。對于兩個著重號候選a和b,a和b的邊界框,為長方形Ra和長方形Rb,分別可在步驟1102出現(xiàn)a和b的列表的角度位置中確定。
在步驟1104,可確定邊界框特征中的不同。例如,可在步驟1106,確定著重號候選的邊界框的高度差Δh=|h(Ra)-h(Rb)|,其中h(Ra)和h(Rb)分別是長方形Ra和長方形Rb的高度。或者,在步驟1108,可確定著重號候選的邊界框的寬度差Δw=|w(Ra)-w(Rb)|,其中w(Ra)和w(Rb)分別是長方形Ra和長方形Rb的寬度?;蛘?,在步驟1110,可確定著重號候選的邊界框的寬度最大值w=max(w(Ra),w(Rb))。
在步驟1112,可確定著重號候選的筆畫長度差值Δs=min(sa,sb)/max(sa,sb),其中sa和sb分別是著重號候選a和b的總筆畫長度。在步驟1114,可確定到該行下一單詞的距離d=min(da,db),其中sa和sb是每個著重號候選a和b,與它們各自行的下一個單詞之間的距離。
隨后,在步驟1116,行配對是著重號伴侶的可能性可用著重號候選的特征來確定。在一個實施例中,可構(gòu)造能結(jié)合各特征的模糊函數(shù)來確定兩行是著重號伴侶的可能性。函數(shù)可定義為f(Δh,Δw,w,Δs,d)=11+((ΔhΔh0)a+(ΔωΔω0)β+(ωω0)γ+(ΔsΔs0)η+(dd0)κ),(α,β,γ,η,κ>1)]]>其中Δh0,Δw0,w0,Δs0,d0是五個特征的閾值,而α,β,γ,η,κ可用來調(diào)節(jié)判別邊界的柔軟度(softness)。當任何特征從0到無窮大時,函數(shù)可單調(diào)降低。如果任何特征超過閾值,函數(shù)可低于0.5。當所有特征為0時,函數(shù)值可以是1,且當任何特征趨向無窮時可趨向于0。在一個實施例中,判別邊界可定義為f(Δh,Δw,w,Δs,d)=0.5。在這種情況下,(ΔhΔh0)α+(ΔwΔw0)β+(ww0)γ+(ΔsΔs0)η+(dd0)κ=1.]]>在步驟1118可作出模糊函數(shù)的可能性是否高于閾值0.5的判定。如果是,在步驟1120這兩行可看作著重號伴侶。否則,在步驟1122,這兩行不可看作是著重號伴侶。
在著重號檢測之后,列表結(jié)構(gòu)檢測可使用縮進層聚類和著重號檢測的結(jié)果來進行。例如,每行的縮進層可用來確定哪些行形成列表項,還可用來確定識別出的列表項之間的關(guān)系。列表結(jié)構(gòu)還可由著重號的存在來確定。圖12提供一流程圖,通常表示進行列表結(jié)構(gòu)確定所采取的步驟的一個實施例。
在步驟1202,列表項通過確定哪些行形成列表項來識別??赡苡袔讉€列表項組成的規(guī)則。例如,列表項可只包括始于著重號的一行。如果一個列表項有始于著重號的行,該行應(yīng)該是列表項中的第一行。如果一個列表項具有帶有著重號的一行,則該行的縮進層應(yīng)該等于或小于該列表項中任何其它行的縮進層。如果一列表項沒有帶有著重號的行,則該列表項中每行的縮進層可能是相同的。而且,列表項中的相鄰行間的垂直距離不可能很大。
一旦識別了列表項,在步驟1204就可確定列表項之間的關(guān)系??梢杂袔讞l確定列表項之間關(guān)系的規(guī)則。例如,列表項可以有任意數(shù)量的子項或什么也沒有。列表項的縮進層可以小于其子項的縮進層。對于列表項的子項,縮進層可以相同。列表項可只有一個父項或什么也沒有。
在步驟1206,列表候選結(jié)構(gòu)可以從列表項產(chǎn)生。列表候選結(jié)構(gòu)可以是層次結(jié)構(gòu),諸如不循環(huán)的有向圖或樹,在樹的特定層上的列表候選中可包括特定縮進層的列表項。最后,在步驟1208,可確定列表候選是有效列表,如果該列表候選中至少有兩個著重號。
圖13提供候選列表結(jié)構(gòu)的一個實施例的示例性圖解。候選列表結(jié)構(gòu)1302包括在行的左上角編號的若干行,并例示了列表項的幾個例子。例如,行2可形成列表項1304。行4和5可形成列表項1306,因為只有行4始于著重號且行4還是該候選列表項中的第一行。另外,行4和行5的縮進層是相同的,縮進層2 1316。行6和行7分別在同一縮進層,縮進層2 1316,但各自分別形成獨立的列表項1308和1310,因為這些行的每一行都始于著重號且列表項只可包括始于著重號的一行。行8和9分別在同一縮進層,縮進層3 1318,且每行各自分別形成獨立列表項1312和1314,國為這些行的每一行始于著重號,且列表項只可包括始于著重號的一行。
一旦已檢測了列表,并確定了它的結(jié)構(gòu),現(xiàn)在就可以理解手寫對象的結(jié)構(gòu)化關(guān)系了。圖14是示例性圖解,通常表示在執(zhí)行繪畫對象的列表檢測之后墨水輸入中手寫對象的結(jié)構(gòu)化關(guān)系。根1402可以表示墨水輸入,諸如墨水輸入頁,可包括一個或多個結(jié)構(gòu),諸如列表1404和列表1406。一個列表可包括一個或多個列表項,諸如列表項1408和1410。列表項可包括一行或多行,諸如行1412和1414,以及一個或多個著重號,諸如著重號1418。每一行可包括由一個或多個單詞結(jié)構(gòu)化地表示的文本,單詞諸如由筆畫1420形成的單詞1416。每個著重號1418可由筆畫1420形成。
在由所述系統(tǒng)和方法檢測了所有列表后,可完全檢測墨水輸入內(nèi)的手寫對象,并識別其結(jié)構(gòu)。通過使用本發(fā)明,用戶可不受限制地在手寫輸入裝置上自由地繪制列表。列表可具有許多筆畫,且筆畫的輸入次序可以是任意的,因此本系統(tǒng)和方法可接受任何墨水作為輸入??勺R別列表的結(jié)構(gòu),包括列表項之間的關(guān)系。
正如可從上述詳細描述中看到的一樣,本發(fā)明提供用于檢測列表的系統(tǒng)和方法。好處在于,本系統(tǒng)和方法不受可形成手寫列表的筆畫輸入次序和筆畫數(shù)的影響。而且,所提供的系統(tǒng)和方法是靈活且可擴展的。如現(xiàn)在理解的,本發(fā)明可用來檢測墨水輸入中的任何列表,諸如著重號方式或編號方式的項列表,包括識別該列表的結(jié)構(gòu)。本方法和系統(tǒng)從而提供了現(xiàn)代計算中所需要的顯著優(yōu)點和好處。
雖然本發(fā)明容許各種修改和可替代構(gòu)造,其中某些例示的實施例已經(jīng)在附圖中示出并在上面詳細描述了。但應(yīng)該理解,并非想限制本發(fā)明于所揭示的特定形式,而是相反,所想要的是覆蓋落在本發(fā)明精神和范圍內(nèi)的所有修改、可替代的構(gòu)造及等價物。
權(quán)利要求
1.一種用于檢測墨水輸入中列表的計算機系統(tǒng),其特征在于,包括列表檢測器,用于接收墨水輸入;縮進檢測器,它與所述列表檢測器相連,用于檢測墨水輸入內(nèi)書寫行的縮進;以及著重號檢測器,它與列表檢測器相連,用于檢測墨水輸入內(nèi)書寫行中的著重號。
2.如權(quán)利要求1所述的系統(tǒng),還包括墨水分析器,它與列表檢測器相連,用于發(fā)送墨水輸入到列表檢測器。
3.如權(quán)利要求1所述的系統(tǒng),還包括列表候選檢測器,它與列表檢測器相連,用于在墨水輸入內(nèi)選擇可形成列表的行分組。
4.如權(quán)利要求1所述的系統(tǒng),還包括列表結(jié)構(gòu)檢測器,它與列表檢測器相連,用于提供墨水輸入內(nèi)列表的結(jié)構(gòu)。
5.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述著重號包括字母數(shù)字著重號。
6.如權(quán)利要求1所述的系統(tǒng),其特征在于,所述著重號包括圖形著重號。
7.一種計算機可讀介質(zhì),具有包括如權(quán)利要求1所述的系統(tǒng)的計算機可執(zhí)行組件。
8.一種用于檢測墨水輸入中列表的方法,其特征在于,包括接收墨水輸入;在所述墨水輸入內(nèi)對列表執(zhí)行列表檢測;以及生成列表結(jié)構(gòu)作為輸出。
9.如權(quán)利要求8所述的方法,其特征在于,還包括分析所述墨水輸入以將墨水輸入內(nèi)書寫與圖畫區(qū)分開來。
10.如權(quán)利要求8所述的方法,其特征在于,執(zhí)行列表檢測包括為在墨水輸入內(nèi)選擇可形成列表的行分組而執(zhí)行列表候選識別。
11.如權(quán)利要求8所述的方法,其特征在于,執(zhí)行列表檢測包括為在墨水輸入內(nèi)檢測手寫行的縮進執(zhí)行縮進檢測。
12.如權(quán)利要求8所述的方法,其特征在于,執(zhí)行列表檢測包括執(zhí)行著重號檢測以在墨水輸入內(nèi)識別手寫行中的著重號。
13.如權(quán)利要求8所述的方法,其特征在于,執(zhí)行列表檢測包括確定在墨水輸入內(nèi)的列表的結(jié)構(gòu)。
14.如權(quán)利要求10所述的方法,其特征在于,執(zhí)行列表候選識別包括將選擇的行分組內(nèi)每一行設(shè)置為列表候選。
15.如權(quán)利要求14所述的方法,其特征在于,執(zhí)行列表候選識別包括選擇兩個列表候選,用于確定所述兩個列表候選是否可以合并。
16.如權(quán)利要求10所述的方法,其特征在于,執(zhí)行列表候選識別包括合并來自所述選擇的行分組中的兩行以形成列表候選。
17.如權(quán)利要求15所述的方法,其特征在于,執(zhí)行列表候選識別包括合并所述兩個列表候選以形成新的列表候選。
18.如權(quán)利要求17所述的方法,其特征在于,執(zhí)行列表候選識別包括將新的列表候選與另一個列表候選合并起來。
19.如權(quán)利要求11所述的方法,其特征在于,執(zhí)行縮進檢測包括縮進層聚類用于分組縮進層。
20.如權(quán)利要求11所述的方法,其特征在于,執(zhí)行縮進檢測包括為分組的縮進層執(zhí)行k-均值聚類。
21.如權(quán)利要求11所述的方法,其特征在于,執(zhí)行縮進檢測包括確定從行的縮進層到平均縮進層的距離。
22.如權(quán)利要求11所述的方法,其特征在于,執(zhí)行縮進檢測包括重新計算縮進層的平均位置。
23.如權(quán)利要求12所述的方法,其特征在于,執(zhí)行著重號檢測包括選擇列表中行的第一個單詞作為著重號候選。
24.如權(quán)利要求12所述的方法,其特征在于,執(zhí)行著重號檢測包括對行執(zhí)行著重號伴侶檢測。
25.如權(quán)利要求12所述的方法,其特征在于,執(zhí)行著重號檢測包括確定行是否具有相鄰行作為著重號伴侶,所著重號伴侶是在所述行的縮進層上的一組行集合中,且如果是,則視所述行的第一個單詞為著重號。
26.如權(quán)利要求12所述的方法,其特征在于,執(zhí)行著重號檢測包括確定行是否有著重號伴侶,且如果沒有,則確定是否在所述行的縮進層上的一組行是否具有一組分行著重號伴侶。
27.如權(quán)利要求26所述的方法,其特征在于,還包括確定在所述一組分行著重號伴侶中的行數(shù)與縮進層組中的行數(shù)之比是否高于閾值,而且如果是,則視行的第一個單詞為著重號。
28.如權(quán)利要求26所述的方法,其特征在于,還包括確定在一分組的著重號伴侶中的行數(shù)與縮進層組中的行數(shù)之比是否高于閾值,而且如果否,則視所述行的第一個單詞不是著重號。
29.如權(quán)利要求24的方法,其特征在于,對行執(zhí)行著重號伴侶檢測包括確定行配對中第一個單詞的特征。
30.如權(quán)利要求29所述的方法,其特征在于,確定行配對中的第一個單詞的特征包括確定圍繞行配對中第一個單詞的邊界框的高度和寬度的差。
31.如權(quán)利要求30所述的方法,其特征在于,還包括確定邊界框的寬度的最大值;確定行配對中的第一個單詞的筆畫長度的差;以及確定行配對中的每個第一個單詞和下一單詞之間的距離。
32.如權(quán)利要求29所述的方法,其特征在于,還包括使用行配對中的第一個單詞的特征來確定行配對是著重號伴侶的可能性。
33.如權(quán)利要求32所述的方法,其特征在于,還包括確定所述可能性是否高于一閾值,且如果是,則視所述行配對為著重號伴侶。
34.如權(quán)利要求13所述的方法,其特征在于,確定墨水輸入內(nèi)的列表的結(jié)構(gòu)的步驟包括識別列表項。
35.如權(quán)利要求13所述的方法,其特征在于,確定墨水輸入內(nèi)的列表的結(jié)構(gòu)包括確定列表項之間的關(guān)系。
36.如權(quán)利要求13所述的方法,其特征在于,確定墨水輸入內(nèi)的列表的結(jié)構(gòu)包括產(chǎn)生列表的結(jié)構(gòu)。
37.如權(quán)利要求13所述的方法,其特征在于,確定墨水輸入內(nèi)的列表的結(jié)構(gòu)包括根據(jù)列表的結(jié)構(gòu)確定該列表是有效的列表。
38.如權(quán)利要求37所述的方法,其特征在于,有效列表包括具有至少有兩個著重號的列表。
39.一種計算機可讀介質(zhì),具有用于執(zhí)行如權(quán)利要求8所述方法的計算機可執(zhí)行指令。
40.一種用于檢測墨水輸入中列表的計算機系統(tǒng),其特征在于,包括用于接收墨水輸入的裝置;用于對墨水輸入內(nèi)的列表執(zhí)行列表檢測的裝置;以及用于生成列表結(jié)構(gòu)作為輸出的裝置。
全文摘要
提供一種用于檢測墨水輸入中列表的系統(tǒng)和方法。提供一種檢測器,可檢測列表,諸如墨水輸入中著重號方式或者編號方式的項列表。首先可選擇行分組作為候選列表。隨后可進行縮進層聚類和著重號檢測來確定該列表的結(jié)構(gòu)。著重號檢測可通過檢測著重號伴侶來進行,著重號伴侶是可能始于具有相似特征的著重號候選的相同縮進層的行配對。一個行配對中的著重號候選特征可用于確定行配對是否是為著重號伴侶的可能性。最后,可以確定列表結(jié)構(gòu),包括各列表項之間的關(guān)系。
文檔編號G06K9/22GK1607539SQ200410082658
公開日2005年4月20日 申請日期2004年9月24日 優(yōu)先權(quán)日2003年9月24日
發(fā)明者陳通賢, 林宙辰, 王堅, 王顯芳, 伍江, 鄒宇 申請人:微軟公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1
额济纳旗| 蚌埠市| 潮州市| 大连市| 凤阳县| 新巴尔虎左旗| 凯里市| 香格里拉县| 灌南县| 九台市| 紫金县| 黔西| 兴业县| 桃园市| 疏勒县| 庄河市| 仁化县| 鹤壁市| 荥阳市| 卫辉市| 大渡口区| 德庆县| 同江市| 长兴县| 石河子市| 明光市| 辛集市| 山西省| 若尔盖县| 金寨县| 盐城市| 革吉县| 博白县| 凌源市| 大港区| 湖南省| 佛学| 凯里市| 兴山县| 五峰| 察哈|