專利名稱:一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種文檔方向檢測(cè)方法,尤其是涉及一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法。
背景技術(shù):
在廣泛使用的光學(xué)字符識(shí)別系統(tǒng)(OCR)中,文檔圖像方向的檢測(cè)是圖像處理的第一步,也是所有后續(xù)處理的先決條件。有效地檢測(cè)出這些掃描文件的方向?qū)⒋蟠笥兄诤罄m(xù)的圖像處理。在許多嵌入式系統(tǒng)中,如掃描儀和傳真機(jī),文本文件圖像的方向檢測(cè)是必要的,而且,檢測(cè)要求快速。因此,輕量級(jí)的方向檢測(cè)方法在文本文檔的圖像處理中具有重要意義。
目前已有一些方法來(lái)檢測(cè)文本圖像方向。在1990年,Akiyama et al.提出最早的算法,能夠辨別肖像和風(fēng)景圖像的方向。最有影響力的算法,由S.N.srihari和V. Govindaraju提出。該算法基于Hough變換和觀察,根據(jù)非對(duì)稱英文文本行的垂直投影來(lái)實(shí)現(xiàn)文本圖像的方向檢測(cè)。這種方法是許多后來(lái)的變形算法的基礎(chǔ)。雖然這些算法基本只適用于羅馬文字,后來(lái)也有很多針對(duì)其他不同文字的其他研究,比如普什圖語(yǔ),印地文,和阿拉伯文。另外,還有一些較新的算法,基于開(kāi)放的羅馬文字或一些不對(duì)稱的非羅馬文字,比如不對(duì)稱的如普什圖語(yǔ)和希伯來(lái)語(yǔ)文本。通過(guò)統(tǒng)計(jì)文字符號(hào)在某左右方向上開(kāi)發(fā)的不同來(lái)確定文檔的上下方向。以上提到的這些算法大多是基于對(duì)每個(gè)語(yǔ)言文字的細(xì)節(jié)特征,所以都只針對(duì)一個(gè)特定種類的語(yǔ)言文本圖像,而且,需要大量的計(jì)算或者需要一個(gè)大的數(shù)據(jù)集的特征提取。文檔中存在各種標(biāo)點(diǎn)符號(hào),如引號(hào),句號(hào),分號(hào),驚嘆號(hào),問(wèn)號(hào),頓號(hào)。對(duì)于一般辦公文檔存在這樣一個(gè)基礎(chǔ)事實(shí)即在每個(gè)文檔中,大部分的標(biāo)點(diǎn)符號(hào)要么接近于文本行頂部要么接近于底部。例如,引號(hào)是接近文本行的頂部,而句號(hào)是接近于文本行的底部。同時(shí)標(biāo)點(diǎn)符號(hào)具有以下兩個(gè)特點(diǎn)I.除了文檔中出現(xiàn)頻率很低的一些標(biāo)點(diǎn)符號(hào)是與文本行高度相同之外,比如問(wèn)號(hào)和驚嘆號(hào)等,大部分的標(biāo)點(diǎn)符號(hào)的高度都遠(yuǎn)遠(yuǎn)小于文本行的高度。2.所有高度很小的標(biāo)點(diǎn)符號(hào)大部分是位于該文本行的底部。而在普通的辦公文檔中,位于頂部和底部的兩種標(biāo)點(diǎn)符號(hào)的出現(xiàn)頻率相差很大。因此,可以基于上述特點(diǎn)對(duì)文本圖像方向的檢測(cè)方法進(jìn)行研究。
發(fā)明內(nèi)容
本發(fā)明的目的就是為了克服上述現(xiàn)有技術(shù)存在的缺陷而提供一種檢測(cè)準(zhǔn)確率高、適用范圍廣的基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法。本發(fā)明的目的可以通過(guò)以下技術(shù)方案來(lái)實(shí)現(xiàn)一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法,用于對(duì)辦公文檔掃描圖像進(jìn)行方向檢測(cè),該方法包括以下步驟
I)獲取文檔掃描圖像,采用邊緣密度算法檢測(cè)并去除圖像中的邊緣噪音;2)采用基于投影的頁(yè)面分割算法對(duì)圖像進(jìn)行頁(yè)面分割,獲得若干圖像塊;3)對(duì)每一個(gè)圖像塊,判斷其是否為文本塊,若是,則將其保留,若否,則將其剔除;4)采用XY切割算法提取每個(gè)文本塊中的連通體;5)根據(jù)連通體的高度和寬度,判斷該連通體是否為標(biāo)點(diǎn)符號(hào),若是,則執(zhí)行步驟
6),若否,則返回步驟5);6)分別統(tǒng)計(jì)接近于頂部的標(biāo)點(diǎn)符號(hào)的出現(xiàn)次數(shù)Lt和接近于底部的標(biāo)點(diǎn)符號(hào)的出現(xiàn)次數(shù)Lb,根據(jù)R = Lt/Lb與設(shè)定值的大小關(guān)系,檢測(cè)文檔掃描圖像的方向。所述的步驟2)中的基于投影的頁(yè)面分割算法為XY切割算法。 所述的步驟3)中的判斷其是否為文本塊的具體步驟為31)將圖像塊進(jìn)行水平投影,獲得投影圖像;32)若投影圖像呈現(xiàn)具有一定間隔的山峰狀,則判斷與其對(duì)應(yīng)的圖像塊為文本塊。所述的步驟4)具體如下41)首先通過(guò)水平投影后,取得該文字塊的每一行,并將每一個(gè)行保存到一個(gè)字符串?dāng)?shù)組,同時(shí),計(jì)算并保存該行的平均行高到另一數(shù)組;42)將字符串?dāng)?shù)組垂直投影,分離和提取出該行每個(gè)連通體,也即該行所有的字符和標(biāo)點(diǎn)符號(hào)。所述的步驟5)中的根據(jù)連通體的高度和寬度判斷該連通體是否為標(biāo)點(diǎn)符號(hào)的具體步驟如下51)計(jì)算每個(gè)連通體的寬度和高度,并計(jì)算平均寬度和平均高度;52)將每一個(gè)連通體的寬度與平均寬度相比,如果小于平均寬度,則將其定義為標(biāo)點(diǎn)符號(hào);53)將每一個(gè)連通體的高度與平均高度相比,如果小于平均高度,則將其定義為標(biāo)點(diǎn)符號(hào);54)確定每行上的所有連通體的中心點(diǎn),并將每個(gè)中心點(diǎn)擬合成中心線;55)通過(guò)連通體的水平投影,將投影集中于中線附近的干擾噪音剔除。所述的步驟6)具體如下61)通過(guò)標(biāo)點(diǎn)符號(hào)連通體的水平投影,確定標(biāo)點(diǎn)符號(hào)和中心線的相對(duì)位置;62)通過(guò)分析標(biāo)點(diǎn)符號(hào)和中心線的相對(duì)位置,分別統(tǒng)計(jì)位于中心線的上方和下方,即頂部和底部的標(biāo)點(diǎn)符號(hào)個(gè)數(shù)Lt、Lb ;63)計(jì)算R = Lt/Lb,若R小于設(shè)定值,則所對(duì)應(yīng)的文檔掃描圖像的方向?yàn)檎_方向,若R大于設(shè)定值,則所對(duì)應(yīng)的文檔掃描圖像的方向?yàn)樯舷骂嵉?。與現(xiàn)有技術(shù)相比,本發(fā)明具有以下優(yōu)點(diǎn)I)通過(guò)去除噪聲、頁(yè)面分割和文本塊篩選等操作使本發(fā)明方法具有較高的檢測(cè)準(zhǔn)確率;2)本發(fā)明方法是基于相對(duì)位置的字符和標(biāo)點(diǎn)符號(hào)的比較,完全獨(dú)立于語(yǔ)言,適用于各種語(yǔ)言文字的文件圖像,適用范圍廣。
圖I為本發(fā)明方法的流程示意圖;圖2為文本塊的投影示意圖;圖3為本發(fā)明實(shí)施例中文本圖像數(shù)據(jù)集的標(biāo)點(diǎn)符號(hào)示意圖。
具體實(shí)施例方式下面結(jié)合附圖和具體實(shí)施例對(duì)本發(fā)明進(jìn)行詳細(xì)說(shuō)明。
實(shí)施例如圖I所示,一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法,用于對(duì)辦公文檔掃描圖像進(jìn)行方向檢測(cè),該方法包括以下步驟在步驟SlOl中,獲取文檔掃描圖像,采用邊緣密度算法檢測(cè)并去除圖像中的邊緣噪音。在步驟S102中,采用基于投影的頁(yè)面分割算法對(duì)圖像進(jìn)行頁(yè)面分割,獲得若干圖像塊,這里基于投影的頁(yè)面分割算法為XY切割算法.在步驟S103中,對(duì)每一個(gè)圖像塊,判斷其是否為文本塊,若是,則將其保留,若否,則將其剔除;判斷其是否為文本塊的具體步驟為31)將圖像塊進(jìn)行水平投影,獲得投影圖像;
32)若投影圖像呈現(xiàn)具有一定間隔的山峰狀,如圖2所示,則判斷與其對(duì)應(yīng)的圖像塊為文本塊。在步驟S104中,采用XY切割算法提取每個(gè)文本塊中的連通體,具體如下41)首先通過(guò)水平投影后,取得該文字塊的每一行,并將每一個(gè)行保存到一個(gè)字符串?dāng)?shù)組,同時(shí),計(jì)算并保存該行的平均行高到另一數(shù)組;42)將字符串?dāng)?shù)組垂直投影,分離和提取出該行每個(gè)連通體,也即該行所有的字符和標(biāo)點(diǎn)符號(hào)。在步驟S105中,根據(jù)連通體的高度和寬度,判斷該連通體是否為標(biāo)點(diǎn)符號(hào),若是,則執(zhí)行步驟S106,若否,則返回步驟S105。根據(jù)連通體的高度和寬度判斷該連通體是否為標(biāo)點(diǎn)符號(hào)的具體步驟如下51)計(jì)算每個(gè)連通體的寬度和高度,并計(jì)算平均寬度和平均高度;52)將每一個(gè)連通體的寬度與平均寬度相比,如果小于平均寬度,則將其定義為標(biāo)點(diǎn)符號(hào);53)將每一個(gè)連通體的高度與平均高度相比,如果小于平均高度,則將其定義為標(biāo)點(diǎn)符號(hào);54)確定每行上的所有連通體的中心點(diǎn),并將每個(gè)中心點(diǎn)擬合成中心線;55)通過(guò)連通體的水平投影,將投影集中于中線附近的干擾噪音剔除。在步驟S106中,分別統(tǒng)計(jì)接近于頂部的標(biāo)點(diǎn)符號(hào)的出現(xiàn)次數(shù)Lt和接近于底部的標(biāo)點(diǎn)符號(hào)的出現(xiàn)次數(shù)Lb,根據(jù)R = Lt/Lb與設(shè)定值的大小關(guān)系,檢測(cè)文檔掃描圖像的方向,具體如下61)通過(guò)標(biāo)點(diǎn)符號(hào)連通體的水平投影,確定標(biāo)點(diǎn)符號(hào)和中心線的相對(duì)位置;62)通過(guò)分析標(biāo)點(diǎn)符號(hào)和中心線的相對(duì)位置,分別統(tǒng)計(jì)位于中心線的上方和下方,即頂部和底部的標(biāo)點(diǎn)符號(hào)個(gè)數(shù)Lt、Lb ;
63)計(jì)算R = Lt/Lb,若R小于設(shè)定值,則所對(duì)應(yīng)的文檔掃描圖像的方向?yàn)檎_方向,若R大于設(shè)定值,則所對(duì)應(yīng)的文檔掃描圖像的方向?yàn)樯舷骂嵉?。以?lái)自于實(shí)際的辦公掃描文件圖像進(jìn)行實(shí)驗(yàn),實(shí)驗(yàn)的環(huán)境為Intel IntelPentium D CPU 3.2GHz、lGB RAM、Windows XP、軟件為 Matlab7. 0,分別進(jìn)行 5 個(gè)實(shí)驗(yàn)。在第一個(gè)實(shí)驗(yàn)中,測(cè)試的圖像數(shù)據(jù)集的圖像只有文本,沒(méi)有圖片或表格且圖片都是正確的方向,共分為三種不同的語(yǔ)言。因?yàn)闆](méi)有圖片和表格,所有的分割塊都是文本塊,因此提取文本塊非常簡(jiǎn)單和高效。在這個(gè)實(shí)驗(yàn)中,檢測(cè)準(zhǔn)確率達(dá)到了 100%。圖3為該圖像數(shù)據(jù)集的所有文字塊中的標(biāo)點(diǎn)符號(hào)的出現(xiàn)統(tǒng)計(jì)數(shù)據(jù)。縱坐標(biāo)表示標(biāo)點(diǎn)符號(hào)出現(xiàn)次數(shù),橫坐標(biāo)是文本塊的編號(hào),從圖3中可看出,總共有900多個(gè)文本塊。虛線表示接近底部的標(biāo)點(diǎn)符號(hào),實(shí)線表示接近頂部的標(biāo)點(diǎn)符號(hào)。從圖3中,可以很容易得出這樣的結(jié)論在每一個(gè)文本塊中,接近頂端的標(biāo)點(diǎn)符號(hào)比接近底部的標(biāo)點(diǎn)符號(hào)少得多。因?yàn)槊總€(gè)文本塊有很明顯的數(shù)據(jù),R = Lt/Lb可以很快的計(jì)算出來(lái),即可判斷出每一個(gè)文檔圖像的方 向。在第二個(gè)實(shí)驗(yàn)中,數(shù)據(jù)集的圖像跟第一個(gè)數(shù)據(jù)集是類似的。也有三種不同的語(yǔ)言,也沒(méi)有圖片和表格的,但該數(shù)據(jù)集的文檔圖像是上下倒置的。在其他3個(gè)實(shí)驗(yàn)中,分為英語(yǔ)、中文和日語(yǔ)的三個(gè)不同的文檔圖像數(shù)據(jù)集。并且,在三個(gè)數(shù)據(jù)集中的每個(gè)文檔都有表格、圖片或者其他非文本塊,且都有兩種不同方向的。雖然預(yù)處理,包括去除噪聲,頁(yè)面分割和文本塊篩選等過(guò)程降低了整個(gè)方法的效率,但是,本發(fā)明方法具有較高的準(zhǔn)確率,具體數(shù)據(jù)如表I所示。表I
No.Text LanguagesOrientationOrientation Accuracy
1EnglishRight Side Up 87. 11%
2EnglishUpside Down85.26%
3ChineseRight Side Up 88. 52%
4ChineseUpside Down83. 34%
5JapaneseRight Side Up 83.89%
6JapaneseUpside Down85.29%
權(quán)利要求
1.一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法,用于對(duì)辦公文檔掃描圖像進(jìn)行方向檢測(cè),其特征在于,該方法包括以下步驟 1)獲取文檔掃描圖像,采用邊緣密度算法檢測(cè)并去除圖像中的邊緣噪音; 2)采用基于投影的頁(yè)面分割算法對(duì)圖像進(jìn)行頁(yè)面分割,獲得若干圖像塊; 3)對(duì)每一個(gè)圖像塊,判斷其是否為文本塊,若是,則將其保留,若否,則將其剔除; 4)采用XY切割算法提取每個(gè)文本塊中的連通體; 5)根據(jù)連通體的高度和寬度,判斷該連通體是否為標(biāo)點(diǎn)符號(hào),若是,則執(zhí)行步驟6),若否,則返回步驟5); 6)分別統(tǒng)計(jì)接近于頂部的標(biāo)點(diǎn)符號(hào)的出現(xiàn)次數(shù)Lt和接近于底部的標(biāo)點(diǎn)符號(hào)的出現(xiàn)次數(shù)Lb,根據(jù)R = Lt/Lb與設(shè)定值的大小關(guān)系,檢測(cè)文檔掃描圖像的方向。
2.根據(jù)權(quán)利要求I所述的一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法,其特征在于,所述的步驟2)中的基于投影的頁(yè)面分割算法為XY切割算法。
3.根據(jù)權(quán)利要求I所述的一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法,其特征在于,所述的步驟3)中的判斷其是否為文本塊的具體步驟為 31)將圖像塊進(jìn)行水平投影,獲得投影圖像; 32)若投影圖像呈現(xiàn)具有一定間隔的山峰狀,則判斷與其對(duì)應(yīng)的圖像塊為文本塊。
4.根據(jù)權(quán)利要求I所述的一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法,其特征在于,所述的步驟4)具體如下 41)首先通過(guò)水平投影后,取得該文字塊的每一行,并將每一個(gè)行保存到一個(gè)字符串?dāng)?shù)組,同時(shí),計(jì)算并保存該行的平均行高到另一數(shù)組; 42)將字符串?dāng)?shù)組垂直投影,分離和提取出該行每個(gè)連通體,也即該行所有的字符和標(biāo)點(diǎn)符號(hào)。
5.根據(jù)權(quán)利要求I所述的一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法,其特征在于,所述的步驟5)中的根據(jù)連通體的高度和寬度判斷該連通體是否為標(biāo)點(diǎn)符號(hào)的具體步驟如下 51)計(jì)算每個(gè)連通體的寬度和高度,并計(jì)算平均寬度和平均高度; 52)將每一個(gè)連通體的寬度與平均寬度相比,如果小于平均寬度,則將其定義為標(biāo)點(diǎn)符號(hào); 53)將每一個(gè)連通體的高度與平均高度相比,如果小于平均高度,則將其定義為標(biāo)點(diǎn)符號(hào); 54)確定每行上的所有連通體的中心點(diǎn),并將每個(gè)中心點(diǎn)擬合成中心線; 55)通過(guò)連通體的水平投影,將投影集中于中線附近的干擾噪音剔除。
6.根據(jù)權(quán)利要求I所述的一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法,其特征在于,所述的步驟6)具體如下 61)通過(guò)標(biāo)點(diǎn)符號(hào)連通體的水平投影,確定標(biāo)點(diǎn)符號(hào)和中心線的相對(duì)位置; 62)通過(guò)分析標(biāo)點(diǎn)符號(hào)和中心線的相對(duì)位置,分別統(tǒng)計(jì)位于中心線的上方和下方,即頂部和底部的標(biāo)點(diǎn)符號(hào)個(gè)數(shù)Lt、Lb ; 63)計(jì)算R= Lt/Lb,若R小于設(shè)定值,則所對(duì)應(yīng)的文檔掃描圖像的方向?yàn)檎_方向,若 R大于設(shè)定值,則所對(duì)應(yīng)的文檔掃描圖像的方向?yàn)樯舷骂嵉埂?br>
全文摘要
本發(fā)明涉及一種基于標(biāo)點(diǎn)符號(hào)的文檔上下方向檢測(cè)方法,用于對(duì)辦公文檔掃描圖像進(jìn)行方向檢測(cè),該方法包括以下步驟1)獲取文檔掃描圖像,采用邊緣密度算法檢測(cè)并去除圖像中的邊緣噪音;2)采用基于投影的頁(yè)面分割算法對(duì)圖像進(jìn)行頁(yè)面分割,獲得若干圖像塊;3)對(duì)每一個(gè)圖像塊,判斷其是否為文本塊,若是,則將其保留,若否,則將其剔除;4)采用XY切割算法提取每個(gè)文本塊中的連通體;5)根據(jù)連通體的高度和寬度,判斷該連通體是否為標(biāo)點(diǎn)符號(hào);6)分別統(tǒng)計(jì)接近于頂部和底部的標(biāo)點(diǎn)符號(hào)的出現(xiàn)次數(shù)Lt、Lb,根據(jù)R=Lt/Lb與設(shè)定值的大小關(guān)系,檢測(cè)文檔掃描圖像的方向。與現(xiàn)有技術(shù)相比,本發(fā)明具有檢測(cè)準(zhǔn)確率高、適用范圍廣等優(yōu)點(diǎn)。
文檔編號(hào)G06K9/40GK102831421SQ20121031383
公開(kāi)日2012年12月19日 申請(qǐng)日期2012年8月29日 優(yōu)先權(quán)日2012年8月29日
發(fā)明者朱敏 申請(qǐng)人:華東師范大學(xué)