WO2020044916A1 - 情報処理装置、情報処理方法及びプログラム - Google Patents

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

Info

Publication number
WO2020044916A1
WO2020044916A1 PCT/JP2019/029783 JP2019029783W WO2020044916A1 WO 2020044916 A1 WO2020044916 A1 WO 2020044916A1 JP 2019029783 W JP2019029783 W JP 2019029783W WO 2020044916 A1 WO2020044916 A1 WO 2020044916A1
Authority
WO
WIPO (PCT)
Prior art keywords
information processing
virtual object
user
resolution
display
Prior art date
Application number
PCT/JP2019/029783
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 US17/260,088 priority Critical patent/US11726320B2/en
Priority to JP2020540171A priority patent/JP7400721B2/ja
Priority to CN201980054725.XA priority patent/CN112585673A/zh
Priority to EP19853647.6A priority patent/EP3846161A4/en
Publication of WO2020044916A1 publication Critical patent/WO2020044916A1/ja

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
    • 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/0093Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00 with means for monitoring data relating to the user, e.g. head-tracking, eye-tracking
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/20Analysis of motion
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0118Head-up displays characterised by optical features comprising devices for improving the contrast of the display / brillance control visibility
    • 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/0147Head-up displays characterised by optical features comprising a device modifying the resolution of the displayed image
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/02Improving the quality of display appearance
    • G09G2320/0261Improving the quality of display appearance in the context of movement of objects on the screen or movement of the observer relative to the screen
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • G09G2340/0414Vertical resolution change
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/0407Resolution change, inclusive of the use of different resolutions for different screen areas
    • G09G2340/0421Horizontal resolution change
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/04Changes in size, position or resolution of an image
    • G09G2340/045Zooming at least part of an image, i.e. enlarging it or shrinking it
    • 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

