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

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

Info

Publication number
WO2020090316A1
WO2020090316A1 PCT/JP2019/038444 JP2019038444W WO2020090316A1 WO 2020090316 A1 WO2020090316 A1 WO 2020090316A1 JP 2019038444 W JP2019038444 W JP 2019038444W WO 2020090316 A1 WO2020090316 A1 WO 2020090316A1
Authority
WO
WIPO (PCT)
Prior art keywords
information
viewpoint
projection
result
orientation
Prior art date
Application number
PCT/JP2019/038444
Other languages
English (en)
French (fr)
Inventor
広幸 安賀
敦 石原
満 西部
浩一 川崎
浩丈 市川
一 若林
俊逸 小原
諒介 村田
Original Assignee
ソニー株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニー株式会社 filed Critical ソニー株式会社
Priority to US17/288,314 priority Critical patent/US12010288B2/en
Publication of WO2020090316A1 publication Critical patent/WO2020090316A1/ja

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/363Image reproducers using image projection screens
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/50Depth or shape recovery
    • G06T7/55Depth or shape recovery from multiple images
    • G06T7/579Depth or shape recovery from multiple images from motion
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/70Determining position or orientation of objects or cameras
    • G06T7/73Determining position or orientation of objects or cameras using feature-based methods
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/275Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals
    • H04N13/279Image signal generators from 3D object models, e.g. computer-generated stereoscopic image signals the virtual viewpoint locations being selected by the viewers or determined by tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using viewer tracking
    • H04N13/383Image reproducers using viewer tracking for tracking with gaze detection, i.e. detecting the lines of sight of the viewer's eyes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/239Image signal generators using stereoscopic image cameras using two 2D image sensors having a relative position equal to or related to the interocular distance

