[go: up one dir, main page]

JP2008171411A - 動的なコネクタ解析のための方法及び装置 - Google Patents

動的なコネクタ解析のための方法及び装置 Download PDF

Info

Publication number
JP2008171411A
JP2008171411A JP2007322566A JP2007322566A JP2008171411A JP 2008171411 A JP2008171411 A JP 2008171411A JP 2007322566 A JP2007322566 A JP 2007322566A JP 2007322566 A JP2007322566 A JP 2007322566A JP 2008171411 A JP2008171411 A JP 2008171411A
Authority
JP
Japan
Prior art keywords
template
template shape
line
shape
line object
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
JP2007322566A
Other languages
English (en)
Other versions
JP4623676B2 (ja
Inventor
James Besley
ベスリー ジェイムス
Eric Wai-Shing Chong
ワイ−シン チョン エリック
Khanh Doan
ドーン カーン
Steven Richard Irrgang
リチャード イルガング スティーヴン
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 JP2008171411A publication Critical patent/JP2008171411A/ja
Application granted granted Critical
Publication of JP4623676B2 publication Critical patent/JP4623676B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/70Arrangements for image or video recognition or understanding using pattern recognition or machine learning
    • G06V10/74Image or video pattern matching; Proximity measures in feature spaces
    • G06V10/75Organisation of the matching processes, e.g. simultaneous or sequential comparisons of image or video features; Coarse-fine approaches, e.g. multi-scale approaches; using context analysis; Selection of dictionaries
    • G06V10/757Matching configurations of points or features

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Theoretical Computer Science (AREA)
  • Medical Informatics (AREA)
  • Computing Systems (AREA)
  • Databases & Information Systems (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Software Systems (AREA)
  • Health & Medical Sciences (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Processing Or Creating Images (AREA)
  • Image Processing (AREA)

Abstract

【課題】編集可能なドキュメントを作成する方法を提供する。
【解決手段】グラフィカルオブジェクトのビットマップ表現、及び線オブジェクトのビットマップ表現を検出する。また、グラフィカルオブジェクトを複数のテンプレート形状とマッチングし、当該テンプレート形状は不連続な接続点を有する。また、線オブジェクトの少なくとも1つの終端が接続点のうちの1つの予め定められた距離内にある場合に線オブジェクトに対して当該接続点の1つを選択し、関連付ける。さらに、そのテンプレート形状に接続された線オブジェクトとともに当該テンプレート形状を含む編集可能なドキュメントを作成し、線オブジェクトは、ドキュメント内でテンプレート形状が修正されるときに当該選択された接続点と関連付けられたままであり、その結果、線オブジェクトはテンプレート形状に動的に接続されたままである。
【選択図】図11

Description

本発明は、概してドキュメント解析に関し、具体的にはドキュメントを作成する方法、装置、及びドキュメントを作成するためのプログラムを記憶したコンピュータ読み取り可能な記憶媒体に関するものである。
高まり続ける計算処理能力と相まった走査(スキャン)技術の普及は、ドキュメント解析システムの領域において多くの進歩をもたらした。これらのシステムは、例えば光学式文字認識(OCR)技術を用いて、スキャンされたドキュメントから意味情報を抽出するために使用される。この技術は、自動帳票読み取りなどのより多くのアプリケーションにおいて使用される。ドキュメント解析システムは、ドキュメントのページの各部のコンテンツに応じて適切な圧縮方法を選択的に使用することによってドキュメントの電子的な表現の圧縮を改善させるためにも使用される。改善されたドキュメントの圧縮は、アーカイブ及び電子配信などの用途に適している。
かなりの割合のオフィスドキュメントが、Microsoft(商標)Word(商標)、Microsoft(商標)Powerpoint(商標)などの構造化されたテキスト/グラフィックス編集アプリケーションを使用して作成される。定型化されたテキスト編集に加えて、これらのテキスト/グラフィックス編集アプリケーションは、基本的な図形描画ツール及びオプションを含む。ドキュメント解析アプリケーションの重要な種類はドキュメントのビットマップ表現を処理して、そのような編集アプリケーションを使用して閲覧され、編集可能なドキュメントの電子的形態を生成する。そのようなドキュメント解析アプリケーションは、「スキャントゥエディタブル(scan−to−editable)」ドキュメント解析アプリケーションと呼ばれる。
典型的な構造化されたテキスト/グラフィックス編集アプリケーションの図形描画オプションは、自由な線の描画、テンプレート形状、及びコネクタ(即ち、ドキュメント内のテンプレート形状に接続する、及び/又はドキュメント内のテンプレート形状の間を接続する動的な線オブジェクト)を含む。また、テキスト/グラフィックス編集アプリケーションは、オブジェクトの組に対する彩色、塗り潰し、レイヤ化、及びグループ化オプションを含んでもよい。
自由な線の描画は、オブジェクトの経路に沿って1組の点を定義することによって直線部分又は曲線部分を用いて開いたオブジェクト及び閉じたオブジェクトを描画するために使用される。閉じたN点多角形は、順序付けられた1組の頂点を定義することによって描画される。例えば、図1は、線多角形100上の黒い正方形によって表される頂点(例えば、101)を含む一般的な線多角形100を示す。自由に描画されるオブジェクトは、単色、透明、混合、及びパターンを含む塗り潰しオプションを適用可能な範囲で塗り潰されるか、又は塗り潰されない場合もある。
多くの通常使用される幾何学形状は、テンプレート形状を使用して作成される。ユーザは、テンプレート形状のオプションの方がより早く、所望の形状の表現の点でより正確であり、後で編集するのが容易であるために、自由な線を使用して形状を描画するよりもテンプレート形状を使用することを好む可能性がある。よく知られているMicrosoft(商標)AutoShapesの組は、Microsoft(商標)Word(商標)及びPowerPoint(商標)などの編集環境内で操作されるテンプレート形状のいくつかの例を含む。その他のテンプレート形状は、Writer(商標)及びImpress(商標)アプリケーションなどのOpenOffice(商標)編集アプリケーションにおいて見られる。
通常、テンプレート形状は、オフィスドキュメントにおいて、特に図形及びフローチャートで見られる。いくつかのテンプレート形状の例405〜460を図4に示す。通常、図4に示すように、塗り潰されていない線オブジェクト405〜420、同色の中身が塗り潰されたオブジェクト425〜440、又は異なる色の中身が塗り潰されたオブジェクト445〜460を含む塗り潰しオプションの範囲が、線、透明、混合、又はパターン塗り潰しに対して利用可能である。
上述のように、コネクタはドキュメント内のテンプレート形状を接続する動的な線オブジェクトである。そのような線オブジェクトは、直線コネクタと屈曲したコネクタとを含む。コネクタを形成する線オブジェクトは、矢尻形状を有するか、又はその他の線の終端の効果を有する。図2に示すように、テンプレート形状が編集又は移動されると、当該テンプレート形状に接続された任意のコネクタは変更に合わせて更新され、接続されたままに保たれる。図2(a)は、両端に矢尻形状を有する直線コネクタ210と、終端の効果を有していない屈曲したコネクタ220とによって接続された3つの形状、角丸長方形205、菱形215、及び缶225を示す。図2(b)は、形状205、215、225並びにコネクタ210、220の同じ組を示す。しかし、菱形215はその他の形状205、225に対して上方に移動されている。コネクタの210、220の両方はこの移動に応じて更新されており、直線コネクタ210は今度は斜めにされ、屈曲したコネクタ220は方向が裏返しにされている。図2(c)は、形状205、215、225及びコネクタ210、220の同じ組を示す。しかし、図2(c)において、菱形215は右下に移動されている。コネクタ210、220はそれに応じて更新されており、屈曲したコネクタ220は重なりなしに2つの形状215、225を接続するためにさらなる2つの折り返しを含む。コネクタを形成する線オブジェクトの例は、Microsoft(商標)AutoShapesの中に見ることができる。
いくつかの構造化された/テキスト編集アプリケーションにおいて、コネクタは、既定の接続点における有限の組においてテンプレート形状に接続することのみ可能である。概して、これらの既定の接続点は、対称的に、及び予め定められたテンプレート形状の境界周囲における外向きに突き出た点に配置される。図3は、1組の塗り潰されていないテンプレート形状301〜321を示す。テンプレート形状のそれぞれ(例えば、301)は、テンプレート形状の境界上に配置された中身が塗り潰された四角として表される接続点の対応する組を含む。図3の形状の組は、四角形(301)、角丸四角形(302)、楕円(303)、三角形(304)、平行四辺形(305)、台形(306)、六角形(307)、プラス記号(308)、星(309)、矢印(310)、ホームベース(311)、吹き出し(312)、ブローチ(313)、山形(314)、8角シール(315)、16角シール(316)、32角シール(317)、くさび四角形コールアウト(318)、くさび角丸四角形コールアウト(319)、くさび楕円コールアウト(320)、及び波形(321)を含む。
既存のスキャントゥエディタブルアプリケーションは、テキスト及び表の処理に偏っている傾向があり、一般的に図形の処理に効果的に対処していない。そのようなスキャントゥエディタブルアプリケーションは、光学式文字認識(OCR)処理を使用してドキュメントの画像から文字及び単純な記号を認識することができる。多くの基本的なスキャントゥエディタブルアプリケーションは、テキスト又は表として認識されない画像の部分を概して圧縮された形式の、及びときには低解像度のビットマップ画像として単に組み入れる。そのような基本的なスキャントゥエディタブルアプリケーションは、組み入れられたビットマップ画像が幾何学的描画ツールを使用して容易に編集されることができず、さらに全体的なファイルサイズが大きい可能性があるためユーザにとって明らかに不都合である。
その他のアプリケーションは、線オブジェクト及び中身が塗り潰されたオブジェクトを発見するためにベクトル化方法を使用する。線オブジェクト及び中身が塗り潰されたオブジェクトは、特定のテンプレート形状のインスタンスではなく、出力において自由な線の描画として表される可能性がある。これは、テンプレート形状に対して定義された特定の編集オプションが利用できず、対応する編集可能な電子的形態の有用性を制限するのでユーザにとって不都合である。また、そのようなアプリケーションは、ドキュメントのコンテンツに関して、あまり精度の高くない意味情報を提供する。したがって、このようなデータを当てにするデータベースアプリケーションは、あまり有用でない可能性がある。
グラフィカルな要素の認識のために使用されうるいくつかの既存の方法が存在する。いくつかの方法は、個々の要素又は要素の組合せの全種類を認識している。ここで、同じ種類であると認識された異なるオブジェクトは、特定されない歪曲の範囲によって関連付けられる。そのような方法は、いくつかの異なる形状及び不明な歪曲の形で提供される可能性があるオブジェクトを認識すること(例えば、人物顔認識の用途)に対して有用である。しかし、これらの方法は、編集可能なドキュメントにおいて、出力用の予め定められた形状表現の特定のパラメータ化を認識する手段及び指定する手段を提供しない。他の方法は、特定の形状を認識し、線形変換の制限された組を指定するが、典型的なテンプレート形状ライブラリ内の形状に対して実行される変換のカスタマイズされた組合せには対応しない。
したがって、スキャンされた画像入力からドキュメントの電子的形態を作成する改良された方法に対するニーズが存在する。
本発明の一形態によれば、編集可能なドキュメントを作成する方法が提供され、前記方法は、a.少なくとも1つのグラフィカルオブジェクトのビットマップ表現及び線オブジェクトのビットマップ表現を検出するためにビットマップ画像を解析するステップと、b.前記グラフィカルオブジェクトを、1つ以上の予め定められた不連続な接続点を有する複数の予め定められたテンプレート形状のうちの1つとマッチングするステップと、c.前記線オブジェクトの少なくとも1つの終端が前記予め定められた接続点のうちの1つの予め定められた距離内にある場合に、前記線オブジェクトに対して前記予め定められた接続点のうちの1つを選択するステップと、d.前記線オブジェクトを前記選択された接続点と関連付けるステップと、e.前記テンプレート形状に接続された前記線オブジェクトとともに前記テンプレート形状を含む編集可能なドキュメントを作成するステップとを含み、前記線オブジェクトは、前記ドキュメント内で前記テンプレート形状が修正されると、前記選択された接続点と関連付けられたままであり、その結果、テンプレート形状に動的に接続されたままであることを特徴とする。
本発明の他の形態によれば、編集可能なドキュメントを作成する装置が提供され、前記装置は、少なくとも1つのグラフィカルオブジェクトのビットマップ表現及び線オブジェクトのビットマップ表現を検出するためにビットマップ画像を解析する解析手段と、前記グラフィカルオブジェクトを1つ以上の予め定められた不連続な接続点を有する複数の予め定められたテンプレート形状のうちの1つとマッチングするマッチング手段と、前記線オブジェクトの少なくとも1つの終端が前記予め定められた接続点のうちの1つの予め定められた距離内にある場合に前記線オブジェクトに対して前記予め定められた接続点のうちの1つを選択する選択手段と、前記線オブジェクトを前記選択された接続点と関連付ける関連付け手段と、テンプレート形状に接続された前記線オブジェクトとともに前記テンプレート形状を含む編集可能なドキュメントを作成する作成手段とを備え、前記線オブジェクトは前記ドキュメント内で前記テンプレート形状が修正されると、前記選択された接続点と関連付けられたままであり、その結果、テンプレート形状に動的に接続されたままであることを特徴とする。
本発明のさらに他の形態によれば、編集可能なドキュメントを作成するための手順をコンピュータに実行させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体が提供され、前記プログラムは、少なくとも1つのグラフィカルオブジェクトのビットマップ表現及び線オブジェクトのビットマップ表現を検出するためにビットマップ画像を解析するステップと、前記グラフィカルオブジェクトを1つ以上の予め定められた不連続な接続点を有する複数の予め定められたテンプレート形状のうちの1つとマッチングするステップと、前記線オブジェクトの少なくとも1つの終端が前記予め定められた接続点のうちの1つの予め定められた距離内にある場合に前記線オブジェクトに対して前記予め定められた接続点のうちの1つを選択するステップと、前記線オブジェクトを前記選択された接続点と関連付けるステップと、テンプレート形状に接続された前記線オブジェクトとともに前記テンプレート形状を含む編集可能なドキュメントを作成するステップとを含み、前記線オブジェクトは、前記ドキュメント内で前記テンプレート形状が修正されると、前記選択された接続点と関連付けられたままであり、その結果、テンプレート形状に動的に接続されたままであることを特徴とする。
また、本発明のその他の形態も開示される。
本発明は、スキャンされた画像入力からドキュメントの電子的形態を作成する改良された方法を提供できる。
以下では、従来技術のいくつかの形態と本発明の1つ以上の実施形態とが図面及び付録を参照して説明される。
添付の図面のうちの任意の1つ以上において同じ参照番号を有するステップ及び/又は特徴に対する参照がなされる場合、それらのステップ及び/又は特徴は、相容れない意図が現れない限りこの説明の目的のために同じ(1つ以上の)機能又は(1つ以上の)動作を有する。
「背景技術」の欄に含まれる検討、及び従来技術の構成に関連する上記の内容は、それらのそれぞれの公表及び/又は使用を通じて公知の知識を形成する文書又はデバイスの検討に関連することに留意されたい。このようなことは、そのような文書又はデバイスが何らかの形で当技術分野の技術常識の一部を形成するという(1人又は複数の)本発明者又は特許出願人による陳述と解釈されるべきでない。
以下では、ドキュメントを作成する方法について説明する。説明する方法は、図25に示すコンピュータシステムなどのコンピュータシステム2500を使用して実行され、当該コンピュータシステムにおいて、図1乃至図24のプロセスがコンピュータシステム2500内で実行可能な1つ以上のアプリケーションプログラムなどのソフトウェアとして実行される。具体的には、説明する方法のステップは、コンピュータシステム2500内で実行されるソフトウェアの命令によって達成される。命令は、それぞれが1つ以上の特定のタスクを実行することを目的とする1つ以上のコードモジュールとして形成される。ソフトウェアは、第1の部分及び対応するコードモジュールが説明する方法を実行し、第2の部分及び対応するコードモジュールが第1の部分とユーザとの間のユーザインターフェースを管理する2つの別個の部分に分割される。ソフトウェアは、例えば後述する記憶装置を含むコンピュータ読み取り可能な記憶媒体に記憶される。ソフトウェアは、コンピュータ読み取り可能な記憶媒体からコンピュータシステム2500にロードされ、続いてコンピュータシステム2500によって実行される。ソフトウェア又はコンピュータプログラムを記憶したコンピュータ読み取り可能な記憶媒体は、コンピュータプログラム製品となる。コンピュータシステム2500において、当該コンピュータプログラム可読媒体の使用が、説明する方法を実行するための有利な装置をもたらすであろう。
図25に示すように、コンピュータシステム2500は、コンピュータモジュール2501、キーボード2502及びマウスポインタデバイス2503などの入力デバイスと、プリンタ2515、ディスプレイデバイス2514、及びスピーカ2517を含む出力デバイスとによって形成される。外付け変調復調装置(モデム)トランシーバデバイス2516が、接続2521を介した通信ネットワーク2520への通信、及び通信ネットワーク2520からの通信のためにコンピュータモジュール2501によって使用される。ネットワーク2520は、インターネット又はプライベート広域ネットワーク(WAN)などのWANであってもよい。接続2521が電話回線である場合、モデム2516は従来の「ダイヤルアップ」モデムでもよい。代替例として、接続2521が大容量(例えば、ケーブル)接続である場合、モデム2516はブロードバンドモデムであってもよい。ネットワーク2520への無線接続のために無線モデムを使用してもよい。
通常、コンピュータモジュール2501は、少なくとも1つのプロセッサユニット2505と、例えば半導体ランダムアクセスメモリ(RAM)及び読み出し専用メモリ(ROM)から形成されたメモリユニット2506とを備える。モジュール2501は、ビデオディスプレイ2514及びスピーカ2517に接続されるオーディオビデオインターフェース2507と、キーボード2502、マウス2503及び任意選択でジョイスティック(図示せず)のための入力/出力(I/O)インターフェース2513と、外付けモデム2516及びプリンタ2515のためのインターフェース2508とを含むいくつかのI/Oインターフェースも含む。一部の実装において、モデム2516は、コンピュータモジュール2501内、例えばインターフェース2508内に組み込まれてもよい。コンピュータモジュール2501は、接続2523を介して、コンピュータシステム2500をローカルエリアネットワーク(LAN)として知られるローカルコンピュータネットワーク2522に接続することを可能にするローカルネットワークインターフェース2511も有する。図25に示すように、ローカルネットワーク2522は、通常、いわゆる「ファイアウォール」デバイス又は同様の機能を含む接続2524を介して広域ネットワーク2520に接続してもよい。インターフェース2511は、イーサネット(登録商標)回路カード、無線Bluetooth(商標)、又はIEEE802.11無線装置によって形成されてもよい。
インターフェース2508、2513は、シリアル及びパラレル両方の接続性を与え、通常、前者はユニバーサルシリアルバス(USB)規格に従って実装され、対応するUSBコネクタ(図示せず)を有する。通常、ハードディスクドライブ(HDD)2510を備える記憶装置2509が提供される。また、フロッピー(登録商標)ディスクドライブ及び磁気テープドライブ(図示せず)などのその他のドライブが使用されてもよい。また、光ディスクドライブ2512が提供されて、不揮発性のデータのソースとして働く。例えば光ディスク(例えば、CD−ROM、DVD)、USB−RAM、及びフロッピー(登録商標)ディスクなどのポータブルメモリデバイスが、システム2500に対する適切なデータのソースとしてさらに使用されてもよい。
通常、コンピュータモジュール2501のコンポーネント2505〜2513までは、相互接続されたバス2504を介して、及び当業者に知られているコンピュータシステム2500の動作の通常の形態をもたらすやり方で通信が行われる。そのコンピュータ上で説明された構成が実施されるコンピュータの例は、IBM−PC及び互換機、Sun Sparcstation、Apple Mac(商標)、又はそれらから発展した同様のコンピュータシステムを含む。
概して、上述したアプリケーションプログラムはハードディスクドライブ2510上に存在し、プロセッサ2505による実行において読み出され、制御される。そのようなプログラム、及びネットワーク2520、2522から取得された任意のデータの中間記憶が、場合によってはハードディスクドライブ2510と連動して半導体メモリ2506を使用することによって実行されてもよい。いくつかの例において、1つ以上のCD−ROM上に符号化され、対応するドライブ2512を介して読み出されるアプリケーションプログラムがユーザに供給されるか、又は代替として、アプリケーションプログラムがネットワーク2520又はネットワーク2522からユーザによって読み出されてもよい。さらに、ソフトウェアは、その他のコンピュータ読み取り可能な記憶媒体からコンピュータシステム2500にロードされてもよい。コンピュータ読み取り可能な記憶媒体は、命令及び/又はデータを、実行及び/又は処理のためにコンピュータシステム2500に提供する任意の記憶媒体を示す。そのような媒体の例には、フロッピー(登録商標)ディスク、磁気テープ、CD−ROM、ハードディスクドライブ、ROM若しくは集積回路、光磁気ディスク、又はPCMCIAカードなどのコンピュータ可読カードが、そのようなデバイスがコンピュータモジュール2501の内部又は外部にあるか否かに関わらず含まれる。同様に命令及び/又はデータの供給に関与するコンピュータ可読伝送媒体の例には、無線又は赤外線伝送チャネル、並びに他のコンピュータ又はネットワークデバイスへのネットワーク接続、及び電子メールの伝送とウェブサイトなどに記録された情報とを含むインターネット又はイントラネットが含まれる。
アプリケーションプログラムの第2の部分及び対応するコードモジュールは、ディスプレイ2514上に描画されるか、又はそうでなければ表示されるべき1つ以上のグラフィカルユーザインターフェース(GUI)を実行するために実行されてもよい。キーボード2502及びマウス2503の操作を通じて、コンピュータシステム2500及びアプリケーションのユーザは、インターフェースを操作して、(1つ以上の)GUIに関連するアプリケーションに制御命令及び/又は入力を与えることができる。
代替的に、説明する方法は、当該方法の機能又は従属機能を実行する1つ以上の集積回路などの専用ハードウェアにおいて実行されてもよい。そのような専用ハードウェアは、グラフィックプロセッサ、デジタル信号プロセッサ、又は1つ若しくは複数のマイクロプロセッサ及び関連するメモリを含んでよい。
以下で使用される用語「テンプレート形状」は、指定された編集又はビュー環境内の閉じた外側境界を有する修正可能な非テキストの形状オブジェクトの形態を定義する予め定められたモデルを示す。したがって、本明細書において説明されるテンプレート形状は、「修正可能な閉じた形態である非テキストのテンプレート形状」である。多くのテンプレート形状は単一の閉じた外側境界から構成されるが、図4に示された「缶」テンプレート形状420などの一部のテンプレート形状はその他の内側の線を含む。テンプレート形状は、それらのパラメータの解釈がモデル内で定義された複数のパラメータによって指定される。複数のパラメータには、アフィンパラメータ、制御パラメータ、及び線幅パラメータが含まれる。テンプレート形状を定義するパラメータは以下でさらに詳細に説明される。
図27(a)、(b)は、Microsoft(商標)AutoShapesの抜粋を示す図である。さらに、付録Aは、図27(a)、(b)のMicrosoft(商標)AutoShapesのそれぞれの名称を図27(a)、(b)におけるそれらの図形の参照とともに一覧にする表である。
テンプレート形状のアフィンパラメータは、閉じた形態の非テキストのテンプレート形状に対する修正を定義する。そのような修正は線形行列変換によって記述されてもよい。また、修正は、拡大縮小、回転、及びオフセットを含み、特定の形状の種類に対しては傾斜を含んでもよい。それぞれx軸及びy軸に沿ったs及びsの拡大縮小と、θの回転と、それぞれx軸及びy軸に沿ったΔx及びΔyのオフセットとに関して、線形行列変換は以下の式(1)によって表される。
Figure 2008171411
変換が傾斜cも含む場合、行列変換は以下の式(2)によって表される。
Figure 2008171411
アフィンパラメータの観点でのみ異なるテンプレートの種類のオブジェクトは、適切な行列変換を使用して一致するように修正される。図5(a)は、テンプレート形状500の拡大縮小s及びs、回転θ、並びにオフセットΔx及びΔyのアフィンパラメータが修正されるにつれて第1にテンプレート形状501に、第2にテンプレート形状502に、第3にテンプレート形状503に変化する五角形テンプレート形状500を示す。
図5(b)は、三角形504の傾斜パラメータが修正されるにつれて取得されるいくつかの異なる三角形505〜507を示す。特定の形状に関する傾斜パラメータは、いくつかのユーザインターフェース内に制御パラメータとして現れる可能性があることに留意されたい。しかし、本明細書において説明されるように、傾斜パラメータはアフィンパラメータとみなされる。
制御パラメータは、概してテンプレート形状の線形行列変換を用いて定義されることができない、テンプレート形状に対するさらなる幾何学的修正を定義する。それぞれのテンプレート形状はN個の制御パラメータの定義された組を有し、ここでNはモデルによって指定され、0である可能性もある。具体的には、通常、テンプレート形状は最大で4個の(即ち、4個以下の)制御パラメータを含む。しかし、一部のテンプレート形状は4個を超える制御パラメータを含んでもよい。テンプレート形状は直線的な辺(即ち、多角形)又は曲線によって全体的に定義されるか、又は1組の頂点の間の直線的な辺及び曲線部分の混合を含む。通常、各制御パラメータは、複数の頂点、複数の曲線部分、又は複数の頂点及び曲線部分の両方を修正する。
代替的に、閉じた形態のテンプレート形状は、特定のテンプレート形状における個々の頂点の座標を示すパラメータによって定義される。さらに、閉じた形態のテンプレート形状は、当該テンプレート形状の各曲線部分を独立に修正するパラメータによって定義される。よく使用される曲線のパラメータ化方法には、3次スプライン及びベジェ曲線がある。2つ以上の頂点及び/又は曲線部分を修正する制御パラメータを使用してテンプレート形状を定義することの利点は、実質的により少ないパラメータが要求され、パラメータがその特定の形状により適した修正を記述することである。
テンプレート形状の制御パラメータを修正することの効果は、テンプレート形状に関するテンプレートモデルによって定義される。制御パラメータは、閉じた形態の非テキストのテンプレート形状を非アフィン形式で修正するために使用される。1つの制御パラメータを有するテンプレート形状の例601〜624の組600が図6に示される。各テンプレート形状(例えば、606)に隣接しているのは、その正方形のx座標が制御パラメータの値を表す黒い正方形(例えば、625)である。図6は、それらの角丸四角形に関して制御パラメータが角の曲率半径を修正する1組の角丸四角形(即ち、601〜604)を含む。図6は、制御パメータ(例えば、625)が、上部の水平な部分を有するテンプレート形状の左側の線の交差する点を定義する台形(即ち、605〜608)、六角形(即ち、609〜612)、及び八角形(即ち、613〜616)も含む。図6は、制御パラメータ(例えば、626)が凸部及び凹部の頂点の相対的な半径を定義する16角シール(即ち、617〜620)も含む。最後に、図6は、制御パラメータ(例えば、627)が当該部分的に欠けた月形の段階を定義する部分的に欠けた月形(即ち、621〜624)を含む。
図7は、2つの制御パラメータを有するテンプレート形状の例701〜716、即ち矢印の組700を示す図である。黒い正方形は制御パラメータの値を表し、この場合、2つのパラメータがそれぞれx座標及びy座標によって表される。
同様に、図8は、2つの制御パラメータを有するテンプレート形状の例801〜816、即ち角丸コールアウトの組800を示す図である。ここでも、黒い正方形は制御パラメータの値を表し、この場合、2つのパラメータがそれぞれx座標及びy座標によって表される。
通常、テンプレート形状は、当該テンプレート形状の外側境界を定義する部分の数よりも少ない制御パラメータを有する。例えば、図6の形状の例の組600は、単一の制御パラメータを用いて定義される。しかし、台形(605〜608)は4つの部分からなり、六角形(609〜612)は6つの部分からなり、八角形(613〜616)は8つの部分からなり、16角シール(617〜620)は32の部分からなり、月形(621〜624)は2つの部分からなる。同様に、図7及び図8に示されたテンプレート形状は2個の制御パラメータを用いて定義されるが、各テンプレート形状は3つ以上の部分からなる。Microsoft(商標)AutoShapesの組のほとんどのテンプレート形状は、4個以下の制御パラメータを有する。
いくつかの場合、拡大縮小パラメータは特定のテンプレート形状に対してアフィンパラメータとして機能しない可能性があることに留意されたい。例えば、図9に示すように、角丸長方形テンプレート形状910の拡大縮小がアフィンスケーリングを用いる場合に期待されるような楕円形態を取るのではなく、角丸長方形形状920を形成するように修正されながら、当該角丸長方形テンプレート形状910の角が円弧のようなそれらの角の形態を維持する。このような振る舞いは、テンプレート形状の縦横比(即ち、垂直方向の拡大縮小パラメータと水平方向の拡大縮小パラメータとの間の比)に対応する追加の制御パラメ―タをテンプレート形状に加えることによってモデル化される。
線幅パラメータは、予め定められたテンプレート形状を定義する線の幅を単に定義する。通常、テンプレート形状全体に対する一定の線の幅を定義する唯一の線幅パラメータが存在する。図10は、ページの左から右に向かって増加する線幅パラメータの組を有する、塗り潰されていない六角形テンプレート形状1001を示す図である。
本明細書において説明される方法は、幾何学モーメント、中心幾何学モーメント、及びツェルニケモーメントなどのいくつかのモーメントを使用して実装される。
(p,q)次の幾何学モーメントは、以下のように式(3)に従って予め定められた形状オブジェクト(例えば、グラフィカルオブジェクト)の内部によって覆われる領域Aに渡る積分によって定義される。
Figure 2008171411
ここでp及びqは整数≧0である。幾何学モーメントは、速度に関する境界線の積分によって決定される。モーメントM00は形状オブジェクトの面積を表し、点(x,y)=(M10/M00,M01/M00)はその形状オブジェクトの重心を表す。
中心幾何学モーメントは、例えば、以下の式(4)による、形状オブジェクトの重心が原点に位置付けられるように変換された形状オブジェクトの幾何学モーメントである。
Figure 2008171411
ツェルニケモーメントは画像処理の形状認識処理においてよく使用される。ツェルニケモーメントは、少ない数の項を使用して形状を識別する点で優れた特性を有する。ツェルニケモーメントは、単位円上で直交する1組の基底関数を用いて定義される。これらの基底関数は以下のように式(5)によって与えられる。
Figure 2008171411
ツェルニケモーメントは以下のように式(6)によって決定される。
Figure 2008171411
以下で説明される方法は、「正規化形状オブジェクト」と呼ばれる形状オブジェクトの代替表現を使用する。正規化形状オブジェクトは、形状オブジェクトの重心が原点に一致するようにシフトされた元の形状オブジェクトに基づいており、回転及び伸張の効果を小さくするように修正される。正規化はアフィン変換によって表されることが好ましい。任意の2次元(2D)形状オブジェクトをその形状オブジェクトの標準的な形態にマッピングするための一連の線形変換である通常のアフィン正規化が、正規化を実行するために使用されることが好ましい。具体的には、元の形状オブジェクトが、当該形状オブジェクトの重心が原点にあるようにシフトされ、2次モーメントが1(m20=m02=1)になるようにx軸及びy軸に沿って伸張され、45度回転され、続いて2次モーメントがやはり1(m20=m02=1)になるように再び伸張される。代替的な正規化方法が、例えば元の形状オブジェクトの主軸及び境界ボックスに基づいて使用される。
上述のアフィン正規化は、以下のように行列式(7)によって表される。
Figure 2008171411
ここで、(x,y)及び(x’,y’)はそれぞれ変換の前後の形状オブジェクトにおける特定の点を定義し、(Δx,Δy)は元の形状オブジェクトの重心の位置であり、正規化行列Nは以下のように式(8)を使用して2次中心幾何学モーメントによって定義される。
Figure 2008171411
以下で説明される方法は、グラフィカルな領域を有するドキュメントのビットマップ画像を解析して修正可能なテンプレート形状及びコネクタを有するドキュメントを作成するために使用される。説明する方法の多くは、例えばタブレットPC及びホワイトボード用途における手書きのデジタルインク入力の解析にも適用可能である可能性がある。通常、デジタルインク入力はベクトルの形態で記憶されるので、説明されるベクトル化方法は必要とされない可能性がある。
図11は、一実施形態に係る修正可能な形状(即ち、閉じた形態の非テキストのテンプレート形状)を含むドキュメントを作成する方法1100を示すフローチャートである。方法1100は、グラフィカルな領域を有する入力画像を、修正可能なテンプレート形状及びコネクタ(即ち、ドキュメント内のテンプレート形状を接続する動的な線オブジェクト)を有するドキュメントに変換することによってドキュメントを作成する。方法1100は、ハードディスクドライブ2510上に存在し、プロセッサ2505による実行において制御されるソフトウェアとして実装される。
図11に示すように、方法1100は、ステップ1110において始まり、ここではビットマップ画像が低レベルの画像分割にかけられる。このように、ビットマップ画像はプロセッサ2505によって色に応じて1つ以上の領域に分割される。次に、ステップ1120において、プロセッサ2505は、ビットマップ画像の分割された領域に対して高レベルのドキュメントレイアウト解析を実行して、様々なドキュメントにおけるコンテンツ種類の領域を識別する。この例示的な実施形態において、領域は矩形であり、コンテンツの種類は、以下の分類、即ちテキスト、写真(ハーフトーン)、及びグラフィカルオブジェクトを含んでもよい。これらのコンテンツの種類のそれぞれはピクセルデータで構成される。代替の実施形態において、表、線画などの他のドキュメントにおけるコンテンツの種類が含まれてもよい。分類された領域は、ゾーン、ブロック、又は対象領域と呼ばれる場合もある。また、当該領域の境界ボックスは重なり合う可能性がある。
次のステップ1130において、検出されたグラフィックス領域が、図12を参照して以下でさらに詳細に説明される方法1200に従って、当該グラフィックス領域内のグラフィカルオブジェクトを検出するためにさらに解析される。したがって、ステップ1130において、プロセッサ2505は、グラフィカルオブジェクトのビットマップ表現及び線オブジェクトのビットマップ表現を検出するためにビットマップ画像のグラフィックス領域を解析するステップを実行する。
方法1100は、次のステップ1140において継続し、ここではプロセッサ2505が、個々の検出されたグラフィカルオブジェクトが何であるかを判定するために、上述のように、検出されたグラフィカルオブジェクトを複数の予め定められた修正可能な閉じた形態である非テキストにおけるテンプレート形状のうちの1つとマッチングするステップを実行する。各テンプレート形状は、1つ以上の予め定められた有限の不連続な接続点の組を有する。上述のように、通常、テンプレート形状のそれぞれは、閉じた形態の非テキストのテンプレート形状を非アフィン形式で修正するための最大4個の制御パラメータを含む。通常、予め定められた修正可能な閉じた形態である非テキストのテンプレート形状の制御パラメータ数は、修正可能な閉じた形態である非テキストのテンプレート形状を構成する部分の数よりも少ない。ステップ1140において、検出されたグラフィカルオブジェクトを予め定められたテンプレート形状とマッチングする方法1300が実行される。方法1300についての詳細は、図13を参照して後述する。方法1300の出力は、1つ以上の候補テンプレート形状、及び関連する形状パラメータである。
方法1100は、次のステップ1150において継続し、ここではプロセッサ2505が線オブジェクトがコネクタを形成するかどうかを判定するためにグラフィックス領域内の線オブジェクトを解析するステップを実行する。また、プロセッサ2505は、マッチングされたグラフィカルオブジェクトに対する線オブジェクトの接続点の位置を判定する。ステップ1150において実行される線オブジェクトを解析する方法1400についての詳細は、図14を参照して後述する。
次のステップ1160において、プロセッサ2505は、マッチングされた修正可能な閉じた形態である非テキストのテンプレート形状と、当該テンプレート形状に接続された任意の線オブジェクト(又はコネクタ)とを含むドキュメントの編集可能な形態(バージョン)を作成するステップを実行する。ドキュメントの編集可能な形態は、任意の認識されたテキスト、ドキュメントの要素、及び修復された背景を含む。後述するように、ステップ1480(図14参照)におけるテンプレート形状の選択された接続点に関連する線オブジェクトは、ドキュメント内でテンプレート形状が修正されると、当該選択された接続点と関連付けられたままである。したがって、線オブジェクトは、テンプレート形状に動的に接続されたままとなる。ステップ1160において、マッチングされた閉じた形態の非テキストのテンプレート形状、コネクタ、及びその他のドキュメントの要素を含む編集可能なドキュメントを作成する方法2000が実行される。方法2000については、図20を参照して後述する。
ステップ1130において、グラフィックス領域(即ち、ステップ1120において特定されたグラフィックス領域)内のグラフィカルオブジェクトを識別(又は検出)するためにグラフィックス領域を解析する方法1200が実行される。ここで方法1200について図12を参照して説明する。方法1200は、ハードディスクドライブ2510上に存在し、プロセッサ2505での実行において制御されるソフトウェアとして実装されてもよい。
方法1200は、ステップ1120において特定されたグラフィックス領域から線オブジェクト及び中身が塗り潰されたグラフィカルオブジェクトを作成するためのループ構造を使用する。
方法1200は、ステップ1210において始まり、ここではプロセッサ2505が処理のためにグラフィックス領域を有する分割色マスク/レイヤを選択する。続いて次のステップ1220において、プロセッサ2505は、色レイヤから開いた線オブジェクト及び閉じた線オブジェクトの両方をベクトルとして抽出する。開いた線オブジェクトは、2つの未接続の終端を有する1つ以上の接続された線セグメントからなる。閉じた線オブジェクトは、閉じた多角形を形成するいくつかの接続された線セグメントからなる。線セグメントは直線であることが望ましい。代替の実施形態において、線セグメントは曲線であってもよい。ステップ1230において、予め定められた分割色マスク/レイヤから開いた線オブジェクト及び閉じた線オブジェクトをベクトルとして抽出する方法1600が実行される。方法1600については、図16を参照して後述する。
ステップ1230において、色レイヤは、塗り潰された形状などの非線オブジェクトを抽出するためにさらに処理される。抽出された塗り潰された形状は、多角形オブジェクトとして表されることが望ましい。ステップ1230において実行される非線オブジェクトを抽出する方法2100は、図21を参照して以下でより詳細に説明される。次のステップ1240において、何らかのさらなる色レイヤが存在する場合、方法1200は、次の色レイヤが選択され、処理されるステップ1210に戻る。何らかのさらなる色レイヤが存在しない場合、方法1200は終了する。
ステップ1140において、検出されたグラフィカルオブジェクトを予め定められたテンプレート形状とマッチングする方法1300が実行される。ここで方法1300について、図13を参照して説明する。方法1300は、ハードディスクドライブ2510上に存在し、プロセッサ2505での実行において制御されるソフトウェアとして実装されてもよい。方法1300は、それぞれの検出されたグラフィカルオブジェクトに対して最も一致するテンプレート形状を選択するためのループ構造を使用する。
方法1300は、ステップ1310において始まり、ここではプロセッサ2505が処理のために次の検出されたグラフィカルオブジェクトを選択する。続いて、次のステップ1320において、グラフィカルオブジェクトに対する1組の候補テンプレート形状が、機械学習分類器を使用して決定される。ステップ1320において、グラフィカルオブジェクトに対する1組の候補テンプレート形状を決定する方法1700が実行される。方法1700については、図17を参照して後述する。
全ての選択された候補テンプレート形状を順番に処理して現在のグラフィカルオブジェクトに対して最も一致するテンプレート形状を発見するために方法1300において第2のループ構造が使用される。ステップ1330において、次の候補テンプレート形状が選択され、続いてステップ1340において、現在のグラフィカルオブジェクトに最もよく一致するように候補テンプレート形状を修正する候補テンプレート形状の形状パラメータの組と、グラフィカルオブジェクト及び修正されたテンプレート形状が互いにどれだけよく一致するかを定量化する一致スコアとが決定される。ステップ1340において、グラフィカルオブジェクトに一致するように候補テンプレート形状(即ち、修正可能な閉じた形態である非テキストのテンプレート形状)を修正するための1組のパラメータを決定する方法1800が実行される。方法1800については、図18を参照して後述する。
解析されるべきさらなる候補テンプレート形状が存在する場合、ステップ1350から、方法1300はステップ1330に戻る。さらなる候補テンプレート形状が存在しない場合、方法1300は、ステップ1360において継続し、ここでは現在のグラフィカルオブジェクトに対して最も高い一致スコアを有する候補テンプレート形状が選択される。続いてステップ1370において、そのスコアが形状認識に関する予め定められた閾値よりも大きい場合、方法1300はステップ1380に進む。ここで、予め定められた閾値は、95%の適合スコア(即ち、f>0.95)であることが望ましい。当該スコアが予め定められた閾値よりも大きい場合、ステップ1360において選択された候補テンプレート形状は関連する形状パラメータとともに、ステップ1380における出力のためにメモリ2506に記憶され、続いて方法1300はステップ1390に続く。当該スコアが予め定められた閾値以下の場合、処理はステップ1370からステップ1390に直接続く。
ステップ1390において、処理されるべき何らかのさらなるグラフィカルオブジェクトが存在する場合、方法1300はステップ1310に戻る。処理されるべき何らかのさらなるグラフィカルオブジェクトが存在しない場合、方法1300は完了する。
図14を参照して、ステップ1150において実行される、線オブジェクトを解析する方法1400について説明する。方法1400は、ハードディスクドライブ2510上に存在し、プロセッサ2505での実行において制御されるソフトウェアとして実装されてもよい。方法1400は、それぞれの開いた線セグメントの各終端に対して、選択されたテンプレート形状上の最も満足できる接続点を選択するためのループ構造を使用する。
方法1400は、ステップ1410において始まり、そこではプロセッサ2505が処理のために次の開いた線オブジェクトを選択する。テンプレート形状として認識された全てのオブジェクトを順に処理して現在の開いた線オブジェクトに対する満足できる接続点を発見するために第2のループ構造が使用される。ステップ1420において次のテンプレート形状が選択され、続いてステップ1430において、選択されたテンプレート形状に対する1組の予め定められた接続点が決定される。
方法1400は、ステップ1440において継続し、ここでは線オブジェクトの線の終端点が現在のテンプレート形状の各接続点と比較される。例示的な実施形態において、線の終端点と接続点との間の距離が判定され、予め定められた閾値距離に対して試験されてもよい。閾値距離は、線幅と、テンプレート形状の大きさと、線オブジェクト及びテンプレート形状に関するその他の幾何学情報に応じて決まってよい。例示的な実施形態において、予め定められた閾値距離は、(i)300dpiにおける30pt、並びに(ii)テンプレート形状の幅及び高さのうちの小さい方の10%によって与えられる2つの値のうちの小さい方によって与えられてもよい。線オブジェクトの終端とテンプレート形状の接続点との間の距離が予め定められた閾値距離よりも短い場合、線オブジェクトはメモリ2506内で接続点と関連付けられる。一例として、図15は、テンプレート形状1510と、一方の終端に矢尻形状を有する1つの開いた線オブジェクト1570、及び終端の効果を有していない1つの開いた線オブジェクト1560の2つの開いた線オブジェクトとを示す。テンプレート形状1510に関する4つの接続点が黒い正方形1520、1530、1540、及び1550によって表されている。各接続点の周りにあるのは、発見されるべき満足できる接続点に関する線オブジェクトの終端への最大距離を表す破線の円である。図15の例において、線オブジェクト1560の右側の終端は満足できる接続点1550を有する一方、線オブジェクト1560、1570のその他の3つの線の終端はテンプレート形状1510上に満足できる接続点を有していない。
解析されるべきさらなるテンプレート形状が存在する場合、ステップ1450から、方法1400はステップ1420に戻る。さらなるテンプレート形状が存在しない場合、方法1400はステップ1460に続く。ステップ1460において、プロセッサ2505は、上述のように線オブジェクトの少なくとも1つの終端が予め定められた接続点のうちの1つの予め定められた閾値距離内にある場合に線オブジェクトに対して当該予め定められた接続点のうちの当該1つを選択するステップを実行する。具体的には、ステップ1460において、最も満足できる接続点が線オブジェクトに対して選択される。例示的な実施形態において、最も満足できる接続点は、線オブジェクトの終端と接続点との間の最も短い距離を有する接続点であってもよい。
ステップ1470は、最も満足できる接続点が線オブジェクトに対して発見されたかどうかをチェックし、発見されている場合はステップ1480において、プロセッサ2505が、線オブジェクトを選択された接続点と関連付けるステップを実行する。線オブジェクトは、当該線オブジェクトを選択された接続点に対する参照とともにメモリ2506内に記憶することによって、選択された接続点と関連付けられる。一方、最も満足できる接続点が発見されなかった場合、方法1400は直接、ステップ1490に続く。
ステップ1480において、プロセッサ2505は、線オブジェクトを分類するステップを実行してもよい。具体的には、線オブジェクトは、当該線オブジェクトが単一の直線セグメントからなる場合は直線コネクタとして分類される。線オブジェクトが互いに直角である1組の直線セグメントからなる場合、線オブジェクトは屈曲コネクタとして分類されてもよい。その他の場合は、線オブジェクトに関連するあらゆる接続点は破棄され、線オブジェクトは動的なコネクタとして分類されない。
例示的な実施形態において、屈曲コネクタの分類は、後述するようにAutoShape(商標)ライブラリの屈曲コネクタに基づいてもよい。線オブジェクトは2つから5つの間の直線セグメントから構成されなければならず、それらの直線セグメントのそれぞれは画像のx軸又はy軸に対してほぼ並行である。これらの特性を有する屈曲コネクタへの元の線オブジェクトの適合を表す修正された線オブジェクトが形成される。元の線オブジェクトが(n+1)個の点によって定義されたn個の線の部分からなる場合、修正された線オブジェクトも(n+1)個の点によって定義されたn個の線の部分から構成される。元の線オブジェクト内の点は(x,y)と称され、修正された線オブジェクト内のそれらの点は(x’,y’)と称され、ここでiは1から(n+1)までの整数値を取る。
線オブジェクトの第1の部分は、x軸に沿った変位の大きさが当該部分上の垂直方向の変位の大きさよりも大きい場合に水平として分類される。そうでない場合、線オブジェクトの第1の部分は垂直として分類される。線オブジェクトの引き続く部分は、隣接する部分の対が同じ分類を持たないように水平及び垂直として順々に分類される。修正される線オブジェクトの第1の点は、線オブジェクト内の第1の点と一致するように設定される(即ち、(x’,y’)=(x,y))。次に、線オブジェクトの部分のそれぞれが、修正される線オブジェクトに新しい点を追加するために順に処理される。i番目の部分が水平として分類される場合、(i+1)番目の修正される点が、i=(n−1)でない限り(x’i+1,y’i+1)=(xi+1,y’)に設定され、i=(n−1)である場合、(i+1)番目の修正される点が(x’i+1,y’i+1)=(xn+1,y’)に設定される。同様に、i番目の部分が垂直として分類される場合、(i+1)番目の修正される点が、i=(n−1)でない限り(x’i+1,y’i+1)=(x’,yi+1)に設定され、i=(n−1)である場合、(i+1)番目の修正される点が(x’i+1,y’i+1)=(x’,yn+1)に設定される。
修正された線オブジェクトは、以下のように、修正された線オブジェクト及び元の線オブジェクトからの頂点の対応する組を比較することによって試験される。1組の修正された線の点の誤差を定義するために、修正された線の点と元の線の点との間のユークリッド距離が判定され、記憶される。線の点の誤差の最大値が閾値よりも小さい場合、線オブジェクトは屈曲コネクタとして分類される。この場合、線オブジェクトは屈曲コネクタとして分類され、修正された線の点の組はコネクタのパラメータを定義するために使用される。例示的な実施形態において、閾値パラメータの値は、300dpiにおける10点によって与えられてもよい。
ここで、図26を参照して、上述の屈曲コネクタの分類について説明する。図26は、4つの点(2630、2640、2650、及び2660)によって定義される3つの部分(例えば、2601)からなる線オブジェクト2610を示す図である。対応する修正された線オブジェクト2620は、4つの点(2630、2670、2680、及び2660)によって定義される3つの部分からなる破線によって表される。線オブジェクト2610及び修正された線オブジェクト2620の第1の点2630及び最後の点2660は同一である。線オブジェクト2610の第1の部分(即ち、点2630から2640まで)は水平として分類され、したがって修正された線オブジェクト2620の第2の点2670は点2640と同じx座標及び点2630と同じy座標を用いて定義される。線オブジェクト2610の第2の部分(即ち、点2640から2650まで)は垂直であり、最後から2番目の部分であり、したがって修正された線オブジェクト2620の点2680は点2670と同じx座標及び点2660と同じy座標を用いて定義される。修正された線オブジェクト2620が屈曲コネクタとして分類されるかどうかを判定するために、点2640と2670の間の距離及び点2650と2680の間の距離が判定される。ステップ1490において、プロセッサ2505が、処理されるべきさらなる開いた線オブジェクトが存在すると判定する場合、方法1400はステップ1410に戻る。プロセッサ2505が、さらなる開いた線オブジェクトが存在しないと判定する場合、方法1400は終了する。
図16を参照して、ステップ1230において実行される、予め定められた分割色マスク/レイヤから開いた線オブジェクト及び閉じた線オブジェクトをベクトルとして抽出する方法1600について説明する。方法1600は、予め定められた分割色マスク/レイヤ内の開いた線オブジェクトと、閉じた線オブジェクトと、中心線と、幅とを見つける。方法1600は、ベクトル化方法と呼ばれる場合がある。例示的な実施形態において、分割色マスクは処理のためにピクセルの連続として表されてもよいが、代替的な表現が好適である可能性がある。
方法1600は、ステップ1610において始まり、ここではプロセッサ2505が、次の線セグメントのシードを選択する。線セグメントのシードは、線オブジェクトがいかなるその他のオブジェクトとも交差せず、線オブジェクトの幅及び方向が実質的に一定である線オブジェクトの短い部分である。概して、線のシードのセグメントは、分割色マスク/レイヤ内のオブジェクトの垂直な及び/又は水平な部分を解析して局所領域内で実質的に一定の幅及び方向を持つオブジェクトを発見することによって見つけられる。
方法1600は、ステップ1620に続き、ここでは線セグメントのシードが両方の終端点に沿って伸張されて線オブジェクトの長さを完全に決定する。ステップ1620は、分割色マスク/レイヤ内の線セグメントのシードの両側のオブジェクトの垂直な及び/又は水平な部分を解析すること、並びにそれらの位置及び大きさが線セグメントのシードの位置及び大きさに一致するかどうかを検証することによって実行される。線セグメントのシードが伸張されるとき、線オブジェクトの方向のわずかな逸脱が認められ、線オブジェクトの真の方向をより十分に反映するために線の方向に対する適切な調整がなされてもよい。線の伸張プロセスは、伸張される線の水平な及び/又は垂直な部分の方向又は大きさが、線セグメントのシードの方向又は大きさと実質的に異なるときに終了する。線オブジェクトの検出が完了された後で、線の経路(即ち、中心線)及び幅(即ち、中心線に垂直な方向の平均の幅)が判定及び記憶され、次のステップ1630において、再検出、及びその他の線オブジェクトの検出に対する起こりうる妨害を避けるために、検出された線オブジェクトがソース画像から消去される。
次のステップ1640において、処理されるべきさらなる線セグメントのシードが存在する場合、方法1600はステップ1610に戻る。さらなる線セグメントのシードが存在しない場合、方法1600はステップ1650に続く。ステップ1610から1640は、好ましい線ベクトル化方法を説明する。線オブジェクトを検出するためにその他の知られているベクトル化方法が使用されてもよい。
方法1600は、次のステップ1650において継続し、ここでは方法1600が検出された線オブジェクトの組を解析し、開いた多角形及び閉じた多角形を形成するために適切な線オブジェクトの終端点を接続する。例示的な実施形態において、線オブジェクトの終端点の間の距離が判定され、予め定められた閾値距離と比較されてもよい。線オブジェクトの終端点の間の距離が予め定められた閾値距離よりも短い場合、終端点は1つに接続される。例示的な実施形態において、予め定められた閾値距離は平均線幅の2倍に基づいて決定されてもよい。
次のステップ1660において、プロセッサ2505は、開いている線の終端に対応する線の終端のスタイルを発見するために、線オブジェクトのベクトルが削除された後でビットマップ画像内のオブジェクトを解析する。以下では図22を参照して、ステップ1660において実行される、開いている線の終端に関する線の終端のスタイルを判定する方法2200について説明する。
また、図17を参照して、ステップ1320において実行される、グラフィカルオブジェクトに対する1組の候補テンプレート形状を決定する方法1700について説明する。方法1700は、ハードディスクドライブ2510上に存在し、プロセッサ2505での実行において制御されるソフトウェアとして実装されてもよい。
方法1700は、ステップ1710において始まり、ここではプロセッサ2505が、現在のグラフィカルオブジェクトの正規化形状オブジェクトを決定する。ステップ1720において、プロセッサ2505は、正規化形状オブジェクトから1組の正規化された形状の特徴値を抽出する。これらの特徴値は、単純なモーメント、フーリエ記述子、又は単純な半径方向距離関数に基づいてもよい。
続いてステップ1730において、現在の正規化された形状の特徴ベクトルが、候補テンプレート形状を作成するために、前もってトレーニングされた機械学習分類器を用いて解析される。分類器は、サポートベクタマシン(SVM)アルゴリズムを使用してトレーニングされることが望ましい。代替の実施形態において、トレーニング及び分類のためにその他の機械学習アルゴリズムが実行されてもよい。好適な機械学習アルゴリズムの例は、人工ニューラルネットワーク、k近傍法、及び決定木を含んでもよい。
任意的に、方法1700のステップ1730の後に、分類の速度を向上させるためのステップ1740を実行してもよい。ステップ1740は、分類器によって作成された混同行列を使用して候補テンプレート形状の組を合理化する。混同行列は、予め定められたテンプレート形状が別のテンプレート形状と混同され得る(又は、別のテンプレート形状として誤って分類され得る)可能性を特定する。候補テンプレート形状が別のテンプレート形状と高い混同の可能性を共有する場合、後者のテンプレート形状もさらなる処理のために候補テンプレート形状として選択される。
図18を参照して、ステップ1340において実行される、グラフィカルオブジェクトに一致するように候補テンプレート形状を修正するための1組のパラメータを決定する方法1800について説明する。方法1800は、グラフィカルオブジェクトに一致するように候補テンプレート形状を最適に修正する1組の変換パラメータを決定する。変換パラメータは、2つの拡大縮小パラメータs及びs、2つのオフセットパラメータΔx及びΔy、回転角、並びにグラフィカルオブジェクトによっては線幅、及びいくつかの追加的な制御パラメータからなることが好ましい。線幅は、グラフィカルオブジェクトが線オブジェクトである場合は線オブジェクトの幅に設定され、又は線オブジェクトでない場合は0に設定されることが好ましい。方法1800は、グラフィカルオブジェクトの特徴又は記述子の組と、モーメントなどのそのグラフィカルオブジェクトの正規化された形態とを用いて実行される。例示的な実施形態において、正規化されたグラフィカルオブジェクトの幾何学モーメント、中心幾何学モーメント、及びツェルニケモーメントが、テンプレート形状パラメータを推定するために使用されてもよい。
ステップ1810において、プロセッサ2505が、マッチング中のテンプレート形状が少なくとも1つの制御パラメータによって修正可能であると判定する場合、方法1800はステップ1840に進む。プロセッサ2505が、修正可能であると判定しない場合、方法1800はステップ1820に進む。ステップ1820において、プロセッサ2505が、テンプレート形状がせん断パラメータを有すると判定する場合、方法1800はステップ1830に進む。プロセッサ2505が、テンプレート形状がせん断パラメータを有すると判定しない場合、方法1800はステップ1850に進む。
ステップ1830において、プロセッサ2505は、グラフィカルオブジェクトに対する可能な拡大縮小パラメータ、回転パラメータ、及び傾斜パラメータの組を特定することによって、傾斜パラメータを伴うテンプレート形状に対するアフィン変換パラメータを決定する。ステップ1830において、正規化されたテンプレート形状に対する1組のあり得る回転パラメータが決定され、続いて、テンプレート形状のx軸及びy軸における拡大縮小(s及びs)と、回転(θ)と、傾斜制御パラメータcとをそれぞれ定義する4つの未知のパラメータについて行列式が解かれることが望ましい。正規化されたテンプレート形状が回転対称であり、この正規化されたテンプレート形状の対称変換の次数がkである場合、可能な正規化空間回転角φの組が、正規化された形状のフーリエ位相と正規化されたテンプレート形状のフーリエ位相とを比較することによって決定される。予め定められた形状のフーリエ位相は式(9)によって与えられる。
Figure 2008171411
ここでAは形状によって覆われる領域である。そのとき、角度φは、式(10)によって与えられる。
Figure 2008171411
ここで、A’は正規化された形状の領域であり、A’は正規化されたテンプレート形状の領域であり、nは{0,...,k−1}の範囲内の任意の整数である。正規化されたテンプレート形状が対称的でない場合、以下に説明される回転方法などの代替的な回転方法が使用されてもよい。
角度φの各値に関して、以下の行列式(11)を用いて、x軸及びy軸における拡大縮小(s及びs)と、回転(θ)と、傾斜制御パラメータcとを定義する4つの未知のパラメータが解かれる。
Figure 2008171411
ここで、Nはテンプレート形状のアフィン正規化行列である。角度φのk個の可能な値に対応する1組のk個のあり得るアフィン変換パラメータの組が発見される。例示的な実施形態において、パラメータに関する有効範囲の外にある解は取り除かれる一方、残りの解はステップ1860に回されてもよい。
ステップ1840において、制御パラメータを有する形状に関するパラメータ推定が実行される。ステップ1840において、グラフィカルオブジェクトに一致するようにテンプレート形状を変換する最適な制御パラメータ値を決定する方法1900が実行される。方法1900については、図19を参照して後述する。
次のステップ1850において、1組のあり得る回転パラメータ及び拡大縮小パラメータがテンプレート形状に対して決定される。ステップ1850において、グラフィカルオブジェクトに一致するようにテンプレート形状を修正することに使用するための回転パラメータ及び拡大縮小パラメータを決定する方法2400が実行される。方法2400については、図24を参照して後述する。
方法1800は、次のステップ1860において継続し、ここで前の処理ステップにおいて推定されたパラメータの各組に対してグラフィカルオブジェクトのxオフセット及びyオフセット(Δx,Δy)が決定される。具体的には、ステップ1860において、プロセッサ2505は、グラフィカルオブジェクトの重心を判定し、テンプレート形状の重心がグラフィカルオブジェクトと同じ位置にあるようにテンプレート形状をシフトする。
次に、方法1800は、パラメータのそれぞれの可能な組に対するスコアが決定されるステップ1870に続く。スコアとは、パラメータの予め定められた組に関してグラフィカルオブジェクトがテンプレート形状にどれだけよく一致するかの尺度を示す。例示的な実施形態において、スコアfは、以下のように式(11)に従って決定される。
Figure 2008171411
ここでAintはテンプレート形状とグラフィカルオブジェクトとの共通部分の面積を示し、A及びAはそれぞれテンプレート形状の面積及びグラフィカルオブジェクトの面積を示す。代替の実施形態において、ハウスドルフ距離、及び境界の間の平均2乗距離などのその他の距離測定基準が使用されてもよい。
方法1800は、次のステップ1890において終了し、ここではプロセッサ2505が、最も高いスコアを有するパラメータの組を決定する。
ステップ1840に戻ると、最も優れたパラメータの組が最も高い一致スコアを有するパラメータの組であると判定される。次に、この一致スコアは、候補テンプレート形状を他の候補テンプレート形状と比較するためにステップ1360において使用されるために戻される。
ステップ1840において、グラフィカルオブジェクトに一致するようにテンプレート形状を変換する最適な制御パラメータ値を決定する方法1900が実行される。ここで方法1900について、図19を参照して説明する。方法1900は、ハードディスクドライブ2510上に存在し、プロセッサ2505での実行において制御されるソフトウェアとして実装されてもよい。
方法1900は、ステップ1910において始まり、ここではグラフィカルオブジェクトに対して1組の記述子が決定される。これは、グラフィカルオブジェクトの制御パラメータの関数として表される形状における特徴の任意の組であってもよい。例示的な実施形態においてグラフィカルオブジェクトのツェルニケモーメントが使用されてもよいが、フーリエ記述子、中心幾何学モーメント、又は境界の長さ若しくは角などの識別可能な特徴の位置などのより具体的な特徴などのその他の記述子が使用されてもよく、さらには様々な種類の特徴の任意の組合せが使用されてもよい。
ステップ1920において、グラフィカルオブジェクトの記述子がテンプレート形状の記述子と比較される。制御パラメータの予め定められた組に対するテンプレート形状の記述子と、グラフィカルオブジェクトの記述子との間の距離が定義される。例示的な実施形態において、この距離は、グラフィカルオブジェクトの記述子と、対応するテンプレート形状の記述子との間における差の2乗の合計となる。この距離の尺度の値は、グラフィカルオブジェクトに関する制御パラメータの関数であってもよい。N個の制御パラメータが存在する場合、この距離の尺度はN次元の関数を定義する。制御パラメータの推定値は、通常、関数最小化方法を使用して当該関数の最小値を発見することによって決定される。
ステップ1160において、マッチングされた閉じた形態の非テキストのテンプレート形状、及びコネクタ(即ち、ドキュメント内のテンプレート形状に接続する、及び/又はドキュメント内のテンプレート形状の間を接続する線オブジェクト)、及びその他のドキュメントの要素を含む編集可能なドキュメントを作成する方法2000が実行される。ここで方法2000について、図20を参照して説明する。方法2000は、ハードディスクドライブ2510上に存在し、プロセッサ2505での実行において制御されるソフトウェアとして実装されてもよい。
方法2000は、第1のステップ2010において始まり、ここではプロセッサ2505が、マッチングされた閉じた形態の非テキストのテンプレート形状を入力するためのドキュメントファイルを記述し、作成するためにメモリ2506内でドキュメントファイルを開く。次のステップ2020において、背景画像が修復される。修復は、認識されたテキスト及び形状を元の画像から削除する。形状の一部又はテキストとして認識される画素は、周辺の背景色で置き換えられる。次のステップ2030において、この修復された背景画像が、ドキュメントの背景として働くように任意的にドキュメントファイルに書き込まれる。これは、写真画像などの何らかのものを含む可能性がある、認識されなかった任意のオブジェクトがドキュメント中で今まで通り見えることを保証する。ステップ2040において、マッチングされたテンプレート形状と、分類された直線コネクタ及び屈曲コネクタとが、対応するパラメータを用いてドキュメントファイルに書き込まれる。コネクタは、それらのコネクタが接続していると認識されたテンプレート形状に接続するように出力される。ステップ2050において、あらゆる残りの線オブジェクトが線としてドキュメントファイルに出力される。続いて次のステップ2060において、前に認識されたテキスト及び表がドキュメントファイルに追加される。方法2000は、ドキュメントが完成し、ドキュメントファイルが閉じられる次のステップ2070において終了する。
ステップ1230において、色レイヤから非線オブジェクトを抽出する方法2100が実行される。ここで方法2100について、図21を参照して説明する。方法2100は、ハードディスクドライブ2510上に存在し、プロセッサ2505での実行において制御されるソフトウェアとして実装されてもよい。
方法2100は、第1のステップ2110において始まり、ここでは抽出されるべき非線オブジェクトの外側境界が判定される。ステップ2110は、ラスタ順の第1のオブジェクトの画素などの、オブジェクトの境界上にあることが分かっているオブジェクトの点において開始することによって実行される。次に、非線オブジェクトの境界が、各境界画素から隣接する8近傍画素に時計回りに移動することによって辿られる。いったん開始点が再び到達されると、非線オブジェクトの外側境界が完成する。
次のステップ2120において、抽出されるべき非線オブジェクトに対してクリティカルポイントのツリーが作成される。最初に、開始点の対が見つけられる。第1の開始点は、抽出されるべき非線オブジェクトの中心から最も遠い点であり、第2の開始点は、非線オブジェクトの境界上で、第1の点から最も遠い点である。これは、第1の点で始まり第2の点で終わる1つの線と、第2の点で始まり第1の点で終わるもう一方の線との2つの線からなる単純な多角形を定義する。各線は抽出されるべき非線オブジェクトの境界の部分の概略を表し、ここで境界の当該部分は、線の始まりと終わりの間を時計回りの方向に移動することによって発見される境界点によって構成される。次に、各線は、最も短い線の長さが到達されるまでさらなる2本の線に再帰的に分割される。一実施形態において、最も短い線の長さは4画素である。再帰的な分割操作において使用される分割点は、線が表す境界の部分上でその線から最も遠い点である。したがって、各線の両方の終端点は非線オブジェクトの境界上にあり、各線は抽出されるべき非線オブジェクトの境界の部分を表す。ステップ2120の間に形成された線の全てはメモリ2506に記憶され、それぞれの線が当該線がそれらの2本の線に分割される2本の線の親であるツリー構造で表される。
次のステップ2130において、ツリー中の各線に対して重要性の尺度が与えられる。一実施形態において、重要性は、線の長さを、その線が表すオブジェクトの境界の部分上の最も遠い点の当該線からの距離で割ったものとして定義される。一実施形態において、最も遠い点の距離は、当該距離が短すぎる場合には最小値まで増加される。一実施形態において、最小値は1画素の距離である。
方法2100は、次のステップ2140において、メモリ2506内に構成されるリストに主要な線が書き込まれ、処理を終了する。主要な線とは、ツリー内のそれらの線よりも下の全ての線よりも高い重要性を有する線を示す。多角形の形態でオブジェクトの境界全体を表す主要な線の順序付けられた組が形成され、多角形作成ステップ1230が完了する。
ステップ1660において、開いている線の終端に関する線の終端のスタイルを判定する方法2200が実行される。ここで方法2200について、図22を参照して詳細に説明する。方法2200において、ビットマップ中のオブジェクトが、開いている線の終端に対応する線の終端のスタイルを発見するために、線オブジェクトのベクトルが削除された後に解析される。ベクトル化の前のビットマップの例示が図23(a)に示され、ベクトル化の後のビットマップの例示が図23(b)に示される。図23(a)に示すように、ベクトル化前の画像は、角丸四角形線オブジェクト2340に取り付けられた通常の矢印を有する線の終端のスタイルを有する線オブジェクト2310、鋭い矢印を有する線の終端のスタイルを有する線オブジェクト2320、及び円形の終端のスタイルを有する線の終端のスタイルを有する線オブジェクト2330の3つの線オブジェクトを含む。図23(b)に示すように、ベクトル化の後、これらの線オブジェクトの線の構成要素が削除されて、元の3つの線の終端のスタイル2350から2370に対応する残りの形状オブジェクトが残される。通常、これらの残りの形状は、非線形制御パラメータを有していない単純なテンプレート形状のオブジェクトとみなされる。例えば、通常の矢印2320の先端(即ち、通常の矢尻)が二等辺三角形にマッチングされる一方で、円形の矢尻が円形のテンプレートにマッチングされる。
方法2200は、残りのビットマップを処理して線の終端のスタイルを判定する。方法2200は、ステップ2210において始まり、ここではビットマップ上の次のオブジェクトが選択される。次にステップ2220において、プロセッサ2505が次の線の終端のスタイルであるテンプレート形状の候補を選択し、続いてステップ2230において、現在のオブジェクトを上述のように方法1800に従って現在のテンプレート形状に適合させる。
次のステップ2240において、さらに線の終端のスタイルであるテンプレート形状の候補が存在する場合、方法2200はステップ2220に戻る。さらなる線の終端のスタイルであるテンプレート形状の候補が存在しない場合、方法2200はステップ2250において継続する。
ステップ2250において、最良の候補テンプレート形状が選択され、当該最良の候補テンプレート形状が許容できるかどうかを判定するために、ステップ2260においてこのテンプレート形状が閾値と比較される。この閾値は、90%の適合スコア(即ち、f>0.9)であることが望ましい。テンプレート形状が許容可能である場合、方法2200はステップ2265に続く。テンプレート形状が許容可能でない場合、方法2200はステップ2295に直接続く。
ステップ2265において、少なくとも1つの終端に記憶された線の終端のスタイルを現在有していない次の開いた線オブジェクトが選択される。続いて、ステップ2270において、適合された線の終端のスタイルのテンプレート形状が、まだ線の終端のスタイルを有していない現在の線オブジェクトの終端にマッチングされる。次にステップ2275において、現在の終端のスタイルのテンプレート形状と現在の線の終端との間のマッチングが許容可能な場合、方法2200はステップ2290に進む。マッチングが許容可能でない場合、方法2200はステップ2280に進む。適合されたテンプレート形状に対する閾値距離内に線の終端点が位置付けられ、線の終端点から、当該線の終端点における線に対する局所的な垂線に沿って射影された適合されたテンプレート形状の重心までの距離が第2の閾値未満であり、テンプレート形状の適合の方向と線の終端点における線の角度との間の角度の差の絶対値が第3の閾値未満である場合に、マッチングは許容可能とみなされる。これらの3つの閾値は、それぞれ線幅の2倍、線幅の2分の1、及び10度によって与えられることが望ましい。
ステップ2290において、プロセッサ2505は線の終端のスタイルを記憶し、マッチングされたものとして現在のビットマップオブジェクトに印を付け、続いて方法2200はステップ2295に続く。一方、マッチングが許容可能でない場合、方法2200はステップ2280に続く。記憶されたスタイルを有していない少なくとも1つの終端を有するさらなる開いた線が存在する場合、ステップ2280から、方法2200はステップ2265に戻る。さらなる開いた線が存在しない場合、方法2200はステップ2295に続く。処理されるべきさらなるオブジェクトが存在する場合、ステップ2295から、方法2200はステップ2210に戻る。さらなるオブジェクトが存在しない場合、線の終端のスタイルの方法2200は終了する。
ステップ1850において、グラフィカルオブジェクトに一致するようにテンプレート形状を修正することに使用するための回転パラメータ及び拡大縮小パラメータを決定する方法2400が実行される。ここで方法2400について、図24を参照して説明する。方法2400は、拡大縮小パラメータ(s及びs)、及び回転θをより詳細に推定する。これらのパラメータは、現在のグラフィカルオブジェクトの特徴の組を使用して推定される。例示的な実施形態において、拡大縮小パラメータは、回転に対して不変である中心幾何学モーメントの組合せを使用して推定されてもよい。{m00,m20,m02}及び
Figure 2008171411
は、それぞれ未変換のテンプレート形状の中心幾何学モーメントの組と、グラフィカルオブジェクトの中心幾何学モーメントの組とを表すものとする。s及びsによって表される拡大縮小パラメータは、以下の式(12)、(13)に従って決定される。
Figure 2008171411
ステップ2410において、式(12)、(13)を満たす拡大縮小パラメータの絶対値に関する2組の解が、式(15)、(16)、(17)、及び(18)に従って決定される。
Figure 2008171411
いったん拡大縮小パラメータに対して2組の解が見つけられると、次のステップ2420において、プロセッサ2505は回転角に関する値を決定する。
例示的な実施形態において、基本的な回転角を決定するために4次のツェルニケモーメントが使用されてもよい。ツェルニケモーメントは、形状検出に使用される(実部及び虚部を含む)複素形状記述子である。4次のツェルニケモーメントは、式(19)、(20)に従って0次、2次、及び4次の中心幾何学モーメントによって表される。
Figure 2008171411
pqは未変換のテンプレート形状の中心幾何学モーメントを表すものとし、m’pqはそれぞれx軸及びy軸に沿ってs及びsによって拡大縮小した後のテンプレート形状の中心幾何学モーメントを表すものとし、
Figure 2008171411
はグラフィカルオブジェクトの中心幾何学モーメントを表すものとする。同様に、z’4n及び
Figure 2008171411
(n=2,4)は、拡大縮小されたテンプレート形状の4次ツェルニケモーメントとグラフィカルオブジェクトの4次ツェルニケモーメントとをそれぞれ表す。
例示的な実施形態において、使用される回転角は式(21)の根である。
Figure 2008171411
Figure 2008171411
Figure 2008171411
式(21)は、式(22)、(23)、(24)、及び(25)に従って形状のモーメントと形状の回転との間の関係を使用して
Figure 2008171411
(ここで、c=cosθ及びs=sinθ)式(26)の極小値を発見することによって導出される。
Figure 2008171411
式(21)の解は、拡大縮小パラメータの絶対値に関する解のそれぞれに対してθに関する基本的な回転角を与える。θの各値に関して、そのとき、以下の符号付きの拡大縮小パラメータに関する4つの解に対応して追加される最大4つの解が存在する。
{s,s},{s,−s},{−s,s},{−s,−s
及びsの両方の負数を取るものは180度の回転と異なり、当該オプションは以下のように書かれてもよい。
{s,|s|,θ},
{s,|s|,θ+π},
{s,−|s|,θ},
{s,−|s|,θ+π}
x又はy対称性を有するテンプレート形状に関して、s及びsの負数はテンプレート形状にいかなる効果も持たず、したがってそれらの可能性は無視されてもよい。また、180度回転対称性を有するテンプレート形状は、回転された可能性を考慮する必要がない。両方の種類の対称性を有するテンプレート形状は、それぞれの基本的な角度に対して1つの解の可能性のみを必要とする。
方法2400は、次のステップ2430において終了し、ここでは上述のようにθの各値に対する解の全てがリストに追加される。ステップ1870において、適合スコアに基づいて最良の解が決定される。
説明された方法において使用されるテンプレート形状は、Microsoft(商標)AutoShapeアプリケーションによって定義されたテンプレート形状のうちの1つであってよい。テンプレート形状は、Writer(商標)及びImpress(商標)などのOpenOffice.org編集アプリケーションによって定義されたテンプレート形状のうちの1つであってもよい。さらに、テンプレート形状は、VISIO(商標)編集アプリケーションによって定義されたテンプレート形状のうちの1つであってもよい。その上さらに、テンプレート形状は、SmartDraw.comによって開発されたSmart Draw(商標)編集アプリケーションによって定義されたテンプレート形状のうちの1つであってもよい。
説明された構成がコンピュータ及びデータ処理産業に適用可能であることは上述の内容から明らかである。
上述の内容は本発明のいくつかの実施形態のみを説明するが、本発明の範囲及び精神を逸脱することなくそれらの実施形態に修正及び/又は変更がなされることができ、それらの実施形態は例示的であって、限定的ではない。
本明細書の文脈において、用語「含む(comprising)」は、「主に、しかし必ずしもそれ単独でなく含む(including)」、又は「持つ」もしくは「含む(including)」を意味し、「〜のみからなる(consisting only of)」を意味しない。「含む(comprise)」及び「含む(comprises)」などの用語「含む(comprising)」の変化形は、対応して変化した意味を持つ。
以下に記載する付録Aは、図27(a)及び(b)のMicrosoft(商標)AutoShapesのそれぞれの名称をそれらの図形の参照とともに一覧にする表である。
付録A
形状の名称 参照番号

四角形 27001
角丸四角形 27002
楕円 27003
菱形 27004
二等辺三角形 27005
直角三角形 27006
平行四辺形 27007
台形 27008
六角形 27009
八角形 27010
プラス記号 27011
星 27012
矢印 27013
太い矢印 27014
ホームベース 27015
吹き出し 27016
シール 27017
ブローチ 27018
山形 27019
五角形 27020
8角シール 27021
16角シール 27022
32角シール 27023
くさび四角形コールアウト 27024
くさび角丸四角形コールアウト 27025
くさび楕円コールアウト 27026
波形 27027
左矢印 27028
下矢印 27029
上矢印 27030
左右矢印 27031
上下矢印 27032
不規則シール1 27033
不規則シール2 27034
稲妻 27035
ハート 27036
四方向矢印 27037
左矢印コールアウト 27038
右矢印コールアウト 27039
上矢印コールアウト 27040
下矢印コールアウト 27041
左右矢印コールアウト 27042
上下矢印コールアウト 27043
四方向矢印コールアウト 27044
左上矢印 27045
上屈折矢印 27046
屈折矢印 27047
24角シール 27048
V字型右矢印 27049
ブロックアーク 27050
環状矢印 27051
Uターン矢印 27052
フローチャートプロセス 27053
フローチャート判断 27054
フローチャート入出力 27055
フローチャート書類 27056
フローチャート端子 27057
フローチャート準備 27058
フローチャート手操作入力 27059
フローチャート手作業 27060
フローチャート結合子 27061
フローチャートせん孔カード 27062
フローチャートせん孔テープ 27063
フローチャート抜き出し 27064
フローチャート組合せ 27065
フローチャートオンライン記憶 27066
フローチャート磁気テープ 27067
フローチャート表示 27068
フローチャート遅延 27069
フローチャート代替処理 27070
フローチャート他ページ結合子 27071
左右上矢印 27072
月 27073
4角シール 27074
二重波形 27075
立方体 27076
缶 27077
ドーナツ 27078
リボン 27079
リボン2 27080
禁煙 27081
折り返された角 27082
面取り 27083
ストライプ右矢印 27084
縦巻き 27085
横巻き 27086
右カーブ矢印 27087
左カーブ矢印 27088
上カーブ矢印 27089
下カーブ矢印 27090
雲コールアウト 27091
楕円リボン 27092
楕円リボン2 27093
フローチャート定義済み処理 27094
フローチャート内部記憶 27095
フローチャート複数書類 27096
フローチャート和接合 27097
フローチャート論理和 27098
フローチャート照合 27099
フローチャート分類 27100
フローチャートオフィス記憶 27101
フローチャート磁気ディスク 27102
フローチャート磁気ドラム 27103
太陽 27104
概括的な線多角形を示す図である。 直線コネクタ及び屈曲コネクタによって接続された1組のテンプレート形状を示す図である。 テンプレート形状のうちの1つが移動された図2(a)と同じ1組のテンプレート形状を示す図である。 テンプレート形状のうちの1つが移動された図2(a)と同じ1組のテンプレート形状を示す図である。 1組の塗り潰されていないテンプレート形状を示す図である。 ドキュメント内で通常見られるいくつかのテンプレート形状の例を示す図である。 テンプレート形状の拡大縮小s及びs、回転θ、並びにオフセットΔx及びΔyのアフィンパラメータが修正されるにつれて変化する五角形テンプレート形状を示す図である。 三角形の傾斜パラメータが修正されるにつれて取得されるいくつかの異なる三角形を示す図である。 1つの制御パラメータを有する1組のテンプレート形状の例を示す図である。 2つの制御パラメータを有する1組のテンプレート形状の例を示す図である。 2つの制御パラメータを有するテンプレート形状の例の別の組を示す図である。 角丸長方形テンプレート形状の拡大縮小が修正されるときの角丸長方形テンプレート形状を示す図である。 左から右に向かって増加する線幅パラメータの組を有する塗り潰されていない六角形テンプレート形状を示す図である。 修正可能なテンプレート形状(即ち、閉じた形態の非テキストのテンプレート形状)を含むドキュメントを作成する方法を示すフローチャートである。 グラフィックス領域内のグラフィカルオブジェクトを特定(又は検出)するためにグラフィックス領域を解析する方法を示すフローチャートである。 検出されたグラフィカルオブジェクトを予め定められたテンプレート形状とマッチングする方法を示すフローチャートである。 線オブジェクトを解析する方法を示すフローチャートである。 テンプレート形状及び2つの開いた線オブジェクトを示す図である。 予め定められた分割色マスク/レイヤから開いた線オブジェクト及び閉じた線オブジェクトをベクトルとして抽出する方法を示すフローチャートである。 グラフィカルオブジェクトに対する1組の候補テンプレート形状を決定する方法を示すフローチャートである。 グラフィカルオブジェクトに一致するように候補テンプレート形状を修正するための1組のパラメータを決定する方法を示すフローチャートである。 グラフィカルオブジェクトに一致するようにテンプレート形状を変換する最適な制御パラメータ値を決定する方法を示すフローチャートである。 編集可能なドキュメントを作成する方法を示すフローチャートである。 非線オブジェクトを抽出する方法を示すフローチャートである。 開いた線の終端に関する線の終端のスタイルを判定する方法を示すフローチャートである。 ベクトル化の前のビットマップの一例を示す図である。 ベクトル化の後のビットマップの一例を示す図である。 グラフィカルオブジェクトに一致するようにテンプレート形状を修正することに使用するための回転パラメータ及び拡大縮小パラメータを決定する方法を示すフローチャートである。 説明された構成がそのコンピュータ上で実施される多目的コンピュータの概略構成図である。 屈曲コネクタの分類の一例を示す図である。 Microsoft(商標)AutoShapesの抜粋を示す図である。
符号の説明
500:五角形テンプレート形状
501:テンプレート形状
502:テンプレート形状
503:テンプレート形状
504:三角形
505:三角形
506:三角形
507:三角形
600:1つの制御パラメータを有するテンプレート形状の例の組
601:1つの制御パラメータを有するテンプレート形状の例、角丸四角形
602:1つの制御パラメータを有するテンプレート形状の例、角丸四角形
603:1つの制御パラメータを有するテンプレート形状の例、角丸四角形
604:1つの制御パラメータを有するテンプレート形状の例、角丸四角形
605:1つの制御パラメータを有するテンプレート形状の例、台形
606:1つの制御パラメータを有するテンプレート形状の例、台形
607:1つの制御パラメータを有するテンプレート形状の例、台形
608:1つの制御パラメータを有するテンプレート形状の例、台形
609:1つの制御パラメータを有するテンプレート形状の例、六角形
610:1つの制御パラメータを有するテンプレート形状の例、六角形
611:1つの制御パラメータを有するテンプレート形状の例、六角形
612:1つの制御パラメータを有するテンプレート形状の例、六角形
613:1つの制御パラメータを有するテンプレート形状の例、八角形
614:1つの制御パラメータを有するテンプレート形状の例、八角形
615:1つの制御パラメータを有するテンプレート形状の例、八角形
616:1つの制御パラメータを有するテンプレート形状の例、八角形
617:1つの制御パラメータを有するテンプレート形状の例、16角シール
618:1つの制御パラメータを有するテンプレート形状の例、16角シール
619:1つの制御パラメータを有するテンプレート形状の例、16角シール
620:1つの制御パラメータを有するテンプレート形状の例、16角シール
621:1つの制御パラメータを有するテンプレート形状の例、月形
622:1つの制御パラメータを有するテンプレート形状の例、月形
623:1つの制御パラメータを有するテンプレート形状の例、月形
624:1つの制御パラメータを有するテンプレート形状の例、月形
700:2つの制御パラメータを有するテンプレート形状の例の組
701:2つの制御パラメータを有するテンプレート形状の例、矢印
702:2つの制御パラメータを有するテンプレート形状の例、矢印
703:2つの制御パラメータを有するテンプレート形状の例、矢印
704:2つの制御パラメータを有するテンプレート形状の例、矢印
705:2つの制御パラメータを有するテンプレート形状の例、矢印
706:2つの制御パラメータを有するテンプレート形状の例、矢印
707:2つの制御パラメータを有するテンプレート形状の例、矢印
708:2つの制御パラメータを有するテンプレート形状の例、矢印
709:2つの制御パラメータを有するテンプレート形状の例、矢印
710:2つの制御パラメータを有するテンプレート形状の例、矢印
711:2つの制御パラメータを有するテンプレート形状の例、矢印
712:2つの制御パラメータを有するテンプレート形状の例、矢印
713:2つの制御パラメータを有するテンプレート形状の例、矢印
714:2つの制御パラメータを有するテンプレート形状の例、矢印
715:2つの制御パラメータを有するテンプレート形状の例、矢印
716:2つの制御パラメータを有するテンプレート形状の例、矢印
800:2つの制御パラメータを有するテンプレート形状の例の組
801:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
802:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
803:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
804:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
805:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
806:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
807:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
808:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
809:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
810:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
811:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
812:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
813:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
814:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
815:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
816:2つの制御パラメータを有するテンプレート形状の例、角丸コールアウト
910:角丸長方形テンプレート形状
920:角丸長方形形状
1001:六角形テンプレート形状
1510:テンプレート形状
1520:接続点
1530:接続点
1540:接続点
1550:接続点、満足できる接続点
1560:終端の効果を有していない1つの開いた線オブジェクト
1570:一方の終端に矢尻形状を有する1つの開いた線オブジェクト
2310:通常の矢印を有する線の終端のスタイルを有する線オブジェクト
2320:鋭い矢印を有する線の終端のスタイルを有する線オブジェクト、通常の矢印
2330:円形の終端のスタイルを有する線の終端のスタイルを有する線オブジェクト
2340:角丸四角形線オブジェクト
2350:線の終端のスタイル
2360:線の終端のスタイル
2370:線の終端のスタイル
2500:コンピュータシステム
2501:コンピュータモジュール
2502:キーボード
2503:マウスポインタデバイス、マウス
2504:バス
2505:プロセッサユニット、プロセッサ
2506:メモリユニット、半導体メモリ
2507:オーディオビデオインターフェース
2508:インターフェース
2509:記憶装置
2510:ハードディスクドライブ(HDD)
2511:ローカルネットワークインターフェース
2512:光ディスクドライブ、ドライブ
2513:入力/出力(I/O)インターフェース
2514:ディスプレイデバイス、ビデオディスプレイ、ディスプレイ
2515:プリンタ
2516:外付け変調復調装置(モデム)トランシーバデバイス、モデム、外付けモデム
2517:スピーカ
2520:通信ネットワーク、ネットワーク
2521:接続
2522:ローカルコンピュータネットワーク
2523:接続
2524:接続
2525:広域ネットワーク
2601:部分
2610:線オブジェクト
2620:線オブジェクト
2630:点、第1の点
2640:点
2650:点
2660:点、最後の点
2670:点、第2の点
2680:点

Claims (16)

  1. 編集可能なドキュメントを作成する方法であって、
    a.少なくとも1つのグラフィカルオブジェクトのビットマップ表現及び線オブジェクトのビットマップ表現を検出するためにビットマップ画像を解析するステップと、
    b.前記グラフィカルオブジェクトを、1つ以上の予め定められた不連続な接続点を有する複数の予め定められたテンプレート形状のうちの1つとマッチングするステップと、
    c.前記線オブジェクトの少なくとも1つの終端が前記予め定められた接続点のうちの1つの予め定められた距離内にある場合に前記線オブジェクトに対して前記予め定められた接続点のうちの1つを選択するステップと、
    d.前記線オブジェクトを前記選択された接続点と関連付けるステップと、
    e.前記テンプレート形状に接続された前記線オブジェクトとともに前記テンプレート形状を含む編集可能なドキュメントを作成するステップと
    を含み、
    前記線オブジェクトは、前記ドキュメント内で前記テンプレート形状が修正されると、前記選択された接続点と関連付けられたままであり、その結果、前記テンプレート形状に動的に接続されたままであることを特徴とする方法。
  2. 前記複数のテンプレート形状のうちの1つは、1組のテンプレート形状から選択された1組の候補テンプレート形状であることを特徴とする請求項1に記載の方法。
  3. 前記候補テンプレート形状は、機械学習分類器を用いて選択されることを特徴とする請求項2に記載の方法。
  4. 前記マッチングする前記ステップ(b)は、
    最適な組の制御パラメータを推定するステップと、
    前記グラフィカルオブジェクト及び前記推定された制御パラメータに基づいて、最適な組のアフィンパラメータを推定するステップと、
    前記グラフィカルオブジェクトと、前記推定されたアフィンパラメータ及び前記制御パラメータを使用する前記テンプレート形状との間の一致スコアを計算するステップと
    を含むことを特徴とする請求項1に記載の方法。
  5. 前記線オブジェクトを分類するステップをさらに含むことを特徴とする請求項1に記載の方法。
  6. 前記線オブジェクトが屈曲コネクタとして分類されることを特徴とする請求項1に記載の方法。
  7. 前記線オブジェクトが直線コネクタとして分類されることを特徴とする請求項1に記載の方法。
  8. 前記テンプレート形状のそれぞれが有限の接続点の組を有することを特徴とする請求項1に記載の方法。
  9. 前記テンプレート形状が最大で4つの制御パラメータを含むことを特徴とする請求項1に記載の方法。
  10. 前記グラフィカルオブジェクトに一致するように、少なくとも1つの修正可能な閉じた形態である非テキストの前記テンプレート形状を修正するステップをさらに含むことを特徴とする請求項1に記載の方法。
  11. 前記テンプレート形状は、Microsoft AutoShapesのうちの1つであることを特徴とする請求項1に記載の方法。
  12. 前記テンプレート形状は、OpenOffice(商標)アプリケーションによって定義されたテンプレート形状のうちの1つであることを特徴とする請求項1に記載の方法。
  13. 前記テンプレート形状は、VISIO(商標)アプリケーションによって定義されたテンプレート形状のうちの1つであることを特徴とする請求項1に記載の方法。
  14. 前記テンプレート形状は、SMART DRAW(商標)アプリケーションによって定義されたテンプレート形状のうちの1つであることを特徴とする請求項1に記載の方法。
  15. 編集可能なドキュメントを作成する装置であって、
    少なくとも1つのグラフィカルオブジェクトのビットマップ表現及び線オブジェクトのビットマップ表現を検出するためにビットマップ画像を解析する解析手段と、
    前記グラフィカルオブジェクトを、1つ以上の予め定められた不連続な接続点を有する複数の予め定められたテンプレート形状のうちの1つとマッチングするマッチング手段と、
    前記線オブジェクトの少なくとも1つの終端が前記予め定められた接続点のうちの1つの予め定められた距離内にある場合に前記線オブジェクトに対して前記予め定められた接続点のうちの1つを選択する選択手段と、
    前記線オブジェクトを前記選択された接続点と関連付ける関連付け手段と、
    前記テンプレート形状に接続された前記線オブジェクトとともに前記テンプレート形状を含む編集可能なドキュメントを作成する作成手段と、
    を備え、
    前記線オブジェクトは、前記ドキュメント内で前記テンプレート形状が修正されると、前記選択された接続点と関連付けられたままであり、その結果、前記テンプレート形状に動的に接続されたままであることを特徴とする装置。
  16. 編集可能なドキュメントを作成するための手順をコンピュータに実行させるプログラムを記憶したコンピュータ読み取り可能な記憶媒体であって、
    前記プログラムは、
    少なくとも1つのグラフィカルオブジェクトのビットマップ表現及び線オブジェクトのビットマップ表現を検出するためにビットマップ画像を解析するステップと、
    前記グラフィカルオブジェクトを、1つ以上の予め定められた不連続な接続点を有する複数の予め定められたテンプレート形状のうちの1つとマッチングするステップと、
    前記線オブジェクトの少なくとも1つの終端が前記予め定められた接続点のうちの1つの予め定められた距離内にある場合に前記線オブジェクトに対して前記予め定められた接続点のうちの1つを選択するステップと、
    前記線オブジェクトを前記選択された接続点と関連付けるステップと、
    前記テンプレート形状に接続された前記線オブジェクトとともに前記テンプレート形状を含む編集可能なドキュメントを作成するステップと、
    を含み、
    前記線オブジェクトは、前記ドキュメント内で前記テンプレート形状が修正されると、前記選択された接続点と関連付けられたままであり、その結果、前記テンプレート形状に動的に接続されたままであることを特徴とする記憶媒体。
JP2007322566A 2006-12-13 2007-12-13 動的なコネクタ解析のための方法、装置及び記憶媒体 Expired - Fee Related JP4623676B2 (ja)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
AU2006252019A AU2006252019B2 (en) 2006-12-13 2006-12-13 Method and Apparatus for Dynamic Connector Analysis

Publications (2)

Publication Number Publication Date
JP2008171411A true JP2008171411A (ja) 2008-07-24
JP4623676B2 JP4623676B2 (ja) 2011-02-02

Family

ID=39526582

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2007322566A Expired - Fee Related JP4623676B2 (ja) 2006-12-13 2007-12-13 動的なコネクタ解析のための方法、装置及び記憶媒体

Country Status (3)

Country Link
US (1) US7991233B2 (ja)
JP (1) JP4623676B2 (ja)
AU (1) AU2006252019B2 (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011018338A (ja) * 2009-07-10 2011-01-27 Palo Alto Research Center Inc スキャンされた文書画像内の前景画素群の連結グループをマーキング種類に基づき分類する方法及びシステム
JP2012190455A (ja) * 2011-03-08 2012-10-04 Canon Inc 編集可能な文書生成のための形状のパラメータ化

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AU2006252025B2 (en) * 2006-12-13 2012-10-04 Canon Kabushiki Kaisha Recognition of parameterised shapes from document images
US8780143B2 (en) * 2009-02-19 2014-07-15 Samsung Electronics Co., Ltd Display method and apparatus for controlling brightness of projector light source
AU2009251018C1 (en) * 2009-12-17 2013-07-25 Canon Kabushiki Kaisha Generating object representation from bitmap image
JP5465015B2 (ja) * 2010-01-06 2014-04-09 キヤノン株式会社 文書を電子化する装置及び方法
JP2011154636A (ja) * 2010-01-28 2011-08-11 Canon Inc レンダリングシステム、データの最適化方法、及びプログラム
WO2011095234A1 (en) 2010-02-04 2011-08-11 Tomtom Development Germany Gmbh Location-determining system and method
US9367201B2 (en) 2011-11-30 2016-06-14 Microsoft Technology Licensing, Llc Graphic flow having unlimited number of connections between shapes
GB2531551A (en) * 2014-10-21 2016-04-27 Ibm Generating a computer executable chart visualization by annotating a static image of said visualization
US9767122B2 (en) 2015-01-27 2017-09-19 Splunk Inc. Efficient point-in-polygon indexing technique to facilitate displaying geographic data
US9836874B2 (en) 2015-01-27 2017-12-05 Splunk Inc. Efficient polygon-clipping technique to reduce data transfer requirements for a viewport
US9916326B2 (en) 2015-01-27 2018-03-13 Splunk, Inc. Efficient point-in-polygon indexing technique for facilitating geofencing operations
US9607414B2 (en) 2015-01-27 2017-03-28 Splunk Inc. Three-dimensional point-in-polygon operation to facilitate displaying three-dimensional structures
US10026204B2 (en) 2015-01-27 2018-07-17 Splunk Inc. Efficient point-in-polygon indexing technique for processing queries over geographic data sets
KR102739626B1 (ko) * 2018-12-07 2024-12-06 팅크웨어(주) 차선 내 안내 정보 추출을 통한 경로 안내 방법 및 이를 수행하는 전자 기기
CN110390668B (zh) * 2019-06-26 2022-02-01 石家庄铁道大学 螺栓松动检测方法、终端设备及存储介质
CN111063015B (zh) * 2019-12-13 2023-07-21 重庆首厚智能科技研究院有限公司 一种高效绘制点位的方法及系统
US11087124B1 (en) * 2020-09-24 2021-08-10 Fmr Llc Systems and methods for digital document field location identification
CN114582301B (zh) * 2022-03-08 2024-07-23 康键信息技术(深圳)有限公司 一种信息显示方法、装置、电子设备及存储介质

Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01119875A (ja) * 1987-11-02 1989-05-11 Matsushita Electric Ind Co Ltd シンボル構成要素分離抽出装置
JPH02181270A (ja) * 1989-01-05 1990-07-16 Nippon Telegr & Teleph Corp <Ntt> 画像検索方法
JPH03250374A (ja) * 1990-02-28 1991-11-08 Hitachi Ltd 図形編集方法および装置
JPH0652243A (ja) * 1992-07-30 1994-02-25 Toshiba Corp 図面入力・処理装置
JPH0660136A (ja) * 1992-08-12 1994-03-04 Toshiba Corp 図面編集装置
JPH10111933A (ja) * 1996-10-03 1998-04-28 Meidensha Corp 線分の編集処理方法
JP2005074562A (ja) * 2003-08-29 2005-03-24 Sony Corp ロボット装置、ロボット装置の制御方法、及び記録媒体
JP2005228131A (ja) * 2004-02-13 2005-08-25 Fujitsu Ltd 図面照合装置

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5452371A (en) * 1992-05-27 1995-09-19 Apple Computer, Inc. Method of aligning shapes on a display of a computer system
JP3250374B2 (ja) 1994-05-31 2002-01-28 富士電機株式会社 トリハロメタン自動分析計
US5715331A (en) * 1994-06-21 1998-02-03 Hollinger; Steven J. System for generation of a composite raster-vector image
US6094508A (en) * 1997-12-08 2000-07-25 Intel Corporation Perceptual thresholding for gradient-based local edge detection
JP4235286B2 (ja) * 1998-09-11 2009-03-11 キヤノン株式会社 表認識方法及び装置
US7107453B2 (en) * 2000-05-25 2006-09-12 Hewlett-Packard Development Company, L.P. Authenticatable graphical bar codes
US6658147B2 (en) * 2001-04-16 2003-12-02 Parascript Llc Reshaping freehand drawn lines and shapes in an electronic document
US7139004B2 (en) * 2002-01-25 2006-11-21 Xerox Corporation Method and apparatus to convert bitmapped images for use in a structured text/graphics editor
US7136082B2 (en) 2002-01-25 2006-11-14 Xerox Corporation Method and apparatus to convert digital ink images for use in a structured text/graphics editor
US20040083434A1 (en) * 2002-10-24 2004-04-29 Catherine Fitch System and method for selectively formatting and outputting handwritten notes and drawings
US7352902B2 (en) * 2003-09-24 2008-04-01 Microsoft Corporation System and method for detecting a hand-drawn object in ink input
US7324691B2 (en) * 2003-09-24 2008-01-29 Microsoft Corporation System and method for shape recognition of hand-drawn objects
US7358978B2 (en) * 2004-08-13 2008-04-15 Microsoft Corporation Perceptually based approach for planar shape morphing
US7729538B2 (en) * 2004-08-26 2010-06-01 Microsoft Corporation Spatial recognition and grouping of text and graphics
US7515752B2 (en) * 2004-08-27 2009-04-07 Corel Corporation Sketch recognition and enhancement
US7409088B2 (en) * 2004-09-21 2008-08-05 Microsoft Corporation System and method for connectivity-based recognition of a hand-drawn chart in ink input
US7400771B2 (en) * 2004-09-21 2008-07-15 Microsoft Corporation System and method for connected container recognition of a hand-drawn chart in ink input
US7394935B2 (en) * 2004-09-21 2008-07-01 Microsoft Corporation System and method for editing a hand-drawn chart in ink input
WO2006102305A2 (en) * 2005-03-21 2006-09-28 Purdue Research Foundation Sketch beautification

Patent Citations (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH01119875A (ja) * 1987-11-02 1989-05-11 Matsushita Electric Ind Co Ltd シンボル構成要素分離抽出装置
JPH02181270A (ja) * 1989-01-05 1990-07-16 Nippon Telegr & Teleph Corp <Ntt> 画像検索方法
JPH03250374A (ja) * 1990-02-28 1991-11-08 Hitachi Ltd 図形編集方法および装置
JPH0652243A (ja) * 1992-07-30 1994-02-25 Toshiba Corp 図面入力・処理装置
JPH0660136A (ja) * 1992-08-12 1994-03-04 Toshiba Corp 図面編集装置
JPH10111933A (ja) * 1996-10-03 1998-04-28 Meidensha Corp 線分の編集処理方法
JP2005074562A (ja) * 2003-08-29 2005-03-24 Sony Corp ロボット装置、ロボット装置の制御方法、及び記録媒体
JP2005228131A (ja) * 2004-02-13 2005-08-25 Fujitsu Ltd 図面照合装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2011018338A (ja) * 2009-07-10 2011-01-27 Palo Alto Research Center Inc スキャンされた文書画像内の前景画素群の連結グループをマーキング種類に基づき分類する方法及びシステム
JP2012190455A (ja) * 2011-03-08 2012-10-04 Canon Inc 編集可能な文書生成のための形状のパラメータ化

Also Published As

Publication number Publication date
AU2006252019B2 (en) 2012-06-28
US7991233B2 (en) 2011-08-02
US20080143735A1 (en) 2008-06-19
AU2006252019A1 (en) 2008-07-03
JP4623676B2 (ja) 2011-02-02

Similar Documents

Publication Publication Date Title
JP4594372B2 (ja) ドキュメント画像からのパラメータ化された形状の認識方法
JP4623676B2 (ja) 動的なコネクタ解析のための方法、装置及び記憶媒体
US8849032B2 (en) Shape parameterisation for editable document generation
US8917935B2 (en) Detecting text using stroke width based text detection
US8548253B2 (en) Fast line linking
WO2021072879A1 (zh) 证件中的目标文本提取方法、装置、设备及可读存储介质
CN110717492B (zh) 基于联合特征的图纸中字符串方向校正方法
JPH08305803A (ja) 文字テンプレートセット学習マシン動作方法
KR20190095651A (ko) 문자 학습 트레이닝 데이터 생성 장치 및 그 방법
WO2020248497A1 (zh) 图片扫描件处理方法、装置、计算机设备及存储介质
JP2007287145A (ja) 形状比較装置および形状比較方法
CN113887375A (zh) 一种文本识别方法、装置、设备及存储介质
JP2010009509A (ja) 画像処理装置、画像処理方法およびそのプログラムならびに記憶媒体
CN115082935B (zh) 用于对文档图像进行矫正的方法、设备及存储介质
CN108241861A (zh) 一种数据可视化方法及设备
US12430724B2 (en) Autonomously removing scan marks from digital documents utilizing content-aware filters
US11055526B2 (en) Method, system and apparatus for processing a page of a document
JP2016103759A (ja) 画像処理装置、画像処理方法、及びプログラム
AU2014277851A1 (en) Detecting a gap between text columns from text line fragments
CN115147858A (zh) 手写体表单图像数据生成方法、装置、设备及介质
AU2007254666A1 (en) Recognition of overlapping shapes from document images
AU2015201663A1 (en) Dewarping from multiple text columns
US20250371652A1 (en) Structural image marking techniques for information security and source detection
US20260038125A1 (en) Ridge extraction for vector graphics synthesis
JPH10222688A (ja) 画像処理方法

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20100518

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20100604

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20100803

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

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20101029

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

Year of fee payment: 3

LAPS Cancellation because of no payment of annual fees