• 沒有找到結果。

二、 文獻探討

2.2 切割文件方法

切割文件有很多方法,一般常用的有 Run-length、Docstrum 和 RXYC 等,每 種切割方法都有各自優缺點和用途,在下面小節將會分別介紹。

2.2.1 Run-length smoothing values

Run-length smoothing values [9] (簡稱 RLSA)是一個最早被使用的切割法之 一,此方法是先將文件二元化以後,以水平方向將較小的空白填滿,再用連通概 念將文件以行單位切割出來,RLSA 目的是在分析文件影像中文字位置,以行當 作單位來表示,優點是使用簡單方便,但是無法直接表示影像圖片,需要額外處 理,一般是使用在結構較單純的文件影像上。

圖 2 文件(左)在 RLAS 分析時,會將字與字中間填滿(中),

分析 Connected-components 位置,找出每行對應位置(右)

2.2.2 Docstrum

Docstrum [11]是一種 Bottom-up 的切割結構方法,適用於 Manhattan layouts。

此方法是先將文件影像用連通物件方式,找出文件中每個連通單位,如圖 3 所示,

再以其矩形範圍當基準,將附近相鄰的物件做連結,由小而大將整個物件切割出 來。此方法的優點是比較不會受到雜訊和格線的影響,缺點是會受到文字大小影 響切割準確度。

圖 3 Docstrum 會由小到大從字母組合成單字,再從單字組合成句子等,一路向上分析

2.2.3 Whitespace Analysis

Whitespace Analysis [12]是一種比較特別 Top-down 切割方法,適用於

non-Manhattan layouts。主要概念是找出影像中最大的空白矩形區塊做切割,再從 重複搜尋第二第三大空白矩形,直到搜尋至一定數量的空白區塊為止,接著反過 來分離非空白區塊,就是文件內容了。這個方法好處是可以應用在 non-Manhattan layouts 的文件格式中,缺點是搜尋空白的時間較長,一般會限制搜尋空白區塊數 量上限,但就只能切到文件欄位,區塊內的行與單字需要額外方法分析出來。

圖 4 WhiteSpace 搜尋出空白區塊(左) 刪除空白區塊,剩下文字區塊(右)

2.2.4 Recursive XY-cut

Recursive XY-cut [10](簡稱 RXYC)是一種 Top-down 的切割結構方法,適用於 Manhattan layouts。主要概念是利用水平投影和垂直投影找出最大空白範圍,以此 劃分為二成兩大區塊,再重複動作繼續往下切,當切割影像小於一門檻值後才停 止。傳統 RXYC 是針對文件欄位做切割,其中的內容還需要用其他方法搭配分析 出來。除了切割以外,RXYC 同時也會建立一個文件分析的結構樹,先從整張文 件當作 Root node 資訊,在切割時,切割的區塊也以 node 方式建立儲存,直到切 割停止。RXYC 的大致演算法流程如下:

Step 1. 以整張影像建立 Root node

Step 2. 判斷圖片是否小於門檻值,如是則停止切割

Step 3. 對圖片做水平和垂直投影,找出最大的空白投影區段

Step 4. 依最大空白投影做分割,將圖片切割成兩塊,分別建立 node 資訊 Step 5. 切開的兩塊影像再帶入 Step 2~ Step 5 步驟內,直到 Step 2.停止切割

圖 5 是從[10]的參考範例,左邊是原始的文件影像,而經由 RXYC 的切割之 後,文件會被切割成如圖 5 右所顯示的區塊,分析每一區塊的實體物件範圍後,

加上前述切割時所建立的結構樹,可得到圖 6 右邊的結果。RXYC 的優點是速度很

快,切割的結構樹可以當作分析的依據,但缺點是容易受到雜訊或格線影響。

圖 5 原始影像(左),RXYC 切割的情況(右),參考自[10]

圖 6 當 RXYC 切割後分析的欄位 (左),切割產生的結構樹(右) ,參考自[10]

在本研究裡所使用的切割法 AXYC 是以 RXYC 去做修改而成的,利用 RXYC 可同時產生排版分析所需要的物理結構樹,再加上 Whitespace Analysis 概念為輔 助,將文件中的空白區塊也加入結構樹中,來當作分析資料。Whitespace Analysis 本身是很耗時的演算法,但是 AXYC 執行時間較短,利用 AXYC 切割空白的話,

可以讓分析文件更有效率。

相關文件