JP4353591B2 - グリフアドレスカーペット方法及び多次元アドレス空間の位置情報を提供する装置 - Google Patents

グリフアドレスカーペット方法及び多次元アドレス空間の位置情報を提供する装置 Download PDF

Info

Publication number
JP4353591B2
JP4353591B2 JP24653399A JP24653399A JP4353591B2 JP 4353591 B2 JP4353591 B2 JP 4353591B2 JP 24653399 A JP24653399 A JP 24653399A JP 24653399 A JP24653399 A JP 24653399A JP 4353591 B2 JP4353591 B2 JP 4353591B2
Authority
JP
Japan
Prior art keywords
code
address
glyph
line
dimensional
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP24653399A
Other languages
English (en)
Other versions
JP2000099257A (ja
JP2000099257A5 (ja
Inventor
エル ヘッチ デイビッド
エイ ジャレッド デイビッド
ノア フローレス エル
ジー スターンズ リチャード
エイチ ピー チャン ケネス
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xerox Corp
Original Assignee
Xerox Corp
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 Xerox Corp filed Critical Xerox Corp
Publication of JP2000099257A publication Critical patent/JP2000099257A/ja
Publication of JP2000099257A5 publication Critical patent/JP2000099257A5/ja
Application granted granted Critical
Publication of JP4353591B2 publication Critical patent/JP4353591B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K19/00Record carriers for use with machines and with at least a part designed to carry digital markings
    • G06K19/06Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code
    • G06K19/06009Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking
    • G06K19/06037Record carriers for use with machines and with at least a part designed to carry digital markings characterised by the kind of the digital marking, e.g. shape, nature, code with optically detectable marking multi-dimensional coding
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06KGRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
    • G06K7/00Methods or arrangements for sensing record carriers, e.g. for reading patterns
    • G06K7/10Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation
    • G06K7/14Methods or arrangements for sensing record carriers, e.g. for reading patterns by electromagnetic radiation, e.g. optical sensing; by corpuscular radiation using light without selection of wavelength, e.g. sensing reflected white light
    • G06K7/1404Methods for optical code recognition
    • G06K7/1439Methods for optical code recognition including a method step for retrieval of the optical code
    • G06K7/1443Methods for optical code recognition including a method step for retrieval of the optical code locating of the code in an image

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Electromagnetism (AREA)
  • Health & Medical Sciences (AREA)
  • Toxicology (AREA)
  • Artificial Intelligence (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • User Interface Of Digital Computer (AREA)
  • Character Discrimination (AREA)
  • Image Processing (AREA)

Description

【0001】
【発明の属する技術分野】
本発明は、多次元アドレス空間の構築に関し、より詳細には、かかるアドレス空間のセルフクロッキングアドレスカーペットグリフの具体化及びアドレスカーペットにおける方向の明確化(disambiguation)技術に関する。
【0002】
【従来の技術】
グリフはしばしば、2次元の、空間において周期的なセンタパタン(pattern of centers)に書き込まれた細長いスラッシュのようなグリフにより、所定の空間フォーマットルールに従って符号化される。この際、個々のグリフは、論理的「0」および「1」をそれぞれ符号化するために、垂直線の左右に約+45゜及び−45゜傾けられている。これらの単一ビットディジタル量の2つの論理状態に関し、グリフ符号が相互に直交することにより、符号の識別能力が十分に高められ、たとえ符号パタンが一般的に均一なグレイスケール外観を有するほど細かい粒子のセンタパタンで書き込まれている場合でも、埋め込まれた情報を回復させることができる。
【0003】
従来から、画像ドメインにアドレス空間を構成するという一般的な主題を扱う提案がなされている。例えば、アドレス空間は、循環擬似ノイズディジタルビットシーケンス(cyclical pseudo-noise digital bit sequences)(「PNシーケンス」と呼ぶこともある)と他のタイプの最大長さ(maximal length-like)ディジタルビットシーケンス(すなわち、Nビットごとのシーケンスが独自(unique)である、長さLのシーケンス)とを、2次元の空間周期的セルフクロッキンググリフコードパタンに符号化することにより構築できる。これら従来からの提案における統一テーマとして、以下の方法により2次元のアドレス空間を構築することが勧められている。すなわち、前記タイプの少なくとも2つのビットシーケンスを、これらのビットシーケンスが符号化されてグリフの各非平行ラインに沿って所定の方向に伝搬するように、前述のようなコードパタンにマッピングする方法である。
【0004】
ビットシーケンスをその主軸に位置合わせされたコードパタンにマッピングする必要はないことが示されているが、グリフの相対アドレスを標準的なデカルト座標(すなわち、グリフの単位で表される「x」及び「y」パラメータ)において決定するのに必要なコンピュータ操作を減らす目的で、このようなマッピングの使用は望ましいことが多い。さらに、これらのビットシーケンスの符号は、グリフコードパタンに完全又は部分的にまたがることもあるので、それら(ビットシーケンス)により提供されるアドレス指定は、その符号化の両方に投影されるグリフコードパタンの部分においてのみ有効であることを理解すべきである。さらに、前述のビットシーケンスは、単一又は断片的デューティー比(unitary or fractional duty ratios)で、これらの非平行ラインにおけるグリフにマッピングできるが、アドレス空間内でグリフの相対アドレスを算出することが望ましいアプリケーションでは、空間的に循環するマッピングが好ましいことが認識されている。
【0005】
最大ビット長さシーケンス(maximal bit length sequence)の各ビットは、そのシーケンスにおける所定の独自に決定可能な論理的位置に存在する。したがって、順序づけられた整数の指数(ordered index of integers)を一般的に用いて、シーケンス内のそれぞれの順序づけられた論理位置に基づきこれらのビットが互いに識別される。もちろん、位置に依存するこれらの指数を、かかるシーケンスのビットを符号化するグリフの選択的なアドレス指定に用いることもできる。しかしながら、これらのグリフまたは2次元グリフコードパタンに含まれる他の任意のグリフの空間的位置を独自に識別するには、少なくとも1つのさらなる次元が必要である。これらの個々のグリフの独自識別子は、グリフコードパタンにおいて個々のグリフが存在する独自の位置を識別するために、「絶対アドレス」と呼ばれる。
【0006】
すでに知られているように、前記のタイプのアドレス空間においてほぼすべての所与のグリフの空間アドレス(すなわち、絶対アドレス)は、少なくとも第1の近似値までは識別可能であるが、これは、所与のグリフの公称中心と各最大長さビットシーケンスを符号化する非平行ラインとの間のオフセット距離(もしあれば)を特定する距離(metric)により識別される。なお、これらのオフセットは、コードパタンの主軸に平行して測定され、グリフの単位で表される。規則的な方形のセンタ格子に書き込まれたセルフクロッキンググリフコードパタンの主軸に位置合わせされた直交ライン上のグリフにより最大長さシーケンスを符号化するアプリケーションにおいては、上述の距離は、標準デカルト座標システムにおける実質的な精度によって、所与のグリフの空間的位置を識別するx/y座標対に縮小される(reduce)。しかしながら、これらの最大ビット長さシーケンスが符号化されるライン上の交点は、これらの交点のいずれかにグリフがある場合には設計の選択自由度を制限する傾向がある。
【0007】
幅と高さの少なくともいずれかが予め定められたセンタの格子にグリフが書き込まれ、その結果、これらの次元の少なくとも1つに沿って、コードパタンの各ライン上に、既知の又は決定できる固定数のグリフが存在すれば、セルフクロッキンググリフコードパタンにおけるグリフの明確な空間的アドレス指定に対する上記の望ましくない限定を避けることができる。より具体的には、このようなコードパタンの特殊分類に対する解決法として、最大長さビットシーケンス(または、インターリーブされた、比較的主要な最大長さビットシーケンスの組み合わせ)をラスタのようなパタンでグリフに符号化することが提案されている。ラスタパタンは、論理的に順序づけられたシーケンスのビットを発生させるべく選択され、これによりビットシーケンスは、コードパタンの既知の寸法(例えば幅)に沿って端部から端部へ空間的に伝搬し、さらにコードパタンの他の寸法(例えば長さ)により緩やかに、例えば上から下への順序で伝搬する。このような、最大長さビットシーケンスのラスタ符号化は、ビットシーケンスを、コードパタンモジュール、すなわち既知の又は計算可能な数のグリフ(すなわち、コードパタンがその既知の寸法に沿って含むグリフの数)に、効果的に「まとめる」。したがって、コードパタン内の任意の所与グリフの空間アドレスは、ビットのシーケンス指数を既知のグリフカウント/ラインモジュールで割ることにより、グリフによって符号化されたビットのシーケンス指数から、x/y座標空間において求めることができる。
【0008】
【発明が解決しようとする課題】
ところが、空間的アドレス指定の問題の解決策であるこのようなラスタ符号化スタイルは、コードパタンの分類が制約されるだけでなく、コンピュータ操作上でもコストがかかる。この方法のコンピュータコストが上がるのは、最大長さビットシーケンスが独自でなければならないサブシーケンスのビット長さNが、扱われているアドレス空間の平方根の関数として定められる(scales)ためである。このスケーリングは、最大長さビットシーケンスの単一相(unique phase)(または「ビット指数位置」)の数がN2−1により求められるという事実に伴う結果である。
【0009】
したがって、論理的に順序づけられたアドレス情報を、セルフクロッキンググリフコードパタンの全ての又は一部のグリフに埋め込み、かかるコードパタンにおいて個々のグリフの独自の空間位置を、コンピュータ操作上より効率的に識別するためのよりフレキシブルな技術が明らかに望まれている。これらのコードパタンをN次元の空間においてパラメータ表示し、これらのアドレス空間またはその断片を使用して、2次元及び3次元の物体を階層的に識別することが望ましい。
【0010】
人間が解釈可能なファイルの文字による表示(textual representation)、図形表示、または文字と図形の混合表示であって、このユーザインターフェースを介してアクセス可能な表示が、このアドレス空間における各アドレスに対して重ねてまたは並べて空間的に記録される。これらの空間アドレスは、コンピュータにより認識可能な各ファイル名の記載と、必要であれば名前を付けたファイルのディレクトリへの経路とともに、ルックアップテーブルなどに論理的に記録される。
【0011】
【課題を解決するための手段】
本発明に係る装置は、知覚可能な印として媒体に設けられた知覚表示(1732)と、少なくとも前記知覚表示の周辺に配置された2次元の埋め込みアドレスコード(2110)と、前記2次元の埋め込みアドレスコードの一部分を読み取る読み取り装置(1710)と、前記読み取り装置により読み取られた前記一部分からその一部分の媒体上における位置を検出し、検出された位置に関連づけられた前記知覚表示を指定する個別のポインタに変換するトランスレータと、を含み、前記2次元埋め込みアドレスコードは、それぞれが1次元のアドレスコードの並びの行である、平行に配列された第1コード行、第2コード行、第3コード行、第4コード行を含み、前記第1コード行は第1の1次元アドレスコードの並びを含み、前記第2コード行は第1コード行に隣接し第2の1次元アドレスコードの並びを含み、前記第3コード行は前記第2コード行に隣接し前記第1の1次元アドレスコードの並びを前記第1コード行に対し右方向にずらして含み、前記第4コード行は前記第3コード行に隣接し前記第2の1次元アドレスコードの並びを前記第2コード行に対し左方向にずらして含み、前記一部分の読み取りに対し前記ポインタを発生することでユーザインターフェースとして機能する。
【0012】
また、本発明に係る方法は、コンピュータが、知覚可能な印として媒体に設けられた知覚表示と少なくとも前記知覚表示の周辺に配置された2次元埋め込みアドレスコードとを用いて、前記知覚表示に関連づけられたポインタを発生することでユーザインターフェースとして機能する方法であって、2次元埋め込みアドレスコードの一部分を読み取るステップ(2210)と、前記読み取り装置により読み取られた前記一部分からその一部分の媒体上における位置を検出し、検出された位置に関連づけられた前記知覚表示を指定する個別のポインタに変換するステップ(2238)と、を含み、前記2次元埋め込みアドレスコードは、それぞれが1次元のアドレスコードの並びの行である、平行に配列された第1コード行、第2コード行、第3コード行、第4コード行を含み、前記第1コード行は第1の1次元アドレスコードの並びを含み、前記第2コード行は第1コード行に隣接し第2の1次元アドレスコードの並びを含み、前記第3コード行は前記第2コード行に隣接し前記第1の1次元アドレスコードの並びを前記第1コード行に対し右方向にずらして含み、前記第4コード行は前記第3コード行に隣接し前記第2の1次元アドレスコードの並びを前記第2コード行に対し左方向にずらして含み、前記一部分の読み取りに対し前記ポインタを発生することでユーザインターフェースとして機能する。
【0013】
【発明の実施の形態】
ここで図面において、特にこの時点では図1において、従来どおりのセルフクロッキンググリフコードパターン21を示す。このコードパターン21は、延長されたスラッシュに似た印、又は「グリフ」22及び23を含み、適切な記録媒体24上の中心の概して規則的な長方形の格子に書かれる。適切には、グリフ22及び23はプリンタ(図示せず)によって印刷され、このプリンタは300d.p.i.から600d.p.iで動作し、4画素x4画素から7画素x7画素のグリフの表示を、規則的に間隔を空けられた中心に印刷する。この中心は、記録媒体24の横方向と縦方向に分配され、長方形のコードパターン21を形成する。標準の照明条件下で、通常の読書距離において、これらの細粒グリフコードパターンのグリフを、補助を受けない人間の目で解像することは容易ではない。このため、コードパターン21は典型的には概して均一のグレイスケールの見かけをもつが、それでもグリフコードは、機械読込み可能なデジタル情報を効果的に通信する能力がある。この機能を実行するために、25に示すように、グリフ22及び23はそれぞれ、通常は、左と右に、記録媒体24の長手方向から+45°及び−45°傾き、2進数の「1」と「0」とを符号化する。
【0014】
実施において、図14に示すように、アドレス空間の断片85から91がそれぞれ、対象105から111に及び/又は、対象に実質上永続的に又は一時的に固着された他の基板に、直接書かれてもよい。二次元のアドレス空間をこの適用例に用いることができるが、より完全にパラメータを与えられたアドレス空間、例えばAL1、...ALnと標識付けされたアドレス空間、は階層性の組織を持ち、図示するようにこれを用いて対象識別子85から91を、対象の種類又はその他の望まれる分類によって、階層組織化できる。
【0015】
図2は、グリフアドレスカーペットを使って設定されたグラフィカルユーザインターフェースの例を示す図である。このインターフェースは二つの構成部分を含む。(1)感覚の印、と(2)グリフアドレスカーペット1612を含む背景と、である。図2の感覚の印は、好適には視覚的な印で、特にアイコン1610などのグラフィック要素である。グリフアドレスカーペット1612は、グラフィック要素の背景の壁紙として使われる。背景を形成するグリフパターンは、「アドレスカーペット」と呼ばれる。これは、グリフが復号されて、各場所に特有のアドレス情報を提供できるからである。
【0016】
図2に示すように、グリフアドレスカーペットの一部であるグリフによって、アイコンが部分的に形成されてもよい。グリフトーン(glyphtone)(例えば、トウ(Tow)に与えられた米国特許第5,315,098号を参照)の場合や、サーペントーン(serpentone)(カレー(Curry)に与えられた米国特許第5,706,099号を参照)の場合では、印が、実質上グリフそのものを含んでもよい。グリフは、アドレス情報を符号化するので、グリフの一部を光学的に読み込み、復号してローカル位置特有のアドレスを決定することができる。
【0017】
グリフアドレスカーペットを使って設定されたグラフィカルユーザインターフェースは、そのインターフェースの構成部分を表示できるどの媒体でも設定できる。よって、インターフェースは、紙、ラベル、物理的な対象、写真術媒体などのハードコピー上に設定されてもよく、陰極線管(CRT)ディスプレイや液晶(LCD)ディスプレイなどの動的なディスプレイ上に設定されてもよく、又は、スライド映写機やテレビなどの、固定又は動的な媒体から映写するディスプレイ上に設定されてもよい。
【0018】
ここで説明する実施形態では、グリフを用いるが、その他の方法として、グリフは、どのようなシステムに置き換えられてもよく、このシステムは、可視及び不可視のシステムを含み、データアドレスコードを提供する。ここで説明する実施形態では、視覚的な印を用いるが、その他の方法として視覚的な印を感覚的な印に置き換えることもでき、この感覚的な印は、機械読込み可能なデータアドレスコードが、アドレスの論理的な参照を提供する間に、ユーザ又は機械を導き場所を選択するように働くことができる。ここで説明する実施形態では、紙の基板を用いるが、この紙の基板はどのような媒体によって置き換えられてもよく、この媒体は、データアドレスコードを埋め込むことができ、機械によって読込み可能である。
【0019】
感覚的な印は、データアドレスコードと同じ媒体に埋め込まれてもよいし、又は他の媒体に埋め込まれてもよい。その他の方法として、感覚的な印は、グリフに投影されてもよく、又はグリフが感覚的な印に投影されてもよい。
【0020】
図3は、像捕捉システムのブロック図であり、この像捕捉システムを使い、グリフアドレスカーペット1732などのグラフィカルユーザインターフェースのユーザが選択した一部を捕捉し、捕捉された部分のグリフを復号できる。一つの実施形態では、コンピュータシステム1712は、例えば従来のパーソナルコンピュータ又はラップトップコンピュータなどの汎用コンピュータシステムであり、メインメモリ1716、読出し専用記憶装置(ROM)1718、記憶装置1720、プロセッサ1722、通信インターフェース1724を有し、この全てがバス1726によって相互連結されている。バス1726はまた、ディスプレイ1730、カーソルコントロール1714、フレームキャプチャ1728にも接続されている。
【0021】
像捕捉装置1710、この場合はカメラペン(camera pen)は、フレームキャプチャ1728及びマウス1731に接続されている。カメラペン1710は、像の情報をフレームキャプチャ1728に送信する。一つの実施形態では、カメラペン1710のボタン1715がマウス1731に有線で接続され、ユーザがボタン1715を押した時に、信号がマウスの回路であるフレームキャプチャ1728を通りカーソルコントロール1714に送られる。この信号によって、プロセッサ1722は、フレームキャプチャ1728に指示を出すプログラムを開始しカメラペン1710から像を捕捉する。もう一つの実施形態では、カメラペン1710からの像ライン及び信号ラインの両方が、フレームキャプチャカード1728に直接入力される。カメラペン1710とコンピュータ1712との間のラインは、カメラペン1710から像の捕捉を提供する有線のいずれの方法で接続してもよい。
【0022】
ユーザは、グリフアドレスカーペット1732上の視覚的な印上又は印の近くにカメラペン1710を配置し、ボタン1715を押すことによって、選択をする。ボタン1715を押すことによってカメラペン1710は、カメラペン1710の先端の下にあるアドレスカーペットの部分を捕捉し、フレームキャプチャ1728を介して、分析のためにコンピュータ1712に像を送信する。ボタン又は複数のボタンは、ダブルクリックや維持動作などの追加の信号のために使うことができる。
【0023】
図4は、ホットゾーン(hot zone)を設定するユーザインターフェースの実施形態を示す。ホットゾーンとは、視覚的な印上又はその近くの領域で、この領域が選択された時に、その視覚的な印を選択した場合と同じ効果を持つ場所である。好適な実施形態では、ホットゾーンは、視覚的な印を取り囲んでもよい。例えば、図4では、アイコン「David’s DOC2」は、破線で示すホットゾーンをもつ。もしユーザがこのホットゾーン内を選択すれば、アイコン「David’s DOC2」が選択される。これにより、ユーザが視覚的な印上又はその近くで選択することが可能になる。この選択は、システムによって、まるで視覚的な印が選択されたように扱われる。ホットゾーンは、アドレスカーペット上での視覚的に違う色合いなどを含む視覚的な印によって明示されてもよく、又は適当な接近という暗に示すものでもよい。
【0024】
図4はまた、グリフアドレスカーペットコーディング組織の好適な実施形態も示す。各グリフは、前方スラッシュ又は後方スラッシュのどちらかである。グリフの行と列の方向及び間隔はそれぞれ、OGX及びOGYで示されている。図にAとBとで示すように、Aコードは一行おきにあり、その間にBコードが混ぜ合わされている。右下に向かっての対角線に沿っては、全てのAの値が好適には同一である。同様に、左下に向かっての対角線に沿っては、全てのBの値が好適には同一である。
【0025】
図5は、カメラペン1710を使った選択処理を示すブロック図である。各アイコンは、破線のホットゾーン1910で示される実際の選択範囲をもつ。カメラペン1710の先端は1914で示される範囲を覆う。カメラペン1710の先端の方向は、Yc軸及びXc軸によって示される。選択するためには、ユーザがカメラペン1710の先端を、選択する範囲の上に配置する。ユーザがボタン1715を押すと、範囲1914内の像が捕捉される。コンピュータ1712が捕捉された像を分析し、選択範囲1914の中心1912の位置を決定する。中心1912の位置の決定後、中心1912の位置を使い、中心1912に対応する機能を調べる。
【0026】
図6は、第二の種類の選択処理を示す図であり、この処理は本発明の原理に基づくグラフィカルユーザフェースを実行するために使ってもよい。この実施形態では、カメラペン1710は、指示装置を先端に取付けられて備え、したがって、カメラペンの像捕捉範囲をユーザが指した場所からずれさせる。例えば、図6では、ユーザはアイコン「David’s DOC」を指して選択するが、カメラペン1710の像捕捉範囲2014はアイコンからずれ、その中心は2012にある。この場合、コンピュータ1712が実際の選択を、(1)像範囲2014と(2)選択された範囲の方向と(3)像捕捉範囲からのずれの距離及び方向とに基づき、中心2012から決定する必要がある。ずれは、以下に説明する捕捉像復号処理からのグリフ格子パラメータを用いて計算される。
【0027】
図3に戻り、一つの実施形態では、メインメモリ1716は、ランダムアクセスメモリ(RAM)又は、プロセッサ1722が実行した命令を保存する動的な記憶装置である。メインメモリ1716はまた、命令を実行するために使われる情報を保存していてもよい。ROM1718は、プロセッサ1722によって使われる静的な情報及び命令を保存するために使われる。記憶装置1720は、例えば磁気又は光学ディスクであり、これもまた、コンピュータシステム1712の動作に使われる命令及びデータを保存する。
【0028】
ディスプレイ1730は、CRT又は他の種類のディスプレイ装置であってもよい。カーソルコントロール1714は、ディスプレイ1730上のカーソルの動きを制御する。カーソルコントロール1714は、例えばマウス、トラックボール又はカーソル方向キーであってもよい。
【0029】
図3に示すシステムを使い、以下に示すグリフアドレスカーペット捕捉及び変換システムを実行することができる。ここで説明する装置及び方法は、コンピュータシステム1712によって、ハードウェア、ソフトウェア、又はハードウェアとソフトウェアの組合わせを使うことによって設置できる。例えば、ここで説明する装置及び方法は、メインメモリ1716、ROM1718、又は記憶装置1720の一つ又はそれ以上の中のプログラムとして実行してもよい。一つの実施形態では、プロセッサ1722がプログラムを実行し、グリフアドレスカーペットの捕捉された部分を分析し、グリフに符号化されたアドレス情報を決定する。
【0030】
このようなプログラムは、メインメモリ1716に他のコンピュータ読込み可能な媒体、例えば記憶装置1720から読み込まれてもよい。メインメモリ1716に含まれた一連の命令の実行によって、プロセッサ1722が、ここで説明する本発明に基づく処理ステップを実行する。また、メインメモリ1716に含まれた一連の命令の実行によって、処理ステップを実行するための装置構成部分をプロセッサが設置する。配線された回路を、ソフトウェア命令の代わりに又はソフトウェア命令と組み合わせて使い、本発明を実施してもよい。よって、本発明の実施形態は、ハードウェア回路とソフトウェアとの特定の組合わせに限定されるものではない。
【0031】
ここで使われる用語「コンピュータによって読込み可能な媒体」とは、命令を実行のためにプロセッサ1722に提供する作業に参加するいずれかの媒体を意味する。このような媒体には多数の形式があり、これに制限されないが、不揮発性記憶媒体、揮発性記憶媒体、及び送信媒体を含む。不揮発性記憶媒体は、例えば記憶装置1720などの光学又は磁気ディスクを含む。揮発性記憶媒体は、メインメモリ1716などのRAMを含む。送信媒体は、同軸ケーブル、銅線、及び光ファイバを含み、バス1726を形成する配線を含む。送信媒体はまた、電波及び赤外線データ通信の過程で発生するような音響又は光の波の形を取ることもある。
【0032】
コンピュータによって読込み可能な媒体の一般的な形は、例えば、フロッピディスク、フレキシブルディスク、ハードディスク、磁気テープ又は他の磁気記憶媒体、CD−ROM、他の光学媒体、穿孔カード、紙テープ、穴のパターンを有する他の物理的な媒体、RAM、PROM、EPROM、FLASH−EPROM、他のメモリチップ又はカートリッジ、以下に説明されるような搬送波、又はコンピュータが読み込み、使うことのできる他の媒体を含む。
【0033】
様々な形の、コンピュータが読込み可能な媒体が、命令の実行のために一以上の一連の命令をプロセッサ1722に運ぶことに関連する場合がある。例えば命令は、最初に磁気ディスク又は遠隔のコンピュータによって運ばれてもよい。遠隔のコンピュータは、その動的なメモリに命令をロードし、モデムを使って電話回線上に命令を送信できる。コンピュータシステム1712に限られるモデムが、電話回線上でデータを受信し、赤外線送信機を使ってデータを赤外線信号に変換できる。適切な回路に結合された赤外線検出器が、赤外線信号内で運ばれたデータを受信し、このデータをバス1726に配置できる。バス1726はデータをメインメモリ1716に運び、このメインメモリ1716からプロセッサ1722が命令を引き出し実行する。メインメモリ1716で受信された命令は、プロセッサ1722での実行の前又は後に、記憶装置1720に任意に保存してもよい。
【0034】
コンピュータシステム1712はまた、通信インターフェース1724をバス1726に結合して備える。通信インターフェース1724は、他のシステムへの双方向通信を提供する。例えば、通信インターフェース1724は統合サービスデジタル通信網(ISDN)カード又はモデムであって、データ通信接続を対応する種類の電話回線に提供してもよい。通信はまた、例えば構内ネットワーク(LAN)カードであって、LANに通信を提供してもよい。通信インターフェース1724はまた、無線カードであって、コンピュータシステム1712と無線システムとの間に無線通信を設定してもよい。このような設定のいずれであっても、通信インターフェース1724は電子、電磁、又は光学信号を送信及び受信し、この信号は、様々な種類の情報を表すデータストリームを運ぶ。
【0035】
通信インターフェース1724と外部の装置及びシステムとの間のリンクは、典型的には一以上のネットワーク又は他の装置を通じてデータ通信を提供する。例えば、リンクは、ホストコンピュータ又は、インターネットサービスプロバイダ(ISP)によって動作するデータ装置への構内ネットワーク(図示せず)への接続を提供してもよい。ISPは、現在一般的には「インターネット」として知られる世界的なパケットデータ通信ネットワークを通じてデータ通信サービスを提供する。構内ネットワーク及びインターネットは両方、デジタルデータストリームを運ぶ電子、電磁、又は光学信号を使う。デジタルデータをコンピュータシステム1712へ又はコンピュータシステム1712から運ぶ、様々なネットワークを通じての信号及びネットワークと通信インターフェース1724との間の信号は、情報を運ぶ搬送波の形式の例である。
【0036】
コンピュータシステム1712は、ネットワークを通じ、通信インターフェース1724と外部システム又は装置との間のリンクを介して、メッセージを送信し、プログラムコードを含むデータを受信することができる。インターネット上では、例えばサーバが、アプリケーションプログラムのために要求されたコードをインターネット、ISP、構内ネットワーク、通信インターフェース1724を通じて送信する場合もある。
【0037】
ネットワークから受信したプログラムコードは、プロセッサ1722によって受信と同時に実行してもよく、後に実行するために記憶媒体1720などのメモリに保存してもよく、又はこの両方を行ってもよい。この方法によって、コンピュータシステム1712は、搬送波の形でアプリケーションコードを取得できる。
【0038】
図7は、グリフアドレスカーペット1732に符号化されたアドレスコードの実施形態を示す。より詳しくは、図7はグリフアドレスカーペットの一部2110を示す。アドレスは、行に「A」アドレスコードのシーケンスと「B」アドレスコードのシーケンスとを交互に配置し符号化される。各行の各シーケンスに沿った位置は、所定の長さの副シーケンスから明白に決定できるべきである。例えば、Nビットのシフトレジスタの最大の長さのコードは、Nビットの副シーケンスからその位置を特定できる。各アドレスコードシーケンスは15ビットのシーケンスであり、Aシーケンスは左から右に、Bシーケンスは逆の方向に右から左へと索引をつけられる。Aコードシーケンスの各行は、Aアドレスの一つ前又は次の行からグリフの位置にして二つずれる。同様に、Bコードシーケンスの各行は、逆の方向に二つの位置ずれる。よって、符号化組織は、二つの特徴をもつ。一つは、一次元の特有のアドレスコードの二つの集合を含む平行な行であり、もう一つは、二つの集合からの各ペア間のずれが特有になるような、二つの集合の構成員内での相対的なずれである。これによって、二次元の特有のアドレス位置が確立される。
【0039】
コンピュータ1712は、捕捉された像の範囲を分析し、グリフに符号化されたアドレス情報を二つのステップで復号する。理想的には、ユーザがカメラペン1710をグリフアドレスカーペット1732上の一部に配置し、図7に示すようなビットのパターンに示されるように角度を整列して像を捕捉する。しかし現実では、ユーザがカメラペン1710を興味対象の範囲の上で様々な方向に向け、このため、パターンは0°から360°のどの角度にも方向付けられる場合がある。したがって、コンピュータ1712は、アドレス情報を復号し解釈するための第一のステップとして、像の方向を決定する必要がある。
【0040】
像の方向は、捕捉された像を分析することで決定される。この処理は、明確化と呼ばれる(例えばハットら(Hacht et al.)に与えられた米国特許第5,521,372号を参照)。像の適切な方向を決定した後、コンピュータ1712は、アドレスカーペット上で選択された位置のアドレスを復号する。コンピュータ1712によって実行される明確化及びアドレス復号処理を、ここから、より詳しく説明する。
【0041】
図8および図9は、獲得したイメージ領域に関してコンピュータ1712が行う明確化(disambiguation)およびアドレス復号処理を示すフローチャートである。コンピュータ1712は明確化処理を始めるにあたり、アドレスカーペットの獲得部分をイメージ処理してグリフシードを見つける。グリフシードは最初に確認されたグリフであり、その回りには可読グリフが有る。一旦グリフシードを見つけると、その周辺部を処理することでグリフ格子を検出できる(添付書類AおよびBを参照)。次に、グリフを復号して1または0で示し、グリフ格子列に対応する列と行とを有するバイナリデータマトリクスに埋める。90°および180°の回転に関する配向は、まだ曖昧かもしれない。
【0042】
図10は、カメラペン1710によって獲得したグリフ格子を元に作成したバイナリデータマトリクス(BDM)を示す。BDMはグリフ格子に対応する場所を有する。したがって、BDMの大きさはグリフ格子の大きさに密接に対応する。
【0043】
グリフ格子の各位置を分析し、BDMの対応位置にどの値を配置するかを決定する。まず、BDMにΦ等の値を埋める。これは、グリフを読む試みがまだなされていないことを示す。特定位置に対応するグリフを分析した後、その位置のΦをそのグリフ分析結果で置き換える。
【0044】
図10では、Bはボーダー位置を示す。Xはグリフ格子の対応場所に翻訳不能グリフが見つかったことを示す。Eは獲得メージ部分の端部にあるグリフを示す。0はバックスラッシュグリフを示す。1はフォワードスラッシュグリフを示す。獲得イメージに対応するマトリクス領域は、0および1で埋められる。端部にはEがあり、Xは可読グリフがない位置に対応する。しかし現実には、一般的にBDMは類似パターンを有するようになるが、値は同様に均一には配置されない場合が多々ある。例えば、獲得イメージ内のグリフ位置にXがくることがある。これは、グリフが消去されると生じる。丸や四角で囲んだいくつかの値は、2本の別個のコード列を示す。これらの列は逆方向に互い違いに配列されている。
【0045】
ユーザが選択を行う場合、ユーザはユーザインターフェイス上でカメラペンを任意の方向に向けるので、獲得されたイメージは、任意の角度に配向されている可能性がある。したがって、ステップ2210においてコンピュータ1712が獲得イメージを元にした0および1をBDMから引き出すことができたとしても、そのイメージを獲得する元になったグリフアドレスカーペットのオリジナルコードパターンに対してBDMが0°(つまり正確な配向)、90°、180°または270°のいずれに配向されているかは不確かである。獲得イメージの配向が決定されるまで、BDMから正確なアドレスコードを引き出すことはできない。配向は、物理的システム制約(physical system constraints)等の予備情報を用いて示すことができるが、アドレスコードから直接、独自に決定することもできる。
【0046】
グリフを0および1に変換した後、基準グリフ格子を選択する(ステップ2211)。この位置は多様な方法で選択してもよいが、一般的に、関連の選択を示す位置である。例えば、基準グリフ格子はBDMの中心である得る。
【0047】
イメージをBDMに変換した後、コンピュータ1712によって処理する(ステップ2212)。獲得したイメージから作成したオリジナルBDMをBDM1とよぶ。コンピュータ1712はBDM1のコピーを作成し、コピーを時計方向に90°回転させて第2バイナリデータマトリクスBDM2を作成する(ステップ2214)。BDM1を90°回転させることにより、BDM1の列がBDM2の行に、BDM1の行がBDM2の列になる。さらに、BDM2の全ビット値を0から1に、1から0にひっくり返す。これは、45°スラッシュグリフを90°回転させると、回転していない状態でのグリフの逆になるからである。
【0048】
次にコンピュータ1712は、BDM1の奇数列と偶数列に対して別々に相関処理を行い(ステップ2216)、どのコード列が前方あるいは後方にずれているか(staggered)を検出する。相関処理は、BDM2の奇数および偶数列に対しても行う(ステップ2218)。各BDMの全列に対して相関処理を行う。この結果、BDM1に対して相関値C1が、BDM2に対して相関値C2が、それぞれ得られる。
【0049】
図11は、図9の相関ステップ2216、2218の実施の形態を示すフローチャートである。この処理により、BDMにおける各方向の対角線に沿った一行おきの相関値を検出し、列相関値を合計して、奇数または偶数列の最終的な相関値を形成する。この処理を、BDM1の奇数列に対して行いBDM1の相関値C1ODDを、BDM1の偶数列に対して行いBDM1の相関値C1EVENを、BDM2の奇数列に対して行いBDM2の相関値C2ODDを、BDM2の偶数列に対して行いBDM2の相関値C2EVENを、それぞれ形成する。BDMが0°または180°に配向されていれば、他の配向のDBMより大きなCODD+CEVENを有することになる。
【0050】
コンピュータ1712は、最初にBDMを入力し(ステップ2410)、次に一列おきに仮マトリクスにコピーする(ステップ2412)。同様の処理を右向および左向の斜線に対して行う。ステップ2414、2416、2418、2420、2422および2424では、右向斜線に対して処理を行う。例えば、図12では、これらのステップにおいて、左上から右下にかけての斜線に沿って相関関係を算定する。最初に、列カウントNと相関値C_RIGHTとを初期化してゼロにする(ステップ2414)。列Nを2位置分右に移動して、次の列に相関させる(ステップ2416)。次に、C_Nをこの値に設定する(ステップ2418)。続いて、C_RIGHTをC_RIGHT+C_Nに設定し(ステップ2420)、Nを増加する(ステップ2422)。列カウントNがNmax以上であれば、この処理後にステップ2426に進む。この時、NはBDM中の奇数または偶数列の数である。NがNmax未満であれば、この処理後にステップ2416に進む。したがって、この処理によって各隣接列を相関させた後では、相関値C_RIGHTは、右向斜線に沿った相関の強さを示す。
【0051】
図11の左側に示すステップは、ステップ2414、2416、2418、2420、2422、2424に類似し、右上から左下にかけた斜線を処理して、C_LEFTを求める。左右の斜線を相関させてC_RIGHTとC_LEFTとを決定した後、最終相関値Dを決定する。これは、C_RIGHTからC_LEFTを減じて行う。例えば、BDM1の奇数列を処理した場合、C値はBDM1のC1ODDとなる。
【0052】
図11の処理ステップを、BDM1の奇数および偶数列と、BDM2の奇数および偶数列に対して行う。この情報から、BDM1の相関値C1はC1EVEN+C1ODDに設定され(BDM1の列に対して図11で決定した通り)、BDM2の相関値C2はC2EVEN+C2ODDに設定される(BDM1の列に対して図11で決定した通り)。
【0053】
図12は、一列おきのコードのシフト方向が相関関係から決定できる理由を示す。例えば、右向斜線に沿った丸A1で示すように、第2列の最初の位置のA1から始まる斜線に沿ったコードは、消去や誤差でない限り、この斜線に沿って一列おきに同じ値を有するべきである。同様に、四角で囲まれたB1で示すように、右上隅から始まる斜線に沿ったコードは、消去や誤差でない限り、この斜線に沿って一列おきに同じ値を有するべきである。これは、それぞれB2、B3・・・から始まる奇数列での斜線に沿った値に対しても同様である。したがって、奇数列での左下向斜線に沿って強い相関があり、偶数列での右下向斜線に沿って強い相関があることは、偶数列上のコードは右に、奇数列上のコードは左に、それぞれシフトしていることを示唆する。
【0054】
したがって、各BDMに対して4個の相関値が求められる。1)奇数列右から左、2)奇数列左から右、3)偶数列右から左、4)偶数列左から右、に対する相関値である。これらの相関値から、偶数列、奇数列のそれぞれに対する最も強い相関値を選択して、BDMのCEVENおよびCODDとする(ステップ2216および2218)。次にCEVENとCODDとを加算して、そのBDMの最終C相関値を形成する。ステップ2220に関してこれまでに説明したように、最強の相関値を有するBDMが、0°または180°に配向されたBDMである。これは、奇数列および偶数列におけるコードの相対的配向のためである。つまり、選択されたBDMに対して2つの局面が分かった。つまり、一行おきのコード列がどの方向にずれているかと、BDMが水平方向に0°または180°に配向しているということである。別の相関処理ステップ2230を行って、各列のコードが(ずれている方向に対して)伸びている方向を検出する。
【0055】
奇数列のコードは一方向にずれており、偶数列のコードは別の方向にずれている。奇数列および遇数列に伸びるそれぞれのコードが分かれば、これに関連させてこのコードのずれ特性から、BDMの適切な0°配向を検出できる。
【0056】
図8において、C1がC2よりも大きければ(ステップ2220)、BDM1を選択して更に処理する。C1がC2よりも大きいということは、BDM1の一次元コードは非常に強く相関しており、したがって0°または180°の配向であることを示す(ステップ2224)。もし、C2がC1よりも大きければ、その時はBDM2を選択して更に処理する。これは、相関が高いということは、BDM2が0°または180°の配向にあることを示すからである(ステップ2224)。こうして、正確なBDMを見つける。しかし、獲得したイメージのアドレス位置を決定する前に、コンピュータ1712はまず、選択されたBDMが0°である(つまり、正確な配向)か、180°回転されているのかを検出する。
【0057】
図9は、コンピュータ1712が、グリフカーペットの獲得領域のアドレスを決定するステップを示すフローチャートである。BDMが0°に配向されている場合、BDMの斜線に沿ったビット位置は、一列おきに同じ値を有することが好適である。しかし、イメージ獲得処理や、可視印による妨害により、BDMデータに誤差や消去が生じるかもしれない。こうした誤差や消去の影響を減らすために、コンピュータ1712は、奇数列がずれる方向の斜線に沿って多数票(majority vote)をとり、さらに、偶数列がずれる方向の各斜線に沿った偶数列に対して多数票処理を繰り返す(ステップ2225)。この結果、奇数列に対しては第1コード列(シーケンス)が、また偶数列に対しては第2コード列(シーケンス)が、それぞれ得られる。多数票によって各ビット位置を正確に求められる範囲において、第1および第2コード列(シーケンス)は、それぞれ奇数または偶数列セットに対応するオリジナル疑似ノイズアドレス列のサブシーケンス(subsequence)と一致すべきである。
【0058】
次にコンピュータ1712は、前方にずれた列に対してオリジナル疑似ノイズアドレスコード(ゲットコード1)を引き出し(ステップ2226)、後方にずれた列に対してオリジナル疑似ノイズアドレスコード(ゲットコード2)を引き出す(ステップ2228)。各コードセットAおよびBに対するオリジナル疑似ノイズアドレスコードと、多数票によって得られたコードとを使用して、コンピュータ1712は4つのクロス相関を行い(ステップ2230)、奇数および偶数列に対して、グリフ列とPN列位置とのベストマッチを確立する。
【0059】
特に、BDMにおいてステップ2211で選択した基準要素に最も近い隣接した2列を、オリジナルアドレスカーペットを構成するそれぞれの完結PN列(complete PN sequences)と相関させる。PN列は同一であり得る。前方および後方相関を各列に対して行う。4つの相関から、4つのピーク相関値と位置値の対を求める。
【0060】
1) P1とV1。完結PN列と後向きに相関したコード1に対するピーク相関値および対応位置をそれぞれ示す。
【0061】
2) Q1とU1。完結PN列と前向きに相関したコード2に対するピーク相関値および対応位置をそれぞれ示す。
【0062】
3) P2とV2。完結PN列と前向きに相関したコード1に対するピーク相関値および対応位置をそれぞれ示す。
【0063】
4) Q2とU2。完結PN列と後向きに相関したコード2に対するピーク相関値および対応位置をそれぞれ示す。
【0064】
ピークの大きさに対応するUiおよびVi位置値(iは1または2)を使用して、ステップ2211で選択した基準要素に対応するX値およびY値を決定する。つまり、(P1+Q1)>(P2+Q2)であれば(ステップ2232)、U1とV1を使用して、ステップ2211で選択した基準グリフ位置のXおよびY位置を計算する(ステップ2236)。(P1+Q1)≦(P2+Q2)であれば(ステップ2232)、U2とV2を使用して、ステップ2211で選択した基準グリフ位置のXおよびY位置を計算する(ステップ2234)。次の式にしたがってアドレス情報を求める。
【0065】
X=(Vi−Ui+全コード長)/2
Y=(Vi+Ui−全コード長)/2
算出されたXおよびY位置を戻す(ステップ2238)。斜線はUおよびVの定数値にそれぞれ対応し、列および行はXおよびYに対応する。UおよびVを、アドレスパラメータとして直接使用することもできる。
【0066】
このようにして、ステップ2211で選択した基準点に関連したXおよびY値を決定する。コンピュータ1712はこの情報を使用して、論理基準を有するXおよびY座標、つまり論理基準と制御信号との組み合わせ(例えば、ボタンクリック)を、これから行う特定動作に関連させる。例えば、XおよびY座標をインデックスとして使用し、コンピュータ1712または、コンピュータ1712の監督下で他の装置が実行可能な動作のテーブルを参照する。XおよびY座標をファイルオープンコマンドと関連させることができる。ファイルオープンコマンドは、アドレス空間でXおよびY座標の近くに位置するアイコンと関連づけられたファイルを開く。実際、コンピュータ1712が行う任意動作を、特定のXおよびY座標、つまりXおよびY座標の範囲と関連させることができる。
【0067】
図13は、ユーザインターフェイスの実施の形態を示す。このユーザインターフェイスでは、アドレスカーペット12は複数のホットゾーンに分割される。各ホットゾーンはアドレス範囲を有する。このアドレス範囲はグラフィック目的物に対応し、グラフィック目的物はシステムの目的や機能に対応する。コンピュータ1712は、イメージ獲得によって決定されたXおよびYアドレスを使用して、ユーザがアドレスカーペット12のどの領域を選択したかを検出する。例えば、アドレスがX=1052およびY=32であれば、これはアドレスカーペット12の左上部分にあるので、ユーザは、CloseWin.aviを選択したことになる。コンピュータ1712はテーブルを使用して、XおよびY座標を、これらの座標を元にして実行される1個以上の機能に関連させる。例えば、上記の例では、X=1052およびY=32を、ユーザがCloseWin.aviを選択した時に実行される1個以上の機能に関連させる。ボタン1715によって(一回以上のクリック等)、コンピュータ1712に始動の信号が送られる。あるいは、イメージ獲得台(image capture steady)をある時間保持する事によって、始動信号がコンピュータ1712に伝えられる。位置選択の正確さは1グリフ単位であり、区別された選択の最小識別距離(resolution of differentiated selection)は1グリフ単位と同じ程細かい。獲得選択装置がアドレスカーペットをグリフ間隔の一部以内まで照会できれば、最小識別距離をグリフ単位の部分にまですることができる。たとえば、カメラピクセルは、一般的にグリフ間隔の一部である。
【0068】
したがって、本発明の方法、システム、および製品は、グリフアドレスカーペットを使用するグラフィカルユーザインターフェイスを実施し易くする。本発明の実行に関する前記の説明は例証としてあげたものである。したがって、寸分違わず説明通りの発明に制限されるものではなく、上記の趣旨を超えることなく変形や変更を加えることができる。
【図面の簡単な説明】
【図1】 セルフクロッキンググリフコードパタン及びその2進解釈(binary interpretation)の一部を示す図である。
【図2】 グリフアドレスカーペットを用いて実施されたユーザインターフェースの例を示す図である。
【図3】 グリフアドレスカーペットのユーザ選択部分を捕捉し、この捕捉部分のグリフを復号化する画像捕捉システムのブロック図である。
【図4】 ホットゾーンを実行するユーザインタフェースの実施形態を示す図であ。
【図5】 カメラペン1710を用いる選択プロセスを示す図である。
【図6】 本発明の原理に一致する、図形ユーザインターフェースを実施するために用いられる第2のタイプの選択プロセスを示す図である。
【図7】 グリフアドレスカーペット1732の符号化されたアドレスコードの実施形態を示す図である。
【図8】 コンピュータ1712により、捕捉画像領域に実行される明確化及びアドレス復号化プロセスを示すフローチャートである。
【図9】 コンピュータ1712により、捕捉画像領域に実行される明確化及びアドレス復号化プロセスを示すフローチャートである。
【図10】 カメラペン1710によって捕捉されたグリフ格子から形成された2進データマトリクスを示す図である。
【図11】 相関ステップ2116及び2118を実行するためのプロセスを示すフローチャートである。
【図12】 捕捉された画像のグリフによって符号化されたアドレスを決定するための、コンピュータ1712により実行される分析を示す図である。
【図13】 アドレスカーペット1612が、それぞれのアドレス範囲を有する領域にどのように分割されるかを示す図である。
【図14】 N次元画像アドレス空間の読みとり可能な断片を示す図である。
【符号の説明】
1710 画像捕捉装置(カメラペン)、1712 コンピュータシステム、1722 プロセッサ、1728 フレームキャプチャ、1730 ディスプレイ、1732 グリフアドレスカーペット、2110 アドレスコード。