Definitions

  • the present disclosure relates to an information processing device, an information processing method, and a program.
  • AR augmented reality
  • virtual object virtual object
  • real object an object in the real space
  • Patent Document 1 discloses an example of a technique of presenting virtual content to a user by using the AR technique.
  • the load related to the process of drawing the virtual object as display information such as an image becomes relatively high, and until the output of the virtual object as display information is started.
  • Such a shift may be recognized by the user as a shift in the position in the space where the virtual object is superimposed, for example. This applies not only to AR but also to so-called virtual reality (VR) in which a virtual object is presented in a virtual space that is artificially constructed.
  • VR virtual reality
  • the display information according to the drawing result of the virtual object is corrected according to the position and orientation of the viewpoint after the drawing (for example, correction of the presentation position,
  • a method of reducing (ideally eliminating) the influence of the above-described deviation can be given by applying (deformation or the like).
  • the present disclosure proposes a technology that makes it possible to present information according to the position and orientation of the viewpoint in a more preferable manner.
  • the acquisition unit that acquires information according to the recognition result of the position and orientation of the viewpoint, and the target object is associated with the first viewpoint based on the position and orientation of the first viewpoint.
  • the image is projected on the defined first projection surface.
  • a projection processing unit for associating second information, three-dimensional information of the object is restored based on the first information and the second information, and the restored object and a second viewpoint.
  • a correction processing unit that re-projects the object on a second projection plane defined in association with the second viewpoint according to a relative position and orientation relationship between the two; and a result of the re-projection. Display information according to the And a control unit, the information processing apparatus is provided.
  • the computer acquires information according to the recognition result of the position and orientation of the viewpoint, and determines the target object based on the position and orientation of the first viewpoint. Of the relative position and orientation between the first viewpoint and the object with respect to the first information according to the result of the projection. Associating the second information according to the relationship, restoring the three-dimensional information of the object based on the first information and the second information, and restoring the restored object and the second viewpoint. And reprojecting the object on a second projection plane defined in association with the second viewpoint according to a relative position and orientation relationship between Display information according to It includes causing the information processing method is provided.
  • the computer obtains information according to the recognition result of the position and orientation of the viewpoint, and the target object is determined based on the position and orientation of the first viewpoint.
  • the target object is determined based on the position and orientation of the first viewpoint.
  • Associating the second information according to the relationship restoring the three-dimensional information of the object based on the first information and the second information, and restoring the restored object and the second viewpoint.
  • FIG. 20 is an explanatory diagram for describing an example of a schematic configuration of an information processing system according to an embodiment of the present disclosure. It is an explanatory view for explaining an example of a schematic structure of an input / output device concerning the embodiment.
  • FIG. 8 is an explanatory diagram for explaining an outline of an example of a process related to correction of display information according to a position and orientation of a viewpoint.
  • FIG. 9 is an explanatory diagram for explaining the outline of another example of the process related to the correction of the display information according to the position and orientation of the viewpoint.
  • FIG. 9 is an explanatory diagram for explaining the outline of another example of the process related to the correction of the display information according to the position and orientation of the viewpoint.
  • FIG. 9 is an explanatory diagram for explaining the outline of another example of the process related to the correction of the display information according to the position and orientation of the viewpoint. It is explanatory drawing for demonstrating an outline about the basic idea of the technical characteristic of the information processing system which concerns on the same embodiment. It is a block diagram showing an example of functional composition of an information processing system concerning the embodiment. 5 is a timing chart showing an example of a flow of a series of processes of the information processing system according to the same embodiment. It is explanatory drawing for demonstrating an outline about Example 1 of the information processing system which concerns on the same embodiment. It is explanatory drawing for demonstrating an outline about Example 1 of the information processing system which concerns on the same embodiment.
  • FIG. 11 is an explanatory diagram for explaining an outline of an information processing system according to Modification Example 1.
  • FIG. 11 is an explanatory diagram for explaining an outline of an information processing system according to Modification Example 1.
  • FIG. 11 is an explanatory diagram for explaining an outline of an information processing system according to Modification Example 1.
  • FIG. 11 is an explanatory diagram for explaining an outline of an information processing system according to Modification Example 1.
  • FIG. 11 is an explanatory diagram for explaining an outline of an information processing system according to Modification Example 2. It is an explanatory view for explaining the outline of the information processing system concerning the modification 3.
  • FIG. 1 is an explanatory diagram for describing an example of a schematic configuration of an information processing system according to an embodiment of the present disclosure.
  • reference numeral M11 schematically indicates an object (that is, a real object) located in the real space.
  • reference signs V13 and V15 schematically show virtual contents (that is, virtual objects) presented so as to be superimposed on the real space.
  • the information processing system 1 presents the virtual object to the user by superimposing the virtual object on an object in the real space such as the real object M11 based on the so-called AR (Augmented Reality) technology.
  • AR Augmented Reality
  • FIG. 1 both the real object and the virtual object are presented together in order to make the features of the information processing system according to the present embodiment easier to understand.
  • the information processing system 1 includes an information processing device 10 and an input / output device 20.
  • the information processing device 10 and the input / output device 20 are configured to be capable of transmitting and receiving information to and from each other via a predetermined network.
  • the type of network that connects the information processing device 10 and the input / output device 20 is not particularly limited.
  • the network may be a so-called wireless network such as a network based on the Wi-Fi (registered trademark) standard.
  • the network may be configured by the Internet, a dedicated line, a LAN (Local Area Network), a WAN (Wide Area Network), or the like.
  • the network may include a plurality of networks, and at least a part of the networks may be configured as a wired network.
  • the information processing device 10 may be, for example, a device such as a smartphone configured to be communicable with another device via a wireless communication path.
  • the input / output device 20 may be configured as, for example, a wearable display provided as an accessory accessory to the smartphone. That is, the input / output device 20 is a device (for example, a wearable device) that operates in conjunction with the information processing device 10 by being connected to the information processing device 10 configured as a smartphone or the like via the network as described above. Etc.).
  • the input / output device 20 is a configuration for acquiring various input information and presenting various output information to a user who holds the input / output device 20.
  • the presentation of output information by the input / output device 20 is controlled by the information processing device 10 based on the input information acquired by the input / output device 20.
  • the input / output device 20 acquires information for recognizing the real object M11 as input information, and outputs the acquired information to the information processing device 10.
  • the information processing device 10 recognizes the position of the real object M11 in the real space (that is, the absolute coordinates of the real object M11) based on the information acquired from the input / output device 20, and based on the recognition result, the input / output device 20. To present virtual objects V13 and V15.
  • the input / output device 20 can present the virtual objects V13 and V15 to the user so that the virtual objects V13 and V15 are superimposed on the real object M11 based on the so-called AR technique.
  • the input / output device 20 and the information processing device 10 are shown as different devices in FIG. 1, the input / output device 20 and the information processing device 10 may be integrally configured. The details of the configurations and processes of the input / output device 20 and the information processing device 10 will be described later.
  • FIG. 2 is an explanatory diagram for describing an example of a schematic configuration of the input / output device according to the present embodiment.
  • the input / output device 20 is configured as a so-called head-mounted device that the user wears on at least a part of his / her head.
  • the input / output device 20 is configured as a so-called eyewear type (glasses type) device, and at least one of the lenses 293a and 293b is a transmissive display (output unit 211). Is configured as.
  • the input / output device 20 also includes first imaging units 201a and 201b, second imaging units 203a and 203b, an operation unit 207, and a holding unit 291 corresponding to a frame of glasses.
  • the holding unit 291 includes the output unit 211, the first imaging units 201a and 201b, the second imaging units 203a and 203b, and the operation unit 207 when the input / output device 20 is attached to the user's head. It is held so as to have a predetermined positional relationship with the head of the user.
  • the input / output device 20 may include a sound collecting unit for collecting the user's voice.
  • the lens 293a corresponds to the lens on the right eye side
  • the lens 293b corresponds to the lens on the left eye side.
  • the holding unit 291 holds the output unit 211 so that the output unit 211 (in other words, the lenses 293a and 293b) is positioned in front of the user's eyes when the input / output device 20 is attached.
  • the holding section 291 supports the output section 211 so as to be positioned in front of the user's eyes. That is, the holding portion 291 corresponds to an example of the “support portion”.
  • the first imaging units 201a and 201b are configured as so-called stereo cameras, and when the input / output device 20 is mounted on the head of the user, the direction in which the head of the user faces (that is, the front of the user). They are held by the holding portions 291 so that they face each other. At this time, the first imaging unit 201a is held near the right eye of the user, and the first imaging unit 201b is held near the left eye of the user. Based on such a configuration, the first imaging units 201a and 201b image a subject located in front of the input / output device 20 (in other words, a real object located in the real space) from different positions.
  • the input / output device 20 acquires an image of the subject located in front of the user, and based on the parallax between the images captured by the first imaging units 201a and 201b, It is possible to calculate the distance to the subject.
  • image may include “still image” and “moving image” unless otherwise specified.
  • the configuration and method are not particularly limited as long as the distance between the input / output device 20 and the subject can be measured.
  • the distance between the input / output device 20 and the subject may be measured based on a method such as multi-camera stereo, moving parallax, TOF (Time Of Flight), and Structured Light.
  • TOF is a method of projecting light such as infrared rays onto a subject and measuring the time until the posted light is reflected by the subject and returns for each pixel.
  • This is a method of obtaining an image (so-called distance image) including the distance (depth) of.
  • Structured Light is a range image that includes the distance (depth) to the subject based on the change in the pattern obtained from the imaging result by illuminating the subject with a pattern such as infrared light and capturing the image.
  • the moving parallax is a method of measuring the distance to the subject based on the parallax even in a so-called monocular camera. Specifically, the camera is moved to capture images of the subject from different viewpoints, and the distance to the subject is measured based on the parallax between the captured images. At this time, by recognizing the moving distance and the moving direction of the camera by various sensors, the distance to the subject can be measured more accurately.
  • the configuration of the imaging unit (for example, a monocular camera, a stereo camera, etc.) may be changed according to the distance measuring method.
  • the second imaging units 203a and 203b are respectively held by the holding unit 291 so that when the input / output device 20 is worn on the head of the user, the eyeballs of the user are located within the respective imaging ranges.
  • the second imaging unit 203a is held so that the right eye of the user is located within the imaging range. Based on such a configuration, the line of sight of the right eye based on the image of the eyeball of the right eye captured by the second image capturing unit 203a and the positional relationship between the second image capturing unit 203a and the right eye. It is possible to recognize the direction in which is facing. Similarly, the 2nd imaging part 203b is hold
  • the input / output device 20 includes both the second image capturing units 203a and 203b, but only one of the second image capturing units 203a and 203b may be provided. Good.
  • the operation unit 207 is configured to accept an operation on the input / output device 20 from a user.
  • the operation unit 207 may be configured by an input device such as a touch panel or a button, for example.
  • the operation unit 207 is held at a predetermined position of the input / output device 20 by the holding unit 291. For example, in the example shown in FIG. 2, the operation unit 207 is held at a position corresponding to the temple of glasses.
  • the input / output device 20 is provided with, for example, an acceleration sensor and an angular velocity sensor (gyro sensor), and the movement of the head of the user wearing the input / output device 20 (in other words, the input / output device).
  • the movement of 20 itself may be detected.
  • the input / output device 20 detects, as the movement of the user's head, components in the yaw direction, the pitch direction, and the roll direction to detect the movement of the user. A change in at least one of the position and the posture of the head may be recognized.
  • the input / output device 20 can recognize the change of its own position and posture in the real space according to the movement of the user's head. Further, at this time, the input / output device 20 uses the so-called AR technology to output the content to the output unit 211 so that the virtual content (that is, the virtual object) is superimposed on the real object located in the real space. It is possible to present it. Note that an example of a method (that is, self-position estimation) for the input / output device 20 to estimate its own position and orientation in the real space will be described later in detail.
  • HMD Head Mounted Display
  • examples of a head-mounted display device include, for example, a see-through HMD, a video see-through HMD, and a retina projection HMD.
  • the see-through HMD uses, for example, a half mirror or a transparent light guide plate to hold a virtual image optical system (that is, a display unit having optical transparency) including a transparent light guide unit in front of the user, and Display an image inside the virtual image optical system. Therefore, the user wearing the see-through HMD can see the outside scenery while viewing the image displayed inside the virtual image optical system.
  • the see-through HMD is based on, for example, the AR technique, with respect to the optical image of the real object located in the real space according to the recognition result of at least one of the position and the posture of the see-through HMD. It is also possible to superimpose the image of the virtual object.
  • the see-through HMD there is a so-called eyeglass-type wearable device in which a portion corresponding to a lens of eyeglasses is configured as a virtual image optical system.
  • the input / output device 20 shown in FIG. 2 corresponds to an example of a see-through type HMD.
  • the video see-through HMD When the video see-through HMD is attached to the user's head or face, the video see-through HMD is attached to cover the user's eyes, and a display unit such as a display is held in front of the user's eyes.
  • the video see-through HMD has an image pickup unit for picking up an image of the surrounding landscape, and causes the display unit to display the image of the landscape in front of the user captured by the image pickup unit.
  • the video see-through HMD superimposes a virtual object on an image of an external landscape according to a recognition result of at least one of a position and a posture of the video see-through HMD based on, for example, AR technology. You may let me.
  • the projection unit In the retinal projection type HMD, the projection unit is held in front of the user's eyes, and the image is projected from the projection unit to the user's eyes so that the image is superimposed on the external landscape. More specifically, in the retina projection type HMD, an image is directly projected from the projection unit onto the retina of the user's eye, and the image is formed on the retina. With such a configuration, even a user with myopia or hyperopia can view a clearer image. Further, the user wearing the retinal projection type HMD can bring the external scenery into view while viewing the image projected from the projection unit.
  • the retinal projection HMD for example, based on the AR technology, an optical image of the real object located in the real space according to the recognition result of at least one of the position and the posture of the retinal projection HMD. It is also possible to superimpose the image of the virtual object on.
  • an HMD there is an HMD called an immersive HMD.
  • the immersive HMD is mounted so as to cover the eyes of the user, and a display unit such as a display is held in front of the eyes of the user, similarly to the video see-through HMD. Therefore, it is difficult for the user wearing the immersive HMD to directly put the external scenery (that is, the scenery of the real world) into the visual field, and only the image displayed on the display unit comes into the visual field.
  • the immersive HMD can give the user who is viewing the image an immersive feeling. Therefore, the immersive HMD can be applied, for example, when mainly presenting information based on VR (Virtual Reality) technology.
  • VR Virtual Reality
  • the input / output device 20 images a marker or the like of a known size presented on a real object in the real space by an imaging unit such as a camera provided in itself. Then, the input / output device 20 estimates at least one of the relative position and orientation of itself with respect to the marker (and by extension, the real object on which the marker is presented) by analyzing the captured image. In the following description, the case where the input / output device 20 estimates its own position and orientation will be described, but the input / output device 20 estimates only one of its own position and orientation. Good.
  • the relative position of the imaging unit (and thus the input / output device 20 including the imaging unit) with respect to the marker is possible to estimate the direction.
  • the distance between the marker and the imaging unit can be estimated according to the size of the marker in the image. It is possible. More specifically, if the marker is imaged from a distance, the marker is imaged smaller. Further, the range in the real space imaged in the image at this time can be estimated based on the angle of view of the imaging unit.
  • the distance between the marker and the imaging unit can be calculated backward according to the size of the marker imaged in the image (in other words, the ratio of the marker in the angle of view). Is possible.
  • the input / output device 20 can estimate the relative position and orientation of itself with respect to the marker.
  • SLAM simultaneous localization and mapping
  • SLAM is a technology that uses an imaging unit such as a camera, various sensors, an encoder, and the like to perform self-position estimation and environment map creation in parallel.
  • an imaging unit such as a camera, various sensors, an encoder, and the like.
  • the three-dimensional shape of the captured scene (or subject) is sequentially restored based on the moving image captured by the imaging unit.
  • the position and orientation of the image capturing unit may be estimated as information indicating a relative change based on the detection result of the sensor by providing various sensors such as an acceleration sensor and an angular velocity sensor in the input / output device 20. Is possible.
  • the method is not necessarily limited to the method based on the detection results of various sensors such as an acceleration sensor and an angular velocity sensor.
  • the estimation result of the relative position and orientation of the input / output device 20 with respect to the marker based on the imaging result of the known marker by the imaging unit is initialized in the SLAM described above. Or may be used for position correction.
  • the input / output device 20 estimates the self-position based on the SLAM that has received the result of the initialization and the position correction that have been executed previously. This makes it possible to estimate the position and orientation of the marker itself (and thus the real object on which the marker is presented).
  • the result may be used for the self-location estimation.
  • the detection result of a characteristic part of the object such as the shape or pattern of the object (real object) in the real space is used for initialization processing and position correction in SLAM. May be used.
  • the delay between the detection of the movement of the viewpoint and the presentation of the information May affect the experience the user has.
  • the head of the user is detected from the detection result of the movement of the user's head.
  • it takes time to perform a series of processes of recognizing the orientation of and presenting information according to the recognition result there is a case where it takes time to perform a series of processes of recognizing the orientation of and presenting information according to the recognition result.
  • the processing delay Misalignment may occur between the movement of the user's head and the change of the visual field according to the movement of the head (that is, the change of information presented to the user).
  • the delay becomes apparent as a gap between the real world and the virtual object. For this reason, even if the deviation that is actualized as a result of the delay is a slight amount that is hardly perceived by the user in the case of VR, it may be easily perceived by the user in the case of AR.
  • a space for installing a device such as a processor is limited as compared with a stationary device, and it may be difficult to apply a high-performance processor.
  • FIG. 3 is an explanatory diagram for explaining an outline of an example of a process related to correction of display information according to the position and orientation of the viewpoint, and correction of display information called “Time Warp” or “Reprojection”. It shows about an example of the technology according to. Note that, in the following description, the technique called “Reprojection” is focused on for convenience of explanation, but substantially the same contents can be applied to the technique called "Time Warp”.
  • reference numeral V100 schematically indicates a virtual object to be presented as display information (hereinafter, also simply referred to as “object”).
  • object for the object V100, for example, various kinds of information are set such that the object V100 is localized at a desired position in the real space with a desired posture.
  • reference signs P101a and P101b schematically indicate the viewpoint (for example, the head of the user).
  • the viewpoint P101a schematically shows the viewpoint before movement.
  • a viewpoint P101b schematically shows the viewpoint after movement.
  • the viewpoints P101a and P101b may be simply referred to as “viewpoint P101” unless otherwise distinguished.
  • viewpoint P101 may be simply referred to as “viewpoint P101” unless otherwise distinguished.
  • the relationship between the viewpoint P101 and the virtual object V100 is presented two-dimensionally for the sake of easy understanding of the description, but the content of the processing related to Reprojection is not necessarily limited. is not. That is, even when the relationship between the viewpoint P101 and the virtual object V100 changes three-dimensionally, the process related to Reprojection is applied three-dimensionally (that is, the relationship between the three-dimensional position and orientation is considered). ) It becomes substantially the same. This also applies to the examples shown in other drawings than FIG. 3 referred to in the description below.
  • the visual field from the viewpoint P101a is based on the viewpoint P101a (observation point).
  • the object V100 is projected onto the screen surface P103a defined according to (angle of view). That is, the screen surface P103a corresponds to the projection surface defined in association with the viewpoint P101a.
  • the color of the object V100 when the object V100 is drawn as the two-dimensional display information may be calculated according to the positional relationship between the light source defined in the three-dimensional space and the object V100. ..
  • the color of V100, the two-dimensional position where the object V100 is presented (that is, the position on the screen surface P103a), and the like are calculated.
  • the reference symbol V105a schematically indicates two-dimensional display information corresponding to the projection result of the surface V101 of the object V100 on the screen surface P103a.
  • the reference symbol V107a schematically indicates two-dimensional display information according to the projection result of the surface V103 of the object V100 on the screen surface P103a.
  • the drawing area is associated with at least a part of an area of the screen surface P103 (for example, the screen surface P103a) defined according to the position and orientation of the viewpoint P101, and the area is associated with the drawing area.
  • the projection result of the object V100 on is drawn as display information (for example, the above-mentioned display information V105a and V107a).
  • the drawing area is associated with the display area of the output unit such as a display, and the drawing result of the display information in the drawing area can be presented in the display area.
  • the drawing area may be defined as at least a part of an area of a predetermined buffer (for example, a frame buffer) that temporarily or permanently holds data such as a drawing result.
  • the processing related to the projection and the drawing described above tends to have a heavy load, and the posture and position of the viewpoint P101 is determined at the timing when the display information corresponding to the result of the projection and the drawing is presented in the display area of the output unit. It may have changed.
  • the process of correcting the display information that is, Reprojection
  • the process of correcting the display information that is, Reprojection
  • the display information V105a and V107a are presented in the display area of the output unit, the display information V105a and V107a are displayed according to the position and orientation of the viewpoint P101b at the presentation timing.
  • An example of correction is shown.
  • reference numeral P103b schematically indicates a screen surface defined in association with the moved viewpoint P101b.
  • the screen surface P103 (in other words, the screen surface P103 (in other words, the difference) between the viewpoint P101a before the movement and the viewpoint P101b after the movement.
  • the display positions of the display information V105a and V107a in the display area of the output unit) are corrected.
  • the shapes of the display information V105a and V107a may be corrected (that is, may be deformed) according to the difference in the position and orientation between the viewpoint P101a and the viewpoint P101b.
  • reference signs V105b and V107b in the right diagram of FIG. 3 schematically indicate display information corresponding to the application result of the above correction to the display information V105a and V107a.
  • the process related to Reprojection described with reference to FIG. 3 is for correcting the display information two-dimensionally, and performs sufficient correction when the position or orientation of the viewpoint changes three-dimensionally. Can be difficult.
  • FIG. 4 is an explanatory diagram for explaining the outline of another example of the process related to the correction of the display information according to the position and orientation of the viewpoint.
  • the same reference numerals as those in FIG. 3 indicate the same objects as those in the example shown in FIG.
  • the left diagram of FIG. 4 is the same as the left diagram of FIG. 3, and detailed description thereof will be omitted.
  • the right diagram of FIG. 4 shows a case where the display information V105a and V107a are corrected according to the position and orientation of the viewpoint P101 at the presentation timing. Another example is shown.
  • reference numeral P101c schematically indicates the viewpoint P101 after movement.
  • reference numeral P103c schematically indicates a screen surface (projection surface) defined according to the visual field (angle of view) from the viewpoint P101c.
  • the example shown in the right diagram of FIG. 4 is different from the example shown in the right diagram of FIG. 3 in that the position and orientation of the viewpoint P101 change with the rotation of the viewpoint P101. Specifically, in the example shown in the right diagram of FIG. 4, the position and orientation of the viewpoint P101 are changed so that the viewpoint P101 moves in the lateral direction while rotating in the yaw direction.
  • the appearance of the object V100 is significantly different between the viewpoint P101a before the movement and the viewpoint P101c after the movement. Therefore, as shown in FIG. 3, when it is difficult to accurately reproduce the shape of the object V100 viewed from the viewpoint P101c after the movement only by correcting the presentation positions of the display information V105a and V107a two-dimensionally. There is. Therefore, for example, in the example shown in the right diagram of FIG. 4, the shapes of the display information V105a and V107a are corrected according to the direction and amount of rotation of the viewpoint P101.
  • reference signs V105c and V107c in the right diagram of FIG. 4 schematically indicate display information corresponding to the application result of the above correction to the display information V105a and V107a.
  • the display information is transformed so as to be two-dimensionally shifted, so that the viewpoint P101c corresponds to the moved viewpoint P101c. It may be possible to reproduce the display information (for example, the display information V105c and V107c).
  • the viewpoint P101 rotates in the roll direction, it may be difficult to reproduce only by two-dimensional deformation. In such a case, for example, distortion correction or the like should be applied. May be reproduced in.
  • the process related to Reprojection described with reference to FIG. 3 is to accurately reproduce the object viewed from the viewpoint after the movement by correction in a situation where the target object has a shape that is long in the depth direction. Can be difficult.
  • FIG. 5 is an explanatory diagram for explaining the outline of another example of the process related to the correction of the display information according to the position and orientation of the viewpoint.
  • reference symbols P105a and P105b schematically indicate the viewpoint (for example, the head of the user).
  • the viewpoint P105a schematically shows the viewpoint before movement.
  • a viewpoint P105b schematically shows the viewpoint after movement.
  • the viewpoints P105a and P105b may be simply referred to as "viewpoint P105" unless otherwise distinguished.
  • reference numeral V110 schematically indicates an object to be presented as display information.
  • the left diagram of FIG. 5 schematically shows the processing relating to the projection and drawing of the object V110 according to the position and orientation of the viewpoint P105a.
  • reference numeral P107a schematically indicates a screen surface (projection surface) defined according to the visual field (angle of view) from the viewpoint P105a.
  • the surfaces V111 and V113 located on the viewpoint P105a side can be visually recognized. Therefore, each of the planes V111 and V113 is projected on the screen plane P107a according to the relationship of the relative position and orientation with the viewpoint P105a, and the result of the projection is drawn.
  • the reference symbol V115a schematically indicates two-dimensional display information according to the projection result of the surface V111 of the object V110 on the screen surface P107a.
  • the reference sign V117a schematically shows two-dimensional display information according to the projection result of the surface V113 of the object V110 on the screen surface P107a.
  • the display information V115a and V117a are presented in the display area of the output unit, the display information V115a and V117a are displayed according to the position and orientation of the viewpoint P105b at the timing of the presentation. An example of correction is shown.
  • reference numeral P107b schematically indicates a screen surface defined in association with the moved viewpoint P105b.
  • the change in the appearance when the position of the viewpoint P105 changes is different between the front side and the back side in the depth direction among the respective parts of the object V110.
  • the width looks wider than that from the viewpoint P105a before the movement. Therefore, for example, if the presentation positions of the display information V115a and V117a on the screen surface P107 (in other words, the display area of the output unit) are two-dimensionally corrected, the appearance of the surface V113 of the object V110 may be inconsistent. is there.
  • reference symbols V115b and V117b schematically show an example of display information according to the result of applying the correction (Reprojection) to the display information V115a and V117a. That is, in the example shown on the right side of FIG. 5, the corrected display information V117b is not presented in the portion on the screen surface P107b where the depth side of the surface V113 of the object V110 should be visible, resulting in a contradiction. The appearance is as if there had occurred.
  • the processing related to Reprojection described with reference to FIG. 3 is performed so that the consistency of any one of the objects is ensured in the situation where there are multiple objects with different distances from the viewpoint. Therefore, in the processing related to the Reprojection, it may be difficult to accurately reproduce another object by correction.
  • FIG. 6 is an explanatory diagram for explaining the outline of another example of the process related to the correction of the display information according to the position and orientation of the viewpoint.
  • reference symbols P109a and P109b schematically indicate the viewpoint (for example, the head of the user).
  • the viewpoint P109a schematically shows the viewpoint before movement.
  • a viewpoint P109b schematically shows the viewpoint after movement. Note that in the following description, the viewpoints P109a and P109b may be simply referred to as “viewpoint P109” unless otherwise distinguished.
  • reference symbols V120 and V140 schematically indicate objects to be presented as display information.
  • the left diagram of FIG. 6 schematically shows the processing relating to the projection and drawing of the objects V120 and V140 according to the position and orientation of the viewpoint P195a.
  • reference numeral P111a schematically indicates a screen surface (projection surface) defined according to the visual field (angle of view) from the viewpoint P109a.
  • the viewpoint P109a among the surfaces of the object V120, the surfaces V121 and V123 located on the viewpoint P109a side, and among the surfaces of the object V140, the surface V141 located on the viewpoint P109a side. , Can be visually recognized.
  • each of the surfaces V121, V123, and V141 is projected on the screen surface P111a according to the relationship of the relative position and orientation with the viewpoint P109a, and the result of the projection is drawn.
  • the reference symbol V125a schematically indicates two-dimensional display information according to the projection result of the surface V121 of the object V120 on the screen surface P111a.
  • the reference numeral V127a schematically indicates two-dimensional display information according to the projection result of the surface V123 of the object V120 on the screen surface P111a.
  • the reference sign V143a schematically indicates two-dimensional display information according to the projection result of the surface V141 of the object V140 on the screen surface P111a.
  • V125a, V127a, and V143a when the display information V125a, V127a, and V143a is presented in the display area of the output unit, the display information V125a is displayed according to the position and orientation of the viewpoint P109b at the presentation timing.
  • V127a, and V143a are shown as an example.
  • reference numeral P111b schematically indicates the screen surface defined in association with the viewpoint P109b after movement.
  • each display information (that is, the display information V125a, V127a, and V143a) is corrected.
  • the presentation positions of the display information V125a, V127a, and V143a are corrected so that the appearance of the object V120 located closer to the front than the viewpoint P109 becomes more correct.
  • reference signs V125b, V127b, and V143b schematically show an example of display information according to the result of applying the correction (Reprojection) to the display information V125a, V127a, and V143a.
  • the object V120 and the object V140 having different distances from the viewpoint P109 have different appearance changes when the position of the viewpoint P109 changes.
  • the correction is performed so that the appearances of the display information V125b and V127b corresponding to the surfaces V121 and V123 of the object V120 become more correct. Therefore, the display information V143b corresponding to the surface V141 of the object V140 is presented at a position deviated from the position that should be originally viewed from the viewpoint P109b. That is, in the example shown in FIG. 6, the appearance of the object V140 from the viewpoint P109b after the movement is partially inconsistent.
  • the present disclosure proposes a technique that makes it possible to present information according to the position and orientation of the viewpoint in a more preferable manner. Specifically, we propose a technology that enables more accurate reflection of the three-dimensional position and orientation relationship between the viewpoint and the object even when a correction process equivalent to so-called Reprojection is applied. To do.
  • FIG. 7 is an explanatory diagram for explaining the outline of the basic idea of the technical features of the information processing system according to the embodiment of the present disclosure.
  • reference symbols P151a and P151b schematically indicate the viewpoint (for example, the head of the user).
  • the viewpoint P151a schematically shows the viewpoint before movement.
  • a viewpoint P151b schematically shows the viewpoint after movement.
  • the viewpoints P151a and P151b may be simply referred to as "viewpoint P151" unless otherwise distinguished.
  • reference symbols V150a and V160a schematically indicate objects to be presented as display information.
  • reference numeral P153a schematically indicates a screen surface (projection surface) defined according to the visual field (angle of view) from the viewpoint P151a.
  • the surface V161a In the example shown in the left diagram of FIG. 7, from the viewpoint P151a, among the surfaces of the object V150a, surfaces V151a and V153a located on the viewpoint P151a side, and among the surfaces of the object V160a located on the viewpoint P151a side, the surface V161a. , Can be visually recognized.
  • each of the surfaces V151a, V153a, and V161a is projected on the screen surface P153a according to the relationship of the relative position and orientation with the viewpoint P151a, and the result of the projection is drawn. That is, the viewpoint P151a before the movement corresponds to an example of the "first viewpoint", and the screen surface P153a defined in association with the viewpoint P151a (that is, the first viewpoint) is the "first projection surface”.
  • the reference symbol V125a schematically indicates two-dimensional display information according to the projection result of the surface V121 of the object V120 on the screen surface P111a.
  • reference numeral V127a schematically indicates two-dimensional display information according to the projection result of the surface V123 of the object V120 on the screen surface P111a.
  • reference sign V143a schematically indicates two-dimensional display information according to the projection result of the surface V141 of the object V140 on the screen surface P111a.
  • the projection result of each object is associated with information according to the relationship of the relative position and orientation between the viewpoint and the object.
  • information regarding the distance between the viewpoint P151a and the surface V151a are associated.
  • the information relating to the distance between the viewpoint and the object, which is associated with the display information is also referred to as “distance information” for convenience.
  • the display information V157a corresponding to the projection result of the surface V153a of the object V150a is associated with the distance information regarding the distance between the viewpoint P151a and the surface V153a.
  • the display information V163a corresponding to the projection result of the surface V161a of the object V160a is associated with the distance information regarding the distance between the viewpoint P151a and the surface V161a.
  • the distance information is associated with the display information, but if the information is capable of specifying the relative position and orientation relationship between the viewpoint and the object,
  • the information associated with the display information is not necessarily limited to the distance information.
  • the coordinates of the viewpoint and the object in the predetermined coordinate system may be associated with each other as information according to the relationship of the relative position and orientation between the viewpoint and the object.
  • various information according to the relationship between the relative position and orientation between the viewpoint and the object for example, based on the information regarding the position and orientation of the viewpoint, the information regarding the position and orientation for orienting the object, etc. It is possible to obtain.
  • the method is not particularly limited as long as it is possible to acquire information that can specify the relationship between the relative position and orientation between the viewpoint and the object.
  • the display information according to the projection result of the object corresponds to an example of “first information”.
  • information associated with the display information that is, the first information
  • information according to the relationship between the relative position and orientation between the viewpoint and the object is an example of the “second information”. Equivalent to.
  • the three-dimensional information of the object is restored. ..
  • the three-dimensional shapes of the objects V150a and V160a are based on the display information V155a, V157a, and V163a and the information (for example, distance information) associated with each display information.
  • Information for example, information such as a three-dimensional position, orientation, and shape is restored.
  • the restoration results of the objects V150a and V160a may be referred to as "object V150b” and “object V160b” in order to distinguish them from the objects V150a and V160a that are projection targets.
  • object V150b when the objects V150a and V150b are not particularly distinguished, they may be simply referred to as "object V150”.
  • object V160a and V160b when the objects V160a and V160b are not particularly distinguished, they may be simply referred to as "object V160”.
  • the three-dimensional information of the surface V151b of the object V150b is restored based on the display information V155a and the distance information associated with the display information V155a.
  • the three-dimensional information of the surface V153b of the object V150b is restored based on the display information V157a and the distance information associated with the display information V157a.
  • the three-dimensional information of the surface V161b of the object V160b is restored based on the display information V163a and the distance information associated with the display information V163a.
  • the restored objects V150b and V160b are viewed from the viewpoint P151b based on the position and orientation of the moved viewpoint P151b (that is, the viewpoint at the display information presentation timing).
  • the image is re-projected on the screen surface P153b (projection surface) defined according to the (angle of view). That is, the viewpoint P151b after the movement, which is the target of the reprojection, corresponds to an example of the “second viewpoint”, and the projection plane P153b defined in association with the viewpoint P151b (that is, the second viewpoint) is , "Second projection plane".
  • the position and orientation of the viewpoint P151b after the movement is based on, for example, detection results of changes in the position and orientation of the viewpoint P151 by various sensors such as an acceleration sensor and an angular velocity sensor, and self-position estimation based on the detection results. It is possible to calculate.
  • reference numeral V155b schematically indicates display information according to the result of reprojection of the surface V151b of the restored object V150b.
  • reference numeral V157b schematically indicates display information corresponding to the result of reprojection of the surface V153b of the restored object V150b.
  • the reference sign V163b schematically indicates display information corresponding to the result of reprojection of the surface V161b of the restored object V160b.
  • the target object is projected and drawn according to the position and orientation of the viewpoint, and the display information corresponding to the result of the projection and the drawing is displayed.
  • Information is associated with the relative position and orientation relationship between the object and the viewpoint. That is, the display information includes, in addition to the information of each pixel (for example, the information of the color of each pixel) according to the drawing result, the distance information (that is, the Z value and the like) and the corresponding object and the viewpoint. Information on the distance between) and the like are associated.
  • the display information according to the result of the projection and the drawing through the output unit When presenting the display information according to the result of the projection and the drawing through the output unit, first, the three-dimensional information of the object is restored based on the display information and the distance information, The object is reprojected according to the position and orientation of the viewpoint at the presentation timing. As a result, the display information according to the drawing result is corrected according to the position and orientation of the viewpoint after movement (for example, the presentation position and shape are corrected).
  • the correction processing corresponding to so-called Reprojection
  • the information processing system According to the information processing system according to the present embodiment, the correction (processing corresponding to so-called Reprojection) according to the position and orientation of the viewpoint is applied to the display information according to the projection result of the object. Even under such a situation, it becomes possible to more accurately reflect the three-dimensional position or posture relationship between the viewpoint and the object. That is, according to the information processing system according to the present embodiment, in a situation where the information is presented to the user according to the change in the position or posture of the viewpoint, the information is presented after the movement of the viewpoint is detected. It is possible to correct the shift in the superimposed position of the display information according to the processing delay until the above, in a more preferable manner.
  • FIG. 8 is a block diagram showing an example of the functional configuration of the information processing system according to the present embodiment. Specifically, FIG. 8 shows an example of the functional configuration of the information processing system 1 shown in FIG. The configuration for presenting information to the user via the twenty output units 211 is focused and shown.
  • the information processing system 1 includes an information processing device 10, an imaging unit 201, a detection unit 251, an output unit 211, and a storage unit 191.
  • the output unit 211 corresponds to, for example, the output unit 211 described with reference to FIG.
  • the image pickup unit 201 corresponds to the first image pickup units 201a and 201b configured as a stereo camera in FIG.
  • the image capturing unit 201 captures an image of an object (subject) in the real space, and outputs the captured image to the information processing device 10.
  • the detection unit 251 schematically illustrates a portion related to acquisition of information for detecting a change in the position or the posture of the input / output device 20 (and by extension, the movement of the head of the user wearing the input / output device 20). There is. That is, the detection unit 251 acquires information for detecting a change in the position or orientation of the viewpoint (in other words, a change in the position or orientation of the input / output device 20). As a specific example, the detection unit 251 may include various sensors such as an acceleration sensor and an angular velocity sensor for detecting movement of an object. The detection unit 251 outputs the acquired information to the information processing device 10. As a result, the information processing device 10 can recognize the change in the position and the posture of the input / output device 20.
  • the storage unit 191 temporarily or permanently stores programs and data for the information processing apparatus 10 to realize various functions.
  • the storage unit 191 holds data of virtual content to be presented via the output unit 211 (for example, data for reproducing the shape, color, arrangement, etc. of a virtual object). May be.
  • the position where the storage unit 191 is provided is not particularly limited.
  • the storage unit 191 may be incorporated in the information processing device 10.
  • the storage unit 191 may be configured as a device other than the information processing device 10 and externally attached to the information processing device 10.
  • the storage unit 191 may be configured as a device other than the information processing device 10 and connected to the information processing device 10 via a network.
  • the information processing device 10 includes a recognition processing unit 101, a prediction processing unit 103, a drawing processing unit 105, a frame buffer 107, a correction processing unit 109, and an output control unit 111.
  • the recognition processing unit 101 recognizes an object (subject) in the real space captured by the image by acquiring the image captured by the image capturing unit 201 and performing an analysis process on the acquired image.
  • the recognition processing unit 101 acquires and acquires images (hereinafter also referred to as “stereo images”) captured from a plurality of different viewpoints from the imaging unit 201 configured as a stereo camera. Based on the parallax between the images, the distance to the object imaged in the images is measured for each pixel of the image.
  • the recognition processing unit 101 causes the image capturing unit 201 (and thus the input / output device 20) and the respective objects imaged in the image to be relative in the real space at the timing when the image is captured.
  • the recognition processing unit 101 may recognize the position and orientation of the viewpoint, for example, based on the technique of self-position estimation.
  • the recognition processing unit 101 performs self-position estimation and environment map creation based on SLAM, so that the input / output device 20 (in other words, the viewpoint) and the object imaged in the image are separated. You may recognize the positional relationship in the real space between them.
  • the recognition processing unit 101 acquires information regarding the detection result of the change in the position and orientation of the input / output device 20 from the detection unit 251 and uses the information for self-position estimation based on SLAM. Good.
  • the recognition processing unit 101 uses SLAM-based self-position estimation to calculate the current position, attitude, velocity, inertial acceleration, and the like of the input / output device 20.
  • the recognition processing unit 101 integrates the acceleration and angular velocity obtained from the detection unit 251 by inertial navigation using the current position, posture, and velocity of the input / output device 20 as a base point, and thus the latest position, posture, and velocity are obtained. And the angular velocity is calculated.
  • the above is just an example, and the method and the configuration therefor are not particularly limited as long as the position and orientation of the viewpoint can be recognized. That is, the configurations of the imaging unit 201, the detection unit 251, and the like may be changed as appropriate according to the method of recognizing the position and orientation of the viewpoint.
  • the recognition processing unit 101 outputs information about the result of the self-position estimation of the input / output device 20 (that is, the recognition result of the position and orientation of the viewpoint) to the prediction processing unit 103.
  • the prediction processing unit 103 acquires, from the recognition processing unit 101, information about the result of self-position estimation of the input / output device 20 (that is, the recognition result of the position and orientation of the viewpoint).
  • the prediction processing unit 103 predicts the future position and orientation of the input / output device 20 based on the acquired information.
  • the prediction processing unit 103 extrapolates the position and orientation of the input / output device 20 and the velocity and angular velocity according to the result of the self-position estimation of the input / output device 20 by linear interpolation, The future position and orientation of the output device 20 may be predicted.
  • the prediction processing unit 103 outputs information regarding the prediction result of the position and orientation of the input / output device 20 (in other words, the viewpoint) to the drawing processing unit 105 and the correction processing unit 109.
  • the position and orientation of the viewpoint in the timing t r may be referred to as eyepose [t r].
  • the drawing processing unit 105 acquires information regarding the prediction result of the position and orientation of the viewpoint from the prediction processing unit 103, and displays the display information to be presented in a predetermined buffer according to the position and orientation of the viewpoint based on the acquired information. Draw on.
  • the rendering processing unit 105 associates the target object (for example, a virtual object having three-dimensional information) with the screen according to the position and orientation of the viewpoint, for example.
  • the display information may be projected on the display area of the output unit 211 and the display information (that is, two-dimensional display information) according to the result of the projection may be drawn in the buffer.
  • the drawing processing unit 105 will be described as drawing the drawing result in the frame buffer 107, but the area in which the drawing result is held is not necessarily limited.
  • the drawing processing unit 105 corresponds to an example of a “projection processing unit”.
  • the portion that acquires information about the prediction result of the position and orientation of the viewpoint from the prediction processing unit 103 is the “acquisition unit”.
  • the “acquisition unit” corresponds to an example.
  • the drawing processing unit 105 may acquire information regarding the recognition result of the position of the object in the real space from the recognition processing unit 101.
  • the drawing processing unit 105 may draw the display information according to the recognition result of the object (real object) in the real space.
  • the drawing processing unit 105 projects the object on the screen surface according to the relationship in position and orientation between the object in the real space and the object to be presented, and Display information according to the result may be drawn in the buffer.
  • the rendering processing unit 105 controls the position in the real space where the object is localized so that the object is superposed on the object in the real space according to the recognition result of the position and orientation of the viewpoint. You may.
  • the display information (for example, two-dimensional display information such as an image) drawn according to the projection result of the object by the drawing processing unit 105 is referred to as a “reference frame” for convenience. Also called. Also, the reference frame corresponding to eyepose [t r ] may be referred to as frame ref [t r ].
  • the drawing processing unit 105 may control the color and brightness of the display information drawn in the buffer according to various conditions. As a specific example, when the target object is projected onto the display area, the rendering processing unit 105 displays the target object according to the positional relationship between the light source defined in the three-dimensional space and the target object. You may control the color and brightness when drawing as display information. Further, when presenting the display information so as to be superimposed on the object in the real space based on the AR technique, the drawing processing unit 105 displays the display information according to the positional relationship between the object and the display information. You may control the color and brightness when drawing.
  • the drawing processing unit 105 based on the display information (reference frame) drawn according to the projection result of the object, information (for example, information according to the relative position and orientation between the viewpoint and the object). , Z value etc.). Note that here, the drawing processing unit 105 associates the display information with the distance information according to the distance between the viewpoint and the object.
  • the frame buffer 107 is a storage area that temporarily or permanently holds various data.
  • the frame buffer 107 holds, for example, the drawing result of the display information (that is, the reference frame) by the drawing processing unit 105.
  • the correction processing unit 109 performs various corrections on the display information (reference frame) drawn in the frame buffer 107 by the drawing processing unit 105.
  • the correction processing unit 109 changes the position and orientation of the viewpoint until the display information drawn in the buffer by the drawing processing unit 105 is presented to the output unit 211 by the output control unit 111 described below.
  • correction of the display information (a process corresponding to so-called reprojection) may be applied according to the change in the position or posture of the viewpoint.
  • the correction processing unit 109 is based on the display information (reference frame) held in the frame buffer 107 and the distance information associated with the display information. , Three-dimensional information of the object that is the projection source of the display information is restored.
  • the correction processing unit 109 acquires from the prediction processing unit 103 information regarding the prediction result of the viewpoint position and orientation at the display information presentation timing via the output unit 211, and the viewpoint position and orientation based on the acquired information. , Reproject the restored object.
  • the correction processing unit 109 corrects the display information (reference frame) held in the frame buffer 107. That is, the presentation position and shape of the display information are corrected according to the position and orientation of the viewpoint after the movement.
  • the output control unit 111 adjusts the timing of presenting the information via the output unit 211.
  • the output unit 211 is caused to present the corrected display information.
  • the unit of application of the above-described processing by the correction processing unit 109 and the output control unit 111 may be appropriately changed according to the method of making the output unit 211 present information.
  • the correction processing unit 109 and the output control unit 111 may apply the above-described processing for each screen.
  • the display area of the output unit 211 is divided into a plurality of partial areas (for example, lines and tiles) and display information is sequentially presented for each partial area, such as so-called scan line emission
  • the correction processing unit 109 and the output control unit 111 may apply the above-described processing to each part including one or more partial areas.
  • the functional configuration of the information processing system 1 shown in FIG. 8 is merely an example, and the functional configuration of the information processing system 1 is not necessarily shown in FIG. 8 as long as it is possible to realize the operation of each configuration described above. It is not limited to the example.
  • at least one of the imaging unit 201, the detection unit 251, and the output unit 211 and the information processing device 10 may be integrally configured.
  • some functions of the information processing device 10 may be provided outside the information processing device 10.
  • a portion corresponding to the recognition processing unit 101 or the prediction processing unit 103 may be provided outside the information processing device 10.
  • an interface that acquires information from a portion corresponding to the recognition processing unit 101 or the prediction processing unit 103 provided outside the information processing apparatus 10 uses information corresponding to the recognition result of the position and orientation of the viewpoint.
  • at least a part of the functions of the information processing device 10 may be realized by a plurality of devices operating in cooperation with each other.
  • FIG. 9 is a timing chart showing an example of a flow of a series of processes of the information processing system according to the present embodiment, and in particular, the information processing device 10 responds to a change in the position or orientation of the input / output device 20. Then, the processing for presenting information to the user via the output unit 211 of the input / output device 20 is focused and shown.
  • reference symbol Tf schematically indicates a unit period related to presentation of information via the output unit, and corresponds to, for example, a frame period.
  • the display area of the output unit 211 is divided into N partial areas, and information is sequentially presented for each partial area (for example, in the case of scan line light emission). That is, in the example illustrated in FIG. 9, when the display information is presented in the display area of the output unit 211, the frame period is divided into N, and the display information is presented in the display area in N times.
  • reference symbols t p1 to t pN respectively indicate the timings at which the presentation of the display information is started for each of the N partial regions into which the display region is divided.
  • reference numerals t w1 to t wN schematically indicate timings immediately before the timings t p1 to t pN, respectively.
  • the projection of the object to be presented and the drawing of the display information according to the result of the projection are performed prior to the processing related to the presentation of the display information via the output unit 211. More specifically, in the example shown in FIG. 9, the start timing of the frame presentation of the display information is performed (e.g., the timing t p1) before, according to the estimated result of the position and orientation of the viewpoint at the timing t r After that, the position and orientation of the viewpoint are predicted, and the process related to image generation, that is, the process related to the projection of the object and the drawing of the display information according to the result of the projection are performed according to the result of the prediction. Such processing is executed.
  • the start timing of the frame presentation of the display information is performed (e.g., the timing t p1) before, according to the estimated result of the position and orientation of the viewpoint at the timing t r
  • the process related to image generation that is, the process related to the projection of the object and the drawing of the display information according to the result of the projection are performed according to the result
  • the display information stored in the buffer corresponding to the drawing result is displayed.
  • a process related to the correction of the portion corresponding to the partial area is executed.
  • the timing t w1 the timing t The position and orientation of the viewpoint in p1 are predicted. Then, from the result of the prediction, the difference between the position and orientation of the viewpoint at the timing when the target display information is drawn and the position and orientation of the viewpoint at timing tp1 is estimated. That is, the process related to the correction of the display information (in other words, the process related to the delay compensation) is executed based on the estimation result of the difference.
  • the object is restored from the display information held in the buffer, and the restored object is reprojected on the screen surface according to the position and orientation of the viewpoint at the timing t p1 .
  • the correction of the display information held in the buffer (for example, the correction of the presentation position and the shape) is performed.
  • the execution of the process related to the presentation of the display information after correction for the corresponding partial region is started.
  • the portion corresponding to a partial region presentation information at timing t p2, second only to the timing t p1 is performed based on the position and orientation of the estimation result of the viewpoint in the timing t w2 of immediately before the timing t p2, timing t p2
  • the position and orientation of the viewpoint in question are predicted.
  • the position and orientation of the viewpoint of the timing of drawing is performed in the display information of interest, and the position and orientation of the viewpoint, the difference estimation between the rows at the timing t p2 That is, the process related to the correction of the display information is executed based on the estimation result of the difference.
  • the execution of the process related to the presentation of the corrected display information for the corresponding partial area is started.
  • the above processing is sequentially executed for each partial area.
  • the process related to the correction in other words, the process related to reprojection
  • the process related to reprojection is the projection of the object according to the position and orientation of the viewpoint before movement. And is executed in a cycle shorter than the cycle of the processing related to drawing.
  • the division number N is set according to, for example, the specifications of the system and the content to be presented.
  • the position of the object is 1 px or more between the display frames. It is desirable that the number of divisions N be determined so as not to shift.
  • a partial partial area corresponds to an example of “first partial area”
  • a partial area different from the first partial area corresponds to an example of “second partial area”.
  • the portion to be presented to the first partial area is “first This corresponds to an example of "display information”
  • a portion to be presented to the second partial area corresponds to an example of "second display information”. That is, in this case, the presentation of the first display information and the presentation of the second display information are controlled at different timings.
  • Example> Subsequently, as an example, a process of correcting display information according to a result of projection and drawing of an object, that is, a process of restoring and reprojecting an object by the information processing system according to an embodiment of the present disclosure. A more specific example will be described. Specifically, the unit of the process related to the restoration and reprojection of the object described with reference to FIG. 7 is not particularly limited, and the process related to the restoration and the reprojection may be executed for each object. , May be executed for each part of the object.
  • Example 1 Restoration and reprojection in pixel units
  • Example 1 First, as Example 1, referring to FIG. 10 and FIG. 11, in the case where the above-described processing relating to object restoration and reprojection is executed for each pixel of display information according to the result of object projection and drawing An example will be described.
  • FIG. 10 and FIG. 11 are explanatory diagrams for explaining the outline of the first example of the information processing system according to the embodiment of the present disclosure, and an example of a case where object restoration and reprojection are performed in pixel units Shows. 10 and 11, the same reference numerals as those in FIG. 7 indicate the same objects as those in the example shown in FIG. 7.
  • the left diagram of FIG. 10 schematically shows the processing relating to the projection and drawing of the object, and since it is the same as the left diagram of FIG. 7, detailed description thereof will be omitted.
  • the reference numeral D111 schematically indicates the state of the buffer in which the object shown in the left diagram of FIG. 10 is projected and drawn, and is also referred to as a “color buffer” for convenience. That is, the color buffer D111 holds display information (more specifically, information such as RGB values of each pixel) according to the result of projection and drawing of the object.
  • the reference numeral D113 schematically shows the state of the buffer in which the distance information associated with the display information is held, and is also referred to as a “Z-buffer” for convenience. That is, in the Z buffer D113, for each pixel of the display information held in the color buffer D111, the distance between the viewpoint and the portion of the object corresponding to the pixel is presented by the brightness of the pixel. Specifically, in the example shown in FIG. 10, the Z buffer D113 is presented whiter in pixels corresponding to a portion closer to the viewpoint, and blacker in pixels corresponding to a portion further away from the viewpoint.
  • the process related to the restoration of the object is executed based on the display information held in the color buffer D111 and the distance information held in the Z buffer D113.
  • each pixel of the display information corresponding to the objects V150a and V160a held in the color buffer D111 is based on the distance information corresponding to the pixel held in the Z buffer D113. It is projected on a three-dimensional space.
  • the objects V150a and V160a are restored.
  • the objects V150b and V160b indicate the restoration results of the objects V150a and V160a.
  • the left diagram of FIG. 11 corresponds to the right diagram of FIG. 10.
  • the right diagram of FIG. 11 schematically shows the process related to the reprojection of the object based on the restoration result of the object shown in the left diagram of FIG. 11.
  • reference numeral D117 schematically shows the state of the Z buffer (that is, the distance between each part of the objects V150b and V160b and the viewpoint P151b) at the time of reprojection shown in the right diagram of FIG. 11.
  • reference numeral D115 schematically shows the state of the color buffer according to the result of the reprojection shown in the right diagram of FIG.
  • FIGS. 12 and 13 are explanatory diagrams for explaining the outline of the second example of the information processing system according to the embodiment of the present disclosure, and an example of a case where object restoration and reprojection are performed in object units Shows. Note that, in FIGS. 12 and 13, the same reference numerals as those in FIG. 7 denote the same objects as those in the example shown in FIG. 7.
  • the display information according to the result of the projection and the drawing includes distance information according to the distance between the viewpoint and the point representing the position of the corresponding object (for example, the center of the bounding sphere).
  • reference numeral V159a schematically indicates a point (hereinafter, also referred to as “representative point”) representative of the position of the object V150a.
  • the reference sign V169a schematically indicates a representative point of the object V160a. That is, the display information corresponding to the projection result of the object V150a is associated with the distance information corresponding to the distance between the viewpoint P151a and the representative point V159a. Similarly, the display information corresponding to the projection result of the object V160a is associated with the distance information corresponding to the distance between the viewpoint P151a and the representative point V169a.
  • reference numeral D121 schematically shows the state of the color buffer according to the result of projection and drawing of the object shown in the left diagram of FIG. That is, the display information corresponding to each of the objects V150a and V160a held in the color buffer D121 is associated with the distance information according to the distance between the representative point of the object and the viewpoint P151a. Note that it is possible to identify which object each pixel of the display information held in the color buffer D121 corresponds to. As a specific example, by associating each pixel of the display information with the identification information (objectid) of the corresponding object, it becomes possible to identify which object the pixel corresponds to.
  • the method is not particularly limited as long as it can be identified which object each pixel corresponds to.
  • the process related to the restoration of the object is executed based on the display information held in the color buffer D121 and the distance information associated with the display information for each object. It At this time, for each pixel of the display information for each object, the distance between the projected position of the pixel and the viewpoint is the distance between the viewpoint and the representative point of the object. Is projected onto a three-dimensional space to restore the three-dimensional information of the object.
  • reference symbols V150c and V160c schematically show the restoration results of the objects V150a and V160a.
  • the coordinates of each pixel of the display information on the screen surface P153a are (sx, sy), and the distance between the representative point V159a of the object V150a and the viewpoint P151a is sz1.
  • the coordinates (wx, wy, wz) in the three-dimensional space onto which the pixel corresponding to the object V150a is projected are the coordinates of the pixel on the screen surface P153a based on the position and orientation of the viewpoint P151a ( sx, sy) and the distance sz1.
  • the distance between the representative point V169a of the object V160a and the viewpoint P151a is sz1.
  • the coordinates (wx, wy, wz) in the three-dimensional space onto which the pixel corresponding to the object V160a is projected are the coordinates of the pixel on the screen surface P153a (based on the position and orientation of the viewpoint P151a). sx, sy) and the distance sz2.
  • the left diagram of FIG. 13 corresponds to the right diagram of FIG.
  • the right diagram of FIG. 13 schematically shows the process related to the reprojection of the object based on the restoration result of the object shown in the left diagram of FIG.
  • reference numeral D125 schematically shows the state of the color buffer according to the result of the reprojection shown in the right diagram of FIG.
  • the objects V150a and V160a are degenerated and restored as two-dimensional plate-shaped objects V150c and V160c, and the restoration result is reprojected. To be done. Due to such characteristics, the appearance of part of the display information depending on the result of reprojection may deviate from the original appearance from the viewpoint P151b. On the other hand, when the change in the position and the posture between the viewpoint P151a before the movement and the viewpoint P151b after the movement is relatively small, the above-described shift becomes smaller and tends to be less perceived by the user.
  • the method according to the present embodiment is applied.
  • the above-mentioned shift tends to be difficult for the user to perceive.
  • the respective methods described as the above-described first and second embodiments are merely examples, and do not necessarily limit the unit to which the above-described object restoration and reprojection processing is applied.
  • the processing relating to the restoration of the above-described object and the result of the restoration are performed with a portion set to include at least one of at least one of an edge, a vertex, and a voxel forming the object as a processing unit.
  • a process related to reprojection may be executed.
  • the process related to the restoration of the object described above and the process related to the reprojection according to the result of the restoration are executed with the portion set to include one or more predetermined unit data forming the object as a processing unit. May be done.
  • the processing relating to the restoration of the above-mentioned object and the processing relating to the reprojection according to the result of the restoration may be executed with the above portion as a processing unit.
  • Modification 1 First, as a first modification, an example of a method of complementing a blind spot during projection and drawing of an object will be described with reference to FIGS. 14 to 17. 14 to 17 are explanatory diagrams for explaining the outline of the information processing system according to the first modification.
  • FIG. 14 schematically illustrates a situation in which projection and drawing of an object, restoration of the object, and reprojection of the restored object are performed, as in the example described with reference to FIG. 7. .
  • the same reference numerals as those in FIG. 7 denote the same objects as those in the example shown in FIG. 7.
  • the left diagram and the central diagram of FIG. 14 are similar to the left diagram and the central diagram of FIG. 7, and thus detailed description thereof will be omitted.
  • Modification 1 proposes a method for solving the above technical problem. Specifically, in the information processing system according to the first modification, projection and drawing of a target object are performed for a plurality of different viewpoints, and the three-dimensional drawing of the object is performed based on the result of the projection and the drawing. Restore information.
  • FIG. 15 schematically illustrates a situation in which projection and drawing of a plurality of target objects are executed for a plurality of viewpoints. Specifically, in the example shown in FIG. 15, projection and drawing of target objects V150a and V160a are executed for different viewpoints P151a and P151c, respectively.
  • the left diagram of FIG. 16 schematically illustrates a situation in which the objects V150a and V160a are projected onto the projection plane P153a defined in association with the viewpoint P151a, and the display information is drawn according to the result of the projection.
  • reference signs V155a and V157a schematically indicate display information according to the projection and drawing results of the portions of the object V150a indicated by reference signs V151a and V153a.
  • reference numeral V163a schematically indicates display information corresponding to the result of projection and drawing of the portion of the object V160a indicated by reference numeral V161a.
  • the portions of the object V160a indicated by reference signs V165a and V166a are blind spots and are not targets for projection and drawing.
  • the right diagram of FIG. 16 schematically illustrates a situation in which the objects V150a and V160a are projected onto the projection plane P153c defined in association with the viewpoint P151c, and the display information is drawn according to the result of the projection.
  • the reference sign V157c schematically shows the display information according to the result of projection and drawing of the portion of the object V150a indicated by the reference sign V153a.
  • Reference signs V163c, V167c, and V168c schematically show display information corresponding to the projection and drawing results of the portions of the object V160a indicated by reference signs V161a, V165a, and V166a.
  • the portions of the object V160a indicated by reference numerals V165a and V166a which are blind spots from the viewpoint P151a, are visible from the viewpoint P151c. Is. Therefore, the information of the portions indicated by reference signs V165a and V166a is reflected in the result of the projection and drawing of the object for the viewpoint P151c shown in the right diagram of FIG. That is, the portions indicated by reference signs V165a and V166a can be restored based on the result of projection and drawing of the object for the viewpoint P151c.
  • the portion of the object V150a indicated by reference numeral V151a is a blind spot. That is, the information of the portion indicated by the reference symbol V151a is not reflected in the result of the projection and drawing of the object for the viewpoint P151c.
  • the viewpoint P151a it is possible to visually recognize the portion indicated by the reference numeral V151a. Therefore, the information of the portion indicated by reference numeral V151a is reflected in the result of the projection and drawing of the object for the viewpoint P151a shown in the left diagram of FIG. That is, the portion indicated by the reference symbol V151a can be restored based on the result of projection and drawing of the object for the viewpoint P151a.
  • the information processing system uses the above characteristics, and uses information from other viewpoints for a portion of the target object that is difficult to see from some viewpoints. By complementing, the object is restored. Then, the information processing system re-projects the restored object based on the position and orientation of the viewpoint after movement.
  • FIG. 17 schematically shows a situation in which the object restored based on the result of projection and drawing of the object described with reference to FIG. 16 is re-projected based on the position and orientation of the viewpoint P151d after movement. ..
  • reference numeral V150b schematically shows the restoration result of the object V150a shown in FIG. That is, the portions indicated by reference signs V151b and V153b schematically show the restoration results of the portions indicated by reference signs V151a and V153a in FIG.
  • reference numeral V160b schematically shows the restoration result of the object V160a shown in FIG. That is, the portions indicated by reference symbols V161b, V165b, and V166b schematically show the restoration results of the portions indicated by reference symbols V161a, V165a, and V166a in FIG.
  • reference numeral P153d schematically indicates a screen surface defined in association with the viewpoint P151d.
  • reference symbols V155d and V157d schematically show the results of reprojection of the portions of the restored object V150b designated by the reference symbols V151b and V153b onto the screen surface P153d.
  • reference symbols V163d, V167d, and V168d schematically show the results of reprojection of the portions of the restored object V160b designated by reference symbols V161b, V165b, and V166b onto the screen surface P153d.
  • the target object may be projected and drawn for a plurality of viewpoints, and an individual device (for example, an imaging unit) does not necessarily have to be provided for each of the plurality of viewpoints.
  • an object may be projected and drawn for each of a plurality of viewpoints that are time-divisionally different by a single device that is configured to be movable (for example, an imaging unit).
  • a single device that is configured to be movable (for example, an imaging unit).
  • FIG. 18 is an explanatory diagram for explaining the outline of the information processing system according to the second modification. Note that in FIG. 18, the same reference numerals as those in FIG. 7 denote the same objects as those in the example shown in FIG. 7.
  • the target objects V150a and V160a are projected and drawn as in the example shown in FIG.
  • the information about the movement of the object is associated with the display information according to the result of the projection and drawing of the object.
  • the information on the movement of the object includes, for example, information on the moving direction of the object and the moving speed of the object (for example, information corresponding to a speed vector).
  • the information about the movement of the object associated with the display information corresponds to an example of “third information”.
  • the left diagram of FIG. 18 schematically shows the process related to the restoration of an object.
  • reference signs V155a and V157a schematically indicate display information according to the result of projection and drawing of the object V150a shown in FIG. 7 for the viewpoint P151a. That is, in the information processing system according to the second modification, the display information V155a is associated with the information regarding the movement of the surface V151a of the object V150a illustrated in FIG. 7. Further, the display information V157a is associated with the information regarding the movement of the surface V153a of the object V150a illustrated in FIG. 7. Further, the reference sign V163a schematically shows display information corresponding to the result of projection and drawing of the object V160a shown in FIG. 7 for the viewpoint P151a.
  • the display information V163a is associated with the information about the movement of the surface V161a of the object V160a illustrated in FIG. 7.
  • the process related to the restoration of the object is executed.
  • the restoration result of the object is corrected (for example, the position, orientation, shape, etc.) based on the information indicating the movement of each object.
  • the object V150a to be restored has a movement, and the movement of the surface V151a and the surface V153a of the object V150a with respect to the corresponding display information V155a and V157a is related. Each piece of information is associated. Therefore, in the center view of FIG. 18, the faces V151b and V153b of the object V150b shown in the left diagram of FIG. Has been done.
  • the reference sign V150c schematically shows the result of applying the correction based on the information indicating the movement of the object V150a to the object V150b. That is, the reference sign V151c schematically shows the result of the correction applied to the surface V151b of the object V150b based on the information regarding the movement of the surface V151a of the object V150a associated with the corresponding display information V155a. Further, the reference sign V153c schematically shows the result of the correction applied to the surface V153b of the object V150b based on the information regarding the movement of the surface V153a of the object V150a associated with the corresponding display information V157a.
  • the surface V151a As a specific example, based on the information on the movement of the surface V151a associated with the display information V155a, from the timing when the object is projected and drawn to the timing when the information is presented to the user via the output unit. The movement of the surface V151a during the period is estimated. Then, based on the result of the estimation, the correction direction and the correction amount of the face V151b of the restored object V150b are derived, and the face V151b is corrected. This also applies to the surface V153b of the object V150b.
  • reference numeral V160c schematically shows the result of applying the correction based on the information indicating the movement of the object V160a to the object V160b.
  • the reconstruction based on the position and orientation of the viewpoint P151e after the movement is performed.
  • the projection is done. That is, the corrected objects V150c and V160c are reprojected onto the screen surface P153e defined in association with the viewpoint P151e.
  • reference numeral M210 schematically indicates an object (real object) in the real space.
  • reference numeral V220 indicates an object (virtual object) that is a target of information presentation via the output unit, and the presentation of information is controlled so as to be localized at a desired position in the real space.
  • reference numeral P201 schematically indicates the position and orientation of the viewpoint.
  • one of the object M210 and the object V220 may overlap with the other. In such a case, it may be necessary to correct the display information according to the result of projection and drawing of the object V220, depending on the context between the object M210 and the object V220. As a specific example, in a situation where a part of the object V220 is shielded by the object M210, the part of the object V220 shielded by the object M210 is suppressed from being presented as display information. Is desirable.
  • the part of the object V220 that covers a part of the object M210 corresponds to be superimposed on the object M210. It is desirable that the displayed information be displayed.
  • reference numerals P201a, P201b, and P201c each schematically indicate the position and orientation of the viewpoint P201 moving in time series at different timings.
  • the viewpoint P201a indicates the position and orientation of the viewpoint P201 at the timing t 0 .
  • viewpoint P201b shows the position and orientation of the viewpoint P201 at the timing t 1 later than the timing t 0.
  • viewpoint P201c shows the position and orientation of the viewpoint P201 at the timing t 2 later than the timing t 1.
  • reference numeral V220a schematically indicates an object (that is, the object V220 shown in FIG. 19) that is a target of projection and drawing according to the position and orientation of the viewpoint P201a.
  • reference numeral V220b indicates the restored object.
  • Reference numeral P203a schematically indicates the screen surface defined in association with the viewpoint P201a.
  • reference numeral V223a and V223a schematically indicate display information according to the result of projection and drawing of the surface V221a of the object V220a on the screen surface P203a. Note that, in the example shown in FIG. 20, similar to the example described above with reference to FIG. 10, information corresponding to the relative position and orientation relationship between the viewpoint P201a and the object V220a with respect to the display information V223a. (For example, distance information) is associated.
  • reference numeral D221 schematically shows the status of the color buffer according to the projection and drawing results of the object shown in the leftmost diagram of FIG.
  • reference numeral D223 schematically shows the situation of the Z buffer in which the distance information associated with the display information according to the projection and drawing results of the object is held. Since the color buffer and the Z buffer are the same as those in the example shown in FIG. 10, detailed description will be omitted.
  • the three-dimensional information of the object V220a is restored based on the display information V223a and the distance information associated with the display information v223a.
  • reference numeral V221b schematically indicates the restoration result of the surface V221a of the object V220a.
  • Reference numeral P203c schematically indicates the screen surface defined in association with the viewpoint P201c at the timing t 2 . That is, the restored object V220b is re-projected on the screen surface P203c according to the position and orientation of the viewpoint P201c.
  • Reference numeral V223b schematically indicates display information according to the result of reprojection of the surface V221b of the object V220b.
  • processing for the object M210 will be described.
  • the processing for the object M210 as shown in FIG. 21 is executed in parallel with the processing for the object described with reference to FIG.
  • a depth map is created by so-called depth sensing according to the measurement result of the distance between the viewpoint P201b and the object M210.
  • reference numeral D211 indicates the depth map.
  • the depth map D211 provides information corresponding to the measurement result of the distance between the viewpoint P201b and each part of the object M210 on the screen surface P203b defined in association with the viewpoint P201b. Corresponding to the data mapped to. Specifically, in the example shown in FIG.
  • the depth map D211 is presented whiter in pixels corresponding to a portion closer to the viewpoint, and blacker in pixels corresponding to a portion further away from the viewpoint. That is, the depth map D211 corresponds to an example of “fourth information” according to the relative position and orientation relationship between the viewpoint P201b and the object M210.
  • three-dimensional information (for example, position, orientation, shape, etc.) of the object M210 is restored based on the depth map D211.
  • the principle of the process related to the restoration is substantially the same as the process related to the restoration of the object based on the distance information described above. That is, each pixel of the depth map D211 is projected on the three-dimensional space based on the value of the pixel (that is, information about the distance), so that the three-dimensional information of the object M210 is restored.
  • the reference numeral M213 schematically shows virtual information (object) according to the restoration result of the object M210.
  • processing relating to reprojection of the restored object M213 is executed. Specifically, the restored object M213 is reprojected on the screen surface P203c according to the position and orientation of the viewpoint P201c.
  • Reference numeral M215 schematically indicates information corresponding to the result of reprojection of the object M213 (hereinafter, also referred to as “reprojection image” for convenience).
  • the display information V223b corresponding to the object V220 and the reprojection image M215 corresponding to the object M210, which are in the position and orientation of the viewpoint P201c, are acquired. Then, as shown in FIG. 22, according to the relative positional relationship between the restored objects V220b and M213 (particularly, the front-back relationship with respect to the viewpoint P201c), the display information V223b corresponding to the object V220b via the output unit. The presentation of is controlled.
  • a part of the display information V220b and a part of the reprojection image M215 are superimposed on the screen surface P203c.
  • one of the part of the display information V220b and the part of the re-projection image M215 is shielded by the other, depending on the context between the object V220b and the object M213.
  • the object M213 is located closer to the viewpoint P201c than the object V220b
  • part of the display information V220b is occluded by part of the reprojection image M215. Will be done. Therefore, in the example shown in FIG. 22, regarding the portion of the display information V220b shielded by the reprojection image M215, the presentation of information via the output unit is suppressed.
  • the reference sign V250 is a combined image of the optical image of the object M210 visually recognized by the user and the display information V223b presented so as to be superimposed on the object M210 when viewed from the viewpoint P201c. It is shown in the figure.
  • the first object When at least a part of the reprojection result and at least a part of the reprojection result of the second object different from the first object overlap each other, it is more possible to present the object closer to the viewpoint after the movement. have priority.
  • the above description has focused on the relationship between the object in the real space and the virtual object, the same applies to the relationship between different virtual objects. That is, when there is a portion overlapping between a plurality of virtual objects when viewed from a desired viewpoint, presentation of display information according to the result of projection and drawing of a virtual object closer to the viewpoint is more prioritized. It
  • the context between the object M210 and the object V220 is more accurately reflected, It is possible to control the presentation of the display information corresponding to the object V220.
  • FIG. 23 is a functional block diagram showing an example of the hardware configuration of the information processing device 900 that constitutes the information processing system according to the embodiment of the present disclosure.
  • the information processing device 900 that constitutes the information processing system 1 according to the present embodiment mainly includes a CPU 901, a ROM 902, and a RAM 903.
  • the information processing apparatus 900 further includes a host bus 907, a bridge 909, an external bus 911, an interface 913, an input device 915, an output device 917, a storage device 919, a drive 921, and a connection port 923. And a communication device 925.
  • the CPU 901 functions as an arithmetic processing unit and a control unit, and controls all operations in the information processing apparatus 900 or a part thereof according to various programs recorded in the ROM 902, the RAM 903, the storage device 919 or the removable recording medium 927.
  • the ROM 902 stores programs used by the CPU 901, calculation parameters, and the like.
  • the RAM 903 temporarily stores a program used by the CPU 901, parameters that change appropriately during execution of the program, and the like. These are connected to each other by a host bus 907 composed of an internal bus such as a CPU bus.
  • the recognition processing unit 101, the prediction processing unit 103, the drawing processing unit 105, the correction processing unit 109, and the output control unit 111 described above with reference to FIG. 8 can be realized by the CPU 901, for example.
  • the host bus 907 is connected to an external bus 911 such as a PCI (Peripheral Component Interconnect / Interface) bus via a bridge 909. Further, an input device 915, an output device 917, a storage device 919, a drive 921, a connection port 923, and a communication device 925 are connected to the external bus 911 via an interface 913.
  • an external bus 911 such as a PCI (Peripheral Component Interconnect / Interface) bus
  • an input device 915, an output device 917, a storage device 919, a drive 921, a connection port 923, and a communication device 925 are connected to the external bus 911 via an interface 913.
  • the input device 915 is an operation unit operated by a user, such as a mouse, a keyboard, a touch panel, a button, a switch, a lever, and a pedal. Further, the input device 915 may be, for example, a remote control unit (so-called remote control) using infrared rays or other radio waves, or an external connection device such as a mobile phone or a PDA corresponding to the operation of the information processing device 900. It may be 929. Further, the input device 915 is composed of, for example, an input control circuit that generates an input signal based on the information input by the user using the above-mentioned operation unit and outputs the input signal to the CPU 901. By operating the input device 915, the user of the information processing apparatus 900 can input various data to the information processing apparatus 900 and instruct a processing operation.
  • a remote control unit such as a mouse, a keyboard, a touch panel, a button, a switch, a lever, and a pedal.
  • the output device 917 is configured by a device capable of visually or auditorily notifying the user of the acquired information. Such devices include CRT display devices, liquid crystal display devices, plasma display devices, EL display devices and display devices such as lamps, audio output devices such as speakers and headphones, and printer devices.
  • the output device 917 outputs results obtained by various processes performed by the information processing device 900, for example. Specifically, the display device displays the results obtained by various processes performed by the information processing device 900 as text or images.
  • the audio output device converts an audio signal composed of reproduced audio data and acoustic data into an analog signal and outputs the analog signal.
  • the output unit 211 described above with reference to FIG. 8 can be realized by the output device 917, for example.
  • the storage device 919 is a data storage device configured as an example of a storage unit of the information processing device 900.
  • the storage device 919 includes, for example, a magnetic storage device such as an HDD (Hard Disk Drive), a semiconductor storage device, an optical storage device, a magneto-optical storage device, or the like.
  • the storage device 919 stores programs executed by the CPU 901, various data, and the like.
  • the storage unit 191 and the frame buffer 107 described with reference to FIG. 8 can be realized by any one of the storage device 919 and the RAM 903, or a combination thereof.
  • the drive 921 is a reader / writer for recording medium, and is built in or externally attached to the information processing apparatus 900.
  • the drive 921 reads the information recorded in the removable recording medium 927 such as a mounted magnetic disk, optical disk, magneto-optical disk, or semiconductor memory, and outputs it to the RAM 903.
  • the drive 921 can also write a record on a removable recording medium 927 such as a mounted magnetic disk, optical disk, magneto-optical disk, or semiconductor memory.
  • the removable recording medium 927 is, for example, a DVD medium, an HD-DVD medium, a Blu-ray (registered trademark) medium, or the like.
  • the removable recording medium 927 may be a compact flash (registered trademark) (CF: CompactFlash), a flash memory, an SD memory card (Secure Digital memory card), or the like.
  • the removable recording medium 927 may be, for example, an IC card (Integrated Circuit card) equipped with a non-contact type IC chip, an electronic device, or the like.
  • the connection port 923 is a port for directly connecting to the information processing device 900.
  • Examples of the connection port 923 include a USB (Universal Serial Bus) port, an IEEE 1394 port, and a SCSI (Small Computer System Interface) port.
  • As another example of the connection port 923 there are an RS-232C port, an optical audio terminal, an HDMI (registered trademark) (High-Definition Multimedia Interface) port, and the like.
  • the communication device 925 is, for example, a communication interface including a communication device for connecting to the communication network (network) 931.
  • the communication device 925 is, for example, a communication card for wired or wireless LAN (Local Area Network), Bluetooth (registered trademark), or WUSB (Wireless USB).
  • the communication device 925 may be a router for optical communication, a router for ADSL (Asymmetric Digital Subscriber Line), a modem for various kinds of communication, or the like.
  • the communication device 925 can transmit and receive signals and the like to and from the Internet and other communication devices, for example, according to a predetermined protocol such as TCP / IP.
  • the communication network 931 connected to the communication device 925 is configured by a network connected by wire or wirelessly, and may be, for example, the Internet, a home LAN, infrared communication, radio wave communication, satellite communication, or the like. ..
  • the above computer program may be distributed via a network, for example, without using a recording medium.
  • the number of computers that execute the computer program is not particularly limited.
  • the computer program may be executed by a plurality of computers (for example, a plurality of servers, etc.) in cooperation with each other.
  • a single computer or a computer in which a plurality of computers work together is also referred to as a “computer system”.
  • the information processing apparatus in the case where the configuration corresponding to the above-described information processing apparatus 10 is realized as the information processing apparatus 900 that can operate independently such as a PC, a smartphone, and a server.
  • the hardware configuration of 900 has been described in detail.
  • FIG. 24 is a functional block diagram illustrating an example of a hardware configuration when an information processing device included in the information processing system according to an embodiment of the present disclosure is realized as a chip.
  • the chip 950 includes an image processing unit (GCA: Graphics and Compute Array) 951, a storage device (GMC: Graphics Memory Controller) 953, a display interface (DIF: Display Interface) 955, and a bus interface. It includes a (BIF: Bus Interface) 957, a power supply control unit (PMU: Power Management Unit) 961, and a start control unit (VGABIOS) 963. Further, a compression processing unit (Compression Unit) 959 may be interposed between the image processing unit 951 and the storage device 953.
  • GCA Graphics and Compute Array
  • DIF Display Interface
  • VGABIOS start control unit
  • the image processing unit 951 corresponds to a processor that executes various processes related to image processing.
  • the image processing unit 951 relates to the above-described processing related to the projection of the object, processing related to the drawing of the display information according to the result of the projection, and correction related to the display information such as reprojection.
  • Various arithmetic processing such as processing is executed.
  • the image processing unit 951 may read the data stored in the storage device 953 and use the data for executing various arithmetic processes.
  • each processing of the recognition processing unit 101, the prediction processing unit 103, the drawing processing unit 105, the correction processing unit 109, and the output control unit 111 described above with reference to FIG. 8 is, for example, a calculation process by the image processing unit 951. Can be realized by
  • the storage device 953 has a configuration for temporarily or permanently storing various data.
  • the storage device 953 may store data according to the execution results of various arithmetic processing by the image processing unit 951.
  • the storage device 953 is based on technologies such as VRAM (Video RAM), WRAM (Window RAM), MDRAM (Multibank DRAM), DDR (Double-Data-Rate), GDDR (Graphics DDR), HBM (High Bandwidth Memory), etc. Can be realized based on VRAM (Video RAM), WRAM (Window RAM), MDRAM (Multibank DRAM), DDR (Double-Data-Rate), GDDR (Graphics DDR), HBM (High Bandwidth Memory), etc. Can be realized based on VRAM (Video RAM), WRAM (Window RAM), MDRAM (Multibank DRAM), DDR (Double-Data-Rate), GDDR (Graphics DDR), HBM (High Bandwidth Memory), etc. Can be realized based on VRAM (Video RAM), WRAM (Window RAM
  • the compression processing unit 959 compresses and decompresses various data.
  • the compression processing unit 959 may compress the data when the data according to the calculation result by the image processing unit 951 is stored in the storage device 953.
  • the compression processing unit 959 may decompress the data if the data is compressed.
  • the display interface 955 is an interface for the chip 950 to send and receive data to and from a display (for example, the output unit 211 shown in FIG. 8).
  • a display for example, the output unit 211 shown in FIG. 8
  • the result of drawing the display information by the image processing unit 951 is output to the display via the display interface 955.
  • the result of drawing the display information by the image processing unit 951 is held in the storage device 953, the result of the drawing held in the storage device 953 is passed through the display interface 955. Output to the display.
  • the bus interface 957 is an interface for the chip 950 to send and receive data to and from other devices and external devices.
  • the data stored in the storage device 953 is transmitted to another device or an external device via the bus interface 957.
  • data transmitted from another device or an external device is input to the chip 950 via the bus interface 957.
  • the data input to the chip 950 is stored in the storage device 953, for example.
  • the power supply control unit 961 has a configuration for controlling the supply of electric power to each part of the chip 950.
  • the activation control unit 963 is a configuration for performing management and control of various processes related to the activation and input / output of information when the chip 950 is activated.
  • the activation control unit 963 corresponds to a so-called VGA BIOS (Video Graphics Array Basic Input / Output System).
  • the information processing device includes the acquisition unit, the projection processing unit, the correction processing unit, and the output control unit.
  • the acquisition unit acquires information according to the recognition result of the position and orientation of the viewpoint.
  • the projection processing unit projects the target object on a first projection plane defined by being associated with the first viewpoint based on the position and orientation of the first viewpoint, and performs a first projection according to the result of the projection.
  • the first information is associated with the second information according to the relative position and orientation relationship between the first viewpoint and the object.
  • the correction processing unit restores the three-dimensional information of the object based on the first information and the second information, and the relative position between the restored object and the second viewpoint.
  • the object is re-projected on the second projection plane defined by being associated with the second viewpoint.
  • the output control unit causes the output unit to present the display information according to the result of the reprojection.
  • the description above mainly focuses on an example of application of the AR technology, but the application destination of the technology according to an embodiment of the present disclosure is not necessarily limited. That is, the technology according to the embodiment of the present disclosure can be applied under the situation in which virtual information such as various contents is presented according to changes in the position and orientation of the viewpoint. As a specific example, even when the information is presented based on the VR technology according to the position and orientation of the viewpoint, the information according to the embodiment of the present disclosure can be applied to obtain the information in a more preferable aspect. Can be expected to be effective.
  • An acquisition unit that acquires information according to the recognition result of the position and orientation of the viewpoint, Based on the position and orientation of the first viewpoint, the target object is projected on the first projection plane defined in association with the first viewpoint, and the first information corresponding to the result of the projection is used.
  • a projection processing unit that associates the second information according to the relative position and orientation relationship between the first viewpoint and the object, The three-dimensional information of the object is restored based on the first information and the second information, and a relative position and posture relationship between the restored object and the second viewpoint is obtained.
  • a correction processing unit that re-projects the object on the second projection plane defined in association with the second viewpoint, An output control unit that causes the output unit to present display information according to the result of the reprojection;
  • An information processing device comprising: (2) The information processing apparatus according to (1), wherein the second information includes information regarding a distance between the first viewpoint and the object. (3) The acquisition unit acquires third information regarding the movement of the object, The projection processing unit associates the third information with the first information, The correction processing unit estimates, based on the third information, the movement of the object during a period in which the position and orientation of the viewpoint between the first viewpoint and the second viewpoint change, and Restores the three-dimensional information of the object according to the result, The information processing device according to (1) or (2).
  • the information processing device according to (3), wherein the third information includes information about a direction in which the object moves and information about a speed of the object.
  • the correction processing unit Correcting the restored three-dimensional information of the object according to the movement of the object based on the third information, Re-projecting the corrected object on the second projection plane, The information processing device according to (3) or (4).
  • the projection processing unit projects the object on the first projection plane corresponding to the first viewpoint for each of the plurality of first viewpoints having different positions and orientations,
  • the correction processing unit restores the three-dimensional information of the object based on the second information according to the projection result of the object for each of the plurality of first viewpoints, and restores the restored object.
  • the information processing apparatus according to any one of (1) to (5) above.
  • the correction processing unit sets information corresponding to a part of the object which is not included in the second information corresponding to a part of the first viewpoints out of the plurality of first viewpoints to another first viewpoint.
  • the information processing device according to (6), wherein three-dimensional information of the object is restored by complementing based on information corresponding to the portion included in the second information corresponding to the viewpoint.
  • the acquisition unit acquires the first information for each part of the object
  • the projection processing unit projects the object on the first projection surface for each of the parts, associates the first information corresponding to the part with a projection result of the part
  • the correction processing unit restores the three-dimensional information of the object for each portion, and re-projects the restored object for each portion on the second projection surface.
  • the correction processing unit At least a part of the result of the reprojection of the first object and at least a part of the result of the reprojection of the second object different from the first object are superimposed on the second projection plane. If you want to Of the first object and the second object, the display information corresponding to the object closer to the second viewpoint is controlled to be preferentially displayed.
  • the information processing apparatus according to any one of (1) to (9) above.
  • the acquisition unit acquires information according to the recognition result of the object in the real space
  • the projection processing unit acquires fourth information according to a relative position and orientation relationship between the first viewpoint and the object based on the position and orientation of the first viewpoint
  • the correction processing unit Restoring three-dimensional information of the object based on the fourth information, Re-projecting the object on the second projection plane according to the relative position and orientation relationship among the restored object, the restored object, and the second viewpoint.
  • the projection processing unit associates identification information of the object with the first information according to the projection result of the object on the first projection surface
  • the correction processing unit identifies the object based on the identification information associated with the first information and restores three-dimensional information of the object.
  • the information processing apparatus according to any one of (1) to (11) above.
  • the output control unit based on the position and orientation of the second viewpoint at different timings, for each of the first partial region and the second partial region included in the display region of the output unit, The information processing apparatus according to any one of (1) to (12), which re-projects the restored object on two projection planes.
  • the output control unit Presentation of first display information to the first partial area according to the result of the reprojection of the first partial area, Presentation of second display information to the second partial area according to the result of the reprojection of the second partial area, Control at different timings, The information processing device according to (13).
  • the correction processing unit according to any one of (1) to (14), wherein the correction processing unit executes a process related to the reprojection at a cycle shorter than a cycle of a process related to the projection by the projection processing unit.
  • Information processing device (16)
  • the projection processing unit controls the position in the real space for locating the object so that the object is superposed on the object in the real space according to the recognition result of the position and orientation of the viewpoint.
  • the information processing device according to any one of 1) to (15).
  • the output unit is a transmissive output unit.
  • the information processing apparatus further including a support section that supports the display area of the output section so as to be positioned in front of the user's eyes when the display section is mounted on the user's head.
  • (19) Computer Acquiring information according to the recognition result of the position and orientation of the viewpoint, Based on the position and orientation of the first viewpoint, the target object is projected onto the first projection plane defined in association with the first viewpoint, and the first information corresponding to the result of the projection is used. And associating the second information according to the relative position and orientation relationship between the first viewpoint and the object, The three-dimensional information of the object is restored based on the first information and the second information, and a relative position and posture relationship between the restored object and the second viewpoint is obtained.
  • An information processing method including: (20) On the computer, Acquiring information according to the recognition result of the position and orientation of the viewpoint, Based on the position and orientation of the first viewpoint, the target object is projected onto the first projection plane defined in association with the first viewpoint, and the first information corresponding to the result of the projection is used. And associating the second information according to the relative position and orientation relationship between the first viewpoint and the object, The three-dimensional information of the object is restored based on the first information and the second information, and a relative position and posture relationship between the restored object and the second viewpoint is obtained. Accordingly, re-projecting the object on the second projection plane defined in association with the second viewpoint, Causing the output unit to present the display information according to the result of the reprojection, A program that runs

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Processing Or Creating Images (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

視点の位置及び姿勢の認識結果に応じた情報を取得する取得部と、第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付ける投影処理部と、前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影する補正処理部と、前記再投影の結果に応じた表示情報を出力部に提示させる出力制御部と、を備える、情報処理装置。

Description

情報処理装置、情報処理方法、及びプログラム
 本開示は、情報処理装置、情報処理方法、及びプログラムに関する。
 近年、画像認識技術の高度化に伴い、撮像装置により撮像された画像に含まれる実オブジェクト(即ち、実空間上の物体)の位置及び姿勢を認識することが可能となっている。このような物体認識の応用例の一つとして、拡張現実(AR:Augmented Reality)と称される技術が挙げられる。AR技術を利用することで、実空間内の物体(以下、「実オブジェクト」とも称する)に対して、テキスト、アイコン、またはアニメーション等の様々な態様の仮想的なコンテンツ(以降では、「仮想オブジェクト」とも称する)を重畳させてユーザに提示することが可能となる。例えば、特許文献1には、AR技術を利用して仮想的なコンテンツをユーザに提示する技術の一例が開示されている。
国際公開第2017/183346号
 ところで、提示対象となる仮想オブジェクトによっては、当該仮想オブジェクトを画像等の表示情報として描画する処理に係る負荷が比較的高くなり、当該仮想オブジェクトの描画が開始されてから表示情報として出力されるまでの間に遅延が生じる場合がある。そのため、例えば、当該遅延に伴い、描画された仮想オブジェクトが表示情報としてユーザに提示されるまでの間に、当該ユーザの視点の位置や姿勢に変化が生じると、当該視点と、描画された仮想オブジェクトが重畳される位置との間の相対的な位置や姿勢の関係にずれが生じる場合がある。このようなずれは、例えば、当該仮想オブジェクトが重畳される空間上の位置のずれとしてユーザに認識される場合がある。これは、ARに限らず、人工的に構築される仮想空間上に仮想オブジェクトを提示する、所謂仮想現実(VR:Virtual Reality)においても同様である。
 上記のような問題を解決するための手法の一例として、仮想オブジェクの描画結果に応じた表示情報を、当該描画後における視点の位置や姿勢に応じて補正(例えば、提示位置の補正、形状の変形等)を適用することで、上述したずれの影響を低減する(理想的には解消する)手法が挙げられる。しかしながら、従来の手法では、補正時に視点と仮想オブジェクトとの間の3次元的な位置や姿勢の関係を正確に反映することが困難な場合があった。
 そこで、本開示では、視点の位置や姿勢に応じた情報の提示をより好適な態様で実現可能とする技術を提案する。
 本開示によれば、視点の位置及び姿勢の認識結果に応じた情報を取得する取得部と、第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付ける投影処理部と、前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影する補正処理部と、前記再投影の結果に応じた表示情報を出力部に提示させる出力制御部と、を備える、情報処理装置が提供される。
 また、本開示によれば、コンピュータが、視点の位置及び姿勢の認識結果に応じた情報を取得することと、第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付けることと、前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影することと、前記再投影の結果に応じた表示情報を出力部に提示させることと、を含む、情報処理方法が提供される。
 また、本開示によれば、コンピュータに、視点の位置及び姿勢の認識結果に応じた情報を取得することと、第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付けることと、前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影することと、前記再投影の結果に応じた表示情報を出力部に提示させることと、を実行させる、プログラムが提供される。
本開示の一実施形態に係る情報処理システムの概略的な構成の一例について説明するための説明図である。 同実施形態に係る入出力装置の概略的な構成の一例について説明するための説明図である。 視点の位置や姿勢に応じた表示情報の補正に係る処理の一例について概要を説明するための説明図である。 視点の位置や姿勢に応じた表示情報の補正に係る処理の他の一例について概要を説明するための説明図である。 視点の位置や姿勢に応じた表示情報の補正に係る処理の他の一例について概要を説明するための説明図である。 視点の位置や姿勢に応じた表示情報の補正に係る処理の他の一例について概要を説明するための説明図である。 同実施形態に係る情報処理システムの技術的特徴の基本思想について概要を説明するための説明図である。 同実施形態に係る情報処理システムの機能構成の一例を示したブロック図である。 同実施形態に係る情報処理システムの一連の処理の流れの一例を示したタイミングチャートである。 同実施形態に係る情報処理システムの実施例1について概要を説明するための説明図である。 同実施形態に係る情報処理システムの実施例1について概要を説明するための説明図である。 同実施形態に係る情報処理システムの実施例2について概要を説明するための説明図である。 同実施形態に係る情報処理システムの実施例2について概要を説明するための説明図である。 変形例1に係る情報処理システムの概要について説明するための説明図である。 変形例1に係る情報処理システムの概要について説明するための説明図である。 変形例1に係る情報処理システムの概要について説明するための説明図である。 変形例1に係る情報処理システムの概要について説明するための説明図である。 変形例2に係る情報処理システムの概要について説明するための説明図である。 変形例3に係る情報処理システムの概要について説明するための説明図である。 変形例3に係る情報処理システムの概要について説明するための説明図である。 変形例3に係る情報処理システムの概要について説明するための説明図である。 変形例3に係る情報処理システムの概要について説明するための説明図である。 同実施形態に係る情報処理システムを構成する情報処理装置のハードウェア構成の一例を示す機能ブロック図である。 同実施形態に係る情報処理システムを構成する情報処理装置をチップとして実現した場合のハードウェア構成の一例を示す機能ブロック図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 なお、説明は以下の順序で行うものとする。
 1.概要
  1.1.概略構成
  1.2.入出力装置の構成
  1.3.自己位置推定の原理
 2.視点の動きと情報の提示との間の遅延に応じた表示の補正に関する検討
 3.技術的特徴
  3.1.基本思想
  3.2.機能構成
  3.3.処理
  3.4.実施例
  3.5.変形例
 4.ハードウェア構成
  4.1.独立して動作可能な装置としての構成例
  4.2.チップとして実現する場合の構成例
 5.むすび
 <<1.概要>>
  <1.1.概略構成>
 まず、図1を参照して、本開示の一実施形態に係る情報処理システムの概略的な構成の一例について説明する。図1は、本開示の一実施形態に係る情報処理システムの概略的な構成の一例について説明するための説明図である。図1において、参照符号M11は、実空間内に位置する物体(即ち、実オブジェクト)を模式的に示している。また、参照符号V13及びV15は、実空間に重畳するように提示される仮想的なコンテンツ(即ち、仮想オブジェクト)を模式的に示している。即ち、本実施形態に係る情報処理システム1は、所謂AR(Augmented Reality)技術に基づき、例えば、実オブジェクトM11等の実空間内の物体に対して、仮想オブジェクトを重畳してユーザに提示する。なお、図1では、本実施形態に係る情報処理システムの特徴をよりわかりやすくするために、実オブジェクトと仮想オブジェクトとの双方をあわせて提示している。
 図1に示すように、本実施形態に係る情報処理システム1は、情報処理装置10と、入出力装置20とを含む。情報処理装置10と入出力装置20とは、所定のネットワークを介して互いに情報を送受信可能に構成されている。なお、情報処理装置10と入出力装置20とを接続するネットワークの種別は特に限定されない。具体的な一例として、当該ネットワークは、Wi-Fi(登録商標)規格に基づくネットワークのような、所謂無線のネットワークにより構成されていてもよい。また、他の一例として、当該ネットワークは、インターネット、専用線、LAN(Local Area Network)、または、WAN(Wide Area Network)等により構成されていてもよい。また、当該ネットワークは、複数のネットワークを含んでもよく、少なくとも一部が有線のネットワークとして構成されていてもよい。また、情報処理装置10は、例えば、スマートフォン等のような無線の通信経路を介して他の装置と通信可能に構成された装置であってもよい。この場合には、入出力装置20は、例えば、当該スマートフォンの付属アクセサリとして提供されるようなウェアラブルディスプレイとして構成されていてもよい。即ち、入出力装置20は、スマートフォン等として構成された情報処理装置10と上述のようにネットワークを介して接続されることで、当該情報処理装置10と連動して動作するデバイス(例えば、ウェアラブルデバイス等)として構成されていてもよい。
 入出力装置20は、各種入力情報の取得や、当該入出力装置20を保持するユーザに対して各種出力情報を提示するための構成である。また、入出力装置20による出力情報の提示は、情報処理装置10により、当該入出力装置20により取得された入力情報に基づき制御される。例えば、入出力装置20は、実オブジェクトM11を認識するための情報を入力情報として取得し、取得した情報を情報処理装置10に出力する。情報処理装置10は、入出力装置20から取得した情報に基づき、実空間内における実オブジェクトM11の位置(即ち、実オブジェクトM11の絶対座標)を認識し、当該認識結果に基づき、入出力装置20に仮想オブジェクトV13及びV15を提示させる。このような制御により、入出力装置20は、所謂AR技術に基づき、実オブジェクトM11に対して仮想オブジェクトV13及びV15が重畳するように、当該仮想オブジェクトV13及びV15をユーザに提示することが可能となる。なお、図1では、入出力装置20と情報処理装置10とが互いに異なる装置として示されているが、入出力装置20及び情報処理装置10は一体的に構成されていてもよい。また、入出力装置20及び情報処理装置10の構成及び処理の詳細については別途後述する。
 以上、図1を参照して、本開示の一実施形態に係る情報処理システムの概略的な構成の一例について説明した。
  <1.2.入出力装置の構成>
 続いて、図2を参照して、図1に示した本実施形態に係る入出力装置20の概略的な構成の一例について説明する。図2は、本実施形態に係る入出力装置の概略的な構成の一例について説明するための説明図である。
 本実施形態に係る入出力装置20は、ユーザが頭部の少なくとも一部に装着して使用する、所謂頭部装着型デバイスとして構成されている。例えば、図2に示す例では、入出力装置20は、所謂アイウェア型(メガネ型)のデバイスとして構成されており、レンズ293a及び293bのうち少なくともいずれかが透過型のディスプレイ(出力部211)として構成されている。また、入出力装置20は、第1撮像部201a及び201bと、第2撮像部203a及び203bと、操作部207と、メガネのフレームに相当する保持部291とを備える。保持部291は、入出力装置20がユーザの頭部に装着されたときに、出力部211と、第1撮像部201a及び201bと、第2撮像部203a及び203bと、操作部207とを、当該ユーザの頭部に対して所定の位置関係となるように保持する。また、図2には図示していないが、入出力装置20は、ユーザの音声を集音するための集音部を備えていてもよい。
 ここで、入出力装置20のより具体的な構成について説明する。例えば、図2に示す例では、レンズ293aが、右眼側のレンズに相当し、レンズ293bが、左眼側のレンズに相当する。即ち、保持部291は、入出力装置20が装着された場合に、出力部211(換言すると、レンズ293a及び293b)がユーザの眼前に位置するように、当該出力部211を保持する。換言すると、当該保持部291により、出力部211がユーザの眼前に位置するように支持される。即ち、保持部291が、「支持部」の一例に相当する。
 第1撮像部201a及び201bは、所謂ステレオカメラとして構成されており、入出力装置20がユーザの頭部に装着されたときに、当該ユーザの頭部が向いた方向(即ち、ユーザの前方)を向くように、保持部291によりそれぞれ保持される。このとき、第1撮像部201aが、ユーザの右眼の近傍に保持され、第1撮像部201bが、当該ユーザの左眼の近傍に保持される。このような構成に基づき、第1撮像部201a及び201bは、入出力装置20の前方に位置する被写体(換言すると、実空間に位置する実オブジェクト)を互いに異なる位置から撮像する。これにより、入出力装置20は、ユーザの前方に位置する被写体の画像を取得するとともに、第1撮像部201a及び201bそれぞれにより撮像された画像間の視差に基づき、当該入出力装置20から、当該被写体までの距離を算出することが可能となる。なお、本開示において「画像」と記載した場合には、特に説明がない限りは「静止画像」と「動画像」とを含み得るものとする。
 なお、入出力装置20と被写体との間の距離を測定可能であれば、その構成や方法は特に限定されない。具体的な一例として、マルチカメラステレオ、移動視差、TOF(Time Of Flight)、Structured Light等の方式に基づき、入出力装置20と被写体との間の距離が測定されてもよい。ここで、TOFとは、被写体に対して赤外線等の光を投光し、投稿した光が当該被写体で反射して戻るまでの時間を画素ごとに測定することで、当該測定結果に基づき被写体までの距離(深度)を含めた画像(所謂距離画像)を得る方式である。また、Structured Lightは、被写体に対して赤外線等の光によりパターンを照射しそれを撮像することで、撮像結果から得られる当該パターンの変化に基づき、被写体までの距離(深度)を含めた距離画像を得る方式である。また、移動視差とは、所謂単眼カメラにおいても、視差に基づき被写体までの距離を測定する方法である。具体的には、カメラを移動させることで、被写体を互いに異なる視点から撮像し、撮像された画像間の視差に基づき被写体までの距離を測定する。なお、このとき各種センサによりカメラの移動距離及び移動方向を認識することで、被写体までの距離をより精度良く測定することが可能となる。なお、距離の測定方法に応じて、撮像部の構成(例えば、単眼カメラ、ステレオカメラ等)を変更してもよい。
 また、第2撮像部203a及び203bは、入出力装置20がユーザの頭部に装着されたときに、それぞれの撮像範囲内に当該ユーザの眼球が位置するように、保持部291によりそれぞれ保持される。具体的な一例として、第2撮像部203aは、撮像範囲内にユーザの右眼が位置するように保持される。このような構成に基づき、第2撮像部203aにより撮像された右眼の眼球の画像と、当該第2撮像部203aと当該右眼との間の位置関係と、に基づき、当該右眼の視線が向いている方向を認識することが可能となる。同様に、第2撮像部203bは、撮像範囲内に当該ユーザの左眼が位置するように保持される。即ち、第2撮像部203bにより撮像された左眼の眼球の画像と、当該第2撮像部203bと当該左眼との間の位置関係と、に基づき、当該左眼の視線が向いている方向を認識することが可能となる。なお、図2に示す例では、入出力装置20が第2撮像部203a及び203bの双方を含む構成について示しているが、第2撮像部203a及び203bのうちいずれかのみが設けられていてもよい。
 操作部207は、入出力装置20に対するユーザからの操作を受け付けるための構成である。操作部207は、例えば、タッチパネルやボタン等のような入力デバイスにより構成されていてもよい。操作部207は、保持部291により、入出力装置20の所定の位置に保持されている。例えば、図2に示す例では、操作部207は、メガネのテンプルに相当する位置に保持されている。
 また、本実施形態に係る入出力装置20は、例えば、加速度センサや、角速度センサ(ジャイロセンサ)が設けられ、当該入出力装置20を装着したユーザの頭部の動き(換言すると、入出力装置20自体の動き)を検出可能に構成されていてもよい。具体的な一例として、入出力装置20は、ユーザの頭部の動きとして、ヨー(yaw)方向、ピッチ(pitch)方向、及びロール(roll)方向それぞれの成分を検出することで、当該ユーザの頭部の位置及び姿勢のうち少なくともいずれかの変化を認識してもよい。
 以上のような構成に基づき、本実施形態に係る入出力装置20は、ユーザの頭部の動きに応じた、実空間内における自身の位置や姿勢の変化を認識することが可能となる。また、このとき入出力装置20は、所謂AR技術に基づき、実空間に位置する実オブジェクトに対して、仮想的なコンテンツ(即ち、仮想オブジェクト)が重畳するように、出力部211に当該コンテンツを提示することも可能となる。なお、入出力装置20が、実空間内における自身の位置及び姿勢を推定するための方法(即ち、自己位置推定)の一例については、詳細を別途後述する。
 なお、入出力装置20として適用可能な頭部装着型の表示装置(HMD:Head Mounted Display)の一例としては、例えば、シースルー型HMD、ビデオシースルー型HMD、及び網膜投射型HMDが挙げられる。
 シースルー型HMDは、例えば、ハーフミラーや透明な導光板を用いて、透明な導光部等からなる虚像光学系(即ち、光学的透過性を有する表示部)をユーザの眼前に保持し、当該虚像光学系の内側に画像を表示させる。そのため、シースルー型HMDを装着したユーザは、虚像光学系の内側に表示された画像を視聴している間も、外部の風景を視野に入れることが可能となる。このような構成により、シースルー型HMDは、例えば、AR技術に基づき、当該シースルー型HMDの位置及び姿勢のうち少なくともいずれかの認識結果に応じて、実空間に位置する実オブジェクトの光学像に対して仮想オブジェクトの画像を重畳させることも可能となる。なお、シースルー型HMDの具体的な一例として、メガネのレンズに相当する部分を虚像光学系として構成した、所謂メガネ型のウェアラブルデバイスが挙げられる。例えば、図2に示した入出力装置20は、シースルー型HMDの一例に相当する。
 ビデオシースルー型HMDは、ユーザの頭部または顔部に装着された場合に、ユーザの眼を覆うように装着され、ユーザの眼前にディスプレイ等の表示部が保持される。また、ビデオシースルー型HMDは、周囲の風景を撮像するための撮像部を有し、当該撮像部により撮像されたユーザの前方の風景の画像を表示部に表示させる。このような構成により、ビデオシースルー型HMDを装着したユーザは、外部の風景を直接視野に入れることは困難ではあるが、表示部に表示された画像により、外部の風景を確認することが可能となる。また、このときビデオシースルー型HMDは、例えば、AR技術に基づき、当該ビデオシースルー型HMDの位置及び姿勢のうち少なくともいずれかの認識結果に応じて、外部の風景の画像に対して仮想オブジェクトを重畳させてもよい。
 網膜投射型HMDは、ユーザの眼前に投影部が保持されており、当該投影部からユーザの眼に向けて、外部の風景に対して画像が重畳するように当該画像が投影される。より具体的には、網膜投射型HMDでは、ユーザの眼の網膜に対して、投影部から画像が直接投射され、当該画像が網膜上で結像する。このような構成により、近視や遠視のユーザの場合においても、より鮮明な画像を視聴することが可能となる。また、網膜投射型HMDを装着したユーザは、投影部から投影される画像を視聴している間も、外部の風景を視野に入れることが可能となる。このような構成により、網膜投射型HMDは、例えば、AR技術に基づき、当該網膜投射型HMDの位置や姿勢のうち少なくともいずれかの認識結果に応じて、実空間に位置する実オブジェクトの光学像に対して仮想オブジェクトの画像を重畳させることも可能となる。
 また、上記に説明した例以外にも、没入型HMDと呼ばれるHMDが挙げられる。没入型HMDは、ビデオシースルー型HMDと同様に、ユーザの眼を覆うように装着され、ユーザの眼前にディスプレイ等の表示部が保持される。そのため、没入型HMDを装着したユーザは、外部の風景(即ち、現実世界の風景)を直接視野に入れることが困難であり、表示部に表示された画像のみが視界に入ることとなる。このような構成により、没入型HMDは、画像を視聴しているユーザに対して没入感を与えることが可能となる。そのため、没入型HMDは、例えば、主にVR(Virtual Reality)技術に基づき情報を提示する場合に適用され得る。
 以上、図2を参照して、本開示の一実施形態に係る入出力装置の概略的な構成の一例について説明した。
  <1.3.自己位置推定の原理>
 次いで、入出力装置20が、実オブジェクトに対して仮想オブジェクトを重畳させる際に、実空間内における自身の位置及び姿勢を推定するための手法(即ち、自己位置推定)の原理の一例について説明する。
 自己位置推定の具体的な一例として、入出力装置20は、実空間内の実オブジェクト上に提示されたサイズが既知のマーカ等を、自身に設けられたカメラ等の撮像部により撮像する。そして、入出力装置20は、撮像された画像を解析することで、マーカ(ひいては、当該マーカが提示された実オブジェクト)に対する自身の相対的な位置及び姿勢のうち少なくともいずれかを推定する。なお、以降の説明では、入出力装置20が自身の位置及び姿勢を推定する場合に着目して説明するが、当該入出力装置20は、自身の位置及び姿勢のうちいずれかのみを推定してもよい。
 具体的には、画像中に撮像されたマーカの向き(例えば、マーカの模様等の向き)に応じて、当該マーカに対する撮像部(ひいては、当該撮像部を備える入出力装置20)の相対的な方向を推定することが可能である。また、マーカのサイズが既知の場合には、画像中におけるマーカのサイズに応じて、当該マーカと撮像部(即ち、当該撮像部を備える入出力装置20)との間の距離を推定することが可能である。より具体的には、マーカをより遠くから撮像すると、当該マーカは、より小さく撮像されることとなる。また、このとき画像中に撮像される実空間内の範囲は、撮像部の画角に基づき推定することが可能である。以上の特性を利用することで、画像中に撮像されたマーカの大きさ(換言すると、画角内においてマーカが占める割合)に応じて、当該マーカと撮像部との間の距離を逆算することが可能である。以上のような構成により、入出力装置20は、マーカに対する自身の相対的な位置及び姿勢を推定することが可能となる。
 また、所謂SLAM(simultaneous localization and mapping)と称される技術が、入出力装置20の自己位置推定に利用されてもよい。SLAMとは、カメラ等の撮像部、各種センサ、エンコーダ等を利用することにより、自己位置推定と環境地図の作成とを並行して行う技術である。より具体的な一例として、SLAM(特に、Visual SLAM)では、撮像部により撮像された動画像に基づき、撮像されたシーン(または、被写体)の3次元形状を逐次的に復元する。そして、撮像されたシーンの復元結果を、撮像部の位置及び姿勢の検出結果と関連付けることで、周囲の環境の地図の作成と、当該環境における撮像部(ひいては、入出力装置20)の位置及び姿勢の推定とが行われる。なお、撮像部の位置及び姿勢については、例えば、入出力装置20に加速度センサや角速度センサ等の各種センサを設けることで、当該センサの検出結果に基づき相対的な変化を示す情報として推定することが可能である。もちろん、撮像部の位置及び姿勢を推定可能であれば、その方法は、必ずしも加速度センサや角速度センサ等の各種センサの検知結果に基づく方法のみには限定されない。
 以上のような構成のもとで、例えば、撮像部による既知のマーカの撮像結果に基づく、当該マーカに対する入出力装置20の相対的な位置及び姿勢の推定結果が、上述したSLAMにおける初期化処理や位置補正に利用されてもよい。このような構成により、入出力装置20は、マーカが撮像部の画角内に含まれない状況下においても、従前に実行された初期化や位置補正の結果を受けたSLAMに基づく自己位置推定により、当該マーカ(ひいては、当該マーカが提示された実オブジェクト)に対する自身の位置及び姿勢を推定することが可能となる。
 また、上記では、主にマーカの撮像結果に基づき自己位置推定を行う場合の例に着目して説明したが、自己位置推定の基準として利用可能であれば、当該マーカ以外の他の対象の検知結果が当該自己位置推定に利用されてもよい。具体的な一例として、上記マーカに替えて、実空間内の物体(実オブジェクト)の形状や模様等のような当該物体の特徴的な部分の検出結果が、SLAMにおける初期化処理や位置補正に利用されてもよい。
 以上、入出力装置20が、実オブジェクトに対して仮想オブジェクトを重畳させる際に、実空間内における自身の位置及び姿勢を推定するための手法(即ち、自己位置推定)の原理の一例について説明した。なお、以降においては、例えば、上述した原理に基づき、実空間内の物体(実オブジェクト)に対する入出力装置20の位置及び姿勢を推定することが可能であるものとして説明する。
 <<2.視点の動きと情報の提示との間の遅延に応じた表示の補正に関する検討>>
 続いて、ARやVR等のように、視点(例えば、ユーザの頭部)の位置や姿勢の変化に応じてユーザに情報を提示する場合における、当該視点の動きと情報の提示との間の遅延に応じた表示情報の補正について概要を説明したうえで、本実施形態に係る情報処理システムの技術的課題について説明する。
 視点の位置や姿勢の変化に応じてユーザに対して情報を提示する場合には、当該視点の動きが検知されてから情報が提示されるまでの間の遅延(所謂motion-to-photon latency)が、ユーザに与える体験に影響を及ぼし得る。具体的な一例として、ユーザの頭部の向きに応じて仮想的な物体があたかも当該ユーザの目前に存在するように提示する場合には、ユーザの頭部の動きの検知結果から、当該頭部の向きを認識し、当該認識結果に応じて情報を提示するという一連の処理に時間を要する場合がある。このような場合には、例えば、ユーザの頭部の動きと、当該頭部の動きに応じた視野の変化(即ち、ユーザに提示される情報の変化)との間に、上記処理遅延に応じたずれが生じる場合がある。
 特にARのように実世界に対して仮想的な物体を重畳させるような状況下においては、上記遅延が実世界と仮想的な物体との間のずれとして顕在化する。そのため、上記遅延の影響として顕在化するずれが、VRの場合にはユーザに知覚されにくいわずかなものであったとしても、ARの場合にはユーザに知覚されやすくなる場合がある。
 上述のような遅延の影響を低減する方法の一例として、処理速度(FPS:Frame per Second)を上げることで当該遅延をより少なくする方法が挙げられる。しかしながら、この場合には、処理速度の向上に比例して、より高性能なCPUやGPU等のプロセッサを要することとなる。また、処理速度の向上に伴い、消費電力が増大するような状況や、発熱を伴うような状況も想定され得る。特に、図2を参照して説明した入出力装置20のように、ARやVRを実現するための装置はバッテリーからの電力供給により動作する場合も想定され、消費電力の増大がより顕著に影響を及ぼし得る。また、入出力装置20のように、ユーザが身体の一部に装着して使用するような装置においては、使用方法の特性上、他の装置に比べて発熱の影響(例えば、装置を装着するユーザへの影響)がより顕在化しやすい傾向にある。また、入出力装置20のような装置においては、据え置き型の装置に比べてプロセッサ等のデバイスを設けるスペースが制限されており、高性能のプロセッサを適用することが困難な場合も想定され得る。
 また、上述のような遅延の影響を低減する方法の他の一例として、ユーザに対して情報を提示する際に、当該提示のタイミングにおける視点の位置や姿勢に応じて、情報の提示位置を表示領域内で2次元的に補正する方法が挙げられる。このように、情報の提示位置を2次元的に補正する技術の一例として、「TimeWarp」や「Reprojection」と称される技術が挙げられる。例えば、図3は、視点の位置や姿勢に応じた表示情報の補正に係る処理の一例について概要を説明するための説明図であり、「TimeWarp」や「Reprojection」と称される表示情報の補正に係る技術の一例について示している。なお、以降の説明では、便宜上、「Reprojection」と称される技術に着目して説明するが、「TimeWarp」称される技術についても実質的に同様の内容が適用され得る。
 図3において、参照符号V100は、表示情報としての提示の対象となる仮想オブジェクト(以下、単に「オブジェクト」とも称する)を模式的に示している。オブジェクトV100は、例えば、実空間の所望の位置に所望の姿勢で定位するように各種情報が設定される。また、参照符号P101a及びP101bは、視点(例えば、ユーザの頭部)を模式的に示している。具体的には、視点P101aは、移動前の視点を模式的に示している。また、視点P101bは、移動後の視点を模式的に示している。なお、以降の説明では、視点P101a及びP101bを特に区別しない場合には、単に「視点P101」と称する場合がある。また、図3に示す例では、説明をわかりやすくするために、視点P101と仮想オブジェクトV100との間の関係を2次元的に提示しているが、必ずしもReprojectionに係る処理の内容を限定するものではない。即ち、視点P101と仮想オブジェクトV100との間の関係が3次元的に変化する場合においても、Reprojectionに係る処理を3次元的に適用する(即ち、3次元的な位置や姿勢の関係を考慮する)ことで実質的に同様となる。これは、後述の説明で参照する図3以外の他の図に示す例についても同様である。
 3次元的な形状を有するオブジェクトV100を2次元的な表示情報として提示する場合には、まず図3の左図に示すように、視点P101a(観察点)を基準として、当該視点P101aからの視野(画角)に応じて規定されるスクリーン面P103aに対して、当該オブジェクトV100を投影する。即ち、スクリーン面P103aが、視点P101aに対応付けて規定される投影面に相当する。このとき、3次元空間上に規定された光源とオブジェクトV100との間の位置関係に応じて、当該オブジェクトV100を2次元的な表示情報として描画する際の当該オブジェクトの色が算出されてもよい。これにより、視点P101a(観察点)の位置及び姿勢に応じた、当該視点P101a、オブジェクトV100、及びスクリーン面P103aの相対的な位置関係に応じて、当該オブジェクトV100の2次元的な形状、当該オブジェクトV100の色、及び当該オブジェクトV100が提示される2次元的な位置(即ち、スクリーン面P103a上の位置)等が算出される。
 具体的な一例として、図3の左図に示す例では、視点P101aからは、オブジェクトV100の各面のうち視点P103a側に位置する面V101及びV103を視認することが可能である。そのため、面V101及びV103のそれぞれが、視点P101aとの間の相対的な位置や姿勢の関係に応じて、スクリーン面P103aに投影され、当該投影の結果が描画される。例えば、参照符号V105aは、スクリーン面P103aに対するオブジェクトV100の面V101の投影結果に応じた2次元的な表示情報を模式的に示している。また、参照符号V107aは、スクリーン面P103aに対するオブジェクトV100の面V103の投影結果に応じた2次元的な表示情報を模式的に示している。
 そして、上記投影の結果に応じた表示情報V105a及びV107aが、所望の描画領域に描画される。具体的な一例として、当該描画領域は、例えば、視点P101の位置や姿勢に応じて規定されるスクリーン面P103(例えば、上記スクリーン面P103a)の少なくとも一部の領域に関連付けられており、当該領域へのオブジェクトV100の投影結果が表示情報(例えば、上記表示情報V105a及びV107a)として描画される。また、上記描画領域は、ディスプレイ等の出力部の表示領域と関連付けられており、当該描画領域への表示情報の描画結果が、当該表示領域に提示され得る。上記描画領域は、描画結果等のデータを一時的または恒久的に保持する所定のバッファ(例えば、フレームバッファ等)の少なくとも一部の領域として規定されてもよい。
 一方で、上述した投影及び描画に係る処理は負荷が高い傾向にあり、当該投影及び描画の結果に応じた表示情報が出力部の表示領域に提示されるタイミングにおいて、視点P101の姿勢や位置が変化している場合がある。このような場合には、例えば前述したように、当該表示領域に表示情報を提示するタイミングでの視点P101の姿勢や位置に応じて表示情報を補正する処理(即ち、Reprojection)が適用される場合がある。
 例えば、図3の右図は、上記表示情報V105a及びV107aが出力部の表示領域に提示される際に、当該提示のタイミングにおける視点P101bの位置や姿勢に応じて、当該表示情報V105a及びV107aを補正する場合の一例を示している。図3の右図において、参照符号P103bは、移動後の視点P101bに対応付けて規定されるスクリーン面を模式的に示している。
 具体的には、図3の右図に示す例では、移動前の視点P101aと、移動後の視点P101bと、の間の位置や姿勢の変化(差分)に応じて、スクリーン面P103(換言すると、出力部の表示領域)における表示情報V105a及びV107aの提示位置を補正している。また、このとき上記視点P101aと上記視点P101bとの間の位置や姿勢の差分に応じて、表示情報V105a及びV107aの形状を補正してもよい(即ち、変形してもよい)。例えば、図3の右図における参照符号V105b及びV107bは、表示情報V105a及びV107aに対する上記補正の適用結果に応じた表示情報を模式的に示している。
 以上のような制御により、オブジェクトの投影や当該投影結果の描画に係る処理遅延に伴う、当該オブジェクトの重畳位置のずれを補正することが可能となる。
 一方で、図3を参照して説明したReprojectionに係る処理は、表示情報を2次元的に補正するものであり、視点の位置や姿勢が3次元的に変化した場合に、十分な補正を行うことが困難となる場合がある。
 例えば、図4は、視点の位置や姿勢に応じた表示情報の補正に係る処理の他の一例について概要を説明するための説明図である。なお、図4において、図3と同様の参照符号は、図3に示す例と同様の対象を示すものとする。また、図4の左図については、図3の左図と同様のため詳細な説明は省略する。
 図4の右図は、表示情報V105a及びV107aが出力部の表示領域に提示される際に、当該提示のタイミングにおける視点P101の位置や姿勢に応じて、当該表示情報V105a及びV107aを補正する場合の他の一例を示している。図4の右図において、参照符号P101cは、移動後の視点P101を模式的に示している。また、参照符号P103cは、視点P101cからの視野(画角)に応じて規定されるスクリーン面(投影面)を模式的に示している。
 図4の右図に示す例は、視点P101の回転に伴い当該視点P101の位置や姿勢が変化している点で、図3の右図に示す例と異なる。具体的には、図4の右図に示す例では、視点P101がヨー(yaw)方向に回転しながら横方向に移動するように、当該視点P101の位置及び姿勢が変化している。
 図4の右図に示すような状況下では、移動前の視点P101aと、移動後の視点P101cと、の間でオブジェクトV100の見え方が大きく異なる。そのため、図3に示すように、表示情報V105a及びV107aの提示位置を2次元的に補正するのみでは、移動後の視点P101cから見たオブジェクトV100の形状を正確に再現することが困難となる場合がある。そのため、例えば、図4の右図に示す例では、視点P101の回転の方向や回転量に応じて、表示情報V105a及びV107aの形状を補正している。例えば、図4の右図における参照符号V105c及びV107cは、表示情報V105a及びV107aに対する上記補正の適用結果に応じた表示情報を模式的に示している。
 具体的には、視点P101がヨー(yaw)方向やピッチ(pitch)方向に回転する場合には、表示情報を2次元的にシフトさせるように変形することで、移動後の視点P101cに応じた表示情報(例えば、表示情報V105c及びV107c)を再現することが可能な場合がある。一方で、視点P101がロール(roll)方向に回転する場合には、2次元的な変形のみでの再現が困難な場合があり、このような場合には、例えば、歪補正等を適用することで再現が行われる場合がある。
 また、図3を参照して説明したReprojectionに係る処理は、対象となるオブジェクトが奥行き方向に長い形状を有するような状況下では、移動後の視点から見たオブジェクトを補正により正確に再現することが困難な場合がある。
 例えば、図5は、視点の位置や姿勢に応じた表示情報の補正に係る処理の他の一例について概要を説明するための説明図である。図5において、参照符号P105a及びP105bは、視点(例えば、ユーザの頭部)を模式的に示している。具体的には、視点P105aは、移動前の視点を模式的に示している。また、視点P105bは、移動後の視点を模式的に示している。なお、以降の説明では、視点P105a及びP105bを特に区別しない場合には、単に「視点P105」と称する場合がある。また、図5において、参照符号V110は、表示情報としての提示の対象となるオブジェクトを模式的に示している。
 図5の左図は、視点P105aの位置や姿勢に応じたオブジェクトV110の投影及び描画に係る処理を模式的に示している。図5の左図において、参照符号P107aは、視点P105aからの視野(画角)に応じて規定されるスクリーン面(投影面)を模式的に示している。図5の左図に示す例では、視点P105aからは、オブジェクトV110の各面のうち視点P105a側に位置する面V111及びV113を視認することが可能である。そのため、面V111及びV113のそれぞれが、視点P105aとの間の相対的な位置や姿勢の関係に応じて、スクリーン面P107aに投影され、当該投影の結果が描画される。例えば、参照符号V115aは、スクリーン面P107aに対するオブジェクトV110の面V111の投影結果に応じた2次元的な表示情報を模式的に示している。また、参照符号V117aは、スクリーン面P107aに対するオブジェクトV110の面V113の投影結果に応じた2次元的な表示情報を模式的に示している。
 また、図5の右図は、上記表示情報V115a及びV117aが出力部の表示領域に提示される際に、当該提示のタイミングにおける視点P105bの位置や姿勢に応じて、当該表示情報V115a及びV117aを補正する場合の一例を示している。図5の右図において、参照符号P107bは、移動後の視点P105bに対応付けて規定されるスクリーン面を模式的に示している。
 図5の右図に示すように、オブジェクトV110の各部のうち奥行き方向の手前側と奥側とでは、視点P105の位置が変化した場合における見え方の変化が異なる。具体的には、オブジェクトV110の面V113を移動後の視点P105bから見た場合には、移動前の視点P105aから見た場合に比べて幅がより広く見えることとなる。そのため、例えば、スクリーン面P107(換言すると、出力部の表示領域)における表示情報V115a及びV117aの提示位置を2次元的に補正するのみでは、オブジェクトV110の面V113の見え方に矛盾が生じる場合がある。例えば、図5の右図において、参照符号V115b及びV117bは、表示情報V115a及びV117aに対する補正(Reprojection)の適用結果に応じた表示情報の一例を模式的に示している。即ち、図5の右図に示す例では、スクリーン面P107b上において、オブジェクトV110の面V113の奥行き方向の奥側が見えるべき部分に、補正後の表示情報V117bが提示されておらず、結果として矛盾が生じたような見え方となっている。
 また、図3を参照して説明したReprojectionに係る処理は、視点からの距離が異なる複数のオブジェクトが存在する状況下では、いずれかのオブジェクトについて整合性が担保されるように補正が行われる。そのため、当該Reprojectionに係る処理では、他のオブジェクトを補正により正確に再現することが困難な場合がある。
 例えば、図6は、視点の位置や姿勢に応じた表示情報の補正に係る処理の他の一例について概要を説明するための説明図である。図6において、参照符号P109a及びP109bは、視点(例えば、ユーザの頭部)を模式的に示している。具体的には、視点P109aは、移動前の視点を模式的に示している。また、視点P109bは、移動後の視点を模式的に示している。なお、以降の説明では、視点P109a及びP109bを特に区別しない場合には、単に「視点P109」と称する場合がある。また、図6において、参照符号V120及びV140は、表示情報としての提示の対象となるオブジェクトを模式的に示している。
 図6の左図は、視点P195aの位置や姿勢に応じたオブジェクトV120及びV140の投影及び描画に係る処理を模式的に示している。図6の左図において、参照符号P111aは、視点P109aからの視野(画角)に応じて規定されるスクリーン面(投影面)を模式的に示している。図6の左図に示す例では、視点P109aからは、オブジェクトV120の各面のうち視点P109a側に位置する面V121及びV123と、オブジェクトV140の各面のうち視点P109a側に位置する面V141と、を視認することが可能である。そのため、面V121、V123、及びV141のそれぞれが、視点P109aとの間の相対的な位置や姿勢の関係に応じて、スクリーン面P111aに投影され、当該投影の結果が描画される。例えば、参照符号V125aは、スクリーン面P111aに対するオブジェクトV120の面V121の投影結果に応じた2次元的な表示情報を模式的に示している。また、参照符号V127aは、スクリーン面P111aに対するオブジェクトV120の面V123の投影結果に応じた2次元的な表示情報を模式的に示している。また、参照符号V143aは、スクリーン面P111aに対するオブジェクトV140の面V141の投影結果に応じた2次元的な表示情報を模式的に示している。
 また、図6の右図は、上記表示情報V125a、V127a、及びV143aが出力部の表示領域に提示される際に、当該提示のタイミングにおける視点P109bの位置や姿勢に応じて、当該表示情報V125a、V127a、及びV143aを補正する場合の一例を示している。図6の右図において、参照符号P111bは、移動後の視点P109bに対応付けて規定されるスクリーン面を模式的に示している。
 具体的には、図6の右図に示す例では、視点P109からの距離が異なる複数のオブジェクトのうち、いずれかのオブジェクトの見え方がより正しくなるように(即ち、整合性が担保されるように)、各表示情報(即ち、表示情報V125a、V127a、及びV143a)の補正が行われる。例えば、図6の右図に示す例では、視点P109から見てより手前側に位置するオブジェクトV120の見え方がより正しくなるように、表示情報V125a、V127a、及びV143aの提示位置の補正が行われている。例えば、参照符号V125b、V127b、及びV143bは、表示情報V125a、V127a、及びV143aに対する補正(Reprojection)の適用結果に応じた表示情報の一例を模式的に示している。
 一方で、視点P109からの距離が異なるオブジェクトV120とオブジェクトV140とでは、当該視点P109の位置が変化した場合における見え方の変化が異なる。このような状況下で、図6の右図に示す例では、オブジェクトV120の面V121及びV123それぞれに対応する表示情報V125b及びV127bの見え方がより正しくなるように補正が行われている。そのため、オブジェクトV140の面V141に対応する表示情報V143bについては、視点P109bから本来見えるべき位置からずれた位置に提示されている。即ち、図6に示す例では、移動後の視点P109bからのオブジェクトV140の見え方については、一部に矛盾が生じている。
 このように、オブジェクトの投影結果に応じた表示情報を2次元的に補正するのみでは、例えば、視点の位置や姿勢の変化や、対象となるオブジェクトに応じて、補正時に視点とオブジェクトとの間の3次元的な位置や姿勢の関係を正確に反映することが困難な場合がある。そこで、本開示では、視点の位置や姿勢に応じた情報の提示をより好適な態様で実現可能とする技術を提案する。具体的には、所謂Reprojectionに相当する補正処理が適用される場合においても、視点とオブジェクトとの間の3次元的な位置や姿勢の関係をより正確に反映することを可能とする技術を提案する。
 <<3.技術的特徴>>
 以下に、本開示の一実施形態に係る情報処理システムの技術的特徴について説明する。
  <3.1.基本思想>
 まず、本開示の一実施形態に係る情報処理システムにおける技術的特長について、特に、オブジェクトの投影結果に応じた表示情報の提示時に、当該提示のタイミングにおける視点の位置や姿勢に応じて当該表示情報を補正する処理に着目して説明する。例えば、図7は、本開示の一実施形態に係る情報処理システムの技術的特徴の基本思想について概要を説明するための説明図である。図7において、参照符号P151a及びP151bは、視点(例えば、ユーザの頭部)を模式的に示している。具体的には、視点P151aは、移動前の視点を模式的に示している。また、視点P151bは、移動後の視点を模式的に示している。なお、以降の説明では、視点P151a及びP151bを特に区別しない場合には、単に「視点P151」と称する場合がある。
 まず、図7の左図を参照して、本開示の一実施形態に係る情報処理システムにおける、オブジェクトの投影及び描画に係る処理について概要を説明する。図7の左図において、参照符号V150a及びV160aは、表示情報としての提示の対象となるオブジェクトを模式的に示している。また、参照符号P153aは、視点P151aからの視野(画角)に応じて規定されるスクリーン面(投影面)を模式的に示している。図7の左図に示す例では、視点P151aからは、オブジェクトV150aの各面のうち視点P151a側に位置する面V151a及びV153aと、オブジェクトV160aの各面のうち視点P151a側に位置する面V161aと、を視認することが可能である。そのため、面V151a、V153a、及びV161aのそれぞれが、視点P151aとの間の相対的な位置や姿勢の関係に応じて、スクリーン面P153aに投影され、当該投影の結果が描画される。即ち、移動前の視点P151aが、「第1の視点」一例に相当し、当該視点P151a(即ち、第1の視点)に対応付けて規定されるスクリーン面P153aが、「第1の投影面」の一例に相当する。例えば、参照符号V125aは、スクリーン面P111aに対するオブジェクトV120の面V121の投影結果に応じた2次元的な表示情報を模式的に示している。また、参照符号V127aは、スクリーン面P111aに対するオブジェクトV120の面V123の投影結果に応じた2次元的な表示情報を模式的に示している。また、参照符号V143aは、スクリーン面P111aに対するオブジェクトV140の面V141の投影結果に応じた2次元的な表示情報を模式的に示している。
 また、本実施形態に係る情報処理システムでは、各オブジェクトの投影結果に対して、視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた情報が関連付けられる。具体的な一例として、図7の左図に示す例では、オブジェクトV150aの面V151aの投影結果に応じた表示情報V155aに対して、視点P151aと当該面V151aとの間の距離に関する情報(例えば、Z―buffer法におけるZ値等)が関連付けられる。なお、以降の説明では、上記表示情報に関連付けられる、視点とオブジェクトとの間の距離に関する情報を、便宜上「距離情報」とも称する。同様に、オブジェクトV150aの面V153aの投影結果に応じた表示情報V157aに対して、視点P151aと当該面V153aとの間の距離に関する距離情報が関連付けられる。また、オブジェクトV160aの面V161aの投影結果に応じた表示情報V163aに対して、視点P151aと当該面V161aとの間の距離に関する距離情報が関連付けられる。
 なお、以降では、表示情報に対して距離情報が関連付けられる場合の例に着目して説明するが、視点とオブジェクトとの間の相対的な位置及び姿勢の関係を特定可能な情報であれば、上記表示情報に関連付けられる情報は、必ずしも距離情報には限定されない。具体的な一例として、所定の座標系における視点及びオブジェクトそれぞれの座標が、当該視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた情報として関連付けられてもよい。また、視点とオブジェクトとの間の相対的な位置や姿勢の関係に応じた各種情報については、例えば、当該視点の位置及び姿勢に関する情報や、当該オブジェクトを定位させる位置及び姿勢に関する情報等に基づき取得することが可能である。もちろん、視点とオブジェクトとの間の相対的な位置及び姿勢の関係を特定可能な情報を取得することが可能であれば、その方法についても特に限定はされない。また、オブジェクトの投影結果に応じた上記表示情報が、「第1の情報」の一例に相当する。また、当該表示情報(即ち、第1の情報)に関連付けられる情報、即ち、視点とオブジェクトとの間の相対的な位置及び姿勢の関係に応じた情報が、「第2の情報」の一例に相当する。
 次いで、図7の中央図及び右図を参照して、本開示の一実施形態に係る情報処理システムにおける、視点の位置や姿勢に応じた表示情報の補正に係る処理(即ち、Reprojectionに相当する処理)について概要を説明する。
 本実施形態に係る情報処理システムでは、オブジェクトの投影結果に応じて描画された表示情報を、視点の位置や姿勢に応じて補正する際には、まず当該オブジェクトの3次元的な情報を復元する。例えば、図7の中央図に示す例では、表示情報V155a、V157a、及びV163aのそれぞれと、各表示情報に関連付けられた情報(例えば、距離情報)と、に基づき、オブジェクトV150a及びV160aの3次元的な情報(例えば、3次元的な位置、姿勢、及び形状等の情報)を復元する。なお、以降の説明では、オブジェクトV150a及びV160aそれぞれの復元結果を、上記投影の対象としたオブジェクトV150a及びV160aと区別するために、「オブジェクトV150b」及び「オブジェクトV160b」と称する場合がある。一方で、オブジェクトV150a及びV150bを特に区別しない場合には、単に「オブジェクトV150」と称する場合がある。同様に、オブジェクトV160a及びV160bを特に区別しない場合には、単に「オブジェクトV160」と称する場合がある。
 具体的な一例として、表示情報V155aと、当該表示情報V155aに関連付けられた距離情報と、に基づき、オブエジェクV150bの面V151bの3次元的な情報が復元される。同様に、表示情報V157aと、当該表示情報V157aに関連付けられた距離情報と、に基づき、オブエジェクV150bの面V153bの3次元的な情報が復元される。また、表示情報V163aと、当該表示情報V163aに関連付けられた距離情報と、に基づき、オブエジェクV160bの面V161bの3次元的な情報が復元される。
 次いで、図7の右図に示すように、復元されたオブジェクトV150b及びV160bを、移動後の視点P151b(即ち、表示情報の提示タイミングにおける視点)の位置や姿勢に基づき、当該視点P151bからの視野(画角)に応じて規定されるスクリーン面P153b(投影面)に再投影する。即ち、当該再投影の対象となる、移動後の視点P151bが「第2の視点」の一例に相当し、当該視点P151b(即ち、第2の視点)に対応付けて規定される投影面P153bが、「第2の投影面」の一例に相当する。なお、移動後の視点P151bの位置や姿勢については、例えば、加速度センサや角速度センサ等の各種センサによる視点P151の位置や姿勢の変化の検出結果や、当該検出結果に基づく自己位置推定等に基づき算出することが可能である。
 図7の右図において、参照符号V155bは、復元されたオブジェクトV150bの面V151bの再投影の結果に応じた表示情報を模式的に示している。同様に、参照符号V157bは、復元されたオブジェクトV150bの面V153bの再投影の結果に応じた表示情報を模式的に示している。また、参照符号V163bは、復元されたオブジェクトV160bの面V161bの再投影の結果に応じた表示情報を模式的に示している。
 以上のように、本実施形態に係る情報処理システムでは、視点の位置や姿勢に応じて対象となるオブジェクトの投影及び描画を行い、当該投影及び当該描画の結果に応じた表示情報に対して、当該オブジェクトと当該視点との間の相対的な位置及び姿勢の関係に応じた情報を関連付ける。即ち、当該表示情報には、描画結果に応じた各ピクセルの情報(例えば、ピクセルごとの色の情報等)に加えて、距離情報(即ち、Z値等のように、対応するオブジェクトと視点との間の距離に関する情報)等が関連付けられる。また、出力部を介して上記投影及び上記描画の結果に応じた表示情報を提示する際には、まず上記表示情報と上記距離情報とに基づき上記オブジェクトの3次元的な情報を復元し、当該提示のタイミングにおける視点の位置や姿勢に応じて復元した当該オブジェクトを再投影する。これにより、上記描画結果に応じた表示情報が、移動後の視点の位置及び姿勢に応じて補正される(例えば、提示位置や形状が補正される)。
 以上のように、本実施形態に係る情報処理システムに依れば、オブジェクトの投影結果に応じた表示情報に対して視点の位置や姿勢に応じた補正(所謂Reprojectionに相当する処理)が適用される状況下においても、視点とオブジェクトとの間の3次元的な位置や姿勢の関係をより正確に反映することが可能となる。即ち、本実施形態に係る情報処理システムに依れば、視点の位置や姿勢の変化に応じてユーザに対して情報を提示する状況下で、当該視点の動きが検知されてから情報が提示されるまでの間の処理遅延に応じた表示情報の重畳位置のずれをより好適な態様で補正することが可能となる。
  <3.2.機能構成>
 続いて、本開示の一実施形態に係る情報処理システムの機能構成の一例について説明する。例えば、図8は、本実施形態に係る情報処理システムの機能構成の一例を示したブロック図である。具体的には、図8は、図1に示す情報処理システム1の機能構成の一例ついて、特に、情報処理装置10が、入出力装置20の位置や姿勢の変化に応じて、当該入出力装置20の出力部211を介してユーザに情報を提示するための構成に着目して示している。
 図8に示すように、本実施形態に係る情報処理システム1は、情報処理装置10と、撮像部201と、検知部251と、出力部211と、記憶部191とを含む。なお、出力部211は、例えば、図2を参照して説明した出力部211に相当する。
 撮像部201は、図2においてステレオカメラとして構成された第1撮像部201a及び201bに相当する。撮像部201は、実空間内の物体(被写体)の画像を撮像し、撮像した当該画像を情報処理装置10に出力する。
 検知部251は、入出力装置20の位置や姿勢の変化(ひいては、当該入出力装置20を装着したユーザの頭部の動き)を検出するための情報の取得に係る部分を模式的に示している。即ち、検知部251は、視点の位置や姿勢の変化(換言すると、入出力装置20の位置や姿勢の変化)を検出するための情報を取得する。具体的な一例として、検知部251は、加速度センサや角速度センサ等のような物体の動きの検出に係る各種センサを含んでもよい。検知部251は、取得した情報を情報処理装置10に出力する。これにより、情報処理装置10は、入出力装置20の位置や姿勢の変化を認識することが可能となる。
 記憶部191は、情報処理装置10が各種機能を実現するためのプログラムやデータを一時的にまたは恒久的に記憶する。具体的な一例として、記憶部191は、出力部211を介した提示の対象となる仮想コンテンツのデータ(例えば、仮想的なオブジェクトの形状、色、配置等を再現するためのデータ)が保持されていてもよい。なお、情報処理装置10が記憶部191にアクセス可能であれば、当該記憶部191が設けられる位置は特に限定されない。具体的な一例として、記憶部191は、情報処理装置10に内蔵されていてもよい。また、他の一例として、記憶部191は、情報処理装置10以外の他の装置として構成され、当該情報処理装置10に外付けされてもよい。また、他の一例として、記憶部191は、情報処理装置10以外の他の装置として構成され、当該情報処理装置10にネットワークを介して接続されてもよい。
 次いで、情報処理装置10の構成について説明する。図8に示すように、情報処理装置10は、認識処理部101と、予測処理部103と、描画処理部105と、フレームバッファ107と、補正処理部109と、出力制御部111とを含む。
 認識処理部101は、撮像部201から撮像された画像を取得し、取得した画像に対して解析処理を施すことで、当該画像に撮像された実空間内の物体(被写体)を認識する。具体的な一例として、認識処理部101は、ステレオカメラとして構成された撮像部201から、互いに異なる複数の視点から撮像された画像(以降では、「ステレオ画像」とも称する)を取得し、取得した画像間の視差に基づき、画像中に撮像された物体までの距離を、当該画像の画素ごとに測定する。これにより、認識処理部101は、当該画像が撮像されたタイミングにおける、撮像部201(ひいては、入出力装置20)と、当該画像に撮像された各物体との間の、実空間内における相対的な位置関係(特に、奥行き方向の位置関係)を推定または認識することが可能となる。もちろん上記はあくまで一例であり、実空間内の物体を認識することが可能であれば、その方法やそのための構成は特に限定されない。即ち、実空間内の物体の認識方法に応じて、撮像部201等の構成が適宜変更されてもよい。
 また、認識処理部101は、例えば、自己位置推定の技術に基づき、視点の位置や姿勢を認識してもよい。具体的な一例として、認識処理部101は、SLAMに基づき自己位置推定と環境地図の作成とを行うことで、入出力装置20(換言すると、視点)と、画像中に撮像された物体との間の、実空間内における位置関係を認識してもよい。この場合には、例えば、認識処理部101は、検知部251から入出力装置20の位置及び姿勢の変化の検知結果に関する情報を取得し、当該情報をSLAMに基づく自己位置推定に利用してもよい。
 より具体的な一例として、認識処理部101は、SLAMに基づく自己位置推定を利用することで、入出力装置20の現在の位置、姿勢、速度、及び慣性加速度等を算出する。また、認識処理部101は、入出力装置20の現在の位置、姿勢、及び速度を基点として、検知部251から得られる加速度や角速度を慣性航法で積分することで、最新の位置及び姿勢や速度及び角速度を算出する。
 なお、上記はあくまで一例であり、視点の位置や姿勢を認識することが可能であれば、その方法やそのための構成は特に限定されない。即ち、視点の位置や姿勢の認識方法に応じて、撮像部201や検知部251等の構成が適宜変更されてもよい。
 そして、認識処理部101は、入出力装置20の自己位置推定の結果(即ち、視点の位置や姿勢の認識結果)に関する情報を予測処理部103に出力する。
 予測処理部103は、認識処理部101から入出力装置20の自己位置推定の結果(即ち、視点の位置や姿勢の認識結果)に関する情報を取得する。予測処理部103は、取得した当該情報に基づき、入出力装置20の未来の位置及び姿勢を予測する。具体的な一例として、予測処理部103は、入出力装置20の自己位置推定の結果に応じた、当該入出力装置20の位置及び姿勢や速度及び角速度を線型補間で外挿することで、入出力装置20の未来の位置及び姿勢を予測してもよい。そして、予測処理部103は、入出力装置20(換言すると、視点)の位置及び姿勢の予測結果に関する情報を、描画処理部105や補正処理部109に出力する。なお、以降の説明では、タイミングtにおける視点の位置及び姿勢を、eyepose[t]と表記する場合がある。
 描画処理部105は、視点の位置及び姿勢の予測結果に関する情報を予測処理部103から取得し、取得した当該情報に基づく視点の位置や姿勢に応じて、提示対象となる表示情報を所定のバッファに描画する。このとき、描画処理部105は、例えば、視点の位置や姿勢に応じて、対象となるオブジェクト(例えば、3次元的な情報を有する仮想オブジェクト)を、当該視点に対応付けて規定されるスクリーン面(例えば、出力部211の表示領域)に投影し、当該投影の結果に応じた表示情報(即ち、2次元的な表示情報)を上記バッファに描画してもよい。なお、以降の説明では、便宜上、描画処理部105は、上記描画の結果をフレームバッファ107に描画するものとして説明するが、必ずしも上記描画の結果が保持される領域を限定するものではない。また、描画処理部105が、「投影処理部」の一例に相当する。また、描画処理部105のうち、予測処理部103から視点の位置及び姿勢の予測結果に関する情報(即ち、視点の位置及び姿勢の認識結果に応じた情報)を取得する部分が、「取得部」の一例に相当する。
 また、描画処理部105は、認識処理部101から実空間内の物体の位置の認識結果に関する情報を取得してもよい。この場合には、例えば、描画処理部105は、実空間内の物体(実オブジェクト)の認識結果に応じて表示情報の描画を行ってもよい。具体的な一例として、描画処理部105は、実空間内の物体と、提示対象となるオブジェクトと、の間の位置や姿勢の関係に応じて、当該オブジェクトをスクリーン面に投影し、当該投影の結果に応じた表示情報を上記バッファに描画してもよい。また、このとき、描画処理部105は、視点の位置及び姿勢の認識結果に応じて、実空間内の物体に対してオブジェクトが重畳するように、当該オブジェクトを定位させる実空間内の位置を制御してもよい。なお、以降の説明では、描画処理部105によりオブジェクトの投影結果に応じて描画された表示情報(例えば、画像等のような2次元的な表示情報)を、便宜上「参照フレーム(reference frame)」とも称する。また、eyepose[t]に対応する参照フレームを、fremeref[t]と表記する場合がある。
 また、描画処理部105は、上記バッファに描画する表示情報の色や明るさを、各種条件に応じて制御してもよい。具体的な一例として、描画処理部105は、対象となるオブジェクトを表示領域に投影した際に、3次元空間上に規定された光源と当該オブジェクトとの間の位置関係に応じて、当該オブジェクトを表示情報として描画する際の色や明るさ制御してもよい。また、描画処理部105は、AR技術に基づき実空間内の物体に重畳するように表示情報を提示する場合に、当該物体と当該表示情報との間の位置関係に応じて、当該表示情報を描画する際の色や明るさを制御してもよい。
 また、描画処理部105は、オブジェクトの投影結果に応じて描画された表示情報(参照フレーム)に対して、視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた情報(例えば、Z値等のような距離情報)を関連付ける。なお、ここでは、描画処理部105は、表示情報に対して視点とオブジェクトとの間の距離に応じた距離情報を関連付けるものとする。
 フレームバッファ107は、各種データを一時的にまたは恒久的に保持する記憶領域である。フレームバッファ107には、例えば、描画処理部105による表示情報の描画結果(即ち、参照フレーム)が保持される。
 補正処理部109は、描画処理部105によりフレームバッファ107に描画された表示情報(参照フレーム)に対して各種補正を施す。具体的な一例として、補正処理部109は、描画処理部105によりバッファに描画された表示情報が、後述する出力制御部111により出力部211に提示されるまでに、視点の位置や姿勢が変化した場合に、当該視点の位置や姿勢の変化に応じて当該表示情報の補正(所謂リプロジェクションに相当する処理)を適用してもよい。
 具体的には、補正処理部109は、図7を参照して前述したように、フレームバッファ107に保持された表示情報(参照フレーム)と、当該表示情報に関連付けられた距離情報と、に基づき、当該表示情報の投影元となるオブジェクトの3次元的な情報を復元する。また、補正処理部109は、出力部211を介した表示情報の提示タイミングにおける視点の位置及び姿勢の予測結果に関する情報を予測処理部103から取得し、取得した当該情報に基づく視点の位置や姿勢に応じて、復元したオブジェクトを再投影する。以上のようにして、補正処理部109は、フレームバッファ107に保持された表示情報(参照フレーム)を補正する。即ち、移動後の視点の位置及び姿勢に応じて、当該表示情報の提示位置や形状が補正される。
 以上のようにして、補正処理部109によりフレームバッファ107に保持された表示情報に対して各種補正が行われると、出力制御部111は、出力部211を介した情報の提示タイミングにあわせて、補正後の当該表示情報を当該出力部211に提示させる。
 なお、補正処理部109及び出力制御部111による上述した処理の適用単位は、出力部211に情報を提示させる方式に応じて適宜変更されてもよい。例えば、所謂グローバル発光により出力部211を介して情報が提示される方式が適用される場合には、補正処理部109及び出力制御部111を画面単位で上述した処理を適用してもよい。また、所謂スキャンライン発光等のように出力部211の表示領域を複数の部分領域(例えば、ラインやタイル)に分割し、当該部分領域ごとに順次表示情報が提示される方式が適用される場合には、補正処理部109及び出力制御部111は、当該部分領域を1以上含む部分ごとに上述した処理を適用してもよい。
 なお、図8に示した情報処理システム1の機能構成はあくまで一例であり、上述した各構成の動作を実現することが可能であれば、当該情報処理システム1の機能構成は必ずしも図8に示す例には限定されない。具体的な一例として、撮像部201、検知部251、及び出力部211の少なくともいずれかと、情報処理装置10とが一体的に構成されていてもよい。また、他の一例として、情報処理装置10の一部の機能が、当該情報処理装置10の外部に設けられていてもよい。具体的な一例として、認識処理部101や予測処理部103に相当する部分が、情報処理装置10の外部に設けられていてもよい。なお、この場合には、情報処理装置10の外部に設けられた認識処理部101や予測処理部103に相当する部分から情報を取得するインタフェースが、視点の位置及び姿勢の認識結果に応じた情報を取得する「取得部」の一例に相当し得る。また、情報処理装置10の少なくとも一部の機能が、複数の装置が連携して動作することで実現されてもよい。
 以上、図8を参照して、本開示の一実施形態に係る情報処理システムの機能構成の一例について説明した。
  <3.3.処理>
 続いて、本開示の一実施形態に係る情報処理システムの一連の処理の流れの一例について説明する。例えば、図9は、本実施形態に係る情報処理システムの一連の処理の流れの一例を示したタイミングチャートであり、特に、情報処理装置10が、入出力装置20の位置や姿勢の変化に応じて、当該入出力装置20の出力部211を介してユーザに情報を提示するための処理に着目して示している。図9において、参照符号Tfは、出力部を介した情報の提示に係る単位期間を模式的に示しており、例えば、フレーム周期が該当する。
 図9に示す例では、出力部211の表示領域をN個の部分領域に分割し、当該部分領域ごとに順次情報を提示する場合(例えば、スキャンライン発光の場合)の一例について示している。即ち、図9に示す例では、出力部211の表示領域に表示情報が提示される際には、フレーム周期がN分割され、当該表示領域への当該表示情報の提示がN回に分けて実行される。図9において、参照符号tp1~tpNは、表示領域が分割されたN個の部分領域それぞれに対する表示情報の提示が開始されるタイミングをそれぞれ示している。また、参照符号tw1~twNは、タイミングtp1~tpNそれぞれの直前のタイミングを模式的に示している。
 具体的には、出力部211を介した表示情報の提示に係る処理に先駆けて、提示対象となるオブジェクトの投影や当該投影の結果に応じた表示情報の描画が行われる。より具体的には、図9に示す例では、表示情報の提示が行われるフレームの開始タイミング(例えば、タイミングtp1)よりも前に、タイミングtにおける視点の位置及び姿勢の推定結果に応じて、その後の視点の位置及び姿勢の予測が行われ、当該予測の結果に応じて、画像生成に係る処理、即ち、オブジェクトの投影に係る処理や当該投影の結果に応じた表示情報の描画に係る処理が実行される。
 続いて、表示領域が分割された各部分領域に対して表示情報が提示されるタイミングtp1~tpNそれぞれにあわせて、上記描画結果に応じてバッファに保持された表示情報のうち、対応する部分領域に相当する部分の補正に係る処理が実行される。
 例えば、当該表示情報のうち、タイミングtp1で情報の提示が行われる部分領域に対応する部分については、タイミングtp1の直前のタイミングtw1における視点の位置及び姿勢の推定結果に基づき、タイミングtp1での当該視点の位置及び姿勢の予測が行われる。次いで、当該予測の結果から、対象となる表示情報の描画が行われたタイミングでの視点の位置及び姿勢と、タイミングtp1での当該視点の位置及び姿勢と、の間の差分の推定が行われ、当該差分の推定結果に基づき、表示情報の補正に係る処理(換言すると、遅延補償に係る処理)が実行される。具体的には、バッファに保持された表示情報からオブジェクトが復元され、復元された当該オブジェクトが、上記タイミングtp1での当該視点の位置及び姿勢に応じたスクリーン面に再投影される。以上のようにして、バッファに保持された上記表示情報の補正(例えば、提示位置の補正や形状の補正等)が行わる。そして、タイミングtp1において、対応する部分領域に対する補正後の当該表示情報の提示に係る処理の実行が開始される。
 また、タイミングtp1に次ぐタイミングtp2で情報の提示が行われる部分領域に対応する部分については、タイミングtp2の直前のタイミングtw2における視点の位置及び姿勢の推定結果に基づき、タイミングtp2での当該視点の位置及び姿勢の予測が行われる。そして、当該予測の結果から、対象となる表示情報の描画が行われたタイミングでの視点の位置及び姿勢と、タイミングtp2での当該視点の位置及び姿勢と、の間の差分の推定が行われ、当該差分の推定結果に基づき、表示情報の補正に係る処理が実行される。そして、タイミングtp2において、対応する部分領域に対する補正後の当該表示情報の提示に係る処理の実行が開始される。以上のような処理が、各部分領域について順次実行される。このように、図9に示す例では、各部分領域について順次実行される上記補正に係る処理(換言すると、再投影に係る処理)は、移動前の視点の位置及び姿勢に応じたオブジェクトの投影及び描画に係る処理の周期よりも短い周期で実行される。
 なお、上述の通り、フレーム周期をN分割して表示情報の補正を適用する状況下では、分割数Nが少なすぎる場合には、重畳位置の誤差が大きくなるだけでなく、補正後の表示フレーム間でティアリングが生じる場合がある。そのため、分割数Nについては、例えば、システムのスペックや提示対象となるコンテンツに応じて設定されることが望ましい。具体的な一例として、オブジェクト(重畳物)が画面内を移動する速度の上限(即ち、視点とオブジェクトとの間の相対的な速度の上限)に基づき、表示フレーム間でオブジェクトの位置が1px以上ずれないように分割数Nが決定されることが望ましい。より具体的な一例として、出力部の水平解像度が1280px、水平画角が30deg、フレームレートが60fps、視点(例えば、ユーザの頭部)の回転速度の上限が100deg/secと仮定すると、以下に(式1)及び(式2)として示す計算式に基づき、N=18とすればよい。
Figure JPOXMLDOC01-appb-M000001
 また、上述した各部分領域のうち、一部の部分領域が「第1の部分領域」の一例に相当し、当該第1の部分領域と異なる部分領域が「第2の部分領域」の一例に相当する。また、出力部を介した提示の対象となる表示情報(即ち、オブジェクトの投影及び描画の結果に応じた表示情報)のうち、第1の部分領域への提示対象となる部分が「第1の表示情報」の一例に相当し、第2の部分領域への提示対象となる部分が「第2の表示情報」の一例に相当する。即ち、この場合には、第1の表示情報の提示と、第2の表示情報の提示と、は異なるタイミングで制御されることとなる。
 以上、図9を参照して、本開示の一実施形態に係る情報処理システムの一連の処理の流れの一例について説明した。
  <3.4.実施例>
 続いて、実施例として、本開示の一実施形態に係る情報処理システムによる、オブジェクトの投影及び描画の結果に応じた表示情報の補正に係る処理、即ち、オブジェクトの復元及び再投影に係る処理のより具体的な一例について説明する。具体的には、図7を参照して説明したオブジェクトの復元及び再投影に係る処理の単位は特に限定されず、当該復元及び当該再投影に係る処理が、オブジェクトごとに実行されてもよいし、オブジェクトの部分ごとに実行されてもよい。
  (実施例1:ピクセル単位の復元及び再投影)
 まず、実施例1として、図10及び図11を参照して、オブジェクトの投影及び描画の結果に応じた表示情報のピクセルごとに、上述したオブジェクトの復元及び再投影に係る処理が実行される場合の一例について説明する。図10及び図11は、本開示の一実施形態に係る情報処理システムの実施例1について概要を説明するための説明図であり、ピクセル単位でオブジェクトの復元及び再投影が行われる場合の一例について示している。なお、図10及び図11において、図7と同様の符号は、図7に示す例と同様の対象を示すものとする。
 まず、図10を参照して、オブジェクトの復元に係る処理について説明する。図10の左図は、オブジェクトの投影及び描画に係る処理を模式的に示しており、図7の左図と同様のため詳細な説明は省略する。また、参照符号D111は、図10の左図に示すオブジェクトの投影及び描画が行われるバッファの状況を模式的に示しており、便宜上「カラーバッファ(Color Buffer)」とも称する。即ち、カラーバッファD111には、オブジェクトの投影及び描画の結果に応じた表示情報(より具体的には、各ピクセルのRGB値等の情報)が保持される。また、参照符号D113は、当該表示情報に関連付けられる距離情報が保持されるバッファの状況を模式的に示しており、便宜上「Zバッファ(Z-buffer)」とも称する。即ち、ZバッファD113には、カラーバッファD111に保持された表示情報のピクセルごとに、視点と当該ピクセルに対応するオブジェクトの部分との間の距離がピクセルの明るさにより提示されている。具体的には、図10に示す例では、ZバッファD113は、視点により近い部分に対応するピクセルほどより白く提示され、視点からより離間した部分に対応するピクセルほどより黒く提示されている。
 次いで、図10の右図に示すように、カラーバッファD111に保持された表示情報と、ZバッファD113に保持された距離情報と、に基づき、オブジェクトの復元に係る処理が実行される。具体的には、図10に示す例では、カラーバッファD111に保持されたオブジェクトV150a及びV160aに対応する表示情報の各ピクセルが、ZバッファD113に保持された当該ピクセルに対応する距離情報に基づき、3次元空間上に射影される。これにより、オブジェクトV150a及びV160aの復元が行われる。例えば、オブジェクトV150b及びV160bは、当該オブジェクトV150a及びV160aの復元結果を示している。
 続いて、図11を参照して、オブジェクトの再投影に係る処理について説明する。図11の左図は、図10の右図に相当する。また、図11の右図は、図11の左図に示したオブジェクトの復元結果に基づく、当該オブジェクトの再投影に係る処理を模式的に示している。
 図11の右図に示す例では、表示情報のピクセル単位で復元されたオブジェクトV150b及びV160bを、移動後の視点P151bに対応付けて規定された投影面P153bに対して当該ピクセルに相当する部分ごとに再投影が行われている。例えば、参照符号D117は、図11の右図に示す再投影時におけるZバッファの状況(即ち、オブジェクトV150b及びV160bの各部と視点P151bとの間の距離)を模式的に示している。また、参照符号D115は、図11の右図に示す再投影の結果に応じたカラーバッファの状況を模式的に示している。
 カラーバッファD115及びZバッファD117に示すように、移動後の視点P151から見た場合におけるオブジェクトV150及びV160がより正確に再現されていることがわかる。
 なお、図10及び図11に示す例では、オブジェクトの復元時において、オブジェクトV160の各部のうち、視点P151bからは視認可能であるが、視点P151aからは視認することが困難な部分については、復元を行うことが困難な場合がある。このような課題を解決する方法の一例については、変形例として別途後述する。
 以上、実施例1として、図10及び図11を参照して、オブジェクトの投影及び描画の結果に応じた表示情報のピクセルごとに、上述したオブジェクトの復元及び再投影に係る処理が実行される場合の一例について説明した。
  (実施例2:オブジェクト単位の復元及び再投影)
 続いて、実施例2として、図12及び図13を参照して、オブジェクトごとに、上述したオブジェクトの復元及び再投影に係る処理が実行される場合の一例について説明する。図12及び図13は、本開示の一実施形態に係る情報処理システムの実施例2について概要を説明するための説明図であり、オブジェクト単位でオブジェクトの復元及び再投影が行われる場合の一例について示している。なお、図12及び図13において、図7と同様の符号は、図7に示す例と同様の対象を示すものとする。
 まず、図12の左図に示すように、オブジェクトの投影及び描画が行われる。このとき当該投影及び当該描画の結果に応じた表示情報には、視点と、対応するオブジェクトの位置を代表する点(例えば、bounding sphereの中心等)と、の間の距離に応じた距離情報が関連付けられる。例えば、参照符号V159aは、オブジェクトV150aの位置を代表する点(以下、「代表点」とも称する)を模式的に示している。また、参照符号V169aは、オブジェクトV160aの代表点を模式的に示している。即ち、オブジェクトV150aの投影結果に応じた表示情報には、視点P151aと代表点V159aとの間の距離に応じた距離情報が関連付けられる。同様に、オブジェクトV160aの投影結果に応じた表示情報には、視点P151aと代表点V169aとの間の距離に応じた距離情報が関連付けられる。
 例えば、参照符号D121は、図10の左図に示すオブジェクトの投影及び描画の結果に応じたカラーバッファの状況を模式的に示している。即ち、カラーバッファD121に保持されたオブジェクトV150a及びV160aそれぞれに対応する表示情報に対して、当該オブジェクトの代表点と視点P151aとの間の距離に応じた距離情報が関連付けられることとなる。なお、カラーバッファD121に保持された表示情報の各ピクセルがどのオブジェクトに対応するかについては識別可能であるものとする。具体的な一例として、表示情報の各ピクセルに対して、対応するオブジェクトの識別情報(objectid)を関連付けることで、当該ピクセルがどのオブジェクトに対応するかを識別することが可能となる。もちろん、各ピクセルがどのオブジェクトに対応するかについては識別可能であれば、その方法は特に限定されない。
 次いで、図12の右図に示すように、カラーバッファD121に保持された表示情報と、オブジェクトごとに当該表示情報に関連付けられた距離情報と、に基づき、当該オブジェクトの復元に係る処理が実行される。このとき、オブジェクトごとの表示情報の各ピクセルそれぞれについて、当該ピクセルの射影後の位置と視点との間の距離が、当該視点と当該オブジェクトの代表点との間の距離となるように、当該ピクセルが3次元空間に射影されることで当該オブジェクトの3次元的な情報が復元される。図12の右図において、参照符号V150c及びV160cは、オブジェクトV150a及びV160aの復元結果を模式的に示している。
 具体的な一例として、表示情報の各ピクセルのスクリーン面P153a上における座標を(sx,sy)とし、オブジェクトV150aの代表点V159aと視点P151aとの間の距離をsz1とする。このとき、オブジェクトV150aに対応する当該ピクセルが射影される3次元空間内の座標(wx,wy,wz)は、視点P151aの位置及び姿勢を基準とした、スクリーン面P153a上の当該ピクセルの座標(sx,sy)と距離sz1とに基づく射影により算出される。同様に、オブジェクトV160aの代表点V169aと視点P151aとの間の距離をsz1とする。このとき、オブジェクトV160aに対応する上記ピクセルが射影される3次元空間内の座標(wx,wy,wz)は、視点P151aの位置及び姿勢を基準とした、スクリーン面P153a上の当該ピクセルの座標(sx,sy)と距離sz2とに基づく射影により算出される。
 続いて、図13を参照して、オブジェクトの再投影に係る処理について説明する。図13の左図は、図12の右図に相当する。また、図13の右図は、図13の左図に示したオブジェクトの復元結果に基づく、当該オブジェクトの再投影に係る処理を模式的に示している。
 図13の右図に示す例では、表示情報のピクセル単位で復元されたオブジェクトV150c及びV160cを、移動後の視点P151bに対応付けて規定された投影面P153bに対して当該ピクセルに相当する部分ごとに再投影が行われている。例えば、参照符号D125は、図13の右図に示す再投影の結果に応じたカラーバッファの状況を模式的に示している。
 なお、図12及び図13に示すように、実施例2として示す例では、オブジェクトV150a及びV160aが、2次元的な板状のオブジェクトV150c及びV160cとして縮退して復元され、当該復元結果が再投影される。このような特性から、再投影の結果に応じた表示情報の一部の見え方について、視点P151bからの本来の見え方からずれが生じる場合がある。一方で、移動前の視点P151aと移動後の視点P151bとの間の位置及び姿勢の変化が比較的小さい場合には、上述したずれはより小さくなり、ユーザに知覚されにくい傾向にある。特に、AR技術に基づき情報を提示する場合の遅延補償においては、当該遅延補償が適用される際の視点の位置及び姿勢の変化が比較的小さいため、本実施例に係る手法を適用した場合においても、上述したずれがユーザに知覚されにくくなる傾向にある。
 以上、実施例2として、図12及び図13を参照して、オブジェクトごとに、上述したオブジェクトの復元及び再投影に係る処理が実行される場合の一例について説明した。
  (補足)
 上述した実施例1及び実施例2として説明した各手法はあくまで一例であり、必ずしも、上述したオブジェクトの復元及び再投影に係る処理が適用される単位を限定するものではない。具体的な一例として、オブジェクトを構成するエッジ、頂点、及びボクセルのうち少なくともいずれかを1以上含むように設定された部分を処理単位として、上述したオブジェクトの復元に係る処理や、当該復元の結果に応じた再投影に係る処理が実行されてもよい。換言すると、オブジェクトを構成する所定の単位データを1以上含むように設定された部分を処理単位として、上述したオブジェクトの復元に係る処理や、当該復元の結果に応じた再投影に係る処理が実行されてもよい。また、図10及び図11を参照して前述した例のように、オブジェクトの投影及び描画の結果に応じた表示情報を構成する所定の単位データ(例えば、ピクセル)を1以上含むように設定された部分を処理単位として、上述したオブジェクトの復元に係る処理や、当該復元の結果に応じた再投影に係る処理が実行されてもよい。
  <3.5.変形例>
 続いて、本開示の一実施形態に係る情報処理システムの変形例について説明する。
  (変形例1)
 まず、変形例1として、図14~図17を参照して、オブジェクトの投影及び描画時に死角になる部分を補完する手法の一例について説明する。図14~図17は、変形例1に係る情報処理システムの概要について説明するための説明図である。
 まず、図14を参照して、変形例1に係る情報処理システムの技術的課題についてより詳しく説明する。図14は、図7を参照して説明した例と同様に、オブジェクトの投影及び描画、当該オブジェクトの復元、並びに復元されたオブジェクトの再投影が行われた場合の状況を模式的に示している。なお、図14において、図7と同様の符号は、図7に示す例と同様の対象を示すものとする。また、図14の左図及び中央図は、図7の左図及び中央図と同様のため、詳細な説明は省略する。
 図14に示す例では、視点P151aからオブジェクトV150a及びV160aを見た場合に、オブジェクトV160aの一部に死角となる部分が生じており、当該部分については、オブジェクトの復元時に3次元的な情報を復元することが困難である。例えば、図14の右図において、オブジェクトV160のうち、参照符号V165及びV166で示した部分が、視点P151aからオブジェクトV150a及びV160aを見た場合に死角となる部分に相当し、オブジェクトの復元時に3次元的な情報を復元することが困難な部分に該当する。そのため、図14の右図に示すように復元されたオブジェクトV160bをスクリーン面P153bに再投影する際に、参照符号V165及びV166で示した部分については情報が存在せず、オブジェクトV160の一部が欠落したような表示情報が提示される場合がある。
 変形例1では、上述のような技術的課題を解決する一手法について提案する。具体的には、変形例1に係る情報処理システムでは、対象となるオブジェクトの投影及び描画を互いに異なる複数の視点について実行し、当該投影及び当該描画の結果に基づき、当該オブジェクトの3次元的な情報を復元する。例えば、図15は、対象となる複数のオブジェクトを投影及び描画を複数の視点について実行している状況を模式的に示している。具体的には、図15に示す例では、対象となるオブジェクトV150a及びV160aの投影及び描画を、互いに異なる視点P151a及びP151cそれぞれについて実行している。
 ここで、図16を参照して、変形例1に係る情報処理システムにおける、オブジェクトの投影及び描画に係る処理について概要を説明する。なお、図16において、図14と同様の符号は、図14に示す例と同様の対象を示すものとする。
 まず、図16の左図について説明する。図16の左図は、視点P151aに対応付けて規定される投影面P153aに対してオブジェクトV150a及びV160aを投影し、当該投影の結果に応じて表示情報が描画される状況を模式的に示している。具体的には、参照符号V155a及びV157aは、オブジェクトV150aのうち参照符号V151a及びV153aで示した部分の投影及び描画の結果に応じた表示情報を模式的に示している。また、参照符号V163aは、オブジェクトV160aのうち参照符号V161aで示した部分の投影及び描画の結果に応じた表示情報を模式的に示している。一方で、視点P151aからは、オブジェクトV160aのうち、参照符号V165a及びV166aで示した部分は死角となっており、投影及び描画の対象となっていないことがわかる。
 次いで、図16の右図について説明する。図16の右図は、視点P151cに対応付けて規定される投影面P153cに対してオブジェクトV150a及びV160aを投影し、当該投影の結果に応じて表示情報が描画される状況を模式的に示している。具体的には、参照符号V157cは、オブジェクトV150aのうち参照符号V153aで示した部分の投影及び描画の結果に応じた表示情報を模式的に示している。また、参照符号V163c、V167c、及びV168cは、オブジェクトV160aのうち参照符号V161a、V165a、及びV166aで示した部分の投影及び描画の結果に応じた表示情報を模式的に示している。
 図16の左図及び右図を比較するとわかるように、オブジェクトV160aのうち視点P151aからは死角となっていた参照符号V165a及びV166aで示された部分については、視点P151cからは視認することが可能である。そのため、図16の右図に示した視点P151cについてのオブジェクトの投影及び描画の結果には、参照符号V165a及びV166aで示された部分の情報が反映されている。即ち、参照符号V165a及びV166aで示された部分については、視点P151cについてのオブジェクトの投影及び描画の結果に基づき復元することが可能である。
 また、視点P151cからは、オブジェクトV150aのうち参照符号V151aで示した部分が死角となっている。即ち、視点P151cについてのオブジェクトの投影及び描画の結果には、参照符号V151aで示した部分の情報が反映されていない。一方で、視点P151aからは、参照符号V151aで示した部分を視認することが可能である。そのため、図16の左図に示した視点P151aについてのオブジェクトの投影及び描画の結果には、参照符号V151aで示した部分の情報が反映されている。即ち、照符号V151aで示した部分については、視点P151aについてのオブジェクトの投影及び描画の結果に基づき復元することが可能である。
 変形例1に係る情報処理システムでは、以上のような特性を利用し、対象となるオブジェクトのうち、一部の視点からは視認が困難な部分については、他の視点からの情報を利用して補完することで、オブジェクトの復元を行う。そして、当該情報処理システムは、復元された当該オブジェクトを、移動後の視点の位置や姿勢に基づき再投影する。
 次いで、図17を参照して、変形例1に係る情報処理システムにおける、オブジェクトの再投影に係る処理について概要を説明する。図17は、図16を参照して説明したオブジェクトの投影及び描画の結果に基づき復元されたオブジェクトが、移動後の視点P151dの位置や姿勢に基づき再投影される状況を模式的に示している。
 図17において、参照符号V150bは、図16に示すオブジェクトV150aの復元結果を模式的に示している。即ち、参照符号V151b及びV153bで示した部分は、図16において、参照符号V151a及びV153aで示した部分の復元結果を模式的に示している。また、参照符号V160bは、図16に示すオブジェクトV160aの復元結果を模式的に示している。即ち、参照符号V161b、V165b、及びV166bで示した部分は、図16において、参照符号V161a、V165a、及びV166aで示した部分の復元結果を模式的に示している。また、参照符号P153dは、視点P151dに対応付けて規定されるスクリーン面を模式的に示している。即ち、参照符号V155d及びV157dは、復元されたオブジェクトV150bのうち参照符号V151b及びV153bで示された部分のスクリーン面P153dに対する再投影の結果を模式的に示している。また、参照符号V163d、V167d、及びV168dは、復元されたオブジェクトV160bのうち参照符号V161b、V165b、及びV166bで示された部分のスクリーン面P153dに対する再投影の結果を模式的に示している。
 以上のように、変形例1に係る情報処理システムでは、互いに異なる複数の視点それぞれについて対象となるオブジェクトの投影及び描画を行うことで、遅延補償時に、一部の視点からは死角となり情報が存在しない部分を、他の視点からの情報に基づき補完する。そのため、複数の視点については、より離間するように設定される方が望ましく、視野(FoV:Field of View)についてもより広く設定される方が望ましい。例えば、図2に示すような入出力装置20に対して、複数の視点それぞれに対応する撮像部を個別に設ける場合には、例えば、当該入出力装置20を装着するユーザの瞳孔間距離よりも当該複数の視点間(即ち、複数の撮像部間)の間隔がより広くなるように構成されるとよい。また、複数の視点について対象となるオブジェクトの投影及び描画が行われればよく、必ずしも当該複数の視点それぞれについて個別のデバイス(例えば、撮像部)が設けられていなくてもよい。具体的な一例として、移動可能に構成された1つのデバイス(例えば、撮像部)により時分割で異なる複数の視点それぞれについて、オブジェクトの投影及び描画が行われてもよい。また、視点の数がより増えるほど、死角となる領域をより低減することが可能となるため、より複雑な形状を有するオブジェクトの復元や、無作為に配置された多数のオブジェクトの復元等をより正確に復元することも可能となる。
 以上、変形例1として、図14~図17を参照して、オブジェクトの投影及び描画時に死角になる部分を補完する手法の一例について説明した。
  (変形例2)
 続いて、変形例2として、図18を参照して、オブジェクトが自律的に動くような状況を想定した遅延補償の手法の一例について説明する。図18は、変形例2に係る情報処理システムの概要について説明するための説明図である。なお、図18において、図7と同様の符号は、図7に示す例と同様の対象を示すものとする。
 変形例2に係る情報処理システムでは、図7に示す例と同様に対象となるオブジェクトV150a及びV160aの投影及び描画が行われる。一方で、変形例2に係る情報処理システムでは、オブジェクトの投影及び描画の結果に応じた表示情報に対して、当該オブジェクトの動きに関する情報が関連付けられる。オブジェクトの動きに関する情報としては、例えば、オブジェクトが動く方向や当該オブジェクトの動く速度に関する情報(例えば、速度ベクトルに相当する情報)が含まれる。なお、上記表示情報に対して関連付けられる上記オブジェクトの動きに関する情報が、「第3の情報」の一例に相当する。
 具体的には、図18の左図は、オブジェクトの復元に係る処理を模式的に示している。図18の左図において、参照符号V155a及びV157aは、視点P151aについての、図7に示すオブジェクトV150aの投影及び描画の結果に応じた表示情報を模式的に示している。即ち、変形例2に係る情報処理システムでは、表示情報V155aに対して、図7に示すオブジェクトV150aの面V151aの動きに関する情報が関連付けられる。また、表示情報V157aに対して、図7に示すオブジェクトV150aの面V153aの動きに関する情報が関連付けられる。また、参照符号V163aは、視点P151aについての、図7に示すオブジェクトV160aの投影及び描画の結果に応じた表示情報を模式的に示している。即ち、変形例2に係る情報処理システムでは、表示情報V163aに対して、図7に示すオブジェクトV160aの面V161aの動きに関する情報が関連付けられる。以上のような条件の基で、図18の左図に示すように、オブジェクトの復元に係る処理が実行される。
 次いで、図18の中央図に示すように、各オブジェクトの動きを示す情報に基づき、当該オブジェクトの復元結果の補正(例えば、位置、姿勢、及び形状等の補正)が行われる。具体的な一例として、図18に示す例では、復元の対象となるオブジェクトV150aが動きを有しており、対応する表示情報V155a及びV157aに対して当該オブジェクトV150aの面V151a及び面V153aの動きに関する情報がそれぞれ関連付けられている。そのため、図18の中央図では、図18の左図に示すオブジェクトV150bの面V151b及びV153bが、表示情報V155a及びV157aに関連付けられた、オブジェクトV150aの面V151a及び面V153aの動きに関する情報に基づき補正されている。
 例えば、参照符号V150cは、オブジェクトV150bに対して、オブジェクトV150aの動きを示す情報に基づく補正が適用された結果を模式的に示している。即ち、参照符号V151cは、オブジェクトV150bの面V151bに対して、対応する表示情報V155aに関連付けられたオブジェクトV150aの面V151aの動きに関する情報に基づき補正が適用された結果を模式的に示している。また、参照符号V153cは、オブジェクトV150bの面V153bに対して、対応する表示情報V157aに関連付けられたオブジェクトV150aの面V153aの動きに関する情報に基づき補正が適用された結果を模式的に示している。
 具体的な一例として、表示情報V155aに関連付けられた上記面V151aの動きに関する情報に基づき、オブジェクトの投影及び描画が行われたタイミングから、出力部を介してユーザに情報が提示されるタイミングまでの期間における、当該面V151aの動きが推測される。そして、当該推測の結果に基づき、復元されたオブジェクトV150bの面V151bの補正方向及び補正量が導出され、当該面V151bの補正が行われる。これは、オブジェクトV150bの面V153bについても同様である。
 同様に、参照符号V160cは、オブジェクトV160bに対して、オブジェクトV160aの動きを示す情報に基づく補正が適用された結果を模式的に示している。
 以上のようにして、各オブジェクトの復元結果に対して当該オブジェクトの動きを反映する補正が行われた後に、図18の右図に示すように、移動後の視点P151eの位置及び姿勢に基づく再投影が行われる。即ち、視点P151eに対応付けて規定されるスクリーン面P153eに対して、補正後のオブジェクトV150c及びV160cが再投影される。以上のような制御により、オブジェクトが自律的に動くような状況下においても、遅延補償時に、移動後の視点と当該オブジェクトとの間の3次元的な位置や姿勢の関係をより正確に反映することが可能となる。
 以上、変形例2として、図18を参照して、オブジェクトが自律的に動くような状況を想定した遅延補償の手法の一例について説明した。
  (変形例3)
 続いて、変形例3として、図19~図22を参照して、対象となるオブジェクト(仮想オブジェクト)と、実空間内の物体(実オブジェクト)と、の間の相対的な位置及び姿勢の関係を考慮した制御の一例について説明する。図19~図22は、変形例3に係る情報処理システムの概要について説明するための説明図である。
 まず、図19を参照して、変形例3に係る技術が適用され得るシーンの一例について説明する。図19において、参照符号M210は、実空間内の物体(実オブジェクト)を模式的に示している。これに対して、参照符号V220は、出力部を介した情報提示の対象となるオブジェクト(仮想オブジェクト)を示しており、実空間内の所望の位置に定位するように情報の提示が制御される。また、参照符号P201は、視点の位置及び姿勢を模式的に示している。
 図19に示すような状況下で、視点P201の位置や姿勢が変化した場合には、物体M210及びオブジェクトV220の一方に対して他方が重畳する場合がある。このような場合には、物体M210とオブジェクトV220との間の前後関係に応じて、当該オブジェクトV220の投影及び描画の結果に応じた表示情報の補正が必要となる場合がある。具体的な一例として、物体M210によりオブジェクトV220の一部が遮蔽されるような状況下では、当該オブジェクトV220のうち当該物体M210により遮蔽された部分については、表示情報としての提示が抑制される方が望ましい。これに対して、オブジェクトV220により物体M210の一部が遮蔽されるような状況下では、当該オブジェクトV220のうち当該物体M210の一部を遮蔽する部分については、当該物体M210に重畳するように対応する表示情報が提示される方が望ましい。
 以上のような状況を鑑み、変形例3に係る情報処理システムでは、提示対象となるオブジェクトと、実空間内の物体と、の間の3次元的な位置及び姿勢の関係を考慮して、当該オブジェクトが表示情報として提示されるように制御する。そこで、以降では、図20~図22を参照して、変形例3に係る情報処理システムにおける、オブジェクトの投影及び描画、オブジェクトの復元、並びにオブジェクトの再投影に係る処理の一例についてより詳しく説明する。なお、図20~図22において、参照符号P201a、P201b、及びP201cのそれぞれは、時系列に沿って移動する視点P201の、互いに異なるタイミングにおける位置及び姿勢を模式的に示している。具体的には、視点P201aは、タイミングtにおける視点P201の位置及び姿勢を示している。また、視点P201bは、タイミングtよりも後のタイミングtにおける視点P201の位置及び姿勢を示している。また、視点P201cは、タイミングtよりも後のタイミングtにおける視点P201の位置及び姿勢を示している。
 まず、図20を参照して、オブジェクトV220を対象とした処理について説明する。図20において、参照符号V220aは、視点P201aの位置及び姿勢に応じた投影及び描画の対象となるオブジェクト(即ち、図19に示すオブジェクトV220)を模式的に示している。これに対して、参照符号V220bは、復元された当該オブジェクトを示している。
 具体的には、まず図20の最も左の図に示すように、タイミングtにおいて、オブジェクトV220aの投影及び描画に係る処理が実行される。参照符号P203aは、視点P201aに対応付けて規定されたスクリーン面を模式的に示している。また、参照符号V223aは、V223aは、オブジェクトV220aの面V221aのスクリーン面P203aに対する投影及び描画の結果に応じた表示情報を模式的に示している。なお、図20に示す例では、図10を参照して前述した例と同様に、表示情報V223aに対して、視点P201aとオブジェクトV220aとの間の相対的な位置及び姿勢の関係に応じた情報(例えば、距離情報)が関連付けられる。
 例えば、参照符号D221は、図20の最も左の図に示すオブジェクトの投影及び描画結果に応じたカラーバッファの状況を模式的に示している。また、参照符号D223は、当該オブジェクトの投影及び描画結果に応じた表示情報に関連付けられる距離情報が保持されたZバッファの状況を模式的に示している。なお、カラーバッファ及びZバッファについては図10に示す例と同様のため詳細な説明は省略する。
 次いで、図20の左から三番目の図に示すように、表示情報V223aと、当該表示情報v223aに関連付けられた距離情報と、に基づき、オブジェクトV220aの3次元的な情報の復元が行われる。例えば、参照符号V221bは、オブジェクトV220aの面V221aの復元結果を模式的に示している。
 次いで、図20の最も右の図に示すように、タイミングtにおいて、復元されたオブジェクトV220bの再投影に係る処理が実行される。参照符号P203cは、タイミングtにおける視点P201cに対応付けて規定されるスクリーン面を模式的に示している。即ち、視点P201cの位置及び姿勢に応じて、復元されたオブジェクトV220bがスクリーン面P203cに再投影される。参照符号V223bは、オブジェクトV220bの面V221bの再投影の結果に応じた表示情報を模式的に示している。
 続いて、図21を参照して、物体M210を対象とした処理について説明する。変形例3に係る情報処理システムでは、図20を参照して説明したオブジェクトを対象とした処理と並行して、図21に示すような物体M210を対象とした処理が実行される。
 具体的には、図21の最も左の図に示すように、タイミングtにおいて、物体M210の位置及び姿勢の認識が行われる。より具体的には、図21の最も左の図に示す例では、所謂デプスセンシングにより、視点P201bと物体M210との間の距離の測定結果に応じたデプスマップを作成している。例えば、参照符号D211は、当該デプスマップを示している。具体的には、デプスマップD211は、視点P201bに対応付けて規定されたスクリーン面P203bに対して、視点P201bと物体M210の各部との間の距離の測定結果に応じた情報を、対応する位置にマッピングしたデータに相当し得る。具体的には、図21に示す例では、デプスマップD211は、視点により近い部分に対応するピクセルほどより白く提示され、視点からより離間した部分に対応するピクセルほどより黒く提示されている。即ち、デプスマップD211が、視点P201bと物体M210との間の相対的な位置及び姿勢の関係に応じた「第4の情報」の一例に相当する。
 次いで、図21の左から三番目の図に示すように、デプスマップD211に基づき、物体M210の3次元的な情報(例えば、位置、姿勢、及び形状等)の復元が行われる。なお、当該復元に係る処理の原理は、前述した距離情報に基づくオブジェクトの復元に係る処理と実質的には同様である。即ち、デプスマップD211の各ピクセルが、当該ピクセルの値(即ち、距離に関する情報)に基づき3次元空間上に射影されることで、物体M210の3次元的な情報が復元される。なお、参照符号M213は、物体M210の復元結果に応じた仮想的な情報(オブジェクト)を模式的に示している。
 次いで、図21の最も右の図に示すように、タイミングtにおいて、復元されたオブジェクトM213の再投影に係る処理が実行される。具体的には、視点P201cの位置及び姿勢に応じて、復元されたオブジェクトM213がスクリーン面P203cに再投影される。参照符号M215は、オブジェクトM213の再投影の結果に応じた情報(以降では、便宜上「再投影像」とも称する)を模式的に示している。
 以上のようにして、タイミングtにおいて、視点P201cの位置及び姿勢におじた、オブジェクトV220に対応する表示情報V223bと、物体M210に対応する再投影像M215と、が取得される。そして、図22に示すように、復元されたオブジェクトV220b及びM213間の相対的な位置関係(特に、視点P201cに対する前後関係)に応じて、出力部を介した当該オブジェクトV220bに対応する表示情報V223bの提示が制御される。
 具体的には、図22の左図では、スクリーン面P203cにおいて、表示情報V220bの一部と、再投影像M215の一部と、が重畳している。この重畳部分については、オブジェクトV220bとオブジェクトM213との間の前後関係に応じて、表示情報V220bの一部と、再投影像M215の一部と、のうちの一方により他方が遮蔽されていることとなる。具体的には、図22の左図に示す例では、視点P201cに対してオブジェクトM213がオブジェクトV220bよりも近くに位置するため、表示情報V220bの一部が、再投影像M215の一部により遮蔽されることとなる。そのため、図22に示す例では、表示情報V220bのうち、再投影像M215により遮蔽された部分については、出力部を介した情報の提示が抑制される。
 例えば、参照符号V250は、視点P201cから見た場合における、ユーザに視認される物体M210の光学像と、当該物体M210に対して重畳するように提示された表示情報V223bと、の結合像を模式的に示している。
 このように、変形例3に係る情報処理システムに依れば、復元された複数のオブジェクト(例えば、仮想オブジェクトや実空間内の物体の復元結果に応じたオブジェクト)のうち、第1のオブジェクトの再投影の結果の少なくとも一部と、当該第1のオブジェクトとは異なる第2のオブジェクトの再投影の結果の少なくとも一部と、が重畳する場合に、移動後の視点により近いオブジェクトの提示がより優先される。なお、上記では、実空間内の物体と、仮想オブジェクトと、の間の関係に着目して説明したが、互いに異なる仮想オブジェクト間の関係についても同様である。即ち、所望の視点から見た場合に、複数の仮想オブジェクト間で重畳する部分が存在する場合には、当該視点により近い仮想オブジェクトの投影及び描画の結果に応じた表示情報の提示がより優先される。
 以上のように、変形例3に係る情報処理システムに依れば、図22において結合像V250として示すように、物体M210とオブジェクトV220との間の前後関係がより正しく反映されるように、当該オブジェクトV220に対応する表示情報の提示を制御することが可能となる。
 以上、変形例3として、図19~図22を参照して、対象となるオブジェクト(仮想オブジェクト)と、実空間内の物体(実オブジェクト)と、の間の相対的な位置及び姿勢の関係を考慮した制御の一例について説明した。
 <<4.ハードウェア構成>>
 続いて、本実施形態に係る情報処理システムを構成する情報処理装置10のハードウェア構成の一例について説明する。
  <4.1.独立して動作可能な装置としての構成例>
 まず、図23を参照して、前述した情報処理装置10に相当する構成を、PC、スマートフォン、サーバ等のような独立して動作可能な装置(以降では、便宜上「情報処理装置900」とも称する)として実現する場合における、当該情報処理装置900のハードウェア構成の一例について、詳細に説明する。図23は、本開示の一実施形態に係る情報処理システムを構成する情報処理装置900のハードウェア構成の一例を示す機能ブロック図である。
 本実施形態に係る情報処理システム1を構成する情報処理装置900は、主に、CPU901と、ROM902と、RAM903と、を備える。また、情報処理装置900は、更に、ホストバス907と、ブリッジ909と、外部バス911と、インタフェース913と、入力装置915と、出力装置917と、ストレージ装置919と、ドライブ921と、接続ポート923と、通信装置925とを備える。
 CPU901は、演算処理装置及び制御装置として機能し、ROM902、RAM903、ストレージ装置919又はリムーバブル記録媒体927に記録された各種プログラムに従って、情報処理装置900内の動作全般又はその一部を制御する。ROM902は、CPU901が使用するプログラムや演算パラメータ等を記憶する。RAM903は、CPU901が使用するプログラムや、プログラムの実行において適宜変化するパラメータ等を一次記憶する。これらはCPUバス等の内部バスにより構成されるホストバス907により相互に接続されている。なお、図8を参照して前述した、認識処理部101、予測処理部103、描画処理部105、補正処理部109、及び出力制御部111は、例えば、CPU901により実現され得る。
 ホストバス907は、ブリッジ909を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス911に接続されている。また、外部バス911には、インタフェース913を介して、入力装置915、出力装置917、ストレージ装置919、ドライブ921、接続ポート923及び通信装置925が接続される。
 入力装置915は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチ、レバー及びペダル等、ユーザが操作する操作手段である。また、入力装置915は、例えば、赤外線やその他の電波を利用したリモートコントロール手段(いわゆる、リモコン)であってもよいし、情報処理装置900の操作に対応した携帯電話やPDA等の外部接続機器929であってもよい。さらに、入力装置915は、例えば、上記の操作手段を用いてユーザにより入力された情報に基づいて入力信号を生成し、CPU901に出力する入力制御回路などから構成されている。情報処理装置900のユーザは、この入力装置915を操作することにより、情報処理装置900に対して各種のデータを入力したり処理動作を指示したりすることができる。
 出力装置917は、取得した情報をユーザに対して視覚的又は聴覚的に通知することが可能な装置で構成される。このような装置として、CRTディスプレイ装置、液晶ディスプレイ装置、プラズマディスプレイ装置、ELディスプレイ装置及びランプ等の表示装置や、スピーカ及びヘッドホン等の音声出力装置や、プリンタ装置等がある。出力装置917は、例えば、情報処理装置900が行った各種処理により得られた結果を出力する。具体的には、表示装置は、情報処理装置900が行った各種処理により得られた結果を、テキスト又はイメージで表示する。他方、音声出力装置は、再生された音声データや音響データ等からなるオーディオ信号をアナログ信号に変換して出力する。なお、図8を参照して前述した、出力部211は、例えば、出力装置917により実現され得る。
 ストレージ装置919は、情報処理装置900の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置919は、例えば、HDD(Hard Disk Drive)等の磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス又は光磁気記憶デバイス等により構成される。このストレージ装置919は、CPU901が実行するプログラムや各種データ等を格納する。なお、図8を参照して説明した、記憶部191やフレームバッファ107は、ストレージ装置919及びRAM903のいずれか、もしくはこれらの組み合わせにより実現され得る。
 ドライブ921は、記録媒体用リーダライタであり、情報処理装置900に内蔵、あるいは外付けされる。ドライブ921は、装着されている磁気ディスク、光ディスク、光磁気ディスク又は半導体メモリ等のリムーバブル記録媒体927に記録されている情報を読み出して、RAM903に出力する。また、ドライブ921は、装着されている磁気ディスク、光ディスク、光磁気ディスク又は半導体メモリ等のリムーバブル記録媒体927に記録を書き込むことも可能である。リムーバブル記録媒体927は、例えば、DVDメディア、HD-DVDメディア又はBlu-ray(登録商標)メディア等である。また、リムーバブル記録媒体927は、コンパクトフラッシュ(登録商標)(CF:CompactFlash)、フラッシュメモリ又はSDメモリカード(Secure Digital memory card)等であってもよい。また、リムーバブル記録媒体927は、例えば、非接触型ICチップを搭載したICカード(Integrated Circuit card)又は電子機器等であってもよい。
 接続ポート923は、情報処理装置900に直接接続するためのポートである。接続ポート923の一例として、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)ポート等がある。接続ポート923の別の例として、RS-232Cポート、光オーディオ端子、HDMI(登録商標)(High-Definition Multimedia Interface)ポート等がある。この接続ポート923に外部接続機器929を接続することで、情報処理装置900は、外部接続機器929から直接各種のデータを取得したり、外部接続機器929に各種のデータを提供したりする。
 通信装置925は、例えば、通信網(ネットワーク)931に接続するための通信デバイス等で構成された通信インタフェースである。通信装置925は、例えば、有線若しくは無線LAN(Local Area Network)、Bluetooth(登録商標)又はWUSB(Wireless USB)用の通信カード等である。また、通信装置925は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ又は各種通信用のモデム等であってもよい。この通信装置925は、例えば、インターネットや他の通信機器との間で、例えばTCP/IP等の所定のプロトコルに則して信号等を送受信することができる。また、通信装置925に接続される通信網931は、有線又は無線によって接続されたネットワーク等により構成され、例えば、インターネット、家庭内LAN、赤外線通信、ラジオ波通信又は衛星通信等であってもよい。
 以上、本開示の実施形態に係る情報処理システム1を構成する情報処理装置900の機能を実現可能なハードウェア構成の一例を示した。上記の各構成要素は、汎用的な部材を用いて構成されていてもよいし、各構成要素の機能に特化したハードウェアにより構成されていてもよい。従って、本実施形態を実施する時々の技術レベルに応じて、適宜、利用するハードウェア構成を変更することが可能である。なお、図23では図示しないが、本実施形態に係る情報処理システム1を構成する情報処理装置900に対応する各種の構成を当然備える。
 なお、上述のような本実施形態に係る情報処理システム1を構成する情報処理装置900の各機能を実現するためのコンピュータプログラムを作製し、パーソナルコンピュータ等に実装することが可能である。また、このようなコンピュータプログラムが格納された、コンピュータで読み取り可能な記録媒体も提供することができる。記録媒体は、例えば、磁気ディスク、光ディスク、光磁気ディスク、フラッシュメモリなどである。また、上記のコンピュータプログラムは、記録媒体を用いずに、例えばネットワークを介して配信してもよい。また、当該コンピュータプログラムを実行させるコンピュータの数は特に限定されない。例えば、当該コンピュータプログラムを、複数のコンピュータ(例えば、複数のサーバ等)が互いに連携して実行してもよい。なお、単数のコンピュータ、または、複数のコンピュータが連携するものを、「コンピュータシステム」とも称する。
 以上、図23を参照して、前述した情報処理装置10に相当する構成を、PC、スマートフォン、サーバ等のような独立して動作可能な情報処理装置900として実現する場合における、当該情報処理装置900のハードウェア構成の一例について、詳細に説明した。
  <4.2.チップとして実現する場合の構成例>
 続いて、図24を参照して、前述した情報処理装置10に相当する構成を、GPU等のようなチップ(以降では、便宜上「チップ950」とも称する)として実現する場合における、当該チップ950のハードウェア構成の一例について、詳細に説明する。図24は、本開示の一実施形態に係る情報処理システムを構成する情報処理装置をチップとして実現した場合のハードウェア構成の一例を示す機能ブロック図である。
 図24に示すように、チップ950は、画像処理ユニット(GCA:Graphics and Compute Array)951と、記憶デバイス(GMC:Graphics Memory Controller)953と、ディスプレイインタフェース(DIF:Display Interface)955と、バスインタフェース(BIF:Bus Interface)957と、電源制御ユニット(PMU:Power Management Unit)961と、起動制御ユニット(VGABIOS)963とを含む。また、画像処理ユニット951と記憶デバイス953との間に圧縮処理ユニット(Compression Unit)959が介在してもよい。
 画像処理ユニット951は、画像処理に係る各種処理を実行するプロセッサに相当する。具体的な一例として、画像処理ユニット951は、前述したオブジェクトの投影に係る処理、当該投影の結果に応じた表示情報の描画に係る処理、及びリプロジェクション等のような当該表示情報の補正に係る処理等のような各種演算処理を実行する。また、このとき画像処理ユニット951は、記憶デバイス953に記憶されたデータを読み出し、当該データを各種演算処理の実行に利用してもよい。なお、図8を参照して前述した、認識処理部101、予測処理部103、描画処理部105、補正処理部109、及び出力制御部111の各処理は、例えば、画像処理ユニット951による演算処理により実現され得る。
 記憶デバイス953は、各種データを一時的または恒久的に記憶するための構成である。具体的な一例として、記憶デバイス953は、画像処理ユニット951による各種演算処理の実行結果に応じたデータを記憶してもよい。記憶デバイス953は、例えば、VRAM(Video RAM)、WRAM(Window RAM)、MDRAM(Multibank DRAM)、DDR(Double-Data-Rate)、GDDR(Graphics DDR)、HBM(High Bandwidth Memory)等の技術に基づき実現され得る。
 圧縮処理ユニット959は、各種データの圧縮及び解凍を行う。具体的な一例として、圧縮処理ユニット959は、画像処理ユニット951による演算結果に応じたデータが記憶デバイス953に記憶される際に、当該データを圧縮してもよい。また、圧縮処理ユニット959は、画像処理ユニット951が記憶デバイス953に記憶されたデータを読み出す際に、当該データが圧縮されている場合には、当該データを解凍してもよい。
 ディスプレイインタフェース955は、チップ950がディスプレイ(例えば、図8に示す出力部211)との間でデータの送受信を行うためのインタフェースである。具体的な一例として、画像処理ユニット951による表示情報の描画の結果が、ディスプレイインタフェース955を介してディスプレイに出力される。また、他の一例として、画像処理ユニット951による表示情報の描画の結果が記憶デバイス953に保持されている場合には、記憶デバイス953に保持された当該描画の結果が、ディスプレイインタフェース955を介してディスプレイに出力される。
 バスインタフェース957は、チップ950が他の機器や外部の装置とデータの送受信を行うためのインタフェースである。具体的な一例として、記憶デバイス953に記憶されたデータが、バスインタフェース957を介して、他の機器や外部の装置に送信される。また、他の機器や外部の装置から送信されたデータは、バスインタフェース957を介してチップ950に入力される。なお、チップ950に入力されたデータは、例えば、記憶デバイス953に記憶される。
 電源制御ユニット961は、チップ950の各部への電力の供給を制御するための構成である。
 起動制御ユニット963は、チップ950の起動時に、当該起動に係る各種処理や情報の入出力等の管理や管制を行うための構成である。起動制御ユニット963は、所謂VGABIOS(Video Graphics Array Basic Input/Output System)に相当する。
 以上、図24を参照して、前述した情報処理装置10に相当する構成を、GPU等のようなチップ950として実現する場合における、当該チップ950のハードウェア構成の一例について、詳細に説明した。なお、本開示においては、「情報処理装置」として記載した場合には、図23に示すような1つの装置として実現する場合に加え、図24に示すように、装置に組み込まれるチップ(換言すると、部品)として実現する場合も含み得るものとする。
 <<5.むすび>>
 以上説明したように、本開示の一実施形態に係る情報処理システムにおいて、情報処理装置は、取得部と、投影処理部と、補正処理部と、出力制御部とを備える。取得部は、視点の位置及び姿勢の認識結果に応じた情報を取得する。投影処理部は、第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付ける。補正処理部は、前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影する。出力制御部は、前記再投影の結果に応じた表示情報を出力部に提示させる。
 以上のような構成により、オブジェクトの投影結果に応じた表示情報に対して視点の位置や姿勢に応じた補正(所謂Reprojectionに相当する処理)が適用される状況下においても、視点とオブジェクトとの間の3次元的な位置や姿勢の関係をより正確に反映することが可能となる。即ち、本実施形態に係る情報処理システムに依れば、視点の位置や姿勢の変化に応じてユーザに対して情報を提示する状況下で、当該視点の動きが検知されてから情報が提示されるまでの間の処理遅延に応じた表示情報の重畳位置のずれをより好適な態様で補正することが可能となる。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏しうる。
 具体的な一例として、上記では主にAR技術の適用を想定した例に着目して説明しているが、必ずしも本開示の一実施形態に係る技術の適用先を限定するものではない。即ち、視点の位置や姿勢の変化に応じて各種コンテンツ等の仮想的な情報を提示するような状況下においては、本開示の一実施形態に係る技術を適用することが可能である。具体的な一例として、視点の位置や姿勢に応じてVR技術に基づき情報を提示するような場合においても、本開示の一実施形態に係る技術を適用することで、より好適な態様での情報の提示を可能とする効果が期待できる。
 なお、以下のような構成も本開示の技術的範囲に属する。
(1)
 視点の位置及び姿勢の認識結果に応じた情報を取得する取得部と、
 第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付ける投影処理部と、
 前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影する補正処理部と、
 前記再投影の結果に応じた表示情報を出力部に提示させる出力制御部と、
 を備える、情報処理装置。
(2)
 前記第2の情報は、前記第1の視点と前記オブジェクトとの間の距離に関する情報を含む、前記(1)に記載の情報処理装置。
(3)
 前記取得部は、前記オブジェクトの動きに関する第3の情報を取得し、
 前記投影処理部は、前記第1の情報に対して、前記第3の情報を関連付け、
 前記補正処理部は、前記第3の情報に基づき、前記第1の視点と前記第2の視点との間で視点の位置及び姿勢が変化した期間における前記オブジェクトの動きを推定し、当該推定の結果に応じて、当該オブジェクトの3次元的な情報を復元する、
 前記(1)または(2)に記載の情報処理装置。
(4)
 前記第3の情報は、前記オブジェクトが動く方向に関する情報と、当該オブジェクトの速度に関する情報と、を含む、前記(3)に記載の情報処理装置。
(5)
 前記補正処理部は、
  前記第3の情報に基づく前記オブジェクトの動きに応じて、復元された当該オブジェクトの3次元的な情報を補正し、
  当該補正後の前記オブジェクトを前記第2の投影面に再投影する、
 前記(3)または(4)に記載の情報処理装置。
