以下において、本開示の例示的な実施の形態を、図面を参照しつつ説明する。なお、以下で説明する例示的な実施の形態は、いずれも包括的又は具体的な例を示すものである。また、以下の例示的な実施の形態における構成要素のうち、最上位概念を示す独立請求項に記載されていない構成要素については、任意の構成要素として説明される。また、添付の図面における各図は、模式的な図であり、必ずしも厳密に図示されたものでない。さらに、各図において、実質的に同一の構成要素に対しては同一の符号を付しており、重複する説明は省略又は簡略化される場合がある。また、本明細書及び請求の範囲では、「装置」とは、1つの装置を意味し得るだけでなく、複数の装置からなるシステムも意味し得る。
[ロボットシステムの構成]
例示的な実施の形態に係るロボットシステム1の構成を説明する。図1は、例示的な実施の形態に係るロボットシステム1の構成の一例を示す斜視図である。図1に示すように、ロボットシステム1は、撮像システム100と、ロボット200と、ロボット操作装置300と、ロボット制御装置400とを備える。撮像システム100は、撮像装置110と、移動装置120と、動き検出装置130と、表示装置140と、撮像制御装置150と、撮像入力装置160とを備える。移動装置120は変動装置の一例である。
以下に限定されないが、本例示的な実施の形態では、ロボット200は、産業用ロボットであり、ロボットアーム210と基部220とエンドエフェクタ230とを備える。なお、ロボット200は、サービス用ロボット、医療用ロボット、創薬用ロボット及びヒューマノイドのように他のタイプのロボットであってもよい。サービス用ロボットは、介護、医療、清掃、警備、案内、救助、調理、商品提供等の様々なサービス業で使用されるロボットである。
基部220は、支持面上に固定され、ロボットアーム210を支持する。基部220の支持面は、床面等の不動な面であってもよく、走行装置等の移動可能な装置上の移動可能な面であってもよい。ロボットアーム210は、少なくとも1つの関節を有し、少なくとも1つの自由度を有する。ロボットアーム210は、ロボットアーム210の先端にエンドエフェクタ230が取り付けられるように構成される。ロボットアーム210は、エンドエフェクタ230の位置及び姿勢を自在に変動させるようにエンドエフェクタ230を動かすことができる。エンドエフェクタ230は、エンドエフェクタ230の用途に応じて把持、吸着、塗料などの液体の吹き付け、溶接、及び、シール剤などの注入等の様々な作用を対象物(「ワーク」とも呼ぶ)Wに加えることができるように構成される。
なお、本例示的な実施の形態では、ロボットアーム210は、6つの回転関節を有する6自由度の垂直多関節型のロボットアームであるが、これに限定されない。ロボットアーム210の形式は、いかなる型式であってもよく、例えば、水平多関節型、極座標型、円筒座標型又は直角座標型等であってもよい。ロボットアーム210の関節も、直動関節等のいかなる関節であってもよい。ロボットアーム210の関節の数量も、5つ以下又は7つ以上等のいかなる数量であってもよい。
ロボット操作装置300は、ロボット200から離れた位置に配置され、ロボット200を遠隔操作するために用いられる。ロボット操作装置300は、ロボット操作装置300を扱うユーザPがロボット200を直接視認できるような位置に配置されてもよく、ユーザPがロボット200を直接視認できないような位置に配置されてもよい。例えば、ロボット操作装置300は、ロボット200が配置される空間から隔離された空間、又は当該空間から離れた位置の空間に配置されてもよい。
ロボット操作装置300は、種々の指令、情報及びデータ等の入力を受け付け、ロボット制御装置400に出力する。例えば、ロボット操作装置300は、ユーザPによる入力を受け付けることができる。例えば、ロボット操作装置300は、他の機器と接続され、当該機器からの入力を受け付けることができる。例えば、ロボット操作装置300は、レバー、ボタン、タッチパネル、ジョイスティック、モーションキャプチャ、カメラ及びマイク等の公知の入力手段を備えてもよい。例えば、ロボット操作装置300は、教示装置の1つであるティーチングペンダント、スマートフォン及びタブレットなどのスマートデバイス、パーソナルコンピュータ、並びに専用端末装置等の端末装置を備えてもよい。例えば、ロボット200がマスター・スレーブ方式で制御される場合、ロボット操作装置300はマスター機を備えてもよい。例えば、マスター機は、ロボットアーム210と同様又は類似する動作を行うことができるように構成されてもよい。
ロボット制御装置400は、ロボット200の動作を制御する。ロボット制御装置400は、ロボット200及びロボット操作装置300と有線通信又は無線通信を介して接続される。なお、いかなる有線通信及び無線通信が用いられてもよい。ロボット制御装置400は、ロボット操作装置300を介して入力される指令、情報及びデータ等を処理する。ロボット制御装置400は、外部の機器と接続され、当該機器から指令、情報及びデータ等の入力を受け付け処理するように構成されてもよい。
例えば、ロボット制御装置400は、上記指令、情報及びデータ等に従って、ロボット200の動作を制御する。ロボット制御装置400は、ロボット200への動力等の供給を制御する。ロボット制御装置400は、ロボット200を管理するための情報等を管理する。
また、ロボット制御装置400は、種々の指令、情報及びデータ等をロボット操作装置300及び/又は撮像システム100の表示装置140に出力する。例えば、ロボット制御装置400は、種々の指令、情報及びデータ等を表示装置140に視覚的及び/又は聴覚的に提示させる。例えば、ロボット制御装置400は、ロボット200を操作するための画像、ロボット200の状態を示す画像、並びに、ロボット200を管理するための画像等を出力してもよい。
ロボット制御装置400は、コンピュータを備える。さらに、ロボット制御装置400は、ロボット200に供給する電力を制御するための電気回路、ロボット200に供給する空気圧及び液圧等の電力以外の動力を制御するための機器、並びに、ロボット200に供給する冷却水及び塗料等の物質を制御するための機器等を備えてもよい。コンピュータ以外の機器は、ロボット制御装置400と別個に設けられてもよい。
撮像システム100の撮像装置110は、デジタル画像の静止画及び/又は動画を撮像するカメラを含む。当該カメラは、画像内の被写体の位置情報を含む3次元画像を撮像できる3次元カメラであってもよい。
移動装置120は、撮像装置110を搭載し、撮像装置110の位置及び向きを自在に変えることができるように構成される。以下に限定されないが、撮像装置110の位置は、3次元空間内での撮像装置110の3次元の位置であってもよく、撮像装置110の向きは、撮像装置110のカメラの光軸中心の向きであってもよく、具体的には、3次元空間内での光軸中心の3次元の方向であってもよい。例えば、撮像装置110の向きは、撮像装置110の姿勢に対応し得る。移動装置120は特に限定されないが、本例示的な実施の形態では、ロボットアーム210と同様のロボットアームであり、支持面上に固定される。本例示的な実施の形態では、支持面は天井面であり、ロボットアーム210は天井面から吊り下げられるが、支持面の位置及び向きは限定されない。撮像装置110は、当該ロボットアームの先端に取り付けられる。なお、移動装置120は、例えば、床面等の支持面上を走行可能な走行装置、軌道上を走行可能な軌道走行装置、軌道上を移動可能なクレーン、アームを備えるクレーン、ロボットアーム以外の多関節アーム、及びドローンなどの無人飛行体等の他の装置であってもよい。例えば、軌道走行装置の軌道は、鉛直方向、水平方向及びこれらに交差する方向に延びるように配置されてもよい。これにより、軌道走行装置は様々な方向及び位置に走行可能である。例えば、クレーンにおいて、撮像装置110は、クレーンフックに取り付けられてもよい。移動装置120は、撮像装置110が取り付けられる雲台(「ジンバル」とも呼ばれる)を備え、雲台を動作させることで撮像装置110の向きを自在に変動させてもよい。
動き検出装置130は、検出装置の一例であり、ロボット操作装置300を操作するユーザPの頭部Hの動きを検出する。動き検出装置130は特に限定されないが、本例示的な実施の形態では、少なくとも1つの赤外線センサ131と、ユーザPの頭部Hに装着される少なくとも1つの赤外線マーカ132とを含む。本例示的な実施の形態では、複数の赤外線センサ131、具体的には、3つの赤外線センサ131がユーザPの周りにユーザPに向けて配置される。3つの赤外線センサ131は、ユーザPの頭部Hから離れた位置に配置される。複数の赤外線マーカ132、具体的には、4つの赤外線マーカ132が頭部H上の異なる位置に配置される。なお、頭部は、人体における首から上の部分を含み、例えば、顔面、頭頂部、側頭部、後頭部等を含み得る。
赤外線マーカ132は、赤外光を出射する。赤外線マーカ132は、赤外線LED(Light Emitting Diode)等の赤外光を自身で発する発光体であってもよく、照射された赤外光を反射する反射体であってもよく、発光体及び反射体の両方を含むように構成されてもよい。赤外線センサ131は、赤外光を受光し、受光される赤外光の方向、強度及び強度分布等を検出することができる。赤外線センサ131は、赤外光の受光のみが可能であるように構成されてもよく、赤外光を自身で発し、当該赤外光の反射光等の赤外光を受光するように構成されてもよい。後者の場合、赤外線センサ131は、赤外線カメラであってもよい。3つの赤外線センサ131を用いて4つの赤外線マーカ132からの赤外光を検出することで、頭部Hの位置及び姿勢等を高精度に検出することが可能である。以下に限定されないが、頭部Hの位置は、3次元空間内での頭部Hの所定の基準点等の3次元の位置であってもよい。頭部Hの姿勢は、頭部Hの正面部分、頭部Hを横切る平面、及び頭部Hの顎から頭頂部を通る軸等の所定の部分、面又は軸の姿勢であってもよく、具体的には、3次元空間内での上記所定の部分、面又は軸の3次元の向きであってもよい。
なお、上記と逆となるように、赤外線センサ131がユーザPの頭部Hに装着され、赤外線マーカ132がユーザPの頭部Hから離れた位置に配置されてもよい。赤外線センサ131及び赤外線マーカ132の位置及び数量は、頭部Hの位置、姿勢、又は、位置及び姿勢の両方等の検出が可能であればよく、特に限定されない。
表示装置140は、撮像装置110によって撮像された画像をユーザPに知覚可能に提示する。表示装置140は、ロボット操作装置300の近傍に配置され、撮像装置110から離れた位置に配置される。表示装置140は、ロボット制御装置400から受け取る指令、情報及びデータ等を、ユーザPに知覚可能に提示してもよい。例えば、表示装置140は、液晶ディスプレイ(Liquid Crystal Display)及び有機又は無機ELディスプレイ(Electro-Luminescence Display)等のディスプレイを備え、視覚的な提示をする。表示装置140は、スピーカ等の音声出力装置を備え、聴覚的な提示をしてもよい。表示装置140は、触覚的な提示をするように構成されてもよい。
以下に限定されないが、本例示的な実施の形態では、表示装置140は、ユーザPの頭部Hに取り付けられるヘッドマウントディスプレイである。本例示的な実施の形態では、ヘッドマウントディスプレイは、ゴーグル状の形状を有し、ヘッドマウントディスプレイのレンズ部分が、画像が表示される表示面を形成する。表示装置140は、ユーザPの頭部Hと共に移動することでユーザPの頭部Hの動きに追従して、表示装置140が画像を表示する位置及び向きを変えることができる。
なお、表示装置140は、ユーザPの頭部Hに取り付けられないように構成されてもよく、この場合、ディスプレイの位置、ディスプレイの姿勢、又は、ディスプレイの位置及び姿勢を変えることができるディスプレイ駆動装置を備えてもよい。ディスプレイを移動させる構成、及び、ディスプレイの位置及び姿勢を変える構成は、移動装置120について例示したような装置により構成されてもよい。ディスプレイの姿勢を変える構成は、ジンバル等の装置により構成されてもよい。
撮像入力装置160は、撮像システム100を動作させるための入力及び操作等をユーザPから受け付ける。撮像入力装置160は、種々の指令、情報及びデータ等の入力を受け付け、撮像制御装置150に出力する。例えば、撮像入力装置160は、ロボット操作装置300の近傍に配置され、ロボット操作装置300の例示した構成と同様の構成を有してもよい。ロボット操作装置300が撮像入力装置160を含み、撮像入力装置160の機能を兼ねてもよい。
図2は、例示的な実施の形態に係る撮像システム100の機能的な構成の一例を示すブロック図である。図1及び図2に示すように、撮像制御装置150は、撮像装置110、移動装置120、動き検出装置130、表示装置140及び撮像入力装置160と有線通信又は無線通信を介して接続される。なお、いかなる有線通信及び無線通信が用いられてもよい。撮像制御装置150は、撮像装置110及び移動装置120の駆動を制御する駆動制御装置151と、動き検出装置130の動作を制御する検出制御装置152と、表示装置140の動作を制御する表示制御装置153とを含む。
検出制御装置152は、3つの赤外線センサ131の駆動を制御し、3つの赤外線センサ131が4つの赤外線マーカ132からの赤外光を検出する結果を処理して、4つの赤外線マーカ132の3次元の位置及び姿勢を検出する。つまり、検出制御装置152は、赤外線マーカ132の3次元の位置及び姿勢を検出することで、ユーザPの頭部Hの位置及び姿勢を検出する。検出制御装置152は処理装置の一例である。
具体的には、3つの赤外線センサ131はそれぞれ、4つの赤外線マーカ132から出射される赤外光を受光する。各赤外線マーカ132から出射される赤外光は、当該赤外線マーカ132に設定されるID等の識別情報と関連付けられている。このため、各赤外線センサ131は、4つの赤外線マーカ132それぞれの赤外光の向き、強度及び強度分布等を検出することができる。検出制御装置152は、各赤外線センサ131の3次元の位置及び姿勢の情報と、各赤外線センサ131による4つの赤外線マーカ132の赤外光の検出結果とを用いて、4つの赤外線マーカ132の3次元の位置を検出する。例えば、検出制御装置152は、3つの赤外線センサ131及びロボット制御装置400が配置される空間に設定される3次元座標系に従って、4つの赤外線マーカ132の3次元の位置を検出する。さらに、検出制御装置152は、4つの赤外線マーカ132の3次元の位置の情報を用いて、ユーザPの頭部Hの3次元の位置及び姿勢を検出する。例えば、検出制御装置152は、ローリング角、ピッチング角及びヨーイング角等の姿勢角を用いて姿勢を表す。
駆動制御装置151は、撮像装置110の撮像動作を制御する。さらに、駆動制御装置151は、検出制御装置152によって検出されるユーザPの頭部Hの動きに追従して撮像装置110の位置及び姿勢を変動させるように移動装置120の動作を制御する。駆動制御装置151は、検出制御装置152によって検出される頭部Hの位置及び姿勢の変動量に対応する撮像装置110の位置及び姿勢の変動量で撮像装置110を移動させるように、移動装置120の動作を制御する。例えば、駆動制御装置151は、移動装置120が配置される空間に設定される3次元座標系に従って撮像装置110の位置及び姿勢を制御し、例えば、移動装置120に設定される3次元座標系を用いる。
撮像装置110の位置及び姿勢の変動量と頭部Hの位置及び姿勢の変動量との関係は、任意である。例えば、撮像装置110の位置及び姿勢の変動量は、頭部Hの位置及び姿勢の変動量と1対1で対応してもよく、頭部Hの位置及び姿勢の変動量の定数倍に対応してもよい。例えば、撮像装置110の姿勢の変動量と頭部Hの姿勢の変動量とが1対1で対応し、撮像装置110の位置の変動量が頭部Hの位置の変動量の定数倍に対応してもよい。例えば、撮像装置110の位置の変動量と頭部Hの位置の変動量とが1対1で対応し、撮像装置110の姿勢の変動量が頭部Hの姿勢の変動量の定数倍に対応してもよい。
表示制御装置153は、撮像装置110によって撮像された画像を表示装置140に表示させる。また、ディスプレイ駆動装置を表示装置140が備える場合、表示制御装置153は、ディスプレイ駆動装置の動作を制御してもよい。また、表示制御装置153は、表示装置140の表示画面上において撮像装置110の画像を表示する位置を変える位置処理を行ってもよい。
本例示的な実施の形態では、表示装置140はヘッドマウントディスプレイである。このため、表示制御装置153は、ディスプレイ駆動装置の制御及び位置処理を行わずに、撮像装置110によって撮像された画像を表示装置140に表示させる。例えば、表示制御装置153は、撮像装置110によって撮像された画像の中心を表示装置140の表示画面の中心上に位置させる。これにより、ユーザPは、撮像装置110によって撮像された画像を常に頭部Hの正面付近に視ることができる。
表示装置140がヘッドマウントディスプレイでなく、ディスプレイ駆動装置を備える場合、表示制御装置153は、ユーザPの頭部Hの動きに追従してディスプレイが移動するように、ディスプレイ駆動装置の動作を制御してもよい。例えば、ディスプレイの表示画面が頭部Hの正面付近に位置する及び/又は頭部Hの前面に向くように、表示制御装置153は上記制御を行ってもよい。さらに、表示制御装置153は、ディスプレイの表示画面上において、撮像装置110によって撮像された画像の中心がユーザPの頭部Hの動きに追従して移動するように、画像の位置処理を行ってもよい。この場合、撮像装置110によって撮像された画像の中心と表示画面の中心とが必ずしも一致しない。これにより、ユーザPは、撮像装置110によって撮像された画像を頭部Hの正面付近に視ることができる。なお、表示制御装置153は、ユーザPの指令等に従って、ディスプレイの表示画面上において、撮像装置110によって撮像された画像の中心がユーザPの頭部Hの動きに追従して移動しないように、画像の位置処理を行ってもよい。これにより、ユーザPは、撮像装置110によって、別の向きから撮像された対象物の画像を頭部Hの正面等に視ることができる。
表示装置140がヘッドマウントディスプレイでなく、ディスプレイ駆動装置を備えない場合、表示制御装置153は、ディスプレイの表示画面上において、撮像装置110によって撮像された画像の中心がユーザPの頭部Hの動きに追従して移動するように、画像の位置処理を行ってもよい。
上記のような撮像制御装置150は、コンピュータを備える。さらに、撮像制御装置150は、撮像装置110、移動装置120、動き検出装置130及び表示装置140に供給する電力を制御するための電気回路等を備えてもよい。コンピュータ以外の機器は、撮像制御装置150と別個に設けられてもよい。
例えば、ロボット制御装置400及び撮像制御装置150のコンピュータは、プロセッサ及びメモリ等を有する回路又は処理回路を含む。回路又は処理回路は、他の装置との指令、情報及びデータ等の送受信を行う。回路又は処理回路は、各種機器からの信号の入力及び各制御対象への制御信号の出力を行う。メモリは、揮発性メモリ及び不揮発性メモリなどの半導体メモリ、ハードディスク及びSSD(Solid State Drive)等の記憶装置で構成される。例えば、メモリは、回路又は処理回路が実行するプログラム、及び各種データ等を記憶する。
回路又は処理回路の機能は、CPU(Central Processing Unit)などのプロセッサ、RAM(Random Access Memory)などの揮発性メモリ及びROM(Read-Only Memory)などの不揮発性メモリ等からなるコンピュータシステムにより実現されてもよい。コンピュータシステムは、CPUがRAMをワークエリアとして用いてROMに記録されたプログラムを実行することによって、回路又は処理回路の機能を実現してもよい。なお、回路又は処理回路の機能の一部又は全部は、上記コンピュータシステムにより実現されてもよく、電子回路又は集積回路等の専用のハードウェア回路により実現されてもよく、上記コンピュータシステム及びハードウェア回路の組み合わせにより実現されてもよい。ロボット制御装置400及び撮像制御装置150は、単一のコンピュータによる集中制御により各処理を実行してもよく、複数のコンピュータの協働による分散制御により各処理を実行してもよい。
例えば、ロボット制御装置400及び撮像制御装置150の各機能は、マイクロコントローラ、MPU(Micro Processing Unit)、LSI(Large Scale Integration:大規模集積回路)、システムLSI、PLC(Programmable Gate Array)及び論理回路等によって実現されてもよい。ロボット制御装置400及び撮像制御装置150それぞれの複数の機能は、個別に1チップ化されてもよく、一部又は全てを含むように1チップ化されてもよい。また、回路は、それぞれ、汎用的な回路でもよく、専用の回路でもよい。LSIとして、LSI製造後にプログラムすることが可能なFPGA(Field Programmable Gate Array)、LSI内部の回路セルの接続及び/又は設定を再構成可能なリコンフィギュラブルプロセッサ、又は、特定用途向けに複数の機能の回路が1つにまとめられたASIC(Application Specific Integrated Circuit)等が利用されてもよい。
[撮像システムの機能的構成]
撮像システム100の機能的な構成を説明する。図2に示すように、撮像システム100の撮像制御装置150は、駆動制御装置151と、検出制御装置152と、表示制御装置153と、記憶部154とを含む。
駆動制御装置151は、撮像制御部1511と、第1移動制御部1512とを機能的構成要素として含む。検出制御装置152は、装置制御部1521と、検出処理部1522とを機能的構成要素として含む。表示制御装置153は、表示制御部1531と、第2移動制御部1532と、画像処理部1533とを機能的構成要素として含む。
記憶部154の機能は、撮像制御装置150のコンピュータのメモリ等によって実現される。記憶部154以外の撮像制御装置150の機能的構成要素の機能は、コンピュータのプロセッサ等によって実現される。
記憶部154は、種々の情報を記憶し、記憶された情報の読出しを可能にする。例えば、記憶部154は、プログラム及び各種データ等を記憶してもよい。例えば、記憶部154は、撮像システム100の各装置を動作させるためのプログラム、データ及び情報等を記憶してもよい。
例えば、記憶部154は、撮像システム100の各装置に設定される座標系を記憶する。例えば、上記座標系は、赤外線センサ131及びロボット操作装置300が配置される空間に設定される3次元座標系(以下、「第1座標系」とも呼ぶ)、移動装置120が配置される空間に設定される3次元座標系(以下、「第2座標系」とも呼ぶ)、及び、移動装置120上に設定される3次元座標系(以下、「第3座標系」とも呼ぶ)等を含んでもよい。
例えば、記憶部154は、各赤外線センサ131の位置及び姿勢の情報、例えば、第1座標系での当該情報を記憶する。記憶部154は、各赤外線マーカ132の識別情報と各赤外線マーカ132から出射される赤外光の特徴の情報とを関連付けて記憶してもよい。記憶部154は、ユーザPの頭部Hにおける各赤外線マーカ132の位置及び姿勢の情報を記憶してもよい。記憶部154は、移動装置120の位置及び姿勢の情報、例えば、第2座標系での当該情報を記憶する。記憶部154は、移動装置120上での撮像装置110の位置及び姿勢の情報、例えば、第3座標系での当該情報を記憶する。
例えば、記憶部154は、ユーザPの頭部Hの動きに従って各装置を移動させるための種々のパラメータの関係を記憶してもよい。例えば、当該パラメータの関係は、頭部Hの位置及び姿勢の変動量と各装置の位置及び姿勢の変動量との第1関係、頭部Hの位置及び姿勢の変動量と表示装置140のディスプレイの位置及び姿勢の変動量との第2関係、並びに、頭部Hの位置及び姿勢の変動量と表示装置140の表示画面上での画像の基準点の位置の変動量との第3関係等を含んでもよい。
撮像制御部1511は、撮像装置110の駆動を制御する。例えば、撮像制御部1511は、撮像装置110の撮像動作の実行及び停止、並びに、撮像装置110のズームアップ及びズームバックの動作等を制御する。例えば、撮像制御部1511は、ロボット操作装置300から情報及び指令等を受け取るように構成され、ロボット操作装置300から受け取る指令等に従って、撮像装置110の動作を制御してもよい。
第1移動制御部1512は、移動装置120の駆動を制御する。例えば、第1移動制御部1512は、撮像入力装置160から操作情報を受け取ると、当該操作情報に対応する動作をさせるための動作指令を生成し、移動装置120に出力する。これにより、移動装置120は操作情報に対応する動作を行う。操作情報は、移動装置120を動作させるためにユーザPによって撮像入力装置160に入力される操作の内容を示す情報である。
例えば、第1移動制御部1512は、ユーザPの頭部Hの位置及び姿勢の変動量を検出制御装置152の検出処理部1522から受け取ると、記憶部154から第1関係を読み出す。第1移動制御部1512は、頭部Hの位置及び姿勢の変動量と第1関係とに基づき、頭部Hの動きに追従して撮像装置110を移動させるための撮像装置110の位置及び姿勢の変動量を決定する。当該位置及び姿勢の変動量は、第2座標系で表され得る。さらに、第1移動制御部1512は、決定した位置及び姿勢の変動量で撮像装置110を移動させるための移動装置120の動作の指令を生成し、移動装置120に出力する。これにより、移動装置120は頭部Hの動きに追従するように撮像装置110を移動させる。
例えば、頭部Hの水平方向及び鉛直方向の移動はそれぞれ、撮像装置110の水平方向及び鉛直方向の移動に対応付けられる。頭部Hのローリング方向、ピッチング方向及びヨーイング方向の移動はそれぞれ、撮像装置110のローリング方向、ピッチング方向及びヨーイング方向の移動に対応付けられる。
装置制御部1521は、動き検出装置130の各赤外線センサ131の駆動を制御する。例えば、赤外線センサ131が赤外光を発するように構成される場合、装置制御部1521は、各赤外線センサ131の赤外光の照射の実行及び停止等を制御してもよい。各赤外線マーカ132が赤外光を発するように構成される場合、装置制御部1521は、各赤外線マーカ132の赤外光の照射の実行及び停止等の動作を制御してもよい。
検出処理部1522は、各赤外線センサ131における赤外線マーカ132からの赤外光の検出結果を処理し、ユーザPの頭部Hの位置及び姿勢を検出する。検出処理部1522は、検出装置の一例である。
具体的には、検出処理部1522は、記憶部154から各赤外線マーカ132の識別情報及び赤外光の特徴の情報を読み出し、各赤外線センサ131によって検出される赤外光と赤外線マーカ132とを紐付ける。検出処理部1522は、記憶部154から各赤外線センサ131の位置及び姿勢の情報を読み出し、当該情報と、各赤外線センサ131における各赤外線マーカ132の赤外光の検出結果とを用いて、各赤外線マーカ132の3次元の位置を検出する。検出処理部1522は、4つの赤外線マーカ132の3次元の位置からユーザPの頭部Hの3次元の位置及び姿勢を検出する。頭部Hの位置及び姿勢は、第1座標系で表され得る。検出処理部1522は、経時的に頭部Hの位置及び姿勢を検出することで、頭部Hの位置及び姿勢の変動量を第1移動制御部1512に出力する。
頭部Hの位置及び姿勢の変動量は、変動前後の間での頭部Hの位置及び姿勢の変化量と、変動前の頭部Hの位置及び姿勢と、変動後の頭部Hの位置及び姿勢と、変動後の頭部Hの位置及び姿勢に向かう頭部Hの位置及び姿勢の変動速度と、変動後の頭部Hの位置及び姿勢に向かう頭部Hの位置及び姿勢の加速度とを含む群から選択される少なくとも1つを含んでもよい。
表示制御部1531は、撮像装置110によって撮像された画像データを撮像装置110から取得し、表示装置140に当該画像データを出力し当該画像データに対応する画像を表示させる。表示制御部1531は、撮像装置110から取得された画像データを画像処理し、画像処理後の画像データを表示装置140に出力してもよい。
第2移動制御部1532は、表示装置140がディスプレイ駆動装置を備える場合、ディスプレイ駆動装置の動作を制御する。この場合、第2移動制御部1532は、検出処理部1522からユーザPの頭部Hの位置及び姿勢の変動量の情報を取得する。さらに、第2移動制御部1532は、記憶部154から第2関係を読み出す。第2移動制御部1532は、頭部Hの位置及び姿勢の変動量と第2関係とに基づき、頭部Hの動きに追従してディスプレイを移動させるためのディスプレイの位置及び姿勢の変動量を決定する。当該位置及び姿勢の変動量は、第1座標系で表され得る。
さらに、第2移動制御部1532は、決定した位置及び姿勢の変動量でディスプレイを移動させるためのディスプレイ駆動装置の動作の指令を生成し、ディスプレイ駆動装置に出力する。これにより、ディスプレイ駆動装置は、ディスプレイが頭部Hの正面付近に位置する及び/又は頭部Hに向くように、頭部Hの動きに追従してディスプレイを移動させる。本例示的な実施の形態では、表示装置140はヘッドマウントディスプレイであるため、第2移動制御部1532は省略されてもよい。
画像処理部1533は、表示装置140のディスプレイの表示画面上において撮像装置110によって撮像された画像を表示する位置を制御する。例えば、表示装置140が1つのディスプレイを備える場合、画像処理部1533は、ユーザPの頭部Hの動きに追従して、撮像装置110によって撮像された画像の基準点をディスプレイの表示画面上で移動させてもよい。例えば、表示装置140が表示画面の向きが異なるように配置された複数のディスプレイを備える場合、画像処理部1533は、ユーザPの頭部Hの動きに追従して、撮像装置110によって撮像された画像の基準点を複数のディスプレイの表示画面にわたって移動させてもよい。
画像処理部1533は、検出処理部1522からユーザPの頭部Hの位置及び姿勢の変動量の情報を取得する。さらに、画像処理部1533は、記憶部154から第3関係を読み出す。画像処理部1533は、頭部Hの位置及び姿勢の変動量と第3関係とに基づき、頭部Hの動きに追従するような表示画面上での基準点の位置の変動量を決定する。さらに、画像処理部1533は、決定した位置の変動量で基準点を移動させるための指令を生成し、表示制御部1531に出力する。表示制御部1531は、撮像装置110によって撮像された画像の基準点が頭部Hの動きに追従して移動するように、表示装置140のディスプレイに当該画像を表示させる。
これにより、ユーザPは、頭部Hの正面に近い位置で、撮像装置110によって撮像された画像を視認することができる。本例示的な実施の形態では、表示装置140はヘッドマウントディスプレイであるため、画像処理部1533は、ユーザPの頭部Hの動きに関係なく、ディスプレイの表示画面上における撮像装置110によって撮像された画像の基準点の位置を維持する。
[撮像システムの動作]
例示的な実施の形態に係る撮像システム100の動作を説明する。図3は、例示的な実施の形態に係る撮像システム100の動作の一例を示すフローチャートである。なお、本例において、ユーザPは、表示装置140としてヘッドマウントディスプレイを頭部Hに装着するものとする。
まず、ステップS101において、撮像制御装置150は、撮像装置110及びユーザPの頭部Hそれぞれの初期位置及び初期姿勢を決定する初期設定モードで動作する。例えば、撮像制御装置150は、ユーザPによって撮像入力装置160に入力される起動指令に従って、初期設定モードを開始する。
次いで、ステップS102において、撮像制御装置150は、撮像装置110の初期位置及び初期姿勢を決定する。具体的には、ユーザPは、表示装置140において撮像装置110によって撮像された画像を視認しつつ撮像入力装置160を操作して移動装置120を動作させ、撮像装置110の位置及び姿勢を変動させる。表示装置140に所望の画像が映し出されると、ユーザPは、現状の撮像装置110の位置及び姿勢を撮像装置110の初期位置及び初期姿勢に決定する指令を撮像入力装置160に入力する。撮像制御装置150は、指令された撮像装置110の位置及び姿勢を撮像装置110の初期位置及び初期姿勢に決定する。
次いで、ステップS103において、撮像制御装置150は、ユーザPの頭部Hの初期位置及び初期姿勢を決定する。具体的には、ユーザPは、頭部Hの位置及び姿勢が所望の位置及び姿勢となると、頭部Hの初期位置及び初期姿勢の決定する指令を撮像入力装置160に入力する。撮像制御装置150は、動き検出装置130の3つの赤外線センサ131に赤外光の検出動作をさせ、各赤外線センサ131の検出結果を処理し、頭部Hの位置及び姿勢を検出する。撮像制御装置150は、検出された頭部Hの位置及び姿勢を、頭部Hの初期位置及び初期姿勢に決定する。
次いで、ステップS104において、撮像制御装置150は、初期設定モードを終了し、通常動作モードで動作を開始する。
次いで、ステップS105において、撮像制御装置150は、撮像装置110に撮像動作を開始させる。撮像装置110は連続的に動画を撮像し表示装置140に表示させる。
次いで、ステップS106において、撮像制御装置150は、3つの赤外線センサ131に、頭部Hの赤外線マーカ132の赤外光の検出を連続的に実行させる。
次いで、ステップS107において、撮像制御装置150は、各赤外線センサ131の検出結果を処理し、初期位置及び初期姿勢に対するユーザPの頭部Hの位置及び姿勢を検出する。撮像制御装置150は、所定の時間間隔で頭部Hの位置及び姿勢を検出し、それにより、所定の時間毎での頭部Hの位置及び姿勢の変動量を検出する。
次いで、ステップS108において、撮像制御装置150は、記憶部154に記憶される第1関係と、初期位置及び初期姿勢に対する頭部Hの位置及び姿勢とに基づき、初期位置及び初期姿勢に対する撮像装置110の目標の位置及び姿勢を決定する。撮像制御装置150は、所定の時間間隔で撮像装置110の目標の位置及び姿勢を決定し、それにより、所定の時間毎での撮像装置110の位置及び姿勢の変動量を決定する。
次いで、ステップS109において、撮像制御装置150は、撮像装置110の目標の位置及び姿勢に対応する動作指令を生成し、移動装置120に出力する。撮像制御装置150は、目標の位置及び姿勢を撮像装置110の位置及び姿勢が満たすように移動装置120を動作させる動作指令を生成する。
次いで、ステップS110において、移動装置120は動作指令に従って動作し、撮像装置110を目標の位置及び姿勢に移動させる。
次いで、ステップS111において、撮像制御装置150は、ユーザPによって撮像入力装置160に撮像システム100の動作を終了する指令が入力されたか否かを判定し、入力済みの場合(ステップS111でYes)に一連の処理を終了し、未入力の場合(ステップS111でNo)にステップS106に戻る。
ステップS101からS111の処理によって、撮像制御装置150は、ユーザPの頭部Hの初期位置及び初期姿勢と撮像装置110の初期位置及び初期姿勢との関係に基づき、頭部Hの位置及び姿勢の変動量に追従するように、撮像装置110の位置及び姿勢を変動させることができる。
(変形例1)
例示的な実施の形態の変形例1は、表示装置140Aが、1つのディスプレイ141と、ディスプレイ141を移動させるディスプレイ駆動装置142とを備える点で、例示的な実施の形態と異なる。撮像制御装置150は、ディスプレイ駆動装置142の動作を制御することで、ユーザPの頭部Hの動きに追従して、ディスプレイ141の位置及び向きを移動させる。以下、変形例1について、例示的な実施の形態と異なる点を中心に説明し、例示的な実施の形態と同様の点の説明を適宜省略する。
図4は、例示的な実施の形態の変形例1に係る表示装置140Aの構成の一例を示す側面図である。図4に示すように、ディスプレイ駆動装置142は、ディスプレイ141を支持し、且つディスプレイ141の位置及び姿勢を自在に変えることができるように構成される。本変形例では、ディスプレイ駆動装置142は、複数の関節を有するロボットアームである。当該ロボットアームの基部は、支持面等に固定され、当該ロボットアームの先端には、ディスプレイ141が取り付けられる。ディスプレイ駆動装置142は、ディスプレイ141の位置及び姿勢を3次元方向に任意に変動させることができる。
撮像制御装置150の表示制御装置153の第2移動制御部1532は、ユーザPの頭部Hの動きにディスプレイ141の位置及び姿勢が追従するように、ディスプレイ駆動装置142の動作を制御する。例えば、第2移動制御部1532は、頭部Hが上方へ向くと、ディスプレイ141を上方へ移動させ且つ下方へ向け、頭部Hが左方へ向くと、ディスプレイ141を、頭部Hに対して左方へ移動させ且つ右方へ向ける。また、第2移動制御部1532は、撮像入力装置160を介した操作に従ってディスプレイ141の位置及び姿勢の変動させるように、ディスプレイ駆動装置142の動作を制御する。
変形例1に係る撮像システム100の動作を説明する。図5は、変形例1に係る撮像システム100の動作の一例を示すフローチャートである。まず、ステップS201からS203の処理はそれぞれ、例示的な実施の形態でのステップS101からS103と同様である。
次いで、ステップS204において、撮像制御装置150は、ディスプレイ141の初期位置及び初期姿勢を決定する。具体的には、ユーザPは、撮像入力装置160を操作してディスプレイ駆動装置142を動作させ、ディスプレイ141の位置及び姿勢を所望の位置及び姿勢に変動させる。変動停止後、ユーザPは、現状のディスプレイ141の位置及び姿勢をディスプレイ141の初期位置及び初期姿勢に決定する指令を撮像入力装置160に入力する。撮像制御装置150は、指令されたディスプレイ141の位置及び姿勢をディスプレイ141の初期位置及び初期姿勢に決定する。
次いで、ステップS205からS211での処理はそれぞれ、例示的な実施の形態でのステップS104からS110と同様である。
次いで、ステップS212において、撮像制御装置150は、記憶部154に記憶される第2関係と、初期位置及び初期姿勢に対する頭部Hの位置及び姿勢とに基づき、初期位置及び初期姿勢に対するディスプレイ141の目標の位置及び姿勢を決定する。撮像制御装置150は、所定の時間間隔でディスプレイ141の目標の位置及び姿勢を決定し、それにより、所定の時間毎でのディスプレイ141の位置及び姿勢の変動量を決定する。
次いで、ステップS213において、撮像制御装置150は、ディスプレイ141の目標の位置及び姿勢に対応する動作指令を生成し、ディスプレイ駆動装置142に出力する。撮像制御装置150は、目標の位置及び姿勢をディスプレイ141の位置及び姿勢が満たすようにディスプレイ駆動装置142を動作させる動作指令を生成する。
次いで、ステップS214において、ディスプレイ駆動装置142は動作指令に従って動作し、ディスプレイ141を目標の位置及び姿勢に移動させる。
次いで、ステップS215において、撮像制御装置150は、ユーザPによって撮像入力装置160に撮像システム100の動作を終了する指令が入力されたか否かを判定し、入力された場合(ステップS215でYes)に一連の処理を終了し、未入力の場合(ステップS215でNo)にステップS207に戻る。
ステップS201からS215の処理によって、撮像制御装置150は、ユーザPの頭部Hの初期位置及び初期姿勢と撮像装置110の初期位置及び初期姿勢とディスプレイ141の初期位置及び初期姿勢との関係に基づき、頭部Hの位置及び姿勢の変動量に追従するように、撮像装置110及びディスプレイ141それぞれの位置及び姿勢を変動させることができる。なお、撮像制御装置150は、ステップS209からS211の処理と、ステップS212からS214の処理とを並行して実行してもよく、上記と逆の順序で実行してもよい。なお、本変形例では、ディスプレイ駆動装置142は、ディスプレイ141の位置及び向きの両方を移動するように構成されるが、ディスプレイ141の位置のみ、又は、ディスプレイ141の向きのみを移動するように構成されてもよい。
(変形例2)
例示的な実施の形態の変形例2は、表示装置140Bが、ユーザPの周囲の一部を囲むような湾曲を含む表示面143aを有する1つのディスプレイ143を備える点で、例示的な実施の形態と異なる。撮像制御装置150は、ユーザPの頭部Hの動きに追従して、撮像装置110によって撮像された画像の基準点を表示面143aの画面上で移動させることで、当該画像を表示する位置及び向きを変える。以下、変形例2について、例示的な実施の形態及び変形例1と異なる点を中心に説明し、例示的な実施の形態及び変形例1と同様の点の説明を適宜省略する。
図6は、例示的な実施の形態の変形例2に係る表示装置140Bの構成の一例を示す側面図である。図6に示すように、ディスプレイ143の表示面143aは、ユーザPの両側方から前方にわたって水平方向に且つユーザPの上方及び下方から前方にわたって鉛直方向に、ユーザPの周囲を囲む。このような表示面143aは、水平方向と、鉛直方向と、水平方向及び鉛直方向と交差する方向とにおいて、ユーザPの周囲を囲む。表示面143aは、例えば、球面又は楕円面の一部と同様の曲面形状を有する。なお、表示面143aは、ユーザPの周囲の一部を囲むような形状を有すればよく、例えば、ユーザPの周囲全体を囲むような形状を有してもよい。表示面143aの形状は、上記曲面形状に限定されず、屈曲、湾曲、又は、屈曲及び湾曲の両方を含むいかなる形状であってもよい。例えば、表示面143aの形状は、円筒面又は多面体の表面の少なくとも一部と同様の形状であってもよい。なお、本明細書及び請求の範囲において、「円筒面」は、軸心に垂直な断面の形状が円形、楕円形、円形に近似する形状、楕円形に近似する形状、又は、これらの2つ以上の組み合わせである、柱状体の表面を含み得る。
撮像制御装置150の表示制御装置153の画像処理部1533及び表示制御部1531は、ユーザPの頭部Hの動きに追従するように、撮像装置110によって撮像された画像の基準点Pfの位置を表示面143aの画面上で変動させる。例えば、画像処理部1533及び表示制御部1531は、頭部Hが上方へ向くと、表示面143aの画面上において基準点Pfを上方へ移動させ、頭部Hが左方へ向くと、表示面143aの画面上において基準点Pfを頭部Hに対して左方へ移動させる。
変形例2に係る撮像システム100の動作を説明する。図7は、変形例2に係る撮像システム100の動作の一例を示すフローチャートである。まず、ステップS301からS303の処理はそれぞれ、例示的な実施の形態でのステップS101からS103と同様である。
次いで、ステップS304において、撮像制御装置150は、ディスプレイ143の表示面143aの画面上において、撮像装置110によって撮像される画像の基準点Pfの初期位置を決定する。これに限定されないが、本変形例では、基準点Pfは、当該画像の中心である。撮像制御装置150は、ステップS302において撮像装置110の初期位置及び初期姿勢が決定されたときの撮像装置110によって撮像された画像の基準点Pfaの位置を、初期位置に決定する。
次いで、ステップS305からS311での処理はそれぞれ、例示的な実施の形態でのステップS104からS110と同様である。
次いで、ステップS312において、撮像制御装置150は、記憶部154に記憶される第3関係と、初期位置及び初期姿勢に対する頭部Hの位置及び姿勢とに基づき、表示面143aの画面上における初期位置の基準点Pfaに対する目標基準点Pftの目標位置を決定する。目標基準点Pftは、頭部Hの位置及び姿勢の変動に追従した移動先の基準点である。撮像制御装置150は、所定の時間間隔で目標基準点Pftの目標位置を決定し、それにより、所定の時間毎での基準点Pfの位置の変動量を決定する。
次いで、ステップS313において、撮像制御装置150は、表示面143aの画面上において、撮像装置110によって撮像された画像の基準点Pfの位置が目標基準点Pftの目標位置に一致するように、当該画像を処理しディスプレイ143に出力する。つまり、撮像制御装置150は、目標基準点Pftに対応付ける画像処理を実行する。
次いで、ステップS314において、ディスプレイ143は、処理後の画像を表示面143aの画面上に表示する。
次いで、ステップS315の処理は、変形例1でのステップS215と同様である。
ステップS301からS315の処理によって、撮像制御装置150は、ユーザPの頭部Hの初期位置及び初期姿勢と、撮像装置110の初期位置及び初期姿勢と、撮像装置110によって撮像された画像の基準点Pfのディスプレイ143の表示面143a上での初期位置との関係に基づき、頭部Hの位置及び姿勢の変動量に追従するように、撮像装置110の位置及び姿勢と画像の表示位置及び表示方向とを変動させることができる。なお、撮像制御装置150は、ステップS309からS311の処理と、ステップS312からS314の処理とを並行して実行してもよく、上記と逆の順序で実行してもよい。
なお、撮像制御装置150は、撮像入力装置160等を介したユーザPの指令を受け付けることにより、頭部Hの位置及び姿勢の変動量に追従するように、撮像装置110によって撮像された画像の基準点Pfの位置を変動させる制御を、停止又は停止解除することができるように構成されてもよい。上記制御の停止中、頭部Hの位置及び姿勢の変動量に追従するように、撮像装置110の位置及び姿勢が変動するが、表示面143a上での画像の基準点Pfの位置は変動しない。ユーザPは、表示面143a上において、対象物W等の被写体を別の方向から撮像した画像を視ることができる。例えば、ユーザPは、頭部Hの動きに追従して画像の基準点Pfの位置を変動させ、その後、撮像入力装置160に追従の停止を指令すると、頭部Hの正面以外の場所に映し出される画像を視認することができる。
また、変形例2において、ディスプレイ143は、変形例1と同様に移動可能であってもよい。この場合、撮像制御装置150は、変形例2での処理と変形例1での処理とを組み合わせて、ユーザPの頭部Hの動きに追従するように画像の表示位置及び向きを変動させてもよい。
(変形例3)
例示的な実施の形態の変形例3では、表示装置140Cが、ユーザPの周囲の一部を囲むように配置される複数のディスプレイ141を備える点で、変形例2と異なる。複数のディスプレイ141は、それぞれの表示面141aの位置及び向きが異なるように配置される。撮像制御装置150は、複数のディスプレイ141のそれぞれに、撮像装置110によって撮像された1つの画像の一部を表示させる、つまり、複数のディスプレイ141に、全体で当該1つの画像を表示させる。撮像制御装置150は、ユーザPの頭部Hの動きに追従して、撮像装置110によって撮像された画像の基準点を複数のディスプレイ141の表示面141aの画面上にわたって移動させることで、当該画像を表示する位置及び向きを変える。以下、変形例3について、例示的な実施の形態並びに変形例1及び2と異なる点を中心に説明し、例示的な実施の形態並びに変形例1及び2と同様の点の説明を適宜省略する。
図8は、例示的な実施の形態の変形例3に係る表示装置140Cの構成の一例を示す側面図である。図8に示すように、複数のディスプレイ141は、ユーザPの両側方から前方にわたって水平方向に且つユーザPの上方及び下方から前方にわたって鉛直方向に、ユーザPの周囲の一部を囲むように配置される。
本変形例では、複数のディスプレイ141は、表示面141aが複数の水平方向の行を形成し且つ複数の鉛直方向の列を形成するように、配置される。このような複数の表示面141aは、水平方向と、鉛直方向と、水平方向及び鉛直方向と交差する方向とにおいて、ユーザPの周囲を囲む。さらに、複数のディスプレイ141は、それぞれの表示面141aが球面又は楕円面に沿って配置され且つ互いに隣接するように、配列される。各表示面141aは、球面又は楕円面の中心又は焦点へ向けられている。
なお、複数のディスプレイ141は、ユーザPの周囲全体を囲むように配置されてもよく、ユーザPの周囲を水平方向に囲むように配置されてもよく、ユーザPの周囲を鉛直方向に囲むように配置されてもよい。例えば、複数のディスプレイ141は、水平方向及び鉛直方向に延びる十字状の配列、水平方向に延び且つ湾曲する円筒面状の配列、又は、鉛直方向に延び且つ湾曲する円筒面状の配列等で配置されてもよい。図8では、複数のディスプレイ141は、互いに隣接して配置されるが、互いから距離をあけて配置されてもよい。
撮像制御装置150の表示制御装置153の画像処理部1533及び表示制御部1531は、ユーザPの頭部Hの動きに追従するように、撮像装置110によって撮像された画像の基準点Pfの位置を複数の表示面141aの画面上にわたって変動させる。例えば、画像処理部1533及び表示制御部1531は、頭部Hが上方へ向くと、複数の表示面143aの画面上にわたって基準点Pfを上方へ移動させ、頭部Hが左方へ向くと、表示面143aの画面上にわたって基準点Pfを頭部Hに対して左方へ移動させる。
変形例3に係る撮像システム100の動作を説明する。図9は、変形例3に係る撮像システム100の動作の一例を示すフローチャートである。まず、ステップS401からS403の処理はそれぞれ、変形例2でのステップS301からS303と同様である。
次いで、ステップS404において、撮像制御装置150は、撮像装置110によって撮像される画像の基準点Pfの初期位置を決定する。撮像制御装置150は、ステップS402において撮像装置110の初期位置及び初期姿勢が決定されたときの撮像装置110によって撮像された画像の基準点Pfaの位置を、初期位置に決定する。具体的には、撮像制御装置150は、初期位置の基準点Pfaを映し出すディスプレイ141と、当該ディスプレイ141の表示面141aの画面上での基準点Pfaの位置とを決定する。
次いで、ステップS405からS411での処理はそれぞれ、変形例2でのステップS305からS311と同様である。
次いで、ステップS412において、撮像制御装置150は、記憶部154に記憶される第3関係と、初期位置及び初期姿勢に対する頭部Hの位置及び姿勢とに基づき、目標基準点Pftを映し出すディスプレイ141と、当該ディスプレイ141の表示面141aの画面上での目標基準点Pftの目標位置とを決定する。撮像制御装置150は、所定の時間間隔で上記決定を実行する。
次いで、ステップS413において、撮像制御装置150は、決定されたディスプレイ141の表示面141aの画面上において、撮像装置110によって撮像された画像の基準点Pfの位置が目標基準点Pftの目標位置に一致するように、当該画像を処理し各ディスプレイ141に出力する。
次いで、ステップS414において、複数のディスプレイ141は全体で、処理後の画像を表示面141aの画面上に表示する。
次いで、ステップS415での処理は、変形例2でのステップS315と同様である。
ステップS401からS415の処理によって、撮像制御装置150は、ユーザPの頭部Hの初期位置及び初期姿勢と、撮像装置110の初期位置及び初期姿勢と、撮像装置110によって撮像された画像の基準点Pfの初期位置との関係に基づき、頭部Hの位置及び姿勢の変動量に追従するように、撮像装置110の位置及び姿勢と画像の表示位置及び表示方向とを変動させることができる。なお、撮像制御装置150は、ステップS409からS411の処理と、ステップS412からS414の処理とを並行して実行してもよく、上記と逆の順序で実行してもよい。
なお、撮像制御装置150は、撮像入力装置160等を介したユーザPの指令を受け付けることにより、頭部Hの位置及び姿勢の変動量に追従するように、撮像装置110によって撮像された画像の基準点Pfの位置を変動させる制御を、停止又は停止解除することができるように構成されてもよい。
また、本変形例では、撮像制御装置150は、複数のディスプレイ141の全体を用いて1つの画像を表示するように構成されるが、これに限定されない。例えば、撮像制御装置150は、複数のディスプレイ141の一部に、撮像装置110によって撮像された画像を表示するように構成されてもよい。撮像制御装置150は、頭部Hの位置及び姿勢の変動量に追従するように、画像を表示するディスプレイ141を選択するように構成されてもよい。
また、変形例3において、複数のディスプレイ141は、変形例1と同様に移動可能であってもよい。複数のディスプレイ141は、変形例2と同様に、湾曲、屈曲、又は、湾曲及び屈曲の両方を含む表示面141aを有してもよい。これらの場合、撮像制御装置150は、変形例3での処理に、変形例1での処理、変形例2での処理、又は、変形例1での処理及び変形例2での処理の両方を組み合わせて、ユーザPの頭部Hの動きに追従するように画像の表示位置及び向きを変動させてもよい。
(変形例4)
例示的な実施の形態の変形例4は、撮像システム100が、異なる位置及び向きで配置された複数の撮像装置110を備える点で、例示的な実施の形態と異なる。撮像制御装置150は、表示装置140に画像を表示する対象の撮像装置110を切り替えることで、ユーザPの頭部Hの動きに追従して撮像装置110の位置及び向きを変動させる。以下、変形例4について、例示的な実施の形態及び変形例1から3と異なる点を中心に説明し、例示的な実施の形態及び変形例1から3と同様の点の説明を適宜省略する。
図10は、例示的な実施の形態の変形例4に係る撮像装置110の構成の一例を示す斜視図である。図10に示すように、複数の撮像装置110は、撮像の対象物Wの周囲の少なくとも一部を囲むように配置される。例えば、対象物Wは、ロボット200の作業対象のワークである。本変形例では、複数の撮像装置110は、鉛直方向の軸心を有する円筒面に沿って配置され、互いから離されている。当該軸心は対象物W又は対象物Wの近傍を通る。複数の撮像装置110は、互いに同等の鉛直方向位置に配置される。各撮像装置110は、対象物Wに向けられ、支持体を介して天井等の不動物体に固定される。
複数の撮像装置110の配置は、上記に限定さない。例えば、複数の撮像装置110は、対象物W、ロボットアーム210、又は、対象物W及びロボットアーム210の両方を囲むように配置されてもよい。例えば、複数の撮像装置110は、鉛直方向で異なる位置に配置されてもよい。例えば、複数の撮像装置110は、水平方向の軸心を有する円筒面、鉛直方向の軸心を有する円筒面、球面、楕円面、又は、これらの2つ以上の組み合わせ等に沿って配置されてもよい。例えば、複数の撮像装置110は、鉛直方向での位置が異なる2つ以上の水平方向の円周、水平方向位置若しくは水平方向の向きが異なる2つ以上の鉛直方向の円周、又は、当該水平方向の円周と当該鉛直方向の円周との組み合わせに沿って配置されてもよい。
各撮像装置110の位置及び姿勢は、当該撮像装置110のパラメータとして、撮像制御装置150の記憶部154に予め記憶される。例えば、撮像装置110の姿勢は、撮像装置110の光軸中心の姿勢角である。
撮像制御装置150の駆動制御装置151の第1移動制御部1512は、ユーザPの頭部Hの位置及び姿勢の情報を受け取ると、第1関係を用いて、頭部Hの動きに追従して撮像装置110を移動させるための撮像装置110の目標位置及び目標姿勢を決定する。第1移動制御部1512は、記憶部154に記憶される撮像装置110のパラメータを用いて、目標位置及び目標姿勢に最も近似する位置及び姿勢を有する撮像装置110を、複数の撮像装置110の中から決定する。
さらに、第1移動制御部1512は、決定された撮像装置110の位置及び姿勢と目標位置及び目標姿勢との差異を補完するために、当該撮像装置110に実行させるズームアップ率又はズームバック率を決定する。例えば、決定された撮像装置110の指向方向で、当該撮像装置110の位置が目標位置よりも前方に位置する場合、第1移動制御部1512は、当該撮像装置110にズームバック撮像させるためのズームバック率を決定する。上記指向方向で、当該撮像装置110の位置が目標位置よりも後方に位置する場合、第1移動制御部1512は、当該撮像装置110にズームアップ撮像させるためのズームアップ率を決定する。第1移動制御部1512は、決定された撮像装置110に、決定されたズームアップ率又はズームバック率で撮像を実行させる指令を撮像制御部1511に出力する。撮像制御部1511は、指令に従って、当該撮像装置110に撮像させる。第1移動制御部1512は、変動装置の一例である。
撮像制御装置150は、ユーザPの頭部Hの動きに追従して、撮像を実行させる撮像装置110を決定し、当該撮像装置110に撮像させることで、ユーザの頭部の動きに追従して撮像位置及び撮像方向が変動する画像を表示装置140に表示させることができる。また、変形例4の構成を、変形例1から3に適用してもよい。
(その他の実施の形態)
以上、本開示の例示的な実施の形態及び変形例について説明したが、本開示は、上記例示的な実施の形態及び変形例に限定されない。すなわち、本開示の範囲内で種々の変形及び改良が可能である。例えば、各種変形を例示的な実施の形態及び変形例に施したもの、及び、異なる例示的な実施の形態及び変形例における構成要素を組み合わせて構築される形態も、本開示の範囲内に含まれる。
例えば、例示的な実施の形態及び変形例において、動き検出装置130は、ユーザPの頭部Hから離れた位置から頭部Hの位置及び姿勢を検出するセンサとして、赤外線センサ131及び赤外線マーカ132を備えるが、これに限定されず、頭部Hの動きを検出可能ないかなる構成を備えてもよい。
例えば、動き検出装置130は、頭部Hに装着される加速度センサ及び角速度センサを備え、頭部Hの6軸方向の加速度及び角速度を検出してもよい。この場合、撮像制御装置150は、加速度センサ及び角速度センサから検出結果を有線通信又は無線通信を介して受信するように構成されてもよい。撮像制御装置150は、加速度及び角速度の検出結果を用いて頭部Hの位置及び姿勢を検出してもよい。
又は、動き検出装置130は、頭部Hから離れた位置に配置された3次元カメラを備え、頭部Hの3次元画像を撮像してもよい。3次元画像の各画素の画素値は、当該画素に映し出される被写体までの距離値を示す。この場合、撮像制御装置150は、頭部Hのテンプレートを用いたパターンマッチング手法等の画像処理により、3次元画像に映し出される頭部Hの像及び頭部Hの姿勢を検出し、3次元画像の各画素の画素値から頭部Hの位置を検出してもよい。さらに、動き検出装置130は、互いに異なる位置及び向きで配置された複数の3次元カメラを備えてもよい。撮像制御装置150は、各3次元カメラの3次元画像を処理することで、頭部Hの3次元モデルを生成してもよい。撮像制御装置150は、頭部Hの3次元モデルを用いて頭部Hの位置及び姿勢を検出してもよい。
又は、動き検出装置130は、磁場発生装置と、頭部Hに装着される磁気センサとを備え、磁気センサの位置及び姿勢を検出してもよい。この場合、撮像制御装置150は、磁気センサから検出結果を有線通信又は無線通信を介して受信するように構成されてもよい。撮像制御装置150は、磁気センサの位置及び姿勢の検出結果を用いて頭部Hの位置及び姿勢を検出してもよい。
また、本開示の技術の各態様例は、以下のように挙げられる。本開示の一態様に係る撮像システムは、撮像装置と、ユーザの頭部の動きを検出する検出装置と、前記検出装置によって検出される前記頭部の動きに追従して前記撮像装置の位置及び向きを変動させる変動装置と、前記撮像装置によって撮像された画像を前記ユーザに表示し、前記頭部の動きに追従して、前記画像を表示する位置と前記画像を表示する向きとのうちの少なくとも一方を変える表示装置とを備える。
上記態様によると、撮像システムは、頭部の動きに追従して撮像装置の位置及び向きを変動させることができる。さらに、撮像システムは、表示装置において、当該頭部の動きに追従して、撮像装置によって撮像された画像を表示する位置、当該画像を表示する向き、又は、当該画像を表示する位置及び向きの両方を変えることができる。よって、ユーザは、頭部の動きに追従する位置及び向きで撮像された画像を、当該画像が頭部の動きに対応する位置、向き、又は、位置及び向きで表示される状態で、容易に且つ確実に視ることができる。従って、撮像システムは、撮像装置と撮像装置によって撮像された画像の表示面とを頭部の動きに追従させることができる。
本開示の一態様に係る撮像システムにおいて、前記変動装置は、前記撮像装置を搭載し、前記撮像装置を移動させることで前記撮像装置の位置及び向きを変動させてもよい。
上記態様によると、撮像装置は、頭部の動きに追従する位置及び向きに移動されることが可能である。よって、撮像装置は、頭部の動きにより忠実に追従する位置及び向きからの画像を撮像することができる。さらに、撮像装置は、頭部の動きに追従して連続的に変化する画像を撮像することができる。
本開示の一態様に係る撮像システムにおいて、前記変動装置は、前記撮像装置を搭載し、前記変動装置自体が移動することで前記撮像装置の位置及び向きを変動させてもよい。
上記態様によると、変動装置自体が移動するため、変動装置は、撮像装置の位置及び向きの変動範囲を大きくすることができる。ユーザは、頭部の動きにより広範囲の位置及び向きからの画像を撮像装置に撮像させ、視認することができる。
本開示の一態様に係る撮像システムは、異なる位置及び向きで配置された複数の前記撮像装置を備え、前記変動装置は、前記表示装置において画像を表示させる前記撮像装置を切り替えることで、前記撮像装置の位置及び向きを変動させてもよい。
上記態様によると、変動装置は、撮像された画像を表示する撮像装置を切り替えることで、切り替え後の撮像装置に、頭部の動きに追従した位置及び向きから画像を撮像させ表示装置に表示させることができる。撮像装置を切り替えることで、画像を撮像した撮像装置の位置及び向きの変更が可能であるため、素早い頭部の動きに追従した位置及び向きからの画像の撮像が可能である。
本開示の一態様に係る撮像システムにおいて、前記検出装置は、前記頭部から離れた位置から前記頭部の位置及び姿勢を検出するセンサを含んでもよい。
上記態様によると、検出装置は、頭部と非接触で頭部の位置及び姿勢を検出することができる。よって、ユーザは、検出装置による制約を受けずに頭部を動かすことができる。
本開示の一態様に係る撮像システムにおいて、前記検出装置は、少なくとも1つの赤外線センサと、少なくとも1つの赤外線マーカと、処理装置とを含み、前記少なくとも1つの赤外線センサと前記少なくとも1つの赤外線マーカとうちのの一方が前記頭部に配置され、前記少なくとも1つの赤外線センサと前記少なくとも1つの赤外線マーカとのうちの他方が前記頭部から離れた位置に配置され、前記処理装置は、前記赤外線センサが前記赤外線マーカからの赤外光を検出する結果を処理して前記頭部の位置及び姿勢を検出してもよい。
上記態様によると、検出装置は、赤外線センサ及び赤外線マーカを用いることで、頭部の位置及び姿勢を簡易な処理で高精度に検出することができる。さらに、ユーザは、検出装置による制約を受けずに頭部を動かすことができる。
本開示の一態様に係る撮像システムにおいて、前記表示装置は、前記頭部に取り付けられるヘッドマウントディスプレイであり、前記表示装置は、前記頭部と共に移動することで前記頭部の動きに追従して前記画像を表示する位置及び向きを変えてもよい。
上記態様によると、ヘッドマウントディスプレイの表示面は、頭部と共に移動し、当該表示面の位置及び向きが頭部の動きに追従する。よって、表示面の位置及び向きを頭部の動きに追従させるための構成が簡易になる。
本開示の一態様に係る撮像システムにおいて、前記表示装置は、鉛直方向で前記ユーザの周囲の少なくとも一部を囲むように配置され、前記表示装置は、前記頭部の動きに追従して、前記撮像装置によって撮像された画像の基準点を前記表示装置の表示面上で移動させることで、前記画像を表示する位置及び向きを変えてもよい。
上記態様によると、撮像システムは、頭部の上下方向の動きに追従して、表示装置の表示面上で鉛直方向に、撮像装置によって撮像された画像の基準点を移動させる。当該画像の基準点の位置及び基準点が存在する方向は、頭部の位置及び向きに対応することができる。よって、ユーザは、当該画像を容易に且つ確実に視ることができる。
本開示の一態様に係る撮像システムにおいて、前記表示装置は、水平方向で前記ユーザの周囲の少なくとも一部を囲むように配置され、前記表示装置は、前記頭部の動きに追従して、前記撮像装置によって撮像された画像の基準点を前記表示装置の表示面上で移動させることで、前記画像を表示する位置及び向きを変えてもよい。
上記態様によると、撮像システムは、頭部の左右方向の動きに追従して、表示装置の表示面上で水平方向に、撮像装置によって撮像された画像の基準点を移動させる。当該画像の基準点の位置及び基準点が存在する方向は、頭部の位置及び向きに対応することができる。よって、ユーザは、当該画像を容易に且つ確実に視ることができる。
本開示の一態様に係る撮像システムにおいて、前記表示装置は、向きが異なるように配置された複数の表示面を有し、前記表示装置は、前記頭部の動きに追従して、前記撮像装置によって撮像された画像の基準点を前記複数の表示面上で移動させることで、前記画像を表示する位置及び向きを変えてもよい。
上記態様によると、表示装置の複数の表示面はユーザの周囲の少なくとも一部を囲むことができる。このような複数の表示面上において、撮像装置によって撮像された画像の基準点の位置及び基準点が存在する方向は、頭部の位置及び向きに対応することができる。また、複数の表示面はそれぞれ、例えば平面状であってもよい。例えば、複数の表示面は、複数の平面ディスプレイの表示面であってもよい。これにより、表示装置の低コスト化が可能になる。
本開示の一態様に係る撮像システムにおいて、前記表示装置は、前記ユーザの周囲の少なくとも一部を囲むような、屈曲と湾曲とのうちの少なくとも一方を含む表示面を有してもよい。
上記態様によると、表示装置は、ユーザの周囲の少なくとも一部を囲むように当該周囲に沿って延びる表示面を有することができる。これにより、表示装置は、ユーザに連続的な画像を提示することができる。例えば、1つの表示装置の表示面がユーザの周囲の少なくとも一部を囲むように構成されてもよい。
本開示の一態様に係る撮像システムにおいて、前記表示装置は、前記頭部の動きに追従して、前記表示装置の表示面の位置と前記表示面の向きとのうちの少なくとも一方を移動させる駆動装置を備えてもよい。
上記態様によると、撮像システムは、頭部の動きに追従して、表示装置の表示面の位置、当該表示面の向き、又は、当該表示面の位置及び向きの両方を移動させることができる。これにより、撮像システムは、頭部が動いた場合であっても、頭部に対する表示面の位置及び向きを保持することができる。よって、ユーザは、表示面を容易に視認することができる。
本開示の一態様に係るロボットシステムは、本開示の一態様に係る撮像システムと、対象物に対して作業を行うロボットとを備え、前記撮像装置は、前記対象物と前記ロボットとのうちの少なくとも一方を撮像可能である位置に配置される。上記態様によると、本開示の一態様に係る撮像システムと同様の効果が得られる。
また、上記で用いた序数、数量等の数字は、全て本開示の技術を具体的に説明するために例示するものであり、本開示は例示された数字に制限されない。また、構成要素間の接続関係は、本開示の技術を具体的に説明するために例示するものであり、本開示の機能を実現する接続関係はこれに限定されない。
本開示は、その本質的な特徴の精神から逸脱することなく、様々なかたちで実施され得るように、本開示の範囲は、明細書の記載よりも添付の請求項によって定義されるため、例示的な実施の形態及び変形例は、例示的なものであって限定的なものではない。請求項及びその範囲内にあるすべての変更、又は、請求項及びその範囲の均等物は、請求項によって包含されることが意図されている。