Definitions

  • the present technology relates to an information processing device, an information processing method, and a program.
  • AR Augmented Reality
  • the AR technology is a technology in which additional information is superimposed on the real world and presented to the user.
  • Information presented to the user by the AR technology is also called an annotation, and may be in various forms such as text, icons or animation. Visualized as a virtual object.
  • the AR technology as described above is embodied by, for example, a head mounted display (hereinafter, referred to as “HMD”) mounted on a user's head or the like.
  • the HMD has a display positioned in front of the user when worn by the user, and displays the above-described virtual object in front of the user.
  • HMDs include a non-transmissive type in which the display is non-transmissive and a transmissive type in which the display is transmissive.
  • the display is of a transmission type
  • the above-described virtual object is displayed in real time so as to be superimposed on a real space visually recognized by the user via the display.
  • the user can perceive the virtual object as if it were a real object existing in a real space.
  • HMDs using such a transmissive display are disclosed in Patent Documents 1 and 2 below. Furthermore, since these HMDs are mounted on a user's head or the like, they have a compact form.
  • an object of the present technology is to provide an information processing apparatus, an information processing method, and a program that can reduce a drawing load while maintaining a realistic expression.
  • an information processing apparatus includes: an acquisition unit that acquires motion information of a user; and a determination that determines an image quality of a virtual object based on the motion information acquired by the acquisition unit.
  • a display control unit that controls display of the virtual object based on the image quality determined by the determination unit.
  • An information processing method acquires user motion information, determines the image quality of a virtual object based on the acquired motion information, and displays the virtual object based on the determined image quality. Control.
  • a program includes a step of acquiring motion information of a user; a step of determining image quality of a virtual object based on the acquired motion information; and a step of determining the virtual object based on the determined image quality. Controlling the display of the computer.
  • FIG. 1 is a diagram for describing a schematic configuration of an information processing device 1 according to an embodiment of the present disclosure.
  • FIG. 2 is a block diagram illustrating an example of a detailed configuration of the information processing apparatus 1 according to the embodiment.
  • FIG. 4 is a conceptual diagram illustrating an operation of resolution determination by a resolution determination unit 102 according to the embodiment.
  • FIG. 3 is a conceptual diagram for explaining a size changing operation of a display control unit 106 according to the embodiment.
  • FIG. 2 is a plan view (part 1) schematically illustrating an example of a state in which a user 700 is looking at a real space via the information processing device 1.
  • FIG. 4 is a plan view (part 2) schematically illustrating an example of a state in which a user 700 is looking at a real space via the information processing device 1.
  • FIG. 2 is a front view (part 1) schematically illustrating an example of a state (image) of a user 700 viewing a real space via the information processing apparatus 1.
  • FIG. 2 is a front view (part 2) schematically illustrating an example of a state (image) in which a user 700 views a real space via the information processing apparatus 1.
  • FIG. 7B is a front view showing a state of relative movement of the virtual object 800 within the visual field 600 during a transition from FIG. 6A to FIG. 6B. It is a flow chart which shows a processing flow concerning the embodiment.
  • 1 is a block diagram illustrating an example of a hardware configuration of an information processing device 900 according to an embodiment of the present disclosure.
  • FIG. 1 is a diagram for explaining a schematic configuration of an information processing apparatus 1 according to the present embodiment.
  • the information processing apparatus 1 according to the present embodiment is realized by, for example, a glasses-type HMD mounted on the head of a user 700. That is, the information processing device 1 is a wearable device worn by the user 700.
  • the display unit 16 corresponding to a spectacle lens portion positioned in front of the user 700 when worn is a transmissive type in which the outside of the spectacle lens portion can be viewed, or a non-transmissive type in which the outside of the spectacle lens portion cannot be viewed. It may be a display.
  • the HMD having the display unit 16 of the transmissive display is referred to as “smart eyeglass”.
  • the information processing apparatus 1 can present the virtual object in front of the user 700 by displaying the virtual object on the display unit 16.
  • a virtual object means a virtual object that can be perceived by the user 700 as a real object existing in a real space.
  • the HMD which is an example of the information processing apparatus 1, is not limited to a mode in which a virtual object is displayed to both eyes of the user 700, but is applied only to one eye of the user 700. You may have the form which displays a virtual object.
  • the information processing apparatus 1 mounted on the head of the user 700 as shown in FIG. It has a configuration in which a pair of display units 16A and 16B for the right eye are arranged.
  • a transmissive display is used for each of the display units 16A and 16B, and the information processing apparatus 1 controls the transmissivity of the transmissive display so that the display can be set to a through state, that is, a transparent or translucent state.
  • the display units 16A and 16B are in the through state, even when the information processing apparatus 1 is always worn like eyeglasses, the user 700 can perceive the surrounding real space. It does not hinder the normal life of the user 700.
  • the display units 16A and 16B can display images such as texts and figures in the through state, that is, can superimpose and display virtual objects in real space as augmented reality (AR).
  • AR augmented reality
  • Such a transmissive display uses, for example, a half mirror or a transparent light guide plate to hold a virtual image optical system including a transparent light guide unit or the like in front of the user 700, and a virtual object inside the virtual image optical system. Is displayed.
  • the display unit 16 is a real space imaged by an outward camera 120 (details will be described later) provided in the information processing apparatus 1.
  • the virtual object may be superimposed on the captured image in the real space while the captured image is displayed.
  • the display unit 16 may be realized as an LED (Light Emitting Diode) light source or the like that directly projects an image on the retina of the user 700. That is, the information processing device 1 may be realized as a projection-type HMD.
  • LED Light Emitting Diode
  • the virtual object may be, for example, a marker (a sign or the like) schematically indicating information presented to the user 700, a map, a shape (a person, a telephone, a signboard, etc.) schematically indicating a real object, or the like.
  • the virtual object may be moving image content such as a movie or a video clip, still image content captured by a digital still camera or the like, data of an electronic book or the like. In other words, any content that can be displayed as a virtual object can be assumed.
  • the information processing apparatus 1 is provided with an outward camera 120 that captures an image of a real space around the user 700.
  • the outward camera 120 is installed in the information processing apparatus 1 such that, when the user 700 is wearing the information processing apparatus 1, an image is taken of a real space in a direction in which the user 700 is visually recognized as an imaging range. I have.
  • a depth image distance image
  • the information processing apparatus 1 includes information on the surrounding environment, for example, It is possible to recognize the shape and positional relationship of a real object existing in the real space.
  • the information processing apparatus 1 may be provided with an inward camera 122 (see FIG. 2) for imaging the expression of the user 700 when worn.
  • the inward camera 122 is installed in the information processing apparatus 1 such that the user 700 wears the information processing apparatus 1 so as to capture the expression of the user 700 and both eyes of the user 700 as an imaging range. I have.
  • the information processing apparatus 1 uses the parallax information obtained by these inward cameras 122 to determine the position of the eyeball, the position of the pupil, the direction of the line of sight, and the movement of the user 700. Etc. can be accurately recognized.
  • the information processing apparatus 1 is provided with various sensors such as a microphone 124 (hereinafter, referred to as a “microphone”) (see FIG. 2) for acquiring sound and the like. Is also good.
  • the information processing apparatus 1 may be provided with a speaker 18 (see FIG. 2).
  • the speaker 18 may be implemented as a pair of earphone speakers corresponding to the left and right ears of the user 700.
  • the information processing apparatus 1 may be provided with a plurality of sensors of the same type.
  • the information processing apparatus 1 may be provided with buttons, switches, and the like (an example of an operation input unit) for performing an input operation by the user 700. Further, as the input operation of the user 700 to the information processing apparatus 1, not only an operation on a button or the like, but also various input methods such as a voice input, a gesture input with a hand or a head, and an input with a line of sight can be selected. . Note that input operations by these various input methods can be obtained by various sensors or the like provided in the information processing apparatus 1.
  • the form of the information processing apparatus 1 is not limited to the example shown in FIG.
  • the information processing device 1 may be a headband-type HMD or a helmet-type HMD (for example, a visor portion of a helmet corresponds to a display). That is, in the present embodiment, the information processing device 1 is a wearable device that can be worn by the user 700, and if the information processing device 1 has the display unit 16 positioned in front of the user 700 at the time of wearing, the information processing device 1 is particularly configured. Is not limited.
  • the above-mentioned headband type means a type that is worn by a band that goes around the entire circumference of the head of the user 700.
  • the head-hand type includes a case in which a band is provided not only on the temporal region of the user 700 but also on the crown.
  • the information processing apparatus 1 is an HMD called a smart eyeglass having a transmissive display will be described as an example.
  • the information processing device 1 according to the present embodiment superimposes and displays a virtual object on a real space. By increasing the resolution of the virtual object, the virtual object can be more realistically represented in the real space.
  • the more realistic the virtual object is to be expressed the longer the drawing time per unit time in the information processing apparatus 1, which causes a decrease in the display frame rate and a decrease in quality such as, for example, dropped frames in animation.
  • the user 700 is watching the virtual object while standing still, when the user 700 is moving, typically moving, or moving around, the virtual object is moved. Since the display is performed, the user 700 may not be able to overlook the deterioration of the quality such as the above-mentioned dropped frames.
  • the more the virtual object is realistically expressed the more the resource of the processor is required. Therefore, the calorific value increases, for example, causing the processor to stop or the user 700 to be burned. Risk increases.
  • the information processing apparatus 1 including the above-described HMD is mounted on the head of the user 700, the risk of burns must be avoided.
  • the information processing apparatus 1 in the information processing apparatus 1, the more realistic the virtual object is to be expressed, the more the processor resource is required, so that the power consumption per unit time is increased, and for example, the battery is greatly consumed.
  • the information processing device 1 including the above-described HMD or the like has a compact form because it is mounted on the head of the user 700. In order to make the information processing apparatus 1 compact, the capacity of the battery mounted on the information processing apparatus 1 is limited, and accordingly, the processing capacity of the processor and the like and the allowable heat generation by the processing are also limited.
  • the present inventors obtain motion information of the user (user 700), determine the image quality of the virtual object based on the obtained motion information, and adjust the image quality to the determined image quality.
  • the information processing apparatus 1 that controls the display of the virtual object has been created. That is, when the user 700 is moving, it is difficult to visually recognize a small portion of the virtual object, but quality degradation such as dropped frames is more easily recognized as compared with the case where the user 700 is looking at the virtual object while standing still. Focusing on the point, the image quality of the virtual object is deliberately reduced when the user 700 is moving, so that the drawing time per unit time is not increased when the user 700 is moving.
  • the image quality is the resolution
  • the rendering load is generally reduced when the resolution is reduced. Therefore, in the information processing apparatus 1 according to the present embodiment, the display of the virtual object at the resolution based on the motion information of the user 700 is performed. , The extent of the problem caused by this is reduced.
  • the information processing apparatus 1 acquires motion information (for example, a change in the position or posture of the user 700) of the user 700 as a user, and, based on the acquired motion information, an image quality (for example, Resolution) is determined, and display of the virtual object is controlled based on the determined image quality.
  • motion information for example, a change in the position or posture of the user 700
  • image quality for example, Resolution
  • a user 700 wearing the information processing apparatus 1 is watching a state in which a virtual object is superimposed and displayed in the center of the real space, and when the user 700 turns his head to the left from that state, the virtual object is displayed in the real space. Move to the right.
  • the information processing device 1 acquires the moving speed of the virtual object as a change in the position or posture of the user 700, determines the resolution of the virtual object based on the acquired change, and displays the virtual object at that resolution. For example, when the user 700 is turning his head, the virtual object is displayed at a low resolution. On the other hand, when the user 700 stands still, that is, when the fluctuation becomes zero, the virtual object is displayed at a high resolution.
  • the virtual object is displayed at a resolution according to the speed at which the user 700 turns his / her neck, that is, the fluctuation. For example, the virtual object is displayed at a low resolution when the fluctuation speed is high, and the virtual object is displayed at a high resolution when the fluctuation speed is low.
  • the information processing apparatus 1 prevents the display frame rate from decreasing when the user 700 is moving, thereby suppressing quality degradation such as dropped frames, Scenes that require a lot of power consumption and scenes where power consumption per unit time increases are reduced as much as possible.
  • FIG. 2 is a block diagram illustrating an example of a detailed configuration of the information processing device 1 according to the present embodiment.
  • the information processing apparatus 1 mainly includes a control unit 10, a sensor unit 12, a storage unit 14, a display unit 16, a speaker 18, a communication unit 20, and an operation input unit 22.
  • the control unit 10 mainly includes a control unit 10, a sensor unit 12, a storage unit 14, a display unit 16, a speaker 18, a communication unit 20, and an operation input unit 22.
  • the control unit 10 functions as an arithmetic processing device and a control device, and controls overall operation in the information processing device 1 according to various programs.
  • the control unit 10 is realized by an electronic circuit of a microprocessor such as a CPU and a GPU. Further, the control unit 10 may include a ROM (Read Only Memory) for storing a program to be used and operation parameters, and a RAM (Random Access Memory) for temporarily storing parameters that change as appropriate.
  • the control unit 10 controls to dynamically change the display resolution and the like of the virtual object according to the change of the position and the posture of the user 700.
  • control unit 10 can function as an information acquisition unit 100, a resolution determination unit 102, a drawing unit 104, and a display control unit 106, as shown in FIG.
  • information acquisition unit 100 a resolution determination unit 102
  • drawing unit 104 a drawing unit 104
  • display control unit 106 a display control unit 106
  • the information acquisition unit 100 can acquire information on the user 700 or various states around the user 700 using a detection result detected by the sensor unit 12 described later. More specifically, the information acquisition unit 100 includes, for example, a user position / posture recognition engine that recognizes the position, posture, and state of the user 700, a SLAM (Simultaneous Localization And Mapping) recognition engine that identifies the position of the user 700, and a user 700. A depth recognition engine that recognizes depth information in the surrounding real space may be included.
  • the information acquisition unit 100 includes a gaze recognition engine that detects the gaze of the user 700, a voice recognition engine that recognizes the environment sound around the user 700 or the user 700, and an absolute position of the information processing device 1 (user 700).
  • a position recognition engine or the like for recognizing the information may be included.
  • the information acquisition unit 100 may include a real object recognition engine or the like that recognizes a real object in a real space. Note that these recognition engines are merely examples, and the present embodiment is not limited to these.
  • the user position / posture recognition engine uses the detection result detected by the sensor unit 12 to recognize the position of the user 700 and the posture of the head or the like (including the direction of the face with respect to the body or the inclination). I do.
  • the user position / posture recognition engine uses an image captured by the outward camera 120, which is a stereo camera, and gyro information, acceleration information, and the like acquired by an inertial measurement unit (IMU: Initial Measurement Unit) 126 described later. Then, it functions as a self-position / posture estimation unit that estimates the position and posture of the user 700.
  • the user position / posture recognition engine may recognize the posture of the user 700 using azimuth information acquired by a azimuth sensor described later. Note that a generally known algorithm can be used as a recognition algorithm for the position / posture of the user 700, and is not particularly limited in the present embodiment.
  • the SLAM recognition engine estimates the self-position of the information processing device 1 (user 700) and creates a map of the real space around the user 700 at the same time by using the detection result detected by the sensor unit 12, and performs the mapping in the real space.
  • the position of the information processing device 1 is identified.
  • a SLAM recognition engine (especially Visual @ SLAM) sequentially restores the three-dimensional shape of the captured real object based on the captured image captured by the outward camera 120. Then, the SLAM recognition engine associates the restoration result with the detection result of the position and the posture of the outward camera 120 to create a map of the real space around the user 700 and to output the outward camera 120 (the user 700 ) Position and orientation are estimated.
  • the position and orientation of the outward camera 120 may be, for example, an image captured by the outward camera 120, which is a stereo camera provided in the sensor unit 12, and a detection detected by various sensors such as the inertial measurement device 126. Based on the result, it can be estimated as information indicating a relative change.
  • a generally known algorithm can be used for the algorithm of SLAM recognition, and is not particularly limited in the present embodiment.
  • the ⁇ depth recognition engine recognizes depth information in the real space around the user 700 using the detection result detected by the sensor unit 12. Specifically, the depth recognition engine uses the ToF (Time of Flight) method to determine the distance between the sensor unit 12 and the real object in the real space based on the measurement result of the return time of the reflected light from the real object. Shape information (depth information) such as the distance and unevenness of the object can be recognized. In addition, the depth recognition engine is configured to detect a real object in a real space based on a difference (a binocular disparity) of a real object on a plurality of captured images of the same real space from different viewpoints by the plurality of outward cameras 120. The position and shape of the object may be recognized. It should be noted that a generally known algorithm can be used as a depth information recognition algorithm, and is not particularly limited in the present embodiment.
  • the information acquisition unit 100 performs space recognition (space grasp) based on both the recognition result of the depth recognition engine and the recognition result of the SLAM recognition engine described above, and obtains information in a three-dimensional real space around the user 700.
  • space recognition space grasp
  • the position and posture of the processing device 1 (the position and posture of the HMD or the user 700 wearing the HMD) can also be recognized.
  • the line-of-sight recognition engine detects the line of sight of the user 700 using the detection result detected by the sensor unit 12.
  • the gaze recognition engine analyzes a captured image of the eyeball of the user 700 acquired by the inward camera 122 and recognizes the gaze direction of the user 700.
  • the gaze detection algorithm is not particularly limited.
  • the gaze direction of the user 700 is determined based on the positional relationship between the inner eye and the iris or the positional relationship between the corneal reflection and the pupil. Can be recognized.
  • the voice recognition engine recognizes the user 700 or the environmental sound around the user 700 using the detection result detected by the sensor unit 12.
  • the speech recognition engine can perform noise removal, sound source separation, and the like on collected sound information acquired by the microphone 124 described later, and can perform speech recognition, morphological analysis, sound source recognition, noise level recognition, and the like. It is. Further, the speech recognition engine may extract a predetermined word from the recognized speech information.
  • the position recognition engine recognizes the absolute position of the information processing device 1 (user 700) using the detection result detected by the sensor unit 12. For example, the position recognition engine recognizes a location (for example, a station, a school, a house, or the like) of the information processing device 1 based on the position information measured by the position positioning unit 132 described later and the map information acquired in advance. Can be.
  • the real object recognition engine has a function of recognizing a real object based on an image captured by the outward camera 120 or the like. For example, the real object recognition engine compares the feature amount of the real object calculated from the captured image captured by the outward camera 120 with the feature amount of the real object registered in advance to determine the type of the real object and the like. recognize.
  • the feature amount can be calculated by a known feature amount calculation technique such as, for example, a SIFT (Scale-Invariant Feature Transform) method or a Random @ Ferns method.
  • the information acquiring unit 100 acquires a device profile (for example, a display processing speed, a detection state of the sensor unit 12, a recognition frame rate in the above-described various recognition engines, and the like) indicating a processing state in the information processing device 1. Good.
  • the information acquisition unit 100 displays the display position, the display area, the display number, and the display mode of the virtual object (for example, the type of the content displayed as the virtual object, Or the moving speed of the virtual object).
  • the resolution determining unit 102 changes the position or orientation of the user 700 (for example, the position or orientation of the user 700 between the previous frame and the current frame) based on the information on the position and orientation of the user 700 acquired by the information acquiring unit 100.
  • a difference a difference between the self position or the posture per unit time, that is, a fluctuation speed
  • the resolution determining unit 102 determines the first display position of the virtual object 800 displayed at the first timing and the second display position of the virtual object 800 displayed at the second timing after the first timing.
  • the information of the change of the position and the posture of the user 700 is acquired based on the difference between the user 700 and the user 700.
  • the resolution determining unit 102 monitors a difference between a past display frame displayed on the display unit 16 and a current display frame, and calculates a change in the position or orientation of the user 700 based on the monitoring result. . More specifically, for example, the resolution determination unit 102 determines the difference between the position of the virtual object 800 in the immediately preceding display frame displayed on the display unit 16 and the position of the virtual object 800 in the current display frame, for example, The value of the pixel to which the virtual object 800 has moved per unit time is monitored, and the value of the pixel per unit time is used as the speed of change of the position or posture of the user 700.
  • the change in the position and the posture of the user 700 is calculated based on the difference between the positions of the virtual objects 800.
  • the change of the position and the posture of the user 700 may be calculated.
  • an object in the real space displayed on the display unit 16 is extracted, for example, a process of extracting a characteristic object, and based on the difference between the position and orientation of the characteristic object, the user 700 Variations in position and orientation may be calculated.
  • the resolution determination unit 102 determines a change in the position or posture of the user 700 based on a captured image captured by the outward camera 120 that is a stereo camera and a measured acceleration obtained from the inertial measurement device 126. It may be calculated directly. Further, the change in the position or posture of the user 700 may be directly calculated based on the change in the self position calculated from the above-described SLAM (Simultaneous Localization And Mapping) recognition engine.
  • SLAM Simultaneous Localization And Mapping
  • an infrared sensor may be mounted on the sensor unit 12, and a change in the position or orientation of the user 700 may be directly calculated based on a change in the self-position calculated from the infrared sensor.
  • a laser range scanner may be mounted on the sensor unit 12, and a change in the position or posture of the user 700 may be directly calculated based on a change in the self-position calculated by the laser range scanner. Note that the information processing apparatus 1 of the present embodiment may calculate a change in the position or posture of the user 700 by a combination of the above various means.
  • the resolution determining unit 102 determines the resolution of the display unit 16, that is, the resolution of the virtual object 800 displayed on the display unit 16, based on the calculated change in the position and orientation of the user 700, and the drawing unit 104 determines the resolution.
  • a command to draw at the determined resolution is output, and a command to perform display control at the determined resolution is output to the display control unit 106.
  • FIG. 3 is a conceptual diagram illustrating an operation of resolution determination by the resolution determination unit 102 according to the present embodiment.
  • the resolution determining unit 102 determines the first resolution (1280 ⁇ 720 pixels) and the second resolution (based on the change in the position and the posture of the user 700 (the difference between the self position and the posture of the previous frame).
  • the resolution of the virtual object 800 is determined from 960 ⁇ 540 pixels) and the third resolution (640 ⁇ 360 pixels). 1280 ⁇ 720 pixels, 960 ⁇ 540 pixels and 640 ⁇ 360 pixels indicate the resolution on the coordinates of the display unit 16, that is, the screen coordinates.
  • the resolution determination unit 102 sets the first resolution (for example, 1280 ⁇ 720 pixels) to be a high resolution. (For example, 960 ⁇ 540 pixels) or a third resolution (for example, 640 ⁇ 360 pixels) which is a low resolution.
  • the resolution may be controlled not only for two-dimensional display but also for three-dimensional display.
  • the storage unit 14 stores a first threshold value for motion information used by the resolution determination unit 102 to determine that the virtual object should be reduced from the first resolution to the second resolution, and stores the virtual object in the second And a second threshold value table for storing a second threshold value for motion information smaller than the first threshold value, which is used for making a decision to increase the resolution from the first resolution to the first resolution. Then, the resolution determination unit 102 determines the resolution of the virtual object based on a comparison between the acquired motion information and the first threshold and the second threshold. Specifically, the threshold table of the storage unit 14 stores a first threshold ⁇ 1 , a second threshold ⁇ 2 , a third threshold ⁇ 1 , and a fourth threshold ⁇ 2 . The resolution determining unit 102 determines the resolution by comparing the calculated change in the position and orientation of the user 700 with the threshold values ( ⁇ 1 , ⁇ 2 , ⁇ 1 , ⁇ 2 ) stored in the storage unit 14.
  • the first threshold value alpha 1 is a threshold value used to lower the resolution, for example, the first x-coordinate or y-coordinate variation of the position and posture from the previous frame of the user 700 on the screen coordinates of 1280 ⁇ 720 pixels is the resolution Is a threshold for judging whether or not has become 15 pixels or more per unit time.
  • the resolution determination unit 102 changes the resolution from the first resolution (1280 ⁇ 720 pixels) to the second resolution (960 ⁇ 720 pixels). 540 pixels).
  • the second threshold value alpha 2 is a threshold value used to lower the resolution, for example, the first x-coordinate or y-coordinate variation of the position and posture from the previous frame of the user 700 on the screen coordinates of 1280 ⁇ 720 pixels is the resolution Is a threshold value for determining whether or not has become 30 pixels or more per unit time. If the resolution of the previous frame is the first resolution (1280 ⁇ 720 pixels) or the second resolution (960 ⁇ 540 pixels) and the variation is 30 pixels or more, the resolution determination unit 102 determines that the first resolution (1280 ⁇ 720 pixels) or the second resolution (960 ⁇ 540 pixels) is reduced to a third resolution (640 ⁇ 360 pixels).
  • the third threshold value ⁇ 1 is a threshold value for lowering the resolution.
  • a change in the position or posture of the user 700 on the screen coordinates of the first resolution of 1280 ⁇ 720 pixels is an x coordinate or a y coordinate from the previous frame. Is less than 10 pixels per unit time.
  • the resolution determination unit 102 determines the second resolution (960 ⁇ A decision is made to increase the resolution from 540 pixels) or the third resolution (640 ⁇ 360 pixels) to the first resolution (1280 ⁇ 720 pixels).
  • Fourth threshold beta 2 is a threshold value used to lower the resolution, for example, the first x-coordinate or y-coordinate variation of the position and posture from the previous frame of the user 700 on the screen coordinates of 1280 ⁇ 720 pixels is the resolution Is less than 20 pixels per unit time.
  • the resolution determination unit 102 changes the resolution from the third resolution (640 ⁇ 360 pixels) to the second resolution (960 ⁇ 360 pixels). 540 pixels).
  • the information processing apparatus 1 includes a resolution reduction threshold (first and second thresholds ⁇ 1 , ⁇ 2 ) for lowering the resolution and a resolution improvement threshold (third and fourth threshold) for increasing the resolution.
  • ⁇ 1 , ⁇ 2 ) the first threshold ⁇ 1 and the third threshold ⁇ 1 , and the second threshold ⁇ 2 and the fourth threshold ⁇ 2 are respectively different values, so that the virtual object 800 The resolution is frequently switched according to the movement of the user 700, so that the user 700 does not feel uncomfortable.
  • the information processing apparatus 1 may set the same threshold value when increasing and decreasing the resolution, and the number of threshold values is not limited to the above example.
  • the resolution determining unit 102 determines the resolution by comparing the change in the position or posture of the user 700 with a threshold value.
  • the resolution determining unit 102 uses a calculation formula or the like that determines the resolution from the change in the position or posture of the user 700.
  • the resolution may be determined, or a table indicating the relationship between the change in the position or posture of the user 700 and the resolution may be provided in advance, and the resolution may be determined from these relationships.
  • the resolution determining unit 102 raises and lowers the first resolution, the second resolution, and the third resolution at the same ratio between the vertical direction and the horizontal direction according to the fluctuation.
  • the rate of increase / decrease in the resolution in the vertical direction and the resolution in the horizontal direction may be changed according to the rate of the movement in the horizontal direction and the movement in the horizontal direction.
  • the resolution only in the vertical direction may be raised or lowered according to the fluctuation, or the resolution only in the horizontal direction may be raised or lowered. For example, when it is detected that the user 700 is walking from the information on the acceleration detected by the sensor unit 12, the resolution determining unit 102 may lower the resolution only in the vertical direction.
  • the drawing unit 104 has a frame buffer, and performs drawing in the frame buffer based on the resolution specified by the resolution determination unit 102.
  • the display control unit 106 controls the display on the display unit 16 by enlarging or reducing the read area of the frame buffer to the size of the display unit 16 based on the resolution specified by the resolution determination unit 102. Thereby, the virtual object 800 corresponding to the resolution determined by the resolution determining unit 102 is displayed on the display unit 16.
  • FIG. 4 is a conceptual diagram for explaining the size changing operation of the display control unit 106.
  • 4 shows a state in which the drawing unit 104 draws an image in the frame buffer.
  • the upper left part shows a state where the drawing is performed at the first resolution (1280 ⁇ 720 pixels)
  • the lower left part shows a state where the drawing is performed at the third resolution (640 ⁇ 360 pixels).
  • the display control unit 106 controls such that the images in the frame buffer are displayed according to the size of the device of the display unit 16. That is, the resolution determining unit 102 displays the image of the first resolution (1280 ⁇ 720 pixels) in the upper left of FIG. 4 drawn in the frame buffer on the display unit 16 in the same size as shown in the upper right of FIG.
  • the image of the third resolution (640 ⁇ 360 pixel) shown in the lower left of FIG. 4 drawn in the frame buffer by controlling the display is enlarged twice in the vertical direction and twice in the horizontal direction as shown in the lower right of FIG.
  • the display is controlled to be displayed on the display unit 16 with.
  • the sensor unit 12 has a function of acquiring various information regarding the user 700 or the surrounding environment (real space) of the user 700.
  • the sensor unit 12 includes an outward camera 120, an inward camera 122, a microphone 124, an inertial measurement device 126, an infrared sensor 128, an azimuth sensor 130, a position measurement unit 132, and a biological sensor 134.
  • the above-described sensor is an example, and the present embodiment is not limited to this. Further, a plurality of the above-described various sensors may be provided in the sensor unit 12, respectively. Hereinafter, details of each sensor included in the sensor unit 12 will be described.
  • the outward camera 120 captures an image of the real space around the user 700
  • the inward camera 122 captures the facial expression of the user 700
  • the outward camera 120 and the inward camera 122 include a lens system including an imaging lens, an aperture, a zoom lens, a focus lens, and the like, and a drive system that performs a focus operation and a zoom operation on the lens system.
  • each of the outward camera 120 and the inward camera 122 has a solid-state image sensor array or the like that photoelectrically converts imaging light obtained by the lens system to generate an imaging signal.
  • the solid-state imaging device array may be realized by, for example, a CCD (Charge Coupled Device) sensor array or a CMOS (Complementary Metal Oxide Semiconductor) sensor array.
  • control unit 10 uses the outward camera 120 as a stereo camera composed of a pair of left and right cameras, measures the distance between the user and a predetermined position using the stereo camera, and measures the measurement result and the inertial measurement device.
  • the change in the position or posture of the user may be estimated from the change in the acceleration measured by 126.
  • the microphone 124 collects the voice of the user 700 and the surrounding environmental sound, and outputs the collected voice information to the control unit 10. For example, the microphone 124 collects an instruction uttered by the user 700 and outputs the instruction to the control unit 10. For example, the control unit 10 can recognize the instruction of the user 700 by analyzing the audio information output from the microphone 124.
  • the inertial measurement device 126 obtains a three-dimensional angular velocity and acceleration using a three-axis gyro and a three-axis accelerometer. By comparing the time-series data of the acceleration of the user 700 detected by the inertial measurement device 126, the fluctuation of the acceleration can be calculated.
  • the control unit 10 can obtain a change in the position or posture of the user 700 based on the change in the acceleration.
  • the infrared sensor 128 detects infrared light. For example, by comparing the time-series data of the infrared sensor 128, it is possible to estimate a change in the position or posture of the user 700. Similarly, by comparing the time-series data by a laser range scan (not shown), it is possible to estimate a change in the position or posture of the user 700. Then, the control unit 10 can obtain the change in the position and the posture of the user 700 based on the change in the position and the posture of the user 700.
  • the direction sensor 130 is realized by, for example, a three-axis geomagnetic sensor (compass), and detects an absolute direction (direction).
  • the absolute azimuth refers to the azimuth in the world coordinate system (east, west, north and south) in the real space.
  • the position positioning unit 132 detects the absolute position of the information processing device 1 (user 700) based on an externally obtained signal.
  • the absolute position refers to a position in the world coordinate system (details) in the real space.
  • the position positioning unit 132 is realized by, for example, a GPS (Global Positioning System) positioning unit, receives a radio wave from a GPS satellite, detects a position where the information processing device 1 (user 700) exists, The detected position information is output to the control unit 10.
  • GPS Global Positioning System
  • the position positioning unit 132 transmits and receives, for example, Wi-Fi (Wireless Fidelity, registered trademark), Bluetooth (registered trademark), a mobile phone, a PHS (Personal Handy-phone System), a smartphone, or the like, or A device that detects a position by short-range communication or the like may be used.
  • the control unit 10 can obtain a change in the position or posture of the user 700 based on, for example, the absolute direction detected by the direction sensor 130 and the absolute position detected by the position measurement unit 132.
  • the biological sensor 134 detects various biological information of the user 700. Specifically, for example, the biological sensor 134 is directly or indirectly attached to a part of the body of the user 700, and the heart rate, blood pressure, brain wave, respiration, perspiration, myoelectric potential, skin temperature, and skin temperature of the user 700 Includes one or more sensors that measure electrical resistance and the like. These biological sensors 134 output the detected biological information to the control unit 10.
  • the sensor unit 12 includes a temperature sensor (not shown) that detects an ambient temperature around the user 700 and an illuminance sensor that detects the brightness of the environment around the user 700. (Not shown) or the like. Further, the sensor unit 12 may include various sensors such as an atmospheric pressure sensor (not shown) that detects the atmospheric pressure of the environment around the user 700 and a radio wave sensor (not shown) that detects a radio wave.
  • the storage unit 14 stores programs and parameters for the control unit 10 to execute each function.
  • the storage unit 14 stores a recognition algorithm used for processing in the information acquisition unit 100, the resolution determination unit 102, the drawing unit 104, and the display control unit 106, a threshold used in the resolution determination unit 102, and the like in a threshold table.
  • the display unit 16 is realized by, for example, a lens unit (an example of a see-through type display) that performs display using hologram optical technology, a liquid crystal display (LCD) device, an OLED (Organic Light Emitting Diode) device, or the like.
  • a lens unit an example of a see-through type display
  • LCD liquid crystal display
  • OLED Organic Light Emitting Diode
  • the speaker 18 reproduces an audio signal or the like under the control of the control unit 10 described above.
  • the speaker 18 can be realized by a pair of earphone speakers (not shown) corresponding to the left and right ears of the user 700.
  • the communication unit 20 is a communication module for transmitting / receiving data to / from another device by wire / wireless.
  • the communication unit 20 directly communicates with an external device by a method such as a wired LAN (Local Area Network), a wireless LAN, Wi-Fi (registered trademark), infrared communication, Bluetooth (registered trademark), and short-range / contactless communication.
  • a wired LAN Local Area Network
  • Wi-Fi registered trademark
  • infrared communication Bluetooth
  • short-range / contactless communication Alternatively, communication can be performed via a network access point (not shown).
  • the communication unit 20 may be used as a radio wave sensor that detects a radio wave.
  • the operation input unit 22 is realized by an operation member (not shown) having a physical structure such as a switch, a button, or a lever.
  • the user 700 can perform a desired input to the information processing device 1 by performing an operation on the operation input unit 22.
  • the content of the operation input by the operation input unit 22 may be displayed on the display unit 16 described above.
  • the configuration of the information processing apparatus 1 according to the present embodiment has been specifically described above, the detailed configuration of the information processing apparatus 1 according to the present embodiment is not limited to the example illustrated in FIG.
  • at least a part of the processing of the control unit 10 of the information processing device 1 may be performed in a server (not shown) on the cloud connected via the communication unit 20.
  • the information processing apparatus 1 for example, when the control unit 10 detects that the user 700 has changed its own position or posture, the display resolution of the display unit 16 for the period of the change, that is, the virtual The resolution of the object 800 can be reduced and displayed on the display unit 16.
  • the information processing device 1 superimposes and displays such a virtual object 800 on the real space.
  • 5A and 5B are plan views (top views) schematically illustrating an example of a state in which the user 700 is watching the real space via the information processing device 1.
  • FIG. 5A shows a state where the user 700 is looking in the first direction
  • FIG. 5B shows a state where the user 700 is turning his / her head to the left thereafter and looking in the second direction.
  • reference numeral 600 indicates a range of a visual field in which the user 700 views the real space via the information processing device 1.
  • 6A and 6B are front views schematically showing an example of a state (image) of the user 700 viewing the real space via the information processing device 1.
  • FIG. 6A corresponds to FIG. 5A
  • FIG. 6B corresponds to FIG. 5B.
  • the user 700 sees the virtual object 800 as if it exists in the real space at a position substantially at the center of the visual field 600 and at a predetermined distance.
  • the virtual object 800 is placed in the real space at a predetermined distance on the right side of the visual field 600. It will be visible to the user 700 as if it were present.
  • FIG. 7 shows the state of movement of the virtual object 800 from the state where the first direction is viewed to the state where the second direction is viewed, that is, the virtual object 800 during the transition from FIG. 6A to FIG. 6B.
  • 7 shows a state of relative movement within the visual field 600 of the image forming apparatus.
  • the virtual object 800 relatively moves in the field of view 600 along the direction of the arrow 802 between 800A and 800B.
  • the information processing apparatus 1 calculates, for example, the moving speed of the virtual object 800 in the visual field 600 and estimates the speed of turning the neck of the user 700, that is, the change in the position and posture of the user 700. .
  • the information processing apparatus 1 displays the virtual object 800 at the highest resolution (for example, 1280 ⁇ 720 pixels) on the display unit 16 when the user 700 is stationary, and while the user 700 is moving, While turning the neck of the virtual object 700, the virtual object 800 is displayed on the display unit 16 at a lower resolution (second resolution (960 ⁇ 540 pixels) or third resolution (640 ⁇ 360 pixels)) than the still state.
  • second resolution 960 ⁇ 540 pixels
  • third resolution 640 ⁇ 360 pixels
  • the degree of resolution is changed depending on whether the neck turning speed is low or high.
  • the virtual object 800 is displayed at a resolution of, for example, 960 ⁇ 540 pixels.
  • the virtual object 800 is displayed at a resolution of, for example, 640 ⁇ 360 pixels.
  • the speed of turning the neck of the user 700 that is, the change in the posture of the user 700 is estimated.
  • the speed at which the virtual object 800 moves away, approaches, moves right and left, and the like in the visual field 600 that is, A change in the position of the user can be similarly estimated.
  • a variation in which both the position and the posture of the subject are overlapped can be similarly estimated. In the present embodiment, these changes are collectively called motion information.
  • the information processing apparatus 1 displays the virtual object 800 displayed at the first timing at the first position and at the second timing after the first timing, for example, at the timing after one display frame.
  • the motion information of the user 700 is estimated based on the difference between the virtual object 800 and the second position.
  • the motion information of the user 700 may be estimated in units of frames, but the motion information of the user 700 may be estimated in units of time, for example, or the motion information of the user 700 may be estimated in another unit. .
  • the unit and time of such a frame may be dynamically changed according to the battery capacity, heat generation temperature, and the like of the information processing apparatus 1. Further, a configuration may be adopted in which the user 700 can arbitrarily set the frame unit and time while watching the virtual object 800 when the user 700 is moving, for example.
  • the information processing apparatus 1 determines the resolution of the display unit 16, that is, the resolution of the virtual object 800, based on the estimated motion information, and displays such a virtual object 800 on the display unit 16. Display, that is, superimposed and displayed on the real space.
  • FIG. 8 is a flowchart illustrating a processing flow according to the present embodiment.
  • the information processing method according to the present embodiment includes a plurality of steps from step S100 to step S109.
  • the information processing apparatus 1 performs the following flow (steps 102 to 116) for each display frame of the virtual object 800 to be displayed, and repeats each time the display frame changes.
  • Step S100 The resolution determining unit 102 reads the first threshold ⁇ 1 , the second threshold ⁇ 2 , the third threshold ⁇ 1 , and the fourth threshold ⁇ 2 from the threshold table stored in the storage unit 14.
  • Step S102 The information acquisition unit 100 calculates and estimates the position and orientation of the user 700 from data acquired from the outward camera 120, which is a stereo camera of the sensor unit 12, and an inertial measurement device (IMU) 126 described later.
  • the self-position / posture is calculated, for example, by recognizing the real world from the image data of the outward camera 120 and calculating from the distance measurement result by the outward camera 120 which is a stereo camera and the measurement result of the inertial measurement unit (IMU) 126. Can be.
  • the information acquisition unit 100 calculates the display distance and direction (posture of the user 700) from the user 700 to the display position of the virtual object 800.
  • the display distance and direction of the virtual object 800 are, for example, a display position defined in advance by an application that displays the virtual object 800, and the information processing device 1 (acquired from the outward camera 120 and the inertial measurement device (IMU) 126). It can be calculated based on the user 700) 's own position / posture information.
  • the virtual object 800 is displayed on the display unit 16 based on the self-position / posture of the user 700 calculated as described above and the display distance and direction from the user 700 to the display position of the virtual object 800.
  • Step 104 The resolution determination unit 102 determines whether the difference between the position and orientation of the user 700 calculated in step 102 and the previous frame, that is, the change in the position and orientation of the user 700, is the resolution reduction threshold ( ⁇ 1 , ⁇ 2 ) is determined. If the difference between the position and orientation of the self and the previous frame exceeds the resolution lowering threshold value ( ⁇ 1 , ⁇ 2 ), the process proceeds to step 108, and if not, the process proceeds to step 106.
  • Step 106 The resolution determination unit 102 determines whether the difference between the position and orientation of the user 700 calculated in step 102 and the previous frame, that is, the change in position and orientation of the user 700, is the resolution improvement threshold ( ⁇ 1 , ⁇ 2 ) is determined. If the difference between the own frame and its position / posture from the previous frame is smaller than the resolution improvement thresholds ( ⁇ 1 , ⁇ 2 ), the process proceeds to step 110; otherwise, the process proceeds to step 116.
  • Step 108 Resolution determination unit 102, the resolution of the previous frame is a first resolution (1280 ⁇ 720 pixels, when the difference between the previous frame position and orientation of the self is greater than the resolution lowering threshold alpha 1, the first Is determined to reduce the resolution from the resolution (1280 ⁇ 720 pixels) to the second resolution (960 ⁇ 540 pixels), and the resolution of the previous frame is the first resolution (1280 ⁇ 720 pixels or the second resolution (960 ⁇ 540 pixels)) Te, when the difference between the previous frame position and orientation of the self is greater than the resolution lowering threshold alpha 2 is the first resolution (1280 ⁇ 720 pixels or second resolution (960 ⁇ 540pixel) from the third resolution ( It is determined that the resolution is reduced to 640 ⁇ 360 pixels), and the process proceeds to step 112.
  • the resolution determination unit 102 determines that the resolution of the previous frame is the second resolution (960 ⁇ 540 pixels) or the third resolution (640 ⁇ 360 pixels), and the difference between its own position and orientation from the previous frame is the resolution improvement threshold ⁇ . If it is less than 1 , it is determined to increase the resolution from the second resolution (960 ⁇ 540 pixels) or the third resolution (640 ⁇ 360 pixels) to the first resolution (1280 ⁇ 720 pixels), and the resolution of the previous frame is determined.
  • the third resolution (640 ⁇ 360 pixels)
  • the second resolution from the third resolution (640 ⁇ 360 pixels) It is decided to increase the resolution to the resolution (960 ⁇ 540 pixels), and the process proceeds to step 112.
  • the resolution determining unit 102 notifies the drawing unit 104 and the display control unit 106 of the resolution determined in step 108 or 110.
  • the drawing unit 104 performs drawing in the frame buffer based on the resolution specified by the resolution determination unit 102.
  • the display control unit 106 enlarges or reduces the read area of the frame buffer to the size of the display unit 16 based on the resolution specified by the resolution determination unit 102, and controls display on the display unit 16.
  • the virtual object 800 corresponding to the resolution determined by the resolution determining unit 102 is displayed on the display unit 16.
  • the information processing apparatus 1 performs the above-described flow (from step 102 to step 116) for each display frame of the virtual object 800 to be displayed, and repeats each time the display frame changes.
  • the information processing apparatus 1 has a higher performance when the user 700 is moving, for example, when the user 700 is running or turning his / her head than when the user 700 is watching the virtual object 800 while standing still. It focuses on the fact that the detailed portion of the virtual object 800 is not visually recognized.
  • the resolution of the virtual object 800 is reduced, and the resolution of the virtual object 800 is changed according to the moving speed of the user 700. Is increased, and the drawing load is reduced. As a result, the drawing load is reduced while maintaining a realistic expression for the user 700, and the degree of the problem caused by the drawing load is reduced.
  • the drawing time per unit time is shortened, the frame rate is prevented from lowering, the heat generation of the processor is reduced, the risk of stopping the processor and burn is reduced, and the power consumption per unit time is reduced.
  • the consumption of the battery can be suppressed.
  • the resolution of the virtual object was reduced when the user saw the virtual object in a stationary state and when the user saw the same virtual object while walking. However, it was confirmed that it was difficult to notice the difference in drawing quality when walking. This means that, even if the resolution drops, the realistic expression is maintained.
  • the processing time of the fragment shader (Fragment @ Shader) is reduced while lowering the resolution of the frame buffer
  • the processing time of the fragment shader decreases as the resolution decreases.
  • the information processing apparatus 1 may set a threshold at the lower limit of the resolution.
  • the threshold may be set to a predetermined image processing such as the processing time of the fragment shader (Fragment @ Shader) even if the resolution is lowered.
  • a resolution value that does not reduce the required processing time may be used.
  • the image quality of the virtual object to be changed includes not only the resolution of the virtual object, but also the texture (texture of the virtual object), the display density, the transparency, the brightness, the number of colors, and the like of the virtual object.
  • the storage unit 14 has a virtual object holding table that previously holds a plurality of virtual objects having the same image but different image qualities, and the resolution determination unit 102 performs the estimation. Based on the obtained motion information, one virtual object is selected from the plurality of virtual objects held in the virtual object holding table, and the display control unit 106 controls the display of the virtual object selected by the resolution determination unit 102. You may.
  • the virtual object holding table previously holds, for example, a mipmap (MIP @ map) obtained by mipmapping an original virtual object (for example, a virtual object having the highest resolution).
  • the virtual object holding table may hold a plurality of types of compressed texture images generated from an original virtual object (for example, a virtual object having the highest resolution) in advance.
  • the virtual object holding table may hold the above-described mipmap and a plurality of types of compressed texture images in advance, for example, and selectively use the mipmap according to, for example, a predetermined attribute of the virtual object.
  • the drawing unit 104 that performs drawing in the frame buffer based on the resolution specified by the resolution determination unit 102 is not required.
  • the display control unit 106 may control the display of the virtual object selected by the resolution determination unit 102. Therefore, according to this embodiment, the drawing load can be further reduced.
  • the present invention is applied to a smart eyeglass having a transmissive display as an example.
  • the present invention is not limited to this case.
  • VR Virtual Reality
  • a smartphone for example, the technology according to the present disclosure can be applied to a navigation application.
  • motion information of the smartphone may be detected, and the resolution of the virtual object on the navigation map may be controlled based on the motion information.
  • the example in which the HMD operates in a stand-alone manner has been described.
  • the technology according to the present disclosure may be realized in cooperation with the HMD and the smartphone.
  • the HMD has a transmissive display unit, and the control unit of a smartphone wirelessly or wiredly connected to the HMD may detect a change in the position or posture of the user, determine the resolution, and the like.
  • FIG. 9 is a block diagram illustrating an example of a hardware configuration of the information processing device 900 according to an embodiment of the present disclosure.
  • FIG. 9 illustrates an example of a hardware configuration of the information processing apparatus 900 described above.
  • the information processing apparatus 900 includes, for example, a CPU 950, a ROM 952, a RAM 954, a recording medium 956, an input / output interface 958, and an operation input device 960. Further, the information processing device 900 includes a display device 962, an audio output device 964, a communication interface 968, and a sensor 980. In addition, the information processing apparatus 900 connects the components with each other via a bus 970 as a data transmission path, for example.
  • the CPU 950 includes, for example, one or more processors configured with arithmetic circuits such as a CPU and a GPU, and various processing circuits and the like, and a control unit that controls the entire information processing apparatus 900 (for example, the control unit described above). Function as 10). Specifically, the CPU 950 performs, for example, the functions of the information acquisition unit 100, the information acquisition unit 100, the resolution determination unit 102, the drawing unit 104, the display control unit 106, and the like in the information processing device 900.
  • the ROM 952 stores programs used by the CPU 950, control data such as operation parameters, and the like.
  • the RAM 954 temporarily stores programs executed by the CPU 950, for example.
  • the recording medium 956 functions as the storage unit 14 described above, and stores, for example, data related to the information processing method according to the present embodiment and various data such as various applications.
  • examples of the recording medium 956 include a magnetic recording medium such as a hard disk and a nonvolatile memory such as a flash memory. Further, the recording medium 956 may be detachable from the information processing device 900.
  • the input / output interface 958 connects, for example, the operation input device 960, the display device 962, and the like.
  • Examples of the input / output interface 958 include a USB (Universal Serial Bus) terminal, a DVI (Digital Visual Interface) terminal, an HDMI (High-Definition Multimedia Interface) (registered trademark) terminal, and various processing circuits.
  • the operation input device 960 is connected to the input / output interface 958 inside the information processing apparatus 900.
  • the display device 962 functions as, for example, the display unit 16 described above, is provided in the information processing apparatus 900, and is connected to the input / output interface 958 inside the information processing apparatus 900.
  • Examples of the display device 962 include a liquid crystal display and an organic EL display (Organic Electro-Luminescence Display).
  • the audio output device 964 functions as, for example, the above-described speaker 18, and is provided in, for example, the information processing apparatus 900, and is connected to the input / output interface 958 inside the information processing apparatus 900.
  • the input / output interface 958 can be connected to an external device such as an operation input device (for example, a keyboard or a mouse) external to the information processing apparatus 900 or an external display device.
  • an operation input device for example, a keyboard or a mouse
  • the input / output interface 958 may be connected to a drive (not shown).
  • the drive is a reader / writer for a removable recording medium such as a magnetic disk, an optical disk, or a semiconductor memory, and is built in or external to the information processing apparatus 900.
  • the drive reads the information recorded on the removable recording medium to which the drive is attached, and outputs the information to the RAM 954.
  • the drive can also write a record on a mounted removable recording medium.
  • the communication interface 968 functions as the communication unit 20 for performing wireless or wired communication with another external device via, for example, a communication network (not shown) (or directly).
  • a communication interface 968 for example, a communication antenna and an RF (Radio Frequency) circuit (wireless communication), an IEEE 802.15.1 port and a transmission / reception circuit (wireless communication), an IEEE 802.11 port and a transmission / reception circuit (wireless communication) ) Or a LAN (Local Area Network) terminal and a transmission / reception circuit (wired communication).
  • RF Radio Frequency
  • the sensor 980 functions as the sensor unit 12 described above. Further, the sensor 980 may further include various sensors such as an illuminance sensor.
  • each of the above components may be configured using a general-purpose member, or may be configured with hardware specialized for the function of each component. Such a configuration can be appropriately changed according to the technical level at the time of implementation.
  • the information processing apparatus 900 does not include the communication interface 968 when communicating with an external device or the like via a connected external communication device or when processing is performed in a stand-alone manner. Is also good.
  • the communication interface 968 may have a configuration capable of performing communication with one or more external devices by a plurality of communication methods. Further, the information processing apparatus 900 can have a configuration without the recording medium 956, the operation input device 960, and the like, for example.
  • the information processing apparatus 900 according to the present embodiment may be applied to a system including a plurality of apparatuses on the premise of connection to a network (or communication between apparatuses), such as cloud computing. Good. That is, the above-described information processing apparatus 900 according to the present embodiment can also be realized as, for example, an information processing system in which a plurality of devices perform processing according to the information processing method according to the present embodiment.
  • the embodiment described above can include, for example, a program for causing a computer to function as the information processing apparatus according to the embodiment, and a non-transitory tangible medium in which the program is recorded. Further, the program may be distributed via a communication line (including wireless communication) such as the Internet.
  • each step in the processing of each embodiment described above does not necessarily have to be processed in the order described.
  • each step may be processed in an appropriately changed order.
  • each step may be partially processed in parallel or individually instead of being processed in time series.
  • the processing method of each step does not necessarily have to be processed according to the described method.
  • the processing method may be processed by another function block by another method.
  • an acquisition unit that acquires user motion information
  • a determining unit that determines the image quality of the virtual object based on the motion information acquired by the acquiring unit
  • a display control unit that controls display of the virtual object based on the image quality determined by the determination unit.
  • the information processing apparatus may determine a difference between a first display position of the virtual object displayed at a first timing and a second display position of the virtual object displayed at a second timing after the first timing.
  • the acquisition unit acquires movement information of the user based on the measured position information or posture information of the user.
  • the information processing apparatus determines the resolution of the virtual object as the image quality of the virtual object based on the motion information.
  • the information processing apparatus according to any one of (1) to (5), The information processing apparatus according to (7) or (5), wherein the determining unit determines texture, display density, transparency, brightness, or the number of colors of the virtual object as the image quality of the virtual object based on the motion information. So, A drawing unit that performs drawing in a frame buffer based on the resolution of the virtual object determined by the determination unit, The display control unit controls a display size of the virtual object drawn in the frame buffer based on the resolution determined by the determination unit.
  • the determining unit determines a vertical resolution or a horizontal resolution of the virtual object based on the motion information acquired by the acquiring unit.
  • the information processing apparatus according to any one of (1) to (4), A virtual object holding table that holds a plurality of virtual objects having different image qualities in the same image in advance, The determining unit selects one virtual object from the plurality of virtual objects held in the virtual object holding table based on the motion information acquired by the acquiring unit, The display control unit controls display of a virtual object selected by the determination unit.
  • the information processing apparatus according to (9), The virtual object holding table previously holds a mipmap (MIP map) obtained by mipmapping the virtual object.
  • MIP map mipmap
  • the information processing apparatus according to (8) or (9),
  • the virtual object table previously stores a plurality of types of compressed texture images generated from the virtual object.
  • the information processing apparatus according to any one of (1) to (11), A first threshold value for the motion information used to make a decision to lower the virtual object from a first image quality to a second image quality at the determining unit, and A threshold table that holds a second threshold value for the motion information that is smaller than the first threshold value and that is used for making a determination to increase the first image quality;
  • the determining unit determines the image quality of the virtual object based on a comparison between the motion information acquired by the acquiring unit and the first threshold and the second threshold.
  • An information processing apparatus further comprising: a transmissive display unit that displays the virtual object whose display is controlled by the display control unit.
  • An information processing apparatus further comprising: a non-transmissive display unit that displays the virtual object, the display of which is controlled by the display control unit, in a manner superimposed on another image.
  • the information processing apparatus acquires information on the motion of the HMD as motion information of the user based on output data of a sensor provided in an HMD (Head Mounted Display),
  • the display control unit controls display of the virtual object on a display unit provided in the HMD. Based on the obtained motion information, determine the image quality of the virtual object, Information processing method for controlling display of the virtual object based on the determined image quality

