一種混合pdf圖書目錄自動抽取算法
【專利摘要】本發(fā)明公開了一種混合PDF圖書目錄自動抽取方法,涉及信息抽取領(lǐng)域,XML數(shù)據(jù)的抽取分析任務(wù),目錄抽取問題。通過本發(fā)明,PDF圖書目錄不但被更準(zhǔn)確的識別,而且相對目前現(xiàn)有的基于目錄頁內(nèi)容分析的目錄抽取方法,具有處理無目錄頁圖書的目錄的能力,而且通過獲得的目錄項(xiàng)的分析,完成了目錄項(xiàng)的定位導(dǎo)航功能,并對目錄項(xiàng)進(jìn)行分級的操作,方便用戶更好的理解圖書的層級結(jié)構(gòu),完成了PDF圖書的目錄抽取建立任務(wù),提升了用戶的瀏覽體驗(yàn)。
【專利說明】—種混合PDF圖書目錄自動抽取算法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及信息抽取領(lǐng)域,尤其是一種使用基于規(guī)則與機(jī)器學(xué)習(xí)相結(jié)合的混合PDF圖書自動目錄抽取算法。
【背景技術(shù)】
[0002]目前,數(shù)字出版物勃然興起,傳統(tǒng)圖書館向著數(shù)字圖書館轉(zhuǎn)變。數(shù)字圖書館需要對圖書進(jìn)行整頁高效的攝影或者掃描,之后再通過光學(xué)字符識別過程將圖像轉(zhuǎn)換為可搜索的文本。因?yàn)?,光學(xué)字符識別技術(shù)生成的海量數(shù)字化圖書只有非常少的結(jié)構(gòu)信息,章節(jié)等高級信息沒有被識別出來。所以現(xiàn)有的手勢識別算法并不能根據(jù)章節(jié)等信息來形成目錄,以幫助讀者更好的定位書中的內(nèi)容,從而增強(qiáng)瀏覽時(shí)的用戶體驗(yàn)。
[0003]發(fā)明人在實(shí)現(xiàn)本發(fā)明的過程中,發(fā)現(xiàn)現(xiàn)有技術(shù)中至少存在以下缺點(diǎn)和不足:
[0004]現(xiàn)有技術(shù)目前大部分算法還是基于已有的目錄頁來識別章節(jié)信息,無法針對沒有目錄頁的圖書進(jìn)行識別,而在傳統(tǒng)的圖書中,還是有較大一部分比例的圖書沒有目錄。另外由于光學(xué)字符識別的過程中有大量的識別錯誤,單純依賴目錄頁的識別性能比較低。
【發(fā)明內(nèi)容】
[0005]本發(fā)明提供了一種基于機(jī)器學(xué)習(xí)與規(guī)則混合的TOF圖書目錄自動抽取算法,本發(fā)明根據(jù)PDF文件通過光學(xué)字符識別工具得到的Djvuxml文件,根據(jù)文件的固定格式,對文件進(jìn)行分析,采用機(jī)器學(xué)習(xí)與基于規(guī)則的方法相結(jié)合的方法得到目錄,詳見下文描述:
[0006]一種于機(jī)器學(xué)習(xí)與規(guī)則混合的PDF圖書自動目錄抽取算法,包括:針對有目錄圖書的基于規(guī)則的目錄抽取方法,以及針對無目錄圖書的使用機(jī)器學(xué)習(xí)方法的目錄抽取方法。以及獲得目錄項(xiàng)之后的目錄的定位以及分級操作,最終形成完整具有層級以及超鏈接的目錄,提供閱讀者良好的導(dǎo)航功能。
[0007]所述方法包括以下步驟:
[0008](I)有目錄的圖書基于規(guī)則的目錄項(xiàng)抽取方法
[0009]本發(fā)明針對有目錄的圖書利用書本中原有的目錄頁,采用基于規(guī)則的方式對原本目錄頁的內(nèi)容進(jìn)行分析,從而獲得各個(gè)目錄項(xiàng)。首先,需要定位目錄頁,其次,再抽取目錄項(xiàng)。
[0010]定位目錄頁。目錄頁的開始一般都包含‘Contents’字樣,并且該頁包含很多以數(shù)字結(jié)尾的行。當(dāng)然有時(shí)也會出現(xiàn)以‘Index’為標(biāo)題的目錄。通過這些特征可以定位到目錄頁的起始位置。由于大多數(shù)書都有頁眉,因此判斷接下來的頁面是否為目錄頁的方法是查看其頁面頁眉是否含有‘Contents’字樣,或者以數(shù)字結(jié)尾的行數(shù)占總行數(shù)的比重。由于目錄一般都出現(xiàn)在書的前面,因此在定位目錄頁時(shí),為了提高準(zhǔn)確率并加快速度,只處理書的前半部分。
[0011]抽取目錄項(xiàng)。抽取目錄項(xiàng)工作的重點(diǎn)在于如何判斷一個(gè)目錄項(xiàng)的開始與結(jié)束。本說明中制定如下規(guī)則來判斷目錄項(xiàng)的開始:1)如果當(dāng)前行的第一個(gè)單詞以Chapter、Part、Volume和Book等為開頭的,將其作為目錄項(xiàng)的開始。2)如果當(dāng)前行的第一個(gè)單詞以數(shù)字或者羅馬數(shù)字開頭的,將其作為目錄項(xiàng)的開始。3)如果上一行以數(shù)字或者羅馬數(shù)字結(jié)尾的,則當(dāng)前行為目錄項(xiàng)的開始。某一個(gè)目錄項(xiàng)的結(jié)束通常伴隨著下一個(gè)目錄項(xiàng)的開始,因此,我們很容易制定出如下規(guī)則來判斷目錄項(xiàng)的結(jié)束:1)如果下一行的第一個(gè)單詞以Chapter、Part、Volume和Book等開頭,則當(dāng)前行為目錄項(xiàng)的最后一行。2)如果下一行的第一個(gè)單詞以數(shù)字或者羅馬數(shù)字開頭,則當(dāng)前行為目錄項(xiàng)的最后一行。3)如果當(dāng)前行以數(shù)字或者羅馬數(shù)字結(jié)尾,則當(dāng)前行為目錄項(xiàng)的最后一行。上面這些規(guī)則已經(jīng)可以很好的解決大部分的問題,但是對于少部分的目錄卻不能很好的提取。比如,某些目錄項(xiàng)分成三大部分,第一部分為目錄項(xiàng)標(biāo)題,第二部分為目錄項(xiàng)的頁碼,第三部分為目錄項(xiàng)的簡介。如果只使用以上的規(guī)則,則上一個(gè)目錄項(xiàng)的簡介將與下一個(gè)目錄項(xiàng)的標(biāo)題和在一起,被當(dāng)作當(dāng)前目錄項(xiàng)的標(biāo)題。因此在上面所說的規(guī)則中,加入一條規(guī)則:若上一行沒有上面說的Chapter、羅馬數(shù)字等明顯劃分目錄項(xiàng)的信息,并且當(dāng)前行與上一行的特征差別很大時(shí),則可以直接刪除之前所收集的關(guān)于當(dāng)前目錄項(xiàng)的信息。也就是從當(dāng)前行開始認(rèn)為是目錄項(xiàng)的開始,而把原來本應(yīng)作為當(dāng)前目錄項(xiàng)內(nèi)容的信息刪除。
[0012](2)無目錄圖書基于支持向量機(jī)方法的目錄項(xiàng)抽取方法
[0013]對于不含目錄的書,本發(fā)明采用機(jī)器學(xué)習(xí)的方法。因?yàn)闀械拿恳欢我词悄鼙划?dāng)作鏈接目錄項(xiàng)的一部分,要么不能。因此,可以采用分類的方法解決該問題。本發(fā)明將該工作劃分為三大部分:1.對書中的每一段進(jìn)行特征抽取并進(jìn)行標(biāo)注,抽取的特征我們希望是能夠區(qū)分目錄項(xiàng)和非目錄項(xiàng)的;2訓(xùn)練分類器并對段進(jìn)行分類,在這里我們使用的是RBF-SVM分類器.;3.將分類后的段提取出來,組成目錄項(xiàng),并對其進(jìn)行分級操作。
[0014]所述發(fā)明中特征標(biāo)注與抽取。通過觀察數(shù)據(jù)集,本發(fā)明發(fā)現(xiàn)能夠被當(dāng)作目錄項(xiàng)的段,也即是段落的標(biāo)題,都具有一些明顯的特點(diǎn)。比如說字體比正文的字體大,段落的間距比正文的大,字體很多都為大寫,段落包含的字?jǐn)?shù)相對于普通的段少,段中每行所包含的字?jǐn)?shù)也很少,居中,頭一個(gè)詞有些有明顯的Chapter、Part字樣。因此定義如下八個(gè)特征:大寫字母所占比例、字體大小、最左端位置、最右端位置、段與段之間距離、段所包含的行數(shù)、段中每行字?jǐn)?shù)的平均值、段出現(xiàn)的位置縱坐標(biāo)。
[0015]所述發(fā)明中生成目錄項(xiàng)。通過SVM對文檔中的每一行進(jìn)行分類之后,標(biāo)記為正例的段落可能有很多種:第一種為我們期待的章節(jié)標(biāo)題;第二種為頁眉;第三種為錯誤被認(rèn)為是標(biāo)題的段落;第四種為一些原本不屬于書中內(nèi)容的污點(diǎn),由于OCR過程的錯誤而誤認(rèn)為是字符的段落。如果不進(jìn)行任何后處理,召回率很高但是準(zhǔn)確率將很低。因此,在生成目錄項(xiàng)之前,有必要對標(biāo)記為正例的樣本進(jìn)行處理。我們首先將標(biāo)記為正例的段落按出現(xiàn)順序進(jìn)行排列。之后進(jìn)行一下步驟:1)如果某一段大部分的詞都沒有大寫的話,則刪除該正例。2)如果該段是有一個(gè)字母,并且該字母不為羅馬數(shù)字,則刪除該正例。3)如果某一段內(nèi)容與其他段重復(fù),則只保留第一次出現(xiàn)的段,刪除其他。4)如果某一頁出現(xiàn)很多正例(大于兩個(gè)),則該頁可能是扉頁。將該頁的所有正例刪除。
[0016](3)目錄項(xiàng)的定位
[0017]目錄項(xiàng)的定位,即是定位每一個(gè)目錄項(xiàng)在文檔正文中對應(yīng)的位置。如果再簡單來說就是書目中的物理頁碼與邏輯頁碼的匹配工作(物理頁碼即書目中實(shí)際的頁碼,包含目錄、封面等;而邏輯頁碼即文本在正文中所處的頁碼,從正文開始計(jì)數(shù)。)在進(jìn)行邏輯頁碼和物理頁碼的匹配之前,首先需要提取每一頁的邏輯頁碼。邏輯頁碼一般都是出現(xiàn)在頁眉或者頁腳部分。只要判斷出連續(xù)的若干頁都是第一行或者最后一行包含數(shù)字,就可以判斷出邏輯頁碼出現(xiàn)的位置,之后就可以提取邏輯頁碼。這樣提取出的邏輯頁碼不是很完全,因?yàn)橛行╉摯_實(shí)沒有出現(xiàn)頁碼,或者很有可能OCR錯誤,沒有識別或者識別錯誤該頁碼。因此應(yīng)該對這些遺漏的和錯誤的頁碼進(jìn)行處理。首先將沒有邏輯頁碼的進(jìn)行邏輯頁碼補(bǔ)全。假設(shè)第i個(gè)物理頁碼包含有邏輯頁碼L (i),第j (j > i)個(gè)物理頁碼也包含邏輯頁碼L (j),并且i,j中間的邏輯頁碼都是缺失的,那么如果L(j)-L(i) = j_i,也就是說中間空缺的邏輯頁碼剛好能夠被補(bǔ)全,則對這些邏輯頁碼進(jìn)行補(bǔ)全。進(jìn)行完了上一步之后,很多丟失的邏輯頁碼已經(jīng)補(bǔ)齊了。還有OCR錯誤的頁碼需要處理。由于已經(jīng)出現(xiàn)了長串的連續(xù)邏輯頁碼,因此首先假定這些連續(xù)邏輯頁碼為正確的,通過這些連續(xù)邏輯頁碼來修改其他的異常頁碼。最后再進(jìn)行一次補(bǔ)全操作。
[0018](4)目錄項(xiàng)的分級
[0019]本發(fā)明通過對數(shù)據(jù)進(jìn)行分析,發(fā)現(xiàn)大部分書的目錄中都包含比如Book、Volume,Part、Chapter等對分級很有幫助的關(guān)鍵字。并且分級的目錄一般都包含諸如阿拉伯?dāng)?shù)字
1、(I),羅馬數(shù)字1、(I)這些格式的表示分級的信息。因此本發(fā)明定義分級規(guī)則如下:
[0020]第一級:包含part、volume、book 字樣。
[0021]第二級:包含chapter、chap字樣或羅馬數(shù)字。
[0022]第三級:包含section、sect字樣。
[0023]第四級:以阿拉伯?dāng)?shù)字或字母開始。
[0024]第五級:為待定級,不包含任何以上特征。該級的目錄項(xiàng)最終屬于哪一級由其上一個(gè)目錄項(xiàng)決定。
[0025]對目錄項(xiàng)從頭到尾進(jìn)行掃描,按照上面的規(guī)則對這些目錄項(xiàng)進(jìn)行分級。通過這一次掃描,只剩下那些沒有特征的目錄項(xiàng)沒有被賦予級別。
[0026]本發(fā)明提供的技術(shù)方案的有益效果是:
[0027]本發(fā)明提供了一種針對TOF圖書的目錄自動抽取方法,采用混合的基于規(guī)則的方法與使用機(jī)器學(xué)習(xí)的方法分別處理有目錄頁的圖書和沒有目錄頁的圖書。方法簡單實(shí)用,同時(shí)具有較好的識別效率。
【專利附圖】
【附圖說明】
[0028]圖1 一種混合HF圖書目錄自動抽取方法流程示意圖。
【具體實(shí)施方式】
[0029]為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚,下面將結(jié)合附圖對本發(fā)明實(shí)施方式作進(jìn)一步地詳細(xì)描述。
[0030]為了方便用戶更好地瀏覽圖書內(nèi)容,了解文章的框架,本發(fā)明提出了一種混合TOF圖書目錄的自動抽取方法,參見圖1,詳見下文描述:
[0031]一種混合PDF圖書目錄自動抽取法,包括:本發(fā)明中,有目錄的圖書目錄項(xiàng)獲取方法I,無目錄圖書的目錄抽取方法2,目錄項(xiàng)的定位操作3,以及目錄項(xiàng)的分級4.[0032]參照圖1,一種混合HF圖書目錄自動抽取方法包括以下步驟:[0033]101:判斷圖書是否具有目錄頁。
[0034]102:使用有目錄頁或者無目錄頁圖書目錄抽取方法抽取目錄項(xiàng)。
[0035]103:定位獲得的目錄項(xiàng),即頁碼匹配操作。
[0036]104:將目錄項(xiàng)分級。
[0037]綜上所述,本發(fā)明實(shí)例提供了 一種針對TOF圖書目錄自動抽取方法,利用基于規(guī)則的方法對圖書中的目錄頁進(jìn)行理解,從而完成對于有目錄頁的圖書的識別,對于無目錄頁的圖書,借用有目錄圖書中的目錄項(xiàng),采用機(jī)器學(xué)習(xí)的方式,自動學(xué)習(xí)一組較好的特征來識別目錄項(xiàng),克服了目前無法完成的無目錄圖書的識別任務(wù),同時(shí)對識別的目錄項(xiàng)進(jìn)行定位以及分級,從而抽取了更具有表達(dá)內(nèi)容的目錄抽取,便于閱讀者的瀏覽。
[0038]本領(lǐng)域技術(shù)人員可以理解附圖只是一個(gè)優(yōu)選實(shí)施例的示意圖,上述本發(fā)明實(shí)施例序號僅僅為了描述,不代表實(shí)施例的優(yōu)劣。
[0039]以上所述僅為本發(fā)明的較佳實(shí)施例,并不用以限制本發(fā)明,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均應(yīng)包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【權(quán)利要求】
1.一種混合roF圖書自動目錄抽取方法,其包括:針對有目錄頁圖書的基于規(guī)則的目錄項(xiàng)抽取方法,以及針對無目錄頁圖書借助有目錄頁圖書的基于機(jī)器學(xué)習(xí)的目錄想抽取算法,以及完成目錄項(xiàng)抽取之后,針對目錄項(xiàng)進(jìn)行的定位目錄項(xiàng)任務(wù)以及目錄項(xiàng)分級整理任務(wù)。
2.根據(jù)權(quán)利要求1所述的一種混合PDF圖書自動目錄抽取方法,其特征在于,所述方法包括:針對有目錄頁圖書的基于規(guī)則的目錄項(xiàng)抽取方法; 所述針對有目錄頁圖書的基于規(guī)則的目錄項(xiàng)抽取方法包括:定位目錄頁,然后根據(jù)目錄頁的內(nèi)容采用基于規(guī)則的方式進(jìn)行分析,進(jìn)而獲得各個(gè)目錄項(xiàng),所述方法在書目中的前部分采用查找包含‘Content’等與目錄頁相關(guān)的關(guān)鍵字來定位目錄頁;采用所述目錄頁中的基于規(guī)則的方式定義一個(gè)目錄項(xiàng)的開始與結(jié)束;定義目錄項(xiàng)的開始結(jié)束主要依賴一句是否以關(guān)鍵字‘Chapter’、‘Part’、‘Volume’和‘Book’以及數(shù)字羅馬數(shù)字等開頭。
3.根據(jù)權(quán)利要求1所述的一種混合PDF圖書自動目錄抽取方法,其特征在于,所述方法包括:針對無目錄頁圖書的基于機(jī)器學(xué)習(xí)方法的目錄項(xiàng)抽取方法; 所述針對無目錄頁圖書的基于機(jī)器學(xué)習(xí)方法的目錄項(xiàng)抽取方法,利用支持向量機(jī)的方法,定義了八個(gè)特征:大寫字母所占比例、字體大小、最左端位置、最右端位置、段與段之間距離、段所包含的行數(shù)、段中每行字?jǐn)?shù)的平均值、段出現(xiàn)的位置縱坐標(biāo);通過采用RBM-SVM來訓(xùn)練,標(biāo)注數(shù)據(jù)利用有目錄頁的圖書的目錄項(xiàng)來生成。
4.根據(jù)權(quán)利要求1所述的一種混合PDF圖書自動目錄抽取方法,其特征在于,所述方法包括:目錄項(xiàng)的定位方法; 所述目錄項(xiàng)的定位方法即定位每一個(gè)目錄項(xiàng)在文檔正文中對應(yīng)的位置,將獲得的邏輯頁碼找到對應(yīng)的物理頁碼;獲取邏輯頁碼采用判斷出連續(xù)的若干頁都是第一行或者最后一行包含數(shù)字,就可以判斷出邏輯頁碼出現(xiàn)的位置,即頁眉或者頁腳;再進(jìn)行一次邏輯頁碼補(bǔ)全操作,補(bǔ)全一些沒有頁碼或者OCR錯誤造成頁碼丟失的情況;然后根據(jù)修正的邏輯頁碼獲得OCR過程中分配給每個(gè)PDF頁的物理頁碼,并與相應(yīng)的目錄項(xiàng)關(guān)聯(lián)。
5.根據(jù)權(quán)利要求1所述的一種混合TOF圖書自動目錄抽取方法,其特點(diǎn)在于包括目錄項(xiàng)的分級方法; 所述目錄項(xiàng)的分級方法通過對數(shù)據(jù)進(jìn)行分析,定義五級分級規(guī)則:第一級:包含part、volume、book字樣;第二級:包含chapter、chap字樣或羅馬數(shù)字;第三級:包含section、sect字樣;第四級:以阿拉伯?dāng)?shù)字或字母開始;第五級:為待定級,不包含任何以上特征;該級的目錄項(xiàng)最終屬于哪一級由其上一個(gè)目錄項(xiàng)決定;對目錄項(xiàng)從頭到尾進(jìn)行掃描,按照規(guī)則對這些目錄項(xiàng)進(jìn)行分級。
【文檔編號】G06F17/30GK103778141SQ201210404052
【公開日】2014年5月7日 申請日期:2012年10月23日 優(yōu)先權(quán)日:2012年10月23日
【發(fā)明者】劉才華, 劉杰, 黃亞樓, 陳佳俊, 張嘯豐 申請人:南開大學(xué)