專(zhuān)利名稱(chēng):一種識(shí)別掃描圖像中表格單元的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明屬于圖像識(shí)別技術(shù)領(lǐng)域,具體涉及一種識(shí)別掃描圖像中表格單元的方法及裝置。
背景技術(shù):
表格是文檔中常用的數(shù)據(jù)資料載體,大量應(yīng)用于各種場(chǎng)合。為了便于對(duì)紙質(zhì)表格處理進(jìn)行自動(dòng)化和電子化,需要一種快速的表格自動(dòng)識(shí)別方法來(lái)確定表格中各個(gè)單元的位置和大小,其目的是便于下一步獲取表格單元中的內(nèi)容,送
交后續(xù)模塊進(jìn)行OCR (Optical Character Recognition,光字符識(shí)別)、自動(dòng)填表等處理。
現(xiàn)有技術(shù)中常用的表格識(shí)別方法有投影法、搜索法、直線檢測(cè)法等。投影法是對(duì)表格圖像縱、橫向進(jìn)行投影,根據(jù)得到的投影值中的峰值變化
來(lái)判斷表格線。這種方法的不足在于很難處理表格線較細(xì)且稍有歪斜或復(fù)雜表格。
搜索法是沿表格線進(jìn)行周游遍歷,這種方法的不足在于對(duì)毛刺、斷線和字符粘連很難處理。
直線檢測(cè)法是使用Hough變換、矢量化等方法檢測(cè)表格中的直線,然后利用這些直線重構(gòu)表格結(jié)構(gòu)。這類(lèi)方法的不足在于對(duì)表格單元的識(shí)別成功率4艮高,但缺點(diǎn)是運(yùn)算量大,運(yùn)算速度慢,這限制了其應(yīng)用場(chǎng)合。
因此,目前的現(xiàn)有技術(shù)中還沒(méi)有一種對(duì)表格單元進(jìn)行自動(dòng)識(shí)別的方案能在保證高識(shí)別率的前提下,提高掃描圖像中表格單元識(shí)別速度
發(fā)明內(nèi)容
本發(fā)明提供一種識(shí)別掃描圖像中表格單元的方法及裝置,用以在保證高識(shí)別率的前提下,提高掃描圖像中表格單元識(shí)別速度。
本發(fā)明實(shí)施中提供了 一種識(shí)別掃描圖像中表格單元的方法,包括如下步
驟
獲取表格文檔的掃描圖像中的水平線段和垂直線段;
去除掃描圖像中小于第 一閾值的水平線段和垂直線段,所述第 一閾值根據(jù)掃描圖像中的最小字符高度和掃描圖像的分辨率設(shè)定;
根據(jù)剩余的水平線段和垂直線段識(shí)別掃描圖像中的表格單元。
較佳地,在獲取表格文檔的掃描圖像中的水平線段和垂直線段前,進(jìn)一步包括
獲取掃描圖像后,對(duì)掃描圖像進(jìn)行包括噪音去除操作、圖像糾偏操作、圖
像二值化操作之一或者其組合的預(yù)處理操作。
較佳地,所述第 一 閾值為根據(jù)線狀型噪音線段長(zhǎng)度和/或表格內(nèi)部文字圖像
區(qū)域線段長(zhǎng)度進(jìn)行設(shè)定。
較佳地,在獲取剩余的水平線段和垂直線段的交點(diǎn)前,進(jìn)一步包括合并線段有重疊的水平線段,和/或線段有重疊的垂直線段。較佳地,在獲取剩余的水平線段和垂直線段的交點(diǎn)前,進(jìn)一步包括合并線段間距小于第二閾值的水平線段,和/或線段間距小于第二閾值的垂
直線段,所述第二閾值大于斷裂表格線之間的距離。
較佳地,獲取剩余的水平線段和垂直線段的交點(diǎn)前,進(jìn)一步包括去除掃描圖像中小于第三閾值的水平線段和垂直線段,所述第三闊值小于
最短的表格線的長(zhǎng)度。
較佳地,根據(jù)剩余的水平線段和垂直線段識(shí)別掃描圖像中的表格單元,具
體為
獲取剩余的水平線段和垂直線段的交點(diǎn);
根據(jù)表示交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段的存在與否的第
6一位置關(guān)系,以及表示交點(diǎn)是否屬于同一水平線段和/或垂直線段的第二位置關(guān)系,識(shí)別掃描圖像中的表格單元。
較佳地,根據(jù)第 一位置關(guān)系及第二位置關(guān)系識(shí)別掃描圖像中的表格單元,
具體為
確定一個(gè)交點(diǎn);
確定與該交點(diǎn)相鄰的交點(diǎn),所述相鄰的交點(diǎn)與該交點(diǎn)屬于不同種類(lèi)的第一位置關(guān)系,所述種類(lèi)根據(jù)交點(diǎn)在周?chē)膫€(gè)方向上的水平線^殳與垂直線段的存在與否進(jìn)行判斷;
根據(jù)該交點(diǎn)及該交點(diǎn)相鄰的交點(diǎn)識(shí)別出該交點(diǎn)的表格單元;
按所述確定該交點(diǎn)的表格單元的方式,根據(jù)第二位置關(guān)系確定該交點(diǎn)以外
的其它交點(diǎn)的表格單元。
本發(fā)明實(shí)施中還提供了 一種識(shí)別掃描圖像中表格單元的裝置,包括線段獲取模塊,用于獲取表格文檔的掃描圖像中的水平線段和垂直線段;第一線段去除模塊,用于去除掃描圖像中小于第一閾值的水平線段和垂直
線段,所述第一閾值根據(jù)掃描圖像中的最小字符高度和掃描圖像的分辨率設(shè)
定;
表格識(shí)別模塊,用于根據(jù)剩余的水平線段和垂直線段識(shí)別掃描圖像中的表格單元。
較佳地,進(jìn)一步包括
預(yù)處理模塊,用于獲取掃描圖像后,在獲取表格文檔的掃描圖像中的水平線段和垂直線段前,對(duì)掃描圖像進(jìn)行包括噪音去除操作、圖像糾偏操作、圖像二值化操作之一或者其組合的預(yù)處理操作。
較佳地,所述第一線段去除模塊進(jìn)一步用于根據(jù)線狀型噪音線段長(zhǎng)度和/或表格內(nèi)部文字圖像區(qū)域線段長(zhǎng)度進(jìn)行設(shè)定第 一 閾值。
較佳地,進(jìn)一步包括
第一合并模塊,用于在獲取剩余的水平線段和垂直線段的交點(diǎn)前,合并線段有重疊的水平線段,和/或線段有重疊的垂直線段。
較佳地,進(jìn)一步包括
第二合并模塊,用于在獲取剩余的水平線段和垂直線段的交點(diǎn)前,合并線段間距小于第二閾值的水平線段,和/或線段間距小于第二閾值的垂直線段,所述第二閾值大于斷裂表格線之間的距離。
較佳地,進(jìn)一步包括
第二線段去除模塊,用于在獲取剩余的水平線段和垂直線段的交點(diǎn)前,去除掃描圖像中小于第三閾值的水平線段和垂直線段,所述第三閾值小于最短的表格線的長(zhǎng)度進(jìn)行設(shè)定。
較佳地,所述表格識(shí)別模塊包括
交點(diǎn)獲取單元,用于獲取剩余的水平線段和垂直線段的交點(diǎn);
位置確定單元,用于根據(jù)表示交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段的存在與否的第 一位置關(guān)系,以及表示交點(diǎn)是否屬于同 一水平線段和/或垂直線段的第二位置關(guān)系,識(shí)別掃描圖像中的表格單元;
表格識(shí)別單元,用于根據(jù)第一位置關(guān)系及第二位置關(guān)系識(shí)別掃描圖像中的表格單元。
較佳地,所述表格識(shí)別單元包括
交點(diǎn)確定子單元,用于根據(jù)第二位置關(guān)系確定未進(jìn)行表格識(shí)別的交點(diǎn),在確定一個(gè)交點(diǎn)后,交由表格識(shí)別子單元處理;
表格識(shí)別子單元,用于確定與該交點(diǎn)相鄰的交點(diǎn),所述相鄰的交點(diǎn)與該交點(diǎn)屬于不同種類(lèi)的第 一位置關(guān)系;并根據(jù)該交點(diǎn)及該交點(diǎn)相鄰的交點(diǎn)識(shí)別出該交點(diǎn)的表格單元,所述種類(lèi)根據(jù)交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段的存在與否進(jìn)行判斷。
本發(fā)明有益效果如下
本發(fā)明在實(shí)施中,在獲取表格文檔的掃描圖像中的水平線段和垂直線段以后,將會(huì)去除掃描圖像中小于第一閾值的水平線段和垂直線段,然后根據(jù)剩余的水平線段和垂直線段識(shí)別掃描圖像中的表格單元。由于根據(jù)第一閾值使用了
過(guò)濾的方案來(lái)獲取表格中的直線,因此其計(jì)算速度比Hough變換、矢量化等直線檢測(cè)方法快得多,這大大拓展了方法的適用范圍。
進(jìn)一步的,由于本發(fā)明實(shí)施中還采用了基于線段長(zhǎng)度的閾值過(guò)濾方法,因此可以克服大部分的表格單元粘連情況。
進(jìn)一步的,由于本發(fā)明通過(guò)檢查相鄰行的水平線段和垂直線段,若有重疊部分,則合并重疊線段為一條新的水平或者垂直線4殳,從而可以容忍由于掃描圖像的小角度旋轉(zhuǎn)而帶來(lái)的誤差問(wèn)題。
進(jìn)一步的,由于本發(fā)明實(shí)施中還采用了合并線段間距小于第二闊值的線段,因此可以解決小的表格單元線段出現(xiàn)斷裂的情況。
綜上,本發(fā)明實(shí)施例不僅具有傳統(tǒng)直線檢測(cè)算法識(shí)別成功率高的特點(diǎn),還能夠在保證高識(shí)別率的前提下,提高掃描圖像中表格單元識(shí)別速度;進(jìn)一步的,還能夠獲知表格的精確結(jié)構(gòu),可以解決大部分的表格單元粘連問(wèn)題,對(duì)于小的斷裂,也可以通過(guò)連接首尾相距較近的線段來(lái)解決,具備了抗粘連,抗斷裂的優(yōu)點(diǎn)。
進(jìn)一 步的,實(shí)施例中還在根據(jù)剩余的水平線段和垂直線段識(shí)別掃描圖像中的表格單元時(shí),獲取剩余的水平線段和垂直線段的交點(diǎn),并各交點(diǎn)與線段的位置關(guān)系,以及各交點(diǎn)之間的位置關(guān)系識(shí)別掃描圖像中的表格單元。由于引入了交點(diǎn)這一特征,使得本發(fā)明實(shí)施例中的方案運(yùn)算量更小,這也使得本發(fā)明實(shí)施例的各種方案在識(shí)別表格單元時(shí)的運(yùn)算處理速度更快。
圖1為本發(fā)明實(shí)施例中所述識(shí)別掃描圖像中表格單元的方法的實(shí)施流程示意圖2為本發(fā)明實(shí)施例中所述交點(diǎn)與線段的位置關(guān)系示意圖3為本發(fā)明實(shí)施例中所述根據(jù)第 一位置關(guān)系及第二位置關(guān)系識(shí)別掃描圖像中的表格單元的實(shí)施流程示意圖4為本發(fā)明實(shí)施例中所述表格單元識(shí)別實(shí)施流程示意圖5為本發(fā)明實(shí)施例中所述識(shí)別掃描圖像中表格單元的裝置結(jié)構(gòu)示意圖6為本發(fā)明實(shí)施例中所述驗(yàn)貨單的掃描圖像示意圖7為本發(fā)明實(shí)施例中所述對(duì)-驗(yàn)貨單的掃描圖像進(jìn)行識(shí)別后的表格單元示意圖。
具體實(shí)施例方式
本發(fā)明在實(shí)施中提供了一種識(shí)別掃描圖像中表格單元的方法,本發(fā)明在實(shí)施中的構(gòu)思在于從上至下、從左到右掃描圖像區(qū)域,獲得圖像中的所有直線段,然后使用快速篩選算法來(lái)過(guò)濾掉表格中的其它內(nèi)容,只保留較長(zhǎng)的水平和垂直線段,這些線段構(gòu)成了表格單元,然后利用這些線段識(shí)別出表格單元結(jié)構(gòu),通過(guò)獲取到的表格單元的位置和大小,從而識(shí)別出掃描圖像中的表格單元,具體的,是通過(guò)各線段以及它們的交點(diǎn)來(lái)識(shí)別表格單元的結(jié)構(gòu)、位置的。
下面結(jié)合附圖對(duì)本發(fā)明的具體實(shí)施方式
進(jìn)行說(shuō)明。
圖1為識(shí)別掃描圖像中表格單元的方法的實(shí)施流程示意圖,如圖所示,在
識(shí)別掃描圖像中的表格單元時(shí)可以包括如下步驟
步驟101、獲取表格文檔的掃描圖像中的水平線段和垂直線段;步驟102、去除掃描圖像中小于第一閾值的水平線段和垂直線段;步驟103、獲取剩余的水平線段和垂直線段的交點(diǎn);步驟104、確定各交點(diǎn)的第一位置關(guān)系,以及第二位置關(guān)系;第一位置關(guān)系表示交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段的存在
與否,第二位置關(guān)系表示交點(diǎn)是否屬于同一水平線段和/或垂直線段。
步驟105 、根據(jù)第 一位置關(guān)系及第二位置關(guān)系識(shí)別掃描圖像中的表格單元。下面對(duì)各步驟的具體實(shí)施進(jìn)行說(shuō)明。
在步驟101獲取表格文檔的掃描圖像中的水平線段和垂直線段前,可以進(jìn)一步包括
在獲取掃描圖像后,先對(duì)掃描圖像進(jìn)行包括噪音去除操作、圖像糾偏操作、 圖像二值化操作之一或者其組合的預(yù)處理操作。
對(duì)于掃描圖像的獲取,可以通過(guò)數(shù)字化設(shè)備來(lái)獲取,并進(jìn)行掃描圖像預(yù)處 理。由于通過(guò)掃描等方式獲得的文檔圖像,或多或少都會(huì)存在噪聲,而噪音大 多數(shù)是以孤立點(diǎn)的形式存在。因此可以先進(jìn)行預(yù)處理,比如噪音去除操作處理。 噪音去除操作處理是預(yù)處理的一部分,主要是去除小的臟點(diǎn)。
具體實(shí)施中,可以通過(guò)移除小連通區(qū)域的方法進(jìn)行噪音去除首先通過(guò)基 于區(qū)域生長(zhǎng)算法,搜索版面中小的連通區(qū)域,并計(jì)算該區(qū)域中的前景象素點(diǎn)的 個(gè)數(shù)Sum,然后將Sum小于一定閾值的連通區(qū)域;f見(jiàn)為噪音點(diǎn)而去除。
顯然,在步驟101前進(jìn)行預(yù)處理有助于更準(zhǔn)確的獲取表格文檔的掃描圖像 中的水平線段和垂直線段。
而預(yù)處理中的圖像糾偏操作也有助于提高獲取表格文檔的掃描圖像中的 水平線段和垂直線段的準(zhǔn)確性,比如不會(huì)將因掃描時(shí)傾斜的水平或垂直線段誤 判為非水平或垂直線^殳。
同理,可以在獲取掃描圖像后,先對(duì)掃描圖像進(jìn)行其他類(lèi)型的、有助于提 高獲取表格文檔的掃描圖像中的水平線段和垂直線段的準(zhǔn)確性的預(yù)處理操作, 除噪音去除操作、圖像糾偏操作外,還可以是圖像二值化操作等。
在步驟101中,可以簡(jiǎn)單的按照水平方向?qū)Ρ砀駡D像進(jìn)行掃描,計(jì)算連續(xù) 象素點(diǎn)的個(gè)數(shù),即為所述的水平直線段;同樣地,按照垂直方向?qū)Ρ砀駡D像進(jìn) 行列掃描,計(jì)算連續(xù)象素點(diǎn)的個(gè)數(shù),即為所述的垂直直線段。這對(duì)本領(lǐng)域技術(shù) 人員來(lái)說(shuō)是容易理解的。
為便于描述,本發(fā)明實(shí)施中將按水平方向掃描所得的線段稱(chēng)為水平線段, 將按與水平方向垂直的方向掃描所得的線段稱(chēng)為垂直線段。顯然,水平、垂直
方向的定義是本領(lǐng)域習(xí)慣稱(chēng)呼,并非指地理、數(shù)學(xué)、或其他領(lǐng)域中所述的水平
與垂直。在步驟101獲得水平線段與垂直線段后,便可實(shí)施步驟102,去除掃描圖 像中小于第一閾值的水平線段和垂直線段。本步驟的目的在于進(jìn)一步去除一 些線狀的大噪音區(qū)域,同時(shí)過(guò)濾掉表格單元內(nèi)部的文字區(qū)域圖像的干擾。因此, 本步驟中的第 一 閾值也是根據(jù)線狀型噪音線段長(zhǎng)度和/或表格內(nèi)部文字圖像區(qū) 域線段長(zhǎng)度進(jìn)行設(shè)定的。具體實(shí)施中,第一閾值的選取主要是參考掃描圖像中 的最小字符的高度和掃描圖像的分辨率。因?yàn)閷?duì)于同一個(gè)字符大小而言,不同 的掃描分辨率下圖像的尺寸大小不同。比如600dpi下,5號(hào)字的最大字高為 90個(gè)像素。在同一分辨率下,第一閾值可選為最小字符高度的2/3左右。表格 單元線的長(zhǎng)度一般都會(huì)比字符的高度要大一些,所以這么選擇不會(huì)影響到表格 單元線。下面進(jìn)行說(shuō)明。
為便于引用描述,將該步驟稱(chēng)為過(guò)濾表格圖像步驟,其目的在于去除長(zhǎng)度 短的水平和垂直線革殳。具體的如下
按照水平方向?qū)Ρ砀駡D像進(jìn)行掃描,計(jì)算連續(xù)象素點(diǎn)的個(gè)數(shù),即為所述的 水平直線段的長(zhǎng)度,每條水平掃描線上只保留長(zhǎng)度超過(guò)第 一閾值的水平線段; 同樣地,按照垂直方向?qū)Ρ砀駡D像進(jìn)行列掃描,計(jì)算連續(xù)象素點(diǎn)的個(gè)數(shù),即為 所述的垂直直線段的長(zhǎng)度,每條垂直掃描線上只保留長(zhǎng)度超過(guò)第一閾值的垂直 線段。在去除一般為點(diǎn)狀的噪音后,還會(huì)與留一些線狀的、較大的噪音區(qū)域, 同時(shí),單元表格內(nèi)的文字區(qū)域內(nèi)容也會(huì)表現(xiàn)為線段,因此有必要將一些與構(gòu)成 單元格無(wú)關(guān)的短長(zhǎng)度的線段去除,通常這些線段都比較小,因此可以通過(guò)設(shè)定 一個(gè)閾值,將長(zhǎng)度小于該閾值的線段去除,顯然,經(jīng)過(guò)此步驟可以進(jìn)一步去除 一些線狀的大噪音區(qū)域,同時(shí)過(guò)濾掉表格單元內(nèi)部的文字區(qū)域圖像的干擾。
具體實(shí)施中,第一閾值的取值可以根據(jù)圖像分辨率的不同而不同,例如在 圖像分辨率為600dpi時(shí),第一閾值可以取值為30個(gè)像素(pixel),通過(guò)第一閾 值的作用本領(lǐng)域技術(shù)人員是容易根據(jù)實(shí)際需要確定出合適的取值的。
進(jìn)一步的,由于現(xiàn)有的圖像掃描機(jī)制,在實(shí)際的掃描圖像中,水平或者垂 直的線段并不^^確的表現(xiàn)為在一個(gè)水平、或者垂直坐標(biāo)數(shù)值上,這時(shí)一根線段在掃描后會(huì)表現(xiàn)為兩個(gè)有部分重疊的線段。因此,在獲取剩余的水平線段和
垂直線段的交點(diǎn)前,還可以進(jìn)一步包括合并線段有重疊的水平線^:,和/或線 段有重疊的垂直線段。
具體的,可以通過(guò)檢查相鄰行的水平線段,若有重疊部分,則合并兩條線 段為一條水平直線段;同樣地,檢查相鄰列的垂直線段,若有重疊部分,則合 并兩條線段為一條垂直直線段。
進(jìn)一步的,在實(shí)際的掃描圖像中,還會(huì)出現(xiàn)一種情況,即出現(xiàn)單元格線革爻 斷裂的情況,這種情況主要是由于掃描或者打印過(guò)程而造成的。因此,在獲取 剩余的水平線段和垂直線段的交點(diǎn)前,還可以進(jìn)一步包括合并線段間距小于 第二閾值的水平線^:,和/或線段間距小于第二閾值的垂直線段,所述第二閾值 根據(jù)斷裂表格線的長(zhǎng)度進(jìn)行設(shè)定。顯然,該步驟的主要目的是想保留部分由于 掃描或者打印過(guò)程而造成的表格線斷裂情況,也就是設(shè)定第二閾值要解決的問(wèn) 題。
具體的,設(shè)第二閾值為n個(gè)像素,那么實(shí)施中可以檢查所有水平線段,如 果兩個(gè)線段頭尾相距n個(gè)像素以?xún)?nèi),則將該兩個(gè)線段合并,也就是合并間距小 于第二閾值的線段;同樣地,檢查所有垂直線段,合并頭尾相距n個(gè)像素以?xún)?nèi) 的線段。 一般而言,圖像分辨率越大,n也就越大。由于n主要是解決斷裂表 格線的合并問(wèn)題,而表格線斷裂部分一般不會(huì)太大,因此n—般比較小。如在 圖像分辨率為600dpi時(shí),n可以取值為3個(gè)像素(pixel )。
進(jìn)一步的,為了更好的過(guò)濾噪音線段或者粘連的字符圖像區(qū)域,在獲取剩 余的水平線段和垂直線段的交點(diǎn)前,還可以進(jìn)一步包括去除掃描圖像中小于 第三閾值的水平線段和垂直線段,所述第三閾值根據(jù)最短的表格線的長(zhǎng)度進(jìn)行 設(shè)定。之所以要采用第一閾值、第三閾值兩個(gè)閾值來(lái)進(jìn)行過(guò)濾,而不是直接采 用較大的第三閾值,還有一個(gè)目的是想保留部分由于掃描或者打印過(guò)程而造成 的表格線斷裂情況,也就是第二閾值n要解決的問(wèn)題。
具體的,可以檢查所有水平線段,容易理解,該線段可以是步驟102中根據(jù)第一閾值去除后剩余的線段,也可以是合并有重疊部分的線段后剩余的線 段、還可以是根據(jù)第二閾值合并后剩余的線段,也可以是同時(shí)經(jīng)過(guò)上述幾種處
理后剩余的線段,然后在這些所有的線段中刪除長(zhǎng)度小于第三閾值的線段;同 樣地,檢查所有垂直線段,刪除長(zhǎng)度小于第三閾值的線段。
相應(yīng)地,第三閾值的取值也根據(jù)圖像分辨率的不同而不同, 一般而言,分 辨率越大,該值一般越大;如可以在圖像分辨率為600dpi時(shí),水平方向上的第 三閾值取值為200像素(pixel),垂直方向上的第三閾值取值為120像素(pixel )。 需要說(shuō)明的是, 一般情況下來(lái)講,由于最小的表格單元的水平寬度比最小的表 格單元的豎直高度要大一些。因此在實(shí)施例中水平線段與垂直線段的第三閾值 不相同,但是,這不是完全絕對(duì)的,它們之間也沒(méi)有必然的聯(lián)系,而是要根據(jù) 具體的表格單元情況來(lái)定。
經(jīng)過(guò)上述處理而剩余的線段,是比較準(zhǔn)確的、可以用于識(shí)別單元格的水平 線段與垂直線段,此時(shí)可以開(kāi)始利用這些剩余線段進(jìn)行表格單元的識(shí)別了???見(jiàn),在實(shí)施中,在獲取表格文檔的掃描圖像中的水平線段和垂直線段以后,將 會(huì)去除掃描圖像中小于第一閾值的水平線段和垂直線段,然后根據(jù)剩余的水平 線段和垂直線段識(shí)別掃描圖像中的表格單元。由于根據(jù)第一閾值使用了過(guò)濾的 方案來(lái)獲取表格中的直線,因此其計(jì)算速度比Hough變換、矢量化等直線檢測(cè) 算法快得多,這大大拓展了算法的適用范圍。同時(shí),實(shí)施例中可以獲知表格的 精確結(jié)構(gòu),可以解決大部分的表格單元粘連問(wèn)題,對(duì)于小的斷裂,也可以通過(guò) 連接首尾相距較近的線段來(lái)解決,因此還具有傳統(tǒng)直線^r測(cè)算法識(shí)別成功率 高,抗粘連,抗斷裂的優(yōu)點(diǎn)。
但是,為了進(jìn)一步的提高識(shí)別速度,實(shí)施中還可以進(jìn)一步的根據(jù)各交點(diǎn)與 線段的位置關(guān)系,以及各交點(diǎn)之間的位置關(guān)系來(lái)識(shí)別掃描圖像中的表格單元, 下面進(jìn)行說(shuō)明。
首先執(zhí)行步驟103,獲取剩余的水平線段和垂直線段的交點(diǎn)。水平線段與 垂直線段之間必然會(huì)相交,本步驟正是要獲取這些交點(diǎn),本步驟的作用以及實(shí)施對(duì)本領(lǐng)域技術(shù)人員來(lái)說(shuō)是容易理解的。
獲得各交點(diǎn)后,便可以在步驟105中根據(jù)第一位置關(guān)系及第二位置關(guān)系識(shí) 別掃描圖像中的表格單元,其中,第一位置關(guān)系、第二位置關(guān)系是在步驟104 中確定的各交點(diǎn)與水平線段和垂直線段的位置關(guān)系,以及各交點(diǎn)之間的位置關(guān) 系。第一位置關(guān)系表示交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段的存在與 否,第二位置關(guān)系表示交點(diǎn)是否屬于同一水平線段和/或垂直線段。
本領(lǐng)域技術(shù)人員容易知道,當(dāng)獲知構(gòu)成整個(gè)表格單元的點(diǎn)及線段時(shí),就可 以識(shí)別出整個(gè)表格單元的形狀,即可知其如何構(gòu)成。本發(fā)明實(shí)施中,引入了交 點(diǎn)這一特征,并利用交點(diǎn)與線段、交點(diǎn)與交點(diǎn)之間的位置關(guān)系來(lái)識(shí)別表格單元, 顯然,與現(xiàn)有技術(shù)直線檢測(cè)法中所采用的、僅僅依靠線段這一元素的方式相比, 本發(fā)明實(shí)施例中的方案運(yùn)算量更小,這也使得本發(fā)明實(shí)施例的各種方案在識(shí)別 表格單元時(shí)的運(yùn)算處理速度更快。
下面對(duì)第一位置關(guān)系、第二位置關(guān)系及運(yùn)用其來(lái)識(shí)別表格單元的實(shí)施方式 進(jìn)行說(shuō)明。
第一位置關(guān)系是各交點(diǎn)與水平線段和垂直線段的位置關(guān)系,是表示該交點(diǎn) 在周?chē)膫€(gè)方向上的水平線段與垂直線段的存在與否。
第二位置關(guān)系是各交點(diǎn)之間的位置關(guān)系,是表示各交點(diǎn)是否屬于同 一水平 線^殳和/或垂直線^殳。
圖2為交點(diǎn)與線段的位置關(guān)系示意圖,下面對(duì)照?qǐng)D2先對(duì)第一位置關(guān)系進(jìn) 行說(shuō)明。
如圖2所示,圖中有交點(diǎn)l、 2、 3、 4、 5、 6、 7、 8、 9,連接交點(diǎn)的是水 平線段或者垂直線段。容易理解,無(wú)論表格單元中的哪一種交點(diǎn),都必然與圖 中9種交點(diǎn)中的一個(gè)相同,顯然,通過(guò)這9種交點(diǎn)與周?chē)膫€(gè)方向上的水平線 段與垂直線段的存在與否便可以確定其種類(lèi)。為便于描述,對(duì)照?qǐng)D實(shí)施例中使 用了上、下、左、右的描述,但并不代表真實(shí)的圖像處理中也使用上、下、左、 右這樣的關(guān)系。由圖可見(jiàn),9種交點(diǎn)與周?chē)膫€(gè)方向上的水平線^:與垂直線賴(lài):的關(guān)系為
交點(diǎn)l、下面有垂直線段、右邊有水平線段; 交點(diǎn)2、下面有垂直線段、左邊有水平線段、右邊有水平線段; 交點(diǎn)3、下面有垂直線段、左邊有水平線段; 交點(diǎn)4、上面有垂直線段、下面有垂直線段、右邊有水平線段; 交點(diǎn)5、上面有垂直線段、下面有垂直線段、左邊有水平線段、右邊有水 平線段;
交點(diǎn)6、上面有垂直線段、下面有垂直線段、左邊有水平線段; 交點(diǎn)7、上面有垂直線段、右邊有水平線段; 交點(diǎn)8、上面有垂直線段、左邊有水平線段、右邊有水平線段; 交點(diǎn)9、上面有垂直線段、左邊有水平線段。
事實(shí)上,在4艮據(jù)第一位置關(guān)系及第二位置關(guān)系識(shí)別掃描圖像中的表格單元 的過(guò)程中,可以通過(guò)上述9種關(guān)系便可以確定一個(gè)交點(diǎn)與該交點(diǎn)相鄰的交點(diǎn), 但是,進(jìn)一步的,還可以將9類(lèi)交點(diǎn)進(jìn)一步劃分為四種類(lèi)型,即將其中1、 2、 4、 5歸為矩形表格單元的左上點(diǎn)集合,實(shí)施例中記為類(lèi)型A;將2、 3、 5、 6 歸為矩形表格單元的右上點(diǎn)集合,實(shí)施例中記為類(lèi)型B; 將4、 5、 7、 8歸為 矩形表格單元的左下點(diǎn)集合,實(shí)施例中記為類(lèi)型C;將5、 6、 8、 9歸為矩形 表格單元的右下點(diǎn)集合,實(shí)施例中記為類(lèi)型D。
需要說(shuō)明的是,每一個(gè)交點(diǎn)時(shí)很可能同時(shí)具備多種屬性,比如對(duì)于交點(diǎn)2, 它既可能屬于類(lèi)型A,也可能屬于類(lèi)型B,這要視其在整個(gè)表格單元中的位置 關(guān)系來(lái)確定;簡(jiǎn)單說(shuō),圖2中的交點(diǎn)5,就同時(shí)具備A、 B、 C、 D四種類(lèi)型的 屬性。
通過(guò)以上方案便可以確定各交點(diǎn)與水平線段和垂直線,爻的第一位置關(guān)系, 同時(shí)也可以通過(guò)第 一位置關(guān)系的不同確定了各交點(diǎn)的種類(lèi)。
第二位置關(guān)系是各交點(diǎn)之間的位置關(guān)系,可以才艮據(jù)各交點(diǎn)是否屬于同一水 平線段和/或垂直線段確定。第二位置關(guān)系的確定對(duì)本領(lǐng)域技術(shù)人員來(lái)說(shuō)是比較簡(jiǎn)單的, 一種確定第二位置關(guān)系的方式如下
將計(jì)算得到的交點(diǎn)坐標(biāo)(xj和(y;)和上述定義的交點(diǎn)類(lèi)型進(jìn)行排序,保 存到一個(gè)二維行列結(jié)構(gòu)鏈表中,排序原則為如果兩個(gè)交點(diǎn)連線與水平線的角 度在3度以?xún)?nèi),則i人為兩點(diǎn)在同一4亍中。在同一行中的點(diǎn),按照水平坐標(biāo)遞增 的順序排列。
在確定了第一位置關(guān)系、第二位置關(guān)系后,便可以執(zhí)行步驟105的根據(jù)第 一位置關(guān)系及第二位置關(guān)系識(shí)別掃描圖像中的表格單元。本步驟之所以能夠?qū)?施,其原因在于每個(gè)單元格必然包括4類(lèi)點(diǎn)中的各一個(gè)(上左、上右、下右、 下左);確定所有單元格后便可以構(gòu)成整個(gè)表格。
圖3為根據(jù)第一位置關(guān)系及第二位置關(guān)系識(shí)別掃描圖像中的表格單元的實(shí) 施流程示意圖,如圖所示,可以包括以下步驟
步驟301、確定一個(gè)交點(diǎn);
步驟302、確定與該交點(diǎn)相鄰的交點(diǎn),所述相鄰的交點(diǎn)與該交點(diǎn)屬于不同
種類(lèi)的第一位置關(guān)系;
步驟303、根據(jù)該交點(diǎn)及該交點(diǎn)相鄰的交點(diǎn)識(shí)別出該交點(diǎn)的表格單元; 步驟304、按所述確定該交點(diǎn)的表格單元的方式,根據(jù)第二位置關(guān)系確定
該交點(diǎn)以外的其它交點(diǎn)的表格單元。
下面以 一個(gè)實(shí)例再進(jìn)行說(shuō)明如何具體如何運(yùn)用第 一位置關(guān)系以及第二位
置關(guān)系來(lái)進(jìn)行識(shí)別,具體的,本實(shí)施例中對(duì)所有交點(diǎn)按行排序,利用交點(diǎn)順序
和交點(diǎn)類(lèi)型,計(jì)算表格結(jié)構(gòu),識(shí)別出表格單元的位置和大小。
圖4為表格單元識(shí)別實(shí)施流程示意圖,如圖所示,可以包括如下步驟 步驟401、按照從左到右,從上到下的順序,在交點(diǎn)行列中找尋第一個(gè)A
類(lèi)點(diǎn);
本步驟在具體實(shí)施中也可以按照別的順序?qū)ふ业谝粋€(gè)交點(diǎn),交點(diǎn)的類(lèi)型也 可以是別的類(lèi)型,總之,在尋找到第一個(gè)交點(diǎn)后,在以下的步驟中需要實(shí)現(xiàn)的 是確定該交點(diǎn)相鄰的4類(lèi)點(diǎn)中的各一個(gè)。步驟402、在A類(lèi)點(diǎn)所在行的右側(cè)點(diǎn)中,找尋第一個(gè)B類(lèi)點(diǎn); 步驟403、在A類(lèi)點(diǎn)所在行的下方的所有行中,;險(xiǎn)查所有的C類(lèi)點(diǎn),找到 同A類(lèi)點(diǎn)水平坐標(biāo)差最小的一個(gè);
步驟404、在C類(lèi)點(diǎn)所在行的右側(cè)點(diǎn)中,找尋第一個(gè)D類(lèi)點(diǎn); 步驟405、記錄四點(diǎn)組成的內(nèi)接矩形坐標(biāo);
步驟406、判斷是否所有的A類(lèi)型點(diǎn)都被處理過(guò),若是執(zhí)行步驟407,否 則執(zhí)行步驟401,
步驟407、識(shí)別出所有內(nèi)接矩形。
顯然,所有的內(nèi)接矩形便是本發(fā)明實(shí)施例中所需識(shí)別出的表格單元。 基于同 一發(fā)明構(gòu)思,本發(fā)明還提供了 一種識(shí)別掃描圖像中表格單元的裝
置,下面結(jié)合附圖對(duì)裝置的具體實(shí)施方式
進(jìn)行說(shuō)明。由于識(shí)別裝置與識(shí)別方法
是基于同一發(fā)明構(gòu)思,二者有相同的原理,因此裝置的實(shí)施過(guò)程中可以參考識(shí)
別方法的實(shí)施,相同之處不再重復(fù)描述。
圖5為識(shí)別掃描圖像中表格單元的裝置結(jié)構(gòu)示意圖,如圖所示,裝置中可
以包括
線段獲取模塊501 ,用于獲取表格文檔的掃描圖像中的水平線段和垂直線
段;
第一線段去除模塊502,用于去除掃描圖像中小于第一閾值的水平線段和 垂直線段,所述第一閾值根據(jù)掃描圖像中的最小字符高度和掃描圖像的分辨率 設(shè)定;
表格識(shí)別模塊503,用于根據(jù)剩余的水平線段和垂直線段識(shí)別掃描圖像中 的表格單元。
還可以進(jìn)一步包括
預(yù)處理模塊504,用于獲取掃描圖像后,在獲取表格文檔的掃描圖像中的 水平線段和垂直線段前,對(duì)掃描圖像進(jìn)行包括噪音去除操作、圖像糾偏操作、 圖像二值化操作之一或者其組合的預(yù)處理操作。第一線段去除模塊502還可以進(jìn)一步用于根據(jù)線狀型噪音線段長(zhǎng)度和/或 表格內(nèi)部文字圖像區(qū)域線段長(zhǎng)度進(jìn)行設(shè)定第 一 閾值。 裝置中還可以進(jìn)一步包括
第一合并模塊505,用于在獲取剩余的水平線段和垂直線段的交點(diǎn)前,合 并線段有重疊的水平線段,和/或線段有重疊的垂直線段。
第二合并模塊506,用于在獲取剩余的水平線段和垂直線段的交點(diǎn)前,合 并線段間距小于第二閾值的水平線段,和/或線段間距小于第二閾值的垂直線 段,所述第二閾值大于斷裂表格線的長(zhǎng)度之間的距離。
第二線段去除模塊507,用于在獲取剩余的水平線段和垂直線段的交點(diǎn)前, 去除掃描圖像中小于第三閾值的水平線段和垂直線段,所述第三閾值根據(jù)最短 的表格線的長(zhǎng)度進(jìn)行設(shè)定。
需要說(shuō)明的是,由于第一合并模塊505、第二合并模塊506、第二線段去 除模塊507是進(jìn)一步增加效果的,第一合并模塊505、第二合并模塊506、第 二線段去除模塊507是在獲取剩余的水平線段和垂直線段的交點(diǎn)前實(shí)施,它們 之間、以及它們與第一線段去除模塊502之間并沒(méi)有必然的因果關(guān)系,在進(jìn)行 識(shí)別處理時(shí),既可以在第一線段去除模塊實(shí)施后便交由表格識(shí)別模塊處理,也 可以進(jìn)一步的交由第一合并模塊505和/或第二合并模塊506,或者直接交由第 二線段去除模塊處理,可以根據(jù)需要組合出各種連接關(guān)系以及執(zhí)行順序,這對(duì) 本領(lǐng)域技術(shù)人員來(lái)說(shuō)是容易理解的。因此,圖中的連接關(guān)系僅示出了依次為第 一線段去除模塊、第一合并模塊、第二合并模塊、第二線段去除模塊、表格識(shí) 別模塊的連接方式,但這不代表僅有該種連接方式、執(zhí)行順序和實(shí)施方式。 裝置中的表格識(shí)別模塊503中可以包括
交點(diǎn)獲取單元5031,用于獲取剩余的水平線段和垂直線段的交點(diǎn); 位置確定單元5032,用于表示交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線
段的存在與否的第一位置關(guān)系,以及表示交點(diǎn)是否屬于同一水平線段和/或垂直
線段的第二位置關(guān)系;表格識(shí)別單元5033,用于根據(jù)第一位置關(guān)系及第二位置關(guān)系識(shí)別掃描圖像 中的表格單元。
位置確定單元5032可以進(jìn)一步用于根據(jù)各交點(diǎn)在周?chē)膫€(gè)方向上的水平 線段與垂直線段的存在與否確定第一位置關(guān)系。
位置確定模塊5032也可以進(jìn)一步用于根據(jù)各交點(diǎn)是否屬于同一水平線段 和/或垂直線段確定第二位置關(guān)系。
表格識(shí)別單元5033中可以包括
交點(diǎn)確定子單元,用于根據(jù)第二位置關(guān)系確定未進(jìn)行表格識(shí)別的交點(diǎn),在 確定一個(gè)交點(diǎn)后,交由表格識(shí)別子單元處理;
表格識(shí)別子單元,用于確定與該交點(diǎn)相鄰的交點(diǎn),所述相鄰的交點(diǎn)與該交 點(diǎn)屬于不同種類(lèi)的第 一位置關(guān)系;并根據(jù)該交點(diǎn)及該交點(diǎn)相鄰的交點(diǎn)識(shí)別出該 交點(diǎn)的表格單元,所述種類(lèi)根據(jù)交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段 的存在與否進(jìn)行判斷。
由上述實(shí)施例可知,由于本發(fā)明實(shí)施中使用過(guò)濾的方法來(lái)獲取表格中的直 線,其計(jì)算速度比Hough變換、矢量化等直線^r測(cè)算法快得多,這大大拓展了 算法的適用范圍。同時(shí),本發(fā)明實(shí)施中可以獲知表格的精確結(jié)構(gòu),可以解決大 部分的表格單元粘連問(wèn)題,對(duì)于小的斷裂,也可以通過(guò)連接首尾相距較近的線 段來(lái)解決,因此還具有傳統(tǒng)直線檢測(cè)算法識(shí)別成功率高,抗粘連,抗斷裂的優(yōu) 點(diǎn)。
圖6為驗(yàn)貨單的掃描圖像示意圖,圖7為對(duì)驗(yàn)貨單的掃描圖像進(jìn)行識(shí)別后 的表格單元示意圖,如圖6所示,驗(yàn)貨單中包括表格單元,單元中有具體的文 字內(nèi)容。按本發(fā)明實(shí)施例中所述的方式識(shí)別后,得到具體的識(shí)別結(jié)果如圖7所 示,由圖7可以明顯地看出本發(fā)明實(shí)施例的效果。
本領(lǐng)域內(nèi)的技術(shù)人員應(yīng)明白,本發(fā)明的實(shí)施例可提供為方法、系統(tǒng)、或計(jì) 算機(jī)程序產(chǎn)品。因此,本發(fā)明可采用完全硬件實(shí)施例、完全軟件實(shí)施例、或結(jié) 合軟件和硬件方面的實(shí)施例的形式。而且,本發(fā)明可采用在一個(gè)或多個(gè)其中包含有計(jì)算機(jī)可用程序代碼的計(jì)算機(jī)可用存儲(chǔ)介質(zhì)(包括但不限于磁盤(pán)存儲(chǔ)器、
CD-ROM、光學(xué)存儲(chǔ)器等)上實(shí)施的計(jì)算機(jī)程序產(chǎn)品的形式。
本發(fā)明是參照根據(jù)本發(fā)明實(shí)施例的方法、設(shè)備(系統(tǒng))、和計(jì)算機(jī)程序產(chǎn) 品的流程圖和/或方框圖來(lái)描述的。應(yīng)理解可由計(jì)算機(jī)程序指令實(shí)現(xiàn)流程圖和 /或方框圖中的每一流程和/或方框、以及流程圖和/或方框圖中的流程和/ 或方框的結(jié)合。可提供這些計(jì)算機(jī)程序指令到通用計(jì)算機(jī)、專(zhuān)用計(jì)算機(jī)、嵌入 式處理機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器以產(chǎn)生一個(gè)機(jī)器,使得通過(guò)計(jì)算 機(jī)或其他可編程數(shù)據(jù)處理設(shè)備的處理器執(zhí)行的指令產(chǎn)生用于實(shí)現(xiàn)在流程圖一 個(gè)流程或多個(gè)流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能的裝置。 這些計(jì)算機(jī)程序指令也可存儲(chǔ)在能引導(dǎo)計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)
備以特定方式工作的計(jì)算機(jī)可讀存儲(chǔ)器中,使得存儲(chǔ)在該計(jì)算機(jī)可讀存儲(chǔ)器中 的指令產(chǎn)生包括指令裝置的制造品,該指令裝置實(shí)現(xiàn)在流程圖 一個(gè)流程或多個(gè) 流程和/或方框圖一個(gè)方框或多個(gè)方框中指定的功能。
這些計(jì)算機(jī)程序指令也可裝載到計(jì)算機(jī)或其他可編程數(shù)據(jù)處理設(shè)備上,使
得在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行一 系列操作步驟以產(chǎn)生計(jì)算機(jī)實(shí)現(xiàn)的處 理,從而在計(jì)算機(jī)或其他可編程設(shè)備上執(zhí)行的指令提供用于實(shí)現(xiàn)在流程圖一個(gè) 流程或多個(gè)流程和/或方框圖 一個(gè)方框或多個(gè)方框中指定的功能的步驟。
盡管已描述了本發(fā)明的優(yōu)選實(shí)施例,但本領(lǐng)域內(nèi)的技術(shù)人員 一旦得知了基 本創(chuàng)造性概念,則可對(duì)這些實(shí)施例作出另外的變更和修改。所以,所附權(quán)利要 求意欲解釋為包括優(yōu)選實(shí)施例以及落入本發(fā)明范圍的所有變更和修改。
顯然,本領(lǐng)域的技術(shù)人員可以對(duì)本發(fā)明進(jìn)行各種改動(dòng)和變型而不脫離本發(fā) 明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及 其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1、一種識(shí)別掃描圖像中表格單元的方法,其特征在于,包括如下步驟獲取表格文檔的掃描圖像中的水平線段和垂直線段;去除掃描圖像中小于第一閾值的水平線段和垂直線段,所述第一閾值根據(jù)掃描圖像中的最小字符高度和掃描圖像的分辨率設(shè)定;根據(jù)剩余的水平線段和垂直線段識(shí)別掃描圖像中的表格單元。
2、 如權(quán)利要求1所述的方法,其特征在于,在獲取表格文檔的掃描圖像 中的水平線段和垂直線段前,進(jìn)一步包括獲取掃描圖像后,對(duì)掃描圖像進(jìn)行包括噪音去除操作、圖像糾偏操作、圖 像二值化操作之一或者其組合的預(yù)處理操作。
3、 如權(quán)利要求1所述的方法,其特征在于,所述第一閾值為根據(jù)線狀型 噪音線段長(zhǎng)度和/或表格內(nèi)部文字圖像區(qū)域線段長(zhǎng)度進(jìn)行設(shè)定。
4、 如權(quán)利要求1所述的方法,其特征在于,在獲取剩余的水平線段和垂 直線段的交點(diǎn)前,進(jìn)一步包括合并線段有重疊的水平線段,和/或線段有重疊的垂直線段。
5、 如權(quán)利要求1所述的方法,其特征在于,在獲取剩余的水平線段和垂 直線段的交點(diǎn)前,進(jìn)一步包括合并線段間距小于第二閾值的水平線段,和/或線段間距小于第二閾值的垂 直線段,所述第二閾值大于斷裂表格線之間的距離。
6、 如權(quán)利要求4或5所述的方法,其特征在于,獲取剩余的水平線段和 垂直線段的交點(diǎn)前,進(jìn)一步包括去除掃描圖像中小于第三閾值的水平線段和垂直線^殳,所述第三閾值小于 最短的表格線的長(zhǎng)度。
7、 如權(quán)利要求1所述的方法,其特征在于,根據(jù)剩余的水平線段和垂直 線段識(shí)別掃描圖像中的表格單元,具體為獲取剩余的水平線段和垂直線段的交點(diǎn);根據(jù)表示交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段的存在與否的第 一位置關(guān)系,以及表示交點(diǎn)是否屬于同一水平線段和/或垂直線段的第二位置關(guān) 系,識(shí)別掃描圖像中的表格單元。
8、 如權(quán)利要求7所述的方法,其特征在于,根據(jù)第一位置關(guān)系及第二位 置關(guān)系識(shí)別掃描圖像中的表格單元,具體為確定一個(gè)交點(diǎn);確定與該交點(diǎn)相鄰的交點(diǎn),所述相鄰的交點(diǎn)與該交點(diǎn)屬于不同種類(lèi)的第一 位置關(guān)系,所述種類(lèi)根據(jù)交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段的存在 與否進(jìn)行判斷;根據(jù)該交點(diǎn)及該交點(diǎn)相鄰的交點(diǎn)識(shí)別出該交點(diǎn)的表格單元; 按所述確定該交點(diǎn)的表格單元的方式,根據(jù)第二位置關(guān)系確定該交點(diǎn)以外 的其它交點(diǎn)的表格單元。
9、 一種識(shí)別掃描圖像中表格單元的裝置,其特征在于,包括 線段獲取模塊,用于獲取表格文檔的掃描圖像中的水平線段和垂直線段; 第 一線段去除模塊,用于去除掃描圖像中小于第 一閾值的水平線段和垂直線段,所述第一閾值根據(jù)掃描圖像中的最小字符高度和掃描圖像的分辨率設(shè) 定;表格識(shí)別模塊,用于根據(jù)剩余的水平線段和垂直線段識(shí)別掃描圖像中的表 格單元。
10、 如權(quán)利要求9所述的裝置,其特征在于,進(jìn)一步包括 預(yù)處理模塊,用于獲取掃描圖像后,在獲取表格文檔的掃描圖像中的水平線段和垂直線段前,對(duì)掃描圖像進(jìn)行包括噪音去除操作、圖像糾偏操作、圖像 二值化操作之一或者其組合的預(yù)處理操作。
11、 如權(quán)利要求9所述的裝置,其特征在于,所述第一線段去除模塊進(jìn)一 步用于根據(jù)線狀型噪音線段長(zhǎng)度和/或表格內(nèi)部文字圖像區(qū)域線段長(zhǎng)度進(jìn)行設(shè) 定第一閾值。
12、 如權(quán)利要求9所述的裝置,其特征在于,進(jìn)一步包括 第一合并模塊,用于在獲取剩余的水平線段和垂直線段的交點(diǎn)前,合并線段有重疊的水平線段,和/或線段有重疊的垂直線段。
13、 如權(quán)利要求9所述的裝置,其特征在于,進(jìn)一步包括 第二合并模塊,用于在獲取剩余的水平線段和垂直線段的交點(diǎn)前,合并線段間距小于第二閾值的水平線段,和/或線段間距小于第二閾值的垂直線段,所 述第二閾值大于斷裂表格線之間的距離。
14、 如權(quán)利要求12或13所述的裝置,其特征在于,進(jìn)一步包括 第二線段去除模塊,用于在獲取剩余的水平線^:和垂直線段的交點(diǎn)前,去除掃描圖像中小于第三閾值的水平線段和垂直線段,所述第三閾值小于最短的 表格線的長(zhǎng)度。
15、 如權(quán)利要求9所述的裝置,其特征在于,所述表格識(shí)別模塊包括 交點(diǎn)獲取單元,用于獲取剩余的水平線段和垂直線段的交點(diǎn); 位置確定單元,用于確定表示交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段的存在與否的第一位置關(guān)系,以及表示交點(diǎn)是否屬于同一水平線段和/或垂直 線段的第二位置關(guān)系;表格識(shí)別單元,用于根據(jù)第一位置關(guān)系及第二位置關(guān)系識(shí)別掃描圖像中的 表格單元。
16、 如權(quán)利要求15所述的裝置,其特征在于,所述表格識(shí)別單元包括 交點(diǎn)確定子單元,用于根據(jù)第二位置關(guān)系確定未進(jìn)行表格識(shí)別的交點(diǎn),在確定一個(gè)交點(diǎn)后,交由表格識(shí)別子單元處理;表格識(shí)別子單元,用于確定與該交點(diǎn)相鄰的交點(diǎn),所述相鄰的交點(diǎn)與該交 點(diǎn)屬于不同種類(lèi)的第 一位置關(guān)系;并根據(jù)該交點(diǎn)及該交點(diǎn)相鄰的交點(diǎn)識(shí)別出該 交點(diǎn)的表格單元,所述種類(lèi)根據(jù)交點(diǎn)在周?chē)膫€(gè)方向上的水平線段與垂直線段 的存在與否進(jìn)行判斷。
全文摘要
本發(fā)明公開(kāi)了一種識(shí)別掃描圖像中表格單元的方法及裝置,包括獲取表格文檔的掃描圖像中的水平線段和垂直線段;去除掃描圖像中小于第一閾值的水平線段和垂直線段,所述第一閾值根據(jù)掃描圖像中的最小字符高度和掃描圖像的分辨率設(shè)定;根據(jù)剩余的水平線段和垂直線段識(shí)別掃描圖像中的表格單元。使用本發(fā)明,不僅具有傳統(tǒng)直線檢測(cè)算法識(shí)別成功率高的特點(diǎn),還能夠在保證高識(shí)別率的前提下,提高掃描圖像中表格單元識(shí)別速度。
文檔編號(hào)G06K9/20GK101676930SQ200810222480
公開(kāi)日2010年3月24日 申請(qǐng)日期2008年9月17日 優(yōu)先權(quán)日2008年9月17日
發(fā)明者亓文法, 李曉龍 申請(qǐng)人:北大方正集團(tuán)有限公司;北京大學(xué);北京北大方正電子有限公司