JPH10501913A - 書式処理時の自動ページ登録及び自動領域検出のためのシステム及び方法 - Google Patents

書式処理時の自動ページ登録及び自動領域検出のためのシステム及び方法

Info

Publication number
JPH10501913A
JPH10501913A JP8531182A JP53118296A JPH10501913A JP H10501913 A JPH10501913 A JP H10501913A JP 8531182 A JP8531182 A JP 8531182A JP 53118296 A JP53118296 A JP 53118296A JP H10501913 A JPH10501913 A JP H10501913A
Authority
JP
Japan
Prior art keywords
image
blocks
block
user
template
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.)
Granted
Application number
JP8531182A
Other languages
English (en)
Other versions
JP4101290B2 (ja
Inventor
ランガラジャン,ヴィジャクマール
Original Assignee
リバス・テクノロジー,インコーポレイテッド
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 リバス・テクノロジー,インコーポレイテッド filed Critical リバス・テクノロジー,インコーポレイテッド
Publication of JPH10501913A publication Critical patent/JPH10501913A/ja
Application granted granted Critical
Publication of JP4101290B2 publication Critical patent/JP4101290B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T3/00Geometric image transformation in the plane of the image
    • G06T3/60Rotation of a whole image or part thereof
    • G06T3/608Skewing or deskewing, e.g. by two-pass or three-pass rotation
    • 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/1444Selective acquisition, locating or processing of specific regions, e.g. highlighted text, fiducial marks or predetermined fields
    • 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

Abstract

(57)【要約】 本発明は、書式の文書イメージ内でユーザ定義領域を自動的に検出し、元の書式のイメージに関するイメージの傾斜及び移動を補正するシステム、及び方法である。このシステムは、スキャナのような、書式文書に関するイメージの入力のためのメカニズムを提供する。システムはイメージを処理し、その解像度を落として顕著な傾斜を除去する。このイメージは、領域を定義するためにユーザに対して提供される。これらの領域は、ユーザが、請求書の書式内の名前、日付、住所、及び項目のような、光学文字認識を介して意味のあるデータを抽出しようとするエリアである。システムは更に、そのイメージを処理し、水平線、及び垂直線を除去し、テキスト、又はイメージ・データを表す多くのブロックを作成する。線は除去され、様々なパラメータを用いたランレングス・スムージングによってブロックが生成される。ブロックは連結されたピクセルのクラスタを形成する。ブロックは、連結された任意のブロックの組がユニークな識別値を共有するようにラベル付けされる。追加データが、共通にラベル付けされているブロックに集められ、テンプレートの定義に有用なブロックが選択される。テンプレートは、選択されたブロックのそれぞれの中心の間のベクトルの集合である。処理のために第2の文書イメージが得られ、同様に、縮小化、傾斜除去、及びブロックとその中のベクトルの識別を行うための処理がなされる。第2の文書イメージのベクトルが、ユーザに選択されたテンプレート内のベクトルと比較され、第2の文書イメージ内のユーザ定義領域の位置を判定する。

Description

【発明の詳細な説明】 書式処理時の自動ページ登録及び自動領域検出のための システム及び方法 発明の背景 発明の技術分野 本発明は光学スキャナ、及び光学文字認識を用いた書式処理の分野に関し、よ り詳しくは、ページの傾斜を自動的に検出して補正し、翻訳するシステム及び方 法に関する。 発明の背景 光学文字認識(OCR)は、印刷された、又は手書きの文書及び書式からテキスト を抽出するために広く用いられている。通常、文書は光学スキャナ上で走査され 、ビットマップ形式のイメージ・データが生成される。OCRソフトウエア・アプ リケーションは、そのイメージ・データを処理して、そこから全てのテキストを 抽出する。次に、ユーザは結果のテキスト・ファイルを見直して、必要な情報だ けを得るように他のソフトウエアを用いてそのファイルを更に処理するか又は、 ワープロ、データベース、スプレッドシート、会計システム等の有用な書式でそ のファイルを保存することが多い。 書式処理の際には、事前印刷されたテキスト・ベースの書式から、ユーザによ って付加されたテキスト・データだけを抽出することが望ましい。例えば、会社 の名前、住所といった既存のテキスト・デ ータ、及び「顧客名」、「顧客住所」、「項目」、「数量」等といった様々なテ キスト・ブロックの記述を含む請求書に関しては、記述テキストではなく、こう したブロックに入力された情報だけを抽出することが望ましい。このことは、よ り効果的な処理をテキスト・データに加え、テキスト全てに事後処理をすること なく有用な情報を抽出することを可能にする。 書式処理の従来のシステムは、テンプレートを使用しており、ユーザは、所望 のテキストが見つかる可能性の高い、入力文書イメージ上の位置を識別するため に、ユーザ定義領域をそのテンプレート内に配置する。これらのシステムでは、 テンプレート内のユーザ定義領域が、識別されたイメージの境界、即ちビットマ ップ内に定義されたイメージの上部、下部、及び側部に関連して配置される。 こうした従来のシステムの問題点は、後続の文書がテンプレートで処理される 場合、ユーザ定義領域が、文書から生成されたイメージ上に正確に登録、又は配 置されないということである。このことは、文書が走査されるときに、スキャナ のベッドに対して回転するため、又は文書が文書フィーダによって誤って供給さ れたり、ユーザによって不適当な位置に置かれたりするために発生する。更に、 文書はスキャナのベッドの側部から移動される可能性もある。どちらの場合でも 、結果のビットマップ・イメージは、元のテンプレートのビットマップ・イメー ジから、恐らくかなり変化したものとなり、ユーザ定義領域はイメージの正しい 部分に位置づけられなくなる。結果的に、システムは、それぞれのユーザ定義領 域内で、正し いテキストを把握できないことになる。 従って、大きな傾斜や移動があっても、入力イメージ上のテンプレートからユ ーザ定義領域を正しく識別することができるシステム及び方法を提供することが 望ましい。 発明の概要 本発明は、大きな傾斜や移動があっても、文書内のユーザ定義領域を自動的に 識別する方法及びシステムによって、前述の制限を克服するものである。本発明 の基本的コンセプトは、傾斜のないイメージ内の様々なテキストやイメージ要素 間の関係は、傾斜、移動した位置、ページ・イメージ解像度、又は所与の明るさ 及びコントラストの設定に関係なく同じということである。特に、これらのテキ スト及び/又はイメージ・エリアの相対距離は、上述のように、どんなパラメー タによっても変化しない。従って、所与のページの異なるテキスト、及びイメー ジ・エリアの間の関係が把握され、ページ登録、及びユーザ定義領域検出に使用 される。異なるテキストとイメージ・エリアの関係は、動的データ・ネットワー クを使用することによって把握される。 動的データ・ネットワークは、イメージ内に存在する、ある限定されたシステ ム・ブロックに接続されたリンクやベクトルのネットワークである。動的データ ・ネットワークは、特定の明るさ及びコントラストの設定において、各イメージ に対しユニークである。動的データ・ネットワークを含むテンプレートは、好ま しくは書式からの、後続の入力文書を処理するために使用される入力イメージを 処理することによって形成される。これらの文書が後に入力された時、動的デー タ・ネットワークが各入力イメージに対して生成され、選択されたテンプレート の動的データ・ネットワークと比較される。一致した場合、システムはイメージ 上に正確にユーザ定義領域を配置することができ、それによって、その位置でイ メージからテキストやユーザ定義情報を抽出する光学文字認識機能を使用できる 。 テンプレートは多くの処理動作によって形成される。好ましくは、入力イメー ジはおよそ50dpiに例示される。傾斜が検出されると、イメージは、その傾斜を 除去するために回転される。データ準備段階では、水平、垂直線が除去され、次 に残りのイメージ・データがスムーズにされ、主にテキスト・データとピクチャ ータイプ・データとなったイメージ・データは接続されたピクセルのブロックに 入る。これらのブロックは次に、ラベル付けされ、識別番号が提供され、更にテ キスト、イメージ又は2重ブロックに分類される。 分類されたブロックは更にサイズ及び形状でフィルタされ、動的データ・ネッ トワークでの使用に適合するような、多くのシステム・ブロックを提供する。イ メージ内の位置及びサイズに従って、このシステム・ブロックの1つが選択され 、これらから動的データ・ネットワークが生成される。動的データ・ネットワー クは、解像度、サイズ、傾斜、及び移動が変化しない方法で、システム・ブロッ ク間の関係を定義する。所与の明るさ及びコントラストの設定において、システ ム・ブロックは大きく変化しないので、動的データ・ネットワークを定義するベ クトルは、傾斜、移動等の変化の影響をあ まり受けない。 図面の簡単な説明 図1は、テンプレートを使用して入力文書内のユーザ定義領域を自動的に登録し 、検出するシステムのブロック図である。 図2は、テンプレート定義、及びページ登録の全体的な方法を示す流れ図である 。 図3は、テンプレートを定義する処理の流れ図である。 図4は、テンプレート定義を生成するために使用される様々なモジュールに関す る定義執行部のデータフロー図である。 図5a及び5bは、入力イメージにおける傾斜を検出するための傾斜検出処理を示 す図である。 図6は、傾斜検出処理の流れ図である。 図7a及び7bは、イメージ上のユーザ定義領域を定義するためのユーザ・インタ フェースの例を示す図である。 図8は、入力イメージの準備を行うための様々なモジュールと関連するデータ準 備モジュールのデータフロー図である。 図9は、データ準備処理の流れ図である。 図10は、ラベル付けモジュールのブロック識別処理の流れ図である。 図11は、データ・タイプ分類処理の流れ図である。 図12は、動的データ・ネットワークを生成する処理の流れ図である。 図13a及び13bは、テンプレートで入力イメージを登録する処理の流れ図である。 図14は、50dpiで例示され、傾斜が除去された2色イメージを示す図 である。 図15は、ランレングス・スムージングに従う、図14のイメージを示す図である。 図16は、図15のイメージに関して、水平線の除去を行った図である。 図17は、水平線のない図14のイメージを示す図である。 図18は、標準化、及び回転された図17のイメージを示す図である。 図19は、図18のスムーズにされたイメージを示す図である。 図20は、図19から垂直線を除去した結果を示す図である。 図21は、図18及び図20のイメージの結合からの、水平線、又は垂直線のない、傾 斜が除去され回転されたイメージを示す図である。 図22は、非標準化(denormalization)に従って正確に回転された図21のイメージ を示す図である。 図23は、図22のイメージに関する水平スムージングを示す図である。 図24は、図21のイメージに関する垂直スムージングを示す図である。 図25は、データ・ブロックを形成するための垂直、及び水平スムージングに従う イメージを示す図である。 図26は、図25のイメージ内のデータ・ブロックを洗練するために、そのイメージ に関して更にスムージングを行うことを示す図である。 図27は、データ・ブロックを図26のイメージ内にラベル付けした結果を示す概略 図である。 図28aないし28hは、様々な構築段階における動的データ・ネットワークを示す図 である。 発明の詳細な説明 システム・アーキテクチャ ここで図1を参照すると、本発明の改良型自動ページ登録システムを使用する ためのシステムが示されている。このシステム100は、走査された文書及びペー ジ登録テンプレートを長期間保存するための2次記憶装置107、コマンド及びデ ータを受信し、システム100内に出力するための入力装置109と出力装置116、及 びプロセッサ111による実行のために様々なコード・モジュールを記憶するため のアドレス指定可能メモリ113を有するコンピュータ101を含む。システム100は 、入力文書を走査でき、その入力文書に関してグレイスケール、白黒、又はカラ ー・ビットマップ・ファイルのいずれかを生成できるスキャナ115を含む。スキ ャナ115は、少なくとも50dpiの解像度を有することが望ましい。システム100は 、走査された文書又は、システム100内にある他の文書を含む文書を印刷するた めのプリンタ117を備える。 アドレス指定可能メモリ113は、一緒になって本発明の自動ページ登録方法を 管理する実行可能アプリケーションを構成する、多くのコード・モジュールを含 む。より詳しくは、アドレス指定可能メモリ113は、アプリケーション執行部137 、スキャナ・コントロール・モジュール139、定義執行部121、登録執行部135、 縮小化モジュール123、傾斜検出モジュール125、傾斜除去モジュール127、デー タ準備モジュール129、ラベル付けモジュール131、テンプレート・モジュール13 3、及び光学文字認識モジュール145を含んでいる。こうした様々なモジュールの 動作は、自動ページ登録を支援する処理の記述 に従い、以下に説明される。アドレス指定可能メモリ113は更に、1次イメージ ・バッファ141、及び2次イメージ・バッファ143を含み、これらは、モジュール による変換の様々な段階でイメージを記憶するために使用される。 アプリケーション執行部137は、残りのモジュールを含む、システム100の全体 コントロールを提供する。アプリケーション執行部137は、ユーザとの通信のた めのユーザ・インタフェース及び、ユーザ・コマンド及びデータを受信するため のユーザ・インタフェースを提供する。適切なユーザ・インタフェースを介し、 アプリケーション執行部137は、ユーザが文書をスキャナ115やその他の資源でシ ステム100に入力し、定義執行部121で文書を処理するためのテンプレートを生成 し、更に登録執行部135で、定義されたテンプレートと共に入力文書を処理する ことを可能とする。 システム動作 I. 全体処理フロー システム100は、傾斜の除去と翻訳のために入力文書を自動的に登録するため の改良された方法を提供し、それによって、光学文字認識を用いた、より正確な 文書からのデータの抽出を提供する。この方法は2つの基本処理を含む。1つは 文書又は書式の所与のタイプに関するテンプレートを生成する処理である、もう 1つは書式からデータを識別し、抽出するために、入力文書にテンプレートを適 用する処理である。 図2を参照すると、本発明の方法の全体が流れ図で示されている。 システム100に関連して、ユーザは所与の書式に関するテンプレートを定義する( 201)。各テンプレートは、抽出されるテキスト・データを含む多くのユーザ定義 領域と、システムによって識別される多くのブロックを指定することによって、 書式の内部構造を記述する。このテンプレートは、システム定義されたブロック 間の関係によって定義される。ユーザは任意の数のテンプレートを生成すること ができ、各テンプレートは特定の書式に対応している。例えば、ユーザは、請求 書、購買注文、業務用応答名詞、調査書、質問票、ファックス、業務用名詞など に対し、異なるテンプレートを定義することができる。これらは、テンプレート が作成されうる多くの異なる可能な書式のうちのほんの一部にすぎない。従って 書式は、ここでは、異なるデータを含む複数の例が生成され、使用される文書の 任意のタイプを意味すると理解される。テンプレートの生成及び定義は、定義執 行部121によって管理される。 ユーザは次に、定義されたテンプレートの組の中から特定のテンプレートを選 択する(203)。例えば、ユーザが請求書の山を処理しようとする場合、ユーザは これらの文書用に適当な請求書のテンプレートを選択することになる。 ユーザは、システム100内への文書入力(205)に進む。これは、スキャナ115及 びスキャナ制御モジュール139で行われることが好ましい。代替案として、ユー ザは文書を、直接ファックス受信を含む他の資源から入力する事もできる。文書 を入力する任意の資源が、各文書ごとにビットマップ・イメージ・ファイルを作 成するために使 用されうる。代替案として、ビットマップ・イメージに適切に変換できるのであ れば、ベクトル・ベースのファイルが使用可能である。 各文書が入力されるとき(205)、選択されたテンプレートが文書のイメージに 適用される(207)。テンプレートは文書上で、ユーザが抽出したいテキスト・デ ータを含むユーザ定義ブロックを識別する。この識別は自動的に行われ、テンプ レートに定義された元の書式に関して、イメージに傾斜や移動が存在する場合で あっても、ユーザ定義ブロックを識別する。従って、例えば、入力文書が誤って スキャナ115に供給され、その結果イメージが傾斜した場合であっても、システ ム100は依然として、ユーザ定義領域を識別することができる。更に、書式上に 、走査する間に文書を位置決めし、方向付けるために従来より使用されている追 加の登録マークを配する必要がない。テンプレートのイメージへの適用は、登録 執行部135によって実行される。 ユーザ定義領域が識別されると、システム100は従来の方法で光学文字認識モ ジュール145を適用し、識別されたユーザ定義領域からテキスト・データを抽出 する(209)。このデータは後で検索、処理を行うために記憶される(211)。ユーザ は次の文書を続けて入力することができ(205)、又処理を終了させることもでき る。 II. テンプレート定義 ここで図3を参照すると、テンプレートを定義する処理(201)の流れ図が示さ れており、図4を参照すると、テンプレートの定義中に他のモジュールと協働す る定義執行部121のデータフロー図が示され ている。定義執行部121は、モジュール123ないし133の動作、要求された各モジ ュールの発行、必要な入力のモジュールへの送信、及びテンプレートを生成する ための、そのモジュールからの出力の受信を管理する。図14ないし図28は、所与 の入力文書がテンプレート定義の様々な段階を通過する図を示している。 A.イメージ生成 テンプレート定義は、書式上の指定エリア又は指定領域内で選択されたデータ を把握しようとする文書のタイプの典型である書式をシステム100に入力する(30 1)ことによって開始される。例えば、ユーザは請求書のテンプレートを作成しよ うとし、光学文字認識によって、顧客名、住所、請求書番号、製品の説明、品質 と価格、及び合計額といった指定エリア内のテキスト・データを把握しようとす るかもしれない。 文書を入力する(301)ために、ユーザはスキャナ・コントロール・モジュール1 39と関連してスキャナ115を使用することが望ましい。スキャナ・コントロール ・モジュール139は、スキャナ115の動作、例えば明るさ、コントラスト、解像度 等の設定を制御する。スキャナ115は、イメージ・ファイルを出力し、それはグ レイスケール、2色、又はカラー・ビットマップでありうる。スキャナ115がグ レイスケール又はカラー・イメージを出力する場合、スキャナ・コントロール・ モジュール139は、システム内での使用のために2色イメージを生成するための 閾値操作を行うことが望ましい。任意の標準閾値操作技法が、2色イメージを得 るために使用される。基本的に、ど んな所与のグレイスケール又はカラー・イメージ(1ピクセルにつき4、8又は 24ビット)も、所与のグレイスケール又はカラー・ピクセルが所定の閾値x(こ こで、xは通常2^(深さ/2)に設定され、「深さ」はイメージ内のピクセル毎 のビット数である)を越えたかどうかを判定することによって、1ピクセルあた り1ビットに変換される。越えている場合、ピクセル値は1に割り当てられ、越 えていない場合、ピクセル値は0に割り当てられる。1のピクセル値はピクセル が実施に好都合なように設定されていることを意味し、又逆も同様である。更に 、いかなる他の資源からのイメージ・ファイルも、システム100に入力され、本 発明に従い処理されうる。こうした資源は、ファックス・イメージ、グラフィッ ク・アプリケーションから生成されたグラフィック・イメージ、又は走査された 写真やビデオその他から得られたイメージまでも含む。 B.イメージ縮小化 定義執行部121はスキャナ制御モジュール139から、アプリケーション執行部13 7を介して、又は他の任意の資源から2色のイメージを受信する。定義執行部121 はその2色イメージ・ファイルを縮小化モジュール123に送信する。縮小化モジ ュール123は、書式処理とテンプレート定義により適合するように、元の解像度 からより低い解像度にイメージの解像度を落とすことによって、入力2色イメー ジを最小化するか又は例示する(303)。スキャナ115のような従来のスキャナは、 非常に正確な光学文字認識を達成するのに有用な高解像度イメージ(少なくとも 600dpi)を生成する。しかし、この解像度の レベルは書式処理のためのテンプレート生成、及び定義には必要でなく、更に、 余分にメモリと記憶域を消費し、性能に大きな影響を与える。従って、縮小化モ ジュール123は元の資源の解像度を検出し、イメージの縮尺係数又は例示係数を 計算する。 好適実施例において、元の解像度から約50dpiに入力イメージの解像度が低下 され、適切な縮尺係数がこの結果について計算される。例えば、元の解像度が20 0dpiのイメージは、縮尺係数が4で、結果の例示イメージは元のイメージのサイ ズの25%になる。元の解像度が50dpiの倍数にならない場合、縮尺係数は、結果 の解像度が50dpiに最も近くなるように選択され、イメージのサイズが64kb以下 になることが好ましい。イメージ・サイズの制限は、全体性能の改善に有用で、 既存のx86アーキテクチャと開発支援ツールによって生じる制限を取り除く。縮 小化モジュール123の好適実施例は除去技法を使用し、そこで対応するピクセル 数が、例示処理の間に元のイメージより小さくなる。例えば、2色イメージが30 0dpiである場合、各ビットが選択される時に次の6ビットが無視される。縮小化 モジュール123は、イメージ・バッファ141内に例示されたイメージを出力する。 このイメージ・バッファ141は、処理の間、処理されている入力イメージの1つ の現在の状態を維持するために使用される。 C.傾斜検出 イメージ・ファイルが縮小化されると(303)、定義執行部121は、入力イメージ の傾斜の存在と程度を識別する(305)ために、傾斜検出モジュール125を起動する 。傾斜検出モジュール125は、縮小化モジ ュール123によって出力された例示イメージを得るために、イメージ・バッファ1 41にアクセスする。好適実施例では、傾斜検出モジュール125は-60°と+60°の 間の傾斜を検出可能である(ここで0°はスキャナ115上で入力文書が完全に水 平、垂直に関して整列されたことをいう)。 図5a及び5bは、傾斜検出分析を図で示したものである。走査されたイメージ 500は、ある程度傾斜のあるテキストの線501を含む。このテキストの線501が滑 らかにされると、それぞれが連続する一連のピクセルを含む、多くのテキスト・ ブロック503になる。また、イメージ内に存在するものは、線、陰等のような非 テキストからなるデータを含むイメージ・ブロック(図示せず)となりうる。連 結されたブロック503が識別される。連結されたブロックの組503の左端と右端の 間の仮想線505が計算され、この線とブロック503の左端から延びる水平線507の 間の傾斜角Fが判定される。この処理はイメージ500内の連結されたブロックの 組のそれぞれに対して繰り返され、傾斜角Fが、その連結されたブロックの組50 3毎に関連づけられる。個別の傾斜角Fの大部分は誤差の指定範囲内でほとんど 同じであり、個別の傾斜角Fの全てが平均されて、ある方向(時計回り/反時計 回り)に向くイメージ500の傾斜角が生成される。 図6を参照すると、傾斜検出モジュール125によって傾斜検出の好適方法の流 れ図が示されている。傾斜検出モジュール125は、イメージ・バッファ141内の例 示されたピクセル・データに関してランレングス・スムージングを実行し(601) 、スムーズにされたブロックを生 成する。これは、スムージング・モジュール801(図8)をコールすることによ って実行される。スムージング・モジュール801は、入力ランレングス・パラメ ータを使用して、入力イメージ内の未設定(白)ピクセルに対して汎用ランレン グス・スムージング操作を用い、未設定ピクセルを設定された(黒)ピクセルに 変換する。好適実施例では、この時点でのスムージングはランレングス値5で実 行され、この値はイメージ(50dpi)の好ましい解像度、及びテキスト文書内の典 型的なフォント・サイズに基づいている。システムで他の解像度が使用された場 合、別のランレングス・パラメータが指定される。スムーズにされたイメージは 1次イメージ・バッファ141に保持される。 傾斜検出モジュール125は次に、各ビットをワード(2バイト)に拡大し(603) 、イメージ内の各ピクセルを表現する。各ビットを16ビット表現に拡大すること によって、ユニークな識別値、及びピクセルを他のピクセルに関連づける情報の ような、各ピクセルについての追加情報を記憶することが可能となり、それによ って個別のブロックを識別する。追加のビット幅がブロック識別番号、又は他の 情報で必要とされる場合、追加バイトへの拡張が使用される。各ワードが後にラ ベル付けモジュール131によって使用され、ブロック識別値が記憶される。例え ば、スムージング操作の後、ピクセルが1111111110000000のような部分を含む場 合(ここで、「1」はデータが存在すること(黒のピクセル)を表し、「0」は データが存在しないこと(白のピクセル)を表す)、拡張後に各ビットは2バイ ト・ ワード:0000000000000001,0000000000000001,0000000000000001,00000000000000 01,0000000000000001,0000000000000001,...及び0000000000000000,00000000000 00000,0000000000000000等として記憶される。 傾斜検出モジュール125は次に、ラベル付けモジュール131をコールし(605)、 イメージ内のピクセルをブロックにセグメント化する。このラベル付けモジュー ル131の操作は、以下で更に説明する。ラベル付けモジュール131は、ピクセル・ データからブロックのそれぞれを識別し、更に連結されたブロック、即ち黒の( 設定された)ピクセルによって連結されたブロックの各組を識別する。連結され たブロック(1つ又は複数)の各組は、ユニークな識別番号でラベル付けされ、 連結されたブロックの全てが同じ識別番号を有する。 イメージ内のブロック全てが、イメージの全体の傾斜の判断に有用なわけでは ない。特に、全体イメージ・サイズに関して小さすぎる、又は大きすぎるブロッ クは、正確な全体傾斜に大きな貢献をしない傾向にある。小さなブロックは非常 にわずかな情報を提供し、大きなブロックは過大な値を提供する。従って、傾斜 検出モジュール125は、傾斜角の判定の前に、所定の範囲の高さ及び幅にないブ ロックをフィルタして除去する(607)。好適実施例において、傾斜検出モジュー ル125は、99ピクセルより高い高さと149ピクセルより広い幅を有するブロック、 または6ピクセルより低い高さと25ピクセルより狭い幅を有するブロックをフィ ルタし除去する。フィルタ・パラメータもまた、例示されたイメージの解像度に 基づいており、他の 解像度に従って適応させることもできる。残りのブロックから、平均の高さと平 均の幅が判定され、これらの値を超えた大きさのブロックだけが更に処理される 。フィルタで除去されなかったブロックが有効なブロックである。 傾斜検出モジュール125は次に、前述の通り、残りのブロックから、連結され たブロックの組のそれぞれに対し、傾斜角Fと傾斜の方向を判定する(609)。仮 想線は、ブロックの左端中央(y軸内)から右端中央に計算されるのが好ましい 。 好適実施例において、傾斜角はTan-1(△Y/△X)であり、ここで△Xは、ブロッ クの左端中央のX軸座標と右端中央のX軸座標との間の差であり、△Yは、両端のY 軸座標の差である。 別の実施例では、仮想線はブロックの左上から右下の角に向かって取られ、従 って△Xはブロックの左上と右下の角のX軸座標の差であり、△Yはその角のY軸座 標の差である。この実施例では、角は以下のように判定される。ブロック内の各 ピクセル列に対し、その列の下部が、一連の設定されたピクセルの後に続く未設 定ピクセルとして検出される。その列の下部の座標が記憶される。現在のピクセ ル列の下部と次のピクセル列の下部の間の差、△Cが、各ピクセル列に関し記憶 される。△Cは「h,l,d」のような上に出る部分を持つ文字(ascender)及び「g,p, y」のような下に出る部分を持つ文字(descender)によって生じる可能性のある傾 斜角誤差の可能性を除去するために計算される。平均の△Cの値は次に、ブロッ ク全体に適用される。平均△C±2ピクセルの範囲の外側の△C値を持つ(50dpi イメー ジを想定)ピクセル列は、傾斜角の判定に用いられる仮想線の両端を判定する際 に無視される。これが「△Cテスト」である。ブロックの左上の角から横断する 間、△Cテストを合格した△Cの値を有する最初のピクセル列の下部が、仮想線の 始まりを構成し、この制約を満たす最後のピクセル列の下部が、仮想線の一方の 端を構成する。この処理は、有効な各ブロックに対して繰り返され、方向(回転 の方向)及び傾斜角が、各ピクセルの拡張ワード内に記憶される。 傾斜検出モジュール125は、イメージがかなりの大きさの方向と傾斜を有して いることを確認するために、一連のテストを実行する。これらの方向と傾斜は両 方とも重要で、システム100によって補正可能である。傾斜検出モジュール125は 、有効なブロックの総数が2以下であるかどうか判定する(611)。こうした少な い適格ブロックでは、全体イメージの傾斜を予測できない。従って、こうした場 合には、傾斜検出モジュール125はイメージ傾斜角Fを0°に設定する。 それ以外の場合、傾斜検出モジュール125は次に、最も数の多い連結されたブ ロックの組によって保持されている方向を判定する(613)。この数が連結された ブロックの組の総数のうち大多数(好ましくは少なくとも75%)であれば、その ブロックの方向が全体イメージの方向として採用される。傾斜検出モジュール12 5は、有効ブロックの個別の傾斜検出角Fを平均化(615)することによって、イメ ージの傾斜角Fを計算する。 傾斜検出モジュール125は、イメージ傾斜角Fが|60°|より大きいかどうか 判定する(619)。大きい場合、その文書は極端に誤って 配置されている可能性があり、正確に走査され、又はその他の方法で入力された 可能性が低く、従って識別及び処理が成功する可能性は低い。この場合、傾斜検 出モジュール125は、イメージ傾斜角Fに0°を設定する(617)。これ以外の場合 、イメージ傾斜角Fが境界条件を満たせば、傾斜検出モジュール125はこの値に 戻す。これは図4で、検出された傾斜角に戻されることとして示される。 D.傾斜除去 再び図3を参照すると、検出された傾斜角で、定義執行部121はイメージの傾 斜除去を行うかどうかを判定する(307)。好適実施例では、定義執行部121は、イ メージ傾斜角が1°以下であれば、このわずかな傾斜はテンプレートに関する書 式の登録に影響しないので、イメージの傾斜除去を行わない。 イメージ傾斜角Fが1°を越えた場合、定義執行部121は傾斜除去モジュール1 27を発行し、例示されたイメージと元のイメージ両方を、正確な水平、垂直方向 に戻すよう傾斜除去を行う(309)。傾斜除去モジュール127は、イメージ・ファイ ルから元のイメージを読みとり、イメージ・バッファから例示されたイメージを 読みとって、それらを検出された傾斜方向と反対の方向にイメージ傾斜角Fだけ 回転させる。回転は従来の技法を用いて行われる。 図14は2色イメージ・ファイル内に走査され、50dpiで例示され(フル・ペー ジ・サイズに印刷され)、更に傾斜除去される入力文書の例である。 E.ユーザ定義領域の選択 再び図3を参照すると、定義執行部121が傾斜除去されたイメージをアプリケ ーション執行部137に提供し、アプリケーション執行部137が更に、その傾斜除去 されたイメージを所望のユーザ・インタフェース・ディスプレイを介してユーザ に提供する。アプリケーション執行部137は更に、従来の描画ツールに類するツ ールに、ユーザがユーザ定義領域をグラフィックで作成(311)できる機能を提供 する。このことは、矩形又は多角形作成ツールのような適当な描画ツールを選択 し、それを、所望のテキスト情報を含む個別のエリア又は領域を選択するために 傾斜除去イメージに適用する。図7aは適当なユーザ・インタフェース705の一例 であり、傾斜除去された文書700を示している。図7bは、現在多くのユーザ定義 領域701を含む同じ文書を示している。描画ツール703のパレットも示されており 、ユーザ定義領域701を選択するための様々なグラフィカル・ツールを備えてい る。ユーザが多くの領域を定義すると、ユーザ定義領域の各境界の座標が記憶さ れ、ユーザ定義領域が矩形の場合は左上の座標と右下の座標を用いることが好ま しい。一般的な多角形のユーザ定義領域に関しては、各頂点の座標も記憶される 。 F.データ準備 再び図3を参照すると、定義執行部121が次に、データ準備モジュール129を発 行し(313)、不必要な、又は重要でないイメージ内の要素をフィルタして除去す るために、例示されたイメージに対して多くのタスクを実行する。これには、ス ムージング、垂直線と水平線の除去、及びブロックの形成が含まれる。データ準 備モジュール12 9は、ラベル付けモジュール131によってラベル付けされる準備の整ったスムーズ にされたブロックを有するイメージを生成する。図8を参照すると、データ準備 モジュール129の基礎となるモジュールのデータフロー図が示されている。デー タ準備モジュール129は、スムージング・モジュール801、線除去モジュール803 、イメージ回転モジュール805、及び結合モジュール807を含む。図9を参照する と、データ準備モジュール129の動作の流れ図が示されている。この図で、処理 ブロック間のテキストは処理されたイメージの現在の状態を参照する。連結矢印 の上のテキストは、イメージが1次イメージ・バッファ141にあることを示して おり、連結矢印の下のテキストは、イメージが2次イメージ・バッファ143にあ ることを示している。使用されるテキストの略語に関して、キーが図内に提供さ れている。更に、テキストは、所与の処理段階でイメージの例を示す図を識別す るためにラベル付けされている。 水平線と垂直線の除去 データ準備モジュール129は、傾斜除去されたイメージをスムーズにする(901) ため、スムージング・モジュール801を発行する。スムージングは水平線の除去 の正確性を向上させる。スムージング・モジュール801は、入力ランレングス・ パラメータを使用して、従来の方法でランレングス・スムージングを実施する。 走査の間、文書内の垂直線及び水平線が、多くの分解された線セグメントに分離 されうる。これは、明るさ/コントラスト、走査技法、文書の方向等の変化から 生じる。こうした分解された線は、線除去モジュール803に よる線除去段階においては、識別及び除去がより困難である。同様に、破線又は 点線で境界線が引かれているエリアを含む書式も又除去が難しい。従って、線除 去モジュール803の正確性を増大させるために、こうした分解された線、破線、 又は点線に連続した線を形成させることが望ましい。これは、スムージング・モ ジュール801によって行われる。 スムージング・モジュール801は、これもまた例示されたイメージの解像度に 依存して、発行され、ランレングス・パラメータが渡され、前記の分離された線 が設定されたピクセルによって連結される。好適実施例では、50dpiの好適な解 像度が与えられた場合、ランレングス・パラメータが最大で5にまで設定される が、ランレングス・パラメータは他の解像度用にも調整される。これは、どんな 5以下の一連の白のピクセルも一連の黒のピクセルに変換する。この送信は、破 線、点線、又は同様の線を、連続した線セグメントに連結する。小さいランレン グス値は更に、文字「i」及び「j」の中の点、又は文字「t」、「f」、及びその 他の十字を消してしまわないよう意図したものである。 図15は、スムージング・モジュール801によるランレングス・スムージングに 従う、図14のイメージを示す図である。 データ準備モジュール129は次に、線除去モジュール803を発行し、スムーズに されたイメージ内の水平線を除去する(903)。図16は、図15のイメージ上で水平 線を除去した(903)結果を示している。線除去モジュール803はイメージ・バッフ ァを走査し、少なくとも15のラン レングスで、設定された(黒の)ピクセルを識別する。これは、潜在的な線セグ メントを識別する。線除去モジュール803は次に、潜在的な線セグメントの上の 第2の線をチェックし、この線が潜在的な線セグメントと同じランレングスに関 して、未設定の一連のピクセルを有するかどうか判定する。代替案として、線除 去モジュール803は、設定されたピクセルから未設定ピクセルへの遷移、又は未 設定ピクセルから設定されたピクセルへの遷移の数を判定し、この値を所与のラ ンレングスに関する所定の最大遷移と比較する。 上記条件が満たされると、これは潜在的な線セグメントの上端を表す。線除去 モジュール803は同様に、その潜在的な線セグメントの下の第2の線をチェック し、潜在的な線セグメントの下部を識別する。このようにして、潜在的な線セグ メントは最大3ピクセルの高さを有することができる。これらの条件の両方が真 であれば、潜在的な線セグメントは実際の線セグメントである。線除去モジュー ル803は次に、設定されたピクセル全てを未設定ピクセルに変更することによっ て、線セグメントを除去する。この処理はイメージの上部から下部にかけて繰り 返される。結果のイメージは2次イメージ・バッファ143に記憶される。指定さ れた数の線、及び線の高さはここでも、イメージの解像度に基づいており、その 解像度に従って調整される。 結合モジュール807はイメージ・バッファ141、143内の2つのイメージを結合 する。このモジュール807は、線が除去された後で、データ準備モジュール129に よって発行され、垂直線及び水平線の両方が 除去されたイメージを生成する(905)。結合は、2つの入力イメージの各ビット の論理ANDによって行われる。結合モジュール807は水平線の除去の後で発行され 、傾斜の除去されたイメージを水平線のないスムーズにされたイメージと結合す る。この結果、水平線のない、傾斜が除去されたイメージが生成される。図17は 、水平線のない、傾斜が除去されたイメージを示しており、図14と図16を結合し たものである。 水平線を除去した後、データ準備モジュール129は、水平線のない、傾斜が除 去されたイメージを標準化する(907)。標準化は、イメージの上部と下部で一時 的な水平線(1ピクセル幅)を描く手順である。この手順は、スムージング操作 の間にイメージの上部及び下部に引かれた境界線を明確に示すことによって、イ メージ内の垂直線を除去する場合の正確性を改善するために行われる。一時線が なければ、スムージングの間にイメージの一部がページ境界を跨ってスムーズに される。垂直線が除去された後、一時線も除去される。 標準化が行われると、傾斜の除去されたイメージは90°回転される。この回転 は、イメージ回転モジュール805によって行われ(909)、垂直線が線除去モジュー ル803によって除去されるように行われる。図18は、図17の傾斜が除去されたイ メージの標準化及び回転を示している。 データ準備モジュール129は、標準化された、水平線のない、傾斜が除去され たイメージをスムーズにする(911)ために、スムージング・モジュール801を発行 する。図19は、図18のイメージを滑らかにし た結果を示している。線除去モジュール803は次に、垂直線を除去する(913)。但 し、回転されたイメージにおいてそれらは現在水平線となっている。図20は、図 19における水平線(回転する前までは垂直線)を除去した(913)結果を示してい る。 垂直線が除去された後(913)、そのイメージはステップ909によって、2次イメ ージ・バッファ143内の回転され、標準化され、水平線のない、傾斜が除去され たイメージとは別に、1次イメージ・バッファ141に記憶される。結合モジュー ル807が次に、ステップ909で生成された、回転された、水平線のない、傾斜が除 去されたイメージを、垂直線のない、スムーズにされたイメージを結合するため にコールされ、そこで水平線又は垂直線のない、回転され、傾斜の除去されたイ メージを生成する。図21は図20の垂直線の除去されたイメージと、図18の傾斜が 除去され、回転され、標準化されたイメージを結合した結果を示しており、この 結合によって水平線、即ち垂直線のない、回転され、傾斜の除去されたイメージ が生成される。除去されうる垂直線及び水平線の位置の指定は、適当な変更によ り切り換えることができる。 水平線、及び垂直線が除去されると、イメージ回転モジュール805が、結合さ れたイメージを元の方向に戻すよう回転させる(917)。データ準備モジュール129 は、そのイメージを非標準化し(919)、標準化の間に生成された一時線を除去す る。この結果、イメージは垂直線又は水平線のない、傾斜の除去されたイメージ となる。このイメージは1次イメージ・バッファ141内に記憶される。図22は、 図2 1のイメージの回転を戻し、一時線の上部と下部を取り除くためのデータの非標 準化を行った結果を示している。 システム・ブロックの形成 データ準備モジュール129の第2の主要な機能は、ラベル付けモジュール131に よってシステム・ブロックとして次にラベル付けするよう考えられているブロッ クの形成である。ブロックは以下のようにして形成される。 ブロックは、線除去処理と同様の一連のステップによって形成される。水平ラ ンレングス・スムージング921は、スムージング・モジュール801によって、連続 ピクセルの大きなブロックを生成するランレングス・パラメータを用いて、水平 線及び垂直線のない、傾斜の除去されたイメージに対して実施される。好適実施 例では、スムージング操作921は、各ピクセル線に沿って80ピクセル以下で出現 する白の(未設定)ランレングスが、黒の(設定された)ピクセルに変換、又は 充填されるように、およそ80(50dpiで)の値のランレングスで実施される。結 果のイメージは1次イメージ・バッファ141内に記憶される。図23は、図22のイ メージをスムージングした(921)結果を示している。 スムージングは次に、ステップ915から得られた垂直線のないイメージ・デー タ上で実行され(923)、2次イメージ・バッファ143に記憶される。図24は、図21 のイメージに垂直スムージングを加えた結果を示している。垂直スムージングが なされたイメージは次に、縦長方向に戻るよう回転され、2次イメージ・バッフ ァ143に記憶され る。 水平スムージングが施された1次イメージ・バッファ141内のイメージ、及び 垂直スムージングが施された2次イメージ・バッファ143内のイメージは、結合 モジュール807によって結合される(925)。この処理はイメージ内に1組のデータ ・ブロックを生成する。図25は、データ・ブロックを生成する水平及び垂直スム ージングの結合結果を示しており、ここでは図23と図24(後に回転が行われる) の結合である。 いくつかの例では、出力の中に、更にスムーズにされなければならない可能性 のある小さな隙間があることがある。結果のデータに3ピクセルのランレングス 値の更なるスムージングを行うと(927)、それによって、これらの残りの要素が 除去される。結果イメージは1次イメージ・バッファ141に記憶され、ラベル付 けモジュール131による処理の準備が整ったブロックを含む。図26は、図25の残 りの要素を除去するスムージング(927)の結果を示している。 G.システム・ブロックのラベル付け、及び分類 再び図3を参照すると、データ準備に続いて、データ・ブロックがラベル付け モジュール131によってラベル付けされ、分類される(315)。普通、ラベル付けモ ジュール131は、データ準備モジュール129によって生成されたブロックを分析し 、ユニークなブロック識別番号を有する各ブロックを識別し、各ブロックをテキ スト・ブロック、イメージ・ブロック、又は2重ブロックとして分類する。テキ スト・ブロックは、元のイメージ上のテキスト・エリアの存在によ って生成された可能性のあるブロックである。イメージ・ブロックは、元のイメ ージのグラフィック、又は絵の存在によって生成された可能性のあるブロックで ある。2重ブロックは、テキスト・ブロックにもイメージ・ブロックにも識別さ れなかったブロックである。連結されたブロックの各グループには、ユニークな ブロック識別番号が割り当てられる。 ラベル付けモジュール131は、それぞれがブロックに対応しているブロック識 別番号のリストを保持し、各ブロック識別番号毎にブロックに関する統計、及び 分類データを記憶する。好適実施例では、ブロック識別リストはブロック構造か らなる配列であり、各ブロック構造はブロック識別番号に関する属性、及び以下 で更に説明する他のデータ値を有する。 ラベル付けモジュール131は、4ピクセル連結トレーシング技法を用いて、選 択されたピクセルがその隣接ピクセルに連結されているかどうかを判定すること が好ましい。こうしたピクセルの収集は集合的にクラスタを形成し、それによっ てブロックのタイプの形成に貢献する。形成された各ブロックに関して、それを ブロックのタイプの1つに属するユニークなブロックとして識別するために、様 々な特徴が抽出される。 ブロック識別及びラベル付け ここで図10を参照すると、ラベル付けモジュール131によるブロック識別処理 の流れ図が示されている。ラベル付けモジュール131は、1次イメージ・バッフ ァ141を介してデータ準備モジュール129から ブロックのリスト、及びそれらの識別値と共に、スムーズにされた、水平線又は 垂直線のないイメージを受信する。ラベル付けモジュール131は、そのイメージ 内の各ビットを前述のように、2バイト表現に拡張する(1001)。追加ビット幅は 、識別されたシステム・ブロックに関する情報を記憶するのに使用される。拡張 されたデータはアドレス指定可能メモリ113に記憶される。 ラベル付けモジュール131は、設定されたピクセルを識別するために、そのイ メージの拡張されたデータを走査する(1003)。実際にイメージ・データに対応す る拡張されたデータ内のビットだけがチェックされる。この走査処理は左から右 、上から下に進み、(解像度に基づく)そのイメージ内の線の数のカウントが、 全イメージが走査された時を判定するために保持される。 設定されたピクセルが見つかると、同じ線内のその設定されたピクセルのすぐ 隣のピクセル、及び既にチェックされている前の線(従って、左、左上、上、及 び右上)が、それら全てが同じブロック識別番号を有しているかどうかを判定す る(1011)ために、チェックされる(1009)。全てが同じである場合、その設定され たピクセルは同じその識別番号に割り当てられる(1013)。ラベル付けモジュール 131は、現在の線がイメージ内で第1の線か、又は空白線に隣接しているかを判 定する(1005)。この条件を満たせば、すぐ左のピクセルだけが上記のようにチェ ックされる。 ブロック識別番号が隣接するピクセル間で異なる場合、ラベル付けモジュール 131は、設定されたピクセルが複数のブロック識別番号 を有するかどうか判定する。この条件を満たす場合、ラベル付けモジュール131 は、そのピクセルに、隣接するピクセルのうちで最も多くのピクセルに保持され ているブロック識別番号を割り当てる(1021)。また、他の隣接するピクセルはど れも、同様にこうして変更されたブロック識別番号をブロック識別番号として有 することになる。ブロック識別番号は、利用可能なブロック識別番号のリストか ら割り当てられる。従って、変更されたピクセルのブロック識別番号は、利用可 能なブロック識別番号のリストに加えられる(1023)。従って、各ブロック識別番 号は、連結されたピクセルの1組に関連づけられる。 ブロック識別番号が割り当てられると、ブロック識別番号に関する多くの統計 が更新される(1025)。特に、ラベル付けモジュール131は、各ブロック識別番号 に対して、以下のものを保持する。 ブロック識別番号を有するイメージ・バッファ内にある設定されたピクセルの 数(NUMB); ブロックの左上、及び右下の設定されたピクセルによって判定された、ブロッ ク内に広がるエリア(AREA); ブロック内で設定されたピクセルから未設定ピクセルに遷移した数(左から右 /上から下に走査)(TRANS); ブロックの左上の設定されたピクセルと右下の設定されたピクセルのY軸座標 の間の差としての、ブロックの高さ(HEIGHT); ブロックの左上の設定されたピクセルと右下の設定されたピクセルのX軸座標 の間の差としての、ブロックの幅(WIDTH); NUMB/TRANSの商によって決定されたラン係数、ラン係数はブロック内の設定さ れたピクセルの平均ランレングスを示す(RUN); WIDTH/HEIGHTの商によって決定される縦横比(ASPECT);及び NUMB/AREAの商によって決定される密度係数、密度係数はブロック内のピクセ ルあたりの、設定されたピクセル平均数を示す(DENSITY)。 これらのデータ値は、それぞれ走査されたピクセルで更新される(1025)。 ラベル付けモジュール131は、イメージ内の全ての線が処理されたかどうか判 定する(1027)。まだ処理されていない場合、ラベル付けモジュール131は、拡張 されたデータの走査を続ける(1003)。全てが処理された場合は、連結されたピク セルの全ての別の、異なったブロックが識別され、ブロック識別番号が供給され 、各ブロック識別番号が、連結されたピクセルの1グループのみに適用される。 ブロックの全てに、ブロック識別番号が割り当てられると、ラベル付けモジュ ール131は、全体イメージに関する平均ブロック・データを判定するために選択 されたブロックを適格にする(1029)。適格にされたブロックは、システムによっ て容易に識別できる適当なサイズと形状を有するブロックである。好適実施例で は、50dpiのイメージを使用すると、適格にされたブロックは以下の基準を満た す。 HEIGHT/RUN > 4.00 HEIGHT <= 22行 ASPECT >= 5.00 DENSITY >= 0.5 各ブロックはこれらの基準に関してチェックされ(1029)、ブロック識別番号の リストが、そのブロックが適格かどうか示すために更新される。この値は好適な 解像度に関連しており、他の実施例では、他の基準が使用されうる。 適格にされたブロックから、高さの平均とランレングスの平均が計算される(1 031)。高さの平均は適格にされたブロックの高さを合計し、その適格にされたブ ロックの数によって除算されることによって求められる。ランレングスの平均も 同様にして求められる。 図27は、図26のイメージに関してラベル付けを行った結果を概略例示している 。図27のイメージにおいて、同じピクセル密度パターンを有するブロックは、1 つのブロックの部分としてラベル付けされ、同じブロック識別番号を有する。 ブロックの分類 ラベル付けモジュール131は次に、各ブロック(上述のように適格にされたも のと適格でないものの両方)のデータ・タイプの判定を続け、それがテキスト、 イメージ、又は2重のうちどれであるかを判定する。図11を参照すると、ラベル 付けモジュール131のデータ・タイプ分類処理の流れ図が示されている。 ラベル付けモジュール131は、適格判定処理によって適格にされたブロックが 存在するかどうかをテストする(1100)。適格にされたブロックがなければ、ラベ ル付けモジュール131は全てのブロックを無効ブロックと2重ブロックに分類す る。ラベル付けモジュール131は、 ブロックのリストにわたってループし(1101)、各ブロックに対し、そのエリア(A REA)が100ピクセル(50dpiと仮定して)より小さいかどうか判定する(1103)。該 当するブロックがあれば、そのブロックは無効ブロックで、処理が続けられる。 そのエリアが100ピクセルより大きい場合、そのブロックは2重ブロックとして 分類される(1105)。どちらの場合でも、ブロックのリストは割り当てられた値で 更新される。 ブロックが最初に分類されると、又は、適格にされたブロックがある場合、ラ ベル付けモジュール131は、そのブロックがテキスト又はイメージ・ブロックで あるか、又は単に不確定なものであるかを判定する。これは、適格にされたブロ ック、又は2重ブロックのリストにわたって、及び各ブロックに対してループす る(1109)ことによって実施され、ブロックの高さが、イメージのブロックの高さ の平均から導かれたブロックの高さの特定の範囲内にあるかを判定する(1111)。 好適実施例では、好適なイメージ解像度が50dpiである場合、テストは、各ブロ ックの高さがブロックの高さの平均の4倍以下であるかどうかというものである 。他のイメージ解像度では他の近似比率が用いられうる。 ブロックの高さが所望の範囲内にあれば、このことはテキスト・データやイメ ージ・データでありうるブロックの媒体サイズに対し小さいブロックであること を示す。従って、ラベル付けモジュール131は更に、適格にされたブロック全て の平均ランレングスに関するブロックのランレングス(RUN)を判定する(1113)。 好適実施例では、 ブロックのランレングスが平均ランレングスのおよそ6倍+調整係数2より小さ い場合、そのブロックはテキスト・ブロックであり、それに従ってブロック識別 リストが更新される(1115)。これは、そのブロックが、一旦データ準備によって スムーズにされたテキスト・ブロックと共通のエリアと長さを有するかどうか効 果的にテストする。これらの様々なテストを満足させたブロックは、テキスト・ ブロックである可能性が高いので、そのように分類される。 ランレングスがこの値を超えてもまだ、ブロックはイメージ・ブロックかまた は不確定なものである可能性があり、この場合、そのブロックは2重ブロックと して分類されたままとなる。従って、ラベル付けモジュール131は、ブロックの 高さ(HEIGHT)が3行を越えるかどうかテストする(1117)(ここでも、50dpiと仮 定し、この値は他の解像度でも基準付けされる)。ほとんどのテキスト・ブロッ クは、この値より小さいので、高さがこの値を超える場合には、そのブロックは イメージ・ブロックである可能性が高く、それに従ってブロック識別リストが更 新される(1119)。そうでない場合、これ以上の分類は行われず、ブロックは2重 ブロックとして分類されたままとなる。 条件1111に戻って、ブロックの高さがブロックの高さの平均のおよそ4倍より 高い場合、そのブロックはイメージ・ブロックである可能性が高いものの、この 分類を確認するための更なるテストは行われない。ラベル付けモジュール131は 、ブロックの縦横比(ASPECT)がおよそ0.2以上かどうか判定する(1121)。およそ0 .2以上であれば、 このことは、ほとんどのイメージで共通な、高さに対する近似幅をブロックが有 することを示し、より小さい値はイメージである可能性の低い非常に狭いブロッ クを示す。従って、ラベル付けモジュール131は、イメージ・ブロックを示すよ うにブロック・リストを更新する(1119)。このテストが不成功に終わると、ラベ ル付けモジュール131は、ブロックの幅が3ピクセルより大きいかどうか判定す る(1123)。3ピクセルより大きい場合、そのブロックはここでもイメージ・ブロ ックとして分類される(1119)。それ以外の場合、ブロックは2重ブロックとして 分類されたままとなる。 ラベル付け、及び分類処理の終わりで、イメージ内のブロックは、テキスト、 イメージ、又は2重ブロックのどれかに明確に識別、及びタイプ分けされる。結 果のブロックの組は、「システム・ブロック」であり、テンプレートの構造を定 義するのに用いられる。 H.動的データ・ネットワーク 再び図3を参照すると、テンプレートの構造を記述する動的データ・ネットワ ークが、有効な、ラベル付けされ分類されたブロックから定義される(317)。こ こで図12を参照すると、テンプレート・モジュール133によるテンプレートの動 的データ・ネットワーク作成処理の流れ図を示している。 テンプレート・モジュール133は、任意のシステム・ブロックが任意のユーザ 定義領域と交差するかどうかを判定する(1200)。これらのシステム・ブロックは 更なる処理から除かれる。テンプレート・モジュール133はまた、設定されたピ クセルの現れた、傾斜除去され 例示されたイメージの第1の線を判定し、設定されたピクセルの最後の線を判定 する。これらの線は任意のデータが存在するイメージの領域を判定し、それによ ってこれらの線の外側のイメージ・エリアを処理する必要性をなくす。 テンプレート・モジュール133は、最初の線と最後の線の間のイメージ・デー タを、同じ領域を有する多くの領域にセグメント化する。イメージを複数セグメ ントにセグメント化することによって、各セグメント内のブロック・サイズを標 準化することができ、大きなブロックが動的データ・ネットフークに関するブロ ックの選択に過度に影響することがない。セグメントを使用して、イメージの各 領域内のブロックがテンプレートで使用され、更に強力なテンプレートが導入さ れる。好適実施例では、イメージが15のセグメントにセグメント化され、イメー ジを上から下まで分割する。 各セグメントで、テンプレート・モジュール133が、テキスト・ブロックの平 均領域を判定し、個別にセグメント内のイメージ・ブロックを判定する(1203)。 各セグメント内の各ブロック・タイプの平均エリアが次に記憶される。テンプレ ート・モジュール133は次に、ブロック・タイプに関連して、セグメントの平均 ブロック・エリアとほぼ同じ領域を有するこうしたブロックを、各セグメント内 から選択する(1205)。好適実施例では、選択されたブロックは、そのタイプの平 均ブロック・エリアの±20%の範囲内である。代替案として、平均ブロック・サ イズより小さく、これに近い(順序づけられたリストにおいて)エリアを有する ブロック、及び平均ブロック・ サイズより大きく、これに近いエリアを有するブロックが選択されうろ。例えば 、セグメント内のブロックが104、100、118、132、138、102、及び128の四角の ピクセルからなるエリアを有すると仮定すると、平均ブロック・エリアは120ピ クセルになる。ここで選択されるブロックは118、及び128の四角のピクセルのブ ロックとなる。この選択はイメージ・ブロックとテキスト・ブロックに関して行 われ、各セグメントに4つのブロックが選択される。 テンプレート・モジュール133は次に、少なくとも5つのブロックが選択され たかを判定する(1207)。そうであれば、テンプレートに関する動的データ・ネッ トワークが作成されうる。経験的に、5つのブロックのうち最小のものが動的デ ータ・ネットワークを作成するのに適していると判定されている。5つのブロッ クが選択されなかった場合、テンプレート・モジュール133は、書式処理定義執 行部121に、テンプレート定義が不成功であることを通知する。 全体イメージに関して5より多いブロックがある場合、そのイメージに関する 動的データ・ネットワークが作成される(1211)。動的データ・ネットワークは、 平均サイズ要件を満たすシステム・ブロック間、好ましくはそれらの中心間のベ クトルのリストを含む。より詳しくは、各システム・ブロックに関して、システ ム・ブロックの中心から他の全てのシステム・ブロックに対してベクトルが定義 される。従って、各システム・ブロックBiに関して(i=1からn、ここでnはシス テム・ブロックの数)、システム・ブロックBiとシステム・ブロックBjの間の ベクトルV(i,j)を含むベクトル・リスト Viが存在する。 Vi=[V(i,j),V(i,j+1),...V(i,n)] 好適実施例では、各ベクトルはシステム・ブロックの中心間の距離、及び方向 として定義されるのが望ましい。 V(i,j)=[((xi-xj)2+(yi-yj)2)1/2,(Bi→Bj)] ここで(Bi→Bj)はシステム・ブロックBiからシステム・ブロックBjへのベク トルの方向を示す。 ベクトルが、あるシステム・ブロックを別のブロックに不変に関連づける限り 、他のベクトル定義も使用されうる。例えば、各ベクトルは、必要に応じて距離 と方向が計算できる、その両端の点の座標として記憶される。 V(i,j)=[(xiyi),(xjj)] イメージに関する動的データ・ネットワークDは、システム・ブロックに関す るベクトル・リストの組Vを含んでいる。 D=[V1,V2,V3,...Vn] イメージの動的データ・ネットワークは、システム・ブロック間のベクトルの 関係がそのイメージに関して固定されており、イメージが回転されたり大きく移 動された場合でさえも同じであるため、イメージの構造を記述する。図28aは、 システム・ブロックとしてテキスト・エリアが使用されている書式の例を示し、 図28bないし28hは各システム・ブロックと他のシステム・ブロックの間の様々な ベクトル・リストViを示している。 更に、動的データ・ネットワークDの一部はユーザ定義領域に関 して定義される。これは、各ユーザ定義領域Zk(k=1からユーザ定義領域の数m) に対して、領域Zkと各システム・ブロックBiの間のベクトルU(k,1)を含む、 ベクトル・リストUを確立することによって行われる。 Ui=[u(i,j),u(i,j+1),...u(i,m)] この実施例では、テンプレートを極めて強力にするユーザ定義領域の間のベク トルが見つかっておらず、従って記憶されない。代替実施例では、テンプレート を改良する、これらのベクトルが使用される。どちらの場合でも、ユーザ定義領 域の間のベクトルが含まれれば、動的データ・ネットワークDが更に、ユーザ定 義領域に関するベクトル・リストの組Uを含むことになる。 D=[V1,V2,V3,...Vn,U1,U2,U3,...Um] テンプレート・モジュール133は次に、作成されたテンプレートをユーザが入 力した名前及び、テンプレート内の各システム・ブロックの位置、各システム・ ブロックに関する統計データ、動的データ・ネットワーク、及びユーザ定義領域 の座標を含む、定義されたテンプレート・データと共に記憶する(1213)。テンプ レート・モジュール133は、制御を定義執行部121に戻す。 III. テンプレート登録 再び図2を参照すると、1つ以上のテンプレートが定義された後(201)、ユー ザはそのテンプレートで文書の処理を開始できる。テンプレートの選択、及び文 書の入力は上述した。テンプレートの適用は、テンプレートを使用して文書を自 動的に登録する処理である。 一般に登録処理は、新しいテンプレートを作成しないで、各入力イメージ内で 識別されたシステム・ブロックがテンプレートのシステム・ブロック及び動的デ ータ・ネットワークと比較されること以外は、テンプレート定義処理に非常に似 ている。一致した場合、システムはテンプレートのユーザ定義領域を入力イメー ジに適用し、そこから光学文字認識を用いて任意のテキストを抽出する。 より詳しくは、図13aと13bを参照すると、登録処理の流れ図が示されている。 登録で用いられるモジュールは以前に記載されており、その基礎的動作も事実上 同じである。登録処理は登録執行部135によって管理される。 登録執行部135はスキャナ115とスキャナ制御モジュール139を制御し、入力文 書を走査し、イメージ・データを得る(1301)。このイメージ・データは前述のよ うに閾値操作され、2色イメージを作成する。登録執行部135は縮小モジュール1 23を発行し、イメージ・データを所望の解像度に縮小化する(1303)。 登録執行部135は、傾斜検出モジュール125を発行し、イメージ内のどんな傾斜 も検出し(1305)、イメージ傾斜角と方向を報告する。登録執行部135は、その傾 斜が1°を越えているかどうか判定し(1306)、越えていれば傾斜除去モジュール 127をコールして縮小化されたイメージと元のイメージ・データの傾斜を除去す る(1307)。縮小化されたイメージは1次イメージ・バッファ141に記憶される。 登録執行部135はデータ準備モジュール129を発行して水平線及び垂直線を除去 し(1309)、そのイメージをスムーズにし、個々のデー タ・ブロックにする(1311)。次にラベル付けモジュール131が、ブロック識別番 号でデータ・ブロックをラベル付けし分類するために発行される(1313)。ラベル 付けされたブロックは上述のように適格にされ、適格にされたブロックのリスト を生成する。適格にされたブロックは上述のように、テキスト、イメージ、又は 2重ブロックのどれかに分類される。 登録執行部135はテンプレート・モジュール133をコールし、そのモジュールは テンプレートの動的データ・ネットワークをロードする(1315)。次にテンプレー ト・モジュール133は入力イメージに対する動的データ・ネットワークを生成す る。これは、分類されたデータ・ブロックに更なる適格化を行う(1317)ことによ って実施される。この適格化はテンプレートのシステム・ブロックと一致する潜 在的なシステム・ブロックであるブロックを識別する。入力イメージ内の各デー タ・ブロックは、テンプレート内の各システム・ブロックと比較される。適格化 の基準は、 データ・ブロックの分類が同じであること(テキスト又はイメージ)、 ブロック幅の差の絶対値が5ピクセル以下であること、 ブロックの高さの差の絶対値が5行以下であること、及び データ・ブロックとシステム・ブロック内の設定されたピクセルの数の差の絶 対値が、システム・ブロック内の設定されたピクセルの数の10%より小さいこと 、である。 テンプレート・モジュール133は、入力イメージ内の適格にされた システム・ブロックの数が、テンプレート内のシステム・ブロックの数の少なく とも20%であるかどうかテストする(1319)。上記条件を満たさない場合、テンプ レートは入力イメージと一致せず、テンプレート・モジュール133は、不成功の 状態で登録執行部135に戻る(1333)。 適格にされたシステム・ブロックの数が閾値を満たせば、テンプレート・モジ ュール133は上述したように入力イメージに関する動的データ・ネットワークを 作成する(1321)。この動的データ・ネットワークはテンプレートとしては記憶さ れず、むしろユーザに選択されたテンプレートの動的データ・ネットワークと比 較される(1323)。 この比較処理1323は入力イメージの動的データ・ネットワーク内の各ベクトル ・リストにわたって繰り返され、即ち入力イメージ内の各システム・ブロックに わたって効果的に繰り返される。各イメージ・ベクトル・リスト内のベクトルは 、テンプレート・ベクトル・リスト内のベクトルと比較される。入力イメージ内 のベクトルは、それが寸法誤差の所定範囲に入る場合、テンプレート内のベクト ルと一致する。50dpiのイメージを用いた好適実施例では、寸法誤差は3ピクセ ルである。即ち、入力イメージ・ベクトルの長さがテンプレートのベクトルの長 さの±3ピクセルの範囲にあれば、ベクトルは一致する。他の実施例では、適当 に基準とされた他の寸法誤差が使用されうる。ベクトルは両端の点の座標によっ ても比較され、寸法誤差はほぼ2乗された値となっている。テンプレート・モジ ュール133は一致したベクトルの数のカウントを保持する。 テンプレート・モジュール133は次に、一致したベクトルの数が、つまり一致 したシステム・ブロックが、テンプレート内のシステム・ブロックの数の少なく とも10%であるかどうか判定する(1325)。上記条件を満たす場合、動的データ・ ネットワークは一致し、登録は成功する。 入力イメージの動的データ・ネットワークとテンプレートの間で一致があれば 、対応するシステム・ブロックの各対(1つはテンプレート内、1つは入力イメ ージ内)の中心の間の(x,y)オフセットが判定される(1327)。これは、オフセッ ト値(x,y)のリストを生成する。最も多い数のシステム・ブロックの対に適用す るオフセット値がイメージのオフセットとして採用される。例えば、5つのシス テム・ブロックの対がオフセット(2,3)を有し、2つのシステム・ブロックの対 がオフセット(2,4)を有し、6つのシステム・ブロックの対がオフセット(3,3)を 有する場合、イメージ・オフセットは(3,3)のピクセルである。イメージ・オフ セットはユーザ定義領域のそれぞれの座標に加えられ、テンプレートに記憶され 、入力イメージ上のユーザ定義領域の座標を求める(1329)。 入力の中のユーザ定義領域の座標は、光学文字認識モジュール145に提供され る(1331)。次に光学文字認識モジュール145は、イメージ上のこうした領域でテ キストを抽出し(図2:209)、そのデータをファイル、データベース、又は他の 記憶装置に供給する。 テンプレートとの一致がない場合、登録執行部135は不成功の状態でアプリケ ーション執行部137に戻り(1333)、ユーザにそのテンプレ ートが適用されなかったことを示す。このことは、文書が書式と同じタイプでな いかまたは、イメージ内にテンプレートが導出される元のイメージ内より極めて 多い、又は少ないピクセルが設定されているといった、全く異なる明るさとコン トラストの設定で走査された場合に起きる。この場合、ユーザはスキャナ115の 設定をチェックし、文書を再走査することができる。 好適実施例では、マッチングが失敗すると、ユーザはアプリケーション執行部 137によって、ユーザ定義領域の再描画を含む、テンプレートの再定義が(1335) 可能になる。これによってユーザは、書式の変更によって、テンプレートを何度 も調整し、進化させ、例えば新しいバージョンの基礎的な書式を作成する。登録 執行部135は次に、変更されたテンプレートとの一致を再度試みる。ユーザは、 そのテンプレートを再定義する必要がない場合、終了を選択することもできる。
───────────────────────────────────────────────────── フロントページの続き (81)指定国 EP(AT,BE,CH,DE, DK,ES,FI,FR,GB,GR,IE,IT,L U,MC,NL,PT,SE),OA(BF,BJ,CF ,CG,CI,CM,GA,GN,ML,MR,NE, SN,TD,TG),AP(KE,LS,MW,SD,S Z,UG),UA(AM,AZ,BY,KG,KZ,MD ,RU,TJ,TM),AL,AM,AT,AU,AZ ,BB,BG,BR,BY,CA,CH,CN,CZ, DE,DK,EE,ES,FI,GB,GE,HU,I S,JP,KE,KG,KP,KR,KZ,LK,LR ,LS,LT,LU,LV,MD,MG,MK,MN, MW,MX,NO,NZ,PL,PT,RO,RU,S D,SE,SG,SI,SK,TJ,TM,TR,TT ,UA,UG,UZ,VN 【要約の続き】 プレートの定義に有用なブロックが選択される。テンプ レートは、選択されたブロックのそれぞれの中心の間の ベクトルの集合である。処理のために第2の文書イメー ジが得られ、同様に、縮小化、傾斜除去、及びブロック とその中のベクトルの識別を行うための処理がなされ る。第2の文書イメージのベクトルが、ユーザに選択さ れたテンプレート内のベクトルと比較され、第2の文書 イメージ内のユーザ定義領域の位置を判定する。

Claims (1)

  1. 【特許請求の範囲】 1. 第1のイメージ内の少なくとも1つのユーザ定義領域に関連した第2のイ メージ内のユーザ定義領域を自動的に識別し、第1のイメージに関連して第2の イメージ内の傾斜と移動を自動的に補正する方法であって、前記方法が、 第1のイメージ内で連結されたピクセルの第1の複数のブロックを識別するス テップ、 前記第1の複数のブロックから選択されたものの中で、少なくとも1組の第1 のベクトルを定義するステップ、 第2のイメージ内で連結されたピクセルの第2の複数のブロックを識別するス テップ、 前記第2の複数のブロックから選択されたものの中で、少なくとも1組の第2 のベクトルを定義するステップ、 前記少なくとも1組の第1のベクトルを、前記少なくとも1組の第2のベクト ルに対して比較し、この間の同一性の程度を確立させるステップ、及び 前記少なくとも1組の第2のベクトルと同じ、前記少なくとも1組の第1のベ クトルに応答して、第1のイメージのユーザ定義領域を第2のイメージに適用す るステップを含むことを特徴とする、前記方法。 2. 少なくとも1つの前記ユーザ定義領域を第1のイメージ内で定義するステ ップを更に含むことを特徴とする、請求項1に記載の 方法。 3. 第1、及び第2のイメージを閾値操作して2色イメージを得るステップを 更に含むことを特徴とする、請求項1に記載の方法。 4. 第1、及び第2のイメージを例示して各イメージの解像度を低減させるス テップを更に含むことを特徴とする、請求項1に記載の方法。 5. 第1のイメージ内で連結されたピクセルの第1の複数のブロックを識別す る前記ステップが、 前記第1のイメージ内の傾斜角、及び方向を判定するステップ、 前記傾斜角、及び方向に従って前記第1のイメージの傾斜を除去するステップ 、 前記第1のイメージから水平線を除去するステップ、 前記第1のイメージから垂直線を除去するステップ、及び 連結されたピクセルの前記第1の複数のブロックを生成するために、前記第1 のイメージをスムーズにするステップを含むことを特徴とする、請求項1に記載 の方法。 6. 前記第1の複数のブロックのそれぞれを明確に識別するステップ、及び 各ブロックに関し、データの分類を判定するステップを更に含むことを特徴と する、請求項5に記載の方法。 7. 少なくとも1組の第1のベクトルを定義する前記ステップが、 選択されたブロックのそれぞれの中心の間で、他の選択されたそれぞれのブロ ック内の中心に対するベクトルを判定するステップを 更に含むことを特徴とする、請求項1に記載の方法。 8. 少なくとも1つのユーザ定義領域のそれぞれの中心の間で、選択されたそ れぞれのブロック内の中心に対するベクトルを判定するステップを更に含むこと を特徴とする、請求項7に記載の方法。 9. 各ベクトルが距離と方向を含むことを特徴とする、請求項7に記載の方法 。 10. 第1のイメージ内の傾斜角と方向を判定する前記ステップが、 第1のイメージ内のピクセル・データをスムーズにし、複数のブロックにする ステップ、 連結された組のピクセルを形成するブロックを識別し、各ブロックが高さと幅 を有するステップ、 所定の範囲内の高さと幅を有するブロックを有効ブロックとして適格にするス テップ、 各有効ブロック毎に、ブロック傾斜角と方向を判定するステップ、 有効ブロックの大多数の方向を判定するステップ、及び 有効ブロックのブロック傾斜角を平均するステップを更に含むことを特徴とす る、請求項5に記載の方法。 11. 第1のイメージから水平線を除去する前記ステップが、 分裂した水平線セグメントを、連続した水平線セグメントに変換するために選 択されたランレングス・パラメータを使用して、第1のイメージにランレングス ・スムージングを行うステップ、 最大の高さより小さい高さの水平線セグメントを識別するステップ、及び 水平線セグメント内の設定されたピクセルを未設定ピクセルに変換することに よって、識別された水平線セグメントを除去するステップを更に含むことを特徴 とする、請求項5に記載の方法。 12. 第1のイメージから垂直線を除去する前記ステップが、 一時水平線をイメージの上部と下部に加えることによって第1のイメージを標 準化するステップ、 第1のイメージを90°回転させるステップ、 分裂した垂直線セグメントを、連続した垂直線セグメントに変換するために選 択されたランレングス・パラメータを使用して、第1のイメージにランレングス ・スムージングを行うステップ、 最大の高さより小さい高さの垂直線セグメントを識別するステップ、 垂直線セグメント内の設定されたピクセルを未設定ピクセルに変換することに よって、識別された垂直線セグメントを除去するステップ、 第1のイメージを90°回転して戻すステップ、及び 一時水平線を除去することによって第1のイメージを非標準化するステップを 更に含むことを特徴とする、請求項5に記載の方法。
JP53118296A 1995-04-10 1996-04-10 書式処理時の自動ページ登録及び自動領域検出のためのシステム及び方法 Expired - Fee Related JP4101290B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US08/419,135 1995-04-10
US08/419,135 US5822454A (en) 1995-04-10 1995-04-10 System and method for automatic page registration and automatic zone detection during forms processing
PCT/US1996/005011 WO1996032691A1 (en) 1995-04-10 1996-04-10 System and method for automatic page registration and automatic zone detection during forms processing

Publications (2)

Publication Number Publication Date
JPH10501913A true JPH10501913A (ja) 1998-02-17
JP4101290B2 JP4101290B2 (ja) 2008-06-18

Family

ID=23660939

Family Applications (1)

Application Number Title Priority Date Filing Date
JP53118296A Expired - Fee Related JP4101290B2 (ja) 1995-04-10 1996-04-10 書式処理時の自動ページ登録及び自動領域検出のためのシステム及び方法

Country Status (12)

Country Link
US (1) US5822454A (ja)
EP (1) EP0764308B1 (ja)
JP (1) JP4101290B2 (ja)
KR (1) KR100390264B1 (ja)
AU (1) AU696889B2 (ja)
BR (1) BR9606305B1 (ja)
CA (1) CA2192436C (ja)
DE (1) DE69621992T2 (ja)
ES (1) ES2180761T3 (ja)
NO (1) NO965255L (ja)
NZ (1) NZ306769A (ja)
WO (1) WO1996032691A1 (ja)

Families Citing this family (98)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6009198A (en) * 1997-11-21 1999-12-28 Xerox Corporation Method for matching perceptual shape similarity layouts across multiple 2D objects
US6446099B1 (en) 1998-09-30 2002-09-03 Ricoh Co., Ltd. Document matching using structural information
US6697525B1 (en) 1998-10-02 2004-02-24 Parthusceva Ltd. System method and apparatus for performing a transform on a digital image
US6711292B2 (en) 1998-12-30 2004-03-23 Canon Kabushiki Kaisha Block selection of table features
US6741737B1 (en) 1999-03-18 2004-05-25 Choicepoint Asset Company System and method for the secure data entry from document images
US6438433B1 (en) * 1999-04-16 2002-08-20 Ncr Corporation Financial document processing system and method of operating a financial document processing system
US6400845B1 (en) 1999-04-23 2002-06-04 Computer Services, Inc. System and method for data extraction from digital images
US6880122B1 (en) * 1999-05-13 2005-04-12 Hewlett-Packard Development Company, L.P. Segmenting a document into regions associated with a data type, and assigning pipelines to process such regions
FR2806814B1 (fr) * 2000-03-22 2006-02-03 Oce Ind Sa Procede de reconnaissance et d'indexation de documents
US20090059271A1 (en) * 2000-03-28 2009-03-05 Mongonet Methods and apparatus for web-based status of facsimile transmissions to electronic storage destinations
JP4603658B2 (ja) * 2000-07-07 2010-12-22 キヤノン株式会社 画像処理装置及び画像処理方法並びに記憶媒体
US6868186B1 (en) 2000-07-13 2005-03-15 Ceva D.S.P. Ltd. Visual lossless image compression
US7898695B1 (en) 2000-10-06 2011-03-01 Lexmark International, Inc. Method of compensating for electronic printhead skew and bow correction in an imaging machine to reduce print artifacts
US7475151B2 (en) 2000-12-22 2009-01-06 Oracle International Corporation Policies for modifying group membership
US8015600B2 (en) 2000-12-22 2011-09-06 Oracle International Corporation Employing electronic certificate workflows
US7349912B2 (en) 2000-12-22 2008-03-25 Oracle International Corporation Runtime modification of entries in an identity system
US7802174B2 (en) 2000-12-22 2010-09-21 Oracle International Corporation Domain based workflows
US7937655B2 (en) 2000-12-22 2011-05-03 Oracle International Corporation Workflows with associated processes
US7711818B2 (en) 2000-12-22 2010-05-04 Oracle International Corporation Support for multiple data stores
US7085834B2 (en) 2000-12-22 2006-08-01 Oracle International Corporation Determining a user's groups
US7581011B2 (en) * 2000-12-22 2009-08-25 Oracle International Corporation Template based workflow definition
US7380008B2 (en) 2000-12-22 2008-05-27 Oracle International Corporation Proxy system
US7213249B2 (en) * 2000-12-22 2007-05-01 Oracle International Corporation Blocking cache flush requests until completing current pending requests in a local server and remote server
US7415607B2 (en) 2000-12-22 2008-08-19 Oracle International Corporation Obtaining and maintaining real time certificate status
US7363339B2 (en) * 2000-12-22 2008-04-22 Oracle International Corporation Determining group membership
US7411593B2 (en) * 2001-03-28 2008-08-12 International Business Machines Corporation Image rotation with substantially no aliasing error
JP4261783B2 (ja) * 2001-09-11 2009-04-30 キヤノン株式会社 文書登録システム、方法、プログラム及び記憶媒体
US7225256B2 (en) 2001-11-30 2007-05-29 Oracle International Corporation Impersonation in an access system
US20030202683A1 (en) * 2002-04-30 2003-10-30 Yue Ma Vehicle navigation system that automatically translates roadside signs and objects
TW581972B (en) * 2002-05-06 2004-04-01 Newsoft Technology Corp Method to determine adjacency relation
US7840658B2 (en) 2002-05-15 2010-11-23 Oracle International Corporation Employing job code attributes in provisioning
US7216163B2 (en) 2002-05-15 2007-05-08 Oracle International Corporation Method and apparatus for provisioning tasks using a provisioning bridge server
US7050630B2 (en) * 2002-05-29 2006-05-23 Hewlett-Packard Development Company, L.P. System and method of locating a non-textual region of an electronic document or image that matches a user-defined description of the region
JP2004242295A (ja) * 2003-01-15 2004-08-26 Ricoh Co Ltd 画像形成装置、画像形成方法、情報処理装置、情報処理方法、情報処理プログラム、及び記録媒体
RU2251738C2 (ru) * 2003-01-28 2005-05-10 "Аби Софтвер Лтд." Способ приведения в соответствие заполненной машиночитаемой формы и ее шаблона при наличии искажений (варианты)
US9224040B2 (en) 2003-03-28 2015-12-29 Abbyy Development Llc Method for object recognition and describing structure of graphical objects
US9015573B2 (en) 2003-03-28 2015-04-21 Abbyy Development Llc Object recognition and describing structure of graphical objects
US20070172130A1 (en) * 2006-01-25 2007-07-26 Konstantin Zuev Structural description of a document, a method of describing the structure of graphical objects and methods of object recognition.
US6990224B2 (en) * 2003-05-15 2006-01-24 Federal Reserve Bank Of Atlanta Method and system for communicating and matching electronic files for financial transactions
US20050053311A1 (en) * 2003-09-05 2005-03-10 Sharp Laboratories Of America, Inc. Non-integer scaling of bi-tonal files
US7424672B2 (en) * 2003-10-03 2008-09-09 Hewlett-Packard Development Company, L.P. System and method of specifying image document layout definition
US7340447B2 (en) 2003-10-09 2008-03-04 Oracle International Corporation Partitioning data access requests
US7904487B2 (en) 2003-10-09 2011-03-08 Oracle International Corporation Translating data access requests
US7882132B2 (en) 2003-10-09 2011-02-01 Oracle International Corporation Support for RDBMS in LDAP system
US7630974B2 (en) 2004-09-28 2009-12-08 Oracle International Corporation Multi-language support for enterprise identity and access management
JP2006201935A (ja) * 2005-01-19 2006-08-03 Fuji Xerox Co Ltd 画像データ処理装置
US8749839B2 (en) 2005-03-24 2014-06-10 Kofax, Inc. Systems and methods of processing scanned data
US9137417B2 (en) 2005-03-24 2015-09-15 Kofax, Inc. Systems and methods for processing video data
US9769354B2 (en) 2005-03-24 2017-09-19 Kofax, Inc. Systems and methods of processing scanned data
US20080311551A1 (en) * 2005-08-23 2008-12-18 Mazer Corporation, The Testing Scoring System and Method
US20070168382A1 (en) * 2006-01-03 2007-07-19 Michael Tillberg Document analysis system for integration of paper records into a searchable electronic database
US8571262B2 (en) * 2006-01-25 2013-10-29 Abbyy Development Llc Methods of object search and recognition
RU2006101908A (ru) * 2006-01-25 2010-04-27 Аби Софтвер Лтд. (Cy) Структурное описание документа, способ описания структуры графических объектов и способы их распознавания (варианты)
US8233714B2 (en) 2006-08-01 2012-07-31 Abbyy Software Ltd. Method and system for creating flexible structure descriptions
US9740692B2 (en) 2006-08-01 2017-08-22 Abbyy Development Llc Creating flexible structure descriptions of documents with repetitive non-regular structures
JP2008192032A (ja) * 2007-02-07 2008-08-21 Fuji Xerox Co Ltd 文書処理装置、文書処理方法、プログラム
US7880921B2 (en) * 2007-05-01 2011-02-01 Michael Joseph Dattilo Method and apparatus to digitally whiteout mistakes on a printed form
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
US8295590B2 (en) * 2007-09-14 2012-10-23 Abbyy Software Ltd. Method and system for creating a form template for a form
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
US8249343B2 (en) 2008-10-15 2012-08-21 Xerox Corporation Representing documents with runlength histograms
US8958605B2 (en) 2009-02-10 2015-02-17 Kofax, Inc. Systems, methods and computer program products for determining document validity
US9576272B2 (en) 2009-02-10 2017-02-21 Kofax, Inc. Systems, methods and computer program products for determining document validity
US8774516B2 (en) 2009-02-10 2014-07-08 Kofax, Inc. Systems, methods and computer program products for determining document validity
US9767354B2 (en) 2009-02-10 2017-09-19 Kofax, Inc. Global geographic information retrieval, validation, and normalization
US9349046B2 (en) 2009-02-10 2016-05-24 Kofax, Inc. Smart optical input/output (I/O) extension for context-dependent workflows
US8189961B2 (en) 2010-06-09 2012-05-29 Microsoft Corporation Techniques in optical character recognition
US8116761B1 (en) 2010-08-11 2012-02-14 Sprint Communications Company L.P. Modifying wireless network paging zone broadcast based on wireless access congestion
US8832546B2 (en) * 2011-03-03 2014-09-09 Palo Alto Research Center Incorporated System for automatically filling in paper forms with electronic data
US9111140B2 (en) 2012-01-10 2015-08-18 Dst Technologies, Inc. Identification and separation of form and feature elements from handwritten and other user supplied elements
US10146795B2 (en) 2012-01-12 2018-12-04 Kofax, Inc. Systems and methods for mobile image capture and processing
US9483794B2 (en) 2012-01-12 2016-11-01 Kofax, Inc. Systems and methods for identification document processing and business workflow integration
US9058580B1 (en) 2012-01-12 2015-06-16 Kofax, Inc. Systems and methods for identification document processing and business workflow integration
US9165187B2 (en) 2012-01-12 2015-10-20 Kofax, Inc. Systems and methods for mobile image capture and processing
US9058515B1 (en) 2012-01-12 2015-06-16 Kofax, Inc. Systems and methods for identification document processing and business workflow integration
US8971630B2 (en) 2012-04-27 2015-03-03 Abbyy Development Llc Fast CJK character recognition
US8989485B2 (en) 2012-04-27 2015-03-24 Abbyy Development Llc Detecting a junction in a text line of CJK characters
CN103020619B (zh) * 2012-12-05 2016-04-20 上海合合信息科技发展有限公司 一种自动切分电子化笔记本中手写条目的方法
JP2016517587A (ja) 2013-03-13 2016-06-16 コファックス, インコーポレイテッド モバイル装置を用いて取込まれたデジタル画像におけるオブジェクトの分類
US9208536B2 (en) 2013-09-27 2015-12-08 Kofax, Inc. Systems and methods for three dimensional geometric reconstruction of captured image data
US9355312B2 (en) 2013-03-13 2016-05-31 Kofax, Inc. Systems and methods for classifying objects in digital images captured using mobile devices
US20140316841A1 (en) 2013-04-23 2014-10-23 Kofax, Inc. Location-based workflows and services
CN105518704A (zh) 2013-05-03 2016-04-20 柯法克斯公司 检测和分类使用移动设备采集的视频中对象的系统和方法
US9386235B2 (en) 2013-11-15 2016-07-05 Kofax, Inc. Systems and methods for generating composite images of long documents using mobile video data
CN104809716B (zh) * 2014-01-24 2018-01-26 青岛海信移动通信技术股份有限公司 一种确定图像偏移量的方法及设备
US9760788B2 (en) 2014-10-30 2017-09-12 Kofax, Inc. Mobile document detection and orientation based on reference object characteristics
US10242285B2 (en) 2015-07-20 2019-03-26 Kofax, Inc. Iterative recognition-guided thresholding and data extraction
JP6623597B2 (ja) * 2015-07-27 2019-12-25 富士ゼロックス株式会社 情報処理装置及びプログラム
US9779296B1 (en) 2016-04-01 2017-10-03 Kofax, Inc. Content-based detection and three dimensional geometric reconstruction of objects in image and video data
US11062176B2 (en) 2017-11-30 2021-07-13 Kofax, Inc. Object detection and image cropping using a multi-detector approach
US11328524B2 (en) 2019-07-08 2022-05-10 UiPath Inc. Systems and methods for automatic data extraction from document images
US11341325B2 (en) 2019-09-19 2022-05-24 Palantir Technologies Inc. Data normalization and extraction system
KR102256667B1 (ko) * 2020-03-23 2021-05-26 주식회사 신한디에스 문서 인식 방법 및 그 장치
KR102642095B1 (ko) * 2021-03-23 2024-02-28 네이버 주식회사 테이블이 포함된 이미지 보정 방법 및 시스템
WO2022182104A1 (ko) * 2021-02-23 2022-09-01 네이버 주식회사 테이블 생성 방법 및 시스템, 그리고 테이블이 포함된 이미지 보정 방법 및 시스템
WO2022182111A1 (ko) * 2021-02-23 2022-09-01 네이버 주식회사 테이블 생성 방법 및 시스템, 그리고 테이블 인식 방법 및 시스템
US20230073775A1 (en) * 2021-09-06 2023-03-09 Nathalie Goldstein Image processing and machine learning-based extraction method

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3636513A (en) * 1969-10-17 1972-01-18 Westinghouse Electric Corp Preprocessing method and apparatus for pattern recognition
US5185813A (en) * 1988-01-19 1993-02-09 Kabushiki Kaisha Toshiba Document image processing apparatus
US5140650A (en) * 1989-02-02 1992-08-18 International Business Machines Corporation Computer-implemented method for automatic extraction of data from printed forms
US5335290A (en) * 1992-04-06 1994-08-02 Ricoh Corporation Segmentation of text, picture and lines of a document image
US5416849A (en) * 1992-10-21 1995-05-16 International Business Machines Corporation Data processing system and method for field extraction of scanned images of document forms
US5513304A (en) * 1993-04-19 1996-04-30 Xerox Corporation Method and apparatus for enhanced automatic determination of text line dependent parameters
DE69432114T2 (de) * 1993-11-24 2003-10-30 Canon Kk System zum Identifizieren und Verarbeiten von Formularen
AU2702095A (en) * 1994-06-09 1996-01-04 Moneyfax, Inc. System and method for reading data from prescribed regions of a document of variable size

Also Published As

Publication number Publication date
AU696889B2 (en) 1998-09-24
CA2192436C (en) 2005-02-08
BR9606305A (pt) 1997-09-09
EP0764308A1 (en) 1997-03-26
DE69621992T2 (de) 2003-02-27
CA2192436A1 (en) 1996-10-17
ES2180761T3 (es) 2003-02-16
DE69621992D1 (de) 2002-08-01
NO965255L (no) 1997-02-06
JP4101290B2 (ja) 2008-06-18
NZ306769A (en) 1998-06-26
WO1996032691A1 (en) 1996-10-17
EP0764308B1 (en) 2002-06-26
NO965255D0 (no) 1996-12-09
BR9606305B1 (pt) 2010-08-10
US5822454A (en) 1998-10-13
KR100390264B1 (ko) 2003-09-22
AU5541596A (en) 1996-10-30

Similar Documents

Publication Publication Date Title
JPH10501913A (ja) 書式処理時の自動ページ登録及び自動領域検出のためのシステム及び方法
US6738154B1 (en) Locating the position and orientation of multiple objects with a smart platen
US5889886A (en) Method and apparatus for detecting running text in an image
US6757081B1 (en) Methods and apparatus for analyzing and image and for controlling a scanner
US5854854A (en) Skew detection and correction of a document image representation
US5335290A (en) Segmentation of text, picture and lines of a document image
US5828771A (en) Method and article of manufacture for determining whether a scanned image is an original image or fax image
JP3883696B2 (ja) 多数の写真をスキャンしかつ検出するとともに人工エッジを除去するための方法
US20030063802A1 (en) Image processing method, apparatus and system
JP3962891B2 (ja) 文書画像処理装置、文書画像処理方法、及び記憶媒体
US5892854A (en) Automatic image registration using binary moments
CN101388111B (zh) 图像处理装置和图像处理方法
US5835638A (en) Method and apparatus for comparing symbols extracted from binary images of text using topology preserved dilated representations of the symbols
JPH03201866A (ja) 圧縮形態のデータを含むデータから画像スキュー角度を決定する方法
US20030161523A1 (en) MICR-based optical character recognition system and method
JPH07131641A (ja) 画像処理装置
DE69935392T2 (de) Dokumentverarbeitung
US20040179717A1 (en) Printing system, method of inspecting print data, method of classifying print inspection result and program
US5592574A (en) Method and apparatus for expansion of white space in document images on a digital scanning device
US7151859B2 (en) Method and system for correcting direction or orientation of document image
US20100195151A1 (en) Image processing apparatus and control method for the same
EP0975146B1 (en) Locating the position and orientation of multiple objects with a smart platen
US8422789B2 (en) Image discrimination device and image attribute discrimination method
JPH11296676A (ja) 画像データ分類方法および画像データ登録方法
US20230273952A1 (en) Image processing apparatus, image processing method, and storage medium

Legal Events

Date Code Title Description
A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20060613

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20060913

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20061030

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20061213

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20070213

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20070323

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20070514

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20070809

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20071002

A524 Written submission of copy of amendment under article 19 pct

Free format text: JAPANESE INTERMEDIATE CODE: A524

Effective date: 20071225

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: 20080219

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20080319

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

Free format text: PAYMENT UNTIL: 20110328

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees