專利名稱:一種版式文件自動(dòng)成文的方法及系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息技術(shù)處理領(lǐng)域,尤其涉及一種版式文件中自動(dòng)成文的方法 及系統(tǒng)。
種方法的優(yōu)點(diǎn)是根據(jù)版式文件的版面信息結(jié)構(gòu)提取版面信息和所有的稿件信
息;缺點(diǎn)是a)不同的版式文件都需要花時(shí)間理解其內(nèi)部的信息存儲(chǔ)格式,. 導(dǎo)致了不同的版式文件需要開發(fā)不同的插件,開發(fā)難度大且易用性和擴(kuò)展性不 是很好;b)版式文件的必須存儲(chǔ)稿件內(nèi)部之間的關(guān)聯(lián)關(guān)系;通過分析PS文件 以及Fit等文件,發(fā)現(xiàn)版式文件中記錄的稿件關(guān)系并不能夠有效的還原版式文 件中文章中上下文的關(guān)系,造成了后端標(biāo)引的時(shí)候工作量很大。
根據(jù)目前可以基于版式文件記錄的信息來提取稿件的方法;這種方法的優(yōu) 點(diǎn)是高效的利用了版式文件提供的公共的信息,實(shí)現(xiàn)了自動(dòng)化成塊操作;缺點(diǎn) 是該方法沒有實(shí)現(xiàn)自動(dòng)成文,需要在結(jié)合人工標(biāo)引的方式來實(shí)現(xiàn)文章上下文的 正確的組合。
綜上,從版式文件中獲取的文字塊、圖片塊等數(shù)據(jù)信息并沒有有效的組織 在一起,而是^t開來的,比如一篇文章的引題,標(biāo)題,副題是分離開的,標(biāo) 題和文章的正文之間也是分離開的;這樣就需要人工進(jìn)行相應(yīng)的關(guān)聯(lián)操作,還 原文章的引題,標(biāo)題,副題以及正文,以保證數(shù)據(jù)信息的正確性和完備性。
針對(duì)現(xiàn)有技術(shù)中存在的缺陷,本發(fā)明的目的是提供一種反解版式文件后自
背景技術(shù):
^文章的方法。這
發(fā)明內(nèi)容動(dòng)成文的方法,該方法能夠?qū)崿F(xiàn)將反解任何版式文件后獲得的文字塊自動(dòng)關(guān)聯(lián)
起來,還原成為一篇文章;該篇文章可能包含著引題,標(biāo)題,副題,正文,附 圖等相關(guān)內(nèi)容,還原了原有的文章內(nèi)容之間上下文關(guān)系,這樣就減少了人工操 作的工作量,提高了效率。 本發(fā)明的具體實(shí)現(xiàn)方法為
A:從文字塊集合(S)中篩選出標(biāo)題塊集合(T),根據(jù)所述標(biāo)題塊集合(T〉 得到文章集合(A〉;
B:從文字塊集合(S〉中獲取與文章集合(A)中匹配的文字塊,設(shè)置為文章 正文;
C:獲取文章集合(A)中的每篇文章,設(shè)置所述文章的其他組成信息。
進(jìn)一步,從文字塊集合{8}中篩選出標(biāo)題塊集合{丁},根據(jù)所述標(biāo)題塊集合 {T}得到文章集合{A}具體為
從版式文件中獲取的文字塊集合(S)中篩選出文字塊屬性為標(biāo)題的文字 塊,設(shè)置為標(biāo)題塊集合{丁},并從原集合(S)中去除;
創(chuàng)建文章集合{八};按文字塊的信息,對(duì)標(biāo)題塊集合{丁}進(jìn)行比較、聚類; 篩選出屬于同一文章的標(biāo)題塊,得到文字塊集合;驗(yàn)證篩選文字塊集合中的文 字塊是否屬于同一篇文章;創(chuàng)建相應(yīng)的文章,將文字塊集合設(shè)置為文章的標(biāo)題 塊集合;將創(chuàng)建的文章添加到文聿集會(huì)(A)中;最后將到文章集^{八}。
進(jìn)一步,從文字塊集合{8}中獲取與文章集合{八}中匹配的文字塊具體包
括
將文字塊集合(S)中的每一個(gè)文字塊與文章集合(A)進(jìn)行聚類,找到能跟丈 章集合(A)中文章匹配的文字塊,設(shè)置該文字塊為該文章的正文,并從文字塊 集合(S)中刪除該文字塊;
查看文字塊集合(S》中是否存在文字塊,若存在,為該文字塊創(chuàng)建一篇文 章,并將文字塊設(shè)置為該文章的正文,將此文章添加到文章集合{八}中。
所述文章其他信息,包括但不限于引題,標(biāo)題,副題中的一種或者全部信息。
本發(fā)明還提供一種版式文件自動(dòng)成文系統(tǒng),該成文系統(tǒng)包括 文字塊集合生成器,用于從版式文件中生成文字塊集合; 標(biāo)題塊集合篩選器,用于從文字塊集合中篩選出屬性為標(biāo)題的文字塊; 文章集合生成器,用于得到文章集合,所述文章集合按文字塊的信息,對(duì)
標(biāo)題塊集合進(jìn)行比較、聚類得到;
文章正文生成器,用于從文字塊集合中獲取與文章集合中匹配的文字塊,
并將此設(shè)置為文章正文;
文章其他組成信息生成器,用于從文章集合中獲取文章其他信息,并進(jìn)行設(shè)置。
進(jìn)一步,所述文章其他信息,包括但不限于引題,標(biāo)題,副題中的一種 或者全部信息。
通過本發(fā)明提供的技術(shù)方案,能夠找到屬于同一篇文章的引題,標(biāo)題,副 題以及正文等文字塊,能夠還原原有的文章內(nèi)容之間上下文關(guān)系。另外,還可 以提高標(biāo)引人員的工作效率,節(jié)省數(shù)據(jù)加工成本。
圖1為本發(fā)明自動(dòng)成文的流程圖2是從標(biāo)題塊集合中提取近鄰的文字塊示意圖3是從標(biāo)題塊集合中提取近鄰的文字塊,同時(shí)也實(shí)現(xiàn)了標(biāo)題和引題的互 換示意圖4是從新創(chuàng)建的文字塊集合中篩選出不屬于同一篇文章的文字塊示意
圖5為文字塊匹配文章之后的示意圖; 圖6為引題和副題互換之后的示意圖。
具體實(shí)施例方式
下面結(jié)合具體實(shí)施方式
和附圖對(duì)本發(fā)明進(jìn)行詳細(xì)描述。
如圖1所示,版式文件的自動(dòng)成文的方法包括以下步驟
第一步從版式文件中獲取的文字塊集合(S)中篩選出文字塊屬性為標(biāo)題 的文字塊,設(shè)置為標(biāo)題塊集合m,并從原集合(S)中去除;
第二步創(chuàng)建文章集合(A);按文字塊的信息,對(duì)標(biāo)題塊集合{丁}進(jìn)行比較、 聚類;篩選出屬于同一文章的文字塊,得到文字塊集合;驗(yàn)證篩選文字塊集合 中的文字塊是否屬于同一篇文章;創(chuàng)建相應(yīng)的文章,將文字塊集合設(shè)置為文章 的標(biāo)題塊集合;將創(chuàng)建的文章添加到文章集合(A)中;最后得到文章集合{八};
第三步將文字塊集合(S)中的每一個(gè)文字塊與文章集合(A)進(jìn)行聚類,找 到能跟文章集合(A》中文章匹配的文字塊,設(shè)置該文字塊為該文章的正文,并 從文字塊集合(S)中刪除該文字塊; '
第四步查看文字塊集合(S)中是否存在文字塊,若存在,為該文字塊創(chuàng) 建一篇文章,并將文字塊設(shè)置為該文章的正文,將此文章添加到文章集合{八} 中;
第五步依次獲取文章集合(A)中的每篇文章,設(shè)置每篇文章的其他組成 信息。
根據(jù)每篇文章的不同,該篇文章可能包含著引題,標(biāo)題,副題,正文,附 圖等相關(guān)內(nèi)容,因此,其他組成信息為引題,標(biāo)題,副題,附圖中的一種或者 全部信息。
下面結(jié)合附圖2和圖3對(duì)具體實(shí)施方式
進(jìn)行闡述
文字塊集合(S)中篩選出文字塊屬性為標(biāo)題的文字塊是現(xiàn)有技術(shù)中的一般 操作,在此不再詳述,如圖2所述的文字塊中,"4同胞在尼遭武裝劫匪搶劫"、 "中國(guó)參演部隊(duì)開始回撤"、"我國(guó)鐵路最大機(jī)車采購(gòu)項(xiàng)目簽訂"、"質(zhì)檢總局
工作組進(jìn)駐14省區(qū)市"等都是其中的標(biāo)題塊。形成標(biāo)題塊集合(T)之后,需要 按文字塊的信息,對(duì)標(biāo)題塊集合(T)進(jìn)行比較、聚類;得到文章集合(A〉。本實(shí)施例中按文字塊的信息,對(duì)標(biāo)題塊集合{丁}進(jìn)行比較、聚類的具體實(shí)
現(xiàn)方法為
A21:創(chuàng)建一個(gè)新的文字塊集合(R),選取標(biāo)題塊集合(T)中第一個(gè)文字塊, 設(shè)為Tl,將文字塊T1添加到集合(R〉中,并從標(biāo)題塊集合(T〉中刪除;
A22:以文字塊T1為依據(jù),對(duì)標(biāo)題塊集合{丁}進(jìn)行遍歷,篩選出標(biāo)題塊集 合(T)中與文字塊T1的近鄰的文字塊;篩選出來的文字塊放置在文字塊集合(R) 中,并從標(biāo)題塊集合{丁}中刪除篩選出來的文字塊;依次獲取篩選出來的文字 塊,設(shè)置為Tl,再次執(zhí)行本步驟,直至文字塊集合(R)中的文字塊取完為止; 最終得到文字塊集合(R〉;
A23:創(chuàng)建一篇文章;篩選文字塊集合{11},篩選出不屬于同一篇文章的 文字塊并重新添加到標(biāo)題塊集合{丁}中,并從文字塊集合(R〉中刪除;檢索完之 后,將該文字塊集合(R)設(shè)置成為文章的標(biāo)題塊集合;將創(chuàng)建的文章添加到文 章集合(A)中;
A24:重復(fù)步驟A21和A23;直至標(biāo)題塊集合{丁}中文字塊取完為止;最 后得到文章的集合{八}。
在本實(shí)施例中,"4同胞在尼遭武裝劫匪搶劫"和"其中l(wèi)名女子被槍殺" 的兩個(gè)屬性為標(biāo)題的文字塊分別為Tl和T2,需要計(jì)算他們之間是否近鄰。 判斷這兩個(gè)文字塊近鄰的才喿作為 在本實(shí)施方式中,取到的"4同胞在尼遭武裝劫匪搶劫"文字塊T1的左上 角坐標(biāo)為(31,584),右下角坐標(biāo)為(271,605);文字塊Tl的寬度為Wl= 240, 文字塊T1的高度Hl-21 ,文字塊T1的字體大小為fl=20 ;
被遍歷到的"其中1名女子被槍殺"文字塊T2左上角坐標(biāo)為(31,611), 右下角坐標(biāo)為(156,624);文字塊T2的寬度為W2= 125 ,文字塊T2的高度 H2=13 ,文字塊T2的字體大小為£2=13 ;
版面平均字體大小為所有的文字塊的字號(hào)的平均值,設(shè)置為AvgFontSize; 現(xiàn)在該版面的平均字體大小為8.47;然后進(jìn)行如下操作(4.1 )通過如下公式計(jì)算文字塊T1與文字塊T2緊鄰的有效距離 DistThreshold = C1 * AvgFontSize + max(f 1 ,f2)/ C2; 其中Cl為兩個(gè)文字塊之間的間距系數(shù),C2為文字塊的均分系數(shù);
(4.2) 計(jì)算文字塊T1與文字塊T2重疊度 水平方向上的最小重疊度
OverlapXMin = (min(Xl,, X2,) — max(Xl, X2) ))/min(Xl,- XI ,X2,畫X2); 垂直方向上的最小重疊度
OverlapYMin = (min(Yl ,, Y2,) — max(Yl, Y2) ))/min(Yl ,誦Yl ,Y2,- Y2));
(4.3) 計(jì)算文字塊與文字塊的重疊距離 水平方向上的重疊3巨離DistX:
DistX = max (XI, X2)腸min (Xl,, X2,); 垂直方向上的重疊距離DistY: DistY = max (Yl, Y2) - min (Yl,, Y2,);
以上max(a,b)表示取兩者的較大值,min(a,b)表示取兩者的較小值;
(4.4) 判定如下條件是否其中一項(xiàng)成立
AA.文字塊T1對(duì)應(yīng)的文字塊的排版類型為從左到右的橫排或者從右到左 的橫排時(shí),且OverlapXMin > Dxmin且DistY<DistThreshold ;
BB.文字塊T1對(duì)應(yīng)的文字塊的排版類型不是從左到右的橫排或者從右到 左的4黃排時(shí),且OverlapYMin >Dymin且DistX〈DistThreshold ;
其中Dxmin和Dymin為兩個(gè)文字塊之間水平和垂直方向上的最小近鄰重 疊系數(shù);
如果以上任何一項(xiàng)成立,那么文字塊T1與文字塊T2近鄰,將文字塊T2 從文字塊集合中刪除,添加到文字塊集合{11}中。
在實(shí)際的應(yīng)用中,可以根據(jù)實(shí)際的需要來調(diào)整Dxmin和Dymin取值的大 小。在本實(shí)施方式中,此時(shí)C1取值為1.5, C2取值為4; Dxmin和Dymin取 值都為0. 8;計(jì)算得出的DistThreshold =17.92; OverlapXMin = 9.9; DistY =6.78;經(jīng)過上面方法的計(jì)算,在圖2中"4同胞在尼遭武裝劫匪搶劫"和"其中l(wèi)名 女子被槍殺,,的兩個(gè)屬性為標(biāo)題的文字塊滿足以上條件的AA條件;因此,計(jì) 算出來的文字塊T1與文字塊T2是近鄰的。將文字塊T2從標(biāo)題塊(T)集合中 刪除,添加到文字塊集合(R〉中。
同樣在圖2中"我國(guó)鐵路最大機(jī)車釆購(gòu)項(xiàng)目簽訂"和"總金額近300億元 其中500臺(tái)機(jī)車簽訂合同"兩個(gè)屬性為標(biāo)題的文字塊滿足以上條件的AA條件; 在圖3中"送去新春的間候"和"省委省政府舉行外企新春聯(lián)歡會(huì)王儒林走訪 慰問僑界知名人士"兩個(gè)屬性為標(biāo)題的文字塊滿足以上條件的BB條件。都是 相近鄰的文字塊。
對(duì)于不屬于同一文章的文字塊,需要進(jìn)行篩選,篩選出不屬于同一文章的 文字塊,得到文章的標(biāo)題塊集合步驟如下
(5.1) 獲取最大字號(hào)的文字塊的排版類型,若為從左到右的橫排或者從右 到左的橫排時(shí),按照"從低到高,從左到右"排序文字塊集合(R〉中的文字塊; 若不是,按照"從左到右,從底到高"排序文字塊集合(R〉中的文字塊;創(chuàng)建 一篇文章,獲取文章的標(biāo)題塊集合(R)中最大字號(hào)的文字塊;
(5.2) 以最大字號(hào)的文字塊為分界點(diǎn),如果最大字號(hào)以前存在多個(gè)文字塊 那么從后往前遍歷最大字號(hào)以前的多個(gè)文字塊的字號(hào)是否相等;從后往前遍歷 的比較過程是以最大字號(hào)的文字塊前一個(gè)文字塊作為當(dāng)前塊,遍歷當(dāng)前塊和 它前一個(gè)文字塊字號(hào)是否相等;相等則將前一個(gè)塊設(shè)置為當(dāng)前塊,繼續(xù)同它的 前一個(gè)文字塊進(jìn)行比較;不等則從集合(R)中第一個(gè)文字塊到當(dāng)前塊的前一個(gè) 文字塊從集合(R)中刪除,并添加到標(biāo)題塊集合{丁}中,以保證最大字號(hào)前的文 字塊的字號(hào)大小相等;
(5.3) 以最大字號(hào)的文字塊為分界點(diǎn),如果最大字號(hào)以后存在多個(gè)文字塊 那么從前往后遍歷最大字號(hào)以后的多個(gè)文字塊的字號(hào)是否相等;從前往后遍歷 的比較過程是以最大字號(hào)的文字塊后一個(gè)文字塊作為當(dāng)前塊,遍歷當(dāng)前塊和 它后一個(gè)文字塊字號(hào)是否相等;相等則將后一個(gè)塊設(shè)置為當(dāng)前塊,繼續(xù)同它的后一個(gè)文字塊進(jìn)行比較;不等則將集合(R〉中當(dāng)前塊以后的文字塊從集合(R〉 中刪除,并添加到標(biāo)題塊集合{丁}中,以保證最大字號(hào)后的文字塊的字號(hào)大小 相等。
經(jīng)過上面的驗(yàn)證標(biāo)題塊集合是否屬于同一篇文章,在圖4中將屬性為標(biāo)題 的"補(bǔ)貼4成成本缺口依然大,,的文字塊從標(biāo)題塊集合中篩選了出來,保證了 標(biāo)題塊集合中的文字塊屬于同一篇文章的正確性。在實(shí)際的應(yīng)用過程中,可以 根據(jù)實(shí)際的情況和應(yīng)用的需要來分析是否需要執(zhí)行此步驟。
得到文章集合(A》后,從文字塊集合(S)中獲取與文章集合(A〉中匹配的文 字塊,具體操作如下
如圖5所述的"4同胞在尼遭武裝劫匪搶劫"為標(biāo)題的文章中,包括標(biāo)題 塊、副題塊以及正文塊,其正文塊是否屬于該篇文章,需要進(jìn)行判斷,同樣, 本實(shí)施例采用以下方法進(jìn)4亍
(8.1) 從文字塊集合(S)中取第一個(gè)文字塊,文字塊設(shè)為T1
(8.2) 從文章集合(A〉中依次獲取文章,設(shè)置為A,從文章A中獲取該文 章的標(biāo)題塊集合;
(8.3) 依次獲取文章標(biāo)題塊集合中的文字塊,設(shè)為T2,查看文字塊T1是 否與文字塊T2是否是近鄰;近鄰條件成立,記錄文字塊與文章的重疊度,之 后重新獲取文章,執(zhí)行(8.2)步驟;近鄰條件不成立,獲取文章標(biāo)題塊集合中 的下一個(gè)文字塊繼續(xù)同文字塊Tl比較是否為近鄰關(guān)系;文章標(biāo)題塊集合依次 遍歷結(jié)束后,重新獲取文章,執(zhí)行(8.2)步驟;文章集合遍歷結(jié)束后,執(zhí)行以 下步驟;
(8.4) 獲取與文字塊Tl重疊度最大的文章,設(shè)置該文字塊到文章對(duì)象的 正文塊集合中,并且從文字塊集合(S)中刪除;
(8.5) 從文字塊集合(S)中取下一個(gè)文字塊,設(shè)文字塊為Tl ,再次從步 驟(8,2)開始執(zhí)行,直至文字塊集合(S)中對(duì)應(yīng)的文字塊取完為止;
(8.6) 依次從文章集合中獲取每篇文章的正文塊集合,如果文章的正文塊集合包含多個(gè)文字塊時(shí)將其合并成為一個(gè)文字塊,文章正文塊集合中所有文字
塊成為合并文字塊的子塊,將此合并文字塊設(shè)置為文章的正文;如果文章的正 文塊集合只包含一塊則將該正文塊設(shè)置為文章的正文。 判斷兩個(gè)文字塊近鄰的方法如下
(9.1 )計(jì)算兩個(gè)文字塊垂直方向上的最小重疊度OverlapYMin以及水平方 向上的最小重疊度OverlapXMin;
此實(shí)施例中采用以下公式進(jìn)行計(jì)算 水平方向上的最小重疊度
OverlapXMin = (min(Xr, X2,) — max(Xl, X2) ))/min(Xl,- XI ,X2,- X2); 垂直方向上的最小重疊度
OverlapYMin = (min(Yl,, Y2,) — max(Yl, Y2)》/min(Yl,畫Yl ,Y2,畫Y2)); 以上max(a,b)表示取兩者的較大值,min(a,b)表示取兩者的較小值; (9.2 )計(jì)算兩個(gè)文字塊垂直方向上的重疊度OverlapY和水平方向上的重疊 度OverlapX;
此實(shí)施例中采用以下公式進(jìn)行計(jì)算 垂直方向上的重疊度
OverlapY = (min(Yl,, Y2,) — max(Yl, Y2) ))/( max(Yl,, Y2,)曙min(Yl, Y2)); 水平方向上的重疊度
OverlapX= (min(Xl,, X2,) — max(Xl, X2)))/(max(Xl', X2,)畫min(Xl, X2));
(9.3) 計(jì)算兩個(gè)文字塊之間近鄰的距離DistThreshold; DistThreshold = CI*AvgFontSize + f2/ C2 ;
其中Cl為兩個(gè)文字塊之間的間距系數(shù),C2為文字塊T2均分系數(shù); AvgFontSize為版面的平均字體大??;f2為T2文字塊的字體大小。在本實(shí)施 方式中此時(shí)Cl取值為2, C2取值為5;
(9.4) 計(jì)算文字塊與文字塊的重疊距離DistX和DistY; 計(jì)算文字塊與文字塊的重疊距離
18水平方向上的重疊距離DistX: DistX = max (XI, X2) - min (Xl', X2,); 垂直方向上的重疊3巨離DistY: DistY = max (Yl, Y2) - min (Yl', Y2,);
以上max(a,b)表示取兩者的較大值,min(a,b)表示取兩者的較小值; (9.5)判定如下條件是否其中一項(xiàng)成立
A. OverlapX>Dx且OverlapY>Dy;
B. OverlapXMin >Dxmin且OverlapY〉Dy;
C. OverlapYMin>Dymin且OverlapX >Dx;
D. OverlapYMin>Dymin 且 OverlapXMin >Dxmin 且 (X2'-X2)>C*AvgFontSize;
E. 文章的標(biāo)題塊集合中最大字號(hào)的文字塊的排版類型為從左到右的橫排 或者從右到左的橫排時(shí),且OverlapX >0且OverlapXMin>Dxmin且DistY< DistThreshold且Y2< Yl;;
F. 文章的標(biāo)題塊集合中最大字號(hào)的文字塊的排版類型不是從左到右的橫 排或者從右到左的橫排時(shí),且OverlapY >0且OverlapYMin>Dymin且DistX< DistThreshold;
上述中Dx和Dy為兩個(gè)文字塊之間水平和垂直方向上的近鄰重疊系數(shù), Dxmin和Dymin為兩個(gè)文字塊之間7K平和垂直方向上的最小近鄰重疊系數(shù), 其中C為字體的放大系數(shù);
如杲以上條件任何一項(xiàng)都成立,則表示兩個(gè)塊近鄰;近鄰成立的時(shí)候記錄 兩個(gè)文字塊的重疊度;文章的標(biāo)題塊集合中最大字號(hào)的文字塊的排版類型若為 從左到右的橫排或者從右到左的橫排時(shí),那么文字塊T1與文章對(duì)象的重疊度 為OverlapX;若不是,文字塊Tl與文章對(duì)象的重疊度為OverlapY。
在本實(shí)施例中,其中A條件中Dx-0.8和Dy=0.8; B條件中Dxmin=0.95, Dy =0. 2; C條件中Dymin=0. 95, Dx =0. 2; D條件中Dxmin=0. 95, Dymin=0. 95,C=6; E條件中Dx-O. 8; F條件中Dy-O. 8;經(jīng)過上面方法的計(jì)算,在圖5中, 正文塊找到最佳的匹配的文章,該文字塊成為了文章的正文。
同樣,查看文字塊集合(S)中是否存在文字塊,若存在,為該文字塊創(chuàng)建 一篇文章,并將文字塊設(shè)置為該文章的正文,將此文章添加到文章集合(A)中。
文章正文確定后,需要設(shè)置文章的其他組成信息,設(shè)置文章其他組成信息 的步驟具體如下
(10.1) 從文章集合中依次獲取文章;獲取每篇文章的標(biāo)題塊集合{11};獲 取標(biāo)題塊集合(R)中最大字號(hào)的文字塊,將此文字塊設(shè)置為文章A的標(biāo)題;
(10.2) 獲取文章標(biāo)題對(duì)應(yīng)的文字塊的排版類型,若為從左到右的橫排或者 從右到左的橫排時(shí),按照"從低到高,從左到右,,排序文字塊集合(R〉中的文 字塊;若不是從左到右的橫排或者從右到左的橫排時(shí),按照"從左到右,從 底到高"排序文字塊集合(R)中的文字塊;
(10.3 )以最大字號(hào)的文字塊為分界點(diǎn),最大字號(hào)以前的文字塊只有一個(gè)的 時(shí)候,直接將該文字塊設(shè)置為文章的引題;若存在多個(gè)文字塊的時(shí)需合并成為 一個(gè)文字塊,將多個(gè)文字塊設(shè)置為合并文字塊的子塊,并將合并文字塊設(shè)置為 文章的引題;最大字號(hào)以后的文字塊只有一個(gè)的時(shí)候,直接將該文字塊設(shè)置為 文章的副題;若存在多個(gè)文字塊的時(shí)需合并成為一個(gè)文字塊,將多個(gè)文字塊設(shè) 置為合并文字塊的子塊,并將合并文字塊設(shè)置為文章的副題;
(10.4)文章標(biāo)題對(duì)應(yīng)的文字塊的排版類型為豎排無方向的文章,驗(yàn)證文章 的引題,副題是否需要互換。
驗(yàn)證文章的引題,副題是否需要互換按照如下標(biāo)準(zhǔn)進(jìn)行 文章標(biāo)題對(duì)應(yīng)的文字塊的排版類型為豎排無方向時(shí),若以下任何一個(gè)條件 成立的話,文章的引題,副題需要互換;文章的引題成為文章的副題,副題成 為文章的引題;
(A)獲取文章引題,副題對(duì)應(yīng)文字塊的排版類型;如果任一文字塊的排版 類型為"從右到左的豎排",那么文章的引題和副題互換;(B) 設(shè)文章的正文對(duì)應(yīng)的文字塊為Tl,左上角坐標(biāo)為(X1,Y1),右下角 坐標(biāo)為(X1,,Y1,);標(biāo)題對(duì)應(yīng)的文字塊為T2,左上角坐標(biāo)為(X2,Y2),右下角 坐標(biāo)為(X2,,Y2,);若(X1 +乂1,)<(乂2 + 乂2,)成立,那么文章的引題和副題互換;
(C) 設(shè)文章存在引題,對(duì)應(yīng)的文字塊為Tl,左上角坐標(biāo)為(X1,Y1),右 下角坐標(biāo)為(X1,,Y1,);文章的標(biāo)題對(duì)應(yīng)的文字塊為T2 ,左上角坐標(biāo)為
(X2,Y2),右下角坐標(biāo)為(X2,,Y2,);若Y1〉Y2成立,那么文章的引題和副 題互換;
(D)設(shè)文章存在副題,對(duì)應(yīng)的文字塊為T1,左上角坐標(biāo)為(X1,Y1),右 下角坐標(biāo)為(X1,,Y1,);文章的標(biāo)題對(duì)應(yīng)的文字塊為T2 ,左上角坐標(biāo)為 (X2,Y2),右下角坐標(biāo)為(X2,,Y2,);若Y1〈Y2成立,那么文章的引題和副 題互換。
在圖3和圖6中,文章標(biāo)題對(duì)應(yīng)的文字塊的排版類型為豎排無方向,經(jīng)過
上面的計(jì)算,實(shí)現(xiàn)了引題和副題的互換,保證了提取的文章標(biāo)題的正確性。 本發(fā)明通過自動(dòng)成文的方法,找到屬于同一篇文章的引題,標(biāo)題,副題以
及正文等文字塊,能夠還原原有的文章內(nèi)容之間上下文關(guān)系。
同樣,本發(fā)明還提供一種版式文件自動(dòng)成文系統(tǒng),該成文系統(tǒng)包括 文字塊集合生成器,用于從版式文件中生成文字塊集合; 標(biāo)題塊集合篩選器,用于從文字塊集合中篩選出屬性為標(biāo)題的文字塊; 文章集合生成器,用于得到文章集合,所述文章集合按文字塊的信息,對(duì)
標(biāo)題塊集合進(jìn)行比較、聚類得到;
文章正文生成器,用于從文字塊集合中獲取與文章集合中匹配的文字塊,
并將此設(shè)置為文章正文;
文章其他組成信息生成器,用于從文章集合中獲取文章其他信息,并進(jìn)行設(shè)置。
所述文章其他信息,包括但不限于引題,標(biāo)題,副題中的一種或者全部
信息進(jìn)行匹配以及是否近鄰的操作與本發(fā)明方法實(shí)施例的實(shí)現(xiàn)方式是——對(duì) 應(yīng)的,在》匕不再重復(fù)名又述。
通過本發(fā)明提供的技術(shù)方案,能夠找到屬于同一篇文章的引題,標(biāo)題,副 題以及正文等文字塊,能夠還原原有的文章內(nèi)容之間上下文關(guān)系,另外,還可以 提高標(biāo)引人員的工作效率,節(jié)省數(shù)據(jù)加工成本。
明的精神和范圍。這樣,倘若本發(fā)明的這些修改和變型屬于本發(fā)明權(quán)利要求及 其等同技術(shù)的范圍之內(nèi),則本發(fā)明也意圖包含這些改動(dòng)和變型在內(nèi)。
權(quán)利要求
1、一種版式文件自動(dòng)成文的方法,其特征在于,該方法包括A從文字塊集合{S}中篩選出標(biāo)題塊集合{T},根據(jù)所述標(biāo)題塊集合{T}得到文章集合{A};B從文字塊集合{S}中獲取與文章集合{A}中匹配的文字塊,設(shè)置為文章正文;C獲取文章集合{A}中的每篇文章,設(shè)置所述文章的其他組成信息。
2、 如權(quán)利要求1所述的版式文件自動(dòng)成文方法,其特征在于步驟A具 體為Al:從版式文件中獲取的文字塊集合(S)中篩選出文字塊屬性為標(biāo)題的文 字塊,設(shè)置為標(biāo)題塊集合{丁},并將其從原集合(S)中去除;A2:創(chuàng)建文章集合(A);按文字塊的信息,對(duì)標(biāo)題塊集合(T)進(jìn)行比較、 聚類;篩選出屬于同一文章的標(biāo)題塊,得到文字塊集合;驗(yàn)證篩選文字塊集合 中的文字塊是否屬于同一篇文章;創(chuàng)建相應(yīng)的文章,將文字塊集合^:置為文章 的標(biāo)題塊集合;將創(chuàng)建的文章添加到文章集合(A〉中;最后得到文章集合(A〉。
3、 如權(quán)利要求2所述的版式文件自動(dòng)成文方法,其特征在于按文字塊 的信息,對(duì)標(biāo)題塊集合(T)進(jìn)行比較、聚類的具體實(shí)現(xiàn)方法為A21:創(chuàng)建一個(gè)新的文字塊集合{11},選取標(biāo)題塊集合{丁}中第一個(gè)文字塊, 設(shè)為Tl,將文字塊T1添加到集合{11}中,并從標(biāo)題塊集合{丁}中刪除;A22:以文字塊T1為依據(jù),對(duì)標(biāo)題塊集合{丁}進(jìn)行遍歷,篩選出標(biāo)題塊集 合(T)中與文字塊T1的近鄰的文字塊;篩選出來的文字塊放置在文字塊集合(R〉 中,并從標(biāo)題塊集合{丁}中刪除篩選出來的文字塊;依次獲取篩選出來的文字 塊,設(shè)置為Tl,再次執(zhí)行本步驟,直至文字塊集合(R》中的文字塊取完為止; 最終得到文字塊集合(R);A23:創(chuàng)建一篇文章;篩選文字塊集合(R),篩選出不屬于同一篇文章的文字塊并重新添加到標(biāo)題塊集合{丁}中,并從文字塊集合(R)中刪除;檢索完之 后,將該文字塊集合(R)設(shè)置成為文章的標(biāo)題塊集合;將創(chuàng)建的文章添加到文 章集合(A)中;A24:重復(fù)步驟A21和A23;直至標(biāo)題塊集合{丁}中文字塊取完為止;最 后得到文章的集合(A)。
4、如權(quán)利要求3所述的版式文件自動(dòng)成文方法,其特征在于判斷兩個(gè) 文字塊近鄰的操作為設(shè)取到的文字塊T1的左上角坐標(biāo)為(X1,Y1),右下角坐標(biāo)為(X1,,Y1,); 文字塊T1的寬度為Wl-Xl,-Xl,文字塊T1的高度H卜Y1,-Y1 ,文字塊T1 的字體大小為fl ;被遍歷到的文字塊T2左上角坐標(biāo)為(X2,Y2),右下角坐標(biāo)為(X2,,Y2,); 文字塊T2的寬度為W2-X2,-X2 ,文字塊T2的高度112= Y2,-Y2 ,文字塊 T2的字體大小為f2 ;版面平均字體大小為所有的文字塊的字號(hào)的平均值,設(shè)置為AvgFontSize; 然后進(jìn)行如下操作(4.1) 通過如下公式計(jì)算文字塊Tl與文字塊T2緊鄰的有效距離 DistThreshold = Cl*AvgFontSize + max(fl ,f2)/C2;其中Cl為兩個(gè)文字塊之間的間距系數(shù),C2為文字塊的均分系數(shù);(4.2) 計(jì)算文字塊T1與文字塊T2最小重疊度 水平方向上的最小重疊度OverlapXMin = (min(Xl,,X2,)-max(Xl,X2)))/min(Xr國(guó)Xl ,X2,墨X2); 垂直方向上的最小重疊度OverlapYMin = (min(Yl,, Y2,) — max(Yl, Y2) ))/min(Yl,- Yl ,Y2,- Y2》;(4.3) 計(jì)算文字塊與文字塊的重疊距離 水平方向上的重疊距離DistX:DistX - max (Xl, X2) - min (XI,, X2,);垂直方向上的重疊距離DistY: DistY = max (Yl, Y2)國(guó)min (Yl ,, Y2,);以上max(a,b)表示取兩者的較大值,min(a,b)表示取兩者的較小值; (4.4)判定如下條件是否其中一項(xiàng)成立AA.文字塊T1對(duì)應(yīng)的文字塊的排版類型為從左到右的橫排或者從右到左 的4黃排時(shí),且OverlapXMin 〉Dxmin且DistY〈DistThreshold ;BB.文字塊Tl對(duì)應(yīng)的文字塊的排版類型不是從左到右的橫排或者從右到 左的橫排時(shí),且OverlapYMin 〉Dymin且DistX〈DistThreshold ;其中Dxmin和Dymin為兩個(gè)文字塊之間水平和垂直方向上的最小近鄰重疊系數(shù);如果以上任何一項(xiàng)成立,那么文字塊T1與文字塊T2近鄰,將文字塊T2 從標(biāo)題塊集合(T〉中刪除,添加到文字塊集合(R〉中。
5、如權(quán)利要求3所述的版式文件自動(dòng)成文方法,其特征在于篩選出不 屬于同一文章的文字塊,得到文章的標(biāo)題塊集合步驟如下(5.1) 獲取最大字號(hào)的文字塊的排版類型,若為從左到右的橫排或者從右 到左的橫排時(shí),按照"從低到高,從左到右"排序文字塊集合(R)中的文字塊; 若不是,按照"從左到右,從低到高"排序文字塊集合{11}中的文字塊;獲 取文章的標(biāo)題塊集合{11}中最大字號(hào)的文字塊;(5.2) 以最大字號(hào)的文字塊為分界點(diǎn),如果最大字號(hào)以前存在多個(gè)文字塊 那么從后往前遍歷最大字號(hào)以前的多個(gè)文字塊的字號(hào)是否相等;從后往前遍歷 的比較過程是以最大字號(hào)的文字塊前一個(gè)文字塊作為當(dāng)前塊,遍歷當(dāng)前塊和 它前一個(gè)文字塊字號(hào)是否相等;相等則將前一個(gè)塊設(shè)置為當(dāng)前塊,繼續(xù)同它的 前一個(gè)文字塊進(jìn)行比較;不等則從集合{11}中第一個(gè)文字塊到當(dāng)前塊的前一個(gè) 文字塊從集合(R〉中刪除,并添加到標(biāo)題塊集合{丁}中,以保證最大字號(hào)前的文 字塊的字號(hào)大小相等; '(5.3) 以最大字號(hào)的文字塊為分界點(diǎn),如果最大字號(hào)以后存在多個(gè)文字塊那么從前往后遍歷最大字號(hào)以后的多個(gè)文字塊的字號(hào)是否相等;從前往后遍歷 的比較過程是以最大字號(hào)的文字塊后一個(gè)文字塊作為當(dāng)前塊,遍歷當(dāng)前塊和 它后一個(gè)文字塊字號(hào)是否相等;相等則將后一個(gè)塊設(shè)置為當(dāng)前塊,繼續(xù)同它的 后一個(gè)文字塊進(jìn)行比較;不等則將集合(R)中當(dāng)前塊以后的文字塊從集合(R》 中刪除,并添加到標(biāo)題塊集合(T)中,以保證最大字號(hào)后的文字塊的字號(hào)大小 相等。
6、 如權(quán)利要求1所述的版式文件自動(dòng)成文方法,其特征在于步驟B具 體操作為Bl:將文字塊集合(S)中的每一個(gè)文字塊與文章集合(A)進(jìn)行聚類比較, 找到能跟文章集合(A)中文章匹配的文字塊,設(shè)置該文字塊為該文章的正文, 并從文字塊集合(S)中刪除該文字塊;B2:查看文字塊集合(S)中是否存在文字塊,若存在,為該文字塊創(chuàng)建一篇 文章,并將文字塊設(shè)置為該文章的正文,將此文章添加到文章集合(A)中。
7、 如權(quán)利要求6所述的版式文件自動(dòng)成文方法,其特征在于,所述其他 組成信息包括但不限于引題,標(biāo)題,副題中的一種或者全部信息。
8、 如權(quán)利要求6-7任一所述的版式文件自動(dòng)成文方法,其特征在于從 文字塊集合(S)中獲取與文章集合(A〉中匹配的文字塊,具體包括以下步驟(8.1) 從文字塊集合(S〉中取第一個(gè)文字塊,文字塊設(shè)為Tl(8.2) 從文章集合(A)中依次獲取文章,設(shè)置為A,從文章A中獲取該文 章的標(biāo)題塊集合;(8.3) 依次獲取文章標(biāo)題塊集合中的文字塊,設(shè)為T2,查看文字塊T1是 否與文字塊T2是否是近鄰;近鄰條件成立,記錄文字塊與文章的重疊度,之 后重新獲取文章,執(zhí)行(8.2)步驟;近鄰條件不成立,獲取文章標(biāo)題塊集合中 的下一個(gè)文字塊繼續(xù)同文字塊Tl比較是否為近鄰關(guān)系;如果文章標(biāo)題塊集合 依次遍歷結(jié)束后,重新獲取文章,執(zhí)行(8.2)步驟;文章集合遍歷結(jié)束后,執(zhí) 行以下步驟;(8.4) 獲取與文字塊Tl重疊度最大的文章,設(shè)置該文字塊到文章對(duì)象的 正文塊集合中,并且從文字塊集合(S)中刪除;(8.5) 從文字塊集合(S)中取下一個(gè)文字塊,設(shè)文字塊為Tl ,再次從步 驟(8.2)開始執(zhí)行,直至文字塊集合(S)中對(duì)應(yīng)的文字塊取完為止;(8.6) 依次從文章集合中獲取每篇文章的正文塊集合,如果文章的正文塊 集合包含多個(gè)文字塊時(shí)將其合并成為一個(gè)文字塊,文章正文塊集合中所有文字 塊成為合并文字塊的子塊,將此合并文字塊設(shè)置為文章的正文;如果文章的正 文塊集合只包含一塊則將該正文塊設(shè)置為文章的正文。
9、如權(quán)利要求8所述的版式文件自動(dòng)成文方法,其特征在于,判斷兩個(gè) 文字塊近鄰的方法如下(9.1) 利用權(quán)利4中的4.2步驟計(jì)算兩個(gè)文字塊垂直方向上的最小重疊度 OverlapYMin以及水平方向上的最小重疊度OverlapXMin;(9.2) 計(jì)算文字塊T1與文字塊T2重疊度 垂直方向上的重疊度OverlapY = (min(Yl,, Y2,) — max(Yl, Y2) ))/( max(Yl,, Y2,)- min(Yl, Y2)); 水平方向上的重疊度OverlapX= (min(X1,, X2,) — max(Xl, X2)))/(max(X1,, X2,)- min(Xl, X2)); 以上max(a,b)表示取兩者的較大值,min(a,b)表示取兩者的較小值; (9.3 )計(jì)算文字塊Tl與文字塊T2緊鄰的有效距離DistThreshold: DistThreshold = Cl*AvgFontSize + f2/ C2 ;其中Cl為兩個(gè)文字塊之間的間距系數(shù),C2為文字塊T2均分系數(shù); AvgFontSize為版面的平均字體大?。籪2為T2文字塊的字體大??;(9.4) 利用權(quán)利4中的4.3步驟中計(jì)算文字塊與文字塊的重疊距離DistX 和DistY;(9.5) 判定如下條件是否其中一項(xiàng)成立 A. OverlapX>Dx且OverlapY>Dy;B. OverlapXMin 〉Dxmin且OverlapY〉Dy;C. OverlapYMin〉Dymin且OverlapX 〉Dx;D. OverlapYMin〉Dymin 且 OverlapXMin >Dxmin 且 (X2,-X2)>C*AvgFontSize;E. 文章的標(biāo)題塊集合中最大字號(hào)的文字塊的排版類型為從左到右的橫排 或者從右到左的橫排時(shí),且OverlapX >0且OverlapXMin>Dxmin且DistY< DistThreshold且Y2< Yl;F. 文章的標(biāo)題塊集合中最大字號(hào)的文字塊的排版類型不是從左到右的橫 排或者從右到左的橫排時(shí),且OverlapY >0且OverlapYMin>Dymin且DistX< DistThreshold;上述中Dx和Dy為兩個(gè)文字塊之間水平和垂直方向上的近鄰重疊系數(shù), Dxmin和Dymin為兩個(gè)文字塊之間水平和垂直方向上的最小近鄰重疊系數(shù), 其中C為字體的放大系數(shù);如果以上條件任何一項(xiàng)都成立,則表示兩個(gè)塊近鄰;近鄰成立的時(shí)候記錄 兩個(gè)文字塊的重疊度;文章的標(biāo)題塊集合中最大字號(hào)的文字塊的排版類型若為 從左到右的橫排或者從右到左的橫排時(shí),那么文字塊T1與文章對(duì)象的重疊度 為OverlapX;若不是,文字塊Tl與文章對(duì)象的重疊度為OverlapY。
10、如權(quán)利要求9所述的版式文件自動(dòng)成文方法,其特征在于設(shè)置文章 其他組成信息的步驟具體如下(10.1) 從文章集合中依次獲取文章;獲取每篇文章的標(biāo)題塊集合(R);獲 取標(biāo)題塊集合(R)中最大字號(hào)的文字塊,將此文字塊i殳置為文章A的標(biāo)題;(10.2) 獲取文章標(biāo)題對(duì)應(yīng)的文字塊的排版類型,若為從左到右的橫排或者 從右到左的橫排時(shí),按照"從低到高,從左到右"排序文字塊集合(R)中的文 字塊;若不是從左到右的橫排或者從右到左的橫排時(shí),按照"從左到右,從 低到高"排序文字塊集合(R)中的文字塊;(10.3 )以最大字號(hào)的文字塊為分界點(diǎn),最大字號(hào)以前的文字塊只有一個(gè)的時(shí)候,直接將該文字塊設(shè)置為文章的引題;若存在多個(gè)文字塊的時(shí)需合并成為 一個(gè)文字塊,將多個(gè)文字塊設(shè)置為合并文字塊的子塊,并將合并文字塊設(shè)置為 文章的引題;最大字號(hào)以后的文字塊只有一個(gè)的時(shí)候,直接將該文字塊設(shè)置為 文章的副題;若存在多個(gè)文字塊的時(shí)需合并成為一個(gè)文字塊,將多個(gè)文字塊i殳 置為合并文字塊的子塊,并將合并文字塊設(shè)置為文章的副題;(10.4)文章標(biāo)題對(duì)應(yīng)的文字塊的排版類型為豎排無方向的文章,驗(yàn)證文章 的引題,副題是否需要互換。
11、 如權(quán)利要求10所述的版式文件自動(dòng)成文方法,其特征在于驗(yàn)證文 章的引題,副題是否需要互換按照如下標(biāo)準(zhǔn)進(jìn)行文章標(biāo)題對(duì)應(yīng)的文字塊的排版類型為豎排無方向時(shí),若以下任何一個(gè)條件 成立的話,文章的引題,副題需要互換;文章的引題成為文章的副題,副題成 為文章的引題;(A) 獲取文章引題,副題對(duì)應(yīng)文字塊的排版類型;如果任一文字塊的排版 類型為"從右到左的豎排",那么文章的引題和副題互換;(B) 設(shè)文章的正文對(duì)應(yīng)的文字塊為Tl,左上角坐標(biāo)為(X1,Y1),右下角 坐標(biāo)為(X1,,Y1,);標(biāo)題對(duì)應(yīng)的文字塊為T2,左上角坐標(biāo)為(X2,Y2),右下角 坐標(biāo)為(X2,,Y2,);若(X1 +乂1,)<(乂2 + 乂2,)成立,那么文章的引題和副題互換;(C) 設(shè)文章存在引題,對(duì)應(yīng)的文字塊為Tl,左上角坐標(biāo)為(X1,Y1),右 下角坐標(biāo)為(X1,,Y1,);文章的標(biāo)題對(duì)應(yīng)的文字塊為T2 ,左上角坐標(biāo)為(X2,Y2),右下角坐標(biāo)為(X2,,Y2,);若Y1〉Y2成立,那么文章的引題和副 題互換;(D) 設(shè)文章存在副題,對(duì)應(yīng)的文字塊為Tl,左上角坐標(biāo)為(X1,Y1),右 下角坐標(biāo)為(X1,,Y1,);文章的標(biāo)題對(duì)應(yīng)的文字塊為T2 ,左上角坐標(biāo)為(X2,Y2),右下角坐標(biāo)為(X2,,Y2,);若YKY2成立,那么文章的引題和副 題互換。
12、 一種版式文件自動(dòng)成文系統(tǒng),其特征在于,該成文系統(tǒng)包括文字塊集合生成器,用于從版式文件中生成文字塊集合; 標(biāo)題塊集合篩選器,用于從文字塊集合中篩選出屬性為標(biāo)題的文字塊; 文章集合生成器,用于得到文章集合,所述文章集合按文字塊的信息,對(duì)標(biāo)題塊集合進(jìn)行比較、聚類得到;文章正文生成器,用于從文字塊集合中獲取與文章集合中匹配的文字塊,并將此設(shè)置為文章正文;文章其他組成信息生成器,用于從文章集合中獲取文章其他信息,并進(jìn)行設(shè)置。
13、如權(quán)利要求11所述的版式文件自動(dòng)成文系統(tǒng),其特征在于,所述文 章其他信息,包括但不限于引題,標(biāo)題,副題中的一種或者全部信息。
全文摘要
本發(fā)明公開了一種版式文件中自動(dòng)成文的方法及系統(tǒng),用于進(jìn)行文字塊的自動(dòng)類型識(shí)別,還原版面文章的引題,標(biāo)題,副題以及正文等信息,本發(fā)明提供的自動(dòng)成文方法包括從文字塊集合{S}中篩選出標(biāo)題塊集合{T},根據(jù)所述標(biāo)題塊集合{T}得到文章集合{A};從文字塊集合{S}中獲取與文章集合{A}中匹配的文字塊,設(shè)置為文章正文;獲取文章集合{A}中的每篇文章,設(shè)置所述文章的其他組成信息。采用本發(fā)明,可以提高標(biāo)引人員的工作效率,節(jié)省數(shù)據(jù)加工成本。
文檔編號(hào)G06F17/22GK101441621SQ20081022730
公開日2009年5月27日 申請(qǐng)日期2008年11月26日 優(yōu)先權(quán)日2008年11月26日
發(fā)明者徐劍波, 輝 王, 寧 董 申請(qǐng)人:北大方正集團(tuán)有限公司;北京方正阿帕比技術(shù)有限公司