説明

画像処理装置、画像処理方法、プログラム、及び記憶媒体

【課題】 大きい文字が含まれる文書画像の画像処理では、大きい文字領域の判定が出来なかったり、文字領域の一部しか抽出できなかったりして、文字認識の範囲が限られてしまう。
【解決手段】 本発明に係る画像処理装置は、文書画像に所定数の画素よりなるブロックを処理対象に、該ブロックは文字であるかを判定する属性判定手段と、非文字候補と判定されたブロックは、隣接ブロックの属性及び文字部分の判定結果に基づき、該ブロックは文字内部であるかを判定する非文字候補ブロックの文字内部判定手段を備える。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、画像処理システムに関するもので、より詳細には、大きい文字が含まれる文書画像にある文字部分を識別する画像処理装置に関する。
【背景技術】
【0002】
近年、文書画像をスキャナ等により光学的に読み取り電子文書に変換し、文字認識する機会が増えている。文字認識率を向上するためには、読み取った画像データから大きい文字も含めて識別情報を生成する必要がある。
【0003】
従来、大きい文字が含まれる文書画像から文字領域を検出する方法がいくつか提案されている。その一つとして、文書画像を文字、写真、図形、表等の領域に分離し、文字と判定された領域を文字処理にするが、本来文字なのに図形と判定される誤判定が生じる場合がある。これを解決する方法として、図形と判定された領域にある連結領域毎の間隔を見て文字領域であるかを改めて判定する方法があった(特許文献1)。また、文書画像をブロックに分け、エッジ情報により各ブロックに文字部分があるかを判定し、文字部分があると判定された文字ブロックから画素の濃度値の変化により文字部分を判定する方法があった。(特許文献2)。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開平09−269970号公報
【特許文献2】特開平07−264397号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
特許文献1では文書画像の領域分離後に、図形と判定された領域から連結領域を取り出し、各連結領域の間隔を測り、予め定めた文字らしい間隔値を持つなら、文字領域として判定する。しかし、処理領域に多数の文字が存在する場合は、文字間隔が取れ、文字領域の判定が可能であるが、図1に示された大きい文字が一つしかない領域の場合に、文字間隔が取れないので、文字領域の判定が出来ない場合がある。また、文書画像の全体の情報を使い領域分離して、更に文字領域を再度判定するので、処理時間も掛かるし、ワークメモリも多く必要となる。
【0006】
特許文献2では文書画像をブロック単位で文字部分を判定するので、画像全体を処理する方式より処理コストの削減ができる。この方法では、エッジ情報により文字部分があるブロックかを判断し、文字部分があると判定されたブロックのみは文字部分を抽出し、文字部分がないと判定されたブロックはブロック毎に背景にする。そのため、図2に示されたような多数のブロックに分けられる大きい文字の例では、文字内部の画素から構成されたブロックにはエッジがないので、文字部分がないと判定し、文字部分の抽出ができない。その結果、大きい文字の認識に不利である。
【0007】
本発明は、処理効率良く、大きい文字も認識できるため、文書画像をブロック単位で処理し、ブロックは文字であるかを判定し、文字と判定されたブロックは文字部分を抽出し、非文字候補と判定されたブロックは文字内部であるかを判断する画像処理方法及び画像処理装置を提供することを目的とする。
【課題を解決するための手段】
【0008】
上記課題を解決するために、本発明に係る画像処理装置は、文書画像に所定数の画素よりなるブロックを処理対象に、該ブロックは文字であるかを判定する属性判定手段と、非文字候補と判定されたブロックは、隣接ブロックの属性及び文字領域の判定結果に基づき、該ブロックは文字内部であるかを判定する非文字候補ブロックの文字内部判定手段を備える。
【発明の効果】
【0009】
本発明によれば、所定数の画素からなるブロックは文字であるかの属性を判定し、文字ブロックに関して文字部分を抽出し、非文字候補ブロックに関して隣接ブロックの属性及び文字部分の接続性を見て文字内部であるかを判断する。これにより、大きい文字は文字の断片だけを抽出するのではなく、文字内部も漏れなく文字として抽出することが出来、文字認識の処理対象を広げることも可能になる。また、ブロック単位で文字部分の判定をするので、処理効率の向上も可能になる。
【図面の簡単な説明】
【0010】
【図1】文書画像の領域分離の一例を示す図である。
【図2】大きい文字の文字部分抽出の一例を示す図である。
【図3】本発明の第1実施形態に係る画像処理装置の機能構成を示すブロック図である。
【図4】第1実施形態における文字部分の判定処理の概略を説明するためのフローチャートである。
【図5】第1実施形態におけるブロックの属性判定処理(S102)を説明するためのフローチャートである。
【図6】第1実施形態におけるブロックにある連結部分抽出の一例を示す図である。
【図7】第1実施形態における文字部分の判定処理(S105)を説明する図である。
【図8】第1実施形態における文字ブロック用の文字部分の判定処理(S10508)を説明する図である。
【図9】第1実施形態における文字部分の判定処理の一例を示す図である。
【図10】本発明の第2実施形態における文字部分の判定処理を説明する図である。
【発明を実施するための形態】
【0011】
以下、図面を参照して、本発明に係る画像処理装置を用いた文字部分の判定処理について詳細に説明する。ただし、この実施の形態に記載されている構成要素はあくまで例示であり、本発明の技術的範囲は、特許請求の範囲によって確定されるのであって、以下の個別の実施形態によって限定されるわけではない。
【0012】
[実施例1]
(装置構成)
図3は、本発明の実施形態に係る画像処理装置の構成を示すブロック図である。
【0013】
図3において、ブロック画像入力部11は、例えば、スキャナ等の画像読み取り手段を介して紙情報から入力されたモノクロまたはカラー画像は、所定数の画素からなるブロックの画像データを入力する。ブロック属性判定部12は、当該ブロックに文字部分があるかを判定し、文字ブロックか非文字候補ブロックかの属性情報を付与する。連結部分抽出部13は、当該ブロックにある画素の連結領域を取る。文字部分判定部14は、当該ブロックにある文字部分と非文字部分を判定する。
【0014】
<文字部分抽出処理の概要>
図4は、第1実施形態におけるブロックの文字部分の抽出処理の概略を説明するためのフローチャートである。
【0015】
まず、ブロック画像入力部11において、処理対象画像の所定数の画素からなるブロックの画像データを入力する(ステップS101)。
【0016】
次に、属性判定部12において、前工程(S101)で入力されたブロックに文字部分があるかを判定し、ブロックに文字部分があれば文字、文字部分がなければ非文字候補とそれぞれ属性を付与する(S102)。この属性判定処理の詳細について後述する。
【0017】
次に、連結部分抽出部13において、前工程(S101)で入力されたブロックの減色処理を行い、代表色を求め、画素毎に一番色の近い代表色に量子化し(S103)、同じ色で繋がる画素の塊を取得する(S104)。多値画像の色量子化は、2値化してもいいし、特開2002−142128に記載された方法等で多数の色に減色しても良い。連結部分抽出処理は公知のラベリング処理を利用することが可能である。この連結部分抽出処理の例について後述する。
【0018】
次に、文字部分判定部14において、前工程(S102)で保持された処理対象ブロックの属性及び隣接ブロックの属性及び隣接ブロックの連結情報を参照し、処理対象ブロックにある各連結領域は文字部分か非文字部分、即ち、背景部分か、を判定する(S105)。この文字部分判定処理の詳細について後述する。
【0019】
<属性判定処理(S102)>
ブロックの属性判定処理(S102)の詳細について、図5を参照して説明する。
【0020】
まず、ステップS10201では、ブロックからエッジ抽出する。エッジ抽出は、エッジ強度を示す微分データを生成する処理で、公知のPrewitteフィルタ、或いは、Sobelフィルタを利用することが可能である。
【0021】
そして、ステップS10202では、抽出されたエッジからブロック属性判定に必要となる正規化閾値を計算する。ブロックにある画素のエッジ強度の最小値、最大値はmin、maxで、一般的なエッジ強度の正規化範囲は0から255で、2値化用閾値はFとすれば、それに対応する正規化閾値Tを求める計算式は下記になる。
【0022】
【数1】

