(57)【要約】【課題】特殊な撮影手段を用いることなく、移動する撮影手段の位置及び姿勢を安定的に推定することができる光学マーカシステムを提供する。【解決手段】  ＬＥＤマーカ２１〜２ｍは、予め定められた位置に取り付けられ、自身に対して一意的に割り付けられた固有の点滅パターンで点滅する。このとき、カメラ３０は、ＬＥＤマーカ２１〜２ｍの発光点及び特徴点を含む画像を撮影し、候補点検出部４０は、撮影された画像に含まれる発光点及び特徴点を候補点として検出し、発光状態検出部５０は、各候補点を追跡して点滅パターンを検出し、マーカ特定部６０は、点滅パターンからＬＥＤマーカ２１〜２ｍを特定し、カメラ位置姿勢推定部７０は、マーカ特定部６０により特定されたＬＥＤマーカ２１〜２ｍの３次元位置等からカメラ３０の位置及び姿勢を推定する。【選択図】図１
2009033366.tif 000002
【特許請求の範囲】
【請求項１】
予め定められた位置に取り付けられ、発光状態を変化させることにより自身に対して一意的に割り付けられた識別情報を送信する複数の光学マーカと、
前記光学マーカの発光点と、撮影空間中に固定され且つ所定の明るさを有する特徴点とを含む画像を撮影する撮影手段と、
前記撮影手段により撮影された各画像から所定の明るさを有する候補点を検出する候補点検出手段と、
前記候補点検出手段により検出された各候補点を画像間で比較して画像間で各候補点の対応付けを行うことにより各候補点を追跡して各候補点の発光状態を検出する発光状態検出手段と、
前記発光状態検出手段により検出された発光状態を基に、複数の候補点の中から前記光学マーカを特定する特定手段とを備えることを特徴とする光学マーカシステム。
【請求項２】
前記特定手段は、複数の候補点のうち所定の点滅パターンを有する候補点を前記光学マーカとして特定することを特徴とする請求項１記載の光学マーカシステム。
【請求項３】
前記複数の光学マーカは、発光期間と消灯期間との比率が略０．５となるように且つ互いに点滅パターンが異なるように点滅され、
前記特定手段は、複数の候補点のうち発光期間と消灯期間との比率が略０．５となる候補点を前記光学マーカとして特定し、前記光学マーカとして特定した候補点の点滅パターンから当該光学マーカの識別情報を特定することを特徴とする請求項２記載の光学マーカシステム。
【請求項４】
前記発光状態検出手段は、前記候補点検出手段により検出された各候補点を画像間で比較して画像間の幾何関係を算出し、算出した幾何関係を用いて現フレームの各候補点の次フレームでの観測位置を予測し、予測した観測位置から所定範囲に位置する次フレームの候補点を現フレームの候補点に対応付けることにより、各候補点を追跡して各候補点の点滅パターンを検出することを特徴とする請求項１〜３のいずれかに記載の光学マーカシステム。
【請求項５】
前記特定手段は、前記光学マーカとして特定した候補点の点滅パターンから当該光学マーカの識別情報を特定するとともに、前記撮影手段により撮影された画像上の当該光学マーカの位置を特定し、
前記光学マーカの撮影空間内の３次元位置を各光学マーカの識別情報に対応付けて予め記憶する記憶手段と、
前記記憶手段を参照して、前記特定手段により特定された光学マーカの識別情報から光学マーカの３次元位置を特定し、特定された光学マーカの３次元位置及び前記特定手段により特定された画像上の位置から前記撮影手段の位置及び姿勢を検出する位置検出手段とをさらに備えることを特徴とする請求項１〜４のいずれかに記載の光学マーカシステム。
【請求項６】
前記複数の光学マーカは、赤外光を点灯又は消灯することにより識別情報を送信することを特徴とする請求項１〜５のいずれかに記載の光学マーカシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、識別情報を送信する光学マーカを検出する光学マーカシステムに関するものである。
【背景技術】
【０００２】
高次脳機能障害者にとっては、自宅内のような良く知った場所であっても、現在位置や目的地への経路などがわからなくなることがある。そのため、少しの移動でも、常に介護者（家族）が付き添う必要があり、介護者への負担が大きい。そこで、近年、高次脳機能障害者が例えばトイレまで行って帰ってくる場合のような屋内環境での移動における記憶補助や移動支援を目指すことを目的として、ユーザの位置及び姿勢を推定するウェアラブルシステムについての研究が進められている。
【０００３】
上記のユーザの位置及び姿勢を推定する手法としては、これまでに種々の手法が提案されており、例えば、高速なイメージセンサを用いて画像を撮影しながらマーカのＩＤ（識別情報）を取得したり（非特許文献１参照）、正方形に配置したマーカを通常の可視光カメラを用いて撮影してマーカ配置の形状を探索したりすることが行われている（非特許文献２参照）。
【非特許文献１】松下伸行他、「Ｉｄ  ｃａｍ：シーンとｉｄを同時に取得可能なスマートカメラ」、情処学論、Ｖｏｌ．４３、Ｎｏ．１２、２００１年、ｐｐ．３６６４−ｐｐ．３６７４
【非特許文献２】青木恒、「カメラで読み取る赤外線タグとその応用」、インタラクティブシステムとソフトウェア  VIII、２０００年、ｐｐ．１３１−ｐｐ．１３６
【発明の開示】
【発明が解決しようとする課題】
【０００４】
しかしながら、前者の方法では、専用のイメージセンサを用いる必要があり、一般のカメラで撮影された映像に対して適用することはできない。また、後者の方法では、マーカの配置形状を検出しているため、シーン中に配置できるマーカの数等が制限され、カメラの位置及び姿勢が変動した場合に適用することができない。
【０００５】
本発明の目的は、移動する撮影手段により撮影された画像に含まれる光学マーカを精度良く追跡することができる光学マーカシステムを提供することである。
【０００６】
本発明の他の目的は、特殊な撮影手段を用いることなく、移動する撮影手段の位置及び姿勢を安定的に推定することができる光学マーカシステムを提供することである。
【課題を解決するための手段】
【０００７】
本発明に係る光学マーカシステムは、予め定められた位置に取り付けられ、発光状態を変化させることにより自身に対して一意的に割り付けられた識別情報を送信する複数の光学マーカと、前記光学マーカの発光点と、撮影空間中に固定され且つ所定の明るさを有する特徴点とを含む画像を撮影する撮影手段と、前記撮影手段により撮影された各画像から所定の明るさを有する候補点を検出する候補点検出手段と、前記候補点検出手段により検出された各候補点を画像間で比較して画像間で各候補点の対応付けを行うことにより各候補点を追跡して各候補点の発光状態を検出する発光状態検出手段と、前記発光状態検出手段により検出された発光状態を基に、複数の候補点の中から前記光学マーカを特定する特定手段とを備えるものである。
【０００８】
本発明に係る光学マーカシステムにおいては、予め定められた位置に取り付けられた複数の光学マーカが、その発光状態を変化させることにより、自身に対して一意的に割り付けられた識別情報を送信し、撮影空間中を移動する撮影手段によって、光学マーカの発光点と、撮影空間中に固定され且つ所定の明るさを有する特徴点とを含む画像が撮影される。そして、撮影手段により撮影された各画像から所定の明るさを有する複数の候補点が検出され、検出された各候補点を画像間で比較して画像間で各候補点の対応付けを行うことで各候補点を追跡して各候補点の発光状態が検出され、検出された発光状態を基に、複数の候補点の中から光学マーカが特定される。
【０００９】
このように、光学マーカの発光点だけでなく、撮影空間中に固定され且つ所定の明るさを有する特徴点をも候補点として検出しているので、光学マーカが消灯している場合でも、特徴点を安定的に検出することができる。したがって、安定的に検出される特徴点をも用いて画像間で各候補点の対応付けを行うことにより、ある画像で消灯状態にある又は点灯レベルが低い状態にある光学マーカを安定的に追跡することができるので、光学マーカの識別情報を安定的に検出することができる。この結果、光学マーカの識別情報から光学マーカの位置を特定し、特定した光学マーカの位置から、特殊な撮影手段を用いることなく、移動する撮影手段の位置及び姿勢を安定的に推定することができる。
【００１０】
また、前記特定手段は、複数の候補点のうち所定の点滅パターンを有する候補点を前記光学マーカとして特定することが好ましい。
【００１１】
この場合、複数の候補点のうち所定の点滅パターンを有する候補点が光学マーカとして特定されるので、複数の候補点の中から光学マーカを確実に抽出することができ、光学マーカを安定的に追跡することができる。
【００１２】
また、前記複数の光学マーカは、発光期間と消灯期間との比率が略０．５となるように且つ互いに点滅パターンが異なるように点滅され、前記特定手段は、複数の候補点のうち発光期間と消灯期間との比率が略０．５となる候補点を前記光学マーカとして特定し、前記光学マーカとして特定した候補点の点滅パターンから当該光学マーカの識別情報を特定することが好ましい。
【００１３】
この場合、複数の候補点のうち、発光期間と消灯期間との比率が略０．５となる候補点が光学マーカの発光点として特定され、特定した候補点の点滅パターンから当該光学マーカの識別情報が特定されるので、複数の候補点の中から光学マーカの発光点を確実に抽出することができるとともに、光学マーカの識別情報を確実に検出することができる。
【００１４】
前記発光状態検出手段は、前記候補点検出手段により検出された各候補点を画像間で比較して画像間の幾何関係を算出し、算出した幾何関係を用いて現フレームの各候補点の次フレームでの観測位置を予測し、予測した観測位置から所定範囲に位置する次フレームの候補点を現フレームの候補点に対応付けることにより、各候補点を追跡して各候補点の点滅パターンを検出することが好ましい。
【００１５】
この場合、各候補点が画像間で比較されて画像間の幾何関係が算出され、この幾何関係を用いて現フレームの各候補点の次フレームでの観測位置が予測され、この観測位置から所定範囲に位置する次フレームの候補点が現フレームの候補点に対応付けられるので、各候補点を正確に追跡することができる。
【００１６】
前記特定手段は、前記光学マーカとして特定した候補点の点滅パターンから当該光学マーカの識別情報を特定するとともに、前記撮影手段により撮影された画像上の当該光学マーカの位置を特定し、前記光学マーカシステムは、前記光学マーカの撮影空間内の３次元位置を各光学マーカの識別情報に対応付けて予め記憶する記憶手段と、前記記憶手段を参照して、前記特定手段により特定された光学マーカの識別情報から光学マーカの３次元位置を特定し、特定された光学マーカの３次元位置及び前記特定手段により特定された画像上の位置から前記撮影手段の位置及び姿勢を検出する位置検出手段とをさらに備えることが好ましい。
【００１７】
この場合、光学マーカとして特定された候補点の点滅パターンから当該光学マーカの識別情報が特定されるとともに、撮影された画像上の当該光学マーカの位置が特定され、さらに、光学マーカの識別情報から光学マーカの３次元位置が特定され、特定された光学マーカの３次元位置及び画像上の位置から撮影手段の位置及び姿勢が検出されるので、撮影手段の位置及び姿勢を正確に検出することができ、この撮影手段を装着したユーザの位置及び姿勢を正確に推定することができる。
【００１８】
前記複数の光学マーカは、赤外光を点灯又は消灯することにより識別情報を送信することが好ましい。
【００１９】
この場合、光学マーカが人間に直接見えない赤外光を発光するので、点滅パターンがシーン中の人間の行動に対して視覚的妨害となることを防止することができる。
【発明の効果】
【００２０】
本発明によれば、光学マーカの発光点だけでなく、撮影空間中に固定され且つ所定の明るさを有する特徴点をも候補点として検出しているので、光学マーカが消灯している場合でも、特徴点を安定的に検出することができ、安定的に検出される特徴点をも用いて画像間で各候補点の対応付けを行うことにより、ある画像で消灯状態にある又は点灯レベルが低い状態にある光学マーカを安定的に追跡することができるので、光学マーカの識別情報を安定的に検出することができ、光学マーカの識別情報から光学マーカの位置を特定することにより、特殊な撮影手段を用いることなく、移動する撮影手段の位置及び姿勢を安定的に推定することができる。
【発明を実施するための最良の形態】
【００２１】
以下、本発明の一実施の形態による光学マーカシステムについて図面を参照しながら説明する。図１は、本発明の一実施の形態による光学マーカシステムの構成を示すブロック図である。図１に示す光学マーカシステムは、点灯制御装置１０、ｍ個（ｍは２以上の整数）のＬＥＤマーカ２１〜２ｍ、カメラ３０、候補点検出部４０、発光状態検出部５０、マーカ特定部６０、カメラ位置姿勢推定部７０、及びマーカ位置記憶部８０を備える。
【００２２】
ＬＥＤマーカ２１〜２ｍは、赤外光を発光するＬＥＤ（Light Emitting Diode）及び駆動回路等から構成され、撮影シーン中の所定位置、例えば、同一平面上に取り付けられ、各ＬＥＤマーカ２１〜２ｍの３次元位置は、各ＬＥＤマーカ２１〜２ｍの識別情報に対応付けて予めマーカ位置記憶部８０に記憶される。また、各ＬＥＤマーカ２１〜２ｍは、互いに点滅パターンが異なり且つ発光期間と消灯期間との比率が略０．５となる点滅パターンを発光し、この点滅パターンにより、ＬＥＤマーカ２１〜２ｍの各々に対して一意的に割り付けられた識別情報が特定される。
【００２３】
点灯制御装置１０は、所定の点滅制御プログラムを実行するコンピュータ等から構成され、ＬＥＤマーカ２１〜２ｍの各々に対して一意的に割り付けられた識別情報を送信するようにＬＥＤマーカ２１〜２ｍの点滅状態を個別に制御する。なお、点灯制御装置１０の構成は、上記の例に特に限定されず、一部又は全部を専用のハードウエア回路から構成してもよく、また、ＬＥＤマーカ２１〜２ｍ内に個別に点灯制御装置を設け、点灯制御装置１０を省略してもよい。
【００２４】
点灯制御装置１０の点滅制御によりＬＥＤマーカ２１〜２ｍが発光する光として、赤外光であることが好ましい。この場合、赤外光は人間には直接見えないため、シーン中の人間の行動に対して視覚的妨害とならない。また、赤外領域のうちより短い波長領域（可視光寄りの波長域）の光であることがより好ましく、本実施の形態では、波長８９０ｎｍの赤外光を用いている。この場合、通常の可視光撮影用のビデオカメラでも当該波長域に十分な検出感度を有するため、通常の可視光撮影用のビデオカメラを用いてシーンを撮影しながらＬＥＤマーカ２１〜２ｍが発光する光を高精度に受光することができる。
【００２５】
なお、ＬＥＤマーカ２１〜２ｍが発光する光として、上記の例に特に限定されず、可視光域の光を用いてもよい。この場合、通常の可視光撮影用のビデオカメラが十分な感度を有する波長域を用いてＬＥＤマーカ２１〜２ｍが発光する光を撮影することができる。
【００２６】
カメラ３０は、赤外光に対して十分な感度を有する通常の可視光用ビデオカメラ（例えば、Ｐａｎａｓｏｎｉｃ社製  ＭＶ−ＧＳ２００）から構成される。カメラ３０は、ユーザ、例えば、ユーザの頭部に撮影方向がユーザの視線方向に一致するように装着され、ＬＥＤマーカ２１〜２ｍのいずれかの発光点と、撮影空間中に固定され且つ所定の明るさを有する特徴点、例えば、所定値以上の輝度成分（又は色成分）を有するテクスチャを備える撮影空間内の調度品、ユーザの使用物等とを含む画像を撮影する。
【００２７】
なお、カメラ３０の構成は、上記の例に特に限定されず、種々の変更が可能であり、例えば、赤外光用カメラによりＬＥＤマーカ２１〜２ｍを撮影したり、ＬＥＤマーカ２１〜２ｍが可視光を発光する場合に可視光に対してのみ十分な感度を有する可視光用カメラを用いたりしてもよい。また、カメラ３０は、人間であるユーザ以外のものに装着するようにしてもよい。
【００２８】
図２は、ＬＥＤマーカの点滅パターンの一例を示す図であり、図２では、図示を容易にするために、ＬＥＤマーカ２１〜２ｍのうち４個のＬＥＤマーカＭ１〜Ｍ４の点滅状態を示している。図２において、ハイレベルが点灯期間である「ＯＮ」を示し、ローレベルが消灯期間である「ＯＦＦ」を示しており、ＬＥＤマーカＭ１〜Ｍ４は、カメラ３０のフレーム期間に基本的に同期して点滅を繰り返す。
【００２９】
図２に示すように、ＬＥＤマーカＭ１は、１〜８フレーム目にかけて「ＯＮ」、「ＯＦＦ」、「ＯＮ」、「ＯＮ」、「ＯＦＦ」、「ＯＮ」、「ＯＦＦ」、「ＯＦＦ」とフレーム周期に同期して点滅パターンが変化しており、この点滅パターンを基本パターンとし、９フレーム以降も同様に点滅する。ＬＥＤマーカＭ２は、１〜８フレーム目にかけて「ＯＮ」、「ＯＮ」、「ＯＦＦ」、「ＯＮ」、「ＯＦＦ」、「ＯＦＦ」、「ＯＮ」、「ＯＦＦ」と点滅パターンが変化しており、この点滅パターンを基本パターンとし、９フレーム以降も同様に点滅する。ＬＥＤマーカＭ３は、１〜４フレーム目にかけて「ＯＮ」、「ＯＮ」、「ＯＦＦ」、「ＯＦＦ」と点滅パターンが変化しており、この点滅パターンを基本パターンとし、５フレーム以降も同様に点滅する。ＬＥＤマーカＭ４は、１〜２フレーム目にかけて「ＯＮ」、「ＯＦＦ」と点滅パターンが変化しており、この点滅パターンを基本パターンとし、３フレーム以降も同様に点滅する。
【００３０】
上記の点滅パターンの「ＯＮ」を「１」、「ＯＦＦ」を「０」として符号化すると、ＬＥＤマーカＭ１〜Ｍ４はそれぞれ、「１０１１０１００」、「１１０１００１０」、「１１００１１００」、「１０１０１０１０」の８ビットのビットパターンを有する識別情報を送信することになる。そして、これらの識別情報は、それぞれ、ビットパターンが異なり、かつ、「１」と「０」との数が等しいため、ＬＥＤマーカＭ１〜Ｍ４は、一意的に割り付けられた識別情報を送信し、かつ、点灯期間と消灯期間との比率が０．５となる点滅パターンで点滅する。なお、４個のＬＥＤマーカＭ１〜Ｍ４以外のＬＥＤマーカの点滅状態も、点滅パターンが互いに異なる点を除き、上記と基本的に同様である。
【００３１】
図３は、カメラ３０が撮影した画像の一例を示した図である。図３に示す例は、箱体の主面に所定の画像が印刷され、この主面の所定位置に４個のＬＥＤマーカＭ１〜Ｍ４を取り付け、この箱体の主面を撮影した例であり、４個のＬＥＤマーカＭ１〜Ｍ４の発光点ｍ１〜ｍ４と、白丸で示す複数の特徴点Ｑ（印刷された画像内の輝度の高い点）とを含む画像がカメラ３０により撮影され、複数の特徴点Ｑは、後述する候補点検出部４０がテンプレートマッチングを行った際にＬＥＤマーカ２１〜２ｍの発光点と同様に候補点として検出される画素からなり、後述する候補点検出処理により、ＬＥＤマーカＭ１〜Ｍ４の発光点ｍ１〜ｍ４及び複数の特徴点Ｑが候補点として検出される。
【００３２】
図４は、図１に示す光学マーカシステムの概要を模式的に示した図である。図４に示すように、撮影空間中には複数のＬＥＤマーカＭ１〜Ｍ４が設置されており、各ＬＥＤマーカＭ１〜Ｍ４は、上記のように固有の点滅パターンで点滅する。そして、ユーザが装着したカメラ３０により撮影されたＬＥＤマーカＭ１〜Ｍ４の発光点及び特徴点を含むシーンの画像列から、後述するマーカ特定処理等により、ＬＥＤマーカＭ１〜Ｍ４の発光点が追跡され、各発光点の点滅パターンから、各発光点がどのＬＥＤマーカＭ１〜Ｍ４の発光点を示すかが特定され、特定されたＬＥＤマーカＭ１〜Ｍ４の予め定められた３次元位置を用いてカメラ３０の位置及び姿勢が推定される。
【００３３】
再び、図１を参照して、候補点検出部４０、発光状態検出部５０、マーカ特定部６０、カメラ位置姿勢推定部７０、及びマーカ位置記憶部８０は、カメラ３０と一体構成され、ウェアラブルコンピュータとしてユーザに装着される。なお、候補点検出部４０等の各ブロックの構成は、上記の例に特に限定されず、一部又は全部を専用のハードウエア回路から構成してもよい。また、候補点検出部４０等をカメラ３０と別体に構成し、カメラ３０により撮影された画像データを無線通信により候補点検出部４０等に送信して候補点検出部４０以降の処理を行ったり、カメラ３０により撮影された画像データを、インターネット等のネットワークを介して所定のサーバへ送信し、当該サーバにおいてオンラインにて候補点検出部４０以降の処理を行ったり、撮影済みの画像からオフライン処理を行うようにしてもよい。
【００３４】
候補点検出部４０は、カメラ３０により撮影された各画像に対して、所定のテンプレートを用いたテンプレートマッチングを行い、所定の明るさを有する複数の候補点を検出する。ここで、点灯状態のＬＥＤマーカ２１〜２ｍ及び特徴点は、入力画像中で十分に明るいため、候補点検出部４０は、時刻ｔにおいて観測された画像Ｉｔの輝度成分Ｖｔに対して、水平方向のエッジを検出するための水平テンプレートＴｈと、垂直方向のエッジを検出するための垂直テンプレートＴｖとを用いたテンプレートマッチングを行うことで、ＬＥＤマーカ２１〜２ｍの発光点と特徴点とを候補点として検出して発光状態検出部５０へ出力する。
【００３５】
具体的には、発光状態検出部５０は、画像Ｉｔの輝度成分Ｖｔに対して、下記の式（１）及び（２）で計算される各々のスコアが一定値以上となる２次元位置（ｘ，ｙ）を候補点として抽出する。ここで、式（１）及び（２）において、εはＬＥＤマーカ２１〜２ｍの発光点であると判断することができる画素の閾値である。また、ｍは水平テンプレートＴｈ、及び垂直テンプレートＴｖの水平方向のサイズを示し、ｎは水平テンプレートＴｈ、及び垂直テンプレートＴｖの垂直方向のサイズを示している。
【００３６】
【数１】
2009033366.tif 000003
【００３７】
図５は、図１に示す候補点検出部４０において用いられるテンプレートの一例を示す図であり、（ａ）は水平テンプレートＴｈを示し、（ｂ）は垂直テンプレートＴｖを示している。候補点検出部４０は、水平テンプレートＴｈを用いて各画像を走査して式（１）によるスコアＪｈがεより大きく、かつ、垂直テンプレートＴｖを用いて各画像を走査して式（２）によるスコアＪｖがεより大きい画素を、候補点として検出する。
【００３８】
再び、図１を参照して、発光状態検出部５０は、候補点検出部４０により検出された各候補点を画像間で比較し、画像間の各候補点の対応付けを行うことにより、各候補点を追跡して各候補点の点滅パターンを検出してマーカ特定部６０へ出力する。
【００３９】
具体的には、発光状態検出部５０は、候補点検出部４０により検出された各候補点を画像間で比較して画像間の幾何関係、例えば、平面射影変換を算出し、算出した幾何関係、例えば、平面射影変換を用いて現フレームの各候補点の次フレームでの観測位置を予測し、予測した観測位置から所定範囲に位置する次フレームの候補点を現フレームの候補点に対応付けることにより、各候補点を追跡して各候補点の点滅パターンを検出する。
【００４０】
また、発光状態検出部５０は、次フレームにおいて、予測した観測位置から所定範囲内に候補点が存在しない場合、当該候補点は、次フレームにおいて消灯していると判断し、消灯していると判断した候補点と他の候補点との現フレームにおける位置関係と、他の候補点の次フレームにおける位置関係とから、消灯していると判断した候補点の次フレームにおける位置を算出する。
【００４１】
マーカ特定部６０は、発光状態検出部５０により検出された点滅パターンを基に、複数の候補点の中からＬＥＤマーカ２１〜２ｍの発光点を特定し、特定したＬＥＤマーカ２１〜２ｍの点滅パターンからＬＥＤマーカ２１〜２ｍの識別情報を特定するとともに、撮影された画像上のＬＥＤマーカ２１〜２ｍの位置を特定してカメラ位置姿勢推定部７０へ出力する。
【００４２】
具体的には、マーカ特定部６０は、複数の候補点のうち発光期間と消灯期間との比率が略０．５となる候補点をＬＥＤマーカ２１〜２ｍの発光点として特定し、その他の候補点を特徴点又はノイズとして特定する。そして、マーカ特定部６０は、ＬＥＤマーカ２１〜２ｍの発光点として特定した候補点の点滅パターンを「１」、「０」で符号化し、ＬＥＤマーカ２１〜２ｍに対して一意的に割り付けられた点滅パターン（識別情報）のうち、得られた符号列（点滅パターン）に一致する（相関が高い）点滅パターンを、ＬＥＤマーカ２１〜２ｍの点滅パターン（識別情報）として検出する。また、マーカ特定部６０は、カメラ３０により撮影された画像上のＬＥＤマーカ２１〜２ｍの２次元位置を検出する。
【００４３】
マーカ位置記憶部８０は、ＬＥＤマーカ２１〜２ｍの３次元位置をＬＥＤマーカ２１〜２ｍの識別情報に対応付けて予め記憶する。カメラ位置姿勢推定部７０は、マーカ特定部６０により特定されたＬＥＤマーカ２１〜２ｍの識別情報を取得し、取得した識別情報に対応付けて記憶されているＬＥＤマーカ２１〜２ｍの３次元位置をマーカ位置記憶部８０から読み出し、読み出した３次元位置とマーカ特定部６０により特定されたＬＥＤマーカ２１〜２ｍの２次元位置とを基にカメラ３０の３次元位置及び姿勢を推定する。
【００４４】
本実施の形態では、ＬＥＤマーカ２１〜２ｍが光学マーカの一例に相当し、カメラ３０が撮影手段の一例に相当し、候補点検出部４０が候補点検出手段の一例に相当し、発光状態検出部５０が発光状態検出手段の一例に相当し、マーカ特定部６０が特定手段の一例に相当し、カメラ位置姿勢推定部７０が位置検出手段の一例に相当し、マーカ位置記憶部８０が記憶手段の一例に相当する。
【００４５】
次に、図１に示す光学マーカシステムによるカメラ位置姿勢推定処理について説明する。図６は、図１に示す光学マーカシステムによるカメラ位置姿勢推定処理を説明するためのフローチャートである。
【００４６】
まず、ステップＳ１１において、ＬＥＤマーカ２１〜２ｍがそれぞれ固有の点滅パターンに従って点滅している状態で、カメラ３０がＬＥＤマーカ２１〜２ｍのいずれかを含む複数の画像を撮影し、複数の撮影画像からなる画像列を取得する。次に、ステップＳ１２において、候補点検出部４０は、画像列に対して、水平テンプレートＴｈ及び垂直テンプレートＴｖを用いたテンプレートマッチングを行い所定の明るさを有する候補点を検出する。
【００４７】
次に、ステップＳ１３において、発光状態検出部５０は、ステップＳ１で取得された画像列のうち前後する２画像間の平面射影変換Ｈを求め、前後する２画像間の相対関係を計算する。具体的には、発光状態検出部５０は、以下のようにして、平面射影変換Ｈを算出する。
【００４８】
時刻ｔ，ｔ＋１で観測された画像Ｉ（ｔ），Ｉ（ｔ＋１）において、それぞれ、ｎｔ，ｎｔ＋１個の候補点ｐｉ（ｔ）（ｉ＝１，…，ｎｔ），ｐｊ（ｔ＋１）（ｊ＝１，…，ｎｔ＋１）が得られたとする。ここで、候補点はある平面上に分布すると仮定し、平面上の３次元点Ｐｋについて画像Ｉ（ｔ），Ｉ（ｔ＋１）上の２次元観測位置がｐｋ（ｔ）＝［ｘｋ（ｔ），ｙｋ（ｔ）］，ｐｋ（ｔ＋１）＝［ｘｋ（ｔ＋１），ｙｋ（ｔ＋１）］として得られたとすると、次式の関係が得られる。
【００４９】
【数２】
2009033366.tif 000004
【００５０】
式（３）に示すＨは平面射影変換であり、画像Ｉ（ｔ），Ｉ（ｔ＋１）間の関係を示す。画像Ｉ（ｔ），Ｉ（ｔ＋１）における候補点群ｐｉ（ｔ）（ｉ＝１，…，ｎｔ），ｐｊ（ｔ＋１）（ｊ＝１，…，ｎｔ＋１）のうち、ｐｉ（ｔ），ｐｊ（ｔ＋１）間で対応関係がある候補点の組については、式（３）と同様の関係が得られるので、以下のようにして、平面射影変換Ｈを計算する。
【００５１】
まず、ｐｉ（ｔ），ｐｊ（ｔ＋１）について、画像上の距離を基に仮対応付けを行う。ここで得られた候補点の組を基に、例えば、ＲＡＮＳＡＣ（Random Sample Consensus）を用いて式（３）を最もよく満たす平面射影変換Ｈと対応関係がある候補点の組、ｐｋ（ｔ），ｐｋ（ｔ＋１）（ｋ＝ｋ１，…，ｋｍ）を推定することにより、平面射影変換Ｈを計算する。ここで、ｐｋ（ｔ），ｐｋ（ｔ＋１）の仮対応付けとしては、例えば、ｐｊ（ｔ＋１）のうち、ｐｋ（ｔ）に対して距離が最も短いものをｐｋ（ｔ＋１）として特定すればよい。
【００５２】
次に、ステップＳ１４において、発光状態検出部５０は、上記の平面射影変換Ｈを用いて画像Ｉ（ｔ），Ｉ（ｔ＋１）に含まれる各候補点を追跡する。具体的には、発光状態検出部５０は、以下のようにして各候補点を追跡する。
【００５３】
まず、時刻ｔで得られたｉ番目の候補点ｐｉ（ｔ）について考える。ｐｉ（ｔ）を平面射影変換Ｈによって変換すると、時刻ｔ＋１におけるｐｉ（ｔ）の予測観測位置ｐ’ｉ（ｔ＋１）＝Ｈｐｉ（ｔ）が得られる。ここで、２点ｐ’ｉ（ｔ＋１），ｐｊ（ｔ＋１）の距離をｄ（ｐ’ｉ（ｔ＋１），ｐｊ（ｔ＋１））で表すと、実際に検出された候補点ｐｊ（ｔ＋１）（ｊ＝１，…，ｎｔ＋１）のうち、下記の式（４）を満たす候補点ｐｊ（ｔ＋１）が存在すれば、候補点ｐｉ（ｔ）のＬＥＤマーカは、時刻ｔ＋１において点灯しており、２次元位置ｐｊ（ｔ＋１）に存在していると判断し、ｐｊ（ｔ＋１）とｐｉ（ｔ）とを対応付けることにより、候補点を追跡する。
【００５４】
ｄ（ｐ’ｉ（ｔ＋１），ｐｊ（ｔ＋１））＜εｄ  …  （４）
なお、式（４）を満たす候補点が複数存在する場合、ｄ（ｐ’ｉ（ｔ＋１），ｐｊ（ｔ＋１））の距離を最小にする候補点であるｐｊ（ｔ＋１）をｐｉ（ｔ）に対応付ければよい。また、εｄとしては、ｐｊ（ｔ＋１）とｐｉ（ｔ）とが同じＬＥＤマーカの候補点であると見なすことのできる所定の閾値を採用することができる。
【００５５】
一方、式（４）を満たす候補点が存在しない場合、ｐｉ（ｔ）のＬＥＤマーカは、時刻ｔ＋１において消灯していると判断する。この場合、例えば、時刻ｔにおけるｐｉ（ｔ）とｐｉ（ｔ）以外の特徴点との位置関係から、ｐｉ（ｔ）の時刻ｔ＋１における位置を求め、この位置を時刻ｔ＋１における候補点ｐｉ（ｔ＋１）として、ｐｉ（ｔ）と対応付ければよい。すなわち、一部のノイズを除くと、カメラ３０の位置及び姿勢の変化に伴い、ＬＥＤマーカ２１〜２ｍによる発光点と、特徴点とは同じように移動するため、時刻ｔにおけるｐｉ（ｔ）とｐｉ（ｔ）以外の特徴点との位置関係から、時刻ｔ＋１において消灯したＬＥＤマーカ２１〜２ｍの発光点を算出することができ、発光点を途切れることなく追跡することができる。
【００５６】
なお、発光状態検出部５０は、候補点の追跡がある程度進み、現フレームのある候補点がどのＬＥＤマーカ２１〜２ｍの発光点を示すかが分かっている場合は、このＬＥＤマーカ２１〜２ｍの点滅パターンに基づいて、次フレームの候補点を特定してもよい。例えば、式（４）を満たす次フレームの候補点が複数存在する場合、予測観測位置ｐ’ｉ（ｔ＋１）に距離が最も近く、且つ、ｐｉ（ｔ）のＬＥＤマーカの点滅パターンから時刻ｔ＋１で予測される点滅状態と同じ点滅状態を有する候補点を、ｐｉ（ｔ）の次フレームの候補点として特定すればよい。
【００５７】
次に、ステップＳ１５において、発光状態検出部５０は、ステップＳ４で得られた各候補点の追跡結果から、各候補点の点滅パターンを検出する。ここで、発光状態検出部５０は、例えば、ある候補点において、時刻ｔにおいて「ＯＮ」、時刻ｔ＋１において「ＯＦＦ」、時刻ｔ＋２において「ＯＮ」というようにして、各候補点の点滅状態を時系列的に並べることで、各候補点の点滅パターンを検出する。
【００５８】
次に、ステップＳ１６において、マーカ特定部６０は、ステップＳ１５で検出された各候補点の点滅パターンから、各候補点がＬＥＤマーカの発光点、特徴点、及びノイズのいずれであるかを特定する。ここで、ＬＥＤマーカ２１〜２ｍの発光点以外の候補点として、特徴点と、発光点でも特徴点でもないノイズとが含まれるが、特徴点による候補点は、点滅パターンがほとんど「ＯＮ」となり、ノイズによる候補点は点滅パターンがほとんど「ＯＦＦ」となる。また、撮影空間中に配置したＬＥＤマーカ２１〜２ｍは、「ＯＮ」と「ＯＦＦ」との比がほぼ「１：１」となるように設定されている。
【００５９】
したがって、マーカ特定部６０は、ある候補点の「ＯＮ」と「ＯＦＦ」との比がほぼ「１：１」の場合、この候補点をＬＥＤマーカ２１〜２ｍの発光点として特定し、ある候補点の「ＯＮ」と「ＯＦＦ」との比がほぼ「１：０」の場合、この候補点を特徴点として特定し、これら以外の候補点をノイズとして特定し、ＬＥＤマーカ２１〜２ｍの発光点を他のものと区別して抽出する。このように、マーカ特定部６０は、候補点の「ＯＮ」と「ＯＦＦ」との比を求めることで、特徴点及びノイズとＬＥＤマーカ２１〜２ｍの発光点とを精度良く区別することができる。
【００６０】
次に、ステップＳ１７において、マーカ特定部６０は、ＬＥＤマーカ２１〜２ｍの発光点として特定した候補点の撮影画像上の２次元位置を特定する。また、マーカ特定部６０は、ＬＥＤマーカ２１〜２ｍの発光点として特定した候補点の点滅パターンを「１」、「０」で符号化し、得られた符号列が、ＬＥＤマーカ２１〜２ｍに対して一意的に割り付けられた識別情報のうちどの識別情報に一致するかを特定することにより、各候補点がＬＥＤマーカ２１〜２ｍのどの発光点を示すかを特定し、当該ＬＥＤマーカの識別情報を検出する。例えば、図２の例では、マーカ特定部６０は、ある候補点の点滅パターンが「１０１１０１００」であった場合、ＬＥＤマーカＭ１の識別情報と一致するため、この候補点をＬＥＤマーカＭ１の発光点として特定し、ＬＥＤマーカＭ１の識別情報として「１０１１０１００」を特定する。
【００６１】
次に、ステップＳ１８において、カメラ位置姿勢推定部７０は、マーカ位置記憶部８０からマーカ特定部６０により特定されたＬＥＤマーカ２１〜２ｍの識別情報に対応付けられているＬＥＤマーカ２１〜２ｍの３次元位置を読み出し、読み出した３次元位置と、マーカ特定部６０により特定されたＬＥＤマーカ２１〜２ｍの２次元位置とを基に、各フレームにおけるカメラ３０の位置及び姿勢をそれぞれ推定し、その後、ステップＳ１１以降の処理が継続され、カメラ３０の位置及び姿勢が順次推定される。
【００６２】
ここで、カメラ位置姿勢推定部７０は、以下のようにして、カメラ３０の位置及び姿勢を推定する。３次元位置空間の同一平面上に分布する３次元の点Ｐｉ（ｉ＝１，…，Ｎ）の３次元座標をＸｉ＝［Ｘｉ，Ｙｉ，Ｚｉ］ｔ、カメラ３０により撮影された画像における２次元投影位置をｍｉとすると、平面射影変換により以下に示す式（５）の関係を得ることができる。
【００６３】
ｍｉ＝ａＨＸｉ  …  （５）
但し、ｍｉ＝［ｘｉ，ｙｉ，ｆ］ｔであり、ｆはカメラ３０の焦点位置を示し、ａは定数を示す。また、平面射影変換Ｈは以下に示す式（６）により定義される。ここで、Ｔ，ＲはＸｉ座標系におけるカメラ３０の位置、姿勢を示し、ｄはカメラ３０と平面間との距離を示し、ｎは平面の法線ベクトルを示す。
【００６４】
Ｈ＝ｄＲ＋Ｔｎｔ  …  （６）
従って、カメラ位置姿勢推定部７０は、４点以上の候補点が得られた場合、式（５）により平面射影変換Ｈを決定することができ、式（６）により、平面射影変換Ｈを分解することにより、カメラ３０の位置及び姿勢を検出することができる。
【００６５】
上記の処理により、本実施の形態では、各ＬＥＤマーカ２１〜２ｍは自身に対して一意的に割り付けられた点滅パターンで点滅しているため、カメラ３０により撮影された画像内に観測される候補点の点滅パターンを検出することで、観測された候補点がどのＬＥＤマーカ２１〜２ｍの発光点を示しているかを特定することができる。ここで、ＬＥＤマーカ２１〜２ｍの発光点に加えて、撮影空間中に存在する所定の明るさを有する特徴点も候補点とされて追跡されるため、消灯状態にあるＬＥＤマーカ２１〜２ｍを撮影した画像においても、当該ＬＥＤマーカ２１〜２ｍの候補点を特定することができ、ＬＥＤマーカ２１〜２ｍを精度良く追跡することができる。また、ＬＥＤマーカ２１〜２ｍは予め定められた位置に取り付けられているため、特殊な撮影手段を用いなくてもカメラ３０を装着したユーザの位置や姿勢を推定することができる。
【００６６】
次に、本実施の形態による光学マーカシステムについて具体例を挙げて説明する。図７は、４個のＬＥＤマーカの配置例を示す模式図である。図７に示すように、７０ｍｍ×５０ｍｍの矩形領域の周囲に４個のＬＥＤマーカＭ１〜Ｍ４を配置した後、カメラ３０を移動及び回転させながら、４個のＬＥＤマーカＭ１〜Ｍ４を含むシーンの映像列を撮影し、撮影画像に対して上記の処理を行った。
【００６７】
図８は、撮影画像列から抽出された４個のＬＥＤマーカＭ１〜Ｍ４の軌跡の測定結果を示す図であり、図９は、４個のＬＥＤマーカＭ１〜Ｍ４の点滅パターンの測定結果を示す図である。図８及び図９に示す結果から、４個のＬＥＤマーカＭ１〜Ｍ４の軌跡を安定的に得ることができ、ＬＥＤマーカＭ１〜Ｍ４の点滅パターンもほぼ正確に検出することができた。なお、フレーム８０〜１２０の間で，ＬＥＤマーカＭ２の点滅パターンが取得できていないが、これは、テンプレートマッチングによりＬＥＤマーカが正しく検出できていなかったためである。
【００６８】
なお、本発明により得られたカメラの位置及び姿勢は、種々の用途に用いることができ、例えば、自宅内において高次脳機能障害者の現在位置を推定する、或いは屋内環境での移動における記憶補助や移動支援を行うといったウェアラブルシステムに適用可能である。
【図面の簡単な説明】
【００６９】
【図１】本発明の一実施の形態による光学マーカシステムの構成を示すブロック図である。
【図２】図１に示すＬＥＤマーカの点滅パターンの一例を示す図である。
【図３】図１に示すカメラが撮影した画像の一例を示した図である。
【図４】図１に示す光学マーカシステムの概要を模式的に示した図である。
【図５】図１に示す候補点検出部において用いられるテンプレートの一例を示す図である。
【図６】図１に示す光学マーカシステムによるカメラ位置姿勢推定処理を説明するためのフローチャートである。
【図７】ＬＥＤマーカの配置例を示す模式図である。
【図８】４個のＬＥＤマーカの軌跡の測定結果を示す図である。
【図９】４個のＬＥＤマーカの点滅パターンの測定結果を示す図である。
【符号の説明】
【００７０】
１０  点灯制御装置
２１〜２ｍ  ＬＥＤマーカ
３０  カメラ
４０  候補点検出部
５０  発光状態検出部
６０  マーカ特定部
７０  カメラ位置姿勢推定部
８０  マーカ位置記憶部
【図１】
2009033366.tif 000005
【図２】
2009033366.tif 000006
【図４】
2009033366.tif 000007
【図５】
2009033366.tif 000008
【図６】
2009033366.tif 000009
【図７】
2009033366.tif 000010
【図９】
2009033366.tif 000011
【図３】
2009033366.tif 000012
【図８】
2009033366.tif 000013