(57)【特許請求の範囲】
【請求項１】
ビット列の値を、互いに異なるレベルの２つの信号が配列された信号パターンに置き換えた第１の信号パターン配列を生成し、
２のべき乗刻みの互いに異なるパターン数を持つ第１部分信号および第２部分信号に、前記第１の信号パターン配列を分解し、
前記第２部分信号のパターン周期に拡張させた前記第１部分信号を前記第２部分信号に足し合わせて、第２の信号パターン配列を生成し、
前記第２の信号パターン配列の各信号を、マーカに含まれるセルに表示される濃淡の階調で設定することを特徴とするマーカ生成方法。
【請求項２】
マーカを取得し、
前記マーカに含まれる単位領域内の２つの第１部分領域の濃淡を比較し、
前記２つの第１部分領域の濃淡の大小関係を、互いに異なるレベルの２つの信号が配列された信号パターンに置き換えて、第１復号パターンを取得し、
前記第１復号パターンを基に、前記マーカに含まれる符号化された第１データを取得し、
前記第１部分領域内の２つの第２部分領域の濃淡を比較し、
前記２つの第２部分領域の濃淡の大小関係を、互いに異なるレベルの２つの信号が配列された信号パターンに置き換えて、第２復号パターンを取得し、
前記第２復号パターンを基に、前記マーカに含まれる符号化された第２データを取得することを特徴とするマーカ復号方法。
【請求項３】
前記第１復号パターンのパターン数および前記第２復号パターンのパターン数は、いずれも２のべき乗の数であって、かつ互いに異なる数である、請求項２に記載のマーカ復号方法。
【請求項４】
マーカからのデータの復号のための演算を行う論理回路を備え、
前記論理回路は、
前記マーカに含まれる単位領域内の２つの第１部分領域の濃淡を比較し、
前記２つの第１部分領域の濃淡の大小関係を、互いに異なるレベルの２つの信号が配列された信号パターンに置き換えて、第１復号パターンを取得し、
前記第１復号パターンを基に、前記マーカに含まれる符号化された第１データを取得し、
前記第１部分領域内の２つの第２部分領域の濃淡を比較し、
前記２つの第２部分領域の濃淡の大小関係を、互いに異なるレベルの２つの信号が配列された信号パターンに置き換えて、第２復号パターンを取得し、
前記第２復号パターンを基に、前記マーカに含まれる符号化された第２データを取得することを特徴とするマーカ復号装置。
【請求項５】
画像を撮影するカメラと、
前記画像からマーカを検出するマーカ検出器と、
前記マーカに含まれるデータの復号のための演算を行う論理回路を備えるマーカ復号装置と、を備え、
前記論理回路は、
前記マーカに含まれる単位領域内の２つの第１部分領域の濃淡を比較し、
前記２つの第１部分領域の濃淡の大小関係を、互いに異なるレベルの２つの信号が配列された信号パターンに置き換えて、第１復号パターンを取得し、
前記第１復号パターンを基に、前記マーカに含まれる符号化された第１データを取得し、
前記第１部分領域内の２つの第２部分領域の濃淡を比較し、
前記２つの第２部分領域の濃淡の大小関係を、互いに異なるレベルの２つの信号が配列された信号パターンに置き換えて、第２復号パターンを取得し、
前記第２復号パターンを基に、前記マーカに含まれる符号化された第２データを取得する、マーカ読取装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本実施形態は、マーカ生成方法、マーカ復号方法、マーカ復号装置およびマーカ読取装置に関する。
【背景技術】
【０００２】
従来、カメラにより撮影されたマーカの画像から、符号化されているデータを取得するマーカ読取装置が知られている。マーカ読取装置は、マーカの画像からマーカの形態を識別し、マーカの形態を基にデータを復号する。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００３−２４８８０５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
一つの実施形態は、マーカから段階的にデータを読み取り可能とするためのマーカ生成方法、マーカ復号方法、マーカ復号装置およびマーカ読取装置を提供することを目的とする。
【課題を解決するための手段】
【０００５】
一つの実施形態によれば、マーカ生成方法が提供される。マーカ生成方法では、ビット列の値を信号パターンに置き換えた第１の信号パターン配列を生成する。信号パターンは、互いに異なるレベルの２つの信号が配列されている。第１の信号パターン配列を、第１部分信号および第２部分信号に分解する。第１部分信号および第２部分信号は、２のべき乗刻みの互いに異なるパターン数を持つ。第２部分信号のパターン周期に拡張させた第１部分信号を第２部分信号に足し合わせて、第２の信号パターン配列を生成する。第２の信号パターン配列の各信号を、濃淡の階調で設定する。濃淡は、マーカに含まれるセルに表示される。
【図面の簡単な説明】
【０００６】
【図１】図１は、実施形態のマーカ読取装置を示すブロック図である。
【図２】図２は、マーカの例を示す図である。
【図３】図３は、実施形態のマーカ生成方法の手順を説明するフローチャートである。
【図４】図４は、マーカへ符号化される前のデータについて説明する図である。
【図５】図５は、第１の信号パターン配列から第２の信号パターン配列を生成する手順を説明する図である。
【図６】図６は、第２の信号パターン配列および濃淡パターンについて説明する図である。
【図７】図７は、実施形態のマーカ復号方法の手順を示すフローチャートである。
【図８】図８は、マーカから元のデータへの復号について説明する図である。
【図９】図９は、実施形態のマーカ読取装置を備える電子機器の例を示すハードウェア構成図である。
【発明を実施するための形態】
【０００７】
以下に図面を参照して、実施形態にかかるマーカ生成方法、マーカ復号方法、マーカ復号装置およびマーカ読取装置を詳細に説明する。なお、この実施形態により本発明が限定されるものではない。
【０００８】
図１は、実施形態のマーカ読取装置を示すブロック図である。マーカ読取装置１は、カメラ２、マーカ検出器３、マーカ復号装置４および出力装置５を備える。マーカ読取装置１は、例えば携帯端末に備えられる。
【０００９】
カメラ２は、画像を撮影する。カメラ２は、例えば携帯端末に取り付けられたカメラである。カメラ２は、可視光を検出するカメラであれば良く、カラー画像およびモノクロ画像のいずれを撮影するカメラであっても良い。利用者は、マーカから情報の取得を望む場合に、カメラ２のレンズをマーカへ向ける。カメラ２は、レンズがマーカへ向けられた状態において、マーカの像（以下、単に「マーカ」とする。）を含む画像を撮影する。利用者は、マーカに対しカメラ２の位置を変更しながらマーカを撮影可能である。
【００１０】
マーカ検出器３は、撮影された画像から、マーカを検出する。マーカ復号装置４は、マーカからデータを復号する。マーカ検出器３およびマーカ復号装置４は、マーカ検出プログラムおよびマーカ復号プログラムがインストールされた演算装置および記憶装置を使用して実現される。
【００１１】
出力装置５は、マーカ復号装置４で復号されたデータを出力する。出力装置５は、例えば、復号されたデータに基づく表示を行うディスプレイである。
【００１２】
マーカ検出器３は、画像の中から、あらかじめ把握しているマーカの外形を検出する。例えばマーカの外形が所定の縦横比の矩形である場合、マーカ検出器３は、かかる矩形の相似形をなす被写体をマーカと認識する。マーカ検出器３は、マーカ自体の形状が、マーカの識別のためのファインダパターンであるものとして、マーカを検出する。
【００１３】
マーカ検出器３は、マーカの外形以外の図形をファインダパターンとして、マーカを検出するものであっても良い。例えば、所定の形状の図形とともにマーカが付される場合に、マーカ検出器３は、かかる図形をファインダパターンとしてマーカと検出しても良い。また、所定の印字パターンからなる識別コードがマーカの内側あるいは外側に付される場合に、マーカ検出器３は、識別コードをファインダパターンとしてマーカを検出しても良い。
【００１４】
図１には、カメラ２が３つのマーカＭ１，Ｍ２，Ｍ３を含む画像を撮影している例を示している。マーカ検出器３は、３つのマーカＭ１，Ｍ２，Ｍ３を個別に検出する。マーカ復号装置４は、３つのマーカＭ１，Ｍ２，Ｍ３から個別にデータを復号する。
【００１５】
マーカは、印刷あるいは描画等の手法によって物体の面に記されたものとする。マーカは、ディスプレイの映像面に表示されるものであっても良い。マーカは、人間の視覚あるいはカメラによって、可視光および近赤外光を問わず光学的に読み取り可能であれば、いずれの手段によって提示されるものであっても良い。マーカの外形は、矩形である場合に限られず、いずれの幾何形状としても良い。
【００１６】
図２は、マーカの例を示す図である。図２では、矩形の外形を備えるマーカのうちの一部分を示している。マーカは、二次元に配列された複数のセルを含む。マーカは、セルの集合体である。各セルは、複数のレベルに設定された濃度のいずれかを表している。マーカは、セルを単位として段階的に濃度を異ならせた濃淡のパターンとして表示される。図２では、８×８の行列をなすセルにおいて、互いに異なる４つのレベルに設定された濃度を表すセル同士の境界を実線で示している。
【００１７】
物体の面に記されるマーカでは、例えば、明度を異ならせた単一色により濃淡が表現される。マーカは、光の反射量が異なるような塗り分けが施されることにより、明度の違いを表す。あるいは、マーカは、単一色のドットの粗密を異ならせることにより、明度の違いを表しても良い。映像面に表示されるマーカでは、輝度を異ならせた単一色の表示により濃淡が表現される。
【００１８】
なお、マーカは、単一色の明度の違いによって濃淡を表現するものに限られない。マーカは、明度の違いと色相の違いとにより濃淡を表現するものであっても良い。以下の説明では、マーカは、白から黒までにおける明度の違いを用いて濃淡を表現するものとする。本実施形態では、黒は色の一つに含めるものとする。
【００１９】
図２において、黒塗りの部分（濃度Ｄ１）は、４つの明度のうち最も低い明度の部分を示している。斜線を付した部分（濃度Ｄ２）は、黒塗りの部分に次いで明度が低い部分を示している。白抜きの部分（濃度Ｄ４）は、４つの明度のうち最も高い明度の部分を示している。ドットを付した部分（濃度Ｄ３）は、白抜きの部分に次いで明度が高い部分を示している。
【００２０】
十分な明るさの環境において、人間の視覚により、濃度Ｄ１および濃度Ｄ４は、それぞれ黒および白と認識される。また、濃度Ｄ２および濃度Ｄ３は、濃度が異なるグレーと認識される。濃度Ｄ３のグレーは、濃度Ｄ２のグレーに比べて濃い。
【００２１】
次に、データを基にマーカを生成する方法について説明する。本実施形態におけるマーカ生成方法を実現するためのマーカ生成プログラムは、例えばハードウェアであるコンピュータにインストールされる。コンピュータは、演算装置、記憶装置および入出力インタフェースを備える。
【００２２】
演算装置は、ＣＰＵ（Central  Processing  Unit）である。記憶装置は、ＲＯＭ（Read  Only  Memory）、ＲＡＭ（Random  Access  Memory）、外部記憶装置などにより構成される。演算装置は、各種プログラムを実行する。マーカ生成プログラムがインストールされたハードウェアは、不図示のマーカ生成装置として機能する。マーカ生成プログラムが備える機能は、演算装置および記憶装置を使用して実現される。
【００２３】
次に、マーカ生成方法について説明する。図３は、本実施形態のマーカ生成方法の手順を説明するフローチャートである。ここでは一例として、元のデータである７ビットのビット列「０，１，０，１，０，０，１」に対するマーカ生成方法を説明する。ビット列は、任意の情報符号とする。本実施形態では、マーカ生成装置は、元のデータを複数のデータに分解して多重化させる、いわゆるHarr-Wavelet変換の手法を、データの符号化に用いる。
【００２４】
マーカ生成装置は、ビット列の値「０」および「１」を、あらかじめ設定された信号パターンにそれぞれ置き換える。信号パターンは、互いにレベルを異ならせた２つの信号の組み合わせである。２つの信号は、レベルが異なることで、互いに区別可能とされている。「０」は、レベルＬ０の信号にレベルＬ１の信号が続く信号パターンに置き換えられる。「１」は、レベルＬ１の信号にレベルＬ０の信号が続く信号パターンに置き換えられる。Ｌ１は、Ｌ０より高いレベルとする（Ｌ０＜Ｌ１）。このように、信号パターンは、互いに異なるレベルの２つの信号の配列であって、２つのレベル間における変位を含む。
【００２５】
マーカ生成装置は、ビット列の各値を信号パターンに置き換えることで、ビット列に対応する信号パターンＰ０（第１の信号パターン配列）を生成する（Ｓ１）。図４は、マーカへ符号化される前のデータについて説明する図である。図４では、信号パターンＰ０の信号を、信号レベルを縦軸とする棒グラフで示している。次に、マーカ生成装置は、信号パターンＰ０を３つの部分信号Ｐ１１，Ｐ１２およびＰ１３に分解する（Ｓ２）。
【００２６】
部分信号Ｐ１１は、７ビットのデータのうち、上位１ビットのデータを表す。部分信号Ｐ１２は、７ビットのデータのうち、上位２ビット目および３ビット目のデータを表す。部分信号Ｐ１３は、７ビットのデータのうち、下位４ビットのデータを表す。
【００２７】
部分信号Ｐ１１，Ｐ１２およびＰ１３はそれぞれ、１（＝２０）個，２（＝２１）個および４（＝２２）個の信号パターンを備える。すなわち、部分信号Ｐ１１，Ｐ１２およびＰ１３は、２のべき乗刻みの互いに異なるパターン数を持つ。次に、マーカ生成装置は、パターン周期を拡張させた部分信号Ｐ１１，Ｐ１２を、部分信号Ｐ１３に足し合せて、第２の信号パターン配列を生成する。
【００２８】
図５は、第１の信号パターン配列から第２の信号パターン配列を生成する手順を説明する図である。図５では、各信号パターン配列を、レベルＬ０を基準レベルとするデジタル波形として表している。部分信号Ｐ１３（第２部分信号）は、レベルＬ１，Ｌ０，Ｌ０，Ｌ１，Ｌ０，Ｌ１，Ｌ１，Ｌ０の信号パターン配列である。
【００２９】
信号パターンＰ０と部分信号Ｐ１３は、同じパターン周期Ｔをなす。マーカ生成装置は、部分信号Ｐ１３におけるパターン周期Ｔに対して、部分信号Ｐ１２（第１部分信号）のパターン周期を２倍に拡張させ、パターン周期Ｔの２倍のパターン周期２Ｔを持つ部分信号Ｐ１２’を生成する。すなわち、部分信号Ｐ１２’は、部分信号Ｐ１３と同じ配列長さを持つ。部分信号Ｐ１２’は、レベルＬ１，Ｌ１，Ｌ０，Ｌ０，Ｌ０，Ｌ０，Ｌ１，Ｌ１の信号パターン配列となる。
【００３０】
マーカ生成装置は、部分信号Ｐ１３に、部分信号Ｐ１２’を加算し、信号パターンＰ１を取得する（Ｓ３）。信号パターンＰ１は、レベルＬ２，Ｌ１，Ｌ０，Ｌ１，Ｌ０，Ｌ１，Ｌ２，Ｌ１の信号パターン配列である。レベルＬ２は、レベルＬ１とレベルＬ１との加算結果である。
【００３１】
マーカ生成装置は、パターン周期Ｔに対して、部分信号Ｐ１１（第１部分信号）のパターン周期を４倍に拡張させ、パターン周期４Ｔを持つ部分信号Ｐ１１’を生成する。すなわち、部分信号Ｐ１１’は、信号パターンＰ１と同じ配列長さを持つ。部分信号Ｐ１１’は、レベルＬ０，Ｌ０，Ｌ０，Ｌ０，Ｌ１，Ｌ１，Ｌ１，Ｌ１の信号パターン配列である。
【００３２】
マーカ生成装置は、信号パターンＰ１の信号に、部分信号Ｐ１１’を加算し、信号パターンＰ２（第２の信号パターン配列）を取得する（Ｓ４）。信号パターンＰ２は、レベルＬ２，Ｌ１，Ｌ０，Ｌ１，Ｌ１，Ｌ２，Ｌ３，Ｌ２の信号パターン配列である。レベルＬ３は、レベルＬ２とレベルＬ１との加算結果である。信号パターンＰ２は、互いに異なる４つのレベルＬ０〜Ｌ３を含む８個の信号からなる。
【００３３】
マーカ生成装置は、信号パターンＰ２を基に、マーカにおける濃淡のパターンを決定する。マーカ生成装置は、マーカ内の８個のセルに表示される濃淡の階調を、信号パターンＰ２に基づいて設定する（Ｓ５）。
【００３４】
図６は、第２の信号パターン配列および濃淡パターンについて説明する図である。図６では、信号パターンＰ２の信号を、レベルＬ０を基準レベルとする棒グラフで示している。信号パターンＰ２は、互いに多重化された部分信号Ｐ１１’，Ｐ１２’およびＰ１３からなる。
【００３５】
棒グラフのうち斜線を付した部分は、部分信号Ｐ１３に由来するレベル部分を表す。網掛けを付した部分は、部分信号Ｐ１２’に由来するレベル部分を表す。白抜きとした部分は、部分信号Ｐ１１’に由来するレベル部分を表す。
【００３６】
マーカ生成装置は、８個のセルＣ１〜Ｃ８に対して、信号パターンＰ２の各信号のレベルに応じた濃淡の階調を決定する。マーカ生成装置は、濃淡の階調として、マーカを印刷する際の明度階調あるいは色相階調などを設定する。
【００３７】
マーカ生成装置は、レベルＬ０の信号に対応するセルに濃度Ｄ１を、レベルＬ１の信号に対応するセルに濃度Ｄ２を、レベルＬ２の信号に対応するセルに濃度Ｄ３を、レベルＬ３の信号に対応するセルに濃度Ｄ４を設定する。したがって、ビット列「０，１，０，１，０，０，１」は、セルＣ１〜Ｃ８において、濃度［Ｄ３，Ｄ２，Ｄ１，Ｄ２，Ｄ２，Ｄ３，Ｄ４，Ｄ３］の順に示される。
【００３８】
本実施形態では、マーカ生成装置は、７ビットのデータの符号化により、８個のセルの濃淡パターンを決定する。すなわち、マーカ生成装置は、７ビットのデータを、７ビットの情報を持たせた濃淡パターンへ変換した８個のセルからなるマーカを生成する。
【００３９】
マーカ生成装置は、信号パターン配列に対応する複数個のセルを単位領域として、複数の単位領域を備えるマーカを生成する。図２に示したマーカは、８個の単位領域からなる。ここで、第２の信号パターン配列を２つの部分信号に等分した場合に、一方の部分信号のレベルの合計と、他方の部分信号のレベルの合計とは、１対２の関係にある。
【００４０】
ここで、レベルＬ０〜Ｌ３をそれぞれ、デジタル値０，１，２，３と表すとする。図６に示す信号パターンＰ２において、セルＣ１〜Ｃ４における部分信号のレベルの合計は４である。セルＣ５〜Ｃ８における部分信号のレベルの合計は８である。このように、等分したセルにおける部分信号のレベルの合計は、１対２の関係となる。本実施形態のマーカ生成方法によれば、単位領域の濃淡パターンは、等分したセルにおける部分信号のレベルが１対２の関係にある信号パターン配列に基づいて設定される。
【００４１】
次に、本実施形態の方法により生成されたマーカからデータを復号する方法について説明する。本実施形態で説明するマーカ復号方法を実現するためのマーカ復号プログラムは、ハードウェアである携帯端末にインストールされる。マーカ復号プログラムが備える機能は、携帯端末の演算装置および記憶装置を使用して実現される。
【００４２】
図７は、本実施形態のマーカ復号方法の手順を示すフローチャートである。マーカ復号装置４は、マーカのうち所定数のセルに相当する領域を単位領域と設定する。マーカ復号装置４は、単位領域ごとにデータを復号する。
【００４３】
図８は、マーカから元のデータへの復号について説明する図である。ここでは、８個のセルＣ１〜Ｃ８からなる単位領域における濃淡パターンから元のビット列を復号する場合を例とする。濃淡パターンは、上述するマーカ生成方法において得られている。セルごとの濃淡を識別可能な解像度でマーカが撮影される。
【００４４】
セルＣ１〜Ｃ８にて検出される輝度が、２０，１０，０，１０，１０，２０，３０および２０の数値でそれぞれ表されるとする。０，１０，２０および３０の各輝度は、濃度Ｄ１，Ｄ２，Ｄ３およびＤ４に対応している。
【００４５】
マーカ復号装置４は、単位領域内の領域ＡＲ１および領域ＡＲ２（２つの第１部分領域）の濃淡を比較する（Ｓ１１）。領域ＡＲ１および領域ＡＲ２はそれぞれ、第１部分領域を構成する。領域ＡＲ１は、４個のセルＣ１〜Ｃ４に相当する。領域ＡＲ２は、４個のセルＣ５〜Ｃ８に相当する。領域ＡＲ１および領域ＡＲ２は、それぞれ単位領域の半分の幅をなす。マーカ復号装置４は、第１周期において濃淡を比較する。ここでは、第１周期は４個のセルおきである。
【００４６】
領域ＡＲ１のセルＣ１〜Ｃ４の輝度の合計は４０である。領域ＡＲ２のセルＣ５〜Ｃ８の輝度の合計は８０である。領域ＡＲ１の輝度の合計は領域ＡＲ２の輝度の合計より小さい。なお、セルごとの濃淡を識別可能な解像度より低い解像度であって、セルごとの輝度が平均化されて検出される場合でも、領域ＡＲ１および領域ＡＲ２の輝度の大小関係を検出できることがある。ここでは、少なくとも領域ＡＲ１と領域ＡＲ２間の輝度の大小関係がわかればよい。この例では、マーカ復号装置４は、領域ＡＲ１の輝度が領域ＡＲ２の輝度より小さいということを検出する。
【００４７】
マーカ復号装置４は、領域ＡＲ１および領域ＡＲ２の輝度の大小関係を、互いに異なるレベルの信号パターン配列に置き換える。この例では、領域ＡＲ１の輝度が領域ＡＲ２の輝度より小さいという関係を基に、レベルＬ０の信号にレベルＬ１の信号が続く信号パターン配列を生成する。これにより、マーカ復号装置４は、部分信号Ｐ１１’（第１復号パターン）を取得する（Ｓ１２）。
【００４８】
マーカ復号装置４は、部分信号Ｐ１１’のパターン周期を４分の１に縮小させる。部分信号Ｐ１１’は、元の信号パターンＰ０と同じパターン周期Ｔをもつ部分信号Ｐ１１となる。レベルＬ０の信号にレベルＬ１の信号が続く部分信号Ｐ１１が得られる。
【００４９】
マーカ復号装置４は、マーカの生成時におけるビット値から信号パターンへの置き換え（Ｓ１）とは逆の置き換えを部分信号Ｐ１１について実施する。マーカ復号装置４は、部分信号Ｐ１１の信号パターンから、値「０」（第１データ）を取得する。かかる値「０」は、元のビット列のうち上位１ビットの復号データである。
【００５０】
次に、マーカ復号装置４は、２個のセルおきの第２周期における濃淡を比較する。第２周期は、第１周期の半分である。マーカ復号装置４は、領域ＡＲ１内の領域ＡＲ１１および領域ＡＲ１２の濃淡を比較する（Ｓ１３）。領域ＡＲ１１および領域ＡＲ１２はそれぞれ、第２部分領域を構成する。
【００５１】
領域ＡＲ１１は、セルＣ１およびＣ２に相当する。領域ＡＲ１２は、セルＣ３およびＣ４に相当する。領域ＡＲ１１および領域ＡＲ１２は、それぞれ領域ＡＲ１の半分の幅をなす。
【００５２】
領域ＡＲ１１の輝度の合計３０は、領域ＡＲ１２の輝度の合計１０より大きい。マーカ復号装置４は、レベルＬ１の信号にレベルＬ０の信号が続く部分信号Ｐ１２’−１を得る。
【００５３】
マーカ復号装置４は、領域ＡＲ２内の領域ＡＲ２１および領域ＡＲ２２の濃淡を比較する（Ｓ１３）。領域ＡＲ２１および領域ＡＲ２２はそれぞれ、第２部分領域を構成する。マーカ復号装置４は、レベルＬ０の信号にレベルＬ１の信号が続く部分信号Ｐ１２’−２を得る。
【００５４】
マーカ復号装置４は、部分信号Ｐ１２’−１およびＰ１２’−２を連結させることで、部分信号Ｐ１２’（第１の復号パターン）を取得する（Ｓ１４）。
【００５５】
マーカ復号装置４は、部分信号Ｐ１２’のパターン周期を２分の１に縮小させる。部分信号Ｐ１２’は、元の信号パターンＰ０と同じパターン周期Ｔをもつ部分信号Ｐ１２となる。レベルＬ１，Ｌ０，Ｌ０，Ｌ１の各信号が続く部分信号Ｐ１２が得られる。
【００５６】
マーカ復号装置４は、部分信号Ｐ１２の信号パターン配列から、２つの値「１」および「０」（第１データ）を取得する。値「１」および「０」は、元のビット列のうち上位２ビット目および３ビット目の復号データである。
【００５７】
次に、マーカ復号装置４は、セルごとの第３周期における濃淡を比較する。第３周期は、第１周期の４分の１である。マーカ復号装置４は、互いに隣り合う２個のセル間における濃淡を比較する（Ｓ１５）。かかる濃淡の比較は、セルごとの濃淡を識別可能な解像度によりマーカを得ることにより実施される。
【００５８】
マーカ復号装置４は、セルＣ１およびセルＣ２の濃淡を比較する。セルＣ１の輝度２０は、セルＣ２の輝度１０より大きい。マーカ復号装置４は、レベルＬ１の信号にレベルＬ０の信号が続く部分信号Ｐ１３−１を得る。
【００５９】
マーカ復号装置４は、セルＣ３〜Ｃ８についても同様に、互いに隣り合う２個のセル間における濃淡を比較する。マーカ復号装置４は、比較結果により、部分信号Ｐ１３−２，Ｐ１３−３およびＰ１３−４を得る。
【００６０】
マーカ復号装置４は、４つの部分信号Ｐ１３−１〜Ｐ１３−４を連結させることで、部分信号Ｐ１３（第２の復号パターン）を取得する（Ｓ１６）。マーカ復号装置４は、部分信号Ｐ１３の信号パターン配列から、４つの値「１，０，０，１」（第２データ）を取得する。４つの値「１，０，０，１」は、元のビット列のうち下位４ビットの復号データである。このようにして、マーカ復号装置４は、元のデータを、部分ごとに段階的に復元させる。
【００６１】
次に、マーカ読取装置１によりマーカからデータを読み取る方法について説明する。マーカの読み取りは、カメラ２による撮影、マーカ検出器３による検出、マーカ復号装置４による復号を含む。
【００６２】
カメラ２は、マーカを含む画像を撮影する。マーカ検出器３は、撮影された画像からファインダパターンを検出することで、マーカを検出する。マーカ検出器３は、画像に含まれるファインダパターンと、あらかじめ把握しているファインダパターンとのマッチングにより、双方における対応点同士の位置関係を求める。マーカ検出器３は、求めた位置関係を基に、ホモグラフィ行列を求める。マーカ検出器３は、ホモグラフィ行列を基に、マーカの歪みを補正する。なお、マーカ検出器３は、かかる歪みの補正を省略しても良い。
【００６３】
マーカ復号装置４は、画像における各単位領域の位置を認識する。マーカ復号装置４は、マーカにおいて水平方向および垂直方向へ配列された単位領域の数をあらかじめ把握している。マーカ復号装置４は、マーカを、水平方向および垂直方向における単位領域の数で分割することで、各単位領域の位置を設定する。
【００６４】
ここで、第１周期における濃淡を検出可能な第１解像度以上で画像が撮影されたとする。この場合に、マーカ復号装置４は、上述のＳ１１およびＳ１２により、元のデータの第１階層を復号する。
【００６５】
マーカ復号装置４は、所定回数の復号処理によって元のデータを復号することをあらかじめ把握している。あるいは、マーカ復号装置４は、復号処理の回数を、元のデータを復号した結果から取得しても良い。マーカ復号装置４は、例えば、元のデータの第１階層を復号した結果から、第２階層以降についての復号処理の回数を取得しても良い。
【００６６】
第１階層の復号のための撮影の後、利用者がカメラ２をマーカへ近づけるか、カメラ２がマーカをズームアップすることで、さらに高い解像度で画像を撮影したとする。マーカ復号装置４は、第２周期における濃淡を検出可能な第２解像度以上で画像が撮影された場合に、上述のＳ１３およびＳ１４により、元のデータの第２階層を復号する。第２解像度は、第１解像度より高い解像度である。
【００６７】
第２階層の復号のための撮影の後に、利用者がカメラ２をマーカへ近づけるか、カメラ２がマーカをズームアップすることで、さらに高い解像度で画像を撮影したとする。マーカ復号装置４は、第３周期における濃淡を検出可能な第３解像度以上で画像が撮影された場合に、上述のＳ１５およびＳ１６により、元のデータの第３階層を復号する。第３解像度は、第２解像度より高い解像度である。
【００６８】
マーカ復号装置４は、部分信号Ｐ１１’の取得（Ｓ１２）に使用された第１解像度に比べて、高い第２解像度を基に、部分信号Ｐ１２’を取得する（Ｓ１４）。さらに、マーカ復号装置４は、部分信号Ｐ１２’の取得（Ｓ１４）に使用された第２解像度に比べて、高い第３解像度を基に、部分信号Ｐ１３を取得する（Ｓ１６）。マーカ復号装置４は、画像の解像度に応じて、データを段階的に復号化する。
【００６９】
第１階層は、マーカに符号化された情報の概要に関するデータとする。第２階層は、マーカに符号化された情報に関して、第１階層より詳細なデータとする。第３階層は、マーカに符号化された情報に関して、第２階層よりさらに詳細なデータとする。マーカ読取装置１は、高い解像度でマーカが取り込まれるほど、マーカから詳細なデータを読み取る。マーカ読取装置１は、カメラ２のフォーカスがマーカからずれている状態から、マーカにフォーカスが合うまでの過程において、元のデータの第１階層から第３階層を順次読み取る。
【００７０】
第１階層は、マーカに共通の特定のデータ配列としても良い。マーカ復号装置４は、かかるデータ配列を取得した場合に、第２階層以降のデータの復号を実施しても良い。第１階層は、マーカのデータサイズの情報を含んでいても良い。なお、最初の１回の撮影により、セルごとの濃淡を識別可能な解像度でマーカが得られている場合、マーカ読取装置１は、元のデータの第１階層、第２階層および第３階層を一括して読み取ることができる。
【００７１】
図１に示す例では、マーカＭ１が、マーカＭ２およびマーカＭ３より大きい。マーカＭ２およびマーカＭ３は、ほぼ同じサイズである。マーカ読取装置１は、マーカＭ１からは符号化されている詳細情報を読み取り、マーカＭ２およびＭ３からは符号化されている概要情報を読み取る。
【００７２】
例えば、マーカＭ２の概略情報を得た利用者が、マーカＭ２の詳細情報の取得を望む場合は、利用者は、復号に必要な濃淡を検出可能な解像度で撮影するために、マーカＭ２にカメラ２を近づけるか、カメラ２でマーカＭ２をズームアップする。マーカ読取装置１は、さらに高い解像度でマーカＭ２を取り込むことで、マーカＭ２から詳細情報を読み取る。
【００７３】
出力装置５は、データが読み取られるごとに、取得情報を出力する。出力装置５は、マーカを含む画像を表示するとともに、復号化により取得した情報をマーカに重ねて表示しても良い。利用者は、マーカとともに表示される情報を基に、より詳細な情報を得たいマーカを容易に選別できる。マーカ読取装置１は、利用者が所望とする情報へ、利用者をスムーズに導くことができる。
【００７４】
仮に、マーカ読取装置１が、各セルの濃淡を十分に識別可能でない限りマーカから情報を読み取らないとする。この場合、解像度の変化に対して、マーカ読取装置１の動作は、マーカの情報を一括して読み取るか、情報の読み取りを全く行わないかのいずれかとなる。本実施形態のマーカ読取装置１は、図７の手順により、解像度を高めながらマーカを取り込むことで、マーカの情報を段階的に読み取ることができる。
【００７５】
本実施形態のマーカは、濃淡のパターンによって信号パターンＰ２を表す。信号パターンＰ２は、互いに多重化された３つの階層のデータを含む。３つの階層のデータは、それぞれ元のデータの第１階層、第２階層および第３階層である。信号パターンＰ２において、第１階層および第２階層についての部分信号Ｐ１１’およびＰ１２’は、第３階層についての部分信号Ｐ１３に対してパターン周期が拡張されている。マーカ復号装置４は、セルごとの濃淡を識別可能な解像度より低い解像度の画像から、部分信号Ｐ１１’およびＰ１２’の信号パターンを抽出することができる。
【００７６】
仮に、マーカ内の領域ごとに互いに異なる解像度で情報が読み取られるマーカを採用する場合、複数の領域が配置される分、マーカの面積が増大する。本実施形態のマーカは、共通の単位領域に対し、第１乃至第３周期における濃淡の比較により、第１乃至第３階層をそれぞれ復号可能とする。本実施形態のマーカは、領域ごとに異なる解像度で情報が読み取られるマーカに比べて、小型な領域を有効に利用して多くの情報を集約させることができる。
【００７７】
本実施形態において、マーカは、４つの濃度レベルの濃淡パターンを備えるものに限られない。マーカは、３つ以上の互いに異なる階調の濃淡が付されたものであれば良い。マーカ生成装置は、ビット列に対応する第１の信号パターン配列を２以上の部分信号に分解することで、３つ以上の互いに異なるレベルの信号を含む第２の信号パターン配列を生成すれば良い。
【００７８】
マーカ生成装置は、２のべき乗刻みの互いに異なるパターン数を持つ４つ以上の部分信号に、第１の信号パターン配列を分割しても良い。第２の信号パターン配列は、互いに多重化された４つ以上の階層のデータを含むものでも良い。マーカ生成装置は、５つ以上の互いに異なる階調の濃淡をセルに設定しても良い。マーカ復号装置４は、４回以上の復号処理によって元のデータを復号しても良い。
【００７９】
マーカ復号装置４は、セルごとに検出される輝度値の絶対値ではなく、互いに隣り合う部分領域同士の濃淡の大小関係に基づいて、データを復号化させる。仮に、マーカへ照射される環境光の色温度あるいは照度が変化しても、当該部分領域同士に同じ環境光が入射されていれば、濃淡の大小関係は維持される。したがって、マーカ復号装置４は、マーカが読み取られる場所における環境光の条件に関わらず、データを正確に復号できる。
【００８０】
出力装置５は、ディスプレイに限られず、復号化されたデータを出力可能ないずれの装置であっても良い。出力装置５は、表示以外の手段によりデータを出力する装置であっても良い。出力装置５は、例えば、復号化されたデータを印刷データとして出力する装置、音声データとして出力する装置であっても良い。
【００８１】
上述では、利用者がマーカを含む画像をカメラ２で撮影する例を示したが、カメラ２を固定し、マーカを付した被写体を撮影してもよい。被写体がカメラ２に近づくことにより段階的にマーカのデータを復号し、情報を取得する。取得した情報から、被写体を認識してもよい。すなわち、本実施形態のマーカ読取装置１は、認識装置として利用することもできる。また、カメラ２で撮影したマーカを含む画像から読み取りを行う例を示したが、マーカ読取装置１は、別の方法で取得したマーカを含む画像から読み取りを行ってもよい。
【００８２】
図９は、本実施形態のマーカ読取装置を備える電子機器の例を示すハードウェア構成図である。電子機器１０は、例えば携帯端末である。電子機器１０は、演算装置１１、記憶装置１２、カメラ１３、外部機器との通信のためのインタフェース（Ｉ／Ｆ）１４、入力装置１５、液晶ディスプレイ等の表示装置１６、および、各部の間のデータ通信のためのバス１７を備える。
【００８３】
演算装置１１は、ＣＰＵである。演算装置１１は、マーカ復号プログラムによる演算を行う論理回路１８を備える。演算装置１１は、電子機器１０のハードウェア各部を制御する。記憶装置１２は、ＲＯＭ、ＲＡＭ、外部記憶装置などにより構成される。演算装置１１は、ＲＯＭなどに記憶されたプログラムに基づいて各種プログラムを実行する。
【００８４】
カメラ１３は、画像を撮影する。マーカ読取装置１のカメラ２は、電子機器１０のカメラ１３と共通のものであっても良い。入力装置１５は、電子機器１０への入力操作を受け付けるポインティングデバイスである。表示装置１６は、電子機器１０の動作内容を示す画面、操作画面、およびカメラ１３で撮影された画像等を表示する。マーカ読取装置１の出力装置５は、電子機器１０の表示装置１６であっても良い。
【００８５】
マーカ読取装置１は、携帯端末以外の電子機器に備えられるものであっても良く、マーカの読み取り専用の電子機器であっても良い。
【００８６】
実施形態によれば、マーカ復号装置４は、マーカにおける部分領域同士の濃淡の大小関係から、復号データを取得する。マーカ復号装置４は、パターン周期が拡張された部分信号から復号可能であることで、互いに多重化されたデータを、解像度に応じて段階的に復号できる。これにより、マーカからデータを段階的に読み取ることができるという効果を奏する。
【００８７】
本発明の実施形態を説明したが、この実施形態は、例として提示したものであり、発明の範囲を限定することは意図していない。この新規な実施形態は、その他の様々な形態で実施されることが可能であり、発明の要旨を逸脱しない範囲で、種々の省略、置き換え、変更を行うことができる。この実施形態やその変形は、発明の範囲や要旨に含まれるとともに、特許請求の範囲に記載された発明とその均等の範囲に含まれる。
【符号の説明】
【００８８】
１  マーカ読取装置、２  カメラ、３  マーカ検出器、４  マーカ復号装置、Ｍ１〜Ｍ３  マーカ、Ｃ１〜Ｃ８  セル。
【図１】
0006352875.tif 000002
【図２】
0006352875.tif 000003
【図３】
0006352875.tif 000004
【図４】
0006352875.tif 000005
【図５】
0006352875.tif 000006
【図６】
0006352875.tif 000007
【図７】
0006352875.tif 000008
【図８】
0006352875.tif 000009
【図９】
0006352875.tif 000010