【0023】
正規化閾値Tはブロックに強いエッジがあるかを表すもので、ブロックの属性を区別することが出来る。具体的に、文字を含むブロックには高いエッジ強度を持つ文字部分があるので、高い正規化閾値が得られる。文字を含まないブロックには高いエッジ強度の部分がないので、低い正規化閾値が得られる。
【0024】
ステップS10203からS10205では、正規化閾値に基づきブロックの属性を判定する。ステップS10203では、ブロックの正規化閾値を所定値1と比べ、所定値1より低ければ、ステップS10204では、ブロック属性を非文字候補と判定する。処理値1より高ければ、ステップS10205では、ブロック属性を文字と判定する。ここで、所定値1は低い値(例えば、250)を設定する。
【0025】
<連結部分抽出処理(S104)例>
図6は、第1実施形態の画像処理において、ブロックにある連結部分の抽出処理の一例を示す図である。右に多数のブロックで分けられている原画像で、その内、1つのブロックの連結部分の抽出結果は左に示されている。ブロックの色量子化の結果は白、黒の2色になる。連結領域1は白で繋がる画素の塊、連結領域2は黒で繋がる画素の塊である。
【0026】
<文字部分判定処理(S105)>
文字部分の判定処理(S105)の詳細について、図7を参照して説明する。
【0027】
まず、ステップS10501では、処理対象ブロックは文字であるかを判断する。文字ブロックであれば、ステップS10508では、文字ブロック用の文字部分判定処理を行う。この文字ブロック用の文字部分判定処理について後述する。ステップS10501では、処理対象ブロックは非文字候補の場合、該ブロックは単なる背景部分の可能性もあれば、大きい文字の内部の可能性もあるので、ステップS10502からステップS10507では、隣接ブロックの属性および文字部分の接続性に基づき、処理対象ブロックは文字内部かを判定する。
【0028】
ステップS10502では、左ブロックは文字であるかを判断する。文字ブロックでれば、処理対象ブロックは文字内部の可能性が高いので、更に、ステップS10503では、左ブロックの文字部分は処理対象ブロックと繋がるかを判断する。左ブロックの文字部分は処理対象ブロック間との境界にあれば、左ブロックの文字部分は処理対象ブロックと繋がると判断し、ステップS10504では、処理対象ブロックは文字内部と判断し、ブロック毎に文字部分と判定する。左ブロックの文字部分は処理対象ブロック間との境界になければ、左ブロックの文字部分は処理対象ブロックと繋がらないと判断し、上ブロックの属性情報を参照して処理対象ブロックは文字内部かを判断する。
【0029】
ステップS10502では、左ブロックは非文字であり、ステップS10503では、左ブロックの文字部分は処理対象ブロックと繋がらないと判断すれば、上ブロックの属性情報を参照して処理対象ブロックは文字内部かを判断する。
【0030】
ステップS10505では、上ブロックは文字であるかを判断する。文字ブロックであれば、処理対象ブロックは文字内部の可能性が高いので、更に、ステップS10506では、上ブロックの文字部分は処理対象ブロックと繋がるかを判断する。繋がるなら、ステップS10504では、処理対象ブロックは文字内部と判断し、ブロック毎に文字部分と判定する。繋がらなければ、ステップS10507では、処理対象ブロックは非文字であると判断し、ブロック毎に背景と判定する。
【0031】
ステップS10505では、上ブロックは非文字であれば、ステップS10507では、処理対象ブロックは非文字であると判断し、ブロック毎に背景と判定する。
【0032】
<文字ブロック用の文字部分判定処理(S10508)>
文字部分の判定処理(S105)に係る文字ブロック用の文字部分の判定処理(S10508)の詳細について、図8を参照して説明する。
【0033】
まず、ステップS10511では、ブロックの色量子化処理により取得したブロックの代表色、ブロックの連結部分の抽出処理により取得したブロックの連結領域を入力する。
【0034】
そして、ステップS10512とステップS10513では、ブロックにある文字部分と背景部分を判定する。背景色は連続に変化するという特徴を利用し、ステップS10512では、ブロックにある各連結部分の中、既に取得した背景色と近い色を持つ連結領域を背景とし、違う色を持つ連結領域を文字部分と判定する。ステップS10513では、処理対象ブロックに判定された背景部分の色を新しい背景色として更新する。
【0035】
<文字部分判定処理(S105)例>
図9は第1実施形態の画像処理において、文字部分の判定処理の一例を示す図である。左にある多数のブロックに分けられた大きい文字の例で、文字部分と背景部分の混在するブロックにある文字部分も文字内部画素のみから構成されたブロックにある文字部分も抽出できた。
【0036】
第1実施形態では、処理対象ブロックの属性を参照し、文字ブロックであれば、直ちに文字部分を抽出し、非文字候補ブロックであれば、隣接ブロックの属性及び文字部分の接続情報を参照して、文字内部ブロックかを判断し、文字内部ブロックであれば、文字部分として抽出するものである。この実施形態によれば、一般的な文字領域も、大きい文字領域も処理コストを少なく、精度良く文字部分の抽出が出来るようになる。尚、本実施例は、左隣ブロック、或いは、上隣ブロックの情報を参照して判定する例を示したが、複数のブロックの情報を参照したりしても同等の効果が得られる。また、ブロックの属性判定ではブロックにあるエッジ強度の最大値、最小値から計算された正規化閾値による判定例を説明したが、他の正規化閾値の求め方でも、或いは、他の属性判定方法を使っても良い。また、文字ブロックに関しては背景色が連続に変化する特徴を利用して文字部分の判定をしていたが、他の文字部分の判定方法を使っても良い。また、図4の処理フローチャートでは、ブロックの属性判定、ブロックの色量子化、連結部分抽出処理の順にしていたが、これらの処理順を変えても良い。
【0037】
[実施例2]
先に説明した第1実施形態では、非文字候補ブロックは文字内部であるかを判断する際に、隣接ブロックの属性及び文字部分の接続情報を参照して判定するものとした。本実施形態では、非文字候補ブロックは文字内部であるかを判断する際に、隣接ブロックの属性、文字部分の接続性のみならず、色情報も参照して判定するものである。
【0038】
以下に実施例2において、文字部分の判定処理(S105)について、図10を参照して説明する。
【0039】
まず、ステップS10501では、処理対象ブロックは文字であるかを判断する。文字ブロックであれば、ステップS10508では、文字ブロック用の文字部分判定処理を行う。
【0040】
処理対象ブロックは非文字候補であれば、単なる背景部分の可能性もあれば、大きい文字の内部の可能性もあるので、隣接ブロックの属性および文字部分の接続性及び文字部分の色情報に基づき、処理対象ブロックは文字内部かを判定する。
【0041】
ステップS10502では、左ブロックは文字であるかを判断する。文字ブロックであれば、処理対象ブロックは文字内部の可能性が高いので、更に、ステップS20503では、左ブロックの文字部分は処理対象ブロックと繋がるかを判断する。もし左ブロックの文字部分は処理対象ブロック間との境界にあり、且つ、左ブロックの文字部分の色は処理対象ブロックの代表色と近ければ、ステップS10504では、処理対象ブロックは文字内部と判断し、ブロック毎に文字部分と判定する。
【0042】
ステップS10502では、左ブロックは非文字であれば、また、ステップS20503では、左ブロックの文字部分は処理対象ブロックと繋がらない、或いは、左ブロックの文字部分の色は処理対象ブロックの代表色と近くなければ、上ブロックの属性情報を参照して処理対象ブロックは文字内部かを判断する。
【0043】
ステップS10505では、上ブロックは文字であるかを判断する。文字ブロックであれば、処理対象ブロックは文字内部の可能性が高いので、更に、ステップS20506では、上ブロックの文字部分は処理対象ブロックと繋がるかを判断する。もし上ブロックの文字部分は処理対象ブロック間との境界にあり、且つ、上ブロックの文字部分の色は処理対象ブロックの代表色と近ければ、ステップS10507では、処理対象ブロックは文字であると判断し、ブロック毎に文字部分と判定する。
【0044】
ステップS10505では、上ブロックは非文字であれば、また、ステップS20506では、上ブロックの文字部分は処理対象ブロックと繋がらない、或いは、上ブロックの文字部分の色は処理対象ブロックの代表色と近くなければ、ステップS10507では、処理対象ブロックは非文字であると判断し、ブロック毎に背景と判定する。
【0045】
以上説明した実施形態によれば、精度良く大きい文字内部も含めて文字部分を判定することが可能になる。
【0046】
(他の実施形態)
なお、本発明の目的は、前述した実施形態の機能を実現するソフトウェアのプログラムコードを記録したコンピュータ可読の記憶媒体を、システムあるいは装置に供給することによっても、達成されることは言うまでもない。また、システムあるいは装置のコンピュータ(またはCPUやMPU)が記憶媒体に格納されたプログラムコードを読出し実行することによっても、達成されることは言うまでもない。
【0047】
この場合、記憶媒体から読出されたプログラムコード自体が前述した実施形態の機能を実現することになり、そのプログラムコードを記憶した記憶媒体は本発明を構成することになる。
【0048】
プログラムコードを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、光ディスク、光磁気ディスク、CD−ROM、CD−R、不揮発性のメモリカード、ROMなどを用いることができる。
【0049】
また、コンピュータが読出したプログラムコードを実行することにより、前述した実施形態の機能が実現される。また、プログラムコードの指示に基づき、コンピュータ上で稼働しているOS(オペレーティングシステム)などが実際の処理の一部または全部を行い、その処理によって前述した実施形態が実現される場合も含まれることは言うまでもない。
【符号の説明】
【0050】
11 ブロック画像入力部
12 属性判定部
13 連結部分抽出部
14 文字部分判定部


