JP3359095B2 - 画像処理方法及び装置 - Google Patents

画像処理方法及び装置

Info

Publication number
JP3359095B2
JP3359095B2 JP12188393A JP12188393A JP3359095B2 JP 3359095 B2 JP3359095 B2 JP 3359095B2 JP 12188393 A JP12188393 A JP 12188393A JP 12188393 A JP12188393 A JP 12188393A JP 3359095 B2 JP3359095 B2 JP 3359095B2
Authority
JP
Japan
Prior art keywords
text
attribute
character
line
tree structure
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
JP12188393A
Other languages
English (en)
Other versions
JPH0668301A (ja
Inventor
ワング シン・ヤン
アール. バエズィー メザードゥ
エー. シェリック クリストファー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Publication of JPH0668301A publication Critical patent/JPH0668301A/ja
Application granted granted Critical
Publication of JP3359095B2 publication Critical patent/JP3359095B2/ja
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/413Classification of content, e.g. text, photographs or tables
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/15Cutting or merging image elements, e.g. region growing, watershed or clustering-based techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition
    • G06V30/14Image acquisition
    • G06V30/148Segmentation of character regions
    • G06V30/155Removing patterns interfering with the pattern to be recognised, such as ruled lines or underlines
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/40Document-oriented image-based pattern recognition
    • G06V30/41Analysis of document content
    • G06V30/414Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V30/00Character recognition; Recognising digital ink; Document-oriented image-based pattern recognition
    • G06V30/10Character recognition

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Artificial Intelligence (AREA)
  • Computer Graphics (AREA)
  • Geometry (AREA)
  • Character Input (AREA)

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】本発明は、文字認識方法及び装置
に関わるものであり、特に認識処理に先立って、画像デ
−タに基づいて画像データブロックを分類・選別する方
法や装置に関するものである。例えば、画像データがテ
キスト画像データであるか、中間調(あるいはグレース
ケール)画像,線画及びフレームなどのような非テキス
ト画像であるかに応じて、画像データブロックを選別し
て分類するものである。また、本発明は、認識処理への
準備として、テキストブロックからテキストラインを識
別して分割し、次にテキストライン中の個々の文字を識
別してライン中の他の文字から切り出す方法や装置にも
関するものである。
【0002】尚、本出願は付録のコンピュ−タプログラ
ム(図35〜図247参照)とともに提出される。本明
細書の開示の一部には、著作権保護に関係するものが含
まれている。著作権者は、特許・商標庁の特許ファイル
あるいは記録なので本出願の開示文書がファクシミリ再
生されることに対しては異議を唱えないが、そうでない
場合にはすべての著作権を留保するものとする。
【0003】
【従来の技術】近年、テキストデータ画像を分析してテ
キストデータ中の個々の文字を認識し、認識された文字
に対応してコンピュータが理解可能な文字コ−ドファイ
ルを生成することが可能になってきた。ここで得られた
ファイルは、ワードプロセッシングやデータプロセッシ
ングのプログラムで操作を加えることができる。以下
「文字認識システム」と呼ぶことにするこのようなシス
テムの利点は、テキストデータを再タイプしたり、ある
いは再入力する必要がないことである。例えば、ファク
シミリで送られてきた文書や、マイクロフィルムや複写
機で再生された文書を文字認識して、文書中の文字や数
字を文字コ−ド(例えばアスキーコードコード)からな
るコンピュータテキストファイルとして生成することに
より、文書の再タイプや再入力をせずに、文書をワード
プロセッシングやデータプロセッシングすることができ
る。
【0004】文字認識すべき文書にはさまざまな種類の
画像が含まれることが多く、すべてが認識可能というわ
けではない。例えば、テキスト画像データの認識は現在
でも可能であるが、非テキスト画像データの認識は不可
能である。一般に、文字認識すべき文書には、テキスト
画像データブロックと中間調画像,線画及び線などの非
テキスト画像データブロックとが含まれる。また、文書
には、フレームで囲まれていたり囲まれていなかったり
する表や表形式のデータなども含まれる。したがって、
文字認識処理に先立って、ブロック中の画像データの種
類に応じて文書中の個々のブロックを分類し、画像デー
タからテキストタイプのブロックを選別することが必要
となる。
【0005】図32は典型的な文書の1ペ−ジの例を示
す図である。図32において、文書ページ401は2段
組のフォーマットで構成されている。ページには、タイ
トルに適した大きなフォントサイズのテキスト情報が含
まれるタイトルブロック402、テキストデータライン
を含むテキストブロック404、テキストではないグラ
フィックス画像を含むグラフィックスブロック405、
テキストや数字情報の表を含む表ブロック406、小さ
なサイズのテキストデータでグラフィックスブロックあ
るいは表ブロックに対する見だしが含まれる見だしブロ
ック407が存在する。各情報ブロックはブロック内の
情報の種別に応じて分類され、この分類結果に基づいて
ブロックが分割される。
【0006】画像データからテキスト型のブロックを検
出するため、従来は、画像データ中の黒画素を隣接する
1つあるいは複数の白画素にまで水平方向・垂直方向に
膨張させて、水平方向・垂直方向に画素画像データを塗
りつぶす手法を用いていた。このような塗りつぶし法の
欠点としては、適切な塗りつぶしパラメータを選択する
ために、前もってテキスト型の画像データ中の特徴(例
えばフォントサイズなど)を知らなければならないこと
が挙げられる。また、塗りつぶしパラメータの僅かな変
更が、選別結果の大幅な変化につながるという問題もあ
る。さらに、塗りつぶし法では、必ずしも原文書の内部
構造が保存されるとは限らない。例えば、塗りつぶし法
では、2段組の原文書が1段に塗りつぶされてしまうこ
とがある。このような場合には、テキストデータの格納
順序がばらばらになってしまい、原テキストの正確な再
生が不可能という問題が生じる。この他、テキスト型の
データが非テキスト型のデータまで塗りつぶして、全領
域をテキスト型のデータと誤って解釈してしまう場合
も、塗りつぶし法ではしばしば生じる。
【0007】ブロック選別に続いて、文書中の文字ごと
に文字認識処理を行い、文字に対応するコンピュータコ
ードを得る。ここで、文字ブロックから個々の文字を得
るには、2つの処理を行う。第1段の処理では、タイト
ルブロック202,テキストブロック204,見だしブ
ロック207などの各テキストブロック中の個々のライ
ンが、テキストブロック中の他のラインから分割され
る。一般に、ライン分割は、各ブロック中の画素密度を
水平投影してライン間のギャップを識別することで行わ
れる。すなわち、図33Aに示すように、テキストブロ
ック404は間にギャップ412を有するテキストライ
ンからなる。画素密度の水平投影414は、ブロック4
04の各ライン上の黒画素数の総和として求められる。
テキストラインは投影414中で密度が非ゼロの領域に
対応し、テキストライン間のギャップは投影414中の
密度がゼロの領域に対応する。したがって、投影密度に
基づいて、テキストラインを各ラインごとに分割するこ
とができる。
【0008】第2段の処理では、分割されたテキストラ
イン中の個々の文字がテキストライン中の他の文字から
切り出される。すなわち、図34Aに示すように、テキ
ストライン411には個々の文字が含まれる。テキスト
ラインにおいて各文字を他の文字から切り出すために、
ラインセグメント411の各列ごとに黒画素数の垂直方
向の総和を求め、画素密度の垂直投影416を得る。文
字415は投影416中で密度が非ゼロの領域に対応
し、文字間のギャップは投影416中で密度がゼロの領
域に対応する。こうして、個々の文字がラインセグメン
ト中の他の文字から切り出される。
【0009】このような処理においてはいくつかの問題
点が存在する。例えば、文書が斜めに画像スキャナに入
力され、図33Bに示すように傾斜角θsで画像メモリ
に格納される場合が多いが、このような場合には、第1
ライン418のテキストが第2ライン419のテキスト
とライン420で重なってしまうため、必ずしもライン
分割が可能であるとは限らない。すなわち、画素密度の
水平投影421は非ゼロ値のみとなり、ゼロ値が存在し
ないためライン間のギャップの検出が不可能になる。
【0010】このような問題点に鑑みて、テキストブロ
ック404を図33Cに示すような複数の列422,4
24に分割して、各列ごとに独立に水平投影を得る手法
が用いられている。すなわち、図33Cに示すように、
水平投影422aは列422に対応し、水平投影424
aは列424に対応するものである。各列でテキストラ
インが重なっていなければ、各列中のテキストラインの
検出が可能となる。図33Cでは2列に分割する例を示
しているが、一般には5列から10列に分割し、テスト
で最大傾斜角θsまでの傾きを有していても、ブロック
中の他のラインから個々のラインの分割が可能であるよ
うにしている。
【0011】しかし、各列ごとに水平画素投影を得なけ
ればならず、またこのようにして得た各水平画素投影も
個々に処理しなければならないため、ライン分割処理が
きわめて時間のかかる処理となる。また、最大傾斜角θ
sの文書にまで対応しなければならないため、傾斜角が
小さくて1列あるいは数列への分割で十分である多くの
文書に対しても、すべての列を処理しなければならず、
この点でも時間のかかる処理となっている。上記のよう
な2段階処理のもう1つの問題は、個々の文字をライン
セグメント中の他の文字から切り出す第2段の処理にお
いて生じる。
【0012】すなわち、文字間に垂直な空間が存在する
場合には、図34Aに示したような処理で良好な結果が
得られるが、文字が垂直方向に重なっていた場合や2つ
あるいは複数の文字が接触している場合には、文字分割
処理を適切に行うことができない。イタリックフォント
の場合や、複数回の複写処理やファクシミリ送信によっ
て画像品質が劣化している場合など、このような状況に
陥る可能性は高い。例えば、図34Bに示すように、イ
タリックテキストでは単語「Satisfy」中の文字
「f」と「y」とが垂直方向に重なっており、画素密度
の垂直投影425が文字間でゼロにならないことがあ
る。そのため、文字「f」と「y」とを分離することは
できない。また、文字「t」と「i」も接触しているた
め、同様にこれら2つの文字の分離も不可能である。
【0013】
【発明が解決しようとしている課題】本発明は、前記従
来の欠点を除去し、高速かつ正確に文書上の文字を認識
してテキストファイルを作成する文字認識方法及び装置
を提供する。また、高速かつ正確に文書上のテキストと
非テキストとを選別して、テキストブロックを割り出す
方法及び装置を提供する。
【0014】また、高速かつ正確に文書上の非テキスト
を分類する方法及び装置を提供する。また、高速かつ正
確にテキストブロックからテキストラインを分割する方
法及び装置を提供する。また、高速かつ正確に傾いた文
書のテキストブロックからテキストラインを分割する方
法及び装置を提供する。
【0015】また、高速かつ正確にテキストラインから
文字を切り出す方法及び装置を提供する。また、不適切
に切り出された文字の再切り出しが可能な方法及び装置
を提供する。
【0016】
【課題を解決するための手段】この課題を解決するため
に、本発明の文字認識方法及び装置は以下の構成を含
む。画素画像データが入力され、2値の画素画像データ
でない場合は2値の画素画像データに変換される。
【0017】画素画像データのブロックが、画素画像デ
ータ内で連結要素の輪郭を追跡し、連結要素がテキスト
要素を含むか非テキスト要素を含むかを連結要素のサイ
ズに基づいて決定し、隣接するテキスト要素の近接状態
に基づいてテキスト要素を選択的に連結してテキストラ
インを形成し、隣接するテキストラインの近接状態とテ
キストライン間の非テキスト要素の位置とに基づいてテ
キストラインを選択的に連結することにより、選別され
る。階層的木構造が連結要素に基づいて形成される。
【0018】テキストブロックは、段の全域での画素密
度の水平投影に基づいてテキストブロックを少なくとも
1つのラインに分割することで、テキストラインに分割
され、非接触で重なっていない文字を切り出す第1の切
り出しと接触文字間を切り離す第2の切り出しとの2回
の切り出しで、文字が分割されたラインから切り出され
る。切り出された文字は認識され、認識に基づいて文字
コードが割り当てられる。文字コードは階層的木構造に
よる確定された順でコンピュータのテキストファイル内
に格納される。
【0019】必要ならば、非テキスト要素は階層的木構
造により確定された順に対応して格納された文字コード
の間に散在してもよい。画素画像データは例えば画像圧
縮や画質向上等の前処理をされ、認識された文字は例え
ば文脈チェック等の後処理をされてもよい。非テキスト
要素の特徴に基づいて、非テキスト要素に識別子が付与
される。例えば、非テキスト要素の内部で白輪郭の追跡
が行なわれ、非格子状配置の白輪郭が再連結されて、白
輪郭の充填率が計算されて、白輪郭の数、非格子状配置
の白輪郭の再連結率、あるいは白輪郭の充填率等に基づ
いて、非テキスト要素には表の識別子が付与される。
【0020】非接触で重なっていない文字の切り出し
は、ラインセグメントへのとびとびの処理で達成され、
接触文字の切り離しは、接触文字間の空間に関する情報
が既知か否かに対応して達成される。空間に関する情報
が既知の場合は、空間の統計値に基づいて切り出しが達
成される。空間に関する情報が無い場合、接触文字間の
切り離しは、回転された投影によって決められた角度と
位置で接触文字を斜めに切り離すように、画素密度の回
転投影に対応して達成される。不適切に切り出された文
字は再接続される。
【0021】
【実施例】本発明は、複写機,ファクシミリ,ビデオカ
メラあるいはスチルビデオカメラ,レーザビームプリン
タなどの画像処理装置あるいは画像再生装置などのよう
な、文字認識処理が望まれるさまざまな装置において実
施可能である。このような装置においては、文字画像を
有する画像を、文字画像が文字認識されるように処理あ
るいは再生する。この際、認識した文字画像を標準文字
セットあるいはフォントに替えて、原文字画像ではなく
標準文字を再送あるいは再生することもできる。また、
本発明は、汎用コンピュータや、パーソナルコンピュー
タ,ワードプロセッシングあるいはデータプロセッシン
グ機器などのオフィス機器や、複数のビジネス機器を単
一の統合パッケージにまとめた統合オフィス自動機器な
どにおいても実施可能である。
【0022】図1は、スキャン,ファクシミリ,情報送
受信,情報処理(ワードプロセッシングやデータプロセ
ッシングなどの処理をも含む)などの機能を有する統合
オフィス自動機器として、本発明の一実施例を示すブロ
ック図である。図1に示す装置において、画像の入力
は、ファクシミリ送信による入力、原文書のスキャンに
よる入力、モデムを介して離れた地点からの入力などで
行われる。本実施例によれば、画像中の文字を認識し、
認識文字のコンピュータテキストファイルを生成し、装
置内のワードプロセッシング,スプレッドシート処理な
らびに他の情報処理機能を利用してテキストファイルの
修正を行うことができる。この処理に続いて、修正され
たテキストファイル(あるいは無修正のテキストファイ
ル)の再送や、音声合成技術を用いてテキストファイル
のスピーカや通常の音声電話への「話しかけ」などによ
る出力が行われる。
【0023】図1において、プログラム可能なマイクロ
プロセッサなどの中央処理ユニット(CPU)10はバ
ス11に接続されている。また、画像を画素ごとにスキ
ャンして画像メモリ(例えば、以下で示すRAM20)
に蓄積するスキャナ12、デジタルデータを電話線15
aを通してアナログ形式で送受信するモデム14、画像
データを電話線15bを通して送受信するファクシミリ
16(不図示の電話を含むこともある)なども、バス1
1に接続される。なお、電話線15aと15bとは同一
の線であって、不図示のネットワーク制御ユニットで制
御されるものでも良い。さらに、バス11には、CPU
10によって実行される1つあるいは複数のコンピュー
タプログラムを蓄えるリードオンリメモリ(ROM)1
7、認識処理において入力文字と比較する文字の辞書を
保持している文字辞書19、入力画像データ,処理画像
データならびに画像の構造などの情報を蓄えるランダム
アクセスメモリ(RAM)20、文字認識処理において
文字の認識結果を出力する出力装置21(ディスクメモ
リ,スピーカあるいは音声電話線インタフェースを有す
る音声合成装置など)、装置によって処理された画像を
表示するプリンタ/ディスプレイ22、オペレータが装
置を操作するためのキーボード24なども接続される。
【0024】なお、ここでは、バス11に接続された装
置が協調して統合オフィス自動機器を構成しているが、
これらの装置のうちのいくつかあるいはすべてが単独で
用いられることも可能なことは明らかであろう。スキャ
ナ12,モデム14及びファクシミリ16は、画像デー
タを装置に入力するための種々の入力手段である。スキ
ャナ12では、原画像はラインごと画素ごとにスキャン
され、CPU10の制御のもとで画像データの画素はR
AM20中の画像メモリにビットマップ形式で蓄えられ
る。モデム14では、電話線15aを介してアナログ形
式で受信した画像データがデジタル画素形式に変換さ
れ、デジタル画素データはRAM20中の画像メモリに
蓄えられる。ファクシミリ16では、電話線15bを介
して修正ハフマンランレンクス符号などの符号形式で受
信した圧縮画像データを、ファクシミリ16において従
来手法でデジタル画像の画素データに復号して、CPU
10によって画像データの画素はRAM20中の画像メ
モリにビットマップ形式で蓄えられる。ここで、他の画
像入力手段を用いることはもちろん可能で、ディスクメ
モリなどの大容量の蓄積メディアから画像データを取り
出したり、ビデオカメラあるいはスチルビデオカメラか
ら入力することもできる。
【0025】ファクシミリ16や出力装置21は、文字
認識された画像データを装置から出力するための種々の
手段である。ファクシミリ16では、本実施例に基づき
認識処理された文字画像が標準文字セットあるいはフォ
ントに変換され、装置から送信される。これにより、例
えば、文字画像を含む画像を受信して、文字画像を文字
認識し、再送に先立って認識文字を標準文字フォントに
変換することで、劣化画像の品質の改善を図ることがで
きる。
【0026】モデム14や出力装置21は、画像データ
で認識された文字をASCIIコードなどで出力あるい
は蓄積するための種々の手段である。すなわち、文字は
装置(ディスクメモリなど)に蓄えられたり、モデム1
4を介して離れた地点に転送するために出力される。こ
の際、ASCIIコードをファクシミリ互換のフォーマ
ットに変換するなどの文字変換手段を設ければ、ファク
シミリ16を用いることなくモデム14を介して離れた
地点のファクシミリ機に転送を行うことができる。
【0027】プリンタ/ディスプレイ22は、本実施例
に基づく文字認識処理の流れの監視、ならびに文字認識
の各ステップの永久記録の出力および表示を行うための
手段である。キーボード24は、図1の装置の動作に対
するオペレータの制御を可能にしている。図2は、本実
施例の文字認識処理のフローチャートである。図2に示
した処理ステップは、プログラムROM17に蓄えられ
ているコンピュータプログラムに基づいてCPU10で
実行される。
【0028】ステップS201において、画素単位の画
像データ(以下画素画像データ)は装置に入力され、R
AM17に蓄えられる。画像データは画像を画素ごとに
表現したものである。この際、画素データは2値画素デ
ータ、すなわち黒ならびに白画像データであることが好
ましい。なお、画像データは、複数のグレイ階調値の1
つで各画素が表現される中間調画像であっても、画素色
を表わす複数ビットワードで各画素が表現されるカラー
画像データであっても良い。このような場合、すなわち
画素データが2値画素データでない場合には、非2値画
素データを2値画素データに変換するためのしきい値処
理をRAM20に蓄積する前に行う必要がある。
【0029】ステップS201で入力された画素画像デ
ータは、左上隅から右下隅に読み進められるようなポー
トレイト画像であることが好ましい。画像がポートレイ
ト画像でない場合、例えばランドスケイプ画像である場
合には、画素画像データをポートレイト型の画像に変換
する必要がある。この変換処理は、オペレータがキーボ
ード24から画像データの変換を指示することで行うこ
とができる。
【0030】ステップS202では、画像データの前処
理が行われる。一般に、前処理フィルターを用いて画像
データの画質を向上し、劣化した文字や画像を改善す
る。画質向上手法として適切な手法は、1991年10
月4日出願の米国出願番号07/771,220に示さ
れている。尚、ステップS202では、精度の劣化は避
けられないが、画素画像データ中の複数の画素を削除し
たり圧縮したりすることで、認識処理の高速化を図るこ
とも可能である。例えば、m×n画素ブロックの画素の
平均値を求め、この平均値でm×n画素ブロックを代表
させることも可能である。
【0031】ステップS203では、ブロック選択を行
って各セグメント画像中の画像データの型を調べ、ブロ
ック中の情報がテキスト情報か,グラフィックス情報
か,線画情報か,画像情報かなどを識別する。また、ブ
ロック選択ステップS203では、画像中の各部分を以
下のステップS212で示すような適切な順序で再生す
ることができるように、画像の階層的木構造をも生成す
る。この階層的木構造には、例えば、2段組の画像デー
タにおいて第1段のテキストから第2段のテキストに飛
んで読み進めることのないように、第1段のテキストの
後に第2段のテキストを再生できるような情報が含まれ
る。なお、ステップS203におけるブロック選択処理
については、以下でより詳細に説明する。
【0032】RAM20に蓄えられた画像から第1の情
報ブロックが選択され、ブロック選択ステップS203
で判別されたブロック識別子に応じて、ステップS20
4において選択されたブロックがテキストブロックであ
るかどうかが調べられる。第1ブロックがテキストブロ
ックでない場合には、処理をステップS205に進め、
次のブロックを選択してステップS204に戻る。
【0033】ステップS204においてブロックがテキ
ストブロックである場合には、処理をステップS206
に進め、テキストブロックに対してライン分割処理を行
う。ライン分割処理では、テキストブロック中の個々の
テキストラインをテキストブロック中の他のテキストラ
インから分離して、以下に詳細に説明するように分離し
たラインごとに順々に処理を行う。ステップS207で
は、ライン中の各文字をライン中の他の文字から切り出
し、以下に詳細に説明するように個々の文字に対して文
字認識処理を行う。
【0034】ステップS208では、文字ごとに各文字
の認識処理が行われ、既知の手法で文字辞書19に蓄え
られている標準文字と各文字との比較処理が行われる。
文字辞書19中の索引は一般には1つの文字に対応する
が、分離が難しいような文字列(例えば、「fi」)や
分離されやすい1文字(例えば「j」)に対しては他の
索引が用意されることもある。すなわち、分離が難しい
ような接触文字ペアを辞書の索引とすることも、分離さ
れやすいような1文字中の部分を辞書の索引とすること
もある。比較処理に基づいて文字画像に対する識別子が
選択され、選択された文字識別子はRAM20に蓄えら
れたり、出力装置21に出力される。また、識別された
文字をプリンタ/ディスプレイ22に表示することもで
きる。
【0035】ステップS209では、テキストブロック
に対する処理が終了したかどうかが調べられる。処理が
終了していなければ、処理をステップS206(あるい
は適宜ステップS207)に戻し、ライン分割処理,文
字切り出し処理及び文字認識処理とを繰り返し行う。ブ
ロック処理が終了していれば、処理をステップS210
に進め、1ページ分の処理を終了したかどうかを調べ
る。1ページ分の処理が終了していなければ、処理をス
テップS205に戻し、ページ中の次ブロックを選択し
て処理を続ける。
【0036】1ページ分の処理が終了していれば、処理
をステップS210からステップS211に進め、後処
理を実行する。後処理では、文脈チェックやスペルチェ
ックなどの処理を行い、文字認識ステップS208で認
識された文字識別子を、ステップS208のような個々
の文字ごとではなく文字の周囲の文脈に基づいて、全体
的な見地から修正する処理を行う。ステップS212で
は、ブロック選択ステップS203で定義された階層的
木構造に基づいて画像データが再生される。ページ再生
では画像データが適切な順序で配置される。例えば、脚
注はメインテキストから分離され、段は他の段と混ざる
ことなく順番に配置され、グラフィックスや線画はペー
ジ中の認識文字テキストの適当な位置に挿入される。こ
のようなグラフィックス画像や線画の見だしも図に隣接
して挿入される。この際、他の規則を用いることもで
き、例えばページの物理的再生ではなく、ページからテ
キストのみを抽出するという規則を用いることもでき
る。なお、このようなページ再生の規則は、装置の情報
処理機能を用いてユーザが定義できる。
【0037】ステップS213では、再生されたページ
が出力装置21などに蓄えられる。ここでは、ROM1
7に蓄えられており、CPU10で実行される他の応用
プログラムを用いて、スプレッドシートやワードプロセ
ッシング処理などの情報処理を行うことができる。そし
て、処理された情報(あるいは適宜処理していない情
報)は、ファクシミリ16やモデム14などを用いて、
またはコンピュータテキストファイルを「しゃべる」音
声合成装置を用いた通常の音声電話を介してなどのさま
ざまな手段を用いて再送される。
【0038】図3は、図2のステップS203のブロッ
ク選別処理を説明するための一般化した処理流れ図であ
る。ここで、ブロック選別処理は文字認識システムとは
別に利用可能であることに注意されたい。すなわち、画
像再生装置においてブロック選別処理を用いて、ある種
のブロックに対しては画像再生の第1の手法を施し、別
の種類のブロックに対しては画像再生の第2の手法を施
すといったことも可能である。
【0039】ブロック選別の処理速度の向上を望む場合
には、ステップS300で画像データを縮小する処理を
行う。画像データの縮小処理を行った場合には、ブロッ
ク選別処理は縮小画像に対して行われる。なお、この
際、図2の残りの文字認識処理(ステップS204から
ステップS213)に影響を及ぼさないように、ブロッ
ク選別処理終了時には、縮小前の画像データに対して選
択ブロックが割り当てられる。画像データ縮小処理は、
m×m画素ブロック中の黒画素の連結性を調べながら行
われる。例えば、3×3画素ブロック中に連結された黒
画素が2個ある場合には、3×3画素ブロックを1つの
黒画素に縮小する。逆に、3×3画素ブロック中に連結
された黒画素が2個ない場合には、3×3ブロックを1
つの白画素に縮小する。
【0040】ステップS301では、画素画像を解析し
て連結された要素を検出し、連結要素をサイズや他の連
結要素との相対的な位置に応じて分類する処理を行う。
ここで、連結要素は白画素に完全に囲まれた黒画素のグ
ループである。すなわち、連結要素は、少なくとも1つ
の白画素で他の黒画素グループと完全に分離されている
黒画素グループである。図4を参照して以下で詳細に説
明するように、ステップS301では、連結要素を検出
して、連結要素から得たサイズ情報やいくつかの統計的
な値に基づいて各連結要素の分類を行う。
【0041】まず、以下で詳細に説明するように、各連
結要素をテキスト要素か非テキスト要素かに分類する。
さらに、非テキスト部については、フレームデータであ
るか,中間調画像であるか,線画であるか,表あるいは
テキストデータを表のように構成したものであるか,あ
るいは未知の要素で分類不可能であるかなどを解析処理
して決定する。また、各連結要素ごとに階層的木構造を
構成して、連結要素の構造的な記述データを求め、ステ
ップS212で説明したようにデジタルデータの再生を
容易にする。
【0042】ステップS302では、水平方向に近い位
置関係にあり、ギャップラインマーカを横切らないよう
な連結要素をラインとしてグループ化する。この際、ス
テップS301で作成した木構造を用いて、テキスト要
素と非テキスト要素とが不適切にグループ化されないよ
うにする。また、ステップS302では、段間で垂直方
向に伸びるギャップや非テキスト要素の垂直方向に伸び
る境界を検出して、テキスト要素を段ごとにまとめる。
ここで得られた段構造は階層的木構造に組み込まれ、適
宜木構造の更新が行われる。
【0043】ステップS303では、ステップS302
でグループ化されたラインの内、垂直方向に近接するラ
インを垂直方向にグループ化して、ブロックを形成す
る。ここで、非テキスト要素は垂直方向にソートされ、
画像ページの境界として用いられる。なお、2つの非テ
キスト要素の間に位置するテキストライン要素は、他の
テキストライン要素とは別に処理される。また、ステッ
プS303では、ステップS301で分類できなかった
非テキスト要素が、大きなフォントサイズのタイトルで
あるかどうかを判別する。タイトルであると判別される
と、その部分に「タイトル」属性を付与し、木構造を更
新する。ここで得られたタイトルは、ステップS212
に基づくページの再生の際に有用な情報となりうる。
【0044】図4A〜図4Cは、画素画像デ−タの連結
要素をどのように検出して、どのようにこれらの連結要
素を分類するかを示す詳細なフローチャートである。図
4A〜図4Cに示される処理ステップは、ROM17に
保持されているプログラムステップに基づいてCPU1
0で実行される。ステップS401では、輪郭追跡を行
い画素画像データの連結要素を検出する。輪郭追跡処理
は図5Aに示すように画像データをスキャンすることで
行われる。スキャン処理は矢印Aで示されるように画像
の右下部から左に行われ、画像の右側の端に達したとき
に上に進むように行われる。なお、この際、逆方向すな
わち左上から右下にスキャンすることもできる。スキャ
ン処理中に黒画素を検出すると、31で示すような星形
パターンの順序で隣接画素を調べ、黒画素の隣接画素も
また黒画素であるかどうかを判別する。星形パターン3
1には8個の番号付けされたベクトルが中心点から伸び
ているため、このような輪郭追跡を以下「8方向」追跡
と呼ぶことにする。黒画素が隣接して存在する場合に
は、画像の外側輪郭を追跡し終えるまで上述の処理を繰
り返す。
【0045】すなわち、図5Bに示すように、矢印A方
向へのスキャン処理によって、まず文字「Q」の端に対
応する点32が検出される。次いで、星形パターン31
に基づいて隣接画素が判別され、文字「Q」の外側輪郭
が追跡される。この際、閉輪郭の内部の輪郭追跡処理は
行わない。連結要素を1つ検出して、8方向追跡で輪郭
の追跡を終えると、次の黒画素を検出するまでスキャン
処理を続ける。すなわち、完全な黒領域である物体34
の8方向追跡を行う。また、手書き単語「non−te
xt」の非テキスト物体35を、単語「word」を構
成する個々の文字のテキスト物体36中の個々の文字と
同様に追跡する。図5Aに示すスキャン処理は、画素デ
ータ中のすべての連結要素を検出し、8方向追跡して輪
郭を検出するまで行われる。
【0046】次いで処理をステップS402に進め、各
連結要素を矩形で囲む処理を行う。具体的には、各連結
要素の周りを包囲する最も小さな矩形を描く。すなわ
ち、図5Bに示すように、物体32の周りには矩形37
が、物体34の周りには矩形39が、物体35の周りに
は矩形40が、テキスト物体36a,36b,36c,
36dの周りには矩形41a,41b,41c,41d
が描かれる。
【0047】ステップS403では、各矩形要素に対し
て木構造中の位置が割り当てられる。ほとんどの場合、
ステップS403で得られる木構造では、画素画像中の
各物体は木の根に直接つながる。これは、連結要素の外
側輪郭のみを追跡しており、閉輪郭の内部は追跡してい
ないためである。すなわち、図5Cに示すように、連結
要素32に対応する矩形37はページの根に直接つなが
る。これに対し、非テキスト物体35に対応する矩形4
0や、テキスト物体36a,36bに対応する矩形41
a,41bなどのように、矩形が他の矩形の内部に完全
に位置するような連結要素は、囲っている連結要素(こ
の場合には要素34)の子ノードとして位置付けられ
る。また、要素34などのように少なくとも1つの子を
有する連結要素は、それ自身を「主な子ノード」として
位置付ける。すなわち、図5Cに示すように、要素39
が「主な子ノード」として、要素39の他の子ノード4
0,41a,41bとともに位置付けられる。
【0048】ステップS404では、木構造の第1レベ
ルの各連結要素をテキスト要素あるいは非テキスト要素
に分類する。この分類処理は2つのステップで行われ
る。第1ステップでは、連結要素の矩形と所定のしきい
値サイズとの比較を行う。連結要素を囲む矩形の高さ
が、想定される最大フォントサイズに対応する所定の第
1しきい値以上であれば、あるいは連結要素を囲む矩形
の幅が、ページ幅を経験的に決められた一定値で割った
値以上であれば(「5」で良好な結果が得られることが
わかっている)、連結要素を非テキスト要素と分類し、
要素に「非テキスト」の属性を付与する。
【0049】第2ステップでは、残りすべての要素すな
わち非テキストと分類されなかった要素と、残りすべて
の連結要素のサイズの集合に基づいて適当に求められる
しきい値との比較を行う。具体的には、非テキスト要素
として分類されなかったすべての矩形の平均の高さを求
め、この平均高にスカラー値を掛け合わせたものを
(「2」を用いると好都合である)適当に求められるし
きい値とする。そして、適当に求めたしきい値以上に大
きな要素はすべて非テキストであると考え、非テキスト
要素として分類する。また、適当に求めたしきい値以下
の小さな要素はすべてテキスト要素であると考える。こ
のようにして要素の分類を行い、適切な属性が付与され
る。
【0050】なお、図4A〜図4Cの残りを参照して以
下で詳細に説明するように、ここで求めた分類結果は以
下で改善される。木構造の第1レベルの各要素をテキス
ト要素あるいは非テキスト要素として分類すると、テキ
スト要素の主な子ノードを含むすべての子ノードをテキ
スト要素として分類する。これに対して、非テキスト要
素の主な子ノードは非テキスト要素として分類するが、
非テキスト要素の他のすべての子ノードはテキスト要素
と分類する。
【0051】ステップS405において、最初の要素を
選択する。要素がテキスト要素であれば(ステップS4
06)、ステップS407に処理を進め次の要素を選択
する。非テキスト要素を選択して処理をステップS40
8に進めるまで、ステップS406とS407の処理を
繰り返す。ステップS408では、非テキスト要素に子
ノードが存在するかどうかが調べられる。例えば、図5
Cに示されるように、非テキスト要素39には、非テキ
ストの主な子ノード39とテキストの子ノード40,4
1a,41bとが存在する。
【0052】ステップS408において子ノードが存在
する場合には、処理をステップS409に進め、要素に
フィルタ処理が施され、要素が中間調(あるいはグレイ
階調)要素であるかどうかが判別される。中間調フィル
タ処理では要素の子ノードを調べ、要素の子ノードのう
ち「雑音サイズ」以下であるようなサイズのものを求め
る。ここで「雑音サイズ」の要素とは、高さが画像デー
タにおいて想定される最小のフォントサイズ以下である
ような要素のことである。雑音サイズ以下のサイズの子
ノード数が全体の子ノード数の半分以上であれば、要素
は中間調画像として判断される。そこで、ステップS4
10で処理をステップS411に進め、「中間調」属性
を要素に付与する。
【0053】次いでステップS412で、中間調画像中
のテキスト要素をチェックする。具体的には、木構造中
の中間調画像の子ノードのうちテキストサイズの子ノー
ドを修正して、テキストサイズの要素を中間調画像の子
ノードとしてではなく、中間調画像と同一レベルのノー
ドに配置する。これにより、中間調画像中のテキストサ
イズの要素に対しても、適切だとすれば文字認識処理を
行うことができる。この処理を終えると処理をステップ
S407に戻し、次の要素を選択して処理を行う。
【0054】ステップS409の中間調フィルタ処理に
おいて要素が中間調画像でないと判別された場合には、
処理をステップS410からステップ413に進め、さ
らなる処理を施すために要素の主な子ノードを選別す
る。そして、処理をステップS414に進める。ステッ
プS408において非テキスト要素が子ノードをもたな
いと判別される場合、あるいはステップS413におい
てさらなる処理を施すために主な子ノードが選択される
と、ステップS414で当該要素に対してフレームフィ
ルタ処理が施される。フレームフィルタ処理は、当該要
素がフレームであるかどうかを調べ、当該要素を囲むよ
うな矩形とほぼ同一の幅/高さを有する平行水平線と平
行垂直線とを検出するための処理である。具体的には、
画素中の行ごとに当該要素中の連結要素内部の最大長を
求めて、連結要素が調べられる。
【0055】すなわち、図6Aに示されるように、非テ
キスト要素42には連結要素43が含まれるが、その輪
郭は8方向追跡によって44で示すように追跡処理され
る。行「i」における連結要素内部の最大長は、輪郭の
左端45aから右端45bまでの距離xi となる。ま
た、行「j」では、連結要素内部の長さとして、連結要
素の境界上の点46aと46bの距離、ならびに点47
aと47bの距離との2つが存在する。ここで、点46
aと46bの距離の方が点47aと47bの距離よりも
長いため、距離xj が行jにおける連結要素内部の最大
長となる。
【0056】非テキスト要素42中のn個の行ごとに距
離「x」を求め、以下の不等式を満たすかどうかを調
べ、非テキスト要素がフレームであるかどうかを判別す
る。
【0057】
【数1】 ここで、xk は(上述のように)連結要素内部のk行目
の最大長,Wは矩形要素42の幅,Nは行数,しきい値
はフレームが画像データ中で傾いていてもフレーム検出
が可能となるように前もって計算した値である。ここ
で、1度の傾き角を許容するには、しきい値としてsi
n(1°)をL倍したものに、ステップS404で計算
したテキストの平均の高さをオフセットとして加えたも
のを用いると良い。
【0058】上記の不等式が満たされれば、要素はフレ
ーム要素であると判断され、ステップS415からステ
ップS416に処理を進め、「フレーム」属性を要素に
付与する。ここで、複数の属性が各要素に付与されうる
ことに注意されたい。すなわち、「フレーム−表」、
「フレーム−中間調」などのようにフレームの属性が付
与されることもある。
【0059】ステップS416に続いて、フレーム要素
中に表データあるいは表のように組織されたデータが存
在するかどうかを調べる処理を行う。そこで、ステップ
S417において、連結要素の内部を調べて白輪郭を求
める。白輪郭は、黒画素ではなく白画素に着目するとい
う点を除けば、上のステップS401で検出した輪郭と
同一のものである。すなわち、図7Aに示されるよう
に、非テキスト要素の内部を非テキスト要素の右下から
左上へ矢印Bの方向に沿ってスキャンする。このスキャ
ン処理によって第1の白画素が検出されると、星形パタ
ーン51の順序で白画素の隣接画素がチェックされる。
星形パターン51には1から4までの数が付与されたベ
クトルがある。このため、このような処理に基づく白輪
郭追跡処理のことを以下「4方向」白画素追跡と称す
る。
【0060】黒画素に囲まれた白輪郭すべてを追跡し終
えるまで、4方向の白画素追跡処理を繰り返す。例え
ば、白輪郭追跡処理によって、黒画素セグメント52,
53,54,55ならびに内部に存在する56のような
他の黒画素で構成される内部輪郭の画素が追跡される。
このようにして白輪郭を位置付けると、矢印B方向への
スキャン処理を、非テキスト物体に囲まれたすべての白
輪郭を追跡するまで繰り返す。
【0061】ステップS418では、非テキスト要素の
密度を計算する。密度は連結要素中の黒画素数を計数し
て、黒画素数を矩形中の全画素数で割ることで計算され
る。ステップS419では、非テキスト要素中で検出さ
れた白輪郭数の数をチェックする。白輪郭の数が4以上
であれば、非テキスト画像が表またはテキストブロック
を表のように並べたものである可能性が高い。
【0062】そこで、ステップS420において、白輪
郭の充填率を求める。白輪郭の充填率は、白輪郭が非テ
キスト画像中の領域を占める割合のことである。例え
ば、図7Aに示されるように、白輪郭充填率には、57
や59のような斜線領域で完全に空の白領域と、60や
61のような領域で中に黒画素を含むような白領域とが
含まれる。この充填率が高いと、非テキスト画像が表ま
たはテキストデータを表のように並べたものである可能
性が高い。そこで、ステップS421において充填率を
チェックする。この際、高い充填率であれば、非テキス
ト画像は表またはテキストデータを表のように並べたも
のであると考えられる。
【0063】この処理の信頼性を向上させるために、白
輪郭が水平ならびに垂直方向に格子状の構造をなしてい
るかどうかを調べる。すなわち、ステップS422にお
いて、少なくとも2つの白輪郭の境界線が水平方向なら
びに垂直方向に一致しないような非格子状の白輪郭を再
接続する。例えば、図7Aに示されるように、白輪郭5
9の左境界線62及び右境界線63は、白輪郭60の左
境界線64及び右境界線65と垂直方向に一致する。そ
のため、これらの白輪郭は格子状に配置されており、白
輪郭の再接続は行わない。同様に、白輪郭59の上部境
界線66及び下部境界線67は、白輪郭70の上部境界
線68及び下部境界線69と水平方向に一致する。その
ため、これらの白輪郭は格子状に配置されており、これ
らの白輪郭の再接続は行わない。
【0064】図7Aから図7Dまでは、白輪郭を再接続
する場合を説明するための図である。図7Bは非テキス
ト要素71を示しており、これはステップS201で示
した中間調画像の2値画像へのしきい値処理などによっ
て得られるものである。非テキスト画像71には、黒領
域72と白領域74,75,76,77,78,79が
存在する。ここで、これらの白領域の充填率は十分高
く、ステップS421において処理は再接続ステップS
422に進められたものとする。
【0065】まず、図7Cに示されるように、白輪郭7
5の左境界線及び右境界線と、白輪郭76の左境界線及
び右境界線とを比較する。すると、これらの境界線は一
致しないため、白輪郭75と白輪郭76とは再接続され
て図7Cの接続白輪郭76’が生成される。次いで、図
7Dに示されるように、白輪郭77の上部境界線及び下
部境界線と、白輪郭79の上部境界線及び下部境界線と
を比較する。すると、これらの境界線は一致しないた
め、白輪郭77と白輪郭79とは1つの接続白輪郭7
7’として結合される。再接続される輪郭がなくなるま
で、これらの処理を水平方向に垂直方向に繰り返す。
【0066】すなわち、上述のように、表をなす白輪郭
は再接続されにくいのに対し、中間調画像や線画などの
表でないような白輪郭は再接続されやすい。そこで、ス
テップS423において接続率を調べる。ここで、再接
続率が高ければ、あるいは再接続処理後に残った白輪郭
の数が4より少なければ、処理をステップS428に進
め、以下で詳述するように、非テキスト要素に「中間調
画像」もしくは「線画」の属性を付与する。ステップS
423において再接続率が高くなく、且つ少なくとも4
つの白輪郭が残っていれば、処理をステップS424に
進め、非テキスト画像に「表」の属性を付与する。
【0067】ステップS425では、新たに属性が付与
された表の内部を調べ、8方向追跡処理で連結要素を検
出し分類する。ステップS426では、この新たな内部
の連結要素に基づいて階層的木構造を更新する処理を行
う。続くステップS427では、ステップS402から
ステップS404で示したような手法でもって、内部連
結要素をテキスト要素もしくは非テキスト要素に再分類
し、適当な属性を付与する。これらの処理を終えると、
処理をステップS407に戻し次の要素が選択される。
【0068】ステップS421とS423に戻って、ス
テップS421で充填率が高くない場合、あるいはステ
ップS423で再接続率が高い場合には、非テキストフ
レーム要素は中間調画像もしくは線画である可能性が高
いと考えられる。ここで、要素を中間調画像として分類
するか、あるいは線画として分類するかの決定は、要素
中の黒画素の平均水平ラン長、要素中の白画素の平均水
平ラン長,白画素と黒画素との比率,及び密度に基づい
て行われる。一般に、暗めの画像は中間調画像であると
考えられ、明るめの画像は線画であると考えられる。
【0069】具体的には、白画素の平均水平ラン長がほ
ぼゼロ(すなわち、全体が暗めあるいはまだらな画像)
であって、ステップS418で求めた密度によって要素
が白っぽいというよりもむしろ黒っぽい場合(すなわ
ち、密度が1/2程度の第1しきい値より高い)には、
フレーム要素は中間調画像であると判別される。密度が
第1しきい値以下である場合には、要素は線画として判
別される。
【0070】白画素の平均水平ラン長がほぼゼロではな
く、黒画素の平均水平ラン長より長い場合には、フレー
ム要素は線画であると判別される。しかし、白画素の平
均水平ラン長が黒画素の平均ラン長以下(すなわち、暗
めの画像)である場合には、さらなる判別処理が必要と
なる。具体的には、黒画素数が白画素数よりもかなり少
ない(すなわち、黒画素数を白画素数で割った値が約2
の第2しきい値より大である)場合には、フレーム要素
を中間調要素として判別する。これに対し、黒画素数を
白画素数で割った値が第2しきい値以下であっても、ス
テップS418で求めた密度が第1しきい値より高けれ
ば、フレーム要素を中間調画像として判別する。これ以
外であれば、フレーム要素は線画として判別される。
【0071】ステップS428においてフレーム要素が
線画として判別されれば、処理をステップS429に進
めて「線画」属性を付与し、ステップS430ですべて
の子ノードを削除する。なお、要素が線画として判別さ
れると、線画要素のいかなるブロックも文字認識のため
に選択されることはない。そして、処理をステップS4
07に戻し次の要素を選択する。
【0072】一方、ステップS428においてフレーム
要素が線画として判別されなかった場合には、処理をス
テップS431に進めて「中間調」属性を付与し、ステ
ップS432でフレーム中間調要素のテキストサイズの
子ノードを削除する。ここで、テキストサイズは、ステ
ップ404において述べたように平均の要素の高さとし
て求められる。また、テキストサイズより大きなすべて
の子ノードは、フレーム中間調要素の子ノードのままと
する。これらの処理を終えると、処理をステップS40
7に戻し次の要素を選択する。
【0073】ステップS419に戻り、白輪郭の数が4
より小さい場合には、フレーム要素は表であるとは判別
されない。そこで、処理をステップS433に進め、ス
テップS418で求めた密度と約0.5のしきい値とを
比較する。ここで、しきい値は、フレーム内のテキスト
要素や線画が占める面積は画素の半分以下であることを
鑑みて選択されている。
【0074】密度がしきい値より小さければ、処理をス
テップS434に進め、上述のようにフレーム要素の内
部構造を作成する。すなわち、処理をステップ401に
戻し、フレーム要素の内部構造に対する処理を行う。ス
テップS433において、密度が所定のしきい値以上で
あった場合には、処理をステップS442に進め、フレ
ーム要素を線画,中間調画像あるいは分類不可能(すな
わち、フレームが「未知」)のどれかに分類する。
【0075】ステップS415に戻り、ステップS41
4におけるフレームフィルタ処理で非テキスト要素中に
フレームが検出されなかった場合には、処理をステップ
S435に進め、非テキスト要素中に線が含まれるかど
うかを調べる。線は、テキスト境界を明確にするのに適
した非テキスト要素である。この際、このような線に囲
まれたテキストは線のそばに位置することが多いため、
テキストが線に接するということもありうる。そのた
め、テキストが接していても接していなくても線を検出
できるような線の検出処理を行う。
【0076】テキストが接していない線を検出するに
は、非テキスト要素の長さ方向のヒストグラムを求め
る。すると、図6Bに示されるように、線のヒストグラ
ム48はほぼ均一な分布となり、ヒストグラムの高さは
線幅にほぼ等しくなる。また、線幅は、非テキスト要素
の幅「W」にほぼ等しい。ここで、線幅と非テキスト要
素の幅との差は、画素画像を生成する際の原文書の傾き
角θsによるものである。そこで、非テキスト要素が線
を含むかどうかを調べるために、ヒストグラム中の各セ
ルkの高さ49を非テキスト要素の幅Wと比較する。す
なわち、これらの値間の実効値誤差としきい値とを次式
のように比較する。
【0077】
【数2】 ここで、しきい値は、非テキスト要素中の線の傾き角θ
sを許容できるように設定される。例えば1°の傾き角
であれば、しきい値として
【0078】
【数3】 を用いると良好な結果が得られる。上の不等式によって
テキスト要素が接していない線が検出されなかった場合
には、テキスト要素が接している線を含む要素であるか
どうかを調べる処理を行う。テキスト要素に接している
線が非テキスト要素中に含まれるかどうかを判別するた
めに、要素の境界に沿って線が長く伸びているかどうか
を調べる。すなわち、要素を通して線が長く伸びていれ
ば、図6Cに示すように要素を囲む矩形の境界は線にき
わめて近いところに位置する。そこで、矩形の境界近く
の第1番目の黒画素位置の均一性を、境界からの距離の
2乗の和を求めることで判断する。すなわち、次式の不
等式を満たすかどうかを調べる(図6C参照)。
【0079】
【数4】 ここで、2乗の和が所定のしきい値より小である場合に
は、テキスト要素が接している線要素と判別する。この
際、しきい値として、テキスト要素が接していない線の
検出におけるいき値を用いると、良好な結果が得られ
る。ステップS435において線を検出すると、処理を
ステップS436からステップS449に進め、「線」
属性を非テキスト要素に付与する。そして、処理をステ
ップS407に戻し、次の要素を選択する。
【0080】一方、ステップS435で線が検出されな
かった場合には、処理をステップS436からステップ
S437に進め、非テキスト要素のサイズを調べる。こ
こで、サイズが所定のしきい値以下であると、非テキス
ト要素の分類が不可能となる。なお、このしきい値は最
大のフォントサイズに基づいて決められるものであり、
最大フォントサイズの半分の値で良好な結果が得られ
る。そして、処理をステップS438に進めて「未知」
属性を非テキスト要素に付与し、処理をステップS40
7に戻して次の要素を選択する。
【0081】ステップS437においてサイズが所定の
しきい値よりも大であった場合には、処理をステップS
439,S440,S441に進め、ステップS41
7,S418,S419で述べたように、非テキスト要
素内部の白輪郭を追跡し、非テキスト要素の密度を求
め、白輪郭の数を調べる。ステップS441において白
輪郭の数が4以下であれば処理をステップS442に進
め、要素サイズを計算し、要素が線画や中間調画像であ
るのに十分な大きさであるかを調べる。このサイズ計算
は、非テキスト要素の高さと幅ならびに黒画素の最大ラ
ン長に基づいて行われる。具体的には、非テキスト要素
の高さや幅が最大フォントサイズ以下であれば、非テキ
スト要素は中間調画像や線画であるほど大きくはないと
判断し、処理をステップS443に進め「未知」属性を
付与する。また、非テキスト要素の幅は最大フォントサ
イズより大であるが、黒画素の最大ラン長は最大フォン
トサイズ以下である場合にも、処理をステップS443
に進め、「未知」属性を付与する。そのあと、ステップ
S407に処理を戻し、新たな要素を選択する。
【0082】ステップS442において非テキスト要素
が線画や中間調画像であるのに十分な大きさであると判
断されると、ステップS444に処理を進め、非テキス
ト要素が線画であるか中間調画像であるかの判別を行
う。ステップS444からステップS448までの処理
は、それぞれステップS428からステップS432ま
での処理と同一のものであり、ここでの説明は省略す
る。
【0083】図4A〜図4C(図3中のステップS30
1)を参照して以上説明したように、画素画像中のすべ
ての連結要素を検出して分類すると、図14に示される
ような木構造が得られる。図14に示されるように、木
構造の根は画素画像データのページに対応する。根から
の子ノードには、テキストブロックや、未知,フレー
ム、絵、線などからなる非テキストブロックが存在す
る。また、フレームの子ノードには、テキストブロッ
ク、未知の非テキストブロック,テキストブロックを有
する表,絵,線などが存在する。
【0084】図10は画素画像データの典型的なページ
90を示したものであり、大きなフォントサイズのテキ
スト91,テキスト93などを含む表92,テキストデ
ータ94,水平線95,もう一つのタイトル96,2段
落のテキストデータ97及び見だし99を備えるフレー
ム線画98とタイトル100で始まり,テキストデータ
101,見だし103を備えるフレーム中間調画像10
2,テキストデータ104,水平線105,テキストデ
ータの最終段落106へと続く第2段とが示されてい
る。図11は、ステップS301に基づく処理後の同一
画素画像を示したものである。図11に示されているよ
うに、画素画像データ90中の連結要素が矩形ブロック
で囲まれており、矩形ブロックの内部についてはステッ
プS415からステップS434までのフレーム処理で
判別される。
【0085】ステップS302では、ステップS301
で得られたすべてのテキスト要素を、木構造の位置に関
わらず水平方向にグループ化する。グループ処理は各テ
キスト要素の密集性ならびにその近傍関係とに基づいて
行われる。なお、この際、段に対応する垂直方向に伸び
たギャップが検出され保持される。以下、図8を参照し
て、ステップS302で行う詳細な処理について説明を
加える。図8に示される処理ステップは、ROM17に
保持されるプログラムステップに基づいてCPU10で
実行される。
【0086】ステップS801では、非テキスト要素の
左端ならびに右端から垂直にギャップラインマーカを伸
ばす処理を行う。すなわち、図11に示されるように、
ギャップラインマーカ109aと109bとをテキスト
あるいは非テキスト要素(ここでは要素95)に達する
まで垂直に伸ばす。また、ギャップラインマーカ109
cと109dとをテキストあるいは非テキスト要素(こ
こでは要素95)に達するまで垂直方向に伸ばす。同様
に、残りの非テキスト要素の左端ならびに右端からギャ
ップラインマーカを垂直に伸ばす。このようなギャップ
ラインマーカを用いることで、画素画像データにおいて
段に対応するギャップ位置の判別が容易になる。
【0087】ステップS802において、図11のテキ
スト要素107のようなテキスト要素は、連結によりギ
ャップラインマーカを横切らず、且つ他のテキスト要素
と接しているかあるいは他のテキスト要素から所定のし
きい値内の距離にあれば、1つのテキストラインに連結
される。なお、適切なしきい値として、ステップS40
4で求めた平均テキスト長に経験的に得られたスカラー
値を掛けたものを用いる(「1.2」を用いると良好な
結果が得られる)。また、連結処理を行うに先立って、
テキスト要素間の垂直ギャップを調べ、段構造を示唆す
るような垂直ギャップが存在するかどうかを判別する。
すなわち、図11に示されるように、ギャップ108は
テキスト要素のペアの間に存在するが、このギャップは
テキスト画像データ中で垂直方向に数ライン程度の長さ
となるため、テキスト要素が他の要素から所定のしきい
値内の距離に位置しているにも関わらず、ステップS8
02ではギャップが維持される。
【0088】ステップS803では、連結ステップS8
02で連結されなかったテキスト要素のペアが連結によ
りギャップラインマーカを横切らず、隣のラインの第3
テキスト要素と共に重なるような場合に、これらのテキ
スト要素のペアを連結する。このようなステップによ
り、段構造を示すギャップではなく単にテキストライン
中のランダムな空間構成に起因するようなギャップを効
果的に除去することが可能となる。例えば、図11にお
いて、ステップS802ではギャップ108の連結は行
われないが、ギャップ両側のテキスト要素は1行下のラ
インの第3テキスト要素と重なり、またギャップライン
マーカを横切らないため、ステップS803においてこ
のギャップが除去される。
【0089】ステップS804では、これらの処理結果
に基づいて木構造の適切な更新が行われる。図12は、
ステップS302のグループ化処理の結果を示してお
り、図15はステップS302のグループ化処理で修正
された木構造を示している。図12に示されるように、
各々が接しているテキスト要素は、ライン110のよう
にテキストラインにグループ化される。すなわち、木構
造中に位置するテキスト要素をテキストラインに連結す
る処理を行うが、111などのようにテキスト要素が木
構造中のフレーム−表ノードの下に位置する場合にも連
結処理が行われる。ここで、このようなグループ化処理
は、上のステップS417からS439で求めた白輪郭
境界を横切ることはなく、表中の個々の項目が1つの連
続するテキストラインにグループ化されることはない。
また、左段と右段との間のギャップは維持される。さら
に、非テキスト要素は再連結されない。すなわち、11
2や113などの要素のように、互いに所定のしきい値
内の距離にあっても、非テキスト要素のグループ化は行
わない。
【0090】図15には、新たなグループ化処理の結果
に基づいて修正した木構造が示されている。図8(図3
中のステップS302)を参照して説明したようにテキ
スト要素のテキストラインのグループ化を行った後に
は、ステップS303に示されるようにテキストライン
を垂直方向にグループ化してテキストブロックを生成す
る処理を行う。
【0091】以下、図9を参照してこの処理について詳
述する。グループ化処理は、テキストライン要素の密集
性や非テキスト要素の位置に基づいて行われる。例え
ば、間に存在する非テキストラインは境界を示すため、
これを利用すれば非テキストライン両側のテキストライ
ンを1つのテキストブロックにグループ化することを避
けられる。なお、処理は、2つの連続する非テキストラ
イン要素間のすべてのテキストラインに対して1度に行
われる。また、ステップS303では、テキスト要素を
非テキスト要素に連結するべきか(例えば、非テキスト
画像とそのテキスト見だし)、非テキスト要素を他の非
テキスト要素に連結すべきか(例えば、中間調画像と線
画)の判断も行う。
【0092】図9は、テキストラインのテキストブロッ
クへのグループ化を示す詳細なフローチャートである。
ステップS901においては、最大の予想フォントサイ
ズより小ではあったが平均テキストサイズより大であっ
たため、ステップS404で非テキスト要素に分類され
た非テキスト要素からタイトルブロックの形成を行う。
隣り合う非テキスト要素のうち同じようなサイズの要素
に対してはすべてグループ化を行い、タイトルブロック
を形成し、「タイトル」属性をこのグループに付与す
る。ここでグループ化されなかった残りすべての非テキ
スト要素に対しては「絵−テキスト」属性が付与され
る。また、それに応じて木構造の更新も行う。ここで得
られたタイトルは、ページ再生時(ステップS212)
に有用な情報となる。
【0093】ステップS902では、2つのテキストラ
インにまたがる非テキスト要素の位置を明確にする。こ
のような非テキスト要素はテキストブロック間の境界と
なり、テキストラインを1つのテキストブロックにグル
ープ化してしまうことを避けることができる。ステップ
S903では、2つのステップでテキストラインの垂直
方向のグループ化を行い、テキストブロックを形成す
る。第1のステップでは、画素密度の垂直ヒストグラム
を求めるなどして、段間のギャップを検出する。第2の
ステップでは、垂直方向に連続するテキストライン間の
垂直距離がステップS404で求めたテキストの高さよ
り小さければ、それぞれの段ごとにテキストラインのグ
ループ化を行う。このステップS903の処理により、
図2のライン114のような同一テキスト段落中のテキ
ストラインを、テキストブロックにグループ化する。
【0094】ステップS904では、垂直ならびに水平
方向に隣接するテキストブロックのグループ化処理を行
う。ここで、これらのテキストブロックが非テキスト要
素で分離されていず、またこれらのブロックを連結して
もステップS903のヒストグラムから求めたギャップ
が保持されるときに、テキストブロックのグループ化が
行われる。また、ブロック間の距離がステップS404
の垂直の高さに基づいて計算される所定のしきい値より
小であるときに、テキストブロックはグループ化され
る。このステップS904の処理により、図12中の段
落115のラインと段落116のラインのテキストブロ
ックはグループ化されるが、段落117と118のライ
ンのテキストブロックはそれらの間に非テキスト要素1
19(線)を有するためグループ化が行われない。
【0095】ステップS905では、テキストブロック
を非テキストブロックに連結すべきか、非テキストブロ
ックを他の非テキストブロックに連結すべきかを判断す
る。ここで、テキストブロックの非テキスト−タイトル
ブロック,非テキスト−中間調ブロック,非テキスト−
ライン接触ブロックとの連結は、以下のように行われ
る。 (1)テキストブロックが非テキスト−タイトルブロッ
クと水平方向に近い位置にあり、垂直方向に重なってい
る場合には、テキストブロックを非テキスト−タイトル
ブロックに連結する。 (2)テキストブロックがワードサイズのブロックより
小さくて(水平、垂直方向とも)、テキストブロックの
隣にワードサイズのテキストブロックが存在しないとき
には、テキストブロックを非テキスト−中間調画像ブロ
ックの中に位置付ける。 (3)テキストブロックが非テキスト−ライン接触ブロ
ックと重なっていれば、ライン接触ブロックはテキスト
の下線である可能性が高いため、ライン接触ブロックを
テキストブロックに変換する。
【0096】また、以下の表にしたがって、非テキスト
ブロックは他の非テキストブロックと連結される。
【0097】
【表1】 この表中のテストは以下の通りである。 テスト1:1つのブロックが完全に他のブロック内に位
置すれば連結、 テスト2:絵ーテキストの幅がワードサイズのブロック
の幅より小さければ連結、 テスト3:ブロックが近接していれば連結。
【0098】ステップS906では、適切な属性が付与
され、上述の処理結果に基づいて木構造の更新が行われ
る。図13は図9の処理を行った結果のブロック構造で
あり、図16はその木構造の例である。図13におい
て、ブロックには、タイトルブロック120,テキスト
ブロック121及び絵データ122が含まれる。また、
フォームデータも含まれ、123は表構成のデータを有
するフレーム要素を示しており、124はテキスト要素
125を有するフレーム要素を示している。なお、非テ
キストライン画像127は図13に示されるさまざまな
要素を分離している。
【0099】図3から図16を参照しながら説明したブ
ロック選択処理を終えると、上述のように文字認識処理
は図2のステップS204に処理を進める。すなわち、
階層的木構造中の第1ブロックを選択して認識処理を行
う。このブロックがテキストブロックでない場合には、
処理をステップS204からステップS205に進め、
木構造中の次のブロックを選択する。テキストブロック
が選択されるまでステップS204とS205を繰り返
し、テキストブロックが選択された時点でステップS2
06に処理を進め、ラインの分割処理を行う。
【0100】図17は、図2のライン分割ステップS2
06で実行される処理ステップを詳細に示すフローチャ
ートである。図17に示される処理ステップは、プログ
ラムROM17に保持されるコンピュータプログラムに
したがってCPU10で実行される。ステップS170
1に先立って画像縮小処理を行っても良い。しかし、ラ
イン分割処理や文字分割処理は水平方向の空白により影
響を受けやすいため、画像縮小処理を行うにあたっては
分割精度に影響を与えないような注意が必要である。す
なわち、水平方向と垂直方向とでそれぞれ異なる画像縮
小手法を用いることが好ましい。垂直方向では画素の結
合を「OR」論理で行い、垂直方向の対象画素のうち1
つでも黒画素が存在すれば黒画素が出力される。すなわ
ち、垂直方向の2:1の画像縮小処理では、2つの垂直
画素のいずれかが黒画素であれば黒画素が出力される。
これに対して水平方向では画素の結合を「AND」論理
で行い、水平方向の対象画素すべてが黒画素であれば黒
画素が出力される。すなわち、水平方向の3:1の画像
縮小処理では、3つの画素がすべて黒画素のときのみ黒
画素が出力される。
【0101】垂直方向に3:1の縮小を行い、水平方向
に2:1の縮小を行う場合の処理例を以下に示す
(「0」は白画素を「X」は黒画素を表す)。
【0102】
【表2】 画像縮小処理を終えると、この縮小画像に対してライン
分割処理と文字切り出し処理とが行われる。ここで、図
2の残りの認識処理(すなわち、ステップS208から
ステップS213まで)に影響を及ぼさないように、ラ
イン分割処理と文字切り出し処理とを終えた時点で、文
字間の切り出しは縮小していないもとの画像データに対
して行う。
【0103】ステップS1701では、ステップS20
4で選択されたテキストデータブロックごとに画素密度
の水平投影を求める。画素密度の水平投影は、画素画像
の各行ごとに黒画素数を計数して得られる。ここで、画
素密度の水平投影は全体のテキストブロックに対して求
めることが好ましいが、これは本質的な点ではない。す
なわち、テキストブロックを複数の画素列、例えば2あ
るいは3列に分割して、各列ごとに画素密度の水平投影
を求めることができる。もちろん、このような処理で
は、本発明の処理時間短縮という利点は失われる。
【0104】ステップS1702では、水平投影のうち
ゼロでない領域を求め、どれかが最大フォントサイズと
等しい所定のしきい値より大であるか否かを調べる。最
大フォントサイズ以下であれば、水平投影はページ上の
ラインを均一に分割していることになり、処理をステッ
プS1703に進める。ステップS1703では、画素
密度の水平投影のうち近接している領域を連結する。こ
の処理を図18A〜図18Dを用いて説明する。図18
Aは典型的なテキストブロック230を示しており、文
字画像のライン231と233、ならびに雑音スポット
232(すなわち、文字情報ではない黒画素)が含まれ
る。これに対応する画素密度の水平投影は234に示さ
れる。水平投影234に示されるように、領域235は
文字「i」の上の点に対応し、領域236はライン23
1上の残りの文字に対応し、領域237と238は雑音
スポット232に対応し、領域239はライン233上
の文字に対応する。これらの各ピークにより、境界が水
平投影のゼロ値となる領域が定義される。ステップS1
703では、同一テキストライン上に存在するピーク2
35と236のような近接領域は連結され、テキストラ
インとは関係のないピーク237と238のような近接
領域は連結されないことが望まれる。
【0105】ステップS1703で述べたように、近接
領域を連結するためには、画素密度の水平投影を投影の
上部から下部まで(テキストブロックの上部から下部ま
で)調べる。第1の領域を検出すると、その下の次の領
域の水平投影をスキャンして、2つの領域の高さを比較
する。上の領域の最も高い要素の高さが下の領域の高さ
より小さく、2つの領域の間隔が上の領域中の最も高い
要素の高さより小さければ、これら2つの領域を連結す
る。ここで、この近接領域を連結する処理は、スケール
に対して不変であることに注意されたい。すなわち、テ
キストの近接領域を連結する際には、テキストサイズが
12ポイントであるとか8ポイントであるなどの知識は
不要である。
【0106】そこで、図18Aに戻り、領域235の高
さと領域236の高さとの比較を行うと、上の領域23
5の高さが下の領域の高さより小さいことがわかる。ま
た、2つの領域間のギャップは領域235の高さより小
さいと判断される。したがって、図18Bに示されるよ
うに、領域235と236とは1つの領域236’とし
て連結される。
【0107】画素密度の水平投影を下方向に調べると、
領域237が検出される。この場合、領域236’の高
さが領域237の高さ以上であるため、これら2つの領
域は連結されない。さらに、画素密度の水平投影を下方
向に調べると、領域237の高さが領域238の高さ以
下であり、また領域間のギャップは領域237の高さ以
下であることがわかる。そこで、図18Cに示されるよ
うに、領域237と238とは1つの領域238’とし
て連結される。画素密度の水平投影をさらに下方向に調
べると、領域239が検出される。この場合、領域23
8’の高さは領域239の高さより低いが、領域間のギ
ャップは領域238’を構成している領域237と23
8とのどちらかの高さより大きいことがわかる。そこ
で、これら2つの領域は連結されない。
【0108】また、近接領域の連結処理のあとに各領域
の高さを調べて各領域の高さがラインの最小の高さに対
応するしきい値より大であるかどうかを判別することも
できる。この際、しきい値は、これまでに検出された領
域の高さの平均として適当に設定される。領域がしきい
値以下の高さの場合には、領域を画素データ中の雑音ス
ポットに起因するものと判断し削除することができる。
したがって、領域238’の高さは、領域236’,2
38’,239の高さの平均として決められるしきい値
以下であるため、図18Dに示されるように領域23
8’は削除される。
【0109】これらの処理を終えると、図17に戻って
処理をステップS1704に進め、領域を個々のライン
セグメントに分割し、図2のステップ207で示される
文字切り出しに処理を進める。ステップS1702にお
いて、ステップS1701で処理された領域が大きすぎ
る領域であった場合には、テキストラインが傾いている
と判断される。例えば、図19Aに示されているよう
に、テキストブロック240には複数の傾いたテキスト
ライン241が含まれる。ステップS1702に基づく
処理では、244に代表テキストを示したようにテキス
トラインが水平方向に相互に重なりあってしまうため、
242のような画素密度の水平投影が得られる。
【0110】そこで、処理をステップS1705に進
め、テキストブロックを段に分割する。図19Bに示さ
れるように、テキストブロックの段数を2倍にする。す
なわち、テキストブロック240を2つの段に分割す
る。この際、少なくとも1つの共通の画素が重なり合う
ように段を分割することが好ましい。また、テキストブ
ロックを2ブロック以上、例えば3あるいは4ブロック
に分割することも可能である。
【0111】ステップS1706では図19Bの247
や249のように各段ごとに画素密度の水平投影を求
め、ステップS1707で領域が大きすぎるかどうかを
再び調べる。領域が大きすぎる場合には、処理をステッ
プS1708に進め、段数を再び増加させる。例えば、
図19Cに示されているように、段数を更に2倍にす
る。また、ステップS1709において、段の幅が最低
限度より大であるかどうかを確認する。この最低限度
は、これ以上段数を増加させると適切なライン分割が不
可能になる点を示している。好適な実施例では、最低限
度は16画素幅である。ステップS1709において最
低限度に達していると判断されると、ライン分割は不可
能であると表示して処理を終了する。一方、最低限度ま
で達していない場合には、処理をステップS1706に
戻し、新たな段ごとに水平投影を再び計算する。ステッ
プS1707において領域が大きすぎないと判断された
場合には、処理をステップS1710に進める。すなわ
ち、図19Cに示されるように、ラインセグメント以下
の幅の領域が割り出された。そこで、処理をステップS
1710に進め、ステップS1703で説明したように
近接領域を連結する。そして、ステップS1711にお
いて、各段ごとに単一ラインセグメントに対応する領域
を割り出す。
【0112】すなわち、図19Cにおいて、単一ライン
セグメントに対応する領域250,251,252,2
53を検出する。そして、領域が異なる段間で接触して
おり単一ラインセグメントを構成するかどうかを判別す
るために、各段を上から下に調べ各段の第1領域を検出
する。そこで、その領域に接触している領域を調べ、図
19Dに示されているように2つの距離を求める。この
2つの距離、(1)2つの領域を合せたときの全長距離
Aと、(2)2つの領域の共有領域すなわち2つの領域
の交差領域の距離Bとの2つである。そして、比A/B
を求め、2つの領域が多くの部分で重なっているかを確
かめるためにしきい値と比較する(しきい値として5を
用いると良好な結果が得られる)。比A/Bがしきい値
より小であれば、2つのブロックは多くの部分で重複し
ていることになり、ブロックは単一ラインセグメントを
構成していると考えられる。そこで、ステップS171
2において、比A/Bで求められる接触領域を単一ライ
ンセグメントとして割り出される。
【0113】ここで、比A/Bの計算と、比A/Bとし
きい値との比較処理とは、スケールに不変な処理であ
り、ライン中のテキストサイズに関わらず、重なった接
触領域は単一ラインセグメントとして割り出される。こ
のようなスケール不変の性質は、ラインセグメント中の
テキストサイズが既知である必要がないという点で望ま
しいものである。
【0114】図17で述べたラインの分割処理を終える
と、図2のステップS207で説明し、詳細が図20に
示される文字分割(文字切り出し)に処理を進める。図
20に示されるように、文字切り出しは多階層の処理で
行われ、各階層は徐々に複雑な文字切り出し処理を行
う。すなわち、文字切り出し処理は3つの処理に分類さ
れる。相互に接触ならびに重なっていない文字間の切り
出し、相互に接触してはいないが重なっている文字間の
切り出し、接触している文字間の切り出しの3つであ
る。例えば、図34Bに示されるように、文字「S」と
「a」は接触ならびに重なっていないため第1の処理に
分類される。一方、文字「f」と「y」は接触してはい
ないが重なっているため第2の処理に分類される。さら
に、文字「t」と「i」は相互に接触しているため第3
の処理に分類される。
【0115】図20に示されるように、各階層は3つの
処理のうちの1つを実行するように構成される。すなわ
ち、階層1(261)では接触ならびに重なっていない
文字間の切り出しが行われる。階層1に続いて、当該テ
キストの性質及び特徴に関する知識の有無に応じて処理
を進める。テキストが単一スペースのテキストであれ
ば、すなわち文字が垂直で文字間が均一であれば(例え
ば「クーリエ」フォント)、処理を階層2(262)に
進め、接触している文字の切り出しを行う。単一スペー
スの文字であっても、コピーやファクシミリ転送の繰り
返しに起因する画像の劣化のため、文字が相互に接触す
ることがある。そして、文字認識処理263に処理を進
め、図2のステップS209に進む。
【0116】一方、テキストブロックの性質及び特徴に
関して何の情報もない場合、あるいはテキストが単一ス
ペースのテキストでなければ、処理を階層2(264)
に進め、接触はしていないが重なっている文字間の切り
出しを行う。そして、階層1と階層2との切り出しで得
られた文字に対して265で認識処理を行う。認識処理
265で認識されなかったすべての文字に対しては、階
層3(266)の処理を行う。すなわち、文字が認識さ
れない理由として、文字の切り出しが完全に行われない
ため実際には認識不能な文字は接触している複数の文字
と考えられる。そこで、階層3では接触している文字の
切り出しが行われる。階層3で文字を切り出すと、26
7で文字認識処理を行う。認識処理が成功した場合に
は、処理を図2のステップS209に戻す。一方、認識
処理が再び失敗した場合には、階層3での切り出しが不
適切であったと判断する。そこで、認識不能であった切
り出しを再接続し、再び階層3の切り出し処理と認識処
理とを行う。このような処理を、文字の切り出しが不可
能になるまで繰り返し行う。
【0117】「単一スペース(mono-spaced)」262か
「全スペース(all-spacing) 」264かのどちらに処理
を進めるかは、オペレータからの入力によって選択され
る。オペレータからの入力がない場合には、デフォルト
として処理を「全スペース」264に進める。というの
は、この階層は単一スペースのみならず非単一スペース
文字にも適用できるためである。
【0118】図21から28までは階層1から階層3ま
での処理を説明する図であり、図30と図31は269
で示される再接続処理を説明する図である。図21は非
接触で重なっていない文字を切り出す階層1の切り出し
処理を説明するフローチャートである。階層1では、2
つの文字間の白画素すなわち空白を検出することによ
り、非接触で重なっていない文字の切り出しを行う。
【0119】具体的には、図21のステップS2101
に示されるように、空白でない画素すなわち黒画素が検
出されるまでラインセグメント中をとびとびに検索し、
文字間の白スペースを検出する。ここで、とびとぼの検
索とは、ラインセグメントのすべての画素を検索するの
ではなく、図22に示されるように、ラインセグメント
の1つの段中の一部の画素271のみを検索するもので
ある。なお、ラインセグメントの段中の全画素の1/3
のみ、すなわち3画素ごとの検索で十分であるとの結果
が得られている。画素271中で空白でない画素すなわ
ち黒画素が検出されなかった場合には、272で示すよ
うに数列の画素をとばして、例えば3画素ごとに新たな
列で黒画素を検索する。ここで、画素を3列とばして
も、非接触で重なっていない文字の検出性能は低下しな
いとの結果が得られている。このようなとびとびの検索
を、図22の画素274のような最初の黒画素が検出さ
れるまで繰り返す。
【0120】最初の黒画素が検出されるとステップS2
102に処理を進め、ラインセグメントを後向きに検索
し、完全に空白な列を検出する。ここでの検索は、ステ
ップS2101の検索とは異なり、各列ごとにすべての
画素を検索して完全に空白な列を検出するものである。
すなわち、図22に示されるように、完全に空白な列2
76が検出されるまで後向きステップ275が実行され
る。
【0121】完全に空白な列が検出されると、処理をス
テップS2103に進め、完全に空白な列が検出される
まで画素274の列から前向きに検索される。ステップ
S2102と同様に、ここでの前向き検索も各列ごとに
すべての画素を検索するもので、277で示すように前
向きに検索される。図22の278で示されるような完
全に空白な列が検出されるまで前向き検索が行われる。
【0122】ステップS2103で完全に空白な列が検
出されると、処理をステップS2104に進め、空白列
276と278とで文字を切り出す。その後、処理をス
テップS2101に戻し、空白でないすなわち黒画素が
再び検出されるまで、ラインセグメントでのとびとびの
検索を再び行う。ラインセグメント全体で階層1の処理
を終えると、テキストが単一スペース(クーリエフォン
トなど)であるか、あるいはテキストのスペースが未知
もしくは単一スペース以外(比例フォントなど)である
かに応じて、図20の261あるいは264の階層2の
処理に処理を進める。テキストが単一スペースであれ
ば、261の階層2の切り出しに処理を進める。
【0123】図23は単一スペーステキストのための階
層2の処理の流れを示すフローチャートである。なお、
図23に示される処理ステップは、ROM17に保持さ
れるプログラムステップに基づいてCPU10で実行さ
れる。階層2の処理に先立って、文字セグメントの幅を
調べて、過小サイズの文字セグメントを割り出す。ここ
で、文字セグメントの幅が平均文字幅の半分以下のとき
に過小サイズであると判断する。過小サイズの文字セグ
メントが隣り合って存在する場合には、階層1の処理で
1つの文字を半分ずつ2つに切り出してしまった可能性
が高いため、この過小サイズ文字のペアを連結する。
【0124】ステップS2301では、各文字ブロック
の幅をすべての文字ブロックの平均幅と比較して、階層
1で切り出された文字ブロックのうち過大サイズのもの
を割り出す。ここで、各文字ブロックの幅とすべての文
字ブロックの平均幅との比較は、文字が単一スペースで
あって各文字がほぼ同一の幅を有することが既知である
ため、過大サイズの文字ブロックの検出には有効な処理
となる。文字ブロックの幅(「W」)が以下の式を満た
すと、文字ブロックが過大サイズであると判断される。
【0125】
【数5】W > (1+c)*Wave ここで、cは定数、Wave はラインセグメント中のすべ
ての文字ブロックの平均幅である。なお、この判別処理
はスケールに不変であることに注意されたい。定数c
は、以下のように単一スペースフォントの統計的性質に
基づいて決定される。クーリエアルファベットなどの単
一スペースアルファベットの各文字は、単一なスペース
を有しており、各スペースは文字が存在する部分αi
文字の周りの空白スペースの部分βi とからなる。
【0126】例えば、図24の文字「e」に示されるよ
うに、文字「e」が存在するスペースは中心領域αi
周りの空白スペースβi とからなる。ここで、iは
「e」に対応する番号であり、すべてのiに対してαi
+βi =1である。αi とβi についてはアルファベッ
ト中の各文字、すなわち英字、数字、記号などごとに求
めることができ、αi とβi の平均値(それぞれαと
β)ならびに標準偏差(それぞれσA とσB )を計算で
きる。そこで、定数cは以下の式で求める。
【0127】
【数6】c=σB /α 図1の装置で用いるクーリエ文字セットでは、α=25
/35,σB =10/35となるためc=0.4とな
る。ステップS2301で過大サイズの文字ブロックが
割り出されると、ステップS2302に処理を進め、過
大サイズブロック中に含まれるおおよその文字数を算出
し、おおよその文字境界を求める。具体的には、図24
において、ブロック280の幅Wは、すべてのブロック
280から283の平均の幅に(1+c)を乗算して計
算されるしきい値より大であるため、ブロック280は
過大サイズの文字ブロックと判断される。そして、幅W
をαで割った値を最も近い整数値に丸めて、過大サイズ
ブロック280中のおおよその文字数を算出する。
【0128】
【数7】文字数N=[W/α](最も近い整数) また、ここで得られたブロック中のおおよその文字数
「N」に基づいて、過大サイズのブロックを単一に分割
して、おおよその文字境界を求める。ステップS230
3では、ブロック中の画素の垂直投影特性284を、お
およその文字境界の近傍285で求める。ここで、垂直
投影特性284を求める近傍は、距離σB に基づいて決
められる。すなわち、図24に示されるように、おおよ
その文字境界の近傍±σB で垂直投影特性284を求め
る。
【0129】ステップS2304では、各垂直投影特性
284中での最小位置286を割り出し、この最小位置
284で文字の切り出しを行う。図20の261の階層
2の処理を終えると、文字認識263、そしてさらに図
2のステップS209に処理を進める。ラインセグメン
ト中の文字のスペースが未知あるいは単一スペースでな
い場合には、文字がラインセグメント中で単一のスペー
スを有しているとは限らない。そこで、図20の264
の階層2の処理に進み、非接触であるが重なっている文
字間の切り出しを行う。図25と図26とはこの処理を
説明する図である。
【0130】ステップS2501において、階層1で切
り出された各文字を分析して、文字ブロック中の各画像
の輪郭のアウトラインを追跡する処理を行う。すなわ
ち、図26Aに示されるように、文字「fy」を有する
文字ブロックは非接触だが重なっている文字「f」と
「y」を含み、これらは重なっているため階層1の処理
では切り出されない。そこで、図26Bに示されるよう
に、まず、この文字ブロックをブロックの右下から左方
向ならびに上方向に調べて黒画素を検出する。黒画素を
検出すると、図26Cの287のように黒画素と黒画素
とを接続したものである輪郭の追跡が行われる。第1の
文字に対して全体の輪郭追跡を終えると、288のよう
に文字ブロック中のすべての黒画素の輪郭を追跡するま
で、スキャン処理を続ける。このような処理により、各
々が分離した非接触の文字が得られ、図26Dに示され
るようにこれらの文字が文字ブロックから切り出され
る。
【0131】階層2の処理では、非接触だが重なってい
る文字の切り出しとともに、複数のストロークからなる
単一文字、例えば「i」,「j」,「:」,「;」,
「!」,「=」,「%」をも分離してしまう。そこで、
ステップS2502でこのような文字の再接続を行う。
図27はこの処理の詳細なフローチャートである。図2
7に示す再接続処理の対象となるのは階層2の処理で切
り出された文字のみであり、特定の条件を満たすときの
み再接続が行われる。具体的には、ブロックが重なる、
すなわち左側文字の最も右側の画素が右側文字の最も左
側の画素の上あるいは下に位置するような場合にのみ、
ブロックの再接続が行われる。
【0132】そこで、ステップS2701でブロックが
重なっているかどうかを調べる。ブロックが重複してい
なければ、再接続処理は不必要であり(ステップS27
02)、再接続処理を終了する。一方、ブロックが重複
していれば、ステップS2703に処理を進め、ブロッ
クが垂直方向に分離しているかどうかを調べる。ここ
で、ブロックが垂直方向に分離していると、「i」,
「j」,「:」,「;」,「!」,「=」などの複数ス
トローク文字が階層2の処理で切り出されてしまった可
能性があるため、これらの文字であるかどうかを調べ
る。
【0133】これらのブロックは垂直方向に分離されて
いるため、高さがH1の上部ブロックと高さがH2の下
部ブロックとを含む。これらの高さの計算はステップS
2704で行われ、ステップS2705でH2が(2×
H1)より大であれば文字「i」あるいは「j」が分離
したものである可能性が高い。そこで、文字の重複度を
計算する(ステップS2706)。すなわち、2つの部
分に隣接する最も右側の4画素列を平均して、この平均
位置の差を計算する。(全体位置ではなく最も右側の位
置を平均したのは、文字「i」や「j」の上のドットが
「i」や「j」の中心ではなく上部のセリフの右側に位
置するためである)。この際、スケール不変の処理とす
るために、平均位置の差が本体のうちの小さい幅に定数
を乗じたものより小であれば、ブロックを再接続するも
のとする。ここで、定数は、分離の程度が予測できない
ような劣化画像でも再接続できるように選択され、本実
施例では「9/8」としている。
【0134】一方、ステップS2705でH2が(2×
H1)以下、すなわち下部ブロックの高さが上部本体の
2倍以下である場合には、「:」,「;」,「!」,
「=」などの文字が切り出された可能性が高い。そこ
で、ステップS2707に処理を進め、この可能性を調
べる。すなわち、各本体中の隣接する4画素列の平均中
心値を求め、これらの中心値の差を得る。この際、スケ
ール不変の処理とするために、中心値の差が2つの本体
の幅のうちの小さい方に定数を乗じたものより小であれ
ば、上述の文字の1つである可能性が高いためブロック
を再接続するものとする。なお、上述のように、定数と
して「9/8」を用いると良好な結果が得られている。
【0135】ステップS2703でブロックが垂直方向
に分離されない場合(すなわち、2つのブロック間に水
平方向に伸びるギャップが存在しない場合)には、文字
はタイプ1のパーセント記号(「タイプ1」)、タイプ
2のパーセント記号(「タイプ2」)、タイプ3のパー
セント記号(「タイプ3」)のどれかである可能性が高
い。そこで、ステップS2708で以下のように順々に
各タイプごとにチェックする。なお、変数は以下の通り
である。
【0136】W1:第1文字の幅(左から右) W2:第2文字の幅 H1:第1文字の高さ(上から下) H2:第2文字の高さ L1:第1文字の左端画素の列 R1:第1文字の右端画素の列+1画素 L2:第2文字の左端画素の列 R2:第2文字の右端画素の列+1画素 注意:L1は常にL2以下である。
【0137】まず、タイプ1のパーセント記号をチェッ
クする。以下の2つの条件が満たされるときにタイプ1
のパーセント記号であると判断され、ブロックが連結さ
れる。 1)0.24<min(W1,W2)/max(W1,
W2)<0.77 これはドット幅とライン幅との比の条件である。
【0138】2)[min(R1,R2)ーmax(L
1,L2)]/min(W1,W2)>0.76 これはブロックが水平方向に大部分重なっているという
条件である。次いで、タイプ2のパーセント記号をチェ
ックする。以下の4つの条件が満たされるときにタイプ
2のパーセント記号であると判断され、ブロックが連結
される。
【0139】1)(0.25)L2 < R1ーL2 これはブロックが水平方向に十分重なっているという条
件である。 2)0.50 < W1/W2 < 1.10 これはドット幅とライン幅の適切な比率の条件である。 3)0.43 < (H1/H2) < 0.70 これはドット高とライン高の適切な比率の条件である。
【0140】4)(1/m) > 0.37 ここで、mはパーセント記号の「斜線」部上のP1とP
2とを結ぶ線の傾きである。なお、P1とP2とは以下
の手法で求められる。 P1:P1は第2文字の上部からD行目の行で、第2文
字のプリントテキストを含む左端の画素の位置である。
ここで、変数DはD=(0.1)W2である。
【0141】P2:P2は第2文字の下部からD行目の
行で、第2文字のプリントテキストを含む左端の画素の
位置である。 さらに、タイプ3のパーセント記号をチェックする。以
下の条件が満たされるときにタイプ3のパーセント記号
であると判断され、ブロックが連結される。 1)(0.25)L1 < R2ーL1 これはブロックが水平方向に十分重なっているという条
件である。
【0142】2)0.50 < W2/W1 < 1.
10 これはドット幅とライン幅の適切な比率の条件である。 3)0.43 < (H2/H1) < 0.70 これはドット高とライン高の適切な比率の条件である。 4)(1/m) > 0.37 ここで、mはパーセント記号の「斜線」部位上のP1と
P2とを結ぶ線の傾きである。なお、P1とP2とは以
下の手法で求められる。
【0143】P1:P1は第1文字の上部からD行目の
行で、第2文字のプリントテキストを含む右端の画素の
位置である。ここで、変数DはD=(0.1)W2であ
る。 P2:P2は第1文字の下部からD行目の行で、第2文
字のプリントテキストを含む右端の画素の位置である。 図20の264で説明した(また、図23から図27で
詳細に説明した)階層2の切り出し処理と再接続処理を
終えると、265の認識処理を切り出された文字に対し
て行う。階層1と階層2の切り出しにおいてラインセグ
メント中のほとんどの文字は適切に切り出されているた
め、265の認識処理では階層1と階層2で切り出され
た文字のほとんどを認識することができる。これに対
し、265で認識不能であった文字は、その文字ブロッ
クに接触文字が含まれている可能性が高い。そこで、こ
のような認識不能の文字ブロックに対して、266の階
層3の切り出し処理を行い、接触文字を切り出す。
【0144】図28は階層3の切り出し処理を示すフロ
−チャ−トであり、図29Aから図29Dは接触文字を
階層3で切り出す処理を説明する図である。図28に示
される処理ステップはROM17に保持されており、C
PU10で実行される。一般に階層3の切り出し処理
は、文字ブロックを斜めに切り出して行われる。斜めの
切り出し線の傾きと位置とは、ブロック中の画素密度の
垂直投影特性を求め、垂直投影特性中で最も深い谷の側
面の傾きを求めることで算出される。そこで、再び画素
密度の垂直方向以外の投影を行う。すなわち、垂直投影
特性中の谷側面の傾きに対応する回転角度方向に画素密
度の投影を行う。こうして得られた複数の密度投影の中
での最小点を検出し、最小点が得られた角度と位置で切
り出しを行う。以下、この処理について詳細な説明を行
う。
【0145】ステップS2801において、画素密度の
垂直投影特性を求める。例えば、図29Aに示されるよ
うに、接触文字「ti」に対して垂直投影特性を求め
る。ステップS2802では、垂直投影特性中の第1の
谷を検出する。垂直投影特性はデジタルであるため(す
なわち、離散的な画素数の和であるため)、滑らかでは
なく、谷は垂直投影特性中の最小値が第1の低しきい値
より下であって、第2の高いしきい値より大きい極大点
で両側が囲まれた点であることで見付け出される。した
がって、図29Aに示されるように、垂直投影特性を調
べて、高いしきい値292より高い上の点で囲まれてい
るような低しきい値291より下の点が存在するかどう
かを判別する。このような条件を満たす点が検出されれ
ば、処理をステップS2803に進める。このような条
件を満たす点が検出されなければ、以下に述べるように
しきい値の変更を行う。
【0146】まず、低いしきい値291を垂直投影特性
の最大値の10%とし、高いしきい値292を垂直投影
特性の最大値の20%とする。ここで、高いしきい値と
低いしきい値に関する条件を満たす点が検出されない場
合には、高いしきい値と低いしきい値との双方とも垂直
投影特性の最大値の2%だけ増加させる。図29Aで
は、しきい値291と292の条件を満たす点は検出さ
れない。そこで、しきい値を図29Bに示すように増加
させて、低いしきい値291以下であって、高いしきい
値292より高いの点295と296が両側に存在する
ような点294を検出する。点294を検出すると、ス
テップS2803に処理を進め、点294を囲む谷側面
の傾きを算出する。谷の右側面の傾きは点294と29
5とを結ぶ線の傾きでありθ1 で示される。同様に、谷
の左側面の傾きは点294と296とを結ぶ線の傾きで
ありθ2 で示される。
【0147】そこで、ステップS2804に処理を進
め、角度θ1 とθ2 および角度θ1 とθ2 の近傍で回転
させて投影特性を求める。すなわち、回転投影特性を角
度θ1,θ1 ±3°,θ1 ±6°,θ2 ,θ2 ±3°,
θ2 ±6°で求める。この回転投影特性は文字ブロック
中の画素を三角関数変換することで求められる。より簡
易な手法として、各回転角度(最も近い角度に近似)ご
とに画素位置が示される表を用意して、テ−ブルルック
アップで回転投影特性を求めることもできる。なお、回
転投影特性の各点は、この画素位置の和として求められ
る。
【0148】図29Cの297は回転投影特性の典型例
を示したものである。回転投影特性297上の各点は、
ここではθ1 の回転方向の画素数の和として求められ
る。上述のように、ここでの和は、文字ブロック中の画
像を三角関数変換することで求めることもできるし、各
回転角度ごとに用意された表を参照して簡易に求めるこ
ともできる。
【0149】図29CとDの点線で示されるようなすべ
ての回転投影特性を求めると、ステップS2805に処
理を進め、各回転投影特性(10個すべて)ならびにス
テップS2801で求めた垂直投影特性とを比較して、
すべての投影特性の中で最小点を検出する。最小点とな
る投影特性の角度が切り出し角度に対応する。すなわ
ち、図29Cに示されるように、点299が11個の投
影特性の中で最小点となれば、文字ブロックの切り出し
が角度θ1 で最小点299の位置で行われる(ステップ
S2806)。
【0150】階層3の切り出し処理を終えると、切り出
された文字に対して認識処理267を行う。ここで、階
層3で切り出された2つの文字ブロックとも認識が行わ
れたならば、図2のステップS209に処理を進める。
しかし、ここでもなお認識不能なブロックが残る可能性
があり、不適切な切り出しが行われた可能性と切り出さ
れた文字ブロックを再接続すべきであるという点を考慮
する必要がある。この処理は再接続ブロック269で行
われ、図30に詳細に示されている。
【0151】ステップS3001では、階層3での切り
出し部分の双方に対して267の認識処理を試みる。ス
テップS3002で2つの要素の認識が可能であると判
断されると、上述の図2のステップS209に処理を進
める。一方、2つの切り出し要素とも認識不能である場
合には、ステップS3003において少なくとも1つの
要素が認識可能であるかどうかを判別する。2つの要素
とも認識不能である場合にはステップS3004に進
み、各要素に対して階層3の切り出し処理とステップS
3001などの処理とを行う。
【0152】一方、ステップS3003において少なく
とも1つの要素が認識可能であると判断されると、ステ
ップS3005に処理を進め、認識不能の要素に対して
さらに階層3の切り出し処理を行う。そして、ステップ
S3006で新たに切り出された要素が認識可能である
と判断されれば、認識不能な要素はなくなり図2のステ
ップS209に処理を進める。これに対して、新たに切
り出された要素がともに認識不能であるとステップS3
006で判断されると、ステップS3007に処理を進
め、不適切な切り出しブロックを再接続することを考え
る。
【0153】図31は、階層3の処理において不適切な
切り出しが行われる可能性を説明する図である。図31
Aはイタリック文字「hm」がかなり劣化している例を
示したものである。図20の266の階層3の処理では
第1の切り出しを301で行うため、文字「h」の垂直
部とル−プ部とが分離してしまう。そして、切り出され
た各要素に対して267で認識処理を行い、第1のブロ
ックは「l」として認識され、第2のブロックは認識不
能と判断されたとする。
【0154】このような場合、処理はステップS300
5に進み、認識不能の要素303に対して図31Bのよ
うにさらなる階層3の切り出し処理が行われる。階層3
の処理により、304でさらなる切り出しが行われ、切
り出された要素305と306に対して267の認識処
理が行われる。しかし、要素305は文字として認識不
能であるため、再接続処理が必要であると判断される。
【0155】そこで、ステップS3007において、認
識不能の切り出し要素を、あらかじめ切り出された隣接
する要素と接続する。この際、隣接する要素は認識され
たものでも、認識不能のものでも良い。すると、図31
Cのように、要素302を要素305と再接続して文字
「h」をほとんど含む新たな要素302’が生成され
る。そこで、要素302’と要素306とに対して26
7の認識処理を行う(ステップS3008)。
【0156】これらの処理を終えると、ステップS30
01に処理を進め、2つの要素ともに認識されたかどう
かを調べる。この例の場合には、2つの要素とも文字
「h」、「m」として認識されたため処理を終了する。
一方、2つの要素とも認識不能であった場合には、上述
の処理を繰り返す。
【0157】
【発明の効果】以上説明したように、本発明により、高
速かつ正確に文書上の文字を認識してテキストファイル
を作成する文字認識方法及び装置を提供できる。また、
高速かつ正確に文書上のテキストと非テキストとを選別
して、テキストブロックを割り出す方法及び装置を提供
できる。
【0158】また、高速かつ正確に文書上の非テキスト
を分類できる方法及び装置を提供できる。また、高速か
つ正確にテキストブロックからテキストラインを分割で
きる方法及び装置を提供できる。また、高速かつ正確に
傾いた文書のテキストブロックからテキストラインを分
割できる方法及び装置を提供できる。
【0159】また、高速かつ正確にテキストラインから
文字を切り出す方法及び装置を提供できる。また、不適
切に切り出された文字の再切り出しが可能な方法及び装
置を提供できる。
【図面の簡単な説明】
【図1】本実施例の装置のブロック図である。
【図2】文字認識処理の流れを示すフローチャートであ
る。
【図3】本実施例に基づくブロック分類と選別の処理の
流れを示すフローチャートである。
【図4A】画素画像データ中の連結部位の分類処理の流
れを示すフローチャートである。
【図4B】画素画像データ中の連結部位の分類処理の流
れを示すフローチャートである。
【図4C】画素画像データ中の連結部位の分類処理の流
れを示すフローチャートである。
【図5A】輪郭追跡を説明するための図である。
【図5B】輪郭追跡を説明するための図である。
【図5C】輪郭追跡を説明するための図である。
【図6A】非テキスト部位の分類処理を説明するための
図である。
【図6B】非テキスト部位の分類処理を説明するための
図である。
【図6C】非テキスト部位の分類処理を説明するための
図である。
【図7A】白輪郭処理を説明するための図である。
【図7B】白輪郭処理を説明するための図である。
【図7C】白輪郭処理を説明するための図である。
【図7D】白輪郭処理を説明するための図である。
【図8】他のテキスト部位のサイズと近さに基づいてテ
キスト部分を水平方向に選択的に連結してテキストライ
ンを形成する処理の流れを示すフローチャートである。
【図9】他のテキストラインのサイズと近さに基づいて
テキストラインを垂直方向に選択的に連結してテキスト
ブロックを形成する処理の流れを示すフローチャートで
ある。
【図10】代表的な画像の画素データを示す図である。
【図11】ブロック分類と選別処理を説明するための図
である。
【図12】ブロック分類と選別処理を説明するための図
である。
【図13】ブロック分類と選別処理を説明するための図
である。
【図14】図11から13にそれぞれ対応する典型的な
階層的木構造である。
【図15】図11から13にそれぞれ対応する典型的な
階層的木構造である。
【図16】図11から13にそれぞれ対応する典型的な
階層的木構造である。
【図17】本実施例のライン分割処理の流れを示すフロ
ーチャートである。
【図18A】本実施例のライン分割処理を説明するため
の図である。
【図18B】本実施例のライン分割処理を説明するため
の図である。
【図18C】本実施例のライン分割処理を説明するため
の図である。
【図18D】本実施例のライン分割処理を説明するため
の図である。
【図19A】本実施例のライン分割処理を説明するため
の図である。
【図19B】本実施例のライン分割処理を説明するため
の図である。
【図19C】本実施例のライン分割処理を説明するため
の図である。
【図19D】本実施例のライン分割処理を説明するため
の図である。
【図20】本実施例の文字切り出し処理の機能ブロック
図である。
【図21】図20の階層1の文字切り出し処理の流れを
示すフローチャートである。
【図22】階層1の切り出し処理を説明するための図で
ある。
【図23】図20における単一スペースモード(クーリ
エフォントなど)の階層2の文字切り出し処理の流れを
示すフローチャートである。
【図24】階層2の文字切り出し処理を説明するための
図である。
【図25】図20における全スペースモード(比例スペ
ースなど)の階層2の文字切り出し処理の流れを示すフ
ローチャートである。
【図26A】階層2の文字切り出し処理を説明するため
の図である。
【図26B】階層2の文字切り出し処理を説明するため
の図である。
【図26C】階層2の文字切り出し処理を説明するため
の図である。
【図26D】階層2の文字切り出し処理を説明するため
の図である。
【図27】階層2の処理で切り出された複数ストローク
文字を再融合するための再融合手法を示すフローチャー
トである。
【図28】図20の階層3の処理の流れを示すフローチ
ャートである。
【図29A】階層3の文字切り出し処理を説明するため
の図である。
【図29B】階層3の文字切り出し処理を説明するため
の図である。
【図29C】階層3の文字切り出し処理を説明するため
の図である。
【図29D】階層3の文字切り出し処理を説明するため
の図である。
【図30】図20の階層3の処理で切り出された部位の
再融合処理の流れを示すフローチャートである。
【図31A】再連結処理を説明するための図である。
【図31B】再連結処理を説明するための図である。
【図31C】再連結処理を説明するための図である。
【図32】文字認識すべき文書のページの代表例であ
る。
【図33A】従来のライン分割手法を説明するための図
である。
【図33B】従来のライン分割手法を説明するための図
である。
【図33C】従来のライン分割手法を説明するための図
である。
【図34A】従来の文字切り出し手法を説明するための
図である。
【図34B】従来の文字切り出し手法を説明するための
図である。
【図35】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図36】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図37】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図38】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図39】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図40】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図41】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図42】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図43】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図44】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図45】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図46】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図47】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図48】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図49】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図50】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図51】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図52】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図53】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図54】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図55】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図56】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図57】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図58】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図59】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図60】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図61】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図62】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図63】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図64】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図65】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図66】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図67】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図68】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図69】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図70】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図71】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図72】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図73】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図74】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図75】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図76】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図77】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図78】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図79】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図80】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図81】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図82】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図83】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図84】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図85】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図86】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図87】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図88】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図89】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図90】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図91】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図92】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図93】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図94】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図95】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図96】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図97】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図98】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図99】本実施例のブロック選別プログラムのソース
コードを示す図である。
【図100】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図101】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図102】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図103】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図104】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図105】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図106】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図107】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図108】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図109】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図110】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図111】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図112】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図113】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図114】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図115】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図116】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図117】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図118】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図119】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図120】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図121】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図122】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図123】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図124】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図125】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図126】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図127】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図128】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図129】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図130】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図131】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図132】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図133】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図134】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図135】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図136】本実施例のブロック選別プログラムのソー
スコードを示す図である。
【図137】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図138】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図139】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図140】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図141】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図142】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図143】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図144】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図145】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図146】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図147】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図148】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図149】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図150】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図151】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図152】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図153】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図154】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図155】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図156】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図157】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図158】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図159】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図160】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図161】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図162】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図163】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図164】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図165】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図166】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図167】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図168】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図169】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図170】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図171】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図172】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図173】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図174】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図175】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図176】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図177】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図178】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図179】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図180】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図181】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図182】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図183】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図184】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図185】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図186】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図187】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図188】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図189】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図190】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図191】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図192】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図193】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図194】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図195】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図196】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図197】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図198】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図199】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図200】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図201】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図202】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図203】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図204】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図205】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図206】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図207】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図208】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図209】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図210】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図211】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図212】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図213】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図214】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図215】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図216】本実施例の比例スペースプログラムのソー
スコードを示す図である。
【図217】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図218】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図219】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図220】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図221】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図222】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図223】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図224】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図225】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図226】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図227】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図228】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図229】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図230】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図231】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図232】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図233】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図234】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図235】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図236】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図237】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図238】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図239】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図240】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図241】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図242】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図243】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図244】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図245】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図246】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
【図247】本実施例の単一スペース(輪郭)分割プロ
グラムのソースコードを示す図である。
───────────────────────────────────────────────────── フロントページの続き (72)発明者 クリストファー エー. シェリック アメリカ合衆国 カリフォルニア州 92626,コスタメサ プルマン ストリ ート 3188 キヤノン インフォメーシ ョン システムズ インク.内 (56)参考文献 特開 平3−43879(JP,A) 特開 平3−78892(JP,A) 特開 平1−303587(JP,A) 特開 平2−128293(JP,A) 特開 平5−73717(JP,A) 特開 平2−33686(JP,A) 特開 平3−250279(JP,A) 特開 平5−166002(JP,A) 特開 平5−233873(JP,A) 特開 昭63−82588(JP,A) 特開 昭58−123169(JP,A) 特開 昭58−90272(JP,A) 汎用的な文書画像の階層的領域分割と 識別法,電子情報通信学会論文誌,日 本,1992年 2月,D−II Vol. J75−D−II No.2,pp.246 −256 (58)調査した分野(Int.Cl.7,DB名) G06K 9/00 - 9/82