Claims (2)

  1. 知覚可能な印として媒体に設けられた知覚表示(1732)と、
    少なくとも前記知覚表示の周辺に配置された2次元の埋め込みアドレスコード(2110)と、
    前記2次元の埋め込みアドレスコードの一部分を読み取る読み取り装置(1710)と、
    前記読み取り装置により読み取られた前記一部分からその一部分の媒体上における位置を検出し、検出された位置に関連づけられた前記知覚表示を指定する個別のポインタに変換するトランスレータと、
    を含み、
    前記2次元埋め込みアドレスコードは、
    それぞれが1次元のアドレスコードの並びの行である、平行に配列された第1コード行、第2コード行、第3コード行、第4コード行を含み、
    前記第1コード行は第1の1次元アドレスコードの並びを含み、前記第2コード行は第1コード行に隣接し第2の1次元アドレスコードの並びを含み、前記第3コード行は前記第2コード行に隣接し前記第1の1次元アドレスコードの並びを前記第1コード行に対し右方向にずらして含み、前記第4コード行は前記第3コード行に隣接し前記第2の1次元アドレスコードの並びを前記第2コード行に対し左方向にずらして含み、
    前記一部分の読み取りに対し前記ポインタを発生することでユーザインターフェースとして機能する装置。
  2. コンピュータが、知覚可能な印として媒体に設けられた知覚表示と少なくとも前記知覚表示周辺に配置された2次元埋め込みアドレスコードとを用いて、前記知覚表示に関連づけられたポインタを発生することでユーザインターフェースとして機能する方法であって、
    2次元埋め込みアドレスコードの一部分を読み取るステップ(2210)と、
    前記読み取り装置により読み取られた前記一部分からその一部分の媒体上における位置を検出し、検出された位置に関連づけられた前記知覚表示を指定する個別のポインタに変換するステップ(2238)と、
    を含み、
    前記2次元埋め込みアドレスコードは、
    それぞれが1次元のアドレスコードの並びの行である、平行に配列された第1コード行、第2コード行、第3コード行、第4コード行を含み、
    前記第1コード行は第1の1次元アドレスコードの並びを含み、前記第2コード行は第1コード行に隣接し第2の1次元アドレスコードの並びを含み、前記第3コード行は前記第2コード行に隣接し前記第1の1次元アドレスコードの並びを前記第1コード行に対し右方向にずらして含み、前記第4コード行は前記第3コード行に隣接し前記第2の1次元アドレスコードの並びを前記第2コード行に対し左方向にずらして含み、
    前記一部分の読み取りに対し前記ポインタを発生することでユーザインターフェースとして機能する、方法。