【特許請求の範囲】
【請求項1】
文書画像において、所定数の画素よりなるブロックを処理対象に、該ブロックは文字の少なくとも一部を含む文字ブロックか、文字を含まないと推定される非文字候補ブロックかを判定する属性判定手段と、非文字候補ブロックと判定されたブロックは、隣接ブロックの属性及び文字部分の判定結果に基づき、該ブロックは文字内部であるかを判定する非文字候補ブロックの文字内部判定手段、を備えることを特徴とする画像処理装置。
【請求項2】
前記の隣接ブロックは、
前記処理対象ブロックの左隣にあるブロック、或いは、上隣にあるブロックであることを特徴とする請求項1に記載の画像処理装置。
【請求項3】
前記の非文字候補ブロックの文字内部判定手段は、
非文字候補ブロックの隣接ブロックは文字ブロックで、且つ、文字部分は該ブロックと接続するならば、該ブロックは文字内部と判定し、ブロック毎に文字部分と判定することを特徴とする請求項1に記載の画像処理装置。
【請求項4】
非文字候補ブロックの隣接ブロックは文字ブロックで、且つ、文字部分は該ブロックと接続し、且つ、文字部分は色が該ブロックと近ければ、該ブロックは文字内部と判定し、ブロック毎に文字部分と判定することを特徴とする請求項1に記載の画像処理装置。
【請求項5】
文書画像において、所定数の画素よりなるブロックを処理対象に、該ブロックは文字の少なくとも一部を含む文字ブロックか、文字を含まないと推定される非文字候補ブロックかを判定する属性判定工程と、非文字候補ブロックと判定されたブロックは、隣接ブロックの属性及び文字部分の判定結果に基づき、該ブロックは文字内部であるかを判定する非文字候補ブロックの文字内部判定工程、を備えることを特徴とする画像処理方法。
【請求項6】
コンピュータに、請求項1乃至5のいずれか1項に記載の画像処理方法を実行させるプログラム。
【請求項7】
請求項6に記載のプログラムを格納したコンピュータ可読の記憶媒体。


【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate


【公開番号】特開2012−222581(P2012−222581A)
【公開日】平成24年11月12日(2012.11.12)
【国際特許分類】
【出願番号】特願2011−85905(P2011−85905)
【出願日】平成23年4月8日(2011.4.8)
【出願人】(000001007)キヤノン株式会社 (59,756)
【Fターム(参考)】