Claims (28)

    (57)【特許請求の範囲】
  1. 【請求項1】 画像に対して有意な画素の輪郭追跡処理
    を行って連結要素を検出する連結要素検出ステップと、 前記連結要素検出ステップで検出した連結要素に外接す
    矩形を形成する矩形形成ステップと、前記矩形形成ステップで形成された矩形の位置に基づい
    て、前記連結要素の階層的木構造を形成する木構造形成
    ステップと、 前記連結要素の属性を分類して、前記階層的木構造中の
    連結要素に属性を付与する属性付与ステップと、 前記付与された属性に基づいて、前記木構造形成ステッ
    プで形成された階層的木構造のノードを変更するノード
    変更ステップと、 前記階層的木構造中のテキスト属性が付与されたテキス
    ト連結要素と他のテキスト連結要素との距離 に基づい
    、該テキスト連結要素を選択的に横方向に連結して
    キストラインを形成し、前記ノード変更ステップで変更
    された階層的木構造を更新する第1の連結ステップと、前記第1の連結ステップで形成されたテキストラインと
    他のテキストラインとの距離 に基づいて、該テキスト
    インを選択的に縦方向に連結してテキストブロックを形
    し、前記階層的木構造を更新する第2の連結ステップ
    とを有することを特徴とする画像処理方法。
  2. 【請求項2】 前記属性付与ステップは、前記連結要素
    のサイズに基づいて、該連結要素の属性がテキストであ
    るか判断するステップを含むことを特徴とする請求項
    記載の画像処理方法。
  3. 【請求項3】 前記属性付与ステップは、前記連結要素
    の属性が中間調画像であるか判断するステップを含むこ
    とを特徴とする請求項1に記載の画像処理方法。
  4. 【請求項4】 前記属性付与ステップは、前記連結要素
    の属性がフレームであるか判断するステップを含むこと
    を特徴とする請求項1に記載の画像処理方法。
  5. 【請求項5】 前記属性付与ステップは、フレームと判
    断された連結要素内 部において有意でない画素の輪郭追
    跡処理を行って該有意でない画素の輪郭を検出し、該有
    意でない画素の輪郭に基づいて、該フレームと判断され
    た連結要素が表であるか判断するステップを含むことを
    特徴とする請求項4に記載の画像処理方法。
  6. 【請求項6】 前記属性付与ステップは、前記有意でな
    い画素の輪郭の数と充填率と再接続率に基づいて、該フ
    レームと判断された連結要素がであるか判断すること
    を特徴とする請求項5に記載の画像処理方法。
  7. 【請求項7】 前記属性付与ステップは、前記連結要素
    の属性が線であるか判断するステップを含むことを特徴
    とする請求項1に記載の画像処理方法。
  8. 【請求項8】 前記属性付与ステップは、前記連結要素
    内部において有意でない画素の輪郭追跡処理を行って該
    有意でない画素の輪郭を検出し、該有意でない画素の輪
    郭に基づいて、該連結要素が表であるか判断するステッ
    プを含むことを特徴とする請求項1に記載の画像処理方
    法。
  9. 【請求項9】 前記属性付与ステップは、前記連結要素
    の属性が線画であるか判断するステップを含むことを特
    徴とする請求項1に記載の画像処理方法。
  10. 【請求項10】 前記属性付与ステップは、属性の判断
    がつかない連結画素に、未知の属性を付与することを特
    徴とする請求項1に記載の画像処理方法。
  11. 【請求項11】 更に、前記テキストブロックを複数の
    テキストラインに分割するライン分割ステップと、 前記ライン分割ステップで分割されたテキストラインか
    ら文字を切り出す文字切り出しステップと、 前記文字切り出しステップで切り出された文字に対して
    文字認識処理を行う文字認識ステップと、 前記文字認識ステップでの文字認識処理結果を、前記
    層的木構造で確定された順に対応してテキストファイル
    に格納する格納ステップとを有することを特徴とする請
    求項1に記載の画像処理方法。
  12. 【請求項12】 更に、前記階層的木構造に基づく順序
    にしたがって、画像を再生する再生ステップを有するこ
    とを特徴とする請求項11に記載の画像処理方法。
  13. 【請求項13】 画像に対して有意な画素の輪郭追跡処
    理を行って連結要素を検出する連結要素検出ステップ
    と、 前記連結要素検出ステップで検出した連結要素に外接す
    る矩形を形成する矩形形成ステップと、 前記矩形形成ステップで形成された矩形の位置に基づい
    て、前記連結要素の階層的木構造を形成する木構造形成
    ステップと、 前記連結要素の属性を分類して、前記階層的木構造中の
    連結要素に属性を付与する属性付与ステップと、 前記付与された属性に基づいて、前記木構造形成ステッ
    プで形成された階層的木構造のノードを変更するノード
    変更ステップとを有することを特徴とする画像処理方
    法。
  14. 【請求項14】 2値画像に対して黒画素の外側輪郭追
    跡処理を行って連結要素を検出する連結要素検出ステッ
    プと、 前記連結要素内部において白画素の輪郭追跡処理を行っ
    て、白輪郭を検出する白輪郭検出ステップと、 前記白輪郭検出ステップで検出された白輪郭の数と充填
    率と再接続率に基づいて、該連結要素の属性が表である
    か判断する表判断ステップとを有することを特徴とする
    画像処理方法。
  15. 【請求項15】 画像に対して有意な画素の輪郭追跡処
    理を行って連結要素を検出する連結要素検出手段と、 前記連結要素検出手段で検出した連結要素に外接する矩
    形を形成する矩形形成手段と、 前記矩形形成手段で形成された矩形の位置に基づいて、
    前記連結要素の階層的木構造を形成する木構造形成手段
    と、 前記連結要素の属性を分類して、前記階層的木構造中の
    連結要素に属性を付与する属性付与手段と、 前記属性付与手段により付与された属性に基づいて、前
    記木構造形成手段で形成された階層的木構造のノードを
    変更するノード変更手段と、 前記階層的木構造中のテキスト属性が付与されたテキス
    ト連結要素と他のテキ スト連結要素との距離に基づい
    て、該テキスト連結要素を選択的に横方向に連結してテ
    キストラインを形成し、前記ノード変更手段で変更され
    た階層的木構造を更新する第1の連結手段と、 前記第1の連結手段で形成されたテキストラインと他の
    テキストラインとの距離に基づいて、該テキストライン
    を選択的に縦方向に連結してテキストブロックを形成
    し、前記階層的木構造を更新する第2の連結手段とを有
    することを特徴とする画像処理装置。
  16. 【請求項16】 前記属性付与手段は、前記連結要素の
    サイズに基づいて、該連結要素の属性がテキストである
    か判断する手段を含むことを特徴とする請求項15に記
    載の画像処理装置。
  17. 【請求項17】 前記属性付与手段は、前記連結要素の
    属性が中間調画像であるか判断する手段を含むことを特
    徴とする請求項15に記載の画像処理装置。
  18. 【請求項18】 前記属性付与手段は、前記連結要素の
    属性がフレームであるか判断する手段を含むことを特徴
    とする請求項15に記載の画像処理装置。
  19. 【請求項19】 前記属性付与手段は、フレームと判断
    された連結要素内部において有意でない画素の輪郭追跡
    処理を行って該有意でない画素の輪郭を検出し、該有意
    でない画素の輪郭に基づいて、該フレームと判断された
    連結要素が表であるか判断する手段を含むことを特徴と
    する請求項18に記載の画像処理装置。
  20. 【請求項20】 前記属性付与手段は、前記有意でない
    画素の輪郭の数と充填率と再接続率に基づいて、該フレ
    ームと判断された連結要素が表であるか判断することを
    特徴とする請求項19に記載の画像処理装置。
  21. 【請求項21】 前記属性付与手段は、前記連結要素の
    属性が線であるか判断する手段を含むことを特徴とする
    請求項15に記載の画像処理装置。
  22. 【請求項22】 前記属性付与手段は、前記連結要素内
    部において有意でない画素の輪郭追跡処理を行って該有
    意でない画素の輪郭を検出し、該有意でない画素の輪郭
    に基づいて、該連結要素が表であるか判断する手段を含
    むことを特徴とする請求項15に記載の画像処理装置。
  23. 【請求項23】 前記属性付与手段は、前記連結要素の
    属性が線画であるか 判断する手段を含むことを特徴とす
    る請求項15に記載の画像処理装置。
  24. 【請求項24】 前記属性付与手段は、属性の判断がつ
    かない連結画素に、未知の属性を付与することを特徴と
    する請求項15かに記載の画像処理装置。
  25. 【請求項25】 更に、前記テキストブロックを複数の
    テキストラインに分割するライン分割手段と、 前記ライン分割手段で分割されたテキストラインから文
    字を切り出す文字切り出し手段と、 前記文字切り出し手段で切り出された文字に対して文字
    認識処理を行う文字認識手段と、 前記文字認識手段での文字認識処理結果を、前記階層的
    木構造で確定された順に対応してテキストファイルに格
    納する格納手段とを有することを特徴とする請求項15
    に記載の画像処理装置。
  26. 【請求項26】 更に、前記階層的木構造に基づく順序
    にしたがって、画像を再生する再生手段を有することを
    特徴とする請求項25に記載の画像処理装置。
  27. 【請求項27】 画像に対して有意な画素の輪郭追跡処
    理を行って連結要素を検出する連結要素検出手段と、 前記連結要素検出手段で検出した連結要素に外接する矩
    形を形成する矩形形成手段と、 前記矩形形成手段で形成された矩形の位置に基づいて、
    前記連結要素の階層的木構造を形成する木構造形成手段
    と、 前記連結要素の属性を分類して、前記階層的木構造中の
    連結要素に属性を付与する属性付与手段と、 前記付与された属性に基づいて、前記木構造形成手段で
    形成された階層的木構造のノードを変更するノード変更
    手段とを有することを特徴とする画像処理装置。
  28. 【請求項28】 2値画像に対して黒画素の外側輪郭追
    跡処理を行って連結要素を検出する連結要素検出手段
    と、 前記連結要素内部において白画素の輪郭追跡処理を行っ
    て、白輪郭を検出する 白輪郭検出手段と、 前記白輪郭検出手段で検出された白輪郭の数と充填率と
    再接続率に基づいて、該連結要素の属性が表であるか判
    断する表判断手段とを有することを特徴とする画像処理
    装置。
