マーカ素子の設置方法及び識別方法
【課題】
マーカ素子の判別精度を格段に向上させ、マーカ素子の利用環境を拡大することが可能なマーカ素子の設置方法及び識別方法を提供すること。
【解決手段】
M系列状に配列されるマーカ素子を地面に設置するマーカ素子の設置方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、同一のサイズの該マーカ素子(a)を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子(b)〜(d)をM系列状に配列するデータ列とを有することを特徴とする。
マーカ素子の判別精度を格段に向上させ、マーカ素子の利用環境を拡大することが可能なマーカ素子の設置方法及び識別方法を提供すること。
【解決手段】
M系列状に配列されるマーカ素子を地面に設置するマーカ素子の設置方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、同一のサイズの該マーカ素子(a)を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子(b)〜(d)をM系列状に配列するデータ列とを有することを特徴とする。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、マーカ素子の設置方法及び識別方法に関し、特に、M系列状に配置されるマーカ素子を利用して位置特定を行う際に利用される、マーカ素子の設置方法及び識別方法に関する。
【背景技術】
【0002】
近年、人々が行きたい場所に、安全、快適に移動できる環境が求められている。このような環境を提供する手法のひとつとし、歩行者ナビゲーションシステムが注目され、様々な研究が行われている。
【0003】
現在、一般的に普及している歩行者ナビゲーションシステム(非特許文献1)は、GPS(Global Positioning System)を用いた位置特定を行うため、高層ビル街や地下、建物内などにおいて、電波の反射や遮蔽などが測位結果に影響を与える可能性がある。無線通信を用いたポジショニングを行うシステムをして、Bluetooth(登録商標)を用いたインフォサイン(非特許文献2)などがあるが、これは地図によるナビゲーションを行うため、利用者は地図の理解や解釈が必要となる。また、ICタグ(非接触IC)を用いたナビゲーションシステムも研究されているが、これは専用携帯情報端末が必要である。
【0004】
一方、地面に設置したマーカを撮影することで位置特定を行う、「M−CubITS(M-sequence Multimodal Markers for ITS)歩行者WYSIWYAS(What You See Is What You Are Suggested)ナビゲーションシステム」が提案されている(特許文献1,非特許文献3)。このナビゲーションシステムは、現在広く普及しているカメラ付き携帯電話機でマーカを撮影して位置特定を行い、撮影した画像上に進むべき方向を矢印で直接表示することで、地図による解釈を必要としない道案内を行う。
【0005】
現在までにM−CubITSのマーカ素子として、視覚障害者誘導用ブロックを用いたマーカの検討(非特許文献4,6)と、タイルカーペットを用いたマーカの検討(非特許文献5)が行われているが、視覚障害者誘導用ブロックやタイルカーペットは利用できる環境が限られるため、他のマーカ素子の検討を行う必要がある。
【0006】
特に、視覚障害者誘導用ブロックでは、点字ブロックに三角形等の図形を描き該図形の向き及び色でM系列のビット情報を表現しており、タイルカーペットでは、異なる色の選択又は組み合わせでM系列のビット情報を表現している。このため、マーカ素子の判別精度は、これらのマーカ素子が配置される環境の明るさや色合いの影響を受け易く、例えば、夜間でのカメラ付き携帯電話のフラッシュ程度では、殆どマーカ素子を判別することができない。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特願2008−70486号
【非特許文献】
【0008】
【非特許文献1】M. Arikawa, S. Konomi, and K. Ohnishi, "NAVITIME: Supporting Pedestrian Navigation in the Real World", IEEE Pervasive Computing, vol. 6, no.3, pp. 21-29, July-Sept. 2007
【非特許文献2】櫻井光徳,松橋正道,”インフォサインによる歩行者ナビゲーション”,NEC技報,Vol. 61,no. 1,pp. 53-56,Jan. 2008
【非特許文献3】長谷川孝明,”ITSプラットホーム”EUPITS”〜実現へのアプローチから”,電子情報通信学会技術研究報告,ITS2003-8,pp. 41-47, May, 2003
【非特許文献4】山下清司,長谷川孝明,”視覚障害者誘導用ブロックを用いたM-CubITS歩行者ナビゲーションシステムについて”,電子情報通信学会論文誌(A),Vol. J88-A, No. 2, pp.269-276, Feb. 2005
【非特許文献5】T. MANABE, T. HASEGAWA, Y. MATSUOKA, S. FURUKAWA, A. FUKUDA, "On the M-CubITS Pedestrian WYSIWYAS Navigation Using Tile Carpets", Proceedings of the 10th IEEE International Conference on Intelligent Transportation Systems (ITSC'07), pp. 879-884, Oct. 2007
【非特許文献6】芹澤崇,間邊哲也,長谷川孝明,宮谷隆,”音声案内・サーバ処理型M-CubITS歩行者WYSIWYASナビゲーションシステムの提案”,電子情報通信学会技術研究報告,ITS2007-90,pp. 71-76,May 2008
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明が解決しようとする課題は、上述した問題を解決し、マーカ素子の判別精度を格段に向上させ、マーカ素子の利用環境を拡大することが可能なマーカ素子の設置方法及び識別方法を提供することである。
【課題を解決するための手段】
【0010】
上記課題を解決するため、請求項1に係る発明は、M系列状に配列されるマーカ素子を地面に設置するマーカ素子の設置方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とを有することを特徴とする。
【0011】
請求項2に係る発明は、請求項1に記載のマーカ素子の設置方法において、該基準列を構成するマーカ素子のサイズは、該データ列を構成するマーカ素子のサイズより大きく、該基準列の配列方向に垂直な方向である横基準線を、該基準列を構成するマーカ素子間の目地で設定し、該データ列は該横基準線に沿って所定のビット数の情報を表現するようにマーカ素子を配列することを特徴とする。
【0012】
請求項3に係る発明は、請求項1又は2に記載のマーカ素子の設置方法において、該地面は舗道であることを特徴とする。
【0013】
請求項4に係る発明は、地面に設置されたマーカ素子からM系列に対応するデータを取得するマーカ素子の識別方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、該マーカ素子の配列は、同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とから構成され、配列された該マーカ素子を撮影した画像データから、該基準列と該データ列を検出し、該基準列に対する該データ列の配置に基きデータ列の配列方向及び該マーカ素子の撮影方向を判別することを特徴とする。
【0014】
請求項5に係る発明は、請求項4に記載のマーカ素子の識別方法において、該画像データから該基準列の配列方向に相当する縦方向のブロック体のエッジと、該縦方向と略直交する横方向のブロック体のエッジとを抽出するエッジ抽出工程と、該基準列内の該横方向のエッジに基き横基準線を検出する横基準線検出工程と、該データ列内の該横基準線と該縦方向のエッジとで囲まれる区域を1つのデータセルとすることを特徴とする。
【0015】
請求項6に係る発明は、請求項4又は5に記載のマーカ素子の識別方法において、該画像データの該データ列からビットデータを取得するビット列取得工程と、該ビットデータの誤りを訂正処理する誤り訂正工程とを有することを特徴とする。
【0016】
請求項7に係る発明は、請求項4乃至6のいずれかに記載のマーカ素子の識別方法において、該地面は舗道であることを特徴とする。
【発明の効果】
【0017】
請求項1に係る発明により、M系列状に配列されるマーカ素子を地面に設置するマーカ素子の設置方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成されるため、ブロック体間の目地によりブロック体の形状が容易に判別することが可能となり、マーカ素子の判別においてマーカ素子が設置される環境の照度等の影響を受けることが抑制される。しかも、マーカ素子が四角形の表面を有するため、縦・横のエッジ(目地)のみ判別するだけで、マーカ素子の形状が判別でき、判別処理に係る情報処理の負担を軽減することが可能となる。
【0018】
しかも、基準列を設けるため、マーカ素子のM系列に係る位置情報だけでなく、データ列が基準列に対していずれの側に位置するかを判別することにより、該マーカ素子を観察している利用者がどの方向を向いているのかも容易に特定することができ、より正確なナビゲーション情報を利用者に伝達することが可能となる。また、基準列は、同一のサイズのマーカ素子を直線状に連続して配置して構成されるため、マーカ素子の配列の中から容易に基準列を抽出することができる。しかも、データ列には、該基準列に使用したマーカ素子と異なるサイズのマーカ素子使用しているため、データ列と基準列とを容易に区別することも可能である。
【0019】
請求項2に係る発明により、基準列を構成するマーカ素子のサイズは、データ列を構成するマーカ素子のサイズより大きく、該基準列の配列方向に垂直な方向である横基準線を、該基準列を構成するマーカ素子間の目地で設定し、該データ列は該横基準線に沿って所定のビット数の情報を表現するようにマーカ素子を配列するため、基準列が提供する横基準線がデータ列を判別する際の有用な手掛かりとなり、データ列の判別精度を高め、情報処理に係る負担を軽減することが可能となる。しかも、横基準線を確定するマーカ素子には、大きいサイズのマーカ素子が使用されているため、直線の傾きの変動がより少ない横基準線を設定することができる。
【0020】
請求項3に係る発明により、地面は舗道であるため、本発明に係るマーカ素子の設置方法を、歩行者や車両へのナビゲーションステムに好適に利用することができる。
【0021】
請求項4に係る発明により、地面に設置されたマーカ素子からM系列に対応するデータを取得するマーカ素子の識別方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、該マーカ素子の配列は、同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とから構成されているため、配列された該マーカ素子を撮影した画像データにより、該基準列と該データ列を検出することで、該基準列に対する該データ列の配置に基きデータ列の配列方向や該マーカ素子の撮影方向を容易に判別することができる。しかも、該画像データからブロック体間の目地を利用して、ブロック体の形状が容易に判別することができ、マーカ素子の判別においてマーカ素子が設置される環境の照度等の影響を受けることが抑制される。しかも、マーカ素子が四角形の表面を有するため、縦・横のエッジ(目地)のみ判別するだけで、マーカ素子の形状が判別でき、判別処理に係る情報処理の負担を軽減することが可能となる。
【0022】
しかも、基準列を利用することで、基準列に対するデータ列の配置から、データ列のデータの読み取り方向が容易に判別でき、データの読み取り精度の低下を抑制できる。また、マーカ素子を観察している利用者がどの方向を向いているのかを判別する場合に、基準列に対するデータ列の配置を特定することで、利用者の向きを容易に判別することができる。なお、利用者の向きはデータ列のみからでも判断することは可能であるが、通常の利用者の位置情報を取得するのに必要なデータ量(位置情報を表すM系列の部分系列のデータ量)の2倍以上のデータを取得する必要があり、マーカ素子の配列を撮影する際の視野を通常の2倍以上に設定しなければならない。また、これに係る情報処理時間も極めて長くなる。
【0023】
請求項5に係る発明により、画像データから基準列の配列方向に相当する縦方向のブロック体のエッジと、該縦方向と略直交する横方向のブロック体のエッジとを抽出するエッジ抽出工程と、該基準列内の該横方向のエッジに基き横基準線を検出する横基準線検出工程と、該データ列内の該横基準線と該縦方向のエッジとで囲まれる区域を1つのデータセルとするため、読み取るべきデータが画像データのどの領域に存在するのかを予め特定でき、データの読み取り精度を格段に向上させることが可能となる。
【0024】
請求項6に係る発明により、画像データのデータ列からビットデータを取得するビット列取得工程と、該ビットデータの誤りを訂正処理する誤り訂正工程とを有するため、例えば、データの読み取りを局所的に誤っても、より適正なデータに修復することが可能となる。特に、地面に枯葉などの異物が存在する場合にはマーカ素子を正確に判別することが困難となるため、このような誤り訂正工程を設けることで、このような不具合を排除することが可能となる。しかも、本発明は、M系列の配置データを利用することが前提となっており、M系列の部分系列データから前後のあるべきデータ系列を容易に推定することが可能であるため、誤り訂正工程も簡便に構成することができる。また、位置情報を格納したデータベースを利用し、蓄積したデータ配列と読み取ったデータとを照合し、訂正することも可能である。
【0025】
請求項7に係る発明により、地面は舗道であるため、本発明に係るマーカ素子の識別方法を、歩行者や車両へのナビゲーションステムに好適に利用することができる。
【図面の簡単な説明】
【0026】
【図1】本発明に係るマーカ素子の設置方法及び識別方法を適用可能なナビゲーションシステムの一例を示す図である。
【図2】M系列のデータ(3ビットの場合)を発生する仕組みを説明する図である。
【図3】マーカ素子に利用されるブロック体の表面の形状を例示する図である。
【図4】基準列の一方側のみデータ列を配置する例を示す図である。
【図5】図4に示したデータセル単位に設置されるマーカ素子のパターンの種類を示す図である。
【図6】図4に示したマーカ素子の配列において、データ列の読み取り方向を説明する図である。
【図7】図6における読み取り方向に沿ったマーカ素子の配列と、M系列データの配列とを説明する図である。
【図8】1つのデータセルに含まれるマーカ素子の情報量を変更する例を示す図である。
【図9】基準列の両側にデータ列を配置する例を示す図である。
【図10】2つの基準列の間にデータ列を配置する例を示す図である。
【図11】画像処理の流れを示すフローチャートである。
【図12】画像処理によって順次変化する画像の様子を説明する図である。
【図13】画像データ中の注目ピクセルと周辺ピクセルとの位置関係を説明する図である。
【図14】本発明に係る実験で使用したマーカ素子の配列を示す図である。
【発明を実施するための形態】
【0027】
以下、本発明に係るマーカ素子の設置方法及び識別方法について、詳細に説明する。
まず、本発明のマーカ素子の設置方法及び識別方法が、好適に利用可能なナビゲーションシステムの一つである、「M−CubITS歩行者WYSIWYASナビゲーションシステム」(非特許文献3等参照)について説明する。
【0028】
ここで、用語「WYSIWYAS」は、ワープロなどで用いられる、見たままのもので編集し印刷されること意味する「WYSIWYAG(What You See Is What You Get)方式」に対応した表現であり、“What You See Is What You Are Suggested”の頭文字を取った造語である。特に、ナビゲーションシステムにおいては、「解釈を必要としない直感的な表示による案内」を実現するためのHMI(Human-Machine Interface)の基本設計概念を示す用語として使用される。行き先経路を地図上で表現する場合では、地図の解釈が必要であるが、例えば、風景上に直接矢印を表示することで、直感的で分かりやすいナビゲーションが実現できる。
【0029】
用語「M−CubITS」は、”M-sequence Multimodal Markers for ITS; M-Cubed for ITS”)の頭文字を利用した造語である。これは、0又は1を表すマルチモーダルなマーカ素子を、M系列状に地面に配置して、ユーザの持つカメラでマーカ素子の並びを検出し、データベースとの比較から、位置と方向を特定するポジショニングシステムを意味している。M−CubITSは、地面に設置されたマーカ素子から情報を得るため、GPSによるポジショニングでは測位誤差が生じてしまうような高層ビル街、地下や建物内においても、高精度な位置特定が可能である。
【0030】
M−CubITSに利用されるマーカ素子は、ペイントやシールなどで簡単に作製できるが、本発明では、マーカ素子の識別に際して、マーカ素子が配置される環境の明るさや色合いの影響など避けるため、地面に配置するブロック体の形状を利用している。特に、画像認識や情報処理の負担を軽減するため、マーカ素子としては、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成されている。
【0031】
歩行者向けのM−CubITSによる位置特定は、既に広く普及しているカメラ付き携帯電話機のカメラの利用によって、低コストで実現が可能である。また、M−CubITSの位置特定に用いる画像上にユーザの進むべき方向を矢印で表示することでWYSIWYASナビゲーションが実現できるため、M−CubITSとWYSIWYASナビゲーションの親和性は極めて高い。
【0032】
現在までに研究されているM−CubITS歩行者WYSIWYASナビゲーションシステムの処理形式は、非特許文献4又は5に示されるような端末処理型と、特許文献1又は非特許文献6に示されるようなサーバ処理型に分けられる。端末処理型は利用者の端末にソフトウェアをダウンロードし、以後の処理を全て端末で行うために、一度ダウンロードを行えば以後は通信を行うことなく利用できる。それに対しサーバ処理型は、端末で撮影したM−CubITSのマーカ素子の画像を電子メールを利用してサーバに送信し、サーバで処理を行う。通信が保たれた環境と、メール送受信の時間が必要となるが、サーバの方がユーザの端末よりもCPU性能が高いため、計算の複雑な処理を端末型よりも短時間で行える利点を持つ。
【0033】
図1は、サーバ処理型のナビゲーションシステムの概略を示す図である。利用者(ユーザ)は、地面にあるマーカ素子を、カメラ付き携帯電話機で撮影し、撮影画像と目的地(利用者の行き先等)を電子メールに付して、サーバに送る。サーバ側は受信したメールに添付された画像を処理し、位置情報(現在位置及び利用者の向き)を取得する。そして、現在位置から目的地までの経路を探索し、その結果、現在位置からどの方向に進めば良いかを説明する案内(ナビゲーション)文を作成し、ユーザに電子メールを返信する。当然、撮影画像に行き先方向を示す矢印を付与することも可能である。ユーザは、サーバからの電子メールを受信し、案内文又は添付された矢印付き画像を表示し、行き先方向を判別する。
【0034】
位置情報は、M系列に従って配置されたマーカ素子によって特定される。本発明では、M系列のデータを表示するために配置されたマーカ素子を、「M系列状に配列されるマーカ素子」と言う。図2を用いて、M系列のデータ(3ビットの場合)を発生する仕組みを説明する。
【0035】
M系列は、シフトレジスタ(図2(a)中の3つの四角部分)を用いて作成可能な0と1との2進数から成る配列である。
例えば、図14に示すように、3段のシフトレジスタを用いる場合は、各段のセルの値を1クロック毎に右に移動し、3段目のセルの値を出力するとともに、1段目のセルには、前クロック時点における1段目のセルの値(値D1として参照)と3段目のセルの値(値D2として参照)との排他的論理和(EX−OR。図2(b)にD1及びD2の各値に対する出力値を表で示す。)を入力することとすると、シフトレジスタに保持される値は、図2(a)のシフトレジスタの下側に順次例示されるように、111,011,101,・・・,110と7通りに変化し、その後のクロックで、この変化を周期的に繰り返す。その間にシフトレジスタからは、1周期の配列が1110100から成る系列長7ビットのM系列が繰り返し出力される。
【0036】
ここで、シフトレジスタに保持された連続した3ビットは、1周期のM系列の中でユニークな存在であり、M系列の連続した3ビットを見れば、7ビットのM系列中の何処の位置であるかが特定できる。例えば、101のビット列は、図2(a)の左側に二重のアンダーラインで表示された位置に特定される。
【0037】
シフトレジスタの段数をm段とすると、発生するM系列の系列長Lは、
L=2m−1
で表される。この場合、M系列の連続するmビットを見れば、Lビット中の何処の位置であるかが特定できることになる。例えば、30cmのブロック(1枚1ビットとする場合)を直線状に配置し、12枚、3.6mの長さをM系列の部分系列(位置情報と特定するために必要なビット列。M系列を発生させるシフトレジスタの段数(M系列の生成多項式の次数)と同じ。)とすると、系列長L=212−1となり、位置特定が可能な長さは、30cm×L=約1230mとなる。なお、1枚のブロックに2ビット載せることも可能であり、その場合には、L=224−1となる。
【0038】
上述したM系列では、データ単位を0又は1の1ビット(2値)を基本に説明したが、本発明におけるM系列の意味は、このような2値の配列に限らず、1つのデータ単位がS種類の値(S値)を有し、m個のシフトレジスタを用いてデータ系列発生させる場合(系列長L=Sm−1)も含むものである。
【0039】
本発明で利用されるマーカ素子は、ブロック体で構成される。これは、ブロック体間の目地によりブロック体の形状が容易に判別することが可能となり、マーカ素子の判別においてマーカ素子が設置される環境の照度等の影響を受け難くするためである。ブロック体の形状やサイズは基本的には任意であるが、より好ましくは、図3に一例を示すように、1つのブロック体のみ(図3(a)〜(d)参照)又は複数のブロック体を組み合わせること(図3(e)参照。三角形のブロック体を2つ以上組み合わせた例を示す。)により、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成されるブロック体を利用する。
【0040】
ブロック体としては、地面の広い範囲に渡って設置する場合には、規格化された市販品を用いるのが好ましい。このような市販品は、設置コストが安価である上、サイズも規格化されており、不測な形状が出現することが無いため、画像データからのマーカ素子の判別精度も、容易に向上させることができる。例えば、歩行者が歩道や施設内の廊下などでナビゲーションシステムを利用する場合には、インターロッキングブロック、タイルは、好適に利用可能である。インターロッキングブロックとは、コンクリートブロックをかみ合わせるように敷設することで加重分散効果を発揮させることのできる舗装用コンクリートブロックである。機能性と色や形の多様性から、近年、歩道や車道、広場などの舗道で、主に屋外環境において、幅広く利用されている。
【0041】
図4は、図3に示すブロック体をマーカ素子として利用し、配列した一例を示すものである。図4に付した(a)〜(d)は、図3の各形状を有するブロック体(a)〜(d)に対応している。
本発明のマーカ素子の設置方法では、同一のサイズのマーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列を有することを特徴とする。
【0042】
このような基準列を設ける利点としては、該基準列に対してデータ列がどの位置に配置されているかを判別することにより、マーカ素子を観察している利用者が現在どの方向を向いているのかを容易に特定することができる。さらに基準列を基準としてデータ列内のデータがどの順序で並んでいるのかも、容易に判別することができる。特に、利用者の観察方向を判別する場合には、基準列に対して、データ列を非対称に配置することが必要であり、例えば、図4のように基準列の片側にデータ列を配置する方法や図9のように基準列の両側に、データ列の幅が異なるデータ列を各々配置する方法などがある。
【0043】
図4に示すように、基準列を構成するマーカ素子(a)のサイズは、データ列を構成するマーカ素子(c)〜(d)のサイズより大きく、また、該基準列の配列方向に垂直な方向である横基準線を、該基準列を構成するマーカ素子(a)間の目地で設定し、該データ列は該横基準線に沿って所定のビット数の情報を表現するようにマーカ素子(c)〜(d)を配列する。このように、基準列が提供する横基準線は、データ列を構成するマーカ素子を設置したり、該マーカ素子の配列からデータを判別する際に、有用な手掛かりとなる。
【0044】
しかも、横基準線を確定するマーカ素子(a)には、地面に配置するブロック体の中で最も大きいサイズのブロック体を使用することにより、直線自体の傾きの変動がより少ない横基準線を設定することができ、より安定したデータの識別が可能となる。
【0045】
図4の実施例においては、データ列を構成する基本的なデータ単位を、横基準線と縦線とで囲まれる区域(図の網掛け領域)としている。このようなデータ単位の基準となる区域を「データセル」という。
【0046】
データセルを、横基準線と縦線とにより設定しているため、読み取るべきデータが画像データのどの領域に存在するのかを予め特定でき、データの読み取り精度を格段に向上させることが可能となる。
【0047】
各データセルに設定されるデータは、マーカ素子の組み合わせ又は配置で表現される。具体例として、図3に示す大きさの異なる3種類のブロック体(b)〜(c)を利用し、図5に示すように、4種類のデータ(2ビット)を表現している。なお、マーカ素子が表示するデータを識別する際には、マーカ素子の個々の形状を判別するより、例えば、図4や図5の場合のように、データセル内の横線(ブロック体のエッジ又はブロック体間の目地が形成する横線)の位置及び数を特定することで、容易にデータを識別することができる。
【0048】
データ列内のマーカ素子の配置方法は、図6の丸数字の順番で示すように、基準列側から矢印Aで示す方向に順次配列されており、各行の最終データセルに到達すると、一つ上段の行に移動し、再度、基準列側から矢印Aで示す方向に、続きのデータが順次配列される。これらを繰り返すことで、図7に示すM系列のデータを各データセル内に順に配置することが可能となる。配列方向は、矢印Aの方向に限らず、矢印Aとは逆の方向であっても良いし、また、各行のデータの最終データセルまでデータ入力に使用するのではなく、基準列側から所定数のデータセルをM系列のデータ配置に使用するよう設定することも可能である。
【0049】
さらに、データ列は図6のように4列のものに限らず、案内する経路の長さによって選択することも可能である。例えば、符号長262,143ビット(218−1ビット)のM系列を用いると、インターロッキングブロックの1行の長さ(図5におけるデータブロックの縦の長さ)を30cmとすれば、約13kmの案内経路上の位置と方向を一意に特定できる。このM系列から位置特定を行うには、9個のデータブロックを撮影できればよい。すなわち、データブロックを3行×3列撮影できればよいので、データ列は3列で十分である。
【0050】
図8〜図10は、マーカ素子の設置方法の他の実施例をしている。
図8(a)は、データセル内でマーカ素子を用いた表現に制約があるため、2列のマーカ素子の並びを1つのデータセルとし、3ビット分のデータを表現したものである。具体的には、図8(b)のように、1つ目のブロックと2つ目のブロックとの組み合わせで、0〜7の8種類のデータを表現できるよう構成している。このように、横基準線と縦線とで区画される最小区域(図4の「データセル」参照)を複数集めて一つのデータセルを構成することも可能である。なお、M系列の表現方法には、「0100111」を「青緑青青緑緑緑」などのように直接二種類の色(又は形)で表現する方法(直接表現型)と、「(01)(00)(11)(1」のように2ビット分をまとめて4種類の色や形で表現する方法(変換表現型)がある。図8(a)は変換表現型であり、M系列のデータの並びを3ビットのデータセル毎に区切り、各データセルのデータの配列に対応して図8(b)のマーカ素子の配列パターンを選択している。
【0051】
図9は、基準列の両側にデータ列(1)及び(2)を配置する例を示したものである。基準列を歩道の中央付近に配置する場合には、片側に十分な数のデータ列を確保できない場合もあり、そのような場合に、図9のような配置が利用できる。マーカ素子の識別に際しては、例えば、同じ横基準線上に位置する(同一行の)データ列について、データ列(1)の後にデータ列(2)のデータを続けて読み取り、その後、次の行のデータ列を同様に読み取る方法などがある。
【0052】
ただし、基準列とデータ列との位置関係で、利用者がマーカ素子を観察している方向を判別する必要があるため、基準列を基準にデータ列(1)とデータ列(2)とが線対称とならないように、各データ列の配置を工夫する必要がある。
【0053】
図10は、2つの基準列(1)及び(2)の間に、データ列を配置する例を示す図である。例えば、データ列の始まりと終わりを基準列で表示するよう構成することも可能である。ただし、2つの基準列(1)及び(2)は、いずれの基準列であるかを明確にするため、各基準列の幅を互いに異ならせる必要があり、例えば、図10(a)のように、基準列を構成するマーカ素子の列の数を基準列毎に変更したり、図10(b)のように、基準列に使用されるマーカ素子のサイズ又は形状を基準列毎に変更することが望ましい。
【0054】
次に、配列されたマーカ素子からデータを読み取る、マーカ素子の識別方法を説明する。
図11は、マーカ素子の識別に際して行われる、画像処理の流れを示したものである。画像は、利用者が携帯電話などに付属するカメラでマーカ素子の配列を撮影することで、画像データをして入力される(図12(a)の入力画像を参照)。
【0055】
(1)1次微分フィルタ(エッジ抽出工程)
撮影画像に対し、横方向と縦方向の1次微分フィルタを用いることで、エッジを抽出する。図12(b)は横方向について1次微分フィルタでエッジを抽出したものであり、図12(c)は、縦方向について1次微分フィルタでエッジを抽出したものである。
【0056】
フィルタの出力を2値化する際に、携帯電話機の機種による画像の差や、画像の明暗(撮影した際の照明環境)に対応するため、閾値を固定とせず、動的に変化させることが好ましい。
【0057】
以下に2値化の方法を具体的に説明する。
図13に示すような、1次微分フィルタから出力された数値を格納したピクセル群の中で、注目ピクセル群の2値化を行う場合には、注目ピクセル群及び周辺ピクセル群の数値から1つの平均を求める。この平均値から、次の式で注目ピクセル群を2値化するための閾値を求める。
閾値=k×平均値
この際、kは定数であり、マーカ素子を配置する環境を考慮し、あらかじめ設定しておく(後述する実験ではk=2.0とした)。
【0058】
さらに、この閾値を利用して、画像中の全ピクセルについて、2値化を行う。なお、周辺ピクセルや注目ピクセルの数を、マーカ素子の配列部分の入力画像のサイズの大きさに応じて、動的に変化させることも可能である。例えば、入力画像のサイズが大きい場合には、周辺ピクセル、注目ピクセル数を多く、小さい場合には少なくすることで、画像のサイズの違いに対して頑健性を得る。
【0059】
(2)縦直線検出
縦方向の1次微分フィルタの2値化画像(図12(c)参照)に対し、Hough変換を用いて直線検出を行う。この処理によってブロックの縦方向の目地を検出できる。直線検出後に、ラベリング処理を行うことにより、画像中のブロックを列ごとに領域を分ける(図12(d)「縦直線の検出」参照)。
【0060】
なお、撮影した画像は、通常、カメラのレンズの光軸とマーカ素子の配列面とが垂直でないため、あおりが発生し、この影響で画像が遠近的に表示され、図12(c)のように、各縦直線は平行にはならない。同様に、後述する横基準線や横線も、縦直線に全てが直交することにはならない。本発明では、このような縦直線と横基準線等との配置関係を「略直交」と表現している。
【0061】
(3)画像の回転
横方向の1次微分フィルタの2値化画像に対して回転処理を行い、横方向のエッジを画像中で、可能な範囲で水平にする。具体的には、上記(2)の「縦直線検出」工程で検出した、各縦直線の縦方向の傾きを表す角度θから、傾きの平均値Θを算出し、横方向の1次微分フィルタの2値化画像(図12(b)の横方向のエッジ抽出画像を参照)を、−Θだけ回転させる(図12(e)「画像の回転結果」参照)。
【0062】
(4)横基準線検出(横基準線検出工程)
上記(3)の「画像の回転」で回転させた画像に対して、Hough変換を行うことにより、図12(f)に示すような、基準列からデータ列へ、又はデータ列から基準列へ続く横方向の目地(横基準線)の検出を行う。この横基準線がデータセルの行を分ける線であり、この横基準線を用いることで、各データセルと基準列のマーカ素子(ブロック体)の縦方向の位置を、行番号を利用して識別することができる。さらに、横基準線と縦直線とを組み合わせることによって、各データセルの位置を、行と列の番号を用いることで識別することも可能となる。
【0063】
(5)各データセルの横線検出
各データセル中の横線(横方向の目地)の検出を行う。データセル中の横線は、長さが短く、Hough変換による検出は困難なため、以下の方法を取る。
図12(f)のような上記(4)の「横基準線検出」による出力画像に対し、ラスター順にピクセルに注目する。横直線間において、エッジを検出したピクセル数とエッジを検出していないピクセル数を比較し、エッジを検出したピクセル数の方が多ければ、そこに横線があるものと認識する(図12(g)「横線検出結果1」参照)。
【0064】
(6)ビット列の取得(ビット列取得工程)
位置情報を表すビット列と撮影方向を取得する。基準列の位置から撮影方向を判別し、図12(g)のように順方向(基準列がデータ列の右側)であればデータ列の右下から、逆方向(基準列がデータ列の左側)であればデータ列の左上からデータセルを識別していくことで、位置情報を表すM系列の部分系列(ビット列)を取得し、出力する。
【0065】
M系列の部分系列に対する誤り訂正(誤り訂正工程)
画像処理から出力されたビット列には、様々な要因により正しく識別できなったビットが含まれる可能性がある。そこで、画像処理により取得したM系列の部分系列から位置特定を行う際に、誤り訂正を行う。M系列による位置特定の場合、位置特定に必要な長さ以上のビット列を取得した場合には、その冗長分を用いて誤り訂正を行うことができる。
【0066】
具体的には、画像処理出力ビット列から撮影画像の位置特定を行う際に、データベースのM系列と画像処理の出力ビット列を比較し、ハミング距離が最も小さい位置候補を、誤り訂正を含めた位置特定結果とする。これ以外に、本発明では、M系列の配置データを利用することが前提であるため、M系列の部分系列データから前後のあるべきデータ系列を容易に推定することも可能であり、このような処理により、誤り訂正工程を行うこともできる。
【0067】
本発明者らは、以下に説明する方法で、本発明に係る実験を行った。
(1)実験システムの構築
本発明のマーカ素子の設置方法及び識別方法の有効性を確認するために、埼玉大学構内の案内を行う「実験用M−CubITS歩行者WYSIWYASナビゲーションシステム」を構築した。
【0068】
今回の実験では、使用できるインターロッキングブロックに限りがあり、図5で示したマーカ素子(ブロック体)のうち、00を表すブロック体が準備できなかった。そのため、00のマーカ素子を用いずにシステムを実現するために、M系列の符号化を行った。具体的には、M系列を3ビットずつ、変換表(表1参照)に従って4ビットに変化する符号化を行った。
【0069】
【表1】
【0070】
符号化したM系列を用いたデータベースを構築し、案内経路上に敷設するインターロッキングブロックの一部分を屋外環境で再現した(図14に一部の配列を示す)。敷設したインターロッキングブロックの全長は6mであり、1行の長さ30cmのインターロッキングブロックを20行敷設した。
実験で用いたM系列の符号長は262,143ビットであり、これは符号化すると、ブロック3行から取得できる24ビットのビット列から一意に位置特定が可能となる符号長である。
【0071】
(2)実験方法
本発明の実験では、正しい位置特定がなされれば、正しい案内が可能であるため、位置特定の成功率を測定する。具体的には、12種類のカメラ付き携帯電話機を用いて、日中における実験用インターロッキングブロックを合計116枚(雨天時の画像を15枚含む)撮影した。撮影した画像を用いて、位置特定を行い、位置特定の成功率を測定した。
次に、1種類のカメラ付き携帯電話機を用いて、夜間の照明環境下で実験用インターロッキングブロックの撮影を行った。照明装置とブロック体との距離を3mと7mの2通りを用意し、それぞれ8枚ずつ、合計16枚の画像を収集し、位置特定の成功率を測定した。
【0072】
(3)実験結果
日中における撮影画像の位置特定結果を示す。誤り訂正を行わず、画像処理の結果だけで正しい位置特定ができた画像の枚数は、全116枚の画像のうち、98枚(84.5%)であった。誤り訂正の処理(データベースのM系列と画像処理の出力ビット列を比較を利用)を加えて正しい位置特定が行われたものは、111枚(95.7%)であった。これにより、誤り訂正の有効性を確認した。
【0073】
残りの5枚の画像のうち、画像処理から位置特定結果を得られなかったものが4枚(3.4%)、異なる位置を誤検出したものが1枚(0.9%)であった。このようなナビゲーションシステムでは、実環境において位置特定結果が得られなった画像に対しては、ユーザが撮り直せばよい。問題は他の位置を誤検出してしまった場合であるが、今回、誤検出率はわずか0.9%である。
【0074】
また、今回の実験では、焦点のずれた画像や撮影者の影が入った画像においても正しく位置特定できることを確認した。一方、位置特定が行われなかったものの原因としては、撮影角度、焦点距離のずれなどによりブロックの目地がカメラで撮影した際に写らなかったことが挙げられる。
【0075】
夜間の照明下における撮影画像の位置特定結果を示す。誤り訂正を含め、正しい位置を特定できた画像の枚数は、全16枚の画像中12枚(75.0%)だった。残りの4枚は、画像処理より位置特定結果が得られなかった。原因としては、撮影者の影の写りこみや、画像全体が暗すぎたために目地の認識ができなかったことが挙げられるが、これは実環境では、撮影位置を変えたり、照明の当たっている部分を撮影するなど、簡単に対処できる問題である。
以上に示した位置特定の成功率から、本発明のマーカ素子の設置方法及び識別方法が有効に機能していることを確認した。
【産業上の利用可能性】
【0076】
以上のように、本発明によれば、マーカ素子の判別精度を格段に向上させ、マーカ素子の利用環境を拡大することが可能なマーカ素子の設置方法及び識別方法を提供することができる。しかも、本発明のマーカ素子の設置方法及び識別方法を、「M−CubITS歩行者WYSIWYASナビゲーションシステム」などのナビゲーションシステムに組み込むことにより、当該システムのマーカ素子の判別精度を向上でき、利用環境をより一層拡大することが可能となる。
【技術分野】
【0001】
本発明は、マーカ素子の設置方法及び識別方法に関し、特に、M系列状に配置されるマーカ素子を利用して位置特定を行う際に利用される、マーカ素子の設置方法及び識別方法に関する。
【背景技術】
【0002】
近年、人々が行きたい場所に、安全、快適に移動できる環境が求められている。このような環境を提供する手法のひとつとし、歩行者ナビゲーションシステムが注目され、様々な研究が行われている。
【0003】
現在、一般的に普及している歩行者ナビゲーションシステム(非特許文献1)は、GPS(Global Positioning System)を用いた位置特定を行うため、高層ビル街や地下、建物内などにおいて、電波の反射や遮蔽などが測位結果に影響を与える可能性がある。無線通信を用いたポジショニングを行うシステムをして、Bluetooth(登録商標)を用いたインフォサイン(非特許文献2)などがあるが、これは地図によるナビゲーションを行うため、利用者は地図の理解や解釈が必要となる。また、ICタグ(非接触IC)を用いたナビゲーションシステムも研究されているが、これは専用携帯情報端末が必要である。
【0004】
一方、地面に設置したマーカを撮影することで位置特定を行う、「M−CubITS(M-sequence Multimodal Markers for ITS)歩行者WYSIWYAS(What You See Is What You Are Suggested)ナビゲーションシステム」が提案されている(特許文献1,非特許文献3)。このナビゲーションシステムは、現在広く普及しているカメラ付き携帯電話機でマーカを撮影して位置特定を行い、撮影した画像上に進むべき方向を矢印で直接表示することで、地図による解釈を必要としない道案内を行う。
【0005】
現在までにM−CubITSのマーカ素子として、視覚障害者誘導用ブロックを用いたマーカの検討(非特許文献4,6)と、タイルカーペットを用いたマーカの検討(非特許文献5)が行われているが、視覚障害者誘導用ブロックやタイルカーペットは利用できる環境が限られるため、他のマーカ素子の検討を行う必要がある。
【0006】
特に、視覚障害者誘導用ブロックでは、点字ブロックに三角形等の図形を描き該図形の向き及び色でM系列のビット情報を表現しており、タイルカーペットでは、異なる色の選択又は組み合わせでM系列のビット情報を表現している。このため、マーカ素子の判別精度は、これらのマーカ素子が配置される環境の明るさや色合いの影響を受け易く、例えば、夜間でのカメラ付き携帯電話のフラッシュ程度では、殆どマーカ素子を判別することができない。
【先行技術文献】
【特許文献】
【0007】
【特許文献1】特願2008−70486号
【非特許文献】
【0008】
【非特許文献1】M. Arikawa, S. Konomi, and K. Ohnishi, "NAVITIME: Supporting Pedestrian Navigation in the Real World", IEEE Pervasive Computing, vol. 6, no.3, pp. 21-29, July-Sept. 2007
【非特許文献2】櫻井光徳,松橋正道,”インフォサインによる歩行者ナビゲーション”,NEC技報,Vol. 61,no. 1,pp. 53-56,Jan. 2008
【非特許文献3】長谷川孝明,”ITSプラットホーム”EUPITS”〜実現へのアプローチから”,電子情報通信学会技術研究報告,ITS2003-8,pp. 41-47, May, 2003
【非特許文献4】山下清司,長谷川孝明,”視覚障害者誘導用ブロックを用いたM-CubITS歩行者ナビゲーションシステムについて”,電子情報通信学会論文誌(A),Vol. J88-A, No. 2, pp.269-276, Feb. 2005
【非特許文献5】T. MANABE, T. HASEGAWA, Y. MATSUOKA, S. FURUKAWA, A. FUKUDA, "On the M-CubITS Pedestrian WYSIWYAS Navigation Using Tile Carpets", Proceedings of the 10th IEEE International Conference on Intelligent Transportation Systems (ITSC'07), pp. 879-884, Oct. 2007
【非特許文献6】芹澤崇,間邊哲也,長谷川孝明,宮谷隆,”音声案内・サーバ処理型M-CubITS歩行者WYSIWYASナビゲーションシステムの提案”,電子情報通信学会技術研究報告,ITS2007-90,pp. 71-76,May 2008
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明が解決しようとする課題は、上述した問題を解決し、マーカ素子の判別精度を格段に向上させ、マーカ素子の利用環境を拡大することが可能なマーカ素子の設置方法及び識別方法を提供することである。
【課題を解決するための手段】
【0010】
上記課題を解決するため、請求項1に係る発明は、M系列状に配列されるマーカ素子を地面に設置するマーカ素子の設置方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とを有することを特徴とする。
【0011】
請求項2に係る発明は、請求項1に記載のマーカ素子の設置方法において、該基準列を構成するマーカ素子のサイズは、該データ列を構成するマーカ素子のサイズより大きく、該基準列の配列方向に垂直な方向である横基準線を、該基準列を構成するマーカ素子間の目地で設定し、該データ列は該横基準線に沿って所定のビット数の情報を表現するようにマーカ素子を配列することを特徴とする。
【0012】
請求項3に係る発明は、請求項1又は2に記載のマーカ素子の設置方法において、該地面は舗道であることを特徴とする。
【0013】
請求項4に係る発明は、地面に設置されたマーカ素子からM系列に対応するデータを取得するマーカ素子の識別方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、該マーカ素子の配列は、同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とから構成され、配列された該マーカ素子を撮影した画像データから、該基準列と該データ列を検出し、該基準列に対する該データ列の配置に基きデータ列の配列方向及び該マーカ素子の撮影方向を判別することを特徴とする。
【0014】
請求項5に係る発明は、請求項4に記載のマーカ素子の識別方法において、該画像データから該基準列の配列方向に相当する縦方向のブロック体のエッジと、該縦方向と略直交する横方向のブロック体のエッジとを抽出するエッジ抽出工程と、該基準列内の該横方向のエッジに基き横基準線を検出する横基準線検出工程と、該データ列内の該横基準線と該縦方向のエッジとで囲まれる区域を1つのデータセルとすることを特徴とする。
【0015】
請求項6に係る発明は、請求項4又は5に記載のマーカ素子の識別方法において、該画像データの該データ列からビットデータを取得するビット列取得工程と、該ビットデータの誤りを訂正処理する誤り訂正工程とを有することを特徴とする。
【0016】
請求項7に係る発明は、請求項4乃至6のいずれかに記載のマーカ素子の識別方法において、該地面は舗道であることを特徴とする。
【発明の効果】
【0017】
請求項1に係る発明により、M系列状に配列されるマーカ素子を地面に設置するマーカ素子の設置方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成されるため、ブロック体間の目地によりブロック体の形状が容易に判別することが可能となり、マーカ素子の判別においてマーカ素子が設置される環境の照度等の影響を受けることが抑制される。しかも、マーカ素子が四角形の表面を有するため、縦・横のエッジ(目地)のみ判別するだけで、マーカ素子の形状が判別でき、判別処理に係る情報処理の負担を軽減することが可能となる。
【0018】
しかも、基準列を設けるため、マーカ素子のM系列に係る位置情報だけでなく、データ列が基準列に対していずれの側に位置するかを判別することにより、該マーカ素子を観察している利用者がどの方向を向いているのかも容易に特定することができ、より正確なナビゲーション情報を利用者に伝達することが可能となる。また、基準列は、同一のサイズのマーカ素子を直線状に連続して配置して構成されるため、マーカ素子の配列の中から容易に基準列を抽出することができる。しかも、データ列には、該基準列に使用したマーカ素子と異なるサイズのマーカ素子使用しているため、データ列と基準列とを容易に区別することも可能である。
【0019】
請求項2に係る発明により、基準列を構成するマーカ素子のサイズは、データ列を構成するマーカ素子のサイズより大きく、該基準列の配列方向に垂直な方向である横基準線を、該基準列を構成するマーカ素子間の目地で設定し、該データ列は該横基準線に沿って所定のビット数の情報を表現するようにマーカ素子を配列するため、基準列が提供する横基準線がデータ列を判別する際の有用な手掛かりとなり、データ列の判別精度を高め、情報処理に係る負担を軽減することが可能となる。しかも、横基準線を確定するマーカ素子には、大きいサイズのマーカ素子が使用されているため、直線の傾きの変動がより少ない横基準線を設定することができる。
【0020】
請求項3に係る発明により、地面は舗道であるため、本発明に係るマーカ素子の設置方法を、歩行者や車両へのナビゲーションステムに好適に利用することができる。
【0021】
請求項4に係る発明により、地面に設置されたマーカ素子からM系列に対応するデータを取得するマーカ素子の識別方法において、該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、該マーカ素子の配列は、同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とから構成されているため、配列された該マーカ素子を撮影した画像データにより、該基準列と該データ列を検出することで、該基準列に対する該データ列の配置に基きデータ列の配列方向や該マーカ素子の撮影方向を容易に判別することができる。しかも、該画像データからブロック体間の目地を利用して、ブロック体の形状が容易に判別することができ、マーカ素子の判別においてマーカ素子が設置される環境の照度等の影響を受けることが抑制される。しかも、マーカ素子が四角形の表面を有するため、縦・横のエッジ(目地)のみ判別するだけで、マーカ素子の形状が判別でき、判別処理に係る情報処理の負担を軽減することが可能となる。
【0022】
しかも、基準列を利用することで、基準列に対するデータ列の配置から、データ列のデータの読み取り方向が容易に判別でき、データの読み取り精度の低下を抑制できる。また、マーカ素子を観察している利用者がどの方向を向いているのかを判別する場合に、基準列に対するデータ列の配置を特定することで、利用者の向きを容易に判別することができる。なお、利用者の向きはデータ列のみからでも判断することは可能であるが、通常の利用者の位置情報を取得するのに必要なデータ量(位置情報を表すM系列の部分系列のデータ量)の2倍以上のデータを取得する必要があり、マーカ素子の配列を撮影する際の視野を通常の2倍以上に設定しなければならない。また、これに係る情報処理時間も極めて長くなる。
【0023】
請求項5に係る発明により、画像データから基準列の配列方向に相当する縦方向のブロック体のエッジと、該縦方向と略直交する横方向のブロック体のエッジとを抽出するエッジ抽出工程と、該基準列内の該横方向のエッジに基き横基準線を検出する横基準線検出工程と、該データ列内の該横基準線と該縦方向のエッジとで囲まれる区域を1つのデータセルとするため、読み取るべきデータが画像データのどの領域に存在するのかを予め特定でき、データの読み取り精度を格段に向上させることが可能となる。
【0024】
請求項6に係る発明により、画像データのデータ列からビットデータを取得するビット列取得工程と、該ビットデータの誤りを訂正処理する誤り訂正工程とを有するため、例えば、データの読み取りを局所的に誤っても、より適正なデータに修復することが可能となる。特に、地面に枯葉などの異物が存在する場合にはマーカ素子を正確に判別することが困難となるため、このような誤り訂正工程を設けることで、このような不具合を排除することが可能となる。しかも、本発明は、M系列の配置データを利用することが前提となっており、M系列の部分系列データから前後のあるべきデータ系列を容易に推定することが可能であるため、誤り訂正工程も簡便に構成することができる。また、位置情報を格納したデータベースを利用し、蓄積したデータ配列と読み取ったデータとを照合し、訂正することも可能である。
【0025】
請求項7に係る発明により、地面は舗道であるため、本発明に係るマーカ素子の識別方法を、歩行者や車両へのナビゲーションステムに好適に利用することができる。
【図面の簡単な説明】
【0026】
【図1】本発明に係るマーカ素子の設置方法及び識別方法を適用可能なナビゲーションシステムの一例を示す図である。
【図2】M系列のデータ(3ビットの場合)を発生する仕組みを説明する図である。
【図3】マーカ素子に利用されるブロック体の表面の形状を例示する図である。
【図4】基準列の一方側のみデータ列を配置する例を示す図である。
【図5】図4に示したデータセル単位に設置されるマーカ素子のパターンの種類を示す図である。
【図6】図4に示したマーカ素子の配列において、データ列の読み取り方向を説明する図である。
【図7】図6における読み取り方向に沿ったマーカ素子の配列と、M系列データの配列とを説明する図である。
【図8】1つのデータセルに含まれるマーカ素子の情報量を変更する例を示す図である。
【図9】基準列の両側にデータ列を配置する例を示す図である。
【図10】2つの基準列の間にデータ列を配置する例を示す図である。
【図11】画像処理の流れを示すフローチャートである。
【図12】画像処理によって順次変化する画像の様子を説明する図である。
【図13】画像データ中の注目ピクセルと周辺ピクセルとの位置関係を説明する図である。
【図14】本発明に係る実験で使用したマーカ素子の配列を示す図である。
【発明を実施するための形態】
【0027】
以下、本発明に係るマーカ素子の設置方法及び識別方法について、詳細に説明する。
まず、本発明のマーカ素子の設置方法及び識別方法が、好適に利用可能なナビゲーションシステムの一つである、「M−CubITS歩行者WYSIWYASナビゲーションシステム」(非特許文献3等参照)について説明する。
【0028】
ここで、用語「WYSIWYAS」は、ワープロなどで用いられる、見たままのもので編集し印刷されること意味する「WYSIWYAG(What You See Is What You Get)方式」に対応した表現であり、“What You See Is What You Are Suggested”の頭文字を取った造語である。特に、ナビゲーションシステムにおいては、「解釈を必要としない直感的な表示による案内」を実現するためのHMI(Human-Machine Interface)の基本設計概念を示す用語として使用される。行き先経路を地図上で表現する場合では、地図の解釈が必要であるが、例えば、風景上に直接矢印を表示することで、直感的で分かりやすいナビゲーションが実現できる。
【0029】
用語「M−CubITS」は、”M-sequence Multimodal Markers for ITS; M-Cubed for ITS”)の頭文字を利用した造語である。これは、0又は1を表すマルチモーダルなマーカ素子を、M系列状に地面に配置して、ユーザの持つカメラでマーカ素子の並びを検出し、データベースとの比較から、位置と方向を特定するポジショニングシステムを意味している。M−CubITSは、地面に設置されたマーカ素子から情報を得るため、GPSによるポジショニングでは測位誤差が生じてしまうような高層ビル街、地下や建物内においても、高精度な位置特定が可能である。
【0030】
M−CubITSに利用されるマーカ素子は、ペイントやシールなどで簡単に作製できるが、本発明では、マーカ素子の識別に際して、マーカ素子が配置される環境の明るさや色合いの影響など避けるため、地面に配置するブロック体の形状を利用している。特に、画像認識や情報処理の負担を軽減するため、マーカ素子としては、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成されている。
【0031】
歩行者向けのM−CubITSによる位置特定は、既に広く普及しているカメラ付き携帯電話機のカメラの利用によって、低コストで実現が可能である。また、M−CubITSの位置特定に用いる画像上にユーザの進むべき方向を矢印で表示することでWYSIWYASナビゲーションが実現できるため、M−CubITSとWYSIWYASナビゲーションの親和性は極めて高い。
【0032】
現在までに研究されているM−CubITS歩行者WYSIWYASナビゲーションシステムの処理形式は、非特許文献4又は5に示されるような端末処理型と、特許文献1又は非特許文献6に示されるようなサーバ処理型に分けられる。端末処理型は利用者の端末にソフトウェアをダウンロードし、以後の処理を全て端末で行うために、一度ダウンロードを行えば以後は通信を行うことなく利用できる。それに対しサーバ処理型は、端末で撮影したM−CubITSのマーカ素子の画像を電子メールを利用してサーバに送信し、サーバで処理を行う。通信が保たれた環境と、メール送受信の時間が必要となるが、サーバの方がユーザの端末よりもCPU性能が高いため、計算の複雑な処理を端末型よりも短時間で行える利点を持つ。
【0033】
図1は、サーバ処理型のナビゲーションシステムの概略を示す図である。利用者(ユーザ)は、地面にあるマーカ素子を、カメラ付き携帯電話機で撮影し、撮影画像と目的地(利用者の行き先等)を電子メールに付して、サーバに送る。サーバ側は受信したメールに添付された画像を処理し、位置情報(現在位置及び利用者の向き)を取得する。そして、現在位置から目的地までの経路を探索し、その結果、現在位置からどの方向に進めば良いかを説明する案内(ナビゲーション)文を作成し、ユーザに電子メールを返信する。当然、撮影画像に行き先方向を示す矢印を付与することも可能である。ユーザは、サーバからの電子メールを受信し、案内文又は添付された矢印付き画像を表示し、行き先方向を判別する。
【0034】
位置情報は、M系列に従って配置されたマーカ素子によって特定される。本発明では、M系列のデータを表示するために配置されたマーカ素子を、「M系列状に配列されるマーカ素子」と言う。図2を用いて、M系列のデータ(3ビットの場合)を発生する仕組みを説明する。
【0035】
M系列は、シフトレジスタ(図2(a)中の3つの四角部分)を用いて作成可能な0と1との2進数から成る配列である。
例えば、図14に示すように、3段のシフトレジスタを用いる場合は、各段のセルの値を1クロック毎に右に移動し、3段目のセルの値を出力するとともに、1段目のセルには、前クロック時点における1段目のセルの値(値D1として参照)と3段目のセルの値(値D2として参照)との排他的論理和(EX−OR。図2(b)にD1及びD2の各値に対する出力値を表で示す。)を入力することとすると、シフトレジスタに保持される値は、図2(a)のシフトレジスタの下側に順次例示されるように、111,011,101,・・・,110と7通りに変化し、その後のクロックで、この変化を周期的に繰り返す。その間にシフトレジスタからは、1周期の配列が1110100から成る系列長7ビットのM系列が繰り返し出力される。
【0036】
ここで、シフトレジスタに保持された連続した3ビットは、1周期のM系列の中でユニークな存在であり、M系列の連続した3ビットを見れば、7ビットのM系列中の何処の位置であるかが特定できる。例えば、101のビット列は、図2(a)の左側に二重のアンダーラインで表示された位置に特定される。
【0037】
シフトレジスタの段数をm段とすると、発生するM系列の系列長Lは、
L=2m−1
で表される。この場合、M系列の連続するmビットを見れば、Lビット中の何処の位置であるかが特定できることになる。例えば、30cmのブロック(1枚1ビットとする場合)を直線状に配置し、12枚、3.6mの長さをM系列の部分系列(位置情報と特定するために必要なビット列。M系列を発生させるシフトレジスタの段数(M系列の生成多項式の次数)と同じ。)とすると、系列長L=212−1となり、位置特定が可能な長さは、30cm×L=約1230mとなる。なお、1枚のブロックに2ビット載せることも可能であり、その場合には、L=224−1となる。
【0038】
上述したM系列では、データ単位を0又は1の1ビット(2値)を基本に説明したが、本発明におけるM系列の意味は、このような2値の配列に限らず、1つのデータ単位がS種類の値(S値)を有し、m個のシフトレジスタを用いてデータ系列発生させる場合(系列長L=Sm−1)も含むものである。
【0039】
本発明で利用されるマーカ素子は、ブロック体で構成される。これは、ブロック体間の目地によりブロック体の形状が容易に判別することが可能となり、マーカ素子の判別においてマーカ素子が設置される環境の照度等の影響を受け難くするためである。ブロック体の形状やサイズは基本的には任意であるが、より好ましくは、図3に一例を示すように、1つのブロック体のみ(図3(a)〜(d)参照)又は複数のブロック体を組み合わせること(図3(e)参照。三角形のブロック体を2つ以上組み合わせた例を示す。)により、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成されるブロック体を利用する。
【0040】
ブロック体としては、地面の広い範囲に渡って設置する場合には、規格化された市販品を用いるのが好ましい。このような市販品は、設置コストが安価である上、サイズも規格化されており、不測な形状が出現することが無いため、画像データからのマーカ素子の判別精度も、容易に向上させることができる。例えば、歩行者が歩道や施設内の廊下などでナビゲーションシステムを利用する場合には、インターロッキングブロック、タイルは、好適に利用可能である。インターロッキングブロックとは、コンクリートブロックをかみ合わせるように敷設することで加重分散効果を発揮させることのできる舗装用コンクリートブロックである。機能性と色や形の多様性から、近年、歩道や車道、広場などの舗道で、主に屋外環境において、幅広く利用されている。
【0041】
図4は、図3に示すブロック体をマーカ素子として利用し、配列した一例を示すものである。図4に付した(a)〜(d)は、図3の各形状を有するブロック体(a)〜(d)に対応している。
本発明のマーカ素子の設置方法では、同一のサイズのマーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列を有することを特徴とする。
【0042】
このような基準列を設ける利点としては、該基準列に対してデータ列がどの位置に配置されているかを判別することにより、マーカ素子を観察している利用者が現在どの方向を向いているのかを容易に特定することができる。さらに基準列を基準としてデータ列内のデータがどの順序で並んでいるのかも、容易に判別することができる。特に、利用者の観察方向を判別する場合には、基準列に対して、データ列を非対称に配置することが必要であり、例えば、図4のように基準列の片側にデータ列を配置する方法や図9のように基準列の両側に、データ列の幅が異なるデータ列を各々配置する方法などがある。
【0043】
図4に示すように、基準列を構成するマーカ素子(a)のサイズは、データ列を構成するマーカ素子(c)〜(d)のサイズより大きく、また、該基準列の配列方向に垂直な方向である横基準線を、該基準列を構成するマーカ素子(a)間の目地で設定し、該データ列は該横基準線に沿って所定のビット数の情報を表現するようにマーカ素子(c)〜(d)を配列する。このように、基準列が提供する横基準線は、データ列を構成するマーカ素子を設置したり、該マーカ素子の配列からデータを判別する際に、有用な手掛かりとなる。
【0044】
しかも、横基準線を確定するマーカ素子(a)には、地面に配置するブロック体の中で最も大きいサイズのブロック体を使用することにより、直線自体の傾きの変動がより少ない横基準線を設定することができ、より安定したデータの識別が可能となる。
【0045】
図4の実施例においては、データ列を構成する基本的なデータ単位を、横基準線と縦線とで囲まれる区域(図の網掛け領域)としている。このようなデータ単位の基準となる区域を「データセル」という。
【0046】
データセルを、横基準線と縦線とにより設定しているため、読み取るべきデータが画像データのどの領域に存在するのかを予め特定でき、データの読み取り精度を格段に向上させることが可能となる。
【0047】
各データセルに設定されるデータは、マーカ素子の組み合わせ又は配置で表現される。具体例として、図3に示す大きさの異なる3種類のブロック体(b)〜(c)を利用し、図5に示すように、4種類のデータ(2ビット)を表現している。なお、マーカ素子が表示するデータを識別する際には、マーカ素子の個々の形状を判別するより、例えば、図4や図5の場合のように、データセル内の横線(ブロック体のエッジ又はブロック体間の目地が形成する横線)の位置及び数を特定することで、容易にデータを識別することができる。
【0048】
データ列内のマーカ素子の配置方法は、図6の丸数字の順番で示すように、基準列側から矢印Aで示す方向に順次配列されており、各行の最終データセルに到達すると、一つ上段の行に移動し、再度、基準列側から矢印Aで示す方向に、続きのデータが順次配列される。これらを繰り返すことで、図7に示すM系列のデータを各データセル内に順に配置することが可能となる。配列方向は、矢印Aの方向に限らず、矢印Aとは逆の方向であっても良いし、また、各行のデータの最終データセルまでデータ入力に使用するのではなく、基準列側から所定数のデータセルをM系列のデータ配置に使用するよう設定することも可能である。
【0049】
さらに、データ列は図6のように4列のものに限らず、案内する経路の長さによって選択することも可能である。例えば、符号長262,143ビット(218−1ビット)のM系列を用いると、インターロッキングブロックの1行の長さ(図5におけるデータブロックの縦の長さ)を30cmとすれば、約13kmの案内経路上の位置と方向を一意に特定できる。このM系列から位置特定を行うには、9個のデータブロックを撮影できればよい。すなわち、データブロックを3行×3列撮影できればよいので、データ列は3列で十分である。
【0050】
図8〜図10は、マーカ素子の設置方法の他の実施例をしている。
図8(a)は、データセル内でマーカ素子を用いた表現に制約があるため、2列のマーカ素子の並びを1つのデータセルとし、3ビット分のデータを表現したものである。具体的には、図8(b)のように、1つ目のブロックと2つ目のブロックとの組み合わせで、0〜7の8種類のデータを表現できるよう構成している。このように、横基準線と縦線とで区画される最小区域(図4の「データセル」参照)を複数集めて一つのデータセルを構成することも可能である。なお、M系列の表現方法には、「0100111」を「青緑青青緑緑緑」などのように直接二種類の色(又は形)で表現する方法(直接表現型)と、「(01)(00)(11)(1」のように2ビット分をまとめて4種類の色や形で表現する方法(変換表現型)がある。図8(a)は変換表現型であり、M系列のデータの並びを3ビットのデータセル毎に区切り、各データセルのデータの配列に対応して図8(b)のマーカ素子の配列パターンを選択している。
【0051】
図9は、基準列の両側にデータ列(1)及び(2)を配置する例を示したものである。基準列を歩道の中央付近に配置する場合には、片側に十分な数のデータ列を確保できない場合もあり、そのような場合に、図9のような配置が利用できる。マーカ素子の識別に際しては、例えば、同じ横基準線上に位置する(同一行の)データ列について、データ列(1)の後にデータ列(2)のデータを続けて読み取り、その後、次の行のデータ列を同様に読み取る方法などがある。
【0052】
ただし、基準列とデータ列との位置関係で、利用者がマーカ素子を観察している方向を判別する必要があるため、基準列を基準にデータ列(1)とデータ列(2)とが線対称とならないように、各データ列の配置を工夫する必要がある。
【0053】
図10は、2つの基準列(1)及び(2)の間に、データ列を配置する例を示す図である。例えば、データ列の始まりと終わりを基準列で表示するよう構成することも可能である。ただし、2つの基準列(1)及び(2)は、いずれの基準列であるかを明確にするため、各基準列の幅を互いに異ならせる必要があり、例えば、図10(a)のように、基準列を構成するマーカ素子の列の数を基準列毎に変更したり、図10(b)のように、基準列に使用されるマーカ素子のサイズ又は形状を基準列毎に変更することが望ましい。
【0054】
次に、配列されたマーカ素子からデータを読み取る、マーカ素子の識別方法を説明する。
図11は、マーカ素子の識別に際して行われる、画像処理の流れを示したものである。画像は、利用者が携帯電話などに付属するカメラでマーカ素子の配列を撮影することで、画像データをして入力される(図12(a)の入力画像を参照)。
【0055】
(1)1次微分フィルタ(エッジ抽出工程)
撮影画像に対し、横方向と縦方向の1次微分フィルタを用いることで、エッジを抽出する。図12(b)は横方向について1次微分フィルタでエッジを抽出したものであり、図12(c)は、縦方向について1次微分フィルタでエッジを抽出したものである。
【0056】
フィルタの出力を2値化する際に、携帯電話機の機種による画像の差や、画像の明暗(撮影した際の照明環境)に対応するため、閾値を固定とせず、動的に変化させることが好ましい。
【0057】
以下に2値化の方法を具体的に説明する。
図13に示すような、1次微分フィルタから出力された数値を格納したピクセル群の中で、注目ピクセル群の2値化を行う場合には、注目ピクセル群及び周辺ピクセル群の数値から1つの平均を求める。この平均値から、次の式で注目ピクセル群を2値化するための閾値を求める。
閾値=k×平均値
この際、kは定数であり、マーカ素子を配置する環境を考慮し、あらかじめ設定しておく(後述する実験ではk=2.0とした)。
【0058】
さらに、この閾値を利用して、画像中の全ピクセルについて、2値化を行う。なお、周辺ピクセルや注目ピクセルの数を、マーカ素子の配列部分の入力画像のサイズの大きさに応じて、動的に変化させることも可能である。例えば、入力画像のサイズが大きい場合には、周辺ピクセル、注目ピクセル数を多く、小さい場合には少なくすることで、画像のサイズの違いに対して頑健性を得る。
【0059】
(2)縦直線検出
縦方向の1次微分フィルタの2値化画像(図12(c)参照)に対し、Hough変換を用いて直線検出を行う。この処理によってブロックの縦方向の目地を検出できる。直線検出後に、ラベリング処理を行うことにより、画像中のブロックを列ごとに領域を分ける(図12(d)「縦直線の検出」参照)。
【0060】
なお、撮影した画像は、通常、カメラのレンズの光軸とマーカ素子の配列面とが垂直でないため、あおりが発生し、この影響で画像が遠近的に表示され、図12(c)のように、各縦直線は平行にはならない。同様に、後述する横基準線や横線も、縦直線に全てが直交することにはならない。本発明では、このような縦直線と横基準線等との配置関係を「略直交」と表現している。
【0061】
(3)画像の回転
横方向の1次微分フィルタの2値化画像に対して回転処理を行い、横方向のエッジを画像中で、可能な範囲で水平にする。具体的には、上記(2)の「縦直線検出」工程で検出した、各縦直線の縦方向の傾きを表す角度θから、傾きの平均値Θを算出し、横方向の1次微分フィルタの2値化画像(図12(b)の横方向のエッジ抽出画像を参照)を、−Θだけ回転させる(図12(e)「画像の回転結果」参照)。
【0062】
(4)横基準線検出(横基準線検出工程)
上記(3)の「画像の回転」で回転させた画像に対して、Hough変換を行うことにより、図12(f)に示すような、基準列からデータ列へ、又はデータ列から基準列へ続く横方向の目地(横基準線)の検出を行う。この横基準線がデータセルの行を分ける線であり、この横基準線を用いることで、各データセルと基準列のマーカ素子(ブロック体)の縦方向の位置を、行番号を利用して識別することができる。さらに、横基準線と縦直線とを組み合わせることによって、各データセルの位置を、行と列の番号を用いることで識別することも可能となる。
【0063】
(5)各データセルの横線検出
各データセル中の横線(横方向の目地)の検出を行う。データセル中の横線は、長さが短く、Hough変換による検出は困難なため、以下の方法を取る。
図12(f)のような上記(4)の「横基準線検出」による出力画像に対し、ラスター順にピクセルに注目する。横直線間において、エッジを検出したピクセル数とエッジを検出していないピクセル数を比較し、エッジを検出したピクセル数の方が多ければ、そこに横線があるものと認識する(図12(g)「横線検出結果1」参照)。
【0064】
(6)ビット列の取得(ビット列取得工程)
位置情報を表すビット列と撮影方向を取得する。基準列の位置から撮影方向を判別し、図12(g)のように順方向(基準列がデータ列の右側)であればデータ列の右下から、逆方向(基準列がデータ列の左側)であればデータ列の左上からデータセルを識別していくことで、位置情報を表すM系列の部分系列(ビット列)を取得し、出力する。
【0065】
M系列の部分系列に対する誤り訂正(誤り訂正工程)
画像処理から出力されたビット列には、様々な要因により正しく識別できなったビットが含まれる可能性がある。そこで、画像処理により取得したM系列の部分系列から位置特定を行う際に、誤り訂正を行う。M系列による位置特定の場合、位置特定に必要な長さ以上のビット列を取得した場合には、その冗長分を用いて誤り訂正を行うことができる。
【0066】
具体的には、画像処理出力ビット列から撮影画像の位置特定を行う際に、データベースのM系列と画像処理の出力ビット列を比較し、ハミング距離が最も小さい位置候補を、誤り訂正を含めた位置特定結果とする。これ以外に、本発明では、M系列の配置データを利用することが前提であるため、M系列の部分系列データから前後のあるべきデータ系列を容易に推定することも可能であり、このような処理により、誤り訂正工程を行うこともできる。
【0067】
本発明者らは、以下に説明する方法で、本発明に係る実験を行った。
(1)実験システムの構築
本発明のマーカ素子の設置方法及び識別方法の有効性を確認するために、埼玉大学構内の案内を行う「実験用M−CubITS歩行者WYSIWYASナビゲーションシステム」を構築した。
【0068】
今回の実験では、使用できるインターロッキングブロックに限りがあり、図5で示したマーカ素子(ブロック体)のうち、00を表すブロック体が準備できなかった。そのため、00のマーカ素子を用いずにシステムを実現するために、M系列の符号化を行った。具体的には、M系列を3ビットずつ、変換表(表1参照)に従って4ビットに変化する符号化を行った。
【0069】
【表1】
【0070】
符号化したM系列を用いたデータベースを構築し、案内経路上に敷設するインターロッキングブロックの一部分を屋外環境で再現した(図14に一部の配列を示す)。敷設したインターロッキングブロックの全長は6mであり、1行の長さ30cmのインターロッキングブロックを20行敷設した。
実験で用いたM系列の符号長は262,143ビットであり、これは符号化すると、ブロック3行から取得できる24ビットのビット列から一意に位置特定が可能となる符号長である。
【0071】
(2)実験方法
本発明の実験では、正しい位置特定がなされれば、正しい案内が可能であるため、位置特定の成功率を測定する。具体的には、12種類のカメラ付き携帯電話機を用いて、日中における実験用インターロッキングブロックを合計116枚(雨天時の画像を15枚含む)撮影した。撮影した画像を用いて、位置特定を行い、位置特定の成功率を測定した。
次に、1種類のカメラ付き携帯電話機を用いて、夜間の照明環境下で実験用インターロッキングブロックの撮影を行った。照明装置とブロック体との距離を3mと7mの2通りを用意し、それぞれ8枚ずつ、合計16枚の画像を収集し、位置特定の成功率を測定した。
【0072】
(3)実験結果
日中における撮影画像の位置特定結果を示す。誤り訂正を行わず、画像処理の結果だけで正しい位置特定ができた画像の枚数は、全116枚の画像のうち、98枚(84.5%)であった。誤り訂正の処理(データベースのM系列と画像処理の出力ビット列を比較を利用)を加えて正しい位置特定が行われたものは、111枚(95.7%)であった。これにより、誤り訂正の有効性を確認した。
【0073】
残りの5枚の画像のうち、画像処理から位置特定結果を得られなかったものが4枚(3.4%)、異なる位置を誤検出したものが1枚(0.9%)であった。このようなナビゲーションシステムでは、実環境において位置特定結果が得られなった画像に対しては、ユーザが撮り直せばよい。問題は他の位置を誤検出してしまった場合であるが、今回、誤検出率はわずか0.9%である。
【0074】
また、今回の実験では、焦点のずれた画像や撮影者の影が入った画像においても正しく位置特定できることを確認した。一方、位置特定が行われなかったものの原因としては、撮影角度、焦点距離のずれなどによりブロックの目地がカメラで撮影した際に写らなかったことが挙げられる。
【0075】
夜間の照明下における撮影画像の位置特定結果を示す。誤り訂正を含め、正しい位置を特定できた画像の枚数は、全16枚の画像中12枚(75.0%)だった。残りの4枚は、画像処理より位置特定結果が得られなかった。原因としては、撮影者の影の写りこみや、画像全体が暗すぎたために目地の認識ができなかったことが挙げられるが、これは実環境では、撮影位置を変えたり、照明の当たっている部分を撮影するなど、簡単に対処できる問題である。
以上に示した位置特定の成功率から、本発明のマーカ素子の設置方法及び識別方法が有効に機能していることを確認した。
【産業上の利用可能性】
【0076】
以上のように、本発明によれば、マーカ素子の判別精度を格段に向上させ、マーカ素子の利用環境を拡大することが可能なマーカ素子の設置方法及び識別方法を提供することができる。しかも、本発明のマーカ素子の設置方法及び識別方法を、「M−CubITS歩行者WYSIWYASナビゲーションシステム」などのナビゲーションシステムに組み込むことにより、当該システムのマーカ素子の判別精度を向上でき、利用環境をより一層拡大することが可能となる。
【特許請求の範囲】
【請求項1】
M系列状に配列されるマーカ素子を地面に設置するマーカ素子の設置方法において、
該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、
同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、
該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とを有することを特徴とするマーカ素子の設置方法。
【請求項2】
請求項1に記載のマーカ素子の設置方法において、
該基準列を構成するマーカ素子のサイズは、該データ列を構成するマーカ素子のサイズより大きく、
該基準列の配列方向に垂直な方向である横基準線を、該基準列を構成するマーカ素子間の目地で設定し、
該データ列は該横基準線に沿って所定のビット数の情報を表現するようにマーカ素子を配列することを特徴とするマーカ素子の設置方法。
【請求項3】
請求項1又は2に記載のマーカ素子の設置方法において、
該地面は舗道であることを特徴とするマーカ素子の設置方法。
【請求項4】
地面に設置されたマーカ素子からM系列に対応するデータを取得するマーカ素子の識別方法において、
該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、
該マーカ素子の配列は、同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とから構成され、
配列された該マーカ素子を撮影した画像データから、該基準列と該データ列を検出し、該基準列に対する該データ列の配置に基きデータ列の配列方向及び該マーカ素子の撮影方向を判別することを特徴とするマーカ素子の識別方法。
【請求項5】
請求項4に記載のマーカ素子の識別方法において、
該画像データから該基準列の配列方向に相当する縦方向のブロック体のエッジと、該縦方向と略直交する横方向のブロック体のエッジとを抽出するエッジ抽出工程と、
該基準列内の該横方向のエッジに基き横基準線を検出する横基準線検出工程と、
該データ列内の該横基準線と該縦方向のエッジとで囲まれる区域を1つのデータセルとすることを特徴とするマーカ素子の識別方法。
【請求項6】
請求項4又は5に記載のマーカ素子の識別方法において、
該画像データの該データ列からビットデータを取得するビット列取得工程と、
該ビットデータの誤りを訂正処理する誤り訂正工程とを有することを特徴とするマーカ素子の識別方法。
【請求項7】
請求項4乃至6のいずれかに記載のマーカ素子の識別方法において、
該地面は舗道であることを特徴とするマーカ素子の識別方法。
【請求項1】
M系列状に配列されるマーカ素子を地面に設置するマーカ素子の設置方法において、
該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、
同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、
該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とを有することを特徴とするマーカ素子の設置方法。
【請求項2】
請求項1に記載のマーカ素子の設置方法において、
該基準列を構成するマーカ素子のサイズは、該データ列を構成するマーカ素子のサイズより大きく、
該基準列の配列方向に垂直な方向である横基準線を、該基準列を構成するマーカ素子間の目地で設定し、
該データ列は該横基準線に沿って所定のビット数の情報を表現するようにマーカ素子を配列することを特徴とするマーカ素子の設置方法。
【請求項3】
請求項1又は2に記載のマーカ素子の設置方法において、
該地面は舗道であることを特徴とするマーカ素子の設置方法。
【請求項4】
地面に設置されたマーカ素子からM系列に対応するデータを取得するマーカ素子の識別方法において、
該マーカ素子は、1つのブロック体のみ又は複数のブロック体を組み合わせることにより、サイズが異なる複数種類の四角形の表面を有するマーカ素子が少なくとも形成され、
該マーカ素子の配列は、同一のサイズの該マーカ素子を直線状に連続して配置する基準列と、該基準列の少なくとも一方の側に、該基準列に使用したマーカ素子と異なるサイズのマーカ素子をM系列状に配列するデータ列とから構成され、
配列された該マーカ素子を撮影した画像データから、該基準列と該データ列を検出し、該基準列に対する該データ列の配置に基きデータ列の配列方向及び該マーカ素子の撮影方向を判別することを特徴とするマーカ素子の識別方法。
【請求項5】
請求項4に記載のマーカ素子の識別方法において、
該画像データから該基準列の配列方向に相当する縦方向のブロック体のエッジと、該縦方向と略直交する横方向のブロック体のエッジとを抽出するエッジ抽出工程と、
該基準列内の該横方向のエッジに基き横基準線を検出する横基準線検出工程と、
該データ列内の該横基準線と該縦方向のエッジとで囲まれる区域を1つのデータセルとすることを特徴とするマーカ素子の識別方法。
【請求項6】
請求項4又は5に記載のマーカ素子の識別方法において、
該画像データの該データ列からビットデータを取得するビット列取得工程と、
該ビットデータの誤りを訂正処理する誤り訂正工程とを有することを特徴とするマーカ素子の識別方法。
【請求項7】
請求項4乃至6のいずれかに記載のマーカ素子の識別方法において、
該地面は舗道であることを特徴とするマーカ素子の識別方法。
【図1】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【図2】
【図3】
【図4】
【図5】
【図6】
【図7】
【図8】
【図9】
【図10】
【図11】
【図12】
【図13】
【図14】
【公開番号】特開2010−204776(P2010−204776A)
【公開日】平成22年9月16日(2010.9.16)
【国際特許分類】
【出願番号】特願2009−47449(P2009−47449)
【出願日】平成21年2月28日(2009.2.28)
【出願人】(504190548)国立大学法人埼玉大学 (292)
【出願人】(000183266)住友大阪セメント株式会社 (1,342)
【Fターム(参考)】
【公開日】平成22年9月16日(2010.9.16)
【国際特許分類】
【出願日】平成21年2月28日(2009.2.28)
【出願人】(504190548)国立大学法人埼玉大学 (292)
【出願人】(000183266)住友大阪セメント株式会社 (1,342)
【Fターム(参考)】
[ Back to top ]