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

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

Info

Publication number
WO2019031005A1
WO2019031005A1 PCT/JP2018/018103 JP2018018103W WO2019031005A1 WO 2019031005 A1 WO2019031005 A1 WO 2019031005A1 JP 2018018103 W JP2018018103 W JP 2018018103W WO 2019031005 A1 WO2019031005 A1 WO 2019031005A1
Authority
WO
WIPO (PCT)
Prior art keywords
display
virtual object
information processing
processing apparatus
user
Prior art date
Application number
PCT/JP2018/018103
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 CN201880050511.0A priority Critical patent/CN110998666B/zh
Priority to JP2019535599A priority patent/JP7176520B2/ja
Priority to US16/635,254 priority patent/US11244496B2/en
Priority to EP18843891.5A priority patent/EP3667622B1/en
Publication of WO2019031005A1 publication Critical patent/WO2019031005A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/10Geometric effects
    • G06T15/20Perspective computation
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/017Head mounted
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/04815Interaction with a metaphor-based environment or interaction object displayed as three-dimensional, e.g. changing the user viewpoint with respect to the environment or object
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/802D [Two Dimensional] animation, e.g. using sprites
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T17/00Three dimensional [3D] modelling, e.g. data description of 3D objects
    • G06T17/20Finite element generation, e.g. wire-frame surface description, tesselation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • 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
    • G09G5/363Graphics controllers
    • 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
    • G09G5/39Control of the bit-mapped memory
    • G09G5/391Resolution modifying circuits, e.g. variable screen formats
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/0138Head-up displays characterised by optical features comprising image capture systems, e.g. camera
    • GPHYSICS
    • G02OPTICS
    • G02BOPTICAL ELEMENTS, SYSTEMS OR APPARATUS
    • G02B27/00Optical systems or apparatus not provided for by any of the groups G02B1/00 - G02B26/00, G02B30/00
    • G02B27/01Head-up displays
    • G02B27/0101Head-up displays characterised by optical features
    • G02B2027/014Head-up displays characterised by optical features comprising information/image processing systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/36Level of detail
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2210/00Indexing scheme for image generation or computer graphics
    • G06T2210/62Semi-transparency
    • 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/06Adjustment of display parameters
    • G09G2320/0686Adjustment of display parameters with two or more screen areas displaying information with different brightness or colours
    • 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/0435Change or adaptation of the frame rate of the video stream
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/14Detecting light within display terminals, e.g. using a single or a plurality of photosensors
    • G09G2360/144Detecting light within display terminals, e.g. using a single or a plurality of photosensors the light being ambient light