(6)
 前記投影処理部は、位置及び姿勢が互いに異なる複数の前記第1の視点それぞれについて、前記オブジェクトを当該第1の視点に対応する前記第1の投影面に投影し、
 前記補正処理部は、複数の前記第1の視点それぞれについての前記オブジェクトの投影結果に応じた前記第2の情報に基づき、当該オブジェクトの3次元的な情報を復元し、復元された当該オブジェクトを前記第2の投影面に再投影する、
 前記(1)~(5)のいずれか一項に記載の情報処理装置。
(7)
 前記補正処理部は、複数の前記第1の視点のうち、一部の第1の視点に対応する前記第2の情報に含まれない前記オブジェクトの部分に対応する情報を、他の第1の視点に対応する前記第2の情報に含まれる当該部分に対応する情報に基づき補完することで、当該オブジェクトの3次元的な情報を復元する、前記(6)に記載の情報処理装置。
(8)
 前記取得部は、前記オブジェクトの部分ごとに前記第1の情報を取得し、
 前記投影処理部は、前記オブジェクトを前記部分ごとに前記第1の投影面に投影し、当該部分の投影結果に対して当該部分に対応する前記第1の情報を関連付け、
 前記補正処理部は、前記オブジェクトの3次元的な情報を前記部分ごとに復元し、復元された当該オブジェクトを前記部分ごとに前記第2の投影面に再投影する、
 前記(1)~(7)のいずれか一項に記載の情報処理装置。
