專利名稱:一種基于多邊形檢測的漫畫圖像版面理解系統(tǒng)和方法
技術(shù)領(lǐng)域:
本發(fā)明屬于文檔處理與計算機視覺領(lǐng)域,涉及一種基于多邊形檢測的漫畫圖像版面理解系統(tǒng)和方法。
背景技術(shù):
隨著電子書,電子報紙期刊等數(shù)字出版物的普及與發(fā)展,為當(dāng)前數(shù)字出版相關(guān)技術(shù)提出了許多應(yīng)用需求和挑戰(zhàn)。漫畫是一類特殊的出版物,通常由簡單幽默的畫面組和少量文字組成,深受不同國界不同年齡段的閱讀者喜愛,并且越來越多的讀者開始在數(shù)字終端上閱讀電子漫畫文檔。目前這類電子漫畫文檔通常由紙質(zhì)漫畫書籍逐頁掃描得到,直接以圖像文檔格式或者將圖像轉(zhuǎn)化為PDF文檔格式進行存儲和顯示。一幅漫畫圖像可以被分成若干個獨立的子圖像(每個多邊形邊框以及包圍的部 分)。在漫畫制作領(lǐng)域,這些獨立的子圖像常常被稱為“分鏡”,由兩部分組成1)角色的畫面展示,對應(yīng)于子圖像中的圖像內(nèi)容部分;2)角色的語言展示即對白,即子圖像中的字符塊部分。目前漫畫書籍在創(chuàng)作時是以普通紙質(zhì)書籍的頁面大小進行排版設(shè)計的。這樣導(dǎo)致了一個問題,當(dāng)用戶在屏幕較小的終端(例如智能手機)上閱讀對應(yīng)的漫畫圖像時,無法完整清晰地觀看整個漫畫圖像,需要上下左右來回拖動畫面,閱讀體驗非常差,這一問題嚴(yán)重制約了漫畫產(chǎn)業(yè)數(shù)字化進程。為了克服上述的問題,相關(guān)的解決方案在文獻“M. Yamada et al. ComicImageDecomposition for Reading Comics on Cellular Phones.1EEE Trans.oninformation and systems, 2004”中第一次被提出,該方案是將漫畫圖像預(yù)先分割成一個個分鏡,在顯示時按閱讀順序依次顯示各個分鏡。針對第二種解決方案,一些研究人員對使用計算機自動完成上述任務(wù)(下文簡稱為漫畫圖像版面理解)進行了嘗試,上述文獻在提出第二種方案的同時,還提出了一種對手工分割得到的分鏡進行分鏡閱讀順序檢測的算法。然而,該方法局限性在于必須對于漫畫版面進行手動的分割然后才能自動辨識分鏡的閱讀順序,對于目前大量的漫畫書籍和圖像文件,手工完成上述工作費時費力。文獻“T. Tanaka et al. Layout analysis of tree-structuredscene frames in comic images.1JCAI,2007”首次提出了一種將漫畫圖像分割成分鏡的方法(下文簡稱為分鏡分割方法)。該方法的基本假設(shè)是漫畫總是能夠用水平線和豎直線分割成一個個分鏡(斜線可以按照斜率分為水平和豎直兩種),按照分割的次序,漫畫可以表示成一個樹狀的結(jié)構(gòu),其中根節(jié)點就代表整幅漫畫,葉子節(jié)點就表示各個分鏡,中間節(jié)點表示分割的方式。該文獻同時提出了一種類似霍夫變換的分割線檢測方法,并且對T字型分割線進行了特殊的處理。不難看出,這種方法的局限性較大,只能處理特定版式的漫畫圖像,對于分鏡之間存在粘連的復(fù)雜情況難以進行處理。文獻“C. Ponsard et al. Enhancing the accessibility for allofdigital comic books, www. eminds. hc1-rg. com, 2009” 提出了一種基于分水嶺分割算法的分鏡分割算法,主要思想是將漫畫圖像轉(zhuǎn)為灰度圖像進行二值化,然后對得到的前景圖像進行分水嶺分割,對分割得到的區(qū)域,去掉較小的,合并重疊較大的,然后得到分鏡的分割結(jié)果。然而,該方法同樣無法處理分鏡之間有粘連的復(fù)雜漫畫圖像。可見,目前的漫畫版面分析方法大多數(shù)方法只能處理較為簡單的漫畫版面,有些甚至必須依賴手工處理,而沒有一種高效、通用的漫畫圖像版面理解方法。
發(fā)明內(nèi)容
為了實現(xiàn)高效通用的漫畫版面分析,本發(fā)明提出一種基于多邊形檢測的漫畫圖像理解方法,該方法可以自動識別出組成分鏡邊框的多邊形(大多數(shù)為四邊形),并且根據(jù)識別出的多邊形之間的幾何位置關(guān)系判斷分鏡之間的閱讀順序,從而完成漫畫版面理解。本發(fā)明可以提供一種高效通用的漫畫版面分析方法,可以有效地處理較為復(fù)雜的漫畫版面。本發(fā)明所述的漫畫內(nèi)容主要是由漫畫書逐頁掃描得到的漫畫圖像或由漫畫出版商提供的圖像格式的漫畫包。本發(fā)明提供的技術(shù)方案如下一種基于多邊形檢測的漫畫圖像版面理解系統(tǒng)(如圖1),包括直線段檢測模塊、多邊形檢測模塊;其中,所述直線段檢測模塊,用于識別漫畫圖像中的直線段,并且記錄這些直線段的位
置信息;所述多邊形檢測模塊,根據(jù)直線段檢測模塊檢測的結(jié)果,對直線段進行拼接,識別出完整的多邊形,并且用識別出的多邊形作為對應(yīng)分鏡的位置信息;該模塊和直線段檢測模塊共同完成分鏡的識別與提取。所述的漫畫圖像版面理解系統(tǒng),其特征是,該系統(tǒng)還包括閱讀順序檢測模塊,該模塊以分鏡的識別與提取的結(jié)果作為輸入,即用被識別分割出的分鏡作為輸入,根據(jù)多邊形之間的幾何位置關(guān)系,將這些多邊形代表的分鏡進行排序,然后將排序后的分鏡連同各分鏡的位置信息一同輸入到具有版式信息的漫畫文件中去,從而實現(xiàn)漫畫版面的自動理解。所述的漫畫圖像版面理解系統(tǒng),其特征是,所述系統(tǒng)還包括多邊形驗證模塊,如果用戶認為漫畫版面分割結(jié)果不理想,或者需要進行結(jié)果的修正,用戶使用該模塊進行修正。所述的漫畫圖像版面理解系統(tǒng),其特征是,所述多邊形驗證模塊,可以通過設(shè)定規(guī)則篩選識別出的分鏡從而實現(xiàn)自動的多邊形驗證。所述的漫畫圖像版面理解系統(tǒng),其特征是,所述多邊形驗證模塊,計算在分鏡邊框上的被檢測直線段長度之和與分鏡邊框周長的比例,如果大于50%,則通過篩選,否則未通過。本發(fā)明同時提供一種基于多邊形檢測的漫畫圖像版面理解方法(流程參見圖2),包括如下步驟(I)漫畫圖像輸入用戶首先獲得圖像格式的漫畫電子文件(例如jpg、png等格式的文件),這些文件是由紙質(zhì)漫畫逐頁掃描得到或是由漫畫出版商提供的圖像格式的漫畫包(將漫畫圖像逐頁編號并壓縮成為.zip,,rar等格式的壓縮文件包),并且用戶將這些漫畫圖像逐頁輸入系統(tǒng);(2)直線段檢測檢測出漫畫圖像中的直線段,這些直線段的大部分都是組成漫畫圖像中分鏡邊框的直線段;(3)多邊形檢測(直線拼接):在得到組成分鏡邊框的直線段之后,將這些直線段拼接成為完整的分鏡邊框;(4)分鏡閱讀順序檢測根據(jù)識別出的多邊形直線的幾何位置關(guān)系對分鏡進行排序;(5)返回版面理解結(jié)果將版面理解與分析得到的多邊形的幾何位置以及多邊形之間的閱讀順序作為版式信息存儲到漫畫文件中,并且通過閱讀終端展示給用戶。所述的漫畫圖像版面理解方法,其特征是,步驟(3)的實現(xiàn)方法如下a)第一輪直線段聚合去除直線檢測階段得到的冗余直線段,從而減少計算量;b)第二輪直線段聚合將屬于同一個分鏡邊框的直線段聚合,形成分鏡的包圍框;c)后處理由于有些漫畫的分鏡布局較為復(fù)雜,甚至產(chǎn)生粘連,因此由第二輪直線聚合產(chǎn)生的分鏡可能是破碎不完整的,因此,后處理階段將這些破碎的分鏡邊框通過一定的規(guī)則進行補全。本發(fā)明的效果在于實現(xiàn)了一種基于多邊形檢測的漫畫版面理解方法。通過對于用戶輸入的漫畫圖像進行自動分析,從而獲取漫畫版面中的分鏡,并且根據(jù)識別的分鏡之間的幾何位置關(guān)系判定其閱讀順序,從而使得漫畫圖像能更好地在移動設(shè)備上閱讀。該方法能夠自動理解漫畫版面,解決了目前方法不能處理復(fù)雜布局版面的問題,可以提升處理效率和用戶體驗。
圖1為本發(fā)明提供的系統(tǒng)結(jié)構(gòu)圖;圖2為本發(fā)明提供的最佳實施例的流程圖;圖3為具體實施方式
中兩條直線段在平行方向有交疊的示意4為后處理過程的示意5為具體實施例的輸入漫畫圖像圖6為漫畫圖像直線檢測的結(jié)果示意7為兩輪直線聚合之后分鏡識別的初步結(jié)果示意8為分鏡識別的最終結(jié)果示意9為漫畫圖像版面理解的最終結(jié)果示意圖
具體實施例方式下面針對將漫畫圖像作為漫畫版面理解系統(tǒng)的輸入的應(yīng)用場景,介紹漫畫版面自動理解的的具體實施流程。這里的漫畫圖像可以是由漫畫書籍進行逐頁掃描得到,也可以是漫畫出版商提供的漫畫圖像包(漫畫包是將漫畫圖像逐頁編號并壓縮成為.zip,. rar等格式的壓縮文件包,將該壓縮文件解壓之后即可獲得逐頁的漫畫圖像)。直線段檢測模塊采用了基于特征值分析的直線段檢測方法。用戶U的設(shè)備(個人電腦、手持設(shè)備等)需要先安裝實現(xiàn)本發(fā)明功能的客戶端軟件,安裝完畢后,本發(fā)明的功能模塊將會被部署到該客戶端軟件中去。用戶U在獲得漫畫圖像之后,便可以將其作為輸入,在本客戶端軟件中進行漫畫圖像的版面理解工作。本實施例的總體流程是用戶U在獲取漫畫圖像文件之后,將漫畫圖像依次輸入系統(tǒng),并且發(fā)出漫畫版面分析的請求。直線檢測模塊響應(yīng)該請求,并且識別漫畫圖像中的直線段,這些直線段主要是組成分鏡邊框的直線段。然后,直線段識別結(jié)果被發(fā)送到多邊形檢測(直線拼接)模塊。多邊形檢測模塊將被識別的直線段進行預(yù)處理,去除冗余的直線段進行拼接,得到由多邊形代表的分鏡。用戶U若選擇啟用多邊形驗證模塊,則多邊形檢測結(jié)果會在應(yīng)用程序界面中展示給用戶U。用戶U可以查看并且可以對多邊形檢測的結(jié)果進行篩選,并且發(fā)送給閱讀順序檢測模塊。根據(jù)分鏡之間的相對幾何位置進行排序,最后將漫畫圖像連同分鏡的位置以及閱讀順序返回給用戶U。若用戶U為選擇啟用多邊形驗證模塊,多邊形檢測的結(jié)果將直接發(fā)送給閱讀順序檢測模塊進行排序,最后將漫畫圖像連同其版式信息(包括分鏡位置以及閱讀順序)返回給用戶U。本實施例的具體步驟為(I)直線段檢測 用戶U獲取漫畫圖像文檔之后,將其輸入已安裝好的實現(xiàn)本發(fā)明的客戶端軟件中,該軟件會自動檢測圖像文檔中的直線段。具體地,用直線段的左端點坐標(biāo)(Xl,yi)和右端點坐標(biāo)(x2,y;i)來表示。坐標(biāo)空間定義為漫畫圖像頁面左上角點作為坐標(biāo)原點,X軸方向從左到右增加,Y軸方向從上到下增加。(2)多邊形檢測(直線段拼接)得到被識別出的直線段之后,多邊形檢測模塊對于這些直線段進行拼接,成為完整的多邊形,這些多邊形即代表版面中的分鏡。多邊形檢測主要由以下步驟組成首先,由直線檢測模塊檢測出的直線包含大量的冗余的直線段,占所有直線比例非常高,因此需要去除冗余的直線段。去除冗余直線段的方法是使用直線段聚合的方法,即將一些直線段合成為一條直線段。具體實現(xiàn)方法是當(dāng)兩條互相平行的直線段在平行方向有交疊(兩條直線I1, I2互相平行,將I1的兩個端點垂直投影至I2,如果兩個端點至少有一個在I2上,則稱這兩條直線在平行方向有交疊,如圖3所示),并且之間的距離小于某個閾值時,兩條直線段之間的連通性為True ;否則為False。當(dāng)所有直線段之間的連通性都被定義之后,使用連通分量搜索(即將直線段集合分成若干子集,每個子集中的任意兩條直線段都能通過該集合中的O條或多條線段構(gòu)成一條連通的路徑),從而將所有的直線段進行聚合。具體的做法是設(shè)定一個變量η并將其初始值設(shè)為1,為直線段標(biāo)號建立標(biāo)記數(shù)組,并將初始值置為O。遍歷直線段集合,若某線段的標(biāo)記數(shù)組值為0,則將此線段的標(biāo)記值設(shè)置為η,并將所有和這條直線段連通性為True的直線段放入到一個容器中去,然后每次從這個容器中取出一條直線段,將其標(biāo)號值設(shè)為n,并且將所有標(biāo)號值為O且和這條直線段連通性為True的直線段放入該容器中;直到該容器中沒有任何的直線段,將η值加I繼續(xù)尋找標(biāo)記數(shù)組值為O的直線段,直到遍歷直線段集合結(jié)束。直線段聚合結(jié)束之后,每一類都由一條直線段代替,因此通過第一輪直線段的聚合減少了直線段的數(shù)目。然后,對于已經(jīng)去除冗余的直線段進行第二次聚合,這一次聚合的目的是將直線段拼接成為矩形。第二輪聚合同樣使用連通分量搜索的方式,但是直線段連通性的定義發(fā)生了變化。對于任意兩條直線段(ΑΒ,⑶),他們端點之間的距離(即AC,AD,BC,BD)其中的任意一個小于某個較小閾值,則兩條直線段之間的連通性為True ;否則為False。當(dāng)所有直線段之間的連通性都被定義之后,使用連通分量搜索,將屬于同一個分鏡包圍框的直線段聚合起來。
最后,由于有些漫畫圖像版面的布局較為復(fù)雜,分鏡內(nèi)部的對象(例如聲效字,對白框等)會突出包圍框,因此經(jīng)過第二輪聚合之后產(chǎn)生的直線段聚合不是完整的多邊形包圍框。多邊形檢測模塊根據(jù)不完整的多邊形包圍框推理出完整的多邊形包圍框,完成多邊形識別(即直線拼接)工作,并且將多邊形模塊識別的結(jié)果輸出。具體的實現(xiàn)方式是,根據(jù)構(gòu)成多邊形的直線段的數(shù)量做一定的后處理,完整地識別出的分鏡應(yīng)包含四條直線段,并且每一條直線段的端點都與相鄰的直線段的端點連接。若識別的分鏡包含四條或五條直線段,但是存在兩條直線段端點未與相鄰直線段端點相連接的情況,則延長這兩條線段直至相交,如圖4 (I)所示;對于包含兩條或者三條直線段的分鏡識別結(jié)果,這些分鏡識別結(jié)果可能屬于同一個分鏡,因此需要對這些識別結(jié)果進行一定的合并。檢查每一對由兩條或者三條直線段構(gòu)成的識別結(jié)果,用(CA,CB)表示,找到這一對識別結(jié)果的最小矩形包圍框Bounds,以及它們各自的最小矩形包圍框BoundA, Bound13,當(dāng)以下條件均滿足時,這一對識別結(jié)果可以合并成為一個分鏡(如圖4 (2)所示)I) Bounds在X軸以及Y軸的跨度分別小于源漫畫圖像寬和高的一半;2) Bounds, BoundA重合的面積與BoundA的面積之比大于75% ;3) Bounds, Bound13重合的面積與Bound13的面積之比大于75%。對于剩余的包含三條直線段的識別結(jié)果,連接兩個未與其他直線段連接的端點,形成一個封閉的矩形包圍框,如圖4 (3)所示。(3)多邊形驗證模塊為可選模塊。默認情況下,該模塊不啟用,此時多邊形驗證模塊得到的識別結(jié)果將直接作為閱讀順序檢測模塊的輸入。本實施例中用戶U啟用該模塊。則在多邊形識別結(jié)束時,多邊形識別結(jié)果將在客戶端展示給用戶U。用戶U可以查看識別結(jié)果,并且進行篩選。用戶U保存修改,并且確認多邊形識別結(jié)果。若使用計算機自動篩選,具體方法是,因為在后處理階段會虛擬地連接識別出的直線段的端點,所以在自動篩選的過程中計算在分鏡邊框上的被檢測直線段長度之和與分鏡邊框周長的比例,如果大于50%,則通過篩選,否則未通過。(4)用戶U保存并且確認多邊形識別結(jié)果之后,將作為閱讀順序檢測模塊的輸入。閱讀順序檢測模塊根據(jù)多邊形之間的幾何位置關(guān)系判斷其閱讀順序。分鏡閱讀順序的識別將輸入的分鏡進行排序,排序的核心是如何判定任意兩個分鏡之間的閱讀順序。具體做法是判定兩個分鏡橫向和縱向的交疊情況1.如果兩個分鏡在豎直方向沒有交疊,貝1J分鏡中心點Y值較小的閱讀順序靠前;2.如果兩個分鏡在豎直方向有交疊水平方向無交疊,對于日系漫畫分鏡中心點X值較大的閱讀順序靠前,對于歐美以及大陸港澳臺漫畫則閱讀順序靠后;3.如果兩個分鏡水平豎直方向均有交疊,則兩分鏡相鄰處必有一對平行的直線,如果這兩直線段與X軸夾角小于45°則同情況2,否則同情況I。(5)最終,客戶端軟件將漫畫版面分析結(jié)果(包括源圖像,識別出的分鏡的幾何位置以及閱讀順序)返回給用戶。具體實施例下面根據(jù)上述具體實施方法,針對一幅輸入的漫畫圖像,描述本發(fā)明實現(xiàn)的逐步過程。首先將一幅通過掃描得到的漫畫圖像(如圖5所示)作為系統(tǒng)的輸入。直線段檢測模塊檢測出漫畫圖像中的直線段(如圖6所示);經(jīng)過兩輪聚類之后得到了分鏡檢測的初步結(jié)果(如圖7所示);之后對于初步結(jié)果進行后處理,形成完整的分鏡邊框,并且經(jīng)過自動篩選得到分鏡檢測即漫畫圖像分割的最終結(jié)果(如圖8所示);根據(jù)分鏡之間的幾何位置關(guān)系,完成分鏡閱讀順序的識別,最終完成漫畫圖像版面理解,最終結(jié)果如圖9所示。
權(quán)利要求
1.一種基于多邊形檢測的漫畫圖像版面理解系統(tǒng),其特征是,包括直線段檢測模塊、多邊形檢測模塊;其中, 所述直線段檢測模塊,用于識別漫畫圖像中的直線段,并且記錄這些直線段的位置信息; 所述多邊形檢測模塊,根據(jù)直線段檢測模塊檢測的結(jié)果,對直線段進行拼接,識別出完整的多邊形,并且用識別出的多邊形作為對應(yīng)分鏡的位置信息;該模塊和直線段檢測模塊共同完成分鏡的識別與提取。
2.如權(quán)利要求1所述的漫畫圖像版面理解系統(tǒng),其特征是,所述系統(tǒng)還包括閱讀順序檢測模塊,該模塊以分鏡的識別與提取的結(jié)果作為輸入,即用被識別分割出的分鏡作為輸入,根據(jù)多邊形之間的幾何位置關(guān)系,將這些多邊形代表的分鏡進行排序,然后將排序后的分鏡連同各分鏡的位置信息一同輸入到具有版式信息的漫畫文件中去,從而實現(xiàn)漫畫版面的自動理解。
3.如權(quán)利要求1所述的漫畫圖像版面理解系統(tǒng),其特征是,所述系統(tǒng)還包括多邊形驗證模塊,如果用戶認為漫畫版面分割結(jié)果不理想,或者需要進行結(jié)果的修正,用戶使用該模塊進行修正。
4.如權(quán)利要求3所述的漫畫圖像版面理解系統(tǒng),其特征是,所述多邊形驗證模塊,可以通過設(shè)定規(guī)則篩選識別出的分鏡從而實現(xiàn)自動的多邊形驗證。
5.如權(quán)利要求3所述的漫畫圖像版面理解系統(tǒng),其特征是,所述多邊形驗證模塊,計算在分鏡邊框上的被檢測直線段長度之和與分鏡邊框周長的比例,如果大于50%,則通過篩選,否則未通過。
6.一種基于多邊形檢測的漫畫圖像版面理解方法,包括如下步驟 (1)漫畫圖像輸入用戶將漫畫圖像逐頁輸入系統(tǒng); (2)直線段檢測檢測出漫畫圖像中的直線段,這些直線段的大部分都是組成漫畫圖像中分鏡邊框的直線段; (3)多邊形檢測在得到組成分鏡邊框的直線段之后,將這些直線段拼接成為完整的分鏡邊框; (4)分鏡閱讀順序檢測根據(jù)識別出的多邊形直線的幾何位置關(guān)系對分鏡進行排序; (5)返回版面理解結(jié)果將版面理解與分析得到的多邊形的幾何位置以及多邊形之間的閱讀順序作為版式信息存儲到漫畫文件中,并且通過閱讀終端展示給用戶。
7.如權(quán)利要求6所述的漫畫圖像版面理解方法,其特征是,步驟(3)的實現(xiàn)方法如下 a)第一輪直線段聚合去除直線檢測階段得到的冗余直線段,從而減少計算量; b)第二輪直線段聚合將屬于同一個分鏡邊框的直線段聚合,形成分鏡的包圍框; c)后處理由第二輪直線聚合產(chǎn)生的分鏡可能是破碎不完整的,后處理階段將這些破碎的分鏡邊框進行補全。
8.如權(quán)利要求6所述的漫畫圖像版面理解方法,其特征是,所述漫畫圖像由紙質(zhì)漫畫逐頁掃描得到或是由漫畫出版商提供的圖像格式的漫畫包解壓得到。
全文摘要
本發(fā)明公布了一種基于多邊形檢測的漫畫圖像版面理解系統(tǒng)和方法。該方法可以自動識別出組成分鏡邊框的多邊形,并且根據(jù)識別出的多邊形之間的幾何位置關(guān)系判斷分鏡之間的閱讀順序,從而完成漫畫版面理解。通過對于用戶輸入的漫畫圖像進行自動分析,從而獲取漫畫版面中的分鏡,并且根據(jù)識別的分鏡之間的幾何位置關(guān)系判定其閱讀順序,從而使得漫畫圖像能更好地在移動設(shè)備上閱讀。該方法能夠自動理解漫畫版面,解決了目前方法不能處理復(fù)雜布局版面的問題,可以提升處理效率和用戶體驗。
文檔編號G06K9/46GK102999758SQ201210456998
公開日2013年3月27日 申請日期2012年11月14日 優(yōu)先權(quán)日2012年11月14日
發(fā)明者李鹿原, 王勇濤, 湯幟 申請人:北京大學(xué)