WO2019155840A1 - 情報処理装置、情報処理方法、およびプログラム - Google Patents

情報処理装置、情報処理方法、およびプログラム Download PDF

Info

Publication number
WO2019155840A1
WO2019155840A1 PCT/JP2019/001223 JP2019001223W WO2019155840A1 WO 2019155840 A1 WO2019155840 A1 WO 2019155840A1 JP 2019001223 W JP2019001223 W JP 2019001223W WO 2019155840 A1 WO2019155840 A1 WO 2019155840A1
Authority
WO
WIPO (PCT)
Prior art keywords
controller
user
information processing
processing apparatus
information
Prior art date
Application number
PCT/JP2019/001223
Other languages
English (en)
French (fr)
Inventor
嵩明 加藤
俊一 本間
雄也 山口
福地 正樹
Original Assignee
ソニー株式会社
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 ソニー株式会社 filed Critical ソニー株式会社
Priority to US16/964,589 priority Critical patent/US11443540B2/en
Publication of WO2019155840A1 publication Critical patent/WO2019155840A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR 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/103Static body considered as a whole, e.g. static pedestrian or occupant recognition
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01CMEASURING DISTANCES, LEVELS OR BEARINGS; SURVEYING; NAVIGATION; GYROSCOPIC INSTRUMENTS; PHOTOGRAMMETRY OR VIDEOGRAMMETRY
    • G01C21/00Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00
    • G01C21/26Navigation; Navigational instruments not provided for in groups G01C1/00 - G01C19/00 specially adapted for navigation in a road network
    • 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
    • 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/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/033Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
    • G06F3/0346Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor with detection of the device orientation or free movement in a 3D space, e.g. 3D mice, 6-DOF [six degrees of freedom] pointers using gyroscopes, accelerometers or tilt-sensors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/05Geographic models
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06VIMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
    • G06V20/00Scenes; Scene-specific elements
    • G06V20/10Terrestrial scenes