Abstract

情報処理装置1は、ユーザであるユーザ700の動き情報を取得し、取得した動き情報に基づいて、仮想オブジェクトの画質(例えば解像度)を決定し、決定した画質に基づいて、仮想オブジェクトの表示を制御する。例えば、ユーザ700が首を回しているときには仮想オブジェクトは低い解像度で表示される。一方、ユーザ700が静止すると、すなわち変動が0になると、仮想オブジェクトは高い解像度で表示される。本情報処理装置1により、リアルな表現を維持しつつ描画負荷を抑えることが可能となる。

Description

情報処理装置、情報処理方法及びプログラム
 本技術は、情報処理装置、情報処理方法及びプログラムに関する。
 近年、情報処理技術及び表示技術の発展に伴い、現実感のある映像を表示する技術が提供されるようになってきている。このような技術として、拡張現実(AR:Augmented Reality)技術がある。AR技術は、実世界に付加的な情報を重畳してユーザに提示する技術であり、AR技術によりユーザに提示される情報は、アノテーションとも呼ばれ、テキスト、アイコン又はアニメーション等、様々な形態の仮想オブジェクトとして可視化される。
 上述のようなAR技術は、例えば、ユーザの頭部等に装着されるヘッドマウントディスプレイ(Head Mounted Display:以下、「HMD」と称する)等により具現化される。詳細には、HMDは、ユーザに装着された際にユーザの眼前に位置するディスプレイを有し、ユーザの眼前に上述の仮想オブジェクトを表示する。このようなHMDには、上記ディスプレイが非透過である非透過型と、上記ディスプレイが透過する透過型とがある。ディスプレイが透過型であった場合、上述の仮想オブジェクトは、ディスプレイを介してユーザが視認する実空間に重畳されるようにリアルタイムで表示される。AR技術によれば、このように仮想オブジェクトを表示することにより、ユーザに対して、仮想オブジェクトをあたかも実空間に存在する現実物体のように知覚させることができる。例えば、このような透過型のディスプレイを用いたHMDは、下記の特許文献1及び2に開示されている。更に、これらHMDは、ユーザの頭部等に装着されることから、コンパクトな形態を有している。
