特許第6754120号(P6754120)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ アイラボ株式会社の特許一覧

特許6754120プログラム、情報記憶媒体及び文字分割装置
<>
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000006
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000007
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000008
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000009
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000010
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000011
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000012
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000013
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000014
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000015
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000016
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000017
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000018
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000019
  • 特許6754120-プログラム、情報記憶媒体及び文字分割装置 図000020
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6754120
(24)【登録日】2020年8月25日
(45)【発行日】2020年9月9日
(54)【発明の名称】プログラム、情報記憶媒体及び文字分割装置
(51)【国際特許分類】
   G06K 9/34 20060101AFI20200831BHJP
【FI】
   G06K9/34
【請求項の数】10
【全頁数】17
(21)【出願番号】特願2016-197893(P2016-197893)
(22)【出願日】2016年10月6日
(65)【公開番号】特開2018-60389(P2018-60389A)
(43)【公開日】2018年4月12日
【審査請求日】2019年5月27日
(73)【特許権者】
【識別番号】512095668
【氏名又は名称】アイラボ株式会社
(74)【代理人】
【識別番号】100090398
【弁理士】
【氏名又は名称】大渕 美千栄
(74)【代理人】
【識別番号】100090387
【弁理士】
【氏名又は名称】布施 行夫
(72)【発明者】
【氏名】グエン・コング・カー
(72)【発明者】
【氏名】中川 正樹
【審査官】 粕谷 満成
(56)【参考文献】
【文献】 特開平06−076114(JP,A)
【文献】 特開2009−199102(JP,A)
【文献】 特開2000−322514(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06K 9/34
(57)【特許請求の範囲】
【請求項1】
手書き文書を撮像して得られた文書画像を行ごとに分割して行画像を取得し、前記行画像を文字ごとに分割するためのプログラムであって、
前記行画像について文字列の並び方向に垂直な方向の射影ヒストグラムを生成し、生成した前記射影ヒストグラムに基づき前記行画像を分割してセグメント画像を生成する第1分割部と、
前記第1分割部で分割して得られたセグメント画像のうち、前記並び方向の幅が所与の閾値よりも大きなセグメント画像である過大セグメント画像を分割してセグメント画像を生成する第2分割部としてコンピュータを機能させ、
前記第2分割部は、
前記過大セグメント画像を細線化して細線化画像を生成し、
前記過大セグメント画像の前記射影ヒストグラムにおいて、前記過大セグメント画像の前記並び方向の幅から推定される文字数分の局所ピークを検出し、前記細線化画像における前記局所ピークの位置に、前記並び方向に垂直な線分を描画し、
前記線分が描画された前記細線化画像において、隣接する前記線分間を連結する経路を探索し、探索した経路上に存在する分岐点を削除し、
前記分岐点が削除された前記細線化画像を領域分割し、領域分割により得られた境界に基づき前記過大セグメント画像を分割することを特徴とするプログラム。
【請求項2】
請求項1において、
前記第1分割部で分割して得られた前記セグメント画像、前記第2分割部で分割して得られた前記セグメント画像、及び前記並び方向の幅が所与の幅になるまでの範囲で前記セグメント画像を結合した画像に対して文字認識を行って複数の認識候補列を生成し、各認識候補列の確からしさを示すスコアに基づき複数の認識候補列から1つの認識候補列を選択する認識部として更にコンピュータを機能させることを特徴とするプログラム。
【請求項3】
請求項1又は2において、
前記第1分割部は、
前記行画像を、当該行画像の前記射影ヒストグラムにおいて射影値が0となる位置で分
割してセグメント画像を生成し、前記行画像の高さに基づき平均文字幅を推定し、前記文書画像から平均筆画幅を推定し、前記並び方向の幅が前記平均文字幅に基づく閾値よりも大きな前記セグメント画像である過大セグメント画像を、当該過大セグメント画像の前記射影ヒストグラムにおいて射影値が前記平均筆画幅に基づく値未満となる位置で分割することを特徴とするプログラム。
【請求項4】
請求項1乃至3のいずれか1項において、
前記第2分割部は、
前記細線化画像において、隣接する前記線分間を連結する最短経路を探索して経路上に存在する分岐点を削除し、次の最短経路を探索して次の分岐点を削除することを繰り返すことを特徴とするプログラム。
【請求項5】
請求項4において、
前記第2分割部は、
前記細線化画像において、隣接する前記線分間を連結する最短経路ごとに複数の分岐点を探索し、最短経路ごとに一つずつの分岐点を組み合わせて、当該分岐点の組み合わせを用いて最短経路を切断した前記細線化画像を領域分割することを特徴とするプログラム。
【請求項6】
請求項1乃至5のいずれか1項において、
前記第2分割部は、
前記分岐点が削除された前記細線化画像をボロノイ分割し、ボロノイ分割により得られたボロノイ境界に基づき前記過大セグメント画像を分割することを特徴とするプログラム。
【請求項7】
請求項6において、
前記第2分割部は、
前記ボロノイ分割により生成されたボロノイ境界のうち、領域を上部と下部に分断するボロノイ境界を除くボロノイ境界に基づいて、前記過大セグメント画像を分割することを特徴とするプログラム。
【請求項8】
請求項6又は7において、
前記第2分割部は、
前記ボロノイ分割により生成されたボロノイ境界のうち、第1の閾値Tよりも小さい領域と第2の閾値T(T>T)よりも大きい領域に分断するボロノイ境界を除くボロノイ境界に基づいて、前記過大セグメント画像を分割することを特徴とするプログラム。
【請求項9】
コンピュータ読み取り可能な情報記憶媒体であって、請求項1乃至8のいずれか1項のプログラムを記憶したことを特徴とする情報記憶媒体。
【請求項10】
手書き文書を撮像して得られた文書画像を行ごとに分割して行画像を取得し、前記行画像を文字ごとに分割する文字分割装置であって、
前記行画像について文字列の並び方向に垂直な方向の射影ヒストグラムを生成し、生成した前記射影ヒストグラムに基づき前記行画像を分割してセグメント画像を生成する第1分割部と、
前記第1分割部で分割して得られたセグメント画像のうち、前記並び方向の幅が所与の閾値よりも大きなセグメント画像である過大セグメント画像を分割してセグメント画像を生成する第2分割部とを含み、
前記第2分割部は、
前記過大セグメント画像を細線化して細線化画像を生成し、
前記過大セグメント画像の前記射影ヒストグラムにおいて、前記過大セグメント画像の前記並び方向の幅から推定される文字数分の局所ピークを検出し、前記細線化画像における前記局所ピークの位置に、前記並び方向に垂直な線分を描画し、
前記線分が描画された前記細線化画像において、隣接する前記線分間を連結する経路を探索し、探索した経路上に存在する分岐点を削除し、
前記分岐点が削除された前記細線化画像を領域分割し、領域分割により得られた境界に基づき前記過大セグメント画像を分割することを特徴とする文字分割装置。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、プログラム、情報記憶媒体及び文字分割装置に関する。
【背景技術】
【0002】
光学文字認識(OCR)には長い研究開発の歴史がある。印刷文字の認識から始まり、手書き文字認識や印刷文書(文字だけでなく図や表も含めてレイアウトされたもの)の認識に発展し、特に郵便番号や住所の認識では大きな成功を収めている。郵便番号認識や住所認識の成功の後、研究開発の対象は、様式、語彙、レイアウトなどで制限がある手書き文書の認識に拡大した。しかし、これらの制限がない場合、手書き文書の認識には大きな困難が伴う。これは、手書き文字の変形だけでなく、文字サイズや文字間隔の揺らぎ、文字同士の接触などに起因する。日本語では、漢字や仮名、アルファベット、数字、ギリシャ文字、句読点などが文字区切りの空白なしに筆記される。漢字は偏や旁からなり、それらが文字となり得る。平仮名は語尾として使われ、漢字よりずっと小さく筆記される。このような、筆記される文字の多様性や変形、揺らぎ、文字同士の接触が、手書き文書を認識する際の文字分割を困難にする。
【先行技術文献】
【非特許文献】
【0003】
【非特許文献1】Srihari, S.N., "Computer Text Recognition and Error Correction.", IEEE Computer Society Press, 352 pages (1984).
【非特許文献2】Mori, S., Suen C.Y. and Yamamoto K. : "Historical review of OCR research and development.", Proceedings of IEEE, Vol. 80, Issue 7, pp. 1029-1058 (1992).
【非特許文献3】Plamondon, R. and Srihari, S.N. : "On-Line and Off-Line Handwriting Recognition: A Comprehensive Survey.", IEEE PAMI, vol. 22, No. 1, pp. 63-84, (2000).
【発明の概要】
【発明が解決しようとする課題】
【0004】
手書き文書の認識では、まず、手書き文書を撮像した文書画像を行ごとに分割して行画像(各行の外接矩形で囲まれた画像)を得る。次に、それぞれの行画像を文字ごとに分割する。文字分割の手法としては、射影により分割する手法、ボロノイ図により分割する手法(ボロノイ分割)などがある。射影による手法では、斜め方向には空間があるが縦方向か横方向に空間がない文字の組み合わせを分割することができない。多少の重なりを許容して分割する場合であっても、閾値の設定が難しい。ボロノイ分割では、射影では重なっていても空間的に分離しているものは分割することができるが、重なっているものを分割することは難しく、また、もともと離れている点や部首などを分割してしまう。すなわち、互いに重なりあう(接触する)文字をどのように分割するかが課題となる。
【0005】
本発明は、以上のような課題に鑑みてなされたものであり、その目的とするところは、行画像から精度良く文字を分割することが可能なプログラム、情報記憶媒体及び文字分割装置を提供することにある。
【課題を解決するための手段】
【0006】
(1)本発明は、手書き文書を撮像して得られた文書画像を行ごとに分割して行画像を取得し、前記行画像を文字ごとに分割するためのプログラムであって、前記行画像について文字列の並び方向に垂直な方向の射影ヒストグラムを生成し、生成した前記射影ヒスト
グラムに基づき前記行画像を分割してセグメント画像を生成する第1分割部と、前記第1分割部で分割されたセグメント画像のうち、前記並び方向の幅が所与の閾値よりも大きなセグメント画像を分割する第2分割部としてコンピュータを機能させ、前記第2分割部は、前記セグメント画像を細線化して細線化画像を生成し、前記セグメント画像の前記射影ヒストグラムにおいて、前記セグメント画像の前記並び方向の幅から推定される文字数分の局所ピークを検出し、前記細線化画像における前記局所ピークの位置に、前記並び方向に垂直な線分を描画し、前記線分が描画された前記細線化画像において、隣接する前記線分間を連結する経路を探索し、探索した経路上に存在する分岐点を削除し、前記分岐点が削除された前記細線化画像を領域分割し、領域分割により得られた境界に基づき前記セグメント画像を分割するプログラムに関する。また、本発明は、コンピュータ読み取り可能な情報記憶媒体であって、上記各部としてコンピュータを機能させるためのプログラムを記憶した情報記憶媒体に関係する。また、本発明は、上記各部を含む文字分割装置に関係する。
【0007】
本発明によれば、第1分割部が、射影を用いて行画像を大まかに分割(粗分割)し、第2分割部が、第1分割部により分割されたセグメント画像のうち、文字列の並び方向の幅が所与の閾値よりも大きなセグメント画像を更に分割(細分割)する。そして、第2分割部が、推定した文字数分の線分を描画した細線化画像において、隣接する線分間を連結する経路上に存在する分岐点を削除し、分岐点が削除された細線化画像を領域分割し、領域分割により得られた境界に基づきセグメント画像を分割することで、文字間の接触による連結を切断して、精度良く文字を分割することができる。
【0008】
(2)また本発明に係るプログラム、情報記憶媒体及び文字分割装置では、前記第1分割部及び前記第2分割部で分割された前記セグメント画像、及び前記並び方向の幅が所与の幅になるまでの範囲で前記セグメント画像を結合した画像に対して文字認識を行って複数の認識候補列を生成し、各認識候補列の確からしさを示すスコアに基づき複数の認識候補列から1つの認識候補列を選択する認識部として更にコンピュータを機能させて(認識部を更に含んで)もよい。
【0009】
本発明によれば、過分割された部分を結合して、文字認識の精度を向上することができる。
【0010】
(3)また本発明に係るプログラム、情報記憶媒体及び文字分割装置では、前記第1分割部は、前記行画像を、当該行画像の前記射影ヒストグラムにおいて射影値が0となる位置で分割してセグメント画像を生成し、前記行画像の高さに基づき平均文字幅を推定し、前記文書画像から平均筆画幅を推定し、前記並び方向の幅が前記平均文字幅に基づく閾値よりも大きな前記セグメント画像を、当該セグメント画像の前記射影ヒストグラムにおいて射影値が前記平均筆画幅に基づく値未満となる位置で分割してもよい。
【0011】
本発明によれば、粗分割の段階において接触した文字同士をある程度分割することができ、細分割段階での処理負担を軽減することができる。
【0012】
(4)また本発明に係るプログラム、情報記憶媒体及び文字分割装置では、前記第2分割部は、前記細線化画像において、隣接する前記線分間を連結する最短経路を探索して経路上に存在する分岐点を削除し、次の最短経路を探索して次の分岐点を削除することを繰り返してもよい。
【0013】
本発明によれば、文字間の接触による複数の連結を切断して、精度良く文字を分割することができる。
【0014】
(5)また本発明に係るプログラム、情報記憶媒体及び文字分割装置では、前記第2分割部は、前記細線化画像において、隣接する前記線分間を連結する最短経路ごとに複数の分岐点を探索し、最短経路ごとに一つずつの分岐点を組み合わせて、当該分岐点の組み合わせを用いて最短経路を切断した前記細線化画像を領域分割してもよい。
【0015】
本発明によれば、文字間の接触による複数の連結を切断して、精度良く文字を分割することができる。
【0016】
(6)また本発明に係るプログラム、情報記憶媒体及び文字分割装置では、前記第2分割部は、前記分岐点が削除された前記細線化画像をボロノイ分割し、ボロノイ分割により得られたボロノイ境界に基づき前記セグメント画像を分割してもよい。
【0017】
(7)また本発明に係るプログラム、情報記憶媒体及び文字分割装置では、前記第2分割部は、前記ボロノイ分割により生成されたボロノイ境界のうち、領域を上部と下部に分断するボロノイ境界を除くボロノイ境界に基づいて、前記セグメント画像を分割してもよい。
【0018】
本発明によれば、文字を構成する点や部首などを分割してしまうことを抑制して、精度良く文字を分割することができる。
【0019】
(8)また本発明に係るプログラム、情報記憶媒体及び文字分割装置では、前記第2分割部は、前記ボロノイ分割により生成されたボロノイ境界のうち、第1の閾値Tよりも小さい領域と第2の閾値T(T>T)よりも大きい領域に分断するボロノイ境界を除くボロノイ境界に基づいて、前記セグメント画像を分割してもよい。
【0020】
本発明によれば、文字を構成する点や部首などを分割してしまうことを抑制して、精度良く文字を分割することができる。
【図面の簡単な説明】
【0021】
図1】本実施形態の文字分割装置の機能ブロック図の一例を示す図である。
図2】本実施形態処理の流れを示すフローチャートである。
図3】第1分割部による粗分割処理の流れを示すフローチャートである。
図4】第1の例に対する粗分割の処理例を示す図である。
図5】第2の例に対する粗分割の処理例を示す図である。
図6】第2分割部による細分割処理の流れを示すフローチャートである。
図7】細線化画像に描画された垂直線分の一例を示す図である。
図8】分岐点について説明するための図である。
図9図7に示す細線化画像に対して最短経路の探索及び切断を行った場合の処理例を示す図である。
図10】ボロノイ分割での2つの追加処理について説明するための図である。
図11】第1の例に対する細分割の処理例を示す図である。
図12】第2の例に対する細分割の処理例を示す図である。
図13】分割・認識候補ラティスの一例を示す図である。
図14】正確な接触位置と、許容できる接触位置について説明するための図である。
図15】本実施形態の手法による処理例を示す図である。
【発明を実施するための形態】
【0022】
以下、本実施形態について説明する。なお、以下に説明する本実施形態は、特許請求の範囲に記載された本発明の内容を不当に限定するものではない。また本実施形態で説明さ
れる構成の全てが、本発明の必須構成要件であるとは限らない。
【0023】
1.構成
図1に本実施形態の文字分割装置の機能ブロック図の一例を示す。なお本実施形態の文字分割装置は図1の構成要素(各部)の一部を省略した構成としてもよい。
【0024】
入力部160は、紙等に筆記された文書(複数行からなる文字列)を撮像して白黒の2値画像或いは多値画像として読み取り、読み取った画像を文書画像として処理部100に出力する。入力部160の機能はスキャナーなどにより実現できる。
【0025】
記憶部170は、処理部100の各部としてコンピュータを機能させるためのプログラムや各種データを記憶するとともに、処理部100のワーク領域として機能し、その機能はハードディスク、RAMなどにより実現できる。
【0026】
表示部190は、処理部100で生成された画像を出力するものであり、その機能は、LCD或いはCRTなどのディスプレイにより実現できる。
【0027】
処理部100(プロセッサ)は、プログラムなどに基づいて各種処理を行う。この処理部100は記憶部170内の主記憶部をワーク領域として各種処理を行う。処理部100の機能は各種プロセッサ(CPU、DSP等)、ASIC(ゲートアレイ等)などのハードウェアや、プログラムにより実現できる。処理部100は、行分割部110、第1分割部112、第2分割部114、認識部116、表示制御部120を含む。
【0028】
行分割部110は、入力部160で読み取られた(或いは、通信回線等を介して取得した)文書画像を行ごとに分割して行画像を生成する。
【0029】
第1分割部112は、行画像について文字列の並び方向に垂直な方向(横書き文字を処理対象とする場合は垂直方向、縦書き文字を処理対象とする場合は水平方向)の射影ヒストグラムを生成し、生成した射影ヒストグラムに基づき行画像を分割して、セグメント画像を生成する。
【0030】
第2分割部114は、第1分割部112で分割されたセグメント画像のうち、前記並び方向の幅が所与の閾値(平均文字幅に基づく閾値)よりも大きなセグメント画像(過大セグメント画像)を分割する。
【0031】
認識部116は、第1分割部112及び第2分割部114で分割されたセグメント画像、及び前記並び方向の幅が所与の幅(平均文字幅に基づく値)になるまでの範囲でセグメント画像を結合した画像に対して文字認識を行って複数の認識候補列を生成し、各認識候補列の確からしさを示すスコアに基づき複数の認識候補列から1つの認識候補列を選択する。
【0032】
表示制御部120は、認識部116で選択された認識候補列を認識結果として表示部190に表示させる制御を行う。
【0033】
2.本実施形態の手法
次に本実施形態の手法について図面を用いて説明する。
【0034】
図2は、本実施形態における処理の流れを示すフローチャートである。まず、行分割部110は、文書画像を既知の手法により行ごとに分割して行画像LI(各行の外接矩形で囲まれた画像)を生成する(ステップS10)。ここでは、文書画像が白黒の2値画像で
あることを前提とする。多値画像の場合は、多値画像を2値化して以降の処理を行うか、あるいは、以降の処理の途中で、白(画素値は0)以外の多値画素(画素値は1以上)を黒(画素値1)と変換して扱う。カラー画像の場合は、2値化、あるいは、グレースケールの多値画像に変換してから適用すればよい。
【0035】
ステップS20では、第1分割部112が、行画像LIを射影により粗分割してセグメント画像SIを生成し、ステップS30では、第2分割部114が、過大セグメント画像SI’をボロノイ分割(領域分割の一例)により細分割する。
【0036】
2−1.粗分割
図3は、第1分割部112による粗分割処理の流れを示すフローチャートである。第1分割部112は、以降の処理を、文書画像を分割して得られた全ての行画像LIに対して行う。
【0037】
まず、第1分割部112は、各行画像LIから行の高さ(文字列の並び方向に垂直な方向の幅)の平均Htlを求め、次式(1)により、平均文字幅AveSizeを推定する(ステップS21)。日本語文字では、文字幅はHtlに依存する。
【0038】
【数1】
ここで、αは係数であり、例えば、α=3/4とする。
【0039】
次に、第1分割部112は、文書画像から平均筆画幅AWを推定する(ステップS22)。ここでは、SWT(Stroke Width Transform)アルゴリズムを用いて、文書画像から、画素(x,y)における黒画素(筆画)の幅I’(x,y)を求める。そして、I’(x,y)を用いて、次式(2)により、平均筆画幅AWを推定する。
【0040】
【数2】
ここで、I(x,y)は、2値画像の場合、画素(x,y)における画素値(黒画素であれば1、白画素であれば0)であり、Wは、文書画像の水平方向の画素数、Hは、文書画像の垂直方向の画素数である。多値画像の場合、画素(x,y)における画素値は、白以外ならば1、白画素であれば0とする。
【0041】
次に、第1分割部112は、行画像LIに対してスメアリング処理を適用する(ステップS23)。このとき、行数が列数よりも多い(例えば、15×1ピクセル)縦長の構造要素を用いる。この処理は、文字パターンを縦方向に膨張し、そのあとで縦方向に収縮する。構造要素の大きさ未満の数の白画素が縦方向に並ぶ部分は黒画素で埋められ、それ以外の部分は膨張後に収縮されるため変わらない。ここでは、処理対象が横書き文字であることを前提とするが、縦書き文字を処理対象とする場合には、文字パターンを横方向に膨張し、その後で横方向に収縮するスメアリング処理を適用する。図4の(a)に、行画像LIの第1の例を示し、図4の(b)に、スメアリング処理後の行画像LI’を示す。
【0042】
次に、第1分割部112は、行画像LI’の垂直方向への射影をとり、射影ヒストグラム(射影プロファイル)を生成する(ステップS24)。図4の(c)に、行画像LI’
の射影プロファイルを示す。次に、生成した射影ヒストグラムにおいて射影値Proj(x)が0となるx軸(水平軸)上の位置で、行画像LIを分割する(ステップS25)。この処理により、水平方向に間隔の空いた文字の組み合わせを分割することができる。なお、多値画像の場合は、射影値Proj(x)の計算において、画素(x,y)における画素値が白以外ならば1、白画素であれば0とするのは、先と同じである。
【0043】
次に、第1分割部112は、ステップS25で分割されたセグメント画像SIの中に、その幅が平均文字幅AveSizeよりも大きいセグメント画像(過大セグメント画像SI’)がある場合に、射影ヒストグラムにおいて射影値Proj(x)が平均筆画幅AW未満となるx軸(水平軸)上の位置で、過大セグメント画像SI’を更に分割する(ステップS26)。ただし、分割によって非常に小さい(画素数が所定値未満の)黒画素群を作る場合には、分割を行わない。なお、平均筆画幅AWをそのまま閾値とせずに、平均筆画幅AWに所与の係数βを掛けた値(平均筆画幅に基づく値)を閾値としてもよい。
【0044】
図4の(d)に、分割されたセグメント画像SIを示す。この例では、射影値Proj(x)が0となる位置での分割(ステップS25の処理)によって、セグメント画像SIとSIが分割されている。セグメント画像(SI+SI+SI)は過大セグメントであり、射影値Proj(x)が平均筆画幅AW未満となる位置での分割(ステップS26の処理)によって、セグメント画像SI、SI、SIに分割されている。なお、セグメント画像SI、SIは過大セグメントであるが、これらの過大セグメントを、射影値Proj(x)が平均筆画幅AW未満となる位置(図中点線で示す位置)で更に分割すると、非常に小さい画素群(図中丸で示す部分)を作ってしまうため、それ以上は分割されていない。
【0045】
図5は、粗分割の他の処理例を示す図である。図5の(a)に、行画像LIの第2の例を示し、図5の(b)に、行画像LI(スメアリング処理後の行画像)の射影プロファイルを示し、図5の(c)に、分割されたセグメント画像SIを示す。図中Aで示す枠で囲まれた文字は隣り合う文字と接触しており、図中Bで示す枠で囲まれた文字は、接触しない部首を含んでいる。この例では、射影値Proj(x)が0となる位置がないため、射影値Proj(x)が平均筆画幅AW未満となる位置での分割によって、セグメント画像SI、SI、SI、SIに分割されている。セグメント画像SIは過大セグメント画像であるが、この過大セグメントを、射影値Proj(x)が平均筆画幅AW未満となる位置(図中点線で示す位置)で更に分割すると、非常に小さい画素群(図中丸で示す「身」の一部)を作ってしまうため、それ以上は分割されていない。なお、図5の(b)には、セグメント画像SIの射影ヒストグラムにおける局所ピークLPを示している。局所ピークLPは、後述する細分割処理で用いられる。
【0046】
2−2.細分割
図6は、第2分割部114による細分割処理の流れを示すフローチャートである。第2分割部114は、以降の処理を、全ての行画像LIに含まれる全ての過大セグメント画像SI’に対して行う。
【0047】
まず、第2分割部114は、既知の細線化アルゴリズムを用いて、過大セグメント画像SI’を細線化(二値画像を幅1ピクセルの線画像に変換)して細線化画像TIを生成する(ステップS31)。
【0048】
次に、第2分割部114は、過大セグメント画像SI’の幅(文字列の並び方向の幅)と平均文字幅AveSizeから、過大セグメント画像SI’における文字数WCを推定する(ステップS32)。次に、過大セグメント画像SI’の射影ヒストグラムにおいて推定した文字数WC分の局所ピークLP(射影値の大きな上位WC個のピーク)を検出す
る(ステップS33)。図5の(c)に示すセグメント画像SIでは、文字数WCが4個と推定されたため、図5の(b)に示す射影プロファイルにおいて4個の局所ピークLPが検出されている。次に、細線化画像TIにおける局所ピークLPの位置に垂直線分VLを描画する(ステップS34)。なお、縦書き文字を処理対象とする場合には、局所ピークLPの位置に水平線分を描画する
図7に、図5の(c)に示すセグメント画像SIを細線化した細線化画像TIと、細線化画像TIに描画された垂直線分VLを示す。この例では、細線化画像TIに対して、4個の局所ピークLPの位置(文字の凡そ中心位置)に4本の垂直線分VL、VL、VL、VLが描画されている。
【0049】
次に、第2分割部114は、垂直線分VLが描画された細線化画像TIにおいて、隣接する垂直線分VL間を連結する最短経路SP(一方の垂直線分VLの中点から黒画素を辿って他方の垂直線分VLの中点に至る最短の経路)を探索する(ステップS35)。ここでは、最短経路SPの探索にA(A−Star)アルゴリズムを用いるが、これには限らず、ダイクストラ法等を用いてもよい。次に、第2分割部114は、最短経路SPが存在する場合(ステップS36のY)には、探索した最短経路SP上に存在する分岐点BPを特定し、特定した分岐点BPを削除する(ステップS37)。すなわち、最短経路SP上の分岐点BPを白画素に代えて、当該最短経路SPを切断する。但し、垂直線分VL上に存在する分岐点については削除しない。垂直線分VLは文字の中心に位置することを想定しているからである。なお、特定した分岐点BPの情報は、以降の処理で用いるため、分岐点情報として記憶部170に記憶しておく。ここでは、分岐点BPを、図8に示すように、3つ以上の8連結黒画素をもち、それらが互いに4連結しない黒画素と定義する。なお、図8では、分岐点BPの周囲の8連結黒画素を便宜上網掛けで示している。
【0050】
最短経路SP上の分岐点BPを削除すると、ステップS35に移行し、隣接する垂直線分VL間の最短経路SPがなくなるまで、最短経路SPの探索と切断(分岐点BPの削除)を繰り返す。
【0051】
図9に、図7に示す細線化画像TIに対して最短経路SPの探索及び切断を行った場合の処理例を示す。図9に示す例では、最短経路SPをグレーで示している。まず、図9の(a)に示す第1ラウンドでは、垂直線分VL、VLの間において最短経路SPが見つかり、最短経路SP上の分岐点BPが特定されている。この分岐点BPが削除されることで、最短経路SPが切断される。垂直線分VL、VLの間では、最短経路SPは存在しない。また、垂直線分VL、VLの間において最短経路SPが見つかり、最短経路SP上の2つの分岐点BP21、BP22が特定されている。この2つの分岐点BP21、BP22のいずれかが削除されることで、最短経路SPが切断される。特定された分岐点BP、BP21、BP22の情報は分岐点情報として保持される。図9の(b)に示す例では、最短経路SP上の分岐点BPと最短経路SP上の分岐点BP21が削除されている。図9の(b)に示す第2ラウンドでは、垂直線分VL、VLの間において2つ目の最短経路SPが見つかり、最短経路SP上の3つの分岐点BP31、BP32、BP33が特定されている。この3つの分岐点BP31、BP32、BP33のいずれかが削除されることで、最短経路SPが切断される。また、垂直線分VL、VLの間において2つ目の最短経路SPが見つかり、最短経路SP上の2つの分岐点BP41、BP42が特定されている。この2つの分岐点BP41、BP42のいずれかが削除されることで、最短経路SPが切断される。特定された分岐点BP31、BP32、BP33、BP41、BP42の情報は分岐点情報として保持される。図9の(c)に示す例では、最短経路SP上の分岐点BP32と最短経路SP上の分岐点BP41が削除されている。図9の(c)に示す第3ラウンドでは、いずれかの垂直線分VL間においても最短経路SPは存在しないため、最短経路SPの探索を終了する。
【0052】
最短経路SPの探索を終了すると、第2分割部114は、分岐点BPが削除された(且つ、垂直線分VLが描画されていない)細線化画像TIをボロノイ分割する(ステップS38)。ボロノイ分割は、接触していない(4連結していない)部分間の自然な境界で領域を分割する。ボロノイ分割により生成される境界をボロノイ境界と呼ぶ。
【0053】
ここで、ボロノイ分割を行う際には、1つの最短経路SP上の複数の分岐点BPを同時に用いずに、記憶部170に記憶された分岐点情報を参照して、1つの最短経路SP上の複数の分岐点BPを排他的に用いて、当該最短経路SPを切断する。例えば、1対の垂直線分VL間で、1番目の最短経路にn個の分岐点(f11,f12,...f1n)が特定され、2番目の最短経路にm個の分岐点(f21,f22,...f2m)が特定され、3番目の最短経路にp個の分岐点(f31,f32,...f3p)が特定された場合、1番目の最短経路上の全ての分岐点は、2番目の最短経路上の全ての分岐点のいずれか、及び、3番目の最短経路上の全ての分岐点のいずれかと組み合わされる。すなわち、全ての組み合わせ(f11,f21,f31),(f12,f21,f31),(f13,f21,f31),...を考え、それらの組み合わせを用いて最短経路を切断した細線化画像の全てをボロノイ分割する。図9に示す例では、垂直線分VL、VL間では、分岐点BP、BP31を削除したパターンと、分岐点BP、BP32を削除したパターンと、分岐点BP、BP33を削除したパターンが考えられ、垂直線分VL、VL間では、分岐点BP21、BP41を削除したパターンと、分岐点BP21、BP42を削除したパターンと、分岐点BP22、BP41を削除したパターンと、分岐点BP22、BP42を削除したパターンが考えられる。
【0054】
ステップS38のボロノイ分割では、2つの処理を追加して行っている。1つ目の処理は、領域を上部と下部に分断するボロノイ境界を削除する処理である。例えば、図10の(a)に示す例において、領域Sと領域Sとを分断するボロノイ境界BBを削除する。2つ目の処理は、領域を相対的に非常に小さい部分と非常に大きい部分に分断するボロノイ境界を削除する処理である。例えば、図10の(b)に示す例において、領域Sと領域Sとを分断するボロノイ境界BBと、領域Sと領域Sとを分断するボロノイ境界BBを削除する。相対的に非常に小さい部分と非常に大きい部分に分断するボロノイ境界とは、例えば、第1の閾値Tよりも小さい領域と第2の閾値T(T>T)よりも大きい領域に分断するボロノイ境界である。これらの追加処理により、文字を構成する点や部首などを分割してしまうことを抑制することができる。
【0055】
次に、第2分割部114は、ステップS38で生成されたボロノイ境界(追加処理により削除したボロノイ境界を除く)に基づいて、過大セグメント画像SI’(ボロノイ分割した細線化画像に対応する過大セグメント画像SI’)を分割する(ステップS39)。なお、削除する分岐点BPの組み合わせ毎に細線化画像TIをボロノイ分割して得られた当該組み合わせ毎のボロノイ境界を用いて、過大セグメント画像SI’を分割する。
【0056】
図11に、第1の例の行画像LIにおける過大セグメント画像SI’に対して細分割を行った場合の処理例を示す。図11の(a)に示すように、過大セグメント画像SI’は、その細線化画像TIにおいてボロノイ分割され、図11の(b)に示すように、その分割は元画像である行画像LIに反映される。図4の(d)における過大セグメント画像SIは、図11の(b)に示すように、細分割処理により3つのセグメント画像SI、SI、SIに分割され、図4の(d)における過大セグメント画像SIは、図11の(b)に示すように、細分割処理により3つのセグメント画像SI、SI、SIに分割されている。なお、セグメント画像SI、SI、SIは、粗分割処理により分割されたセグメント画像SIである。ここでは、セグメント画像(SI、SI)、(SI、SI)、(SI、SI)のように、1つの文字を過分割してしまってい
る。
【0057】
図12に、第2の例の行画像LIにおける過大セグメント画像SI’に対して細分割を行った場合の処理例を示す。図5の(c)における過大セグメント画像SIは、図12に示すように、細分割処理により4つのセグメント画像SI、SI、SI、SIに分割されている。なお、セグメント画像SI、SI、SIは、粗分割処理により分割されたセグメント画像SIである。図12の(a)に示す分割候補列では、1文字ごとに正しく分割されている。これは、図12の(a)に示す分割候補列が、図9における垂直線分VL、VL間の分岐点BP、BP32及び垂直線分VL、VL間の分岐点BP21、BP41が削除された細線化画像TIをボロノイ分割することで得られた分割候補列であることによる。一方、図12の(b)に示す分割候補列では、セグメント画像(SI、SI)、(SI、SI)のように、1文字ごとに正しく分割されておらず誤った分割が行われている。これは、図12の(b)に示す分割候補列が、図9における垂直線分VL、VL間の分岐点BP、BP31、及び垂直線分VL、VL間の分岐点BP22、BP42が削除された細線化画像TIをボロノイ分割することで得られた分割候補列であることによる。このような誤った分割候補は、後述する文字列認識のための最適経路探索で採用されない。
【0058】
なお、高速化のために、全ての分割の可能性に対して文字列認識を行うのではなく、1つ1つの分割の可能性に対して、その両隣のセグメント画像SIから幾何学特徴を抽出し、SVM(Support Vector Machine)によって、より確度の高い分割に対して文字列認識を行うこともできる。この場合、SVMには、事前に正しい分割と正しくない分割を学習させておく。
【0059】
2−3.文字列認識
図2のステップS40では、認識部116は、行画像LI(及び過大セグメント画像SI’)を粗分割して得られたセグメント画像SIと、過大セグメント画像SI’を細分割して得られたセグメント画像SI(削除する分岐点BPの組み合わせ毎に分割して得られたセグメント画像を含む)、及び、セグメント画像SIを所与の制限幅になるまでの範囲で結合した画像に対して文字認識を行って、複数の認識候補列を生成する。制限幅は、例えば、平均文字幅AveSizeに、予め学習した1以上の係数を掛けた値とする。そして、認識部116は、複数の認識候補列について複数項目の確からしさを評価し、評価結果に基づき文字列を認識する。行画像LIがn個のセグメント画像(SI、SI,...SI)に分割されたとすると、それぞれのセグメント画像と、制限幅になるまでの範囲で結合したセグメント画像とを文字認識すると、ある認識候補列Cは、C=c、c,...c(m≦n)で表される。
【0060】
より詳細には、全ての分割候補(セグメント画像、セグメント画像を結合した画像)と、全ての分割候補のそれぞれを文字認識したときの認識候補と、複数項目の確からしさを示すスコアとを、分割・認識候補ラティスで表現する。分割・認識候補ラティスの一例を図13に示す。図13に示す分割・認識候補ラティスは、図11の(b)に示す例に対応している。すなわち、分割・認識候補ラティスにおけるノードNDは、セグメント画像SI及びSIの認識候補に対応し、ノードNDは、セグメント画像SI及びSIの認識候補に対応し、ノードNDは、セグメント画像SI及びSIの認識候補に対応し、ノードNDは、セグメント画像SIとセグメント画像SIを結合した画像及び当該画像の認識候補に対応し、ノードNDは、セグメント画像SI及びSIの認識候補に対応し、ノードNDはセグメント画像SI及びSIの認識候補に対応し、ノードNDは、セグメント画像SIとセグメント画像SIを結合した画像及び当該画像の認識候補に対応している。
【0061】
複数項目の確からしさとしては、文字認識の確からしさfocr(文字認識のスコア)、単独文字の幾何特徴(文字のサイズ、部首などの間隔、文字の位置)の確からしさfsgf、2文字間の幾何特徴(2文字間の位置)fbgf、言語文脈の確からしさflc(バイグラム確率又はトリグラム確率)を求める。なお、文字のサイズに依存する特徴については、平均文字幅AveSizeで正規化する。
【0062】
認識部116は、分割・認識候補ラティスにおける全ての経路について、認識候補列Cに認識される条件付き確率f(C)を次式(3)により求め、Viterbiアルゴリズムを用いて、最適な経路(最適な分割と文字列認識結果)を選択する。
【0063】
【数3】
ここで、λ、λ、λ、λは、重みパラメータであり、遺伝的アルゴリズムを用いて学習されたものである。
【0064】
3.評価実験
本実施形態の手法を評価する実験を行った。まず、手書き日本語文書パターンを収集するために、25人(うち、2人が左利き、1人が女性)の日本人に青空文庫の文章を筆記してもらった。得られた45ページ(426行、11,550文字)の手書き文書をスキャナーで読み込み、文字同士が接触している箇所ごとに、接触した文字のコード、正確な接触位置、許容できる接触位置の情報を付加した。図14に、正確な接触位置をグレーで示し、許容できる接触位置を白抜き線で示す。図14に示すように、許容できる接触位置は、この範囲で分割が行われれば両側の文字を問題なく認識できる領域を示している。この結果、合計で1,871個の接触ペア(接触した一対の文字)を収集した。このうち、1,552個の接触ペアは1箇所で接触しており、319個の接触ペアは2箇所以上で接触している。この標本パターンの集合を「OffTouchDB」と呼ぶ。
【0065】
OffTouchDBを用いて文字分割の分割率と文字認識の認識率を評価した。文字分割が、正確な接触位置、或いは、許容できる接触位置の範囲で行われた場合に、正しく分割されたとする。分割率は、本来分割されるべき総数に対する正しく分割された箇所の比率を示し、認識率は、接触ペアの総数に対する正しく認識された数の比率を示す。
【0066】
言語文脈(トリグラム)の評価には、新聞データを利用した。単独文字の幾何特徴の学習、2文字間の幾何特徴の学習、及び重みパラメータλ、λ、λ、λの学習には、データベースを用いた。その結果、重みパラメータの値は、λ=0.9616、λ=−14.233、λ=−9.179、λ=−6.415となった。
【0067】
分割方法として、SWTを用いない粗分割(射影値が0となる位置での分割)を行う手法、SWTを用いた粗分割(射影値が0となる位置及び射影値が平均筆画幅未満となる位置での分割)を行う手法、SWTを用いた粗分割と細分割(ボロノイ分割での2つの追加処理なし)を行う手法、SWTを用いた粗分割と細分割(ボロノイ分割での2つの追加処理あり)を行う手法の4種類の手法を評価した。
【0068】
表1に、各分割方法での分割率と認識率の結果を示す。
【0069】
【表1】
本実施形態の手法(SWTを用いた粗分割と、ボロノイ分割での2つの追加処理を含む細分割とを行う手法)での分割率は、1箇所の接触ペアに対して85.63%、2箇所以上の接触ペアに対して80.88%となり、認識率は、1箇所の接触ペアに対して76.51%、2箇所以上の接触ペアに対して68.18%となった。
【0070】
SWTを用いない粗分割を行う手法では、1箇所の接触ペアについても2箇所以上の接触ペアについても正しく分割できなかった。SWTを用いることで、1箇所の接触ペアについての分割率は格段に向上したが、2箇所以上の接触ペアについては殆ど効果がなかった。
【0071】
細分割(追加処理なし)は、1箇所及び2箇所以上の接触ペアの両方に有効であった。しかし、2箇所以上の接触ペアについての認識率については効果が低かった。ボロノイ分割における2つの追加処理は、2箇所以上の接触ペアについての分割率を若干低下させるものの、認識率を大幅に向上させた。このように、2文字間の連結経路の切断とボロノイ分割を用いた細分割処理を行うことの有効性と、ボロノイ分割における2つの追加処理の有効性が確認された。
【0072】
図15に、本実施形態の手法による処理例を示す。図15の(b)は、図15の(a)の行画像LIに対して粗分割処理と細分割処理を行った分割例である。図15に示す行画像LIは、1箇所及び2箇所以上の接触を多く含んでいるが、本実施形態の手法は、これらの良く分割している。例えば、図15の(b)に示す(2)と(3)の境界部分は複雑に接触しているが、細分割(ボロノイ境界)によって適切に分割されている。
【0073】
なお、本発明は、上述の実施の形態に限定されるものではなく、種々の変更が可能である。本発明は、実施の形態で説明した構成と実質的に同一の構成(例えば、機能、方法及び結果が同一の構成、あるいは目的及び効果が同一の構成)を含む。また、本発明は、実施の形態で説明した構成の本質的でない部分を置き換えた構成を含む。また、本発明は、実施の形態で説明した構成と同一の作用効果を奏する構成又は同一の目的を達成することができる構成を含む。また、本発明は、実施の形態で説明した構成に公知技術を付加した構成を含む。
【符号の説明】
【0074】
100 処理部、110 行分割部、112 第1分割部、114 第2分割部、116
認識部、120 表示制御部、160 入力部、170 記憶部、190 表示部
図1
図2
図3
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13
図14
図15