Definitions

  • the present disclosure relates to an information processing apparatus, an information processing method, and a program.
  • VR Virtual Reality
  • HMD Head Mounted Display
  • AR Virtual Reality
  • VR Especially in the case of VR, it is important to more accurately track the movement of the user in the real space in order to further increase the sense of immersion in the virtual space.
  • an outside-in method is known in which a marker provided on the HMD worn by the user is captured and tracked by a peripheral external camera.
  • Patent Document 1 As a technique related to a controller that is generally operated by a user, for example, the following Patent Document 1 is cited.
  • an external camera provided on a stationary display is used to capture an image of a user who is operating the controller toward the display, and obtain the position of the controller LED that appears in the captured image.
  • a game system that reflects position information in processing of a game application is disclosed.
  • the tracking using the external camera is the main as described above, and the controller to be used together is also based on the tracking by the external camera. That is, for example, a light emitting unit is provided in the controller, and the position is estimated by recognizing the light emitting unit of the controller with an external camera.
  • the estimation of the position of the user wearing the HMD is not limited to the outside-in method, and can be realized by an inside-out method that uses a camera provided in the HMD itself without requiring an external camera.
  • a controller based on such a system has not been sufficiently developed.
  • the present disclosure proposes an information processing apparatus, an information processing method, and a program capable of estimating the position of a controller corresponding to an inside-out type wearable device.
  • an information processing apparatus including a controller position estimation unit that estimates the position of the controller is proposed.
  • the processor recognizes environmental information around the user based on the first captured image captured by the first imaging unit provided in the wearable device attached to the user, and Performing the position estimation of the user in space, referring to the recognized environment information based on a second captured image captured by a second imaging unit provided in a controller operated by the user; Proposing an information processing method including estimating the position of the controller.
  • the computer recognizes environmental information around the user based on the first captured image captured by the first imaging unit provided in the wearable device attached to the user, and Based on a second captured image captured by a user position estimation unit that estimates the position of the user in space and a second imaging unit provided in a controller operated by the user, the recognized environment information is A program for functioning as a controller position estimation unit for estimating the position of the controller is proposed.
  • FIG. 1 is a diagram illustrating an overview of an information processing system according to an embodiment of the present disclosure.
  • the information processing system according to the present embodiment includes an HMD 20 worn on a user's head and a controller 10 operated by the user.
  • the HMD 20 is mounted on the user's head as shown in FIG. 1, and a display (display unit 250) is positioned in front of the user's eyes when the HMD 20 is mounted.
  • the display unit 250 may be transmissive or non-transmissive.
  • the display unit 250 may display a content video, for example, a virtual space video.
  • the video in the virtual space may be a 3D video.
  • the HMD 20 may further include an earphone (audio output unit 260).
  • a pair of earphones is illustrated as an example of the audio output unit 260 provided in the HMD 20, but the present embodiment is not limited thereto, and may be headphones, for example, or an open type Earphones may be used. It is possible to further enhance the sense of immersion in the virtual space by blocking the external information with a non-transmissive display and earphones and presenting video and audio in the virtual space.
  • the HMD 20 Since the HMD 20 according to the present embodiment uses an inside-out method as a position tracking method, the HMD 20 is provided with a plurality of cameras 210 for imaging the outside world.
  • the number and arrangement of the cameras 210 are not particularly limited.
  • the HMD 20 analyzes the captured image captured by the camera 210 and recognizes surrounding environment information (generation of an environment map), and estimates the self position, that is, the position of the user wearing the HMD 20 (head position). Is possible. This eliminates the need for an external camera (environment side camera), and allows the user to move around freely without worrying about the limits of the action range.
  • a controller used in combination with the HMD 20 based on such an inside-out method has not been sufficiently developed. That is, as the controller used in combination with the HMD 20, for example, a method of recognizing the position of the LED of the controller on the premise of an external camera has been used. A method of recognizing the position (relative position) of the LED of the controller using the camera provided in the HMD 20 as an external camera is also conceivable, but in this case, the controller must be within the angle of view of the HMD 20 camera, and the user It was difficult to recognize movement outside the angle of view, such as when the controller was lowered.
  • the present disclosure proposes a controller 10 that is used in combination with the HMD 20 based on the inside-out method.
  • the controller 10 is provided with one or a plurality of cameras 110 that image the periphery.
  • the number and arrangement of cameras are not particularly limited.
  • the controller 10 transmits the captured image captured by the camera 110 to the HMD 20 by wireless / wired.
  • the HMD 20 estimates the position and orientation of the controller 10 using the generated environment map based on the captured image received from the controller 10. As described above, in this embodiment, it is possible to estimate the position of the controller corresponding to the inside-out type HMD 20 without using an external camera.
  • the HMD 20 may be formed of a mounting unit that is generally a spectacle-type or a head-mounted type.
  • the display unit 250 is provided close to the front of the user's eyes. Good. Further, a pair of display units 250 may be provided corresponding to both eyes, or one display unit 250 may be provided corresponding to one eye.
  • the HMD 20 is an example of a head-mounted display.
  • the present embodiment is not limited to this, and a user-wearable wearable device (a device that does not have a display) provided with a camera 210 that images at least the outside world. And a system configuration including the controller 10.
  • FIG. 2 is a block diagram illustrating a basic internal configuration example of the HMD 20 and the controller 10 according to the present embodiment. Hereinafter, description will be made sequentially.
  • the HMD 20 includes a control unit 200, a camera 210, a posture sensor 220, an operation input unit 230, a communication unit 240, a display unit 250, a sound output unit 260, and a storage unit 270.
  • the control unit 200 functions as an arithmetic processing unit and a control unit, and controls the overall operation in the HMD 20 according to various programs.
  • the control unit 200 is realized by an electronic circuit such as a CPU (Central Processing Unit) or a microprocessor, for example.
  • the control unit 200 may include a ROM (Read Only Memory) that stores programs to be used, calculation parameters, and the like, and a RAM (Random Access Memory) that temporarily stores parameters that change as appropriate.
  • control unit 200 The specific functional configuration of the control unit 200 according to the present embodiment will be described later using a plurality of examples.
  • the camera 210 photoelectrically converts imaging light obtained by a lens system including an imaging lens, a diaphragm, a zoom lens, and a focus lens, a drive system that causes the lens system to perform a focus operation and a zoom operation, and the lens system.
  • a solid-state image pickup device array for generating an image pickup signal.
  • the solid-state imaging device array may be realized by a CCD (Charge Coupled Device) sensor array or a CMOS (Complementary Metal Oxide Semiconductor) sensor array, for example.
  • the camera 210 may be movable.
  • the camera 210 may be combined with a depth sensor or the like that can acquire depth information using a captured image, infrared rays, or the like.
  • the posture sensor 220 has a function of detecting the posture (including the orientation of the head) of the user wearing the HMD 20.
  • the attitude sensor 220 is realized by an IMU (inertial measurement unit) that detects a triaxial angle (or angular velocity) and acceleration.
  • the posture sensor 220 includes a three-axis gyro sensor (detection of angular velocity (rotational speed)), a three-axis acceleration sensor (also referred to as a G sensor, detection of acceleration during movement), and a three-axis geomagnetic sensor (compass, absolute direction ( It may be a 9-axis sensor including detection of the orientation).
  • the attitude sensor 220 may use, for example, either an acceleration sensor or a gyro sensor.
  • the operation input unit 230 receives an operation instruction from the user and outputs the operation content to the control unit 200.
  • the operation input unit 230 may be a touch sensor, a pressure sensor, or a proximity sensor.
  • the operation input unit 230 may have a physical configuration such as a button, a switch, and a lever.
  • the communication unit 240 performs communication connection with an external device by wire or wireless, and transmits and receives data.
  • the communication unit 240 may be a wired / wireless LAN (Local Area Network), Wi-Fi (registered trademark), Bluetooth (registered trademark), infrared communication, short-range wireless communication, a mobile communication network (LTE (Long Term Evolution), Alternatively, 3G (third generation mobile communication system)) or the like is used for communication connection with a network or a peripheral device (for example, the controller 10).
  • the communication unit 240 receives a captured image and posture sensor information from the controller 10.
  • the display unit 250 is formed by a display device such as a liquid crystal display (LCD: Liquid Crystal Display), an organic EL (Electro Luminescence) display, etc.
  • the display unit 250 is a transmissive type or a non-transmissive type. Alternatively, the transmittance of the display unit 250 may be controlled by the control unit 200.
  • the audio output unit 260 includes a speaker that reproduces an audio signal and an amplifier circuit for the speaker.
  • the storage unit 270 is realized by a ROM (Read Only Memory) that stores programs and calculation parameters used for the processing of the control unit 200, and a RAM (Random Access Memory) that temporarily stores parameters that change as appropriate.
  • ROM Read Only Memory
  • RAM Random Access Memory
  • the basic internal configuration example of the HMD 20 has been described above. Note that the configuration of the HMD 20 is not limited to the example illustrated in FIG. 2, and may be a configuration further including a voice input unit (microphone), for example.
  • a voice input unit microphone
  • the controller 10 includes a control unit 100, a camera 110, a posture sensor 120, and a communication unit 130.
  • the control unit 100 functions as an arithmetic processing unit and a control unit, and controls the overall operation in the controller 10 according to various programs.
  • the control unit 100 is realized by an electronic circuit such as a CPU (Central Processing Unit) or a microprocessor, for example.
  • the control unit 100 may include a ROM (Read Only Memory) that stores programs to be used, calculation parameters, and the like, and a RAM (Random Access Memory) that temporarily stores parameters that change as appropriate.
  • the camera 110 photoelectrically converts a lens system including an imaging lens, an aperture, a zoom lens, a focus lens, and the like, a drive system that causes the lens system to perform a focus operation and a zoom operation, and imaging light obtained by the lens system.
  • a solid-state image pickup device array for generating an image pickup signal.
  • the solid-state imaging device array may be realized by a CCD (Charge Coupled Device) sensor array or a CMOS (Complementary Metal Oxide Semiconductor) sensor array, for example.
  • the camera 110 may be movable. Further, the number and arrangement of the cameras 110 are not particularly limited.
  • the camera 110 may be singular or plural. When a plurality of cameras 110 are used, each camera 110 may be operated individually or in cooperation with each other.
  • the attitude sensor 120 has a function of detecting the attitude (including the orientation) of the controller 10.
  • the attitude sensor 120 is realized by an IMU (inertial measurement unit) that detects a triaxial angle (or angular velocity) and acceleration.
  • the posture sensor 120 includes a three-axis gyro sensor (detection of angular velocity (rotational speed)), a three-axis acceleration sensor (also referred to as a G sensor, detection of acceleration during movement), and a three-axis geomagnetic sensor (compass, absolute direction ( It may be a 9-axis sensor including detection of the orientation). Note that these are examples of the attitude sensor 120, and the attitude sensor 120 may use, for example, either an acceleration sensor or a gyro sensor.
  • the communication unit 130 performs communication connection with an external device by wire or wireless, and transmits and receives data.
  • the communication unit 130 is connected to a peripheral device (for example, the HMD 20) by a wired / wireless LAN (Local Area Network), Wi-Fi (registered trademark), Bluetooth (registered trademark), infrared communication, short-range wireless communication, or the like. To do.
  • the communication unit 130 transmits, to the HMD 20, peripheral captured images captured by the camera 110 and posture sensor information detected by the posture sensor 120.
  • the basic internal configuration example of the controller 10 has been described above.
  • the configuration of the controller 10 is not limited to the example illustrated in FIG. 2, and may be a configuration further including, for example, a voice input unit (microphone), a vibration unit, a light emitting unit, a speaker, and the like.
  • the controller 10 may be provided with operation input units such as buttons and switches.
  • the HMD 20 performs the inside-out position tracking, that is, the environment recognition is performed using the captured image captured by the camera 210 provided in the HMD 20 to estimate the position of the HMD 20 (self-position estimation).
  • the position of the controller 10 can also be estimated by referring to the result of environment recognition using the captured image captured by the controller 10.
  • an external camera is not required for position estimation, it can move freely, and it is not necessary to show the controller 10 and a hand with the camera of HMD20.
  • the recognition target is the entire environment, it is not necessary for the system to know a specific shape in advance.
  • the processor on the HMD 20 side has sufficient computing power, an inexpensive controller can be realized.
  • FIG. 3 is a block diagram illustrating an example of a functional configuration of the HMD 20-1 according to the present embodiment.
  • the HMD 20-1 functions as an environment mapping unit 201, a user position estimation unit 202, a controller position estimation unit 203, and a content display control unit 204.
  • the HMD 20-1 may use a so-called SLAM (simultaneous localization and mapping) that can simultaneously perform self-position estimation and map construction as a self-position estimation technique.
  • the SLAM algorithm is not particularly limited.
  • Landmark based SLAM that uses landmarks expressed in point coordinates on a map may be used.
  • Landmark based SLAM a characteristic object is recognized as a landmark, and a map of the landmark is generated. Then, feedback is performed for self-position estimation using the coordinate information of the landmark.
  • each functional configuration will be specifically described.
  • the environment mapping unit 201 performs surrounding environment recognition (object recognition) based on the surrounding captured image captured by the camera 210 of the HMD 20-1, and generates an environment map. For example, the environment mapping unit 201 analyzes a captured image and estimates a 3D landmark from characteristic information (calculates distance information based on the principle of triangulation). The generated environment map is accumulated in the environment map storage unit 271.
  • the environment mapping unit 201 can also refer to the posture sensor information detected by the posture sensor 220 when creating the environment map.
  • the environment mapping unit 201 can also generate an environment map using a captured image captured by the camera 110 of the controller 10. Thereby, it is possible to acquire an image (environment information) having an angle and a height that cannot be grasped only by the camera 210 of the HMD 20.
  • the user position estimation unit 202 estimates the self position of the HMD 20-1, that is, the position and posture of the user wearing the HMD 20-1 (position tracking and head tracking).
  • the position estimation can be performed using, for example, SLAM as described above.
  • the user position estimation unit 202 analyzes the captured image captured by the camera 210 to track the feature point, refers to the generated environment map, and determines the position and orientation from the 3D landmark and the tracked 2D information. An estimation can be made.
  • the SLAM technique used here is not limited to feature point tracking (discrete feature point tracking), and SLAM techniques other than feature point tracking may be used.
  • the user position estimating unit 202 may further estimate the position and posture of the user with reference to posture sensor information detected by the posture sensor 220.
  • the controller position estimation unit 203 estimates the position and orientation of the controller 10 operated by the user. Specifically, the controller position estimation unit 203 analyzes a captured image captured by the camera 110 provided in the controller 10 to track a feature point, refers to the generated environment map, and generates a 3D landmark. The position and orientation of the controller 10 can be estimated from the tracked 2D information. The controller position estimation unit 203 may further estimate the position and posture of the controller 10 with reference to posture sensor information detected by the posture sensor 120 provided in the controller 10.
  • the controller position estimation unit 203 can estimate the controller position on the assumption that the controller 10 is held by the user (the head is not far away from the controller). For example, the controller position estimation unit 203 can narrow down candidate points when performing controller position estimation in accordance with the direction of the HMD 20. Further, the controller position estimation unit 203 can estimate the controller position based on both the image and the attitude sensor data using the SLAM. At this time, the controller position is estimated using the image information. It is also possible.
  • the content display control unit 204 controls to generate a video based on the virtual space content acquired from the content storage unit 272 and to display the video on the display unit 250 of the HMD 20.
  • the virtual space content provided to the user is omnidirectional content, free viewpoint content, game content, or the like.
  • the free viewpoint content is a video generated by using a plurality of cameras to generate a video when a virtual camera is placed at an arbitrary position, thereby enabling video viewing from any viewpoint.
  • the term “virtual space” refers to an actual user that can be sensed via one or more display devices and / or interacted via one or more user interfaces. Refers to a representation of a real or fictional environment with rules of interaction that are simulated by one or more processors.
  • the term “user interface” refers to an actual device that allows a user to send input to or receive output from a virtual world (eg, HMD 20).
  • a virtual world eg, HMD 20
  • the user may be represented by an avatar, or the virtual space world may be displayed from the avatar's viewpoint without displaying the avatar on the display.
  • the user's (or avatar's) viewpoint in the virtual space can be regarded as the field of view of the virtual camera.
  • a “virtual camera” refers to a viewpoint in a virtual space and can be used to draw a two-dimensional image of a three-dimensional scene in the virtual space.
  • the content display control unit 204 moves in the virtual space with the same amount of movement in the front / rear / left / right direction according to the user's front / rear / left / right movement and posture (head orientation, etc.) in the actual space, By responding to the posture (head orientation), a VR experience with a high immersive feeling can be provided. More specifically, the content display control unit 204 generates an image of the virtual space according to the real-time user's (head) position and posture estimated by the user position estimation unit 202, and displays it on the display unit 250. indicate.
  • the content display control unit 204 can acquire the user's intention from the controller 10 and reflect it in the video. Further, it is assumed that a virtual object corresponding to the controller 10 appears in the user's field of view in the virtual space.
  • the content display control unit 204 generates a video in accordance with the real-time position and orientation of the controller 10 estimated by the controller position estimation unit 203, thereby causing the movement of the controller 10 in the actual space to correspond to the virtual space in real time. Can be further enhanced. Examples of the display control corresponding to the controller 10 include determination of the position of an object in the game, an instruction for the next hand movement, switching of the display unit 250 to see-through, and the like.
  • FIG. 4 is a sequence diagram illustrating an example of a control flow of the information processing system according to the present embodiment.
  • the HMD 20 acquires (captures) a peripheral image by the camera 210 of the HMD 20 (step S103), and generates an environment map by the environment mapping unit 201 (step S106).
  • the generated environment map is stored in the environment map storage unit 271.
  • the controller 10 acquires (captures) a peripheral image by the camera 110 of the controller 10 (step S109) and performs sensing by the attitude sensor (step S112).
  • the controller 10 transmits a peripheral image (captured image) and posture sensor data to the HMD 20 (step S115).
  • the HMD 20 acquires a peripheral image of the HMD 20 from the camera 210 and attitude sensor data from the attitude sensor 220 (step S121), and estimates the user position (that is, the self position of the HMD 20) using the environment map (step S121). S124).
  • the HMD 20 estimates the controller position based on the peripheral image (captured image) and the attitude sensor data received from the controller 10.
  • HMD20 produces
  • FIG. 5 is a block diagram illustrating an example of a functional configuration of the HMD 20-2 according to the second embodiment.
  • the HMD 20-2 functions as an environment mapping unit 201, a user position estimating unit 202, a controller position estimating unit 203, a user position correcting unit 206, a controller position correcting unit 207, and a content display control unit 204.
  • the detailed description of the configuration having the same reference numerals as in the first embodiment is omitted here.
  • the user position correcting unit 206 obtains the latest posture acquired by the posture sensor 220 after acquiring the captured image and the posture sensor data used for estimating the user position.
  • the user position can be corrected based on the sensor data.
  • the controller position correcting unit 207 for the controller position estimated by the controller position estimating unit 203, the latest posture acquired by the posture sensor 120 after acquisition of the captured image and posture sensor data used for estimation of the controller position. Based on the sensor data, the controller position can be corrected.
  • FIG. 6 is a sequence diagram illustrating an example of a control flow of the information processing system according to the present embodiment. Steps S103 to S124 shown in FIG. 6 are the same as the processes with the same reference numerals described with reference to FIG. 4, and the HMD 20 performs user position estimation and controller position estimation based on each peripheral image and attitude sensor data. obtain.
  • the controller 10 performs sensing by the attitude sensor (step S133), and transmits attitude sensor data to the HMD 20 (step S136).
  • the HMD 20 corrects the estimated controller position based on the latest attitude sensor data (step S139).
  • the HMD 20 similarly corrects the user position.
  • the HMD 20 acquires HMD posture sensor data from the posture sensor 220 (step S141)
  • the HMD 20 corrects the estimated user position (step S144).
  • the HMD 20 generates a video of the virtual space content to be displayed on the display unit 250 of the HMD 20 based on the correction result of the user position and the controller position (Step S147).
  • FIG. 7 is a flowchart showing an example of data transmission control of the controller 10 according to the present embodiment.
  • the controller 10 acquires a peripheral image and posture sensor data (step S203).
  • step S206 the controller 10 determines whether or not a predetermined condition is satisfied.
  • step S206 when the predetermined condition is satisfied (step S206 / Yes), the controller 10 transmits only the attitude sensor data to the HMD 20 (step S209).
  • step S212 the controller 10 transmits the peripheral image and the posture sensor data to the HMD 20 (step S212).
  • the controller 10 transmits only the posture sensor data because it cannot be sufficiently utilized for position estimation even if the surrounding image is transmitted.
  • ⁇ Is movement fast? ⁇ Is the screen dark? -Are there few feature points? -Is the screen flow large? ⁇ Is it held by a person? (Is the camera 110 part gripped?) ⁇ Is it close to the product? (Is the camera 110 too close to the object?)
  • controller 10 can further transmit the following data, and may control transmission according to the situation as appropriate.
  • RGB image ⁇ RGBD image ⁇ Feature point ⁇ Depth information ⁇ Exposure, Gain ⁇ IMU acceleration, angular velocity, temperature, etc. ⁇ Face recognition results
  • FIG. 8 is a flowchart showing an example of the position estimation process of the HMD 20 according to the present embodiment. As shown in FIG. 8, first, when the HMD 20 receives the upper part from the controller 10 (step S223), the HMD 20 determines whether only the posture sensor data or the peripheral image is included (step S226).
  • the HMD 20 estimates the controller position using the environment map as described above (step S229). In addition, when the peripheral image is included, the HMD 20 may update the environment map based on the new peripheral image.
  • the HMD 20 can estimate the controller position using, for example, INS (Inertial Navigation System).
  • INS Inertial Navigation System
  • controller 10 may perform predetermined operation control according to information received from the HMD 20.
  • the controller 10 may perform predetermined operation control according to information received from the HMD 20.
  • FIG. 9 is a flowchart showing an example of operation control according to information received from the HMD 20 of the controller 10 according to the present embodiment.
  • Examples of information transmitted from the HMD 20 to the controller 10 include, for example, controller position / distribution, a collision determination result with a virtual object, a distance from an obstacle, and information on the HMD 20.
  • controller position / distribution a collision determination result with a virtual object
  • distance from an obstacle a distance from an obstacle
  • information on the HMD 20 information on the HMD 20.
  • the controller 10 receives a collision determination result with the virtual object from the HMD 20 (step S243).
  • step S246 / Yes when the controller 10 collides with the virtual object (step S246 / Yes), the controller 10 performs a process of vibrating the controller 10 (step S249).
  • the state of the virtual space can be made to correspond to the controller 10, and it is possible to further increase the sense of immersion in the virtual space.
  • the operation control of the controller 10 according to the information received from the HMD 20 is not limited to the above-described example.
  • the controller 10 activates the camera 110 when the variance of the controller position estimated by the HMD 20 is large. It may be. More specifically, for example, control is normally performed so that only the attitude sensor data is transmitted from the controller 10 side to the HMD 20, and when the accuracy of the controller position estimated on the HMD 20 side decreases, the controller 10 By temporarily starting the camera 110 and transmitting the captured image, the power consumption of the camera 110 can be suppressed.
  • the controller 10 when the exposure of the camera 110 transmitted from the controller 10 is different from the exposure of the camera 210 of the HMD 20, the controller 10 notifies the user of the adjustment of the exposure of the camera 110 or the blindfold state by vibration.
  • the information processing system according to the present embodiment has been specifically described above.
  • the system configuration according to the present embodiment is not limited to the configuration including the HMD 20 and the controller 10 illustrated in FIGS. 1 and 2.
  • the function of the HMD 20 can be set to an external device (a stationary dedicated terminal, a PC, a smartphone, It may be executed by a server or the like.
  • the external device has, for example, the functional configuration shown in FIG. 3 or 5 and can estimate the position of the HMD 20 (user position) and the position of the controller 10.
  • the display that presents the virtual space video to the user is not limited to a wearable device such as the HMD 20, and may be, for example, a smartphone, a PC, a TV device, or a projector.
  • a computer program for causing hardware such as the CPU, ROM, and RAM incorporated in the HMD 20 or the controller 10 described above to exhibit the functions of the HMD 20 or the controller 10.
  • a computer-readable storage medium storing the computer program is also provided.
  • this technique can also take the following structures. (1) Based on a first captured image captured by a first imaging unit provided in a wearable device attached to the user, environmental information around the user is recognized, and the position of the user in real space is estimated. A user position estimation unit to perform; A controller position estimation unit that estimates the position of the controller with reference to the recognized environment information based on a second captured image captured by a second imaging unit provided in a controller operated by the user; An information processing apparatus comprising: (2) The user position estimation unit includes posture estimation of the user, The information processing apparatus according to (1), wherein the controller position estimation unit includes posture estimation of the controller.
  • the information processing apparatus includes: A mapping unit that generates environment information around the user as an environment map based on the first captured image; A storage unit for storing the generated environment map; The information processing apparatus according to (2), further including: (4) The information processing apparatus according to (3), wherein the mapping unit further generates the environment map using the second captured image.
  • the user position estimator is The information processing apparatus according to (3) or (4), wherein SLAM (simultaneous localization and mapping) that estimates the position of the user is executed based on the first captured image.
  • the wearable device is a head-mounted display worn on the user's head
  • the information processing apparatus includes: (3) to (3) further including a display control unit that controls the content image generated based on the estimated position and posture of the user and the position and posture of the controller to be displayed on the head-mounted display.
  • the information processing apparatus according to any one of (5).
  • the controller position estimator is Referencing the environment map, when estimating the position of the controller from the position of the feature point in the second captured image, narrowing down candidate points from the environment map according to the direction of the user, (3) The information processing apparatus according to any one of (7) to (7).
  • the controller position estimation unit further refers to posture information detected by a posture sensor provided in the controller, and estimates the position and posture of the controller, any one of (1) to (8) The information processing apparatus described in 1.
  • the information processing apparatus includes: The information according to (9) or (10), further including a position correction unit that corrects the position and posture of the controller estimated by the controller position estimation unit based on new posture information acquired again from the controller. Processing equipment.
  • the controller position estimation unit estimates the position and orientation of the controller using an INS (Inertial Navigation System) when only the gyro acceleration information is transmitted from the controller, any one of (1) to (11)
  • INS Inertial Navigation System
  • the information processing apparatus includes: The information processing apparatus according to any one of (1) to (12), wherein the estimated position information of the controller is transmitted to the controller.
  • (14) Processor Based on a first captured image captured by a first imaging unit provided in a wearable device attached to the user, environmental information around the user is recognized, and the position of the user in real space is estimated. To do and Referring to the recognized environment information based on a second captured image captured by a second imaging unit provided in the controller operated by the user, and estimating the position of the controller; Including an information processing method.
  • Computer Based on a first captured image captured by a first imaging unit provided in a wearable device attached to the user, environmental information around the user is recognized, and the position of the user in real space is estimated. A user position estimation unit to perform; A controller position estimation unit that estimates the position of the controller with reference to the recognized environment information based on a second captured image captured by a second imaging unit provided in a controller operated by the user; Program to function as
  • controller 100 control unit 110 camera 120 attitude sensor 130 communication unit 20 HMD DESCRIPTION OF SYMBOLS 200 Control part 201 Environment mapping part 202 User position estimation part 203 Controller position estimation part 204 Content display control part 206 User position correction part 207 Controller position correction part 210 Camera 220 Attitude sensor 230 Operation input part 240 Communication part 250 Display part 260 Audio

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Remote Sensing (AREA)
  • Human Computer Interaction (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Multimedia (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Automation & Control Theory (AREA)
  • Computer Graphics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Navigation (AREA)
  • Processing Or Creating Images (AREA)
  • Position Input By Displaying (AREA)
  • Image Analysis (AREA)

Abstract

【課題】インサイドアウト方式のウェアラブルデバイスに対応したコントローラの位置推定を行うことが可能な情報処理装置、情報処理方法、およびプログラムを提供する。 【解決手段】ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うユーザ位置推定部と、前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うコントローラ位置推定部と、を備える、情報処理装置。

Description

情報処理装置、情報処理方法、およびプログラム
 本開示は、情報処理装置、情報処理方法、およびプログラムに関する。
 近年、外界を遮断する構造により頭部に装着されるディスプレイ、所謂HMD(Head Mounted Display)により、仮想空間への没入感を楽しむことができるVR(Virtual Reality)や、HMDのディスプレイが透過型になったシースルーHMDを用いて、ディスプレイを介して見える外界に仮想画像が重畳表示される所謂AR(Virtual Reality)を楽しむことが可能な技術が開発されている。
 特にVRの場合、仮想空間への没入感をより高めるため、実空間におけるユーザの動きをより正確にトラッキングすることが重要となる。実空間におけるユーザの位置および姿勢は、例えばユーザが装着しているHMDに設けられたマーカーを周辺の外部カメラにより捉えてトラッキングするアウトサイドイン方式が知られている。
 一方で、一般的にユーザが操作するコントローラに関する技術としては、例えば下記特許文献1が挙げられる。下記特許文献1では、据え置き型のディスプレイに設けられた外部カメラにより、当該ディスプレイに向かってコントローラを操作しているユーザを撮像し、撮像画像に写るコントローラのLEDの位置を取得して、取得した位置情報をゲームアプリケーションの処理に反映するゲームシステムが開示されている。
特開2007-244534号公報
 ここで、近年のHMDを装着したユーザの位置推定に関しては、上述したように外部カメラを用いたトラッキングが主要であり、併せて用いるコントローラも、外部カメラによりトラッキングを前提とするものであった。すなわち、例えばコントローラに発光部が設けられ、外部カメラにより当該コントローラの発光部を認識して位置推定が行われていた。
 しかしながら、HMDを装着したユーザの位置推定は、アウトサイドイン方式に限定されず、外部カメラを必要とせずに、HMD自体に設けられたカメラを用いて行うインサイドアウト方式により実現することが可能であるが、このような方式を用いるシステムを前提としたコントローラに関しては、まだ十分に開発されていなかった。
 そこで、本開示では、インサイドアウト方式のウェアラブルデバイスに対応したコントローラの位置推定を行うことが可能な情報処理装置、情報処理方法、およびプログラムを提案する。
 本開示によれば、ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うユーザ位置推定部と、前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うコントローラ位置推定部と、を備える、情報処理装置を提案する。
 本開示によれば、プロセッサが、ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うことと、前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うことと、を含む、情報処理方法を提案する。
 本開示によれば、コンピュータを、ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うユーザ位置推定部と、前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うコントローラ位置推定部と、として機能させるための、プログラムを提案する。
 以上説明したように本開示によれば、インサイドアウト方式のウェアラブルデバイスに対応したコントローラの位置推定を行うことが可能となる。
 なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
本開示の一実施形態による情報処理システムの概要について説明する図である。 本実施形態によるHMDおよびコントローラの基本的な内部構成例を示すブロック図である。 第1の実施例によるHMDの機能構成の一例を示すブロック図である。 第1の実施例による情報処理システムの制御の流れの一例を示すシーケンス図である。 第2の実施例によるHMDの機能構成の一例を示すブロック図である。 第2の実施例による情報処理システムの制御の流れの一例を示すシーケンス図である。 第3の実施例によるコントローラのデータ送信制御の一例を示すフローチャートである。 第3の実施例によるHMDの位置推定処理の一例を示すフローチャートである。 第4の実施例によるコントローラのHMDから受信した情報に応じた動作制御の一例を示すフローチャートである。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 また、説明は以下の順序で行うものとする。
 1.本開示の一実施形態による情報処理システムの概要
 2.構成
  2-1.HMDの構成
  2-2.コントローラの構成
 3.各実施例
  3-1.第1の実施例
  3-2.第2の実施例
  3-3.第3の実施例
  3-4.第4の実施例
 4.補足
 5.まとめ
 <<1.本開示の一実施形態による情報処理システムの概要>>
 図1は、本開示の一実施形態による情報処理システムの概要について説明する図である。図1に示すように、本実施形態による情報処理システムは、ユーザの頭部に装着されるHMD20と、当該ユーザが操作するコントローラ10とを含む。
 HMD20は、図1に示すようにユーザの頭部に装着され、装着された際にユーザの眼前にはディスプレイ(表示部250)が位置する。表示部250は透過型であってもよいし、非透過型であってもよい。表示部250には、コンテンツ映像、例えば仮想空間の映像が表示され得る。仮想空間の映像は、3D映像であってもよい。また、HMD20はイヤホン(音声出力部260)をさらに備えていてもよい。図1に示す例では、HMD20に設けられる音声出力部260の一例として一対のイヤホンを図示しているが、本実施形態はこれに限定されず、例えばヘッドホンであってもよいし、オープン型のイヤホンであってもよい。非透過型のディスプレイとイヤホン等により外界の情報を遮断して仮想空間の映像及び音声を提示することで、仮想空間への没入感をより高めることが可能となる。
 本実施形態によるHMD20は、ポジショントラッキングの手法としてインサイドアウト方式が用いられるため、HMD20には、外界を撮像するためのカメラ210が複数設けられている。カメラ210の数および配置については特に限定しない。HMD20は、カメラ210により撮像された撮像画像を解析して周辺の環境情報を認識し(環境マップの生成)、自己位置推定、すなわちHMD20を装着したユーザの位置(頭部位置)を推定することが可能である。これにより、外部カメラ(環境側カメラ)が不要となるため、ユーザは、行動範囲の限界を気にせずに自由に動き回ることが可能となる。
 上述したように、このようなインサイドアウト方式を前提としたHMD20と組み合わせて用いるコントローラの開発は、従来は十分に行われていなかった。すなわち、HMD20と組み合わせて用いるコントローラとしては、例えば外部カメラを前提としてコントローラのLEDの位置を認識する方式が用いられていた。また、HMD20に設けたカメラを外部カメラとしてコントローラのLEDの位置(相対位置)を認識する方式も考え得るが、この場合はHMD20のカメラの画角内にコントローラが入っていなければならず、ユーザがコントローラを下ろした場合等、画角外の動きを認識することが困難であった。
 そこで、本開示では、インサイドアウト方式を前提としたHMD20と組み合わせて用いるコントローラ10を提案する。
 本実施形態によるコントローラ10には、周辺を撮像する単数または複数のカメラ110が設けられている。カメラの数および配置は特に限定しない。コントローラ10は、カメラ110により撮像した撮像画像を、無線/有線によりHMD20に送信する。
 次いで、HMD20は、コントローラ10から受信した撮像画像に基づいて、生成した環境マップを用いて、コントローラ10の位置および姿勢を推定する。このように、本実施形態では、インサイドアウト方式のHMD20に対応したコントローラの位置推定を、外部カメラを必要とせずに行うことが可能となる。
 以上、本実施形態によるHMD20およびコントローラ10の概要について説明した。なお、図1に示すHMD20およびコントローラ10の外観形状は一例であって、本実施形態はこれに限定されない。HMD20は、一般に眼鏡型、あるいは頭部装着型とされる装着ユニットで形成されればよく、少なくとも本実施の形態としては、ユーザの眼の前方に近接して表示部250が設けられていればよい。また表示部250は、両眼に対応して一対設けられる他、片側の眼に対応して1つ設けられる構成でもよい。
 また、HMD20は、頭部装着型ディスプレイの一例であるが、本実施形態はこれに限定されず、少なくとも外界を撮像するカメラ210が設けられたユーザ装着型のウェアラブルデバイス(ディスプレイを有さないデバイスを含む)と、コントローラ10を含むシステム構成であってもよい。
 <<2.構成例>>
 続いて、図2を参照して本システムの基本的な内部構成について具体的に説明する。図2は、本実施形態によるHMD20およびコントローラ10の基本的な内部構成例を示すブロック図である。以下、順次説明する。
  <2-1.HMD20の構成>
 図2に示すように、本実施形態によるHMD20は、制御部200、カメラ210、姿勢センサ220、操作入力部230、通信部240、表示部250、音声出力部260、および記憶部270を有する。
 制御部200は、演算処理装置および制御装置として機能し、各種プログラムに従ってHMD20内の動作全般を制御する。制御部200は、例えばCPU(Central Processing Unit)、マイクロプロセッサ等の電子回路によって実現される。また、制御部200は、使用するプログラムや演算パラメータ等を記憶するROM(Read Only Memory)、及び適宜変化するパラメータ等を一時記憶するRAM(Random Access Memory)を含んでいてもよい。
 本実施形態による制御部200の具体的な機能構成については、複数の実施例を用いて後述する。
 カメラ210は、撮像レンズ、絞り、ズームレンズ、およびフォーカスレンズ等により構成されるレンズ系、レンズ系に対してフォーカス動作やズーム動作を行わせる駆動系、レンズ系で得られる撮像光を光電変換して撮像信号を生成する固体撮像素子アレイ等を有する。固体撮像素子アレイは、例えばCCD(Charge Coupled Device)センサアレイや、CMOS(Complementary Metal Oxide Semiconductor)センサアレイにより実現されてもよい。また、カメラ210は、可動式であってもよい。また、カメラ210は、撮像画像や赤外線等を用いて深度情報を取得することが可能な深度センサ等が構成として組み合わされてもよい。
 姿勢センサ220は、HMD20が装着されたユーザの姿勢(頭部の向きを含む)を検出する機能を有する。例えば姿勢センサ220は、3軸の角度(または角速度)と加速度を検出するIMU(inertial measurement unit)により実現される。若しくは、姿勢センサ220は、3軸ジャイロセンサ(角速度(回転速度)の検出)、3軸加速度センサ(Gセンサとも称す。移動時の加速度の検出)、および3軸地磁気センサ(コンパス、絶対方向(方位)の検出)を含む9軸センサであってもよい。なおこれらは姿勢センサ220の一例であって、姿勢センサ220は、例えば加速度センサまたはジャイロセンサのいずれかを用いるものであってもよい。
 操作入力部230は、ユーザによる操作指示を受付け、その操作内容を制御部200に出力する。操作入力部230は、タッチセンサ、圧力センサ、若しくは近接センサであってもよい。あるいは、操作入力部230は、ボタン、スイッチ、およびレバーなど、物理的構成であってもよい。
 通信部240は、有線または無線により外部装置と通信接続し、データの送受信を行う。例えば通信部240は、有線/無線LAN(Local Area Network)、またはWi-Fi(登録商標)、Bluetooth(登録商標)、赤外線通信、近距離無線通信、携帯通信網(LTE(Long Term Evolution)、または3G(第3世代の移動体通信方式))等によりネットワークや周辺の装置(例えばコントローラ10)と通信接続する。
 例えば通信部240は、コントローラ10から撮像画像および姿勢センサ情報を受信する。
 表示部250は、例えば、液晶ディスプレイ(LCD:Liquid Crystal Display)、有機EL((Electro Luminescence)ディスプレイなどの表示装置により形成される。また、表示部250は、透過型または非透過型であってもよい。若しくは、表示部250の透過率は、制御部200により制御されてもよい。
 音声出力部260は、音声信号を再生するスピーカと、スピーカに対するアンプ回路を有する。
 記憶部270は、制御部200の処理に用いられるプログラムや演算パラメータ等を記憶するROM(Read Only Memory)、および適宜変化するパラメータ等を一時記憶するRAM(Random Access Memory)により実現される。
 以上、HMD20の基本的な内部構成例について説明した。なおHMD20の構成は図2に示す例に限定されず、例えば音声入力部(マイクロホン)をさらに有する構成であってもよい。
  <2-2.コントローラ10の構成>
 図2に示すように、本実施形態によるコントローラ10は、制御部100、カメラ110、姿勢センサ120、および通信部130を有する。
 制御部100は、演算処理装置および制御装置として機能し、各種プログラムに従ってコントローラ10内の動作全般を制御する。制御部100は、例えばCPU(Central Processing Unit)、マイクロプロセッサ等の電子回路によって実現される。また、制御部100は、使用するプログラムや演算パラメータ等を記憶するROM(Read Only Memory)、及び適宜変化するパラメータ等を一時記憶するRAM(Random Access Memory)を含んでいてもよい。
 カメラ110は、撮像レンズ、絞り、ズームレンズ、およびフォーカスレンズ等により構成されるレンズ系、レンズ系に対してフォーカス動作やズーム動作を行わせる駆動系、レンズ系で得られる撮像光を光電変換して撮像信号を生成する固体撮像素子アレイ等を有する。固体撮像素子アレイは、例えばCCD(Charge Coupled Device)センサアレイや、CMOS(Complementary Metal Oxide Semiconductor)センサアレイにより実現されてもよい。また、カメラ110は、可動式であってもよい。また、カメラ110の数および配置については、特に限定しない。カメラ110は、単数であってもよいし、複数であってもよい。複数のカメラ110を用いる場合、各カメラ110は、個々に単独で動作するようにしてもよいし、連携して動作するようにしてもよい。
 姿勢センサ120は、コントローラ10の姿勢(向きを含む)を検出する機能を有する。例えば姿勢センサ120は、3軸の角度(または角速度)と加速度を検出するIMU(inertial measurement unit)により実現される。若しくは、姿勢センサ120は、3軸ジャイロセンサ(角速度(回転速度)の検出)、3軸加速度センサ(Gセンサとも称す。移動時の加速度の検出)、および3軸地磁気センサ(コンパス、絶対方向(方位)の検出)を含む9軸センサであってもよい。なおこれらは姿勢センサ120の一例であって、姿勢センサ120は、例えば加速度センサまたはジャイロセンサのいずれかを用いるものであってもよい。
 通信部130は、有線または無線により外部装置と通信接続し、データの送受信を行う。例えば通信部130は、有線/無線LAN(Local Area Network)、またはWi-Fi(登録商標)、Bluetooth(登録商標)、赤外線通信、近距離無線通信等により周辺の装置(例えばHMD20)と通信接続する。
 例えば通信部130は、カメラ110により撮像した周辺の撮像画像や、姿勢センサ120により検出した姿勢センサ情報をHMD20に送信する。
 以上、コントローラ10の基本的な内部構成例について説明した。なおコントローラ10の構成は図2に示す例に限定されず、例えば音声入力部(マイクロホン)や、振動部、発光部、スピーカ等をさらに有する構成であってもよい。また、図示していないが、コントローラ10には、ボタンやスイッチ等の操作入力部が設けられていてもよい。
 <<3.各実施例>>
 続いて、本実施形態による情報処理システムについて複数の実施例を用いて具体的に説明する。
  <3-1.第1の実施例>
 第1の実施例では、HMD20において、インサイドアウト方式のポジショントラッキング、すなわち、HMD20に設けられたカメラ210により撮像された撮像画像を用いて環境認識を行って、HMD20の位置推定(自己位置推定)を行うと共に、コントローラ10により撮像された撮像画像を用いて、当該環境認識の結果を参照し、コントローラ10の位置推定も行い得る。これにより、位置推定に外部カメラを不要とするため自由に動くことができ、また、HMD20のカメラでコントローラ10や手を映す必要がない。また、認識対象は環境全体であるため、特定の形状を予めシステムが知っておく必要がない。また、HMD20側のプロセッサに十分な演算能力があれば、安価なコントローラを実現することができる。
 (3-1-1.構成)
 図3は、本実施例によるHMD20-1の機能構成の一例を示すブロック図である。図3に示すように、HMD20-1は、環境マッピング部201、ユーザ位置推定部202、コントローラ位置推定部203、およびコンテンツ表示制御部204として機能する。
 なお、本実施例によるHMD20-1は、自己位置推定の手法として、自己位置推定と地図構築を同時に行い得る、いわゆるSLAM(simultaneous localization and mapping)を用いてもよい。SLAMのアルゴリズムについては特に限定しないが、例えば、地図に点座標で表現されたランドマークを使用するLandmark based SLAMを用いてもよい。Landmark based SLAMでは、特徴的な物体をランドマークとして認識し、そのランドマークの地図を生成する。そして、そのランドマークの座標情報を用いて自己位置推定にフィードバックを行う。以下、各機能構成について具体的に説明する。
 環境マッピング部201は、HMD20-1のカメラ210により撮像された周辺の撮像画像に基づいて、周辺の環境認識(物体認識)を行い、環境マップの生成を行う。例えば環境マッピング部201は、撮像画像を解析して特徴的な情報から3Dランドマークを推定する(三角測量の原理に基づいて距離情報を算出)。生成された環境マップは、環境マップ記憶部271に蓄積される。なお環境マッピング部201は、環境マップ作成時に、さらに姿勢センサ220により検出された姿勢センサ情報を参照することも可能である。また、環境マッピング部201は、さらにコントローラ10のカメラ110により撮像された撮像画像を用いて環境マップの生成を行うことも可能である。これによりHMD20のカメラ210だけでは把握できない角度や高さの映像(環境情報)を取得することが可能となる。
 ユーザ位置推定部202は、HMD20-1の自己位置、すなわちHMD20-1を装着したユーザの(頭部の)位置および姿勢を推定する(ポジショントラッキングおよびヘッドトラッキング)。位置推定は、上述したように例えばSLAMを用いて行い得る。例えば、ユーザ位置推定部202は、カメラ210により撮像された撮像画像を解析して特徴点をトラッキングし、上記生成した環境マップを参照して、3Dランドマークとトラッキングした2D情報から位置および姿勢の推定を行い得る。なお、ここで用いるSLAM技術は、特徴点トラッキング(離散特徴点の追跡)に限定されず、特徴点トラッキング以外のSLAM技術を用いてもよい。例えば、エッジ点(画像から抽出したエッジ上の点)や、深度センサから得たポイントクラウドの追跡に基づいて自己位置推定と地図構築を行うことも可能である。また、ユーザ位置推定部202は、さらに姿勢センサ220により検出された姿勢センサ情報を参照してユーザの位置および姿勢の推定を行うようにしてもよい。
 コントローラ位置推定部203は、ユーザが操作しているコントローラ10の位置および姿勢を推定する。具体的には、コントローラ位置推定部203は、コントローラ10に設けられたカメラ110により撮像された撮像画像を解析して特徴点をトラッキングし、上記生成した環境マップを参照して、3Dランドマークとトラッキングした2D情報からコントローラ10の位置および姿勢の推定を行い得る。なおコントローラ位置推定部203は、さらにコントローラ10に設けられた姿勢センサ120により検出された姿勢センサ情報を参照してコントローラ10の位置および姿勢の推定を行うようにしてもよい。
 また、本実施形態によるコントローラ位置推定部203は、コントローラ10がユーザに把持されていること(コントローラと頭が大きく離れていないこと)を前提として、コントローラ位置の推定を行うことが可能である。例えば、コントローラ位置推定部203は、HMD20の方向に応じて、コントローラ位置推定を行う際の、候補点の絞り込みを行い得る。また、コントローラ位置推定部203は、SLAMを用いて、画像と姿勢センサデータの両方に基づいてコントローラ位置を推定することが可能であるが、この際、画像情報を用いてコントローラのバイアスを推定することも可能である。
 コンテンツ表示制御部204は、コンテンツ記憶部272から取得した仮想空間のコンテンツに基づいて、映像を生成し、HMD20の表示部250に表示するよう制御する。ユーザに提供される仮想空間のコンテンツは、全天球コンテンツ、自由視点コンテンツ、またはゲームコンテンツ等である。自由視点コンテンツとは、複数のカメラを用いて撮像した映像を用いて、任意の位置に仮想カメラを置いた際の映像を生成し、あらゆる視点からの映像視聴を可能としたものである。本明細書で使用する「仮想空間」との用語は、実際のユーザが、1つ以上の表示装置を介して感知し得る、および/または1つ以上のユーザインタフェースを介してインタラクトしうる、1つ以上のプロセッサによってシミュレートされるインタラクションのルールを有する現実または架空の環境の表現を指す。本明細書で使用する「ユーザインタフェース」との用語は、ユーザが仮想世界との間で、入力を送信するか出力を受信することができる実際のデバイスを指す(例えば、HMD20)。仮想空間内では、ユーザがアバターによって表現されてもよいし、ディスプレイにアバターを表示せずに、アバターの視点から仮想空間の世界を表示してもよい。本明細書において、仮想空間におけるユーザの(またはアバターの)視点とは、仮想カメラの視界とみなすことができる。本明細書で使用する「仮想カメラ」とは、仮想空間内の視点を指し、仮想空間内で三次元シーンの二次元画像を描画するために使用され得る。
 また、本実施例によるコンテンツ表示制御部204は、実際の空間におけるユーザの前後左右の移動や姿勢(頭部の向き等)に応じて、仮想空間でも同じ移動量で前後左右に移動したり、姿勢(頭部の向き)に対応させることで、没入感の高いVR体験を提供することができる。より具体的には、コンテンツ表示制御部204は、ユーザ位置推定部202により推定されたリアルタイムのユーザの(頭部の)位置および姿勢に応じて、仮想空間の映像を生成し、表示部250に表示する。
 また、コンテンツ表示制御部204は、ユーザの意図をコントローラ10から取得し、映像に反映させることが可能である。また、仮想空間におけるユーザの視界には、コントローラ10に対応する仮想物体が映る場合も想定される。コンテンツ表示制御部204は、コントローラ位置推定部203により推定されたリアルタイムのコントローラ10の位置および姿勢に応じて映像を生成することで、実際の空間におけるコントローラ10の動きをリアルタイムで仮想空間に対応させることができ、さらに没入感を高めることができる。また、コントローラ10に対応する表示制御としては、例えば、ゲーム内オブジェクトの位置の決定、次の手の動きの指示、表示部250のシースルーへの切り替え等が挙げられる。
 (3-1-2.動作処理)
 図4は、本実施例による情報処理システムの制御の流れの一例を示すシーケンス図である。図4に示すように、まず、HMD20は、HMD20のカメラ210により周辺画像を取得(撮像)し(ステップS103)、環境マッピング部201により環境マップの生成を行う(ステップS106)。生成した環境マップは、環境マップ記憶部271に記憶される。
 次に、コントローラ10は、コントローラ10のカメラ110により周辺画像を取得(撮像)すると共に(ステップS109)、姿勢センサによるセンシングを行う(ステップS112)。
 次いで、コントローラ10は、は周辺画像(撮像画像)および姿勢センサデータをHMD20に送信する(ステップS115)。
 一方、HMD20は、HMD20の周辺画像をカメラ210から、および姿勢センサデータを姿勢センサ220から取得し(ステップS121)、環境マップを用いて、ユーザ位置(すなわちHMD20の自己位置)を推定する(ステップS124)。
 また、HMD20は、コントローラ10から受信した周辺画像(撮像画像)および姿勢センサデータに基づいて、コントローラ位置の推定を行う。
 そして、HMD20は、ユーザ位置およびコントローラ位置の推定結果に基づいて、HMD20の表示部250に表示する仮想空間コンテンツの映像を生成する(ステップS127)。
 以上、本実施例による動作処理について具体的に説明した。
  <3-2.第2の実施例>
 続いて、本実施形態による第2の実施例について図5~図6を参照して説明する。本実施例では、推定したユーザ位置やコントロール位置を、さらに最新の姿勢センサデータを用いて修正することで、レイティングを防止することを可能とする。
 (3-2-1.構成)
 図5は、第2の実施例によるHMD20-2の機能構成の一例を示すブロック図である。図5に示すように、HMD20-2は、環境マッピング部201、ユーザ位置推定部202、コントローラ位置推定部203、ユーザ位置修正部206、コントローラ位置修正部207、およびコンテンツ表示制御部204として機能する。第1の実施例と同符号の構成については、ここでの詳細な説明は省略する。
 ユーザ位置修正部206は、ユーザ位置推定部202により推定されたユーザ位置に対し、当該ユーザ位置の推定に用いた撮像画像および姿勢センサデータの取得よりも後に姿勢センサ220により取得した、最新の姿勢センサデータに基づいて、ユーザ位置の修正を行い得る。
 コントローラ位置修正部207は、コントローラ位置推定部203により推定されたコントローラ位置に対し、当該コントローラ位置の推定に用いた撮像画像および姿勢センサデータの取得よりも後に姿勢センサ120により取得した、最新の姿勢センサデータに基づいて、コントローラ位置の修正を行い得る。
 (3-2-2.動作処理)
 図6は、本実施例による情報処理システムの制御の流れの一例を示すシーケンス図である。図6に示すステップS103~S124は、図4を参照して説明した同符号の処理と同様であり、HMD20は、各周辺画像および姿勢センサデータに基づいて、ユーザ位置推定およびコントローラ位置推定を行い得る。
 次に、コントローラ10は、姿勢センサによるセンシングを行い(ステップS133)、姿勢センサデータをHMD20に送信する(ステップS136)。
 次いで、HMD20は、最新の姿勢センサデータに基づいて、推定したコントローラ位置を修正する(ステップS139)。
 また、HMD20は、ユーザ位置に関しても同様に修正を行う。すなわち、HMD20は、HMDの姿勢センサデータを姿勢センサ220により取得すると(ステップS141)、推定したユーザ位置の修正を行う(ステップS144)。
 そして、HMD20は、ユーザ位置およびコントローラ位置の修正結果に基づいて、HMD20の表示部250に表示する仮想空間コンテンツの映像を生成する(ステップS147)。
 以上、本実施例による動作処理について具体的に説明した。
  <3-3.第3の実施例>
 続いて、本実施形態の第3の実施例について、図7~図8を参照して具体的に説明する。上述した各実施例では、コントローラ10からHMD20に送信するデータの選択等については特に言及していないが、コントローラ10は、所定の条件に応じてHMD20に送信するデータを制御することが可能である。
 図7は、本実施例によるコントローラ10のデータ送信制御の一例を示すフローチャートである。
 図7に示すように、まず、コントローラ10は、周辺画像および姿勢センサデータを取得する(ステップS203)。
 次に、コントローラ10は、所定の条件を満たすか否かを判断する(ステップS206)。
 次いで、コントローラ10は、所定の条件を満たす場合(ステップS206/Yes)、姿勢センサデータのみをHMD20に送信する(ステップS209)。
 一方、コントローラ10は、所定の条件を満たさない場合(ステップS206/No)、周辺画像および姿勢センサデータをHMD20に送信する(ステップS212)。
 ここで、「所定の条件」とは、例えば下記のような条件が想定される。いずれも、条件を満たす場合は周辺画像を送信しても位置推定に十分に利用することができないため、コントローラ10は、姿勢センサデータのみを送信している。
・動きが早いか?
・画面が暗いか?
・特徴点が少ないか?
・画面のflowが大きいか?
・人に握られているか?(カメラ110の部分が握られているか?)
・モノとの距離が近いか?(カメラ110がモノに近過ぎるか?)
 また、本実施例によるコントローラ10は、さらに下記のデータを送信することが可能であり、適宜状況に応じて送信制御するようにしてもよい。
・RGB画像
・RGBD画像
・特徴点
・深度情報
・Exposure、Gain
・IMU加速度、角速度、温度等
・顔、人などの認識結果
 一方、このようにコントローラ10から送信される情報に応じたHMD20側の位置推定処理の一例について、図8を参照して説明する。
 図8は、本実施例によるHMD20の位置推定処理の一例を示すフローチャートである。図8に示すように、まず、HMD20は、コントローラ10から上方を受信すると(ステップS223)、姿勢センサデータのみか、周辺画像も含まれているかを判断する(ステップS226)。
 次に、周辺画像も含む場合(ステップS226/画像を含む)、HMD20は、上述したように、環境マップを用いてコントローラ位置の推定を行う(ステップS229)。また、周辺画像が含まれている場合、HMD20は、新たな周辺画像に基づいて、環境マップの更新を行ってもよい。
 一方、姿勢センサデータのみの場合(ステップS226/視線センサデータのみ)、HMD20は、例えばINS(Inertial Navigation System)を用いて、コントローラ位置の推定を行うことが可能となる。
  <3-4.第4の実施例>
 さらに本実施形態によるコントローラ10は、HMD20から受信した情報に応じて所定の動作制御を行ってもよい。以下、図9を参照して具体的に説明する。
 図9は、本実施例によるコントローラ10のHMD20から受信した情報に応じた動作制御の一例を示すフローチャートである。HMD20からコントローラ10に送信する情報の例としては、例えば、コントローラ位置/分散、仮想オブジェクトとの衝突判定結果、障害物との距離、およびHMD20の情報等が想定される。ここでは一例として「仮想オブジェクトとの衝突判定結果」がHMD20から送信される場合について説明する。
 図9に示すように、まず、コントローラ10は、HMD20から、仮想オブジェクトとの衝突判定結果を受信する(ステップS243)。
 次に、コントローラ10は、仮想オブジェクトとの衝突する場合(ステップS246/Yes)、コントローラ10を振動させる処理を行う(ステップS249)。これにより、仮想空間の状況をコントローラ10に対応させることができ、仮想空間への没入感をより高めることが可能となる。
 なお、HMD20からの受信情報に応じたコントローラ10の動作制御は、上述した例に限定されず、例えば、HMD20で推定されるコントローラ位置の分散が大きい場合に、コントローラ10がカメラ110を起動させるようにしてもよい。より具体的には、例えば普段はコントローラ10側からは姿勢センサデータのみをHMD20に送信するように制御し、HMD20側で推定しているコントローラ位置の正確性が下がった場合には、コントローラ10が一時的にカメラ110を起動して撮像画像を送信するようにすることで、カメラ110の消費電力を抑えることが可能となる。
 また、コントローラ10から送信したカメラ110のExposureが、HMD20のカメラ210のExposureと異なる結果の場合、コントローラ10は、カメラ110のExposureの調整、若しくは目隠し状態を振動でユーザに通知する。
 <<4.補足>>
 以上、本実施形態による情報処理システムについて具体的に説明した。なお、本実施形態によるシステム構成は、図1および図2に示すHMD20とコントローラ10とを含む構成に限定されず、例えば、HMD20の機能を、外部装置(据え置き型の専用端末、PC、スマートフォン、サーバ等)により実行するようにしてもよい。
 外部装置は、例えば図3または図5に示す機能構成を有し、HMD20の位置(ユーザ位置)およびコントローラ10の位置推定を行い得る。
 また、仮想空間の映像をユーザに提示するディスプレイは、HMD20のようなウェアラブルデバイスに限定されず、例えばスマートフォン、PC、TV装置、またはプロジェクタ等であってもよい。
 <<5.まとめ>>
 上述したように、本開示の実施形態による情報処理システムでは、インサイドアウト方式のウェアラブルデバイスに対応したコントローラの位置推定を行うことが可能となる。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本技術はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 例えば、上述したHMD20、またはコントローラ10に内蔵されるCPU、ROM、およびRAM等のハードウェアに、HMD20、またはコントローラ10の機能を発揮させるためのコンピュータプログラムも作成可能である。また、当該コンピュータプログラムを記憶させたコンピュータ読み取り可能な記憶媒体も提供される。
 また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
 なお、本技術は以下のような構成も取ることができる。
(1)
 ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うユーザ位置推定部と、
 前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うコントローラ位置推定部と、
を備える、情報処理装置。
(2)
 前記ユーザ位置推定部は、前記ユーザの姿勢推定を含み、
 前記コントローラ位置推定部は、前記コントローラの姿勢推定を含む、前記(1)に記載の情報処理装置。
(3)
 前記情報処理装置は、
 前記第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を環境マップとして生成するマッピング部と、
 前記生成した環境マップを記憶する記憶部と、
をさらに備える、前記(2)に記載の情報処理装置。
(4)
 前記マッピング部は、さらに、前記第2の撮像画像を用いて前記環境マップを生成する、前記(3)に記載の情報処理装置。
(5)
 前記ユーザ位置推定部は、
  前記第1の撮像画像に基づいて、前記ユーザの位置を推定するSLAM(simultaneous localization and mapping)を実行する、前記(3)または(4)に記載の情報処理装置。
(6)
 前記ウェアラブルデバイスは、前記ユーザの頭部に装着される頭部装着型ディスプレイであり、
 前記情報処理装置は、
 推定した前記ユーザの位置、姿勢、および、前記コントローラの位置、姿勢に基づいて生成したコンテンツ画像を、前記頭部装着型ディスプレイに表示するよう制御する表示制御部をさらに備える、前記(3)~(5)のいずれか1項に記載の情報処理装置。
(7)
 前記情報処理装置は、前記ウェアラブルデバイスにより実現される、前記(6)に記載の情報処理装置。
(8)
 前記コントローラ位置推定部は、
  前記環境マップを参照し、前記第2の撮像画像内の特徴点の位置から前記コントローラの位置を推定する際に、前記ユーザの方向に応じて、前記環境マップから候補点の絞り込みを行う、前記(3)~(7)のいずれか1項に記載の情報処理装置。
(9)
 前記コントローラ位置推定部は、前記コントローラに設けられた姿勢センサにより検知された姿勢情報をさらに参照して、前記コントローラの位置および姿勢を推定する、前記(1)~(8)のいずれか1項に記載の情報処理装置。
(10)
 前記姿勢センサは、ジャイロ加速度センサである、前記(9)に記載の情報処理装置。
(11)
 前記情報処理装置は、
 前記コントローラ位置推定部により推定した前記コントローラの位置および姿勢を、前記コントローラから再度取得した新たな姿勢情報に基づいて修正する位置修正部をさらに備える、前記(9)または(10)に記載の情報処理装置。
(12)
 前記コントローラ位置推定部は、前記コントローラからジャイロ加速度情報のみが送信された場合、INS(Inertial Navigation System)を用いて前記コントローラの位置および姿勢を推定する、前記(1)~(11)のいずれか1項に記載の情報処理装置。
(13)
 前記情報処理装置は、
  推定した前記コントローラの位置情報を前記コントローラに送信する、前記(1)~(12)のいずれか1項に記載の情報処理装置。
(14)
 プロセッサが、
 ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うことと、
 前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うことと、
を含む、情報処理方法。
(15)
 コンピュータを、
 ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うユーザ位置推定部と、
 前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うコントローラ位置推定部と、
として機能させるための、プログラム。
 10  コントローラ
  100 制御部
  110 カメラ
  120 姿勢センサ
  130 通信部
 20  HMD
  200 制御部
  201 環境マッピング部
  202 ユーザ位置推定部
  203 コントローラ位置推定部
  204 コンテンツ表示制御部
  206 ユーザ位置修正部
  207 コントローラ位置修正部
  210 カメラ
  220 姿勢センサ
  230 操作入力部
  240 通信部
  250 表示部
  260 音声出力部
  270 記憶部
  271 環境マップ記憶部
  272 コンテンツ記憶部

Claims (15)

  1.  ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うユーザ位置推定部と、
     前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うコントローラ位置推定部と、
    を備える、情報処理装置。
  2.  前記ユーザ位置推定部は、前記ユーザの姿勢推定を含み、
     前記コントローラ位置推定部は、前記コントローラの姿勢推定を含む、請求項1に記載の情報処理装置。
  3.  前記情報処理装置は、
     前記第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を環境マップとして生成するマッピング部と、
     前記生成した環境マップを記憶する記憶部と、
    をさらに備える、請求項2に記載の情報処理装置。
  4.  前記マッピング部は、さらに、前記第2の撮像画像を用いて前記環境マップを生成する、請求項3に記載の情報処理装置。
  5.  前記ユーザ位置推定部は、
      前記第1の撮像画像に基づいて、前記ユーザの位置を推定するSLAM(simultaneous localization and mapping)を実行する、請求項3に記載の情報処理装置。
  6.  前記ウェアラブルデバイスは、前記ユーザの頭部に装着される頭部装着型ディスプレイであり、
     前記情報処理装置は、
     推定した前記ユーザの位置、姿勢、および、前記コントローラの位置、姿勢に基づいて生成したコンテンツ画像を、前記頭部装着型ディスプレイに表示するよう制御する表示制御部をさらに備える、請求項3に記載の情報処理装置。
  7.  前記情報処理装置は、前記ウェアラブルデバイスにより実現される、請求項6に記載の情報処理装置。
  8.  前記コントローラ位置推定部は、
      前記環境マップを参照し、前記第2の撮像画像内の特徴点の位置から前記コントローラの位置を推定する際に、前記ユーザの方向に応じて、前記環境マップから候補点の絞り込みを行う、請求項3に記載の情報処理装置。
  9.  前記コントローラ位置推定部は、前記コントローラに設けられた姿勢センサにより検知された姿勢情報をさらに参照して、前記コントローラの位置および姿勢を推定する、請求項1に記載の情報処理装置。
  10.  前記姿勢センサは、ジャイロ加速度センサである、請求項9に記載の情報処理装置。
  11.  前記情報処理装置は、
     前記コントローラ位置推定部により推定した前記コントローラの位置および姿勢を、前記コントローラから再度取得した新たな姿勢情報に基づいて修正する位置修正部をさらに備える、請求項9に記載の情報処理装置。
  12.  前記コントローラ位置推定部は、前記コントローラからジャイロ加速度情報のみが送信された場合、INS(Inertial Navigation System)を用いて前記コントローラの位置および姿勢を推定する、請求項1に記載の情報処理装置。
  13.  前記情報処理装置は、
      推定した前記コントローラの位置情報を前記コントローラに送信する、請求項1に記載の情報処理装置。
  14.  プロセッサが、
     ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うことと、
     前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うことと、
    を含む、情報処理方法。
  15.  コンピュータを、
     ユーザに装着されたウェアラブルデバイスに設けられた第1の撮像部により撮像された第1の撮像画像に基づいて、前記ユーザの周辺の環境情報を認識し、実空間上における前記ユーザの位置推定を行うユーザ位置推定部と、
     前記ユーザが操作するコントローラに設けられた第2の撮像部により撮像された第2の撮像画像に基づいて、前記認識した環境情報を参照し、前記コントローラの位置推定を行うコントローラ位置推定部と、
    として機能させるための、プログラム。
PCT/JP2019/001223 2018-02-07 2019-01-17 情報処理装置、情報処理方法、およびプログラム WO2019155840A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US16/964,589 US11443540B2 (en) 2018-02-07 2019-01-17 Information processing apparatus and information processing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-020137 2018-02-07
JP2018020137A JP2021060627A (ja) 2018-02-07 2018-02-07 情報処理装置、情報処理方法、およびプログラム

Publications (1)

Publication Number Publication Date
WO2019155840A1 true WO2019155840A1 (ja) 2019-08-15

Family

ID=67548907

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/001223 WO2019155840A1 (ja) 2018-02-07 2019-01-17 情報処理装置、情報処理方法、およびプログラム

Country Status (3)

Country Link
US (1) US11443540B2 (ja)
JP (1) JP2021060627A (ja)
WO (1) WO2019155840A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021075317A1 (ja) * 2019-10-18 2021-04-22

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2021060627A (ja) * 2018-02-07 2021-04-15 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
US11347303B2 (en) * 2018-11-30 2022-05-31 Sony Interactive Entertainment Inc. Systems and methods for determining movement of a controller with respect to an HMD
CN115004128A (zh) 2020-01-27 2022-09-02 奇跃公司 基于注视计时器的用户输入设备的功能增强
WO2024048195A1 (ja) * 2022-09-02 2024-03-07 株式会社Nttドコモ 表示制御装置

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015528936A (ja) * 2012-06-14 2015-10-01 クアルコム,インコーポレイテッド ビジョン支援慣性カメラポーズ推定とビジョンベースのみのカメラポーズ推定との間の適応的な切替え
JP2015232783A (ja) * 2014-06-09 2015-12-24 株式会社バンダイナムコエンターテインメント プログラムおよび画像生成装置
US20160364013A1 (en) * 2015-06-15 2016-12-15 Oculus Vr, Llc Tracking Controllers of a Virtual Reality System
JP2017058752A (ja) * 2015-09-14 2017-03-23 富士通株式会社 作業支援方法、作業支援プログラム、及び作業支援システム
JP2017129904A (ja) * 2016-01-18 2017-07-27 ソニー株式会社 情報処理装置、情報処理方法、及び記録媒体
US20170336862A1 (en) * 2016-05-17 2017-11-23 Google Inc. Object tracking in a head mounted reference frame in an augmented and/or virtual reality environment
US20170352184A1 (en) * 2016-06-06 2017-12-07 Adam G. Poulos Optically augmenting electromagnetic tracking in mixed reality

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5089060B2 (ja) * 2006-03-14 2012-12-05 株式会社ソニー・コンピュータエンタテインメント エンタテインメントシステムおよびゲームコントローラ
KR20130000401A (ko) * 2010-02-28 2013-01-02 오스터하우트 그룹 인코포레이티드 대화형 머리­장착식 아이피스 상의 지역 광고 컨텐츠
US10757400B2 (en) * 2016-11-10 2020-08-25 Manor Financial, Inc. Near eye wavefront emulating display
US10365784B2 (en) * 2017-03-08 2019-07-30 Colopl, Inc. Information processing method and apparatus for executing the information processing method
JP2021060627A (ja) * 2018-02-07 2021-04-15 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム
JP2021002301A (ja) * 2019-06-24 2021-01-07 株式会社リコー 画像表示システム、画像表示装置、画像表示方法、プログラム、及び頭部装着型画像表示装置

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015528936A (ja) * 2012-06-14 2015-10-01 クアルコム,インコーポレイテッド ビジョン支援慣性カメラポーズ推定とビジョンベースのみのカメラポーズ推定との間の適応的な切替え
JP2015232783A (ja) * 2014-06-09 2015-12-24 株式会社バンダイナムコエンターテインメント プログラムおよび画像生成装置
US20160364013A1 (en) * 2015-06-15 2016-12-15 Oculus Vr, Llc Tracking Controllers of a Virtual Reality System
JP2017058752A (ja) * 2015-09-14 2017-03-23 富士通株式会社 作業支援方法、作業支援プログラム、及び作業支援システム
JP2017129904A (ja) * 2016-01-18 2017-07-27 ソニー株式会社 情報処理装置、情報処理方法、及び記録媒体
US20170336862A1 (en) * 2016-05-17 2017-11-23 Google Inc. Object tracking in a head mounted reference frame in an augmented and/or virtual reality environment
US20170352184A1 (en) * 2016-06-06 2017-12-07 Adam G. Poulos Optically augmenting electromagnetic tracking in mixed reality

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPWO2021075317A1 (ja) * 2019-10-18 2021-04-22
WO2021075317A1 (ja) * 2019-10-18 2021-04-22 株式会社Nttドコモ Arシステム及び端末
JP7355840B2 (ja) 2019-10-18 2023-10-03 株式会社Nttドコモ Arシステム及び端末

Also Published As

Publication number Publication date
US11443540B2 (en) 2022-09-13
JP2021060627A (ja) 2021-04-15
US20210042513A1 (en) 2021-02-11

Similar Documents

Publication Publication Date Title
US11796309B2 (en) Information processing apparatus, information processing method, and recording medium
EP3469458B1 (en) Six dof mixed reality input by fusing inertial handheld controller with hand tracking
WO2019155840A1 (ja) 情報処理装置、情報処理方法、およびプログラム
US10198870B2 (en) Information processing apparatus, information processing system, and information processing method
TWI722280B (zh) 用於多個自由度之控制器追蹤
JP7496460B2 (ja) 画像生成装置および画像生成方法
US11609428B2 (en) Information processing apparatus and information processing method
WO2017213070A1 (ja) 情報処理装置および方法、並びに記録媒体
WO2019142560A1 (ja) 視線を誘導する情報処理装置
WO2020110659A1 (ja) 情報処理装置、情報処理方法、およびプログラム
WO2015093130A1 (ja) 情報処理装置、情報処理方法およびプログラム
US11151804B2 (en) Information processing device, information processing method, and program
US20240198211A1 (en) Device including plurality of markers
WO2020209199A1 (ja) 情報処理装置、情報処理方法、及び記録媒体
US10771707B2 (en) Information processing device and information processing method
JPWO2020026419A1 (ja) 画像生成装置および画像生成方法
US20230252691A1 (en) Passthrough window object locator in an artificial reality system
JP2018094086A (ja) 情報処理装置および画像生成方法
US11042747B2 (en) Masking method for augmented reality effects
WO2017163647A1 (ja) 頭部装着装置
US11947119B2 (en) Display control device, display control method, and recording medium
WO2022220049A1 (ja) システム、情報処理方法および情報処理プログラム
WO2022064827A1 (ja) 情報処理装置、情報処理方法およびプログラム
WO2022149497A1 (ja) 情報処理装置、情報処理方法およびコンピュータプログラム
WO2022149496A1 (ja) エンタテインメントシステムおよびロボット

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 19750695

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19750695

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP