JP3847856B2 - イメージ処理方法及び装置 - Google Patents

イメージ処理方法及び装置 Download PDF

Info

Publication number
JP3847856B2
JP3847856B2 JP22183496A JP22183496A JP3847856B2 JP 3847856 B2 JP3847856 B2 JP 3847856B2 JP 22183496 A JP22183496 A JP 22183496A JP 22183496 A JP22183496 A JP 22183496A JP 3847856 B2 JP3847856 B2 JP 3847856B2
Authority
JP
Japan
Prior art keywords
text
address
text block
block
grouping
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 - Fee Related
Application number
JP22183496A
Other languages
English (en)
Other versions
JPH09171556A (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 JPH09171556A publication Critical patent/JPH09171556A/ja
Application granted granted Critical
Publication of JP3847856B2 publication Critical patent/JP3847856B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

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/414Extracting the geometrical structure, e.g. layout tree; Block segmentation, e.g. bounding boxes for graphics or text

Landscapes

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

Description

【0001】
【発明の属する技術分野】
本発明は、ブロック選択処理を使用して文書頁内の異なるタイプのイメージデータを弁別するために文書頁を分析し、該分析したイメージデータに基づいて更に処理するために文書頁内のイメージデータを抽出するイメージ処理方法及び装置に関し、特に、イメージデータを表として識別すると、表として識別されたイメージデータ内の行及び列を規定し、表内のテキストブロックに行及び列のアドレス座標を割り当て、必要に応じて、あるテキストブロックを更に小さなテキストブロックに細分し、行及び列のアドレス座標を用いて後処理として表からのテキストデータの抽出を行うために階層木構造に座標を記憶するイメージ処理方法及び装置に関する。
【0002】
【従来の技術】
従来の特徴抽出装置では、文書内の異なるタイプのイメージデータは、まずイメージタイプに従って識別され、次にタイプに基づいてグループ分けされる。特に、従来の特徴抽出装置は、テキストデータ、表データ、またはグラフデータ等の文書内のイメージデータを識別するためにブロック選択ルーチンを実行する。識別されたイメージデータは、イメージタイプ、好ましくは、ブロック矩形フォーマットに従ってグループ分けされる。イメージデータがブロック矩形フォーマットでグループ分けされると、当該ブロック内のイメージデータは、そのイメージタイプに基づいて更に処理するために抽出される。
【0003】
米国特許出願第07/873、012号及び米国特許出願第07/388、781号に記載された技術等の最近開発されたブロック選択技術が、文書頁内の異なるタイプのイメージデータを弁別するために文書頁内のイメージの自動分析を行う特徴抽出装置に採用されている。このようなブロック選択技術により得られた結果は、光学式文字認識(OCR)、データ圧縮、データルーチング、データ抽出などのような、イメージに対して行うその後の処理の種類を決定するために使用される。たとえば、テキストデータとして指定されたイメージデータはOCR処理にかけられるが、ピクチャデータとして指定されたイメージデータはOCR処理にはかけられない。その結果、複数の異なるタイプのイメージデータを入力して、オペレータの介入なしに自動処理することができる。
【0004】
上述のようなブロック選択技術の動作例を、図1〜3を参照して下記に述べる。
【0005】
図1は代表的な文書の頁を示す。文書頁1は、2コラムフォーマットで配列されている。頁1は、題名2、水平線3、テキストデータの線を含むテキスト領域4、5及び6、ハーフトーンピクチャ領域7、フレーム領域8、及び表10を有する。米国特許出願第07/873、012号及び米国特許出願第07/388、781号に記載されたブロック選択技術によると、文書頁1の各領域が、その中に位置するイメージデータのタイプに従って指定され、次いでイメージデータがその各々のタイプに基づいて区分される。ブロック選択アプリケーションが文書頁を処理すると、図2に示すように階層木構造が生成される。
【0006】
図2において、階層木構造20は、文書頁1のイメージデータの区分されたブロックを表す複数のノードを有する。木構造の各ノードは、処理された文書頁のイメージデータの各ブロックの特徴を規定する特徴データを有する。たとえば、特徴データは、ブロック位置データ、サイズデータ、属性データ(テキスト、ピクチャ、表等のイメージタイプ)、サブ属性データ、子ノード及び親ノードのポインタを含むことができる。この点に関し、子すなわち「子孫」ノードは、イメージデータのより広いブロック内に全て存在するイメージデータを表す。たとえば、表内に位置するテキストブロックは、表ブロックの子ノードとして指定される。子ノードは、階層木構造では、親ノードすなわち根ノード21から分岐するノード22と同一レベルにあるノードのように、親ノードから分岐するノードとして描かれる。
【0007】
階層木構造20のような階層木構造は一旦生成されると、メモリに記憶される。文書イメージ内のイメージデータの処理要求を受けると、階層木構造20はメモリから検索され、ブロック化されたイメージデータが対応するノードに記憶された特徴データに従って処理される。たとえば、ユーザは更にデータを処理するために表の種々のテキストブロック内のデータを抽出することができる。文書頁のイメージデータを処理するために階層木構造を使用するほかに、図3に示すブロックテンプレート40のディスプレイのように文書頁の広範なフォーマットを生成して表示するために階層木構造が使用される。図2に示される階層木構造に記憶された特徴データに基づいて文書頁のブロックテンプレート40が生成され、ユーザに表示される。
【0008】
文書頁のブロックテンプレートは、階層木構造と、階層木構造の各ノードに記憶された特徴データとを直接反映している。ノード内の特徴データは、ブロックの形状、位置、サイズを生成するために使用される。更に、各ノード内の特徴データは、ブロック内に含まれるイメージデータのタイプを識別するために使用される。たとえば、図3に示すように、ブロックテンプレート40はテキストブロック41、42及び43を有し、各テキストブロックはそれぞれノード28、31及び32に対応する。また、表ブロック48も図示されており、該表ブロック48はそれぞれノード39A−39Nに対応するテキストセル49を有する。
【0009】
【発明が解決しようとする課題】
しかしながら、上述したブロック選択技術には不具合があった。たとえば、ブロック選択技術のエラーのため、あるいは、分析した文書頁のスキャンや印刷が不十分であるため、表内のテキストデータが別々のグループにあるいは同一のグループにグループ分けされるときに、表として識別されるイメージデータのブロック選択処理に誤まりが生じることがある。この結果、表イメージデータ及びその中のテキストデータの後処理が不十分になる。すなわち、イメージデータが表として識別されるときは、その表が有するテキストデータは、表内の行及び列の位置に基づいて表内で同一のグループにあるいは別々のグループにグループ分けされなければならない。このため、テキストデータがそのブロック内に含まれるべきでない他のテキストデータと同一のグループまたはブロックに水平方向あるいは垂直方向にグループ分けされブロック化されるとき、または、テキストデータが表内の他のテキストデータと同一のグループまたはブロックに水平方向あるいは垂直方向にグループ分けされブロック化されるときに、問題が生じる。
【0010】
本発明は、上述の不具合を解消するために、表イメージデータ及びその中のテキストデータの後処理が不十分にならないように、表内のイメージデータを適切に抽出することができるイメージ処理方法及び装置を提供することを目的とする。
【0011】
【課題を解決するための手段】
本発明は、上記目的を達成するため、入力された文書イメージ内に含まれる表イメージを識別する表イメージ識別工程と、前記表イメージ内に存在するテキストの領域を示す複数のテキストブロックを識別するテキストブロック識別工程と、前記識別された各テキストブロックの水平方向位置情報に基づいて、前記複数のテキストブロックを水平方向でグループ分けする水平グループ分け工程と、前記識別された各テキストブロックの垂直方向位置情報に基づいて、前記複数のテキストブロックを垂直方向でグループ分けする垂直グループ分け工程と、前記水平グループ分け工程により水平方向でグループ分けされた結果と、前記垂直グループ分け工程により垂直方向でグループ分けされた結果とに基づいて、前記複数のテキストブロックそれぞれに対して、表における行アドレスと列アドレスとを割り当てる第1のアドレス割当工程と、前記行アドレスと列アドレスとの少なくともいずれかにアドレス範囲が割り当てられたテキストブロックについて、細分することができるか否か判定する細分判定工程と、前記細分判定工程で細分可能と判定されたテキストブロックを細分する細分工程と、前記細分工程で細分されたテキストブロックに対して、新たな行アドレスと列アドレスとを割り当てる第2のアドレス割当工程と、前記細分工程で前記テキストブロックが細分されなかった場合、前記テキストブロックそれぞれに対して前記第1のアドレス割当工程で割り当てられた行アドレスと列アドレスとを記憶し、前記細分工程で前記テキストブロックが細分された場合、当該細分されたテキストブロックに対して前記第2のアドレス割当工程で割り当てられた新たな行アドレスと列アドレスとを記憶する記憶工程とを備えることを特徴とするイメージ処理方法を提供する。
【0012】
また、本発明は、上記目的を達成するため、入力された文書イメージ内に含まれる表イメージを識別する表イメージ識別手段と、前記表イメージ内に存在するテキストの領域を示す複数のテキストブロックを識別するテキストブロック識別手段と、前記識別された各テキストブロックの水平方向位置情報に基づいて、前記複数のテキストブロックを水平方向でグループ分けする水平グループ分け手段と、前記識別された各テキストブロックの垂直方向位置情報に基づいて、前記複数のテキストブロックを垂直方向でグループ分けする垂直グループ分け手段と、前記水平グループ分け手段により水平方向でグループ分けされた結果と、前記垂直グループ分け手段により垂直方向でグループ分けされた結果とに基づいて、前記複数のテキストブロックそれぞれに対して、表における行アドレスと列アドレスとを割り当てる第1のアドレス割当手段と、前記行アドレスと列アドレスとの少なくともいずれかにアドレス範囲が割り当てられたテキストブロックについて、細分することができるか否か判定する細分判定手段と、前記細分判定手段で細分可能と判定されたテキストブロックを細分する細分手段と、前記細分手段で細分されたテキストブロックに対して、新たな行アドレスと列アドレスとを割り当てる第2のアドレス割当手段と、前記細分手段で前記テキストブロックが細分されなかった場合、前記テキストブロックそれぞれに対して前記第1のアドレス割当手段で割り当てられた行アドレスと列アドレスとを記憶し、前記細分手段で前記テキストブロックが細分された場合、当該細分されたテキストブロックに対して前記第2のアドレス割当手段で割り当てられた新たな行アドレスと列アドレスとを記憶する記憶手段とを備えることを特徴とするイメージ処理装置を提供する。
【0015】
【発明の実施の形態】
以下、本発明の実施の形態を図面を参照して詳細に説明する。
【0016】
図4は、本発明のブロック選択に基づいた表操作及びテキストデータ抽出装置を組み込んだ代表的なコンピュータ機器の外観を示す図である。
【0017】
図4には、マイクロソフトWindows OS等のウインドウ型オペレーションシステムを有するIBM PCまたはPC互換機等のコンピュータ機器410が示してある。コンピュータ機器410には、モノクロまたはカラーディスプレイモニタ412が設けられ、ユーザに対しイメージを表示する。コンピュータ機器410には更に、データファイル及びアプリケーションプログラムファイルを記憶する固定ディスクドライブ411と、テキストデータを入力し、モニタ412の表示画面に表示される対象を操作するキーボード413と、ディスプレイ画面に表示される対象を指示したり操作したりするための、マウス等のポインティング・デバイス414とが設けられる。
【0018】
複数頁を有する文書はスキャナ416によって入力される。スキャナ416は文書の各頁または他のイメージをスキャンして、これらの頁のビットマップイメージデータをコンピュータ機器410に供給する。該イメージデータは、圧縮または非圧縮フォーマットでディスク411に記憶される。
【0019】
コンピュータ機器410が処理した文書を出力するために従来のカラープリンタ418が設けられる。
【0020】
更に、ローカル・エリア・ネットワークとインターフェースするためのネットワーク・インターフェース424、及びファクシミリ/モデムを介してファクシミリ・メッセージ及び他のデータファイルを送受信するためのファクシミリ/モデム・インターフェース426が設けられる。
【0021】
オペレータの指示に従って且つウインドウ型オペレーションシステムの制御のもとで、デスクトップ・パブリッシング・プログラム、ドローイング・アプリケーション・プログラム、ブロック選択アプリケーション等の記憶されたアプリケーション・プログラムが選択的に起動され、データを処理したり操作したりする。また、オペレータの指示に従って且つこれらの記憶されたアプリケーション・プログラムに基づいて、イメージをモニタ412に表示したり、モニタ412に表示されているイメージをプリンタ418で印刷するようにコマンドが発せられる。 最も典型的には、本発明のブロック選択プログラムを含むコンピュータディスク411に記憶されたアプリケーションは、フロッピィディスク、CD−ROM、またはコンピュータ掲示板などのコンピュータ読み出し可能媒体から各アプリケーションをダウンロードしてディスク411に記憶されたものである。
【0022】
図5は、コンピュータ機器410の内部構成を示す詳細ブロック図である。図5に示すように、コンピュータ機器410は、コンピュータバス521に接続された、プログラム式マイクロプロセッサ等から成る中央演算処理装置(CPU)520を有する。また、スキャナ・インターフェース522、プリンタ・インターフェース523、ネットワーク・インターフェース524、ファックスモデム・インターフェース526、ディスプレイ・インターフェース527、キーボード・インターフェース528、及びマウス・インターフェース529が、コンピュータバス521に接続されている。
【0023】
CPU520がアクセスできるように、ランダム・アクセス・メモリ(RAM)等の主メモリ530がコンピュータバス521に接続されている。特に、ディスク411に記憶されたアプリケーション・プログラムに関連する命令等、記憶されたアプリケーション・プログラムの命令列を実行するときに、CPU520は、これらの命令列を、ディスク411(またはネットワーク・インターフェース524を介してまたはフロッピィ・ディスク・ドライブ(図示せず)を介してアクセスされる媒体等の他の記憶媒体)から主メモリ530にロードして、主メモリ530からこれらの記憶されたアプリケーション・プログラムの命令列を読み出して実行する。
【0024】
[ブロック選択を使用した表及びテキストブロックの識別]
簡潔に述べると、本発明は、表として識別されたイメージデータ内の各テキストブロック内のテキストの表セルの位置を求めてこれを識別し、テキストブロック内のテキストの表セルの位置によってそのテキストブロックが更に1つ以上の行及び列に細分することができるか否かを決定するコンピュータで実行される方法を提供する。
【0025】
本発明によると、イメージデータ内における表の位置が求められると、そのイメージデータ内のテキストブロックは、前述したような公知のブロック選択技術を使用して識別される。テキストブロックを識別すると、そのテキストブロックは文書頁内の水平方向位置情報及び垂直方向位置情報に基づいて区分け(ソート)され、次いで表内の行及び列の位置に基づいてアドレス座標を割り当てられる。アドレス座標が割り当てられると、各テキストブロックは更に分析されて、行アドレス範囲、列アドレス範囲、あるいはその双方等のアドレス範囲を有するテキストブロックの位置が求められる。アドレス範囲を有するテキストブロックは、テキストブロック内のテキストの表セルの間に行及び列区切り線を挿入することによってそのテキストブロックを更に小さなテキストブロックに細分することができるか否かを決定するために、アドレス範囲のタイプに基づいて垂直方向または水平方向の区切り処理にかけられる(たとえば、列アドレス範囲は垂直方向区切り処理を受ける)。細分された各テキストブロックは、新たに位置決めされた行及び列区切り線に基づいて表内のアドレス座標が割り当てられる。次いで、全てのテキストブロックのアドレス座標は、公知のブロック選択技術に従って階層木構造を更新するために記憶される。
【0026】
図6及び図7は、本発明のブロック選択アプリケーションを使用して表識別、並びにテキストブロックの細分及びテキストブロックのアドレス指定を実行する方法を示すフローチャートである。図6及び図7に示された処理ステップは、ディスク411に記憶されたコンピュータ処理ステップに従ってCPU520によって実行される。
【0027】
ステップS600において、文書頁内のピクセルイメージデータは装置内に入力され、ディスク411に記憶される。イメージデータは、イメージをピクセル単位で表したものであり、好ましくは、ピクセルデータはバイナリピクセルデータであり、すなわち、スキャナ416、ネットワーク・インターフェース424、またはモデム・インターフェース426を介して入力された白黒イメージデータである。ステップS601においてブロック選択アプリケーションが開始される。簡潔のために、異なるイメージタイプの文書頁全体のブロック選択の開始及び処理はここでは説明せず、イメージデータの選択及び分析によってどのように表が識別されるかについて説明する。文書頁全体におけるイメージデータを弁別するブロック選択技術の詳細に関しては、米国特許出願第07/873、012号及び米国特許出願第07/388、781号に開示されたブロック選択技術を参照すべきである。本発明は、イメージデータを表として識別して、必要に応じて、ブロック選択処理により1つのテキストブロックを細分したときに、表の1つ以上の行及び/または列にまたがるテキストブロックを更に小さなテキストブロックに細分することを対象とする。
【0028】
[表識別]
ステップS603において、ブロック選択によりブロック化領域を表として識別する方法について簡単に説明する。この処理の詳細については米国特許出願第07/873、012号に開示されたブロック選択技術を参照すべきである。
【0029】
このように、ステップS603において、上述のブロック選択技術の1つを使用してフレーム化データの位置が求められたとき、該データは、そのフレームが「フレーム表」であるか「フレーム・ハーフトーン」であるかを判別するために分析される。従って、フレームデータは、黒ピクセルではなく白ピクセルであると検出された白輪郭を得るために、接続要素の内部を調べることによって表または表状に組織されたデータを含むか否かを判別するために更に分析される。この点に関して、非テキストユニットの内部は、非テキストユニットの内部の底部右側部分から上部左側部分に向う第1方向でスキャンされる。最初の白ピクセルに遭遇すると、該分析された白ピクセルに隣接するピクセルは、たこ足パターンに類似した状態にある。従って、たこ足パターンに従って白輪郭を追跡することが4方向ベクトルで実行される。白輪郭追跡は、全ての白輪郭が黒ピクセルに囲まれるかまたは追跡されるまで4方向で継続される。各白輪郭の位置が求められると、非テキスト対象物内に囲まれた全ての白輪郭が追跡されるまで上述のように前記第1の方向でスキャンされる。
【0030】
このとき、非テキストユニットの密度が、接続要素内の黒ピクセルを計数し黒ピクセルの数を矩形フォーマットで囲まれたピクセルの全数で割ることによって算出される。非テキストユニット内で見出された白輪郭の数が調べられる。白輪郭の数が予め規定された数よりも多いかまたは等しい場合は、その非テキストイメージは、実際に、表または一連の表状に配置されたテキストブロックである可能性がある。
【0031】
次に、白輪郭の充填率が決定される。白輪郭の充填率は、白輪郭が非テキストイメージによって囲まれた領域を充填する度合いである。充填率が高ければ、非テキストイメージが表または表状に配置されたテキストデータの連続である可能性がある。しかし、充填率が低ければ、非テキストイメージが表または表状に配置されたテキストデータの連続ではない可能性が大きい。
【0032】
充填率が高ければ、非テキストイメージが表または表状に配置されたテキストデータの連続である可能性がある。この決定の確信を高めるために、白輪郭が水平方向及び垂直方向の双方に延びる格子状構造を形成しているか否かを判別するために白輪郭を調べる。具体的には、非格子状に配置された白輪郭は、それらの境界が少なくとも2つの輪郭を横切って水平方向及び垂直方向に延びているのでなければ、再結合される。表を表す白輪郭は再結合されにくい一方、表ではない、たとえば、ハーフトーンイメージまたは線画用の白輪郭は再結合されやすい。従って、再結合率を調べる。
【0033】
再結合率が高ければ、すなわち、再結合後に残っている白輪郭の数が所定の数よりも多ければ、この非テキストユニットはハーフトーンイメージまたは線画であるとされる。しかし、再結合率が所定の数よりも少なければ、非テキストイメージは「表」であるとされる。
【0034】
[テキストブロック識別、細分化、アドレス指定]
フレーム領域が表であると指定されると、ステップS605において、表であると指定された領域内のテキストブロックの位置が求められる。すなわち、接続要素を検出して8方向に分類するように新たに指定された表領域の内部が検査される。表内にテキストブロックの位置を求める処理は、米国特許出願第07/873、012号に詳細に記載されている。
【0035】
ブロック選択処理の後、識別された表は表内に複数のテキストブロックを含むことがある。しかし、テキストブロックは無作為に処理され、文書頁内の位置に基づいて位置情報を割り当てられる。その結果、テキストブロックは表内の行/列順に位置せず、階層木構造に記憶されるときに表ノードから無作為に分岐する。このことは、表内の各テキストブロックにとっては、編集スタイルのため、または印刷や文書頁のスキャンが不十分であるため、他のテキストブロックが同一の個別の白領域内に位置されることがあることを意味する。従って、テキストブロックは、水平方向、垂直方向、または双方向に2つ以上のテキストの表セルを含むことがある。すなわち、ブロック選択の後では、表内の各テキストブロックは1つの表セルのみに対応すべきである。しかし、上述のように、1つのテキストブロックは、水平方向、垂直方向、または双方向に2つ以上の表セル項目を含むことがある。また、1つの表セル項目は2つ以上のテキストブロックに分割されることがある。
【0036】
後処理のために表から特定のテキストデータを適切に抽出するために、本発明は、表セル構造を分析し、テキストブロックに行及び列のアドレス座標を割り当て、次いで、1つ以上の表セルを有するテキストブロックを更に小さなテキストブロックに細分できるか否かを判別するためにテキストブロックを分析する。
【0037】
こうして、ステップS606において、表構造の分析が実行される。しかし、表構造を分析する前に、表の定義を説明する。基本的な表構造は図10に示すように定義される。図10に示すように、表600は5本の格子線で規定され、5本の格子線は4つの行及び3つの列を形成する。各テキストブロックはブロック選択処理により位置情報を割り当てられる。位置情報は、表に相対する位置ではなく、分析された文書頁内のテキストブロックの位置に関する。更に、図10に示すように表600は列2及び列3において複数のテキスト線を有する。従って、本発明によらなければ、複数線を有する列の1つの線のみ、たとえば、表セル601を抽出して後処理するためには、表セル全体またはテキストブロック全体を抽出しなければならない。しかし、本発明の方法を適用すると、表セル601のみならず列2及び列3の残りのテキスト線も、個々の列またはテキストブロックに細分され、それによって1つの列内の個々の線の抽出が可能となる。
【0038】
このようにして、ステップS606において、識別された表内の全てのテキストブロックは水平方向位置情報に基づいて区分けされる。たとえば、第1行にある全てのテキストブロックは同一グループに分けられる。このタスクを実行するために、最も左側の座標を有するブロックをグループ1に入るものとして選択する。次いで、全ての他のテキストブロックを、最大水平方向重複法を使用して、現在形成されているグループと比較する。すなわち、現在形成されたグループと選択されたテキストブロックとの最大水平方向重複率を所定の閾値"t_h"と比較する。最大水平方向重複率は次の式で求められる。
【0039】
最大水平方向重複=最大(水平方向重複領域/現在形成されたグループの幅、水平方向重複領域/選択されたテキストブロックの幅)
最大水平方向重複が"t_h"よりも大きいときは、選択されたテキストブロックは現在形成されたグループ内に置かれ、グループの水平方向範囲は更新される。重複が起こらないとき、すなわち、最大重複が"t_h"よりも小さいときは、選択されたテキストブロックは別のグループ内に置かれる。表内の全てのテキストブロックは同一の方法で分析される。
【0040】
水平方向位置に従って全てのテキストブロックが同様のグループ内に区分けされると、ステップS606では、テキストブロックの1つのグループが、表での当該グループの順序を決定するために区分けされる。これは、水平方向位置情報を分析することにより実行される(ステップS608)。
【0041】
ステップS608で実行された区分けに基づいて、ステップS609では、各テキストブロックグループ内の距たりまたはギャップに基づいて、表用の行が算出される。具体的には、各グループ内のテキストブロックは、位置情報に基づいて1つの行領域に属すると仮定され、表の1つの行内にあると決定される。しかし、たとえば、図11及び図12に示すように、同一グループ内のテキストブロックが2つ以上の行領域に属しており、1つ以上の行に亘るため容易に区切ることができない状況もある。
【0042】
そのような場合には、本発明のブロック選択処理は、テキストブロックの開始位置と終了位置を判別するために行領域が重なり合うテキストブロックの位置を求める。このタスクを実行するために、1つまたは複数の行が2つ以上の行領域に亘るテキストブロックとどこで交差できるかを判別する。この判別に基づいて、行範囲を決定することができる。行領域が重なり合う各テキストブロックの位置が求められ分析されると、該各テキストブロックには、その各ブロックとその両側に隣接するグループとの間の相対位置に基づいて行アドレス範囲が割り当てられる。同様に、複数行に亘らない残りのテキストブロックに行アドレスが割り当てられる。たとえば、図11に示すように、テキストブロック701は同一グループ内の隣り合うテキストブロックの2つの行の間のギャップにまたがり、従って、行アドレス範囲がテキストブロック701に割り当てられる。すなわち、テキストブロック701は、(n,n+1)という行アドレス範囲が割り当てられ、但し、n−1は前のグループの最後の行の番号である。
【0043】
水平方向位置に基づいたテキストブロックの区分けの仕方(S606)及びテキストブロックのグループの区分けの仕方(S608)、及び行アドレスの計算及び割り当ての仕方(S609)については、図8に関連して下記により詳細に説明する。
【0044】
図8は、ステップS606〜S609で実行される処理を詳細に説明するフローチャートである。
【0045】
図8を参照すると、表構造に対するブロック選択を実行し表内にテキストブロックが規定された後、ステップS630において前記各テキストブロックの座標を使用してその水平方向位置に従って全てのテキストブロックを区分けする。具体的には、どのブロックが表内で最もその左側にあるかを決定するために、表内の各テキストブロックの左側座標を調べる。最も左側の位置を有するテキストブロックを区分けリストの開始点に置く。その後、前記各テキストブロックを左側座標に基づいて分析して、区分けリスト内の位置を決定する。たとえば、(1、1)という座標を有するテキストブロックはリストの開始点に置かれ、一方、(3、5)という座標を有するテキストブロックは区分けリストの中間または終点に置かれる。従って、各テキストブロックはその水平方向位置に基づいて区分けされる。
【0046】
ステップS631において、区分けリストの第1のテキストブロックが検索され、第1グループ(行)内に置かれる。ステップS632で第1のテキストブロックの座標を使用して、第1グループの水平方向範囲が第1ブロックとして初期設定され、残りのテキストブロック間の比較処理の開始に使用される。ステップS634において表内に他のテキストブロックがあるか否かが判別され、もしあるならば、ステップS635において次のテキストブロックの座標が検索され、該次のテキストブロックが直前のテキストブロックと同一のグループであるか否かを判別するために、現在形成されているグループの水平方向範囲と比較される。この比較を実行するために、現在のグループと次のテキストブロックとの最大水平方向重複率を調べる。
【0047】
最大水平方向重複が所定の閾値"t_h"よりも大きい場合は、ステップS636において分析された前記次のテキストブロックの右側座標に基づいて右側水平方向範囲すなわち右側座標がリセットされる。すなわち、前記分析された次のテキストブロックの右側座標を使用して、当該グループの新たな水平方向範囲を決定することができる。他方、ステップS636において最大水平方向重複が所定の閾値"t"よりも大きくない場合は、フローはステップS632に戻り、前記次のテキストブロックは新たなグループを開始し、新たなグループ及び新たなグループ水平方向範囲がステップS632において初期設定される。
【0048】
ステップS634に戻って、表内にテキストブロックが残っていない場合は、フローはステップS640に進み、テキストブロックのグループが水平方向に配列される。ステップS641において、重なり合うグループが存在すれば、それらは結合される。具体的には、隣り合うグループが予め規定された閾値"x-h"だけ水平方向に重複する場合は、これらのグループは1つのグループに結合される。ステップS642では、テキストブロック割り当てに基づいてグループ間に、及び必要に応じていくつかのグループ内に行区切り線が引かれる。具体的には、ステップS642において、ギャップの幅及び長さを調べる。すなわち、ギャップの幅が予め規定された基準"w"に合致し且つギャップの長さが予め規定された基準"l"に合致する場合、行区切り線をグループ内に挿入することができると判別される。他方、ギャップが幅及び長さの基準の一方または双方に合致しなければ、グループ内部に行区切り線は挿入されない。ステップS645において、行区切り線に基づいて行アドレスがテキストブロックに割り当てられる。この点に関して、行区切り線はデフォルトでグループ間に置かれ、また、行計算(ステップS609)の結果2つ以上の行に亘ると判別されたグループの内部に行区切り線を置くこともできる。
【0049】
図6に戻って、ステップS610において、ステップS609で全ての可能な行が計算されると、全てのテキストブロックは垂直方向位置情報に従って列グループに区分けされる。列分析は、ステップS606〜S609で実行された行分析と同様に実行される。具体的にはステップS610において、全てのテキストブロックは垂直方向位置情報に従ってグループに区分けされる。再びテキストブロックは各テキストブロックがその右側あるいは左側に近接した同一グループ内の別のテキストブロックと垂直方向に重なり合う複数の異なるグループに置かれる。前述したように、テキストブロックと現在形成されたグループとの最大垂直方向重複率を所定の閾値"t_v"と比較する。
【0050】
最大垂直方向重複=最大(垂直方向重複領域/現在形成されたグループの幅、垂直方向重複領域/選択されたテキストブロックの幅)
ステップS611において、テキストブロックのグループは各グループの垂直方向範囲に基づいて区分けされる。列区切り線は各グループ毎に計算され、再び各グループ内のテキストブロックが1つの列領域に属すると仮定され、その中の各テキストブロックはステップS612で列アドレスが割り当てられる。再び1つの列区切り線と重なり合う複数のテキストブロックに列アドレス範囲が割り当てられる。
【0051】
垂直方向位置によるテキストブロック区分けの仕方(ステップS610)及びテキストブロックのグループの区分けの仕方(ステップS611)、及び新たなアドレスの計算及び割り当ての仕方(ステップS612)については、図9に関連して下記に詳細に説明する。
【0052】
図9はステップS610〜S612に規定された処理を詳細に説明するフローチャートである。
【0053】
図9を参照すると、行分析の後テキストブロック座標は列分析用に使用される。具体的には、ステップS650において、どのブロックが表の頂部に最も近いかを判別するために頂部座標を調べることによって、列分析が開始される。表の頂部に位置するテキストブロックは、区分けリストの開始点に置かれる。その後、各テキストブロックをその頂部座標に基づいて分析し、その区分けリスト内の位置を求める。たとえば、(1、1)という座標を有するテキストブロックはリストの開始点に置かれ、一方、(3、5)という座標を有するテキストブロックは区分けリストの中間または終点に置かれる。従って、各テキストブロックはその垂直方向位置に基づいて区分けされる。
【0054】
ステップS651において、区分けされたリスト中の第1のテキストブロックが検索され、第1グループ(列)内にあると判別される。ステップS652で、第1テキストブロックの座標を使用して第1グループの垂直方向範囲が第1ブロックとして初期設定され、表内の残りのテキストブロックの間の比較処理の開始に使用される。ステップS654において、表内に他のテキストブロックがあるか否かが判別され、もしあるならば、ステップS655で次のテキストブロックの座標が検索され、該次のテキストブロックが最後のテキストブロックと同一グループ内にあるか否かを判別するために、現在形成されたグループの垂直方向範囲と比較される。この比較を実行するために、現在形成されたグループと該次のテキストブロックとの間の最大垂直方向重複を調べる。
【0055】
最大重複が所定の閾値"t-v" よりも大きい場合は、ステップS656において分析される前記次のテキストブロックに基づいて垂直方向範囲すなわち底部座標をリセットするようにしてもよい。すなわち、前記分析された次のテキストブロックの底部座標を使用して、グループの新たな垂直方向範囲を決定することができる。他方、ステップS656において最大重複が所定の閾値"t-v" よりも大きくない場合は、フローはステップS652に戻り、前記次のテキストブロックは新たなグループを開始し、新たなグループの垂直方向範囲はステップS652において新たなテキストブロックとして初期設定される。
【0056】
ステップS654に戻って、表内にテキストブロックが残っていない場合は、フローはステップS660に進み、テキストブロックのグループが垂直方向に配列される。ステップS661において、重なり合ったグループが存在すれば、それらは結合される。具体的には、隣り合うグループが予め規定された閾値"x-v"だけ垂直方向に重なり合う場合は、これらのグループは1つのグループに結合される。ステップS662では、割り当てられたテキストブロックに基づいて、グループ間に、及び、必要に応じて、いくつかのグループ内に列区切り線が引かれる。ステップS665において、各グループの列計算が実行されると、グループ間の列区切り線の数に従って列アドレス割り当てが行われる。
【0057】
行及び列分析により、各テキストブロックには行及び列のアドレス座標が割り当てられたことになる。たとえば、図13の表800において、ブロック801には列/行アドレス(1、1)が割り当てられ、ブロック802には列アドレス、行アドレス、アドレス範囲(1、2−4)が割り当てられ、ブロック803には(2、1)が割り当てられ、ブロック804には列/行アドレス(2、2)が割り当てられ、ブロック805には列/行アドレス(2、3)が割り当てられ、ブロック806には列/行アドレス(2、4)が割り当てられる。更に、広いテキストブロック808には列及び行双方のアドレス範囲(4−7、2−4)が割り当てられる。
【0058】
テキストブロックの行及びアドレス座標が割り当てられると、ステップS615において、本発明のブロック選択処理を実行して、複数ギャップにまたがり且つ行アドレス範囲または列アドレス範囲のいずれかを有するテキストブロックの位置を求める。これらのテキストブロックは、行または列の区切り線をテキストブロックの範囲アドレス内に挿入することができるか否かを判別するために行及び列の区切り処理を使用して、細分することができるか否かを決定するために再び分析される。具体的には、ステップS617において、図15に示すように行区切り線の回りに大きな水平方向ギャップがあるか否か、または、図16に示すように行区切り線の回りに不完全な垂直方向格子線があるか否かを判別する。同一処理を列区切り線についても実行する。
【0059】
このように、ステップS617において、アドレス範囲を有するテキストブロックに区切り線を挿入することができるか否かを決定する。列または行の区切り線を適用することができる場合は、ステップS618においてテキストブロックは更に小さいテキストブロックに分割される。すなわち、テキストブロック自体が少なくとも2つの行または列に分割される。行区切り線または列区切り線が適用された後、各新たなテキストブロックにアドレスが割り当てられる。図11に示す例において、グループ700のテキストブロック701はグループ内の狭いギャップにまたがる。行または列区切り線法を使用して、行区切り線710をその中に置くことができるか否かを判別するために、ギャップの幅と長さを分析する。ギャップの幅が予め規定された基準に合致しないため行区切り線710をその中に置くことができない場合は、テキストブロックは行区切り線によって細分することができない。図11において、行区切り線711及び712は、グループ700を別のグループから区切る行を示す。これらの区切り線を行の境界として使用して、グループ700の各テキストブロックへの行アドレス割り当てが行われる。
【0060】
図12に示す別の例では、テキストブロックのグループ716の2つの垂直方向線720の間にギャップが存在する。この状況では、ギャップを分析した後、このギャップの幅と長さが予め規定された基準と等しいかあるいは大きいと判別される。従って、(Y−Y+1)(但し、Y−1は前のグループの最後の行の番号である)という行アドレス範囲を有する各テキストブロックは、各ブロック内に行区切り線の回りに広いギャップが存在するので、2つの更に小さなテキストブロックに区切ることができる。すなわち、破線で示される行区切り線722は各テキストブロックを更に小さなテキストブロックに区切るために挿入される。その後、この細分に基づいて各テキストブロックに新たな行アドレスが割り当てられる。
【0061】
図13において、テキストブロック808は行及び範囲アドレスの双方を有し、2つ以上の表セルを含む。従って、このタイプのテキストブロックは、行及び列処理を使用して更に細分するための良い候補である。このように、行及び列処理を適用した後、図14に示すように、テキストブロック808は12の新たなテキストブロックに細分される。各新たなテキストブロックは、新たに分割された表800の行及び列に基づいてアドレスが割り当てられる。
【0062】
ステップS618において、行アドレス範囲を有するテキストブロックがn個の行区切り線を有する場合、このテキストブロックは実際には多くても(n+1)個の項目を含むと判別される。たとえば、図15及び図16に示すように、テキストブロックが2つ以上の行区切り線を有する場合、該行区切り線は、テキストブロックを異なる複数の行に切り離すために使用され、更に小さなテキストブロックが形成される。図15に示す例では、広いギャップが存在する。この例では、このギャップは幅基準と合致し、その結果、3つの行を形成するために行区切り線901及び902が挿入される。従って、テキストブロック903は、図15に例示された行区切り線に基づいて3つのテキストブロックに分割される。各新たなテキストブロックの行アドレスは、行n、行n+1及び行n+2とアドレス指定される。
【0063】
同様に、図16に示す例では、テキストブロック913は、行区切り線912の近傍に存在する不完全な線911を有する。この場合、テキストブロック913は、行区切り線912を使用して2つのテキストブロックに分割される。各新たなテキストブロックは、行n及び行n+1という行アドレスが割り当てられる。
【0064】
範囲を有する全てのテキストブロックが更に小さなテキストブロックに分割されると、ステップS619において、同一の行及び列アドレスを有するテキストブロックは1つのテキストブロックに結合される。これは、前述したように、グループが結合されたとき、またはギャップが予め規定された基準に合致しないときに起こる。
【0065】
ステップS620において、表の行及び列アドレス座標は、階層木構造を更新するためにメモリ内に記憶される。表800の階層木構造を更新する前では、図17に示すように階層木構造1100は、頁ノード、該頁ノードから分岐する表ノード、及び該表ノードから分岐する15テキストブロックノードを有する。表800が本発明の処理を施されると、テキストの各表セルは行及び列に細分され、記憶されたアドレス座標を使用して、文書頁の階層木構造を図18に示すように更新することができる。
【0066】
図18は、本発明のブロック選択処理を図13に示した表800に適用した後の階層木構造を示す。階層木構造1100は、図14に示した表800の階層を示す。頁内に位置する他のタイプのイメージデータも同様に示されるが、これらのノードは簡潔及び明瞭のために図示していない。このように、階層木構造1100は表ノード1103を示す。表ノード1103からテキストブロック1〜26が分岐するが、テキストブロック1、テキストブロック5、テキストブロック10、テキストブロック15、テキストブロック20、テキストブロック25及びテキストブロック26のみを示してある。
【0067】
上述のように、テキストブロック15はテキストブロックの個別セルを複数個有していたが、それらは、行/列区切り処理を施されたときに更に小さなテキストブロックに細分されたものである。テキストブロックを処理した結果として、個別アドレス座標を割り当てられる更に小さなテキストブロックが生じる。この結果は、階層木構造1100の表ノード1103から分岐する26個のテキストブロックとして、図18に示される。
【0068】
以上の説明から容易に理解できるように、本発明を使用して表を処理した結果として、文書頁の表イメージデータを後処理するために使用される表の論理的に規定された階層木構造が得られる。たとえば、階層木構造1100に記憶されたテキストブロックの行及び列情報を使用して、特定の行及び列アドレス座標に基づいてテキストデータを適切に抽出することができる。特定のアドレス座標が1つの行及び列アドレスを有するテキストブロックに関する場合は、該テキストブロックの内部イメージが抽出される。しかし、テキストブロックの特定のアドレスが行アドレス範囲または列アドレス範囲を有する場合は、該テキストブロック内のテキストのセルが全て抽出される。図13に示すように、テキストブロック804または805と同様であるテキストブロック803が要求された場合は、該テキストブロックの項目全体が抽出される。しかし、セル808が更に分割できない場合は、ブロック808内のテキストの全てのセルが抽出される。他方、図14の場合、ステップS618を実行した結果、テキストブロック808は更に小さな12のテキストブロックに細分され、各々が順に、(4、2)−(4、4)、(5、2)−(5、4)、(6、2)−(6、4)、及び(7、2)−(7、4)とアドレス指定される。この点に関しては、テキストブロック802はテキストデータ間にギャップを含んでいないため、行または列区切り線をブロック内のテキストデータ間に挿入することはできないので、ブロック802は変化しない。
【0069】
以上、本発明を特定の態様に関して説明したが、本発明は上記記載に限定されることはなく、表イメージデータのみならず全てのタイプのイメージデータに適用されることができるものと理解されるべきものである。更に、発明の精神及び範囲から逸脱することなく、当業者によって種々の変更や修正が可能である。
【0070】
【発明の効果】
以上に説明したように、本発明によれば、表イメージデータ及びその中のテキストデータの後処理が不十分にならないように、表内のイメージデータを適切に抽出することができる。
【図面の簡単な説明】
【図1】文書頁の代表的な図である。
【図2】図1で示した文書頁に対するブロック選択処理の結果得られた階層木構造の代表的な図である。
【図3】図2で示した階層木構造に基づいて生成される文書頁が、どのようにディスプレイ画面に表示されるかを示す図である。
【図4】本発明の装置の外観を示す斜視図である。
【図5】図1の装置のブロック図である。
【図6】本発明のブロック選択技術を使用して表分析及び操作を実行するための方法を示すフローチャートである。
【図7】本発明のブロック選択技術を使用して表分析及び操作を実行するための方法を示すフローチャートである。
【図8】ステップS606〜S609で簡単に説明した処理の詳細を示すフローチャートである。
【図9】ステップS610〜S612で簡単に説明した処理の詳細を示すフローチャートである。
【図10】基本的な表構造の例を表す図である。
【図11】表内に2つのフォーム行に分割し得るテキストブロックのグループを示す概念図である。
【図12】表内に2つのフォーム行に分割し得るテキストブロックのグループを示す概念図である。
【図13】本発明の行及び列分析処理を施す前の表の概念図である。
【図14】行及び列分析処理を施した後の同表の概念図である。
【図15】行アドレス範囲を有し、別個の行に細分し得るテキストブロックのグループを示す概念図である。
【図16】行アドレス範囲を有し、別個の行に細分し得るテキストブロックのグループを示す概念図である。
【図17】図13に示した表に対するブロック選択処理の結果得られた階層木構造の概念図である。
【図18】図14の表に行及び列分析を行って更新された後の同階層木構造の概念図である。
【符号の説明】
410 コンピュータ機器
411 固定ディスクドライブ
412 カラーディスプレイモニタ
413 キーボード
414 ポインティング・デバイス
416 スキャナ
520 中央演算処理装置(CPU)
530 主メモリ
600,800 表
601 表セル
700 グループ
1100 階層木構造
1103 表ノード

Claims (4)

  1. 入力された文書イメージ内に含まれる表イメージを識別する表イメージ識別工程と、
    前記表イメージ内に存在するテキストの領域を示す複数のテキストブロックを識別するテキストブロック識別工程と、
    前記識別された各テキストブロックの水平方向位置情報に基づいて、前記複数のテキストブロックを水平方向でグループ分けする水平グループ分け工程と、
    前記識別された各テキストブロックの垂直方向位置情報に基づいて、前記複数のテキストブロックを垂直方向でグループ分けする垂直グループ分け工程と、
    前記水平グループ分け工程により水平方向でグループ分けされた結果と、前記垂直グループ分け工程により垂直方向でグループ分けされた結果とに基づいて、前記複数のテキストブロックそれぞれに対して、表における行アドレスと列アドレスとを割り当てる第1のアドレス割当工程と、
    前記行アドレスと列アドレスとの少なくともいずれかにアドレス範囲が割り当てられたテキストブロックについて、細分することができるか否か判定する細分判定工程と、
    前記細分判定工程で細分可能と判定されたテキストブロックを細分する細分工程と、
    前記細分工程で細分されたテキストブロックに対して、新たな行アドレスと列アドレスとを割り当てる第2のアドレス割当工程と、
    前記細分工程で前記テキストブロックが細分されなかった場合、前記テキストブロックそれぞれに対して前記第1のアドレス割当工程で割り当てられた行アドレスと列アドレスとを記憶し、前記細分工程で前記テキストブロックが細分された場合、当該細分されたテキストブロックに対して前記第2のアドレス割当工程で割り当てられた新たな行アドレスと列アドレスとを記憶する記憶工程と
    を備えることを特徴とするイメージ処理方法。
  2. 前記記憶工程では、前記文書イメージ内の区分されたブロックをノードとして有する階層木構造において、前記各テキストブロックに対応するノードに当該割り当てられた行アドレスと列アドレスとを記憶することを特徴とする請求項1に記載のイメージ処理方法。
  3. 入力された文書イメージ内に含まれる表イメージを識別する表イメージ識別手段と、
    前記表イメージ内に存在するテキストの領域を示す複数のテキストブロックを識別するテキストブロック識別手段と、
    前記識別された各テキストブロックの水平方向位置情報に基づいて、前記複数のテキストブロックを水平方向でグループ分けする水平グループ分け手段と、
    前記識別された各テキストブロックの垂直方向位置情報に基づいて、前記複数のテキストブロックを垂直方向でグループ分けする垂直グループ分け手段と、
    前記水平グループ分け手段により水平方向でグループ分けされた結果と、前記垂直グループ分け手段により垂直方向でグループ分けされた結果とに基づいて、前記複数のテキストブロックそれぞれに対して、表における行アドレスと列アドレスとを割り当てる第1のアドレス割当手段と、
    前記行アドレスと列アドレスとの少なくともいずれかにアドレス範囲が割り当てられたテキストブロックについて、細分することができるか否か判定する細分判定手段と、
    前記細分判定手段で細分可能と判定されたテキストブロックを細分する細分手段と、
    前記細分手段で細分されたテキストブロックに対して、新たな行アドレスと列アドレスとを割り当てる第2のアドレス割当手段と、
    前記細分手段で前記テキストブロックが細分されなかった場合、前記テキストブロックそれぞれに対して前記第1のアドレス割当手段で割り当てられた行アドレスと列アドレスとを記憶し、前記細分手段で前記テキストブロックが細分された場合、当該細分されたテキストブロックに対して前記第2のアドレス割当手段で割り当てられた新たな行アドレスと列アドレスとを記憶する記憶手段と
    を備えることを特徴とするイメージ処理装置。
  4. 前記記憶手段は、前記文書イメージ内の区分されたブロックをノードとして有する階層木構造において、前記各テキストブロックに対応するノードに当該割り当てられた行アドレスと列アドレスとを記憶することを特徴とする請求項に記載のイメージ処理装置。
JP22183496A 1995-08-11 1996-08-06 イメージ処理方法及び装置 Expired - Fee Related JP3847856B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/514,252 1995-08-11
US08/514,252 US5848186A (en) 1995-08-11 1995-08-11 Feature extraction system for identifying text within a table image

Publications (2)

Publication Number Publication Date
JPH09171556A JPH09171556A (ja) 1997-06-30
JP3847856B2 true JP3847856B2 (ja) 2006-11-22

Family

ID=24046414

Family Applications (1)

Application Number Title Priority Date Filing Date
JP22183496A Expired - Fee Related JP3847856B2 (ja) 1995-08-11 1996-08-06 イメージ処理方法及び装置

Country Status (4)

Country Link
US (1) US5848186A (ja)
EP (1) EP0758775B1 (ja)
JP (1) JP3847856B2 (ja)
DE (1) DE69619606T2 (ja)

Families Citing this family (79)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6009196A (en) * 1995-11-28 1999-12-28 Xerox Corporation Method for classifying non-running text in an image
US6201894B1 (en) * 1996-01-23 2001-03-13 Canon Kabushiki Kaisha Method and apparatus for extracting ruled lines or region surrounding ruled lines
US6157738A (en) * 1996-06-17 2000-12-05 Canon Kabushiki Kaisha System for extracting attached text
US5893127A (en) * 1996-11-18 1999-04-06 Canon Information Systems, Inc. Generator for document with HTML tagged table having data elements which preserve layout relationships of information in bitmap image of original document
US6327387B1 (en) 1996-12-27 2001-12-04 Fujitsu Limited Apparatus and method for extracting management information from image
US5973692A (en) * 1997-03-10 1999-10-26 Knowlton; Kenneth Charles System for the capture and indexing of graphical representations of files, information sources and the like
US6137906A (en) * 1997-06-27 2000-10-24 Kurzweil Educational Systems, Inc. Closest word algorithm
US5950196A (en) * 1997-07-25 1999-09-07 Sovereign Hill Software, Inc. Systems and methods for retrieving tabular data from textual sources
KR100295225B1 (ko) * 1997-07-31 2001-07-12 윤종용 컴퓨터에서 영상정보 검색장치 및 방법
US5999664A (en) * 1997-11-14 1999-12-07 Xerox Corporation System for searching a corpus of document images by user specified document layout components
US6112216A (en) * 1997-12-19 2000-08-29 Microsoft Corporation Method and system for editing a table in a document
US6173073B1 (en) * 1998-01-05 2001-01-09 Canon Kabushiki Kaisha System for analyzing table images
US6496198B1 (en) 1999-05-04 2002-12-17 Canon Kabushiki Kaisha Color editing system
FR2801997A1 (fr) * 1999-12-02 2001-06-08 Itesoft Technologie adaptative d'analyse automatique de document
JP4401560B2 (ja) * 1999-12-10 2010-01-20 キヤノン株式会社 画像処理装置、画像処理方法、及び記憶媒体
US6718059B1 (en) 1999-12-10 2004-04-06 Canon Kabushiki Kaisha Block selection-based image processing
KR100319756B1 (ko) * 2000-01-21 2002-01-09 오길록 논문 문서영상 구조 분석 방법
US7149347B1 (en) 2000-03-02 2006-12-12 Science Applications International Corporation Machine learning of document templates for data extraction
US6995853B1 (en) * 2000-03-31 2006-02-07 Pitney Bowes Inc. Method and system for modifying print stream data to allow printing over a single I/O port
US6714941B1 (en) 2000-07-19 2004-03-30 University Of Southern California Learning data prototypes for information extraction
US6704449B1 (en) 2000-10-19 2004-03-09 The United States Of America As Represented By The National Security Agency Method of extracting text from graphical images
US6826576B2 (en) * 2001-05-07 2004-11-30 Microsoft Corporation Very-large-scale automatic categorizer for web content
FR2830106B1 (fr) * 2001-07-13 2004-04-23 Alban Giroux Dispositif et procede de reconnaissance de structure de document
US7561734B1 (en) 2002-03-02 2009-07-14 Science Applications International Corporation Machine learning of document templates for data extraction
US20030185432A1 (en) * 2002-03-29 2003-10-02 Hong Dezhong Method and system for image registration based on hierarchical object modeling
US20030225763A1 (en) * 2002-04-15 2003-12-04 Microsoft Corporation Self-improving system and method for classifying pages on the world wide web
US7142728B2 (en) * 2002-05-17 2006-11-28 Science Applications International Corporation Method and system for extracting information from a document
DE60333238D1 (de) * 2002-06-28 2010-08-12 Nippon Telegraph & Telephone Extrahierung von Information aus strukturierten Dokumenten
US7254270B2 (en) * 2002-07-09 2007-08-07 Hewlett-Packard Development Company, L.P. System and method for bounding and classifying regions within a graphical image
JP2004088585A (ja) * 2002-08-28 2004-03-18 Fuji Xerox Co Ltd 画像処理システムおよびその方法
US7444403B1 (en) 2003-11-25 2008-10-28 Microsoft Corporation Detecting sexually predatory content in an electronic communication
CN1310182C (zh) * 2003-11-28 2007-04-11 佳能株式会社 用于增强文档图像和字符识别的方法和装置
US20050177599A1 (en) * 2004-02-09 2005-08-11 Microsoft Corporation System and method for complying with anti-spam rules, laws, and regulations
JP2006025129A (ja) * 2004-07-07 2006-01-26 Canon Inc 画像処理システム及び画像処理方法
JP2006023945A (ja) * 2004-07-07 2006-01-26 Canon Inc 画像処理システム及び画像処理方法
JP2006023944A (ja) * 2004-07-07 2006-01-26 Canon Inc 画像処理システム及び画像処理方法
JP4208780B2 (ja) * 2004-07-07 2009-01-14 キヤノン株式会社 画像処理システム及び画像処理装置の制御方法並びにプログラム
EP1669896A3 (en) * 2004-12-03 2007-03-28 Panscient Pty Ltd. A machine learning system for extracting structured records from web pages and other text sources
IL167283A (en) * 2005-03-07 2007-06-03 Israel Marmorstein Methods for printing booklets and booklets printed thereby
TWI271650B (en) * 2005-05-13 2007-01-21 Yu-Le Lin Method for sorting specific values in combination with image acquisition and display
US7584424B2 (en) * 2005-08-19 2009-09-01 Vista Print Technologies Limited Automated product layout
US7676744B2 (en) * 2005-08-19 2010-03-09 Vistaprint Technologies Limited Automated markup language layout
US7801358B2 (en) * 2006-11-03 2010-09-21 Google Inc. Methods and systems for analyzing data in media material having layout
JP2008242543A (ja) * 2007-03-26 2008-10-09 Canon Inc 画像検索装置、画像検索装置の画像検索方法、及び画像検索装置の制御プログラム
US8290272B2 (en) * 2007-09-14 2012-10-16 Abbyy Software Ltd. Creating a document template for capturing data from a document image and capturing data from a document image
JP4926004B2 (ja) * 2007-11-12 2012-05-09 株式会社リコー 文書処理装置、文書処理方法及び文書処理プログラム
GB2457267B (en) * 2008-02-07 2010-04-07 Yves Dassas A method and system of indexing numerical data
JP4875024B2 (ja) * 2008-05-09 2012-02-15 株式会社東芝 画像情報伝送装置
US8547589B2 (en) * 2008-09-08 2013-10-01 Abbyy Software Ltd. Data capture from multi-page documents
US9390321B2 (en) 2008-09-08 2016-07-12 Abbyy Development Llc Flexible structure descriptions for multi-page documents
US8473467B2 (en) 2009-01-02 2013-06-25 Apple Inc. Content profiling to dynamically configure content processing
JP5743443B2 (ja) * 2010-07-08 2015-07-01 キヤノン株式会社 画像処理装置、画像処理方法、コンピュータプログラム
US8543911B2 (en) 2011-01-18 2013-09-24 Apple Inc. Ordering document content based on reading flow
US8380753B2 (en) 2011-01-18 2013-02-19 Apple Inc. Reconstruction of lists in a document
US8442998B2 (en) 2011-01-18 2013-05-14 Apple Inc. Storage of a document using multiple representations
WO2013110289A1 (en) 2012-01-23 2013-08-01 Microsoft Corporation Borderless table detection engine
EP2807604A1 (en) 2012-01-23 2014-12-03 Microsoft Corporation Vector graphics classification engine
US8989485B2 (en) 2012-04-27 2015-03-24 Abbyy Development Llc Detecting a junction in a text line of CJK characters
US8971630B2 (en) 2012-04-27 2015-03-03 Abbyy Development Llc Fast CJK character recognition
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
CN103366369B (zh) * 2013-07-01 2016-02-10 中国矿业大学 一种评价图像中块效应的方法及装置
US9292186B2 (en) 2014-01-31 2016-03-22 3M Innovative Properties Company Note capture and recognition with manual assist
US10706218B2 (en) * 2016-05-16 2020-07-07 Linguamatics Ltd. Extracting information from tables embedded within documents
US11144777B2 (en) * 2016-06-30 2021-10-12 Rakuten Group, Inc. Image processing apparatus, image processing method, and image processing program for clipping images included in a large image
CN106446881B (zh) * 2016-07-29 2019-05-21 北京交通大学 从医疗化验单图像中提取化验结果信息的方法
CN107622041B (zh) * 2017-09-18 2021-02-12 鼎富智能科技有限公司 隐性表格提取方法及装置
CN107798355B (zh) * 2017-11-17 2021-12-07 山西同方知网数字出版技术有限公司 一种基于文档图像版式自动分析与判断的方法
US10936864B2 (en) * 2018-06-11 2021-03-02 Adobe Inc. Grid layout determination from a document image
US10846550B2 (en) * 2018-06-28 2020-11-24 Google Llc Object classification for image recognition processing
US10614345B1 (en) 2019-04-12 2020-04-07 Ernst & Young U.S. Llp Machine learning based extraction of partition objects from electronic documents
US11113518B2 (en) 2019-06-28 2021-09-07 Eygs Llp Apparatus and methods for extracting data from lineless tables using Delaunay triangulation and excess edge removal
US11915465B2 (en) 2019-08-21 2024-02-27 Eygs Llp Apparatus and methods for converting lineless tables into lined tables using generative adversarial networks
US10810709B1 (en) 2019-11-21 2020-10-20 Eygs Llp Systems and methods for improving the quality of text documents using artificial intelligence
US11625934B2 (en) 2020-02-04 2023-04-11 Eygs Llp Machine learning based end-to-end extraction of tables from electronic documents
CN111626250B (zh) * 2020-06-02 2023-08-11 泰康保险集团股份有限公司 文本图像的分行方法、装置、计算机设备及可读存储介质
US11599711B2 (en) * 2020-12-03 2023-03-07 International Business Machines Corporation Automatic delineation and extraction of tabular data in portable document format using graph neural networks
CN113221743B (zh) * 2021-05-12 2024-01-12 北京百度网讯科技有限公司 表格解析方法、装置、电子设备和存储介质
CN113221778B (zh) * 2021-05-19 2022-05-10 北京航空航天大学杭州创新研究院 手写表格的检测与识别方法及装置
CN113449620A (zh) * 2021-06-17 2021-09-28 深圳思谋信息科技有限公司 基于语义分割的表格检测方法、装置、设备和介质

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS6324448A (ja) * 1986-07-17 1988-02-01 Toshiba Corp 複合文書処理装置
JPS63268081A (ja) * 1987-04-17 1988-11-04 インタ−ナショナル・ビジネス・マシ−ンズ・コ−ポレ−ション 文書の文字を認識する方法及び装置
JP2812982B2 (ja) * 1989-04-05 1998-10-22 株式会社リコー 表認識方法
JP2940936B2 (ja) * 1989-06-06 1999-08-25 株式会社リコー 表領域識別方法
DE69016123T2 (de) * 1989-08-02 1995-05-24 Canon Kk Bildverarbeitungsgerät.
JP2930612B2 (ja) * 1989-10-05 1999-08-03 株式会社リコー 画像形成装置
JP2851089B2 (ja) * 1989-11-30 1999-01-27 株式会社リコー 表処理方法
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

Also Published As

Publication number Publication date
EP0758775A3 (en) 1997-10-01
DE69619606D1 (de) 2002-04-11
JPH09171556A (ja) 1997-06-30
US5848186A (en) 1998-12-08
DE69619606T2 (de) 2002-08-08
EP0758775B1 (en) 2002-03-06
EP0758775A2 (en) 1997-02-19

Similar Documents

Publication Publication Date Title
JP3847856B2 (ja) イメージ処理方法及び装置
US5987171A (en) Page analysis system
US6173073B1 (en) System for analyzing table images
US6711292B2 (en) Block selection of table features
US5854854A (en) Skew detection and correction of a document image representation
US6512848B2 (en) Page analysis system
US5592572A (en) Automated portrait/landscape mode detection on a binary image
US5048099A (en) Polygon-based method for automatic extraction of selected text in a digitized document
US5854853A (en) Method and apparatus for selecting blocks of image data from image data having both horizontally- and vertically-oriented blocks
US4899394A (en) Apparatus and method for image compression
US5465304A (en) Segmentation of text, picture and lines of a document image
JP3048330B2 (ja) 書類から記事を抽出する装置および方法
US5048096A (en) Bi-tonal image non-text matter removal with run length and connected component analysis
EP0654751B1 (en) Method of analyzing data defining an image
JPH09171557A (ja) イメージ処理方法及び装置
US20050210372A1 (en) Method and system for creating a table version of a document
US7149967B2 (en) Method and system for creating a table version of a document
JP3086189B2 (ja) テクスチャーマップパッキング
US6496600B1 (en) Font type identification
US6360006B1 (en) Color block selection
US5548664A (en) Automatic determination of blank pages and binary images' bounding boxes
US5659767A (en) Application programming interface for accessing document analysis functionality of a block selection program
US6259814B1 (en) Image recognition through localized interpretation
JPH0896072A (ja) ページ傾き検出方法
KR100245338B1 (ko) 칼라 영상 파일 분류 및 검색 방법 및 장치

Legal Events

Date Code Title Description
RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20060203

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060516

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060718

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20060822

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20060824

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

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

Free format text: PAYMENT UNTIL: 20090901

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20100901

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20110901

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110901

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20120901

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20120901

Year of fee payment: 6

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

Free format text: PAYMENT UNTIL: 20130901

Year of fee payment: 7

LAPS Cancellation because of no payment of annual fees