JP2015225014A - 位置推定装置、位置推定方法、およびプログラム - Google Patents
位置推定装置、位置推定方法、およびプログラム Download PDFInfo
- Publication number
- JP2015225014A JP2015225014A JP2014111134A JP2014111134A JP2015225014A JP 2015225014 A JP2015225014 A JP 2015225014A JP 2014111134 A JP2014111134 A JP 2014111134A JP 2014111134 A JP2014111134 A JP 2014111134A JP 2015225014 A JP2015225014 A JP 2015225014A
- Authority
- JP
- Japan
- Prior art keywords
- marker
- position estimation
- information
- value
- image
- 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.)
- Pending
Links
Landscapes
- Navigation (AREA)
- Length Measuring Devices By Optical Means (AREA)
Abstract
【課題】精度よく実空間内の位置を推定する。
【解決手段】マーカ14−1〜14−Nを実空間内に固定する。撮影装置13は基準点に対する相対位置が定められた撮影位置から周辺画像を撮影する。位置推定装置11のマーカ位置取得部113は、撮影された周辺画像に由来する複数個のマーカの画像情報に基づいて複数個のマーカの位置情報を得る。位置推定装置11の位置推定部114は、これらの複数個のマーカの位置情報に基づいて基準点の位置推定値を得る。
【選択図】図1
【解決手段】マーカ14−1〜14−Nを実空間内に固定する。撮影装置13は基準点に対する相対位置が定められた撮影位置から周辺画像を撮影する。位置推定装置11のマーカ位置取得部113は、撮影された周辺画像に由来する複数個のマーカの画像情報に基づいて複数個のマーカの位置情報を得る。位置推定装置11の位置推定部114は、これらの複数個のマーカの位置情報に基づいて基準点の位置推定値を得る。
【選択図】図1
Description
本発明は、位置推定を行う技術に関する。
屋外ではGPS(Global Positioning System)のような人工衛星を利用したシステムによって1mオーダーの精度で位置情報を推定できる。しかしながら、GPSを用いた位置推定には3台以上の人工衛星からの直接波が必要であるため、これを屋内で使用することはできない。
屋内において客体の位置推定を行う方式として、移動環境に多数のカメラを配置して当該客体に固定されたマーカを捉えることでその位置検出を行う方式(例えば、モーションキャプチャ等)がある。しかしながら、このような方式では、位置推定を行う領域すべてをカバーするように高価なカメラを配置しなければならない。また、マーカがカメラ視野から隠蔽されないように、この領域に入る人の数がかなり制限される。
また、カメラで撮影したAR(augmented reality)マーカ等のマーカを画像処理し、それに基づいて位置推定を行う手法もある(例えば、非特許文献1参照)。マーカは円形形状やQRコード(登録商標)を含む図形等であり(例えば、特許文献1参照)、撮影画像中のマーカ位置に仮想物体を重畳表示するために用いられる(例えば、非特許文献1参照)。
H. Kato and M. Billinghurst, "Marker tracking and hmd calibration for a video-based augmented reality conferencing system," Proc. IWAR, pp. 85-94, 1999.
しかしながら、このような手法は撮影画像からなる仮想空間内のマーカの位置を推定するものであり、実空間内の位置を推定するものではない。さらに、このような手法では、原理的に平面に位置するマーカ上の4点(独立な方程式が4個)の情報を取得できれば利用できるが、実際の用途ではカメラの解像度やレンズの歪みなどの誤差によって十分な精度は保証できない。
本発明はこのような点に鑑みてなされたものであり、精度よく実空間内の位置を推定する技術を提供することを目的とする。
本発明では上記課題を解決するために、基準点に対する相対位置が定められた撮影位置から撮影された周辺画像に由来する複数個のマーカの画像情報に基づいて複数個のマーカの位置情報を得、複数個のマーカの位置情報に基づいて基準点の位置推定値を得る。
本発明では、複数個のマーカの位置情報に基づいて基準点の位置推定値を得るため、精度よく実空間内の位置を推定できる。
以下、本発明の実施形態を説明する。
[概要]
実施形態の位置推定装置では、基準点に対する相対位置が定められた撮影位置から撮影された周辺画像に由来する複数個のマーカ(基準マーカ)の画像情報に基づいて複数個のマーカの位置情報を得、複数個のマーカの位置情報に基づいて基準点の位置推定値を得る。位置推定値は実空間での座標(世界座標系における座標)を表す。基準点は撮影位置に一致していてもよいし、一致していなくてもよい。撮影位置は、例えば、周辺画像を撮影する撮影装置(カメラ等)のレンズの中心位置や撮像素子の中心位置などである。また、マーカは実空間に配置された模様を有する有体物である。マーカの例はARマーカである。マーカは印刷物や塗装物であってもよいし、色や反射特定が異なる複数の部材からなる固形物(タイル等)であってもよいし、画面に表示された表示(液晶表示等)であってもよい。また、人間の目では区別できないが特定の撮影装置(赤外線カメラや紫外線カメラ等)で撮影された画像では区別可能なマーカであってもよい。すなわち、反射した可視光からは模様を識別できないが、反射した赤外線や紫外線からは模様を識別できるマーカであってもよい。このような場合の周辺画像は、人間の目では区別できないマーカの相違を区別して撮影できる撮影装置で得られた画像となる。複数個のマーカは実空間内の互いに異なる位置に配置される。マーカの実空間での位置(世界座標系における座標)は固定である。各実施形態では、複数個のマーカの位置情報を用いることで、高い精度で実空間の位置情報を推定する。
[概要]
実施形態の位置推定装置では、基準点に対する相対位置が定められた撮影位置から撮影された周辺画像に由来する複数個のマーカ(基準マーカ)の画像情報に基づいて複数個のマーカの位置情報を得、複数個のマーカの位置情報に基づいて基準点の位置推定値を得る。位置推定値は実空間での座標(世界座標系における座標)を表す。基準点は撮影位置に一致していてもよいし、一致していなくてもよい。撮影位置は、例えば、周辺画像を撮影する撮影装置(カメラ等)のレンズの中心位置や撮像素子の中心位置などである。また、マーカは実空間に配置された模様を有する有体物である。マーカの例はARマーカである。マーカは印刷物や塗装物であってもよいし、色や反射特定が異なる複数の部材からなる固形物(タイル等)であってもよいし、画面に表示された表示(液晶表示等)であってもよい。また、人間の目では区別できないが特定の撮影装置(赤外線カメラや紫外線カメラ等)で撮影された画像では区別可能なマーカであってもよい。すなわち、反射した可視光からは模様を識別できないが、反射した赤外線や紫外線からは模様を識別できるマーカであってもよい。このような場合の周辺画像は、人間の目では区別できないマーカの相違を区別して撮影できる撮影装置で得られた画像となる。複数個のマーカは実空間内の互いに異なる位置に配置される。マーカの実空間での位置(世界座標系における座標)は固定である。各実施形態では、複数個のマーカの位置情報を用いることで、高い精度で実空間の位置情報を推定する。
マーカの画像情報は、例えば、マーカの世界座標系における座標を特定するための情報を表す。例えば、位置推定装置がマーカの世界座標系における座標とマーカの識別子と対応付けられたデータベースを格納している場合、マーカの識別子を「マーカの世界座標系における座標を特定するための情報」として用いることができる。或いは、マーカの世界座標系における座標そのものを表す情報を「マーカの世界座標系における座標を特定するための情報」としてもよい。この場合のマーカの位置情報は、例えば、このマーカの世界座標系における座標を特定するための情報から特定されるマーカの世界座標系における座標と、マーカの画像情報から特定されるマーカの画像座標系における座標とを含む。なお、世界座標系は実空間の三次元座標系(実空間の原点を基準とした三次元座標系)であり、画像座標系は周辺画像の二次元座標系(画像内の原点を基準とした二次元座標系)である。
実空間内の複数の平面のそれぞれにマーカが位置し、撮影された周辺画像が複数の平面のそれぞれに位置するマーカの画像を含んでいてもよい。この場合には、同一の平面に位置する複数個のマーカの画像に由来する複数個のマーカの画像情報に基づいて基準点の位置の推定値(「予備推定値」と呼ぶことにする)を得、平面のそれぞれに対して得られた予備推定値を用いて位置推定値を得る。これにより、より高い精度で実空間の位置情報を推定できる。なお、実空間内の平面には1個のマーカのみが配置されていてもよいし、複数個のマーカが配置されていてもよい。より高い精度で位置推定を行うためには、各平面に複数個のマーカが配置されていることが望ましい。
また、実空間内の目的位置の情報と上述のように得られた位置推定値とを用い、基準点または基準点に対する所定の相対位置を基点とした目的位置の方向(方位)を推定してもよい。さらに、この目的位置の方向成分を持つ向きに、振動による方向提示を行うための制御情報を生成して出力してもよい。この制御情報を加速度発生装置に入力することで、加速度発生装置は目的位置の方向成分を持つ向きに振動による方向提示を行う。これにより、加速度発生装置を把持するユーザを目的位置に誘導することができる。なお、人間は多くの情報の収集を視覚器官に頼っている。ユーザが歩きながら位置推定装置を利用する場合、目的位置に誘導するための情報を地図等に表示するとユーザの注意が散漫になり、大変危険である。このように振動刺激、つまり触覚を通じて情報を返すことで、ユーザの注意の遷移を小さくし、安全性を向上させることができる。振動による方向提示の例は、その方向への疑似的な力覚の提示である。擬似的な力覚とは、実際には物体が並進運動をしていないにも関わらず、あたかも並進方向へ動きそうな力が働いているような知覚が生成されることをいう。このような疑似的な力覚の提示は、所望の方向の加速度の時間変化とその逆方向の加速度の時間変化とが非対称な偏加速度運動によって実現できる。この詳細は後述する。
位置推定値の精度は、その算出に用いられるマーカの位置情報に依存する。この位置推定値の精度の高さを振動刺激によって提示してもよい。つまり、位置推定値の精度が高い場合には、振動による方向提示をより明確に行ってもよい。言い換えると、位置推定値の精度が低い場合には、振動による方向提示を曖昧に行ってもよい。あるいは、位置推定値の精度が高い場合には、振動による方向提示をより強くしてもよい。言い換えると、位置推定値の精度が低い場合には、振動による方向提示を弱くしてもよい。すなわち、位置推定値の精度を表す推定精度値が「第1値」のときの制御情報が「第1の方向提示」を行うための情報であり、この推定精度値が「第2値」のときの制御情報が「第2の方向提示」を行うための情報とする場合、「第2値」が表す精度が「第1値」が表す精度よりも高く、「第2の方向提示」が「第1の方向提示」よりも明確または強くてもよい。これにより、位置推定の精度を知覚させることができる。さらに、位置推定の精度に応じて振動によって提示する方向の明確性を変化させたり、方向提示の強さを変化させたりもできる。
上述のような振動による方向提示に起因し、撮影された周辺画像に「ぶれ」が生じる可能性がある。そのため、撮影位置の振動を表す情報を用いて周辺画像の振動成分を補正し、それによって得られる補正画像に由来するマーカの画像情報を用い、上述の処理を行ってもよい。これにより、位置推定の精度や方向提示の精度をより向上させることができる。
以下、図面を参照して各実施形態を説明する。
[第1実施形態]
図1に例示するように、本形態の位置推定システム1は、位置推定装置11と加速度発生装置12と撮影装置13と複数個のマーカ14−1〜14−Nとを有する。ただし、Nは2以上の整数である。
[第1実施形態]
図1に例示するように、本形態の位置推定システム1は、位置推定装置11と加速度発生装置12と撮影装置13と複数個のマーカ14−1〜14−Nとを有する。ただし、Nは2以上の整数である。
<マーカ14−1〜14−N>
図2Aおよび図2Bに例示するように、本実施形態のマーカ14−i(ただし、i=1,・・・,N)は、それぞれ、白黒の二色で描かれた頂点を有する多角形の図形である。マーカ14−iには個別の識別子IDiが振られていている。それぞれのマーカ14−iの特定の領域142内に描かれた白や黒の図形がビット列を表現し、そのビット列がそれぞれのマーカ14−iの識別子IDi(マーカの世界座標系における座標を特定するための情報)を表している。例えば、特定の領域142内に描かれた白および黒のピクセルの比率によって識別子IDiを表す。さらに、その他の領域143内の白や黒の図形が識別子IDiの誤り検出ビットを表していてもよい。また、鏡やガラスで反射されたマーカの反射像を撮影することによる誤検出を防ぐため、識別子IDiを表す図形は左右非対称であることが望ましい(例えば、図2B参照)。また、マーカ14−iの白黒が反転していてもよい。例えば、図2Cは図2Bのマーカ14−iの白黒を反転させたものである。図2Bのマーカ14−iは外枠145が黒色であるため、これを黒または黒に近い平面に貼り付けると、マーカ14−iを背景から分離して認識することが困難となる。一方、図2Cのマーカ14−iは外枠146が白色に反転しているため、これを黒または黒に近い平面に貼り付けた場合でもマーカ14−iを背景から分離して認識することができる。このように、マーカ14−iと外枠と背景色とのコントラスト比が高ければ高いほど、安定してマーカ14−iを背景から分離して認識することができる。なお、以下の説明では、正方形に切り欠き141が設けられた外枠のマーカ14−iを例示するが、切り欠きのない正方形の外枠のマーカ14−iであってもよい。
図2Aおよび図2Bに例示するように、本実施形態のマーカ14−i(ただし、i=1,・・・,N)は、それぞれ、白黒の二色で描かれた頂点を有する多角形の図形である。マーカ14−iには個別の識別子IDiが振られていている。それぞれのマーカ14−iの特定の領域142内に描かれた白や黒の図形がビット列を表現し、そのビット列がそれぞれのマーカ14−iの識別子IDi(マーカの世界座標系における座標を特定するための情報)を表している。例えば、特定の領域142内に描かれた白および黒のピクセルの比率によって識別子IDiを表す。さらに、その他の領域143内の白や黒の図形が識別子IDiの誤り検出ビットを表していてもよい。また、鏡やガラスで反射されたマーカの反射像を撮影することによる誤検出を防ぐため、識別子IDiを表す図形は左右非対称であることが望ましい(例えば、図2B参照)。また、マーカ14−iの白黒が反転していてもよい。例えば、図2Cは図2Bのマーカ14−iの白黒を反転させたものである。図2Bのマーカ14−iは外枠145が黒色であるため、これを黒または黒に近い平面に貼り付けると、マーカ14−iを背景から分離して認識することが困難となる。一方、図2Cのマーカ14−iは外枠146が白色に反転しているため、これを黒または黒に近い平面に貼り付けた場合でもマーカ14−iを背景から分離して認識することができる。このように、マーカ14−iと外枠と背景色とのコントラスト比が高ければ高いほど、安定してマーカ14−iを背景から分離して認識することができる。なお、以下の説明では、正方形に切り欠き141が設けられた外枠のマーカ14−iを例示するが、切り欠きのない正方形の外枠のマーカ14−iであってもよい。
<位置推定装置11>
本実施形態の位置推定装置11は、記憶部111と目的位置生成部112とマーカ位置取得部113と位置推定部114と方位推定部115と制御部116とを有する。位置推定装置11は、例えば、CPU(central processing unit)等のプロセッサ(ハードウェア・プロセッサ)やRAM(random-access memory)・ROM(read-only memory)等のメモリ等を備える汎用または専用のコンピュータが所定のプログラムを実行することで構成される装置である。このプログラムはコンピュータにインストールされてもよいし、予めROM等に記録されていてもよい。また、CPUのようにプログラムが読み込まれることで機能構成を実現する電子回路(circuitry)ではなく、単独で処理機能を実現する電子回路を用いて一部またはすべての処理部が構成されてもよい。
本実施形態の位置推定装置11は、記憶部111と目的位置生成部112とマーカ位置取得部113と位置推定部114と方位推定部115と制御部116とを有する。位置推定装置11は、例えば、CPU(central processing unit)等のプロセッサ(ハードウェア・プロセッサ)やRAM(random-access memory)・ROM(read-only memory)等のメモリ等を備える汎用または専用のコンピュータが所定のプログラムを実行することで構成される装置である。このプログラムはコンピュータにインストールされてもよいし、予めROM等に記録されていてもよい。また、CPUのようにプログラムが読み込まれることで機能構成を実現する電子回路(circuitry)ではなく、単独で処理機能を実現する電子回路を用いて一部またはすべての処理部が構成されてもよい。
<加速度発生装置12>
加速度発生装置12は、振動による方向提示を行う装置である。加速度発生装置12は、所望の方向の加速度の時間変化とその逆方向の加速度の時間変化とが非対称な偏加速度運動を行う振動子によって所望の方向に擬似的な力覚を提示する(例えば、特許第4551448号公報参照)。1個の振動子では所望の方向とその逆方向への方向提示を行うことができるが、このような振動子の向きを任意の方向に変化できるようにすることで任意の方向に擬似的な力覚を提示することができる。例えば、図4Aおよび図4Bに例示する加速度発生装置12は、外部ケース128と振動子120−1を有し、外部ケース128に対する振動子120−1の向きを変化させることが可能である。これにより、振動子120−1がC1方向に擬似的な力覚を提示していたとしても、図4Aおよび図4Bのように異なる向きに擬似的な力覚を提示することができる。また、このような振動子を複数個設け、それらを仮想的な凸多角形の各辺の位置に配置し、各振動子の駆動を制御することで多方向への擬似的な力覚の提示を可能としてもよい。例えば、図4Cに例示する加速度発生装置12は、外部ケース128と振動子120−1〜120−4を有する。振動子120−1〜120−4は仮想的な四角形の各辺に配置される。例えば、振動子120−2および120−4がD1方向に擬似的な力覚を提示するように制御し、振動子120−1および120−3が擬似的な力覚を提示しないように制御すると、全体としてD1方向に擬似的な力覚を提示できる。一方、振動子120−1および120−3がD2方向に擬似的な力覚を提示するように制御し、振動子120−2および120−4が擬似的な力覚を提示しないように制御すると、全体としてD2方向に擬似的な力覚を提示できる。
加速度発生装置12は、振動による方向提示を行う装置である。加速度発生装置12は、所望の方向の加速度の時間変化とその逆方向の加速度の時間変化とが非対称な偏加速度運動を行う振動子によって所望の方向に擬似的な力覚を提示する(例えば、特許第4551448号公報参照)。1個の振動子では所望の方向とその逆方向への方向提示を行うことができるが、このような振動子の向きを任意の方向に変化できるようにすることで任意の方向に擬似的な力覚を提示することができる。例えば、図4Aおよび図4Bに例示する加速度発生装置12は、外部ケース128と振動子120−1を有し、外部ケース128に対する振動子120−1の向きを変化させることが可能である。これにより、振動子120−1がC1方向に擬似的な力覚を提示していたとしても、図4Aおよび図4Bのように異なる向きに擬似的な力覚を提示することができる。また、このような振動子を複数個設け、それらを仮想的な凸多角形の各辺の位置に配置し、各振動子の駆動を制御することで多方向への擬似的な力覚の提示を可能としてもよい。例えば、図4Cに例示する加速度発生装置12は、外部ケース128と振動子120−1〜120−4を有する。振動子120−1〜120−4は仮想的な四角形の各辺に配置される。例えば、振動子120−2および120−4がD1方向に擬似的な力覚を提示するように制御し、振動子120−1および120−3が擬似的な力覚を提示しないように制御すると、全体としてD1方向に擬似的な力覚を提示できる。一方、振動子120−1および120−3がD2方向に擬似的な力覚を提示するように制御し、振動子120−2および120−4が擬似的な力覚を提示しないように制御すると、全体としてD2方向に擬似的な力覚を提示できる。
図5Aおよび図5Bは、振動子120−i(ただし、iは正整数)の一例を例示した概念図であり、その長手方向の断面を例示している。図5Aおよび図5Bに例示するように、この例の振動子120−iは、例えば、支持部121−i、ばね122−i,123−i、コイル124−i、永久磁石125−i、およびケース126−iを有している。ケース126−iおよび支持部121−iは、ともに円筒の両方の開放端を閉じた形状からなる中空の部材である。ただし、支持部121−iは、ケース126−iよりも小さく、ケース126−iの内部に収容可能な大きさである。ケース126−iおよび支持部121−iは、例えば、ABS樹脂等の合成樹脂から構成される。ばね122−i,123−iは、例えば、金属等から構成されるつるまきばねや板ばね等である。ばね122−i,123−iのばね定数は同一であることが望ましいが、互いに相違していてもよい。永久磁石125−iは、例えば、円柱形状の永久磁石であり、長手方向の一方の端部125a−i側がN極であり、他方の端部125b−i側がS極である。コイル124−iは、例えば、一つながりのエナメル線であり、第1巻き部124a−iと第2巻き部124b−iとを有する。
永久磁石125−iは支持部121−iの内部に収容され、そこで長手方向にスライド可能に支持されている。このような支持機構の詳細は図示しないが、例えば、支持部121−iの内壁面に長手方向に沿ったまっすぐなレールが設けられ、永久磁石125−iの側面にこのレールをスライド可能に支持するレール支持部が設けられている。支持部121−iの長手方向の一端側の内壁面121a−iには、ばね122−iの一端が固定され、ばね122−iの他端は永久磁石125−iの端部125a−iに固定されている。また、支持部121−iの長手方向の他端側の内壁面121b−iには、ばね123−iの一端が固定され、ばね123−iの他端は永久磁石125−iの端部125b−iに固定されている。
支持部121−iの外周側にはコイル124−iが巻きつけられている。ただし、永久磁石125−iの端部125a−i側(N極側)では、第1巻き部124a−iがA1方向に巻きつけられており、端部125b−i側(S極側)では、第2巻き部124b−iがA1方向(奥から手前に向けた方向)と反対向きのB1方向(手前から奥に向けた方向)に巻き付けられている。すなわち、永久磁石125−iの端部125a−i側(N極側)からみた場合、第1巻き部124a−iは時計回りに巻き付けられており、第2巻き部124b−iは反時計回りに巻き付けられている。また、永久磁石125−iが停止し、ばね122−i,123−iからの弾性力が釣り合った状態において、永久磁石125−iの端部125a−i側(N極側)が第1巻き部124a−iの領域に配置され、端部125b−i側(S極側)が第2巻き部124b−iの領域に配置されることが望ましい。
以上のように配置構成された支持部121−i、ばね122−i,123−i、コイル124−i、および永久磁石125−iが、ケース126−i内に収容され、支持部121−iがケース126−iの内部に固定されている。ただし、ケース126−iの長手方向は、支持部121−iの長手方向および永久磁石125−iの長手方向と一致する。
コイル124a−iに奥から手前に向かうA1方向(コイル124b−iではB1方向)に電流を流すと、フレミングの左手の法則で説明されるローレンツ力の反作用により、永久磁石125−iにC1方向(永久磁石125−iのN極からS極に向かう方向:右方向)の力が加えられる(図5A)。逆に、コイル124−iに手前から奥に向かうA2方向(B2方向)に電流を流すと、永久磁石125−iにC2方向(永久磁石125−iのS極からN極に向かう方向:左方向)の力が加えられる(図5B)。ただし、A2方向はA1方向の反対方向である。これらの動作により、永久磁石125−iおよびばね122−i,123−iからなる系に運動エネルギーが与えられる。それにより、ケース126−iを基準とする永久磁石125−iの位置および加速度を変化させることができる。
ここで、コイル124−iに所定の方向に電流を流す期間(時間)とそれ以外の期間とを周期的に繰り返す。その際、所定の方向に電流を流す期間とそれ以外の期間との比(反転比)を何れか一方の期間に偏らせることにより、所望の方向に擬似的な力覚を提示できる。A1方向(B1方向)の電流(X)を流す期間(時間)t1とA2方向(B2方向)の電流(−X)を流す期間t2とを周期的に繰り返す。この場合、A1方向(B1方向)の電流を流す期間t1とA2方向(B2方向)の電流を流す期間t2との比(反転比t1:t2)に応じ、図5Aおよび図5Bの左方向または右方向に擬似的な力覚を提示できる。すなわち、図5Aおよび図5Bの左方向に擬似的な力覚を提示する場合には、t1>t2となる反転比の周期的な電流をコイル124−iに流す。例えば、反転比t1:t2=18msec:7msecの周期的な電流(40Hzの周波数の電流)をコイル124−iに流す。逆に、右方向に擬似的な力覚を提示する場合には、t1<t2となる反転比の周期的な電流をコイル124−iに流す。例えば、反転比t1:t2=7msec:18msecの周期的な電流(40Hzの周波数の電流)をコイル124−iに流す。
<撮影装置13>
撮影装置13は周辺画像を得るカメラ等の装置である。本実施形態では、カラーの周辺画像を撮影可能な撮影装置13を用いる。撮影装置13は、位置推定装置11の基準点に対する相対位置が固定されている撮影位置に設置されている。本実施形態では撮影位置を基準点とする。図6に加速度発生装置12と撮影装置13を一体化した構成を例示する。図6の例では、例えば、加速度発生装置12の重心または重心の近傍が撮影装置13の撮影位置となっている。
撮影装置13は周辺画像を得るカメラ等の装置である。本実施形態では、カラーの周辺画像を撮影可能な撮影装置13を用いる。撮影装置13は、位置推定装置11の基準点に対する相対位置が固定されている撮影位置に設置されている。本実施形態では撮影位置を基準点とする。図6に加速度発生装置12と撮影装置13を一体化した構成を例示する。図6の例では、例えば、加速度発生装置12の重心または重心の近傍が撮影装置13の撮影位置となっている。
<事前設定>
位置推定装置11と加速度発生装置12と撮影装置13とマーカ14−1〜14−Nは、実空間内に配置されている。このうち、マーカ14−1〜14−Nは、実空間内の互いに異なる位置(例えば、天井や壁など)に固定されている。互いに異なるマーカ14−i(ただし、i=1,・・・,N)は互いに異なる平面上に配置されていてもよいが、個々のマーカ14−i全体は同一平面上に配置される(個々のマーカ14−iは折れ曲がったり、曲がった面に配置されたりせず、各平面上に配置される)。
位置推定装置11と加速度発生装置12と撮影装置13とマーカ14−1〜14−Nは、実空間内に配置されている。このうち、マーカ14−1〜14−Nは、実空間内の互いに異なる位置(例えば、天井や壁など)に固定されている。互いに異なるマーカ14−i(ただし、i=1,・・・,N)は互いに異なる平面上に配置されていてもよいが、個々のマーカ14−i全体は同一平面上に配置される(個々のマーカ14−iは折れ曲がったり、曲がった面に配置されたりせず、各平面上に配置される)。
一方、位置推定装置11と加速度発生装置12と撮影装置13の実空間内の位置は固定されていないが、加速度発生装置12と撮影装置13との間の相対位置は固定されている。位置推定装置11と加速度発生装置12と撮影装置13がこの実空間内を移動すると、撮影装置13で撮影される周辺画像が変化し、そこに写り込むマーカ14−i(ただし、i=1,・・・,N)も変化する。周辺画像にすべてのマーカ14−iの画像が含まれる必要はなく、マーカ14−1〜14−Nの一部の画像のみが含まれてもよい。ただし、周辺画像が複数個のマーカ14−iの画像を含むことで高精度で位置検出を行うことができる。周辺画像に6個以上のマーカ14−iの画像が含まれることが望ましい。周辺画像に含まれるマーカ14−iの画像の個数は、マーカ14−1〜14−Nと撮影装置13との距離、マーカ14−1〜14−Nのサイズや配置間隔に依存する。例えば、マーカ14−1〜14−Nが固定される天井等の平面と撮影装置13との距離が2mのとき、一辺が150mmのマーカ14−1〜14−Nをそれらの中心間隔がそれぞれ500mmとなるように配置する。
また、マーカ14−i(ただし、i=1,・・・,N)の世界座標系における中心座標(xi,yi,zi)とマーカ幅wiが事前に得られ、マーカ14−iの識別子IDiと世界座標系における中心座標(xi,yi,zi)とマーカ幅wiとを対応付けたデータベースが位置推定装置11の記憶部111に格納される。なお、実施形態では、世界座標系における座標(X,Y,Z)のX座標およびY座標は水平成分の座標を表し、Z座標は鉛直成分の座標を表すことにする。以下に、このデータベースを例示する。
<処理>
図7を用いて本実施形態の処理を説明する。
《撮影》
撮影装置13が周囲を撮影し、それによってカラーの周辺画像(図3A)を得る(ステップS101)。周辺画像はマーカ位置取得部113に送られる。
図7を用いて本実施形態の処理を説明する。
《撮影》
撮影装置13が周囲を撮影し、それによってカラーの周辺画像(図3A)を得る(ステップS101)。周辺画像はマーカ位置取得部113に送られる。
《マーカの位置情報取得》
マーカ位置取得部113は、この周辺画像に由来する複数個のマーカ14−iの画像情報に基づいて複数個のマーカ14−iの位置情報を得る。本実施形態では、(1)マーカ14−iの画像情報から得られるマーカ14−iの各頂点の画像座標系における座標(マーカの画像情報から特定されるマーカの画像座標系における座標)、および、(2)マーカ14−iの画像情報から得られる識別子IDiを記憶部111のデータベースに照合して得られるマーカ14−iの世界座標系における座標(マーカの世界座標系における座標を特定するための情報から特定されるマーカの世界座標系における座標)をマーカ14−iの位置情報とする。以下にこの処理を詳細に説明する。
マーカ位置取得部113は、この周辺画像に由来する複数個のマーカ14−iの画像情報に基づいて複数個のマーカ14−iの位置情報を得る。本実施形態では、(1)マーカ14−iの画像情報から得られるマーカ14−iの各頂点の画像座標系における座標(マーカの画像情報から特定されるマーカの画像座標系における座標)、および、(2)マーカ14−iの画像情報から得られる識別子IDiを記憶部111のデータベースに照合して得られるマーカ14−iの世界座標系における座標(マーカの世界座標系における座標を特定するための情報から特定されるマーカの世界座標系における座標)をマーカ14−iの位置情報とする。以下にこの処理を詳細に説明する。
まず、マーカ位置取得部113は、送られたカラーの周辺画像を二値化し、二値化した周辺画像(図3B)を得る。なお、前述の図2Cのように白黒を反転させたマーカ14−iを用いる場合にも、周辺画像の二値化し、白黒を反転させる(図3B)。次に、マーカ位置取得部113は、二値化した周辺画像を解析し、黒色のピクセルからなる領域の輪郭(図3C)を抽出する。このように抽出された輪郭に囲まれた領域はマーカ14−iを含む可能性が高い。マーカ位置取得部113は、抽出された輪郭に対して多角形近似を行って多角形を抽出する(ステップS102)。
マーカ位置取得部113は、抽出した多角形が予め設定しておいたマーカ14−iの輪郭に適合するかを判定する。ここで「適合する」とは、抽出した多角形の特徴量と予め設定しておいたマーカ14−iの輪郭の特徴量との類似度が閾値以上であること、またはこれらの距離が閾値以下であることである。ここで、適合する多角形が存在しない場合にはステップS101に戻る。一方、適合する多角形が存在する場合には、適合する多角形のみをマーカ候補(マーカの画像情報)として記憶部111に格納する(ステップS103)。
マーカ位置取得部113は、記憶部111からステップS105以降の処理がなされていないマーカ候補を抽出する。マーカ位置取得部113は、抽出したマーカ候補に対してどの角がマーカの外枠の切り欠き141に相当するかを決定する(図3D)。マーカ位置取得部113は、決定した切り欠き141に基づいてマーカ候補の正しい向きに補正する。例えば、マーカ位置取得部113は、切り欠き141に基づいてマーカ候補の各頂点をそのマーカ候補に対応するマーカの各頂点に射影するホモグラフィー行列を求め、それに基づいてマーカ候補を正しい向きに射影する。その後、マーカ位置取得部113は、補正されたマーカ候補の特定の領域142から識別子IDiを抽出する。例えば、特定の領域142内の白および黒のピクセルの比率を算出し、識別子IDiを抽出する。さらに、マーカ位置取得部113は、補正されたマーカ候補の他の領域143内の図形から誤り検出ビットを抽出し、それを用いて識別子IDiをチェックしてもよい(ステップS104)。
マーカ位置取得部113は、得られた識別子IDiが有効であるか否かを判定する。例えば、識別子IDiが予め定められた範囲に属しない場合や誤り検出ビットによるチェックがエラーである場合には得られた識別子IDiが有効でないと判定し、それ以外の場合に有効であると判定する。得られた識別子IDiが有効でないと判定した場合にはステップS110に進み、得られた識別子IDiが有効であると判定した場合にはステップS106に進む(ステップS105)。
ステップS106では、マーカ位置取得部113は、マーカ候補の各頂点m(i)(例えば、図3Fで白丸で示した頂点)の画像座標系における座標(1ui,1vi)〜(M(i)ui,M(i)vi)を取得する。ただし、m(i)=1,・・・,M(i)であり、M(i)はマーカ候補の頂点の個数を表す正整数である(ステップS106)。マーカ位置取得部113は、さらに記憶部111に格納されたデータベースを参照し、マーカ候補から得られた識別子IDiに対応するマーカ14−iの世界座標系における中心座標(xi,yi,zi)を取得する(ステップS107)。マーカ位置取得部113は、それら抽出した世界座標系における中心座標(xi,yi,zi)を用い、マーカ14−iの各頂点m(i)=1,・・・,M(i)の世界座標系における既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)を得る。例えば、マーカ位置取得部113は、各マーカ14−iの中心座標(xi,yi,zi)に対する各頂点の相対位置の情報を保持しているか、あるいはマーカ幅wiを使ってそれを計算により求めることができる。マーカ位置取得部113は、それを用いて入力された中心座標(xi,yi,zi)から各頂点m(i)の既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)を得る(ステップS108)。マーカ位置取得部113は、このように得られたマーカ候補の各頂点m(i)(ただし、m(i)=1,・・・,M(i))の画像座標系における座標(1ui,1vi)〜(M(i)ui,M(i)vi)、および世界座標系における既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)を記憶部111に格納する(ステップS109)。
マーカ位置取得部113は、ステップS105以降の処理を行っていないマーカ候補が存在するか判定する(ステップS110)。ここで、ステップS105以降の処理を行っていないマーカ候補が存在する場合にはステップS104に戻り、存在しない場合にはステップS111に進む。
《位置推定処理》
上述のように得られた複数個のマーカ候補の各頂点m(i)(ただし、m(i)=1,・・・,M(i))の画像座標系における座標(1ui,1vi)〜(M(i)ui,M(i)vi)、および世界座標系にける既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)は、位置推定部114に送られる。位置推定部114は、これらを用いて座標変換行列を得、撮影装置13の位置(基準点)の位置推定値を得る。すなわち、位置推定部114は、ステップS103およびS105でyesとされた有効なマーカ候補の頂点m(i)の画像座標系における2次元座標(u,v)に対してPnP(perspective n-points)問題を解き、それによって得られる座標変換行列から撮影装置13の位置を推定する。以下にこの詳細を説明する。
上述のように得られた複数個のマーカ候補の各頂点m(i)(ただし、m(i)=1,・・・,M(i))の画像座標系における座標(1ui,1vi)〜(M(i)ui,M(i)vi)、および世界座標系にける既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)は、位置推定部114に送られる。位置推定部114は、これらを用いて座標変換行列を得、撮影装置13の位置(基準点)の位置推定値を得る。すなわち、位置推定部114は、ステップS103およびS105でyesとされた有効なマーカ候補の頂点m(i)の画像座標系における2次元座標(u,v)に対してPnP(perspective n-points)問題を解き、それによって得られる座標変換行列から撮影装置13の位置を推定する。以下にこの詳細を説明する。
マーカの頂点の画像座標系における座標(u,v)、頂点の既知の世界座標系における座標(x,y,z)、既知のカメラパラメータの行列C(焦点距離fx,fy、画像中心cx,cy)、および既知のスケールパラメータsには以下の関係が成り立つ。
ただし、
である。Rは回転操作を表す行列であり、tは並進移動操作を表す行列であり、[R|t]を座標変換行列と呼ぶ。
ただし、
である。Rは回転操作を表す行列であり、tは並進移動操作を表す行列であり、[R|t]を座標変換行列と呼ぶ。
世界座標系における撮影装置13の位置cは式(1)のtとRを用いて、t=−Rcの関係が成立する。すなわち、世界座標系における撮影装置13の位置cは以下のように算出できる。
c=−R−1t (2)
ただし、R−1はRの逆行列である。一方、dをカメラ座標系における点の位置、カメラ座標系における点の位置dに対応する世界座標系における点の位置(既知)をaとしたとき、d=R(a−c)が成り立つ。よって以下が成り立つ。
c=a−R−1d (3)
なお、「カメラ座標系」とは、カメラに対して相対位置が固定された点を原点とした3次元座標系のことであり、この座標系の原点は、世界座標系においては撮影装置13の位置に相当する。
c=−R−1t (2)
ただし、R−1はRの逆行列である。一方、dをカメラ座標系における点の位置、カメラ座標系における点の位置dに対応する世界座標系における点の位置(既知)をaとしたとき、d=R(a−c)が成り立つ。よって以下が成り立つ。
c=a−R−1d (3)
なお、「カメラ座標系」とは、カメラに対して相対位置が固定された点を原点とした3次元座標系のことであり、この座標系の原点は、世界座標系においては撮影装置13の位置に相当する。
また、撮影装置13によって撮影された周辺画像から得られたマーカの頂点のカメラ座標系における座標を(Lx,Ly,Lz)とすると以下の関係が成り立つ。
式(4)を式(1)に代入すると以下が成り立つ。
従って、周辺画像からカメラ座標系における頂点の座標(Lx,Ly,Lz)として合計n個の座標(Lx1,Ly1,Lz1),・・・,(Lxn,Lyn,Lzn)が得られており、それらに対応する既知の世界座標系における頂点の座標が(x1,y1,z1),・・・,(xn,yn,zn)である場合、以下が成り立つ。
ここで、式(6)の第2項の(x1,y1,z1),・・・,(xn,yn,zn)を列ベクトルとする行列Yの擬似逆行列[Y]+を求め、それを式(6)の両辺に掛けると以下が成り立つ。
従って、周辺画像から得られたカメラ座標系における頂点の座標(Lx1,Ly1,Lz1),・・・,(Lxn,Lyn,Lzn)と、それらに対応する世界座標系における頂点の座標(既知)(x1,y1,z1),・・・,(xn,yn,zn)とを用い、式(7)を計算することで座標変換行列[R|t]を求めることができる。さらに得られた座標変換行列[R|t]の行列Rおよびtを式(2)に代入することで世界座標系における撮影装置13の位置cを計算することができる。このとき、この計算に用いることができるマーカの頂点の総数nが大きいほど、つまり多くのマーカが撮影できればできるほど、世界座標系における撮影装置13の位置cの計測誤差が小さくなることが期待できる。
以上に基づき、位置推定部114の処理手順を説明する。位置推定部114は、送られたすべてのマーカ14−iの各頂点m(i)(ただし、m(i)=1,・・・,M(i))の画像座標系における座標(u,v)=(1ui,1vi),・・・,(M(i)ui,M(i)vi)を式(4)に代入し、各マーカ14−iの各頂点のカメラ座標系における既知の座標(Lx,Ly,Lz)=(1Lxi,1Lyi,1Lzi),・・・,(M(i)Lxi,M(i)Lyi,M(i)Lzi)を得る。次に、位置推定部114は、得られたすべてのマーカ14−iのカメラ座標系における頂点の座標(1Lxi,1Lyi,1Lzi)〜(M(i)Lxi,M(i)Lyi,M(i)Lzi)を(Lx1,Ly1,Lz1),・・・,(Lxn,Lyn,Lzn)とし、それらの世界座標系における既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)を(x1,y1,z1),・・・,(xn,yn,zn)とし、式(7)によって座標変換行列[R|t]を求める。すなわち、位置推定部114に送られた頂点の総数をnとする。次に、位置推定部114は、得られた座標変換行列[R|t]の行列Rおよびtを式(2)に代入することで撮影装置13の世界座標系における位置c=(Xc,Yc,Zc)(位置推定値)を計算する(ステップS111)。
《方位推定処理》
目的位置生成部112は、位置推定値c=(Xc,Yc,Zc)を入力とし、実空間内の次の目的位置(経由ノード)の世界座標系における座標d=(Xd,Yd,0)を生成して出力する。目的位置生成部112は、位置推定値cが表す位置から最終目的位置(事前設定された位置)までの経路を設定し、その経路における経由ノードの世界座標系における座標d=(Xd,Yd,0)を自動的に生成して出力する。
目的位置生成部112は、位置推定値c=(Xc,Yc,Zc)を入力とし、実空間内の次の目的位置(経由ノード)の世界座標系における座標d=(Xd,Yd,0)を生成して出力する。目的位置生成部112は、位置推定値cが表す位置から最終目的位置(事前設定された位置)までの経路を設定し、その経路における経由ノードの世界座標系における座標d=(Xd,Yd,0)を自動的に生成して出力する。
位置推定部114で得られた位置推定値c=(Xc,Yc,Zc)および目的位置生成部112で得られた座標d=(Xd,Yd,0)は、方位推定部115に入力される。方位推定部115は、これらを用い、位置(Xc,Yc,0)(基準点または基準点に対する所定の相対位置)を基点とした次の目的位置(Xd,Yd,0)の方向を推定し、その方向を表す方位推定値Θzを出力する。例えば、方位推定部115は、以下のように方位推定値Θzを得て出力する。
Θz=arctan((Yd−Yc)/(Xd−Xc))−ψz (8)
ただし、ψzは、Θz=0として加速度発生装置12を動かした場合の、加速度発生装置12が擬似的な力覚を生成する方向と世界座標系のX軸がなす角度を表す。式(8)で得られる方位推定値Θzは、この進行方向を基準とした次の目的位置(Xd,Yd,0)の相対的な方向を表す。例えば、Θz=0はこの進行方向に次の目的位置(Xd,Yd,0)があることを表す。
Θz=arctan((Yd−Yc)/(Xd−Xc))−ψz (8)
ただし、ψzは、Θz=0として加速度発生装置12を動かした場合の、加速度発生装置12が擬似的な力覚を生成する方向と世界座標系のX軸がなす角度を表す。式(8)で得られる方位推定値Θzは、この進行方向を基準とした次の目的位置(Xd,Yd,0)の相対的な方向を表す。例えば、Θz=0はこの進行方向に次の目的位置(Xd,Yd,0)があることを表す。
方位推定値Θzは、位置推定値c=(Xc,Yc,Zc)が新たに方位推定部115に入力されるたびに再計算される。これにより、利用者の位置や向きの変化に応じ、方位推定値Θzがリアルタイムにアップデートされる。これにより、利用者が経路から外れた場合であっても、利用者を経路に戻すための方向を刻々と修正して提示することができる。座標(Xc,Yc,0)が座標(Xd,Yd,0)の近傍に到達すると、目的位置生成部112は次の目的位置(経由ノード)の座標(Xc,Yc,0)を新たに得て出力する。方位推定部115は、これと位置推定値c=(Xc,Yc,Zc)とを用いて同様に方位推定値Θzを生成して出力する。これを終点目的位置まで繰り返すことにより、経路誘導を実現するための方位推定値Θzを生成していく(ステップS112)。
《制御情報の生成》
方位推定値Θzは制御部116に入力される。制御部116は、方位推定値Θzが表す目的位置の方向成分を持つ向きに、加速度発生装置12が振動による方向提示を行うための制御情報を生成して出力する。例えば、図4Aおよび図4Bに例示したような加速度発生装置12の場合、制御部116は、振動子120−1を方位推定値Θzが表す目的位置の方向成分を持つ向き(例えば、方位推定値Θzが表す方向)に回転させるための制御情報と、この方向成分を持つ方向(例えば、方位推定値Θzが表す方向)の加速度の時間変化とその逆方向の加速度の時間変化とが非対称な偏加速度運動を振動子120−1に行わせるための制御情報とを生成して出力する。例えば、図4Cに例示したような加速度発生装置12の場合、制御部116は、振動子120−1から120−4が提示する擬似的な力覚の方向の合成ベクトルが方位推定値Θzが表す目的位置の方向成分を持つ向き(例えば、方位推定値Θzが表す方向)となるように、振動子120−1から120−4を制御するための制御情報を生成して出力する(ステップS113)。加速度発生装置12は、入力された制御情報に基づいて駆動して擬似的な力覚を提示する。これにより、加速度発生装置12を把持する利用者を経路誘導できる。
方位推定値Θzは制御部116に入力される。制御部116は、方位推定値Θzが表す目的位置の方向成分を持つ向きに、加速度発生装置12が振動による方向提示を行うための制御情報を生成して出力する。例えば、図4Aおよび図4Bに例示したような加速度発生装置12の場合、制御部116は、振動子120−1を方位推定値Θzが表す目的位置の方向成分を持つ向き(例えば、方位推定値Θzが表す方向)に回転させるための制御情報と、この方向成分を持つ方向(例えば、方位推定値Θzが表す方向)の加速度の時間変化とその逆方向の加速度の時間変化とが非対称な偏加速度運動を振動子120−1に行わせるための制御情報とを生成して出力する。例えば、図4Cに例示したような加速度発生装置12の場合、制御部116は、振動子120−1から120−4が提示する擬似的な力覚の方向の合成ベクトルが方位推定値Θzが表す目的位置の方向成分を持つ向き(例えば、方位推定値Θzが表す方向)となるように、振動子120−1から120−4を制御するための制御情報を生成して出力する(ステップS113)。加速度発生装置12は、入力された制御情報に基づいて駆動して擬似的な力覚を提示する。これにより、加速度発生装置12を把持する利用者を経路誘導できる。
制御部116は処理を終了するか否かを判定する。例えば、制御部116は、座標(Xc,Yc,0)が最終的な目的値の座標(Xd,Yd,0)の近傍に到達した場合や、所定の時間が経過した場合などに処理を終了すると判定する。制御部116が処理を終了すると判定しない場合にはステップS101に戻る。制御部116が処理を終了すると判定する場合には処理を終了する。
[第2実施形態]
本実施形態は第1実施形態の変形例である。本実施形態の周辺画像は、複数の平面のそれぞれに位置するマーカの画像を含み、位置推定部は、同一の平面に位置する複数個のマーカの画像に由来する複数個のマーカの画像情報に基づいて基準点の位置の予備推定値を得、平面のそれぞれに対して得られた予備推定値を用いて位置推定値を得る。以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については同じ参照番号を用いて説明を省略する。
本実施形態は第1実施形態の変形例である。本実施形態の周辺画像は、複数の平面のそれぞれに位置するマーカの画像を含み、位置推定部は、同一の平面に位置する複数個のマーカの画像に由来する複数個のマーカの画像情報に基づいて基準点の位置の予備推定値を得、平面のそれぞれに対して得られた予備推定値を用いて位置推定値を得る。以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については同じ参照番号を用いて説明を省略する。
図1に例示するように、本形態の位置推定システム2は、位置推定装置21と加速度発生装置12と撮影装置13と複数個のマーカ24−1〜24−Nとを有する。ただし、Nは2以上の整数である。
<マーカ24−1〜24−N>
本実施形態のマーカ24−i(ただし、i=1,・・・,N)は、マーカ24−iを表す識別子IDiだけではなく、マーカ24−iが設置される平面(例えば、天井や壁等)を表す平面識別子PIDiをも表している。その他、マーカ24−iが識別子IDiや平面識別子PIDiの誤り検出ビットを表していてもよい。その他は第1実施形態のマーカ14−1〜14−Nと同じである。
本実施形態のマーカ24−i(ただし、i=1,・・・,N)は、マーカ24−iを表す識別子IDiだけではなく、マーカ24−iが設置される平面(例えば、天井や壁等)を表す平面識別子PIDiをも表している。その他、マーカ24−iが識別子IDiや平面識別子PIDiの誤り検出ビットを表していてもよい。その他は第1実施形態のマーカ14−1〜14−Nと同じである。
<位置推定装置21>
本実施形態の位置推定装置21は、記憶部211と目的位置生成部112とマーカ位置取得部113と位置推定部214と方位推定部115と制御部116とを有する。位置推定装置21は、例えば、前述のコンピュータが所定のプログラムを実行することで構成される装置である。また、単独で処理機能を実現する電子回路を用いて一部またはすべての処理部が構成されてもよい。
本実施形態の位置推定装置21は、記憶部211と目的位置生成部112とマーカ位置取得部113と位置推定部214と方位推定部115と制御部116とを有する。位置推定装置21は、例えば、前述のコンピュータが所定のプログラムを実行することで構成される装置である。また、単独で処理機能を実現する電子回路を用いて一部またはすべての処理部が構成されてもよい。
<加速度発生装置12・撮影装置13>
第1実施形態と同じである。
第1実施形態と同じである。
<事前設定>
位置推定装置21と加速度発生装置12と撮影装置13とマーカ24−1〜24−Nは、実空間内に配置されている。このうち、マーカ24−1〜24−Nは、実空間内の互いに異なる位置に固定されている。互いに異なるマーカ24−i(ただし、i=1,・・・,N)は互いに異なる平面上に配置されていてもよいが、個々のマーカ24−i全体は同一平面上に配置される(個々のマーカ14−iは折れ曲がったり、曲がった面に配置されたりせず、各平面上に配置される)。一方、位置推定装置21と加速度発生装置12と撮影装置13の実空間内の位置(世界座標系における位置)は固定されていない(すなわち、これらは実空間内を移動可能である)が、加速度発生装置12と撮影装置13との間の相対位置は固定されている。
位置推定装置21と加速度発生装置12と撮影装置13とマーカ24−1〜24−Nは、実空間内に配置されている。このうち、マーカ24−1〜24−Nは、実空間内の互いに異なる位置に固定されている。互いに異なるマーカ24−i(ただし、i=1,・・・,N)は互いに異なる平面上に配置されていてもよいが、個々のマーカ24−i全体は同一平面上に配置される(個々のマーカ14−iは折れ曲がったり、曲がった面に配置されたりせず、各平面上に配置される)。一方、位置推定装置21と加速度発生装置12と撮影装置13の実空間内の位置(世界座標系における位置)は固定されていない(すなわち、これらは実空間内を移動可能である)が、加速度発生装置12と撮影装置13との間の相対位置は固定されている。
また、マーカ24−i(ただし、i=1,・・・,N)の世界座標系における中心座標(xi,yi,zi)とマーカ24−iが配置される平面の情報とマーカ幅wiが事前に得られ、マーカ24−iの識別子IDiと世界座標系における中心座標(xi,yi,zi)とマーカ幅wiとマーカ24−iが配置される平面(例えば、天井や壁など)の平面識別子PIDiとを対応付けたデータベースが位置推定装置21の記憶部211に格納される。以下に、このデータベースを例示する。
<処理>
図7および図8を用いて本実施形態の処理を説明する。
《撮影・マーカの位置情報取得》
ステップS101からS110までの処理は、マーカ14−iがマーカ24−iに置換される以外、第1実施形態と同じである。ただし、撮影された周辺画像は、複数の平面のそれぞれに位置するマーカの画像を含み得る。
図7および図8を用いて本実施形態の処理を説明する。
《撮影・マーカの位置情報取得》
ステップS101からS110までの処理は、マーカ14−iがマーカ24−iに置換される以外、第1実施形態と同じである。ただし、撮影された周辺画像は、複数の平面のそれぞれに位置するマーカの画像を含み得る。
《位置推定処理》
位置推定部214には、マーカ位置取得部113で得られた、複数個のマーカ候補の各頂点m(i)(ただし、m(i)=1,・・・,M(i))の画像座標系における座標(1ui,1vi)〜(M(i)ui,M(i)vi)、世界座標系における既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)、およびマーカ候補に対応するマーカ24−iの識別子IDiが入力される。さらに位置推定部214は、記憶部211に格納されたデータベースを参照し、識別子IDiに対応する平面識別子PIDiを抽出する。
位置推定部214には、マーカ位置取得部113で得られた、複数個のマーカ候補の各頂点m(i)(ただし、m(i)=1,・・・,M(i))の画像座標系における座標(1ui,1vi)〜(M(i)ui,M(i)vi)、世界座標系における既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)、およびマーカ候補に対応するマーカ24−iの識別子IDiが入力される。さらに位置推定部214は、記憶部211に格納されたデータベースを参照し、識別子IDiに対応する平面識別子PIDiを抽出する。
位置推定部214は、これらを用いて、同一の平面に位置する複数個のマーカの画像に由来する複数個のマーカの画像情報に基づいて撮影装置13(基準点)の位置の予備推定値を得、平面のそれぞれに対して得られた予備推定値を用いて位置推定値を得る(ステップS211)。以下にこの詳細を説明する。
まず、位置推定部214は、ステップS2112以降の処理が実行されていない平面識別子PIDiを選択し、それが有効なものであるかを判定する。例えば、平面識別子PIDiが予め定められた範囲に属しない場合や誤り検出ビットによるチェックがエラーである場合には得られた平面識別子PIDiが有効でないと判定し、それ以外の場合に有効であると判定する。選択した平面識別子PIDiが有効でないと判定した場合にはステップS2114に進み、選択した平面識別子PIDiが有効であると判定した場合にはステップS2112に進む(ステップS2111)。
ステップS2112では、位置推定部214は、選択した平面識別子PIDiに対応するマーカ24−i(ただし、m(i)=1,・・・,M(i))の画像座標系における座標(u,v)=(1ui,1vi),・・・,(M(i)ui,M(i)vi)を式(4)に代入し、各マーカ24−iの各頂点のカメラ座標系における座標(Lx,Ly,Lz)=(1Lxi,1Lyi,1Lzi),・・・,(M(i)Lxi,M(i)Lyi,M(i)Lzi)を得る。次に、位置推定部214は、選択した平面識別子PIDiに対応するカメラ座標系における座標(1Lxi,1Lyi,1Lzi)〜(M(i)Lxi,M(i)Lyi,M(i)Lzi)を(Lx1,Ly1,Lz1),・・・,(Lxn,Lyn,Lzn)とし、それらの世界座標系における座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)を(x1,y1,z1),・・・,(xn,yn,zn)とし、式(7)によって座標変換行列[R|t]を求め、行列Rおよびtを式(2)に代入することで撮影装置13の世界座標系における位置c’(PIDi)=(Xc’,Yc’,Zc’)(予備推定値)を計算する(ステップS2112)。位置推定部214は、位置c’(PIDi)を平面識別子PIDiに対応付けて記憶部211に格納する(ステップS2113)。
位置推定部214は、すべての平面識別子PIDiに対応する処理が終了したかを判定する(ステップS2114)。ここで、すべての平面識別子PIDiに対応する処理が終了していないと判定された場合にはステップS2111に戻る。一方、すべての平面識別子PIDiに対応する処理が終了したと判定された場合にはステップS2115に進む。
ステップS2115では、位置推定部214が、各平面識別子PIDiに対応するグループでそれぞれ得られた位置c’(PIDi)を用いて撮影装置13の世界座標系における位置c=(Xc,Yc,Zc)(位置推定値)を計算する。例えば、位置推定部214は、グループでそれぞれ得られた位置c’(PIDi)を平均したものを位置cとしてもよいし、推定精度が最も高い(計測誤差の最も小さい)位置c’(PIDi)を位置cとしてもよい。推定精度の評価方法には様々なものが考えられる。例えば、式(7)の計算においてnが大きいほど推定精度が高くなる傾向がある。そのため、最も多くの座標(1Lxi,1Lyi,1Lzi)〜(M(i)Lxi,M(i)Lyi,M(i)Lzi)が属する平面の平面識別子PIDiに対応する位置c’(PIDi)を位置cとしてもよい。或いは、最小二乗法によって推定精度を計算してもよい。例えば、位置推定部214は、平面識別子PIDiに対応する式(7)の[R|t]をAとおき、その擬似逆行列をA+とし、
の二乗ノルムを計算する。ただし、平面識別子PIDiに対応するカメラ座標系における座標(1Lxi,1Lyi,1Lzi)〜(M(i)Lxi,M(i)Lyi,M(i)Lzi)を(Lx1,Ly1,Lz1),・・・,(Lxn,Lyn,Lzn)とし、世界座標系における座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)を(x1,y1,z1),・・・,(xn,yn,zn)とする。また、A+=(ATA)−1ATである。・Tは・の転置を示す。このEの二乗ノルムが最も小さいほど推定精度が高い。そのため、位置推定部214は、Eの二乗ノルムが最も小さくなる平面識別子PIDiに対応する位置c’(PIDi)を位置cとしてもよい(ステップS2115)。その他の処理は第1実施形態と同じである。
の二乗ノルムを計算する。ただし、平面識別子PIDiに対応するカメラ座標系における座標(1Lxi,1Lyi,1Lzi)〜(M(i)Lxi,M(i)Lyi,M(i)Lzi)を(Lx1,Ly1,Lz1),・・・,(Lxn,Lyn,Lzn)とし、世界座標系における座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)を(x1,y1,z1),・・・,(xn,yn,zn)とする。また、A+=(ATA)−1ATである。・Tは・の転置を示す。このEの二乗ノルムが最も小さいほど推定精度が高い。そのため、位置推定部214は、Eの二乗ノルムが最も小さくなる平面識別子PIDiに対応する位置c’(PIDi)を位置cとしてもよい(ステップS2115)。その他の処理は第1実施形態と同じである。
[第3実施形態]
第3実施形態は第1実施形態の変形例であり、位置推定の精度が高いほど加速度発生装置が明確な振動刺激を提示する。以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については同じ参照番号を用いて説明を省略する。
第3実施形態は第1実施形態の変形例であり、位置推定の精度が高いほど加速度発生装置が明確な振動刺激を提示する。以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については同じ参照番号を用いて説明を省略する。
図1に例示するように、本形態の位置推定システム3は、位置推定装置31と加速度発生装置12と撮影装置13と複数個のマーカ14−1〜14−Nとを有する。
<マーカ14−1〜14−N>
第1実施形態と同じである。
第1実施形態と同じである。
<位置推定装置11>
本実施形態の位置推定装置31は、記憶部111と目的位置生成部112とマーカ位置取得部113と位置推定部314と方位推定部115と制御部316とを有する。位置推定装置31は、例えば、前述のコンピュータが所定のプログラムを実行することで構成される装置である。或いは、単独で処理機能を実現する電子回路を用いて一部またはすべての処理部が構成されてもよい。
本実施形態の位置推定装置31は、記憶部111と目的位置生成部112とマーカ位置取得部113と位置推定部314と方位推定部115と制御部316とを有する。位置推定装置31は、例えば、前述のコンピュータが所定のプログラムを実行することで構成される装置である。或いは、単独で処理機能を実現する電子回路を用いて一部またはすべての処理部が構成されてもよい。
<加速度発生装置12・撮影装置13>
第1実施形態と同じである。
第1実施形態と同じである。
<事前設定>
第1実施形態と同じである。
第1実施形態と同じである。
<処理>
図7を用いて本実施形態の処理を説明する。
《撮影・マーカの位置情報取得》
ステップS101からS110までの処理は第1実施形態と同じである。
図7を用いて本実施形態の処理を説明する。
《撮影・マーカの位置情報取得》
ステップS101からS110までの処理は第1実施形態と同じである。
《位置推定処理》
位置推定部314には、マーカ位置取得部113で得られた、複数個のマーカ候補の各頂点m(i)(ただし、m(i)=1,・・・,M(i))の画像座標系における座標(1ui,1vi)〜(M(i)ui,M(i)vi)、および世界座標系における既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)が入力される。位置推定部314は、これらを用い、第1実施形態で説明したように撮影装置13の位置(基準点)の位置推定値c=(Xc,Yc,Zc)を得る。位置推定部314は、さらに位置推定値cの精度を表す推定精度値ACCを得る。例えば、位置推定部314は、式(7)の[R|t]をAとおき、その擬似逆行列をA+とし、式(9)のEの二乗ノルムを推定精度値ACCとする。ただし、位置推定部314の処理の過程において、すべての頂点のカメラ座標系における座標(1Lxi,1Lyi,1Lzi)〜(M(i)Lxi,M(i)Lyi,M(i)Lzi)を(Lx1,Ly1,Lz1),・・・,(Lxn,Lyn,Lzn)とし、位置推定部314に入力されたすべての頂点の世界座標系における座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)を(x1,y1,z1),・・・,(xn,yn,zn)とする。推定精度値ACCが小さいほど推定精度が高い(ステップS311)。
位置推定部314には、マーカ位置取得部113で得られた、複数個のマーカ候補の各頂点m(i)(ただし、m(i)=1,・・・,M(i))の画像座標系における座標(1ui,1vi)〜(M(i)ui,M(i)vi)、および世界座標系における既知の座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)が入力される。位置推定部314は、これらを用い、第1実施形態で説明したように撮影装置13の位置(基準点)の位置推定値c=(Xc,Yc,Zc)を得る。位置推定部314は、さらに位置推定値cの精度を表す推定精度値ACCを得る。例えば、位置推定部314は、式(7)の[R|t]をAとおき、その擬似逆行列をA+とし、式(9)のEの二乗ノルムを推定精度値ACCとする。ただし、位置推定部314の処理の過程において、すべての頂点のカメラ座標系における座標(1Lxi,1Lyi,1Lzi)〜(M(i)Lxi,M(i)Lyi,M(i)Lzi)を(Lx1,Ly1,Lz1),・・・,(Lxn,Lyn,Lzn)とし、位置推定部314に入力されたすべての頂点の世界座標系における座標(1xi,1yi,1zi)〜(M(i)xi,M(i)yi,M(i)zi)を(x1,y1,z1),・・・,(xn,yn,zn)とする。推定精度値ACCが小さいほど推定精度が高い(ステップS311)。
《方位推定処理》
第1実施形態と同じである。
第1実施形態と同じである。
《制御情報の生成》
方位推定値Θzおよび推定精度値ACCは制御部316に入力される。制御部316は、方位推定値Θzが表す目的位置の方向成分を持つ向きに、加速度発生装置12が振動による方向提示を行うための制御情報を生成して出力する。ただし、本実施形態の制御部316は、推定精度値ACCが示す推定精度が高いほど(推定精度値ACCが小さいほど)明確な方向提示または強い方向提示を行うような制御情報を生成して出力する。すなわち、推定精度値ACCが第1値のときの制御情報を第1の方向提示を行うための情報とし、推定精度値ACCが第2値のときの制御情報を第2の方向提示を行うための情報とし、第2値が表す精度が第1値が表す精度よりも高いとする。このとき、第2の方向提示を第1の方向提示よりも明確または強くする。
方位推定値Θzおよび推定精度値ACCは制御部316に入力される。制御部316は、方位推定値Θzが表す目的位置の方向成分を持つ向きに、加速度発生装置12が振動による方向提示を行うための制御情報を生成して出力する。ただし、本実施形態の制御部316は、推定精度値ACCが示す推定精度が高いほど(推定精度値ACCが小さいほど)明確な方向提示または強い方向提示を行うような制御情報を生成して出力する。すなわち、推定精度値ACCが第1値のときの制御情報を第1の方向提示を行うための情報とし、推定精度値ACCが第2値のときの制御情報を第2の方向提示を行うための情報とし、第2値が表す精度が第1値が表す精度よりも高いとする。このとき、第2の方向提示を第1の方向提示よりも明確または強くする。
方向提示の明確性や強さを変化させる方法としては、例えば、加速度発生装置12に供給する電流値や電圧値の振幅を制御する方法がある。すなわち、加速度発生装置12に明確性が高い方向提示や強い方向提示を行わせるためには、振幅の大きな電流値や電圧値を加速度発生装置12に供給し、逆に明確性が低い方向提示や弱い方向提示を行わせるためには、振幅の小さな電流値や電圧値を加速度発生装置12に供給する。他の方法としては、加速度発生装置12の振動子の偏加速度運動の周波数を制御する方法がある。80Hzまたは80Hz付近の周波数成分は、動物(人を含む)の皮膚・筋・腱の受容器の中で、方向や加速度の知覚に寄与する受容器の神経活動を最も活発化させる周波数である。そのため、80Hzまたはその付近の周波数成分を持つ加速度が与えられた人(動物)は強い力覚や動きを知覚する。これを利用し、加速度発生装置12に明確性が高い方向提示を行わせる際には、加速度発生装置12の振動子が80Hzまたはその付近の周波数成分を持つ偏加速度運動を行う制御情報を生成し、逆に加速度発生装置12に明確性が低い方向提示を行わせる際には、加速度発生装置12の振動子が80Hzまたはその付近の周波数成分を持たない偏加速度運動を行う制御情報を生成してもよい。他の方法として、加速度発生装置12に明確性が高い方向提示を行わせる際には、所望の方向の加速度の時間変化とその逆方向の加速度の時間変化とが非対称な偏加速度運動を行う制御情報を生成し、逆に加速度発生装置12に明確性が低い方向提示を行わせる際には、所望の方向の加速度の時間変化とその逆方向の加速度の時間変化とが対称に近い加速度運動を行う制御情報を生成してもよい。また、これらの制御を組み合わせることで、方向提示の明確性と強さとを独立に制御してもよい。
なお、第3実施形態では第1実施形態の変形例として説明を行ったが、第3実施形態の構成を第2実施形態に適用してもよい。すなわち、第2実施形態の位置推定部214がさらに推定精度値ACCを生成して出力し、制御部116に代えて制御部316が推定精度値ACCが示す推定精度が高いほど明確な方向提示を行うような制御情報を生成して出力してもよい。
[第4実施形態]
第4実施形態は第1実施形態の変形例である。本実施形態では、人間の目では区別できないが特定の撮影装置(赤外線カメラ)で撮影された画像では区別可能なマーカを用いる。すなわち、本実施形態の周辺画像は、人間の目では区別できないマーカの相違を区別して撮影できる撮影装置で得られた画像である。以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については同じ参照番号を用いて説明を省略する。
第4実施形態は第1実施形態の変形例である。本実施形態では、人間の目では区別できないが特定の撮影装置(赤外線カメラ)で撮影された画像では区別可能なマーカを用いる。すなわち、本実施形態の周辺画像は、人間の目では区別できないマーカの相違を区別して撮影できる撮影装置で得られた画像である。以下では、第1実施形態との相違点を中心に説明し、第1実施形態と共通する事項については同じ参照番号を用いて説明を省略する。
図1に例示するように、本形態の位置推定システム4は、位置推定装置11と加速度発生装置12と撮影装置43と複数個のマーカ44−1〜44−Nとを有する。
<マーカ44−1〜44−N>
マーカ44−i(ただし、i=1,・・・,N)は、第1実施形態のマーカ14−i(図2A〜図2C)の白の部分に背景が黒色の再帰性反射材を貼り付けたものである。再帰性反射材とは入射された方向と同じに光を反射する素材のことである。カメラ等の撮影装置43には赤外線発光の光源(たとえば赤外発光LED)が取り付けられ、撮像対象へ赤外線を照射している。赤外線は人間の目には直接見えないので、人間の目にはマーカ44−iが一様の黒色に見える(図9A)。しかし、一般のビデオカメラの多くのように赤外波長まで撮像可能な撮影装置43では再帰性反射材だけが白く光り、マーカの部分だけが白く光る(図9B)。これにより、撮影される周辺画像からマーカ44−iを抽出することができる。その他の構成は第1実施形態と同じである。
マーカ44−i(ただし、i=1,・・・,N)は、第1実施形態のマーカ14−i(図2A〜図2C)の白の部分に背景が黒色の再帰性反射材を貼り付けたものである。再帰性反射材とは入射された方向と同じに光を反射する素材のことである。カメラ等の撮影装置43には赤外線発光の光源(たとえば赤外発光LED)が取り付けられ、撮像対象へ赤外線を照射している。赤外線は人間の目には直接見えないので、人間の目にはマーカ44−iが一様の黒色に見える(図9A)。しかし、一般のビデオカメラの多くのように赤外波長まで撮像可能な撮影装置43では再帰性反射材だけが白く光り、マーカの部分だけが白く光る(図9B)。これにより、撮影される周辺画像からマーカ44−iを抽出することができる。その他の構成は第1実施形態と同じである。
<事前設定>
マーカ14−iがマーカ44−iに置換される以外、第1実施形態と同じである。
マーカ14−iがマーカ44−iに置換される以外、第1実施形態と同じである。
<処理>
図7を用いて本実施形態の処理を説明する。
《撮影》
撮影装置43が周囲を撮影し、それによってカラーの周辺画像(図3A)を得る(ステップS401)。周辺画像はマーカ位置取得部113に送られる。
図7を用いて本実施形態の処理を説明する。
《撮影》
撮影装置43が周囲を撮影し、それによってカラーの周辺画像(図3A)を得る(ステップS401)。周辺画像はマーカ位置取得部113に送られる。
他の処理は第1実施形態と同じである。なお、第2実施形態や第3実施形態やそれらの変形例に本実施形態を適用してもよい。すなわち、第2実施形態や第3実施形態のマーカ14−iやマーカ24−iをマーカ44−iに置換し、撮影装置13を撮影装置43に置換してもよい。
[第5実施形態]
カメラ等の撮影装置13と加速度発生装置12とが一体となっている場合(図6)、加速度発生装置12によって生じる振動が安定した画像の取得に影響することがある。そのため、ビデオカメラに用いられているような手ぶれ補正のような画像の安定化が必要となる。本実施形態では、撮影位置の振動を表す情報を用いて周辺画像の振動成分を補正し、それによって得られる補正画像に由来するマーカの画像情報を用いる。以下では、第1実施形態にこのような変形を施した例を示すが、第2から4実施形態やそれらの変形例にこのような変形を施してもよい。
カメラ等の撮影装置13と加速度発生装置12とが一体となっている場合(図6)、加速度発生装置12によって生じる振動が安定した画像の取得に影響することがある。そのため、ビデオカメラに用いられているような手ぶれ補正のような画像の安定化が必要となる。本実施形態では、撮影位置の振動を表す情報を用いて周辺画像の振動成分を補正し、それによって得られる補正画像に由来するマーカの画像情報を用いる。以下では、第1実施形態にこのような変形を施した例を示すが、第2から4実施形態やそれらの変形例にこのような変形を施してもよい。
図1に例示するように、本実施形態の位置推定システム5は、第1実施形態の位置推定システム1の位置推定装置11を位置推定装置51に置換し、加速度センサ56を加えたものである。位置推定装置51は、第1実施形態の位置推定装置11に振動検出部517および画像安定化部518を加えたものである。撮影装置13と加速度発生装置12とは一体化されている(図6)。
加速度センサ56は、加速度発生装置12の振動の大きさと方向を2軸で検出するセンサである。加速度センサ56は、加速度発生装置12に表面に配置され、その振動の方向と大きさを検出する。加速度センサ56での検出信号は振動検出部517に送られ、加速度発生装置12の振動の方向と大きさを表す情報(撮影位置の振動を表す情報)が画像安定化部518に送られる。画像安定化部518は、振動方向の方向に対して、ブラー・カーネルを算出し、カーネルの逆処理によって画像のぶれを除去するための情報をマーカ位置取得部113に送る。マーカ位置取得部113は、この情報を用いて撮影装置13から送られた周辺画像を補正した補正画像に由来するマーカの画像情報を得る。これにより、画像の安定化を図る。なお、シャッタースピードが非常に高速なカメラを撮影装置13として採用すれば安定した画像が取得できるため、そのような場合には本実施形態の構成および処理は不要である。
[特徴]
各実施形態の方式では、GPS信号の使用が難しい室内であっても、簡易なマーカを天井や壁等に設置するだけで位置検出を行うことができる。さらに、マーカを天井や壁等に設置するだけで計測範囲を容易に広げることが可能であるため、コストに対する拡張性が高い。また、前述のように複数のマーカを同時に撮影して位置検出を行うため、推定精度が向上し、ロバスト性が上がる。加えて、振動による方向提示を行うことで、画面上の地図や指示などを注視する必要がないため、利用者の注意の遷移が小さい安全なナビゲーションを実現できる。
各実施形態の方式では、GPS信号の使用が難しい室内であっても、簡易なマーカを天井や壁等に設置するだけで位置検出を行うことができる。さらに、マーカを天井や壁等に設置するだけで計測範囲を容易に広げることが可能であるため、コストに対する拡張性が高い。また、前述のように複数のマーカを同時に撮影して位置検出を行うため、推定精度が向上し、ロバスト性が上がる。加えて、振動による方向提示を行うことで、画面上の地図や指示などを注視する必要がないため、利用者の注意の遷移が小さい安全なナビゲーションを実現できる。
[その他の変形例等]
なお、本発明は上述の実施の形態に限定されるものではない。例えば、マーカが識別子を表すのではなく、マーカの世界座標系における座標(頂点の座標)そのものを表してもよい。この場合には、マーカの画像から直接頂点の座標を抽出できる。上記の構成の具体的実装形態として、カメラと振動提示装置と計算装置とを備えた携帯電話やスマートフォン等の携帯端末装置で上記の撮影装置と加速度発生装置と位置検出装置を構成してもよい。この場合、例えば、利用者がこのような携帯端末装置をそのカメラがマーカが設置された天井や壁を向くように手のひらに乗せて利用できる。また、撮影装置と加速度発生装置とが分離し、撮影装置に対する加速度発生装置の相対位置が固定されていなくてもよい。ただし、この場合には、撮影装置に対する加速度発生装置の相対位置に応じて式(8)のψzを調整する必要がある。
なお、本発明は上述の実施の形態に限定されるものではない。例えば、マーカが識別子を表すのではなく、マーカの世界座標系における座標(頂点の座標)そのものを表してもよい。この場合には、マーカの画像から直接頂点の座標を抽出できる。上記の構成の具体的実装形態として、カメラと振動提示装置と計算装置とを備えた携帯電話やスマートフォン等の携帯端末装置で上記の撮影装置と加速度発生装置と位置検出装置を構成してもよい。この場合、例えば、利用者がこのような携帯端末装置をそのカメラがマーカが設置された天井や壁を向くように手のひらに乗せて利用できる。また、撮影装置と加速度発生装置とが分離し、撮影装置に対する加速度発生装置の相対位置が固定されていなくてもよい。ただし、この場合には、撮影装置に対する加速度発生装置の相対位置に応じて式(8)のψzを調整する必要がある。
上述の各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。その他、本発明の趣旨を逸脱しない範囲で適宜変更が可能であることはいうまでもない。
上述の位置推定装置をコンピュータによって実現する場合、位置推定装置が有すべき機能の処理内容はプログラムによって記述される。このプログラムをコンピュータで実行することにより、上記処理機能がコンピュータ上で実現される。この処理内容を記述したプログラムは、コンピュータで読み取り可能な記録媒体に記録しておくことができる。コンピュータで読み取り可能な記録媒体の例は、非一時的な(non-transitory)記録媒体である。このような記録媒体の例は、磁気記録装置、光ディスク、光磁気記録媒体、半導体メモリ等である。
このプログラムの流通は、例えば、そのプログラムを記録したDVD、CD−ROM等の可搬型記録媒体を販売、譲渡、貸与等することによって行う。さらに、このプログラムをサーバコンピュータの記憶装置に格納しておき、ネットワークを介して、サーバコンピュータから他のコンピュータにそのプログラムを転送することにより、このプログラムを流通させる構成としてもよい。
このようなプログラムを実行するコンピュータは、例えば、まず、可搬型記録媒体に記録されたプログラムもしくはサーバコンピュータから転送されたプログラムを、一旦、自己の記憶装置に格納する。処理の実行時、このコンピュータは、自己の記録装置に格納されたプログラムを読み取り、読み取ったプログラムに従った処理を実行する。このプログラムの別の実行形態として、コンピュータが可搬型記録媒体から直接プログラムを読み取り、そのプログラムに従った処理を実行することとしてもよく、さらに、このコンピュータにサーバコンピュータからプログラムが転送されるたびに、逐次、受け取ったプログラムに従った処理を実行することとしてもよい。サーバコンピュータから、このコンピュータへのプログラムの転送は行わず、その実行指示と結果取得のみによって処理機能を実現する、いわゆるASP(Application Service Provider)型のサービスによって、上述の処理を実行する構成としてもよい。
1〜5 位置推定システム
11〜31,51 位置推定装置
14−i,24−i,44−i マーカ
12 加速度発生装置
11〜31,51 位置推定装置
14−i,24−i,44−i マーカ
12 加速度発生装置
Claims (10)
- 基準点に対する相対位置が定められた撮影位置から撮影された周辺画像に由来する複数個のマーカの画像情報に基づいて複数個のマーカの位置情報を得るマーカ位置取得部と、
前記複数個のマーカの位置情報に基づいて前記基準点の位置推定値を得る位置推定部と、
を有する位置推定装置。 - 請求項1の位置推定装置であって、
前記マーカの画像情報はマーカの世界座標系における座標を特定するための情報を表し、
前記マーカの位置情報は、前記マーカの世界座標系における座標を特定するための情報から特定される前記マーカの世界座標系における座標と、前記マーカの画像情報から特定される前記マーカの画像座標系における座標とを含む、位置推定装置。 - 請求項1または2の位置推定装置であって、
前記周辺画像は、複数の平面のそれぞれに位置するマーカの画像を含み、
前記位置推定部は、同一の平面に位置する前記複数個のマーカの画像に由来する前記複数個のマーカの画像情報に基づいて前記基準点の位置の予備推定値を得、前記平面のそれぞれに対して得られた前記予備推定値を用いて前記位置推定値を得る、位置推定装置。 - 請求項1から3の何れかの位置推定装置であって、
前記周辺画像は、人間の目では区別できないマーカの相違を区別して撮影できる撮影装置で得られた画像である、位置推定装置。 - 請求項1から4の何れかの位置推定装置であって、
目的位置の情報と前記位置推定値とを用い、前記基準点または前記基準点に対する所定の相対位置を基点とした前記目的位置の方向を推定する方位推定部を有する、位置推定装置。 - 請求項5の位置推定装置であって、
前記目的位置の方向成分を持つ向きに振動による方向提示を行うための制御情報を得る制御部を有する、位置推定装置。 - 請求項6の位置推定装置であって、
前記位置推定部は、さらに前記位置推定値の精度を表す推定精度値を得、
前記推定精度値が第1値のときの前記制御情報は、第1の方向提示を行うための情報であり、
前記推定精度値が第2値のときの前記制御情報は、第2の方向提示を行うための情報であり、
前記第2値が表す精度は、前記第1値が表す精度よりも高く、
前記第2の方向提示は、前記第1の方向提示よりも明確または強い、位置推定装置。 - 請求項1から7の何れかの位置推定装置であって、
前記マーカの画像情報は、前記撮影位置の振動を表す情報を用いて前記周辺画像の振動成分を補正して得られる補正画像に由来する情報である、位置推定装置。 - マーカ位置取得部で、基準点に対する相対位置が定められた撮影位置から撮影された周辺画像に由来する複数個のマーカの画像情報に基づいて複数個のマーカの位置情報を得るマーカ位置取得ステップと、
位置推定部で、前記複数個のマーカの位置情報に基づいて前記基準点の位置推定値を得る位置推定ステップと、
を有する位置推定方法。 - 請求項1から8の何れかの位置推定装置としてコンピュータを機能させるためのプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014111134A JP2015225014A (ja) | 2014-05-29 | 2014-05-29 | 位置推定装置、位置推定方法、およびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2014111134A JP2015225014A (ja) | 2014-05-29 | 2014-05-29 | 位置推定装置、位置推定方法、およびプログラム |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2015225014A true JP2015225014A (ja) | 2015-12-14 |
Family
ID=54841852
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2014111134A Pending JP2015225014A (ja) | 2014-05-29 | 2014-05-29 | 位置推定装置、位置推定方法、およびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2015225014A (ja) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017223443A (ja) * | 2016-06-13 | 2017-12-21 | 東日本旅客鉄道株式会社 | 3次元レーザー測定装置 |
JP2018005365A (ja) * | 2016-06-29 | 2018-01-11 | 株式会社ブイ・アール・テクノセンター | 位置検出用ランドマーク及び移動体の位置検出方法 |
JP2018044897A (ja) * | 2016-09-15 | 2018-03-22 | 株式会社五合 | 情報処理装置、カメラ、移動体、移動体システム、情報処理方法およびプログラム |
CN109255840A (zh) * | 2018-08-22 | 2019-01-22 | 重庆金康特智能穿戴技术研究院有限公司 | 一种利用增强现实模块的离线定位方法 |
JP2019121393A (ja) * | 2017-12-31 | 2019-07-22 | サ−コス コーポレイション | ロボット及びロボットデバイスによって見ることができる隠された識別タグ |
WO2020138345A1 (ja) * | 2018-12-27 | 2020-07-02 | 日本電気通信システム株式会社 | 物品位置管理装置、物品位置管理システム、物品位置管理方法及びプログラム |
JP2021157537A (ja) * | 2020-03-27 | 2021-10-07 | 日本電気通信システム株式会社 | 二次元マーカの認識装置、方法、プログラム及びシステム |
CN115797445A (zh) * | 2023-02-06 | 2023-03-14 | 成都智元汇信息技术股份有限公司 | 一种基于图像识别的室内人员定位方法及装置及介质 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6361903A (ja) * | 1986-09-03 | 1988-03-18 | Nissan Motor Co Ltd | 三次元座標変換装置 |
JPH09170914A (ja) * | 1995-12-19 | 1997-06-30 | Canon Inc | 画像計測方法及び画像計測装置 |
JP2003281504A (ja) * | 2002-03-22 | 2003-10-03 | Canon Inc | 撮像部位置姿勢推定装置及びその制御方法並びに複合現実感提示システム |
JP2007163367A (ja) * | 2005-12-15 | 2007-06-28 | Nippon Hoso Kyokai <Nhk> | カメラ情報解析装置 |
JP2008122109A (ja) * | 2006-11-08 | 2008-05-29 | Canon Inc | 情報処理装置、情報処理方法 |
JP2013044706A (ja) * | 2011-08-26 | 2013-03-04 | Sony Corp | 携帯端末装置及び方位提示方法 |
JP2013517483A (ja) * | 2010-01-18 | 2013-05-16 | クアルコム,インコーポレイテッド | オブジェクトを使用した慣性航法システムの整合および較正 |
-
2014
- 2014-05-29 JP JP2014111134A patent/JP2015225014A/ja active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6361903A (ja) * | 1986-09-03 | 1988-03-18 | Nissan Motor Co Ltd | 三次元座標変換装置 |
JPH09170914A (ja) * | 1995-12-19 | 1997-06-30 | Canon Inc | 画像計測方法及び画像計測装置 |
JP2003281504A (ja) * | 2002-03-22 | 2003-10-03 | Canon Inc | 撮像部位置姿勢推定装置及びその制御方法並びに複合現実感提示システム |
JP2007163367A (ja) * | 2005-12-15 | 2007-06-28 | Nippon Hoso Kyokai <Nhk> | カメラ情報解析装置 |
JP2008122109A (ja) * | 2006-11-08 | 2008-05-29 | Canon Inc | 情報処理装置、情報処理方法 |
JP2013517483A (ja) * | 2010-01-18 | 2013-05-16 | クアルコム,インコーポレイテッド | オブジェクトを使用した慣性航法システムの整合および較正 |
JP2013044706A (ja) * | 2011-08-26 | 2013-03-04 | Sony Corp | 携帯端末装置及び方位提示方法 |
Cited By (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2017223443A (ja) * | 2016-06-13 | 2017-12-21 | 東日本旅客鉄道株式会社 | 3次元レーザー測定装置 |
JP2018005365A (ja) * | 2016-06-29 | 2018-01-11 | 株式会社ブイ・アール・テクノセンター | 位置検出用ランドマーク及び移動体の位置検出方法 |
JP2018044897A (ja) * | 2016-09-15 | 2018-03-22 | 株式会社五合 | 情報処理装置、カメラ、移動体、移動体システム、情報処理方法およびプログラム |
US11413755B2 (en) | 2017-12-31 | 2022-08-16 | Sarcos Corp. | Covert identification tags viewable by robots and robotic devices |
JP2019121393A (ja) * | 2017-12-31 | 2019-07-22 | サ−コス コーポレイション | ロボット及びロボットデバイスによって見ることができる隠された識別タグ |
CN109255840A (zh) * | 2018-08-22 | 2019-01-22 | 重庆金康特智能穿戴技术研究院有限公司 | 一种利用增强现实模块的离线定位方法 |
CN109255840B (zh) * | 2018-08-22 | 2023-06-23 | 重庆金康特智能穿戴技术研究院有限公司 | 一种利用增强现实模块的离线定位方法 |
CN113226952A (zh) * | 2018-12-27 | 2021-08-06 | 日本电气通信系统株式会社 | 物品位置管理装置、物品位置管理系统、物品位置管理方法和程序 |
JPWO2020138345A1 (ja) * | 2018-12-27 | 2021-11-04 | 日本電気通信システム株式会社 | 物品位置管理装置、物品位置管理システム、物品位置管理方法及びプログラム |
WO2020138345A1 (ja) * | 2018-12-27 | 2020-07-02 | 日本電気通信システム株式会社 | 物品位置管理装置、物品位置管理システム、物品位置管理方法及びプログラム |
JP7529266B2 (ja) | 2018-12-27 | 2024-08-06 | 日本電気通信システム株式会社 | 物品位置管理装置、物品位置管理システム、物品位置管理方法及びプログラム |
US12080027B2 (en) | 2018-12-27 | 2024-09-03 | Nec Communication Systems, Ltd. | Article position managing apparatus, article position management system, article position managing method, and program |
JP2021157537A (ja) * | 2020-03-27 | 2021-10-07 | 日本電気通信システム株式会社 | 二次元マーカの認識装置、方法、プログラム及びシステム |
JP7448281B2 (ja) | 2020-03-27 | 2024-03-12 | 日本電気通信システム株式会社 | 二次元マーカの認識装置、方法、プログラム及びシステム |
CN115797445A (zh) * | 2023-02-06 | 2023-03-14 | 成都智元汇信息技术股份有限公司 | 一种基于图像识别的室内人员定位方法及装置及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2015225014A (ja) | 位置推定装置、位置推定方法、およびプログラム | |
JP7283506B2 (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
US10893219B2 (en) | System and method for acquiring virtual and augmented reality scenes by a user | |
US10674142B2 (en) | Optimized object scanning using sensor fusion | |
JP6687204B2 (ja) | 投影イメージ生成方法およびその装置、イメージピクセルと深度値との間のマッピング方法 | |
CN105138135B (zh) | 头戴式虚拟现实设备及虚拟现实系统 | |
JP5260705B2 (ja) | 3次元拡張現実提供装置 | |
TWI496108B (zh) | AR image processing apparatus and method | |
EP2597597A2 (en) | Apparatus and method for calculating three dimensional (3D) positions of feature points | |
KR20180082170A (ko) | 3차원 얼굴 모델 획득 방법 및 시스템 | |
JP2017505933A (ja) | 実在の物体上に固定された仮想画像を生成する方法及びシステム | |
JP7526169B2 (ja) | クロスリアリティシステム | |
US10380758B2 (en) | Method for tracking subject head position from monocular-source image sequence | |
CN108257177B (zh) | 基于空间标识的定位系统与方法 | |
JP6640294B1 (ja) | 複合現実システム、プログラム、携帯端末装置、及び方法 | |
Paoli et al. | Sensor architectures and technologies for upper limb 3D surface reconstruction: a review | |
RU2018125899A (ru) | Система и способ для отслеживания медицинского устройства | |
JP6770208B2 (ja) | 情報処理装置 | |
US20200211275A1 (en) | Information processing device, information processing method, and recording medium | |
JP6168597B2 (ja) | 情報端末装置 | |
JP6425534B2 (ja) | 画像処理装置及びその制御方法、並びにプログラム | |
KR20180124981A (ko) | 광 흐름 기반 자동 초점 | |
JP2022093774A (ja) | 位置推定装置、位置推定方法、位置推定プログラム | |
JP2024159807A (ja) | 情報処理装置、情報処理方法、及び情報処理プログラム | |
WO2020185115A1 (ru) | Способ и система сбора информации для устройства совмещенной реальности в режиме реального времени |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20160511 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20170227 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20170314 |
|
A02 | Decision of refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A02 Effective date: 20170919 |