文字分析程式

標籤:

緣起

在大正藏的經文中,除了常見的文字與句點之外,尚有許多其他的符號,其中主要的有校勘數字(有數字的黑圈)、校勘星號(星號)、斷詞小黑點,而較不重要的符號則有一些日本使用的讀音符號,這些符號請參考圖一。

在 CBETA 處理佛典電子化的過程中,有一部分的經文來源是網路上所流傳或十方大德主動提供的,然而這一類的經文,普遍的情況就是上述一些重要的符號沒有輸入,只有部分經文在輸入時有注意到這一點(例如早期蕭鎮國大德所提的經文)。

這一類的符號,現有的 OCR 軟體都無法完全有效的辨識成功,所以當 CBETA 輸入組的同仁在處理這一類尚未輸入符號的經文時,早期都是採取人工輸入,但由於在時間與人力上都有極大的耗費,於是開始與資訊組同仁討論,看看能否找出更為簡便的方式來完成這個工作。 

cbocrp1.jpg (54196 bytes)
(圖一)
cbocrp2.jpg (68831 bytes)
(圖二)
資訊組的同仁在了解情況之後,自認為無法由 OCR 的層面來動腦筋,但由於要辨識的符號是量少而特殊的,所以產生了一個構想,並在 1998 年年底進行簡單的測試,大致上確認了可行性,並向輸入組建議這些校勘資訊暫時可以不要輸入,等到程式完成,再由程式來進行,而且由於目前 CBETA 公佈的經文尚沒有包含校勘資訊,所以這一個承諾就拖了一年多,直到 2000 年夏,有一部分經文需要插入斷點符號與全型空白,才使資訊組再度投入撰寫該支程式的工作。

構想

這支程式的構想是這樣子的:

如果我們能正確的將大正藏圖檔上的經文與符號都判斷出來,那麼那些符號都有一些與一般文字不同的特殊屬性,例如大小、形狀、位置....經由這些的判斷,或許就可以得到某些資訊,而利用這些資訊再與現成的經文檔交叉分析比對,或許就可以取得我們所要的結果了。

成果

在實作上的成果,與預期上大致差不多,底下就簡單的介紹運作的流程與應用方向。

一、首先,將大正藏經文圖檔的經文與符號逐一判斷出來,並嘗識辨識其所屬型態,目前計有:

  1. 文字 (淡紫色)
  2. 空心圈點 (淡藍色)
  3. 日本符號 (黃色)
  4. 斷詞小黑點 (深藍色)
  5. 校勘數字 (紅色)
  6. 校勘星號 (綠色)

  由圖二參考上述的顏色即可了解。

二、將辨識結果產生如下的結果檔:

T41n----_p0401b09║●■。。*■■■■■■■■■■....
T41n----_p0401b10║■■■。■■■■■●■■■....
T41n----_p0401b11║■■■■■■□■■■....
T41n----_p0401b12║■■。■■■.■■.■■■。....

  其中,各符號表示的意義如下:

■ : 表示一個文字
。 : 表示空心圈點
. : 表示字與字中間的斷詞小黑點
● : 表示一個校勘數字
* : 表示一個校勘星號
□ : 表示一個以上的空白

三、這是尚未加入符號的原始經文檔內容:

T41n1821_p0401b09_##║在。彼得果已亦必起勝果道....
T41n1821_p0401b10_##║後命終。是故聖者生第四靜....
T41n1821_p0401b11_##║成就無漏樂根P唯初盡....
T41n1821_p0401b12_##║道者。釋第五第六第七句。....

四、再用一支程式,將結果檔與原有經文交叉合併比對,就會產生如下的結果,再使用「看圖校對」程式來處理這一份經文,就可以快速的達成補上那些符號的工作。

T41n1821_p0401b09_##║{{||[●]}}在。{{||[*]}}彼得果已亦必起勝果道....
T41n1821_p0401b10_##║後命終。是故聖者生{{||[●]}}第四靜....
T41n1821_p0401b11_##║成就無漏樂根P唯初盡....
T41n1821_p0401b12_##║道者。釋第五{{||.}}第六{{||.}}第七句。....

我們為什麼不直接插入經文而要做成有異差的比對檔?因為程式在判斷的過程也無法保證百分之百正確,故做成比對檔,再利用看圖校對程式來一一檢查,雖然這樣做比較花時間,但品質上有了保證,就是很值得的事了。

困難

程式中尚有許多問題存在,主因還是遇上圖形不夠清晰時,所產生辨識的困擾,這點極難克服,也是所有 OCR 軟體最怕遇上的吧!

再者,大正藏經文當中的雙行註解,也是目前無法有效處理的部分,由於資訊組評估投入的人力與成果,可能不及人工處理來的有效,所以這部分就暫時不予改進了。

後記

1999 年春,得知了大陸與香港處理四庫全書電子化的資訊,有感於其中一套名為「書同文」OCR 軟體的強大專業功能,故本軟體取名為「車同軌」,以表達個人崇敬之意。

本軟體雖然沒有文字辨識的功能,縱使深入研究也很難超越一般商業軟體,但對於這些一般 OCR 軟體無法做的小功能,卻也能發揮小兵立功之效。這類的應用就看大家的想像力了,再以《卍字續藏》為例,卍字續藏經文中的句點是在文字旁邊,不是在文字下面,這對 OCR 而言,會造成難以辨識的結果,若能正確的判斷出句點並將之去除後再辨識,必有較好的成果,最後再利用類似本程式的方法適當的插入文字中,就能解決這一個問題了。

最後,關於此軟體的任何建議,還請十方大德不吝指教。

 
 
image