特開2016-208380号公報 特開2016-157458号公報
 この種の情報処理装置では、リアルな表現をしようとするほど描画負荷が増し、描画負荷に起因して様々な問題が生じる。
 以上のような事情に鑑み、本技術の目的は、リアルな表現を維持しつつ描画負荷を抑えることができる情報処理装置、情報処理方法及びプログラムを提供することにある。
 上記目的を達成するため、本技術の一形態に係る情報処理装置は、ユーザの動き情報を取得する取得部と、取得部により取得された動き情報に基づいて、仮想オブジェクトの画質を決定する決定部と、決定部により決定された画質に基づいて、仮想オブジェクトの表示を制御する表示制御部とを含む。
 本技術の一形態に係る情報処理方法は、ユーザの動き情報を取得し、前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定し、前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御する。
 本技術の一形態に係るプログラムは、ユーザの動き情報を取得するステップと、前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定するステップと、前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御するステップとをコンピュータに実行させる。
 以上のように、本技術によれば、リアルな表現を維持しつつ描画負荷を抑えることができる。なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載されたいずれかの効果であってもよい。
本開示の一実施形態に係る情報処理装置1の概要構成を説明するための図である。 同実施形態に係る情報処理装置1の詳細構成の一例を示すブロック図である。 同実施形態に係る解像度決定部102による解像度決定の動作を説明するための示す概念図である。 同実施形態に係る表示制御部106のサイズ変更動作を説明するための概念図である。 ユーザ700が情報処理装置1を介して実空間を見ている状態の一例を概略的に示す平面図(その1)である。 ユーザ700が情報処理装置1を介して実空間を見ている状態の一例を概略的に示す平面図(その2)である。 ユーザ700が情報処理装置1を介して実空間を見た様子(像)の一例を概略的に示す正面図(その1)である。 ユーザ700が情報処理装置1を介して実空間を見た様子(像)の一例を概略的に示す正面図(その2)である。 図6Aから図6Bに遷移するまでの間の仮想オブジェクト800の視野600内での相対的な移動の様子を示す正面図である。 同実施形態に係る処理フローを示すフローチャートである。 本開示の一実施形態に係る情報処理装置900のハードウェア構成の一例を示したブロック図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。 
 <<本開示の実施形態に係る情報処理装置の概要構成>>
 まず、本開示の実施形態に係る情報処理装置の概要について、図1を参照して説明する。図1は、本実施形態に係る情報処理装置1の概要構成を説明するための図である。図1に示すように、本実施形態に係る情報処理装置1は、例えば、ユーザ700の頭部に装着される眼鏡型のHMDにより実現される。すなわち、情報処理装置1は、ユーザ700に装着されるウェアラブル装置である。装着時にユーザ700の眼前に位置する眼鏡レンズ部分に相当する表示部16は、眼鏡レンズ部分の外側を視認することができる透過型、又は、眼鏡レンズ部分の外側を視認することができない非透過型ディスプレイであってもよい。なお、以下の説明においては、透過型ディスプレイの表示部16を持つHMDを「スマートアイグラス」と呼ぶ。
 本実施形態に係る情報処理装置1は、表示部16に仮想オブジェクトを表示することにより、ユーザ700の眼前に仮想オブジェクトを提示することができる。なお、以下の説明においては、仮想オブジェクトとは、ユーザ700によって実空間に存在する現実物体のように知覚することができる仮想物体のことを意味する。更に、本実施形態においては、情報処理装置1の一例であるHMDは、ユーザ700の両眼に対して仮想オブジェクトを表示する形態に限定されるものではなく、ユーザ700の片眼に対してのみ仮想オブジェクトを表示する形態を持っていてもよい。
 例えば、情報処理装置1がスマートアイグラスである場合を例に説明すると、図1に示すようにユーザ700の頭部に装着された情報処理装置1は、ユーザ700の眼前に、左眼用と右眼用の一対の表示部16A及び表示部16Bが配置されるような構成を持つ。これら表示部16A、16Bには、例えば透過型ディスプレイが用いられ、情報処理装置1は、当該透過型ディスプレイの透過率を制御することで、表示をスルー状態、すなわち透明又は半透明の状態にできる。また、表示部16A、16Bがスルー状態となることで、情報処理装置1を眼鏡のように常時装着する場合であっても、ユーザ700は周囲の実空間を知覚することが可能であるため、ユーザ700の通常の生活に支障を与えることはない。更に、表示部16A及び16Bは、スルー状態のまま、テキストや図等の画像を表示することができ、すなわち、拡張現実(AR)として、実空間に仮想オブジェクトを重畳して表示することができる。このような透過型ディスプレイは、例えば、ハーフミラーや透明な導光板を用いて、透明な導光部等からなる虚像光学系をユーザ700の眼前に保持し、当該虚像光学系の内側に仮想オブジェクトを表示させる。
 なお、本実施形態においては、非透過型ディスプレイを用いた場合には、表示部16は、情報処理装置1に設けられた外向きカメラ120(詳細については、後述する)で撮像された実空間の撮像画像を表示しつつ、当該実空間の撮像画像に仮想オブジェクトを重畳表示してもよい。
 更に、本実施形態においては、表示部16は、ユーザ700の網膜に直接的に映像を投影するLED(Light Emitting Diode)光源等として実現されてもよい。すなわち、情報処理装置1は、プロジェクション型のHMDとして実現されてもよい。
 また、表示部16には、多様なコンテンツが仮想オブジェクトとして表示され得る。仮想オブジェクトは、例えば、ユーザ700へ提示される情報を模式的に示すマーカ(標識等)や、マップ、現実物体を模式的に示す形状(人物、電話機、看板等)等であってもよい。更に、仮想オブジェクトは、映画やビデオクリップ等の動画コンテンツ、デジタルスチルカメラ等で撮像された静止画コンテンツ、電子書籍等のデータ等であってもよい。すなわち、仮想オブジェクトとして表示され得るコンテンツとしては、表示対象となり得るあらゆるものを想定することができる。
 情報処理装置1には、ユーザ700の周囲の実空間を撮像する外向きカメラ120が設けられている。詳細には、当該外向きカメラ120は、ユーザ700が情報処理装置1を装着した状態において、ユーザ700が視認する方向の実空間を撮像範囲として撮像するように、情報処理装置1に設置されている。なお、外向きカメラ120が複数設けられている場合、これら外向きカメラ120による視差情報からデプス画像(距離画像)を得ることができることから、情報処理装置1は、周囲の環境の情報、例えば、実空間に存在する実物体の形状及び位置関係等を認識することができる。
 更に、図1には図示していないが、情報処理装置1には、装着時にユーザ700の表情等を撮像する内向きカメラ122(図2 参照)が設けられていてもよい。詳細には、内向きカメラ122は、ユーザ700が情報処理装置1を装着した状態において、ユーザ700の表情やユーザ700の両眼を撮像範囲として撮像するように、情報処理装置1に設置されている。なお、内向きカメラ122が複数設けられている場合、情報処理装置1は、これら内向きカメラ122によって得られた視差情報から、ユーザ700の眼球の位置、瞳孔の位置、視線の向き、及び動き等を精度よく認識することができる。
 また、図1には図示していないが、情報処理装置1には、音声等を取得するマイクロフォン124(以下、「マイク」と示す。)(図2参照)等の各種センサが設けられていてもよい。更に、図1には図示していないが、情報処理装置1にはスピーカ18(図2参照)が設けられていてもよい。例えば、スピーカ18は、ユーザ700の左右の耳に対応する1対のイヤホンスピーカにいって実現されてもよい。また、このように、情報処理装置1に同種のセンサが複数設けられていてもよい。
 図1には図示していないが、情報処理装置1には、ユーザ700により入力操作を行うためのボタンやスイッチ等(操作入力部の一例)が設けられていてもよい。更に、情報処理装置1に対するユーザ700の入力操作としては、ボタン等に対する操作だけでなく、音声による入力、手又は頭部によるジェスチャ入力、視線による入力等の様々な入力方式を選択することができる。なお、これら各種の入力方式による入力操作は、情報処理装置1に設けられた各種センサ等により取得されることができる。
 なお、本実施形態においては、情報処理装置1の形態は図1に示す例に限定されるものではない。例えば、情報処理装置1は、ヘッドバンド型のHMDや、ヘルメットタイプ(例えば、ヘルメットのバイザー部分がディスプレイに相当する)のHMDであってもよい。すなわち、本実施形態においては、情報処理装置1は、ユーザ700に装着されることができるウェアラブル装置であり、装着時にユーザ700の眼前に位置する表示部16を有していれば、特にその形態は限定されるものではない。なお、上述のヘッドバンド型は、ユーザ700の頭部の全周を回るバンドで装着されるタイプのことを意味する。また、当該ヘッドハンド型には、ユーザ700の側頭部だけでなく頭頂部を通るバンドを設ける場合も含まれる。
 なお、先に説明したように、以下の説明においては、情報処理装置1が透過型ディスプレイを持つスマートアイグラスと呼ばれるHMDである場合を例に挙げて説明する。
 <<本開示の技術的背景>>
 以上、本実施形態に係る情報処理装置1の概要について説明した。続いて、このような情報処理装置1における技術的背景を説明する。 
 先に説明したように、本実施形態に係る情報処理装置1は、実空間に仮想オブジェクトを重畳表示する。そして、仮想オブジェクトの解像度を高くすることで、実空間に仮想オブジェクトをよりリアルに表現することができる。
 しかしながら、仮想オブジェクトをリアルに表現しようとすればするほど情報処理装置1での単位時間当たりの描画時間が長くなり、表示フレームレートの低下を引き起こし、例えばアニメーションのコマ落ちなどの品位低下を招く。特に、ユーザ700が静止しながら仮想物体を見ている場合と比べ、ユーザ700が動いている場合、典型的には移動している、キョロキョロしているなどの場合は、仮想オブジェクトが動くように表示されることからユーザ700が上記のコマ落ちなどの品位低下を看過できなくなることもある。
 加えて、情報処理装置1において、仮想オブジェクトをリアルに表現しようとすればするほどプロセッサのリソースを多く要求するので、発熱量が多くなり、例えばプロセッサが停止する原因となり、或いはユーザ700が火傷するリスクが高まる。特に、上述のようなHMD等からなる情報処理装置1はユーザ700の頭部に装着されるのであるから、火傷するリスクは回避しなければならない。
 更に、情報処理装置1において、仮想オブジェクトをリアルに表現しようとすればするほどプロセッサのリソースを多く要求することになるので単位時間当たりの電力消費量が多くなり、例えばバッテリの消耗が激しくなる。特に、上述のようなHMD等からなる情報処理装置1は、ユーザ700の頭部に装着されることから、コンパクトな形態を有している。情報処理装置1をコンパクトな形態にするために、情報処理装置1に搭載されるバッテリの容量には制限があり、それに伴いプロセッサ等の処理能力や処理による発熱許容量等についても制限がある。
 そこで、上述のような技術背景を鑑みて、本発明者らは、ユーザ(ユーザ700)の動き情報を取得し、取得した動き情報に基づいて、仮想オブジェクトの画質を決定し、決定した画質に基づいて、仮想オブジェクトの表示を制御する、本開示の実施形態に係る情報処理装置1を創作するに至った。つまり、ユーザ700が静止しながら仮想オブジェクトを見ている場合と比べ、ユーザ700が動いている場合は仮想オブジェクトの細かい部分までは視認しにくいがコマ落ちなどの品質低下は視認しやすくなってしまう点に着目し、ユーザ700が動いているときに仮想オブジェクトの画質をあえて低下させることで、ユーザ700が動いているときに単位時間当たりの描画時間が長くならないようにして表示フレームレートの低下を防いでコマ落ちなどの品位低下を抑制し、またプロセッサのリソースを多く要求する場面や単位時間当たりの電力消費量が多くなる場面をできる限り減らすことができる。なお、画質が解像度である場合には、一般的に解像度を低下させると描画負荷は低くなるため、本実施形態に係る情報処理装置1においてユーザ700の動き情報に基づいて解像度で仮想オブジェクトの表示を制御することで、それに起因する問題の程度は軽くなる。
 <<実施形態>>
 以上、本開示の技術的背景について説明した。続いて、本開示の実施形態について説明する。本実施形態においては、情報処理装置1は、ユーザであるユーザ700の動き情報(例えば、ユーザ700の位置又は姿勢の変動)を取得し、取得した動き情報に基づいて、仮想オブジェクトの画質(例えば解像度)を決定し、決定した画質に基づいて、仮想オブジェクトの表示を制御する。
 例えば、情報処理装置1を装着したユーザ700が実空間の中央に仮想オブジェクトが重畳表示された状態を見ていて、その状態からユーザ700が首を左に回していくと仮想オブジェクトが実空間の右方向に移動していく。情報処理装置1は仮想オブジェクトの移動速度をユーザ700の位置又は姿勢の変動として取得し、取得した変動に基づいて仮想オブジェクトの解像度を決定し、仮想オブジェクトはその解像度で表示される。例えば、ユーザ700が首を回しているときには仮想オブジェクトは低い解像度で表示される。一方、ユーザ700が静止すると、すなわち変動が0になると、仮想オブジェクトは高い解像度で表示される。また、ユーザ700が首を回す速さ、すなわち変動に応じて解像度で仮想オブジェクトは表示される。例えば、変動速度が速いときには低い解像度で仮想オブジェクトは表示され、変動速度が遅いときには高い解像度で仮想オブジェクトは表示される。このようにすることで、本実施形態によれば、情報処理装置1は、ユーザ700が動いているときに表示フレームレートの低下を防いでコマ落ちなどの品位低下を抑制し、またプロセッサのリソースを多く要求する場面や単位時間当たりの電力消費量が多くなる場面をできる限り減らしている。
 <実施形態に係る情報処理装置の詳細構成>
 まずは、本実施形態に係る情報処理装置1の詳細構成について図2を参照して説明する。図2は、本実施形態に係る情報処理装置1の詳細構成の一例を示すブロック図である。
