(58)【調査した分野】(Int.Cl.,DB名)
【発明の概要】
【発明が解決しようとする課題】
【0004】
一方、ヘッドマウントディスプレイによりユーザに仮想空間を提供する仮想現実(Virtual Reality)システムにおいて、ヘッドマウントディスプレイを装着しているユーザは、一般的に現実空間を視認できないため、例えば、自身の手を動かしたときに、現実空間に配置されているオブジェクトと衝突する可能性がある。従って、オブジェクトの移動も考慮して衝突を事前に警告することができる技術が望まれる。
【0005】
本発明は、上記の課題を解決するためのものであり、衝突する可能性があるオブジェクトを検出してユーザに警告することが可能な警告装置、警告方法、プログラム、ならびに、非一時的なコンピュータ読取可能な情報記録媒体を提供することを目的とする。
【課題を解決するための手段】
【0006】
本発明の第1の観点に係る警告装置は、
ステレオカメラにより、外部の複数のオブジェクトからなるオブジェクト群を撮像した画像群を取得する取得部と、
前記取得された画像群に基づいて、前記複数のオブジェクトが撮像された位置及び視差により、近づきつつあるオブジェクト同士を検出する検出部と、
前記検出されたオブジェクト同士の近さの度合を表す近づき度に応じた警告を出力する出力部と、
を備えることを特徴とする。
【0007】
上記の観点に係る警告装置において、
前記検出部は、
前記複数のオブジェクトが撮像された位置および視差により、相対的な位置関係を維持している維持オブジェクト群を抽出し、
前記取得された画像群において、前記抽出された維持オブジェクト群に含まれない前方オブジェクトに隠される後方オブジェクトが、前記抽出された維持オブジェクト群に含まれる場合、前記相対的な位置関係により、前記後方オブジェクトと、前記前方オブジェクトと、が近づきつつあるか否かを判定してもよい。
【0008】
上記の観点に係る警告装置において、
前記取得部は、前記ステレオカメラにより所定時間毎に撮像されたステレオ画像を含む前記画像群を取得し、
前記検出部は、
前記取得された画像群に含まれる前記ステレオ画像のそれぞれについて、前記ステレオ画像内における前記複数のオブジェクト間の距離と、前記複数のオブジェクトのそれぞれの視差と、を算出し、
前記算出した距離及び視差の時間変化に基づいて、近づきつつあるオブジェクト同士を検出してもよい。
【0009】
上記の観点に係る警告装置において、
前記出力部は、前記検出されたオブジェクト同士の輪郭を表す警告オブジェクトを表示部に出力してもよい。
【0010】
本発明の第2の観点に係る警告方法は、
警告装置が実行する警告方法であって、
ステレオカメラにより、外部の複数のオブジェクトからなるオブジェクト群を撮像した画像群を取得する取得ステップと、
前記取得された画像群に基づいて、前記複数のオブジェクトが撮像された位置及び視差により、近づきつつあるオブジェクト同士を検出する検出ステップと、
前記検出されたオブジェクト同士の近さの度合を表す近づき度に応じた警告を出力する出力ステップと、
を備えることを特徴とする。
【0011】
本発明の第3の観点に係るプログラムは、
コンピュータを、
ステレオカメラにより、外部の複数のオブジェクトからなるオブジェクト群を撮像した画像群を取得する取得部、
前記取得された画像群に基づいて、前記複数のオブジェクトが撮像された位置及び視差により、近づきつつあるオブジェクト同士を検出する検出部、
前記検出されたオブジェクト同士の近さの度合を表す近づき度に応じた警告を出力する出力部、
として機能させることを特徴とする。
【0012】
本発明の第4の観点に係る非一時的なコンピュータ読取可能な情報記録媒体は、
コンピュータを、
ステレオカメラにより、外部の複数のオブジェクトからなるオブジェクト群を撮像した画像群を取得する取得部、
前記取得された画像群に基づいて、前記複数のオブジェクトが撮像された位置及び視差により、近づきつつあるオブジェクト同士を検出する検出部、
前記検出されたオブジェクト同士の近さの度合を表す近づき度に応じた警告を出力する出力部、
として機能させることを特徴とする。
【0013】
なお、上記情報記録媒体は、コンピュータとは独立して配布・販売することができる。ここで、非一時的な(non-transitory)情報記録媒体とは、有形な(tangible)情報記録媒体をいう。非一時的な情報記録媒体は、例えば、コンパクトディスク、フレキシブルディスク、ハードディスク、磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリである。また、一時的な(transitory)情報記録媒体とは、伝送媒体(伝搬信号)それ自体を示す。一時的な記録媒体は、例えば、電気信号、光信号、電磁波である。なお、一時的な(temporary)記憶領域とは、データやプログラムを一時的に記憶するための領域であり、例えばRAM(Random Access Memory)といった揮発性メモリである。
【発明の効果】
【0014】
本発明によれば、衝突する可能性があるオブジェクトを検出してユーザに警告することができる。
【発明を実施するための形態】
【0016】
以下に本発明の実施形態を説明する。なお、本実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。従って、当業者であればこれらの各要素若しくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。また、本願発明の実施形態を図面を参照して説明するにあたり、図中同一又は相当する部分には同一符号を付す。
【0017】
図1は、本実施形態に係る警告装置100のハードウェア構成を示す概略ブロック図である。警告装置100は、例えば、各種のセンサや制御装置を備えたヘッドマウントディスプレイにより構成される。スマートフォンやタブレットコンピュータ、ファブレット等をアタッチメントに装着することにより、ヘッドマウントディスプレイが構築されてもよい。この場合には、スマートフォン等のコンピュータを上記各部として機能させるためのプログラムを、当該スマートフォン等にて実行させることにより、警告装置100が実現される。
図1に示すように、警告装置100は、制御部101と、ROM(Read Only Memory)102と、RAM103と、ディスプレイ104と、センサ部105と、操作部106と、ステレオカメラ107とから構成され、各部は、バス108により接続されている。
【0018】
制御部101は、例えばCPU(Central Processing Unit)から構成され、警告装置100全体を制御する。
【0019】
ROM102は、制御部101が警告装置100全体を制御するためのプログラムや各種データを格納する不揮発性メモリである。
【0020】
RAM103は、制御部101が生成した情報や、その情報の生成に必要なデータを一時的に格納するための揮発性メモリである。
【0021】
ディスプレイ104は、LCD(Liquid Crystal Display)およびバックライト等を備え、制御部101による制御の下、例えば、制御部101から出力された画像を表示する。
【0022】
センサ部105は、姿勢センサや加速度センサを備え、警告装置100の向きを検知する。センサ部105は、検知した警告装置100の向きを表す信号を制御部101に出力する。
【0023】
操作部106は、ボタン、キーボード、タッチパネル等の入力装置から構成される。操作部106は、警告装置100のユーザからの操作入力を受け付け、受け付けた操作入力に対応する信号を制御部101に出力する。
【0024】
ステレオカメラ107は、レンズと、CCD(Charge Coupled Device)イメージセンサやCMOS(Complementary Metal Oxide Semiconductor)イメージセンサといった撮像素子とを含む2つのカメラから構成される。本実施形態において、
図2に示すように、ステレオカメラ107は、警告装置100の前面のユーザ300から見て右側の端部に設けられる右側カメラ107aと、ユーザから見て左側の端部に設けられる左側カメラ107bとを有する。ステレオカメラ107は、後述するオブジェクト群400を撮像する。
【0025】
次に、本実施形態における警告装置100、ユーザ300、及びオブジェクト群400の現実空間における位置関係について説明する。
図3は、現実空間200における警告装置100、ユーザ300、及びオブジェクト群400の様子を示す上面図である。
図3に示すように、現実空間200において、ユーザ300の前方に、オブジェクト401〜405からなるオブジェクト群400が位置している。オブジェクト401〜405は、警告装置100の外部に位置するオブジェクトであって、警告装置100の移動とは無関係に移動可能なものである。本実施形態において、オブジェクト401〜405は、それぞれ、ユーザ300の右手、ユーザ300の左手、カップ、缶、絵画である。なお、オブジェクト401,402は、ユーザの意図に従って移動可能であり、オブジェクト403〜405は、静止しているものとする。なお、本実施形態に係るオブジェクト401〜405は、本発明に係る複数のオブジェクトの一例であり、これに限定されない。後述するように、ステレオカメラ107により撮像された画像から認識可能であれば、本発明に係る複数のオブジェクトとして任意のオブジェクトを適用することができる。
【0026】
図4は、本発明の実施形態に係る警告装置100の機能構成を示す概略ブロック図である。
図4に示すように、警告装置100は、取得部111と、検出部112と、出力部113と、を備える。これらの機能は、制御部101がROM102に記録されたプログラムを実行することにより、警告装置100の各部と協働して実現される。
【0027】
取得部111は、ステレオカメラ107により、オブジェクト群400を撮像した画像群を取得する。ここで、画像群は、ステレオカメラ107が所定時間毎に撮像した画像のグループである。例えば、取得部111は、時刻t=t1においてステレオカメラ107の右側カメラ107aが撮像した右側画像と、左側カメラ107bが撮像した左側画像と、を時刻t=t
1における1組のステレオ画像として取得する。また、取得部111は、時刻t=t
1から所定時間Δt経過後の時刻t=t
2において右側カメラ107aが撮像した右側画像と、左側カメラ107bが撮像した左側画像と、を時刻t=t
2における1組のステレオ画像として取得する。このようにして、取得部111は、所定時間Δt毎にステレオカメラ107により撮像されたステレオ画像のグループを、画像群として取得する。
【0028】
本実施形態において、制御部101とステレオカメラ107が協働することにより、取得部111として機能する。
【0029】
検出部112は、取得部111により取得された画像群により、複数のオブジェクト401〜405が撮像された位置および視差により、近づきつつあるオブジェクト同士を検出する。
【0030】
以下、近づきつつあるオブジェクト同士の検出方法の一例を説明する。まず、検出部112は、取得部111により取得された画像群のうち、ある時刻t=t
1に取得されたステレオ画像から、ステレオ画像内におけるオブジェクト401〜405の位置を特定する。具体的には、検出部112は、予めROM102に記録された、オブジェクト401〜405の形状や模様、色彩等のパターンと、ステレオ画像とを比較し、画像認識により、オブジェクト401〜405の位置を特定する。ステレオ画像内におけるオブジェクト401〜405の位置として、例えば、ステレオ画像内におけるオブジェクト401〜405の中心点といったオブジェクト401〜405の代表点の位置を適用することができる。次に、検出部112は、特定されたステレオ画像内におけるオブジェクト401〜405の位置に基づいて、ステレオ画像内における各オブジェクト401〜405間の距離を算出する。また、検出部112は、ステレオ画像に含まれる右側画像及び左側画像に基づいて、オブジェクト401〜405それぞれの視差を算出する。ここで、視差は、右側画像におけるオブジェクト401〜404の位置と、左側画像におけるオブジェクト401〜404の位置と、の差(距離)を示す。
【0031】
例えば、取得部111は、
図5Aに示す時刻t=t
1における右側画像501Rと、
図5Bに示す時刻t=t
1における左側画像501Lと、を取得したとする。このとき検出部112は、右側画像501Rにおけるオブジェクト401〜405の位置PR11〜PR15と、左側画像501Lにおけるオブジェクト401〜405の位置PL11〜PL15を特定する。そして、検出部112は、位置PR11〜PR15に基づいて、右側画像501Rにおける各オブジェクト401〜405間の距離を算出する。また、検出部112は、位置PL11〜PL15に基づいて、左側画像501Lにおける各オブジェクト401〜405間の距離を算出する。また、検出部112は、各オブジェクト401〜405について、右側画像501Rの位置PR11〜PR15と、左側画像501Lの位置PL11〜PL15と、の差から、各オブジェクト401〜405の視差を算出する。
【0032】
検出部112は、取得部111により所定時間毎に取得されるステレオ画像のそれぞれについて、上述したように、右側画像における各オブジェクト401〜405間の距離と、左側画像における各オブジェクト401〜405間の距離と、各オブジェクト401〜405の視差と、を算出する。そして、検出部112は、右側画像における各オブジェクト401〜405間の距離と、左側画像における各オブジェクト401〜405間の距離と、各オブジェクト401〜405の視差と、のそれぞれの時間変化に基づいて、以下の条件(1)〜(3)を満たすオブジェクトA及びオブジェクトBを近づきつつあるオブジェクト同士として検出する。
(1)右側画像におけるオブジェクトAとオブジェクトBとの間の距離が短くなっている。
(2)左側画像におけるオブジェクトAとオブジェクトBとの間の距離が短くなっている。
(3)オブジェクトAの視差と、オブジェクトBの視差との差が小さくなっている。
すなわち、検出部112は、条件(1)及び(2)により、ステレオカメラ107による撮影方向(ユーザの前方)と直交する面内においてオブジェクト401〜405が近づきつつあるか否かを判定する。また、検出部112は、条件(3)により、ステレオカメラ107による撮影方向において、オブジェクト401〜405が近づきつつあるか否かを判定する。従って、検出部112は、オブジェクト401〜405のうち、2つのオブジェクトが条件(1)〜(3)を満たすとき、その2つのオブジェクトを、現実空間200において近づきつつあるオブジェクト同士として検出する。
【0033】
例えば、時刻t=t
1において
図3に示す位置にあったオブジェクト401が、右に移動し、時刻t=t
2において
図6に示す位置に移動したとする。そして、取得部111は、時刻t=t
1から所定時間Δt経過後の時刻t=t
2において
図7Aに示す右側画像502Rと、
図7Bに示す左側画像502Lと、を含むステレオ画像を取得したとする。そして、検出部112は、
図7Aに示すように右側画像502Rにおける各オブジェクト401〜405の位置PR21〜PR25と、
図7Bに示すように左側画像502Lにおける各オブジェクト401〜405の位置PL21〜PL25と、を特定する。また、検出部112は、位置PR21〜PR25に基づいて、右側画像502Rにおける各オブジェクト401〜405間の距離を算出し、位置PL21〜PL25に基づいて、左側画像502Lにおける各オブジェクト401〜405間の距離を算出する。また、検出部112は、各オブジェクト401〜405について、右側画像502Rの位置PR21〜PR25と、左側画像502Lの位置PL21〜PL25と、の差から、各オブジェクト401〜405の視差を算出する。そして、検出部112は、t=t
2における右側画像502R内のオブジェクト401とオブジェクト403との間の距離(
図7Aの位置PR21と位置PR23の間の距離)が、t=t
1における右側画像501R内のオブジェクト401とオブジェクト403との間の距離(
図5Aの位置PR11と位置PR13の間の距離)よりも短いと判定し、オブジェクト401,403が条件(1)を満たすと判定する。また、検出部112は、t=t
2における左側画像502L内のオブジェクト401とオブジェクト403との間の距離(
図7Bの位置PL21と位置PL23の間の距離)が、t=t
1における左側画像501L内のオブジェクト401とオブジェクト403との間の距離(
図5Bの位置PL11と位置PL13の間の距離)よりも短いと判定し、オブジェクト401,403が条件(2)を満たすと判定する。また、検出部112は、t=t
2におけるオブジェクト401の視差(
図7Aの位置PR21と
図7Bの位置PL21の間の距離)と、オブジェクト403の視差(
図7Aの位置PR23と
図7Bの位置PL23の間の距離)と、の差が、t=t
1におけるオブジェクト401の視差(
図5Aの位置PR11と
図5Bの位置PL11の間の距離)と、オブジェクト403の視差(
図5Aの位置PR13と
図5Bの位置PL13の間の距離)と、の差よりも小さいと判定し、オブジェクト401,403が条件(3)を満たすと判定する。そして、検出部112は、オブジェクト401,403が条件(1)〜(3)を満たすため、オブジェクト401,403を、現実空間200において近づきつつあるオブジェクト同士として検出する。
【0034】
本実施形態において、制御部101が、検出部112として機能する。
【0035】
出力部113は、検出部112により検出されたオブジェクト同士の近づき度に応じた警告を出力する。ここで、近づき度は、オブジェクト同士の近さの度合を表す。
【0036】
以下、検出部112により検出されたオブジェクト同士の近づき度の算出方法の一例を説明する。例えば、出力部113は、検出部112により検出されたオブジェクト間の右側画像における距離DR、検出部112により検出されたオブジェクト間の左側画像における距離DL、及び検出部112により検出されたオブジェクトの視差の差Xを用いて、近づき度Aは以下の式により算出することができる。
A=1/(αDR
2+βDL
2+γX
2)(α、β、γは任意の正の係数)
【0037】
そして、出力部113は、算出した近づき度が所定の閾値よりも大きいとき、検出部112により検出されたオブジェクト同士が衝突する可能性があると判定し、警告をディスプレイ104に出力する。
【0038】
以下、出力部113による警告の出力例を説明する。
図8Aに出力部113が時刻t=t
1においてディスプレイ104に表示する画像の一例を示す。本実施形態において、出力部113は、センサ部105により検知された警告装置100の向きや操作部106により受け付けられたユーザ300からの入力に応じて、仮想空間における観察位置、観察方向を変化させ、その観察位置から観察方向を見た仮想空間の様子を表す画像を生成し、ディスプレイ104に出力する。時刻t=t1において、検出部112は、オブジェクト401〜405は条件(1)〜(3)を満たしていないと判定し、出力部113は、警告を含まない仮想空間の様子を表す画像601をディスプレイ104に表示する。
【0039】
図8Bに出力部113が時刻t=t
2においてディスプレイ104に表示する画像の一例を示す。時刻t=t
2において、検出部112が、オブジェクト401,403が条件(1)〜(3)を満たすと判定し、出力部113が、オブジェクト401,403の近づき度が所定の閾値よりも大きいと判定すると、
図8Bに示すように、オブジェクト401またはオブジェクト403に対応する位置に警告オブジェクト610を含む、仮想空間の様子を表す画像602をディスプレイ104に表示する。警告オブジェクト610は、ユーザ300にオブジェクト401,403が衝突する可能性があることを警告するオブジェクトである。
図8Bに示す例では、警告オブジェクト610は、「警告」、「手がカップに衝突するおそれがあります。」というメッセージを含む。出力部113は、オブジェクト401,403の近づき度が所定の閾値以下になるまで、警告オブジェクト610を表示し続ける。
【0040】
本実施形態において、制御部101及びディスプレイ104が協働して、出力部113として機能する。
【0041】
次に、本発明の実施形態に係る警告装置100の動作について説明する。
図9は、警告装置100の制御部101により実行される警告処理の流れを表すフローチャートである。本処理は、例えば、操作部106を介して本処理の開始指示を受け付けたことを契機として開始する。
【0042】
まず、警告装置100は、仮想空間内において、観察位置及び観察方向を予め定められた初期状態に設定する(ステップS101)。
【0043】
次に、警告装置100は、仮想空間を初期化する(ステップS102)。この初期化の際には、警告装置100は、例えば、仮想空間内に配置されるオブジェクトの位置、形状、向き、外観を取得、設定したり、仮想空間の無限遠方に配置されると想定される背景の画像等を取得、設定する。
【0044】
次に、警告装置100は、ステレオカメラ107から、ステレオ画像を取得する(ステップS103)。
【0045】
警告装置100は、ステップS103において取得したステレオ画像に含まれる右側画像に基づいて、右側画像における各オブジェクト401〜405の位置を特定する(ステップS104)。
【0046】
次に、警告装置100は、ステップS104において特定した右側画像における各オブジェクト401〜405の位置に基づいて、右側画像における各オブジェクト間の距離を算出する(ステップS105)。
【0047】
また警告装置100は、ステップS103において取得したステレオ画像に含まれる左側画像に基づいて、左側画像における各オブジェクト401〜405の位置を特定する(ステップS106)。
【0048】
次に、警告装置100は、ステップS106において特定した左側画像における各オブジェクト401〜405の位置に基づいて、左側画像における各オブジェクト間の距離を算出する(ステップS107)。
【0049】
そして、警告装置100は、ステップS103において取得したステレオ画像に基づいて、各オブジェクトの視差を算出する(ステップS108)。
【0050】
そして、警告装置100は、ステップS108において算出した各オブジェクトの視差に基づいて、各オブジェクト間の視差の差を算出する(ステップS109)。
【0051】
そして、警告装置100は、算出した右側画像における各オブジェクト間の距離、左側画像における各オブジェクト間の距離、及び各オブジェクト間の視差の差と、前回算出した右側画像における各オブジェクト間の距離、左側画像における各オブジェクト間の距離、及び各オブジェクト間の視差の差と、を比較し、条件(1)〜(3)を満たすオブジェクト同士が存在するか、すなわち、近づきつつあるオブジェクト同士が存在するか否かを判定する(ステップS110)。
【0052】
そして、警告装置100は、近づきつつあるオブジェクト同士が存在すると判定したとき(ステップS110;Yes)、近づき度を算出し、近づき度が所定の閾値よりも大きいか否かを判定する(ステップS111)。
【0053】
警告装置100は、近づきつつあるオブジェクト同士が存在しないと判定したとき(ステップS110;No)、または、近づき度が所定の閾値以下であると判定したとき(ステップS111;No)、現在の観察位置から観察方向に仮想空間を観察した様子を表す画像を生成する(ステップS112)。そして、警告装置100は、ステップS114に処理を進める。
【0054】
警告装置100は、近づき度が所定の閾値よりも大きいと判定したとき(ステップS111;Yes)、近づきつつあるオブジェクト同士が存在する位置と対応する位置に警告オブジェクトを含む、現在の観察位置から観察方向に仮想空間を観察した様子を表す画像を生成する(ステップS113)。
【0055】
この後、警告装置100は、ディスプレイ104の垂直同期割込が生じるまで待機してから(ステップS114)、生成された画像をディスプレイ104に転送して表示する(ステップS115)。
【0056】
そして、警告装置100は、仮想空間の状態を更新する(ステップS116)。例えば、仮想空間が時間の経過に応じて変化するコンピュータグラフィックスにより構成される場合には、仮想空間内のオブジェクトの位置や向きを、当該オブジェクトに設定された速度、加速度、角速度、角加速度等により更新する物理シミュレーションを行ったり、予め定められた条件に基づいてオブジェクトを変形させる。
【0057】
そして、警告装置100は、ステップS103の処理に戻る。警告装置100は、例えば操作部106を介して本処理の終了指示を受け付けるまで、繰り返し上記の処理を実行する。なおステップS114において待機することから、この処理の繰り返し周期は、垂直同期周期となる。
【0058】
以上説明したように、本発明の実施形態に係る警告装置100は、ステレオカメラ107によりオブジェクト群400を撮像した画像群に基づいて、複数のオブジェクト401〜405が撮像された位置及び視差により、近づきつつあるオブジェクト同士を検出する。そして、警告装置100は、検出されたオブジェクト同士の近づき度に応じた警告を出力する。そのため、警告装置100は、衝突する可能性があるオブジェクトを検出してユーザに警告することができる。
【0059】
また、本発明の実施形態に係る警告装置100は、ステレオカメラ107により撮像された画像群に基づいて、右側画像における各オブジェクト401〜405間の距離、左側画像における各オブジェクト401〜405間の距離、及びオブジェクト401〜405間の視差の差を、時系列で比較し、オブジェクト同士が近づきつつあるか否かを判定する。そのため、ステレオカメラ107により撮像された画像から、3次元画像を生成して各オブジェクト401〜405の現実空間における位置や姿勢を特定することにより、衝突するか否かを判定する場合よりも、高速に処理することができる。
【0060】
以上に本発明の実施形態について説明したが、上記実施形態は一例であり、本発明の適用範囲はこれに限られない。即ち、本発明の実施形態は種々の応用が可能であり、あらゆる実施の形態が本発明の範囲に含まれる。
【0061】
例えば、上記の実施形態では、警告装置100が、近づきつつある全てのオブジェクト同士について、近づき度に応じて警告を出力する例について説明した。しかし、警告装置100は、近づきつつある全てのオブジェクト同士について警告を出力しなくてもよい。例えば、ユーザ300の右手と左手が近づいている場合は、衝突しても危険はないため、警告装置100は警告しなくてもよい。以下、変形例として、警告が不要なオブジェクト以外のオブジェクトについて近づきつつあるか否かを判定する方法の一例について説明する。
【0062】
まず、検出部112は、上記実施形態と同様にステレオカメラ107により撮像された画像群に基づいて、複数のオブジェクト401〜405が撮像された位置および視差により、相対的な位置関係を維持している維持オブジェクト群を抽出する。
【0063】
例えば、検出部112は、上記実施形態と同様に、ステレオ画像内におけるオブジェクト401〜405の位置を特定する。また、検出部112は、ステレオ画像に含まれる右側画像及び左側画像に基づいて、オブジェクト401〜405それぞれの視差を算出する。そして、検出部112は、各オブジェクト401〜405について、直近の所定期間において視差が最も小さいオブジェクト405を、相対的な位置関係を規定するための基準となるオブジェクトとして特定する。すなわち、
図3及び
図6に示すように、オブジェクト405は、オブジェクト401〜405のうちで、警告装置100から最も遠いため、他のオブジェクト401〜405よりも視差が小さい。従って、オブジェクト405を基準とする各オブジェクト401〜404の位置を、各オブジェクト401〜405の相対的な位置関係として特定することができる。
【0064】
そして、検出部112は、各オブジェクト401〜405について、直近の所定期間において相対的な位置関係の時間変化が所定の閾値よりも小さいオブジェクトを、維持オブジェクト群に含まれるオブジェクトの1つとして抽出する。例えば、直近の所定期間において、
図6に示すように、オブジェクト401が移動した場合、オブジェクト402〜405は、静止状態であり、相対的な位置関係の時間変化が所定の閾値よりも小さいと判定され、維持オブジェクト群に含まれる。一方、オブジェクト401は、移動したため、相対的な位置関係の時間変化が所定の閾値よりも大きいと判定され、維持オブジェクト群に含まれない。
【0065】
そして、検出部112は、取得された画像群において、抽出された維持オブジェクト群に含まれない前方オブジェクトに隠される後方オブジェクトが、抽出された維持オブジェクト群に含まれる場合、相対的な位置関係により、後方オブジェクトと前方オブジェクトと、が近づきつつあるか否かを判定する。
【0066】
例えば、検出部112は、直近の所定期間の画像群において、抽出された維持オブジェクト群に含まれないオブジェクト401が、維持オブジェクト群に含まれるオブジェクト402〜405のいずれかを隠しているか否かを判定する。あるオブジェクトが、他のオブジェクトを隠しているか否かは、例えば、予めROM102に記録された各オブジェクト401〜405のパターンと画像群とを比較し、あるオブジェクトと他のオブジェクトの画像内における位置が所定の基準で近く、かつ他のオブジェクトが表れる画像内の領域がパターンと比較して一部欠けている場合、あるオブジェクトが他のオブジェクトを隠していると判定することができる。検出部112は、オブジェクト401がオブジェクト403を隠していると判定すると、オブジェクト401とオブジェクト403とが近づきつつあるか否かを、上記の実施形態と同様に条件(1)〜(3)を満たすか否かに基づいて判定する。
【0067】
また、例えば、時刻t=t
3において、
図10に示すように、オブジェクト401,402が移動し、
図11A,11Bに示すような右側画像503R及び左側画像503Lを含むステレオ画像が取得されたとする。このとき、検出部112は、
図11Aに示すように右側画像503Rにおける各オブジェクト401〜405の位置PR31〜PR35と、
図11Bに示すように左側画像503Lにおける各オブジェクト401〜405の位置PL31〜PL35と、を特定する。この場合、時刻t=t
3を含む直近の所定期間において、オブジェクト403〜405は、静止状態であり、相対的な位置関係の時間変化が所定の閾値よりも小さいと判定され、維持オブジェクト群に含まれる。一方、オブジェクト401,402は、移動したため、相対的な位置関係の時間変化が所定の閾値よりも大きいと判定され、維持オブジェクト群に含まれない。従って、オブジェクト401がオブジェクト402を隠す場合、またはオブジェクト402がオブジェクト401を隠す場合であっても、オブジェクト401,402は維持オブジェクトに含まれないため、近づきつつあるか否かを判定する対象にはならない。そのため、オブジェクト401,402が近づいても、警告は出力されない。
【0068】
また、上記の実施形態では、出力部113は、検出部112により検出されたオブジェクト間の右側画像における距離、検出部112により検出されたオブジェクト間の左側画像における距離、及び検出部112により検出されたオブジェクトの視差の差を用いて、近づき度を算出する例について説明した。しかし、近づき度の算出方法は、これに限られない。例えば、出力部113は、直近の所定期間の画像群に基づいて、検出部112により検出されたオブジェクト間の右側画像における距離が短くなる速さ、検出部112により検出されたオブジェクト間の左側画像における距離が短くなる早さ、検出部112により検出されたオブジェクトの視差の差が小さくなる速さを算出し、これらに基づいて、近づき度を算出してもよい。また、これらの早さと、上記実施形態の距離及び視差の差と、の両方に基づいて近づき度を算出してもよい。
【0069】
また、上記の実施形態では、出力部113は、算出した近づき度が所定の閾値よりも大きいとき、検出部112により検出されたオブジェクト同士が衝突する可能性があると判定し、警告をディスプレイ104に出力する例について説明した。しかし、出力部113による近づき度に応じた警告の態様はこれに限られない。例えば、出力部113は、近づき度が大きいほど、警告オブジェクトを強調するように表示してもよい。また、
図12に示すように、近づきつつあるオブジェクト同士の輪郭を表す警告オブジェクト611を、仮想空間の様子を表す画像と重ねて出力してもよい。検出部112は、例えば、取得部111により取得されたステレオ画像から予め記憶された肌色の領域と、カップの色の領域とを抽出し、それらの領域に対応するオブジェクトを近づきつつあるオブジェクト同士として検出する。そして、出力部113は、肌色の領域と、カップの色の領域との輪郭をそれぞれ抽出し、抽出した輪郭を仮想空間にマッチした色や、破線などに加工して警告オブジェクトとしてディスプレイ104に出力する。これにより、警告装置100は、ユーザの仮想空間への没入感を損なうことなく、現実空間におけるオブジェクトの衝突を警告することができる。そして、ユーザは、警告装置100としてのヘッドマウントディスプレイを装着したまま、現実空間におけるオブジェクトの衝突を認識することができる。
【0070】
また、出力部113が警告オブジェクトを表示する位置は、近づきつつあるオブジェクト同士の位置に対応する位置に限られず、例えば、ディスプレイ104の中央付近に警告オブジェクトを表示してもよい。また、出力部113は、ディスプレイ104への警告オブジェクトの表示に限られず、警告音を図示しないスピーカーに出力することにより、警告を出力してもよい。
【0071】
なお、本発明に係る機能を実現するための構成を予め備えた警告装置100として提供できることはもとより、プログラムの適用により、既存のパーソナルコンピュータや情報端末機器等を、本発明に係る警告装置100として機能させることもできる。即ち、上記実施形態で例示した警告装置100による各機能構成を実現させるためのプログラムを、既存のパーソナルコンピュータや情報端末機器を制御するCPU等が実行できるように、既存のパーソナルコンピュータや情報端末機器に適用することで、そのパーソナルコンピュータや情報端末機器を本発明に係る警告装置100として機能させることができる。また、本発明に係る表示方法は、警告装置100を用いて実施できる。
【0072】
また、このようなプログラムは、上記に限られず、任意の方法で適用可能である。プログラムを、例えば、コンピュータが読取可能な記録媒体[CD−ROM(Compact Disc Read-Only Memory)、DVD(Digital Versatile Disc)、MO(Magneto Optical disc)等]に格納して適用できる他、インターネット等のネットワーク上のストレージにプログラムを格納しておき、これをダウンロードさせることにより適用することもできる。
【0073】
なお、本発明は、本発明の広義の精神と範囲を逸脱することなく、様々な実施の形態及び変形が可能とされるものである。また、上述した実施の形態は、この発明を説明するためのものであり、本発明の範囲を限定するものではない。即ち、本発明の範囲は、実施の形態ではなく、特許請求の範囲によって示される。そして、特許請求の範囲内及びそれと同等の発明の意義の範囲内で施される様々な変形が、この発明の範囲内とみなされる。
警告装置(100)は、取得部(111)と、検出部(112)と、出力部(113)とを備える。取得部(111)は、ステレオカメラにより、外部の複数のオブジェクトからなるオブジェクト群を撮像した画像群を取得する。検出部(112)は、取得された画像群に基づいて、複数のオブジェクトが撮像された位置及び視差により、近づきつつあるオブジェクト同士を検出する。出力部(113)は、検出されたオブジェクト同士の近さの度合を表す近づき度に応じた警告を出力する。