(9)
 前記オブジェクトの前記部分は、当該オブジェクトを構成するエッジ、頂点、及びボクセルのうち少なくともいずれかを1以上含むように設定される、前記(8)に記載の情報処理装置。
(10)
 前記補正処理部は、
  前記第2の投影面に対する、第1のオブジェクトの前記再投影の結果の少なくとも一部と、当該第1のオブジェクトとは異なる第2のオブジェクトの前記再投影の結果の少なくとも一部と、が重畳する場合に、
  前記第1のオブジェクトと前記第2のオブジェクトとのうち、前記第2の視点により近いオブジェクトに対応する前記表示情報が優先して表示されるように制御する、
 前記(1)~(9)のいずれか一項に記載の情報処理装置。
(11)
 前記取得部は、実空間内の物体の認識結果に応じた情報を取得し、
 前記投影処理部は、前記第1の視点の位置及び姿勢に基づき、当該第1の視点と当該物体との間の相対的な位置及び姿勢の関係に応じた第4の情報を取得し、
 前記補正処理部は、
  前記第4の情報に基づき前記物体の3次元的な情報を復元し、
  復元された前記物体と、復元された前記オブジェクトと、前記第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを前記第2の投影面に対して再投影する、
 前記(1)~(10)のいずれか一項に記載の情報処理装置。
