第四章 方法與步驟
本章主要在說明本研究中所提出之表單分析、手寫欄位擷取、及手寫資料萃 取之方法。4.1 節將分別說明表單資料物件的分類程序、物件結構分析及各特徵 函數之意義;4.2 節說明以分類出之點物件,重組成虛線物件的方法;4.3 節說明 如何區別橫直線之填寫欄位與說明文字的底線;4.4 節說明填寫欄位及說明欄位 的區別方法;4.5 節說明對手寫資料進行框線去除及破碎筆劃修補。
4.1 表單物件的分類及結構分析
現有之表單文件格式設計,除單純以表格為主之簡單式表單外,大部分表單 格式皆包含多種不同形式手寫欄位之複合式表單。多數研究皆僅以單純的表格式 表單做為研究對象,然而對於複合式表單中其他形式之可填寫欄位,則無法加以 辨識。為能精確地擷取出表單文件中所有可能的填寫欄位資料,本研究即針對複 合式表單文件,定義出各種形式之可填寫欄位區域物件,並進行辨識及分類。
本節主要目的在針對表單中的表單物件進行分類,擷取表單中可能的填寫資 料欄位區域,亦即將表單物件分為資料物件及非資料物件兩類。資料物件即為可 填寫之資料欄位物件,非資料物件則為非填寫欄位物件。透過分析目前現有之表 單文件,資料物件大致上分為表格、方格、核對框、橫實線、橫虛線等五種主要 類型,如圖 4.1。而非資料物件則可分為印刷文字、圖片、圖形、縱實線、縱虛
線、標點、符號與條碼等。
根據觀察,一般人在辨別表單中該填寫資料的區域時,除了透過了解表單中 的說明文字外,表單物件之外觀結構亦為一重要的判斷因素。例如表單中的空心 矩形與空格,即使其大小同印刷文字,人們仍會直覺認定為可填寫之區域。因此,
本研究將根據不同類型之資料欄位,皆有其特定結構之特性,利用物件的結構特 性,如封閉區域數及交叉點,及傳統的物件相對尺寸比例,作為物件分類的依據。
(a) (b)
(c) (d)
(e)
圖 4.1 資料物件類型 (a)方格 (b)表格,其中左側為說明欄位、右側為填寫欄位 (c)橫直線 (d)橫虛線 (e)核對框
圖 4.2 所示為表單影像物件分類與重組之流程。由於不同資料欄位間結構差 異甚大,經過物件分類後仍需依照不同物件的結構特性,將物件進行適當地切割 與重組,使其為獨立的資料欄位。如切割表格欄位、利用點物件重組為虛線以及 說明文字底線去除等將於後續章節,作進一步的說明。
圖 4.2 表單影像物件分類與重組之流程
4.1.1 表單物件分類
由於表單中各種物件的幾何性質差異甚大,其中又以物件結構及物件之相對 尺寸兩方面特徵最為顯著。所謂物件結構特徵為模擬人類在物件分類時,所運用 的分類模式,而物件相對尺寸則為常用之物件分類依據。
一般而言,人類在物件分類上常用的分類依據,可分為方向性結構特徵及整 體性結構特徵兩種。方向性結構特徵乃指物件依不同的觀察方向,所呈現的不同 幾何特性。而整體結構特徵則指不會因觀察方向不同而改變的結構特性,例如物 件的封閉區域數。因此本研究根據 Zenzo[1]所提出之 Run-based 演算法,針對表 單影像以水平及垂直方向,分別取出影像中所有的 horizontal runs 及 vertical runs,
而每一個連通物件則由一個以上的 run 所構成[24]。
以垂直方向所取得之 vertical runs 為例,假設一物件是由許多垂直的 run 所構 成,如圖 4.3 所示。
Zenzo 等人定義,當二 run 在兩相鄰行上且相連時,稱兩 run 為相鄰。任兩個 相鄰的 run,其左為父(parent),右為子(child)。當一個 run 恰擁有一父一子時,稱 其為 regular run,否則稱其為 singular run。如圖 4.3 中,編號 1 的 run 為 singular run,
而其右邊相鄰的 run 則為一 regular run。
所謂的弧(arc),即由一群相連的 regular run 所構成。當一弧不為其他相異弧 所包含時,則稱其為一最大弧。而每一最大弧皆與二個 singular run 相連。由此可 推知,每一物件二元影像皆表示成一結構圖(graph representation),此結構圖中每
一節點(node)即為一 singular run,而邊(edge)即為一最大弧。此外本研究中定義若 兩 singular runs 彼此相鄰,則視為同一節點。如圖 4.3 所示,該連通物件是由 5 個節點及 6 條邊所構成,圖中深色區為節點,淺色區則可構成邊。由此,便可定 義出物件中所有筆劃與端點之數量與所在。
圖 4.3 物件之垂直 runs 表示圖與圖形表示法
為了便於說明,如圖 4.4,先將物件定義為許多筆劃組成之集合。分別根據 水平及垂直兩方向的觀察,針對每一筆劃定義出筆劃起始點、筆劃終點與筆劃交 叉點,進一步計算一個物件在不同方向所觀察得到的筆劃總數、筆劃起始點數、
筆劃終點數及筆劃交叉點數。如圖 4.4 (a)中,共有五條水平筆劃、一個水平筆劃 起始點、兩個水平筆劃交點與兩個水平筆劃終點。而在圖 4.4 (b)中,則包括五條
(a) (b) (c)
圖 4.4 物件結構特徵 (a)物件及其水平結構 (b)物件及其垂直結構 (c)物件及其構成之封閉區域,及其邊界框
依照上述所得之物件方向性結構特性,可以歸納出四種物件特徵,分別為水 平筆劃數、水平特徵點數( 水平筆劃起始點、水平筆劃交點、水平筆劃終點 )、
垂直筆劃數及垂直特徵點數( 垂直筆劃起始點、垂直筆劃交點、垂直筆劃終點 ) 等。
而物件整體性結構特性,主要在針對每一物件 c,計算其封閉區域結構函數
。封閉區域結構函數之定義如下:
Hn
⎩⎨
⎧ <
= otherwise h if c h
Hn
, ) , ( σ
σ (4.1)
其中 h 為物件之封閉區域數,σ 為分類用之門檻值。
根據先前所得之水平、垂直筆劃數 e,水平、垂直特徵點數 n,利用尤拉公 式( Euler’s Formula )之特性 h= 1+n−e,即可求得物件所包含之封閉區域數。如 圖 4.3 (c),n = 5、e = 5,可得 h = 1,即該物件中包含了一個封閉區域。
由於不同類型的物件其所得到之封閉區域數皆不同,且有其規則性。例如表 格物件的封閉區域數大於 2,而方格物件則為 1,其他如點或直線的封閉區域數,
則會小於門檻值σ ,甚至有其固定值。因此透過計算物件的封閉區域數,便可區 別表格與方格、點與直線等不同類型之物件。至於印刷文字或其他複雜物件之封 閉區域數,則會大於門檻值且不固定,因此將其封閉區域數以σ 表示,並將封閉 區域數為σ 之物件,視為其他類別之物件。
4.1.2 物件結構分析
如圖 4.5 所示,經過上一節的物件結構分類後,即已完成水平及垂直方向性 結構與整體性結構分類的流程,並得到點、直線、其他與表格、方格、其他兩大 初步的物件分類。本小節則要說明利用物件相對尺寸的特徵分析,進一步將物件 細分為點、直線、表格、方格、其他等五類,完成物件分類的工作。
本研究將以物件長、寬度量函數及封閉區域度量函數,兩特徵函數作為結構 分析的依據。
一、物件長、寬度量函數
由於一般表格及方格的尺寸大小多數倍於印刷文字。因此利用物件邊界框的
長、寬值,計算每一物件的尺寸大小及物件彼此間相對的長度及寬度,分析設定 門檻值,分別將長度及寬度各區分為三個等級,用以分類表格、方格及印刷字。
圖 4.5 物件分類程序
二、封閉區域度量函數
此函數主要用以區別核對框及印刷文字。由於核對框及印刷文字皆屬於較小 型之物件,在結構上亦很相似,例如英文字中的 A、a、b、D、d、P、p、O、o、
q、R 等,其封閉區域數和核對框相同,皆具有一個封閉區域,因此較難以分辨。
然而,文字中除了 D、O、o 之外,其他相似文字所包含之封閉區域面積比例,都 較核對框小。其中字母 o 所包含之封閉區域面積比例雖與核對框差距不大,但其 物件尺寸大小則普遍較小於核對框之尺寸大小。因此,封閉區域度量函數主要在 計算物件中,封閉區域面積與物件總面積的比例值,當該比例值小於門檻值時,
則視為印刷文字。同時計算物件之尺寸大小,若物件尺寸小於核對框尺寸大小門 檻值時,則視該物件為印刷文字,反之即為核對框物件。
經過上述物件結構分析的結果,便可將物件分為點、直線、表格、方格及其 他等五類,其中方格類物件則可分成方格及核對框兩種。如圖 4.6,4.7 所示,圖
4.6 為未處理之表單文件,圖 4.7 則為經過物件結構分析分類之結果,其中紅色框 線為直線物件,綠色框為表格物件,深藍色及黃色框則表示方格與核對框物件,
點物件類則以紫色表示。以下章節將進一步針對各個物件類別,進行重組或分割 的處理。
圖 4.6 未處理之空白表單文件樣本
圖 4.7 經表單物件結構特徵分析之分類結果
橫直線物件(紅)、點物件(紫)、方格物件(深藍)、核對框物件(黃)、表格物件(綠)。
4.2 虛線重組
本節主要目的在組合分類出之點物件,以求得表單中的虛線欄位。而一般點 物件的來源為虛線、標點符號、部分印刷文字及雜訊等四種,如圖 4.8 中圓圈及 長方框所標示之區域。根據點物件所在位置的分佈特性分析,除組成虛線之點物 件外,其餘來源的點物件皆為隨機散佈於表單中。因此,根據下列二項判斷條件,
進行橫虛線組成元素的判別,進而重組成虛線。圖 4.9 為虛線重組前點物件分佈 情況,當中紫色區即點物件所在。圖 4.10 為經虛線重組後之結果,以藍色框出重 組後虛線所在。
圖 4.8 點物件來源
一、若一起始點物件其右鄰居亦為一點物件,則以其右鄰居為新起始點物件,繼 續向右搜尋,否則即停止搜尋。
二、累計連續相鄰點物件之水平長度,若累計水平長度大於門檻值σH,則表示 這些點物件為虛線來源點物件,即可構成一橫虛線。接著針對每一橫虛線物 件及與其相鄰之橫虛線物件,計算兩者間的水平間距,當兩橫虛線間水平間 距小於門檻值σD,則進一步將兩虛線重組為一新的橫虛線物件。若不符合 上述判斷條件之點物件,則視為其他來源點物件去除之。
圖 4.9 虛線重組前之點物件分佈情況,紫色為未重組之點物件。
圖 4.10 虛線重組結果,藍色為已重組之橫虛線物件。
4.3 底線去除
本節目的在於去除橫直線物件中,不屬於填寫欄位的說明文字底線。透過分 析多數表單文件中橫直線上說明文字的分佈特性,可歸納出兩種分佈方式:
第一、若該橫直線為一說明文字底線,則橫直線上方之說明文字位置分佈,
多數呈現置中且均勻對稱分佈的情況。
第二、若該橫直線為一包含文字之填寫欄位,橫直線上方之說明文字位置分 佈,則多數呈現偏左或偏右的情況。
根據上述說明文字分佈特性,首先以所取得之橫直線為基準軸,向上取σ 個 像素範圍,如圖4.11所示,建立一高為σ個像素之判別框(虛線框處),計算判別框 內垂直方向上每一單位區間(bin)之黑色像素投影量,若連續數區間之投影量皆為 零,則表示該連續範圍為一空白區域,同理,若連續數區間之投影量皆不為零,
則該連續範圍即為部分文字區域,如圖4.11 (b)所示。
(a) (b)
圖 4.11 說明文字底線 (a)說明文字底線及判別框 (b)水平方向像素投影量分佈
為進一步判斷說明文字的分佈情況,接著定義W( ) {g = w1,w2,...wi,...,wn}為所 有空白區域之集合,B( ) {g = b1,b2,...bi,...,bn}為所有非空白區域大小之集合, 及
分別表示空白區域及非空白區域範圍之寬度。
wi
bi
( ) ( ) ( )
⎩⎨
⎧ ≤
= otherwise
w w w
w w if
w
gap n n n
, 0
, min / , max ,
, 1 1 1 1
1
σ (4.2)
由於文字置中的特性,最前端與最末端之空白區域,所佔的區域大小往往差異甚 小,因此4.2式定義,當w1與wn兩者的比例小於σ1時,則可判斷說明文字分佈狀 況屬於置中分佈。反之則表示說明文字分佈狀況屬於偏左或偏右分佈,如圖4.12。
(a) (b)
圖4.12 橫直線說明文字分佈 (a)呈偏左分佈 (b)為(a)之像素投影量分佈圖
除此之外,若該橫直線屬於含有說明文字之填寫欄位,則必定會有足夠之空 白區域供作填寫區域之用,因此 至 中必可分出兩類空白區域,一為文字與 文字間之空白間距,另一類則為可填寫之空白區域且其範圍大小必大於門檻值
w1 wn
σ2。相反地,若該橫直線屬於說明文字底線的非填寫欄位物件,由於說明文字會
呈現均勻分佈的狀態,因此 至 大小皆無明顯差異,且由於最前端及最末端 空白區域亦不屬於填寫區域,因此 及 兩者大小會小於門檻值
w2 wn−1
w1 wn σ2。
透過上述分析說明文字的分佈與空白間距之大小關係的方式,便能區辨出一 橫直線物件是否為說明文字底線,並去除之。
4.4 填寫欄及說明欄之區別
經由前三節的物件分類及重組,已將表單物件分為表格、方格、橫直線、虛 線及其他等五類。由於表格結構較為複雜,可能同時包含兩個以上的欄位,因此 要事先將表格物件細分成多個表格欄位,再針對各表格欄位進行處理。以下將於 第一小節說明如何由表格物件中擷取出表格欄位;第二小節將說探討區別填寫欄 位與說明欄位之方法。
4.4.1 表格欄位之擷取
為擷取表格物件中的欄位,首先必需求出每一欄位之範圍所在。本研究採用
Shinjo 等人[37]提出的方法,利用表格物件的結構特性,細分出每一個表格欄位。
表格物件即是由兩條以上水平分界線,與兩條以上垂直分界線所構成之物件。因 此 在 表 格 物 件 中 , 水 平 分 界 線 與 垂 直 分 界 線 相 交 處 即 會 構 成 交 叉 點
( cross-point ) 。 根 據 水 平 分 界 線 與 垂 直 分 界 線 間 之 交 叉 關 係 ( line crossing relationship ),即可定義出九種交叉型態,如圖 4.13 所示。而四個交叉點即可構 成一個表格欄位,分別代表欄位四個角落。表 4.1 中將九種交叉型態依其結構歸 納為三大類,並標示出每一交叉型態所對應的角落方位。
圖 4.13 九種交叉點型態
表 4.1 交叉點型態分類與位置對應
表格欄位之角落方位 交叉型態類別 交叉點型態
左上 右上 右下 左下 1 △
2 △
3 △
L 形類別
4 △
5 △ △
6 △ △
7 △ △
T 形類別
8 △ △
+形類別 9 △ △ △ △
4.4.2 表格與方格填寫欄位之擷取
一般而言,表格欄位可分為說明欄及填寫欄兩種,而填寫欄又可分為空白填 寫欄、內含印刷文字之非空填寫欄兩種,如圖 4.14。因此為了過濾說明欄位,擷 取出真正的填寫欄,本研究即針對含有說明文字之表格欄位及方格物件,進行說
一、若印刷文字占滿整個欄位,則表示此欄位必為說明欄。
二、說明欄中的印刷文字通常位於欄位中央,呈均勻對稱排列。而填寫欄位中的 印刷文字,僅供說明之用,因此欄位中央通常為空白區域,而文字則多位於 欄位偏左方、上方或下方處。
三、說明欄位中偶而會使用大小不同之文字,用意在提醒填寫者,協助其了解。
而填寫欄位中的文字通常大小一致。
四、說明欄內無需填寫資料,因此說明欄中的文字間距一致。若填寫欄為一複合 欄位即需要填入多項資料,例如:日期欄中的年、月、日為需要填寫之區域,
因此文字間距較大。地址欄中同項資料的說明文字如「市」與「鄉」間字距 較小,而不同項資料的說明文字如「區」與「路」間為需要填寫區域,因此 間距較大。
五、填寫欄中的印刷文字亦有可能為於欄位中央且均勻對稱分佈。
六、非空表格欄位中若包含一列以上的印刷文字,當中可能同時具備了說明文字 列及包含可填寫區域之印刷文字列。
根據上述的六項差異性,本研究提出針對每一表格欄位物件與方格物件,分別對 垂直方向與水平方向上每一單位區間之像素投影量取樣,做為特徵向量,再根據 說明文字分佈特徵、說明文字大小特徵、及說明文字字距特徵,進行填寫欄位分 類。
(a)
(b)
(c)
圖 4.14 表格與方格物件之說明欄位與填寫欄位
(a)表格欄位 紅色框表示說明欄位,綠色框表示非空填寫欄位,
黃色框表示空白填寫欄位
(b)方格物件之說明欄位 (c)方格物件之填寫欄位
首先針對說明文字分佈特徵、說明文字大小特徵、及說明文字字距特徵等三 項特徵進行簡單的定義:
一、說明文字分佈特徵
指印刷文字在欄位中的分佈情況。說明欄中的文字通常呈現置中且平均分 佈,而在填寫欄中文字的分佈則較不固定。
二、說明文字大小特徵
主要在分析欄位中印刷文字大小是否一致。當欄位中最大文字字高與最小文 字字高之比值大於門檻值時,則表示欄位中文字大小不一致,該欄位則較有可能
三、說明文字字距特徵
主要用以分析欄位中印刷文字間的字距大小是否一致。計算欄位中每列文字 中最大的文字間距與最小文字間距的比值,取出比值最大者。若該值大於門檻 值,則表示欄位中最大說明文字字距與最小說明文字字距差異甚大,此情況常是 因複合式填寫欄中,不同項資料說明文字間所預留的填寫空間,較同項說明文字 間字距為大所造成的。
本研究由於前段所提出之說明欄與填寫欄的第六項差異性,為了能更精確的 擷取出每一非空表格欄位中所有的填寫區域,過濾欄位中屬於印刷文字與非填寫 用之空白區域,因此提出將判別範圍由整個非空填寫欄位,縮小至欄位中的每一 列文字為單位進行分析。
首先針對所細分岀之非空填寫欄位,分別取其水平方向與垂直方向上每一單 位區間之像素投影量,如圖 4.15 所示,(d)與(e)即說明欄(b)之水平方向與垂直方 向投影長條圖。當連續數區間之投影量皆為零,則表示該連續範圍為一空白區 域,同理,若連續數區間之投影量皆不為零,則該連續範圍即為部分文字區域
圖 4.15 說明欄與填寫欄辨識
(a)表格 (b)說明欄位 (c)非空填寫欄位
(d)說明欄位之水平投影分佈圖 (e)說明欄位之垂直投影分佈圖 (f)及(g)分別為非空填寫欄位中第一及第二列之水平投影分佈圖 (h)非空填寫欄位之垂直投影分佈圖
(i)辨識結果,共擷取出三個填寫欄位,即綠色方框處
接著將進一步分析水平投影及垂直投影與說明文字特徵間的關聯性。由於垂 直投影中非零連續區域數,可決定欄位中的說明文字列數與範圍,如圖 4.15(e),
表示說明欄位(b)中僅有一列說明文字,而(h)則表示非空填寫欄位(c)中即含有兩列 說明文字。同時其連續範圍之長度亦可求得每一列說明文字之最大字高,於分析
直投影中取得每一列之範圍,針對單一列區域進行水平投影上說明文字分佈特徵 與文字間距特徵的分析。以下將說明文字分佈特徵與文字間距特徵之分析法則。
首先定義 為第 r 列水平投影中所有空白區域之集
合,而
( ) {gr w w wi wn
W = 1, 2,... ,..., } ( ) {gr b b bi bn}
B = 1, 2,... ,..., 則為該列所有非空白區域大小之集合, 及 分 別 表 示 空 白 區 域 及 非 空 白 區 域 範 圍 大 小 。 接 著 將 分 成 兩 類 ,
及
wi bi
wn
w w1, 2,...,
( ) {gr w wn
W1 = 1, } W2( ) {gr = w2,...,wn−1},其中 及 為僅與一非空白區域相鄰 之最前端及最末端之空白區域, 至 則表示與兩非空白區域相鄰之空白區 域。
w1 wn
w2 wn−1
一、說明文字分佈特徵分析
定義 4.3 式,當w1與wn兩者的比例小於σ1時,則可判斷說明文字分佈狀況屬 於置中分佈,反之則表示說明文字分佈狀況屬於偏左或偏右分佈。
( ) ( ) ( )
⎩⎨
⎧ ≤
= otherwise
w w w
w g if
dist r n n
, 0
, min / , max ,
1 1 1 σ1
(4.3)
二、說明文字間距特徵分析
定義 4.4 式,取w2至wn−1中值最大者為最大文字間距(max_w),同理最小文 字間距為值最小者(min_w)。當最大文字間距與最小文字間距比值大於門檻值σ2 時,表印刷文字呈現不平均分佈, 至 當中可能含有可填寫之空白區域,反 之則僅供說明文字之用。
w2 wn−1
( ) ( )
⎩⎨
⎧ ≤
= otherwise
w w
g if gap r
, 0
min_
/ max_
,
1 σ2
(4.4) 接著將利用上述兩項特徵分析結果,與下列三項分類條件,進一步針對
及 中可能為填寫欄位之區域進行分類。4.5 式用以判斷空白區域大 小是否足夠為一填寫欄位區域。
(g
W1 r) W2( )gr
( ) ⎩⎨⎧ > ∀
= otherwise
r row w
w if
size i i
, 0
,
1 σ3
(4.5)
條件一:
若dist( )gr =1且gap( )gr =1,而 與 二者皆不滿足 ,則表該列 中無可填寫區域,即視為說明欄位。若 與 二者皆滿足 ,則視 與
為可填寫區域。
w1 wn size( )wi =1
w1 wn size( )wi =1 w1 wn
條件二:
若dist( )gr =0且gap( )gr =1,而w1與wn二者中滿足size( )wi =1者,即視為填 寫欄位。
條件三:
若dist( )gr =0且gap( )gr =0,則所有wi中滿足size( )wi =1者,即視為填寫欄 位區域,反之則為說明欄位區域。
透過上述各項定義與條件,針對表格欄位中利用垂直投影細分出的單位範 圍,當中所包含之空白區域進行分類的結果,即可大致區別出非空填寫欄位中說 明欄與填寫欄區域,進而擷取出正確之填寫欄位。圖 4.16 為圖 4.7 經表格欄位切
割及說明欄位與填寫欄位物件分類之結果,其中表單右上角之方格物件,亦上述 方法正確分類為說明文字外框,進而去除之。圖 4.17 為經過物件結構特徵分析所 擷取出之表格欄位物件,即圖中綠色方框所示。圖 4.18 為圖 4.17 經欄位切割與 分類之結果。由圖可知,針對結構單純的表格欄位,經過切割後,可非常正確完 整地辨識出填寫欄位區域,並去除非填寫欄位之表格物件。
圖 4.16 為圖 4.7 經表格欄位切割、說明欄位與填寫欄位分類之結果,
綠色方框即表示分類後擷取出之填寫欄位。
圖 4.17 表單物件結構分析所得之未切割分類之表單物件 綠色框為表格物件,黃色框為核對框物件。
圖 4.18 經欄位切割與分類之結果,綠色框區域即表格物件中擷取出之填寫欄位。
4.5 框線去除及破碎字修補
針對所擷取出之手寫資料範圍,分別以 Run-based 演算法[1],計算範圍內所有 之水平方向及垂直方向之 run 的數量,同時也記錄其長度、起始點及終點座標。
計算範圍內連續黑色像素長度超過門檻值之水平方向 runs,該水平方向的 runs 即 為需要去除的表格框線或橫直線。
本研究採用內插法來修補被去除區域之像素。破碎筆劃修補需分別以水平及 垂直兩個方向做判斷處理。
(x0, y0)
(x ,i yi) ( )x,y
框 線 或 橫 直 線
r0
r ri
圖 4.19 破碎字修補
以水平方向來看,如圖 4.19,先求出與上述所得之水平框線或橫直線相鄰,
且水平座標最接近之水平方向 runs ( 及r0 r)。計算兩者之中心點座標( )及
,及 run 的長度 及 ,以兩者之中心點座標為始末點,求得一直線方程式:
0 0, y x
(x,y) l0 l
( ) ( 0
0 0
0 y y
x x
x y x
y x
L i
i
⎟⎟ −
⎠
⎜⎜ ⎞
⎝
⎛
− + −
=
= ) (4.6)
分 別 將 及 代 入 方 程 式 中 , 求 出 和 間 的 關 係 式 。 根 據 條 件
,依序將 代入所得之關係式,利用四捨五入法,求出預填入之 runs 的中心座標位置 ,再利用 及
(x0, y0) (x,y)
)
xi yi
y y
y0 < i < yi
(x ,i yi r0 r的長度和取平均值 ⎟
⎠
⎜ ⎞
⎝
=⎛ + 2
0 l
li l ,求出預填
補的 runs 之長度 。 li
最後將所求得之所有 作為欲填入 runs 之中心座標及長度 ,依序將該 區域填入黑色像素,復原該區之筆劃。垂直方向之處理方式與水平方向相同。
(x ,i yi) li
破碎字修補完畢之後,即將所得之手寫資料以影像格式儲存,供往後 OCR 辨識、資料庫資料查詢、更新及維護之用。