Definitions

  • the present disclosure relates to an information processing device, an information processing method, and a program.
  • AR augmented reality
  • the AR technology is a technology that superimposes additional information in the real world and is presented to the user, and the information presented to the user by the AR technology is also called an annotation, and various forms of text, icons, animation, etc. 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”) or the like mounted on the head or the like of the user.
  • the HMD has a display located in front of the user's eyes when worn by the user, and displays the above-described virtual object in front of the user's eyes.
  • Such HMDs include non-transmissive types in which the display is non-transmissive and transmissive types in which the display is transmissive.
  • the display is transmissive, the above-described virtual object is displayed in real time so as to be superimposed on the real space viewed by the user through the display.
  • HMDs using such transmissive displays are disclosed in Patent Documents 1 and 2 below. Furthermore, these HMDs have a compact form because they are worn on the user's head or the like.
  • the capacity of the battery mounted on the information processing apparatus is limited, and accordingly, the processing capacity of the processor or the like is also limited. Therefore, in the information processing apparatus, when the display processing amount of the virtual object increases and the processing capacity of the processor runs out, the display frame rate or the like of the virtual object may decrease.
  • the display processing amount of the virtual object described above means the amount of processing performed in a central processing unit (CPU) or a graphics processing unit (GPU) when displaying a virtual object.
  • the present disclosure proposes a new and improved information processing apparatus, information processing method, and program capable of avoiding a decrease in display frame rate of a virtual object.
  • a control unit that detects a state that causes a decrease in display frame rate of a virtual object presented to a user, and dynamically changes the display detail of the virtual object according to the detected result.
  • An information processing method including:
  • the computer detects a state causing a decrease in display frame rate of a virtual object presented to the user, and dynamically displays the display detail of the virtual object according to the detected result.
  • a program is provided that causes it to function as a control unit to be changed.
  • FIG. 1 is a diagram for describing a schematic configuration of an information processing device 1 according to a first embodiment of the present disclosure. It is a block diagram which shows an example of a detailed structure of the information processing apparatus 1 which concerns on the embodiment. It is an explanatory view (the 1) for explaining the example of a display of virtual object 800 concerning the embodiment. It is an explanatory view (the 2) for explaining the example of a display of virtual object 800 concerning the embodiment. It is an explanatory view (the 3) for explaining the example of a display of virtual object 800 concerning the embodiment. It is a flowchart (the 1) which shows the processing flow concerning the embodiment. It is a flowchart (the 2) which shows the processing flow which concerns on the embodiment.
  • a plurality of components having substantially the same or similar functional configurations may be distinguished by attaching different numerals after the same reference numerals. However, when it is not necessary to distinguish each of a plurality of components having substantially the same or similar functional configuration, only the same reference numeral is given. Also, similar components in different embodiments may be distinguished by attaching different alphabets after the same reference numerals. However, when it is not necessary to distinguish each of similar components in particular, only the same reference numeral is attached.
  • display frame rate means the number of frames (number of frames) processed per unit time in displaying a virtual object.
  • recognition frame rate means the number of times of sampling for detecting the information per unit time in the process of recognizing predetermined information.
  • FIG. 1 is a diagram for explaining a schematic configuration of the 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 worn on the head of the user 700. That is, the information processing device 1 is a wearable device worn by the user 700.
  • the display unit 16 corresponding to the spectacle lens portion positioned in front of the user 700 at the time of wearing is a transmissive type that can visually recognize the outside of the spectacle lens portion or a nontransmissive type that can not visually recognize the outside of the spectacle lens portion 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 a virtual object in front of the user 700 by displaying the virtual object on the display unit 16.
  • the virtual object means a virtual object that can be perceived by the user 700 as a real object existing in 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 for both eyes of the user 700, but only for one eye of the user 700. It may have a form of displaying a virtual object.
  • the information processing apparatus 1 when the information processing apparatus 1 is a smart eyeglass, the information processing apparatus 1 mounted on the head of the user 700 as shown in FIG.
  • the right-eye display unit 16A and the display unit 16B are arranged.
  • a transmissive display is used for the display portions 16A and 16B, and the information processing apparatus 1 can make the display in a through state, that is, a transparent or semitransparent state by controlling the transmittance of the transmissive display.
  • the display units 16A and 16B when the display units 16A and 16B are in the through state, the user 700 can perceive the surrounding real space even when the information processing apparatus 1 is always worn like glasses. It does not affect the normal life of the user 700.
  • the display units 16A and 16B can display images such as texts and figures while in the through state, that is, can display superimposed 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 consisting of a transparent light guide 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 captured by the outward facing camera 120 (details will be described later) provided in the information processing apparatus 1.
  • the virtual object may be superimposed on the captured image of the real space while displaying the captured image of.
  • the display unit 16 may be realized as an LED (Light Emitting Diode) light source or the like that projects an image directly on the retina of the user 700. That is, the information processing apparatus 1 may be realized as a projection HMD.
  • LED Light Emitting Diode
  • the virtual object may be, for example, a marker (label or the like) schematically showing information presented to the user 700, a map, a shape (person, a telephone, a signboard or the like) schematically showing 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 such as an electronic book, or the like. That is, as content that can be displayed as a virtual object, it is possible to assume anything that can be displayed.
  • the information processing apparatus 1 is provided with an outward facing camera 120 that captures an actual space around the user 700.
  • the outward camera 120 is installed in the information processing apparatus 1 so as to capture an actual space in a direction in which the user 700 visually recognizes as an imaging range in a state where the user 700 wears the information processing apparatus 1 There is.
  • a depth image distance image
  • the information processing apparatus 1 may be provided with an inward camera 122 (see FIG. 2) that captures an expression or the like of the user 700 at the time of wearing.
  • the inward camera 122 is installed in the information processing device 1 so as to capture the facial expression of the user 700 and both eyes of the user 700 as an imaging range in a state where the user 700 wears the information processing device 1 There is.
  • the information processing apparatus 1 determines the position of the eyeball of the user 700, the position of the pupil, the direction of the line of sight, and the movement from the parallax information obtained by the inward facing cameras 122. Etc. can be recognized with high accuracy.
  • 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 voice and the like. It is also good. Furthermore, although not shown in FIG. 1, the information processing apparatus 1 may be provided with a speaker 18 (see FIG. 2). For example, the speaker 18 may be implemented as a pair of earphone speakers corresponding to the left and right ears of the user 700. Also, as described above, a plurality of sensors of the same type may be provided in the information processing apparatus 1.
  • sensors such as a microphone 124 (hereinafter referred to as a “microphone”) (see FIG. 2) for acquiring voice and the like. It 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.
  • a plurality of sensors of the same type may be provided in the information processing apparatus 1.
  • the information processing apparatus 1 may be provided with a button, a switch, and the like (an example of an operation input unit) for performing an input operation by the user 700. Furthermore, as the input operation of the user 700 to the information processing apparatus 1, various input methods such as input by voice, gesture input by hand or head, input by line of sight, etc. can be selected as well as operation by button etc. . In addition, the input operation by these various input methods can be acquired by the various sensors etc. which were provided in the information processing apparatus 1. FIG.
  • the form of the information processing apparatus 1 is not limited to the example shown in FIG.
  • the information processing apparatus 1 may be a headband type HMD or a helmet type (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 in particular, if the information processing device 1 has the display unit 16 positioned in front of the user 700 at the time of wear. Is not limited.
  • the above-mentioned headband type means the type worn by a band that goes around the entire circumference of the head of the user 700. Further, the head-hand type includes the case of providing a band that passes not only the side of the user 700 but also the top of the head.
  • the information processing apparatus 1 is an HMD called a smart eyeglass having a transmissive display
  • the case where 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 apparatus 1 displays the virtual object superimposed on the real space.
  • the interaction between the user 700 and the information processing apparatus 1 can be performed via the superimposed virtual object.
  • the information processing apparatus 1 can present predetermined information to the user 700 by displaying the virtual object in front of the user 700.
  • the user 700 can perform an operation on the information processing apparatus 1 by performing an operation such as touching a virtual object.
  • the virtual object to be displayed is displayed with a suitable display form, display position, display timing, etc. .
  • the user 700 can perceive the virtual object as if it were a real object existing in the real space, and the user 700 intuitively receives information from the information processing apparatus 1 via the virtual object. Can understand the information provided.
  • the user 700 can intuitively understand the method of interaction with the information processing device 1 via the virtual object, and can easily operate the information processing device 1 using the virtual object.
  • the display frame rate is lowered, or the display of a non-smooth virtual object such as a frame drop occurs, the experience given to the user 700 by the virtual object Give rise to As a result, it is difficult to realize real-time interaction via the virtual object between the user 700 and the information processing apparatus 1.
  • the above-mentioned frame drop means, for example, a display state that allows the user 700 to perceive that the virtual object is displayed intermittently in an unnatural manner unlike the real object. .
  • “Frame dropping” is also called “frame dropping” and occurs when a frame to be displayed is skipped without being displayed and a frame to be displayed next is displayed. In the following description, it is assumed that the drop of the display frame rate includes the drop of the frame.
  • the information processing apparatus 1 which consists of HMD etc. which were mentioned above is mounted
  • the capacity of the battery mounted on the information processing apparatus 1 is limited, and the processing capacity of a processor or the like, the allowable amount of heat generation due to processing, etc. are also limited.
  • the display frame rate may be lowered.
  • a decrease in display frame rate, a drop in frame, or the like may occur.
  • the experience given to the user 700 by the virtual object causes discomfort or confusion due to a decrease in the display frame rate or the like, causing the user 700 and the information processing apparatus 1 to communicate via the virtual object. Realization of interaction in real time becomes difficult.
  • the reduction in the display frame rate described above can occur not only in the information processing apparatus 1 which is a smart eyeglass having a transmissive display but also in the information processing apparatus 1 which is an HMD having a non-transmissive display.
  • the information processing apparatus 1 which is an HMD having a non-transmissive display.
  • a reduction in the display frame rate of the object can occur.
  • the present inventors detect the state causing the display frame rate of the virtual object to decrease, and dynamically display the degree of display detail of the virtual object according to the detected result. It came to create the information processing apparatus 1 according to the embodiment of the present disclosure which is changed to.
  • the information processing apparatus 1 detects a state in which the display frame rate of the virtual object is lowered, the information processing apparatus 1 changes the display detail level of the virtual object to allow a margin in the processing capability of the information processing apparatus 1. By securing, the decrease in display frame rate of the virtual object is avoided.
  • the display level of detail means a general term of an index indicating the definition of display such as display resolution.
  • the information processing apparatus 1 detects the display position of the virtual object as the display processing amount of the virtual object, and displays the display resolution (pixels in the display as the display detail degree of the virtual object according to the detected display position.
  • the index of density) and effect processing processing to be performed on the display, for example, shading processing are dynamically changed.
  • the display processing amount in the information processing device 1 changes in accordance with the size of the virtual object. For example, when displaying a large virtual object, when the display processing amount of the virtual object increases and the processing capacity of the information processing apparatus 1 becomes insufficient, the display frame rate may be lowered.
  • a state in which the display frame rate of the virtual object is lowered is detected, that is, the display position of the virtual object which causes the decrease in the display frame rate of the virtual object is detected.
  • the display resolution of the virtual object is changed according to the detected display position.
  • the display distance of the virtual object from the user 700 is the first distance
  • the display distance may be a second distance smaller than the first distance. Make the display detail larger than the virtual object of. By doing so, according to the present embodiment, a margin is secured in the processing capability of the information processing device 1, and a decrease in the display frame rate of the virtual object is avoided.
  • the virtual object when the virtual object is displayed at a position very close to the user 700 (for example, when the distance from the user 700 to the display position of the virtual object is less than 0.8 m), the virtual In order to prevent visual fatigue and "visual sickness" due to objects, effect processing is performed to make virtual objects translucent or erase.
  • FIG. 2 is a block diagram showing an example of a detailed configuration of the information processing apparatus 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 details of each functional unit of the information processing apparatus 1 will be described below.
  • the control unit 10 functions as an arithmetic processing unit and a control unit, and controls the overall operation in the information processing apparatus 1 according to various programs.
  • the control unit 10 is realized by an electronic circuit of a microprocessor such as a CPU or a GPU, for example.
  • the control unit 10 may include a ROM (Read Only Memory) that stores programs to be used, operation parameters, and the like, and a RAM (Random Access Memory) that temporarily stores parameters and the like that change appropriately.
  • the control unit 10 performs control to dynamically change the display resolution or the like of the virtual object in accordance with the display position or the like of the virtual object.
  • the control unit 10 according to the present embodiment can function as an information acquisition unit 100, a display parameter calculation unit 102, a display format determination unit 104, and an output control unit 106. The details of each block of the control unit 10 will be described below.
  • 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. Specifically, the information acquisition unit 100 identifies, for example, a user posture recognition engine that recognizes the posture or state of the user 700, a depth recognition engine that recognizes depth information in the real space around the user 700, and a position of the user 700 A Simultaneous Localization And Mapping (SLAM) recognition engine can be included. Furthermore, the information acquisition unit 100 includes a gaze recognition engine that performs gaze detection of the user 700, a voice recognition engine that recognizes environmental sound around the user 700 or the user 700, and an absolute position of the information processing apparatus 1 (user 700). May also include a position recognition engine that recognizes the In addition, the information acquisition unit 100 may include a real object recognition engine or the like that recognizes a real object in the real space. Note that these recognition engines are merely examples, and the present embodiment is not limited to this.
  • the user posture recognition engine recognizes the posture of the head of the user 700 (including the orientation or inclination of the face with respect to the body) using the detection result detected by the sensor unit 12. For example, the user posture recognition engine recognizes the posture or the like of the user 700 using a captured image captured by the outward camera 120, gyro information acquired by the gyro sensor 126 described later, and the like. Also, the user posture recognition engine may recognize the posture or the like of the user 700 using acceleration information acquired by an acceleration sensor 128 described later, azimuth information acquired by an azimuth sensor described later, and the like. Note that a recognition algorithm such as the posture of the user 700 can use a generally known algorithm, 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 set 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 distance and unevenness of the In addition, the depth recognition engine is based on differences in real objects (binocular parallax) on a plurality of captured images in which the same real space is captured from different viewpoints by a plurality of outward facing cameras 120. The position and shape of the object may be recognized. A commonly known algorithm can be used as a depth information recognition algorithm, and the present invention is not particularly limited.
  • ToF Time of Flight
  • the SLAM recognition engine simultaneously estimates the self position of the information processing apparatus 1 (user 700) and creates a map of the real space around the user 700 using the detection result detected by the sensor unit 12, and in the real space
  • the position of the information processing device 1 is identified.
  • the SLAM recognition engine (in particular, Visual SLAM) sequentially restores the three-dimensional shape of the captured real object based on the captured image captured by the outward camera 120.
  • the SLAM recognition engine associates the restoration result with the detection result of the position and orientation of the outward camera 120 to create a map of the real space around the user 700 and the outward camera 120 in the real space (the user 700 (user 700).
  • Estimation of the position and orientation of The position and orientation of the outward camera 120 may be estimated as information indicating a relative change, for example, based on detection results detected by various sensors such as the acceleration sensor 128 provided in the sensor unit 12. It is possible. In addition, a commonly known algorithm can be used for the SLAM recognition algorithm, and the present embodiment is not particularly limited.
  • the information acquisition unit 100 performs space recognition (space grasping) based on both the recognition result of the depth recognition engine and the recognition result of the SLAM recognition engine described above, and information in a three-dimensional real space around the user 700 The detailed position of the processing device 1 (user 700) can also be recognized.
  • the gaze recognition engine performs gaze detection of the user 700 using the detection result detected by the sensor unit 12. For example, the gaze recognition engine analyzes the captured image of the eye 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, but, for example, the gaze direction of the user 700 based on the positional relationship between the inner corner of the eye and the iris or the positional relationship between the corneal reflection and the pupil. It is possible to recognize
  • the voice recognition engine uses the detection result detected by the sensor unit 12 to recognize the user 700 or an environmental sound around the user 700.
  • the voice recognition engine can perform noise removal, sound source separation, and the like on the collected sound information acquired by the microphone 124 described later, and can perform voice recognition, morphological analysis, sound source recognition, or noise level recognition, etc. It is.
  • the speech recognition engine may extract predetermined language from the recognized speech information.
  • the position recognition engine recognizes the absolute position of the information processing apparatus 1 (user 700) using the detection result detected by the sensor unit 12. For example, the position recognition engine recognizes a place (for example, a station, a school, a house, etc.) of the information processing apparatus 1 based on position information measured by the position measurement unit 132 described later and map information acquired in advance. Can.
  • a place for example, a station, a school, a house, etc.
  • the real object recognition engine has a function of recognizing a real object based on a captured image or the like 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 identify the type of the real object, etc. recognize.
  • the feature amount can be calculated by, for example, a known feature amount calculation technique such as SIFT (Scale-Invariant Feature Transform) method or Random Ferns method.
  • the information acquisition unit 100 may acquire an apparatus profile (for example, display processing speed, detection state of the sensor unit 12, recognition frame rate in various recognition engines described above, etc.) indicating the state of processing in the information processing apparatus 1 Good. Furthermore, the information acquisition unit 100 displays the display position, the display area, the number of displays, the display form (for example, the type of content displayed as a virtual object, and the like) on the display The moving speed of the virtual object or the like may be acquired.
  • an apparatus profile for example, display processing speed, detection state of the sensor unit 12, recognition frame rate in various recognition engines described above, etc.
  • the information acquisition unit 100 displays the display position, the display area, the number of displays, the display form (for example, the type of content displayed as a virtual object, and the like) on the display
  • the moving speed of the virtual object or the like may be acquired.
  • the display parameter calculation unit 102 calculates an indicator or the like of the display processing amount of the virtual object. For example, the display parameter calculation unit 102 uses the display position of the virtual object defined by the application for displaying the virtual object acquired by the information acquisition unit 100 to determine the distance from the user 700 to the display position of the virtual object. Calculate In the present embodiment, the display parameter calculation unit 102 uses the device profile acquired by the information acquisition unit 100 to display an indicator or the like indicating the processing state in the control unit 10, such as the display frame rate of the virtual object. It may be calculated.
  • the display format determination unit 104 sets the display detail level (for example, resolution etc.) of the virtual object based on the calculation result by the display parameter calculation unit 102. Furthermore, the display format determination unit 104 sets display effect processing (for example, transparency, texture change, and the like) performed on the virtual object based on the calculation result by the display parameter calculation unit 102. It should be noted that the threshold and the like to be compared with the above calculation result when the display format determination unit 104 sets the display detail level etc. performs a test to display the virtual object in advance, and the processing in the information processing device 1 occurs It is determined based on the load and the display quality felt by the user 700.
  • the display detail level for example, resolution etc.
  • display effect processing for example, transparency, texture change, and the like
  • the output control unit 106 controls the display unit 16 described later to display the virtual object based on the determination of the display format determination unit 104.
  • the sensor unit 12 has a function of acquiring various information related to 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, a gyro sensor 126, an acceleration sensor 128, an azimuth sensor 130, a position positioning unit 132, and a living body sensor 134.
  • the sensor mentioned above is an example, and this embodiment is not limited to this.
  • a plurality of the various sensors described above may be provided in the sensor unit 12 respectively. The details of each sensor included in the sensor unit 12 will be described below.
  • the outward camera 120 images a real space around the user 700
  • the inward camera 122 images a user's 700 expression and the like
  • the outward camera 120 and the inward camera 122 are a lens system including an imaging lens, an aperture, a zoom lens, a focus lens, and the like, and a drive system for performing a focusing operation and a zooming operation on the lens system.
  • the outward camera 120 and the inward camera 122 each have a solid-state imaging element array or the like that photoelectrically converts the 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 charge coupled device (CCD) sensor array or a complementary metal oxide semiconductor (CMOS) sensor array.
  • CCD charge coupled device
  • CMOS complementary metal oxide semiconductor
  • the microphone 124 picks up the voice of the user 700 and surrounding environmental sound, and outputs the picked-up voice information to the control unit 10. For example, the microphone 124 picks up the instruction uttered by the user 700 and outputs it 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 gyro sensor 126 is realized by, for example, a three-axis gyro sensor, and detects an angular velocity (rotational speed) due to the motion of the user 700.
  • the acceleration sensor 128 is realized by, for example, a three-axis acceleration sensor (also referred to as a G sensor), and detects an acceleration due to the motion of the user 700. The operation of the user 700 can be recognized based on the detection results of these sensors.
  • the azimuth sensor 130 is realized by, for example, a three-axis geomagnetic sensor (compass), and detects an absolute direction (azimuth).
  • the absolute orientation means the orientation in the world coordinate system (east, west, north, south) in real space.
  • the position positioning unit 132 detects the absolute position of the information processing device 1 (user 700) based on an external acquisition signal.
  • the absolute position refers to a position in the world coordinate system (process) in 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, and detects the position where the information processing device 1 (user 700) is present, The detected position information is output to the control unit 10.
  • the positioning unit 132 transmits / receives to / from, for example, Wi-Fi (Wireless Fidelity (registered trademark), Bluetooth (registered trademark), mobile phone, PHS (Personal Handy-phone System), smartphone, etc. other than GPS, or It may be a device that detects the position by near field communication or the like.
  • the living body sensor 134 detects various living body information of the user 700. Specifically, the biological sensor 134 is attached to, for example, a part of the body of the user 700 directly or indirectly, and the heart rate of the user 700, blood pressure, brain waves, respiration, sweating, myoelectric potential, skin temperature, skin Includes one or more sensors that measure electrical resistance etc. The living body sensors 134 output the detected living body information to the control unit 10.
  • the sensor unit 12 includes a temperature sensor (not shown) that detects the ambient temperature around the user 700, and an illuminance sensor that detects the brightness of the environment around the user 700, in addition to the sensors described above. (Not shown) may be included. Furthermore, the sensor unit 12 includes various sensors such as an atmospheric pressure sensor (not shown) that detects the atmospheric pressure of the environment around the user 700, an infrared sensor (not shown) that detects infrared light, and a radio wave sensor (not shown) May be included.
  • 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 recognition processing by the information acquisition unit 100, various threshold values used by the display format determination unit 104, and the like.
  • the display unit 16 is realized by, for example, a lens unit (an example of a see-through type display) that performs display using a 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 according to 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 and receiving data to and from another device by wired or wireless communication.
  • the communication unit 20 is, for example, a method such as wired LAN (Local Area Network), wireless LAN, Wi-Fi (registered trademark), infrared communication, Bluetooth (registered trademark), short distance / non-contact communication, etc.
  • communication can be made via a network access point (not shown).
  • the communication unit 20 may be used as a radio wave sensor that detects radio waves.
  • 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 on the information processing apparatus 1 by performing an operation on the operation input unit 22. Further, the content of the operation input by the operation input unit 22 may be displayed by the display unit 16 described above.
  • the detailed structure of the information processing apparatus 1 which concerns on this embodiment is not limited to the example shown in FIG.
  • at least part of the processing of the control unit 10 of the information processing apparatus 1 may be performed by a server (not shown) on the cloud connected via the communication unit 20.
  • FIGS. 3 to 5 are explanatory diagrams for describing display examples of the virtual object 800 according to the present embodiment.
  • the information processing apparatus 1 can display the virtual object 800, for example, when the sensor unit 12 detects that the user 700 has performed a predetermined operation. As shown in FIG. 3, when the information processing apparatus 1 detects that the head of the user 700 is directed downward by the sensor unit 12 so that the user 700 looks at the foot of the user, the information processing apparatus 1 may The virtual object 800 is displayed so as to be superimposed on the The virtual object 800 is a virtual object 800 in the form of a map indicating the position information of the user 700, and more specifically, the virtual marker 600 is displayed on the virtual object 800 which is a map. Indicates the current position of.
  • the information processing apparatus 1 can present information (here, position information of the user 700) to the user 700 by superimposing and displaying such a virtual object 800 in the real space. Therefore, the user 700 can intuitively grasp the information presented by the information processing apparatus 1 via the virtual object 800 displayed in this manner.
  • the information processing apparatus 1 may display the virtual object 800 by detecting the motion of the entire body of the user 700 such as walking, running, and stopping.
  • the information processing apparatus 1 detects a predetermined movement of the hand of the user 700 (for example, a gesture of holding the hand, waving a hand, reaching a hand, etc.) using the outward camera 120 or the like.
  • the virtual object 800 may be displayed.
  • the information processing apparatus 1 detects that the user 700 is looking with interest to a predetermined real object in the real space by the visual recognition of the user 700, thereby the virtual object 800. May be displayed.
  • the information processing apparatus 1 detects that the user 700 utters a predetermined word, or detects that the user 700 has performed an operation on the operation input unit 22, and thus the virtual object 800. May be displayed.
  • the information processing device 1 can display the virtual object 800, for example, when the information processing device 1 is in a predetermined state.
  • the information processing apparatus 1 is superimposed on a wall surface (real object) 602 located around the user 700 by detecting wireless communication for voice call from an external device.
  • the virtual object 800 has a shape of a telephone to intuitively grasp information indicating that the user 700 has received a voice call, and outputs a predetermined ringtone together with the display.
  • the information processing apparatus 1 can present the above information to the user 700.
  • the information processing apparatus 1 performs processing for performing a voice call by detecting that the hand 702 of the user 700 is extended to the virtual object 800 illustrated in FIG. 4 using the outward camera 120 or the like. You may migrate.
  • the information processing device 1 detects wireless communication for voice communication, but also when the information processing device 1 detects wireless communication from a portable terminal carried by a person located near the user 700.
  • the virtual object 800 may be displayed by detecting the communication.
  • the information processing apparatus 1 changes the process performed by the information processing apparatus 1 by detecting a predetermined action (for example, touching or holding the virtual object 800, etc.) of the user 700 with respect to the virtual object 800 already displayed.
  • the form of the virtual object to be displayed may be changed.
  • the information processing device 1 can also display the virtual object 800, for example, by detecting that the information processing device 1 (user 700) has entered a predetermined area. For example, as illustrated in FIG. 5, the information processing apparatus 1 detects that the user has entered the predetermined area by the position positioning unit 132, and thus notifies the user that traffic is prohibited so as to be superimposed on the real space around the user 700. Display a virtual object 800 having a form of tape.
  • the user 700 has a predetermined real object (for example, in FIG. 5)
  • the virtual object 800 may be displayed by detecting that the vehicle 604) is approached.
  • the virtual object 800 can be displayed so as to be superimposed on the real space when the information processing apparatus 1 detects a predetermined situation or the like.
  • the virtual object 800 is displayed at a position where the user 700 can reliably view based on the visual field range of the user 700 detected using the inward facing camera 122 or the like.
  • the information processing device 1 displays the virtual object at an appropriate position according to the information. For example, a situation will be described in which the information processing apparatus 1 tries to present information to alert the user 700 because a depression has occurred on the road. In this case, the information processing device 1 displays the virtual object 800 at the depression point so that the user 700 can perceive that the virtual object is located at the depression point.
  • FIGS. 6A, 6B, 7 and 8 are flowcharts showing the process flow according to the present embodiment. 7 and 8 are explanatory diagrams for describing an example of processing according to the present embodiment.
  • the information processing method according to the present embodiment includes a plurality of steps from step S100 to step S132. The details of each step included in the method according to the present embodiment will be described below.
  • the information processing apparatus 1 when the information processing apparatus 1 detects that the user 700 has performed a predetermined operation, the information processing apparatus 1 starts display processing of a virtual object.
  • the flow described below is performed for each display frame of the virtual object to be displayed, and is repeated each time the display frame changes.
  • Step S100 The information acquisition unit 100 acquires information on the user 700 or various conditions around the user 700 using the detection result detected by the sensor unit 12. Further, the information acquisition unit 100 acquires information such as the display position of the virtual object, which is defined by the application for displaying the virtual object. Furthermore, the display parameter calculation unit 102 calculates the display distance from the user 700 to the display position of the virtual object based on the acquired information on the display position. The display distance of the virtual object is calculated based on, for example, the display position defined in advance by the application that displays the virtual object, and the self-position information of the information processing apparatus 1 (user 700) acquired by the above-described SLAM or the like. be able to.
  • Step S102 The display format determination unit 104 compares the display distance calculated in step S100 with the threshold value ⁇ set in advance. Specifically, when the display format determination unit 104 determines that the calculated display distance is ⁇ (for example, 3 m) or more, the process proceeds to step S104. On the other hand, when it is determined that the calculated display distance is less than ⁇ , the process proceeds to step S108.
  • for example, 3 m
  • Step S104 The display format determination unit 104 sets the display resolution of the virtual object to the highest rank (for example, 960 ⁇ 768 pixels).
  • Step S106 The display format determination unit 104 sets the effect processing on the virtual object to be displayed to the normal mode. For example, in the normal mode, virtual objects are processed so as to be three-dimensionally displayed as real objects in real space.
  • Step S108 The display format determination unit 104 compares the display distance calculated in step S100 with threshold values ⁇ and ⁇ set in advance. Specifically, when the display type determination unit 104 determines that the calculated display distance is less than ⁇ and greater than or equal to ⁇ (for example, 1.5 m), the process proceeds to step S110. On the other hand, if it is determined that the calculated display distance is less than ⁇ , the process proceeds to step S114.
  • Step S110 The display format determination unit 104 sets the display resolution of the virtual object to a high rank (for example, 640 ⁇ 480 pixels). Thus, the display processing amount can be reduced by lowering the display resolution as compared to step S104.
  • Step S112 As in step S106, the display format determination unit 104 sets the effect processing on the virtual object to be displayed to the normal mode.
  • Step S114 The display format determination unit 104 compares the display distance calculated in step S100 with threshold values ⁇ and ⁇ set in advance. Specifically, if the display type determination unit 104 determines that the calculated display distance is less than ⁇ and greater than or equal to ⁇ (for example, 0.8 m), the process proceeds to step S116. On the other hand, when it is determined that the calculated display distance is less than ⁇ , the process proceeds to step S120.
  • for example, 0.8 m
  • Step S116 The display format determination unit 104 sets the display resolution of the virtual object to the middle rank (for example, 384 ⁇ 240 pixels).
  • Step S118 The display format determination unit 104 sets the effect processing on the virtual object to the wire frame mode.
  • the virtual object is processed to be three-dimensionally displayed using the wire frame.
  • the virtual object is displayed as a solid figure represented only by lines (for example, the virtual object 806a in FIG. 10).
  • displaying virtual objects with wire frames can reduce the amount of display processing compared to the above-described three-dimensional display.
  • Step S120 The display format determination unit 104 compares the display distance calculated in step S100 with threshold values ⁇ and ⁇ set in advance. Specifically, when the display type determination unit 104 determines that the calculated display distance is less than ⁇ and greater than or equal to ⁇ (for example, 0.35 m), the process proceeds to step S122. On the other hand, when it is determined that the calculated display distance is less than ⁇ , the process proceeds to step S128.
  • Step S122 The display format determination unit 104 sets the display resolution of the virtual object to a low rank (for example, 192 ⁇ 120 pixels).
  • Step S124 The display format determination unit 104 sets the effect processing on the virtual object to the semitransparent mode.
  • the virtual object is processed so as to be displayed as a translucent figure in which the real space looks like a watermark.
  • the display processing amount can be reduced as compared with the above-described three-dimensional display.
  • Step S126 The display format determination unit 104 changes the display format of the virtual object from three-dimensional display to two-dimensional display. Therefore, the virtual object is displayed as a planar two-dimensional figure. Thus, displaying the virtual object as a two-dimensional figure can reduce the amount of display processing compared to three-dimensional display.
  • Step S128) The display format determination unit 104 confirms that the display distance calculated in step S100 is less than ⁇ .
  • Step S130 The display format determination unit 104 sets the effect processing on the virtual object to the deletion mode. For example, in the erase mode, virtual objects are not displayed.
  • Step S132 The output control unit 106 controls the display unit 16 so that the virtual object is displayed according to the display resolution and the effect processing set by the display format determination unit 104 in the series of steps up to this point. Then, in addition to the display rule defined by the application, the display unit 16 displays the virtual object in accordance with the display resolution and the effect processing set by the display format determination unit 104. Furthermore, when the display of the display frame of the virtual object is completed, the process returns to step S100 to perform the display process of the next display frame.
  • the flow is described as being repeated for each display frame of a virtual object, but the present embodiment is not limited to this.
  • the flow may be repeated by detecting that the processing state in the information processing apparatus 1 has changed, or by detecting that the state of the user 700 has changed, and is not particularly limited. .
  • the values of the threshold values ⁇ , ⁇ , ⁇ , and ⁇ shown in FIG. 6A, FIG. 6B and FIG. 7 described above, the display resolution to be set and the contents of the effect processing It is not limited. In the present embodiment, it is possible to select appropriately as long as it is possible to suitably maintain the display quality of the virtual object viewed from the user 700 while suitably maintaining the display frame rate of the virtual object. is there. Further, in the effect processing, for example, the transparency level of the virtual object to be displayed may be changed, or the display format of the virtual object may be changed from two-dimensional display to three-dimensional display.
  • the display resolution of the virtual object is increased when the display distance is long (for example, the display distance is 3 m or more), but this embodiment is not limited thereto.
  • the display distance is long, that is, when the virtual object is displayed at a position far from the user 700, it is difficult for the user 700 to perceive the difference in display quality of the virtual object. It may be set to low rank.
  • FIG. 7 schematically shows the process in the above-mentioned flow.
  • FIG. 7 schematically shows that the size and display resolution of the virtual object of the human image to be displayed change according to the display distance from the user 700 to the display position of the virtual object.
  • the display distance for example, when the display distance is short (for example, about 0.8 m), a virtual object 802a that is large and has a low display resolution is displayed.
  • the virtual object 802a is generally blurred and dimmed as shown in FIG.
  • the display distance is medium (for example, about 1.5 m)
  • a virtual object 802 b that is smaller and has a higher display resolution than that of the virtual object 802 a is displayed.
  • the display distance is long (for example, about 3 m)
  • a virtual object 802c having a smaller display resolution than that of the virtual object 802b is displayed.
  • the size (display area) of the virtual object 802 a is further expanded as it is closer to the user 700, whereby a sense of perspective can be expressed.
  • the display distance of the virtual object is the first distance
  • another virtual object whose display area of the virtual object is the second distance whose display distance is smaller than the first distance
  • the user 700 can feel a sense of perspective. That is, in order to express a sense of perspective, the size of the virtual object is enlarged as the display distance decreases. Therefore, in the present embodiment, the resolution is controlled so as to suppress the display processing amount which increases with the expansion of the display area in the above case.
  • a virtual object 804 a is displayed superimposed on a car 604 which is a real object in real space at a position far from the user 700. Then, when the user 700 moves closer to the car 604, the display distance between the display position of the virtual object and the user 700 is reduced. Therefore, in such a case, as shown on the right side of FIG. 8, the virtual object 804b is displayed so as to have a lower display resolution although being larger than the virtual object 804a. Furthermore, the virtual object 804b is displayed as a translucent figure in which a real object in real space (for example, the car 604) looks like a watermark.
  • the display processing amount of the virtual object increases, and the processing capacity of the information processing apparatus 1 becomes insufficient, resulting in a decrease in display frame rate. is there. Therefore, in the present embodiment, the display position of the virtual object, which causes the increase in the display processing amount, is detected, and the display resolution of the virtual object is dynamically changed according to the detected display position. By doing this, according to the present embodiment, it is possible to secure a margin in the processing capability of the information processing apparatus 1 before the display frame rate decreases, and to avoid the occurrence of the decrease in the display frame rate.
  • the present embodiment it is possible to preferably maintain the quality of the virtual object viewed from the user 700 while preferably maintaining the display frame rate of the virtual object. As a result, according to the present embodiment, it is possible to realize real-time interaction between the user 700 and the information processing apparatus 1 via the virtual object, and provide a meaningful experience for the user 700. . In addition, according to the present embodiment, by dynamically changing the display resolution or the like of the virtual object, it is possible to reduce the display processing amount in the information processing apparatus 1 and thus reduce the power consumption. As a result, according to the present embodiment, the battery capacity can be reduced, and a more compact information processing apparatus 1 can be provided.
  • the display resolution or the like of the virtual object is dynamically changed according to the display distance.
  • the display resolution or the like of the virtual object may be changed according to not only the display distance but also the other display processing amount of the virtual object. Therefore, in the second embodiment of the present disclosure, the display resolution or the like of the virtual object is changed according to the display area of the virtual object.
  • the display processing amount in the information processing apparatus 1 changes in accordance with the size of the virtual object. Therefore, for example, when displaying a large virtual object, the display processing amount may increase, the processing capacity of the information processing apparatus 1 may not be enough, and the display frame rate may be lowered.
  • a state in which the display frame rate of the virtual object is lowered is detected, that is, the display area of the virtual object which is a cause of the display frame rate of the virtual object is detected. Furthermore, in the present embodiment, the display resolution or the like of the virtual object is changed according to the detected display area. Therefore, according to the present embodiment, it is possible to secure a margin in the processing capability of the information processing device 1 and to avoid a decrease in the display frame rate of the virtual object.
  • the detailed configuration of the information processing apparatus 1 according to the second embodiment is the same as that of the first embodiment, and thus the description thereof is omitted here.
  • 9A and 9B are flowcharts showing the process flow according to the present embodiment.
  • FIG. 10 is an explanatory diagram for describing an example of processing according to the present embodiment.
  • the information processing method according to the present embodiment includes a plurality of steps from step S200 to step S232. The details of each step included in the information processing method according to the present embodiment will be described below. In the following description, only differences from the first embodiment will be described, and descriptions of points in common with the first embodiment will be omitted.
  • the display area ratio of the virtual object means the ratio of the display area of the virtual object to be displayed to the display area which can be displayed by the display unit 16.
  • the information processing apparatus 1 starts display processing of a virtual object.
  • the flow described below is performed for each display frame of a virtual object to be displayed, as in the first embodiment, and is repeated each time the display frame changes.
  • Step S200 The information acquisition unit 100 acquires information on the user 700 or various conditions around the user 700 using the detection result detected by the sensor unit 12. Further, the information acquisition unit 100 acquires information such as a display area of a virtual object, which is defined by an application for displaying a virtual object. Furthermore, the display parameter calculation unit 102 calculates the display area ratio based on the acquired information on the display area.
  • Step S202 The display format determination unit 104 compares the display area ratio calculated in step S200 with a threshold value ⁇ set in advance. Specifically, when the display format determination unit 104 determines that the calculated display area ratio is less than ⁇ % (for example, 10%), the process proceeds to step S204. On the other hand, when it is determined that the calculated display area ratio is ⁇ % or more, the process proceeds to step S208.
  • ⁇ % for example, 10%
  • Step S204, Step S206 The same processes as steps S104 and S106 of the first embodiment shown in FIG. 6A are performed.
  • Step S208 The display format determination unit 104 compares the display area ratio calculated in step S200 with threshold values ⁇ and ⁇ set in advance. Specifically, when the display format determination unit 104 determines that the calculated display area ratio is ⁇ % or more and less than ⁇ % (for example, 20%), the process proceeds to step S210. On the other hand, when it is determined that the calculated display area ratio is ⁇ % or more, the process proceeds to step S214.
  • Step S210, Step S212 Processing similar to steps S110 and S112 of the first embodiment shown in FIG. 6A is performed.
  • Step S214 The display format determination unit 104 compares the display area ratio calculated in step S200 with threshold values ⁇ and ⁇ set in advance. Specifically, when the display format determination unit 104 determines that the calculated display area ratio is ⁇ % or more and less than ⁇ % (for example, 30%), the process proceeds to step S216. On the other hand, when it is determined that the calculated display area ratio is ⁇ % or more, the process proceeds to step S220.
  • Step S216, Step S2128 The same processes as steps S116 and S118 of the first embodiment shown in FIG. 6A are performed.
  • Step S220 The display format determination unit 104 compares the display area ratio calculated in step S200 with threshold values ⁇ and ⁇ set in advance. Specifically, when the display format determination unit 104 determines that the calculated display area ratio is ⁇ % or more and less than ⁇ % (for example, 50%), the process proceeds to step S222. On the other hand, if it is determined that the calculated display area ratio is ⁇ % or more, the process proceeds to step S228.
  • Step S222, Step S224, Step S226) The same processing as step S122, step S124 and step S126 of the first embodiment shown in FIG. 6A is performed.
  • Step S228 The display format determination unit 104 confirms that the display area ratio calculated in step S200 is ⁇ % or more.
  • Step S230, Step S232 The same processes as steps S130 and S132 of the first embodiment shown in FIG. 6A are performed.
  • the display resolution to be set and the contents of the effect processing It is not limited to the above-mentioned value etc. In the present embodiment, it is possible to select appropriately as long as it is possible to suitably maintain the quality of the virtual object viewed from the user 700 while suitably maintaining the display frame rate of the virtual object. .
  • FIG. 10 schematically shows the process in the above-described flow.
  • FIG. 10 schematically shows that the display resolution and the display format (wire frame display) of the spherical virtual object to be displayed are changed according to the display area of the virtual object. For example, when the display area of the virtual object is large, the display resolution is low, and a spherical virtual object 806a is displayed by wire frame display. When the display area is medium, a virtual object 806b having a display resolution higher than that of the virtual object 806a and having a polygon shape very similar to a spherical shape is displayed. Furthermore, when the display area is small, the display resolution is higher than that of the virtual object 806b, and a virtual object 806c having a spherical shape is displayed.
  • the display processing amount of the virtual object may increase, the processing capacity of the information processing apparatus 1 may not be enough, and the display frame rate may be reduced. Therefore, in the present embodiment, the display area of the virtual object that causes the increase in the display processing amount is detected, and the display resolution or the like of the virtual object is dynamically changed according to the detected display area. By doing this, according to the present embodiment, it is possible to secure a margin in the processing capability of the information processing apparatus 1 before the display frame rate decreases, and to avoid the occurrence of the decrease in the display frame rate.
  • the display resolution or the like of the virtual object is dynamically changed according to the display area.
  • the display resolution or the like of the virtual object may be changed according to the other display processing amount of the virtual object.
  • the display resolution or the like of the virtual object is changed according to the number of virtual objects to be displayed.
  • the display processing amount in the information processing apparatus 1 changes in accordance with the number of displayed virtual objects. Therefore, when displaying a large number of virtual objects, the display processing amount may increase, the processing capacity of the information processing apparatus 1 may not be enough, and the display frame rate may decrease.
  • the display resolution or the like of the virtual object is changed according to the number of display of the virtual object which causes the reduction of the display frame rate of the virtual object. Therefore, according to the present modification, it is possible to secure a margin in the processing capability of the information processing device 1 and to avoid a decrease in the display frame rate of the virtual object.
  • FIG. 11 is an explanatory diagram for describing an example of processing according to a modification of the second embodiment, and in detail, the display resolution of a spherical virtual object to be displayed or the It shows schematically that the display format (wire frame display) is changing.
  • the display format wireless frame display
  • the display resolution is low
  • a spherical virtual object 808a is displayed by wire frame display.
  • the virtual object 808 b has a display resolution higher than that of the virtual object 808 a and has a polygon shape very similar to a sphere. Is displayed.
  • the number of displays is small (for example, less than 3)
  • the display resolution is higher than that of the virtual object 808 b, and a virtual object 808 c having a spherical shape is displayed.
  • the display processing amount in the information processing apparatus 1 changes in accordance with the type of the virtual object (text data, object, moving image, symbol, etc.), display of the virtual object in accordance with the type of virtual object The resolution etc. may be changed. Specifically, when the virtual object is a moving image, the display processing amount is larger than when the virtual object is a symbol. Therefore, in the present modification, when the virtual object is a moving image, the display resolution or the like of the virtual object is lowered.
  • the display processing amount in the information processing apparatus 1 changes according to the movement speed of the virtual object, so the virtual object according to the movement speed You may change the display resolution etc. of. Specifically, when the virtual object moves at high speed, the display processing amount increases compared to when the virtual object moves at low speed. So, in this modification, when a virtual object moves at high speed, the display resolution etc. of a virtual object are lowered.
  • the display resolution or the like of the virtual object is dynamically changed according to the display distance or the like of the virtual object.
  • the display resolution or the like of the virtual object may be dynamically changed according to not only the display processing amount of the virtual object as described above, but also the processing state by the control unit 10. .
  • the processing in the information processing apparatus 1 increases.
  • the processing capacity of the information processing apparatus 1 may not be sufficient, and the display frame rate may be reduced.
  • FIG. 12 is an explanatory diagram for explaining a display example of the virtual object 810 according to the present embodiment, and in detail, shows the virtual object 810 displayed superimposed on the real space.
  • the user 700 extends his / her hand 702 with respect to a virtual object 810 displayed in front of the user 700.
  • the virtual object 810 is positioned behind the hand 702 of the user 700 in order to make the virtual object 810 appear to the user 700 as if it were a real object existing in real space.
  • the virtual object 810 is displayed such that the hand 702 of the user 700 is located in front of the virtual object 810 and shields part of the virtual object 810.
  • the information processing apparatus 1 performs display processing as follows in order to display the virtual object 810 whose hand is shielded. First, the information processing apparatus 1 acquires the shape of a virtual object defined by an application for displaying a virtual object, and the image of the hand 702 captured by the outward camera 120 or the like. Next, the information processing apparatus 1 generates a virtual object 810 having a shape obtained by extracting the portion shielded by the hand 702 from the shape of the virtual object defined above using the acquired information, and the generated virtual object Display 810. Such display processing has a large display processing amount and causes a large load on the information processing apparatus 1, and thus the display frame rate of the virtual object is lowered.
  • the display frame rate is detected as an index indicating the processing state of the information processing apparatus 1. Specifically, when the display frame rate of the virtual object is high, it indicates that the processing capability of the information processing apparatus 1 has a margin, while when the display frame rate is low, the processing capability of the information processing device 1 Indicates that there is no room. That is, the display frame rate can be used as an index indicating the processing state of the information processing device 1.
  • the display frame rate is referred to as FPS (Frames Per Second) in the following description. Therefore, in the present embodiment, the display resolution or the like of the virtual object 810 is dynamically changed according to the FPS. Specifically, when the FPS is high, this means that the processing capability of the information processing apparatus 1 has a margin, and thus the display resolution of the virtual object can be set high. On the other hand, when the FPS is low, which means that there is a margin in the processing capability of the information processing apparatus 1, the display resolution or the like of the virtual object is set low.
  • FPS Fres Per Second
  • the decrease in FPS is directly detected, and the display resolution of the virtual object or the like is changed according to the detected FPS to secure a margin in the processing capability of the information processing apparatus 1.
  • a drop in FPS in future display frames can be avoided.
  • the detailed configuration of the information processing apparatus 1 according to the third embodiment is the same as that of the first embodiment, and thus the description thereof is omitted here.
  • FIG. 13 is a flowchart showing a process flow according to the present embodiment.
  • FIG. 14 is an explanatory diagram for describing an example of processing according to the present embodiment.
  • the information processing method according to the present embodiment includes a plurality of steps from step S300 to step S328. The details of each step included in the information processing method according to the present embodiment will be described below. In the following description, only differences from the first embodiment will be described, and descriptions of points in common with the first embodiment will be omitted.
  • the information processing apparatus 1 starts display processing of a virtual object. The flow described below is performed for each display frame of the virtual object to be displayed, and is repeated each time the display frame changes.
  • Step S300 The information acquisition unit 100 acquires information on the user 700 or various conditions around the user 700 using the detection result detected by the sensor unit 12. In addition, the information acquisition unit 100 acquires a display processing speed indicating the state of processing of the information processing device 1. Furthermore, the information acquisition unit 100 may also acquire other device profiles (for example, recognition frame rates in various recognition engines described above, etc.), that is, the device profiles acquired by the information acquisition unit 100 are information processing The information is not particularly limited as long as the information indicates the processing state of the device 1.
  • Step S302 The display parameter calculation unit 102 calculates the FPS of the virtual object based on the display processing speed acquired in step S300.
  • Step S304 The display format determination unit 104 determines whether the difference between the previously calculated FPS and the currently calculated FPS in step S302 exceeds a predetermined range (for example, 10). For example, when the display type determination unit 104 determines that the difference exceeds 10, the process proceeds to step S304. On the other hand, when the display type determination unit 104 determines that the difference is 10 or less, the process proceeds to step S326.
  • a predetermined range for example, 10
  • Step S306 The display format determination unit 104 compares the FPS calculated in step S302 with a threshold value ⁇ set in advance. Specifically, when the display format determination unit 104 determines that the calculated FPS is ⁇ (for example, 60) or more, the process proceeds to step S308. On the other hand, if it is determined that the calculated FPS is less than ⁇ , the process proceeds to step S312.
  • Step S308, Step S310 The same processes as steps S104 and S106 of the first embodiment shown in FIG. 6A are performed.
  • Step S312 The display format determination unit 104 compares the FPS calculated in step S302 with threshold values ⁇ and ⁇ set in advance. Specifically, when the display type determination unit 104 determines that the calculated FPS is less than ⁇ and not less than ⁇ (for example, 30), the process proceeds to step S314. On the other hand, if it is determined that the calculated FPS is less than ⁇ , the process proceeds to step S318.
  • Step S314, Step S316 Processing similar to steps S110 and S112 of the first embodiment shown in FIG. 6A is performed.
  • Step S318) The display format determination unit 104 compares the FPS calculated in step S302 with threshold values ⁇ and ⁇ set in advance. Specifically, when the display type determination unit 104 determines that the calculated FPS is less than ⁇ and ⁇ (eg, 20) or more, the process proceeds to step S320. On the other hand, when it is determined that the calculated FPS is less than ⁇ , the process proceeds to step S324.
  • Step S320 The same processing as step S116 of the first embodiment shown in FIG. 6A is performed as step S320, and the same processing as step S130 of the first embodiment shown in FIG. 6B is performed as step S324.
  • Step S326 The display format determination unit 104 maintains the previously set display resolution and effect processing.
  • Step S328 The same process as step S132 of the first embodiment shown in FIG. 6B is performed.
  • various settings such as the display resolution according to the difference between the previously calculated FPS and each display frame of the virtual object. It is not limited to For example, various settings are changed when a predetermined time has elapsed since the previous setting, when movement of the user 700 is detected, or when it is detected that the display position of the virtual object deviates from the visual range of the user 700. You may decide whether to let it go.
  • the values of the thresholds ⁇ , ⁇ and ⁇ shown in FIG. 13 described above, the display resolution to be set and the contents of the effect processing are the above-mentioned values and the like. It is not limited to In the present embodiment, it is possible to select appropriately as long as it is possible to preferably maintain the display quality of the virtual object viewed from the user 700 while suitably maintaining the FPS of the virtual object.
  • FIG. 14 schematically shows the process in the above-described flow.
  • FIG. 14 schematically shows that the display resolution of the virtual object of the human image is changed according to the FPS.
  • the FPS when the FPS is high, a virtual object 812a having a high display resolution is displayed.
  • a virtual object 812 b having a display resolution lower than that of the virtual object 812 a is displayed.
  • a virtual object 812 c having a display resolution lower than that of the virtual object 812 b is displayed.
  • the present embodiment it is possible to determine whether or not the processing capability of the information processing apparatus 1 has a margin by the FPS, so that the display resolution of the virtual object etc. is dynamically made according to the FPS. Change to Therefore, according to the present embodiment, it is possible to secure a margin in the processing capability of the information processing apparatus 1 and to avoid the decrease in FPS in the future display frame.
  • the processing ability of the information processing apparatus 1 (the control unit 10) is distributed to at least display processing of a virtual object and recognition processing by a recognition engine for recognizing various states such as the surroundings of the user 700. If it does, the display detail of the virtual object may be changed according to the state of the processing power distributed to the recognition processing. Further, when the ratio of the processing capacity of the information processing apparatus 1 distributed to the display process and the recognition process changes in response to the request of the user 700, etc., the display of virtual objects according to the ratio distributed to each of them The degree of detail may be changed.
  • the display resolution of the virtual object is changed according to the FPS, but the display resolution of the virtual object is dynamically changed according to the information on the processing status obtained from the device profile.
  • the recognition frame rate by the recognition engine for recognizing the user 700 or various conditions around the user 700 is acquired from the device profile, and the display resolution of the virtual object is dynamically changed according to the recognition frame rate.
  • the display resolution of the virtual object is dynamically changed according to the FPS.
  • the present invention is not limited to changing the display resolution, and other display detail levels of the virtual object may be changed.
  • various examples of the display detail of the virtual object will be described as a modification of the present embodiment.
  • Modification 1 In the first modification, shading processing is dynamically changed as effect processing of a virtual object in accordance with FPS. The details of this modification will be described below with reference to FIG. FIG. 15 is an explanatory diagram for describing an example of a process according to the first modification.
  • the virtual object is displayed by the phone shading method, for example.
  • the phone shading method shading calculation in a virtual object is performed using a reflection model of light on a three-dimensional object surface, and colors and the like of each pixel for displaying the virtual object are set based on the shading calculation.
  • the virtual object 814a is displayed as if it were a real object existing in the real space.
  • the amount of processing (load) in the information processing apparatus 1 is high. Therefore, in the present modification, when there is room in the processing capability of the information processing apparatus 1, the virtual object is displayed using the phone shading method.
  • the virtual object is displayed by, for example, the glow shading method because there is some allowance in the processing capability of the information processing apparatus 1.
  • the glow shading method shading calculation in a virtual object is performed using a reflection model of light on the surface of a virtual object having a polygon shape, and colors and the like of each pixel for displaying the virtual object are calculated based on the shading calculation.
  • the virtual object 814 b is displayed like a three-dimensional object although the visual quality is lowered compared to the virtual object 814 a.
  • the processing amount (load) in the information processing apparatus 1 is lower than that in the glow shading method. Therefore, in the present modification, when there is some allowance in the processing capability of the information processing apparatus 1, the virtual object is displayed using the glow shading method with a small load.
  • the virtual object is displayed by, for example, the flat shading method because there is not enough processing capacity of the information processing device 1.
  • Flat shading method performs shading calculation in a virtual object using the reflection model of light for each face of a rough polygon-shaped virtual object, and sets the color etc. for each face that constitutes the virtual object based on the shading calculation. .
  • the virtual object 814c has a lower quality of appearance than the virtual object 814b.
  • the flat shading method has a lower processing amount (load) in the information processing apparatus 1 than the glow shading method. It is possible to avoid the decrease in FPS.
  • Modification 2 In the second modification, according to FPS, the display format is dynamically changed from three-dimensional display to frame wire display to two-dimensional display as effect processing of a spherical virtual object. The details of this modification will be described below with reference to FIG. FIG. 16 is an explanatory diagram for describing an example of a process according to the second modification.
  • the virtual object 816 b is displayed by, for example, wire frame display because there is some allowance in the processing capability of the information processing apparatus 1. Since the virtual object 816b has a polygon shape approximating a spherical shape with a large number of vertices due to the wire frame, it looks like a three-dimensional object although its visual quality is lower than that of the virtual object 816a. Is displayed on. Such wire-frame display can reduce the display processing amount (load) as compared to the above-described three-dimensional display. Therefore, in the present modification, when there is some allowance in the processing capability of the information processing device 1, the virtual object is displayed using wireframe display with a small load.
  • the processing capability of the information processing apparatus 1 is running out of capacity, so that the spherical virtual object 816c is formed by a wire frame having a polygon shape with a smaller number of vertices compared to the virtual object 816b. indicate.
  • the display processing amount (load) can be further reduced by displaying the polygon shape with a small number of vertices as described above. Therefore, in the present modification, when the processing capability of the information processing apparatus 1 is running out, the state of the wireframe display is changed, and more specifically, the polygon shape with a smaller number of vertices with less load. View virtual objects with.
  • the virtual object 816 d when the FPS is very low, the virtual object 816 d is two-dimensionally displayed because there is not enough processing capacity of the information processing device 1.
  • the display processing amount (load) can be reduced as compared to three-dimensional display and the like.
  • the virtual object 816 d has a lower visual quality than the virtual object 816 c.
  • the processing amount (load) in the information processing device 1 is reduced by two-dimensional display, so the display frame rate decreases. Can be avoided.
  • Modification 3 In the embodiment and the modification of the present disclosure described above, the display detail of the virtual object is dynamically changed according to the display processing amount of the virtual object and the state of the processing. Furthermore, in these embodiments and modifications, the display detail of the virtual object may be dynamically changed in consideration of the state of the user 700. Therefore, as one of such modifications, Modification 3 in which the display resolution of the virtual object is changed according to the direction of the user 700's line of sight will be described with reference to FIG.
  • FIG. 17 is an explanatory diagram for describing an example of a process according to the third modification.
  • the case is considered where the display resolution of the virtual object is reduced according to the display processing amount of the virtual object and the state of processing.
  • the display resolution is increased in consideration of the fact that characters can not be deciphered as described above, the amount of display processing increases, and the processing capability of the information processing apparatus 1 has no margin, resulting in a decrease in display frame rate. It becomes.
  • the gaze direction of the user 700 is detected, and the display resolution is increased only in the portion of the virtual object 818 located ahead of the gaze.
  • control unit 10 determines that user 700 is gazing at a virtual object (second virtual object) such as character content for which a relatively high degree of identification request is required.
  • the display resolution (degree of display detail) of the virtual object may be changed to another virtual object (for example, a virtual object such as a graphic or the like for which a high identification request degree can not be determined) (first virtual object) 700 Higher than when it is determined that you are gazing.
  • the virtual object having a relatively high degree of identification request is not limited to the character content, and can be set arbitrarily.
  • the information processing apparatus 1 detects the line-of-sight direction of the user 700 using, for example, an image captured by the inward camera 122. Then, based on the detection result, the information processing apparatus 1 sets the display resolution of the portion 818a of the virtual object located ahead of the line of sight of the user 700 among the displayed low display resolution virtual objects 818 higher. . More specifically, when it is detected that the point of sight of the user 700 is in the portion 818a of the virtual object 818, the display resolution in the portion 818a is increased and the characters in the portion 818a (in the example of FIG. "Dear Mr. Smith" is made available to the user 700 for decoding.
  • the display resolution of the other portion 818 b of the virtual object 818 which is not located beyond the line of sight of the user 700 is lower than that of the portion 818 a. Therefore, although the user 700 can perceive that some characters are displayed on the portion 818b, they can not specifically decode the characters.
  • the portion 818a of the virtual object 818 desired by the user 700 is clearly displayed, and the portion 818b of the other virtual object 818 not desired by the user 700 is unclearly displayed. Therefore, according to the present modification, it is possible to maintain the display quality that allows the user 700 to easily perceive the information presented via the virtual object 818 while suppressing the display processing amount and avoiding the decrease in display frame rate. Can.
  • the information processing device 1 when the end of the line of sight of the user 700 moves to the portion 818b, the information processing device 1 reduces the display resolution of the portion 818a and increases the display resolution of the portion 818b. Further, in the present modification, when a plurality of virtual objects are displayed simultaneously, the display resolution of each virtual object may be changed according to the direction of the user 700's line of sight.
  • the present modification is not limited to changing the display resolution of the virtual object in accordance with the line of sight direction of the user 700.
  • the virtual object may be changed in accordance with the direction in which the hand 702 of the user 700 is extended.
  • the display resolution of may be changed.
  • the display detail of the virtual object may be dynamically changed according to the state of the user 700 in combination with the above-described embodiment and the like.
  • a state causing a decrease in display frame rate (FPS) of the virtual object is detected, and the display detail of the virtual object is determined according to the detection result. Dynamically change.
  • FPS display frame rate
  • the present embodiment and the like it is possible to reduce the display processing amount in the information processing apparatus 1 and to reduce the power consumption by dynamically changing the display detail of the virtual object.
  • the battery capacity can be reduced, and a more compact information processing apparatus 1 can be provided.
  • FIG. 18 is a block diagram showing an example of the hardware configuration of the information processing apparatus 900 according to an embodiment of the present disclosure.
  • the information processing apparatus 900 illustrates an example of the hardware configuration of the above-described information processing apparatus 1.
  • 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.
  • the information processing apparatus 900 further includes a display device 962, an audio output device 964, a communication interface 968, and a sensor 980. Further, the information processing apparatus 900 connects the respective constituent elements by, for example, a bus 970 as a data transmission path.
  • CPU 950 A control unit (for example, the above-described control unit) which controls the entire information processing apparatus 900.
  • the CPU 950 includes, for example, one or more processors including various arithmetic circuits such as a CPU and a GPU, and various processing circuits. Act as 10).
  • the CPU 950 functions as, for example, the information acquisition unit 100, the display parameter calculation unit 102, the display format determination unit 104, and the output control unit 106 described above.
  • the ROM 952 stores programs used by the CPU 950, control data such as calculation parameters, and the like.
  • the RAM 954 temporarily stores, for example, a program or the like executed by the CPU 950.
  • 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.
  • the recording medium 956 may be removable from the information processing apparatus 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 Universal Serial Bus (USB) terminal, a Digital Visual Interface (DVI) terminal, a High-Definition Multimedia Interface (HDMI) (registered trademark) terminal, various processing circuits, and the like.
  • USB Universal Serial Bus
  • DVI Digital Visual Interface
  • HDMI High-Definition Multimedia Interface
  • the operation input device 960 functions as, for example, the operation input unit 22 described above, and 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 included in the information processing apparatus 900, and is connected to the input / output interface 958 inside the information processing apparatus 900.
  • the display device 962 for example, a liquid crystal display, an organic electro-luminescence display (Organic Electro-Luminescence Display), and the like can be given.
  • 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 also be connected to an external device such as an external operation input device (for example, a keyboard or a mouse) of the information processing apparatus 900 or an external display device.
  • an external 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 externally attached to the information processing apparatus 900.
  • the drive reads out the information recorded in the mounted removable recording medium and outputs it to the RAM 954.
  • the drive can also write a record on the attached removable recording medium.
  • the communication interface 968 functions as the communication unit 20 for performing wireless or wired communication with another external device, for example, via a communication network (not shown) (or directly).
  • a communication antenna and an RF (Radio Frequency) circuit wireless communication
  • an IEEE 802.15.1 port and a transmitting / receiving circuit wireless communication
  • an IEEE 802.11 port and a transmitting / receiving circuit wireless communication
  • a LAN (Local Area Network) terminal and a transmission / reception circuit wireless communication
  • the sensor 980 functions as the sensor unit 12 described above. Furthermore, the sensor 980 may further include various sensors such as an illumination sensor.
  • each component described above may be configured using a general-purpose member, or may be configured by hardware specialized to the function of each component. Such configuration may be changed as appropriate depending on the level of technology to be implemented.
  • the information processing apparatus 900 does not include the communication interface 968 when communicating with an external apparatus or the like via the connected external communication device, or when performing a process in a standalone manner. It is also good.
  • the communication interface 968 may have a configuration capable of communicating with one or more external devices by a plurality of communication methods.
  • the information processing apparatus 900 can also be configured not to include the recording medium 956, the operation input device 960, and the like, for example.
  • the information processing apparatus 900 according to the present embodiment is applied to a system including a plurality of apparatuses on the premise of connection to a network (or communication between respective apparatuses), such as cloud computing, for example. Good. That is, the information processing apparatus 900 according to the present embodiment described above can be realized, for example, as an information processing system that performs processing according to the information processing method according to the present embodiment by a plurality of apparatuses.
  • the embodiments described above can include, for example, a program for causing a computer to function as the information processing apparatus according to the present embodiment, and a non-transitory tangible medium in which the program is recorded.
  • the above program may be distributed via a communication line (including wireless communication) such as the Internet.
  • each step in the process of each embodiment described above may not necessarily be processed in the order described.
  • each step may be processed in an appropriate order.
  • each step may be processed partially in parallel or individually instead of being processed chronologically.
  • the processing method of each step may not necessarily be processed in accordance with the described method, for example, may be processed in another manner by another functional block.
  • Information that includes a control unit that detects a state that causes a decrease in display frame rate of a virtual object presented to a user, and dynamically changes the display detail of the virtual object according to the detected result Processing unit.
  • the control unit dynamically changes the display detail of the virtual object in accordance with the detected display processing amount of the virtual object.
  • the control unit changes the display detail degree of the virtual object in accordance with a display distance from the user to a display position of the virtual object.
  • the control unit increases the display detail level more than when the display distance is a second distance smaller than the first distance.
  • the information processing apparatus may increase the display area of the virtual object when the display distance is the first distance than when the display distance is the second distance.
  • the information processing apparatus according to (6)
  • the display device further includes a display unit for displaying the virtual object, and the control unit changes the display detail of the virtual object according to a ratio of a display area of the virtual object to a display area of the display unit.
  • the information processing apparatus according to (2).
  • the information processing apparatus wherein the control unit changes the display detail level of the virtual object in accordance with the number of displayed virtual objects.
  • control unit dynamically changes the display detail degree of the virtual object in accordance with the detected processing state of the control unit.
  • control unit changes the display detail degree of the virtual object in accordance with the display frame rate of the virtual object.
  • control unit changes the display detail level of the virtual object in accordance with a recognition frame rate that recognizes a state of the user or the user's surroundings.
  • the control unit distributes the processing capability of the control unit to at least processing of display of the virtual object and processing of recognition, and the virtual object is distributed according to the processing capability distributed to the processing of recognition.
  • the virtual object includes a first virtual object and a second virtual object having a higher degree of identification request than the first virtual object, and the control unit is configured to execute the second virtual object. When it is determined that the user is gazing, the display detail degree of the second virtual object is made higher than when it is determined that the user is gazing at the first virtual object.
  • the control unit changes a shading process for the virtual object, changes a state of wire frame display of the virtual object, changes between two-dimensional display and three-dimensional display of the virtual object
  • the information processing apparatus is a wearable apparatus attached to the head of the user, and further including a display unit positioned in front of the user's eyes when attached.
  • the display unit is a transmissive display, and the display unit displays the virtual object superimposed on a real space.
  • Information processing including detecting a state causing a decrease in display frame rate of a virtual object presented to a user, and dynamically changing the display detail of the virtual object according to the detected result Method.
  • Information processing including detecting a state causing a decrease in display frame rate of a virtual object presented to a user, and dynamically changing the display detail of the virtual object according to the detected result Method.
  • a control unit that detects a state causing a decrease in display frame rate of a virtual object presented to the user and causes the computer to dynamically change the display detail of the virtual object according to the detected result A program that works.
  • control unit 12 sensor unit 14 storage unit 16, 16A, 16B display unit 18 speaker 20 communication unit 22 operation input unit 100 information acquisition unit 102 display parameter calculation unit 104 display format determination unit 106 output control unit 120 Outward camera 122 Inward camera 124 Microphone 126 Gyro sensor 128 Acceleration sensor 130 Orientation sensor 132 Positioning unit 134 Biometric sensor 600 Marker 602 Wall 604 Car 700 User 702 Hand 800, 802a-c, 804a-b, 806a-c, 808a ⁇ C, 810, 812a-c, 814a-c, 816a-d, 818 virtual object 818a, b part 950 CPU 952 ROM 954 RAM 956 recording medium 958 input / output interface 960 operation input device 962 display device 964 audio output device 968 communication interface 970 bus 980 sensor

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Geometry (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Optics & Photonics (AREA)
  • User Interface Of Digital Computer (AREA)
  • Digital Computer Display Output (AREA)
  • Image Generation (AREA)
  • Studio Devices (AREA)

Abstract

【課題】仮想オブジェクトの表示フレームレートの低下を避けることが可能な情報処理装置、情報処理方法及びプログラムを提供する。 【解決手段】ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させる制御部を備える、情報処理装置を提供する。

Description

情報処理装置、情報処理方法及びプログラム
 本開示は、情報処理装置、情報処理方法及びプログラムに関する。
 近年、情報処理技術および表示技術の発展に伴い、現実感のある映像を表示する技術が提供されるようになってきている。このような技術として、拡張現実(AR:Augmented Reality)技術がある。AR技術は、実世界に付加的な情報を重畳してユーザに提示する技術であり、AR技術によりユーザに提示される情報は、アノテーションとも呼ばれ、テキスト、アイコン又はアニメーション等、様々な形態の仮想オブジェクトとして可視化される。
 上述のようなAR技術は、例えば、ユーザの頭部等に装着されるヘッドマウントディスプレイ(Head Mounted Display:以下、「HMD」と称する)等により具現化される。詳細には、HMDは、ユーザに装着された際にユーザの眼前に位置するディスプレイを有し、ユーザの眼前に上述の仮想オブジェクトを表示する。このようなHMDには、上記ディスプレイが非透過である非透過型と、上記ディスプレイが透過する透過型とがある。ディスプレイが透過型であった場合、上述の仮想オブジェクトは、ディスプレイを介してユーザが視認する実空間に重畳されるようにリアルタイムで表示される。AR技術によれば、このように仮想オブジェクトを表示することにより、ユーザに対して、仮想オブジェクトをあたかも実空間に存在する現実物体のように知覚させることができる。例えば、このような透過型のディスプレイを用いたHMDは、下記の特許文献1及び2に開示されている。さらに、これらHMDは、ユーザの頭部等に装着されることから、コンパクトな形態を有している。
特開2016-208380号公報 特開2016-157458号公報
 一般的に、情報処理装置に搭載されるバッテリの容量には制限があり、それに伴いプロセッサ等の処理能力についても制限がある。従って、情報処理装置において、仮想オブジェクトの表示処理量が増加し、プロセッサの処理能力に余裕がなくなった場合、仮想オブジェクトの表示フレームレート等が低下することがある。なお、上述の仮想オブジェクトの表示処理量とは、仮想オブジェクトを表示する際に、CPU(Central Processing Unit)やGPU(Graphics Processing Unit)において行われる処理の量を意味する。
 そこで、本開示では、仮想オブジェクトの表示フレームレートの低下を避けることが可能な、新規且つ改良された情報処理装置、情報処理方法及びプログラムを提案する。
 本開示によれば、ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させる制御部を備える、情報処理装置が提供される。
 また、本開示によれば、ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させることを含む、情報処理方法が提供される。
 さらに、本開示によれば、コンピュータを、ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させる制御部として機能させる、プログラムが提供される。
 以上説明したように本開示によれば、仮想オブジェクトの表示フレームレートの低下を避けることが可能な情報処理装置、情報処理方法及びプログラムを提供することができる。
 なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
本開示の第1の実施形態に係る情報処理装置1の概要構成を説明するための図である。 同実施形態に係る情報処理装置1の詳細構成の一例を示すブロック図である。 同実施形態に係る仮想オブジェクト800の表示例を説明するための説明図(その1)である。 同実施形態に係る仮想オブジェクト800の表示例を説明するための説明図(その2)である。 同実施形態に係る仮想オブジェクト800の表示例を説明するための説明図(その3)である。 同実施形態に係る処理フローを示すフローチャート(その1)である。 同実施形態に係る処理フローを示すフローチャート(その2)である。 同実施形態に係る処理の一例を説明するための説明図(その1)である。 同実施形態に係る処理の一例を説明するための説明図(その2)である。 本開示の第1の実施形態に係る処理フローを示すフローチャート(その1)である。 同実施形態に係る処理フローを示すフローチャート(その2)である。 同実施形態に係る処理の一例を説明するための説明図である。 同実施形態の変形例に係る処理の一例を説明するための説明図である。 本開示の第3の実施形態に係る仮想オブジェクト810の表示例を説明するための説明図である。 同実施形態に係る処理フローを示すフローチャートである。 同実施形態に係る処理の一例を説明するための説明図である。 同実施形態の変形例1に係る処理の一例を説明するための説明図である。 同実施形態の変形例2に係る処理の一例を説明するための説明図である。 同実施形態の変形例3に係る処理の一例を説明するための説明図である。 本開示の一実施形態に係る情報処理装置900のハードウェア構成の一例を示したブロック図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 また、本明細書及び図面において、実質的に同一又は類似の機能構成を有する複数の構成要素を、同一の符号の後に異なる数字を付して区別する場合がある。ただし、実質的に同一又は類似の機能構成を有する複数の構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。また、異なる実施形態の類似する構成要素については、同一の符号の後に異なるアルファベットを付して区別する場合がある。ただし、類似する構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。
 なお、以下の説明においては、「表示フレームレート」は、仮想オブジェクトの表示において、単位時間あたりに処理されるフレーム数(コマ数)を意味する。また、「認識フレームレート」は、所定の情報を認識する処理において、単位時間あたりに当該情報を検出するサンプリング回数を意味する。
 なお、説明は以下の順序で行うものとする。
 1.本開示の実施形態に係る情報処理装置の概要構成
 2.本開示の技術的背景
 3.第1の実施形態
  3.1.第1の実施形態に係る情報処理装置の詳細構成
  3.2.第1の実施形態に係る仮想オブジェクトの表示例
  3.3.第1の実施形態に係る情報処理方法
 4.第2の実施形態
  4.1.第2の実施形態に係る情報処理方法
  4.2.第2の実施形態の変形例
 5.第3の実施形態
  5.1.第3の実施形態に係る情報処理方法
  5.2.第3の実施形態の変形例
 6.まとめ
 7.ハードウェア構成について
 8.補足
  <<1.本開示の実施形態に係る情報処理装置の概要構成>>
 まず、本開示の実施形態に係る情報処理装置の概要について、図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である場合を例に挙げて説明する。
  <<2.本開示の技術的背景>>
 以上、本実施形態に係る情報処理装置1の概要について説明した。続いて、このような情報処理装置1における技術的背景を説明する。
 先に説明したように、本実施形態に係る情報処理装置1は、実空間に仮想オブジェクトを重畳表示する。そして、ユーザ700と情報処理装置1との間のインタラクションは、重畳表示された仮想オブジェクトを介して行うことが可能である。より具体的には、情報処理装置1は、ユーザ700の眼前に仮想オブジェクトを表示することにより、ユーザ700に所定の情報を提示することができる。さらに、ユーザ700は、仮想オブジェクトに触れる等の動作を行うことにより、情報処理装置1に対して操作を行うことができる。
 さらに、表示される仮想オブジェクトは、仮想オブジェクトを介したユーザ700と情報処理装置1とのリアルタイムのインタラクションの実現をすべく、好適な表示形態、表示位置、及び表示タイミング等を持って表示される。このように表示することにより、ユーザ700は、仮想オブジェクトをあたかも実空間に存在する現実物体のように知覚することができ、ユーザ700は、直感的に仮想オブジェジェクトを介して情報処理装置1から提供される情報を理解することができる。さらに、ユーザ700は、情報処理装置1に対するインタラクションの方法を、仮想オブジェクトを介して直感的に理解し、当該仮想オブジェクトを利用して情報処理装置1に対して容易に操作を行うことができる。
 しかしながら、仮想オブジェクトが好適なタイミングで表示されない表示フレームレートの低下や、フレーム落ちのようなスムーズではない仮想オブジェクトの表示が生じた場合には、仮想オブジェクトによりユーザ700に与えられる体験は、混乱等を生じさせる。その結果、ユーザ700と情報処理装置1との間には、仮想オブジェクトを介したリアルタイムのインタラクションの実現が難しくなる。言い換えると、仮想オブジェクトを介したユーザ700と情報処理装置1との間におけるリアルタイムのインタラクションの実現のためには、表示フレームレートの低下等を避けることが求められる。なお、上述のフレーム落ちとは、例えば、仮想オブジェクトが、現実物体と異なり、不自然に断続的に表示されていることをユーザ700が知覚することができるような表示状態であることを意味する。「フレーム落ち」は、「コマ落ち」とも呼ばれ、本来表示されるべきフレームが表示されずにスキップして、次に表示されるべきフレームが表示されることにより起きる。また、以下の説明においては、表示フレームレートの低下に、上記フレーム落ちが含まれるものとする。
 ところで、上述のようなHMD等からなる情報処理装置1は、ユーザ700の頭部に装着されることから、コンパクトな形態を有している。情報処理装置1をコンパクトな形態にするために、情報処理装置1に搭載されるバッテリの容量には制限があり、それに伴いプロセッサ等の処理能力や処理による発熱許容量等についても制限が生じる。例えば、上述のような情報処理装置1においては、仮想オブジェクトの表示処理量が増加し、情報処理装置1の処理能力に余裕がなくなった場合、表示フレームレートの低下が生じることがある。言い換えると、情報処理装置1の処理能力に余裕がない状況においては、表示フレームレートの低下やフレーム落ち等が生じることがある。このような場合、表示フレームレートの低下等に起因して、仮想オブジェクトによりユーザ700に与えられる体験は不快感や混乱を生じさせ、仮想オブジェクトを介したユーザ700と情報処理装置1との間におけるリアルタイムのインタラクションの実現が難しくなる。
 上述した表示フレームレートの低下は、透過型ディスプレイを有するスマートアイグラスである情報処理装置1以外にも、非透過型ディスプレイを有するHMDである情報処理装置1でも生じ得る。例えば、このような情報処理装置1においては、外向きカメラ120により撮像された実空間の撮像画像をリアルタイムに表示部16に表示しつつ、仮想オブジェクトを上記撮像画像に重畳表示する際に、仮想オブジェクトの表示フレームレートの低下が生じ得る。
 そこで、上述のような技術背景を鑑みて、本発明者らは、仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、仮想オブジェクトの表示詳細度を動的に変化させる本開示の実施形態に係る情報処理装置1を創作するに至った。詳細には、当該情報処理装置1は、仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知した場合には、仮想オブジェクトの表示詳細度を変化させて情報処理装置1の処理能力において余裕を確保することにより、仮想オブジェクトの表示フレームレートの低下を避ける。その結果、当該情報処理装置1によれば、仮想オブジェクトを介したユーザ700と情報処理装置1との間におけるリアルタイムのインタラクションを実現することができる。なお、以下の説明においては、表示詳細度は、表示解像度等の表示の精細さを示す指標の総称を意味する。
  <<3.第1の実施形態>>
 以上、本開示の技術的背景について説明した。続いて、本開示の第1の実施形態について説明する。本実施形態においては、情報処理装置1は、仮想オブジェクトの表示処理量として仮想オブジェクトの表示位置を検知し、検知した表示位置に応じて、仮想オブジェクトの表示詳細度として表示解像度(表示のおける画素密度の指標)やエフェクト処理(表示に対して行う加工処理、例えば、シェーディング処理等)を動的変化させる。
 例えば、ユーザ700から遠い位置に仮想オブジェクトが表示される場合には、実空間に存在する現実物体と同様に、仮想オブジェクトは小さく表示される。一方、ユーザ700から近い位置に仮想オブジェクトが表示される場合には、実空間に存在する現実物体と同様に、仮想オブジェクトは大きく表示される。そして、仮想オブジェクトの大きさに従って情報処理装置1における表示処理量は変化する。例えば、大きな仮想オブジェクトを表示させる際、仮想オブジェクトの表示処理量が増加し、情報処理装置1の処理能力に余裕がない状況になった場合には、表示フレームレートの低下を生じることがある。そこで、本実施形態においては、仮想オブジェクトの表示フレームレートの低下を生じさせる状態、すなわち、仮想オブジェクトの表示フレームレートの低下の原因ともなる仮想オブジェクトの表示位置を検知する。さらに、本実施形態においては、検知した表示位置に応じて仮想オブジェクトの表示解像度を変化させる。言い換えると、本実施形態においては、仮想オブジェクトのユーザ700からの表示距離が第1の距離である場合には、上記表示距離が上記第1の距離よりも小さい第2の距離であるような他の仮想オブジェクトよりも、表示詳細度を大きくする。このようにすることで、本実施形態によれば、情報処理装置1の処理能力において余裕を確保し、仮想オブジェクトの表示フレームレートの低下を避ける。
 なお、以下の説明においては、仮想オブジェクトがユーザ700に非常に近い位置に表示される場合(例えば、ユーザ700から仮想オブジェクトの表示位置までの距離が0.8m未満である場合)には、仮想オブジェクトによる視覚疲労や「映像酔い」を防ぐために、仮想オブジェクトを半透明化する、又は、消去するというエフェクト処理を行う。
   <3.1.第1の実施形態に係る情報処理装置の詳細構成>
 まずは、本実施形態に係る情報処理装置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は、仮想オブジェクトの表示位置等に応じて、仮想オブジェクトの表示解像度等を動的に変化させるように制御する。詳細には、本実施形態に係る制御部10は、図2に示すように、情報取得部100、表示パラメータ計算部102、表示形式判断部104、及び出力制御部106として機能することができる。以下に、制御部10の各ブロックの詳細について説明する。
 -情報取得部100-
 情報取得部100は、後述するセンサ部12により検知された検知結果を用いてユーザ700又は当該ユーザ700の周囲の各種状態に関する情報を取得することができる。具体的には、情報取得部100は、例えば、ユーザ700の姿勢や状態を認識するユーザ姿勢認識エンジン、ユーザ700周辺の実空間におけるデプス情報を認識するデプス認識エンジン、ユーザ700の位置を同定するSLAM(Simultaneous Localization And Mapping)認識エンジンを含むことができる。さらに、情報取得部100は、ユーザ700の視線検知を行う視線認識エンジン、ユーザ700又はユーザ700の周囲の環境音の認識を行う音声認識エンジン、及び、情報処理装置1(ユーザ700)の絶対位置を認識する位置認識エンジン等を含むこともできる。また、情報取得部100は、実空間における現実物体を認識する実オブジェクト認識エンジン等を含んでもよい。なお、これらの認識エンジンはあくまでも一例であり、本実施形態はこれに限定されるものではない。
 詳細には、ユーザ姿勢認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700の頭部等の姿勢(身体に対する顔の向き、又は、傾きを含む)を認識する。例えば、ユーザ姿勢認識エンジンは、外向きカメラ120により撮像された撮像画像や、後述するジャイロセンサ126により取得されたジャイロ情報等を利用して、ユーザ700の姿勢等を認識する。また、ユーザ姿勢認識エンジンは、後述する加速度センサ128により取得された加速度情報や、後述する方位センサにより取得された方位情報等を利用して、ユーザ700の姿勢等を認識してもよい。なお、ユーザ700の姿勢等の認識アルゴリズムは一般的に知られているアルゴリズムを用いることができ、本実施形態においては特に限定されるものではない。
 デプス認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700の周囲の実空間におけるデプス情報を認識する。具体的には、デプス認識エンジンは、ToF(Time of Flight)方式を利用して、現実物体からの反射光の戻り時間の測定結果に基づいて、実空間におけるセンサ部12と現実物体との間の距離及び凹凸等の形状情報(デプス情報)を認識することができる。また、デプス認識エンジンは、複数の外向きカメラ120による異なる視点から同一の実空間を撮像対象とした複数の撮像画像上での現実物体の違い(両眼視差)に基づいて、実空間における現実物体の位置及び形状を認識してもよい。なお、デプス情報の認識アルゴリズムについては一般的に知られているアルゴリズムを用いることができ、本実施形態においては特に限定されるものではない。
 SLAM認識エンジンは、センサ部12により検知された検知結果を用いて、情報処理装置1(ユーザ700)の自己位置の推定とユーザ700の周囲の実空間の地図作成を同時に行い、当該実空間における情報処理装置1の位置を同定する。例えば、SLAM認識エンジン(特に、Visual SLAM)は、外向きカメラ120により撮像された撮像画像に基づき、撮像された現実物体の3次元形状を逐次的に復元する。そして、SLAM認識エンジンは、復元結果を外向きカメラ120の位置及び姿勢の検知結果と関連付けることで、ユーザ700の周囲の実空間の地図の作成と、当該実空間における外向きカメラ120(ユーザ700)の位置及び姿勢の推定とを行う。なお、外向きカメラ120の位置及び姿勢については、例えば、センサ部12に設けられた加速度センサ128等の各種センサにより検知された検知結果に基づき、相対的な変化を示す情報として推定することも可能である。また、SLAM認識のアルゴリズムについては一般的に知られているアルゴリズムを用いることができ、本実施形態においては特に限定されるものではない。
 なお、情報取得部100は、上述したデプス認識エンジンの認識結果及びSLAM認識エンジンの認識結果の両方に基づいて、空間認識(空間把握)を行い、ユーザ700の周囲の3次元の実空間における情報処理装置1(ユーザ700)の詳細位置を認識することもできる。
 視線認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700の視線検知を行う。例えば、視線認識エンジンは、内向きカメラ122により取得したユーザ700の眼球の撮像画像を解析して、ユーザ700の視線方向を認識する。なお、本実施形態においては、視線検知のアルゴリズムについては特に限定されるものではないが、例えば、目頭と虹彩の位置関係、又は、角膜反射と瞳孔の位置関係に基づいて、ユーザ700の視線方向を認識することが可能である。
 音声認識エンジンは、センサ部12により検知された検知結果を用いて、ユーザ700、又は、ユーザ700の周囲の環境音の認識を行う。例えば、音声認識エンジンは、後述するマイク124により取得した収音情報に対してノイズ除去や音源分離等を行い、音声認識、形態素解析、音源認識、又は、騒音レベルの認識等を行うことが可能である。また、音声認識エンジンは、認識された音声情報から、所定の文言を抽出してもよい。
 位置認識エンジンは、センサ部12により検知された検知結果を用いて、情報処理装置1(ユーザ700)の絶対位置を認識する。例えば、位置認識エンジンは、後述する位置測位部132により測位された位置情報、及び、予め取得した地図情報に基づいて、情報処理装置1の場所(例えば駅、学校、家等)を認識することができる。
 実オブジェクト認識エンジンは、外向きカメラ120等により撮像された撮像画像等に基づいて、現実物体を認識する機能を有する。例えば、実オブジェクト認識エンジンは、外向きカメラ120により撮像された撮像画像から計算される現実物体の特徴量を、予め登録された現実物体の特徴量と照合することにより、現実物体の種類等を認識する。なお、上記特徴量は、例えば、SIFT(Scale-Invariant Feature Transform)法、又はRandom Ferns法などの公知の特徴量算出技術によって算出することができる。
 なお、情報取得部100は、情報処理装置1における処理の状態を示す装置プロファイル(例えば、表示処理速度、センサ部12の検知状態、上述した各種認識エンジンにおける認識フレームレート等)を取得してもよい。さらに、情報取得部100は、仮想オブジェクトの表示を行うアプリケーションで定義された、仮想オブジェクトの表示位置、表示面積、表示個数、表示形態(例えば、仮想オブジェクトとして表示されるコンテンツの種別、表示される仮想オブジェクトの移動速度等)を取得してもよい。
 -表示パラメータ計算部102-
 表示パラメータ計算部102は、仮想オブジェクトの表示処理量の指標等を算出する。例えば、表示パラメータ計算部102は、情報取得部100が取得した、仮想オブジェクトの表示を行うアプリケーションで定義された、仮想オブジェクトの表示位置を用いて、ユーザ700からの仮想オブジェクトの表示位置までの距離を算出する。なお、本実施形態においては、表示パラメータ計算部102は、情報取得部100が取得した装置プロファイルを用いて、仮想オブジェクトの表示フレームレート等のような制御部10における処理の状態を示す指標等を算出してもよい。
 -表示形式判断部104-
 表示形式判断部104は、表示パラメータ計算部102による算出結果に基づいて、仮想オブジェクトの表示詳細度(例えば、解像度等)を設定する。さらに、表示形式判断部104は、表示パラメータ計算部102による算出結果に基づいて、仮想オブジェクトに対して行う表示エフェクト処理(例えば、透明化、テクスチャ変更等)を設定する。なお、表示形式判断部104が表示詳細度等を設定する際に上記算出結果と比較する閾値等は、事前に仮想オブジェクトを表示する試験を行い、その表示により生じる、情報処理装置1における処理の負荷や、ユーザ700が感じる表示品質に基づいて決定される。
 -出力制御部106-
 出力制御部106は、後述する表示部16に対して、表示形式判断部104の決定に基づいて仮想オブジェクトを表示させるように制御を行う。
 (センサ部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)センサアレイにより実現されてもよい。
 -マイク124-
 マイク124は、ユーザ700の音声や周囲の環境音を収音し、収音した音声情報を制御部10に出力する。例えば、マイク124は、ユーザ700が発声した指示を収音し、制御部10に出力する。例えば、制御部10は、マイク124から出力された音声情報を解析することにより、ユーザ700の指示を認識することができる。
 -ジャイロセンサ126及び加速度センサ128-
 ジャイロセンサ126は、例えば、3軸ジャイロセンサにより実現され、ユーザ700の運動による角速度(回転速度)を検知する。また、加速度センサ128は、例えば、3軸加速度センサ(Gセンサとも呼ばれる)により実現され、ユーザ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)・スマートフォン等との送受信、又は、近距離通信等により位置を検知するデバイスであってもよい。
 -生体センサ134-
 生体センサ134は、ユーザ700の各種生体情報を検知する。具体的には、生体センサ134は、例えば、ユーザ700の身体の一部に直接的又は間接的に装着され、ユーザ700の心拍数、血圧、脳波、呼吸、発汗、筋電位、皮膚温度、皮膚電気抵抗等を測定する1つ又は複数のセンサを含む。これら生体センサ134は、検知された生体情報を制御部10に出力する。
 さらに、本実施形態に係るセンサ部12は、上述したセンサの他に、ユーザ700の周囲の環境温度を検知する温度センサ(図示省略)、ユーザ700の周囲の環境の明るさを検知する照度センサ(図示省略)等を含んでもよい。さらに、センサ部12は、ユーザ700の周囲の環境の大気圧を検知する気圧センサ(図示省略)、赤外線を検知する赤外線センサ(図示省略)、電波を検知する電波センサ(図示省略)等、様々なセンサを含んでもよい。
 (記憶部14)
 記憶部14は、上述した制御部10が各機能を実行するためのプログラムやパラメータを格納する。例えば、記憶部14は、情報取得部100による認識処理に用いる認識アルゴリズムや、表示形式判断部104で用いる各種閾値等を格納する。
 (表示部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を介して接続するクラウド上のサーバ(図示省略)において行われてもよい。
   <3.2.第1の実施形態に係る仮想オブジェクトの表示例>
 以上、本実施形態に係る情報処理装置1の詳細構成について説明した。続いて、このような情報処理装置1による仮想オブジェクトの表示例について、図3から図5を参照して説明する。図3から図5は、本実施形態に係る仮想オブジェクト800の表示例を説明するための説明図である。
 本実施形態に係る情報処理装置1は、例えば、ユーザ700が所定の動作を行ったことをセンサ部12が検知したことにより、仮想オブジェクト800を表示することができる。図3に示すように、情報処理装置1は、センサ部12により、ユーザ700が自身の足元を見るようにユーザ700の頭部が下方に向いたことを検知した場合には、ユーザ700の足元に重畳するように仮想オブジェクト800を表示する。当該仮想オブジェクト800は、ユーザ700の位置情報を示すマップの形態を持つ仮想オブジェクト800であり、詳細には、マップである仮想オブジェクト800上に仮想のマーカ600を併せて表示することにより、ユーザ700の現在位置を示している。情報処理装置1は、このような仮想オブジェクト800を実空間に重畳して表示することにより、ユーザ700に対して情報(ここでは、ユーザ700の位置情報)を提示することができる。従って、ユーザ700は、このように表示される仮想オブジェクト800を介して、情報処理装置1により提示された情報を直感的に把握することができる。
 なお、本実施形態においては、ユーザ700の頭部の向きを検知した場合だけでなく、ユーザ700の頭部の動き(例えば、首振り、うなずき等)を検知したことにより、情報処理装置1は仮想オブジェクト800を表示してもよい。さらに、情報処理装置1は、歩行、走行、停止等のユーザ700の身体全体の動作を検知したことにより、仮想オブジェクト800を表示してもよい。また、情報処理装置1は、外向きカメラ120等を利用して、ユーザ700の手の所定の動き(例えば、手をかざす、手を振る、手を伸ばす等のジェスチャ)を検知したことにより、仮想オブジェクト800を表示してもよい。
 さらに、本実施形態においては、情報処理装置1は、実空間における所定の現実物体に対してユーザ700が興味を持って見ていることをユーザ700の視線認識によって検知したことにより、仮想オブジェクト800を表示してもよい。また、情報処理装置1は、ユーザ700が所定の文言を発話したことを検知したことにより、もしくは、ユーザ700が操作入力部22に対して操作を行ったことを検知したことにより、仮想オブジェクト800を表示してもよい。
 また、本実施形態に係る情報処理装置1は、例えば、情報処理装置1が所定の状態になったことにより、仮想オブジェクト800を表示することができる。例えば、図4に示すように、情報処理装置1は、外部装置からの音声通話のための無線通信を検知したことにより、ユーザ700の周囲に位置する壁面(現実物体)602に重畳するように、電話機の形態を持つ仮想オブジェクト800を表示する。当該仮想オブジェクト800は、ユーザ700に対して音声通話を受信した旨の情報を直感的に把握させるために、電話機の形状を持っており、表示と併せて所定の着信音を出力することにより、情報処理装置1は、ユーザ700に上記情報を提示することができる。さらに、例えば、情報処理装置1は、外向きカメラ120等を利用して、ユーザ700の手702が図4に示される仮想オブジェクト800に伸びたことを検知したことにより、音声通話を行う処理に移行してもよい。
 なお、本実施形態においては、情報処理装置1が音声通話のための無線通信を検知した場合だけでなく、情報処理装置1は、ユーザ700の近傍に位置する人物が携帯する携帯端末からの無線通信を検知したことにより、仮想オブジェクト800を表示してもよい。さらに、情報処理装置1は、既に表示した仮想オブジェクト800に対するユーザ700の所定の動作(例えば、仮想オブジェクト800に触れる、つかむ等)を検知したことにより、情報処理装置1で行う処理を変化させたり、表示する仮想オブジェクトの形態を変化させたりしてもよい。
 また、本実施形態に係る情報処理装置1は、例えば、情報処理装置1(ユーザ700)が所定のエリアに入ったことを検知したことにより、仮想オブジェクト800を表示することもできる。例えば、図5に示すように、情報処理装置1は、位置測位部132により所定のエリアに入ったことを検知したことにより、ユーザ700の周囲の実空間に重畳するように、通行禁止を通知するテープの形態を持つ仮想オブジェクト800を表示する。
 なお、本実施形態においては、情報処理装置1が所定のエリアに入ったことを検知した場合だけでなく、例えば、情報処理装置1は、ユーザ700が所定の現実物体(例えば、図5においては、自動車604)に近づいたことを検知したことにより、仮想オブジェクト800を表示してもよい。
 このように、本実施形態においては、情報処理装置1が所定の状況等を検知したことにより、仮想オブジェクト800を実空間に重畳するように表示することができる。なお、仮想オブジェクト800は、内向きカメラ122等を利用して検知したユーザ700の視野範囲に基づいて、ユーザ700が確実に視認できるような位置に表示される。さらに、所定の情報を提示するための仮想オブジェクト800を表示させる際には、情報処理装置1は、当該情報に応じて適切な位置に仮想オブジェクトを表示させる。例えば、情報処理装置1が道路上に陥没が生じていることからユーザ700に対して注意喚起する情報を提示させようとする状況について説明する。この場合、情報処理装置1は、ユーザ700が陥没地点に仮想オブジェクトが位置しているよう知覚することができるように、陥没地点に仮想オブジェクト800を表示する。
   <3.3.第1の実施形態に係る情報処理方法>
 以上、本実施形態に係る仮想オブジェクト800の表示例について説明した。続いて、本実施形態に係る情報処理方法について、図6A、図6B、図7及び図8を参照して説明する。図6A及び図6Bは、本実施形態に係る処理フローを示すフローチャートである。また、図7及び図8は、本実施形態に係る処理の一例を説明するための説明図である。図6A及び図6Bに示すように、本実施形態に係る情報処理方法には、ステップS100からステップS132までの複数のステップが含まれている。以下に、本実施形態に係る方法に含まれる各ステップの詳細を説明する。
 先に説明したように、例えば、情報処理装置1は、ユーザ700が所定の動作を行った等が検知した場合には、仮想オブジェクトの表示処理を開始する。なお、以下に説明するフローは、表示する仮想オブジェクトの表示フレーム毎に行われ、表示フレームが変わるごとに繰り返されることとなる。
 (ステップS100)
 情報取得部100は、センサ部12により検知された検知結果を用いて、ユーザ700又は当該ユーザ700の周囲の各種状態に関する情報を取得する。また、情報取得部100は、仮想オブジェクトの表示を行うアプリケーションで定義された、仮想オブジェクトの表示位置等の情報を取得する。さらに、表示パラメータ計算部102は、取得した表示位置の情報に基づき、ユーザ700から仮想オブジェクトの表示位置までの表示距離を算出する。仮想オブジェクトの表示距離は、例えば、予め仮想オブジェクトの表示を行うアプリケーションで定義された表示位置と、上述したSLAM等によって取得した情報処理装置1(ユーザ700)の自己位置情報とに基づいて算出することができる。
 (ステップS102)
 表示形式判断部104は、上記ステップS100で算出された表示距離を予め設定された閾値αと比較する。具体的には、表示形式判断部104が、算出された表示距離がα(例えば、3m)以上であると判断した場合には、ステップS104へ進む。一方、算出された表示距離がα未満であると判断した場合には、ステップS108へ進む。
 (ステップS104)
 表示形式判断部104は、仮想オブジェクトの表示解像度を最高ランク(例えば、960×768ピクセル)に設定する。
 (ステップS106)
 表示形式判断部104は、表示する仮想オブジェクトに対するエフェクト処理を通常モードに設定する。例えば、通常モードにおいては、仮想オブジェクトは、実空間の現実物体のように3次元表示されるように加工処理される。
 (ステップS108)
 表示形式判断部104は、上記ステップS100で算出された表示距離を予め設定された閾値α、βと比較する。具体的には、表示形式判断部104は、算出された表示距離が、α未満、且つ、β(例えば、1.5m)以上であると判断した場合には、ステップS110へ進む。一方、算出された表示距離がβ未満であると判断した場合には、ステップS114へ進む。
 (ステップS110)
 表示形式判断部104は、仮想オブジェクトの表示解像度を高ランク(例えば、640×480ピクセル)に設定する。このように、ステップS104に比べて表示解像度を低くすることにより、表示処理量を減らすことができる。
 (ステップS112)
 表示形式判断部104は、ステップS106と同様に、表示する仮想オブジェクトに対するエフェクト処理を通常モードに設定する。
 (ステップS114)
 表示形式判断部104は、上記ステップS100で算出された表示距離を予め設定された閾値β、γと比較する。具体的には、表示形式判断部104は、算出された表示距離がβ未満、且つ、γ(例えば、0.8m)以上であると判断した場合には、ステップS116へ進む。一方、算出された表示距離がγ未満であると判断した場合には、ステップS120へ進む。
 (ステップS116)
 表示形式判断部104は、仮想オブジェクトの表示解像度を中ランク(例えば、384×240ピクセル)に設定する。
 (ステップS118)
 表示形式判断部104は、仮想オブジェクトに対するエフェクト処理をワイヤーフレームモードに設定する。例えば、ワイヤーフレームモードにおいては、仮想オブジェクトは、ワイヤーフレームを用いて立体的に表示されるように加工処理される。言い換えると、ワイヤーフレームモードにおいては、仮想オブジェクトは、線だけで表現される立体図形として表示される(例えば、図10の仮想オブジェクト806a)。このように、ワイヤーフレームにより仮想オブジェクトを表示することにより、上述の3次元表示に比べて表示処理量を減らすことができる。
 (ステップS120)
 表示形式判断部104は、上記ステップS100で算出された表示距離を予め設定された閾値γ、σと比較する。具体的には、表示形式判断部104は、算出された表示距離がγ未満、且つ、σ(例えば、0.35m)以上であると判断した場合には、ステップS122へ進む。一方、算出された表示距離がσ未満であると判断した場合には、ステップS128へ進む。
 (ステップS122)
 表示形式判断部104は、仮想オブジェクトの表示解像度を低ランク(例えば、192×120ピクセル)に設定する。
 (ステップS124)
 表示形式判断部104は、仮想オブジェクトに対するエフェクト処理を半透明モードに設定する。例えば、半透明モードにおいては、仮想オブジェクトは、実空間が透かして見える半透明な図形として表示されるように加工処理される。このように、仮想オブジェクトを半透明で表示することにより、上述の3次元表示に比べて表示処理量を減らすことができる。
 (ステップS126)
 表示形式判断部104は、仮想オブジェクトの表示形式を3次元表示から2次元表示に設定変更する。従って、仮想オブジェクトは、平面的な2次元図形として表示されることとなる。このように、仮想オブジェクトを2次元図形で表示することにより、3次元表示に比べて表示処理量を減らすことができる。
 (ステップS128)
 表示形式判断部104は、上記ステップS100で算出された表示距離がσ未満であることを確認する。
 (ステップS130)
 表示形式判断部104は、仮想オブジェクトに対するエフェクト処理を消去モードに設定する。例えば、消去モードにおいては、仮想オブジェクトは表示されない。
 (ステップS132)
 出力制御部106は、これまでの一連のステップにおいて表示形式判断部104が設定した表示解像度及びエフェクト処理に従って仮想オブジェクトが表示されるように、表示部16に対して制御を行う。そして、表示部16は、アプリケーションで定義した表示ルールに加えて、表示形式判断部104が設定した表示解像度及びエフェクト処理に従って、仮想オブジェクトを表示する。さらに、仮想オブジェクトの表示フレームの表示が完了したら、次の表示フレームの表示処理を行うために、ステップS100へ戻る。
 なお、上述の説明においては、仮想オブジェクトの表示フレーム毎にフローを繰り返すものとして説明したが、本実施形態はこれに限定されるものではない。例えば、情報処理装置1での処理状態が変化したことを検知したことにより、もしくは、ユーザ700の状態が変化したことを検知したことにより、フローを繰り返してもよく、特に限定されるものではない。
 なお、本実施形態においては、上述した図6A、図6B及び図7に示される閾値α、β、γ、σの値、設定される表示解像度及びエフェクト処理の内容については、上述の値等に限定されるものではない。本実施形態においては、仮想オブジェクトの表示フレームレートを好適に維持しつつ、ユーザ700から見た仮想オブジェクトの表示品質を好適に維持することができる閾値等であれば、適宜選択することが可能である。また、エフェクト処理についても、例えば、表示する仮想オブジェクトの透明度のレベルを変化させてもよく、もしくは、仮想オブジェクトの表示形式を2次元表示から3次元表示に設定変更してもよい。
 さらに、上述のフローにおいては、表示距離が長い場合(例えば、表示距離が3m以上)には、仮想オブジェクトの表示解像度を高くしているが、本実施形態においてはこれに限定されるものではない。例えば、表示距離が長い場合、すなわち、ユーザ700から遠い位置に仮想オブジェクトが表示される場合には、ユーザ700は仮想オブジェクトの表示品質の違いを知覚し難くなることから、表示解像度を中ランクや低ランクに設定してもよい。
 上述のフローにおける処理を模式的に示した図が図7である。図7は、ユーザ700から仮想オブジェクトの表示位置までの表示距離に応じて、表示される人物画像の仮想オブジェクトの大きさ及び表示解像度が変化していることを模式的に示す。例えば、表示距離が短い場合(例えば、0.8m程度)には、大きく、且つ、表示解像度が低い仮想オブジェクト802aが表示される。当該仮想オブジェクト802aは、図7に示されているように、全体的にぼやけて、薄く表示されている。また、例えば、表示距離が中程度である場合(例えば、1.5m程度)には、上記仮想オブジェクト802aと比べて、小さく、且つ、高い表示解像度を持つ仮想オブジェクト802bが表示される。さらに、表示距離が長い場合(例えば、3m程度)には、上記仮想オブジェクト802bと比べて、小さく、且つ、高い表示解像度を持つ仮想オブジェクト802cが表示される。なお、図7に示されているように、仮想オブジェクト802aの大きさ(表示面積)は、ユーザ700に近いほどより拡大し、これによって遠近感が表現され得る。言い換えると、本実施形態においては、仮想オブジェクトの表示距離が第1の距離である場合、当該仮想オブジェクトの表示面積を、表示距離が第1の距離よりも小さい第2の距離である他の仮想オブジェクトよりも大きくすることにより、ユーザ700は遠近感を感じることができる。すなわち、遠近感を表現するために、表示距離が近くなるほど仮想オブジェクトのサイズを拡大することとなる。そこで、本実施形態においては、上述の際の表示面積の拡大に伴って増加する表示処理量を抑制するように、解像度を制御する。
 上述のフローによる、仮想オブジェクトの表示の一例について、図8を参照して説明する。図8の左側に示すように、ユーザ700から遠い位置に、仮想オブジェクト804aが実空間における現実物体である自動車604に重畳して表示されている。そして、ユーザ700が上記自動車604に近づくように移動した場合には、仮想オブジェクトの表示位置とユーザ700との間の表示距離が縮まることとなる。従って、このような場合には、図8の右側に示すように、仮想オブジェクト804bは、仮想オブジェクト804aと比べて大きいものの、低い表示解像度をもつように表示される。さらに、仮想オブジェクト804bは、実空間の現実物体(例えば、自動車604)が透かして見える半透明な図形として表示される。
 表示位置が近いことに起因して大きな仮想オブジェクトを表示させる際には、仮想オブジェクトの表示処理量が増加し、情報処理装置1の処理能力に余裕がなくなり、表示フレームレートの低下が生じることがある。そこで、本実施形態においては、表示処理量を増加させる原因ともなる仮想オブジェクトの表示位置を検知し、検知した表示位置に応じて、仮想オブジェクトの表示解像度等を動的に変化させる。このようにすることで、本実施形態によれば、表示フレームレートが低下する前に、情報処理装置1の処理能力において余裕を確保し、表示フレームレートの低下の発生を避けることができる。従って、本実施形態によれば、仮想オブジェクトの表示フレームレートを好適に維持しつつ、ユーザ700から見た仮想オブジェクトの品質を好適に維持することができる。その結果、本実施形態によれば、仮想オブジェクトを介したユーザ700と情報処理装置1との間におけるリアルタイムのインタラクションを実現することができ、ユーザ700に対して有意義な体験を提供することができる。加えて、本実施形態によれば、仮想オブジェクトの表示解像度等を動的に変化させることにより、情報処理装置1における表示処理量を減らし、ひいては消費電力を減らすことができる。その結果、本実施形態によれば、バッテリ容量を小さくすることも可能となり、よりコンパクトな情報処理装置1を提供することができる。
  <<4.第2の実施形態>>
 上述した本開示の第1の実施形態においては、表示距離に応じて仮想オブジェクトの表示解像度等を動的に変化させていた。しかしながら、本開示の実施形態においては、表示距離だけでなく、仮想オブジェクトの他の表示処理量に応じて、仮想オブジェクトの表示解像度等を変化させてもよい。そこで、本開示の第2の実施形態においては、仮想オブジェクトの表示面積に応じて、仮想オブジェクトの表示解像度等を変化させる。先に説明したように、仮想オブジェクトの大きさに従って情報処理装置1における表示処理量は変化する。従って、例えば大きな仮想オブジェクトを表示させる際には、表示処理量が増加し、情報処理装置1の処理能力に余裕がなくなり、表示フレームレートの低下が生じることがある。そこで、本実施形態においては、仮想オブジェクトの表示フレームレートの低下を生じさせる状態、すなわち、仮想オブジェクトの表示フレームレートの低下の原因ともなる仮想オブジェクトの表示面積を検知する。さらに、本実施形態においては、検知した表示面積に応じて、仮想オブジェクトの表示解像度等を変化させる。従って、本実施形態によれば、情報処理装置1の処理能力において余裕を確保し、仮想オブジェクトの表示フレームレートの低下を避けることができる。以下に、本実施形態の詳細について説明する。
 なお、第2の実施形態に係る情報処理装置1の詳細構成については、第1の実施形態と共通するため、ここでは説明を省略する。
   <4.1.第2の実施形態に係る情報処理方法>
 第2の実施形態に係る情報処理方法について、図9A、図9B、及び図10を参照して説明する。図9A及び図9Bは、本実施形態に係る処理フローを示すフローチャートである。また、図10は、本実施形態に係る処理の一例を説明するための説明図である。図9A及び図9Bに示すように、本実施形態に係る情報処理方法には、ステップS200からステップS232までの複数のステップが含まれている。以下に、本実施形態に係る情報処理方法に含まれる各ステップの詳細を説明する。なお、以下の説明においては、第1の実施形態と異なる点のみを説明し、第1の実施形態と共通する点については、説明を省略する。
 なお、以下の説明においては、仮想オブジェクトの表示面積割合とは、表示部16が表示可能な表示面積に対する、表示する当該仮想オブジェクトの表示面積の割合を意味する。
 情報処理装置1は、仮想オブジェクトの表示処理を開始する。なお、以下に説明するフローは、第1の実施形態と同様に、表示する仮想オブジェクトの表示フレーム毎に行われ、表示フレームが変わるごとに繰り返されることとなる。
 (ステップS200)
 情報取得部100は、センサ部12により検知された検知結果を用いて、ユーザ700又は当該ユーザ700の周囲の各種状態に関する情報を取得する。また、情報取得部100は、仮想オブジェクトの表示を行うアプリケーションで定義された、仮想オブジェクトの表示面積等の情報を取得する。さらに、表示パラメータ計算部102は、取得した表示面積の情報に基づき、上記表示面積割合を算出する。
 (ステップS202)
 表示形式判断部104は、上記ステップS200で算出された表示面積割合を予め設定された閾値αと比較する。具体的には、表示形式判断部104が、算出された表示面積割合がα%(例えば、10%)未満であると判断した場合には、ステップS204へ進む。一方、算出された表示面積割合がα%以上であると判断した場合には、ステップS208へ進む。
 (ステップS204、ステップS206)
 図6Aに示される第1の実施形態のステップS104及びステップS106と同様の処理を実施する。
 (ステップS208)
 表示形式判断部104は、上記ステップS200で算出された表示面積割合を予め設定された閾値α、βと比較する。具体的には、表示形式判断部104は、算出された表示面積割合がα%以上、且つ、β%(例えば、20%)未満であると判断した場合には、ステップS210へ進む。一方、算出された表示面積割合がβ%以上と判断した場合には、ステップS214へ進む。
 (ステップS210、ステップS212)
 図6Aに示される第1の実施形態のステップS110及びステップS112と同様の処理を実施する。
 (ステップS214)
 表示形式判断部104は、上記ステップS200で算出された表示面積割合を予め設定された閾値β、γと比較する。具体的には、表示形式判断部104は、算出された表示面積割合がβ%以上、且つ、γ%(例えば、30%)未満であると判断した場合には、ステップS216へ進む。一方、算出された表示面積割合がγ%以上であると判断した場合には、ステップS220へ進む。
 (ステップS216、ステップS218)
 図6Aに示される第1の実施形態のステップS116及びステップS118と同様の処理を実施する。
 (ステップS220)
 表示形式判断部104は、上記ステップS200で算出された表示面積割合を予め設定された閾値γ、σと比較する。具体的には、表示形式判断部104は、算出された表示面積割合がγ%以上、且つ、σ%(例えば、50%)未満であると判断した場合には、ステップS222へ進む。一方、算出された表示面積割合がσ%以上であると判断した場合には、ステップS228へ進む。
 (ステップS222、ステップS224、ステップS226)
 図6Aに示される第1の実施形態のステップS122、ステップS124及びステップS126と同様の処理を実施する。
 (ステップS228)
 表示形式判断部104は、上記ステップS200で算出された表示面積割合がσ%以上であることを確認する。
 (ステップS230、ステップS232)
 図6Aに示される第1の実施形態のステップS130及びステップS132と同様の処理を実施する。
 なお、本実施形態においても、第1の実施形態と同様に、上述した図9A及び図9Bに示される閾値α、β、γ、σの値、設定される表示解像度及びエフェクト処理の内容については、上述の値等に限定されるものではない。本実施形態においては、仮想オブジェクトの表示フレームレートを好適に維持しつつ、ユーザ700から見た仮想オブジェクトの品質を好適に維持することができる閾値等であれば、適宜選択することが可能である。
 上述のフローにおける処理を模式的に示した図が図10である。図10は、仮想オブジェクトの表示面積に応じて、表示される球形の仮想オブジェクトの表示解像度や表示形式(ワイヤーフレーム表示)が変化していることを模式的に示す。例えば、仮想オブジェクトの表示面積が大きい場合には、表示解像度が低く、且つ、ワイヤーフレーム表示による球形の仮想オブジェクト806aが表示される。また、表示面積が中程度の場合には、仮想オブジェクト806aに比べて表示解像度が高く、且つ、球形に非常に近似したポリゴン形状を持つ仮想オブジェクト806bが表示される。さらに、表示面積が小さい場合には、仮想オブジェクト806bに比べて表示解像度が高く、且つ、球形の形状を持つ仮想オブジェクト806cが表示される。
 以上のように、大きな仮想オブジェクトを表示させる際には、仮想オブジェクトの表示処理量が増加し、情報処理装置1の処理能力に余裕がなくなり、表示フレームレートの低下が生じることがある。そこで、本実施形態においては、表示処理量を増加させる原因ともなる仮想オブジェクトの表示面積を検知し、検知した表示面積に応じて、仮想オブジェクトの表示解像度等を動的に変化させる。このようにすることで、本実施形態によれば、表示フレームレートが低下する前に、情報処理装置1の処理能力において余裕を確保し、表示フレームレートの低下の発生を避けることができる。
   <4.2.第2の実施形態の変形例>
 上述した第2の実施形態においては、表示面積に応じて仮想オブジェクトの表示解像度等を動的に変化させていた。しかしながら、先に説明したように、本実施形態においては、仮想オブジェクトの他の表示処理量に応じて、仮想オブジェクトの表示解像度等を変化させてもよい。例えば、以下に説明する変形例においては、表示する仮想オブジェクトの個数に応じて、仮想オブジェクトの表示解像度等を変化させる。詳細には、仮想オブジェクトの表示個数に従って情報処理装置1における表示処理量は変化する。従って、多くの仮想オブジェクトを表示させる際には、表示処理量が増加し、情報処理装置1の処理能力に余裕がなくなり、表示フレームレートの低下が生じることがある。そこで、本変形例においては、仮想オブジェクトの表示フレームレートの低下の原因ともなる仮想オブジェクトの表示個数に応じて、仮想オブジェクトの表示解像度等を変化させる。従って、本変形例によれば、情報処理装置1の処理能力において余裕を確保し、仮想オブジェクトの表示フレームレートの低下を避けることができる。
 以下に、図11を参照して、本変形例の詳細について説明する。図11は、第2の実施形態の変形例に係る処理の一例を説明するための説明図であり、詳細には仮想オブジェクトの表示個数に応じて、表示される球形の仮想オブジェクトの表示解像度や表示形式(ワイヤーフレーム表示)が変化していることを模式的に示す。図11に示すように、仮想オブジェクトの表示個数が多い場合(例えば、6個以上の場合)には、表示解像度が低く、且つ、ワイヤーフレーム表示による球形の仮想オブジェクト808aが表示される。また、表示個数が中程度の場合(例えば、6個未満3個以上の場合)には、仮想オブジェクト808aに比べて表示解像度が高く、且つ、球形に非常に近似したポリゴン形状を持つ仮想オブジェクト808bが表示される。さらに、表示個数が少ない場合(例えば、3個未満の場合)には、仮想オブジェクト808bに比べて表示解像度が高く、且つ、球形の形状を持つ仮想オブジェクト808cが表示される。
 また、本変形例においては、仮想オブジェクトの種別(テキストデータ、物体、動画、記号等)に従って情報処理装置1における表示処理量は変化することから、仮想オブジェクトの種別に応じて、仮想オブジェクトの表示解像度等を変化させてもよい。具体的には、仮想オブジェクトが動画像である場合には、仮想オブジェクトが記号である場合に比べて、表示処理量が多くなる。そこで、本変形例においては、仮想オブジェクトが動画像である場合には、仮想オブジェクトの表示解像度等を低くする。
 また、本変形例においては、仮想オブジェクトがユーザ700の眼前で移動するものであれば、仮想オブジェクトの移動速度に従って情報処理装置1における表示処理量は変化することから、移動速度に応じて仮想オブジェクトの表示解像度等を変化させてもよい。具体的には、仮想オブジェクトが高速で移動する場合には、仮想オブジェクトが低速で移動する場合に比べて表示処理量が多くなる。そこで、本変形例においては、仮想オブジェクトが高速で移動する場合には、仮想オブジェクトの表示解像度等を低くする。
  <<5.第3の実施形態>>
 上述した第1及び第2の実施形態においては、仮想オブジェクトの表示距離等に応じて仮想オブジェクトの表示解像度等を動的に変化させていた。しかしながら、本開示の実施形態においては、上述のような仮想オブジェクトの表示処理量だけでなく、制御部10による処理の状態に応じて、仮想オブジェクトの表示解像度等を動的に変化させてもよい。
 例えば、表示させようとする仮想オブジェクトが複雑な処理を必要とする複雑な形状であった場合には、情報処理装置1における処理は増加する。この場合、先に説明したように、情報処理装置1の処理能力に余裕がない状況になり、表示フレームレートの低下が生じることがある。
 より具体的な例を、図12を参照して説明する。図12は、本実施形態に係る仮想オブジェクト810の表示例を説明するための説明図であり、詳細には、実空間に重畳して表示された仮想オブジェクト810を示している。図12に示すように、ユーザ700の眼前に表示された仮想オブジェクト810に対して、ユーザ700が自身の手702を伸ばしている。このような状況においては、ユーザ700に対して仮想オブジェクト810があたかも実空間に存在する現実物体のように知覚させるようにするため、仮想オブジェクト810は、ユーザ700の手702の後ろを位置しているように表示される。すなわち、ユーザ700の手702が、仮想オブジェクト810の手前に位置して、仮想オブジェクト810の一部を遮蔽しているように、仮想オブジェクト810は表示される。なお、以下の説明においては、このようにユーザ700の手702等により仮想オブジェクト810の一部又は全体が遮蔽されている状態を「手遮蔽」と呼ぶ。そして、情報処理装置1は、手遮蔽された仮想オブジェクト810を表示するために、以下のように表示処理を行う。まず、情報処理装置1は、仮想オブジェクトを表示するためのアプリケーションで定義した仮想オブジェクトの形状と、外向きカメラ120等により撮像された手702の画像とを取得する。次に、情報処理装置1は、取得した情報を用いて、手702によって遮蔽される部分を上記定義された仮想オブジェクトの形状から抜き取った形状を持つ仮想オブジェクト810を生成し、生成した当該仮想オブジェクト810の表示を行う。このような表示処理は、表示処理量が大きく、情報処理装置1には大きな負荷となるため、仮想オブジェクトの表示フレームレートの低下が生じる。
 そこで、本実施形態においては、処理の状態が情報処理装置1の処理能力の限界に近づいたことをリアルタイムで検知し、検知した結果に基づき、仮想オブジェクトの表示解像度等を動的に変化させる。より具体的には、本実施形態においては、情報処理装置1の処理の状態を示す指標として表示フレームレートを検知する。詳細には、仮想オブジェクトの表示フレームレートが高い場合には、情報処理装置1の処理能力に余裕があることを示し、一方、表示フレームレートが低い場合には、情報処理装置1の処理能力に余裕がないことを示す。すなわち、表示フレームレートは、情報処理装置1の処理の状態を示す指標として用いることができる。なお、本実施形態においては、表示フレームレートとして、1秒間あたりのフレーム数を指標として用いることから、以下の説明においては、表示フレームレートをFPS(Frames Per Second)と称する。そこで、本実施形態においては、FPSに応じて、仮想オブジェクト810の表示解像度等を動的に変化させる。詳細には、FPSが高い場合には、情報処理装置1の処理能力に余裕があることを意味することから、仮想オブジェクトの表示解像度等を高く設定することができる。一方、FPSが低い場合には、情報処理装置1の処理能力に余裕があることを意味することから、仮想オブジェクトの表示解像度等を低く設定する。このように、本実施形態においては、FPSの低下を直接的に検知し、検知したFPSに応じて、仮想オブジェクトの表示解像度等を変化させて情報処理装置1の処理能力において余裕を確保し、今後の表示フレームにおけるFPSの低下を避けることができる。以下に、本実施形態の詳細について説明する。
 なお、第3の実施形態に係る情報処理装置1の詳細構成については、第1の実施形態と共通するため、ここでは説明を省略する。
   <5.1.第3の実施形態に係る情報処理方法>
 第3の実施形態に係る情報処理方法について、図13及び図14を参照して説明する。図13は、本実施形態に係る処理フローを示すフローチャートである。また、図14は、本実施形態に係る処理の一例を説明するための説明図である。図13に示すように、本実施形態に係る情報処理方法には、ステップS300からステップS328までの複数のステップが含まれている。以下に、本実施形態に係る情報処理方法に含まれる各ステップの詳細を説明する。なお、以下の説明においては、第1の実施形態と異なる点のみを説明し、第1の実施形態と共通する点については、説明を省略する。
 情報処理装置1は、仮想オブジェクトの表示処理を開始する。なお、以下に説明するフローは、表示する仮想オブジェクトの表示フレーム毎に行われ、表示フレームが変わるごとに繰り返されることとなる。
 (ステップS300)
 情報取得部100は、センサ部12により検知された検知結果を用いて、ユーザ700又は当該ユーザ700の周囲の各種状態に関する情報を取得する。また、情報取得部100は、情報処理装置1の処理の状態を示す表示処理速度を取得する。さらに、情報取得部100は、併せて他の装置プロファイル(例えば、上述した各種認識エンジンにおける認識フレームレート等)を取得してもよく、すなわち、情報取得部100が取得する装置プロファイルは、情報処理装置1の処理の状態を示す情報であれば特に限定されない。
 (ステップS302)
 表示パラメータ計算部102は、ステップS300で取得された表示処理速度に基づき、仮想オブジェクトのFPSを算出する。
 (ステップS304)
 表示形式判断部104は、前回算出したFPSとステップS302で今回算出したFPSとの差が所定の範囲(例えば、10)を超えているかどうかを判断する。例えば、表示形式判断部104は、上記差が10を超えていると判断した場合には、ステップS304へ進み、一方、上記差が10以下であると判断した場合には、ステップS326へ進む。
 (ステップS306)
 表示形式判断部104は、上記ステップS302で算出されたFPSを予め設定された閾値αと比較する。具体的には、表示形式判断部104が、算出されたFPSがα(例えば、60)以上であると判断した場合には、ステップS308へ進む。一方、算出されたFPSがα未満であると判断した場合には、ステップS312へ進む。
 (ステップS308、ステップS310)
 図6Aに示される第1の実施形態のステップS104及びステップS106と同様の処理を実施する。
 (ステップS312)
 表示形式判断部104は、上記ステップS302で算出されたFPSを予め設定された閾値α、βと比較する。具体的には、表示形式判断部104は、算出されたFPSがα未満、且つ、β(例えば、30)以上であると判断した場合には、ステップS314へ進む。一方、算出されたFPSがβ未満であると判断した場合には、ステップS318へ進む。
 (ステップS314、ステップS316)
 図6Aに示される第1の実施形態のステップS110及びステップS112と同様の処理を実施する。
 (ステップS318)
 表示形式判断部104は、上記ステップS302で算出されたFPSを予め設定された閾値β、γと比較する。具体的には、表示形式判断部104は、算出されたFPSがβ未満、且つ、γ(例えば、20)以上と判断した場合には、ステップS320へ進む。一方、算出されたFPSがγ未満と判断した場合には、ステップS324へ進む。
 (ステップS320、ステップS324)
 ステップS320として図6Aに示される第1の実施形態のステップS116と同様の処理を行い、ステップS324として図6Bに示される第1の実施形態のステップS130と同様の処理を行う。
 (ステップS326)
 表示形式判断部104は、前回設定した表示解像度及びエフェクト処理を維持する。
 (ステップS328)
 図6Bに示される第1の実施形態のステップS132と同様の処理を実施する。
 なお、上述の説明においては、仮想オブジェクトの表示フレーム毎に前回算出されたFPSとの差に応じて、表示解像度等の各種設定を変化させるかどうかを判断しているが、本実施形態はこれに限定されるものではない。例えば、前回の設定から所定の時間経過した場合や、ユーザ700の移動が検知された場合や、仮想オブジェクトの表示位置がユーザ700の視野範囲からはずれたことを検知した場合に、各種設定を変化させるかどうかの判断を行ってもよい。
 また、本実施形態においては、第1の実施形態と同様に、上述した図13に示される閾値α、β、γの値、設定される表示解像度及びエフェクト処理の内容については、上述の値等に限定されるものではない。本実施形態においては、仮想オブジェクトのFPSを好適に維持しつつ、ユーザ700から見た仮想オブジェクトの表示品質が好適に維持することができる閾値等であれば、適宜選択することが可能である。
 上述のフローにおける処理を模式的に示した図が図14である。図14は、FPSに応じて、人物画像の仮想オブジェクトの表示解像度が変化していることを模式的に示す。例えば、FPSが高い場合には、表示解像度が高い仮想オブジェクト812aが表示される。また、例えば、FPSが中程度である場合には、上記仮想オブジェクト812aと比べて低い表示解像度を持つ仮想オブジェクト812bが表示される。さらに、FPSが低い場合には、上記仮想オブジェクト812bと比べて低い表示解像度を持つ仮想オブジェクト812cが表示される。
 以上のように、本実施形態においては、FPSによって、情報処理装置1の処理能力に余裕があるか否かを判断することができることから、FPSに応じて、仮想オブジェクトの表示解像度等を動的に変化させる。従って、本実施形態によれば、情報処理装置1の処理能力において余裕を確保し、今後の表示フレームにおけるFPSの低下を避けることができる。
 本実施形態においては、情報処理装置1(制御部10)の処理能力が、少なくとも仮想オブジェクトの表示処理とユーザ700の周囲等の各種状態を認識するための認識エンジンによる認識処理とに分配されている場合には、認識の処理に分配した処理能力の状態に応じて、仮想オブジェクトの表示詳細度を変化させてもよい。また、ユーザ700の要求等に応じて、表示処理と認識処理とに分配される情報処理装置1の処理能力の割合が変化する場合には、それぞれに分配される割合に応じて仮想オブジェクトの表示詳細度を変化させてもよい。
 さらに、本実施形態においては、FPSに応じて仮想オブジェクトの表示解像度等を変化させるだけでなく、装置プロファイルから得られる処理の状態に関する情報に応じて、仮想オブジェクトの表示解像度等を動的に変化させてもよい。例えば、装置プロファイルから、ユーザ700又は当該ユーザ700の周囲の各種状態を認識するための認識エンジンによる認識フレームレートを取得し、認識フレームレートに応じて、仮想オブジェクトの表示解像度等を動的に変化させてもよい。
   <5.2.第3の実施形態の変形例>
 上述した本開示の第3の実施形態においては、FPSに応じて仮想オブジェクトの表示解像度を動的に変化させていた。しかしながら、本実施形態においては、表示解像度を変化させることに限定されるものではなく、仮想オブジェクトの他の表示詳細度を変化させてもよい。以下に、本実施形態の変形例として、仮想オブジェクトの表示詳細度の様々な例について説明する。
 (変形例1)
 変形例1においては、FPSに応じて仮想オブジェクトのエフェクト処理としてシェーディング処理を動的に変化させる。以下に、図15を参照して本変形例の詳細を説明する。図15は、変形例1に係る処理の一例を説明するための説明図である。
 詳細には、図15の左側に示すように、FPSが高い場合には、情報処理装置1の処理能力に余裕があることを意味することから、仮想オブジェクトを例えばフォーンシェーディング法により表示する。フォーンシェーディング法とは、立体的な物体表面での光の反射モデルを用いて仮想オブジェクトにおける陰影計算を行い、陰影計算に基づいて、仮想オブジェクトを表示するための各ピクセルの色彩等を設定する。このようなフォーンシェーディング法を用いることにより、仮想オブジェクト814aは、あたかも実空間に存在する現実物体のように表示される。なお、上記フォーンシェーディング法による陰影計算は、情報処理装置1における処理量(負荷)が高い。従って、本変形例においては、情報処理装置1の処理能力に余裕がある場合に、フォーンシェーディング法を用いて仮想オブジェクトを表示する。
 また、図15の中央に示すように、FPSが中程度である場合には、情報処理装置1の処理能力に多少の余裕があるため、仮想オブジェクトを例えばグローシェーディング法により表示する。グローシェーディング法とは、ポリゴン形状を持つ仮想オブジェクトの表面での光の反射モデルを用いて仮想オブジェクトにおける陰影計算を行い、陰影計算に基づいて、仮想オブジェクトを表示するための各ピクセルの色彩等を設定する。このようなグローシェーディング法を用いることにより、上記仮想オブジェクト814aに比べて見た目の品質が低下するものの、仮想オブジェクト814bは立体的な物体のように表示される。なお、仮想オブジェクト814bをポリゴン形状と仮定して陰影計算を行うことから、グローシェーディング法はフォーンシェーディング法に比べて情報処理装置1における処理量(負荷)が低い。従って、本変形例においては、情報処理装置1の処理能力に多少の余裕がある場合に、負荷の少ないグローシェーディング法を用いて仮想オブジェクトを表示する。
 さらに、図15の右側に示すように、FPSが低い場合には、情報処理装置1の処理能力に余裕がないため、仮想オブジェクトを例えばフラットシェーディング法により表示する。フラットシェーディング法とは、粗いポリゴン形状の仮想オブジェクトの面毎に光の反射モデルを用いて仮想オブジェクトにおける陰影計算を行い、陰影計算に基づいて、仮想オブジェクトを構成する面毎の色彩等を設定する。このようなフラットシェーディング法を用いることにより、仮想オブジェクト814cは上記仮想オブジェクト814bに比べて見た目の品質が低下する。しかしながら、本変形例においては、情報処理装置1の処理能力に余裕がない場合であっても、フラットシェーディング法はグローシェーディング法に比べて情報処理装置1における処理量(負荷)が低いことから、FPSが低下することを避けることができる。
 (変形例2)
 変形例2においては、FPSに応じて、球状の仮想オブジェクトのエフェクト処理として、表示形式を3次元表示から、フレームワイヤー表示、2次元表示へと動的に変化させる。以下に、図16を参照して本変形例の詳細を説明する。図16は、変形例2に係る処理の一例を説明するための説明図である。
 詳細には、図16の左側に示すように、FPSが高い場合には、情報処理装置1の処理能力に余裕があることを意味することから、仮想オブジェクト816aを例えばあたかも実空間に存在する現実物体のように3次元表示させる。
 また、図16の中央に示すように、FPSが中程度である場合には、情報処理装置1の処理能力に多少の余裕があるため、仮想オブジェクト816bを例えばワイヤーフレーム表示により表示する。当該仮想オブジェクト816bは、ワイヤーフレームにより、頂点の数が多い、球形に近似したポリゴン形状を持っていることから、上記仮想オブジェクト816aに比べて見た目の品質が低下するものの、立体的な物体のように表示される。このようなワイヤーフレーム表示は、上述の3次元表示に比べて表示処理量(負荷)を減らすことができる。従って、本変形例においては、情報処理装置1の処理能力に多少の余裕がある場合に、負荷の少ないワイヤーフレーム表示を用いて仮想オブジェクトを表示する。
 FPSがさらに低下した場合には、情報処理装置1の処理能力に余裕がなくなりつつあることから、球状の仮想オブジェクト816cを、ワイヤーフレームにより上記仮想オブジェクト816bに比べて頂点の数が少ないポリゴン形状で表示する。このように頂点の数が少ないポリゴン形状で表示することにより、より表示処理量(負荷)を減らすことができる。従って、本変形例においては、情報処理装置1の処理能力に余裕がなくなりつつある場合には、ワイヤーフレーム表示の状態を変化させて、詳細には、より負荷の少ない頂点の数が少ないポリゴン形状で仮想オブジェクトを表示する。
 さらに、図16の右側に示すように、FPSが非常に低い場合には、情報処理装置1の処理能力に余裕がないため、仮想オブジェクト816dを2次元で表示する。このように仮想オブジェクトを2次元で表示することにより、3次元表示等に比べて表示処理量(負荷)を減らすことができる。このような2次元表示を用いることにより、仮想オブジェクト816dは上記仮想オブジェクト816cに比べて見た目の品質が低下する。しかしながら、本変形例においては、情報処理装置1の処理能力に余裕がない場合であっても、2次元表示により情報処理装置1における処理量(負荷)が低くなることから、表示フレームレートの低下を避けることができる。
 なお、本開示の実施形態及び変形例においては、変化させる仮想オブジェクトの他の表示詳細度として、上述のシェーディング処理等だけでなく、仮想オブジェクトのテクスチャ(仮想オブジェクトの質感)、表示濃度、透明度、明度等を挙げることができる。
 (変形例3)
 上述した本開示の実施形態及び変形例においては、仮想オブジェクトの表示処理量や処理の状態に応じて、仮想オブジェクトの表示詳細度を動的に変化させていた。さらに、これら実施形態及び変形例においては、ユーザ700の状態をも加味して、仮想オブジェクトの表示詳細度を動的に変化させてもよい。そこで、このような変形例の1つとして、ユーザ700の視線方向に応じて、仮想オブジェクトの表示解像度を変化させる変形例3を、図17を参照して説明する。図17は、変形例3に係る処理の一例を説明するための説明図である。
 ここで、これまで説明した実施形態等において、仮想オブジェクトの表示処理量や処理の状態に応じて、仮想オブジェクトの表示解像度を低下させた場合を検討する。例えば、図17に示すように、表示された仮想オブジェクト818が手紙等の文字コンテンツである場合には、表示解像度を低下させて表示させるとユーザ700によって仮想オブジェクト818内の文字を解読できない場合がある。一方、このように文字が解読できないことを考慮して表示解像度を高くした場合には、表示処理量が増加し、情報処理装置1の処理能力に余裕がなくなり、表示フレームレートの低下が生じることとなる。そこで、本変形例においては、仮想オブジェクト818の全体の表示解像度を高くするのではなく、ユーザ700の視線方向を検知し、当該視線の先に位置する仮想オブジェクト818の部分においてのみ表示解像度を高くする。すなわち、本変形例においては、制御部10は、文字コンテンツのように相対的に高い識別要求度が求められる仮想オブジェクト(第2の仮想オブジェクト)をユーザ700が注視していると判定された場合には、当該仮想オブジェクトの表示解像度(表示詳細度)を、他の仮想オブジェクト(例えば、高い識別要求度が求められない、図形等のような仮想オブジェクト)(第1の仮想オブジェクト)をユーザ700が注視していると判定された場合よりも、高くする。このようにすることで、本変形例によれば、表示処理量を抑えて、表示フレームレートの低下を避けつつ、ユーザ700により仮想オブジェクト818を介して提示された情報を容易に知覚できるような表示品質を維持することができる。なお、本変形例においては、相対的に高い識別要求度を有する仮想オブジェクトは文字コンテンツに限定されるものではなく、任意に設定されることができる。
 詳細には、情報処理装置1は、ユーザ700の視線方向を例えば内向きカメラ122による撮像画像を用いて検知する。そして、情報処理装置1は、当該検知結果に基づいて、表示されている低表示解像度の仮想オブジェクト818のうち、ユーザ700の視線の先に位置する仮想オブジェクトの部分818aの表示解像度を高く設定する。より具体的には、ユーザ700の視線の先が、当該仮想オブジェクト818の部分818aにあることを検知した場合には、部分818aにおける表示解像度を高め、部分818aにおける文字(図17の例では、「Dear Mr.Smith」)をユーザ700が解読できるようにする。一方、ユーザ700の視線の先に位置していない、仮想オブジェクト818の他の部分818bについては、部分818aに比べて表示解像度が低い。従って、ユーザ700は、部分818bに文字がなにかしら表示されていることを知覚することができるものの、具体的に文字を解読することができない。
 このように、本変形例においては、ユーザ700が所望する仮想オブジェクト818の部分818aを鮮明に表示し、ユーザ700が所望していない他の仮想オブジェクト818の部分818bを不鮮明に表示する。従って、本変形例によれば、表示処理量を抑えて表示フレームレートの低下を避けつつ、ユーザ700により仮想オブジェクト818を介して提示された情報を容易に知覚できるような表示品質を維持することができる。
 なお、本変形例においては、ユーザ700の視線の先が部分818bに移動した場合には、情報処理装置1は、部分818aの表示解像度を低下させ、部分818bの表示解像度を高くする。また、本変形例においては、同時に複数の仮想オブジェクトが表示されている場合には、ユーザ700の視線方向に応じて、各仮想オブジェクトの表示解像度を変化させてもよい。
 また、本変形例においては、ユーザ700の視線方向に応じて、仮想オブジェクトの表示解像度変化させることに限定されるものではなく、例えば、ユーザ700の手702が伸びた方向に応じて、仮想オブジェクトの表示解像度を変化させてもよい。詳細には、同時に複数の仮想オブジェクトが表示されている場合、ユーザ700が手を伸ばした先に位置する仮想オブジェクトを他の仮想オブジェクトに比べて高い表示解像度で表示する。このように、本変形例においては、上述した実施形態等と組み合わせて、ユーザ700の状態に応じて、仮想オブジェクトの表示詳細度を動的に変化させてもよい。
  <<6.まとめ>>
 以上説明したように、本開示の実施形態及び変形例においては、仮想オブジェクトの表示フレームレート(FPS)の低下を生じさせる状態を検知し、検知した結果に応じて、仮想オブジェクトの表示詳細度を動的に変化させる。このようにして、本実施形態等によれば、情報処理装置1の処理能力において余裕を確保し、表示フレームレートの低下の発生を避けることができる。すなわち、本実施形態等によれば、仮想オブジェクトの表示フレームレートを好適に維持しつつ、ユーザ700から見た仮想オブジェクトの品質を好適に維持することができる。その結果、本実施形態によれば、仮想オブジェクトを介したユーザ700と情報処理装置1との間におけるリアルタイムのインタラクションを実現することができ、ユーザ700に対して有意義な体験を提供することができる。
 加えて、本実施形態等によれば、仮想オブジェクトの表示詳細度を動的に変化させることにより、情報処理装置1における表示処理量を減らし、ひいては消費電力を減らすことができる。その結果、本実施形態等によれば、バッテリ容量を小さくすることも可能となり、よりコンパクトな情報処理装置1を提供することもできる。
 なお、これまで説明した本開示の実施形態及び変形例については互いに組み合わせて実施することもできる。また、上述の説明においては、透過型ディスプレイを持つスマートアイグラスに適用した場合を例として挙げたが、本開示の実施形態においてはこれに限定されるものではなく、例えば、非透過型ディスプレイを持つHMDに適用することもできる。
  <<7.ハードウェア構成について>>
 図18は、本開示の一実施形態に係る情報処理装置900のハードウェア構成の一例を示したブロック図である。図18では、情報処理装置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、表示パラメータ計算部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は、例えば上述の操作入力部22として機能し、情報処理装置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のハードウェア構成は、図18に示す構成に限られない。詳細には、上記の各構成要素は、汎用的な部材を用いて構成してもよいし、各構成要素の機能に特化したハードウェアにより構成してもよい。かかる構成は、実施する時々の技術レベルに応じて適宜変更されうる。
 例えば、情報処理装置900は、接続されている外部の通信デバイスを介して外部装置等と通信を行う場合や、スタンドアローンで処理を行う構成である場合には、通信インタフェース968を備えていなくてもよい。また、通信インタフェース968は、複数の通信方式によって、1又は2以上の外部装置と通信を行うことが可能な構成を有していてもよい。また、情報処理装置900は、例えば、記録媒体956や、操作入力デバイス960等を備えない構成をとることも可能である。
 また、本実施形態に係る情報処理装置900は、例えばクラウドコンピューティング等のように、ネットワークへの接続(または各装置間の通信)を前提とした、複数の装置からなるシステムに適用されてもよい。つまり、上述した本実施形態に係る情報処理装置900は、例えば、複数の装置により本実施形態に係る情報処理方法に係る処理を行う情報処理システムとして実現することも可能である。
  <<8.補足>>
 また、以上に説明した実施形態は、例えば、コンピュータを本実施形態に係る情報処理装置として機能させるためのプログラム、及びプログラムが記録された一時的でない有形の媒体を含むことができる。また、上記プログラムをインターネット等の通信回線(無線通信も含む)を介して頒布してもよい。
 さらに、上述した各実施形態の処理における各ステップは、必ずしも記載された順序に沿って処理されなくてもよい。例えば、各ステップは、適宜順序が変更されて処理されてもよい。また、各ステップは、時系列的に処理される代わりに、一部並列的に又は個別的に処理されてもよい。さらに、各ステップの処理方法についても、必ずしも記載された方法に沿って処理されなくてもよく、例えば、他の機能ブロックによって他の方法で処理されていてもよい。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、特許請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、又は上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
 なお、以下のような構成も本開示の技術的範囲に属する。
(1)ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させる制御部を備える、情報処理装置。
(2)前記制御部は、検知した前記仮想オブジェクトの表示処理量に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させる、上記(1)に記載の情報処理装置。
(3)前記制御部は、前記ユーザから前記仮想オブジェクトの表示位置までの表示距離に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、上記(2)に記載の情報処理装置。
(4)前記制御部は、前記表示距離が第1の距離である場合、前記表示距離が前記第1の距離よりも小さい第2の距離である場合よりも、前記表示詳細度を大きくする、上記(3)に記載の情報処理装置。
(5)前記制御部は、前記表示距離が前記第1の距離である場合、前記表示距離が前記第2の距離である場合よりも、前記仮想オブジェクトの表示面積を大きくする、上記(4)に記載の情報処理装置。
(6)前記仮想オブジェクトを表示する表示部を更に備え、前記制御部は、前記表示部の表示面積に対する前記仮想オブジェクトの表示面積の割合に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、上記(2)に記載の情報処理装置。
(7)前記制御部は、前記仮想オブジェクトの表示個数に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、上記(2)に記載の情報処理装置。
(8)前記制御部は、前記仮想オブジェクトの種別に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、上記(2)に記載の情報処理装置。
(9)前記制御部は、検知した前記制御部における処理の状態に応じて、前記仮想オブジェクトの前記表示詳細度を動的に変化させる、上記(1)に記載の情報処理装置。
(10)前記制御部は、前記仮想オブジェクトの前記表示フレームレートに応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、上記(9)に記載の情報処理装置。
(11)前記制御部は、前記ユーザ又は前記ユーザの周囲の状態を認識する認識フレームレートに応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、上記(9)に記載の情報処理装置。
(12)前記制御部は、当該制御部の処理能力を少なくとも前記仮想オブジェクトの表示の処理と前記認識の処理とに分配し、前記認識の処理に分配した前記処理能力に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、上記(11)に記載の情報処理装置。
(13)前記制御部は、検知した前記ユーザの状態に応じて、前記仮想オブジェクトの前記表示詳細度を動的に変化させる、上記(9)~(11)のいずれか1つに記載の情報処理装置。
(14)前記仮想オブジェクトは、第1の仮想オブジェクトと、前記第1の仮想オブジェクトよりも高い識別要求度を有する第2の仮想オブジェクトとを含み、前記制御部は、前記第2の仮想オブジェクトを前記ユーザが注視していると判定した場合には、前記第1の仮想オブジェクトを前記ユーザが注視していると判定した場合よりも、前記第2の仮想オブジェクトの前記表示詳細度を高くする、上記(13)に記載の情報処理装置。
(15)前記制御部は、前記仮想オブジェクトの表示解像度及び前記仮想オブジェクトに対するエフェクト処理のうちの少なくとも一方を変化させる、上記(1)に記載の情報処理装置。
(16)前記制御部は、前記エフェクト処理として、前記仮想オブジェクトに対するシェーディング処理の変更、前記仮想オブジェクトのワイヤーフレーム表示の状態の変更、前記仮想オブジェクトの2次元表示と3次元表示との間の変更、及び、前記仮想オブジェクトの透明度の変更のうちの少なくとも1つを行う、上記(15)に記載の情報処理装置。
(17)前記情報処理装置は、前記ユーザの頭部に装着されるウェアラブル装置であって、装着時に前記ユーザの眼前に位置する表示部をさらに備える、上記(1)に記載の情報処理装置。
(18)前記表示部は透過型ディスプレイであって、前記表示部は、前記仮想オブジェクトを実空間に重畳して表示する、上記(17)に記載の情報処理装置。
(19)ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させることを含む、情報処理方法。
(20)コンピュータを、ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させる制御部として機能させる、プログラム。
 1、900  情報処理装置
 10  制御部
 12  センサ部
 14  記憶部
 16、16A、16B  表示部
 18  スピーカ
 20  通信部
 22  操作入力部
 100  情報取得部
 102  表示パラメータ計算部
 104  表示形式判断部
 106  出力制御部
 120  外向きカメラ
 122  内向きカメラ
 124  マイク
 126  ジャイロセンサ
 128  加速度センサ
 130  方位センサ
 132  位置測位部
 134  生体センサ
 600  マーカ
 602  壁面
 604  自動車
 700  ユーザ
 702  手
 800、802a~c、804a~b、806a~c、808a~c、810、812a~c、814a~c、816a~d、818  仮想オブジェクト
 818a、b  部分
 950  CPU
 952  ROM
 954  RAM
 956  記録媒体
 958  入出力インタフェース
 960  操作入力デバイス
 962  表示デバイス
 964  音声出力デバイス
 968  通信インタフェース
 970  バス
 980  センサ

Claims (20)

  1.  ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させる制御部を備える、情報処理装置。
  2.  前記制御部は、検知した前記仮想オブジェクトの表示処理量に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させる、請求項1に記載の情報処理装置。
  3.  前記制御部は、前記ユーザから前記仮想オブジェクトの表示位置までの表示距離に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、請求項2に記載の情報処理装置。
  4.  前記制御部は、前記表示距離が第1の距離である場合、前記表示距離が前記第1の距離よりも小さい第2の距離である場合よりも、前記表示詳細度を大きくする、請求項3に記載の情報処理装置。
  5.  前記制御部は、前記表示距離が前記第1の距離である場合、前記表示距離が前記第2の距離である場合よりも、前記仮想オブジェクトの表示面積を大きくする、請求項4に記載の情報処理装置。
  6.  前記仮想オブジェクトを表示する表示部を更に備え、
     前記制御部は、前記表示部の表示面積に対する前記仮想オブジェクトの表示面積の割合に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、
     請求項2に記載の情報処理装置。
  7.  前記制御部は、前記仮想オブジェクトの表示個数に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、請求項2に記載の情報処理装置。
  8.  前記制御部は、前記仮想オブジェクトの種別に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、請求項2に記載の情報処理装置。
  9.  前記制御部は、検知した前記制御部における処理の状態に応じて、前記仮想オブジェクトの前記表示詳細度を動的に変化させる、請求項1に記載の情報処理装置。
  10.  前記制御部は、前記仮想オブジェクトの前記表示フレームレートに応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、請求項9に記載の情報処理装置。
  11.  前記制御部は、前記ユーザ又は前記ユーザの周囲の状態を認識する認識フレームレートに応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、請求項9に記載の情報処理装置。
  12.  前記制御部は、当該制御部の処理能力を少なくとも前記仮想オブジェクトの表示の処理と前記認識の処理とに分配し、前記認識の処理に分配した前記処理能力に応じて、前記仮想オブジェクトの前記表示詳細度を変化させる、請求項11に記載の情報処理装置。
  13.  前記制御部は、検知した前記ユーザの状態に応じて、前記仮想オブジェクトの前記表示詳細度を動的に変化させる、請求項9に記載の情報処理装置。
  14.  前記仮想オブジェクトは、第1の仮想オブジェクトと、前記第1の仮想オブジェクトよりも高い識別要求度を有する第2の仮想オブジェクトとを含み、
     前記制御部は、前記第2の仮想オブジェクトを前記ユーザが注視していると判定した場合には、前記第1の仮想オブジェクトを前記ユーザが注視していると判定した場合よりも、前記第2の仮想オブジェクトの前記表示詳細度を高くする、
     請求項13に記載の情報処理装置。
  15.  前記制御部は、前記仮想オブジェクトの表示解像度及び前記仮想オブジェクトに対するエフェクト処理のうちの少なくとも一方を変化させる、請求項1に記載の情報処理装置。
  16.  前記制御部は、前記エフェクト処理として、前記仮想オブジェクトに対するシェーディング処理の変更、前記仮想オブジェクトのワイヤーフレーム表示の状態の変更、前記仮想オブジェクトの2次元表示と3次元表示との間の変更、及び、前記仮想オブジェクトの透明度の変更のうちの少なくとも1つを行う、請求項15に記載の情報処理装置。
  17.  前記情報処理装置は、前記ユーザの頭部に装着されるウェアラブル装置であって、
     装着時に前記ユーザの眼前に位置する表示部をさらに備える、請求項1に記載の情報処理装置。
  18.  前記表示部は透過型ディスプレイであって、
     前記表示部は、前記仮想オブジェクトを実空間に重畳して表示する、請求項17に記載の情報処理装置。
  19.  ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させることを含む、情報処理方法。
  20.  コンピュータを、ユーザに提示される仮想オブジェクトの表示フレームレートの低下を生じさせる状態を検知し、検知した結果に応じて、前記仮想オブジェクトの表示詳細度を動的に変化させる制御部として機能させる、プログラム。
PCT/JP2018/018103 2017-08-08 2018-05-10 情報処理装置、情報処理方法及びプログラム WO2019031005A1 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201880050511.0A CN110998666B (zh) 2017-08-08 2018-05-10 信息处理装置、信息处理方法以及程序
JP2019535599A JP7176520B2 (ja) 2017-08-08 2018-05-10 情報処理装置、情報処理方法及びプログラム
US16/635,254 US11244496B2 (en) 2017-08-08 2018-05-10 Information processing device and information processing method
EP18843891.5A EP3667622B1 (en) 2017-08-08 2018-05-10 Information processing device, information processing method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017-152893 2017-08-08
JP2017152893 2017-08-08

Publications (1)

Publication Number Publication Date
WO2019031005A1 true WO2019031005A1 (ja) 2019-02-14

Family

ID=65272825

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/018103 WO2019031005A1 (ja) 2017-08-08 2018-05-10 情報処理装置、情報処理方法及びプログラム

Country Status (5)

Country Link
US (1) US11244496B2 (ja)
EP (1) EP3667622B1 (ja)
JP (1) JP7176520B2 (ja)
CN (1) CN110998666B (ja)
WO (1) WO2019031005A1 (ja)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021241110A1 (ja) * 2020-05-25 2021-12-02 ソニーグループ株式会社 情報処理装置、情報処理方法及びプログラム
JP6976395B1 (ja) * 2020-09-24 2021-12-08 Kddi株式会社 配信装置、配信システム、配信方法及び配信プログラム
WO2022014369A1 (ja) * 2020-07-17 2022-01-20 ソニーグループ株式会社 画像処理装置、画像処理方法、及びプログラム
JP7529950B2 (ja) 2020-11-25 2024-08-07 株式会社Nttドコモ 情報処理システム

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11315327B1 (en) * 2018-11-02 2022-04-26 Facebook Technologies, Llc. Beam-racing fallbacks in a display engine
US11625848B2 (en) * 2020-01-30 2023-04-11 Unity Technologies Sf Apparatus for multi-angle screen coverage analysis
CN115280261A (zh) * 2020-03-09 2022-11-01 苹果公司 用于在多用户通信会话期间调用公共或私有交互的方法和设备
WO2022066341A1 (en) * 2020-09-22 2022-03-31 Sterling Labs Llc Attention-driven rendering for computer-generated objects

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231401A (ja) * 1995-12-18 1997-09-05 Sony Corp 画像付き形状データの階層的近似化方法および装置
JP2000296261A (ja) * 1999-04-13 2000-10-24 Namco Ltd ゲーム装置及び情報記憶媒体
JP2001229402A (ja) * 2000-02-16 2001-08-24 Mitsubishi Electric Corp 3次元画像表示装置、3次元画像表示方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2002503854A (ja) * 1998-02-17 2002-02-05 サン・マイクロシステムズ・インコーポレーテッド ポリゴンのためのグラフィックス・システム・パフォーマンスの推定
JP2002279449A (ja) * 2001-03-19 2002-09-27 Mitsubishi Electric Corp 3次元空間データ送信表示装置、3次元空間データ送信方法、3次元空間データ送信方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2004086508A (ja) * 2002-08-26 2004-03-18 Alpine Electronics Inc 3次元形状データに基づく動画の表示制御方法及びナビゲーション装置
JP2004355131A (ja) * 2003-05-27 2004-12-16 Canon Inc 複合現実感映像生成方法及び複合現実感画像生成装置
JP2016157458A (ja) 2016-03-31 2016-09-01 ソニー株式会社 情報処理装置
JP2016208380A (ja) 2015-04-27 2016-12-08 ソニーセミコンダクタソリューションズ株式会社 画像処理装置、撮像装置、画像処理方法およびプログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9529195B2 (en) * 2014-01-21 2016-12-27 Osterhout Group, Inc. See-through computer display systems
WO2016017144A1 (en) * 2014-07-31 2016-02-04 Seiko Epson Corporation Display device, control method for display device, and program
JP6424601B2 (ja) * 2014-12-10 2018-11-21 富士通株式会社 表示制御方法、情報処理プログラム、及び情報処理装置
JP6798106B2 (ja) * 2015-12-28 2020-12-09 ソニー株式会社 情報処理装置、情報処理方法、およびプログラム

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH09231401A (ja) * 1995-12-18 1997-09-05 Sony Corp 画像付き形状データの階層的近似化方法および装置
JP2002503854A (ja) * 1998-02-17 2002-02-05 サン・マイクロシステムズ・インコーポレーテッド ポリゴンのためのグラフィックス・システム・パフォーマンスの推定
JP2000296261A (ja) * 1999-04-13 2000-10-24 Namco Ltd ゲーム装置及び情報記憶媒体
JP2001229402A (ja) * 2000-02-16 2001-08-24 Mitsubishi Electric Corp 3次元画像表示装置、3次元画像表示方法およびその方法をコンピュータに実行させるプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2002279449A (ja) * 2001-03-19 2002-09-27 Mitsubishi Electric Corp 3次元空間データ送信表示装置、3次元空間データ送信方法、3次元空間データ送信方法をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体
JP2004086508A (ja) * 2002-08-26 2004-03-18 Alpine Electronics Inc 3次元形状データに基づく動画の表示制御方法及びナビゲーション装置
JP2004355131A (ja) * 2003-05-27 2004-12-16 Canon Inc 複合現実感映像生成方法及び複合現実感画像生成装置
JP2016208380A (ja) 2015-04-27 2016-12-08 ソニーセミコンダクタソリューションズ株式会社 画像処理装置、撮像装置、画像処理方法およびプログラム
JP2016157458A (ja) 2016-03-31 2016-09-01 ソニー株式会社 情報処理装置

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021241110A1 (ja) * 2020-05-25 2021-12-02 ソニーグループ株式会社 情報処理装置、情報処理方法及びプログラム
WO2022014369A1 (ja) * 2020-07-17 2022-01-20 ソニーグループ株式会社 画像処理装置、画像処理方法、及びプログラム
JP6976395B1 (ja) * 2020-09-24 2021-12-08 Kddi株式会社 配信装置、配信システム、配信方法及び配信プログラム
JP2022053334A (ja) * 2020-09-24 2022-04-05 Kddi株式会社 配信装置、配信システム、配信方法及び配信プログラム
JP7529950B2 (ja) 2020-11-25 2024-08-07 株式会社Nttドコモ 情報処理システム

Also Published As

Publication number Publication date
EP3667622B1 (en) 2023-08-23
JP7176520B2 (ja) 2022-11-22
US11244496B2 (en) 2022-02-08
US20210142552A1 (en) 2021-05-13
EP3667622A1 (en) 2020-06-17
JPWO2019031005A1 (ja) 2020-07-09
CN110998666A (zh) 2020-04-10
CN110998666B (zh) 2023-10-20
EP3667622A4 (en) 2020-07-29

Similar Documents

Publication Publication Date Title
JP7176520B2 (ja) 情報処理装置、情報処理方法及びプログラム
US12008151B2 (en) Tracking and drift correction
CN108027652B (zh) 信息处理设备、信息处理方法以及记录介质
CN111602140B (zh) 分析由头戴式设备的相机记录的图像中的对象的方法
WO2016203792A1 (ja) 情報処理装置、情報処理方法及びプログラム
US20150170418A1 (en) Method to Provide Entry Into a Virtual Map Space Using a Mobile Device's Camera
US20200202161A1 (en) Information processing apparatus, information processing method, and program
US20190064528A1 (en) Information processing device, information processing method, and program
JP7400721B2 (ja) 情報処理装置、情報処理方法及びプログラム
US20210312658A1 (en) Information processing apparatus, information processing method, and program
JP2017182247A (ja) 情報処理装置、情報処理方法、およびプログラム
WO2019021573A1 (ja) 情報処理装置、情報処理方法、及びプログラム
EP3438938A1 (en) Information processing device, information processing method, and program
EP3438939A1 (en) Information processing device, information processing method, and program
WO2020071144A1 (ja) 情報処理装置、情報処理方法、及びプログラム
KR20180045644A (ko) 머리 착용형 디스플레이 장치 및 그의 제어 방법
US11442543B1 (en) Electronic devices with monocular gaze estimation capabilities
JP2020149216A (ja) 情報処理装置、情報処理方法、及びプログラム

Legal Events

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

Ref document number: 18843891

Country of ref document: EP

Kind code of ref document: A1

ENP Entry into the national phase

Ref document number: 2019535599

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

Country of ref document: EP

Effective date: 20200309