(12)
 前記投影処理部は、前記第1の投影面に対する前記オブジェクトの投影結果に応じた前記第1の情報に対して、当該オブジェクトの識別情報を関連付け、
 前記補正処理部は、前記第1の情報に関連付けられた前記識別情報に基づき、前記オブジェクトを識別して、当該オブジェクトの3次元的な情報を復元する、
 前記(1)~(11)のいずれか一項に記載の情報処理装置。
(13)
 前記出力制御部は、前記出力部の表示領域に含まれる第1の部分領域及び第2の部分領域それぞれに対して、互いに異なるタイミングでの前記第2の視点の位置及び姿勢に基づき、前記第2の投影面に対して復元された前記オブジェクトを再投影する、前記(1)~(12)のいずれか一項に記載の情報処理装置。
(14)
 前記出力制御部は、
  前記第1の部分領域についての前記再投影の結果に応じた第1の表示情報の当該第1の部分領域への提示と、
  前記第2の部分領域についての前記再投影の結果に応じた第2の表示情報の当該第2の部分領域への提示と、
 を互いに異なるタイミングで制御する、
 前記(13)に記載の情報処理装置。
(15)
 前記補正処理部は、前記投影処理部による前記投影に係る処理の周期よりも短い周期で、前記再投影に係る処理を実行する、前記(1)~(14)のいずれか一項に記載の情報処理装置。
