專利名稱:一種識(shí)別手寫表格的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及模式識(shí)別技術(shù),特別是涉及一種識(shí)別手寫表格的方法及裝置。
背景技術(shù):
在模式識(shí)別領(lǐng)域,可識(shí)別的信息包括圖形、圖像、各種語(yǔ)言的字符、表格 等多種形式,其中識(shí)別手寫輸入的技術(shù)作為模式識(shí)別的一個(gè)方面,得到了廣泛 的應(yīng)用。手寫識(shí)別技術(shù)是基于對(duì)手寫輸入筆畫的識(shí)別,把人借助某種設(shè)備輸入 的信息轉(zhuǎn)換成計(jì)算機(jī)可識(shí)讀并能直接處理的形式。
目前,手寫識(shí)別技術(shù)中應(yīng)用最多的是對(duì)文字等字符的識(shí)別,字符識(shí)別和處
理技術(shù)發(fā)展較早,現(xiàn)在已經(jīng)發(fā)展到應(yīng)用階段,例如手機(jī)、PDA等移動(dòng)終端中手 寫輸入法的應(yīng)用等。而手寫字符之外的表格、圖形、框圖等在文檔中經(jīng)常出現(xiàn) 的元素在手寫識(shí)別技術(shù)方面還沒(méi)有得到充分的發(fā)展。其中,表格作為一種常用 的信息表達(dá)方式,經(jīng)常出現(xiàn)在電子文檔中,但是4巴表格輸入到電子文檔的方式 卻很單一,是通過(guò)各種軟件編輯器(如Word、 Excel等)輸入。因此,如果能 把表格也通過(guò)手寫方式輸入到電子文檔中,用戶就能夠在應(yīng)用手寫輸入時(shí)更方 <更;也編輯文檔。
發(fā)明內(nèi)容
本發(fā)明所要解決的技術(shù)問(wèn)題是提供一種識(shí)別手寫表格的方法及裝置,以解 決目前的手寫識(shí)別技術(shù)在識(shí)別手寫表格方面不完善的問(wèn)題。
為解決上述技術(shù)問(wèn)題,根據(jù)本發(fā)明提供的具體實(shí)施例,本發(fā)明公開(kāi)了以下 技術(shù)方案
一種識(shí)別手寫表格的方法,包括
采集原始輸入作為待分析筆畫;
從所述待分析筆畫中識(shí)別出非文字筆畫;
將所述非文字筆畫分割為線段;
判定出水平和豎直方向的線段,并判斷所述水平和豎直方向的線段是否構(gòu) 成封閉矩形,并且矩形內(nèi)部是否至少包含一條水平線段或豎直線段;如果是,則所述構(gòu)成封閉矩形的線段為表格邊界線,所述封閉矩形內(nèi)部的水平或豎直線
段為內(nèi)部表格線;
利用所述表格邊界線和內(nèi)部表格線構(gòu)建表格結(jié)構(gòu),并填充表格內(nèi)容。
優(yōu)選的,在識(shí)別非文字筆畫的步驟之前還包括對(duì)原始輸入進(jìn)行重新采樣, 得到以距離均勻的點(diǎn)列信息表示的筆畫,作為待分析筆畫。
優(yōu)選的,按照以下步驟識(shí)別出非文字筆畫計(jì)算筆畫的長(zhǎng)度,將長(zhǎng)度大于 長(zhǎng)度閾值的筆畫判定為非文字筆畫。
優(yōu)選的,按照以下步驟分割非文字筆畫為線段計(jì)算筆畫上每個(gè)點(diǎn)處的角 度,如果計(jì)算結(jié)果小于角度閾值,則將該點(diǎn)判定為折線點(diǎn),兩兩折線點(diǎn)構(gòu)成線 段。
優(yōu)選的,按照以下步驟計(jì)算筆畫上每個(gè)點(diǎn)處的角度以該點(diǎn)為圓心、以預(yù) 置閾值為半徑的圓與筆畫相交為兩點(diǎn),交點(diǎn)與圓心相連的半徑形成的角度為該 點(diǎn)的角度。
優(yōu)選的,按照以下步驟判定出水平和豎直方向的線段計(jì)算線段的長(zhǎng)度、 寬度和高度;將線段寬度與線段長(zhǎng)度的比值小于豎直線段閾值的線段判定為豎 直方向;將線段高度與線段長(zhǎng)度的比值小于水平線^a閾值的線段判定為水平方 向。
優(yōu)選的,在分割筆畫為線段的步驟之前還包括筆畫分組的步驟計(jì)算非文 字筆畫之間的距離,將計(jì)算結(jié)果小于成組閾值的非文字筆畫劃分為一組,分割 筆畫時(shí)分別對(duì)每組筆畫進(jìn)行分割。
優(yōu)選的,按照以下步驟計(jì)算非文字筆畫之間的距離以最小矩形包圍筆畫, 計(jì)算兩個(gè)矩形水平方向間隔和豎直方向間隔之和。 一種識(shí)別手寫表格的裝置,包括 筆畫采樣單元,用于采集原始輸入作為待分析筆畫; 圖文分割單元,用于從所述待分析筆畫中識(shí)別出非文字筆畫; 分割筆畫為線段單元,用于將所述非文字筆畫分割為線段; 水平和豎直線段判斷單元,用于判定出水平和豎直方向的線段; 表格判斷單元,用于判斷所述水平和豎直方向的線段是否構(gòu)成封閉矩形,
并且矩形內(nèi)部是否至少包含一條水平線段或豎直線段;如果是,則所述構(gòu)成封閉矩形的線段為表格邊界線,所述封閉矩形內(nèi)部的水平或豎直線段為內(nèi)部表格
線; . 表格構(gòu)建單元,用于利用所述表格邊界線和內(nèi)部表格線構(gòu)建表格結(jié)構(gòu),并
填充表格內(nèi)容。
優(yōu)選的,所述水平和豎直線段判斷單元通過(guò)計(jì)算線段的長(zhǎng)度、寬度和高度, 將線段寬度與線段長(zhǎng)度的比值小于豎直線段闊值的線段判定為豎直方向,將線 段高度與線段長(zhǎng)度的比值d 、于水平線段閾值的線段判定為水平方向。
優(yōu)選的,所述圖文分割單元通過(guò)計(jì)算筆畫的長(zhǎng)度,將長(zhǎng)度大于長(zhǎng)度閾值的 筆畫判定為非文字筆畫。
優(yōu)選的,所述筆畫采樣單元通過(guò)對(duì)原始輸入的筆畫進(jìn)行重新采樣,得到以 距離均勻的點(diǎn)列信息表示的筆畫,作為待分析筆畫。
優(yōu)選的,所述分割筆畫為線段單元通過(guò)計(jì)算筆畫上每個(gè)點(diǎn)處的角度,如果 計(jì)算結(jié)果小于角度閾值,則將該點(diǎn)判定為折線點(diǎn),兩兩折線點(diǎn)構(gòu)成線段。
優(yōu)選的,所述裝置還包括筆畫成組單元,用于計(jì)算非文字筆畫之間的距 離,將計(jì)算結(jié)果小于成組闊值的非文字筆畫劃分為一組,分割筆畫為線段單元 分別對(duì)每組筆畫進(jìn)行分割。
優(yōu)選的,所述筆畫成組單元通過(guò)計(jì)算筆畫外圍矩形之間的距離來(lái)計(jì)算非文 字筆畫之間的距離,其中所述筆畫外圍矩形指包圍筆畫的最小矩形,所述筆畫 外圍矩形之間的距離表示兩個(gè)矩形水平方向間隔和豎直方向間隔之和。
根據(jù)本發(fā)明提供的具體實(shí)施例,本發(fā)明公開(kāi)了以下技術(shù)效果
提供了一種識(shí)別手寫表格的方法和裝置,通過(guò)筆畫采樣、圖文分割、筆畫 成組、分割筆畫為線l爻、表格分析幾個(gè)步驟,將原始輸入的筆畫經(jīng)過(guò)處理轉(zhuǎn)換 成表格結(jié)構(gòu)。這種手寫表格識(shí)別技術(shù)不同于手寫字符的識(shí)別,首先通過(guò)圖文分 割步驟將文字與非文字筆畫區(qū)分開(kāi),這些非文字筆畫可能包含表格,也可能包 含其他形狀的筆畫。然后,通過(guò)分割筆畫為線段步驟將筆畫分割為線段,用線 段近似擬和原始輸入筆畫,為下一步的表格分析做準(zhǔn)備。在表格分析過(guò)程中, 首先確定水平和豎直方向的線段,然后判斷這些線段是否構(gòu)成一個(gè)封閉矩形, 并且矩形內(nèi)部至少包含一條水平線段或一條豎直線段,如果滿足所述條件則構(gòu) 建結(jié)構(gòu)化表格,將構(gòu)成封閉矩形的線段作為表格邊界線,將封閉矩形內(nèi)部的水平或豎直線段作為內(nèi)部表格線;最后再將落在表格范圍內(nèi)的輸入筆畫作為表格 內(nèi)容進(jìn)行填充。 .
優(yōu)選的,對(duì)于原始輸入中包含多個(gè)表格或者包含多種輸入形狀的情況,本 發(fā)明也能進(jìn)行識(shí)別,通過(guò)筆畫成組步驟,將可能屬于不同表格或不同形狀的非 文字筆畫分成幾組區(qū)別開(kāi),然后再通過(guò)分割筆畫為線段、表格分析步驟分別對(duì) 每組筆畫進(jìn)行分析識(shí)別。
而且,本發(fā)明所述識(shí)別裝置既可以作為計(jì)算機(jī)的一個(gè)應(yīng)用程序,運(yùn)行在與 手寫輸入設(shè)備相連的計(jì)算機(jī)上,或者運(yùn)行在擁有計(jì)算處理能力的手寫輸入設(shè)備 中,也可以作為單獨(dú)的硬件設(shè)備存在。因此,本發(fā)明在實(shí)際應(yīng)用中的形式非常 靈活。
圖1是本發(fā)明實(shí)施例所述一種識(shí)別手寫表格的方法流程圖; 圖2.1是原始筆畫的點(diǎn)列表示示意圖,圖2. 2是重新采樣后的點(diǎn)列表示示 意圖3. l是筆畫的外圍矩形示意圖,圖3. 2是兩個(gè)外圍矩形之間的距離示意
圖4是筆畫分割為線段的示意圖; 圖5是結(jié)構(gòu)化表格示意圖6. 1是用線段構(gòu)建結(jié)構(gòu)化表格的示意圖,圖6. 2是表格中單元格的邊界 示意圖,圖6. 3是確定單元格內(nèi)容的方法示意圖7本發(fā)明實(shí)施例所述一種識(shí)別手寫表格的裝置結(jié)構(gòu)框圖。
具體實(shí)施例方式
為使本發(fā)明的上述目的、特征和優(yōu)點(diǎn)能夠更加明顯易懂,下面結(jié)合附圖和具體實(shí)施方式
對(duì)本發(fā)明作進(jìn)一步詳細(xì)的說(shuō)明。
本發(fā)明實(shí)施例提供了一種識(shí)別手寫表格的方法,表格識(shí)別的目的是把計(jì)算 機(jī)無(wú)法理解的原始輸入中包含的表格轉(zhuǎn)換成為計(jì)算機(jī)可以理解的結(jié)構(gòu)化表格, 并且為表格的每個(gè)單元格確定所包含的內(nèi)容。表格識(shí)別依次經(jīng)過(guò)筆畫采樣、圖 文分割、筆畫成組、分割筆畫為線段、表格分析五個(gè)步驟,下面分別詳細(xì)說(shuō)明。
8參照?qǐng)D1,是本發(fā)明實(shí)施例所述一種識(shí)別手寫表格的方法流程圖。其中, 每個(gè)步驟的輸出作為下一個(gè)步驟的輸入,第一個(gè)步驟的輸入是原始輸入,最后 一個(gè)步驟的輸出是結(jié)構(gòu)化表格。
步驟IOI,筆畫釆樣。
表格識(shí)別的原始輸入可能包含表格,也可能包含表格之外的其它元素,比 如文字、其他形狀的筆畫等。筆畫采樣即通過(guò)手寫輸入設(shè)備收集用戶輸入的原 始筆畫信息,采樣結(jié)果為由一系列點(diǎn)表示一條筆畫。原始筆畫信息的特點(diǎn)是相 鄰的點(diǎn)和點(diǎn)之間的間隔較小,而且由于手寫輸入的隨機(jī)干擾造成明顯的波動(dòng), 通常在采樣過(guò)程中會(huì)對(duì)原始筆畫進(jìn)行平滑等處理,減小筆畫的波動(dòng)。
本實(shí)施例優(yōu)選的,為便于后續(xù)步驟的計(jì)算處理,對(duì)原始筆畫的點(diǎn)進(jìn)行重新 采樣處理。經(jīng)過(guò)處理的點(diǎn)列信息中,點(diǎn)和點(diǎn)之間的距離相對(duì)較大并且比較均勻, 點(diǎn)列的波動(dòng)相對(duì)原始筆畫減小。
參照?qǐng)D2. 1,是原始筆畫的點(diǎn)列表示示意圖;參照?qǐng)D2. 2,是重新采樣后 的點(diǎn)列表示示意圖。由圖可知,經(jīng)過(guò)處理的筆畫比原始筆畫更平滑,點(diǎn)的個(gè)數(shù) 也相對(duì)減少,點(diǎn)間距也相對(duì)均勻。
步驟102,圖文分割。
圖文分割是指把筆畫分成文字筆畫和非文字筆畫兩個(gè)大的類別,為了方 便,非文字筆畫也稱為圖。本步驟是從采樣結(jié)果中識(shí)別出可能包含表格的非文 字筆畫,識(shí)別方法是為每條筆畫計(jì)算長(zhǎng)度,將長(zhǎng)度超過(guò)"圖文分割長(zhǎng)度閾值,, 的筆畫判定為非文字筆畫,否則就是文字筆畫。所述識(shí)別出的文字筆畫將通過(guò) 字符識(shí)別方法進(jìn)行識(shí)別,不在本文的描述范圍之內(nèi),下面將繼續(xù)說(shuō)明對(duì)非文字 筆畫的處理。
優(yōu)選的,在計(jì)算筆畫長(zhǎng)度時(shí),由于經(jīng)過(guò)采樣處理的釆樣點(diǎn)之間的距離比較 均勻,為了減小計(jì)算量,采用筆畫所包含的釆樣點(diǎn)個(gè)數(shù)代表對(duì)應(yīng)筆畫的長(zhǎng)度。
本實(shí)施例依據(jù)筆畫長(zhǎng)度來(lái)區(qū)分文字筆畫和非文字筆畫,因?yàn)橥ǔN淖止P畫 的長(zhǎng)度較表格等非文字筆畫的長(zhǎng)度短d、,但是本發(fā)明并不限定圖文分割的方 法,當(dāng)然也可以參考筆畫彎曲度等其他因素。而且,本發(fā)明也并不限定必須將 采樣筆畫進(jìn)行文字和非文字的劃分,本實(shí)施例是為便于將單獨(dú)的表格識(shí)別技術(shù) 與字符識(shí)別相結(jié)合來(lái)應(yīng)用,因此如果僅需要實(shí)現(xiàn)表格識(shí)別,也可以直接把可能構(gòu)成表格的筆畫挑選出來(lái),或者通過(guò)其他分類方式挑選。 優(yōu)選步驟103,筆畫成組。
筆畫成組的處理主要是針對(duì)包含多個(gè)表格或者包含多種輸入形狀的情況, 依據(jù)筆畫之間的距離將各個(gè)表格或?qū)⒍鄠€(gè)輸入形狀區(qū)別開(kāi)。如果兩條筆畫之間 的距離小于"非文字筆畫成組閾值,,,則認(rèn)為這兩條筆畫屬于同一個(gè)組。而且, 文字筆畫和非文字筆畫無(wú)論距離大小,都不屬于同一個(gè)組。本步驟是本實(shí)施例 的優(yōu)選步驟,經(jīng)過(guò)筆畫成組處理,每一組都構(gòu)成一個(gè)單獨(dú)的表格或其他形狀, 即每一組都是一個(gè)單獨(dú)的形狀。
在計(jì)算筆畫間距離時(shí),本實(shí)施例采用的方法是利用筆畫的外圍矩形計(jì)算外
圍矩形之間的距離來(lái)表示。筆畫的外圍矩形是指把一條筆畫上所有的點(diǎn)都包圍
在內(nèi)的最小矩形,由兩條水平邊和兩條豎直邊構(gòu)成,可參照?qǐng)D3. l所示。外圍
矩形之間的距離是指兩個(gè)矩形的水平方向間隔和豎直方向間隔之和,可參照?qǐng)D
3. 2所示。
如前所述,本發(fā)明也不限定計(jì)算筆畫間距離的方法,也可以通過(guò)其他方式 來(lái)衡量筆畫之間的距離。而且,也不會(huì)限定筆畫成組的依據(jù),以筆畫之間的距 離來(lái)劃分組是一種比較簡(jiǎn)單的劃分方式,當(dāng)然也可以參考其他因素進(jìn)行判斷。
步驟104,分割筆畫為線段。
分割筆畫為線段的目的是用一條折線(由多條線段首尾相連而成的線)近 似地?cái)M和原始非文字筆畫,用盡可能少的點(diǎn)來(lái)表示一條筆畫,為下一步的分析 做準(zhǔn)備。分割筆畫的基本方法是在筆畫方向變化比較大的地方做分割,這些分 割點(diǎn)和筆畫的起點(diǎn)、終點(diǎn)一起構(gòu)成該筆畫對(duì)應(yīng)的線段。參照?qǐng)D4所示,是筆畫
分割為線段的示意圖,圖中的小方框代表筆畫中線段的端點(diǎn)。
按照上述思想,可以有多種具體實(shí)現(xiàn)方式,本實(shí)施例采用的方式是計(jì)算 筆畫上每個(gè)點(diǎn)處的角度,如果筆畫在某個(gè)點(diǎn)形成的角度小于"分割筆畫為線段 角度閾值",則保留這個(gè)點(diǎn)作為折線的一個(gè)點(diǎn),折線上的兩點(diǎn)確定一條線段。
優(yōu)選的,為了降低干擾,本實(shí)施例在計(jì)算角度的時(shí)候以該點(diǎn)為圓心,以"分 割筆畫為線^:半徑閾值,,為半徑畫一個(gè)圓,圓和筆畫形成兩個(gè)交點(diǎn),交點(diǎn)與圓 心相連形成兩個(gè)半徑,這兩個(gè)半徑形成的夾角就認(rèn)為是筆畫在給定的點(diǎn)上形成 的角度。當(dāng)然,角度的定義也可以有其他方式,在此不作限定。步驟1G5,表格分析。
針對(duì)每組已經(jīng)分割為線段的非文字筆畫,表格分析的目的是判斷出其中是 否包含表格結(jié)構(gòu),如果包含就轉(zhuǎn)化為相應(yīng)的結(jié)構(gòu)化表格(參照?qǐng)D5所示),并 為表格的每個(gè)單元格確定所包含的內(nèi)容。具體包括三個(gè)步驟 一,判定是否是 表格結(jié)構(gòu);二,轉(zhuǎn)化為結(jié)構(gòu)化表格,即能夠表達(dá)表格行列結(jié)構(gòu)和單元格結(jié)構(gòu)的 描述;三,確定每個(gè)單元格的內(nèi)容。下面分別說(shuō)明。
第一個(gè)步驟,首先收集潛在的表格邊界線和內(nèi)部表格線。本實(shí)施例僅以水 平方向和豎直方向的線段能夠構(gòu)成表格邊界線和內(nèi)部表格線,并利用線段的寬 高比和閾值來(lái)判斷線段是否為水平或者豎直。具體過(guò)程如下
針對(duì)一組非文字筆畫,計(jì)算所有線段的長(zhǎng)度、寬度和高度,線段長(zhǎng)度、寬 度和高度的定義如下
線段的長(zhǎng)度/e"g, < a,/ 2 >) = -x2)2 +0!—少2)2 ;
線段的寬度< a , / 2 >)=卜_ jc2 I;
線)殳的高度/2ez'g&(/s < a,/ 2 >) = |力_少21;
其中,pl和p2表示線,爻的兩個(gè)端點(diǎn),xi表示點(diǎn)pi的x坐標(biāo),yi表示 點(diǎn)pi的y坐標(biāo)。
把滿足條件1的線段判定為豎直方向的線段,把滿足條件2的線段判定為 水平方向的線段
條件l,線段寬度 < 線段長(zhǎng)度* [豎直線段閾值];
條件2,線段高度 < 線段長(zhǎng)度* [水平線段閾值]。
然后,判斷這些水平方向和豎直方向的線段是否構(gòu)成表格。構(gòu)成表格需要 同時(shí)滿足兩個(gè)條件其一,潛在的左右邊界和上下邊界需要構(gòu)成一個(gè)封閉的形 狀(表格為矩形);其二,矩形內(nèi)部至少包含一條水平線段或者豎直線段。具 體過(guò)程如下
將豎直線段從左到右排序,構(gòu)成潛在的表格列與列之間的分割線和表格的 左右邊界;將水平線段從上到下排序,構(gòu)成潛在的表格行與行之間的分割線和 表格的上下邊界。
針對(duì)一組線段,是否構(gòu)成封閉矩形的檢測(cè)方法是如果滿足以下4個(gè)條件 中的任意一個(gè)條件,則不是表格,繼續(xù)處理下一組。
ii條件1, h中第一條線段的右端點(diǎn)和V中最后一條線段的上端點(diǎn)的距離 > [重合距離閾值]; .
條件2, v中最后一條線段的下邊端點(diǎn)和h中最后一條線段的右端點(diǎn)的距
離 > [重合距離閾值];
條件3, h中最后一條線段的左端點(diǎn)和v中第一條線段的下端點(diǎn)的距離> [重合距離閾值];
條件4, v中第一條線段的上端點(diǎn)和h中第一條線段的左端點(diǎn)的距離> [重合距離閾值];
其中,h中存放水平方向的線段,v中存放豎直方向的線段。
針對(duì)一組線段,通過(guò)線段個(gè)數(shù)來(lái)檢測(cè)矩形內(nèi)部是否至少包含一條水平線段 或者豎直線段,如果滿足以下3個(gè)條件中的任意一個(gè)條件,則不是表格
條件1, v中線段個(gè)數(shù)< 2 ;
條件2, h中線段個(gè)數(shù)< 2 ;
條件3, v, h線段個(gè)數(shù)之和< 5 ;
其中,h中存放水平方向的線段,v中存放豎直方向的線段。 第二個(gè)步驟,構(gòu)建表格結(jié)構(gòu)。如果經(jīng)過(guò)第一個(gè)步驟的判斷是表格,則經(jīng)過(guò) 排序的線段就界定了表格的行列結(jié)構(gòu),從而界定了表格的單元格。h中第一條 線段和最后一條線段分別為表格的上下邊界,v中第一條和最后一條線段分別 為表格的左右邊界,h中的其他線段為表格的行分割線,v中的其他線^殳為表 格的列分割線。由此可以得到表格包含幾行幾列,即確定了表格包含多少個(gè)單 元格。
參照?qǐng)D6.1,是用線段構(gòu)建結(jié)構(gòu)化表格的示意圖,其中單元格(i,j)是由 第i行和第j列交叉形成的單元格。參照?qǐng)D6. 2,是表格中單元格的邊界示意 圖,其中單元格(2,2)的邊界是由第2條和第3條豎直線段、第2條和第3條 水平線段構(gòu)成。
第三個(gè)步驟,填充單元格內(nèi)容。給定一個(gè)單元格,就可以知道該單元格的 位置信息,本實(shí)施例在該組所有的筆畫中搜索落在單元格之內(nèi)的筆畫作為這個(gè) 單元格的內(nèi)容,單元格的內(nèi)容可能是字符,也可能是其他形狀的筆畫。具體判 斷方式是如果一條筆畫的外圍矩形全部包含在單元格的邊界范圍之內(nèi),則將這條筆畫作為單元格的內(nèi)容加入該單元格,可參見(jiàn)圖6. 3所示。
需要i^明的是,本發(fā)明并不限定表格分析采用其他方式,以上表格分析方 法僅作為其中一種實(shí)施例進(jìn)行說(shuō)明。而且,上述表格識(shí)別方法常常與字符識(shí)別 方法結(jié)合,共同應(yīng)用到手寫輸入識(shí)別中。
以上表格識(shí)別過(guò)程中,涉及到多個(gè)閾值的定義及使用,這些閾值的取值通 常是一些經(jīng)驗(yàn)值,根據(jù)這些經(jīng)驗(yàn)值得到的識(shí)別效果較好,但根據(jù)不同的應(yīng)用情 況,可以對(duì)這些閾值重新設(shè)置。在識(shí)別過(guò)程中還涉及到多個(gè)計(jì)算公式和運(yùn)用不 等式的判斷條件,本發(fā)明在此也不作限定,即這些公式或不等式是可以變形的。
針對(duì)上述手寫表格識(shí)別方法,本發(fā)明還提供了一種識(shí)別裝置的實(shí)施例。參 照?qǐng)D7,是所述識(shí)別手寫表格的裝置結(jié)構(gòu)框圖。所述裝置依次包括筆畫釆樣單 元701、圖文分割單元702、筆畫成組單元703、分割筆畫為線段單元704、表 格分析單元705,其中每個(gè)單元的輸出結(jié)果將作為下一個(gè)單元的輸入,原始輸 入將作為筆畫采樣單元701的輸入,結(jié)構(gòu)化的表格將作為表格分析單元705 的輸出結(jié)果。
筆畫采樣單元701用于采集原始筆跡輸入,采樣結(jié)果為用點(diǎn)列表示的筆 畫。為了減少筆畫波動(dòng),并便于后續(xù)的計(jì)算處理,筆畫采樣單元701對(duì)采樣點(diǎn) 進(jìn)行處理得到點(diǎn)間距較大且比較均勻的點(diǎn)列信息。
圖文分割單元702用于把筆畫分成文字筆畫和非文字筆畫,即從采樣結(jié)果 中識(shí)別出可能包含表格的非文字筆畫,采用的識(shí)別方法是依據(jù)筆畫長(zhǎng)度,將長(zhǎng) 度超過(guò)"圖文分割長(zhǎng)度閾值"的筆畫判定為非文字筆畫,否則就是文字筆畫。
筆畫成組單元703是優(yōu)選設(shè)置,用于對(duì)非文字筆畫進(jìn)行分組處理,將包含 多個(gè)表格或者包含多種輸入形狀的筆畫區(qū)別開(kāi),每一組為獨(dú)立的 一個(gè)表格或一 種形狀。分組依據(jù)是筆畫之間的距離,如果兩條筆畫之間的距離小于"非文字 筆畫成組閾值",則認(rèn)為這兩條筆畫屬于同一個(gè)組。而且,文字筆畫和非文字 筆畫無(wú)論距離大小,都不屬于同一個(gè)組。筆畫之間距離的計(jì)算采用筆畫外圍矩 形之間的距離。
分割筆畫為線段單元704用于對(duì)每組筆畫進(jìn)行處理,將一條筆畫分割為多 個(gè)首尾相連的線段,即用一條折線近似擬和一條筆畫,用盡可能少的點(diǎn)來(lái)表示 一條筆畫,為下一步的分析做準(zhǔn)備。分割方法是計(jì)算筆畫上每個(gè)點(diǎn)處的角度,如果筆畫在某個(gè)點(diǎn)形成的角度小于"分割筆畫為線段角度閾值",則保留這個(gè) 點(diǎn)作為折線的一個(gè)點(diǎn),折線上的兩點(diǎn)確定一條線段。為了降低干擾,在計(jì)算角 度的時(shí)候以該點(diǎn)為圓心,以"分割筆畫為線段半徑閾值"為半徑畫一個(gè)圓,圓 和筆畫形成兩個(gè)交點(diǎn),交點(diǎn)與圓心相連形成兩個(gè)半徑,這兩個(gè)半徑形成的夾角 就認(rèn)為是筆畫在給定的點(diǎn)上形成的角度。
表格分析單元705用于對(duì)每組線段,判斷出其中是否包含表格結(jié)構(gòu),如果
包含就轉(zhuǎn)化為相應(yīng)的結(jié)構(gòu)化表格,并為表格的每個(gè)單元格確定所包含的內(nèi)容。
表格分析單元705包括三個(gè)子單元來(lái)完成上述功能,分別是水平和豎直線段判 斷子單元、表格判斷子單元和表格構(gòu)建子單元。
本實(shí)施例認(rèn)為水平方向和豎直方向的線段才能構(gòu)成表格,因此所述水平和 豎直線段判斷子單元利用線段的寬高比和閾值來(lái)判斷線段是否為水平或者豎 直。所述表格判斷子單元用于將豎直線段從左到右排序,將水平線段從上到下 排序,判斷這些線段是否同時(shí)滿足兩個(gè)條件潛在的左右邊界和上下邊界需要 構(gòu)成一個(gè)封閉的矩形,矩形內(nèi)部至少包含一條水平線段或者豎直線段。如果同 時(shí)滿足,則所述表格構(gòu)建子單元構(gòu)建表格結(jié)構(gòu),利用經(jīng)過(guò)排序的線段來(lái)界定表 格的行列結(jié)構(gòu),從而界定表格的單元格;然后,搜索該組所有的筆畫中落在單 元格之內(nèi)的筆畫作為這個(gè)單元格的內(nèi)容。
在實(shí)際應(yīng)用中,上述表格識(shí)別裝置可以有多種應(yīng)用形式。例如,可以作為 一個(gè)單獨(dú)的軟件處理模塊,安裝到與輸入設(shè)備相連的計(jì)算機(jī)中作為應(yīng)用程序運(yùn) 行,或者安裝到具有計(jì)算和處理能力的輸入設(shè)備中運(yùn)行;也可以作為單獨(dú)的硬 件設(shè)備存在,與輸入設(shè)備相連來(lái)識(shí)別輸入設(shè)備釆集的原始輸入。而且,所述表 格識(shí)別系統(tǒng)通常與字符識(shí)別系統(tǒng)相結(jié)合,應(yīng)用到通過(guò)手寫輸入的電子文檔編輯 方面。
圖7所示裝置中未詳述的部分可以參見(jiàn)圖1所示方法的相關(guān)部分,為了篇 幅考慮,在此不再詳述。
以上對(duì)本發(fā)明所提供的 一種識(shí)別手寫表格的方法及裝置,進(jìn)行了詳細(xì)介
例的說(shuō)明只是用于幫助理解本發(fā)明的方法及其核心思想;同時(shí),對(duì)于本領(lǐng)域的 一般技術(shù)人員,依據(jù)本發(fā)明的思想,在具體實(shí)施方式
及應(yīng)用范圍上均會(huì)有改變 之處。綜上所述,本說(shuō)明書內(nèi)容不應(yīng)理解為對(duì)本發(fā)明的限制。
1權(quán)利要求
1、一種識(shí)別手寫表格的方法,其特征在于,包括采集原始輸入作為待分析筆畫;從所述待分析筆畫中識(shí)別出非文字筆畫;將所述非文字筆畫分割為線段;判定出水平和豎直方向的線段,并判斷所述水平和豎直方向的線段是否構(gòu)成封閉矩形,并且矩形內(nèi)部是否至少包含一條水平線段或豎直線段;如果是,則所述構(gòu)成封閉矩形的線段為表格邊界線,所述封閉矩形內(nèi)部的水平或豎直線段為內(nèi)部表格線;利用所述表格邊界線和內(nèi)部表格線構(gòu)建表格結(jié)構(gòu),并填充表格內(nèi)容。
2、 根據(jù)權(quán)利要求1所述的方法,其特征在于,在識(shí)別非文字筆畫的步驟 之前還包括對(duì)原始輸入進(jìn)行重新采樣,得到以距離均勻的點(diǎn)列信息表示的筆 畫,作為待分析筆畫。
3、 根據(jù)權(quán)利要求1所述的方法,其特征在于,按照以下步驟識(shí)別出非文 字筆畫計(jì)算筆畫的長(zhǎng)度,將長(zhǎng)度大于長(zhǎng)度闊值的筆畫判定為非文字筆畫。
4、 根據(jù)權(quán)利要求2所述的方法,其特征在于,按照以下步驟分割非文字 筆畫為線段計(jì)算筆畫上每個(gè)點(diǎn)處的角度,如果計(jì)算結(jié)果小于角度閾值,則將該點(diǎn)判定為折線點(diǎn),兩兩折線點(diǎn)構(gòu)成線^a。
5、 根據(jù)權(quán)利要求4所述的方法,其特征在于,按照以下步驟計(jì)算筆畫上 每個(gè)點(diǎn)處的角度以該點(diǎn)為圓心、以預(yù)置閾值為半徑的圓與筆畫相交為兩點(diǎn), 交點(diǎn)與圓心相連的半徑形成的角度為該點(diǎn)的角度。
6、 根據(jù)權(quán)利要求1所述的方法,其特征在于,按照以下步驟判定出水平 和豎直方向的線段計(jì)算線段的長(zhǎng)度、寬度和高度;將線段寬度與線段長(zhǎng)度的比值小于豎直線段閾值的線段判定為豎直方向; 將線段高度與線段長(zhǎng)度的比值小于水平線段閾值的線段判定為水平方向。
7、 根據(jù)權(quán)利要求1所述的方法,其特征在于,在分割筆畫為線段的步驟 之前還包括筆畫分組的步驟計(jì)算非文字筆畫之間的距離,將計(jì)算結(jié)果小于成 組閾值的非文字筆畫劃分為一組,分割筆畫時(shí)分別對(duì)每組筆畫進(jìn)行分割。
8、 根據(jù)權(quán)利要求7所述的方法,其特征在于,按照以下步驟計(jì)算非文字 筆畫之間的距離以最小矩形包圍筆畫,計(jì)算兩個(gè)矩形水平方向間隔和.豎直方 向間隔之和。
9、 一種識(shí)別手寫表格的裝置,其特征在于,包括 筆畫采樣單元,用于釆集原始輸入作為待分析筆畫; 圖文分割單元,用于從所述待分析筆畫中識(shí)別出非文字筆畫; 分割筆畫為線段單元,用于將所述非文字筆畫分割為線段; 水平和豎直線段判斷單元,用于判定出水平和豎直方向的線段; 表格判斷單元,用于判斷所述水平和豎直方向的線段是否構(gòu)成封閉矩形,并且矩形內(nèi)部是否至少包含一條水平線段或豎直線段;如果是,則所述構(gòu)成封 閉矩形的線段為表格邊界線,所述封閉矩形內(nèi)部的水平或豎直線段為內(nèi)部表格 線;表格構(gòu)建單元,用于利用所述表格邊界線和內(nèi)部表格線構(gòu)建表格結(jié)構(gòu),并 填充表格內(nèi)容。
10、 根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于所述水平和豎直線段判斷 單元通過(guò)計(jì)算線段的長(zhǎng)度、寬度和高度,將線段寬度與線段長(zhǎng)度的比值小于豎 直線段閾值的線段判定為豎直方向,將線段高度與線段長(zhǎng)度的比值小于水平線 段閾值的線段判定為水平方向。
11、 才艮據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于所述圖文分割單元通過(guò)計(jì) 算筆畫的長(zhǎng)度,將長(zhǎng)度大于長(zhǎng)度閾值的筆畫判定為非文字筆畫。
12、 根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于所述筆畫釆樣單元通過(guò)對(duì) 原始輸入的筆畫進(jìn)行重新采樣,得到以距離均勻的點(diǎn)列信息表示的筆畫,作為 待分析筆畫。
13、 根據(jù)權(quán)利要求12所述的系統(tǒng),其特征在于所述分割筆畫為線段單 元通過(guò)計(jì)算筆畫上每個(gè)點(diǎn)處的角度,如果計(jì)算結(jié)果小于角度闊值,則將該點(diǎn)判 定為折線點(diǎn),兩兩折線點(diǎn)構(gòu)成線段。
14、 根據(jù)權(quán)利要求9所述的系統(tǒng),其特征在于,還包括筆畫成組單元, 用于計(jì)算非文字筆畫之間的距離,將計(jì)算結(jié)果小于成組閾值的非文字筆畫劃分為一組,分割筆畫為線段單元分別對(duì)每組筆畫進(jìn)行分割。
15、根據(jù)權(quán)利要求14所述的系統(tǒng),其特征在于所述筆畫成組單元通過(guò) 計(jì)算筆畫外圍矩形之間的距離來(lái)計(jì)算非文字筆畫之間的距離,其中所述筆畫外 圍矩形指包圍筆畫的最小矩形,所述筆畫外圍矩形之間的距離表示兩個(gè)矩形水 平方向間隔和豎直方向間隔之和。
全文摘要
本發(fā)明公開(kāi)了一種識(shí)別手寫表格的方法及裝置,解決目前的手寫識(shí)別技術(shù)在識(shí)別手寫表格方面不完善的問(wèn)題。所述方法包括采集原始輸入作為待分析筆畫;從所述待分析筆畫中識(shí)別出非文字筆畫;將所述非文字筆畫分割為線段;判定出水平和豎直方向的線段,并判斷所述水平和豎直方向的線段是否構(gòu)成封閉矩形,并且矩形內(nèi)部是否至少包含一條水平線段或豎直線段;如果是,則所述構(gòu)成封閉矩形的線段為表格邊界線,所述封閉矩形內(nèi)部的水平或豎直線段為內(nèi)部表格線;利用所述表格邊界線和內(nèi)部表格線構(gòu)建表格結(jié)構(gòu),并填充表格內(nèi)容。本發(fā)明通過(guò)以上筆畫采樣、圖文分割、筆畫成組、分割筆畫為線段、表格分析幾個(gè)步驟,實(shí)現(xiàn)了手寫輸入表格的識(shí)別。
文檔編號(hào)G06K9/00GK101452523SQ20071017896
公開(kāi)日2009年6月10日 申請(qǐng)日期2007年12月7日 優(yōu)先權(quán)日2007年12月7日
發(fā)明者劉迎建, 徐明慶, 王利娟, 王春明 申請(qǐng)人:漢王科技股份有限公司