図2に示すように、情報処理装置1は、制御部10、センサ部12、記憶部14、表示部16、スピーカ18、通信部20、及び操作入力部22を主に有する。以下に、情報処理装置1の各機能部の詳細について説明する。
 (制御部10)
 制御部10は、演算処理装置及び制御装置として機能し、各種プログラムに従って情報処理装置1内の動作全般を制御する。制御部10は、例えばCPU、GPUといったマイクロプロセッサの電子回路によって実現される。また、制御部10は、使用するプログラムや演算パラメータ等を記憶するROM(Read Only Memory)、及び適宜変化するパラメータ等を一時記憶するRAM(Random Access Memory)等を含んでいてもよい。例えば、制御部10は、ユーザ700の位置や姿勢の変動に応じて仮想オブジェクトの表示解像度等を動的に変化させるように制御する。詳細には、本実施形態に係る制御部10は、図2に示すように、情報取得部100、解像度決定部102、描画部104及び表示制御部106として機能することができる。以下に、制御部10の各ブロックの詳細について説明する。
 -情報取得部100-
 情報取得部100は、後述するセンサ部12により検知された検知結果を用いてユーザ700又は当該ユーザ700の周囲の各種状態に関する情報を取得することができる。具体的には、情報取得部100は、例えば、ユーザ700の位置や姿勢、状態を認識するユーザ位置・姿勢認識エンジン、ユーザ700の位置を同定するSLAM(Simultaneous Localization And Mapping)認識エンジン、ユーザ700周辺の実空間におけるデプス情報を認識するデプス認識エンジンを含むことができる。
 更に、情報取得部100は、ユーザ700の視線検知を行う視線認識エンジン、ユーザ700又はユーザ700の周囲の環境音の認識を行う音声認識エンジン、及び、情報処理装置1(ユーザ700)の絶対位置を認識する位置認識エンジン等を含むこともできる。また、情報取得部100は、実空間における現実物体を認識する実オブジェクト認識エンジン等を含んでもよい。なお、これらの認識エンジンはあくまでも一例であり、本実施形態はこれに限定されるものではない。
 詳細には、ユーザ位置・姿勢認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700の位置や頭部等の姿勢(身体に対する顔の向き、又は、傾きを含む)を認識する。例えば、ユーザ位置・姿勢認識エンジンは、ステレオカメラである外向きカメラ120により撮像された撮像画像及び後述する慣性計測装置(IMU:Inertial Measurement Unit)126により取得されたジャイロ情報や加速度情報等を利用して、ユーザ700の位置や姿勢を推定する自己位置・姿勢推定部として機能する。また、ユーザ位置・姿勢認識エンジンは、後述する方位センサにより取得された方位情報等を利用して、ユーザ700の姿勢等を認識してもよい。なお、ユーザ700の位置・姿勢等の認識アルゴリズムは一般的に知られているアルゴリズムを用いることができ、本実施形態においては特に限定されるものではない。
 SLAM認識エンジンは、センサ部12により検知された検知結果を用いて、情報処理装置1(ユーザ700)の自己位置の推定とユーザ700の周囲の実空間の地図作成を同時に行い、当該実空間における情報処理装置1の位置を同定する。例えば、SLAM認識エンジン(特に、Visual SLAM)は、外向きカメラ120により撮像された撮像画像に基づき、撮像された現実物体の3次元形状を逐次的に復元する。そして、SLAM認識エンジンは、復元結果を外向きカメラ120の位置及び姿勢の検知結果と関連付けることで、ユーザ700の周囲の実空間の地図の作成と、当該実空間における外向きカメラ120(ユーザ700)の位置及び姿勢の推定とを行う。なお、外向きカメラ120の位置及び姿勢については、例えば、センサ部12に設けられたステレオカメラである外向きカメラ120により撮像された撮像画像及び慣性計測装置126等の各種センサにより検知された検知結果に基づき、相対的な変化を示す情報として推定することも可能である。また、SLAM認識のアルゴリズムについては一般的に知られているアルゴリズムを用いることができ、本実施形態においては特に限定されるものではない。
 デプス認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700の周囲の実空間におけるデプス情報を認識する。具体的には、デプス認識エンジンは、ToF(Time of Flight)方式を利用して、現実物体からの反射光の戻り時間の測定結果に基づいて、実空間におけるセンサ部12と現実物体との間の距離及び凹凸等の形状情報(デプス情報)を認識することができる。また、デプス認識エンジンは、複数の外向きカメラ120による異なる視点から同一の実空間を撮像対象とした複数の撮像画像上での現実物体の違い(両眼視差)に基づいて、実空間における現実物体の位置及び形状を認識してもよい。なお、デプス情報の認識アルゴリズムについては一般的に知られているアルゴリズムを用いることができ、本実施形態においては特に限定されるものではない。
 なお、情報取得部100は、上述したデプス認識エンジンの認識結果及びSLAM認識エンジンの認識結果の両方に基づいて、空間認識(空間把握)を行い、ユーザ700の周囲の3次元の実空間における情報処理装置1の位置及び姿勢(HMDやHMDを装着したユーザ700の位置及び姿勢)を認識することもできる。
 視線認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700の視線検知を行う。例えば、視線認識エンジンは、内向きカメラ122により取得したユーザ700の眼球の撮像画像を解析して、ユーザ700の視線方向を認識する。なお、本実施形態においては、視線検知のアルゴリズムについては特に限定されるものではないが、例えば、目頭と虹彩の位置関係、又は、角膜反射と瞳孔の位置関係に基づいて、ユーザ700の視線方向を認識することが可能である。
 音声認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700、又は、ユーザ700の周囲の環境音の認識を行う。例えば、音声認識エンジンは、後述するマイク124により取得した収音情報に対してノイズ除去や音源分離等を行い、音声認識、形態素解析、音源認識、又は、騒音レベルの認識等を行うことが可能である。また、音声認識エンジンは、認識された音声情報から、所定の文言を抽出してもよい。
 位置認識エンジンは、センサ部12により検知された検知結果を用いて、情報処理装置1(ユーザ700)の絶対位置を認識する。例えば、位置認識エンジンは、後述する位置測位部132により測位された位置情報、及び、予め取得した地図情報に基づいて、情報処理装置1の場所(例えば駅、学校、家等)を認識することができる。
 実オブジェクト認識エンジンは、外向きカメラ120等により撮像された撮像画像等に基づいて、現実物体を認識する機能を有する。例えば、実オブジェクト認識エンジンは、外向きカメラ120により撮像された撮像画像から計算される現実物体の特徴量を、予め登録された現実物体の特徴量と照合することにより、現実物体の種類等を認識する。なお、上記特徴量は、例えば、SIFT(Scale-Invariant FeatureTransform)法、又はRandom Ferns法などの公知の特徴量算出技術によって算出することができる。
 なお、情報取得部100は、情報処理装置1における処理の状態を示す装置プロファイル(例えば、表示処理速度、センサ部12の検知状態、上述した各種認識エンジンにおける認識フレームレート等)を取得してもよい。更に、情報取得部100は、仮想オブジェクトの表示を行うアプリケーションで定義された、仮想オブジェクトの表示位置、表示面積、表示個数、表示形態(例えば、仮想オブジェクトとして表示されるコンテンツの種別、表示される仮想オブジェクトの移動速度等)を取得してもよい。
 -解像度決定部102-
 解像度決定部102は、情報取得部100により取得されたユーザ700の自己の位置及び姿勢の情報に基づいて、ユーザ700の位置や姿勢の変動(例えば前フレームと現フレーム間の自己位置又は姿勢の差分、単位時間当たりの自己位置又は姿勢の差分、すなわち変動速度)を算出する。
 例えば、解像度決定部102は、第1のタイミングで表示した仮想オブジェクト800の第1の表示位置と第1のタイミングよりも後の第2のタイミングで表示した仮想オブジェクト800の第2の表示位置との差に基づいて、ユーザ700のユーザ700の自己の位置及び姿勢の変動の情報を取得する。別言すると、例えば、解像度決定部102は、表示部16に表示された過去の表示フレームと現在の表示フレームの差分を監視し、監視結果に基づいてユーザ700の位置や姿勢の変動を算出する。より詳細には、例えば、解像度決定部102は、表示部16に表示された1つ前の表示フレーム内の仮想オブジェクト800の位置と現在の表示フレーム内の仮想オブジェクト800の位置との差分、例えば単位時間あたり仮想オブジェクト800が移動したpixelの値を監視し、その単位時間あたりのpixelの値をユーザ700の位置や姿勢の変動速度とする。
 なお、上記の例では、仮想オブジェクト800の位置の差分に基づいて、ユーザ700の位置や姿勢の変動を算出しているが、例えば表示部16内で確認できる他のオブジェクトの位置に基づいて、ユーザ700の位置や姿勢の変動を算出してもよい。典型的には、表示部16に表示された実空間のオブジェクトであって、例えば特徴的なオブジェクトを抽出する処理を行って、特徴的なオブジェクトの位置や姿勢の差分に基づいて、ユーザ700の位置や姿勢の変動を算出してもよい。
 また、上記の表示オブジェクトを使った算出手法は一例であり、本実施形態はこれに限定されるものではない。例えば、解像度決定部102は、ステレオカメラである外向きカメラ120により撮像された撮像画像及び慣性計測装置に126から取得できる計測された加速度の変動に基づいて、ユーザ700の位置や姿勢の変動を直接算出してもよい。また、上記のSLAM(Simultaneous Localization And Mapping)認識エンジンから算出した自己位置の変動に基づいて、ユーザ700の位置や姿勢の変動を直接算出してもよい。
 更に、センサ部12に赤外線センサを搭載し、赤外線センサから算出した自己位置の変動に基づいて、ユーザ700の位置や姿勢の変動を直接算出してもよい。また、センサ部12にレーザーレンジスキャナを搭載し、レーザーレンジスキャナから算出した自己位置の変動に基づいて、ユーザ700の位置や姿勢の変動を直接算出してもよい。なお、本実施形態の情報処理装置1では、以上の各種手段の組み合わせによってユーザ700の位置や姿勢の変動を算出してもよい。
 解像度決定部102は、算出したユーザ700の自己の位置や姿勢の変動に基づいて、表示部16の解像度、つまり表示部16に表示される仮想オブジェクト800の解像度を決定し、描画部104に決定した解像度で描画する命令を出力し、表示制御部106に決定した解像度で表示制御する命令を出力する。
 図3は本実施形態に係る解像度決定部102による解像度決定の動作を説明するための示す概念図である。
 本実施形態に係る解像度決定部102は、ユーザ700の位置や姿勢の変動(前フレームの自己位置と又は姿勢の差分)に基づいて、第1の解像度(1280×720pixel)、第2の解像度(960×540pixel)、第3の解像度(640×360pixel)から仮想オブジェクト800の解像度を決定する。1280×720pixel、960×540pixel及び640×360pixelは、表示部16の座標上、つまりスクリーン座標上の解像度を示している。解像度決定部102は、ユーザ700が静止しているときには高解像である第1の解像度(例えば1280×720pixel)とし、ユーザ700が動いているときには、その速度に応じて中解像度である第2の解像度(例えば960×540pixel)又は低解像度である第3の解像度(例えば640×360pixel)を選択する。なお、2次元表示だけでなく、3次元表示の場合についても同様に解像度を制御してもよい。
 記憶部14は、解像度決定部102で仮想オブジェクトを第1の解像度から第2の解像度に下げる決定をするために用いられる動き情報に対する第1の閾値と、解像度決定部102で仮想オブジェクトを第2の解像度から第1の解像度に上げる決定をするために用いられる、第1の閾値より小さい動き情報に対する第2の閾値とを保持する閾値テーブルを有する。そして、解像度決定部102は、取得された動き情報と第1の閾値及び第2の閾値との比較に基づいて、仮想オブジェクトの解像度を決定する。
 詳細には、記憶部14の閾値テーブルには、第1の閾値α、第2の閾値α、第3の閾値β、第4の閾値βが記憶されている。解像度決定部102は、算出したユーザ700の位置や姿勢の変動と記憶部14に記憶された閾値(α、α、β、β)との比較により、解像度を決定する。
 第1の閾値αは、解像度を下げる際の閾値であって、例えば第1の解像度である1280×720pixelのスクリーン座標上でユーザ700の位置や姿勢の変動が前フレームからx座標又はy座標が単位時間あたり15pixel以上になったかを判断するための閾値である。解像度決定部102は、前フレームの解像度が第1の解像度(1280×720pixel)であって変動が15pixel以上になった場合には第1の解像度(1280×720pixel)から第2の解像度(960×540pixel)に解像度を下げる決定をする。
 第2の閾値αは、解像度を下げる際の閾値であって、例えば第1の解像度である1280×720pixelのスクリーン座標上でユーザ700の位置や姿勢の変動が前フレームからx座標又はy座標が単位時間あたり30pixel以上になったかを判断するための閾値である。解像度決定部102は、前フレームの解像度が第1の解像度(1280×720pixel)又は第2の解像度(960×540pixel)であって変動が30pixel以上になった場合には第1の解像度(1280×720pixel)又は第2の解像度(960×540pixel)から第3の解像度(640×360pixel)に解像度を下げる決定をする。
 第3の閾値βは、解像度を下げる際の閾値であって、例えば第1の解像度である1280×720pixelのスクリーン座標上でユーザ700の位置や姿勢の変動が前フレームからx座標又はy座標が単位時間あたり10pixel未満になったかを判断する閾値である。解像度決定部102は、前フレームの解像度が第2の解像度(960×540pixel)又は第3の解像度(640×360pixel)であって変動が10pixel以下になった場合には第2の解像度(960×540pixel)又は第3の解像度(640×360pixel)から第1の解像度(1280×720pixel)に解像度を上げる決定をする。
 第4の閾値βは、解像度を下げる際の閾値であって、例えば第1の解像度である1280×720pixelのスクリーン座標上でユーザ700の位置や姿勢の変動が前フレームからx座標又はy座標が単位時間あたり20pixel未満になったかを判断する閾値である。解像度決定部102は、前フレームの解像度が第3の解像度(640×360pixel)であって変動が20pixel以下になった場合には第3の解像度(640×360pixel)から第2の解像度(960×540pixel)に解像度を上げる決定をする。
 本実施形態に係る情報処理装置1は、解像度を下げる際の解像度低下閾値(第1及び第2の閾値α、α)と解像度を上げる際の解像度向上閾値(第3及び第4の閾値β、β)のうち、第1の閾値αと第3の閾値β、第2の閾値αと第4の閾値βとをそれぞれ異なる値とすることで、仮想オブジェクト800の解像度がユーザ700の動きに応じて頻繁に切り替わり、ユーザ700に違和感を与えることがないようにすることができる。
 なお、本実施形態に係る情報処理装置1は、解像度を上げる際と下げる際の閾値を同じ値としてもよく、また閾値の数は上記の例に限定するものでもない。また、解像度決定部102は、ユーザ700の位置や姿勢の変動と閾値との比較により解像度を決定しているが、例えばユーザ700の位置や姿勢の変動から解像度を決定する計算式などを用いて解像度を決定してもよく、或いはユーザ700の位置や姿勢の変動と解像度との関係を示すテーブルを予め有し、これらの関係から解像度を決定してもよい。
 また、解像度決定部102は、第1の解像度と第2の解像度と第3の解像度を、変動に応じて縦方向と横方向とを同じ比で上げ下げしているが、例えばユーザ700の縦方向の動きと横方向の動きの割合に応じて、縦方向の解像度と横方向の解像度の上げ下げの割合を変えてもよい。更に、変動に応じて縦方向のみの解像度を上げ下げし、或いは横方向のみの解像度を上げ下げしてもよい。例えば、解像度決定部102は、センサ部12により検出される加速度の情報から、ユーザ700が歩行していることが検出されたときには、縦方向のみの解像度を下げるようにしてもよい。
 -描画部104-
 描画部104は、フレームバッファを有し、解像度決定部102が指定した解像度に基づいてフレームバッファに描画を実行する。
 -表示制御部106-
 表示制御部106は、解像度決定部102が指定した解像度に基づいて、上記のフレームバッファの読み出し領域を表示部16のサイズに拡大又は縮小し、表示部16への表示を制御する。これにより、表示部16には解像度決定部102で決定された解像度に応じた仮想オブジェクト800が表示される。
 図4は表示制御部106のサイズ変更動作を説明するための概念図である。図4左は描画部104がフレームバッファに画像を描画した状態を示しており、例えば左上は第1の解像度(1280×720pixel)、左下は第3の解像度(640×360pixel)で描画した状態を示している。表示制御部106は、これらのフレームバッファの画像を表示部16のデバイスのサイズに合わせて表示するように制御する。つまり、解像度決定部102は、フレームバッファに描画された図4左上の第1の解像度(1280×720pixel)の画像は図4右上に示すようにそのままの大きさで表示部16に表示するように表示を制御し、フレームバッファに描画された図4左下の第3の解像度(640×360pixel)の画像は図4右下に示すように縦方向に2倍、横方向に2倍拡大した大きさで表示部16に表示するように表示を制御する。
 (センサ部12)
 センサ部12は、ユーザ700又はユーザ700の周辺環境(実空間)に関する各種情報を取得する機能を有する。例えば、センサ部12は、図2に示されるように、外向きカメラ120、内向きカメラ122、マイク124、慣性計測装置126、赤外線センサ128、方位センサ130、位置測位部132、及び生体センサ134を主に含む。なお、上述したセンサは一例であり、本実施形態はこれに限定されるものではない。また、上述した各種センサは、センサ部12にそれぞれ複数設けられていてもよい。以下に、センサ部12に含まれる各センサの詳細について説明する。
 -外向きカメラ120及び内向きカメラ122-
 先に説明したように、外向きカメラ120はユーザ700の周囲の実空間を撮像し、内向きカメラ122はユーザ700の表情等を撮像し、撮像情報を上述の制御部10に出力する。詳細には、外向きカメラ120及び内向きカメラ122は、撮像レンズ、絞り、ズームレンズ、及びフォーカスレンズ等により構成されるレンズ系、当該レンズ系に対してフォーカス動作やズーム動作を行わせる駆動系を有する。更に、外向きカメラ120及び内向きカメラ122は、上記レンズ系で得られる撮像光を光電変換して撮像信号を生成する固体撮像素子アレイ等をそれぞれ有する。なお、当該固体撮像素子アレイは、例えばCCD(Charge Coupled Device)センサアレイや、CMOS(Complementary Metal Oxide Semiconductor)センサアレイにより実現されてもよい。
 なお、本実施形態では、制御部10は外向きカメラ120を左右一対のカメラから構成されるステレオカメラとし、ステレオカメラによりユーザと所定の位置との距離を計測し、この計測結果と慣性計測装置126により計測される加速度の変動からユーザの位置や姿勢の変動を推定してもよい。
 -マイク124-
 マイク124は、ユーザ700の音声や周囲の環境音を収音し、収音した音声情報を制御部10に出力する。例えば、マイク124は、ユーザ700が発声した指示を収音し、制御部10に出力する。例えば、制御部10は、マイク124から出力された音声情報を解析することにより、ユーザ700の指示を認識することができる。
 -慣性計測装置126-
 慣性計測装置126は、3軸ジャイロと3軸加速度計によって3次元の角速度と加速度を求める。この慣性計測装置126により検知されたユーザ700の加速度の時系列データを比較することで、加速度の変動を算出できる。制御部10はこの加速度の変動に基づきユーザ700の位置や姿勢の変動を求めることができる。
 -赤外線センサ128-
 赤外線センサ128は、赤外線を検知する。例えば、赤外線センサ128の時系列データを比較することで、ユーザ700の位置や姿勢の変動を推定できる。なお、レーザレンジスキャン(図示を省略)によっても同様に、時系列データを比較することで、ユーザ700の位置や姿勢の変動を推定できる。そして、制御部10はこれらのユーザ700の位置や姿勢の変動に基づきユーザ700の位置や姿勢の変動を求めることができる。
 -方位センサ130及び位置測位部132-
 方位センサ130は、例えば、3軸地磁気センサ(コンパス)により実現され、絶対方向(方位)を検知する。なお、ここで、絶対方位とは、実空間における世界座標系(東西南北)における方位のことをいう。
 位置測位部132は、外部からの取得信号に基づいて情報処理装置1(ユーザ700)の絶対位置を検知する。なお、ここで、絶対位置とは、実空間における世界座標系(経緯)における位置のことをいう。具体的には、位置測位部132は、例えばGPS(Global Positioning System)測位部により実現され、GPS衛星からの電波を受信して、情報処理装置1(ユーザ700)が存在する位置を検知し、検知した位置情報を制御部10に出力する。また、位置測位部132は、GPSの他、例えばWi-Fi(Wireless Fidelity、登録商標)、Bluetooth(登録商標)、携帯電話・PHS(Personal Handy‐phone System)・スマートフォン等との送受信、又は、近距離通信等により位置を検知するデバイスであってもよい。制御部10は、例えば方位センサ130により検知された絶対方向及び位置測位部132により検知された絶対位置に基づきユーザ700の位置や姿勢の変動を求めることができる。
 -生体センサ134-
 生体センサ134は、ユーザ700の各種生体情報を検知する。具体的には、生体センサ134は、例えば、ユーザ700の身体の一部に直接的又は間接的に装着され、ユーザ700の心拍数、血圧、脳波、呼吸、発汗、筋電位、皮膚温度、皮膚電気抵抗等を測定する1つ又は複数のセンサを含む。これら生体センサ134は、検知された生体情報を制御部10に出力する。
 -その他のセンサ-
 更に、本実施形態に係るセンサ部12は、上述したセンサの他に、ユーザ700の周囲の環境温度を検知する温度センサ(図示省略)、ユーザ700の周囲の環境の明るさを検知する照度センサ(図示省略)等を含んでもよい。更に、センサ部12は、ユーザ700の周囲の環境の大気圧を検知する気圧センサ(図示省略)、電波を検知する電波センサ(図示省略)等、様々なセンサを含んでもよい。
 (記憶部14)
 記憶部14は、上述した制御部10が各機能を実行するためのプログラムやパラメータを格納する。例えば、記憶部14は、情報取得部100、解像度決定部102、描画部104及び表示制御部106での処理に用いる認識アルゴリズムや、解像度決定部102で用いる閾値等を閾値テーブルに格納する。
 (表示部16)
 表示部16は、例えば、ホログラム光学技術を用いて表示を行うレンズ部(シースルータイプのディスプレイの一例)、液晶ディスプレイ(LCD)装置、OLED(Organic Light Emitting Diode)装置等により実現される。
 (スピーカ18)
 スピーカ18は、上述した制御部10の制御に従って、音声信号等を再生する。例えば、スピーカ18は、ユーザ700の左右の耳に対応する1対のイヤホンスピーカ(図示省略)により実現されることができる。
 (通信部20)
 通信部20は、有線/無線により他の装置との間でデータの送受信を行うための通信モジュールである。通信部20は、例えば、有線LAN(Local Area Network)、無線LAN、Wi-Fi(登録商標)、赤外線通信、Bluetooth(登録商標)、近距離/非接触通信等の方式で、外部機器と直接又はネットワークアクセスポイント(図示省略)を介して通信することができる。なお、通信部20は、電波を検知する電波センサとして用いられてもよい。
 (操作入力部22)
 操作入力部22は、スイッチ、ボタン、又は、レバー等の物理的な構造を有する操作部材(図示省略)により実現される。例えば、ユーザ700は、操作入力部22に対して操作を行うことで、情報処理装置1に対して所望の入力を行うことができる。また、操作入力部22により入力された操作の内容は、上述した表示部16によって表示されてもよい。
 (小括)
 以上、本実施形態に係る情報処理装置1の構成について具体的に説明したが、本実施形態に係る情報処理装置1の詳細構成は図2に示す例に限定されるものではない。例えば、情報処理装置1の制御部10の少なくとも一部の処理は、通信部20を介して接続するクラウド上のサーバ(図示省略)において行われてもよい。
 <実施形態に係る仮想オブジェクトの表示例>
 以上、本実施形態に係る情報処理装置1の詳細構成について説明した。続いて、このような情報処理装置1による仮想オブジェクトの表示例について、図5から図7を参照して説明する。
 本実施形態に係る情報処理装置1は、例えば、ユーザ700が自己の位置や姿勢を変動したことを制御部10が検知したことにより、その変動の期間については表示部16の表示解像度、つまり仮想オブジェクト800の解像度を下げて表示部16に表示することができる。情報処理装置1は、このような仮想オブジェクト800を実空間に重畳して表示する。図5A及び図5Bはユーザ700が情報処理装置1を介して実空間を見ている状態の一例を概略的に示す平面図(上面図)である。図5Aはユーザ700が第1の方向を見ている状態を示し、図5Bはユーザ700がその後左方向に首を回して第2の方向を見ている状態を示している。図5A及び図5B中、符号600はユーザ700が情報処理装置1を介して実空間を見ている視野の範囲を示している。図6A及び図6Bはユーザ700が情報処理装置1を介して実空間を見た様子(像)の一例を概略的に示す正面図である。図6Aは図5Aに対応し、図6Bは図5Bに対応している。
 図5A及び図6Aに示す一例ではこの視野600のほぼ中央の所定の距離離れた位置に仮想オブジェクト800が実空間に存在するようにユーザ700には見えている。その後ユーザ700が左方向に首を回して第2の方向を見る状態になると、図5B及び図6Bに示すように、視野600の右側の所定の距離離れた位置に仮想オブジェクト800が実空間に存在するようにユーザ700には見えるようになる。
 図7に上記の第1の方向を見ている状態から第2の方向を見る状態までの間の仮想オブジェクト800の移動の様子、つまり図6Aから図6Bに遷移するまでの間の仮想オブジェクト800の視野600内での相対的な移動の様子を示す。図7に示すように、仮想オブジェクト800は800Aから800Bまでの間を矢印802の方向に沿って視野600内を相対的に移動していく。本実施形態に係る情報処理装置1は、例えば、視野600内での仮想オブジェクト800の移動速度を算出してユーザ700の首を回す速度、つまりユーザ700の位置や姿勢の変動を推定している。
 本実施形態に係る情報処理装置1は、ユーザ700が静止した状態では、表示部16に最高の解像度(例えば1280×720pixel)で仮想オブジェクト800を表示し、ユーザ700が動いている間、つまりユーザ700の首を回している最中は、表示部16に静止状態よりも低い解像度(第2の解像度(960×540pixel)又は第3の解像度(640×360pixel))で仮想オブジェクト800を表示する。図6A、図6B及び図7の仮想オブジェクト800に記された斜線の密度が解像度の高低を示している。
 そして、例えば、首を回す速度が小さい場合と、大きい場合とで、解像度の程度を変える。速度が小さい場合には、例えば960×540pixelの解像度で仮想オブジェクト800を表示し、変動速度が大きい場合には、例えば640×360pixelの解像度で仮想オブジェクト800を表示する。
 なお、上記の例では、ユーザ700の首を回す速度、つまり自己の姿勢の変動を推定しているが、視野600内で仮想オブジェクト800が離れたり、近づいたり、左右等に移動する速度、つまり自己の位置の変動も同様に推定できる。また、自己の位置と姿勢の両方が重なった変動も同様に推定できる。本実施形態では、これらの変動を総称して動き情報と呼ぶ。
 本実施形態に係る情報処理装置1は、第1のタイミングで表示した仮想オブジェクト800の第1の位置と第1のタイミングよりも後の第2のタイミング、例えば1表示フレーム後のタイミングで表示した仮想オブジェクト800の第2の位置との差に基づいて、ユーザ700の動き情報を推定している。
 なお、フレーム単位でユーザ700の動き情報を推定してもよいが、例えば時間単位でユーザ700の動き情報を推定してもよく、また別の単位でユーザ700の動き情報を推定してもよい。
 また、このようなフレームの単位や時間などは情報処理装置1のバッテリ量や発熱温度等に応じて動的に変更するように構成してもよい。更に、ユーザ700が例えば動いているときの仮想オブジェクト800を見ながらフレームの単位や時間を任意に設定できるように構成してもよい。
 以上のとおり、本実施形態に係る情報処理装置1は、推定した動き情報に基づいて、表示部16の解像度、つまり仮想オブジェクト800の解像度を決定し、このような仮想オブジェクト800を表示部16に表示、つまり実空間に重畳して表示する。
 <一実施形態に係る情報処理方法>
 以上、本実施形態に係る仮想オブジェクト800の表示例について説明した。続いて、本実施形態に係る情報処理方法について、図8を参照して説明する。図8は本実施形態に係る処理フローを示すフローチャートである。図8に示すように、本実施形態に係る情報処理方法には、ステップS100からステップS109までの複数のステップが含まれている。以下に、本実施形態に係る方法に含まれる各ステップの詳細を説明する。なお、情報処理装置1は、以下に示すフロー(ステップ102からステップ116)を、表示する仮想オブジェクト800の表示フレーム毎に行い、表示フレームが変わるごとに繰り返さすこととなる。
 (ステップS100)
 解像度決定部102は、記憶部14に記憶された閾値テーブルより第1の閾値α、第2の閾値α、第3の閾値β、第4の閾値βを読み込む。
 (ステップS102)
 情報取得部100は、センサ部12のステレオカメラである外向きカメラ120及び後述する慣性計測装置(IMU)126から取得したデータからユーザ700の自己位置・姿勢を算出し、推定する。自己位置・姿勢の算出は、例えば外向きカメラ120の画像データから現実世界を認識し、ステレオカメラである外向きカメラ120による測距結果及び慣性計測装置(IMU)126の計測結果から算出することができる。
 また、情報取得部100は、ユーザ700から仮想オブジェクト800の表示位置までの表示距離及び方向(ユーザ700の姿勢)を算出する。仮想オブジェクト800の表示距離及び方向は、例えば予め仮想オブジェクト800の表示を行うアプリケーションで定義された表示位置と、上記の外向きカメラ120及び慣性計測装置(IMU)126から取得した情報処理装置1(ユーザ700)の自己位置・姿勢情報とに基づいて算出することができる。
 なお、仮想オブジェクト800は、上記のように算出されたユーザ700の自己位置・姿勢とユーザ700から仮想オブジェクト800の表示位置までの表示距離及び方向とに基づいて表示部16に表示される。
 (ステップ104)
 解像度決定部102は、ステップ102で算出したユーザ700の自己の位置・姿勢の前フレームとの差分、すなわちユーザ700の自己の位置・姿勢の変動がステップ100で読み込んだ解像度低下閾値(α、α)を超えているかを判断する。自己の位置・姿勢の前フレームとの差分が解像度低下閾値(α、α)を超えている場合には、ステップ108に進み、超えていない場合には、ステップ106に進む。
 (ステップ106)
 解像度決定部102は、ステップ102で算出したユーザ700の自己の位置・姿勢の前フレームとの差分、すなわちユーザ700の自己の位置・姿勢の変動がステップ100で読み込んだ解像度向上閾値(β、β)未満であるかを判断する。自己の位置・姿勢の前フレームとの差分が解像度向上閾値(β、β)未満である場合には、ステップ110に進み、そのでない場合には、ステップ116に進む。
 (ステップ108)
 解像度決定部102は、前フレームの解像度が第1の解像度(1280×720pixelであって、自己の位置・姿勢の前フレームとの差分が解像度低下閾値αを超えている場合には、第1の解像度(1280×720pixel)から第2の解像度(960×540pixel)に解像度を下げる決定をし、前フレームの解像度が第1の解像度(1280×720pixel又は第2の解像度(960×540pixel)であって、自己の位置・姿勢の前フレームとの差分が解像度低下閾値αを超えている場合には第1の解像度(1280×720pixel又は第2の解像度(960×540pixel)から第3の解像度(640×360pixel)に解像度を下げる決定をし、ステップ112に進む。
 (ステップ110)
 解像度決定部102は、前フレームの解像度が第2の解像度(960×540pixel)又は第3の解像度(640×360pixel)であって、自己の位置・姿勢の前フレームとの差分が解像度向上閾値β未満となった場合には、第2の解像度(960×540pixel)又は第3の解像度(640×360pixel)から第1の解像度(1280×720pixel)に解像度を上げる決定をし、前フレームの解像度が第3の解像度(640×360pixel)であって自己の位置・姿勢の前フレームとの差分が解像度向上閾値βを超えている場合には第3の解像度(640×360pixel)から第2の解像度(960×540pixel)に解像度を上げる決定をし、ステップ112に進む。
 (ステップ112、ステップ114、ステップ116)
 解像度決定部102は、描画部104及び表示制御部106にステップ108又はステップ110で決定した解像度を通知する。描画部104は、解像度決定部102が指定した解像度に基づいてフレームバッファに描画を実行する。表示制御部106は、解像度決定部102が指定した解像度に基づいてフレームバッファの読み出し領域を表示部16のサイズに拡大又は縮小し、表示部16への表示を制御する。
 これにより、表示部16には解像度決定部102で決定された解像度に応じた仮想オブジェクト800が表示される。
 なお、上述したが、情報処理装置1は、以上に示すフロー(ステップ102からステップ116)を、表示する仮想オブジェクト800の表示フレーム毎に行い、表示フレームが変わるごとに繰り返さすこととなる。
 <<まとめ>>
 この種の情報処理装置では、リアルな表現をしようとするほど描画負荷が増す。従って、リアルな表現ほど単位時間当たりの描画時間が長くなり、フレームレートの低下を引き起こし、例えばアニメーションのコマ落ちなどの品位低下を招く。更に、リアルな表現ほどプロセッサのリソースを多く要求するので発熱量が多くなり、例えばプロセッサが停止し、或いはユーザが火傷するリスクが高まる。また、プロセッサのリソースを多く要求するので、単位時間当たりの電力消費量が多くなり、バッテリの消耗が激しくなる。
 本実施形態に係る情報処理装置1は、ユーザ700が静止しながら仮想オブジェクト800を見ている場合と比べ、ユーザ700が動いている場合、例えば走っている場合や首を回している場合などは仮想オブジェクト800の細かい部分までは視認しなくなるという点に着目したもので、ユーザ700が動いているときには仮想オブジェクト800の解像度を低下させ、ユーザ700の動いている速度に応じて仮想オブジェクト800の解像度の低下の幅を大きくし、描画負荷を低減している。これにより、ユーザ700にリアルな表現を維持しつつ、描画負荷を低くし、描画負荷に起因する問題の程度は軽くしている。これにより、例えば単位時間当たりの描画時間を短くし、フレームレートの低下を防止し、プロセッサの発熱量が少なくしてプロセッサの停止や火傷のリスクを低くし、単位時間当たりの電力消費量を少なくしてバッテリの消耗を抑えることができる。
 実際に、ユーザが静止した状態である仮想オブジェクトを見た場合と、歩きながら同じ仮想オブジェクトを見た場合のそれぞれについて仮想オブジェクトの解像度を落としていったところ、静止時にじっくり見ると描画品質の違いがわかったが、歩いているときには描画品質の違いを気づきにくいことが確認できた。このことは、つまり解像度が落ちてもリアルな表現を維持していることに他ならない。
 また、実際に、情報処理装置1において、フレームバッファの解像度を落としながらフラグメントシェーダ(Fragment Shader)の処理時間を落としていったところ、解像度が下がるにつれてフラグメントシェーダの処理時間も短くなったが、所定の処理時間、例えば10msあたりから下げ止まった。これは、解像度によらず、時間がかかる処理、例えばState ChangやglClear等の処理があるためと考えられる。従って、本実施形態に係る情報処理装置1は、解像度の下限に閾値を設けてもよく、例えばその閾値を、解像度を下げてもフラグメントシェーダ(Fragment Shader)の処理時間等の所定の画像処理に要する処理時間が下がらない解像度の値としてもよい。
 なお、本開示においては、変化させる仮想オブジェクトの画質として、仮想オブジェクトの解像度だけでなく、仮想オブジェクトのテクスチャ(仮想オブジェクトの質感)、表示濃度、透明度、明度、色数等を挙げることができる。
 <<その他の実施形態>>
 本技術は、以上説明した実施形態に限定されず、他の種々の実施形態を実現することができる。
 例えば、図1及び2に示した情報処理装置1において、記憶部14が同一の画像であって画質の異なる複数の仮想オブジェクトを予め保持する仮想オブジェクト保持テーブルを有し、解像度決定部102は推定された動き情報に基づいて、仮想オブジェクト保持テーブルに保持された複数の仮想オブジェクトから1つの仮想オブジェクトを選択し、表示制御部106は、解像度決定部102により選択された仮想オブジェクトの表示を制御してもよい。
 ここで、仮想オブジェクト保持テーブルは、例えば本来の仮想オブジェクト(例えば最高解像度の仮想オブジェクト)をミップマッピング(Mipmapping)したミップマップ(MIP map)を予め保持する。また、仮想オブジェクト保持テーブルは、例えば本来の仮想オブジェクト(例えば最高解像度の仮想オブジェクト)から生成された複数種類の圧縮テクスチャ画像を予め保持してもよい。また、仮想オブジェクト保持テーブルは、例えば上記のミップマップと複数種類の圧縮テクスチャ画像等の予め保持し、仮想オブジェクトの例えば所定の属性に応じてこれらから選択的に用いられるようにしてもよい。
 この実施形態に係る情報処理装置1では、解像度決定部102が指定した解像度に基づいてフレームバッファに描画を実行する描画部104は不要となる。表示制御部106が解像度決定部102により選択された仮想オブジェクトの表示を制御すればよい。従って、この実施形態によれば、描画負荷をより低減できることになる。
 上述の説明においては、透過型ディスプレイを持つスマートアイグラスに適用した場合を例として挙げたが、本開示の実施形態においてはこれに限定されるものではなく、例えば、非透過型ディスプレイを持つHMDやVR(Virtual Reality)、スマーフォフォン等の情報処理装置に適用することもできる。スマートフォンの場合には、例えばナビゲーションのアプリケーションに本開示に係る技術を適用できる。例えば、スマートフォンにおいて、スマートフォンの動き情報を検出し、この動き情報に基づいてナビゲーションの地図上の仮想オブジェクトの解像度を制御すればよい。
 また、上記実施形態では、HMDがスタンドアローンで動作する例を示したが、例えばHMDとスマートフォンが連携して本開示に係る技術を実現してもよい。例えば、例えばHMDには透過表示部があり、HMDに無線又は有線で接続されたスマートフォンの制御部がユーザの位置や姿勢の変動の検出、更に解像度の決定等を行うようにしてもよい。
 <<ハードウェア構成の一例>>
 図9は、本開示の一実施形態に係る情報処理装置900のハードウェア構成の一例を示したブロック図である。図9では、情報処理装置900は、上述の情報処理装置1のハードウェア構成の一例を示している。
 情報処理装置900は、例えば、CPU950と、ROM952と、RAM954と、記録媒体956と、入出力インタフェース958と、操作入力デバイス960とを有する。更に、情報処理装置900は、表示デバイス962と、音声出力デバイス964と、通信インタフェース968と、センサ980とを有する。また、情報処理装置900は、例えば、データの伝送路としてのバス970で各構成要素間を接続する。
 (CPU950)
 CPU950は、例えば、CPU、GPU等の演算回路で構成される、1又は2以上のプロセッサや、各種処理回路等で構成され、情報処理装置900全体を制御する制御部(例えば、上述の制御部10)として機能する。具体的には、CPU950は、情報処理装置900において、例えば、上述の情報取得部100、情報取得部100、解像度決定部102、描画部104及び表示制御部106等の機能を果たす。
 (ROM952及びRAM954)
 ROM952は、CPU950が使用するプログラムや演算パラメータ等の制御用データ等を記憶する。RAM954は、例えば、CPU950により実行されるプログラム等を一時的に記憶する
(記録媒体956)
 記録媒体956は、上述の記憶部14として機能し、例えば、本実施形態に係る情報処理方法に係るデータや、各種アプリケーション等様々なデータを記憶する。ここで、記録媒体956としては、例えば、ハードディスク等の磁気記録媒体や、フラッシュメモリ等の不揮発性メモリが挙げられる。また、記録媒体956は、情報処理装置900から着脱可能であってもよい。
 (入出力インタフェース958、操作入力デバイス960、表示デバイス962、音声出力デバイス964)
 入出力インタフェース958は、例えば、操作入力デバイス960や、表示デバイス962等を接続する。入出力インタフェース958としては、例えば、USB(Universal Serial Bus)端子や、DVI(Digital Visual Interface)端子、HDMI(High-Definition Multimedia Interface)(登録商標)端子、各種処理回路等が挙げられる。
 操作入力デバイス960は、情報処理装置900の内部で入出力インタフェース958と接続される。
 表示デバイス962は、例えば上述の表示部16として機能し、情報処理装置900に備えられ、情報処理装置900の内部で入出力インタフェース958と接続される。表示デバイス962としては、例えば、液晶ディスプレイや有機ELディスプレイ(Organic Electro‐Luminescence Display)等が挙げられる。
 音声出力デバイス964は、例えば上述のスピーカ18として機能し、例えば、情報処理装置900に備えられ、情報処理装置900の内部で入出力インタフェース958と接続される。
 なお、入出力インタフェース958が、情報処理装置900の外部の操作入力デバイス(例えば、キーボードやマウス等)や外部の表示デバイス等の、外部デバイスと接続する
ことも可能であることは、言うまでもない。
 また、入出力インタフェース958は、ドライブ(図示省略)と接続されていてもよい。当該ドライブは、磁気ディスク、光ディスク、又は半導体メモリなどのリムーバブル記録媒体のためのリーダライタであり、情報処理装置900に内蔵、あるいは外付けされる。当該ドライブは、装着されているリムーバブル記録媒体に記録されている情報を読み出して、RAM954に出力する。また、当該ドライブは、装着されているリムーバブル記録媒体に記録を書き込むこともできる。
 (通信インタフェース968)
 通信インタフェース968は、例えば通信ネットワーク(図示省略)を介して(あるいは、直接的に)、他の外部装置と、無線または有線で通信を行うための通信部20として機能する。ここで、通信インタフェース968としては、例えば、通信アンテナ及びRF(Radio Frequency)回路(無線通信)や、IEEE802.15.1ポート及び送受信回路(無線通信)、IEEE802.11ポート及び送受信回路(無線通信)、あるいはLAN(Local Area Network)端子及び送受信回路(有線通信)等が挙げられる。
 (センサ980)
 センサ980は、上述のセンサ部12として機能する。更に、センサ980は、照度センサ等の各種のセンサを更に含んでもよい。
 以上、情報処理装置900のハードウェア構成の一例を示した。なお、情報処理装置900のハードウェア構成は、図9に示す構成に限られない。詳細には、上記の各構成要素は、汎用的な部材を用いて構成してもよいし、各構成要素の機能に特化したハードウェアにより構成してもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更されうる。
 例えば、情報処理装置900は、接続されている外部の通信デバイスを介して外部装置等と通信を行う場合や、スタンドアローンで処理を行う構成である場合には、通信インタフェース968を備えていなくてもよい。また、通信インタフェース968は、複数の通信方式によって、1又は2以上の外部装置と通信を行うことが可能な構成を有していてもよい。また、情報処理装置900は、例えば、記録媒体956や、操作入力デバイス960等を備えない構成をとることも可能である。
 また、本実施形態に係る情報処理装置900は、例えばクラウドコンピューティング等のように、ネットワークへの接続(または各装置間の通信)を前提とした、複数の装置からなるシステムに適用されてもよい。つまり、上述した本実施形態に係る情報処理装置900は、例えば、複数の装置により本実施形態に係る情報処理方法に係る処理を行う情報処理システムとして実現することも可能である。
 <<補足>>
 また、以上に説明した実施形態は、例えば、コンピュータを本実施形態に係る情報処理装置として機能させるためのプログラム、及びプログラムが記録された一時的でない有形の媒体を含むことができる。また、上記プログラムをインターネット等の通信回線(無線通信も含む)を介して頒布してもよい。
 更に、上述した各実施形態の処理における各ステップは、必ずしも記載された順序に沿って処理されなくてもよい。例えば、各ステップは、適宜順序が変更されて処理されてもよい。また、各ステップは、時系列的に処理される代わりに、一部並列的に又は個別的に処理されてもよい。更に、各ステップの処理方法についても、必ずしも記載された方法に沿って処理されなくてもよく、例えば、他の機能ブロックによって他の方法で処理されていてもよい。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、又は上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
 なお、以下のような構成も本開示の技術的範囲に属する
(1)ユーザの動き情報を取得する取得部と、
 前記取得部により取得された動き情報に基づいて、仮想オブジェクトの画質を決定する決定部と、
 前記決定部により決定された画質に基づいて、前記仮想オブジェクトの表示を制御する表示制御部と
 を具備する情報処理装置
(2)(1)に記載の情報処理装置であって、
 前記取得部は、前前記仮想オブジェクトの表示位置の変動を、前記ユーザの動き情報として取得する
 情報処理装置
(3)(2)に記載の情報処理装置であって、
 前記取得部は、第1のタイミングで表示した前記仮想オブジェクトの第1の表示位置と前記第1のタイミングよりも後の第2のタイミングで表示した前記仮想オブジェクトの第2の表示位置との差に基づいて、前記ユーザの動き情報を取得する
 情報処理装置
(4)(1)に記載の情報処理装置であって、
 前記取得部は、計測されたユーザの位置情報又は姿勢情報に基づいて、前記ユーザの動き情報を取得する
 情報処理装置
(5)(1)~(4)のいずれかに記載の情報処理装置であって、
 前記決定部は、前記動き情報に基づいて、前記仮想オブジェクトの画質として前記仮想オブジェクトの解像度を決定する
 情報処理装置
(6)(1)~(5)のいずれかに記載の情報処理装置であって、
 前記決定部は、前記動き情報に基づいて、前記仮想オブジェクトの画質として前記仮想オブジェクトのテクスチャ、表示濃度、透明度、明度、又は色数を決定する
(7)(5)に記載の情報処理装置であって、
 前記決定部により決定された仮想オブジェクトの解像度に基づいて、フレームバッファに描画を実行する描画部と、を更に有し、
 前記表示制御部は、前記決定部により決定された解像度に基づいて、前記フレームバッファに描画された前記仮想オブジェクトの表示の大きさを制御する
 情報処理装置
(8)(5)又は(7)に記載の情報処理装置であって、
 前記決定部は、前記取得部により取得された動き情報に基づいて、前記仮想オブジェクトの縦方向の解像度又は横方向の解像度を決定する
 情報処理装置
(9)(1)~(4)のいずれかに記載の情報処理装置であって、
 同一の画像で画質の異なる複数の前記仮想オブジェクトを予め保持する仮想オブジェクト保持テーブルを更に具備し、
 前記決定部は、前記取得部により取得された動き情報に基づいて、前記仮想オブジェクト保持テーブルに保持された複数の前記仮想オブジェクトから1つの仮想オブジェクトを選択し、
 前記表示制御部は、前記決定部により選択された仮想オブジェクトの表示を制御する
 情報処理装置
(10)(9)に記載の情報処理装置であって、
 前記仮想オブジェクト保持テーブルは、前記仮想オブジェクトをミップマッピング(Mipmapping)したミップマップ(MIP map)を予め保持する
 情報処理装置
(11)(8)又は(9)に記載の情報処理装置であって、
 前記仮想オブジェクトテーブルは、前記仮想オブジェクトから生成した複数種類の圧縮テクスチャ画像を予め保持する
 情報処理装置
(12)(1)~(11)のうちいずれかに記載の情報処理装置であって、
 前記決定部で前記仮想オブジェクトを第1の画質から第2の画質に下げる決定をするために用いられる前記動き情報に対する第1の閾値と、前記決定部で前記仮想オブジェクトを前記第2の画質から前記第1の画質に上げる決定をするために用いられる、前記第1の閾値より小さい前記動き情報に対する第2の閾値とを保持する閾値テーブルを更に有し、
 前記決定部は、前記取得部により取得された動き情報と前記第1の閾値及び前記第2の閾値との比較に基づいて、前記仮想オブジェクトの画質を決定する
 情報処理装置
(13)(1)~(12)のうちいずれかに記載の情報処理装置であって、
 前記表示制御部により表示が制御された前記仮想オブジェクトを表示する透過型表示部
 を更に具備する情報処理装置
(14)(1)~(12)のうちいずれかに記載の情報処理装置であって、
 前記表示制御部により表示が制御された前記仮想オブジェクトを他の画像と重畳して表示する非透過型表示部
 を更に具備する情報処理装置
(15)(1)のうちいずれかに記載の情報処理装置であって、
 前記取得部は、HMD(Head Mounted Display)に備えられたセンサの出力データに基づき、前記HMDの動きの情報を前記ユーザの動き情報として取得し、
 前記表示制御部は前記HMDに備えられた表示部上の前記仮想オブジェクトの表示を制御する
 情報処理装置(16)ユーザの動き情報を取得し、
 前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定し、
 前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御する
 情報処理方法
(17)ユーザの動き情報を取得するステップと、
 前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定するステップと、
 前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御するステップと
 をコンピュータに実行させるプログラム。
 なお、以上説明した各形態の特徴部分のうち、少なくとも2つの特徴部分を組み合わせることも可能である。
1    :情報処理装置
10   :制御部
12   :外向きカメラ
12   :センサ部
14   :記憶部
16   :表示部
100  :情報取得部
100  :ステップ
102  :解像度決定部
104  :描画部
106  :表示制御部
120  :外向きカメラ
126  :慣性計測装置
128  :赤外線センサ
700  :ユーザ
800  :仮想オブジェクト
900  :情報処理装置
S100 :ステップ
S102 :ステップ
S109 :ステップ
α1   :第1の閾値(解像度低下閾値)
α2   :第2の閾値(解像度低下閾値)
β1   :第3の閾値(解像度向上閾値)
β2   :第4の閾値(解像度向上閾値)

Claims (17)

  1.  ユーザの動き情報を取得する取得部と、
     前記取得部により取得された動き情報に基づいて、仮想オブジェクトの画質を決定する決定部と、
     前記決定部により決定された画質に基づいて、前記仮想オブジェクトの表示を制御する表示制御部と
     を具備する情報処理装置。
  2.  請求項1に記載の情報処理装置であって、
     前記取得部は、前記仮想オブジェクトの表示位置の変動を、前記ユーザの動き情報として取得する
     情報処理装置。
  3.  請求項2に記載の情報処理装置であって、
     前記取得部は、第1のタイミングで表示した前記仮想オブジェクトの第1の表示位置と前記第1のタイミングよりも後の第2のタイミングで表示した前記仮想オブジェクトの第2の表示位置との差に基づいて、前記ユーザの動き情報を取得する
     情報処理装置。
  4.  請求項1に記載の情報処理装置であって、
     前記取得部は、計測されたユーザの位置情報又は姿勢情報に基づいて、前記ユーザの動き情報を取得する
     情報処理装置。
  5.  請求項1に記載の情報処理装置であって、
     前記決定部は、前記動き情報に基づいて、前記仮想オブジェクトの画質として前記仮想オブジェクトの解像度を決定する
  6.  請求項1に記載の情報処理装置であって、
     前記決定部は、前記動き情報に基づいて、前記仮想オブジェクトの画質として前記仮想オブジェクトのテクスチャ、表示濃度、透明度、明度、又は色数を決定する
     情報処理装置。
  7.  請求項5に記載の情報処理装置であって、
     前記決定部により決定された仮想オブジェクトの解像度に基づいて、フレームバッファに描画を実行する描画部と、を更に有し、
     前記表示制御部は、前記決定部により決定された解像度に基づいて、前記フレームバッファに描画された前記仮想オブジェクトの表示の大きさを制御する
     情報処理装置。
  8.  請求項5に記載の情報処理装置であって、
     前記決定部は、前記取得部により取得された動き情報に基づいて、前記仮想オブジェクトの縦方向の解像度又は横方向の解像度を決定する
     情報処理装置。
  9.  請求項1に記載の情報処理装置であって、
     同一の画像で画質の異なる複数の前記仮想オブジェクトを予め保持する仮想オブジェクト保持テーブルを更に具備し、
     前記決定部は、前記取得部により取得された動き情報に基づいて、前記仮想オブジェクト保持テーブルに保持された複数の前記仮想オブジェクトから1つの仮想オブジェクトを選択し、
     前記表示制御部は、前記決定部により選択された仮想オブジェクトの表示を制御する
     情報処理装置。
  10.  請求項9に記載の情報処理装置であって、
     前記仮想オブジェクト保持テーブルは、前記仮想オブジェクトをミップマッピング(Mipmapping)したミップマップ(MIP map)を予め保持する
     情報処理装置。
  11.  請求項9に記載の情報処理装置であって、
     前記仮想オブジェクトテーブルは、前記仮想オブジェクトから生成した複数種類の圧縮テクスチャ画像を予め保持する
     情報処理装置。
  12.  請求項1に記載の情報処理装置であって、
     前記決定部で前記仮想オブジェクトを第1の画質から第2の画質に下げる決定をするために用いられる前記動き情報に対する第1の閾値と、前記決定部で前記仮想オブジェクトを前記第2の画質から前記第1の画質に上げる決定をするために用いられる、前記第1の閾値より小さい前記動き情報に対する第2の閾値とを保持する閾値テーブルを更に有し、
     前記決定部は、前記取得部により取得された動き情報と前記第1の閾値及び前記第2の閾値との比較に基づいて、前記仮想オブジェクトの画質を決定する
     情報処理装置。
  13.  請求項1に記載の情報処理装置であって、
     前記表示制御部により表示が制御された前記仮想オブジェクトを表示する透過型表示部
     を更に具備する情報処理装置。
  14.  請求項1に記載の情報処理装置であって、
     前記表示制御部により表示が制御された前記仮想オブジェクトを他の画像と重畳して表示する非透過型表示部
     を更に具備する情報処理装置。
  15.  請求項1に記載の情報処理装置であって、
     前記取得部は、HMD(Head Mounted Display)に備えられたセンサの出力データに基づき、前記HMDの動きの情報を前記ユーザの動き情報として取得し、
     前記表示制御部は前記HMDに備えられた表示部上の前記仮想オブジェクトの表示を制御する
     情報処理装置。
  16.  ユーザの動き情報を取得し、
     前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定し、
     前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御する
     情報処理方法。
  17.  ユーザの動き情報を取得するステップと、
     前記取得した動き情報に基づいて、仮想オブジェクトの画質を決定するステップと、
     前記決定した画質に基づいて、前記仮想オブジェクトの表示を制御するステップと
     をコンピュータに実行させるプログラム。
PCT/JP2019/029783 2018-08-29 2019-07-30 情報処理装置、情報処理方法及びプログラム WO2020044916A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
US17/260,088 US11726320B2 (en) 2018-08-29 2019-07-30 Information processing apparatus, information processing method, and program
JP2020540171A JP7400721B2 (ja) 2018-08-29 2019-07-30 情報処理装置、情報処理方法及びプログラム
CN201980054725.XA CN112585673A (zh) 2018-08-29 2019-07-30 信息处理设备、信息处理方法及程序
EP19853647.6A EP3846161A4 (en) 2018-08-29 2019-07-30 INFORMATION PROCESSING DEVICE, INFORMATION PROCESSING METHOD AND PROGRAM

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018160161 2018-08-29
JP2018-160161 2018-08-29

Publications (1)

Publication Number Publication Date
WO2020044916A1 true WO2020044916A1 (ja) 2020-03-05

Family

ID=69642694

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/029783 WO2020044916A1 (ja) 2018-08-29 2019-07-30 情報処理装置、情報処理方法及びプログラム

Country Status (5)

Country Link
US (1) US11726320B2 (ja)
EP (1) EP3846161A4 (ja)
JP (1) JP7400721B2 (ja)
CN (1) CN112585673A (ja)
WO (1) WO2020044916A1 (ja)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6716004B1 (ja) * 2019-09-30 2020-07-01 株式会社バーチャルキャスト 記録装置、再生装置、システム、記録方法、再生方法、記録プログラム、再生プログラム
CN113706720A (zh) * 2021-09-06 2021-11-26 联想(北京)有限公司 图像显示方法和装置

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000348201A (ja) * 1999-03-26 2000-12-15 Mr System Kenkyusho:Kk 画像処理方法、その装置および記憶媒体
JP2005275797A (ja) * 2004-03-24 2005-10-06 Namco Ltd プログラム、情報記憶媒体、及び画像生成システム
JP2011091789A (ja) * 2009-09-24 2011-05-06 Brother Industries Ltd ヘッドマウントディスプレイ
WO2015145541A1 (ja) * 2014-03-24 2015-10-01 日立マクセル株式会社 映像表示装置
JP2016157458A (ja) 2016-03-31 2016-09-01 ソニー株式会社 情報処理装置
JP2016527536A (ja) * 2013-06-07 2016-09-08 株式会社ソニー・インタラクティブエンタテインメント ヘッドマウントディスプレイでユーザーの動きに応答する画像レンダリング
JP2016208380A (ja) 2015-04-27 2016-12-08 ソニーセミコンダクタソリューションズ株式会社 画像処理装置、撮像装置、画像処理方法およびプログラム
US20170178408A1 (en) * 2015-12-22 2017-06-22 Google Inc. Adjusting video rendering rate of virtual reality content and processing of a stereoscopic image
WO2017135129A1 (ja) * 2016-02-02 2017-08-10 株式会社コロプラ 仮想空間画像提供方法、及びそのプログラム

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10514541B2 (en) * 2012-12-27 2019-12-24 Microsoft Technology Licensing, Llc Display update time reduction for a near-eye display
CN108427504B (zh) * 2013-03-15 2021-06-11 奇跃公司 显示系统和方法
US9256987B2 (en) * 2013-06-24 2016-02-09 Microsoft Technology Licensing, Llc Tracking head movement when wearing mobile device
KR102161510B1 (ko) * 2013-09-02 2020-10-05 엘지전자 주식회사 포터블 디바이스 및 그 제어 방법
JP2015114905A (ja) * 2013-12-12 2015-06-22 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
WO2017047178A1 (ja) * 2015-09-16 2017-03-23 ソニー株式会社 情報処理装置、情報処理方法及びプログラム
US10319147B2 (en) * 2015-10-17 2019-06-11 Arivis Ag Direct volume rendering in virtual and/or augmented reality
US10962780B2 (en) * 2015-10-26 2021-03-30 Microsoft Technology Licensing, Llc Remote rendering for virtual images
JP6310898B2 (ja) * 2015-11-17 2018-04-11 株式会社ソニー・インタラクティブエンタテインメント 画像処理装置、情報処理装置、および画像処理方法
US10078218B2 (en) * 2016-01-01 2018-09-18 Oculus Vr, Llc Non-overlapped stereo imaging for virtual reality headset tracking
GB2553744B (en) * 2016-04-29 2018-09-05 Advanced Risc Mach Ltd Graphics processing systems
DE202017104928U1 (de) * 2016-08-23 2017-11-24 Google Inc. Manipulation virtueller Objekte anhand von Controllern mit sechs Freiheitsgraden in erweiterten bzw. virtuellen Realitätsumgebungen
IL274038B1 (en) * 2017-10-27 2024-03-01 Magic Leap Inc A virtual network for augmented reality systems
US20190130631A1 (en) * 2017-11-01 2019-05-02 Tsunami VR, Inc. Systems and methods for determining how to render a virtual object based on one or more conditions
JP7059662B2 (ja) * 2018-02-02 2022-04-26 トヨタ自動車株式会社 遠隔操作システム、及びその通信方法
JP7381482B2 (ja) * 2018-03-16 2023-11-15 マジック リープ, インコーポレイテッド ディスプレイシステムのための深度ベースの中心窩化レンダリング

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000348201A (ja) * 1999-03-26 2000-12-15 Mr System Kenkyusho:Kk 画像処理方法、その装置および記憶媒体
JP2005275797A (ja) * 2004-03-24 2005-10-06 Namco Ltd プログラム、情報記憶媒体、及び画像生成システム
JP2011091789A (ja) * 2009-09-24 2011-05-06 Brother Industries Ltd ヘッドマウントディスプレイ
JP2016527536A (ja) * 2013-06-07 2016-09-08 株式会社ソニー・インタラクティブエンタテインメント ヘッドマウントディスプレイでユーザーの動きに応答する画像レンダリング
WO2015145541A1 (ja) * 2014-03-24 2015-10-01 日立マクセル株式会社 映像表示装置
JP2016208380A (ja) 2015-04-27 2016-12-08 ソニーセミコンダクタソリューションズ株式会社 画像処理装置、撮像装置、画像処理方法およびプログラム
US20170178408A1 (en) * 2015-12-22 2017-06-22 Google Inc. Adjusting video rendering rate of virtual reality content and processing of a stereoscopic image
WO2017135129A1 (ja) * 2016-02-02 2017-08-10 株式会社コロプラ 仮想空間画像提供方法、及びそのプログラム
JP2016157458A (ja) 2016-03-31 2016-09-01 ソニー株式会社 情報処理装置

Also Published As

Publication number Publication date
JP7400721B2 (ja) 2023-12-19
US20210271075A1 (en) 2021-09-02
EP3846161A1 (en) 2021-07-07
CN112585673A (zh) 2021-03-30
US11726320B2 (en) 2023-08-15
JPWO2020044916A1 (ja) 2021-09-24
EP3846161A4 (en) 2021-10-20

Similar Documents

Publication Publication Date Title
CN110908503B (zh) 跟踪设备的位置的方法
JP6844542B2 (ja) 情報処理装置、情報処理方法及びプログラム
EP3195595B1 (en) Technologies for adjusting a perspective of a captured image for display
US20190331914A1 (en) Experience Sharing with Region-Of-Interest Selection
JP6747504B2 (ja) 情報処理装置、情報処理方法、及びプログラム
EP2813922B1 (en) Visibility improvement method based on eye tracking, machine-readable storage medium and electronic device
US9245389B2 (en) Information processing apparatus and recording medium
US10412379B2 (en) Image display apparatus having live view mode and virtual reality mode and operating method thereof
US11244496B2 (en) Information processing device and information processing method
WO2016157677A1 (ja) 情報処理装置、情報処理方法及びプログラム
US11487354B2 (en) Information processing apparatus, information processing method, and program
US11320667B2 (en) Automated video capture and composition system
US20200202161A1 (en) Information processing apparatus, information processing method, and program
WO2020044916A1 (ja) 情報処理装置、情報処理方法及びプログラム
US11749141B2 (en) Information processing apparatus, information processing method, and recording medium
KR20180045644A (ko) 머리 착용형 디스플레이 장치 및 그의 제어 방법
CN107958478B (zh) 虚拟现实场景中物体的渲染方法和虚拟现实头戴设备
US11615767B2 (en) Information processing apparatus, information processing method, and recording medium
KR20230081693A (ko) 증강현실 제공 장치 및 이의 동작 방법

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

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2020540171

Country of ref document: JP

Kind code of ref document: A

NENP Non-entry into the national phase

Ref country code: DE

ENP Entry into the national phase

Ref document number: 2019853647

Country of ref document: EP

Effective date: 20210329