(16)
 前記投影処理部は、視点の位置及び姿勢の認識結果に応じて、実空間内の物体に対して前記オブジェクトが重畳するように、当該オブジェクトを定位させる実空間内の位置を制御する、前記(1)~(15)のいずれか一項に記載の情報処理装置。
(17)
 前記出力部は、透過型の出力部である、前記(1)~(16)のいずれか一項に記載の情報処理装置。
(18)
 ユーザの頭部に対して装着された状態において、前記出力部の表示領域が当該ユーザの眼前に位置するように支持する支持部を備える、前記(17)に記載の情報処理装置。
(19)
 コンピュータが、
 視点の位置及び姿勢の認識結果に応じた情報を取得することと、
 第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付けることと、
 前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影することと、
 前記再投影の結果に応じた表示情報を出力部に提示させることと、
 を含む、情報処理方法。
(20)
 コンピュータに、
 視点の位置及び姿勢の認識結果に応じた情報を取得することと、
 第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付けることと、
 前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影することと、
 前記再投影の結果に応じた表示情報を出力部に提示させることと、
 を実行させる、プログラム。
 1   情報処理システム
 10  情報処理装置
 20  入出力装置
 101 認識処理部
 103 予測処理部
 105 描画処理部
 107 フレームバッファ
 109 補正処理部
 111 出力制御部
 191 記憶部
 211 出力部
 251 検知部

