(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024042795
(43)【公開日】2024-03-29
(54)【発明の名称】情報処理システム及びプログラム
(51)【国際特許分類】
G06T 19/00 20110101AFI20240322BHJP
【FI】
G06T19/00 A
【審査請求】未請求
【請求項の数】8
【出願形態】OL
(21)【出願番号】P 2022147641
(22)【出願日】2022-09-16
(71)【出願人】
【識別番号】000005496
【氏名又は名称】富士フイルムビジネスイノベーション株式会社
(74)【代理人】
【識別番号】100104880
【弁理士】
【氏名又は名称】古部 次郎
(74)【代理人】
【識別番号】100118108
【弁理士】
【氏名又は名称】久保 洋之
(72)【発明者】
【氏名】森川 尚
(72)【発明者】
【氏名】飯田 靖
(72)【発明者】
【氏名】鈴木 俊彦
【テーマコード(参考)】
5B050
【Fターム(参考)】
5B050BA09
5B050BA12
5B050BA13
5B050CA07
5B050DA01
5B050DA10
5B050EA07
5B050EA12
5B050EA18
5B050EA19
5B050EA27
5B050FA02
5B050FA09
5B050GA08
(57)【要約】
【課題】仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトの位置を変更するモードに切り替え可能にする。
【解決手段】1又は複数のプロセッサを備え、1又は複数のプロセッサは、ユーザの親指の画像を含む撮像画像を取得し、撮像画像が親指の爪の画像又は親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、仮想オブジェクトの位置を変更する特定モードに切り替える、情報処理システム。
【選択図】
図6
【特許請求の範囲】
【請求項1】
1又は複数のプロセッサを備え、
前記1又は複数のプロセッサは、
ユーザの親指の画像を含む撮像画像を取得し、
前記撮像画像が前記親指の爪の画像又は前記親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、当該仮想オブジェクトの位置を変更する特定モードに切り替える、
情報処理システム。
【請求項2】
前記特定モードは、前記仮想オブジェクトを移動させる移動モード又は前記仮想オブジェクトを回転させる回転モードである、請求項1に記載の情報処理システム。
【請求項3】
前記1又は複数のプロセッサは、前記親指の腹の側の領域に対応する前記仮想空間内の領域である特定領域に少なくとも一部が存在する仮想オブジェクトを、位置を変更する対象の仮想オブジェクトとして認識する、請求項1に記載の情報処理システム。
【請求項4】
前記特定領域は、前記親指の腹の面に対応する前記仮想空間内の面に接する領域である、請求項3に記載の情報処理システム。
【請求項5】
前記1又は複数のプロセッサは、前記操作モードが前記特定モードに切り替えられた後、前記撮像画像が前記親指の爪の画像又は前記親指の爪の存在を推定させる画像を含まなくなっても、予め定められた動作が検出されるまでは、当該特定モードを継続する、請求項1に記載の情報処理システム。
【請求項6】
前記予め定められた動作は、位置を変更した前記仮想オブジェクトを解放する動作である、請求項5に記載の情報処理システム。
【請求項7】
1又は複数のプロセッサを備え、
前記1又は複数のプロセッサは、
ユーザの親指の爪が当該ユーザの方向を向いている場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、当該仮想オブジェクトの位置を変更する特定モードに切り替える、
情報処理システム。
【請求項8】
コンピュータに、
ユーザの親指の画像を含む撮像画像を取得する機能と、
前記撮像画像が前記親指の爪の画像又は前記親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、当該仮想オブジェクトの位置を変更する特定モードに切り替える機能と、
を実現させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理システム及びプログラムに関する。
【背景技術】
【0002】
特許文献1には、強度の平滑化を適用した深度画像を用いて手指の凹状領域を検出し、検出された結果に基づいて、利用者のつまみ動作を認識し、重回帰分析による指領域の平面近似を用いた指先の位置および/または手指の姿勢を定義することで利用者の操作を受け付けるジェスチャモデリング装置が記載されている。
特許文献2には、手指の部位の寸法の計測に適切な手指の姿勢を指示するガイド画像を表示し、手指の撮影画像を解析して、撮影画像が手指の部位の寸法を計測するために適切な撮影画像であるかを判定し、適切であると判定された撮影画像を用いて手指の寸法を計測し、寸法の情報を用いて手指の3次元形状のモデルを生成する情報処理装置が記載されている。
特許文献3には、ダイナミックプロジェクションマッピングなど低レイテンシが要求される指先姿勢推定応用に向けて、継続的かつ高解像度な画像計測を実現する高速光軸制御計への利用を意図し、拘束性の低い微小剛体曲面であるネイルマーカーを提案し、実際にネイルプリントを用いて試作したことが記載されている。
【先行技術文献】
【特許文献】
【0003】
【特許文献1】特許第6651388号公報
【特許文献2】特許第6955369号公報
【特許文献3】末石智大、石川正俊、「高速指先姿勢推定に向けたネイルマーカーの試作」第24回日本バーチャルリアリティ学会大会論文集(2019年9月)、5C-07
【発明の概要】
【発明が解決しようとする課題】
【0004】
仮想空間内に配置された仮想オブジェクトに対する操作モードを、仮想オブジェクトの位置を変更するモードに切り替える場合がある。このような場合に、コントローラを用いて切り替えたのでは、余計な操作が必要となり、人間の自然な動作で切り替えることができない。
【0005】
本発明の目的は、仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトの位置を変更するモードに切り替え可能にすることにある。
【課題を解決するための手段】
【0006】
請求項1に記載の発明は、1又は複数のプロセッサを備え、前記1又は複数のプロセッサは、ユーザの親指の画像を含む撮像画像を取得し、前記撮像画像が前記親指の爪の画像又は前記親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、当該仮想オブジェクトの位置を変更する特定モードに切り替える、情報処理システムである。
請求項2に記載の発明は、前記特定モードは、前記仮想オブジェクトを移動させる移動モード又は前記仮想オブジェクトを回転させる回転モードである、請求項1に記載の情報処理システムである。
請求項3に記載の発明は、前記1又は複数のプロセッサは、前記親指の腹の側の領域に対応する前記仮想空間内の領域である特定領域に少なくとも一部が存在する仮想オブジェクトを、位置を変更する対象の仮想オブジェクトとして認識する、請求項1に記載の情報処理システムである。
請求項4に記載の発明は、前記特定領域は、前記親指の腹の面に対応する前記仮想空間内の面に接する領域である、請求項3に記載の情報処理システムである。
請求項5に記載の発明は、前記1又は複数のプロセッサは、前記操作モードが前記特定モードに切り替えられた後、前記撮像画像が前記親指の爪の画像又は前記親指の爪の存在を推定させる画像を含まなくなっても、予め定められた動作が検出されるまでは、当該特定モードを継続する、請求項1に記載の情報処理システムである。
請求項6に記載の発明は、前記予め定められた動作は、位置を変更した前記仮想オブジェクトを解放する動作である、請求項5に記載の情報処理システムである。
請求項7に記載の発明は、1又は複数のプロセッサを備え、前記1又は複数のプロセッサは、ユーザの親指の爪が当該ユーザの方向を向いている場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、当該仮想オブジェクトの位置を変更する特定モードに切り替える、情報処理システムである。
請求項8に記載の発明は、コンピュータに、ユーザの親指の画像を含む撮像画像を取得する機能と、前記撮像画像が前記親指の爪の画像又は前記親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、当該仮想オブジェクトの位置を変更する特定モードに切り替える機能と、を実現させるためのプログラムである。
【発明の効果】
【0007】
請求項1の発明によれば、仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトの位置を変更するモードに切り替え可能になる。
請求項2の発明によれば、仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトを移動させる移動モード又は仮想オブジェクトを回転させる回転モードに切り替え可能になる。
請求項3の発明によれば、位置を変更する対象の仮想オブジェクトとして認識される仮想オブジェクトの基準が明確になる。
請求項4の発明によれば、位置を変更する対象の仮想オブジェクトを掴んだ状態に違和感が生じなくなる。
請求項5の発明によれば、操作モードが特定モードに切り替えられた後に、人間の自然な動作によって特定モードでなくなることを回避することができる。
請求項6の発明によれば、操作モードが特定モードに切り替えられた後に、位置を変更した仮想オブジェクトを解放するまでは、人間の自然な動作によって特定モードでなくなることを回避することができる。
請求項7の発明によれば、仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトの位置を変更するモードに切り替え可能になる。
請求項8の発明によれば、仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトの位置を変更するモードに切り替え可能になる。
【図面の簡単な説明】
【0008】
【
図1】ユーザの親指を撮像した撮像画像を示す図である。
【
図2】接触判定エリアが設定された状態を示す図である。
【
図3】仮想オブジェクトを掴んだ状態の表示画像を示す図である。
【
図4】本実施の形態におけるHMDシステムの全体構成例を示す図である。
【
図5】本実施の形態におけるHMD制御装置のハードウェア構成例を示す図である。
【
図6】本実施の形態におけるHMD制御装置の機能構成例を示すブロック図である。
【
図7】本実施の形態におけるHMD制御装置の動作例を示すフローチャートである。
【発明を実施するための形態】
【0009】
以下、添付図面を参照して、本発明の実施の形態について詳細に説明する。
【0010】
[本実施の形態の概要]
本実施の形態は、ユーザの親指の画像を含む撮像画像を取得し、撮像画像が親指の爪の画像又は親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、仮想オブジェクトの位置を変更する特定モードに切り替える、情報処理システムを提供する。
ここで、仮想空間とは、現実世界の空間である実空間を模してコンピュータ上に仮想的に構築された空間のことをいい、仮想オブジェクトとは、現実世界のオブジェクトである実オブジェクトを模して仮想空間内に配置されたオブジェクトのことをいう。
また、仮想オブジェクトの位置を変更する特定モードには、仮想オブジェクトを移動させる移動モード、仮想オブジェクトを回転させる回転モード等があるが、以下では、仮想オブジェクトを移動させる移動モードを例にとって説明する。
更に、仮想空間はユーザが装着するHMD(Head Mounted Display)によって実現されるものとし、情報処理システムとしてはHMDシステムを例にとって説明する。
【0011】
HMDシステムの具体的な動作について説明する。尚、HMDシステムは、仮想空間内でのユーザの親指の爪の向きを、爪の自然画像又は爪に付されたマーカを用いて検出できるものとする。
【0012】
HMDシステムは、ユーザの親指を撮像した撮像画像において、親指の爪がユーザから見える向きにある場合に、仮想オブジェクトに対する操作モードを、仮想オブジェクトを移動させる移動モードに切り替える。仮想オブジェクトを移動させるには、仮想オブジェクトを掴む必要があるので、仮想オブジェクトを移動させる移動モードは、仮想オブジェクトを掴むモードと言うこともできる。
図1は、このような撮像画像を示す図である。この撮像画像では、ユーザの親指の爪TNがユーザから見える向きにある。これにより、HMDシステムは、仮想オブジェクトに対する操作モードを移動モードに切り替える。
【0013】
また、この場合、HMDシステムは、ユーザの親指の爪TNとは反対側の空間に接触判定エリアCDを設定する。
図2は、このような接触判定エリアCDが設定された状態を示す図である。接触判定エリアCDは、例えば、ユーザの親指の腹に接する球体状の領域とすればよい。
そして、HMDシステムは、接触判定エリアCDに侵入した仮想オブジェクトを、移動させる対象の仮想オブジェクト、つまり、掴む対象の仮想オブジェクトとして選択する。
【0014】
次に、HMDシステムは、ユーザの掴む動作を検知して、この仮想オブジェクトを掴んだ状態の表示画像を表示する。
図3は、このような表示画像を示す図である。ここでは、本を模した仮想オブジェクトBOが接触判定エリアCDに侵入しており、この仮想オブジェクトBOが掴む対象の仮想オブジェクトとして選択され、この仮想オブジェクトBOを掴んだ状態の表示画像が表示されている。
【0015】
[HMDシステムの全体構成]
図4は、本実施の形態におけるHMDシステム1の全体構成例を示す図である。図示するように、HMDシステム1は、HMD10と、HMD制御装置20とが通信線80に接続されることにより構成されている。
【0016】
HMD10は、ユーザが装着することによりユーザに仮想現実(VR)又は拡張現実(AR)による仮想空間を見せることが可能な頭部装着型のディスプレイである。HMD10は、ユーザの目の前の実空間を撮像する撮像装置11と、HMD制御装置20が生成した表示画像を表示する表示装置12とを含む。
HMD制御装置20は、HMD10の撮像装置11が撮像した撮像画像に基づいて、表示装置12が表示する表示画像を生成する。HMD制御装置20としては、例えば、パーソナルコンピュータ等を用いるとよい。
通信線80は、HMD10とHMD制御装置20との間の情報通信に用いられる信号線である。通信線80としては、例えば、USB(Universal Serial Bus)ケーブルを用いるとよい。
【0017】
[HMD制御装置のハードウェア構成]
図5は、本実施の形態におけるHMD制御装置20のハードウェア構成例を示した図である。図示するように、HMD制御装置20は、プロセッサ21と、RAM(Random Access Memory)22と、HDD(Hard Disk Drive)23と、通信インターフェース(I/F)24と、表示デバイス25と、入力デバイス26とを備える。
プロセッサ21は、OS(Operating System)やアプリケーション等の各種ソフトウェアを実行し、後述する各機能を実現する。
RAM22は、プロセッサ21の作業用メモリ等として用いられるメモリである。
HDD23は、各種ソフトウェアに対する入力データや各種ソフトウェアからの出力データ等を記憶する例えば磁気ディスク装置である。
通信I/F24は、通信線80を介してHMD10との間で各種情報の送受信を行う。
表示デバイス25は、各種情報を表示する例えばディスプレイである。
入力デバイス26は、ユーザが情報を入力するために用いる例えばキーボードやマウスである。
【0018】
[HMD制御装置の機能構成]
図6は、本実施の形態におけるHMD制御装置20の機能構成例を示すブロック図である。図示するように、HMD制御装置20は、撮像画像取得部31と、画像判定部32と、モード切替部33と、モード記憶部34と、エリア設定部35と、オブジェクト選択部36と、ジェスチャ検出部37と、表示画像生成部38とを備える。
【0019】
撮像画像取得部31は、HMD10の撮像装置11が撮像した撮像画像を取得する。ユーザは、仮想オブジェクトを操作する場合、撮像装置11による撮像範囲内に手を移動させる。従って、撮像画像は、ユーザの親指の画像を含むことになる。本実施の形態では、ユーザの親指の画像を含む撮像画像を取得することの一例として、撮像画像取得部31の処理を行っている。
【0020】
画像判定部32は、撮像画像取得部31が取得した撮像画像に基づいて、ユーザの親指の爪がユーザから見える向きを向いているか否かを判定する。ここでは、ユーザが装着するHMD10の撮像装置11がユーザの親指を撮像しているので、画像判定部32は、撮像画像取得部31が取得した撮像画像がユーザの親指の爪の画像を含むか否かを判定する。
【0021】
具体的には、画像判定部32は、まず、撮像画像から手の輪郭を検出し、その輪郭に囲まれた領域を手の画像として抽出する。特に、画像判定部32は、撮像画像が親指の爪の画像を含むか否かを判定することが最終目的なので、撮像画像から手の甲側の画像を抽出する。例えば、画像判定部32は、手の甲側及び手のひら側の肌の色の明暗の違いに基づいて、手の甲側の画像を抽出するとよい。また、画像判定部32は、手の甲側及び手のひら側の皺又は毛の特徴に基づいて、手の甲側の画像を抽出してもよい。更に、画像判定部32は、爪を検出することにより、手の甲側の画像を抽出してもよい。
次に、画像判定部32は、抽出した手の甲側の画像から爪の画像を抽出する。例えば、画像判定部32は、撮像画像がモノクロであれば、手の画像における指先の明るい領域を爪の画像として抽出すればよく、撮像画像がカラーであれば、手の画像における指先の爪の色の領域を爪の画像として抽出すればよい。尚、この爪の画像の抽出方法は、上述した手の甲側の画像の抽出における爪の検出においても用いてよい。
次に、画像判定部32は、抽出した爪の画像から親指の爪の画像を抽出する。抽出した爪の画像がどの指の爪の画像か分からないため、画像判定部32は、例えば、手の画像から手の三次元形状を算出し、三次元形状を表す手指モデルを構築し、手指モデルを用いて、各爪の画像がどの指の爪の画像であるかを判別するとよい。
次に、画像判定部32は、抽出した親指の爪の画像から親指の爪の向きを推定する。例えば、画像判定部32は、親指の爪を正面から見た場合の爪の面積に対する、観測された親指の爪の面積から、親指の爪の向きを推定するとよい。
【0022】
或いは、画像判定部32は、爪に付されたマーカを用いてもよい。具体的には、マーカの表面にパターンを印字し、画像判定部32は、爪を検出することによる手の甲側の画像の抽出、爪の画像の抽出、親指の爪の画像の抽出、親指の爪の向きの推定において、このパターンを用いるとよい。
【0023】
ところで、親指の爪は仮想オブジェクトを掴んで裏を見ようとした場合に隠れる場合がある。そこで、画像判定部32は、撮像画像取得部31が取得した撮像画像が、ユーザの親指の爪の存在を推定させる画像を含むか否かを判定してもよい。ここで、ユーザの親指の爪の存在を推定させる画像とは、例えば、親指の付け根から第1関節までの部位の画像である。
【0024】
加えて、画像判定部32は、ユーザの親指の爪の画像又はユーザの親指の爪の存在を推定させる画像を教師学習データとして人工知能(AI)に機械学習させることにより、撮像画像がこれらの画像を含む否かを判定するようにしてもよい。
【0025】
モード切替部33は、撮像画像がユーザの親指の爪の画像を含むと画像判定部32が判定した場合に、仮想オブジェクトに対する操作モードを、仮想空間内に配置された仮想オブジェクトを移動させる移動モードに切り替える。例えば、モード切替部33は、撮像画像がユーザの親指の爪の画像を、ユーザの親指の爪がユーザから見える向きを向いた状態で含むと画像判定部32が判定した場合に、仮想オブジェクトに対する操作モードを移動モードに切り替える。或いは、モード切替部33は、撮像画像がユーザの親指の爪の存在を推定させる画像を含むと画像判定部32が判定した場合にも、仮想空間内に配置された仮想オブジェクトに対する操作モードを、仮想オブジェクトを移動させる移動モードに切り替えてよい。本実施の形態では、撮像画像が親指の爪の画像又は親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、仮想オブジェクトの位置を変更する特定モードに切り替えることの一例として、モード切替部33の処理を行っている。また、本実施の形態では、ユーザの親指の爪がユーザの方向を向いている場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、仮想オブジェクトの位置を変更する特定モードに切り替えることの一例として、モード切替部33の処理を行っている。
【0026】
尚、モード切替部33は、仮想オブジェクトに対する操作モードを移動モードに切り替えた後、撮像画像がユーザの親指の爪の画像又はユーザの親指の爪の存在を推定させる画像を一時的に含まなくなったとしても、移動モードを維持してよい。そして、ジェスチャ検出部37が予め定められたジェスチャを検出した場合に、モード切替部33は、移動モードを終了させることが好ましい。ここで、予め定められたジェスチャには、これに限らないが、例えば、ユーザが掴んだ仮想オブジェクトが解放するジェスチャがある。この場合、モード切替部33が行う処理は、操作モードが特定モードに切り替えられた後、撮像画像が親指の爪の画像又は親指の爪の存在を推定させる画像を含まなくなっても、予め定められた動作が検出されるまでは、特定モードを継続することの一例である。
【0027】
モード記憶部34は、仮想空間に配置された仮想オブジェクトに対する操作モードを記憶する。操作モードには、仮想オブジェクトを選択する選択モード、仮想オブジェクトを移動させる移動モード等がある。例えば、モード切替部33が操作モードを移動モードに切り替えると、モード記憶部34には、切り替え後の操作モードである移動モードが記憶される。また、モード切替部33が移動モードを終了させると、モード記憶部34に記憶された移動モードは削除される。
【0028】
エリア設定部35は、撮像画像がユーザの親指の爪の画像又はユーザの親指の爪の存在を推定させる画像を含むと画像判定部32が判定した場合に、親指の爪とは反対側の仮想空間内に接触判定エリアを設定する。接触判定エリアは、例えば、ユーザの親指の腹に接する球体の領域とすればよい。この場合、接触判定エリアは、例えば、親指の腹の中央から予め定められた距離にある点を中心とし、その予め定められた距離を半径として、規定されるとよい。本実施の形態では、親指の腹の側の領域に対応する仮想空間内の領域である特定領域の一例として、接触判定エリアを用いている。また、本実施の形態では、親指の腹の面に対応する仮想空間内の面に接する領域である特定領域の一例として、接触判定エリアを用いている。
【0029】
オブジェクト選択部36は、エリア設定部35が設定した接触判定エリアに仮想オブジェクトが侵入したか否かを判定する。例えば、接触判定エリアが上述した球体の領域であるとすると、オブジェクト選択部36は、その球体の中心から仮想オブジェクト上の何れかの点までの距離がその球体の半径よりも短くなった場合に、接触判定エリアに仮想オブジェクトが侵入したと判定するとよい。そして、オブジェクト選択部36は、接触判定エリアに仮想オブジェクトが侵入したと判定すると、その侵入した仮想オブジェクトを、移動させる仮想オブジェクトとして選択する。本実施の形態では、特定領域に少なくとも一部が存在する仮想オブジェクトを、位置を変更する対象の仮想オブジェクトとして認識することの一例として、オブジェクト選択部36の処理を行っている。
【0030】
ジェスチャ検出部37は、モード記憶部34に記憶された操作モードに応じて、ユーザのジェスチャを検出する。
例えば、モード記憶部34に操作モードとして選択モードが記憶されていれば、ジェスチャ検出部37は、仮想オブジェクトを選択するためのジェスチャを検出する。
また、モード記憶部34に操作モードとして移動モードが記憶されていれば、ジェスチャ検出部37は、仮想オブジェクトを移動させるためのジェスチャを検出する。特に、ジェスチャ検出部37は、ユーザの掴むジェスチャを検出する。例えば、ジェスチャ検出部37は、親指の腹と人差し指の腹との間に存在していた隙間がなくなった場合に、ユーザの掴むジェスチャを検出するとよい。或いは、ジェスチャ検出部37は、親指と人差し指とが作るサークルが認識できた場合に、ユーザの掴むジェスチャを検出してもよい。また、ジェスチャ検出部37は、ユーザが掴んだ仮想オブジェクトを解放するジェスチャも検出する。
【0031】
表示画像生成部38は、撮像画像取得部31が取得した撮像画像と、オブジェクト選択部36が選択した仮想オブジェクトの画像とを合成することにより、HMD10の表示装置12に表示する表示画像を生成する。特に、表示画像生成部38は、ジェスチャ検出部37がユーザの掴むジェスチャを検出した場合に、オブジェクト選択部36が選択した仮想オブジェクトを掴んだ状態の表示画像を生成する。また、表示画像生成部38は、ジェスチャ検出部37がユーザの解放するジェスチャを検出した場合に、掴んでいた仮想オブジェクトを解放した状態の表示画像を生成する。そして、表示画像生成部38は、この表示画像をHMD10の表示装置12に出力する。
【0032】
[HMD制御装置の動作例]
図7は、本実施の形態におけるHMD制御装置20の動作例を示すフローチャートである。尚、ここでは、撮像画像がユーザの親指の爪の画像を含むか否かを判定することのみ考え、撮像画像がユーザの親指の爪の存在を推定させる画像を含むか否かを判定することは考えないものとする。
【0033】
HMD制御装置20では、まず、撮像画像取得部31が、HMD10の撮像装置11から撮像画像を取得する(ステップ301)。
【0034】
次に、画像判定部32が、ステップ301で取得された撮像画像において、親指の爪がユーザから見える向きにあるか否かを判定する(ステップ302)。
ステップ302で親指の爪がユーザから見える向きにないと判定された場合、HMD制御装置20は、処理をステップ301へ戻す。
ステップ302で親指の爪がユーザから見える向きにあると判定された場合、モード切替部33が、仮想オブジェクトに対する操作モードを移動モードに切り替える(ステップ303)。これにより、モード記憶部34には、操作モードが移動モードに切り替えられた旨の情報が記憶される。そして、エリア設定部35が、親指の爪とは反対側の仮想空間内に接触判定エリアを設定する(ステップ304)。
【0035】
次に、オブジェクト選択部36が、ステップ304で設定された接触判定エリアに仮想オブジェクトが侵入したか否かを判定する(ステップ305)。
ステップ305で接触判定エリアに仮想オブジェクトが侵入していないと判定された場合、HMD制御装置20は、処理をステップ301へ戻す。
ステップ305で接触判定エリアに仮想オブジェクトが侵入したと判定された場合、オブジェクト選択部36は、その侵入した仮想オブジェクトを、移動させる仮想オブジェクトとして選択する(ステップ306)。
【0036】
次に、ジェスチャ検出部37が、掴む動作を検出したか否かを判定する(ステップ307)。
ステップ307で掴む動作を検出していないと判定された場合、HMD制御装置20は、処理をステップ301へ戻す。
ステップ307で掴む動作を検出したと判定された場合、表示画像生成部38が、ステップ306で選択された仮想オブジェクトを掴んだ状態を表す表示画像を生成する(ステップ308)。これにより、表示画像は、HMD10の表示装置12に出力される。
【0037】
次に、ジェスチャ検出部37は、掴んだ仮想オブジェクトを解放する動作を検出したか否かを判定する(ステップ309)。
ステップ309で解放する動作を検出していないと判定された場合、HMD制御装置20は、処理をステップ301へ戻す。
ステップ309で解放する動作を検出したと判定された場合、表示画像生成部38が、ステップ308で生成された表示画像で掴まれていた仮想オブジェクトを解放した状態を表す表示画像を生成する(ステップ310)。そして、モード切替部33が、ステップ303で切り替えられていた移動モードを終了させる(ステップ311)。これにより、モード記憶部34に記憶されていた、操作モードが移動モードに切り替えられた旨の情報が削除される。
【0038】
[変形例]
上記では、HMD10とHMD制御装置20とからなるHMDシステム1が本実施の形態を実現することとしたが、これには限らない。例えば、HMD10が本実施の形態を実現することとしてもよい。この場合、撮像画像取得部31、画像判定部32、モード切替部33、モード記憶部34、エリア設定部35、オブジェクト選択部36、ジェスチャ検出部37、表示画像生成部38は、全てHMD10内に設けられることになる。
【0039】
上記では、HMD10の撮像装置11がユーザの親指を撮像することとしたので、HMD制御装置20は、親指の爪がユーザから見える向きを向いているか否かを判定するために、撮像画像が親指の爪の画像を含むか否かを判定することとしたが、これには限らない。例えば、HMD10を用いず、LEAP MOTION社のLEAP MOTION(登録商標)を用いる場合を考える。このようにユーザ側以外の場所に設置された撮像装置からユーザの親指を撮像する場合は、親指の爪がユーザから見える向きを向いているときのその撮像装置からの見え方に基づいて、親指の爪がユーザから見える向きを向いているか否かを判定するとよい。尚、この場合は、仮想オブジェクトも、HMD10の表示装置12ではなく、例えば、ホログラムや霧を用いて空中に表示するようにしてよい。
【0040】
[プロセッサ]
本実施の形態において、プロセッサとは広義的なプロセッサを指し、汎用的なプロセッサ(例えばCPU:Central Processing Unit等)や、専用のプロセッサ(例えばGPU:Graphics Processing Unit、ASIC:Application Specific Integrated Circuit、FPGA:Field Programmable Gate Array、プログラマブル論理デバイス等)を含むものである。
また、本実施の形態におけるプロセッサの動作は、1つのプロセッサによって成すのみでなく、物理的に離れた位置に存在する複数のプロセッサが協働して成すものであってもよい。また、プロセッサの各動作の順序は、本実施の形態において記載した順序のみに限定されるものではなく、変更してもよい。
【0041】
[プログラム]
本実施の形態におけるHMD制御装置20が行う処理は、例えば、アプリケーションソフトウェア等のプログラムとして用意される。
この場合、本実施の形態を実現するプログラムは、コンピュータに、ユーザの親指の画像を含む撮像画像を取得する機能と、撮像画像が親指の爪の画像又は親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、仮想オブジェクトの位置を変更する特定モードに切り替える機能と、を実現させるためのプログラムとして捉えられる。
尚、本実施の形態を実現するプログラムは、通信手段により提供することはもちろん、CD-ROM等の記録媒体に格納して提供することも可能である。
【0042】
[付記]
(((1)))
1又は複数のプロセッサを備え、
前記1又は複数のプロセッサは、
ユーザの親指の画像を含む撮像画像を取得し、
前記撮像画像が前記親指の爪の画像又は前記親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、当該仮想オブジェクトの位置を変更する特定モードに切り替える、
情報処理システム。
(((2)))
前記特定モードは、前記仮想オブジェクトを移動させる移動モード又は前記仮想オブジェクトを回転させる回転モードである、(((1)))に記載の情報処理システム。
(((3)))
前記1又は複数のプロセッサは、前記親指の腹の側の領域に対応する前記仮想空間内の領域である特定領域に少なくとも一部が存在する仮想オブジェクトを、位置を変更する対象の仮想オブジェクトとして認識する、(((1)))又は(((2)))に記載の情報処理システム。
(((4)))
前記特定領域は、前記親指の腹の面に対応する前記仮想空間内の面に接する領域である、(((3)))に記載の情報処理システム。
(((5)))
前記1又は複数のプロセッサは、前記操作モードが前記特定モードに切り替えられた後、前記撮像画像が前記親指の爪の画像又は前記親指の爪の存在を推定させる画像を含まなくなっても、予め定められた動作が検出されるまでは、当該特定モードを継続する、(((1)))乃至(((4)))の何れか1つに記載の情報処理システム。
(((6)))
前記予め定められた動作は、位置を変更した前記仮想オブジェクトを解放する動作である、(((5)))に記載の情報処理システム。
(((7)))
1又は複数のプロセッサを備え、
前記1又は複数のプロセッサは、
ユーザの親指の爪が当該ユーザの方向を向いている場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、当該仮想オブジェクトの位置を変更する特定モードに切り替える、
情報処理システム。
(((8)))
コンピュータに、
ユーザの親指の画像を含む撮像画像を取得する機能と、
前記撮像画像が前記親指の爪の画像又は前記親指の爪の存在を推定させる画像を含む場合に、仮想空間内に配置された仮想オブジェクトに対する操作モードを、当該仮想オブジェクトの位置を変更する特定モードに切り替える機能と、
を実現させるためのプログラム。
【0043】
(((1)))の発明によれば、仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトの位置を変更するモードに切り替え可能になる。
(((2)))の発明によれば、仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトを移動させる移動モード又は仮想オブジェクトを回転させる回転モードに切り替え可能になる。
(((3)))の発明によれば、位置を変更する対象の仮想オブジェクトとして認識される仮想オブジェクトの基準が明確になる。
(((4)))の発明によれば、位置を変更する対象の仮想オブジェクトを掴んだ状態に違和感が生じなくなる。
(((5)))の発明によれば、操作モードが特定モードに切り替えられた後に、人間の自然な動作によって特定モードでなくなることを回避することができる。
(((6)))の発明によれば、操作モードが特定モードに切り替えられた後に、位置を変更した仮想オブジェクトを解放するまでは、人間の自然な動作によって特定モードでなくなることを回避することができる。
(((7)))の発明によれば、仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトの位置を変更するモードに切り替え可能になる。
(((8)))の発明によれば、仮想空間内に配置された仮想オブジェクトに対する操作モードを、人間の自然な動作で、仮想オブジェクトの位置を変更するモードに切り替え可能になる。
【符号の説明】
【0044】
1…HMDシステム、10…HMD、20…HMD制御装置、31…撮像画像取得部、32…画像判定部、33…モード切替部、34…モード記憶部、35…エリア設定部、36…オブジェクト選択部、37…ジェスチャ検出部、38…表示画像生成部