JP6970797B2 - 情報処理装置、情報処理装置の制御方法、及びプログラム - Google Patents

情報処理装置、情報処理装置の制御方法、及びプログラム Download PDF

Info

Publication number
JP6970797B2
JP6970797B2 JP2020130686A JP2020130686A JP6970797B2 JP 6970797 B2 JP6970797 B2 JP 6970797B2 JP 2020130686 A JP2020130686 A JP 2020130686A JP 2020130686 A JP2020130686 A JP 2020130686A JP 6970797 B2 JP6970797 B2 JP 6970797B2
Authority
JP
Japan
Prior art keywords
user
finger
virtual object
information processing
virtual
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
JP2020130686A
Other languages
English (en)
Other versions
JP2020198108A (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 Interactive Entertainment Inc
Original Assignee
Sony Interactive Entertainment Inc
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 Interactive Entertainment Inc filed Critical Sony Interactive Entertainment Inc
Publication of JP2020198108A publication Critical patent/JP2020198108A/ja
Priority to JP2021177997A priority Critical patent/JP7524153B2/ja
Application granted granted Critical
Publication of JP6970797B2 publication Critical patent/JP6970797B2/ja
Priority to JP2023168614A priority patent/JP2023169411A/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/52Controlling the output signals based on the game progress involving aspects of the displayed game scene
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/50Controlling the output signals based on the game progress
    • A63F13/53Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game
    • A63F13/533Controlling the output signals based on the game progress involving additional visual information provided to the game scene, e.g. by overlay to simulate a head-up display [HUD] or displaying a laser sight in a shooting game for prompting the player, e.g. by displaying a game menu
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/55Controlling game characters or game objects based on the game progress
    • A63F13/57Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game
    • A63F13/577Simulating properties, behaviour or motion of objects in the game world, e.g. computing tyre load in a car race game using determination of contact between game characters or objects, e.g. to avoid collision between virtual racing cars
    • 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
    • G06COMPUTING; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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; CALCULATING OR 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • 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
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/213Input arrangements for video game devices characterised by their sensors, purposes or types comprising photodetecting means, e.g. cameras, photodiodes or infrared cells
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/10Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals
    • A63F2300/1087Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by input arrangements for converting player-generated signals into game device control signals comprising photodetecting means, e.g. a camera
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/30Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game characterized by output arrangements for receiving control signals generated by the game device
    • A63F2300/308Details of the user interface
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/64Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car
    • A63F2300/643Methods for processing data by generating or executing the game program for computing dynamical parameters of game objects, e.g. motion determination or computation of frictional forces for a virtual car by determining the impact between objects, e.g. collision detection
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/60Methods for processing data by generating or executing the game program
    • A63F2300/66Methods for processing data by generating or executing the game program for rendering three dimensional images
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F2300/00Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game
    • A63F2300/80Features of games using an electronically generated display having two or more dimensions, e.g. on a television screen, showing representations related to the game specially adapted for executing a specific type of game
    • A63F2300/8082Virtual 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/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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Physics & Mathematics (AREA)
  • Optics & Photonics (AREA)
  • Computer Hardware Design (AREA)
  • Computer Graphics (AREA)
  • Software Systems (AREA)
  • User Interface Of Digital Computer (AREA)
  • Processing Or Creating Images (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Image Analysis (AREA)
  • Position Input By Displaying (AREA)

Description

本発明は、情報処理装置、情報処理装置の制御方法、及びプログラムに関する。
近年、ヘッドマウントディスプレイ等、ユーザの頭部に装着され、情報を表示するデバイスが普及している。こうしたデバイスのうちには、ユーザの左目と右目とに異なる位置から見た仮想的な像を提示して、立体的な画像をユーザに視認させるものがある。
またこのデバイスでは、ユーザに対して仮想的な像の一つとしてメニューを提示し、ユーザによる選択を受け入れることも行われる。
しかしながら、従来のメニュー選択では、ユーザはゲームコントローラ等の物理的なボタンを備えたデバイスを別途用いて、メニューを選択する操作を行うこととしていた。また、デバイスの傾きや位置等を検出して、当該デバイスの傾きや移動方向、移動量に応じて仮想的な像として表示したカーソルを移動し、メニューの選択を行わせることも可能である。しかしながら、いずれの場合もユーザは表示されている仮想的なメニューオブジェクトを直接触れるような操作を行うことができず、違和感なく操作を行わせることができなかった。
本発明は上記実情に鑑みて為されたもので、メニュー等、仮想的に表示された像に係る操作を違和感なく行うことを可能とする情報処理装置、情報処理装置の制御方法、及びプログラムを提供することを、その目的の一つとする。
上記従来例の問題点を解決する本発明は、ユーザに対し、仮想空間の画像を提示する表示装置に接続された情報処理装置であって、実空間のユーザの各指先の位置の情報を取得する取得手段と、仮想空間内に、仮想的なオブジェクトの位置及び画像を設定するオブジェクト設定手段と、前記仮想空間内に設定された仮想的なオブジェクトと、ユーザの指との接触を判定する判定手段と、前記仮想的なオブジェクトの、前記ユーザの指のうち、当該オブジェクトに接触していると判定される指の位置に対応する部分が当該指よりもユーザ側より奥側に位置するよう、前記仮想的なオブジェクトを部分的に変形した状態に設定する形状設定手段と、を有し、前記形状が設定された仮想的なオブジェクトを、前記表示装置において仮想空間の画像として表示させることとしたものである。
本発明によると、メニュー等、仮想的に表示された像に係る操作を違和感なく行うことが可能となる。
本発明の実施の形態に係る情報処理装置の構成例を表すブロック図である。 本発明の実施の形態に係る情報処理装置に接続される表示装置の例を表す構成ブロック図である。 本発明の実施の形態に係る情報処理装置の例を表す機能ブロック図である。 本発明の実施の形態に係る情報処理装置が用いる座標系の例を表す説明図である。 本発明の実施の形態に係る情報処理装置により設定される仮想的なオブジェクトの例を表す説明図である。 本発明の実施の形態に係る情報処理装置により表示される画像の例を表す説明図である。 本発明の実施の形態に係る情報処理装置が設定する仮想的なオブジェクトの別の例を表す説明図である。 本発明の実施の形態に係る情報処理装置が設定する仮想的なオブジェクトのさらに別の例を表す説明図である。
本発明の実施の形態について図面を参照しながら説明する。本発明の実施の形態に係る情報処理装置1は、図1に例示するように、制御部11と、記憶部12と、通信部13とを含んで構成される。またこの情報処理装置1は、ユーザが頭部に装着するヘッドマウントディスプレイ(HMD)などの表示装置2との間で通信可能に接続されている。
この表示装置2は、装着しているユーザに対して実空間と、仮想空間の画像とを重ね合わせて(半透明合成した状態で)提示する、例えば透過型のHMDであってもよいし、仮想空間の画像を表示する非透過型のHMDであってもよい。この表示装置2の一例は、ユーザが頭部に装着して使用する表示デバイスであって、図2に例示するように、制御部21と、通信部22と、撮像部23と、デプスカメラ24と、表示部25とを含む。ここでの例では表示装置2の制御部21は、マイクロコンピュータ等のプログラム制御デバイスであって、内蔵する記憶部等の図示しないメモリ等に格納されたプログラムに従って動作し、情報処理装置1から通信部22を介して入力される情報に応じた映像を表示部25に表示させて、ユーザに閲覧させる。
通信部22は、有線または無線にて情報処理装置1との間で通信可能に接続される。この通信部22は、後に述べる撮像部23が撮像した画像データやデプスカメラ24が出力する深度情報を、情報処理装置1へ送出する。またこの通信部22は、情報処理装置1から表示装置2宛に送信された情報を、制御部21に出力する。
撮像部23は、カメラ等であり、ユーザの前方(頭部前方)の所定視野内の実空間の画像を繰り返し撮像し、撮像して得た画像データを、通信部22を介して情報処理装置1へ送出する。
デプスカメラ24は、撮像部23が撮像する視野内の画像に含まれる画素ごとに、当該画素内に撮像された対象物までの距離を検出し、当該検出した画素ごとの距離を表す深度情報(デプスマップ)を出力する。具体的にこのデプスカメラ24は、赤外線を投射して対象物までの距離を測定する等の広く知られたデプスカメラを用いることができる。
表示部25は、ユーザの右目と左目とのそれぞれの目の前に、それぞれの目に対応した映像を表示するものとする。この表示部25は、有機EL表示パネルや液晶表示パネルなどの表示素子を含む。この表示素子が制御部21から入力される指示に従って映像を表示する。この表示素子は、左目用の映像と右目用の映像とを一列に並べて表示する1つの表示素子であってもよいし、左目用の映像と右目用の映像とをそれぞれ独立に表示する一対の表示素子であってもよい。なお、本実施形態においてこの表示装置2は、ユーザが外界の様子を視認することができる透過型の表示装置である。
ここで制御部11は、CPU等のプログラム制御デバイスであり、記憶部12に格納されているプログラムを実行する。本実施の形態では、この制御部11は、ゲームアプリケーション等のアプリケーションプログラムを実行し、また、次の処理を実行する。
すなわち、この制御部11は、表示装置2が出力する、撮像部23で撮像された画像データに基づいて、実空間のユーザの各指先の位置と、各指の方向(各指がユーザ側に対して背を向けているか腹を向けているか)を検出し、これらを表す情報を取得する。
またこの制御部11は、仮想空間の情報を設定する。具体的に制御部11は、所定の仮想空間内に仮想的なオブジェクトの位置及び画像を設定し、当該仮想空間内に設定された仮想的なオブジェクトと、ユーザの指との接触を判定する。制御部11はさらに、この仮想的なオブジェクトの、ユーザの指のうち背を向けている指であって、当該オブジェクトに接触していると判定される指の位置に対応する部分が当該指よりもユーザ側より奥側に位置するよう、仮想的なオブジェクトを部分的に変形した状態に設定する。
この制御部11の詳しい動作については後に説明する。なお、以下の例では、ここで表示し、ユーザの指との接触を判定して変形する仮想的なオブジェクトを、他の仮想的なオブジェクト(例えば実空間のオブジェクトに対応して配置される仮想的なオブジェクトなど、ユーザとの指の接触を判定して変形しないもの)と区別するため、対象仮想オブジェクトと呼ぶ。
記憶部12は、RAM等のメモリデバイスやディスクデバイス等であり、制御部11が実行するプログラムを格納する。また、この記憶部12は制御部11のワークメモリとしても動作し、制御部11がプログラム実行の過程で使用するデータを格納する。このプログラムは、コンピュータ可読かつ非一時的な記録媒体に格納されて提供され、この記憶部12に格納されたものであってもよい。
通信部13は、有線または無線にてユーザの表示装置2との間で通信可能に接続される。この通信部13は、表示装置2が出力する画像データを受信して、制御部11へ送出する。またこの通信部13は、制御部11から表示装置2宛に送信する画像データを含む情報を受け入れて、当該情報を、表示装置2に出力する。
ここで情報処理装置1の制御部11の動作について説明する。本実施の形態の制御部11は、一例として図3に例示するように、指検出部31と、オブジェクト設定部32と、判定処理部33と、オブジェクト制御部34と、出力部35と、処理制御部36とを含んで構成される。
ここで指検出部31は、実空間のユーザの各指先の位置及び向きの情報を取得する。一例として本実施の形態の指検出部31は、表示装置2から受信した画像データや深度情報に基づき、当該画像データに撮像された対象物のうちから指位置を推定するとともに、ユーザから見て指が背側(爪の側)を向けているか腹側を向けているかを判断する。具体的に、この指検出部31による、画像中からの指の位置の検出処理は、V.I.Pavlovic, et.al., “Visual interpretation of hand gestures for human-computer interaction: a review,” IEEE Transaction on Pattern Analysis and Machine Intelligence, Vol. 19, No.7, pp. 677-695, 1997に示される方法のほか、種々の広く知られた方法を採用できる。また本実施の形態では、情報処理装置1は、図4に例示するように、ユーザが直立しているときのユーザの冠状面(coronal plane)に平行な面内にあり、かつ床面に平行な軸をX軸(ユーザの右側を正の方向とする)、上記ユーザの冠状面に平行な面内にあって床面の法線に平行な軸をY軸(鉛直上方を正の方向とする)とし、上記ユーザの冠状面の法線方向をZ軸(なお、ユーザの前方を正の方向とする)とした直交座標系を用いてこの実空間内の指の位置を表現するものとする。この座標系では、Z軸に平行な座標(x,y,ζ)(ζは任意の値)上の各点が、ユーザの視野(二次元的な視野)のX,Y直交座標系上の点T(x,y)上に視認されることとなる。
また指が背側(爪の側)を向けているか腹側を向けているかを判断する処理の例としては、指の爪部分を検出する処理(例えば、Noriaki Fujishima, et. al., “Fingernail Detection Method from Hand Images including Palm,” Proceedings of IAPR International Conference on Machine Vision Applications, pp. 117-120, 2013等に示された処理)を行い、検出された位置にある指のうち、対応する画像部分が爪と認識されていない指について指の腹側が向いていると判断し、対応する画像部分が爪と認識された指については、背側が向いていると判断することとすればよい。本実施の形態では、この指検出部31が、本発明の取得手段を実現する。
オブジェクト設定部32は、仮想空間内に、対象仮想オブジェクトの位置及び画像を設定する。本実施の形態の一例では、このオブジェクト設定部32は、制御部11がアプリケーションプログラムの実行中に、当該アプリケーションプログラムの処理に基づいて出力する指示に従い、シート状または、多面体の対象仮想オブジェクトを、仮想空間内に配する。またオブジェクト設定部32は、上記指示に従い、当該対象仮想オブジェクトのユーザ側に表示される面に、アプリケーションプログラムの処理に基づいて指示された画像が表示されるよう設定する。具体的にこのアプリケーションプログラムに基づく指示は、ユーザインタフェース部品(仮想的なボタン等)の形状やボタン内に表示するべき文字列等、並びに、ボタンの配置位置等の情報を含む。オブジェクト設定部32は、この指示に従って、ユーザインタフェースを表す画像を生成し、対象仮想オブジェクトの面に当該画像が表示された状態となるよう、対象仮想オブジェクト表面のテクスチャを設定する。このように対象仮想オブジェクトの表面に画像を設定する処理は広く知られているので、ここでの詳しい説明を省略する。
またこのオブジェクト設定部32は、表面に画像を設定した対象仮想オブジェクトの仮想空間内の配置位置を設定する。本実施の形態では、情報処理装置1は、図4に例示した実空間の座標系と同様、ユーザが直立したときのユーザの冠状面に平行な面内にあり、かつ床面に平行な軸をX軸(ユーザの右側を正の方向とする)、上記ユーザの冠状面に平行な面内にあって床面の法線に平行な軸をY軸(鉛直上方を正の方向とする)、上記ユーザの冠状面の法線方向をZ軸(なお、ユーザの前方を正の方向とする)とした直交座標系を用いて仮想空間を設定する。なお、実空間の座標値と仮想空間の座標値とを一致させるため、予め座標系のX軸方向の比率α,Y軸方向の比率β,Z軸方向の比率γを、キャリブレーションにより求めておく。一例として、仮想空間内の既知の座標に点を表示し、この点に指先で触れるようにユーザに指示し、ユーザが触れたとした時点で指検出部31が検出した実空間での座標値を取得する処理を、仮想空間内の複数の座標の点について行い、仮想空間内の所定の、少なくとも一つの点のペア間の距離と実空間におけるそれぞれに対応する点のペア間の距離との比率を求めればよい。
オブジェクト設定部32は、この座標系内の座標の値を用いて、対象仮想オブジェクト(図4:V)の位置や形状を設定するものとする。このような仮想的な三次元のオブジェクトの配置や形状の設定についても広く知られているので、ここでの詳しい説明を省略する。
判定処理部33は、仮想空間内に設定された対象仮想オブジェクトと、ユーザの指との接触を判定する。本実施の形態における対象仮想オブジェクトとユーザの指との接触の判定は、ユーザが表示装置2を通じて視認する実空間のユーザ自身の指と、これに重ね合わせて表示されている仮想空間における対象仮想オブジェクトとの仮想的な接触の有無を判定するものである。具体的な例として、この判定処理部33は、オブジェクト設定部32が設定した仮想空間内の対象仮想オブジェクトの外形の領域を含む仮想的な三次元の領域を設定し、指検出部31が検出した実空間での指の位置に対応する仮想空間内の座標値が、ここで設定した三次元の領域内にあるとき、対象仮想オブジェクトと、ユーザの指とが接触したと判定する。
オブジェクト制御部34は、ユーザの指のうち背を向けている指であって、オブジェクト設定部32が設定した対象仮想オブジェクトに接触しているとして、判定処理部33が判定した指Fがあれば、当該対象仮想オブジェクトの、当該指Fに対応する部分が、当該指Fよりもユーザ側にあるか、奥側にあるかを判断する。オブジェクト制御部34は、ここで当該対象仮想オブジェクトの、当該指Fに対応する部分が、当該指Fよりもユーザ側にあれば、当該部分が、指Fより奥側に位置するよう(当該部分が奥側に凹となるよう)、当該対象仮想オブジェクトを、部分的に変形した状態に設定する。
具体的な例として、図5に例示するように、オブジェクト設定部32が対象仮想オブジェクトJを、当該オブジェクトJの面の法線がZ軸に平行となるよう配置しているとする。なお、このオブジェクトはZ=Zjの位置に配され、XY面内の形状は矩形状をなすものとし、そのユーザ側から見た左上隅の座標を(Xtl,Ytl)、右下隅の座標を(Xrb,Yrb)とする。また、厚さは実質的に「0」であるものとし、オブジェクトJは実質的にシート状であるものとする。
判定処理部33は、このオブジェクト設定部32が設定した仮想空間内の仮想的なシート状のオブジェクトJの外形の領域を含む仮想的な三次元の領域Rを設定する。一例としてこの領域Rは、(Xtl,Ytl,Zj−ΔZ)と(Xrb,Yrb,Zj−ΔZ)とを対角線とする矩形状の近位側面と、(Xtl,Ytl,Zj+ΔZ)と(Xrb,Yrb,Zj+ΔZ)とを対角線とする矩形状の遠位側面とで囲まれる六面体の領域とする。
ここでユーザの指Fの仮想空間内での対応する位置座標が(Xf,Yf,Zf)(Z軸方向の値はデプスカメラ24による深度情報から取得できる)であり、ユーザ側に背(爪側)を向けているとするとき、判定処理部33は、このユーザ側に背(爪側)を向けていると判断される指Fの仮想空間内での対応する位置座標(Xf,Yf,Zf)が、上記設定した領域Rに含まれるか否かを調べる。
そして判定処理部33が、指Fの仮想空間内での対応する位置座標(Xf,Yf,Zf)が、上記設定した領域Rに含まれないと判断している間は、オブジェクト制御部34は処理を行わない。一方、判定処理部33が、指Fの仮想空間内での対応する位置座標(Xf,Yf,Zf)が、上記設定した領域Rに含まれると判断したときには、当該指Fのユーザ側から見た位置座標(Xf,Yf)の位置にある仮想的なシート状のオブジェクトJのZ軸の値(ここではX,Yの座標値に関わらずZjとなっている)と、指Fの位置座標のZ軸の値Zfとを比較する。ここでZf>Zjであれば、指Fが仮想的なシート状のオブジェクトJよりも遠方にあることとなるので、この場合にオブジェクト制御部34は、仮想的なシート状のオブジェクトJの指Fが表示されるX,Y面内の領域Rfが、対応する指Fの位置よりも遠位側(ユーザに対して奥側)にあるように仮想的なシート状のオブジェクトJを部分的に変形する。この変形は例えば、地形マッピング(height map)を用いる公知の方法で行うことができるので、ここでの詳しい説明を省略する。
出力部35は、オブジェクト設定部32により設定された(さらに、条件によってはオブジェクト制御部34により変形された)、仮想空間内のオブジェクトを、ユーザの目の位置(例えば表示装置2の撮像部23の位置)に仮想的に配した仮想的なカメラからの像としてレンダリングし、表示装置2に対して当該レンダリングの結果として得られた画像データを送出する。
処理制御部36は、対象仮想オブジェクトの面に表示された画像と、ユーザの指の位置の情報とに基づいて、予め定めた処理を実行する。具体的にこの処理制御部36は、判定処理部33が対象仮想オブジェクトに、背側を向けていると判断される指Fが接触していると判断している状態から、判定処理部33が対象仮想オブジェクトに、背側を向けていると判断される指Fが接触していないと判断している状態となったときに、当該指Fの位置にある対象仮想オブジェクトの面に表示された画像部分にあるユーザインタフェース部品(仮想的なボタン等)が押下されたものとして、当該ユーザインタフェース部品について予め設定された処理(例えばプログラムの起動等)を実行する。
また本実施の形態では、処理制御部36は、判定処理部33が対象仮想オブジェクトに、背側を向けていると判断される指Fが接触していると判断している状態を維持したままユーザが指を移動する操作を行う場合、つまり、いわゆるスワイプや、ピンチイン・ピンチアウト(二以上の指が接触していると判断される状態で、当該指間の距離を変化させる操作が行われたとき)などの操作がなされたときには、奥側へ凹となる位置を当該移動後の指の位置に移動させつつ、スワイプ、ピンチイン・ピンチアウトの操作に応じて予めアプリケーションプログラム等によって指定された処理を実行する。
[動作]
本実施の形態の一例は以上の構成を備え、次のように動作する。すなわち本実施の形態の情報処理装置1は、例えばゲーム等のアプリケーションプログラムを実行しており、その実行中に、仮想空間内にメニュー(選択項目のインタフェース部品を配列した画像)を表示する処理を行う。
このとき本実施の形態の情報処理装置1は、アプリケーションプログラムの指示に従って、メニューのユーザインタフェースを表す画像を生成し、当該画像を、表面のテクスチャとして設定した仮想的なシート状のオブジェクト表面のテクスチャを生成する。
そして情報処理装置1は、例えば図4に例示したと同様の座標系において、図5に例示するように、仮想的なシート状のオブジェクトJを、当該オブジェクトJの面の法線がZ軸に平行となるよう配置する。すなわち、オブジェクトJをZ=Zjの位置に配する。また、このオブジェクトJのXY面内の形状は矩形状をなす。そのユーザ側から見た左上隅の座標を(Xtl,Ytl)、右下隅の座標を(Xrb,Yrb)とする。また、Z軸方向の厚さは実質的に「0」である。
情報処理装置1は、ここで仮想空間内のオブジェクトJを、ユーザの目の位置(例えば表示装置2の撮像部23の位置)に仮想的に配した仮想的なカメラからの像としてレンダリングし、表示装置2に対して当該レンダリングの結果として得られた画像データを送出する。
そして表示装置2は、このレンダリングの結果を、同じ方向の実空間の像に重ね合わせて(透過的に)表示する。これによりユーザは、図6に示すような画像を視認することとなる(S1)。
ここでユーザが仮想空間のZ=Zjの位置にその人差し指Fが届くように手を伸ばすと、この手も実空間内の像としてユーザに視認される。この状態では、ユーザの人差し指Fはユーザ側にその背(爪側)を向けているとする。
この状態でユーザが、表示装置2により表示されているオブジェクトJ上のボタンBに当該指Fを伸ばすと、情報処理装置1は、実空間内でのユーザの指Fの位置(指Fの指先の位置)と、向き(ユーザに背側を向けているか腹側を向けているか)とを認識する。ここでは情報処理装置1は、指Fの向きが「背側」であると判断する。
そして情報処理装置1は、予め設定した、仮想的なシート状のオブジェクトJの外形の領域を含む仮想的な三次元の領域R(この領域Rは、(Xtl,Ytl,Zj−ΔZ)と(Xrb,Yrb,Zj−ΔZ)とを対角線とする矩形状の近位側面と、(Xtl,Ytl,Zj+ΔZ)と(Xrb,Yrb,Zj+ΔZ)とを対角線とする矩形状の遠位側面とで囲まれる六面体の領域とする)内に、ユーザの指Fの指先の実空間内の位置に対応する仮想空間内の座標が含まれるか否かを調べる。
具体的に、ユーザの指Fの指先の実空間内の位置に対応する仮想空間内の座標が(Xf,Yf,Zf)であるとき、情報処理装置1は、
Xtl≦Xf≦Xrb、かつ、
Ytl≦Yf≦Yrb、かつ、
Zj−ΔZ≦Zf≦Zj+ΔZ
の条件(接触条件と呼ぶ)を満足するか否かを判断する。
ここで背側となっている指Fの指先の座標が、上記接触条件を満足していると判断すると、情報処理装置1は、当該指Fのユーザ側から見た位置座標(Xf,Yf)の位置にある仮想的なシート状のオブジェクトJのZ軸の値(ここではX,Yの座標値に関わらずZj)と、指Fの位置座標のZ軸の値Zfとを比較する。
ここでZf>Zjであれば、指Fが仮想的なシート状のオブジェクトJよりも遠方にあることとなるので、情報処理装置1は、仮想的なシート状のオブジェクトJの指Fが表示されるX,Y面内の領域Rfが、対応する指Fの位置よりも遠位側(ユーザに対して奥側)にあるように仮想的なシート状のオブジェクトJを部分的に変形する。すなわち、オブジェクトJに、(Xf,Yf)の位置を中心として所定のR以下の半径rの位置上にあるオブジェクトJの各点のZ軸の値が、Zj+z0(Zf−Zj)・exp(−r2/R2)となるように設定する。ここでz0は、経験的に定めた「1」以上の定数である。このようにすると、オブジェクトJ上の(Xf,Yf)の位置を中心に所定の半径R以下の部分が、指Fの位置よりもユーザからみて奥側に押し込まれたように変形する(S2)。この変形の形状は、ここでは釣り鐘型の関数を用いたが、これに限られない。
情報処理装置1は、この処理の間、仮想空間内のオブジェクトJを、ユーザの目の位置(例えば表示装置2の撮像部23の位置)に仮想的に配した仮想的なカメラからの像としてレンダリングし、表示装置2に対して当該レンダリングの結果として得られた画像データを送出する。そして表示装置2は、このレンダリングの結果を、同じ方向の実空間の像に重ね合わせて(透過的に)表示する。
なお、このとき情報処理装置1は、仮想的なシート状のオブジェクトJのユーザの手指と重なり合う部分については、マスクして描画しないよう制御してもよい。これによりユーザには、オブジェクトJ上のボタン等のインタフェース部品が操作されていることを明示できるとともに、オブジェクトJを指が突き抜けてしまうことによる不自然な描画がなされることがなくなる。
情報処理装置1は、さらに、ここから指Fの指先の座標が接触条件を満足しなくなったときの指Fの指先の(X,Y)座標に対応する位置にある、オブジェクトJ上のボタン等のインタフェース部品を識別する。そして当該識別されたインタフェース部品があれば、当該インタフェース部品についてユーザが操作したときに行うべき処理としてアプリケーションプログラム側で予め定められている処理を実行する。
[オブジェクトの位置を移動する例]
なお、ここまでの説明では、表示装置2が表示する対象仮想オブジェクトをユーザの指が突き抜けてしまわないよう、対象仮想オブジェクトの、指の位置に対応する部分を、ユーザの指の位置より遠方に位置することとなるように対象仮想オブジェクトの一部を変形することとしていたが、本実施の形態はこれに限られるものではない。
例えば、ユーザの指のうち背を向けている指であって、オブジェクト設定部32が設定した対象仮想オブジェクトに接触しているとして、判定処理部33が判定した指Fがあれば、オブジェクト制御部34は、当該対象仮想オブジェクトの、当該指Fに対応する部分が、当該指Fよりもユーザ側にあるか、奥側にあるかを判断し、対象仮想オブジェクトの、当該指Fに対応する部分が、当該指Fよりもユーザ側にあると判断されたときには、対象仮想オブジェクト全体の位置をZ軸方向に平行移動して、指Fよりも遠方に当該対象仮想オブジェクトの、当該指Fに対応する部分が、当該指Fよりも奥側にあるように設定してもよい。
さらに本実施の形態の一例では、情報処理装置1は、背側となっている指Fの指先の座標が、上記接触条件を満足していると判断したときの、当該指Fのユーザ側から見た位置座標(Xf,Yf)の位置にある対象仮想オブジェクトJのZ軸の値(Zj(Xf,Yf)とする)と、指Fの位置座標のZ軸の値Zfとを比較し、
Zth>Zf−Zj(Xf,Yf)>0
であれば、対象仮想オブジェクトの、指の位置に対応する部分を、ユーザの指の位置より遠方に位置することとなるように対象仮想オブジェクトの一部を変形し、
Zf−Zj(Xf,Yf)≧Zth
であれば、対象仮想オブジェクト全体の位置をZ軸方向に平行移動して、指Fよりも遠方に当該対象仮想オブジェクトの、当該指Fに対応する部分が、当該指Fよりも奥側にあるように設定することとしてもよい。なお、ここでZthは予め設定されたしきい値(Zth>0とする)である。
この例では、ユーザの指がオブジェクトJの元のZ軸上の位置よりZth未満だけ奥にある間はオブジェクトJの一部が変形して部分的に押し込まれたかのように表示され、さらに続けてZthを超えて奥へ指を移動すると、オブジェクトJ全体が移動してオブジェクトJのZ軸方向の移動操作を行うことが可能となる。このようにオブジェクトJ全体を移動した場合は、情報処理装置1は、その後、ユーザの指先の座標が接触条件を満足しなくなったときにも、対応する位置にあるインタフェース部品についての操作を実行しないこととしてもよい。
[オブジェクトのマスク]
また本実施の形態において、情報処理装置1は、表示装置2が出力する深度情報を参照し、対象仮想オブジェクトJ上の点(x,y,Zj(x,y))よりも手前側にユーザの手指がある場合、つまり、視野内の点(x,y)における深度情報が表す実空間での対象物までのZ軸上の距離に対応する仮想空間上のZ軸の値Zvが、Zj(x,y)>Zvであるときには、オブジェクトJの(x,y)の位置における画像をマスクして描画しないこととしてもよい。これにより、手前側にある対象物によりオブジェクトが隠蔽された状態を表現できる。
[腹側向きの指]
また本実施の形態の情報処理装置1は、腹側(爪とは反対側)を向いたユーザの指Fが、対象仮想オブジェクトJ上の点(x,y,Zj(x,y))よりも奥側である場合、つまり当該指Fの指先の位置のZ軸方向の成分Zfが、Zf>Zj(x,y)である場合は、当該ユーザの指Fに対応する位置のオブジェクトJの描画をマスクしないよう制御してもよい。この場合、当該腹側がユーザに向いているユーザ自身の指の像には、表示装置2により、オブジェクトJの対応部分が半透明合成されてユーザに提示されることとなる。
なお、この処理において、指Fの指先の位置のZ軸方向の成分Zfが、Zf>Zj(x,y)であるか否かを判断する際の対象仮想オブジェクトJ上の点(x,y,Zj(x,y))は、他の、背を向けている指の位置に応じて対象仮想オブジェクトJが部分的に変形して表示されている場合であっても、変形前の座標値を用いることとしてもよい。
[複数の指の認識]
さらに本実施の形態では、情報処理装置1は、ユーザの複数の指の位置及び向きをそれぞれ認識する。さらに、本実施の形態の情報処理装置1は、ユーザの左右のそれぞれの手の指の位置及び向き(ユーザに背側を向けているか腹側を向けているか)の情報を取得してもよい。
この例の情報処理装置1は、ユーザの左手の各指FL1からFL5について、その実空間上の位置に対応する仮想空間のXYZ座標系での座標値と、それぞれの指の向きの情報とを逐次取得している。また情報処理装置1は同様に、ユーザの右手の各指FR1からFR5についても、その実空間上の位置に対応する仮想空間のXYZ座標系での座標値と、それぞれの指の向きの情報とを逐次取得している。そして情報処理装置1は、各指について対象仮想オブジェクトと接触しているか否かを判断する。
また情報処理装置1は、例えば、腹側を向けていると判断される第1の指F1と、背側を向けていると判断される第2の指F2とがいずれも対象仮想オブジェクトと接触しており、かつ、指F1の指先の仮想空間のXYZ座標系での座標値(x1,y1,z1)と、指F2の指先の仮想空間のXYZ座標系での座標値(x2,y2,z2)との距離が予め定めたしきい値を下回っているとき(このとき、対象仮想オブジェクトの背側を向けている指F2に対応する部分は、当該指F2よりも奥側になるよう変形されるが、腹側を向いている指F1とのZ軸方向の位置比較では変形前の座標値で比較が行われるので、指F1に対しては半透明合成されて描画された状態にある)には、情報処理装置1は、対象仮想オブジェクトが当該指F1,F2の位置((x1,y1)と(x2,y2)とを含む所定範囲、例えばこれらを含む最小の円の範囲)でこれらの指で仮想的に挟まれていると判断して、所定の処理を実行してもよい。
例えば、仮想的に挟まれていると判断された状態で、指F1,F2をユーザが移動したときには、その移動量に応じて、対象仮想オブジェクト全体を、仮想空間内で平行移動してもよい。一例として、指F1が(x1,y1,z1)から(x1+Δx1,y1+Δy1,z1+Δz1)まで移動したと認識したときには、情報処理装置1は、対象仮想オブジェクトの仮想空間内での配置位置をX軸方向にΔx1、Y軸方向にΔy1、Z軸方向にΔz1だけ平行移動する。
また、対象仮想オブジェクトが複数の位置P1,P2でそれぞれ挟まれていると判断された状態(通常、一方の位置P1では左手の指FL1ないしFL5のうち複数の指で挟まれていると判断され、他方の位置P2では右手の指FR1ないしFR5のうち複数の指で挟まれていると判断される)で、位置P1において対象仮想オブジェクトを仮想的に挟んでいると判断されるいずれかの指Fp1と、位置P2とにおいて対象仮想オブジェクトを仮想的に挟んでいると判断されるいずれかの指Fp2と間の距離が変動する場合は、当該距離の変動に応じて、対象仮想オブジェクトの仮想空間内でのサイズを変更してもよい。例えば距離がもとの距離LからL+ΔLだけ変化したと認識したときには、情報処理装置1は、対象仮想オブジェクトのサイズを(L+ΔL)/L倍する。
この例では、図7に示すように、対象仮想オブジェクトの両端部を両手で把持した状態で、両手を離すように(図中矢印の方向に)それぞれ移動すると、情報処理装置1は、当該手の動きを認識して、仮想空間内での上記対象仮想オブジェクトを拡大するよう制御する。
さらに情報処理装置1は、対象仮想オブジェクトに接触していると判断される指が複数あり、かつ、いずれも同じ方向(背側または腹側のいずれか)を向いているときには、当該複数の指の移動方向に対象仮想オブジェクトの移動操作が行われるものとして処理してもよい。また、これら複数の指間の間隔が拡大または縮小しているときには、対象仮想オブジェクトの面に表示した画像(対象仮想オブジェクトの面に設定したテクスチャ)の拡大縮小の操作が行われたとして、対応する処理を実行してもよい。
[実空間上の対象物への貼付]
また本実施の形態の情報処理装置1は、ユーザの手指だけでなく、実空間上に配されている壁や机等の面の位置及び範囲を認識してもよい。このような平面の認識処理は、表示装置2が出力する深度情報を用いて判断する処理等の広く知られた方法を採用できる。
情報処理装置1は、対象仮想オブジェクトの移動操作が行われ、認識した平面のいずれかに触れた状態となったと判断される場合には、当該平面の位置に「貼り付けられた」状態として、その時点で対象仮想オブジェクトの移動を中止してもよい。
なお、この例において、情報処理装置1は、対象仮想オブジェクトの移動操作が行われ、認識した平面のいずれかに触れた状態となったと判断される場合に、当該、視野内の対象仮想オブジェクトの全体が、認識された平面に含まれる(全体が重なり合う)状態となったときに限り、当該平面の位置に「貼り付けられた」状態として、その時点で対象仮想オブジェクトの移動を中止してもよい。
このようにすると、対象仮想オブジェクトよりも狭小な平面に対象仮想オブジェクトが「貼り付け」られることがなくなる。
この場合、例えば当該対象仮想オブジェクトの周縁部から内側へユーザが指を動かす操作を行ったときに、「剥がされた」状態となったものとして、対象仮想オブジェクトが剥がれるアニメーションの表示を行ってもよい。その後、当該対象仮想オブジェクトは表示を中止してもよいし、剥がれた位置から再度移動操作が行われるように制御されてもよい。
なお、貼り付けられた場合は、ユーザの指の位置(接触していると判断されているか否か)に関わらず、情報処理装置1は、対象仮想オブジェクトの部分的な変形処理を中止する。これにより、対象仮想オブジェクトが貼り付けられた状態にある平面より奥側へ変形することが阻止される。
[指の側面の認識]
本実施の形態の情報処理装置1は、さらに、表示装置2が撮像して得た画像データから、ユーザの指の側面を認識してもよい。ユーザの指の側面を認識する場合、情報処理装置1は、指の側面を含む領域が、対象仮想オブジェクトの外周のいずれかの辺に接しつつ、対象仮想オブジェクトの中心方向へ移動している場合(対象仮想オブジェクトの左辺に指の側面を含む領域が接触し、さらに右側へ移動している場合など)には、対象仮想オブジェクトを、当該指の側面を含む領域の移動に合わせて平行移動してもよい。
一例として、この場合の情報処理装置1は、指の側面を含む領域が、対象仮想オブジェクトの外周のいずれかの辺に接しつつ、対象仮想オブジェクトの中心方向へ移動している間、指の側面を含む領域の重心を繰り返し取得し、重心が、XY平面内で(Δx,Δy)だけ移動したときに、当該指の側面を含む領域が接触している対象仮想オブジェクトをXY平面内で(Δx,Δy)だけ平行移動する。
さらに本実施の形態のある例では、指の側面を含む領域が対象仮想オブジェクトの外周に接触したと判断された時点からの累積の移動量(ΣΔx,ΣΔy)の大きさ(ΣΔx)2+(ΣΔy)2が予め定めたしきい値を超えたときには、当該対象仮想オブジェクトの表示を中止してもよい。
[オブジェクトの表示開始指示]
さらに本実施の形態の情報処理装置1は、ユーザの手のポーズ(各指の状態)に応じて、対象仮想オブジェクトの表示・表示停止制御や、表示態様の制御を行ってもよい。
一例として情報処理装置1は、ユーザが手を握ったと判断したときに、予め定めた対象仮想オブジェクトの表示を開始する。このとき、情報処理装置1は、ユーザが握った手がユーザにより視認される領域から、所定の距離範囲内に対象仮想オブジェクトを表示する。従って、この場合、握った手をユーザが移動すると、情報処理装置1は当該移動量(実空間中の移動量)に対応する仮想空間内の移動量だけ、対象仮想オブジェクトの仮想空間内の位置を移動する。
また、情報処理装置1は、手の握りの強さを検出してもよい。具体的にこの場合は、ユーザの手の握りの強さを認識するデバイス(不図示)を装着させ、当該デバイスの出力信号を無線にて通信部13を介して受信し、当該受信した出力信号に基づいて検出してもよい。この場合、情報処理装置1は、例えば手の握りの強さが強くなるほど、表示する対象仮想オブジェクトの大きさを大きくする等の処理を行ってもよい。
さらにこの例では、手を握っている間に限り、情報処理装置1が対象仮想オブジェクトを表示してもよい。既に述べたように、対象仮想オブジェクトの表面にユーザインタフェース部品を配置する場合は、この例では、ユーザが手を握っている場合にのみ、当該ユーザインタフェースを用いた指示入力が可能となる。
さらにこの場合、ユーザが手を握った状態で対象仮想オブジェクトが表示された後、ユーザが当該対象仮想オブジェクトを仮想的に指で挟んで移動したときには、その後ユーザが手を開いても、当該対象仮想オブジェクトの表示を中断しないようにしてもよい。
この処理では、手を握って対象仮想オブジェクトを表示している間は、「移動モード」としてユーザの所定部位(ここでは例えば腕)の近傍に対象仮想オブジェクトを表示し、情報処理装置1は、ユーザの所定部位の例としての腕の動きに従って対象仮想オブジェクトが移動する。また「移動モード」で表示した対象仮想オブジェクトを仮想的に指で挟んで移動すると、移動した位置で対象仮想オブジェクトが留まって表示される、「空中モード」となり、ユーザが手を開いたことを検出しても、情報処理装置1は対象仮想オブジェクトの表示を中断しない。またこの「空中モード」では、情報処理装置1は、ユーザの所定部位の例としての腕の動きに従うことなく、仮想空間内での対象仮想オブジェクトの位置を移動しないよう制御してもよい。
さらにこの「空中モード」にある対象仮想オブジェクトは、情報処理装置1の処理により、既に述べたように、その側面をユーザが指で仮想的に押すことにより、あるいは、指で仮想的に挟んで移動可能となっていてもよい。このように移動されるとき、例えば、実空間中の机等の平面の位置まで移動したときには、当該平面に仮想的に貼り付けられた状態として表示されるものとしてもよい(貼付モード)。
[空中への静止指示]
さらに本実施の形態の一例では、情報処理装置1は、複数の対象仮想オブジェクトの相対的位置を変化させる操作(例えば一方の対象仮想オブジェクトを、他方の対象仮想オブジェクトの位置まで移動させる操作)をユーザが行ったときに、当該複数の対象仮想オブジェクトに関する所定の処理を実行してもよい。
例えば情報処理装置1は、仮想空間に、対象仮想オブジェクトとして仮想的な押しピンのオブジェクトJpを表示しており、他方、もう一つの対象仮想オブジェクトとして、仮想的なシート状のオブジェクトJを表示しているとき、ユーザが押しピンのオブジェクトJpを、このシート状のオブジェクトJに重なり合う位置(仮想空間内の位置)に移動させ、そこで移動を完了する操作(例えば押しピンのオブジェクトJpをユーザから遠方へ押し込む操作)を行ったときに、その後の操作により、仮想的なシート状のオブジェクトJを当該操作が行われた位置から移動しないように制御してもよい。
この制御は例えば、ユーザにより仮想的なシート状のオブジェクトJを移動する操作が行われたときに、情報処理装置1が当該操作に対して何らの処理を行わないようにすることで実現できる。
また、この場合、ユーザが押しピンのオブジェクトJpを、シート状のオブジェクトJに重なり合う位置から、シート状のオブジェクトJに重なり合わない位置まで移動したときには、その後は、ユーザの操作により、仮想的なシート状のオブジェクトJを移動可能となるよう制御してもよい。
[ポップアップウィンドウ]
また本実施の形態の一例では、情報処理装置1は、対象仮想オブジェクトに重ね合わせて、別の対象仮想オブジェクトを生成して表示させてもよい。
この際、例えば、ユーザの指が、ある対象仮想オブジェクト上に表示されたボタンを押下している(このとき、当該対象仮想オブジェクトの当該ボタン部分は奥側へ凹となるよう変形されて表示されるよう制御されている)状態で、この対象仮想オブジェクトに重ね合わせて別の対象仮想オブジェクトを、いわゆるポップアップウィンドウのように表示させる場合がある。
このときには情報処理装置1は、当該別の対象仮想オブジェクトに対して、ユーザの指が重なり合っていても、ユーザの指が当該別の対象仮想オブジェクトの外側(描画される視野において別の対象仮想オブジェクトに重なり合わない位置)に一度移動するまでは、当該ユーザの指より奥側に、当該別の対象仮想オブジェクトを移動しないよう制御してもよい。このような制御は、新規に生成された対象仮想オブジェクトに対して、ユーザの指が重なり合わない位置に一度移動したか否かを表すフラグを関連付けておき、このフラグが、ユーザの指が重なり合わない位置に一度移動したことを表す状態となっていない間は、当該ユーザの指より奥側に、当該別の対象仮想オブジェクトを移動しないよう制御することなどで実現できる。
なお、ユーザが当該別の対象仮想オブジェクトの外側に指を移動せず、実空間内の、当該別の対象仮想オブジェクトが表示されている仮想空間内の位置に対応する位置より手前まで指を移動してしまった場合は、この指を避けるように、別の対象仮想オブジェクトを変形するアニメーションを表示してもよい。例えば、この別の対象仮想オブジェクトがシート状のオブジェクトであれば、シートがまくり上げられるようなアニメーションを表示してユーザの指が対象仮想オブジェクトを持ち上げながら手前に移動したかのように表示すればよい。この場合は、ユーザが対象仮想オブジェクトより手前に指を移動した時点で、ユーザの指が重なり合わない位置に一度移動したものとして、以降の処理を行うこととしてもよい。
[仮想的なオブジェクトの形状]
さらに、ここで情報処理装置1が表示する対象仮想オブジェクトの形状は、シート状あるいは直方体状に限られない。例えば、この対象仮想オブジェクトJは筒状をなし、筒状の表面に、図8に例示するように、ユーザインタフェース部品の画像を連続的に配してもよい。
この例では、ユーザが例えば二本の指で対象仮想オブジェクトJの表面を、仮想的に、一方方向に向かってなでる動作を行ったと判断すると、情報処理装置1が当該なでた方向に円筒の中心を回転中心として、対象仮想オブジェクトJを図8の矢印方向に回転移動してもよい。このようにすると、筒状体の対象仮想オブジェクトを回転させて、当該回転によりユーザに視認可能になった部分に配されていたユーザインタフェース部品に、ユーザがアクセス可能となる。
[接触状態の表示]
また情報処理装置1は、仮想空間内の対象仮想オブジェクトと、ユーザの指とが接触している状態と、していない状態とで、対象仮想オブジェクトの表示態様が互いに異なるよう、対象仮想オブジェクトの表示態様を設定してもよい。
一例として、情報処理装置1は、ユーザの指とが接触している状態と、していない状態とで、対象仮想オブジェクトの外周周縁部(輪郭線)の色を変更する。
また、ユーザが、手などに触力覚を提示可能なデバイスを装着している場合、情報処理装置1は、仮想空間内の対象仮想オブジェクトと、ユーザの指とが接触している状態となったとき、あるいは、ユーザの指とが接触している状態が維持されているときに、予め定めた触力覚を提示するよう、当該デバイスに指示してもよい。
これにより、ユーザは、仮想空間内の対象仮想オブジェクトと、ユーザの指とが接触したときなどに、触力覚によるフィードバックを得ることが可能となる。
[移動の制限]
さらに本実施の形態の一例では、情報処理装置1は、実空間内の壁面や机等のオブジェクト(実オブジェクト)の位置及び形状を識別し(この方法は広く知られているため、ここでの詳しい説明を省略する)、仮想空間内の対応する位置(ユーザからの相対的位置を一致させて配置する)に、対応する仮想的なオブジェクト(対応オブジェクト)を配置してもよい。
この場合において、ユーザが対象仮想オブジェクトを移動している間、移動中の対象仮想オブジェクトと、対応オブジェクトとの仮想空間内での接触を判定し、接触すると判定される位置には移動しないよう制御してもよい。
なお、この例において対応オブジェクトの形状は、必ずしも実空間内の対応する実オブジェクトの形状に従っていなくてもよく、例えば実オブジェクトの外接直方体を仮想空間内の対応オブジェクトの形状としてもよい。
1 情報処理装置、2 表示装置、11 制御部、12 記憶部、13 通信部、21 制御部、22 通信部、23 撮像部、24 デプスカメラ、25 表示部、31 指検出部、32 オブジェクト設定部、33 判定処理部、34 オブジェクト制御部、35 出力部、36 処理制御部。

Claims (15)

  1. ユーザに対し、仮想空間の画像を提示する表示装置に接続され、
    実空間のユーザの各指先の位置の情報を取得する取得手段と、
    仮想空間内に、仮想的なオブジェクトの位置及び画像を設定するオブジェクト設定手段と、
    前記仮想空間内に設定された仮想的なオブジェクトと、ユーザの指との接触を判定する判定手段と、
    前記判定手段が、前記仮想的なオブジェクトの複数の位置のそれぞれにユーザの第1の指と第2の指とが接触していると判定している状態で、ユーザにより所定の操作が行われたときに、前記仮想的なオブジェクトの仮想空間内でのサイズを変更する処理制御手段と、
    を有し、
    前記処理制御手段は、ユーザが前記仮想的なオブジェクトの複数の位置をそれぞれ挟んだ状態で所定の操作を行うことにより、前記仮想的なオブジェクトの仮想空間内でのサイズを変更する情報処理装置。
  2. 請求項1に記載の情報処理装置であって、
    前記指を移動する操作には、ピンチイン、ピンチアウトの操作が含まれる情報処理装置。
  3. 請求項1に記載の情報処理装置であって、
    前記取得手段は、前記実空間のユーザの各指先の位置及び向きの情報を取得し、
    前記処理制御手段は、前記判定手段が、前記仮想的なオブジェクトの複数の位置のそれぞれにユーザの第1の指と第2の指とが接触していると判定している状態で、前記第1の指が腹側を向けていると判断され、前記第2の指が背側を向けていると判断され、かつ、前記第1の指と第2の指との仮想空間内での距離が予め定めたしきい値を下回っているときに、前記仮想的なオブジェクトが前記第1の指と第2の指とで仮想的に挟まれていると判断し、前記第1の指と第2の指とで仮想的に挟まれていると判断されてるときに、ユーザにより所定の操作が行われると、前記仮想的なオブジェクトの仮想空間内でのサイズを変更する情報処理装置。
  4. 請求項1から3のいずれか一項に記載の情報処理装置であって、
    前記処理制御手段は、ユーザが前記仮想的なオブジェクトの両端部を、左右の手の指でそれぞれ挟んだ状態で所定の操作を行うことにより、前記仮想的なオブジェクトの仮想空間内でのサイズを変更する情報処理装置。
  5. 請求項から4のいずれか一項に記載の情報処理装置であって、
    前記処理制御手段は、前記所定の操作として、両手を離すよう移動することにより、前記仮想的なオブジェクトの仮想空間内でのサイズを変更する情報処理装置。
  6. 請求項5に記載の情報処理装置であって、
    前記処理制御手段は、両手の距離がもとの距離LからL+ΔLだけ変化したときには、前記仮想的なオブジェクトの仮想空間内でのサイズを(L+ΔL)/L倍する情報処理装置。
  7. 請求項1から6のいずれか一項に記載の情報処理装置であって、
    前記処理制御手段は、ユーザの手のポーズに応じて、前記仮想的なオブジェクトの表示態様を制御する情報処理装置。
  8. 請求項7に記載の情報処理装置であって、
    前記処理制御手段は、ユーザが手を握った状態で、当該手を移動したと判断したときに、前記仮想的なオブジェクトの仮想空間内での表示位置を制御する情報処理装置。
  9. 請求項1から8のいずれか一項に記載の情報処理装置であって、
    前記処理制御手段は、複数の仮想的なオブジェクトの相対的位置を変化させる操作に基づいて所定の処理を実行する情報処理装置。
  10. 請求項1から9のいずれか一項に記載の情報処理装置であって、
    前記処理制御手段は、前記仮想的なオブジェクトとは異なる仮想的なオブジェクトを用いて前記仮想的なオブジェクトを操作する情報処理装置。
  11. 請求項10に記載の情報処理装置であって、
    前記処理制御手段は、前記仮想的なオブジェクトとは異なる仮想的なオブジェクトを用いて前記仮想的なオブジェクトの移動を操作する情報処理装置。
  12. 請求項1から11のいずれか一項に記載の情報処理装置であって、
    前記処理制御手段は、ユーザが仮想的なオブジェクトの表面をなでる動作を行ったときに、当該なでた方向に、仮想的なオブジェクトを、仮想空間内で回転移動する情報処理装置。
  13. 請求項12に記載の情報処理装置であって、
    前記仮想的なオブジェクトが回転移動されると、当該回転により前記仮想的なオブジェクト上に配されたユーザインタフェース部品を視認可能に制御する情報処理装置。
  14. ユーザに対し、仮想空間の画像を提示する表示装置に接続される情報処理装置を用い、
    取得手段が、実空間のユーザの各指先の位置の情報を取得し、
    オブジェクト設定手段が、仮想空間内に、仮想的なオブジェクトの位置及び画像を設定し、
    判定手段が、前記仮想空間内に設定された仮想的なオブジェクトと、ユーザの指との接触を判定し、
    処理制御手段が、前記仮想的なオブジェクトの複数の位置のそれぞれにユーザの第1の指と第2の指とが接触していると判定されている状態で、ユーザにより所定の操作が行われたときに、前記仮想的なオブジェクトの仮想空間内でのサイズを変更する処理制御手段であって、ユーザが前記仮想的なオブジェクトの複数の位置をそれぞれ挟んだ状態で所定の操作を行うことにより、前記仮想的なオブジェクトの仮想空間内でのサイズを変更する
    情報処理装置の制御方法。
  15. ユーザに対し、仮想空間の画像を提示する表示装置に接続されたコンピュータを、
    実空間のユーザの各指先の位置の情報を取得する取得手段と、
    仮想空間内に、仮想的なオブジェクトの位置及び画像を設定するオブジェクト設定手段と、
    前記仮想空間内に設定された仮想的なオブジェクトと、ユーザの指との接触を判定する判定手段と、
    前記判定手段が、前記仮想的なオブジェクトの複数の位置のそれぞれにユーザの第1の指と第2の指とが接触していると判定している状態で、ユーザにより所定の操作が行われたときに、前記仮想的なオブジェクトの仮想空間内でのサイズを変更する処理制御手段と、
    として機能させ
    前記処理制御手段として機能させる際には、ユーザが前記仮想的なオブジェクトの複数の位置をそれぞれ挟んだ状態で所定の操作を行ったときに、コンピュータに、前記仮想的なオブジェクトの仮想空間内でのサイズを変更させるプログラム。
JP2020130686A 2017-04-28 2020-07-31 情報処理装置、情報処理装置の制御方法、及びプログラム Active JP6970797B2 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
JP2021177997A JP7524153B2 (ja) 2017-04-28 2021-10-29 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2023168614A JP2023169411A (ja) 2017-04-28 2023-09-28 情報処理装置、情報処理装置の制御方法、及びプログラム

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017090171 2017-04-28
JP2017090171 2017-04-28
JP2019514429A JP6744990B2 (ja) 2017-04-28 2018-04-18 情報処理装置、情報処理装置の制御方法、及びプログラム

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2019514429A Division JP6744990B2 (ja) 2017-04-28 2018-04-18 情報処理装置、情報処理装置の制御方法、及びプログラム

Related Child Applications (1)

Application Number Title Priority Date Filing Date
JP2021177997A Division JP7524153B2 (ja) 2017-04-28 2021-10-29 情報処理装置、情報処理装置の制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
JP2020198108A JP2020198108A (ja) 2020-12-10
JP6970797B2 true JP6970797B2 (ja) 2021-11-24

Family

ID=63920244

Family Applications (4)

Application Number Title Priority Date Filing Date
JP2019514429A Active JP6744990B2 (ja) 2017-04-28 2018-04-18 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2020130686A Active JP6970797B2 (ja) 2017-04-28 2020-07-31 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2021177997A Active JP7524153B2 (ja) 2017-04-28 2021-10-29 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2023168614A Pending JP2023169411A (ja) 2017-04-28 2023-09-28 情報処理装置、情報処理装置の制御方法、及びプログラム

Family Applications Before (1)

Application Number Title Priority Date Filing Date
JP2019514429A Active JP6744990B2 (ja) 2017-04-28 2018-04-18 情報処理装置、情報処理装置の制御方法、及びプログラム

Family Applications After (2)

Application Number Title Priority Date Filing Date
JP2021177997A Active JP7524153B2 (ja) 2017-04-28 2021-10-29 情報処理装置、情報処理装置の制御方法、及びプログラム
JP2023168614A Pending JP2023169411A (ja) 2017-04-28 2023-09-28 情報処理装置、情報処理装置の制御方法、及びプログラム

Country Status (3)

Country Link
US (5) US11077360B2 (ja)
JP (4) JP6744990B2 (ja)
WO (1) WO2018198910A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6744990B2 (ja) * 2017-04-28 2020-08-19 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理装置の制御方法、及びプログラム
CN116328317A (zh) * 2018-02-06 2023-06-27 日本聚逸株式会社 应用处理系统、应用处理方法以及应用处理程序
US10635895B2 (en) * 2018-06-27 2020-04-28 Facebook Technologies, Llc Gesture-based casting and manipulation of virtual content in artificial-reality environments
CN113168735B (zh) * 2018-10-22 2024-05-28 犹尼蒂知识产权有限公司 用于在混合现实环境中针对视觉数字创作处理和划分真实世界的部分的方法和系统
WO2020209624A1 (en) 2019-04-11 2020-10-15 Samsung Electronics Co., Ltd. Head mounted display device and operating method thereof
US11334212B2 (en) * 2019-06-07 2022-05-17 Facebook Technologies, Llc Detecting input in artificial reality systems based on a pinch and pull gesture
US11189099B2 (en) 2019-09-20 2021-11-30 Facebook Technologies, Llc Global and local mode virtual object interactions
JP7379052B2 (ja) * 2019-09-30 2023-11-14 キヤノン株式会社 表示制御装置、方法及びプログラム
US11175730B2 (en) * 2019-12-06 2021-11-16 Facebook Technologies, Llc Posture-based virtual space configurations
US11257280B1 (en) 2020-05-28 2022-02-22 Facebook Technologies, Llc Element-based switching of ray casting rules
US11256336B2 (en) 2020-06-29 2022-02-22 Facebook Technologies, Llc Integration of artificial reality interaction modes
US11178376B1 (en) 2020-09-04 2021-11-16 Facebook Technologies, Llc Metering for display modes in artificial reality
US20230409264A1 (en) * 2020-12-11 2023-12-21 Semiconductor Energy Laboratory Co., Ltd. Method for operating display system
US11461973B2 (en) * 2020-12-22 2022-10-04 Meta Platforms Technologies, Llc Virtual reality locomotion via hand gesture
US11294475B1 (en) 2021-02-08 2022-04-05 Facebook Technologies, Llc Artificial reality multi-modal input switching model
US11470439B1 (en) 2021-06-02 2022-10-11 Meta Platforms Technologies, Llc Adjustment of acoustic map and presented sound in artificial reality systems
US11991222B1 (en) 2023-05-02 2024-05-21 Meta Platforms Technologies, Llc Persistent call control user interface element in an artificial reality environment

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH086708A (ja) * 1994-04-22 1996-01-12 Canon Inc 表示装置
JP4926799B2 (ja) * 2006-10-23 2012-05-09 キヤノン株式会社 情報処理装置、情報処理方法
JP5109853B2 (ja) 2008-07-25 2012-12-26 株式会社ニコン 電子カメラ
JP5205187B2 (ja) * 2008-09-11 2013-06-05 株式会社エヌ・ティ・ティ・ドコモ 入力システム及び入力方法
JP5262681B2 (ja) * 2008-12-22 2013-08-14 ブラザー工業株式会社 ヘッドマウントディスプレイ及びそのプログラム
JP5158007B2 (ja) 2009-04-28 2013-03-06 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
JP5564300B2 (ja) * 2010-03-19 2014-07-30 富士フイルム株式会社 ヘッドマウント型拡張現実映像提示装置及びその仮想表示物操作方法
JP2012194492A (ja) 2011-03-17 2012-10-11 Brother Ind Ltd ヘッドマウントディスプレイ及びヘッドマウントディスプレイのためのコンピュータプログラム
KR101591579B1 (ko) 2011-03-29 2016-02-18 퀄컴 인코포레이티드 증강 현실 시스템들에서 실세계 표면들에의 가상 이미지들의 앵커링
JP2012252386A (ja) 2011-05-31 2012-12-20 Ntt Docomo Inc 表示装置
US9383895B1 (en) * 2012-05-05 2016-07-05 F. Vinayak Methods and systems for interactively producing shapes in three-dimensional space
US9541997B2 (en) 2012-07-27 2017-01-10 Nec Solution Innovators, Ltd. Three-dimensional user interface apparatus and three-dimensional operation method
JP5690317B2 (ja) 2012-11-01 2015-03-25 シャープ株式会社 情報表示装置及び情報表示方法
EP2951811A4 (en) * 2013-01-03 2016-08-17 Meta Co DIGITAL EYES FOR EXTRAMISSIVE SPATIAL IMAGING, PROCESSES AND SYSTEMS FOR VIRTUAL OR ENLARGED VISIBILITY, MANIPULATION, PRODUCTION OR INTERACTION WITH OBJECTS, MATERIALS, OR OTHER UNITS
JP6251957B2 (ja) 2013-01-23 2017-12-27 セイコーエプソン株式会社 表示装置、頭部装着型表示装置および表示装置の制御方法
JP6165485B2 (ja) * 2013-03-28 2017-07-19 国立大学法人埼玉大学 携帯端末向けarジェスチャユーザインタフェースシステム
JP2014191718A (ja) * 2013-03-28 2014-10-06 Sony Corp 表示制御装置、表示制御方法および記録媒体
WO2014162762A1 (ja) 2013-04-02 2014-10-09 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
US20160147308A1 (en) * 2013-07-10 2016-05-26 Real View Imaging Ltd. Three dimensional user interface
JP6524589B2 (ja) 2013-08-30 2019-06-05 国立大学法人山梨大学 クリック動作検出装置,方法およびプログラム
JP6265027B2 (ja) 2014-04-22 2018-01-24 富士通株式会社 表示装置、位置特定プログラム、および位置特定方法
EP3699736B1 (en) * 2014-06-14 2023-03-29 Magic Leap, Inc. Methods and systems for creating virtual and augmented reality
US10477090B2 (en) 2015-02-25 2019-11-12 Kyocera Corporation Wearable device, control method and non-transitory storage medium
US10156908B2 (en) 2015-04-15 2018-12-18 Sony Interactive Entertainment Inc. Pinch and hold gesture navigation on a head-mounted display
JP6742701B2 (ja) * 2015-07-06 2020-08-19 キヤノン株式会社 情報処理装置、その制御方法及びプログラム
US20170131775A1 (en) * 2015-11-10 2017-05-11 Castar, Inc. System and method of haptic feedback by referral of sensation
IL310337A (en) 2016-08-11 2024-03-01 Magic Leap Inc Automatic positioning of a virtual object in 3D space
JP6744990B2 (ja) * 2017-04-28 2020-08-19 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理装置の制御方法、及びプログラム

Also Published As

Publication number Publication date
US20210268368A1 (en) 2021-09-02
US11260287B2 (en) 2022-03-01
JP2023169411A (ja) 2023-11-29
US20230218983A1 (en) 2023-07-13
US20200129850A1 (en) 2020-04-30
US11896893B2 (en) 2024-02-13
JP2020198108A (ja) 2020-12-10
JP6744990B2 (ja) 2020-08-19
US20240115934A1 (en) 2024-04-11
US11617942B2 (en) 2023-04-04
US11077360B2 (en) 2021-08-03
JP2022028692A (ja) 2022-02-16
US20220143496A1 (en) 2022-05-12
JPWO2018198910A1 (ja) 2019-11-07
JP7524153B2 (ja) 2024-07-29
WO2018198910A1 (ja) 2018-11-01

Similar Documents

Publication Publication Date Title
JP6970797B2 (ja) 情報処理装置、情報処理装置の制御方法、及びプログラム
KR101844390B1 (ko) 사용자 인터페이스 제어를 위한 시스템 및 기법
US8290210B2 (en) Method and system for gesture recognition
JP6350772B2 (ja) 情報処理システム、情報処理装置、制御方法、及びプログラム
CN108681399B (zh) 一种设备控制方法、装置、控制设备及存储介质
US11047691B2 (en) Simultaneous localization and mapping (SLAM) compensation for gesture recognition in virtual, augmented, and mixed reality (xR) applications
US9841821B2 (en) Methods for automatically assessing user handedness in computer systems and the utilization of such information
JP6711817B2 (ja) 情報処理装置、その制御方法、プログラム、及び記憶媒体
JP6524589B2 (ja) クリック動作検出装置,方法およびプログラム
JP2016224686A (ja) 情報処理装置、その制御方法、プログラム、及び記憶媒体
CN107179876B (zh) 基于虚拟现实系统的人机交互装置
Matlani et al. Virtual mouse using hand gestures
US20210055784A1 (en) Information processing apparatus
CN117784926A (zh) 控制装置、控制方法和计算机可读存储介质
JP5456817B2 (ja) 表示制御装置、表示制御方法、情報表示システム及びプログラム
CN111095394A (zh) 显示处理设备、显示处理方法和程序
Pullan et al. High Resolution Touch Screen Module
Miyachi et al. Development of Mouse System for Physically Disabled Person by Face Movement Using Kinect
Ahn et al. A VR/AR Interface Design based on Unaligned Hand Position and Gaze Direction
CN115877946A (zh) 信息处理装置、信息处理系统、存储介质及信息处理方法
Van den Bergh et al. Perceptive user interface, a generic approach
CN114003122A (zh) 一种ar界面交互方法与基于该方法的智能指环
WO2015198366A1 (ja) 電子機器、モード判定方法およびモード判定プログラム
Takaki et al. 3D direct manipulation interface by human body posture and gaze

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200731

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20200731

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20210525

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210716

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: 20211005

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211029

R150 Certificate of patent or registration of utility model

Ref document number: 6970797

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150