Claims (20)

  1.  視点の位置及び姿勢の認識結果に応じた情報を取得する取得部と、
     第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付ける投影処理部と、
     前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影する補正処理部と、
     前記再投影の結果に応じた表示情報を出力部に提示させる出力制御部と、
     を備える、情報処理装置。
  2.  前記第2の情報は、前記第1の視点と前記オブジェクトとの間の距離に関する情報を含む、請求項1に記載の情報処理装置。
  3.  前記取得部は、前記オブジェクトの動きに関する第3の情報を取得し、
     前記投影処理部は、前記第1の情報に対して、前記第3の情報を関連付け、
     前記補正処理部は、前記第3の情報に基づき、前記第1の視点と前記第2の視点との間で視点の位置及び姿勢が変化した期間における前記オブジェクトの動きを推定し、当該推定の結果に応じて、当該オブジェクトの3次元的な情報を復元する、
     請求項1に記載の情報処理装置。
  4.  前記第3の情報は、前記オブジェクトが動く方向に関する情報と、当該オブジェクトの速度に関する情報と、を含む、請求項3に記載の情報処理装置。
  5.  前記補正処理部は、
      前記第3の情報に基づく前記オブジェクトの動きに応じて、復元された当該オブジェクトの3次元的な情報を補正し、
      当該補正後の前記オブジェクトを前記第2の投影面に再投影する、
     請求項3に記載の情報処理装置。
  6.  前記投影処理部は、位置及び姿勢が互いに異なる複数の前記第1の視点それぞれについて、前記オブジェクトを当該第1の視点に対応する前記第1の投影面に投影し、
     前記補正処理部は、複数の前記第1の視点それぞれについての前記オブジェクトの投影結果に応じた前記第2の情報に基づき、当該オブジェクトの3次元的な情報を復元し、復元された当該オブジェクトを前記第2の投影面に再投影する、
     請求項1に記載の情報処理装置。
  7.  前記補正処理部は、複数の前記第1の視点のうち、一部の第1の視点に対応する前記第2の情報に含まれない前記オブジェクトの部分に対応する情報を、他の第1の視点に対応する前記第2の情報に含まれる当該部分に対応する情報に基づき補完することで、当該オブジェクトの3次元的な情報を復元する、請求項6に記載の情報処理装置。
  8.  前記取得部は、前記オブジェクトの部分ごとに前記第1の情報を取得し、
     前記投影処理部は、前記オブジェクトを前記部分ごとに前記第1の投影面に投影し、当該部分の投影結果に対して当該部分に対応する前記第1の情報を関連付け、
     前記補正処理部は、前記オブジェクトの3次元的な情報を前記部分ごとに復元し、復元された当該オブジェクトを前記部分ごとに前記第2の投影面に再投影する、
     請求項1に記載の情報処理装置。
  9.  前記オブジェクトの前記部分は、当該オブジェクトを構成するエッジ、頂点、及びボクセルのうち少なくともいずれかを1以上含むように設定される、請求項8に記載の情報処理装置。
  10.  前記補正処理部は、
      前記第2の投影面に対する、第1のオブジェクトの前記再投影の結果の少なくとも一部と、当該第1のオブジェクトとは異なる第2のオブジェクトの前記再投影の結果の少なくとも一部と、が重畳する場合に、
      前記第1のオブジェクトと前記第2のオブジェクトとのうち、前記第2の視点により近いオブジェクトに対応する前記表示情報が優先して表示されるように制御する、
     請求項1に記載の情報処理装置。
  11.  前記取得部は、実空間内の物体の認識結果に応じた情報を取得し、
     前記投影処理部は、前記第1の視点の位置及び姿勢に基づき、当該第1の視点と当該物体との間の相対的な位置及び姿勢の関係に応じた第4の情報を取得し、
     前記補正処理部は、
      前記第4の情報に基づき前記物体の3次元的な情報を復元し、
      復元された前記物体と、復元された前記オブジェクトと、前記第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを前記第2の投影面に対して再投影する、
     請求項1に記載の情報処理装置。
  12.  前記投影処理部は、前記第1の投影面に対する前記オブジェクトの投影結果に応じた前記第1の情報に対して、当該オブジェクトの識別情報を関連付け、
     前記補正処理部は、前記第1の情報に関連付けられた前記識別情報に基づき、前記オブジェクトを識別して、当該オブジェクトの3次元的な情報を復元する、
     請求項1に記載の情報処理装置。
  13.  前記出力制御部は、前記出力部の表示領域に含まれる第1の部分領域及び第2の部分領域それぞれに対して、互いに異なるタイミングでの前記第2の視点の位置及び姿勢に基づき、前記第2の投影面に対して復元された前記オブジェクトを再投影する、請求項1に記載の情報処理装置。
  14.  前記出力制御部は、
      前記第1の部分領域についての前記再投影の結果に応じた第1の表示情報の当該第1の部分領域への提示と、
      前記第2の部分領域についての前記再投影の結果に応じた第2の表示情報の当該第2の部分領域への提示と、
     を互いに異なるタイミングで制御する、
     請求項13に記載の情報処理装置。
  15.  前記補正処理部は、前記投影処理部による前記投影に係る処理の周期よりも短い周期で、前記再投影に係る処理を実行する、請求項1に記載の情報処理装置。
  16.  前記投影処理部は、視点の位置及び姿勢の認識結果に応じて、実空間内の物体に対して前記オブジェクトが重畳するように、当該オブジェクトを定位させる実空間内の位置を制御する、請求項1に記載の情報処理装置。
  17.  前記出力部は、透過型の出力部である、請求項1に記載の情報処理装置。
  18.  ユーザの頭部に対して装着された状態において、前記出力部の表示領域が当該ユーザの眼前に位置するように支持する支持部を備える、請求項17に記載の情報処理装置。
  19.  コンピュータが、
     視点の位置及び姿勢の認識結果に応じた情報を取得することと、
     第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付けることと、
     前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影することと、
     前記再投影の結果に応じた表示情報を出力部に提示させることと、
     を含む、情報処理方法。
  20.  コンピュータに、
     視点の位置及び姿勢の認識結果に応じた情報を取得することと、
     第1の視点の位置及び姿勢に基づき、対象となるオブジェクトを当該第1の視点に対応付けて規定される第1の投影面に投影し、当該投影の結果に応じた第1の情報に対して、当該第1の視点と当該オブジェクトとの間の相対的な位置及び姿勢の関係に応じた第2の情報を関連付けることと、
     前記第1の情報及び前記第2の情報に基づき前記オブジェクトの3次元的な情報を復元し、復元された前記オブジェクトと、第2の視点と、の間の相対的な位置及び姿勢の関係に応じて、当該オブジェクトを当該第2の視点に対応付けて規定される第2の投影面に対して再投影することと、
     前記再投影の結果に応じた表示情報を出力部に提示させることと、
     を実行させる、プログラム。
PCT/JP2019/038444 2018-11-02 2019-09-30 情報処理装置、情報処理方法、及びプログラム WO2020090316A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US17/288,314 US12010288B2 (en) 2018-11-02 2019-09-30 Information processing device, information processing method, and program

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2018-207085 2018-11-02
JP2018207085 2018-11-02

Publications (1)

Publication Number Publication Date
WO2020090316A1 true WO2020090316A1 (ja) 2020-05-07

Family

ID=70463961

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2019/038444 WO2020090316A1 (ja) 2018-11-02 2019-09-30 情報処理装置、情報処理方法、及びプログラム

Country Status (2)

Country Link
US (1) US12010288B2 (ja)
WO (1) WO2020090316A1 (ja)

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022163772A1 (ja) * 2021-01-28 2022-08-04 ソニーセミコンダクタソリューションズ株式会社 情報処理方法、情報処理装置および不揮発性記憶媒体
WO2022163771A1 (ja) * 2021-01-28 2022-08-04 ソニーセミコンダクタソリューションズ株式会社 情報処理方法、情報処理装置および不揮発性記憶媒体
WO2022244131A1 (ja) * 2021-05-19 2022-11-24 株式会社ソニー・インタラクティブエンタテインメント 画像データ生成装置、表示装置、画像表示システム、画像データ生成方法、画像表示方法、および、画像データのデータ構造

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112929646A (zh) * 2019-12-05 2021-06-08 北京芯海视界三维科技有限公司 实现3d图像显示的方法、3d显示设备

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015095045A (ja) * 2013-11-11 2015-05-18 株式会社ソニー・コンピュータエンタテインメント 画像生成装置および画像生成方法
US20170372457A1 (en) * 2016-06-28 2017-12-28 Roger Sebastian Kevin Sylvan Sharp text rendering with reprojection
JP2018525693A (ja) * 2015-06-12 2018-09-06 グーグル エルエルシー ヘッドマウントディスプレイの電子ディスプレイ安定化

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6747504B2 (ja) 2016-04-18 2020-08-26 ソニー株式会社 情報処理装置、情報処理方法、及びプログラム
US9805514B1 (en) * 2016-04-21 2017-10-31 Microsoft Technology Licensing, Llc Dynamic haptic retargeting

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2015095045A (ja) * 2013-11-11 2015-05-18 株式会社ソニー・コンピュータエンタテインメント 画像生成装置および画像生成方法
JP2018525693A (ja) * 2015-06-12 2018-09-06 グーグル エルエルシー ヘッドマウントディスプレイの電子ディスプレイ安定化
US20170372457A1 (en) * 2016-06-28 2017-12-28 Roger Sebastian Kevin Sylvan Sharp text rendering with reprojection

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022163772A1 (ja) * 2021-01-28 2022-08-04 ソニーセミコンダクタソリューションズ株式会社 情報処理方法、情報処理装置および不揮発性記憶媒体
WO2022163771A1 (ja) * 2021-01-28 2022-08-04 ソニーセミコンダクタソリューションズ株式会社 情報処理方法、情報処理装置および不揮発性記憶媒体
WO2022244131A1 (ja) * 2021-05-19 2022-11-24 株式会社ソニー・インタラクティブエンタテインメント 画像データ生成装置、表示装置、画像表示システム、画像データ生成方法、画像表示方法、および、画像データのデータ構造

Also Published As

Publication number Publication date
US12010288B2 (en) 2024-06-11
US20210377515A1 (en) 2021-12-02

Similar Documents

Publication Publication Date Title
US10764585B2 (en) Reprojecting holographic video to enhance streaming bandwidth/quality
US10269177B2 (en) Headset removal in virtual, augmented, and mixed reality using an eye gaze database
JP6747504B2 (ja) 情報処理装置、情報処理方法、及びプログラム
US10078367B2 (en) Stabilization plane determination based on gaze location
CN108292489B (zh) 信息处理装置和图像生成方法
US9904056B2 (en) Display
WO2020090316A1 (ja) 情報処理装置、情報処理方法、及びプログラム
WO2020003860A1 (ja) 情報処理装置、情報処理方法、及びプログラム
WO2014105646A1 (en) Low-latency fusing of color image data in a color sequential display system
US11720996B2 (en) Camera-based transparent display
CN112655202B (zh) 用于头戴式显示器的鱼眼镜头的减小带宽立体失真校正
CN112805755B (zh) 信息处理装置、信息处理方法和记录介质
EP4165871A1 (en) System for correcting rolling shutter artifacts
WO2021040010A1 (ja) 情報処理装置、制御方法
US11516452B2 (en) Systems and methods for temporal corrections for parallax reprojection
US11615767B2 (en) Information processing apparatus, information processing method, and recording medium

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

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 19878655

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP