JP7589696B2 - 情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システム - Google Patents

情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システム Download PDF

Info

Publication number
JP7589696B2
JP7589696B2 JP2021570663A JP2021570663A JP7589696B2 JP 7589696 B2 JP7589696 B2 JP 7589696B2 JP 2021570663 A JP2021570663 A JP 2021570663A JP 2021570663 A JP2021570663 A JP 2021570663A JP 7589696 B2 JP7589696 B2 JP 7589696B2
Authority
JP
Japan
Prior art keywords
user
hand
unit
information processing
orientation
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.)
Active
Application number
JP2021570663A
Other languages
English (en)
Other versions
JPWO2021145067A1 (ja
Inventor
毅 石川
淳 木村
郁男 山野
真一 河野
壮一郎 稲谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Sony Group Corp
Original Assignee
Sony Corp
Sony Group Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Sony Corp, Sony Group Corp filed Critical Sony Corp
Publication of JPWO2021145067A1 publication Critical patent/JPWO2021145067A1/ja
Application granted granted Critical
Publication of JP7589696B2 publication Critical patent/JP7589696B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating three-dimensional [3D] models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B27/0172Head mounted characterised by optical features
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/012Head tracking input arrangements
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/014Hand-worn input/output arrangements, e.g. data gloves
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating three-dimensional [3D] models or images for computer graphics
    • G06T19/20Editing of three-dimensional [3D] images, e.g. changing shapes or colours, aligning objects or positioning parts
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/60Analysis of geometric attributes
    • G06T7/62Analysis of geometric attributes of area, perimeter, diameter or volume
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V10/00Arrangements for image or video recognition or understanding
    • G06V10/10Image acquisition
    • G06V10/12Details of acquisition arrangements; Constructional details thereof
    • G06V10/14Optical characteristics of the device performing the acquisition or on the illumination arrangements
    • G06V10/143Sensing or illuminating at different wavelengths
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/20Scenes; Scene-specific elements in augmented reality scenes
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/60Type of objects
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/10Human or animal bodies, e.g. vehicle occupants or pedestrians; Body parts, e.g. hands
    • G06V40/107Static hand or arm
    • G06V40/11Hand-related biometrics; Hand pose recognition
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V40/00Recognition of biometric, human-related or animal-related patterns in image or video data
    • G06V40/20Movements or behaviour, e.g. gesture recognition
    • G06V40/28Recognition of hand or arm movements, e.g. recognition of deaf sign language
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0138Head-up displays characterised by optical features comprising image capture systems, e.g. camera
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • G02B2027/0178Eyeglass type
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0179Display position adjusting means not related to the information to be displayed
    • G02B2027/0187Display position adjusting means not related to the information to be displayed slaved to motion of at least a part of the body of the user, e.g. head, eye

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Hardware Design (AREA)
  • Multimedia (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Optics & Photonics (AREA)
  • Architecture (AREA)
  • Geometry (AREA)
  • Psychiatry (AREA)
  • Social Psychology (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)

Description

本明細書で開示する技術(以下、「本開示」とする)は、拡張現実に関する情報を処理する情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システムに関する。
臨場感のある体験を実現する技術として、仮想現実(Virtual Reality:VR)や拡張現実(Augmented Reality:AR)、MR(Mixed Reality)が普及してきている。VRは仮想空間を現実として知覚させる技術である。また、ARは、ユーザを取り巻く現実環境に情報を付加したり、強調又は減衰、削除したりして、ユーザから見た実空間を拡張させる技術である。また、MRは、実空間に対応する仮想の情報を表示して、現実と仮想を交錯させる技術である。ARやMRは、例えばシースルー型のヘッドマウントディスプレイ(以下、「ARグラス」とも呼ぶ)を用いて実現される(例えば、特許文献1を参照のこと)。AR技術によれば、ユーザがARグラス越しに観察する実空間の風景に、デジタル情報を重畳表示したり、特定の実オブジェクトを強調し又は減衰したり、特定の実オブジェクトを削除してあたかも存在しないように見せたりすることができる。
特開2014-93050号公報
本開示の目的は、拡張現実に関する情報を処理する情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システムを提供することにある。
本開示の第1の側面は、
ユーザの身体上の第1の部位の位置姿勢又は形状を取得する取得部と、
前記第1の部位の位置姿勢又は形状に基づいて、表示装置において実空間に表示する仮想オブジェクトを制御する制御部と、
を具備する情報処理装置である。
前記制御部は、前記取得部が取得した前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位がユーザの身体上の第2の部位に対して第1の操作を行ったことを認識すると、前記仮想オブジェクトの実行状態を前記第2の部位に紐付けして格納して、前記表示装置による前記仮想オブジェクトの表示を停止させる。
また、前記制御部は、前記取得部が取得した前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位がユーザの身体上の第2の部位に対して第2の操作を行ったことを認識すると、前記第2の部位に紐付けして格納した実行状態に基づいて前記仮想オブジェクトの表示を復元する。
また、本開示の第2の側面は、
ユーザの身体上の第1の部位の位置姿勢又は形状を取得する取得ステップと、
前記第1の部位の位置姿勢又は形状に基づいて、表示装置において実空間に表示する仮想オブジェクトを制御する制御ステップと、
を有する情報処理方法である。
また、本開示の第3の側面は、
ユーザの身体上の第1の部位の位置姿勢又は形状を取得する取得部、
前記第1の部位の位置姿勢又は形状に基づいて、表示装置において実空間に表示する仮想オブジェクトを制御する制御部、
としてコンピュータが機能するようにコンピュータ可読形式で記述されたコンピュータプログラムである。
本開示の第3の側面に係るコンピュータプログラムは、コンピュータ上で所定の処理を実現するようにコンピュータ可読形式で記述されたコンピュータプログラムを定義したものである。換言すれば、本開示の第3の側面に係るコンピュータプログラムをコンピュータにインストールすることによって、コンピュータ上では協働的作用が発揮され、本開示の第1の側面に係る情報処理装置と同様の作用効果を得ることができる。
また、本開示の第4の側面は、
実空間に仮想オブジェクトを表示する表示装置と、
ユーザの身体上の第1の部位の位置姿勢又は形状を取得する取得部と、
前記第1の部位の位置姿勢又は形状に基づいて仮想オブジェクトの表示を制御する制御部と、
を具備する拡張現実感システムである。
但し、ここで言う「システム」とは、複数の装置(又は特定の機能を実現する機能モジュール)が論理的に集合した物のことを言い、各装置や機能モジュールが単一の筐体内にあるか否かは特に問わない。
本開示によれば、ユーザの手指の位置姿勢に基づいてユーザに表示する仮想オブジェクトの動作を制御する情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システムを提供することができる。
なお、本明細書に記載された効果は、あくまでも例示であり、本開示によりもたらされる効果はこれに限定されるものではない。また、本開示が、上記の効果以外に、さらに付加的な効果を奏する場合もある。
本開示のさらに他の目的、特徴や利点は、後述する実施形態や添付する図面に基づくより詳細な説明によって明らかになるであろう。
図1は、ARシステム100の機能的構成例を示した図である。 図2は、ユーザの頭部にARグラスを装着した様子を示した図である。 図3は、ARシステム300の構成例を示した図である。 図4は、ARシステム400の構成例を示した図である。 図5は、コントローラ400をユーザの手に装着した例を示した図である。 図6は、制御部140が備える機能的構成例を示した図である。 図7は、ARグラスを頭部に装着したユーザの周囲に仮想オブジェクトが配置される様子を示した図である。 図8は、ARグラスがユーザの頭部の動きに追従するように仮想オブジェクトを表示させる仕組みを説明するための図である。 図9は、キャリブレーションによりUI設定可能領域を検出する仕組みを説明するための図である。 図10は、キャリブレーションによりUI設定可能領域を検出する仕組みを説明するための図である。 図11は、ARアプリのUIの格納及び復元動作を示した図である。 図12は、ARアプリのUIの格納及び復元動作を示した図である。 図13は、ARアプリのUIの格納及び復元動作を示した図である。 図14は、ARアプリのUIの格納及び復元動作を示した図である。 図15は、ARアプリを格納及び復元動作する動作手順を示したフローチャートである。 図16は、ユーザの身体上にUI設置可能領域のオーラを表示した例を示した図である。 図17は、ユーザの手元に遠方に配置されたARアプリを操作するための操作UIの仮想オブジェクトを配置した例を示した図である。 図18は、ユーザの手のひらに操作UIの仮想オブジェクトを表示している例を示した図である。 図19は、ユーザの手のひらに操作UIの仮想オブジェクトを表示している例を示した図である。 図20は、ユーザの手の甲にARアプリの機能を割り当てる例を示した図である。 図21は、座標入力を行う操作UIを手のひらに配置した例を示した図である。 図22は、座標入力を行う操作UIを手のひらに配置した例を示した図である。 図23は、座標入力を行う操作UIを手のひらに配置した例を示した図である。 図24は、座標入力を行う操作UIを手のひらに配置した例を示した図である。 図25は、座標入力を行う操作UIを手のひらに配置した例を示した図である。 図26は、座標入力を行う操作UIを手のひらに配置した例を示した図である。
以下、図面を参照しながら本開示の実施形態について詳細に説明する。
WindowsやLinux(登録商標)などのオペレーティングシステム(OS)では、スクリーンに配置しておくと邪魔なアプリケーションのウィンドウを最小化して、例えばスクリーンの下端縁のタスクバーに格納するというユーザインターフェース(UI)が利用されている。複数のアプリケーションを同時に起動している場合、邪魔なアプリケーションのウィンドウを最小化してスクリーンの周辺に退避させることにより、スクリーンが整然とする。
一方、ARグラス上では、例えば動画再生や3Dオブジェクトのビューアなどのアプリケーションが起動すると(以下、ARグラス上で起動するアプリケーションを「ARアプリ」とも呼ぶ)、起動中のARアプリはユーザの視界の中に重畳表示されるが、ARアプリを最小化するUIはなく、ユーザは邪魔になったARアプリを視界から見えなくするにはARアプリを閉じる処理を行うしかない。ARアプリを閉じると、そのARアプリの実行状態を破棄して初期状態に戻ってしまうため、不便である。例えば動画再生のARアプリを一旦閉じて次回起動したときには、コンテンツの再生位置や再生していたコンテンツの情報が破棄されているため、閉じる直前の実行状態を復元するのが容易でない。
また、WindowsやLinux(登録商標)などのOSでは、キーボードやマウス、タッチパネルなどの入力装置を介して起動中のアプリケーションに対する操作が行われる。ARグラスでも、ユーザがARアプリを操作するためのコントローラを用いてもよい。しかしながら、ユーザはARグラス越しに実空間を見渡すことができ、ユーザは歩行や物(実オブジェクトと仮想オブジェクトを含む)の把持など実空間での日常生活を行いながらARグラスを利用することが好ましい。このため、コントローラを把持することなどにより手指が拘束されず、手指が自由に使える状態であることが好ましい。付言すれば、ARアプリの格納や復元、さらには復元した後のARアプリの操作も手指で行えることが好ましい。さらに言えば、ユーザは、手元を見ながらではなく、正面のARアプリの表示位置に視線を向けながら、よそ見することなく、ARアプリの格納や復元の操作を手指で行えることが好ましい。
ARグラスの中には、実空間を観察するために外向きのカメラを搭載したものもある。外向きカメラの撮影画像の画像認識に基づいて、ユーザの手や指の操作やその他のジェスチャを入力することができる。しかしながら、ユーザの頭部位置にある外向きカメラの視野から外れた位置で行われるユーザの手指の操作を入力することはできない。また、ユーザの手が他の物体の陰に隠れるといったオクルージョンが発生すると、外向きカメラで手や指の操作を捕捉することができない。また、外向きカメラの撮影画像の画像認識から、手や指先と物との接触の有無や、物に接触している手指の形状を正確に取得できない場合がある。
そこで、本開示では、ユーザの手指の位置姿勢を検出するセンサ部を用いて手指の形状に関する情報を取得し、取得した手指の形状に基づいてARアプリの格納や復元を行うようにする。
A.システム構成
図1には、本開示を適用したARシステム100の機能的構成例を示している。図示のARシステム100は、ARグラスを装着したユーザの手の位置検出とユーザの手指の形状を検出する第1のセンサ部110と、ARグラスに搭載される第2のセンサ部120と、ARグラスにARアプリなどの仮想オブジェクトを表示する表示部131と、ARシステム100全体の動作を統括的にコントロールする制御部140を備えている。第1のセンサ部110は、ジャイロセンサ111と、加速度センサ112と、方位センサ113を備えている。第2のセンサ部120は、ARグラスに搭載されるが、外向きカメラ121と、内向きカメラ122と、マイク123と、ジャイロセンサ124と、加速度センサ125と、方位センサ126を含んでいる。
また、ARシステム100は、仮想オブジェクトに関わる音声などのオーディオ信号を出力するスピーカー132や、ユーザの手の甲やその他の身体の部位に振動提示によるフィードバックを行う振動提示部133と、ARシステム100が外部と通信を行うための通信部134をさらに備えていてもよい。また、制御部140は、SSD(Solid State Drive)などからなる大規模な記憶部150を装備していてもよい。
ARグラス本体は、一般には眼鏡型又はゴーグル型のデバイスであり、ユーザが頭部に装着して利用され、ユーザの両目又は片目の視野にデジタル情報を重畳表示したり、特定の実オブジェクトを強調し又は減衰したり、特定の実オブジェクトを削除してあたかも存在しないように見せたりすることができる。図2には、ユーザの頭部にARグラスを装着した様子を示している。図示のARグラスは、ユーザの左右の眼の前にそれぞれ左目用の表示部131と右目用の表示部131が配設されている。表示部131は、透明又は半透明で、実空間の風景に仮想オブジェクトを重畳表示したり、特定の実オブジェクトを強調し又は減衰したり、特定の実オブジェクトを削除してあたかも存在しないように見せたりする。左右の表示部131は、例えば独立して表示駆動され、視差画像すなわち仮想オブジェクトを3D表示するようにしてもよい。また、ARグラスのほぼ中央には、ユーザの視線方向に向けられた外向きカメラが配置されている。
ARシステム100は、例えばユーザが頭部に装着するARグラスと、ユーザの手に装着されるコントローラという2つの装置で構成することができる。図3には、ARグラス301とコントローラ302からなるARシステム300の構成例を示している。ARグラス301は、制御部140と、記憶部150と、第2のセンサ部120と、表示部131と、スピーカー132と、通信部134を含んでいる。また、コントローラ302は、第1のセンサ部110と、振動提示部133を含んでいる。
他の構成例として、ARシステム100は、ユーザが頭部に装着するARグラスと、ユーザの手に装着されるコントローラと、スマートフォンやタブレットなどの情報端末という3台の装置で構成される。図4には、ARグラス401とコントローラ402と情報端末403からなるARシステム400の構成例を示している。ARグラス401は、表示部131と、スピーカー132と、第2のセンサ部120を含んでいる。コントローラ402は、第1のセンサ部110と、振動提示部133を含んでいる。また、情報端末403は、制御部140と、記憶部150と、通信部134を含んでいる。
なお、ARシステム100の具体的に装置構成は、図3と図4に限定されるものではない。また、ARシステム100は、図1に示した以外の構成要素をさらに含んでいてもよい。
ARシステム100の各構成要素について説明する。
図3及び図4にも示したように、第1のセンサ部110と振動提示部133は、ユーザの手に装着するコントローラとして構成される。第1のセンサ部110は、ジャイロセンサ111と、加速度センサ112と、方位センサ113を備えている。第1のセンサ部110は、ジャイロセンサと加速度センサと方位センサを備えたIMU(Inertial Measurement Unit)であってもよい。また、振動提示部133は、電磁型や圧電型の振動子をアレイ状に配置して構成される。第1のセンサ部110のセンサ信号は、制御部140に転送される。
図5には、第1のセンサ部110及び振動提示部133からなるコントローラ500をユーザの手に装着した例を示している。図5に示す例では、親指と、人差し指の基節及び中節の3箇所に、IMU501、502、503がそれぞれバンド511、512、513によって取り付けられている。また、振動提示部133は、手の甲に取り付けられている。これによって、親指の姿勢、人差し指の基節及び中節の姿勢(又は、人差し指の第2関節の角度)を計測することができる。振動提示部133は、バンド(図示しない)又は粘着パッドなどで手の甲に固定されていてもよい。
但し、図5は第1のセンサ部110の一例を示すものであり、親指と人差し指の別の場所にさらに他のIMUを取り付けてもよいし、親指と人差し指以外の指にもIMUを取り付けてもよい。また、IMUの各指への固定方法はバンドに限定されない。また、図5は右手に第1のセンサ部110及び振動提示部133を取り付けた例を示しているが、右手ではなく左手に取り付けてもよいし、両手に取り付けてもよい。
また、第1のセンサ部110(図5に示す例では、IMU501、502、503)によるセンサ信号を制御部140に送信するとともに、制御部140から振動提示部133の駆動信号を受信するための有線又は無線の伝送路があるものとする。制御部140は、第1のセンサ部110のセンサ信号に基づいて、手指の位置姿勢を検出することができる。図5に示すように、親指と人差し指の基節及び中節の3箇所にIMU501、502、503が取り付けられている場合には、制御部140は、各IMU501、502、503の検出信号に基づいて、親指と人差し指の開き角度、人差し指の第2関節の角度、親指と人差し指の指先の接触の有無など、手指の位置姿勢(又は、手指の形状)並びに手指のジェスチャを認識することができる。
再び図1を参照して、ARシステム100の各構成要素の説明を続ける。
第2のセンサ部120は、ARグラスに搭載されるが、外向きカメラ121と、内向きカメラ122と、マイク123と、ジャイロセンサ124と、加速度センサ125と、方位センサ126を含んでいる。
外向きカメラ121は、例えばRGBカメラからなり、ARグラスの外側すなわちARグラスを装着したユーザの正面方向を撮影するように設置されている。外向きカメラ121は、ユーザの手指の操作を撮影することができるが、障害物の陰にユーザの手指が隠れてしまった場合、手の甲で指先が隠れている場合、ユーザが身体の後ろに手をまわした場合などには、ユーザの手指の操作を撮影することができない。また、外向きカメラ121は、IR発光部及びIR受光部からなるIRカメラ、TOF(Time Of Flight)カメラのうちいずれか1つをさらに備えていてもよい。外向きカメラ121にIRカメラを用いる場合、手の甲など捕捉の対象となる物体に再帰性反射材を取り付けて、IRカメラは赤外光を発光するとともに再帰性反射材から反射された赤外光を受光する。外向きカメラ121で撮影した画像信号は、制御部140に転送される。
内向きカメラ122は、例えばRGBカメラからなり、ARグラスの内側、具体的にはARグラスを装着したユーザの眼を撮影するように設置されている。内向きカメラ122の撮影画像に基づいて、ユーザの視線方向を検出することができる。内向きカメラ122で撮影した画像信号は、制御部140に転送される。
マイク123は、単一の収音素子あるいは複数の収音素子からなるマイクアレイであってもよい。マイク123は、ARグラスを装着したユーザの音声やユーザの周囲音を収音する。マイク123で収音したオーディオ信号は、制御部140に転送される。
ジャイロセンサ124と、加速度センサ125と、方位センサ126は、IMUで構成されていてもよい。ジャイロセンサ124と、加速度センサ125と、方位センサ126のセンサ信号は、制御部140に転送される。制御部140は、これらのセンサ信号に基づいて、ARグラスを装着したユーザの頭部の位置姿勢を検出することができる。
表示部131は、ARグラスを装着したユーザの両目又は片目の前方に設置される透過型ディスプレイ(メガネレンズなど)で構成され、仮想世界の表示に利用される。具体的には、表示部131は、情報(仮想オブジェクト)を表示したり、現実のオブジェクトを強調又は減衰、削除したりして、ユーザから見た実空間を拡張させる。表示部131は、制御部140からの制御信号に基づいて表示動作を行う。また、表示部131で仮想オブジェクトをシースルー表示する仕組みは特に限定されない。
スピーカー132は、単一の発音素子、又は複数の発音素子のアレイで構成され、例えばARグラスに設置される。スピーカー132からは、例えば表示部131で表示される仮想オブジェクトに関する音声が出力されるが、その他のオーディオ信号を出力するようにしてもよい。
通信部134は、例えばWi-Fi(登録商標)やBluetooth(登録商標)などの無線通信機能を備えている。通信部134は、主に制御部140と外部システム(図示しない)とのデータ交換を実現するための通信動作を行う。
制御部140は、ARグラス内に設置されるか、又はARグラスとは分離した装置(スマートフォンなど)内に、記憶部150やバッテリなどの駆動用電源とともに配置される。制御部140は、記憶部150から読み出した各種プログラムを実行してさまざまな処理を実施する。
図6には、制御部140が備える機能的構成例を模式的に示している。図示の例では、制御部140は、アプリケーション実行部601と、頭部位置姿勢検出部602と、出力制御部603と、手指位置姿勢検出部604と、手指ジェスチャ検出部605と、UI設置可能領域検出部606を備えている。これらの機能モジュールは、制御部140が記憶部150から読み出した各種プログラムを実行することにより実現される。但し、図6には本開示を実現するための必要最低限の機能モジュールのみを図示しており、制御部140はさらに他の機能モジュールを備えていてもよい。
アプリケーション実行部601は、OSが提供する実行環境下で、ARアプリを含むアプリケーションプログラムを実行する。アプリケーション実行部601は、複数のアプリケーションプログラムを同時に並行して実行してもよい。ARアプリは、例えば動画再生や3Dオブジェクトのビューアなどのアプリケーションであるが、ARグラス(図2を参照のこと)を頭部に装着したユーザの視界の中に仮想オブジェクトを重畳表示したり、特定の実オブジェクトを強調し又は減衰したり、特定の実オブジェクトを削除してあたかも存在しないように見せたりする。アプリケーション実行部601は、ARアプリ(仮想オブジェクト)の表示動作も制御する。ARアプリが生成する仮想オブジェクトは、ユーザの全周囲にわたって配置される。図7には、ARグラスを頭部に装着したユーザの周囲700に複数の仮想オブジェクト701、702、703、…が配置される様子を模式的に示している。アプリケーション実行部601は、第2のセンサ部120からのセンサ情報に基づいて推定されるユーザの頭部の位置又は身体の重心位置を基準にして、ユーザの周囲に各仮想オブジェクト701、702、703、…を配置する。
頭部位置姿勢検出部602は、ARグラスに搭載される第2のセンサ部120に含まれるジャイロセンサ124と、加速度センサ125と、方位センサ126の各センサ信号に基づいて、ユーザの頭部の位置姿勢を検出し、さらにはユーザの視線方向又は視野範囲を認識する。
出力制御部603は、ARアプリなどのアプリケーションプログラムの実行結果に基づいて、表示部131、スピーカー132、及び振動提示部133の出力を制御する。例えば、出力制御部603は、頭部位置姿勢検出部602の検出結果に基づいてユーザの視野範囲を特定して、視野範囲に配置された仮想オブジェクトがARグラス越しにユーザが観察できるように、すなわちユーザの頭部の動きに追従するように表示部131による仮想オブジェクトの表示動作を制御する。
ARグラスがユーザの頭部の動きに追従するように仮想オブジェクトを表示させる仕組みについて、図8を参照しながら説明する。図8では、ユーザの視線の奥行き方向がzw軸、水平方向がyw軸、垂直方向がxw軸であり、ユーザの基準軸xwwwの原点位置はユーザの視点位置とする。ロールθzはユーザの頭部のzw軸回りの運動、チルトθyはユーザの頭部のyw軸回りの運動、パンθzはユーザの頭部のxw軸回りの運動に相当する。頭部位置姿勢検出部602は、ジャイロセンサ124と、加速度センサ125と、方位センサ126のセンサ信号に基づいて、ユーザの頭部のロール、チルト、パンの各方向の動き(θz,θy,θz)や頭部の平行移動からなる姿勢情報を検出する。そして、出力制御部603は、ユーザの頭部の姿勢に追従するように、仮想オブジェクトが配置された実空間(例えば、図7を参照のこと)上で表示部131の表示画角を移動させ、その表示画角に存在する仮想オブジェクトの画像を表示部131で表示する。具体的には、ユーザの頭部運動のロール成分に応じて領域802-1を回転させたり、ユーザの頭部運動のチルト成分に応じて領域802-2を移動させたり、ユーザの頭部運動のパン成分に応じて領域802-3を移動させたりして、ユーザの頭部の動きを打ち消すように表示画角を移動させる。したがって、表示部131にはユーザの頭部の位置姿勢に追従して移動した表示画角に配置された仮想オブジェクトが表示されるので、ユーザは、ARグラス越しに、仮想オブジェクトが重畳された実空間を観察することができる。
再び図6を参照して、制御部140の機能的構成について説明する。
手指位置姿勢検出部604は、外向きカメラ121で撮影した画像の認識結果、又は第1のセンサ部110の検出信号に基づいて、ARグラスを装着したユーザの手及び指の位置姿勢を検出する。また、手指ジェスチャ検出部605は、外向きカメラ121で撮影した画像の認識結果、又は第1のセンサ部110の検出信号に基づいて、ARグラスを装着したユーザの手指のジェスチャを検出する。ここで言う手指のジェスチャは、手指の形状、具体的には人差し指の第3関節及び第2関節の角度や、親指と人差し指の指先の接触の有無などを含む。
本実施形態では、手指位置姿勢検出部604及び手指ジェスチャ検出部605は、主に、ユーザの手に取り付けた第1のセンサ部110(ジャイロセンサ111と、加速度センサ112と、方位センサ113)からの位置姿勢の情報と、指が取り得る位置姿勢の拘束条件を用いて、より高精度に手指の姿勢及び手指のジェスチャを検出する。例えば、ユーザが背中や尻など身体の背面側に手を回した場合、頭部からの画像認識では手指の位置姿勢を検出できないが、手に装着した第1のセンサ部110のセンサ信号を用いれば高精度で手指の位置姿勢を検出することができる。他方、外向きカメラ121を用いて手指の位置姿勢や手指のジェスチャを検出する方法の場合、オクルージョンなどにより高精度に検出できない場合がある。
UI設置可能領域検出部606は、ユーザの身体上で、UIを設置することが可能な領域を検出する。ここで言うUIは、具体的には、アプリケーション実行部601が実行しているARアプリを最小化したUIのことである。また、UI設置可能領域は、例えばユーザの背中や腰、腕などである。UIの設置は、ARアプリの実行状態を保持したままUI設置可能領域の場所と紐付けして格納することを意味する。格納されたARアプリの仮想オブジェクトは、ユーザの視界から消える。
なお、UI設置可能領域検出部606は、1つのUI設置可能領域を検出してもよいし、同時に複数のUI設置可能領域を検出してもよい。複数のUI設置可能領域を検出した場合、各UI設置可能領域にそれぞれ別のARアプリを最小化したUIを格納することができる。また、格納及び復元を指示する手指のジェスチャを使い分けることによって、1つのUI設置可能領域に複数のARアプリのUIを重複して格納するようにしてもよい。
B.UI設置可能領域
従来、ユーザが邪魔になったARアプリを視界から見えなくするにはARアプリを閉じるしかなく、ARアプリを閉じると、そのARアプリの実行状態を破棄して初期状態に戻ってしまう。これに対し、本実施形態では、ユーザは、身体上の部位を手指で指定して、特定の手指のジェスチャ動作により、ARアプリを最小化したUIをその指定した部位に格納することができる。格納された後のARアプリの仮想オブジェクトはユーザの視界から消えるが、最小化したUIはARアプリの実行状態を保持し続ける。その後、ユーザは、UIが格納されている身体上の部位に対してUIを復元するための特定の手指のジェスチャ動作を行うことにより、最小化したUIから元のARアプリを格納する前の実行状態で復元して、そのARアプリの仮想オブジェクトをユーザの視界の元の場所に出現させることができる。
このようなARアプリの格納及び復元動作を実現するために、UI設置可能領域検出部606は、ユーザの身体上で、UIを設置することが可能な領域を検出する。また、アプリケーション実行部601は、手指位置姿勢検出部604の検出結果に基づいて、ユーザが現在手に持っているARアプリ、あるいはユーザが手や指で指定したARアプリを特定する。そして、アプリケーション実行部601は、UI設置可能領域検出部606が検出したUI設置可能領域内で、ARアプリの格納又はARアプリの復元を指示する手指のジェスチャをユーザが行ったことを、手指位置姿勢検出部604及び手指ジェスチャ検出部605の検出結果に基づいて認識すると、手指のジェスチャで指定した身体上の部位にARアプリのUIを格納したり、UIを格納した身体上の部位からARアプリを復元したりする。
UI設置可能領域について、さらに詳しく説明する。頭部位置姿勢検出部602は、ARグラスに搭載される第2のセンサ部120に含まれるジャイロセンサ124と、加速度センサ125と、方位センサ126の検出信号に基づいて、ユーザの頭部の位置姿勢を高精度に検出することができる。したがって、UI設置可能領域検出部606は、ユーザの頭部の位置を基準としてそこから特定のオフセットを加えた場所やユーザの背中や腰などの部位を、UI設置可能領域として検出する。
また、ユーザの手にも第1のセンサ部110を装着しているので、第1のセンサ部110に含まれるジャイロセンサ111と、加速度センサ112と、方位センサ113から手の位置を取得し、手の位置からおおまかに腕の位置を推定することが可能であるから、UI設置可能領域検出部606は、さらに腕もUI設置可能領域として検出する。もちろん、位置を取得したい場所に、トラッキングするセンサ(IMUなど)を取り付けて、UI設置可能領域として特定できるようにしてもよい。
また、UI設置可能領域検出部606は、位置を取得したい場所にトラッキングするセンサが直接取り付けられていない場合でも、第1のセンサ部110のセンサ情報から検出される手の位置姿勢と第2のセンサ部120のセンサ情報から検出される頭部の位置姿勢など、検出可能な身体の部位の位置姿勢情報に基づいて、逆キネマティクス演算技術を用いて推定可能なその他の身体の部位をUI設置可能領域として検出するようにしてもよい。
また、UI設置可能領域検出部606は、検出可能な身体の部位の情報に基づいて、機械学習モデルを用いて位置を推定することが可能なその他の身体の部位をUI設置可能領域として検出するようにしてもよい。UI設置可能領域検出部606は、第1のセンサ部110や第2のセンサ部120からのセンサ情報に基づいて最適なUI設置可能領域を推定するように深層学習された機械学習モデルを利用するようにしてもよい。この機械学習モデルに対しては、例えば、使用時のユーザの手指操作の失敗回数などに基づく損失関数を定義して、損失関数が最小となるように誤差逆伝播により深層学習が行われる。
また、UI設置可能領域検出部606は、ユーザの身体からUI設置可能領域となる部位を検出するだけでなく、UI設置可能領域のサイズや形状も決定するようにしてもよい。例えば、ユーザが体性感覚に基づいて精度よく手指で操作することが困難な部位の領域のサイズを拡張したり、ユーザが精度よく手指で操作し易い領域の形状に設定したりするようにしてもよい。UI設置可能領域検出部606は、第1のセンサ部110や第2のセンサ部120からのセンサ情報に基づいて最適なUI設置可能領域のサイズ及び形状を推定するように深層学習された機械学習モデルを利用するようにしてもよい。この機械学習モデルに対しては、例えば、使用時のユーザの手指操作の失敗回数などに基づく損失関数を定義して、損失関数が最小となるように誤差逆伝播により深層学習が行われる。
また、体格などユーザの個人差によって、頭部の位置から胸、腹、腰、尻などのオフセットは大きく異なる。そこで、UI設置可能領域検出部606は、ARグラスに搭載したTOFカメラなどの深度センサの深度情報に基づいて、ユーザの胴回りなどの大きさを推定して、ユーザの胸、腹、腰、尻などの各部位の位置を推定する(又は、頭部の位置から各部位までのオフセットを推定する)ようにして、これらの部位をUI設置可能領域とみなすようにしてもよい。
また、UI設定可能領域検出部606は、キャリブレーションによって特定することが可能になる場所や身体上の部位を、UI設置可能領域とみなすようにしてもよい。例えば、キャリブレーション時においてユーザに腰や背中や腕をタッチすることを促すようなガイダンスを表示部131の映像やスピーカー132の音声によって出力して、ユーザがガイダンスによってタッチした位置をUI設置可能領域とみなすようにする。例えば、キャリブレーション時において、図9に示すようにARグラスを使って「腕を触ってください」とガイダンスを表示する。これに対し、図10に示すように、ユーザがガイダンスに従って腕を触ったときに、UI設置可能領域検出部606は、第1のセンサ部110のセンサ情報に基づいて、腕の位置(又は、頭部の位置からユーザがタッチした位置のオフセット)を検出することができたら、腕をUI設置可能領域として検出する。また、腰や背中は胴体の背面にあり、ユーザは手探りで触ることになるので、腕の位置ほど正確に触ることができない。そこで、ユーザの腰の位置や背中の位置は、ユーザの頭部の位置(又は、ARグラスの位置)からの大まかな相対位置をUI設置可能領域とみなすようにしてもよい。
腕の長さや関節の可動範囲も個人差があるため、ユーザが触ることができる腰や背中の最適な位置にも個人差がある。そこで、ユーザがARシステム100(又は、ARグラス)を使っている普段の行動や、ユーザに追加で課したタスクの結果などから、ユーザ毎に差異的なUI設置可能領域を設定するようにしてもよい。また、上述したキャリブレーションを部位毎に複数回行った結果から、各部位のUI設置可能領域を設定するようにしてもよい。
なお、UI設置可能領域の検出などに用いる身体データは、第1のセンサ部110や第2のセンサ部120などARシステム100内の計測装置だけではなく、ARシステム100の外部の計測装置で得られる情報を受け取ったものであってもよい。
また、UI設置可能領域検出部606が自動でUI設置可能領域を検出する以外に、ユーザ毎にカスタマイズできるようにしてもよい。例えば、UI設置可能領域検出部606は、ユーザの頭部の位置(又は、ARグラスの位置)からのオフセットに基づいてUI設置可能領域を検出するが、ユーザが四肢のいずれかを損傷している場合には、自動検出されたUI設置可能領域の中にはユーザが触る、タップするなどの手指のジェスチャを行うことができないことがある。このような場合、ユーザの手元で(又は、マニュアル操作で)、利用できないUI設置可能領域を除外するようにしてもよい。
C.ARアプリの格納及び復元動作
本実施形態に係るARシステム100では、ARアプリを閉じることなく実行状態を保持したまま、UI設置可能領域の場所と紐付けして格納することができる。格納されたARアプリの仮想オブジェクトは、ユーザの視界から消えるが、ユーザが復元動作を行うことでARアプリの仮想オブジェクトが、格納される直前の実行状態のままでユーザの視界に出現する。具体的には、アプリケーション実行部601は、手指位置姿勢検出部604の検出結果に基づいて、ユーザが現在手に持っているARアプリ、あるいはユーザが手や指で指定したARアプリを特定する。そして、アプリケーション実行部601は、UI設置可能領域検出部606が検出したUI設置可能領域内で、ARアプリの格納又はARアプリの復元を指示する手指のジェスチャをユーザが行ったことを、手指位置姿勢検出部604及び手指ジェスチャ検出部605の検出結果に基づいて認識すると、手指のジェスチャで指定した身体上の部位にARアプリのUIを格納したり、UIを格納した身体上の部位からARアプリを復元したりする。
アプリケーション実行部601は、手指位置姿勢検出部604が検出した手指の位置姿勢に基づいて、ユーザの手指がUI設置可能領域に接近又は進入したことを検出する。第1のセンサ部110で使用されるジャイロセンサ111、加速度センサ112、方位センサ113のセンサの精度が十分でないなどの理由によって、ユーザの手指が接近又は触れる身体部位を推定する粒度を細かくできない場合には、手指が接近又は進入したと判定する距離を広げるようにしてもよい。例えば、UI設置可能領域の近傍で手指のジェスチャが発生したら、UI設置可能領域内でジェスチャが起きたと判定するようにする。手指のジェスチャが発生した位置が、実は本来の身体部位である可能性もある。したがって、UI設置可能領域に設定した身体部位の近傍で手指のジェスチャが発生したら、身体部位の位置をそのジェスチャが発生した位置に更新するようにしてもよい。また、外向きカメラ121で手指を撮影できる場合には、手指位置姿勢検出部604は、外向きカメラ121のカメラ映像により手指の位置姿勢を検出するようにしてもよい。
また、アプリケーション実行部601は、UI設置可能領域において手指ジェスチャ検出部605が検出した手指のジェスチャに基づいて、ARアプリ又はその仮想オブジェクトに対する指示が行なわれたかどうかを判定する。ここで言う指示は、ARアプリのUIの格納や復元を含む。また、手指ジェスチャ検出部605は、基本的には、手指の形状、具体的には人差し指の第3関節及び第2関節の角度や、親指と人差し指の指先の接触の有無を検出するが、UI設置可能領域における手の通過や、UI設置可能領域となる身体の部位を叩いたり摘まんだりする動作、UI設置可能領域内でフィンガースナップする動作をさらに検出するようにしてもよい。
本実施形態では、アプリケーション実行部601は、UI設置可能領域において手指ジェスチャ検出部605が手指のジェスチャを検出したことを、ARアプリのUIの格納及び復元のトリガとして利用する。ARアプリのUIの格納と、格納したARアプリの復元にそれぞれ別の手指のジェスチャを割り当ててもよいし、ARアプリのUIの格納と復元の両方に同じ手指のジェスチャを割り当ててもよい。後者の場合、例えばUI設置可能領域として検出された身体の部位を手で叩く動作によりその身体の部位にARアプリのUIを格納し、ARアプリのUIが既に格納されている身体の部位を再び叩くと、その部位からARアプリのUIが復元される。
例えば、図11に示すように、アプリケーション実行部601が実行中のARアプリの仮想オブジェクト1100が、ユーザの手のひらの上に出現しているとする。ユーザは、仮想オブジェクト1100が邪魔になったとき、その手で自分の身体上のUI設置可能領域に対して所定のジェスチャを行うことで、ARアプリの実行状態を保持したまま、ARアプリのUIをそのUI設置可能領域に格納することができる。所定の手指のジェスチャは、例えばUI設置可能領域を叩く動作でよい。また、UI設置可能領域は背中であってもよい。図12には、ユーザが手のひらで身体の部位(例えば背中)を叩いて、ARアプリのUIを格納する動作例を示している。アプリケーション実行部601は、ARアプリのUIの格納を指示する所定の手指のジェスチャが行われた身体の部位に紐付けしてそのARアプリの実行状態を保持するとともに、仮想オブジェクト1100の表示を消滅させる。
図11及び図12では省略したが、ユーザの手には図5に示したようなコントローラ500が装着されているものとする。また、アプリケーション実行部601は、ARアプリのUIの格納が完了したときに、振動提示部133を動作させたり、表示部131に完了したことを通知するメッセージを表示したり、スピーカー132から警告音を発したりして、ユーザにフィードバックを与えるようにしてもよい。
その後、ユーザは、ARアプリを再び使用したくなったときには、ARアプリの復元を指示するために、そのARアプリのUIを格納しておいた身体の部位に対して所定の手指のジェスチャを行う。ARアプリの復元を指示するジェスチャは、ARアプリの格納を指示するジェスチャと同じでも異なっていてもよい。図13には、ユーザがARアプリのUIが格納してある身体の部位(例えば背中)から、親指と人差し指でARアプリのUIをつまみ出すジェスチャによりARアプリのUIを復元する動作例を示している。あるいは、図12と同様に、ARアプリのUIを格納した身体の部位(例えば背中)を手のひらで叩くジェスチャでARアプリのUIを復元するようにしてもよい。アプリケーション実行部601は、ARアプリの復元を指示する所定の手指のジェスチャが行われた身体の部位に紐付けして保持しているARアプリを、元の実行状態で復元する。そして、アプリケーション実行部601は、図14に示すように、復元したARアプリの仮想オブジェクトを、ユーザの手のひらの上に再現させる。
図13及び図14では省略したが、ユーザの手には図5に示したようなコントローラ500が装着されているものとする。また、アプリケーション実行部601は、ARアプリのUIの復元が完了したときに、振動提示部133を動作させたり、表示部131に完了したことを通知するメッセージを表示したり、スピーカー132から完了したことを通知するアナウンスを音声出力したりして、ユーザにフィードバックを与えるようにしてもよい。
なお、図11~図12に示した例では、ユーザは、格納しようとするARアプリのUI(仮想オブジェクト)を手に持っている(又は、手のひらの上に置いている)が、対象とする仮想オブジェクトを直接手に持っている必要はない。例えば、ユーザは対象とする仮想オブジェクトを指で指してから、身体の部位に格納するための所定の手指のジェスチャを行うようにしてもよい。
本実施形態においてARアプリのUIを身体の部位に格納したり身体の部位から復元したりする動作は、デジタル情報を最小化するという観点からは、一般的なOSにおいてスクリーン上のアプリケーションを最小化してタスクバーに格納したりタスクバーに最小化されたアプリケーションを開く動作に類似する。一般的なOSのスクリーンでは、一時的に邪魔になったアプリケーションは最小化してタスクバーに格納される。これに対し、本開示では、一時的に邪魔になったARアプリのUIは、例えばユーザの身体上のUI設置可能領域として検出された部位に格納される。
また、ARアプリのUIを身体の部位に格納したり身体の部位から復元したりする動作は、オブジェクトを身体の部位に格納するという観点からは、作業員が腰に取り付けたツールホルダーから工具を出し入れしたり、理容師が腰に取り付けたシザーケースから鋏を出し入れしたりする動作にも類似する。理容師は、使い終わった鋏を腰位置のシザーケースに戻し、次に使用する鋏をシザーケースから取り出す。これに対し、本開示では、一時的に邪魔になったARアプリのUIは、UI設置可能領域として検出された身体の部位に格納したり、格納しておいたARアプリのUIを身体の部位から復元したりすることができる。理容師は、体性感覚があるため、視線を移動させることなく、ほぼ正確にシザーケースに手を伸ばして鋏を出し入れすることができる。本開示においても、ユーザは、UI設置可能領域となる身体の部位にARアプリのUIを格納し、その身体の部位からARアプリのUIを取り出して復元する動作を、体性感覚により、視線を移動させることなく行うことができる。
なお、UI設置可能領域検出部606が身体上のどの部位をUI設置可能領域に検出したのか、すなわち身体上のどの部位にARアプリのUIを格納することができるのかが、ユーザにとって分かり難い場合がある。ARシステム100の利用経験があるユーザであれば自分の身体のどの部位がUI設置可能領域であるのかを記憶している場合もあるが、初心者は全く分からない場合もある。そこで、アプリケーション実行部601は、UI設置可能領域にミニチュアアバタやオーラなどの仮想オブジェクトを表示して、ユーザがUI設置可能領域を視覚で理解し易くするようにしてもよい。図16には、ユーザの身体上にUI設置可能領域のオーラを表示した例を示している。但し、図16に示すUI設置可能領域は一例であり、これに限定されない。また、ミニチュアアバタやオーラの表示方法は特に限定されない。
アプリケーション実行部601は、ユーザの所定の手指のジェスチャに従って、複数のARアプリのUIを、それぞれ個別のUI設置可能領域に格納するようにしてもよい。この場合、UI設置可能領域検出部606がユーザの身体から複数のUI設置可能領域を検出したことを前提とする。言い換えれば、各UI設置可能領域に1つずつARアプリのUIを格納することが許容される。ユーザが、既に格納済みのUI設置可能領域に所定の手指のジェスチャを行って、重ねてARアプリのUIを格納しようとしたとき、アプリケーション実行部601は、振動提示部133を動作させたり、表示部131に警告メッセージを表示したり、スピーカー132から警告音を発したりして、その場所には格納できないことをユーザにフィードバックするようにしてもよい。
また、アプリケーション実行部601は、1つのUI設置可能領域に複数のARアプリのUIを重複して格納するようにしてもよい。この場合、ARアプリ毎に異なる手指のジェスチャを使用して、ARアプリを特定するようにしてもよい。但し、ユーザが複数の手指のジェスチャを使い分けることは困難である。そこで、複数のARアプリのUIを格納した場所に対してユーザが所定の手指のジェスチャを行ったときに、アプリケーション実行部601は、その場所に格納されているARアプリの一覧を表示して、ユーザが指差しや音声コマンドなどで選択できるようにしてもよい。あるいは、アプリケーション実行部601は、複数のARアプリのUIを格納した場所に対してユーザが所定の手指のジェスチャを行ったときに、先入れ先出し方式又は先入れ後出し方式によりARアプリのUIの復元を行うようにしてもよい。
図15には、ARシステム100においてARアプリを格納及び復元動作する動作手順をフローチャートの形式で示している。
まず、UI設置可能領域検出部606は、ユーザの身体の部位などからUI設置可能領域を検出する(ステップS1501)。UI設置可能領域検出部606は、例えば、ユーザの頭部の位置を基準としてそこから特定のオフセットを加えた場所やユーザの背中や腰などの部位を、UI設置可能領域として検出する。UI設置可能領域の検出方法については既に説明したので、ここでは詳細については省略する。
次いで、手指位置姿勢検出部604は、ユーザの手指の位置姿勢を取得する(ステップS1502)。手指位置姿勢検出部604は、基本的には、図5に示したようなコントローラ500(又は、第1のセンサ部110)が装着されたユーザの手指の位置姿勢を取得する。但し、手指位置姿勢検出部604は、外向きカメラ121のカメラ映像により手指の位置姿勢を検出するようにしてもよい。
アプリケーション実行部601は、手指位置姿勢検出部604が検出した手指の位置姿勢に基づいて、ユーザの手指がUI設置可能領域に接近又は進入したかどうかを監視する(ステップS1503)。ステップS1501で複数のUI設置可能領域が検出されている場合には、アプリケーション実行部601は、ユーザの手指がいずれかのUI設置可能領域に接近又は進入したかどうかを監視する。
アプリケーション実行部601は、ユーザの手指がUI設置可能領域に接近又は進入したことを検出すると(ステップS1503のYes)、続いて、そのUI設置可能領域において手指ジェスチャ検出部605が検出する手指のジェスチャを監視する(ステップS1504)。手指ジェスチャ検出部605は、基本的には、手指の形状、具体的には人差し指の第3関節及び第2関節の角度や、親指と人差し指の指先の接触の有無を検出するが、UI設置可能領域における手の通過や、UI設置可能領域となる身体の部位を叩いたり摘まんだりする動作、UI設置可能領域内でフィンガースナップする動作をさらに検出するようにしてもよい。
そして、アプリケーション実行部601は、そのUI設置可能領域において、ARアプリのUIの格納又は復元を指示する手指のジェスチャが行われたことを検出すると(ステップS1504のYes)、その手指のジェスチャによる指示に従って、ARアプリのUIの格納又は復元を行う(ステップS1505)。
ここで、ARアプリのUIの格納が指示される場合、ユーザは、格納しようとするARアプリのUI(仮想オブジェクト)を手に持っている(又は、手のひらの上に置いている)(例えば、図11~図12を参照のこと)。但し、必ずしもユーザが格納するARアプリのUIを直接手に持っているとは限らない。例えば、ユーザは格納したいARアプリのUIを指で指し、アプリケーション実行部601は、手指位置姿勢検出部604の検出結果に基づいてユーザが指したARアプリを特定して、ステップS1503で検出されたUI設置可能領域にそのARアプリのUIを格納するようにしてもよい。
D.ARアプリの分離表示
アプリケーション実行部601は、OSが提供する実行環境下で、ARアプリを含むアプリケーションプログラムを実行するとともに、ARアプリ(仮想オブジェクト)の表示動作も制御する。仮想オブジェクトは、実空間上の任意に場所に配置される。図11や図14には、説明の便宜上、ユーザの手が届く範囲、すなわちユーザの手のひらにARアプリが載っている例を示したが、ユーザの手が届かない遠方に仮想オブジェクトが配置されることも想定される。
ユーザは、手の届く範囲に配置されたARアプリを手で操作することができるアプリケーション実行部601は、ARアプリを配置した位置と、手指位置姿勢検出部604及び手指ジェスチャ検出部605の検出結果に基づいて、ユーザがARアプリに対して手で行った操作を推定することができる。一方、手が届かない遠方に配置されたARアプリを直接手で操作することができない。
そこで、本実施形態では、デバイスを遠隔操作するリモコンのような、ARアプリを操作する操作アプリをユーザの手元に配置して、手が届かない遠方に配置されたARアプリを、操作アプリを使って操作を行えるようにする。アプリケーション実行部601は、操作アプリを配置した位置と、手指位置姿勢検出部604及び手指ジェスチャ検出部605の検出結果に基づいて、ユーザが操作アプリに対して行った操作を推定することができる。そして、アプリケーション実行部601は、ユーザが操作アプリに対して行った操作の内容に基づいて、遠方に配置されたARアプリの動作を制御する。操作アプリは、対象とするARアプリを操作する操作UIを備えている。
操作アプリは、ARアプリの1つである。アプリケーション実行部601は、操作アプリを実行して、操作UIを含んだ仮想オブジェクトをユーザの手元に表示する。ユーザの手元とは、例えばユーザの頭部の位置を基準としてそこから特定のオフセットを加えた場所や、ユーザの手のひらや手の甲などである。
操作アプリは、操作の対象となるARアプリに応じて、操作UIの表示が異なる。例えば動画再生用のARアプリであれば、操作UIは、再生、一時停止、早送り、巻き戻し、繰り返し再生といったコンテンツ再生に関する操作を指示するためのUI部品が必要である。他方、レースゲーム用のARアプリであれば、アクセル、ブレーキ、ハンドルなどの操作を指示するためのUI部品が必要である。図17には、動画再生用のARアプリ1701を観賞中のユーザの手元に、コンテンツ再生操作用のUI部品からなる操作UI1702が表示されている様子を例示している。動画再生用のARアプリ1701及び操作UI1702はいずれも実空間に表示される仮想オブジェクトであり、ユーザはARグラス越しにこれらを観察することができる。ユーザは、手の届かない場所に表示されているARアプリ1701の動画コンテンツを視聴しているときに、手元の操作UI1702に含まれる再生、一時停止、早送り、巻き戻し、繰り返し再生などのボタンを使って、コンテンツの再生操作を行うことができる。
図17に示したように、ユーザの近くに操作アプリを配置することで、ユーザは、手が届かない遠方に配置されたARアプリを操作することが可能になる。ところが、近くに操作アプリを配置したとしても、ユーザは手元を見ながらでないと、どのボタンがどこにあるのかが分からず、正確に操作できないという問題がある。そこで、操作の対象となるARアプリを操作する機能(又は、UI部品)のすべて又は一部を、ユーザの手に直接配置するようにしてもよい。ユーザは、体性感覚によりどのボタンがどこにあるのかが分かるので、ARアプリ(例えば、動画再生)から視線を外さなくても操作UIを正確に操作することができる。もちろん、手以外でも、ユーザが体性感覚によってボタンの位置を正確に把握することができる身体部位に操作UIを配置するようにしてもよい。上記C項では、ユーザの身体の部位(UI設定可能領域)にARアプリのUIを格納する実施例について説明したが、このD項では、ARアプリの機能の一部又は全部をユーザの身体の部位に配置するという訳である。
例えば、ユーザの左の手のひらに操作UIのすべて又は一部を配置して、これを、コントローラ500(図5を参照のこと)を装着した右手で操作するようにする。アプリケーション実行部601は、例えば外向きカメラ121の撮影画像から位置及び姿勢が認識されるユーザの左の手のひらに、操作UIを配置する。ユーザはARグラス越しに自分の手のひらに表示された操作UIを見て、所望の操作UIを右手で操作することができる。そして、アプリケーション実行部601は、手指位置姿勢検出部604の検出結果に基づいて、ユーザの右手が左の手のひらの近傍にあることを認識し、さらに手指ジェスチャ検出部605の検出結果に基づいて、左の手のひらに配置されたいずれかのボタンを操作したことを認識すると、そのボタンによって指示されるARアプリの動作を実行する。例えば、アプリケーション実行部601は、動画再生用のARアプリを実行中にユーザが再生ボタンを押す操作を認識すると、動画コンテンツの再生を開始し、早送りを押す操作を認識すると、コンテンツを早送りする。
図18には、ユーザの左の手のひらに、再生、早送り、巻き戻しなどコンテンツ再生用の操作UIの仮想オブジェクト1801~1803を表示している例を示している。また、図19には、コンテンツ再生用の操作UIとして、回転により順方向又は逆方向にフレーム送りを指示するジョグコントローラの仮想オブジェクト1901をユーザの左の手のひらに表示している例を示している。図18及び図19のいずれに示す例においても、アプリケーション実行部601は、例えば外向きカメラ121の撮影画像から位置及び姿勢が認識されるユーザの左の手のひらに、操作UI1801~1803又は1901の仮想オブジェクトを配置する。ユーザはARグラス越しに自分の手のひらに表示された操作UI1801~1803又は1901を見ることができる。そして、アプリケーション実行部601は、手指位置姿勢検出部604の検出結果に基づいて、ユーザの右手が左の手のひらの近傍にあることを認識し、さらに手指ジェスチャ検出部605の検出結果に基づいて、左の手のひらに配置された操作UIに対する操作量を認識すると、その操作量に応じて、再生コンテンツの再生、早送り、巻き戻し、又はフレーム送りなどのARアプリの動作を実行する。
また、ユーザの手のひらではなく、手の甲にARアプリを操作する機能を配置するようにしてもよい。手のひらがほぼ平坦であるのに対し、手の甲は、人差し指、中指、薬指、並びに小指の各指に中手骨頭部による凸部を有するという特徴的な形状である。したがって、図20に示すように、左手の人差し指、中指、薬指、並びに小指の4つの凸部にそれぞれ、再生、一時停止、早送り、巻き戻しなどのARアプリを操作する機能を個別に割り当てるようにしてもよい。ユーザは、左の手の甲を直接見なくても、体性感覚により、各指の凸部を右手で触ることができる。アプリケーション実行部601は、例えば外向きカメラ121の撮影画像から位置及び姿勢が認識されるユーザの左の手の甲の4つの凸部に再生、一時停止、早送り、巻き戻しの各機能を割り当てるが、仮想オブジェクトを配置する必要はない。ユーザは、左の手のひらを直接見ることなく、左手の甲のいずれかの凸部を触って、ARアプリに対する操作を行う。そして、アプリケーション実行部601は、手指位置姿勢検出部604の検出結果に基づいて、ユーザの右手が左の手の甲の近傍にあることを認識し、さらに手指ジェスチャ検出部605の検出結果に基づいて、ユーザが右手の指で左の手の甲のいずれかの凸部を触ったことを認識すると、その凸部に割り当てられた機能に応じて、再生コンテンツの再生、早送り、巻き戻し、又はフレーム送りなどのARアプリの動作を実行する。
ARシステム100において、図17~図20に示したように、ARアプリ本体の仮想オブジェクトと分離してARアプリの操作UIを配置できるようにするには、操作UIを分離可能とにするための必要な情報を、ARアプリが保持し又はARアプリに対応付けて保持する。また、ユーザの左の手のひらや手の甲などユーザの手元に操作UIを配置する際に、中手骨頭部など配置可能な個数が制限されている場合がある。このため、複数の操作UIの中で優先順位を決めておくなどユーザの手元に優先的に配置すべき操作UIを判断できるようにする情報も、ARアプリが保持し又はARアプリに対応付けて保持しておく。
また、ARアプリ本体の仮想オブジェクトと分離してARアプリの操作部をユーザの手元に配置する場合、操作部を配置できる領域をARグラス(又は、第2のセンサ部120)の位置から一定距離内とするといった規則を確定する。これによって、操作部に対して操作を行うユーザの手指の位置姿勢やジェスチャを手指位置姿勢検出部604及び手指ジェスチャ検出部605が検出できることが担保され、アプリケーション実行部601は、操作部に対するユーザの手指の操作に基づいてARアプリを動作することが可能になる。
ユーザの手元やユーザの手のひら又は手の甲に配置された操作部に対して行うユーザの手指の操作を、外向きカメラ121の撮影画像を通じて認識することも可能である。これに対し、本実施形態では、操作を行うユーザの手(右手)には第1のセンサ部110が取り付けられているので、外向きカメラ121の視野にオクルージョンが発生した場合であっても、第1のセンサ部110からのセンサ情報に基づいて、操作部に対して行われるユーザの手指の操作を高い精度で検出することができる。
また、手指位置姿勢検出部604の検出精度が十分でない場合には、アプリケーション実行部601は、1つの操作を割り当てる領域のサイズを拡張したり(例えば、再生ボタンを大きくする)、仮想オブジェクトとして表示する操作UIの形状を単純化したりして、ユーザが操作部を操作し易くするようにしてもよい。例えば、アプリケーション実行部601は、ARアプリに対して操作UIの最適なサイズ及び形状を推定する機械学習モデルを利用して、操作UIのサイズや形状を決定するようにしてもよい。この機械学習モデルに対しては、例えば、使用時のユーザの手指操作の失敗回数などに基づく損失関数を定義して、損失関数が最小となるように誤差逆伝播により深層学習が行われる。
E.操作UIの配置
上記D項では、ARアプリ本体の仮想オブジェクトと分離してARアプリの操作UIを配置する実施例に関して説明し、さらに操作UIのサイズや形状を最適化する点についても説明した。
図20に示したように、中手骨頭部など身体部位の特徴を利用して操作UIを配置する場合、ユーザは自分の身体部位を直接見なくても、体性感覚により正確に操作UIを操作することができる。また、背中や手のひらなど形状に特徴のない身体部位にボタンやメニューなどを配置する場合には、操作ミスが生じないように各ボタンのサイズや形状を最適化することにより、ユーザは正確に操作UIを操作することができる。
これに対し、座標入力を行う操作UIを身体の部位に配置する場合には、操作UIとこれを操作するユーザの手指との相対的な位置によって誤入力が発生することが懸念される。
例えば、図21に示すように、ユーザの左の手のひらにタッチパネルの操作UI2101を配置して、コントローラ500(又は第1のセンサ部110)を装着した右手の指で操作するような場合、ユーザは右手の人差し指で水平方向のフリック操作を行っているつもりでも、左手の位置姿勢によっては正しく入力されないことがある。具体的には、図22に示すように、ユーザの左の手のひらに配置されたタッチパネルの座標系がユーザの身体の重心を原点とするローカル座標系(又はユーザが頭でイメージするローカル座標系)と一致する(又は平行となる)ように左手の位置姿勢がとられていれば、ユーザがタッチパネルの操作UIに対して右手で水平方向のフリック操作を行うと、手指ジェスチャ検出部605は水平方向のフリック操作の座標入力を検出することができる。他方、図23に示すように、タッチパネルの座標系がユーザのローカル座標系に対して傾斜するような左手の姿勢の場合には、ユーザは、自身のローカル座標系を基準にして右手で水平方向にフリック操作を行っているつもりであっても、手指ジェスチャ検出部605は斜め方向のフリック操作の座標入力を検出することになる。例えば、外向きカメラ121の撮影画像などから認識される左手の座標系を基準にしてタッチパネル2101を配置すると、右手で同じフリック操作をしても、左手の姿勢に応じて異なる座標入力を行うことになる。
そこで、本実施形態では、座標入力を行う操作UIを配置する身体の部位の姿勢に基づいて、その部位に配置する操作UIの向きを補正するようにする。例えば図21に示したように、ユーザの左の手のひらにタッチパネルの操作UI2101を配置する場合には、左手の姿勢を取得してタッチパネルの手指位置姿勢検出部604が検出する身体の部位の座標系ではなく、ユーザの身体の向き、操作UIが操作対象とするオブジェクトが配置されている方向、又はユーザの視線方向のいずれかを基準にして、座標入力を行う操作UIの向き(座標系)を補正するようにする。
図24には、ユーザの身体の向きを基準にして、座標入力を行う操作UIの向き(座標系)を補正する例を示している。アプリケーション実行部601は、例えば第2のセンサ部120からのセンサ情報に基づいて、身体の向きを検出することができる。また、アプリケーション実行部601は、例えば外向きカメラ121の撮影画像の認識結果に基づいてユーザの左の手のひらの位置姿勢を検出することができる。左手にも第1のセンサ部110を装着している場合には、第1のセンサ部110からのセンサ情報に基づいて左手の位置姿勢を検出することができる。そして、アプリケーション実行部601は、左手の姿勢に拘わらず、操作UIの向きが身体の向きと一致するように(又は、操作UIの座標系とユーザのローカル座標系が平行となるように)、ユーザの左の手のひらの上に、操作UIを配置する。この場合、ユーザがタッチパネルの操作UIに対して右手で水平方向のフリック操作を行うと、手指ジェスチャ検出部605は水平方向のフリック操作の座標入力を検出することができる。
図25には、操作UIが操作対象とするオブジェクトが配置されている方向を基準にして、座標入力を行う操作UIの向き(座標系)を補正する例を示している。図25において、操作UIの操作対象は、タッチパネルで操作しようとするARアプリの仮想オブジェクトである。アプリケーション実行部601は、操作対象となっているARアプリの仮想オブジェクト2501を配置した位置を把握している。また、アプリケーション実行部601は、例えば外向きカメラ121の撮影画像の認識結果に基づいてユーザの左の手のひらの位置姿勢を検出することができる。左手にも第1のセンサ部110を装着している場合には、第1のセンサ部110からのセンサ情報に基づいて左手の位置姿勢を検出することができる。そして、アプリケーション実行部601は、操作UIの向きが操作対象となるARアプリの仮想オブジェクト2501の正面の方向と一致するように、ユーザの左の手のひらの上に、操作UIを配置する。この場合、ユーザは、ARアプリの仮想オブジェクト2501を見ながら、その仮想オブジェクト2501が配置された平面に倣って右手で水平方向のフリック操作を行うと、手指ジェスチャ検出部605は仮想オブジェクト2501に対する水平方向のフリック操作の座標入力を検出することができる。
図26には、ユーザの視線方向を基準にして、座標入力を行う操作UIの向き(座標系)を補正する例を示している。アプリケーション実行部601は、例えば第2のセンサ部120のセンサ情報から得られる頭部の位置姿勢、又は内向きカメラ122で撮影したユーザの眼の画像を画像認識して、ユーザの視線方向を検出する。図26に示す例では、ユーザの視線は、ARアプリの仮想オブジェクト2601上を移動している。また、アプリケーション実行部601は、例えば外向きカメラ121の撮影画像の認識結果に基づいてユーザの左の手のひらの位置姿勢を検出することができる。左手にも第1のセンサ部110を装着している場合には、第1のセンサ部110からのセンサ情報に基づいて左手の位置姿勢を検出することができる。そして、アプリケーション実行部601は、操作UIの向きが操作対象となるユーザの視線方向と一致するように、ユーザの左の手のひらの上に、操作UIを配置する。この場合、ユーザは、任意の方向を眺めながら視線を基準に右手で水平方向のフリック操作を行うと、手指ジェスチャ検出部605は仮想オブジェクト2601に対する水平方向のフリック操作の座標入力を検出することができる。
図26に示す例は、ユーザが例えばソファに寝そべってARアプリを操作する場合を想定している。寝そべっているときの手のひらの向きは立位のときと大きく異なるが、ユーザの視線方向を基準に操作UIの向きを補正するというルールに則って手のひらの操作UIの向きを補正することで、ユーザの快適な操作を維持することができる。
図24~図26で例示する方法で操作UIの向きを補正することによって、ユーザが意図しない操作がARアプリに行われないようになり、ユーザの会的な操作を実現することができる。
以上、特定の実施形態を参照しながら、本開示について詳細に説明してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が該実施形態の修正や代用を成し得ることは自明である。
本明細書では、主に本開示をARシステムに適用した実施形態を中心に説明してきたが、本開示の要旨はこれに限定されるものではない。例えば、仮想空間を現実として知覚させるVRシステムや現実と仮想を交錯させるMRシステムにも、同様に本開示を適用することができる。
要するに、例示という形態により本開示について説明してきたのであり、本明細書の記載内容を限定的に解釈するべきではない。本開示の要旨を判断するためには、特許請求の範囲を参酌すべきである。
なお、本開示は、以下のような構成をとることも可能である。
(1)ユーザの身体上の第1の部位の位置姿勢又は形状を取得する取得部と、
前記第1の部位の位置姿勢又は形状に基づいて、表示装置において実空間に表示する仮想オブジェクトを制御する制御部と、
を具備する情報処理装置。
(2)前記取得部は、前記第1の部位に取り付けたセンサに基づいて前記第1の部位の位置姿勢を取得する、
上記(1)に記載の情報処理装置。
(3)前記第1の部位はユーザの手又は指を含み、
前記取得部は、ユーザの手又は指に取り付けられた位置姿勢センサからのセンサ情報に基づいてユーザの手又は指の位置姿勢又は指の形状を取得する、
上記(1)又は(2)のいずれかに記載の情報処理装置。
(4)前記制御部は、前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位がユーザの身体上の第2の部位に所定の操作を行ったことを認識する、
上記(1)乃至(3)のいずれかに記載の情報処理装置。
(5)前記制御部は、前記取得部が取得した前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位がユーザの身体上の第2の部位に対して第1の操作を行ったことを認識すると、前記仮想オブジェクトの実行状態を前記第2の部位に紐付けして格納して、前記表示装置による前記仮想オブジェクトの表示を停止させる、
上記(1)乃至(4)のいずれかに記載の情報処理装置。
(6)前記制御部は、前記取得部が取得した前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位がユーザの身体上の第2の部位に対して第2の操作を行ったことを認識すると、前記第2の部位に紐付けして格納した実行状態に基づいて前記仮想オブジェクトの表示を復元する、
上記(5)に記載の情報処理装置。
(7)ユーザの身体上で第2の部位を設置することが可能な領域を検出する検出部をさらに備える、
上記(4)乃至(6)のいずれかに記載の情報処理装置。
(8)前記検出部は、ユーザの身体上で位置姿勢を取得可能な第3の部位から所定のオフセットを加えた場所を第2の部位として検出する、
上記(7)に記載の情報処理装置。
(9)前記検出部は、前記第1の部位の位置姿勢に基づいて位置を推定可能な身体上の領域を第2の部位として検出する、
上記(7)又は(8)のいずれかに記載の情報処理装置。
(10)前記検出部は、位置姿勢を取得可能な前記第1の部位と第3の部位の位置姿勢情報に基づいて逆キネマティクス演算により位置を推定可能な第2の部位を検出する、
上記(7)乃至(9)のいずれかに記載の情報処理装置。
(11)前記検出部は、前記第1の部位による操作性に基づいて、第2の部位のサイズ又は形状を検出する、
上記(7)乃至(10)のいずれかに記載の情報処理装置。
(12)前記検出部は、前記第1の部位で触れるキャリブレーションによって場所を特定可能な第2の部位を検出する、
上記(7)乃至(11)のいずれかに記載の情報処理装置。
(13)前記制御部は、ユーザから遠方に配置された仮想オブジェクトに対してユーザが操作を行うための操作部をユーザの手元に配置するように制御する、
上記(1)乃至(12)のいずれかに記載の情報処理装置。
(14)前記制御部は、前記操作部をユーザの身体上の第4の部位に配置するように制御する、
上記(13)に記載の情報処理装置。
(15)前記制御部は、前記第4の部位に配置する前記操作部の向きを補正する、
上記(14)に記載の情報処理装置。
(16)前記制御部は、ユーザの身体の向き、仮想オブジェクトが配置されている方向、又はユーザの視線方向のいずれかを基準にして前記操作部の向きを補正する、
上記(15)に記載の情報処理装置。
(17)ユーザの身体上の第1の部位の位置姿勢又は形状を取得する取得ステップと、
前記第1の部位の位置姿勢又は形状に基づいて、表示装置において実空間に表示する仮想オブジェクトを制御する制御ステップと、
を有する情報処理方法。
(18)ユーザの身体上の第1の部位の位置姿勢又は形状を取得する取得部、
前記第1の部位の位置姿勢又は形状に基づいて、表示装置において実空間に表示する仮想オブジェクトを制御する制御部、
としてコンピュータが機能するようにコンピュータ可読形式で記述されたコンピュータプログラム。
(19)実空間に仮想オブジェクトを表示する表示装置と、
ユーザの身体上の第1の部位の位置姿勢又は形状を取得する取得部と、
前記第1の部位の位置姿勢又は形状に基づいて仮想オブジェクトの表示を制御する制御部と、
を具備する拡張現実感システム。
100…ARシステム、110…第1のセンサ
111…ジャイロセンサ、112…加速度センサ、113…方位センサ
120…第2のセンサ部、121…外向きカメラ
122…内向きカメラ、123…マイク、124…ジャイロセンサ
125…加速度センサ、126…方位センサ
131…表示部、132…スピーカー、133…振動提示部
134…通信部、140…制御部、150…記憶部
300…ARシステム、301…ARグラス、302…コントローラ
400…ARシステム、401…ARグラス、402…コントローラ
403…情報端末
500…コントローラ、501、502、503…IMU
511、512、513…バンド
601…アプリケーション実行部、602…頭部位置姿勢検出部
603…出力制御部、604…手指位置姿勢検出部
605…手指ジェスチャ検出部、606…UI設定可能領域検出部

Claims (18)

  1. ユーザの手及び指のうち少なくとも一方からなる第1の部位の位置姿勢又は形状を取得する取得部と、
    前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位がユーザの手及び指以外の身体上の第2の部位に所定の操作を行ったことを認識し、前記所定の操作に応じて表示装置において実空間に表示する仮想オブジェクトを制御する制御部と、
    を具備する情報処理装置。
  2. 前記取得部は、前記第1の部位に取り付けたセンサに基づいて前記第1の部位の位置姿勢を取得する、
    請求項1に記載の情報処理装置。
  3. 前記取得部は、前記第1の部位に取り付けられた位置姿勢センサからのセンサ情報に基づいて前記第1の部位の位置姿勢又は指の形状を取得する、
    請求項1に記載の情報処理装置。
  4. 前記制御部は、前記取得部が取得した前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位が前記第2の部位に対して第1の操作を行ったことを認識すると、前記仮想オブジェクトの実行状態を前記第2の部位に紐付けして格納して、前記表示装置による前記仮想オブジェクトの表示を停止させる、
    請求項1に記載の情報処理装置。
  5. 前記制御部は、前記取得部が取得した前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位が前記第2の部位に対して第2の操作を行ったことを認識すると、前記第2の部位に紐付けして格納した実行状態に基づいて前記仮想オブジェクトの表示を復元する、
    請求項4に記載の情報処理装置。
  6. ユーザの身体上で前記第2の部位を設置することが可能な領域を検出する検出部をさらに備える、
    請求項1に記載の情報処理装置。
  7. 前記検出部は、ユーザの身体上で位置姿勢を取得可能な第3の部位から所定のオフセットを加えた場所を前記第2の部位として検出する、
    請求項6に記載の情報処理装置。
  8. 前記検出部は、前記第1の部位の位置姿勢に基づいて位置を推定可能な身体上の領域を前記第2の部位として検出する、
    請求項6に記載の情報処理装置。
  9. 前記検出部は、位置姿勢を取得可能な前記第1の部位と第3の部位の位置姿勢情報に基づいて逆キネマティクス演算により位置を推定可能な前記第2の部位を検出する、
    請求項6に記載の情報処理装置。
  10. 前記検出部は、前記第1の部位による操作性に基づいて、前記第2の部位のサイズ又は形状を検出する、
    請求項6に記載の情報処理装置。
  11. 前記検出部は、前記第1の部位で触れるキャリブレーションによって場所を特定可能な前記第2の部位を検出する、
    請求項6に記載の情報処理装置。
  12. 前記制御部は、ユーザから遠方に配置された仮想オブジェクトに対してユーザが操作を行うための操作部をユーザの手元に配置するように制御する、
    請求項1に記載の情報処理装置。
  13. 前記制御部は、前記操作部をユーザの身体上の第4の部位に配置するように制御する、
    請求項12に記載の情報処理装置。
  14. 前記制御部は、前記第4の部位に配置する前記操作部の向きを補正する、
    請求項13に記載の情報処理装置。
  15. 前記制御部は、ユーザの身体の向き、仮想オブジェクトが配置されている方向、又はユーザの視線方向のいずれかを基準にして前記操作部の向きを補正する、
    請求項14に記載の情報処理装置。
  16. ユーザの手及び指のうち少なくとも一方からなる第1の部位の位置姿勢又は形状を取得する取得ステップと、
    前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位がユーザの手及び指以外の身体上の第2の部位に所定の操作を行ったことを認識し、前記所定の操作に応じて表示装置において実空間に表示する仮想オブジェクトを制御する制御ステップと、
    を有する情報処理方法。
  17. ユーザの手及び指のうち少なくとも一方からなる第1の部位の位置姿勢又は形状を取得する取得部、
    前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位がユーザの手及び指以外の身体上の第2の部位に所定の操作を行ったことを認識し、前記所定の操作に応じて表示装置において実空間に表示する仮想オブジェクトを制御する制御部、
    としてコンピュータが機能するようにコンピュータ可読形式で記述されたコンピュータプログラム。
  18. 実空間に仮想オブジェクトを表示する表示装置と、
    ユーザの手及び指のうち少なくとも一方からなる第1の部位の位置姿勢又は形状を取得する取得部と、
    前記第1の部位の位置姿勢又は形状に基づいて、前記第1の部位がユーザの手及び指以外の身体上の第2の部位に所定の操作を行ったことを認識し、前記所定の操作に応じて仮想オブジェクトの表示を制御する制御部と、
    を具備する拡張現実感システム。
JP2021570663A 2020-01-17 2020-11-20 情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システム Active JP7589696B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2020006411 2020-01-17
JP2020006411 2020-01-17
PCT/JP2020/043516 WO2021145067A1 (ja) 2020-01-17 2020-11-20 情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システム

Publications (2)

Publication Number Publication Date
JPWO2021145067A1 JPWO2021145067A1 (ja) 2021-07-22
JP7589696B2 true JP7589696B2 (ja) 2024-11-26

Family

ID=76864583

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2021570663A Active JP7589696B2 (ja) 2020-01-17 2020-11-20 情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システム

Country Status (3)

Country Link
US (1) US12380655B2 (ja)
JP (1) JP7589696B2 (ja)
WO (1) WO2021145067A1 (ja)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US12033296B2 (en) 2018-05-07 2024-07-09 Apple Inc. Avatar creation user interface
JP7166813B2 (ja) * 2018-07-06 2022-11-08 株式会社コロプラ 仮想体験を提供するためにコンピュータで実行される方法、プログラム及びコンピュータ
US10890983B2 (en) 2019-06-07 2021-01-12 Facebook Technologies, Llc Artificial reality system having a sliding menu
US20230230333A1 (en) * 2020-08-25 2023-07-20 Maxell, Ltd. 3d virtual-reality display device, head-mounted display, and 3d virtual-reality display method
CN117256024A (zh) * 2021-04-12 2023-12-19 斯纳普公司 使用力反馈为视力障碍者提供ar
JP7658148B2 (ja) * 2021-04-15 2025-04-08 セイコーエプソン株式会社 ロボット画像の表示方法、コンピュータープログラム、及び、ロボット画像の表示システム
US20230171484A1 (en) * 2021-11-29 2023-06-01 Apple Inc. Devices, methods, and graphical user interfaces for generating and displaying a representation of a user
JP2023168840A (ja) * 2022-05-16 2023-11-29 キヤノン株式会社 情報処理装置、情報処理システム、情報処理方法、プログラム
JP2023178548A (ja) * 2022-06-06 2023-12-18 富士電機株式会社 作業支援装置、作業支援方法および作業支援プログラム
US12387449B1 (en) 2023-02-08 2025-08-12 Meta Platforms Technologies, Llc Facilitating system user interface (UI) interactions in an artificial reality (XR) environment
US12400414B2 (en) 2023-02-08 2025-08-26 Meta Platforms Technologies, Llc Facilitating system user interface (UI) interactions in an artificial reality (XR) environment
US20240281070A1 (en) * 2023-02-16 2024-08-22 Meta Platforms Technologies, Llc Simultaneous Controller and Touch Interactions
WO2024203015A1 (ja) * 2023-03-28 2024-10-03 ソニーグループ株式会社 情報処理装置、情報処理方法、およびプログラム
US20260064186A1 (en) * 2024-09-03 2026-03-05 Snap Inc. Dynamically orientated labels for xr user interfaces

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009104249A (ja) 2007-10-19 2009-05-14 Canon Inc 画像処理装置、画像処理方法
JP2016162321A (ja) 2015-03-04 2016-09-05 株式会社メガチップス 画像認識装置
JP2017530452A (ja) 2014-08-22 2017-10-12 株式会社ソニー・インタラクティブエンタテインメント 手袋インタフェースオブジェクト
WO2018008226A1 (ja) 2016-07-05 2018-01-11 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
WO2018146922A1 (ja) 2017-02-13 2018-08-16 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6040715B2 (ja) 2012-11-06 2016-12-07 ソニー株式会社 画像表示装置及び画像表示方法、並びにコンピューター・プログラム
US20180095635A1 (en) * 2016-10-04 2018-04-05 Facebook, Inc. Controls and Interfaces for User Interactions in Virtual Spaces
GB201709199D0 (en) * 2017-06-09 2017-07-26 Delamont Dean Lindsay IR mixed reality and augmented reality gaming system
US10386938B2 (en) * 2017-09-18 2019-08-20 Google Llc Tracking of location and orientation of a virtual controller in a virtual reality system
US11340707B2 (en) * 2020-05-29 2022-05-24 Microsoft Technology Licensing, Llc Hand gesture-based emojis

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009104249A (ja) 2007-10-19 2009-05-14 Canon Inc 画像処理装置、画像処理方法
JP2017530452A (ja) 2014-08-22 2017-10-12 株式会社ソニー・インタラクティブエンタテインメント 手袋インタフェースオブジェクト
JP2016162321A (ja) 2015-03-04 2016-09-05 株式会社メガチップス 画像認識装置
WO2018008226A1 (ja) 2016-07-05 2018-01-11 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
WO2018146922A1 (ja) 2017-02-13 2018-08-16 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム

Also Published As

Publication number Publication date
US20230031913A1 (en) 2023-02-02
US12380655B2 (en) 2025-08-05
JPWO2021145067A1 (ja) 2021-07-22
WO2021145067A1 (ja) 2021-07-22

Similar Documents

Publication Publication Date Title
JP7589696B2 (ja) 情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システム
US12164739B2 (en) Methods for interacting with virtual controls and/or an affordance for moving virtual objects in virtual environments
US10776991B2 (en) Method of providing virtual space, method of providing virtual experience, system and medium for implementing the methods
CN108475120B (zh) 用混合现实系统的远程设备进行对象运动跟踪的方法及混合现实系统
JP7798024B2 (ja) 情報処理装置及び情報処理方法、並びに拡張現実感システム
TW202105129A (zh) 具有用於閘控使用者介面元件的個人助理元件之人工實境系統
CN107896508A (zh) 可以作为多个目标/端点(设备)和的整合点的以人为中心的“设备的超ui”体系结构的方法和设备,以及面向“模块化”通用控制器平台以及输入设备虚拟化的具有动态上下文意识的手势输入的相关方法/系统
CN112154047A (zh) 远程操作系统、信息处理方法以及程序
WO2021192589A1 (ja) 情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システム
JP2018072604A (ja) Vr酔いを抑制するための方法、当該方法をコンピュータに実行させるためのプログラムおよび、情報処理装置
US12197652B2 (en) Control device and control method with set priorities for input operations in competitive relationship
JP6779840B2 (ja) 仮想空間における入力を支援するための方法および装置ならびに当該方法をコンピュータに実行させるプログラム
JP6444345B2 (ja) 仮想空間における入力を支援するための方法および装置ならびに当該方法をコンピュータに実行させるプログラム
US20250165078A1 (en) Information processing apparatus and information processing method
WO2021145068A1 (ja) 情報処理装置及び情報処理方法、コンピュータプログラム、並びに拡張現実感システム
JP6776155B2 (ja) 仮想現実を提供するための方法、および当該方法をコンピュータに実行させるためのプログラム、および当該プログラムを実行するための情報処理装置
EP4610784A1 (en) Information processing device and information processing method
EP4610785A1 (en) Input device, control apparatus, control method, information processing apparatus, and information processing method
CN111766959B (zh) 虚拟现实交互方法和虚拟现实交互装置
JP2019015972A (ja) Vr酔いを抑制するための方法、当該方法をコンピュータに実行させるためのプログラムおよび、情報処理装置
KR20250090310A (ko) 정보 처리 장치 및 정보 처리 방법
JP2018014110A (ja) 仮想空間を提供する方法、仮想体験を提供する方法、プログラム、および記録媒体
JP6189496B1 (ja) 仮想空間を提供する方法、仮想体験を提供する方法、プログラム、および記録媒体
JP2024154673A (ja) 処理装置、制御方法、プログラム
WO2024090298A1 (ja) 情報処理装置、情報処理方法、及び、入力デバイス

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20230927

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240625

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20240910

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20240911

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20241015

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20241028

R150 Certificate of patent or registration of utility model

Ref document number: 7589696

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150