JP12188393A 1992-04-24 1993-04-26 画像処理方法及び装置 Expired - Lifetime JP3359095B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US07/873,012 US5680479A (en) 1992-04-24 1992-04-24 Method and apparatus for character recognition
US873012 2001-06-01

Publications (2)

Publication Number Publication Date
JPH0668301A JPH0668301A (ja) 1994-03-11
JP3359095B2 true JP3359095B2 (ja) 2002-12-24

Family

ID=25360812

Family Applications (1)

Application Number Title Priority Date Filing Date
JP12188393A Expired - Lifetime JP3359095B2 (ja) 1992-04-24 1993-04-26 画像処理方法及び装置

Country Status (4)

Country Link
US (4) US5680479A (ja)
EP (1) EP0567344B1 (ja)
JP (1) JP3359095B2 (ja)
DE (1) DE69332459T2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272601A (ja) * 2006-03-31 2007-10-18 Canon Inc 画像処理装置、制御方法、コンピュータプログラム

Families Citing this family (213)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5436981A (en) * 1992-06-24 1995-07-25 Canon Kabushiki Kaisha Image processing method, and apparatus therefor
US6002798A (en) * 1993-01-19 1999-12-14 Canon Kabushiki Kaisha Method and apparatus for creating, indexing and viewing abstracted documents
US6005976A (en) * 1993-02-25 1999-12-21 Fujitsu Limited Image extraction system for extracting patterns such as characters, graphics and symbols from image having frame formed by straight line portions
US5848184A (en) * 1993-03-15 1998-12-08 Unisys Corporation Document page analyzer and method
US5588072A (en) * 1993-12-22 1996-12-24 Canon Kabushiki Kaisha Method and apparatus for selecting blocks of image data from image data having both horizontally- and vertically-oriented blocks
US5987171A (en) * 1994-11-10 1999-11-16 Canon Kabushiki Kaisha Page analysis system
US5754708A (en) * 1994-11-16 1998-05-19 Mita Industrial Co. Ltd. Dotted image area detecting apparatus and dotted image area detecting method
JPH08235310A (ja) * 1995-02-24 1996-09-13 Nec Corp 接触文字切り出し装置
US6005680A (en) 1995-04-04 1999-12-21 Canon Information Systems, Inc. Method for capturing a document image, a scanner using the method and a document image management system using the scanner
US6009196A (en) * 1995-11-28 1999-12-28 Xerox Corporation Method for classifying non-running text in an image
JP3814320B2 (ja) * 1995-12-14 2006-08-30 キヤノン株式会社 画像処理方法及び装置
JP3234148B2 (ja) * 1996-03-07 2001-12-04 シャープ株式会社 表示制御装置
US5974158A (en) * 1996-03-29 1999-10-26 The Commonwealth Of Australia Commonwealth Scientific And Industrial Research Organization Aircraft detection system
US5892843A (en) * 1997-01-21 1999-04-06 Matsushita Electric Industrial Co., Ltd. Title, caption and photo extraction from scanned document images
US6023534A (en) * 1997-08-04 2000-02-08 Xerox Corporation Method of extracting image data from an area generated with a halftone pattern
JP3780103B2 (ja) * 1997-09-03 2006-05-31 キヤノン株式会社 情報処理装置、情報処理方法、記憶媒体、及び、印刷システム
US5995659A (en) * 1997-09-09 1999-11-30 Siemens Corporate Research, Inc. Method of searching and extracting text information from drawings
US6298173B1 (en) 1997-10-03 2001-10-02 Matsushita Electric Corporation Of America Storage management system for document image database
JP3601658B2 (ja) 1997-12-19 2004-12-15 富士通株式会社 文字列抽出装置及びパターン抽出装置
US6173073B1 (en) 1998-01-05 2001-01-09 Canon Kabushiki Kaisha System for analyzing table images
JPH11203402A (ja) * 1998-01-16 1999-07-30 Canon Inc 画像処理装置及び画像処理方法
JPH11220628A (ja) 1998-01-30 1999-08-10 Canon Inc 画像処理装置及び方法並びに記憶媒体
US6532302B2 (en) 1998-04-08 2003-03-11 Canon Kabushiki Kaisha Multiple size reductions for image segmentation
JP4035228B2 (ja) 1998-05-11 2008-01-16 キヤノン株式会社 画像処理方法及び画像処理装置
US6075535A (en) * 1998-06-26 2000-06-13 Hewlett-Packard Company Method and apparatus for visualizing the tile access frequencies for tiled, multi-resolution images
US6233353B1 (en) 1998-06-29 2001-05-15 Xerox Corporation System for segmenting line drawings from text within a binary digital image
US6327388B1 (en) 1998-08-14 2001-12-04 Matsushita Electric Industrial Co., Ltd. Identification of logos from document images
US6360006B1 (en) 1998-09-29 2002-03-19 Canon Kabushiki Kaisha Color block selection
US7039856B2 (en) * 1998-09-30 2006-05-02 Ricoh Co., Ltd. Automatic document classification using text and images
KR100295360B1 (ko) * 1998-10-13 2001-11-26 윤종용 쉐이딩알고리즘을이용한영상처리방법
US6711292B2 (en) 1998-12-30 2004-03-23 Canon Kabushiki Kaisha Block selection of table features
AU3712600A (en) 1999-02-26 2000-09-14 Raf Technology, Inc. Method and system for identifying a reference region on an image of a dropped-out form
WO2000060531A2 (en) 1999-04-07 2000-10-12 Raf Technology, Inc. Extracting user data from a scanned image of a pre-printed form
US7000186B1 (en) * 1999-05-03 2006-02-14 Amicas, Inc. Method and structure for electronically transmitting a text document and linked information
US6496198B1 (en) 1999-05-04 2002-12-17 Canon Kabushiki Kaisha Color editing system
JP4454789B2 (ja) * 1999-05-13 2010-04-21 キヤノン株式会社 帳票分類方法及び装置
JP3204259B2 (ja) * 1999-10-06 2001-09-04 インターナショナル・ビジネス・マシーンズ・コーポレーション 文字列抽出方法、手書き文字列抽出方法、文字列抽出装置、および画像処理装置
US8311946B1 (en) * 1999-10-15 2012-11-13 Ebrary Method and apparatus for improved information transactions
US7536561B2 (en) * 1999-10-15 2009-05-19 Ebrary, Inc. Method and apparatus for improved information transactions
US20040148274A1 (en) * 1999-10-15 2004-07-29 Warnock Christopher M. Method and apparatus for improved information transactions
JP2001156274A (ja) * 1999-11-29 2001-06-08 Nec Corp 半導体記憶装置、その製造方法
US6718059B1 (en) 1999-12-10 2004-04-06 Canon Kabushiki Kaisha Block selection-based image processing
JP4401560B2 (ja) * 1999-12-10 2010-01-20 キヤノン株式会社 画像処理装置、画像処理方法、及び記憶媒体
US6687421B1 (en) * 2000-03-17 2004-02-03 International Business Machines Corporation Skew detection of text in a noisy digitized image
US7672022B1 (en) 2000-04-07 2010-03-02 Hewlett-Packard Development Company, L.P. Methods and apparatus for analyzing an image
JP2002032770A (ja) * 2000-06-23 2002-01-31 Internatl Business Mach Corp <Ibm> 文書処理方法、文書処理システムおよび媒体
JP4603658B2 (ja) * 2000-07-07 2010-12-22 キヤノン株式会社 画像処理装置及び画像処理方法並びに記憶媒体
US7603415B1 (en) * 2000-08-15 2009-10-13 ART Technology Group Classification of electronic messages using a hierarchy of rule sets
US7221810B2 (en) * 2000-11-13 2007-05-22 Anoto Group Ab Method and device for recording of information
US8682077B1 (en) 2000-11-28 2014-03-25 Hand Held Products, Inc. Method for omnidirectional processing of 2D images including recognizable characters
JP4366011B2 (ja) * 2000-12-21 2009-11-18 キヤノン株式会社 文書処理装置及び方法
US6690826B2 (en) * 2000-12-21 2004-02-10 Micron Technology, Inc. System and method for detecting text in mixed graphics data
US6807309B1 (en) * 2000-12-27 2004-10-19 Canon Kabushiki Kaisha Linear list compression
US6909805B2 (en) * 2001-01-31 2005-06-21 Matsushita Electric Industrial Co., Ltd. Detecting and utilizing add-on information from a scanned document image
DE60204066T2 (de) * 2001-02-22 2006-02-02 Oce Print Logic Technologies S.A. Automatische Lokalisierung von Tabellen in Dokumenten
EP1237115B1 (en) * 2001-02-22 2005-05-11 Océ Print Logic Technologies S.A. Automatic table location in documents
JP2002271611A (ja) * 2001-03-14 2002-09-20 Fujitsu Ltd 画像処理装置
US20030042319A1 (en) * 2001-08-31 2003-03-06 Xerox Corporation Automatic and semi-automatic index generation for raster documents
WO2003023696A1 (en) 2001-09-12 2003-03-20 Auburn University System and method of handwritten character recognition
US6678699B2 (en) 2001-10-09 2004-01-13 International Business Machines Corporation Visual indexing of displayable digital documents
US8103104B2 (en) * 2002-01-11 2012-01-24 Hewlett-Packard Development Company, L.P. Text extraction and its application to compound document image compression
US20030210803A1 (en) 2002-03-29 2003-11-13 Canon Kabushiki Kaisha Image processing apparatus and method
JP4278918B2 (ja) * 2002-04-19 2009-06-17 富士通株式会社 画像データ処理装置とその方法
US7043079B2 (en) 2002-04-25 2006-05-09 Microsoft Corporation “Don't care” pixel interpolation
US7392472B2 (en) * 2002-04-25 2008-06-24 Microsoft Corporation Layout analysis
US7120297B2 (en) 2002-04-25 2006-10-10 Microsoft Corporation Segmented layered image system
US7164797B2 (en) 2002-04-25 2007-01-16 Microsoft Corporation Clustering
US7110596B2 (en) 2002-04-25 2006-09-19 Microsoft Corporation System and method facilitating document image compression utilizing a mask
US7263227B2 (en) 2002-04-25 2007-08-28 Microsoft Corporation Activity detector
US7024039B2 (en) 2002-04-25 2006-04-04 Microsoft Corporation Block retouching
EP1504594B1 (en) 2002-05-15 2013-07-10 Thomson Licensing Close captioning system in windows based graphics system
JP2004023565A (ja) * 2002-06-18 2004-01-22 Canon Inc 電子透かし埋め込み装置、電子透かし抽出装置、及びそれらの方法
US7079686B2 (en) * 2002-08-20 2006-07-18 Lexmark International, Inc. Systems and methods for content-based document image enhancement
JP4194462B2 (ja) * 2002-11-12 2008-12-10 キヤノン株式会社 電子透かし埋め込み方法、電子透かし埋め込み装置、及びそれらを実現するプログラム並びにコンピュータ可読記憶媒体
JP4538214B2 (ja) * 2002-11-22 2010-09-08 オセ−テクノロジーズ・ベー・ヴエー グラフによる画像分割
JP3919656B2 (ja) * 2002-12-09 2007-05-30 キヤノン株式会社 電子透かし埋め込み装置、電子透かし埋め込み方法、電子透かし抽出装置、電子透かし抽出方法
JP2004193756A (ja) * 2002-12-09 2004-07-08 Canon Inc 電子透かし埋め込み方法
RU2251736C2 (ru) * 2002-12-17 2005-05-10 "Аби Софтвер Лтд." Способ идентификации зачеркнутых символов при распознавании рукописного текста
KR100480781B1 (ko) 2002-12-28 2005-04-06 삼성전자주식회사 치아영상으로부터 치아영역 추출방법 및 치아영상을이용한 신원확인방법 및 장치
US7283669B2 (en) * 2003-01-29 2007-10-16 Lockheed Martin Corporation Fine segmentation refinement for an optical character recognition system
US6914700B2 (en) 2003-04-17 2005-07-05 Lexmark International, Inc. Method for reducing migrating residual error in error diffusion halftoning
JP4350414B2 (ja) * 2003-04-30 2009-10-21 キヤノン株式会社 情報処理装置及び情報処理方法ならびに記憶媒体、プログラム
JP2004348706A (ja) 2003-04-30 2004-12-09 Canon Inc 情報処理装置及び情報処理方法ならびに記憶媒体、プログラム
JP2004334339A (ja) 2003-04-30 2004-11-25 Canon Inc 情報処理装置及び情報処理方法ならびに記憶媒体、プログラム
RU2259592C2 (ru) 2003-06-24 2005-08-27 "Аби Софтвер Лтд." Способ распознавания графических объектов с использованием принципа целостности
US7805307B2 (en) * 2003-09-30 2010-09-28 Sharp Laboratories Of America, Inc. Text to speech conversion system
EP1555804A3 (en) * 2004-01-19 2006-08-16 Ricoh Company, Ltd. Image processing apparatus, image processing program and storage medium
US20050281463A1 (en) * 2004-04-22 2005-12-22 Samsung Electronics Co., Ltd. Method and apparatus for processing binary image
KR100647284B1 (ko) * 2004-05-21 2006-11-23 삼성전자주식회사 영상의 문자 추출 장치 및 방법
EP1603072A1 (de) * 2004-06-02 2005-12-07 CCS Content Conversion Specialists GmbH Verfahren und Einrichtung zur Strukturanalyse eines Dokuments
TWI284288B (en) * 2004-06-04 2007-07-21 Benq Corp Text region recognition method, storage medium and system
JP2005352696A (ja) * 2004-06-09 2005-12-22 Canon Inc 画像処理装置及びその制御方法、プログラム
US7610274B2 (en) 2004-07-02 2009-10-27 Canon Kabushiki Kaisha Method, apparatus, and program for retrieving data
US20060045346A1 (en) * 2004-08-26 2006-03-02 Hui Zhou Method and apparatus for locating and extracting captions in a digital image
JP4681870B2 (ja) * 2004-12-17 2011-05-11 キヤノン株式会社 画像処理装置、画像処理方法、コンピュータプログラム
JP4455357B2 (ja) * 2005-01-28 2010-04-21 キヤノン株式会社 情報処理装置及び情報処理方法
JP4646797B2 (ja) * 2005-02-01 2011-03-09 キヤノン株式会社 画像処理装置及びその制御方法、プログラム
JP4566772B2 (ja) * 2005-02-14 2010-10-20 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
US7840564B2 (en) 2005-02-16 2010-11-23 Ebrary System and method for automatic anthology creation using document aspects
JP4443443B2 (ja) * 2005-03-04 2010-03-31 富士通株式会社 文書画像レイアウト解析プログラム、文書画像レイアウト解析装置、および文書画像レイアウト解析方法
JP2006253842A (ja) * 2005-03-08 2006-09-21 Ricoh Co Ltd 画像処理装置、画像形成装置、プログラム、記憶媒体および画像処理方法
JP2006268372A (ja) * 2005-03-23 2006-10-05 Fuji Xerox Co Ltd 翻訳装置、画像処理装置、画像形成装置、翻訳方法及びプログラム
AU2005201758B2 (en) * 2005-04-27 2008-12-18 Canon Kabushiki Kaisha Method of learning associations between documents and data sets
US7623712B2 (en) * 2005-06-09 2009-11-24 Canon Kabushiki Kaisha Image processing method and apparatus
US7555711B2 (en) * 2005-06-24 2009-06-30 Hewlett-Packard Development Company, L.P. Generating a text layout boundary from a text block in an electronic document
JP4574467B2 (ja) * 2005-06-30 2010-11-04 キヤノン株式会社 データ処理装置、データ処理方法およびコンピュータプログラム
US7433869B2 (en) * 2005-07-01 2008-10-07 Ebrary, Inc. Method and apparatus for document clustering and document sketching
JP4708888B2 (ja) * 2005-07-12 2011-06-22 キヤノン株式会社 画像処理装置、画像処理方法及びコンピュータプログラム
US20080311551A1 (en) * 2005-08-23 2008-12-18 Mazer Corporation, The Testing Scoring System and Method
JP4717562B2 (ja) * 2005-09-02 2011-07-06 キヤノン株式会社 画像処理装置及び方法
JP4993674B2 (ja) * 2005-09-09 2012-08-08 キヤノン株式会社 情報処理装置、検証処理装置及びそれらの制御方法、コンピュータプログラム及び記憶媒体
JP2007081482A (ja) * 2005-09-09 2007-03-29 Canon Inc 端末認証方法及びその装置、プログラム
US7596270B2 (en) * 2005-09-23 2009-09-29 Dynacomware Taiwan Inc. Method of shuffling text in an Asian document image
RU2309456C2 (ru) * 2005-12-08 2007-10-27 "Аби Софтвер Лтд." Способ распознавания текстовой информации из векторно-растрового изображения
US20100254606A1 (en) * 2005-12-08 2010-10-07 Abbyy Software Ltd Method of recognizing text information from a vector/raster image
JP4771804B2 (ja) * 2005-12-20 2011-09-14 富士通株式会社 レイアウト解析プログラム、レイアウト解析装置、レイアウト解析方法
US8509563B2 (en) * 2006-02-02 2013-08-13 Microsoft Corporation Generation of documents from images
US7650041B2 (en) * 2006-02-24 2010-01-19 Symbol Technologies, Inc. System and method for optical character recognition in an image
JP4799246B2 (ja) * 2006-03-30 2011-10-26 キヤノン株式会社 画像処理方法及び画像処理装置
US7734065B2 (en) * 2006-07-06 2010-06-08 Abbyy Software Ltd. Method of text information recognition from a graphical file with use of dictionaries and other supplementary data
JP4909216B2 (ja) * 2006-09-13 2012-04-04 株式会社キーエンス 文字切り出し装置、方法およびプログラム
US8631012B2 (en) * 2006-09-29 2014-01-14 A9.Com, Inc. Method and system for identifying and displaying images in response to search queries
US8971667B2 (en) * 2006-10-23 2015-03-03 Hewlett-Packard Development Company, L.P. Digital image auto-resizing
CN101276363B (zh) * 2007-03-30 2011-02-16 夏普株式会社 文档图像的检索装置及文档图像的检索方法
JP4945739B2 (ja) * 2007-03-30 2012-06-06 日本電産サンキョー株式会社 文字列認識方法及び文字列認識装置
JP4590433B2 (ja) * 2007-06-29 2010-12-01 キヤノン株式会社 画像処理装置、画像処理方法、コンピュータプログラム
JP4402138B2 (ja) 2007-06-29 2010-01-20 キヤノン株式会社 画像処理装置、画像処理方法、コンピュータプログラム
US8238662B2 (en) * 2007-07-17 2012-08-07 Smart Technologies Ulc Method for manipulating regions of a digital image
CN101354746B (zh) * 2007-07-23 2011-08-31 夏普株式会社 文字图像抽出装置及文字图像抽出方法
US8731297B1 (en) * 2007-09-28 2014-05-20 Amazon Technologies, Inc. Processing a digital image of content to remove border artifacts
JP4956366B2 (ja) * 2007-10-16 2012-06-20 キヤノン株式会社 画像処理装置
WO2009061917A1 (en) * 2007-11-06 2009-05-14 Copanion, Inc. Systems and methods to automatically organize electronic jobs by automatically classifying electronic documents using extracted image and text features and using a machine-learning recognition subsystem
US20090153912A1 (en) * 2007-12-18 2009-06-18 Mohamed Nooman Ahmed Scanner Calibration Strip, Scanner, and Method for Segmenting a Scanned Document Image
US8838489B2 (en) 2007-12-27 2014-09-16 Amazon Technologies, Inc. On-demand generating E-book content with advertising
JP4952627B2 (ja) * 2008-03-21 2012-06-13 富士通株式会社 画像処理装置、画像処理方法および画像処理プログラム
US7471826B1 (en) 2008-03-31 2008-12-30 International Business Machines Corporation Character segmentation by slices
US8200043B2 (en) * 2008-05-01 2012-06-12 Xerox Corporation Page orientation detection based on selective character recognition
JP5047051B2 (ja) * 2008-05-02 2012-10-10 キヤノン株式会社 画像処理装置及び画像符号化方法
US8023741B2 (en) 2008-05-23 2011-09-20 Sharp Laboratories Of America, Inc. Methods and systems for detecting numerals in a digital image
US8023770B2 (en) 2008-05-23 2011-09-20 Sharp Laboratories Of America, Inc. Methods and systems for identifying the orientation of a digital image
JP5028337B2 (ja) * 2008-05-30 2012-09-19 キヤノン株式会社 画像処理装置、画像処理方法、プログラム、及び記憶媒体
JP5171421B2 (ja) * 2008-06-18 2013-03-27 キヤノン株式会社 画像処理装置、画像処理方法、コンピュータプログラム
JP5132440B2 (ja) * 2008-06-23 2013-01-30 キヤノン株式会社 画像処理装置及び画像処理方法
JP5146190B2 (ja) * 2008-08-11 2013-02-20 オムロン株式会社 文字認識装置、文字認識プログラム、および文字認識方法
US8520979B2 (en) * 2008-08-19 2013-08-27 Digimarc Corporation Methods and systems for content processing
JP5049921B2 (ja) * 2008-08-26 2012-10-17 キヤノン株式会社 画像処理装置及び画像処理方法
JP5049922B2 (ja) * 2008-08-26 2012-10-17 キヤノン株式会社 画像処理装置及び画像処理方法
JP5049920B2 (ja) * 2008-08-26 2012-10-17 キヤノン株式会社 画像処理装置及び画像処理方法
US8620080B2 (en) * 2008-09-26 2013-12-31 Sharp Laboratories Of America, Inc. Methods and systems for locating text in a digital image
JP2010123002A (ja) * 2008-11-20 2010-06-03 Canon Inc 文書画像レイアウト装置
JP5350148B2 (ja) * 2008-11-28 2013-11-27 キヤノン株式会社 情報処理装置、情報処理方法
JP5178490B2 (ja) * 2008-12-17 2013-04-10 キヤノン株式会社 画像処理装置、画像処理方法、コンピュータプログラム
US8473467B2 (en) * 2009-01-02 2013-06-25 Apple Inc. Content profiling to dynamically configure content processing
US8290255B2 (en) * 2009-02-06 2012-10-16 Canon Kabushiki Kaisha Image processing method, image processing apparatus, and program
US8625895B2 (en) * 2009-03-30 2014-01-07 The Neat Company, Inc. Table grid detection and separation
AU2009201252B2 (en) * 2009-03-31 2011-06-02 Canon Kabushiki Kaisha Colour correcting foreground colours for visual quality improvement
JP5312166B2 (ja) * 2009-04-13 2013-10-09 キヤノン株式会社 画像処理装置及び制御方法及びプログラム
JP5208043B2 (ja) * 2009-04-16 2013-06-12 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP5361574B2 (ja) * 2009-07-01 2013-12-04 キヤノン株式会社 画像処理装置、画像処理方法、及びプログラム
JP5335581B2 (ja) * 2009-07-01 2013-11-06 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
JP5276541B2 (ja) * 2009-07-27 2013-08-28 キヤノン株式会社 画像処理方法及び画像処理装置及びプログラム
JP5465015B2 (ja) 2010-01-06 2014-04-09 キヤノン株式会社 文書を電子化する装置及び方法
US8594422B2 (en) * 2010-03-11 2013-11-26 Microsoft Corporation Page layout determination of an image undergoing optical character recognition
CN101853297A (zh) * 2010-05-28 2010-10-06 英华达(南昌)科技有限公司 一种在电子设备中快速获得期望图像的方法
US8218875B2 (en) * 2010-06-12 2012-07-10 Hussein Khalid Al-Omari Method and system for preprocessing an image for optical character recognition
CN101984426B (zh) * 2010-10-21 2013-04-10 优视科技有限公司 用于对网页图片进行字符切分的方法及装置
CN102479326B (zh) * 2010-11-30 2013-07-24 方正国际软件(北京)有限公司 一种图文识别人工校对辅助方法及系统
US8543911B2 (en) 2011-01-18 2013-09-24 Apple Inc. Ordering document content based on reading flow
US8442998B2 (en) 2011-01-18 2013-05-14 Apple Inc. Storage of a document using multiple representations
US8380753B2 (en) 2011-01-18 2013-02-19 Apple Inc. Reconstruction of lists in a document
US9002139B2 (en) 2011-02-16 2015-04-07 Adobe Systems Incorporated Methods and systems for automated image slicing
US8731296B2 (en) * 2011-04-21 2014-05-20 Seiko Epson Corporation Contact text detection in scanned images
US8818092B1 (en) * 2011-09-29 2014-08-26 Google, Inc. Multi-threaded text rendering
JP5948866B2 (ja) * 2011-12-27 2016-07-06 富士ゼロックス株式会社 画像処理装置及びプログラム
WO2013110289A1 (en) 2012-01-23 2013-08-01 Microsoft Corporation Borderless table detection engine
CN104067293B (zh) * 2012-01-23 2017-07-25 微软技术许可有限责任公司 矢量图分类引擎
JP5950700B2 (ja) 2012-06-06 2016-07-13 キヤノン株式会社 画像処理装置、画像処理方法及びプログラム
CN103577817B (zh) * 2012-07-24 2017-03-01 阿里巴巴集团控股有限公司 表单识别方法与装置
US9424249B1 (en) * 2012-09-18 2016-08-23 Amazon Technologies, Inc. Encoding text units
US9569679B1 (en) * 2012-12-04 2017-02-14 A9.Com, Inc. Adaptive image sampling for text detection
US9098537B2 (en) * 2012-12-20 2015-08-04 Oracle International Corporation Techniques for aligned run-length encoding
US9953008B2 (en) 2013-01-18 2018-04-24 Microsoft Technology Licensing, Llc Grouping fixed format document elements to preserve graphical data semantics after reflow by manipulating a bounding box vertically and horizontally
US9785240B2 (en) * 2013-03-18 2017-10-10 Fuji Xerox Co., Ltd. Systems and methods for content-aware selection
GB2516007B (en) * 2013-06-28 2018-05-09 Displaylink Uk Ltd Efficient encoding of display data
CN104715178B (zh) * 2013-12-11 2020-04-03 深圳富泰宏精密工业有限公司 电子装置的解锁系统及方法
US20170061257A1 (en) * 2013-12-16 2017-03-02 Adobe Systems Incorporated Generation of visual pattern classes for visual pattern regonition
JP5875637B2 (ja) 2013-12-19 2016-03-02 キヤノン株式会社 画像処理装置、画像処理方法
JP6494166B2 (ja) * 2014-03-12 2019-04-03 キヤノン株式会社 画像処理装置、画像処理方法およびプログラム
US11100571B1 (en) * 2014-06-10 2021-08-24 Wells Fargo Bank, N.A. Systems and methods for payee identification via camera
US9361531B2 (en) * 2014-07-21 2016-06-07 Optum, Inc. Targeted optical character recognition (OCR) for medical terminology
US20160026613A1 (en) * 2014-07-28 2016-01-28 Microsoft Corporation Processing image to identify object for insertion into document
RU2571616C1 (ru) * 2014-08-12 2015-12-20 Общество с ограниченной ответственностью "Аби Девелопмент" Способ и система оптического распознавания символов, которые сокращают время обработки изображений, потенциально не содержащих символы
US9384391B2 (en) * 2014-10-03 2016-07-05 Xerox Corporation Methods and systems for processing documents
US9430703B2 (en) * 2014-12-19 2016-08-30 Konica Minolta Laboratory U.S.A., Inc. Method for segmenting text words in document images using vertical projections of center zones of characters
US9984287B2 (en) * 2015-03-05 2018-05-29 Wipro Limited Method and image processing apparatus for performing optical character recognition (OCR) of an article
US10049268B2 (en) * 2015-03-06 2018-08-14 Kofax, Inc. Selective, user-mediated content recognition using mobile devices
US9811505B2 (en) * 2015-07-20 2017-11-07 Sas Institute Inc. Techniques to provide processing enhancements for a text editor in a computing environment
US9865038B2 (en) * 2015-11-25 2018-01-09 Konica Minolta Laboratory U.S.A., Inc. Offsetting rotated tables in images
CN107688788B (zh) * 2017-08-31 2021-01-08 平安科技(深圳)有限公司 文档图表抽取方法、电子设备及计算机可读存储介质
GB201719862D0 (en) * 2017-11-29 2018-01-10 Yellow Line Parking Ltd Hierarchical image interpretation system
US10685225B2 (en) * 2017-12-29 2020-06-16 Wipro Limited Method and system for detecting text in digital engineering drawings
US10579707B2 (en) * 2017-12-29 2020-03-03 Konica Minolta Laboratory U.S.A., Inc. Method for inferring blocks of text in electronic documents
TWI671686B (zh) * 2018-01-24 2019-09-11 緯創資通股份有限公司 影像數據擷取方法及影像數據擷取裝置
RU2701453C1 (ru) * 2018-06-25 2019-09-26 Михаил Григорьевич Блайвас Способ представления графических объектов
JP7185451B2 (ja) * 2018-09-10 2022-12-07 キヤノン株式会社 画像処理装置と画像処理方法、及びプログラム
CN109685070B (zh) * 2019-01-11 2023-01-24 上海大学(浙江·嘉兴)新兴产业研究院 一种图像预处理方法
CN109871938B (zh) * 2019-01-21 2023-04-25 重庆大学 一种基于卷积神经网络的零部件喷码检测方法
JP7406884B2 (ja) * 2019-06-27 2023-12-28 キヤノン株式会社 情報処理装置、プログラム及び制御方法
JPWO2022070999A1 (ja) * 2020-09-30 2022-04-07
US11531454B2 (en) * 2020-12-10 2022-12-20 Microsoft Technology Licensing, Llc Selecting content in ink documents using a hierarchical data structure
US11550934B2 (en) * 2021-03-16 2023-01-10 Check Point Software Technologies, Ltd. Systems and methods for the efficient detection of improperly redacted electronic documents
US11409981B1 (en) * 2021-03-31 2022-08-09 Intuit, Inc. Document classification using signal processing
CN115082598B (zh) * 2022-08-24 2023-07-11 北京百度网讯科技有限公司 文本图像生成、训练、文本图像处理方法以及电子设备

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4379282A (en) * 1979-06-01 1983-04-05 Dest Corporation Apparatus and method for separation of optical character recognition data
JPH07107694B2 (ja) * 1984-08-31 1995-11-15 株式会社日立製作所 文書処理装置
JPH0731714B2 (ja) * 1986-05-29 1995-04-10 インタ−ナショナル ビジネス マシ−ンズ コ−ポレ−ション 文字成分切出し方法
JPH01183784A (ja) * 1988-01-19 1989-07-21 Toshiba Corp 文書画像処理装置
US5101448A (en) * 1988-08-24 1992-03-31 Hitachi, Ltd. Method and apparatus for processing a document by utilizing an image
US5129012A (en) * 1989-03-25 1992-07-07 Sony Corporation Detecting line segments and predetermined patterns in an optically scanned document
JP2812982B2 (ja) * 1989-04-05 1998-10-22 株式会社リコー 表認識方法
JPH0816918B2 (ja) * 1989-04-18 1996-02-21 シャープ株式会社 行抽出方法
JP2644041B2 (ja) * 1989-05-08 1997-08-25 キヤノン株式会社 文字認識装置
JP2940936B2 (ja) * 1989-06-06 1999-08-25 株式会社リコー 表領域識別方法
US5272764A (en) * 1989-12-08 1993-12-21 Xerox Corporation Detection of highlighted regions
JPH03290774A (ja) * 1990-04-06 1991-12-20 Fuji Facom Corp 文書画像の文章領域抽出装置
JPH0490083A (ja) * 1990-08-03 1992-03-24 Canon Inc 文字認識装置
US5101439A (en) * 1990-08-31 1992-03-31 At&T Bell Laboratories Segmentation process for machine reading of handwritten information
AU648595B2 (en) * 1990-09-27 1994-04-28 Cgk Computer Gesellschaft Konstanz Mbh Process for extracting individual characters from raster images of a read-in handwritten or typed series of characters in free distribution
KR930002349B1 (ko) * 1990-12-29 1993-03-29 주식회사 금성사 압축영상의 문자열 분리방법
JPH04248687A (ja) * 1991-01-23 1992-09-04 Internatl Business Mach Corp <Ibm> 文書画像のレイアウト解析方法及びシステム
US5307422A (en) * 1991-06-25 1994-04-26 Industrial Technology Research Institute Method and system for identifying lines of text in a document
US5351314A (en) * 1991-10-04 1994-09-27 Canon Information Systems, Inc. Method and apparatus for image enhancement using intensity dependent spread filtering
US5253304A (en) * 1991-11-27 1993-10-12 At&T Bell Laboratories Method and apparatus for image segmentation
US5335290A (en) * 1992-04-06 1994-08-02 Ricoh Corporation Segmentation of text, picture and lines of a document image

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
汎用的な文書画像の階層的領域分割と識別法,電子情報通信学会論文誌,日本,1992年 2月,D−II Vol.J75−D−II No.2,pp.246−256

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007272601A (ja) * 2006-03-31 2007-10-18 Canon Inc 画像処理装置、制御方法、コンピュータプログラム

