提取文檔中的文本行的方法和裝置的制造方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及文檔處理領(lǐng)域,具體涉及對(duì)文檔中的文本行進(jìn)行提取的方法和裝置。
【背景技術(shù)】
[0002]隨著計(jì)算機(jī)技術(shù)以及通信技術(shù)的發(fā)展,信息以及數(shù)據(jù)的數(shù)量劇烈增長(zhǎng)。面對(duì)寵大的數(shù)據(jù),用戶對(duì)自動(dòng)化信息處理技術(shù)特別是文檔處理技術(shù)的要求變的越來(lái)越多。在文檔處理技術(shù)中,需要對(duì)文檔圖像中的文字進(jìn)行提取和識(shí)別。而對(duì)文檔圖像中的文字進(jìn)行提取時(shí),需要首先提取文本行,然后根據(jù)文本行中表現(xiàn)出的文字特征再對(duì)文本行進(jìn)行切分和識(shí)別。
[0003]通常的文本行提取算法是通過(guò)在水平方向以及在垂直方向進(jìn)行投影,利用文本行之間存在較大空白的特征對(duì)文本行進(jìn)行提取的。然而,當(dāng)文檔圖像存在較為復(fù)雜的版面或文檔圖像中包含較多噪聲時(shí),文本行的提取變得非常困難。
[0004]針對(duì)上述問(wèn)題,在現(xiàn)有技術(shù)中已提出了不同的解決方案,包括采用基于圖論的方法、基于高斯卷積的方法、基于K均值聚類的方法以及基于形態(tài)學(xué)的方法等等。但這些方法中的一些出錯(cuò)率較高,還有一些在操作過(guò)程中需要人為的監(jiān)督或介入,從而給操作帶來(lái)了不便。
【發(fā)明內(nèi)容】
[0005]有鑒于此,本發(fā)明提出了一種提取文檔中的文本行的方法和裝置,以便準(zhǔn)確高效地提取文檔中的文本行。
[0006]根據(jù)本發(fā)明的一個(gè)方面,提供了一種提取文檔中的文本行的方法,包括:對(duì)文檔中的多個(gè)文本塊進(jìn)行粗聚類,以形成多個(gè)類;計(jì)算每個(gè)類的特征;根據(jù)每個(gè)類的特征,確定所述文檔的方向;以及根據(jù)所述文檔的方向?qū)λ龆鄠€(gè)文本塊進(jìn)行精細(xì)聚類,以提取出文本行。
[0007]根據(jù)本發(fā)明的另一方面,提供了一種提取文檔中的文本行的裝置,包括:粗聚類單元,對(duì)文檔中的多個(gè)文本塊進(jìn)行粗聚類,以形成多個(gè)類;類特征計(jì)算單元,計(jì)算類的特征;文檔方向確定單元,根據(jù)所述類特征計(jì)算單元所計(jì)算出的類的特征,確定所述文檔的方向;以及精細(xì)聚類單元,根據(jù)所述文檔方向確定單元所確定的所述文檔的方向,對(duì)所述多個(gè)文本塊進(jìn)行精細(xì)聚類,以提取出文本行。
[0008]根據(jù)本發(fā)明所提供的技術(shù)方案,可以較高的準(zhǔn)確度提取文檔中的文本行。
【附圖說(shuō)明】
[0009]參照附圖來(lái)閱讀本發(fā)明的各實(shí)施方式,將更容易理解本發(fā)明的其它特征和優(yōu)點(diǎn),在此描述的附圖只是為了對(duì)本發(fā)明的實(shí)施方式進(jìn)行示意性說(shuō)明的目的,而非全部可能的實(shí)施,并且不旨在限制本發(fā)明的范圍。在附圖中:
[0010]圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的提取文檔中的文本行的方法的流程圖。
[0011]圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的確定文檔方向的流程圖。
[0012]圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的精細(xì)聚類的流程圖。
[0013]圖4示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的更新每個(gè)文本塊所處的類的流程圖。
[0014]圖5示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的粗聚類的流程圖。
[0015]圖6示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的將每個(gè)文本塊與距離該文本塊最接近的文本塊合并至同一個(gè)類的流程圖。
[0016]圖7示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的提取文檔中的文本行的裝置的框圖。
[0017]圖8示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的文檔方向確定單元的框圖。
[0018]圖9示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的精細(xì)聚類單元的框圖。
[0019]圖10示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的聚類子單元的框圖。
[0020]圖11示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的粗聚類單元的框圖。
[0021]圖12示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的粗聚類單元的聚類子單元的框圖。
[0022]圖13示出了可用于實(shí)施根據(jù)本發(fā)明實(shí)施例的方法和裝置的計(jì)算機(jī)的示意性框圖。
【具體實(shí)施方式】
[0023]現(xiàn)參照附圖對(duì)本發(fā)明的實(shí)施方式進(jìn)行詳細(xì)描述。應(yīng)注意,以下描述僅僅是示例性的,而并不旨在限制本發(fā)明。此外,在以下描述中,將采用相同的附圖標(biāo)號(hào)表示不同附圖中的相同或相似的部件。在以下描述的不同實(shí)施方式中的不同特征,可彼此結(jié)合,以形成本發(fā)明范圍內(nèi)的其他實(shí)施方式。
[0024]在本申請(qǐng)的描述中,“文本行”是指在文檔中由文本文字所構(gòu)成的行,此處所述的“行”并不涉及方向,既可以表示橫向的“行”,也可以表示縱向的“行”。
[0025]在本申請(qǐng)的描述中,“文檔的方向”是指文檔的總體閱讀方向,即,各文本行之間的排列方向。例如,本文的“文檔的方向”由于文本行與文本行之間是縱向排列的,所以為縱向。如果每個(gè)文本行中的文字是縱向排列的,即各文本行之間是橫向排列的,則該文檔的方向?yàn)闄M向。
[0026]在本申請(qǐng)的描述中,“文本塊”是指在文檔的預(yù)處理過(guò)程中,將整個(gè)文檔所切分成的多個(gè)塊,其用于后續(xù)的處理。這種切分可基于現(xiàn)有技術(shù)中的多種方法進(jìn)行,例如通過(guò)對(duì)文檔進(jìn)行連續(xù)成分分析或基于直方圖的切分而得到多個(gè)文本塊。根據(jù)所選擇的切分方法不同,所得到的每個(gè)文本塊可包含一個(gè)字符的一部分或一個(gè)或多個(gè)字符,或者其組合??梢岳斫猓绢I(lǐng)域技術(shù)人員可根據(jù)實(shí)際需要以及文檔的實(shí)際情況(例如文字的大小、字符間距以及行間距)通過(guò)適當(dāng)?shù)姆绞綄⑽臋n切分為文本塊。
[0027]圖1示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的提取文檔中的文本行的方法的流程圖。如圖1所示,在文檔中提取文本行的方法100包括步驟SllO至步驟S140。在步驟SllO中,對(duì)文檔中的多個(gè)文本塊進(jìn)行粗聚類,即初步聚類,以形成多個(gè)類。所形成的每個(gè)類是文本塊的集合,可包含一個(gè)或多個(gè)文本塊。在步驟S120中,計(jì)算由步驟SllO所形成的每個(gè)類的特征。在本申請(qǐng)中,類的特征是表征類的位置信息的特征,這一點(diǎn)將在以下詳述。在步驟S130中,根據(jù)在步驟S120中計(jì)算的每個(gè)類的特征,確定該文檔的方向。在文檔的方向確定后,在步驟S140中,根據(jù)在步驟S130中所確定的文檔的方向,對(duì)文檔中的多個(gè)文本塊進(jìn)行精細(xì)聚類,從而將精細(xì)聚類所得到的每個(gè)類作為一個(gè)文本行進(jìn)行輸出,即提取出了文本行。
[0028]根據(jù)本發(fā)明的該實(shí)施方式,通過(guò)粗聚類和精細(xì)聚類,從文檔中提取出了文本行,以用于后續(xù)的文字提取和/或識(shí)別等操作。該方法能夠正確地從文檔中提取文本行,出錯(cuò)率低,而且整個(gè)操作過(guò)程無(wú)需人為的監(jiān)督或介入,從而便于操作。
[0029]根據(jù)本發(fā)明的另一實(shí)施方式,文檔中的每個(gè)文本塊均具有位置信息,并且在步驟S120中,可根據(jù)每個(gè)類中所包含的文本塊的位置信息,分別計(jì)算每個(gè)類的特征。根據(jù)一個(gè)實(shí)施例,文檔中的每個(gè)文本塊的位置信息可包括水平位置信息和豎直位置信息。相應(yīng)地,每個(gè)類的特征可包括水平特征和豎直特征,分別用于表征每個(gè)類的水平位置信息和豎直位置信息。在步驟S120中,每個(gè)類的水平特征和豎直特征分別是根據(jù)每個(gè)類中所包含的各個(gè)文本塊的水平位置信息和豎直位置信息計(jì)算得出的。
[0030]每個(gè)類的水平特征可包括該類所包含的所有文本塊的水平位置信息的平均值和標(biāo)準(zhǔn)差,每個(gè)類的豎直特征可包括該類所包含的所有文本塊的豎直位置信息的平均值和標(biāo)準(zhǔn)差。根據(jù)一個(gè)實(shí)施例,每個(gè)文本塊的水平位置信息可包括該文本塊的最上側(cè)位置、最下側(cè)位置和/或中心水平位置,用于表示該文本塊在水平方向上在該文檔中所處的位置。例如,當(dāng)每個(gè)文本塊的水平位置信息包括該文本塊的最上側(cè)位置和最下側(cè)位置時(shí),則每個(gè)類的水平特征可包括該類所包含的所有文本塊的最上側(cè)位置的平均值和標(biāo)準(zhǔn)差以及最下側(cè)位置的平均值和標(biāo)準(zhǔn)差。類似地,每個(gè)文本塊的豎直位置信息可包括該文本塊的最左側(cè)位置、最右側(cè)位置和/或中心豎直位置,用于表示該文本塊在豎直方向上在該文檔中所處的位置。
[0031]圖2示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的確定文檔方向的流程圖。如圖2所示,上述步驟S130包括子步驟S210-S230。
[0032]在子步驟S210中,比較所有類的水平特征中的標(biāo)準(zhǔn)差的平均值與豎直特征中的標(biāo)準(zhǔn)差之平均值的大小??梢岳斫?,如果各類的水平特征的標(biāo)準(zhǔn)差相對(duì)于豎直特征的標(biāo)準(zhǔn)差較大,則表明每個(gè)類中的各文本塊的豎直位置彼此比較接近。反之,如果各類的水平特征的標(biāo)準(zhǔn)差相對(duì)于豎直特征的標(biāo)準(zhǔn)差較小,則表明每個(gè)類中的各文本塊的水平位置彼此比較接近。
[0033]例如,當(dāng)每個(gè)文本塊的水平位置信息包括該文本塊的最上側(cè)位置和最下側(cè)位置并且豎直位置信息包括該文本塊的最左側(cè)位置和最右側(cè)位置時(shí),則每個(gè)類的水平特征包括該類所包含的所有文本塊的最上側(cè)位置的平均值和標(biāo)準(zhǔn)差以及最下側(cè)位置的平均值和標(biāo)準(zhǔn)差并且豎直特征包括該類所包含的所有文本塊的最左側(cè)位置的平均值和標(biāo)準(zhǔn)差以及最右側(cè)位置的平均值和標(biāo)準(zhǔn)差。在子步驟S210中,每個(gè)類的水平特征中的標(biāo)準(zhǔn)差既考慮各文本塊最上側(cè)位置的標(biāo)準(zhǔn)差,也考慮各文本塊最下側(cè)位置的標(biāo)準(zhǔn)差,例如,每個(gè)類的水平特征中的標(biāo)準(zhǔn)差可以為各文本塊最上側(cè)位置的標(biāo)準(zhǔn)差與各文本塊最下側(cè)位置的標(biāo)準(zhǔn)差之和或平均值。類似地,每個(gè)類的豎直特征中的標(biāo)準(zhǔn)差可以為各文本塊最左側(cè)位置的標(biāo)準(zhǔn)差與各文本塊最右側(cè)位置的標(biāo)準(zhǔn)差之和或平均值。
[0034]因此,當(dāng)所有類的水平特征中的標(biāo)準(zhǔn)差的平均值大于豎直特征中的標(biāo)準(zhǔn)差的平均值時(shí),在步驟S220中,確定文檔的方向是水平方向;當(dāng)所有類的水平特征中的標(biāo)準(zhǔn)差的平均值小于豎直特征中的標(biāo)準(zhǔn)差的平均值時(shí),在步驟S230中,確定文檔的方向是豎直方向。
[0035]圖3示出了根據(jù)本發(fā)明一個(gè)實(shí)施方式的精細(xì)聚類的流程圖。如圖3所示,上述步驟S140包括子步驟S310-S350。
[0036]在子步驟S310中,根據(jù)在上述步驟S130確定的文檔的方向,計(jì)算每個(gè)文本塊與每個(gè)類的關(guān)聯(lián)值。在本申請(qǐng)中,一個(gè)文本塊與一個(gè)