JP24653399A 1998-08-31 1999-08-31 グリフアドレスカーペット方法及び多次元アドレス空間の位置情報を提供する装置 Expired - Fee Related JP4353591B2 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US09/144251 1998-08-31
US09/144,251 US6327395B1 (en) 1996-12-20 1998-08-31 Glyph address carpet methods and apparatus for providing location information in a multidimensional address space

Publications (3)

Publication Number Publication Date
JP2000099257A JP2000099257A (ja) 2000-04-07
JP2000099257A5 JP2000099257A5 (ja) 2006-10-19
JP4353591B2 true JP4353591B2 (ja) 2009-10-28

Family

ID=22507759

Family Applications (1)

Application Number Title Priority Date Filing Date
JP24653399A Expired - Fee Related JP4353591B2 (ja) 1998-08-31 1999-08-31 グリフアドレスカーペット方法及び多次元アドレス空間の位置情報を提供する装置

Country Status (4)

Country Link
US (1) US6327395B1 (ja)
EP (1) EP0984390B1 (ja)
JP (1) JP4353591B2 (ja)
DE (1) DE69940454D1 (ja)

Families Citing this family (67)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
AUPQ131399A0 (en) * 1999-06-30 1999-07-22 Silverbrook Research Pty Ltd A method and apparatus (NPAGE02)
US6650761B1 (en) 1999-05-19 2003-11-18 Digimarc Corporation Watermarked business cards and methods
US6330976B1 (en) 1998-04-01 2001-12-18 Xerox Corporation Marking medium area with encoded identifier for producing action through network
SE516522C2 (sv) * 1999-05-28 2002-01-22 Anoto Ab Positionsbestämning
US7176896B1 (en) * 1999-08-30 2007-02-13 Anoto Ab Position code bearing notepad employing activation icons
SE517445C2 (sv) 1999-10-01 2002-06-04 Anoto Ab Positionsbestämning på en yta försedd med ett positionskodningsmönster
US6880755B2 (en) 1999-12-06 2005-04-19 Xerox Coporation Method and apparatus for display of spatially registered information using embedded data
US6935562B2 (en) 1999-12-06 2005-08-30 Xerox Corporation Operations on images having glyph carpets
US6678425B1 (en) 1999-12-06 2004-01-13 Xerox Corporation Method and apparatus for decoding angular orientation of lattice codes
AU2569301A (en) * 1999-12-23 2001-07-09 Anoto Ab General information management system
US20030061188A1 (en) * 1999-12-23 2003-03-27 Linus Wiebe General information management system
JP4822645B2 (ja) * 1999-12-23 2011-11-24 アノト アクティエボラーク ユーザ・ユニットおよびグローバル情報取り扱いシステム
US8418052B2 (en) 2000-03-21 2013-04-09 Anoto Aktiebolag (Anoto Ab) Processing of documents
US6572025B1 (en) * 2000-05-10 2003-06-03 Japan Gain The Summit Co., Ltd. Information code product, manufacturing device and method for manufacturing the same, information code reading device, authentication system, authentication terminal, authentication server, and authentication method
US7457413B2 (en) 2000-06-07 2008-11-25 Anoto Ab Method and device for encrypting a message
SE516567C2 (sv) * 2000-06-07 2002-01-29 Anoto Ab Förfarande och anordning för säker trådlös överföring av information
US6601772B1 (en) * 2000-07-14 2003-08-05 Intellidot Corporation Compact matrix code and one-touch device and method for code reading
DE10040614A1 (de) * 2000-08-16 2002-02-28 Gavitec Gmbh Verfahren zur automatischen Erkennung einer gerichteten Struktur
US6958747B2 (en) 2000-08-30 2005-10-25 Anoto Ab Method for making a product
AU2001288944A1 (en) * 2000-09-08 2002-03-22 Findthedot, Inc. A method and system of connecting printed media to electronic information as a response to a request
US7333947B2 (en) * 2000-11-13 2008-02-19 Anoto Ab Network-based system
US7079667B2 (en) 2000-12-19 2006-07-18 Xerox Corporation Method and apparatus for implementing occlusion glyph code tilings
US8341194B2 (en) * 2001-04-02 2012-12-25 Accenture Global Services Limited Matrix-based user interface and system for creating the same
US20040139100A1 (en) * 2001-04-02 2004-07-15 Gottsman Edward J. Context-based display technique
US7185824B2 (en) * 2001-04-13 2007-03-06 The Code Corporation System and method for associating pre-printed machine-readable graphical codes with electronically-accessible data
US6667695B2 (en) 2001-06-25 2003-12-23 Anoto Ab Position code
US7175095B2 (en) 2001-09-13 2007-02-13 Anoto Ab Coding pattern
US7145556B2 (en) 2001-10-29 2006-12-05 Anoto Ab Method and device for decoding a position-coding pattern
US6915281B2 (en) * 2002-06-30 2005-07-05 Pitney Bowes Inc. Systems and methods using a digital pen for funds accounting devices and postage meters
US7082444B2 (en) * 2002-09-30 2006-07-25 Pitney Bowes Inc. Method and system for identifying a form version
US7167586B2 (en) * 2002-09-30 2007-01-23 Pitney Bowes Inc. Method and system for remote form completion
US7417773B2 (en) * 2002-09-30 2008-08-26 Pitney Bowes Inc. Method and system for creating and sending a facsimile using a digital pen
US7343042B2 (en) * 2002-09-30 2008-03-11 Pitney Bowes Inc. Method and system for identifying a paper form using a digital pen
US7133563B2 (en) 2002-10-31 2006-11-07 Microsoft Corporation Passive embedded interaction code
US7121469B2 (en) * 2002-11-26 2006-10-17 International Business Machines Corporation System and method for selective processing of digital images
US7648678B2 (en) 2002-12-20 2010-01-19 Dako Denmark A/S Method and system for pretreatment of tissue slides
US7840492B2 (en) * 2002-12-30 2010-11-23 Pitney Bowes Inc. Personal funds metering system and method
US7110576B2 (en) * 2002-12-30 2006-09-19 Pitney Bowes Inc. System and method for authenticating a mailpiece sender
JP3635374B1 (ja) 2003-11-14 2005-04-06 有限会社Sires デジタル情報坦体
US7111230B2 (en) * 2003-12-22 2006-09-19 Pitney Bowes Inc. System and method for annotating documents
US7581171B2 (en) * 2004-01-06 2009-08-25 Microsoft Corporation Positionally encoded document image analysis and labeling
US7263224B2 (en) 2004-01-16 2007-08-28 Microsoft Corporation Strokes localization by m-array decoding and fast image matching
JP4606089B2 (ja) * 2004-01-16 2011-01-05 パナソニック株式会社 物品位置検出方法および無線タグ位置校正システム
JP4041993B2 (ja) * 2004-06-01 2008-02-06 ソニー株式会社 表示装置、受光装置、通信システムおよび通信方法
SE0401647D0 (sv) 2004-06-28 2004-06-28 Anoto Ab Coding and decoding of data
JP4487690B2 (ja) * 2004-08-27 2010-06-23 ソニー株式会社 表示装置、通信システムおよび方法
US7607076B2 (en) 2005-02-18 2009-10-20 Microsoft Corporation Embedded interaction code document
US7826074B1 (en) 2005-02-25 2010-11-02 Microsoft Corporation Fast embedded interaction code printing with custom postscript commands
JP2006254299A (ja) * 2005-03-14 2006-09-21 Fuji Xerox Co Ltd 画像生成装置若しくは画像読取装置、方法、プログラム及び記憶媒体
US7421439B2 (en) 2005-04-22 2008-09-02 Microsoft Corporation Global metadata embedding and decoding
US7400777B2 (en) 2005-05-25 2008-07-15 Microsoft Corporation Preprocessing for information pattern analysis
US7729539B2 (en) 2005-05-31 2010-06-01 Microsoft Corporation Fast error-correcting of embedded interaction codes
US7580576B2 (en) * 2005-06-02 2009-08-25 Microsoft Corporation Stroke localization and binding to electronic document
KR101236809B1 (ko) 2005-06-17 2013-02-25 아노토 아베 위치 및 정보 코드를 결합하는 방법 및 시스템
US7817816B2 (en) 2005-08-17 2010-10-19 Microsoft Corporation Embedded interaction code enabled surface type identification
US7756526B2 (en) 2005-09-19 2010-07-13 Silverbrook Research Pty Ltd Retrieving a web page via a coded surface
US7621442B2 (en) 2005-09-19 2009-11-24 Silverbrook Research Pty Ltd Printing a subscription using a mobile device
US7855805B2 (en) 2005-09-19 2010-12-21 Silverbrook Research Pty Ltd Printing a competition entry form using a mobile device
US7469829B2 (en) * 2005-09-19 2008-12-30 Silverbrook Research Pty Ltd Printing video information using a mobile device
US7445160B2 (en) 2006-06-14 2008-11-04 Hewlett-Packard Development Company, L.P. Position location using error correction
US7913920B2 (en) * 2006-12-20 2011-03-29 Palo Alto Research Center Incorporated Document processing devices, systems and methods thereof
US20090040563A1 (en) * 2007-08-07 2009-02-12 Xerox Corporation Printing job control system and method
JP5557419B2 (ja) * 2007-10-17 2014-07-23 スパンション エルエルシー 半導体装置
US7991153B1 (en) 2008-08-26 2011-08-02 Nanoglyph, LLC Glyph encryption system and related methods
US8593697B2 (en) * 2010-01-11 2013-11-26 Hewlett-Packard Development Company, L.P. Document processing
US8651389B2 (en) * 2011-02-02 2014-02-18 Infosys Limited System and method for identifying and tracking shopping carts
US11200167B2 (en) 2019-12-10 2021-12-14 Pony Ai Inc. Dynamic memory address encoding

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3891829A (en) 1973-08-29 1975-06-24 Monarch Marking Systems Inc Coded records, method of making same and method and an apparatus for reading coded records
US4260979A (en) 1979-12-31 1981-04-07 International Business Machines Corporation Apparatus for sensing non-coded images
US5168147A (en) 1990-07-31 1992-12-01 Xerox Corporation Binary image processing for decoding self-clocking glyph shape codes
US5301243A (en) 1990-12-21 1994-04-05 Francis Olschafskie Hand-held character-oriented scanner with external view area
US5574804A (en) 1990-12-21 1996-11-12 Olschafskie; Francis Hand-held scanner
US5978552A (en) * 1991-11-28 1999-11-02 Sony Corporation Ruled line generating apparatus and sheet for use therein
US5739814A (en) * 1992-09-28 1998-04-14 Sega Enterprises Information storage system and book device for providing information in response to the user specification
US5453605A (en) * 1993-12-22 1995-09-26 Xerox Corporation Global addressability for self-clocking glyph codes
US5449895A (en) 1993-12-22 1995-09-12 Xerox Corporation Explicit synchronization for self-clocking glyph codes
FR2724237B1 (fr) 1994-09-06 1997-01-31 Cherloc Dispositif optique pour crayon de lecture
US5576532A (en) 1995-01-03 1996-11-19 Xerox Corporation Interleaved and interlaced sync codes and address codes for self-clocking glyph codes
US5572010A (en) 1995-01-03 1996-11-05 Xerox Corporation Distributed type labeling for embedded data blocks
US5600121A (en) 1995-03-20 1997-02-04 Symbol Technologies, Inc. Optical reader with independent triggering and graphical user interface
US5565669A (en) 1995-09-06 1996-10-15 Intermec Corporation Orientation independent method for robust computing of X-dimensions in code one symbols
US5742041A (en) 1996-05-29 1998-04-21 Intermec Corporation Method and apparatus for locating and decoding machine-readable symbols, including data matrix symbols
US5937110A (en) * 1996-12-20 1999-08-10 Xerox Corporation Parallel propagating embedded binary sequences for characterizing objects in N-dimensional address space
JPH10198504A (ja) 1997-01-14 1998-07-31 Seiko Denshi Kiki Kk 情報処理装置の機能起動方法及び座標読取システム
US6102505A (en) 1997-12-18 2000-08-15 Eastman Kodak Company Recording audio and electronic images