Also Published As

Publication number Publication date
EP0567344B1 (en) 2002-11-06
DE69332459T2 (de) 2003-07-10
DE69332459D1 (de) 2002-12-12
US5680479A (en) 1997-10-21
US6115497A (en) 2000-09-05
US6081616A (en) 2000-06-27
JPH0668301A (ja) 1994-03-11
EP0567344A3 (en) 1994-09-14
US5680478A (en) 1997-10-21
EP0567344A2 (en) 1993-10-27

Similar Documents

Publication Publication Date Title
JP3359095B2 (ja) 画像処理方法及び装置
US6173073B1 (en) System for analyzing table images
US6512848B2 (en) Page analysis system
JP2973944B2 (ja) 文書処理装置および文書処理方法
US5335290A (en) Segmentation of text, picture and lines of a document image
US5410611A (en) Method for identifying word bounding boxes in text
US8041113B2 (en) Image processing device, image processing method, and computer program product
US6335986B1 (en) Pattern recognizing apparatus and method
EP0660256A2 (en) Method and apparatus for selecting text and/or non-text blocks in a stored document
US6711292B2 (en) Block selection of table features
JPH0652354A (ja) スキュー補正方法並びにスキュー角検出方法並びにドキュメントセグメンテーションシステムおよびスキュー角検出装置
US20030012438A1 (en) Multiple size reductions for image segmentation
JP5538812B2 (ja) 画像処理装置、画像処理方法及びプログラム
US6360006B1 (en) Color block selection
JPH1083431A (ja) 情報処理装置およびその方法
JP3837193B2 (ja) 文字行抽出方法および装置
CN114495141A (zh) 文档段落位置提取方法、电子设备及存储介质
JPH0721817B2 (ja) 文書画像処理方法
US20030123730A1 (en) Document recognition system and method using vertical line adjacency graphs
JP3607753B2 (ja) 文書画像の領域分割方法および装置、並びに段組種類判別方法および装置
JP3187895B2 (ja) 文字領域抽出方法
JP2004246546A (ja) 画像処理方法、該方法の実行に用いるプログラム及び画像処理装置
JP2003346081A (ja) 文字認識装置
JPH11191135A (ja) 文書画像の日本語英語判定方法、文書認識方法および記録媒体
US20220406083A1 (en) Image processing apparatus, control method thereof, and storage medium

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20020909

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20071011

Year of fee payment: 5

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20081011

Year of fee payment: 6

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091011

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20091011

Year of fee payment: 7

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101011

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20101011

Year of fee payment: 8

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111011

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20111011

Year of fee payment: 9

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20121011

Year of fee payment: 10