Also Published As

Publication number Publication date
EP0984390B1 (en) 2009-02-25
EP0984390A3 (en) 2001-01-10
DE69940454D1 (de) 2009-04-09
JP2000099257A (ja) 2000-04-07
EP0984390A2 (en) 2000-03-08
US6327395B1 (en) 2001-12-04

Similar Documents

Publication Publication Date Title
JP4353591B2 (ja) グリフアドレスカーペット方法及び多次元アドレス空間の位置情報を提供する装置
JP4611479B2 (ja) コンテクスト識別を使用する多レベル選択装置
US6208771B1 (en) Methods and apparatus for robust decoding of glyph address carpets
US6689966B2 (en) System and method for determining positional information
US6935562B2 (en) Operations on images having glyph carpets
CN100442216C (zh) 确定电子笔尖相对于表面的位置的系统
RU2360303C2 (ru) Анализ изображения позиционно кодированного документа и нанесение метки
EP1798664B1 (en) Using multi-resolution visual codes to facilitate information browsing in the physical world
US7543753B2 (en) Reconstruction of virtual raster
US20060242562A1 (en) Embedded method for embedded interaction code array
US7672513B2 (en) Methods, apparatus, computer program and storage medium for position decoding
US20070277150A1 (en) Program, information storage medium, two-dimensional code generation system, image generation system and printed material
JP2000099257A5 (ja)
JPH10124289A (ja) バイナリデータエンコード方法
CA2491579C (en) Enhanced approach of m-array decoding and error correction
US20060242560A1 (en) Local metadata embedding and decoding
JP2010102723A (ja) 位置コードを達成し且つ位置コードをデコーディングするための方法
BR112013000144B1 (pt) Método para imprimir um código de posição absoluta em uma superfície usando uma impressora eletrônica, aparelho, fabricação e meio legível em computador não-transitório
US8019181B2 (en) Image generation apparatus, image processing apparatus, computer readable medium and computer data signal
US10891704B2 (en) M-ary cyclic coding
CN100367169C (zh) 用于位置解码的方法和设备
JP4651184B2 (ja) 空間的に位置合わせされた情報を位置合わせし、ディスプレイし、復号化する方法及び装置
Larkin et al. Tenacious tagging of images via Mellin monomials
CN108664865A (zh) 位置解码方法及装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060831

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20060831

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20060901

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081014

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090106

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090224

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090519

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

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

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20130807

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

LAPS Cancellation because of no payment of annual fees