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

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

Info

Publication number
WO2019087491A1
WO2019087491A1 PCT/JP2018/028442 JP2018028442W WO2019087491A1 WO 2019087491 A1 WO2019087491 A1 WO 2019087491A1 JP 2018028442 W JP2018028442 W JP 2018028442W WO 2019087491 A1 WO2019087491 A1 WO 2019087491A1
Authority
WO
WIPO (PCT)
Prior art keywords
virtual object
display
distance
area
real
Prior art date
Application number
PCT/JP2018/028442
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 DE112018005075.0T priority Critical patent/DE112018005075T5/de
Priority to US16/757,982 priority patent/US11176747B2/en
Publication of WO2019087491A1 publication Critical patent/WO2019087491A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • G06F3/013Eye tracking input arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/0304Detection arrangements using opto-electronic means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2215/00Indexing scheme for image rendering
    • G06T2215/16Using real world measurements to influence rendering
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/02Improving the quality of display appearance
    • G09G2320/0261Improving the quality of display appearance in the context of movement of objects on the screen or movement of the observer relative to the screen
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2354/00Aspects of interface with display user

Definitions

  • the present disclosure relates to an information processing device, an information processing method, and a program.
  • a suitable virtual object display control method may change according to the distance between the user and the virtual object.
  • the detection accuracy of the distance between the user and the real object shielding the virtual object changes depending on the distance between the user and the virtual object.
  • the appropriate display control method of the virtual object it may be assumed that the appropriate display control method of the virtual object also changes. Therefore, it is desirable to control display of a virtual object by an appropriate display control method according to the distance between the user and the virtual object.
  • a space information acquisition unit for acquiring information of a real object arranged in a real space, and the real object and the first processing when the distance between the user and the virtual object is a first distance. Controlling that the first display object based on the virtual object is displayed by the display device as the virtual object, and the distance between the user and the virtual object is a second distance different from the first distance.
  • An information processing apparatus comprising: a display control unit configured to control a second display object based on an object and a second process different from the first process to be displayed by the display device as the virtual object Be done.
  • the processor acquires information of a real object arranged in the real space, and when the distance between the user and the virtual object is a first distance, the real object and the first processing are performed. Controlling that the first display object based on the virtual object is displayed by the display device as the virtual object, and the distance between the user and the virtual object is a second distance different from the first distance. Controlling the second display object based on the object and the second processing different from the first processing to be displayed by the display device as the virtual object. .
  • the computer when the distance between the user and the virtual object is a first distance, the computer may be a space information acquisition unit that acquires information of a real object arranged in the real space. Controlling the first display object to be displayed by the display device as the virtual object based on the processing of and the second distance between the user and the virtual object is different from the first distance.
  • An information processing apparatus comprising: a display control unit configured to control a second display object based on the real object and a second process different from the first process to be displayed by the display device as the virtual object
  • a program is provided to function as
  • a technique capable of controlling display of a virtual object by an appropriate display control method according to the distance between the user and the virtual object is provided.
  • the above-mentioned effects are not necessarily limited, and, along with or in place of the above-mentioned effects, any of the effects shown in the present specification, or other effects that can be grasped from the present specification May be played.
  • a plurality of components having substantially the same or similar functional configurations may be distinguished by attaching different numerals after the same reference numerals. However, when it is not necessary to distinguish each of a plurality of components having substantially the same or similar functional configuration, only the same reference numeral is given. Also, similar components in different embodiments may be distinguished by attaching different alphabets after the same reference numerals. However, when it is not necessary to distinguish each of similar components in particular, only the same reference numeral is attached.
  • FIG. 1 is a diagram for describing an overview of an embodiment of the present disclosure.
  • the user U is present in the real space R. Further, a position separated by a distance Th2 from the position P0 at which the user U exists is shown as a “position P2”, and a position separated by a distance Th1 from the position P0 at which the user U exists is shown as a “position P1”.
  • the distance Th1 and the threshold Th2 are used as the threshold, the distance Th1 is also referred to as a “threshold Th1”, and the distance Th2 is also referred to as a “threshold Th2”.
  • the threshold Th1 and the threshold Th2 may be determined in advance. However, it is not limited to what value each of the threshold Th1 and the threshold Th2 is predetermined.
  • the threshold value Th2 may be a maximum distance to a position where it is assumed that the user U can reach out and touch the hand in a stationary state with reference to the position P0 where the user U exists.
  • the threshold Th1 may be a minimum distance to a position where the visibility by the user U is expected to be reduced with reference to the position P0 of the user U.
  • a distance below the threshold value Th2 with reference to the position P0 where the user U is present is also referred to as “short distance (P0 ⁇ P ⁇ P2)”.
  • a distance that is greater than or equal to the threshold Th2 and less than the threshold Th1 with respect to the position P0 where the user U is present is also referred to as “middle distance (P2 ⁇ P ⁇ P1).
  • a distance equal to or larger than the threshold Th1 on the basis of the position P0 where the user U exists is also referred to as "far distance (P> P1)".
  • FIG. 1 an example in which a virtual object 30-1 and a real object 40-1 are arranged at a long distance (P> P1) is shown. Further, an example is shown in which the virtual object 30-2 and the real object 40-2 are arranged at an intermediate distance (P2 ⁇ P ⁇ P1). Further, an example is shown in which the virtual object 30-3 and the real object 40-3 are arranged at a short distance (P2 ⁇ P ⁇ P1).
  • FIG. 1 shows a box-shaped object and a hand of the user U as an example of the real object 40, but the type of the real object 40 (for example, the shape, size, color, brightness of the real object 40) Movement etc.) is not particularly limited.
  • the information processing apparatus 10 detects the distance between the user U and the real object 40 as an example of the information of the real object.
  • the information processing apparatus 10 includes a stereo camera, generates a depth map based on the left image and the right image captured by the stereo camera, and generates a depth map based on the depth map.
  • the case of detecting the distance to the real object 40 is mainly assumed.
  • the distance between the user U and the real object 40 may be detected in any way.
  • the information processing apparatus 10 includes a distance sensor
  • the distance sensor may be a TOF (Time of Flight) sensor or the like.
  • the information processing apparatus 10 is configured by a goggle-type HMD (Head Mounted Display) mounted on the head of the user U is illustrated.
  • the form of the HMD is not limited to the goggle type, and may be a glass type or the like.
  • the information processing apparatus 10 is not limited to the HMD.
  • the information processing apparatus 10 may be a smartphone, a tablet terminal, a mobile phone, or another mobile device.
  • the information processing apparatus 10 has a transmissive display. At this time, the user U can visually recognize the virtual object 30 displayed by the display and can visually recognize the real object 40 on the far side of the display. However, the information processing apparatus 10 may have a non-transmissive display. At this time, the user U can visually recognize the real object by the image captured by the virtual object 30 displayed by the display and the camera of the information processing apparatus 10 and displayed by the display.
  • the detection accuracy of the distance between the user U and the real object 40 shielding the virtual object 30 changes depending on the distance between the user U and the virtual object 30.
  • the distance between the user U and the real object 40-1 shielding the virtual object 30-1 becomes large. It is assumed that the detection accuracy of the distance between U and the real object 40-1 is reduced.
  • the distance between the user U and the real object 40-3 that shields the virtual object 30-3 is reduced because of this, the parallax between the left and right images captured by the stereo camera increases. Therefore, even if it is an area that can be viewed by the user U, an area in which the distance is not detected is generated in the depth map generated from the left image and the right image, and the detection accuracy of the distance between the user U and the real object 40-3 Is expected to decrease.
  • shielding processing is taken as an example of the display control method.
  • the shielding process is performed by removing an area of the virtual object 30 located behind the real object 40 with reference to the position of the user U (hereinafter, also referred to as a “shielding area”) from the virtual object 30 (virtual object 30) may correspond to processing of generating a virtual object after area removal as a display object. Thereby, display control of the virtual object 30 more natural to the user U can be performed.
  • the detection accuracy of the distance between the user U and the real object 40-1 shielding the virtual object 30-1 is lowered. It is assumed that Furthermore, when the virtual object 30-1 is placed at a long distance (P> P1), it is assumed that the visibility of the virtual object 30-1 by the user U is lowered.
  • the detection accuracy of the distance between the user U and the real object 40-3 shielding the virtual object 30-3 Is expected to decrease.
  • the virtual object 30-3 is placed at a short distance (P0 ⁇ P ⁇ P2), the user U causes the virtual object 30-3 to contact the real object 40-3 or the real object 40-3.
  • the user U may wish to grasp the sense of distance between the virtual object 30-3 and the real object 40-3.
  • the virtual object after area removal is removed by removing an area wider than the shielded area from the virtual object 30-3. May be generated as a display object.
  • the user U can easily grasp the distance between the virtual object 30-3 and the real object 40-3 by the size of the area removed from the virtual object 30-3.
  • FIG. 2 is a diagram showing an example of a functional configuration of the information processing apparatus 10 according to an embodiment of the present disclosure.
  • the information processing apparatus 10 includes a visual field analysis imaging unit 111, a visual axis detection imaging unit 112, a control unit 120, a storage unit 130, and a display unit 150.
  • the visual field analysis imaging unit 111 has a function of obtaining an image (visual field analysis image) by imaging the visual field of the user U.
  • the visual field analysis imaging unit 111 includes a stereo camera, and obtains a left image and a right image captured by the stereo camera.
  • the left image and the right image captured by the stereo camera are used for distance detection by the distance measuring unit 124 (FIG. 3).
  • various distance sensors may be used instead of the stereo camera and the distance measuring unit 124.
  • the visual field analysis imaging unit 111 may be integrated with the information processing apparatus 10 or may exist separately from the information processing apparatus 10.
  • the visual axis detection imaging unit 112 has a function of obtaining an image (visual axis detection image) by imaging the eyes of the user U.
  • the line-of-sight detection imaging unit 112 includes a camera (including an image sensor), and obtains a line-of-sight detection image captured by the camera.
  • the number of cameras included in the visual axis detection imaging unit 112 is not particularly limited as long as it is one or more.
  • the position at which the visual axis detection imaging unit 112 is provided is not particularly limited.
  • the line-of-sight detection imaging unit 112 may be integrated with the information processing device 10, or may exist separately from the information processing device 10.
  • the storage unit 130 is configured to include a memory, and is a recording medium that stores a program executed by the control unit 120 or stores data necessary for the execution of the program. In addition, the storage unit 130 temporarily stores data for the calculation by the control unit 120.
  • the storage unit 130 is configured of a magnetic storage unit device, a semiconductor storage device, an optical storage device, a magneto-optical storage device, or the like.
  • the display unit 150 has a function of displaying various screens.
  • the type of the display unit 150 is not limited.
  • the display unit 150 may be a display (display device) capable of performing display visible to the user. More specifically, the display unit 150 may be a liquid crystal display or an organic EL (Electro-Luminescence) display.
  • the control unit 120 executes control of each unit of the information processing apparatus 10.
  • FIG. 3 is a diagram showing an example of a detailed configuration of the control unit 120.
  • the control unit 120 includes a real space information acquisition unit 121, a real object detection unit 122, an application execution unit 123, a distance measurement unit 124, a sight line detection unit 125, and a display control unit 126. The details of each of these functional blocks will be described later.
  • the control unit 120 may be configured of, for example, one or more CPUs (central processing units). When the control unit 120 is configured by a processing unit such as a CPU, the processing unit may be configured by an electronic circuit.
  • the real space information acquisition unit 121 acquires information of the real object 40 arranged in the real space R. More specifically, the real space information acquisition unit 121 acquires information of the real object 40 by acquiring the left image and the right image in which the real object 40 appears from the imaging unit for visual field analysis 111.
  • the display control unit 126 causes the display unit 150 to display the first display object based on the real object 40 and the first processing as the virtual object. To be controlled. Furthermore, in the case where the distance between the user U and the virtual object 30 is a second distance different from the first distance, the display control unit 126 performs a second process based on the real object 40 and the second process different from the first process. Control is performed so that the second display object is displayed by the display unit 150 as a virtual object.
  • first distance is an intermediate distance (P2 ⁇ P ⁇ P1) and the second distance is a long distance (P> P1).
  • first distance is an intermediate distance (P2 ⁇ P ⁇ P1) and the second distance is a short distance (P0 ⁇ P ⁇ P2).
  • FIG. 4 is a diagram for describing a first example of display control in the case where the virtual object 30 is arranged at a long distance (P> P1).
  • FIG. 5 is a diagram for describing a second example of display control in the case where the virtual object 30 is arranged at a long distance (P> P1).
  • FIG. 6 is a diagram for explaining an example of display control in the case where the virtual object 30 is disposed at an intermediate distance (P2 ⁇ P ⁇ P1).
  • the virtual object 30 when the virtual object 30 is arranged at a long distance (P> P1), the real object 40-1 whose position in the real space is detected exists in the depth map 70-1, and the virtual space The virtual object 30-1 whose position has been determined is shown superimposed. Further, referring to FIG. 6, when the virtual object 30 is disposed at an intermediate distance (P2 ⁇ P ⁇ P1), the real object 40-2 whose position in the real space is detected is present in the depth map 70-2. The virtual object 30-2 whose position in the virtual space has been determined is shown superimposed.
  • the position of the virtual object 30-1 in the virtual space is determined by the application execution unit 123.
  • the application execution unit 123 also determines the field of view of the virtual object 30-1 based on the position of the virtual object 30-1 in the virtual space and the position and orientation (position of the virtual camera) in the real space of the field of view analysis imaging unit 111. And the distance between the visual field analysis imaging unit 111 and the virtual object 30-1.
  • the position and orientation of the field of view analysis imaging unit 111 in the real space are determined by the application execution unit 123 based on the recognition result of the real space according to a plurality of images continuously captured temporally by the field of view analysis imaging unit 111. Can be calculated.
  • the type of application is not particularly limited. As one example, the application may be a game application.
  • the distance measuring unit 124 generates a depth map based on the left image and the right image captured by the visual field analysis imaging unit 111, and outputs the generated depth map to the display control unit 126.
  • the real object detection unit 122 determines whether a predetermined real object (for example, a hand of the user U or the like) exists in the field of view based on the left image and the right image captured by the field of view analysis imaging unit 111. When a predetermined real object is present in the field of view, the real object detection unit 122 detects the position of the predetermined real object in the field of view and outputs the position to the display control unit 126.
  • a predetermined real object for example, a hand of the user U or the like
  • the display control unit 126 is in front of the virtual object 30-1 based on the position of the virtual object 30-1 in the field of view, the distance between the visual field analysis imaging unit 111 and the virtual object 30-1, and the depth map. It is possible to recognize real objects.
  • the display control unit 126 controls the display unit 150 to display the first display object based on the real object 40-1 and the first process as a virtual object.
  • the virtual object 30-1 is placed at a long distance (P> P1).
  • the display control unit 126 controls the display unit 150 to display a second display object based on the real object 40-2 and the second process different from the first process as a virtual object.
  • the first process and the second process are not particularly limited. However, as described above, when the virtual object 30-1 is disposed at a long distance (P> P1), display control of the virtual object 30-1 may be performed based on more simplified processing. Therefore, when the virtual object 30-2 is arranged at an intermediate distance (P2 ⁇ P ⁇ P1), the first process when the first display object is generated with the first accuracy is a long distance (P2 ⁇ P ⁇ P1) (P2 ⁇ P ⁇ P1), the first process when the first display object is generated with the first accuracy is a long distance ( The second process in the case where the virtual object 30-1 is arranged at P> P1) may be a process of generating a second display object with a second accuracy lower than the first accuracy.
  • the generation accuracy of the display object may be reduced in any way.
  • the generation accuracy of the display object may be reduced by simplifying the shape of at least one of the virtual object and the real object.
  • the shape of a real object is simplified is mainly described.
  • the shape of the virtual object may be simplified by the same method as the simplification of the shape of the real object.
  • the shapes of both virtual objects and real objects may be simplified.
  • the virtual object 30-2 is positioned behind the real object 40-2 in the virtual object 30-2 as the first process in the case where the virtual object 30-2 is disposed at an intermediate distance (P2 ⁇ P ⁇ P1).
  • a process of calculating the first area and removing the first area from the virtual object 30-2 to generate a first display object (virtual object 30-22) is shown (field of view 80-22).
  • the second processing in the case where the virtual object 30-1 is arranged at a long distance (P> P1) is the second area of the virtual object 30-1 located behind the real object 40-1.
  • the process of calculating and removing the second area from the virtual object 30-1 to generate a second display object (virtual object), the shape of at least a part of the area where the real object 40-1 is recognized is simplified It may be processing performed after conversion.
  • the shape of at least a part of the area where the real object 40-1 is recognized may be simplified in any way.
  • the shape of the area where the real object 40-1 is recognized is a rectangular shape area 41 Approximate to the second object (depth map 70-12), calculate the second region of the virtual object 30-1 located behind the rectangular shaped region 41, and remove the second region from the virtual object 30-1
  • the process of generating the second display object (virtual object 30-12) is shown (field of view 80-12).
  • the entire area in which the real object 40-1 is recognized may be simplified by approximating it to a rectangular shape.
  • the simplification of the shape is not limited to such an example.
  • the shape of the approximation destination is not limited to the rectangular shape.
  • a part of the area in which the real object 40-1 is recognized may be approximated. That is, the shape may be simplified by approximating the shape of at least a part of the region in which the real object 40-1 is recognized to a predetermined shape.
  • the shape may be simplified by reducing the number of polygons in at least a part of the area in which the real object 40-1 is recognized.
  • how much the number of polygons is to be reduced may be determined in advance.
  • how much the number of polygons should be reduced may be determined according to the number of polygons in the area where the real object 40-1 is recognized. For example, the difference in the number of polygons may be determined in advance, and the number of polygons may be reduced by the difference from the number of polygons in the area where the real object 40-1 is recognized.
  • the shape may be simplified by projecting the shape of at least a part of the region in which the real object 40-1 is recognized on a predetermined plane.
  • the predetermined plane is not particularly limited. As an example, it is a plane (for example, a plane parallel to the display surface of the display unit 150, a vertical plane, etc.) passing through the position closest to the visual field analysis imaging unit 111 in the area where the real object 40-1 is recognized. It may be a plane (for example, a plane parallel to the display surface of the display unit 150, a vertical plane, etc.) passing through the center of the region where the real object 40-1 is recognized.
  • the generation accuracy of the display object may be lowered by reducing the resolution of the depth map.
  • FIG. 6 as a first process in the case where the virtual object 30-2 is disposed at an intermediate distance (P2 ⁇ P ⁇ P1), in the depth map (first depth map) generated by the distance measuring unit 124. A first area located behind the real object 40-2 in the virtual object 30-2 is calculated based on that, and the first area is removed from the virtual object 30-2 to obtain a first display object (virtual object The process of generating 30-22) is shown (field of view 80-22).
  • the depth map (first depth map) generated by the distance measuring unit 124 is used.
  • the virtual object 30-1 on the basis of the low-resolution depth map 70-13 (second depth map) to calculate the second area located behind the real object 40-1, and A process of removing the virtual object 30-1 and generating a second display object (virtual object 30-12) is shown.
  • how much the resolution is to be reduced may be determined in advance.
  • the generation accuracy of the display object may be reduced by reducing the frame rate generated by the display object.
  • the first process at the first frame rate (in the first cycle) is one of the virtual objects 30-2 In the process of calculating the first area located behind the real object 40-2, and removing the first area from the virtual object 30-2, to generate a first display object (virtual object 30-22). May be there.
  • the second process in the case where the virtual object 30-1 is arranged at a long distance (P> P1) is a second frame rate lower than the first frame rate (a cycle longer than the first cycle) In the second cycle), calculate the second area of the virtual object 30-1 located behind the real object 40-1, and remove the second area from the virtual object to obtain a second display object. It may be a process of generating a (virtual object).
  • FIG. 7 is a diagram for describing a first example of display control in the case where the virtual object 30 is arranged at a short distance (P0 ⁇ P ⁇ P2).
  • FIG. 8 is a diagram for describing a second example of display control in the case where the virtual object 30 is arranged at a short distance (P0 ⁇ P ⁇ P2).
  • FIG. 9 is a diagram for describing a third example of display control in the case where the virtual object 30 is arranged at a short distance (P0 ⁇ P ⁇ P2).
  • the display control unit 126 controls the display unit 150 to display the first display object based on the real object 40-1 and the first process as a virtual object.
  • the virtual object 30-3 is disposed at a short distance (P0 ⁇ P ⁇ P2).
  • the display control unit 126 controls the display unit 150 to display a second display object based on the real object 40-2 and the second process different from the second process as a virtual object.
  • the first process and the second process are not particularly limited. However, as described above, in the case where the virtual object 30-3 is disposed at a short distance (P0 ⁇ P ⁇ P2), an area wider than the shielded area is removed from the virtual object 30-3, and thus the area The virtual object after removal may be generated as a display object.
  • An area wider than the shielding area from the virtual object 30-3 by removing the second area located behind the area where the area where the real object 40-3 is recognized is expanded from the virtual object 30-3 Is removed.
  • the enlargement ratio at this time may be constant, or may be larger as the distance from the position of the user U (ie, the position of the visual field analysis imaging unit 111) to the position of the real object 40-3 is farther.
  • the area after the change in which the position of the area where the real object 40-3 is recognized is changed is removed from the virtual object 30-3, whereby the area wider than the shielded area is removed from the virtual object 30-3.
  • the direction in which the position of the area where the real object 40-3 is recognized is changed is not limited. However, when a hand is detected as a real object 40-3, it is assumed that the hand extends upward from below the field of view, so the direction in which the position of the region where the real object 40-3 is recognized is changed is If it is the direction, an area wider than the shielding area is removed from the virtual object 30-3.
  • the process of the virtual object 30-3 is performed based on the depth map 70-31.
  • a second area located behind the area where the position of the area where the real object 40-3 is recognized is changed upward is calculated, and the second area is removed from the virtual object 30-3.
  • the process of generating the second display object (virtual object 30-31) is shown (field of view 80-31).
  • the display control unit 126 sets a predetermined non-overlapping area which does not overlap the area in which the real object 40-3 is recognized among the changed areas in which the position of the area in which the real object 40-3 is recognized is changed. Control is performed so that the image is displayed by the display unit 150.
  • the cutout image 42-31 of the area in the depth map corresponding to the non-overlapping area is displayed.
  • the cutout image 42-31 can be shown to the user U as if it were a shadow of the real object 40-3.
  • the degree of position change of the area where the real object 40-3 is recognized may be constant or the position of the user U (ie, the visual field analysis imaging unit 111 The closer the position from the position) to the position of the real object 40-3, the larger it may be. Referring to FIGS. 7 and 8, the distance to the user U is closer to the real object 40-3 present in the depth map 70-32 than to the real object 40-3 present in the depth map 70-31. Therefore, the width of the cutout image 42-32 is wider than the width of the cutout image 42-31 (field of view 80-31, field of view 80-32).
  • the distance to the user U is closer to the real object 40-3 existing in the depth map 70-33 than the real object 40-3 existing in the depth map 70-32. Therefore, the width of the cutout image 42-33 is wider than the width of the cutout image 42-32 (field of view 80-32, field of view 80-33).
  • FIG. 10 is a diagram for describing a fourth example of display control in the case where the virtual object 30 is arranged at a short distance (P0 ⁇ P ⁇ P2).
  • the second process in the case where the virtual object 30 is arranged at the short distance (P0 ⁇ P ⁇ P2) is based on the position of the area where the real object 40-3 is recognized.
  • a process of determining the position of the model 43 displayed on the display unit 150 may be included as the fourth display object.
  • the second process may include a process of setting an area of the virtual object 30-3 which does not overlap with the area where the real object 40-3 is recognized as a second display object (virtual object 30-31). .
  • the model 43 corresponds to the real object 40-3.
  • the real object detection unit 122 detects that the real object 40-3 is a hand. Therefore, as shown in FIG. 10, the display control unit 126 determines the position of the model 43 (hand model) corresponding to the hand based on the position of the area where the real object 40-3 is recognized. For example, the display control unit 126 controls the display unit 150 so that the model 43 is displayed at the position of the area where the real object 40-3 is recognized.
  • FIG. 11 is a diagram for describing a fifth example of display control in the case where the virtual object 30 is arranged at a short distance (P0 ⁇ P ⁇ P2).
  • the second processing for the entire virtual object 30-3 is a second display object (virtual object 30). It may be processing of determining the position of the pointer 44 pointing to the position of the area where the real object 40-3 is recognized as the third display object.
  • the user U can grasp the position of the area where the real object 40-3 is recognized by referring to the pointer 44. Furthermore, since the entire virtual object 30-3 is displayed, the user U may easily touch or manipulate the virtual object 30-3.
  • FIG. 12 is a flowchart showing an operation example of the information processing apparatus 10 according to the present embodiment. Note that the operation example illustrated in FIG. 12 merely illustrates an example of the operation of the information processing apparatus 10 according to the present embodiment. Therefore, the operation of the information processing apparatus 10 according to the present embodiment is not limited to the operation example shown in FIG.
  • the distance measuring unit 124 generates a depth map based on the left image and the right image captured by the field of view analysis imaging unit 111 (S11).
  • the application execution unit 123 determines the position of the virtual object in the virtual space, and based on the position of the virtual object in the virtual space and the position and orientation of the visual field analysis imaging unit 111 in the real space, The position in the visual field and the distance between the visual field analysis imaging unit 111 and the virtual object are detected.
  • the display control unit 126 determines whether the virtual object is present at an intermediate distance (S17). If the virtual object is present at an intermediate distance ("Yes” in S17), the display control unit 126 shifts the operation to S16. On the other hand, when the virtual object is not present at an intermediate distance (that is, when the virtual object is present at a long distance) ("No” in S17), the display control unit 126 has already reduced the resolution of the depth map. ("Yes” in S18), the operation is shifted to S16, but if the resolution of the depth map is not yet reduced (“No” in S18), it is decided to reduce the resolution of the generated depth map And shift the operation to S11.
  • the real object detection unit 122 determines whether there is a hand as an example of a predetermined real object in the shooting range (field of view) of the stereo camera (S13).
  • the display control unit 126 shifts the operation to S15 when the real object detection unit 122 determines that the hand does not exist within the imaging range of the stereo camera ("No" in S13).
  • the real object detection unit 122 determines the position of the hand (the distance between the hand and the stereo camera) based on the depth map. To detect.
  • the display control unit 126 determines the enlargement ratio and the position of the depth map according to the position of the hand (S14).
  • the display control unit 126 draws a shadow using the depth map corresponding to the determined magnification and position as a mask (S15). That is, the display control unit 126 sets the non-overlapping area not overlapping the area in which the hand is recognized among the changed areas in which the area in which the hand is recognized is changed based on the determined magnification and position. Control is performed so that the cut-out image of the area in the depth map corresponding to the non-overlapping area is displayed by the display unit 150.
  • the display control unit 126 is in front of the virtual object 30-1 based on the position of the virtual object 30-1 in the field of view, the distance between the visual field analysis imaging unit 111 and the virtual object 30-1, and the depth map. It is possible to recognize real objects. Therefore, the display control unit 126 generates a display object by removing an area of the virtual object located behind the real object from the virtual object based on the depth map. The display control unit 126 draws (display controls) the generated display object as a virtual object (S16), and shifts the operation to S11.
  • the display control unit 126 controls the display unit 150 so that the hand model is displayed at the position of the area where the hand is recognized.
  • the display control unit 126 corresponds to the real object.
  • the display unit 150 may be controlled to display a model.
  • the display control unit 126 may display the shadow of the real object at a depth corresponding to the distance between the virtual object and the real object. For example, the display control unit 126 may lighten the shadow of the real object as the distance between the user U and the real object decreases.
  • the virtual object 30 is presented to the user U by the information processing apparatus 10 according to the present embodiment.
  • the positions of the plurality of virtual objects 30 may be determined in the field of view of the user U simultaneously.
  • all display objects based on the plurality of virtual objects may be displayed by the display unit 150.
  • the display control unit 126 may cause the display unit 150 to display only display objects based on the virtual object that the user U is focusing on.
  • the display control unit 126 causes the display unit 150 to display the first display object based on the virtual object selected from the plurality of virtual objects. It may be controlled to be displayed. Further, when the distance between the user U and each of the plurality of virtual objects 30 is the second distance, the display control unit 126 causes the display unit 150 to display the second display object based on the virtual object selected from the plurality of virtual objects. It may be controlled to be displayed.
  • the display control unit 126 may select a virtual object closest to the position of the line of sight of the user U detected by the line of sight detection unit 125 from a plurality of virtual objects.
  • the display control unit 126 may select a virtual object closest to the position of the hand from a plurality of virtual objects in the visual field or real space.
  • the first distance is an intermediate distance (P2 ⁇ P ⁇ P1) and the second distance is a long distance (P> P1) has been described.
  • the first distance is a distance equal to or greater than the threshold Th1, and the second distance is a distance below the threshold Th1.
  • the threshold Th1 may be changed according to the situation. For example, as described above, when the virtual object is arranged at a distance below the threshold Th1, the display object is generated with higher accuracy than when the virtual object is arranged at a distance equal to or more than the threshold Th1. Therefore, when a situation occurs where it is desired to reduce the processing cost, it is preferable to reduce the possibility of the display object being generated with high accuracy by lowering the threshold Th1.
  • the display control unit 126 may control the threshold Th1 based on at least one of the operation mode of the information processing device 10, the temperature, and the battery remaining amount. For example, when the operation mode of the information processing apparatus 10 is a power saving mode, it is assumed that the processing cost is to be reduced. Therefore, when the operation mode of the information processing apparatus 10 is the power saving mode, the display control unit 126 may lower the threshold Th1.
  • FIG. 13 is a diagram for explaining an example of control of the threshold Th1.
  • a threshold value Th1 in the case where the operation mode of the information processing device 10 is the normal mode is shown.
  • the threshold Th11 is shown (a position away from the position P0 where the user U exists by the distance Th11 is shown as "position P11").
  • the display control unit 126 may lower the threshold Th1 to the threshold Th11.
  • the threshold Th11 may also be determined in advance.
  • the display control unit 126 may lower the threshold Th1.
  • the temperature of the information processing apparatus 10 may be the temperature of any position, but may be the temperature of a processor that operates the information processing apparatus 10.
  • the thermometer when the thermometer is incorporated in the information processing apparatus 10, the temperature of the information processing apparatus 10 may be measured by the thermometer.
  • the display control unit 126 may lower the threshold Th1 when the battery remaining amount for operating the information processing device 10 falls below a predetermined remaining amount.
  • FIG. 14 is a block diagram showing an example of the hardware configuration of the information processing apparatus 10 according to an embodiment of the present disclosure.
  • the information processing apparatus 10 includes a central processing unit (CPU) 901, a read only memory (ROM) 903, and a random access memory (RAM) 905.
  • the information processing apparatus 10 may also include 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, a connection port 923, and a communication device 925.
  • the information processing device 10 may include an imaging device 933 and a sensor 935 as necessary.
  • the information processing apparatus 10 may have a processing circuit called a digital signal processor (DSP) or an application specific integrated circuit (ASIC) instead of or in addition to the CPU 901.
  • DSP digital signal processor
  • ASIC application specific integrated circuit
  • the CPU 901 functions as an arithmetic processing unit and a control unit, and controls the entire operation or a part of the information processing apparatus 10 according to various programs recorded in the ROM 903, the RAM 905, the storage unit 919, or the removable recording medium 927.
  • the ROM 903 stores programs used by the CPU 901, calculation parameters, and the like.
  • the RAM 905 temporarily stores programs used in the execution of the CPU 901, parameters that appropriately change in the execution, and the like.
  • the CPU 901, the ROM 903 and the RAM 905 are mutually connected by a host bus 907 configured by an internal bus such as a CPU bus. Furthermore, the host bus 907 is connected to an external bus 911 such as a peripheral component interconnect / interface (PCI) bus via the bridge 909.
  • PCI peripheral component interconnect / interface
  • the input device 915 is, for example, a device operated by the user, such as a mouse, a keyboard, a touch panel, a button, a switch, and a lever.
  • the input device 915 may include a microphone that detects the user's voice.
  • the input device 915 may be, for example, a remote control device using infrared rays or other radio waves, or may be an external connection device 929 such as a mobile phone corresponding to the operation of the information processing apparatus 10.
  • the input device 915 includes an input control circuit that generates an input signal based on information input by the user and outputs the generated signal to the CPU 901.
  • the user operates the input device 915 to input various data to the information processing apparatus 10 and instruct processing operations.
  • an imaging device 933 described later can also function as an input device by imaging the movement of the user's hand, the finger of the user, and the like. At this time, the pointing position may be determined according to the movement of the hand or the direction of the finger.
  • the output device 917 is configured of a device capable of visually or aurally notifying the user of the acquired information.
  • the output device 917 is, for example, an LCD (Liquid Crystal Display), a PDP (Plasma Display Panel), an organic EL (Electro-Luminescence) display, a display such as a projector, a display of a hologram, an audio output such as a speaker and a headphone, And a printer device.
  • the output device 917 outputs the result obtained by the processing of the information processing device 10 as a video such as text or an image, or outputs it as an audio such as audio or sound.
  • the output device 917 may include a light or the like to brighten the surroundings.
  • the storage device 919 is a device for data storage configured as an example of a storage unit of the information processing device 10.
  • the storage device 919 is configured of, for example, a magnetic storage unit device such as a hard disk drive (HDD), a semiconductor storage device, an optical storage device, or a magneto-optical storage device.
  • the storage device 919 stores programs executed by the CPU 901, various data, various data acquired from the outside, and the like.
  • the drive 921 is a reader / writer for a removable recording medium 927 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory, and is built in or externally attached to the information processing apparatus 10.
  • the drive 921 reads out the information recorded in the mounted removable recording medium 927 and outputs it to the RAM 905.
  • the drive 921 also writes a record on the attached removable recording medium 927.
  • connection port 923 is a port for directly connecting a device to the information processing apparatus 10.
  • the connection port 923 may be, for example, a Universal Serial Bus (USB) port, an IEEE 1394 port, a Small Computer System Interface (SCSI) port, or the like.
  • the connection port 923 may be an RS-232C port, an optical audio terminal, a high-definition multimedia interface (HDMI (registered trademark)) port, or the like.
  • HDMI registered trademark
  • the communication device 925 is, for example, a communication interface configured of a communication device or the like for connecting to the communication network 931.
  • the communication device 925 may be, for example, a communication card for a wired or wireless Local Area Network (LAN), Bluetooth (registered trademark), or WUSB (Wireless USB).
  • the communication device 925 may be a router for optical communication, a router for Asymmetric Digital Subscriber Line (ADSL), or a modem for various types of communication.
  • the communication device 925 transmits and receives signals and the like to and from the Internet or another communication device using a predetermined protocol such as TCP / IP.
  • a communication network 931 connected to the communication device 925 is a network connected by wire or wireless, and is, for example, the Internet, a home LAN, infrared communication, radio wave communication, satellite communication, or the like.
  • the imaging device 933 uses various members such as an imaging device such as a charge coupled device (CCD) or a complementary metal oxide semiconductor (CMOS), and a lens for controlling the formation of an object image on the imaging device. It is an apparatus which images real space and generates a captured image.
  • the imaging device 933 may capture a still image, or may capture a moving image.
  • the sensor 935 is, for example, various sensors such as a distance measuring sensor, an acceleration sensor, a gyro sensor, a geomagnetic sensor, an optical sensor, and a sound sensor.
  • the sensor 935 acquires information on the environment of the information processing apparatus 10, such as information on the state of the information processing apparatus 10 itself, such as the attitude of the housing of the information processing apparatus 10, and brightness and noise around the information processing apparatus 10, for example. Do.
  • the sensor 935 may also include a GPS sensor that receives a Global Positioning System (GPS) signal and measures the latitude, longitude and altitude of the device.
  • GPS Global Positioning System
  • the real space information acquisition unit 121 that acquires information on real objects arranged in the real space, and the distance between the user and the virtual object is the first distance.
  • the first display object based on the real object and the first process is controlled to be displayed by the display device as a virtual object, and a second distance between the user and the virtual object is different from the first distance
  • a display control unit 126 configured to control a second display object based on the real object and the second process different from the first process to be displayed as a virtual object by the display device. Apparatus 10 is provided.
  • the position of each configuration is not particularly limited.
  • a part of processing of each unit in the information processing apparatus 10 may be performed by a server device (not shown).
  • a part or all of the blocks included in the control unit 120 in the information processing apparatus 10 may be present in a server apparatus (not shown) or the like.
  • some or all of the functions of the real object detection unit 122, the application execution unit 123, the distance measurement unit 124, and the sight line detection unit 125 in the information processing apparatus 10 are present in a server device (not shown). It is also good.
  • a spatial information acquisition unit that acquires information on real objects arranged in the real space;
  • the first display object based on the real object and the first processing is controlled to be displayed by the display device as the virtual object when the distance between the user and the virtual object is the first distance, and the user
  • the second display object based on the real object and the second processing different from the first processing is the virtual object when the distance between the virtual object and the first virtual object is a second distance different from the first distance.
  • a display control unit configured to control to be displayed by the display device as An information processing apparatus comprising: (2) The first process is a process of generating the first display object with a first accuracy, The second process is a process of generating the second display object with a second accuracy lower than the first accuracy. The information processing apparatus according to (1). (3) The first process calculates a first area located behind the real object in the virtual object based on a first depth map, and removes the first area from the virtual object. Processing to generate a first display object, The second process calculates a second area located behind the real object in the virtual object based on a second depth map lower in resolution than the first depth map, and Removing the second area from the virtual object to generate the second display object; The information processing apparatus according to (2).
  • the first process calculates a first area positioned behind the real object in the virtual object, removes the first area from the virtual object, and generates the first display object.
  • the second process calculates a second area of the virtual object located behind the real object, removes the second area from the virtual object, and generates the second display object.
  • the simplification includes processing to reduce the number of polygons of the at least part of the shape, The information processing apparatus according to (4).
  • the simplification includes processing for approximating the shape of the at least part to a predetermined shape.
  • the simplification includes a process of projecting the shape of at least a part on a predetermined plane.
  • the information processing apparatus according to any one of (4) to (6).
  • the first process calculates a first area of the virtual object located behind the real object at a first frame rate, removes the first area from the virtual object, and It is a process to generate 1 display object,
  • the second process calculates a second area located behind the real object in the virtual object at a second frame rate lower than the first frame rate, and calculates the second area. Removal from the virtual object to generate the second display object;
  • the information processing apparatus according to (2).
  • the first process calculates a first area positioned behind the real object in the virtual object, removes the first area from the virtual object, and generates the first display object.
  • the second process calculates, of the virtual object, a second area located behind the area after the change in which at least one of the size and the position of the area in which the real object is recognized is changed. Removing the second area from the virtual object to generate the second display object.
  • the information processing apparatus according to (1).
  • the display control unit displays the predetermined image in an area not overlapping the area where the real object is recognized in the changed area. Control to be displayed by the device, The information processing apparatus according to (9).
  • the first process calculates a first area of the virtual object located behind the real object, removes the first area from the virtual object, and generates the first display object.
  • the second process is a process of setting the virtual object as the second display object and determining the position of a pointer pointing to the position of the area where the real object is recognized as a third display object.
  • the first process calculates a first area of the virtual object located behind the real object, removes the first area from the virtual object, and generates the first display object.
  • Processing, and The second process determines the position of a model corresponding to the real object as a fourth display object based on the position of the area where the real object is recognized, and the real object of the virtual objects is This is a process in which an area not overlapping the recognized area is used as the second display object,
  • the display control unit causes the display device to display the first display object based on a virtual object selected from the plurality of virtual objects when the distance between the user and each of the plurality of virtual objects is a first distance.
  • the information processing apparatus according to any one of the above (1) to (12).
  • the display control unit selects, from the plurality of virtual objects, a virtual object closest to the gaze or hand position of the user.
  • the information processing apparatus according to (13).
  • the first distance is a distance equal to or greater than a threshold
  • the second distance is a distance below the threshold
  • the display control unit controls the threshold based on at least one of an operation mode of the information processing device, a temperature, and a battery remaining amount.
  • the information processing apparatus according to any one of (1) to (14).
  • the display control unit lowers the threshold when the operation mode is a power saving mode.
  • the display control unit reduces the threshold when the temperature exceeds a predetermined temperature.
  • the display control unit reduces the threshold value when the battery remaining amount is lower than a predetermined remaining amount.
  • Controlling to be displayed by the display device as Information processing methods including: (20) Computer, A spatial information acquisition unit that acquires information on real objects arranged in the real space; The first display object based on the real object and the first processing is controlled to be displayed by the display device as the virtual object when the distance between the user and the virtual object is the first distance, and the user And the second display object based on the real object and the second processing different from the first processing is the virtual object when the distance between the virtual object and the first virtual object is a second distance different from the first distance.
  • a display control unit configured to control to be displayed by the display device as Program for functioning as an information processing apparatus provided with
  • Imaging unit for visual field analysis 112 Imaging unit for gaze detection 120 Control unit 121 Real space information acquisition unit 122 Real object detection unit 123 Application execution unit 124 Ranging unit 125 Vision detection unit 126 Display control unit 130 Storage unit 150 Display unit 30 Virtual object 40 Real object 41 Rectangular shape area 42 Cut-out image 43 Model 44 Pointer 70 Depth map 80 View field

Abstract

【課題】ユーザと仮想オブジェクトとの距離に応じた適切な表示制御方法によって仮想オブジェクトの表示を制御することが望まれる。 【解決手段】実空間内に配置された実オブジェクトの情報を取得する空間情報取得部と、ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御する表示制御部と、を備える、情報処理装置が提供される。

Description

情報処理装置、情報処理方法およびプログラム
 本開示は、情報処理装置、情報処理方法およびプログラムに関する。
 近年、ユーザに対して仮想オブジェクトを提示する技術が開示されている。例えば、仮想オブジェクトに生じるユーザの影をユーザに対してフィードバックする技術が開示されている(例えば、特許文献1参照。)。かかる技術においては、ユーザと仮想オブジェクトとの距離が大きくなるにつれて、仮想オブジェクトに生じるユーザの影を大きくするという表示制御方法が採用される。ユーザは、仮想オブジェクトに生じるユーザの影を見ることによって、ユーザと仮想オブジェクトとの距離感を認識しやすくなる。
特開2016-194744号公報
 しかしながら、適切な仮想オブジェクトの表示制御方法は、ユーザと仮想オブジェクトとの距離に応じて変化し得る。一例として、ユーザと仮想オブジェクトとの距離によって、ユーザと仮想オブジェクトを遮蔽する実オブジェクトとの距離の検出精度は変化する場合が想定される。ユーザと実オブジェクトとの距離の検出精度が変化すれば、仮想オブジェクトの適切な表示制御方法も変化する場合が想定される。そこで、ユーザと仮想オブジェクトとの距離に応じた適切な表示制御方法によって仮想オブジェクトの表示を制御することが望まれる。
 本開示によれば、実空間内に配置された実オブジェクトの情報を取得する空間情報取得部と、ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御する表示制御部と、を備える、情報処理装置が提供される。
 本開示によれば、プロセッサにより、実空間内に配置された実オブジェクトの情報を取得することと、ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御することと、を含む、情報処理方法が提供される。
 本開示によれば、コンピュータを、実空間内に配置された実オブジェクトの情報を取得する空間情報取得部と、ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御する表示制御部と、を備える情報処理装置として機能させるためのプログラムが提供される。
 以上説明したように本開示によれば、ユーザと仮想オブジェクトとの距離に応じた適切な表示制御方法によって仮想オブジェクトの表示を制御することが可能な技術が提供される。なお、上記の効果は必ずしも限定的なものではなく、上記の効果とともに、または上記の効果に代えて、本明細書に示されたいずれかの効果、または本明細書から把握され得る他の効果が奏されてもよい。
本開示の実施形態の概要を説明するための図である。 本開示の実施形態に係る情報処理装置の機能構成例を示す図である。 制御部の詳細構成例を示す図である。 仮想オブジェクトが遠距離に配置される場合における表示制御の第1の例を説明するための図である。 仮想オブジェクトが遠距離に配置される場合における表示制御の第2の例を説明するための図である。 仮想オブジェクトが中距離に配置される場合における表示制御の例を説明するための図である。 仮想オブジェクトが近距離に配置される場合における表示制御の第1の例を説明するための図である。 仮想オブジェクトが近距離に配置される場合における表示制御の第2の例を説明するための図である。 仮想オブジェクトが近距離に配置される場合における表示制御の第3の例を説明するための図である。 仮想オブジェクトが近距離に配置される場合における表示制御の第4の例を説明するための図である。 仮想オブジェクトが近距離に配置される場合における表示制御の第5の例を説明するための図である。 本実施形態に係る情報処理装置の動作例を示すフローチャートである。 閾値の制御例を説明するための図である。 本開示の実施形態に係る情報処理装置のハードウェア構成例を示すブロック図である。
 以下に添付図面を参照しながら、本開示の好適な実施の形態について詳細に説明する。なお、本明細書及び図面において、実質的に同一の機能構成を有する構成要素については、同一の符号を付することにより重複説明を省略する。
 また、本明細書および図面において、実質的に同一または類似の機能構成を有する複数の構成要素を、同一の符号の後に異なる数字を付して区別する場合がある。ただし、実質的に同一または類似の機能構成を有する複数の構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。また、異なる実施形態の類似する構成要素については、同一の符号の後に異なるアルファベットを付して区別する場合がある。ただし、類似する構成要素の各々を特に区別する必要がない場合、同一符号のみを付する。
 なお、説明は以下の順序で行うものとする。
 0.概要
 1.実施形態の詳細
  1.1.情報処理装置の機能構成例
  1.2.情報処理装置の機能詳細
  1.3.情報処理装置の動作例
  1.4.各種の変形例
 2.ハードウェア構成例
 3.むすび
 <0.概要>
 まず、図1を参照しながら、本開示の実施形態の概要を説明する。近年、ユーザに対して仮想オブジェクトを提示する技術が開示されている。例えば、仮想オブジェクトに生じるユーザの影をユーザに対してフィードバックする技術が開示されている。かかる技術においては、ユーザと仮想オブジェクトとの距離が大きくなるにつれて、仮想オブジェクトに生じるユーザの影を大きくするという表示制御方法が採用される。ユーザは、仮想オブジェクトに生じるユーザの影を見ることによって、ユーザと仮想オブジェクトとの距離感を認識しやすくなる。
 しかしながら、適切な仮想オブジェクトの表示制御方法は、ユーザと実オブジェクトとの距離に応じて変化し得る。図1を参照しながら詳細に説明する。図1は、本開示の実施形態の概要を説明するための図である。図1を参照すると、実空間RにユーザUが存在している。また、ユーザUが存在する位置P0から距離Th2だけ離れた位置が「位置P2」として示され、ユーザUが存在する位置P0から距離Th1だけ離れた位置が「位置P1」として示されている。以下の説明においては、距離Th1および閾値Th2は閾値として利用されるため、距離Th1を「閾値Th1」とも言い、距離Th2を「閾値Th2」とも言う。
 ここで、閾値Th1および閾値Th2はあらかじめ決められていてよい。しかし、閾値Th1および閾値Th2それぞれが、どのような値にあらかじめ決定されるかは限定されない。一例として、閾値Th2は、ユーザUが存在する位置P0を基準として、ユーザUが静止した状態において手を伸ばして手を接触させることができると想定される位置までの最大の距離であってよい。また、一例として、閾値Th1は、ユーザUの位置P0を基準として、ユーザUによる視認性が低下することが想定される位置までの最小の距離であってよい。
 以下の説明においては、ユーザUが存在する位置P0を基準として閾値Th2を下回る距離を「近距離(P0≦P<P2)」とも言う。また、ユーザUが存在する位置P0を基準として閾値Th2以上の距離かつ閾値Th1を下回る距離を「中距離(P2≦P<P1)」とも言う。また、ユーザUが存在する位置P0を基準として閾値Th1以上の距離を「遠距離(P>P1)」とも言う。
 図1を参照すると、遠距離(P>P1)に仮想オブジェクト30-1および実オブジェクト40-1が配置されている例が示されている。また、中距離(P2≦P<P1)に仮想オブジェクト30-2および実オブジェクト40-2が配置されている例が示されている。また、近距離(P2≦P<P1)に仮想オブジェクト30-3および実オブジェクト40-3が配置されている例が示されている。
 なお、図1には、仮想オブジェクト30の例として円筒形状のオブジェクトが示されているが、仮想オブジェクト30の種類(例えば、仮想オブジェクト30の形状、サイズ、色、輝度、動きなど)は特に限定されない。また、図1には、実オブジェクト40の例として、箱形状のオブジェクトおよびユーザUの手が示されているが、実オブジェクト40の種類(例えば、実オブジェクト40の形状、サイズ、色、輝度、動きなど)は特に限定されない。
 例えば、情報処理装置10は、実オブジェクトの情報の例として、ユーザUと実オブジェクト40との距離を検出する。本開示の実施形態においては、情報処理装置10は、ステレオカメラを有しており、ステレオカメラによって撮像された左画像および右画像に基づいてデプスマップを生成し、デプスマップに基づいてユーザUと実オブジェクト40との距離を検出する場合を主に想定する。しかし、ユーザUと実オブジェクト40との距離はどのように検出されてもよい。例えば、情報処理装置10が距離センサセンサを有する場合、距離センサによって、ユーザUと実オブジェクト40との距離が検出されてもよい。距離センサは、TOF(Time of Flight)センサなどであってもよい。
 図1を参照すると、情報処理装置10がユーザUの頭部に装着されるゴーグル型のHMD(Head Mounted Display)によって構成される場合が例として示されている。しかし、HMDの形態は、ゴーグル型に限定されず、グラス型などであってもよい。また、情報処理装置10はHMDに限定されない。例えば、情報処理装置10は、スマートフォンであってもよいし、タブレット端末であってもよいし、携帯電話であってもよいし、他のモバイルデバイスであってもよい。
 また、本開示の実施形態においては、情報処理装置10が透過型のディスプレイを有する場合を主に想定する。このとき、ユーザUは、ディスプレイによって表示された仮想オブジェクト30を視認するとともにディスプレイの奥側に実オブジェクト40を視認することが可能である。しかし、情報処理装置10は、非透過型のディスプレイを有してもよい。このとき、ユーザUは、ディスプレイによって表示された仮想オブジェクト30と情報処理装置10が有するカメラによって撮像されてディスプレイによって表示された画像によって実オブジェクトを視認することが可能である。
 ここで、ユーザUと仮想オブジェクト30との距離によって、ユーザUと仮想オブジェクト30を遮蔽する実オブジェクト40との距離の検出精度は変化する場合が想定される。例えば、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合には、ユーザUと仮想オブジェクト30-1を遮蔽する実オブジェクト40-1との距離が大きくなってしまうため、ユーザUと実オブジェクト40-1との距離の検出精度が低下してしまうことが想定される。
 また、近距離(P0≦P<P2)に仮想オブジェクト30-3が配置される場合には、ユーザUと仮想オブジェクト30-3を遮蔽する実オブジェクト40-3との距離が小さくなってしまうことに起因して、ステレオカメラによって撮像される左画像および右画像の視差が大きくなってしまう。そのため、ユーザUによって視認可能な領域であっても、左画像および右画像から生成されるデプスマップに距離が検出されない領域が生じてしまい、ユーザUと実オブジェクト40-3との距離の検出精度が低下してしまうことが想定される。
 このようにして、ユーザUと実オブジェクト40との距離の検出精度が変化すれば、仮想オブジェクト30の適切な表示制御方法も変化する場合が想定される。そこで、本明細書においては、ユーザUと実オブジェクト40との距離に応じた適切な表示制御方法によって仮想オブジェクト30の表示を制御する技術について主に提案する。
 以下の説明においては、表示制御方法として遮蔽処理を例に挙げる。遮蔽処理は、仮想オブジェクト30のうち、ユーザUの位置を基準として実オブジェクト40の奥側に位置する領域(以下、「遮蔽領域」とも言う。)を仮想オブジェクト30から除去することによって(仮想オブジェクト30として描画しないことによって)、領域除去後の仮想オブジェクトを表示オブジェクトとして生成する処理に相当し得る。これによって、ユーザUにとってより自然な仮想オブジェクト30の表示制御がなされ得る。
 一例として、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合には、ユーザUと仮想オブジェクト30-1を遮蔽する実オブジェクト40-1との距離の検出精度が低下してしまうことが想定される。さらに、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合には、ユーザUによる仮想オブジェクト30-1の視認性が低下することが想定される。
 したがって、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合には、より簡易化された処理に基づいて仮想オブジェクト30-1が表示制御されてよい。これによって、仮想オブジェクト30-1の表示制御に要する処理コストが低減される。
 特に、仮想オブジェクト30の表示のたびに遮蔽処理が行われるのが一般的であるため、仮想オブジェクト30-1の表示制御に要する処理コストの低減が強く要求されることがある。さらに、情報処理装置10がモバイルデバイスである場合には、消費電力およびプロセッサの発熱量に制約があるため、仮想オブジェクト30-1の表示制御に要する処理コストの低減が強く要求されることがある。したがって、より簡易化された処理に基づく仮想オブジェクト30-1の表示制御によって、かかる要求が満たされ得る。
 他の一例として、近距離(P0≦P<P2)に仮想オブジェクト30-3が配置される場合には、ユーザUと仮想オブジェクト30-3を遮蔽する実オブジェクト40-3との距離の検出精度が低下してしまうことが想定される。さらに、近距離(P0≦P<P2)に仮想オブジェクト30-3が配置される場合には、ユーザUが仮想オブジェクト30-3に実オブジェクト40-3を接触させたり、実オブジェクト40-3によって仮想オブジェクト30-3を操作したりしたいと考えている場合がある。そのため、ユーザUが仮想オブジェクト30-3と実オブジェクト40-3との距離感を把握したいと考えている場合がある。
 したがって、近距離(P0≦P<P2)に仮想オブジェクト30-3が配置される場合には、仮想オブジェクト30-3から遮蔽領域よりも広い領域を除去することによって、領域除去後の仮想オブジェクトを表示オブジェクトとして生成してよい。これによって、ユーザUは、仮想オブジェクト30-3から除去された領域の広さによって、仮想オブジェクト30-3と実オブジェクト40-3との距離をユーザUが把握しやすくなる。
 以上において、本開示の実施形態の概要について説明した。
 <1.実施形態の詳細>
 続いて、本開示の実施形態の詳細について説明する。
 [1.1.情報処理装置の機能構成例]
 続いて、本開示の実施形態に係る情報処理装置10の機能構成例について説明する。図2は、本開示の実施形態に係る情報処理装置10の機能構成例を示す図である。図2に示したように、情報処理装置10は、視野分析用撮像部111、視線検出用撮像部112、制御部120、記憶部130および表示部150を有している。
 視野分析用撮像部111は、ユーザUの視野を撮像することによって画像(視野分析用画像)を得る機能を有する。例えば、視野分析用撮像部111は、ステレオカメラを含んでおり、ステレオカメラによって撮像された左画像および右画像を得る。ステレオカメラによって撮像された左画像および右画像は、測距部124(図3)による距離の検出に利用される。なお、上記したように、ステレオカメラおよび測距部124の代わりに、各種の距離センサが利用されてもよい。また、視野分析用撮像部111は、情報処理装置10と一体化されていてもよいし、情報処理装置10とは別体として存在していてもよい。
 視線検出用撮像部112は、ユーザUの目を撮像することによって画像(視線検出用画像)を得る機能を有する。例えば、視線検出用撮像部112は、カメラ(イメージセンサを含む)を含んでおり、カメラによって撮像された視線検出用画像を得る。視線検出用撮像部112に含まれるカメラの数は1以上であれば特に限定されない。そして、視線検出用撮像部112が設けられる位置も特に限定されない。例えば、視線検出用撮像部112は、情報処理装置10と一体化されていてもよいし、情報処理装置10とは別体として存在していてもよい。
 記憶部130は、メモリを含んで構成され、制御部120によって実行されるプログラムを記憶したり、プログラムの実行に必要なデータを記憶したりする記録媒体である。また、記憶部130は、制御部120による演算のためにデータを一時的に記憶する。記憶部130は、磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または、光磁気記憶デバイスなどにより構成される。
 表示部150は、各種の画面を表示する機能を有する。表示部150の種類は限定されない。例えば、表示部150は、ユーザに視認可能な表示を行うことが可能なディスプレイ(表示装置)であればよい。より具体的に、表示部150は、液晶ディスプレイであってもよいし、有機EL(Electro-Luminescence)ディスプレイであってもよい。
 制御部120は、情報処理装置10の各部の制御を実行する。図3は、制御部120の詳細構成例を示す図である。図3に示したように、制御部120は、実空間情報取得部121、実オブジェクト検出部122、アプリケーション実行部123、測距部124、視線検出部125および表示制御部126を備える。これらの各機能ブロックについての詳細は、後に説明する。なお、制御部120は、例えば、1または複数のCPU(Central Processing Unit;中央演算処理装置)などで構成されていてよい。制御部120がCPUなどといった処理装置によって構成される場合、かかる処理装置は、電子回路によって構成されてよい。
 以上、本実施形態に係る情報処理装置10の機能構成例について説明した。
 [1.2.情報処理装置の機能詳細]
 続いて、本実施形態に係る情報処理装置10の機能詳細について説明する。本開示の実施形態に係る情報処理装置10において、実空間情報取得部121は、実空間Rに配置された実オブジェクト40の情報を取得する。より具体的に、実空間情報取得部121は、実オブジェクト40が写る左画像および右画像を視野分析用撮像部111から取得することによって、実オブジェクト40の情報を取得する。
 そして、表示制御部126は、ユーザUと仮想オブジェクト30の距離が第1の距離である場合、実オブジェクト40と第1の処理とに基づく第1の表示オブジェクトが仮想オブジェクトとして表示部150によって表示されるよう制御する。さらに、表示制御部126は、ユーザUと仮想オブジェクト30の距離が第1の距離と異なる第2の距離である場合、実オブジェクト40と第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが仮想オブジェクトとして表示部150によって表示されるよう制御する。
 かかる構成によれば、ユーザUと仮想オブジェクト30との距離に応じた適切な表示制御方法によって仮想オブジェクトの表示を制御することが可能となる。
 ここで、第1の距離と第2の距離との組み合わせとしては、複数の組み合わせが想定される。一つ目の例として、第1の距離が中距離(P2≦P<P1)であり、第2の距離が遠距離(P>P1)である場合が想定される。二つ目の例として、第1の距離が中距離(P2≦P<P1)であり、第2の距離が近距離(P0≦P<P2)である場合が想定される。以下では、一つ目の例および二つ目の例について説明する。
 まず、一つ目の例について説明する。図4は、仮想オブジェクト30が遠距離(P>P1)に配置される場合における表示制御の第1の例を説明するための図である。図5は、仮想オブジェクト30が遠距離(P>P1)に配置される場合における表示制御の第2の例を説明するための図である。図6は、仮想オブジェクト30が中距離(P2≦P<P1)に配置される場合における表示制御の例を説明するための図である。
 図4を参照すると、仮想オブジェクト30が遠距離(P>P1)に配置される場合において、デプスマップ70-1に、実空間における位置が検出された実オブジェクト40-1が存在し、仮想空間における位置が決定された仮想オブジェクト30-1が重ねて示されている。また、図6を参照すると、仮想オブジェクト30が中距離(P2≦P<P1)に配置される場合において、デプスマップ70-2に、実空間における位置が検出された実オブジェクト40-2が存在し、仮想空間における位置が決定された仮想オブジェクト30-2が重ねて示されている。
 仮想オブジェクト30-1の仮想空間における位置は、アプリケーション実行部123によって決定される。また、アプリケーション実行部123は、仮想オブジェクト30-1の仮想空間における位置と視野分析用撮像部111の実空間における位置および姿勢(仮想カメラの位置)とに基づいて、仮想オブジェクト30-1の視野における位置、および、視野分析用撮像部111と仮想オブジェクト30-1との距離を検出する。視野分析用撮像部111の実空間における位置および姿勢は、アプリケーション実行部123によって、視野分析用撮像部111によって時間的に連続して撮像された複数の画像に応じた実空間の認識結果に基づいて算出され得る。なお、アプリケーションの種類は特に限定されない。一例として、アプリケーションは、ゲームアプリケーションであってもよい。
 一方、測距部124は、視野分析用撮像部111によって撮像された左画像および右画像に基づいてデプスマップを生成し、生成したデプスマップを表示制御部126に出力する。実オブジェクト検出部122は、視野分析用撮像部111によって撮像された左画像および右画像に基づいて視野に所定の実オブジェクト(例えば、ユーザUの手など)が存在するか否かを判断する。実オブジェクト検出部122は、視野に所定の実オブジェクトが存在する場合、視野における所定の実オブジェクトの位置を検出し、表示制御部126に出力する。
 表示制御部126は、仮想オブジェクト30-1の視野における位置、視野分析用撮像部111と仮想オブジェクト30-1との距離、および、デプスマップに基づいて、仮想オブジェクト30-1よりも手前にある実オブジェクトを認識することが可能である。
 ここで、上記したように、図6に示した例では、仮想オブジェクト30-2が中距離(P2≦P<P1)に配置される場合を想定している。かかる場合、表示制御部126は、実オブジェクト40-1と第1の処理とに基づく第1の表示オブジェクトが仮想オブジェクトとして表示部150によって表示されるよう制御する。一方、図4に示した例では、仮想オブジェクト30-1が遠距離(P>P1)に配置される場合を想定している。かかる場合、表示制御部126は、実オブジェクト40-2と第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが仮想オブジェクトとして表示部150によって表示されるよう制御する。
 第1の処理および第2の処理は特に限定されない。しかし、上記したように、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合には、より簡易化された処理に基づいて仮想オブジェクト30-1が表示制御されてよい。そこで、中距離(P2≦P<P1)に仮想オブジェクト30-2が配置される場合における第1の処理が、第1の精度によって第1の表示オブジェクトを生成する処理である場合、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合における第2の処理は、第1の精度よりも低い第2の精度によって第2の表示オブジェクトを生成する処理であってよい。
 表示オブジェクトの生成精度はどのように低下されてもよい。一例として、仮想オブジェクトおよび実オブジェクトの少なくともいずれか一方の形状を簡易化することによって、表示オブジェクトの生成精度が低下されてもよい。以下では、実オブジェクトの形状が簡易化される場合を主に説明する。しかし、実オブジェクトの形状の簡易化と同様な手法によって、仮想オブジェクトの形状が簡易化されてもよい。あるいは、仮想オブジェクトおよび実オブジェクトの双方の形状が簡易化されてもよい。
 図6には、中距離(P2≦P<P1)に仮想オブジェクト30-2が配置される場合における第1の処理として、仮想オブジェクト30-2のうち実オブジェクト40-2の奥側に位置する第1の領域を算出し、第1の領域を仮想オブジェクト30-2から除去して第1の表示オブジェクト(仮想オブジェクト30-22)を生成する処理が示されている(視野80-22)。
 一方、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合における第2の処理は、仮想オブジェクト30-1のうち実オブジェクト40-1の奥側に位置する第2の領域を算出し、第2の領域を仮想オブジェクト30-1から除去して第2の表示オブジェクト(仮想オブジェクト)を生成する処理を、実オブジェクト40-1が認識された領域の少なくとも一部の形状を簡易化してから行う処理であってよい。
 実オブジェクト40-1が認識された領域の少なくとも一部の形状はどのように簡易化されてもよい。一例として、図4には、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合における第2の処理として、実オブジェクト40-1が認識された領域の形状を矩形形状領域41に近似し(デプスマップ70-12)、仮想オブジェクト30-1のうち矩形形状領域41の奥側に位置する第2の領域を算出し、第2の領域を仮想オブジェクト30-1から除去して第2の表示オブジェクト(仮想オブジェクト30-12)を生成する処理が示されている(視野80-12)。
 図4に示した例のように、実オブジェクト40-1が認識された領域全体が矩形形状に近似されることによって形状の簡易化されてよい。しかし、形状の簡易化は、かかる例に限定されない。例えば、近似先の形状は、矩形形状に限定されない。また、実オブジェクト40-1が認識された領域の一部が近似されてもよい。すなわち、実オブジェクト40-1が認識された領域の少なくとも一部の形状が所定の形状に近似されることによって形状が簡易化されてもよい。
 あるいは、実オブジェクト40-1が認識された領域の少なくとも一部のポリゴン数の低下によって形状が簡易化されてもよい。ここで、ポリゴン数をどの程度まで低下させるかはあらかじめ決められていてもよい。あるいは、実オブジェクト40-1が認識された領域のポリゴン数に応じて、どの程度ポリゴン数を低下させるかが決められてもよい。例えば、ポリゴン数の差分があらかじめ決められていて、実オブジェクト40-1が認識された領域のポリゴン数から当該差分だけポリゴン数が低下されてもよい。
 あるいは、実オブジェクト40-1が認識された領域の少なくとも一部の形状を所定の平面に射影することによって形状が簡易化されてもよい。所定の平面は特に限定されない。一例として、実オブジェクト40-1が認識された領域のうち、視野分析用撮像部111に最も近い位置を通過する平面(例えば、表示部150の表示面と平行な面、鉛直平面など)であってもよいし、実オブジェクト40-1が認識された領域の中心を通過する平面(例えば、表示部150の表示面と平行な面、鉛直平面など)であってもよい。
 また、他の一例として、デプスマップの解像度を低下させることによって、表示オブジェクトの生成精度が低下されてもよい。図6には、中距離(P2≦P<P1)に仮想オブジェクト30-2が配置される場合における第1の処理として、測距部124によって生成されたデプスマップ(第1のデプスマップ)に基づいて仮想オブジェクト30-2のうち実オブジェクト40-2の奥側に位置する第1の領域を算出し、第1の領域を仮想オブジェクト30-2から除去して第1の表示オブジェクト(仮想オブジェクト30-22)を生成する処理が示されている(視野80-22)。
 一方、図5には、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合における第2の処理として、測距部124によって生成されたデプスマップ(第1のデプスマップ)よりも低解像度のデプスマップ70-13(第2のデプスマップ)に基づいて仮想オブジェクト30-1のうち実オブジェクト40-1の奥側に位置する第2の領域を算出し、第2の領域を仮想オブジェクト30-1から除去して第2の表示オブジェクト(仮想オブジェクト30-12)を生成する処理が示されている。ここで、解像度をどの程度低下させるかは、あらかじめ決められていてよい。
 また、他の一例として、表示オブジェクトの生成するフレームレートを低下させることによって、表示オブジェクトの生成精度が低下されてもよい。例えば、中距離(P2≦P<P1)に仮想オブジェクト30-2が配置される場合における第1の処理は、第1のフレームレートで(第1の周期で)、仮想オブジェクト30-2のうち実オブジェクト40-2の奥側に位置する第1の領域を算出し、第1の領域を仮想オブジェクト30-2から除去して第1の表示オブジェクト(仮想オブジェクト30-22)を生成する処理であってよい。
 一方、遠距離(P>P1)に仮想オブジェクト30-1が配置される場合における第2の処理は、第1のフレームレートよりも低い第2のフレームレートで(第1の周期よりも長い周期で第2の周期で)、仮想オブジェクト30-1のうち実オブジェクト40-1の奥側に位置する第2の領域を算出し、第2の領域を仮想オブジェクトから除去して第2の表示オブジェクト(仮想オブジェクト)を生成する処理であってよい。
 続いて、二つ目の例について説明する。図7は、仮想オブジェクト30が近距離(P0≦P<P2)に配置される場合における表示制御の第1の例を説明するための図である。図8は、仮想オブジェクト30が近距離(P0≦P<P2)に配置される場合における表示制御の第2の例を説明するための図である。図9は、仮想オブジェクト30が近距離(P0≦P<P2)に配置される場合における表示制御の第3の例を説明するための図である。
 ここで、上記したように、図6に示した例では、仮想オブジェクト30-2が中距離(P2≦P<P1)に配置される場合を想定している。かかる場合、表示制御部126は、実オブジェクト40-1と第1の処理とに基づく第1の表示オブジェクトが仮想オブジェクトとして表示部150によって表示されるよう制御する。一方、図7~図9に示した例では、仮想オブジェクト30-3が近距離(P0≦P<P2)に配置される場合を想定している。かかる場合、表示制御部126は、実オブジェクト40-2と第2の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが仮想オブジェクトとして表示部150によって表示されるよう制御する。
 第1の処理および第2の処理は特に限定されない。しかし、上記したように、近距離(P0≦P<P2)に仮想オブジェクト30-3が配置される場合には、仮想オブジェクト30-3から遮蔽領域よりも広い領域が除去されることによって、領域除去後の仮想オブジェクトが表示オブジェクトとして生成されてよい。
 そこで、近距離(P0≦P<P2)に仮想オブジェクト30-3が配置される場合における第2の処理は、仮想オブジェクト30-3のうち、実オブジェクト40-3が認識された領域のサイズおよび位置の少なくとも一方が変更された変更後の領域の奥側に位置する第2の領域を算出し、第2の領域を仮想オブジェクト30-3から除去して第2の表示オブジェクトを生成する処理であってよい。
 実オブジェクト40-3が認識された領域が拡大された領域の奥側に位置する第2の領域が仮想オブジェクト30-3から除去されることによって、仮想オブジェクト30-3から遮蔽領域よりも広い領域が除去される。このときの拡大率は、一定であってもよいし、ユーザUの位置(すなわち、視野分析用撮像部111の位置)から実オブジェクト40-3の位置までが遠いほど、大きくてもよい。
 また、実オブジェクト40-3が認識された領域の位置が変更された変更後の領域が仮想オブジェクト30-3から除去されることによって、仮想オブジェクト30-3から遮蔽領域よりも広い領域が除去される。ここで、実オブジェクト40-3が認識された領域の位置が変更される方向は限定されない。しかし、実オブジェクト40-3として手が検出された場合、手は視野の下から上に伸びることが想定されるため、実オブジェクト40-3が認識された領域の位置が変更される方向が上方向であれば、仮想オブジェクト30-3から遮蔽領域よりも広い領域が除去される。
 一例として、図7には、近距離(P0≦P<P2)に仮想オブジェクト30-3が配置される場合における第2の処理として、デプスマップ70-31に基づいて、仮想オブジェクト30-3のうち、実オブジェクト40-3が認識された領域の位置が上方向に変更された領域の奥側に位置する第2の領域を算出し、第2の領域を仮想オブジェクト30-3から除去して第2の表示オブジェクト(仮想オブジェクト30-31)を生成する処理が示されている(視野80-31)。
 また、表示制御部126は、実オブジェクト40-3が認識された領域の位置が変更された変更後の領域のうち、実オブジェクト40-3が認識された領域と重ならない非重複領域に所定の画像が表示部150によって表示されるように制御する。図7には、所定の画像の例として、当該非重複領域に対応するデプスマップにおける領域の切り出し画像42-31が表示されている。このようにして切り出し画像42-31が表示されれば、切り出し画像42-31が、実オブジェクト40-3の影であるようにユーザUに見せることができる。
 実オブジェクト40-3が認識された領域の位置変更の度合い(切り出し画像42の幅に相当する量)は、一定であってもよいし、ユーザUの位置(すなわち、視野分析用撮像部111の位置)から実オブジェクト40-3の位置までが近いほど、大きくてもよい。図7および図8を参照すると、デプスマップ70-31に存在する実オブジェクト40-3よりもデプスマップ70-32に存在する実オブジェクト40-3のほうが、ユーザUまでの距離が近い。そのため、切り出し画像42-31の幅よりも切り出し画像42-32の幅が広くなっている(視野80-31、視野80-32)。
 また、図8および図9を参照すると、デプスマップ70-32に存在する実オブジェクト40-3よりもデプスマップ70-33に存在する実オブジェクト40-3のほうが、ユーザUまでの距離が近い。そのため、切り出し画像42-32の幅よりも切り出し画像42-33の幅が広くなっている(視野80-32、視野80-33)。
 図10は、仮想オブジェクト30が近距離(P0≦P<P2)に配置される場合における表示制御の第4の例を説明するための図である。図10に示したように、仮想オブジェクト30が近距離(P0≦P<P2)に配置される場合における第2の処理は、実オブジェクト40-3が認識された領域の位置に基づいて、第4の表示オブジェクトとして、表示部150に表示されるモデル43の位置を決定する処理を含んでもよい。さらに、当該第2の処理は、仮想オブジェクト30-3のうち実オブジェクト40-3が認識された領域と重ならない領域を第2の表示オブジェクト(仮想オブジェクト30-31)とする処理を含んでもよい。
 ここで、モデル43は、実オブジェクト40-3に対応する。図10に示した例では、実オブジェクト検出部122によって、実オブジェクト40-3が手であることが検出される。したがって、図10に示すように、表示制御部126は、手に対応するモデル43(手モデル)の位置を、実オブジェクト40-3が認識された領域の位置に基づいて決定する。例えば、表示制御部126は、実オブジェクト40-3が認識された領域の位置にモデル43が表示されるように表示部150を制御する。
 図11は、仮想オブジェクト30が近距離(P0≦P<P2)に配置される場合における表示制御の第5の例を説明するための図である。図11に示したように、仮想オブジェクト30が近距離(P0≦P<P2)に配置される場合における第2の処理は、仮想オブジェクト30-3の全体を第2の表示オブジェクト(仮想オブジェクト30-31)とし、第3の表示オブジェクトとして、実オブジェクト40-3が認識された領域の位置を指し示すポインタ44の位置を決定する処理であってよい。
 これによって、ユーザUは、ポインタ44を参照すれば、実オブジェクト40-3が認識された領域の位置を把握することができる。さらに、仮想オブジェクト30-3の全体が表示されるため、ユーザUにとって仮想オブジェクト30-3を触ったり操作しやすくなったりする可能性がある。
 以上、本実施形態に係る情報処理装置10の機能詳細について説明した。
 [1.3.情報処理装置の動作例]
 続いて、本実施形態に係る情報処理装置10の動作例について説明する。図12は、本実施形態に係る情報処理装置10の動作例を示すフローチャートである。なお、図12に示した動作例は、本実施形態に係る情報処理装置10の動作の一例を示したに過ぎない。したがって、本実施形態に係る情報処理装置10の動作は、図12に示した動作例に限定されない。
 図12に示すように、測距部124は、視野分析用撮像部111によって撮像された左画像および右画像に基づいて、デプスマップを生成する(S11)。また、アプリケーション実行部123は、仮想オブジェクトの仮想空間における位置を決定し、仮想オブジェクトの仮想空間における位置と視野分析用撮像部111の実空間における位置および姿勢とに基づいて、仮想オブジェクト30-1の視野における位置、および、視野分析用撮像部111と仮想オブジェクトとの距離を検出する。
 表示制御部126は、仮想オブジェクトが近距離に存在しない場合には(S12において「No」)、仮想オブジェクトが中距離に存在するか否かを判断する(S17)。表示制御部126は、仮想オブジェクトが中距離に存在する場合には(S17において「Yes」)、S16に動作を移行させる。一方、表示制御部126は、仮想オブジェクトが中距離に存在しない場合(すなわち、仮想オブジェクトが遠距離に存在する場合)(S17において「No」)、デプスマップの解像度が既に低下された場合には(S18において「Yes」)、S16に動作を移行させるが、デプスマップの解像度がまだ低下されていない場合には(S18において「No」)、生成されるデプスマップの解像度を低下させることを決定し、S11に動作を移行させる。
 実オブジェクト検出部122は、ステレオカメラの撮影範囲(視野)内に所定の実オブジェクトの例としての手が存在するか否かを判断する(S13)。表示制御部126は、実オブジェクト検出部122によって、ステレオカメラの撮影範囲内に手が存在しないと判断された場合(S13において「No」)、S15に動作を移行させる。一方、実オブジェクト検出部122は、ステレオカメラの撮影範囲内に手が存在すると判断された場合(S13において「Yes」)、デプスマップに基づいて手の位置(手とステレオカメラとの距離)を検出する。
 表示制御部126は、手の位置に応じてデプスマップの拡大率と位置とを決定する(S14)。表示制御部126は、決定した拡大率と位置とに応じたデプスマップをマスクとして影を描画する(S15)。すなわち、表示制御部126は、決定した拡大率と位置とに基づいて手が認識された領域が変更された変更後の領域のうち、手が認識された領域と重ならない非重複領域に、当該非重複領域に対応するデプスマップにおける領域の切り出し画像が、表示部150によって表示されるように制御する。
 表示制御部126は、仮想オブジェクト30-1の視野における位置、視野分析用撮像部111と仮想オブジェクト30-1との距離、および、デプスマップに基づいて、仮想オブジェクト30-1よりも手前にある実オブジェクトを認識することが可能である。そのため、表示制御部126は、は、デプスマップに基づいて仮想オブジェクトのうち実オブジェクトの奥側に位置する領域を仮想オブジェクトから除去して表示オブジェクトを生成する。表示制御部126は、生成した表示オブジェクトを仮想オブジェクトとして描画し(表示制御し)(S16)、S11に動作を移行させる。
 以上において、本実施形態に係る情報処理装置10の動作例について説明した。
 [1.4.各種の変形例]
 続いて、各種の変形例について説明する。上記した例では、表示制御部126は、手が認識された領域の位置に手モデルが表示されるように表示部150を制御する例について説明した。しかし、実オブジェクト検出部122によって手以外の実オブジェクト(例えば、形状が一定の形状に定まっている実オブジェクトなど)が検出された場合であっても、表示制御部126は、実オブジェクトに対応するモデルが表示されるように表示部150を制御してもよい。
 また、上記では、近距離(P0≦P<P2)に仮想オブジェクトが配置される場合、仮想オブジェクトから遮蔽領域よりも広い領域を除去することによって、領域除去後の仮想オブジェクトを表示オブジェクトとして生成する例を説明した。しかし、表示制御部126は、仮想オブジェクトと実オブジェクトとの距離に応じた濃さで実オブジェクトの影を表示させてもよい。例えば、表示制御部126は、ユーザUと実オブジェクトとの距離が近いほど実オブジェクトの影を薄く表示させてもよい。
 また、上記のようにして、本実施形態に係る情報処理装置10によって仮想オブジェクト30がユーザUに提示される。ここで、複数の仮想オブジェクト30の位置が同時にユーザUの視野に決定される場合もあり得る。このとき、複数の仮想オブジェクトそれぞれに基づく表示オブジェクトがすべて表示部150によって表示されるようにしてもよい。しかし、表示制御部126は、処理コストを低減させるため、ユーザUが注目している仮想オブジェクトに基づく表示オブジェクトだけが表示部150によって表示されるようにしてもよい。
 例えば、表示制御部126は、ユーザUと複数の仮想オブジェクト30それぞれとの距離が第1の距離である場合、複数の仮想オブジェクトから選択した仮想オブジェクトに基づく第1の表示オブジェクトが表示部150によって表示されるように制御してもよい。また、表示制御部126は、ユーザUと複数の仮想オブジェクト30それぞれとの距離が第2の距離である場合、複数の仮想オブジェクトから選択した仮想オブジェクトに基づく第2の表示オブジェクトが表示部150によって表示されるように制御してもよい。
 複数の仮想オブジェクトからどのようにして仮想オブジェクトが選択されるかは、限定されない。しかし、ユーザUの視線または手の位置に最も近い仮想オブジェクトをユーザUが注目している可能性がある。そこで、表示制御部126は、視線検出部125によって検出されたユーザUの視線の位置に最も近い仮想オブジェクトを複数の仮想オブジェクトから選択してもよい。あるいは、表示制御部126は、視野または実空間において、手の位置に最も近い仮想オブジェクトを複数の仮想オブジェクトから選択してもよい。
 また、上記では、第1の距離が中距離(P2≦P<P1)であり、第2の距離が遠距離(P>P1)である場合を説明した。第1の距離は、閾値Th1以上の距離であり、第2の距離は、閾値Th1を下回る距離である。このとき、閾値Th1は、状況に応じて変更されてもよい。例えば、上記したように、閾値Th1を下回る距離に仮想オブジェクトが配置される場合には、閾値Th1以上の距離に仮想オブジェクトが配置される場合よりも、高い精度に表示オブジェクトが生成される。したがって、処理コストを低減させたい状況が生じた場合には、閾値Th1の低下によって、表示オブジェクトが高い精度で生成されてしまう可能性を低下させるのがよい。
 例えば、表示制御部126は、情報処理装置10の動作モード、温度およびバッテリ残量の少なくともいずれか一つに基づいて、閾値Th1を制御してよい。例えば、情報処理装置10の動作モードが省電力モードである場合には、処理コストを低減させたい状況であることが想定される。そこで、表示制御部126は、情報処理装置10の動作モードが省電力モードである場合、閾値Th1を低下させるとよい。
 図13は、閾値Th1の制御例を説明するための図である。図13を参照すると、情報処理装置10の動作モードが通常モードである場合における閾値Th1が示されている。一方、情報処理装置10の動作モードが省電力モードである場合における閾値Th11が示されている(ユーザUが存在する位置P0から距離Th11だけ離れた位置が「位置P11」として示されている)。このように、表示制御部126は、情報処理装置10の動作モードが省電力モードである場合、閾値Th1を閾値Th11に低下させるとよい。なお、閾値Th11もあらかじめ決められていてよい。
 また、例えば、情報処理装置10の温度が所定の温度を上回る場合には、処理コストを低減させたい状況であることが想定される。そこで、表示制御部126は、情報処理装置10の温度が所定の温度を上回る場合、閾値Th1を低下させるとよい。情報処理装置10の温度は、どの位置の温度であってもよいが、情報処理装置10を動作させるプロセッサの温度であってもよい。また、情報処理装置10に温度計が内蔵されている場合、温度計によって情報処理装置10の温度が測定されればよい。
 また、例えば、情報処理装置10を動作させるためのバッテリ残量が所定の残量を下回る場合には、処理コストを低減させたい状況であることが想定される。そこで、表示制御部126は、情報処理装置10を動作させるためのバッテリ残量が所定の残量を下回る場合、閾値Th1を低下させるとよい。
 <2.ハードウェア構成例>
 次に、図14を参照して、本開示の実施形態に係る情報処理装置10のハードウェア構成例について説明する。図14は、本開示の実施形態に係る情報処理装置10のハードウェア構成例を示すブロック図である。
 図14に示すように、情報処理装置10は、CPU(Central Processing unit)901、ROM(Read Only Memory)903、およびRAM(Random Access Memory)905を含む。また、情報処理装置10は、ホストバス907、ブリッジ909、外部バス911、インターフェース913、入力装置915、出力装置917、ストレージ装置919、ドライブ921、接続ポート923、通信装置925を含んでもよい。さらに、情報処理装置10は、必要に応じて、撮像装置933、およびセンサ935を含んでもよい。情報処理装置10は、CPU901に代えて、またはこれとともに、DSP(Digital Signal Processor)またはASIC(Application Specific Integrated Circuit)と呼ばれるような処理回路を有してもよい。
 CPU901は、演算処理装置および制御装置として機能し、ROM903、RAM905、ストレージ装置919、またはリムーバブル記録媒体927に記録された各種プログラムに従って、情報処理装置10内の動作全般またはその一部を制御する。ROM903は、CPU901が使用するプログラムや演算パラメータなどを記憶する。RAM905は、CPU901の実行において使用するプログラムや、その実行において適宜変化するパラメータなどを一時的に記憶する。CPU901、ROM903、およびRAM905は、CPUバスなどの内部バスにより構成されるホストバス907により相互に接続されている。さらに、ホストバス907は、ブリッジ909を介して、PCI(Peripheral Component Interconnect/Interface)バスなどの外部バス911に接続されている。
 入力装置915は、例えば、マウス、キーボード、タッチパネル、ボタン、スイッチおよびレバーなど、ユーザによって操作される装置である。入力装置915は、ユーザの音声を検出するマイクロフォンを含んでもよい。入力装置915は、例えば、赤外線やその他の電波を利用したリモートコントロール装置であってもよいし、情報処理装置10の操作に対応した携帯電話などの外部接続機器929であってもよい。入力装置915は、ユーザが入力した情報に基づいて入力信号を生成してCPU901に出力する入力制御回路を含む。ユーザは、この入力装置915を操作することによって、情報処理装置10に対して各種のデータを入力したり処理動作を指示したりする。また、後述する撮像装置933も、ユーザの手の動き、ユーザの指などを撮像することによって、入力装置として機能し得る。このとき、手の動きや指の向きに応じてポインティング位置が決定されてよい。
 出力装置917は、取得した情報をユーザに対して視覚的または聴覚的に通知することが可能な装置で構成される。出力装置917は、例えば、LCD(Liquid Crystal Display)、PDP(Plasma Display Panel)、有機EL(Electro-Luminescence)ディスプレイ、プロジェクタなどの表示装置、ホログラムの表示装置、スピーカおよびヘッドホンなどの音声出力装置、ならびにプリンタ装置などであり得る。出力装置917は、情報処理装置10の処理により得られた結果を、テキストまたは画像などの映像として出力したり、音声または音響などの音声として出力したりする。また、出力装置917は、周囲を明るくするためライトなどを含んでもよい。
 ストレージ装置919は、情報処理装置10の記憶部の一例として構成されたデータ格納用の装置である。ストレージ装置919は、例えば、HDD(Hard Disk Drive)などの磁気記憶部デバイス、半導体記憶デバイス、光記憶デバイス、または光磁気記憶デバイスなどにより構成される。このストレージ装置919は、CPU901が実行するプログラムや各種データ、および外部から取得した各種のデータなどを格納する。
 ドライブ921は、磁気ディスク、光ディスク、光磁気ディスク、または半導体メモリなどのリムーバブル記録媒体927のためのリーダライタであり、情報処理装置10に内蔵、あるいは外付けされる。ドライブ921は、装着されているリムーバブル記録媒体927に記録されている情報を読み出して、RAM905に出力する。また、ドライブ921は、装着されているリムーバブル記録媒体927に記録を書き込む。
 接続ポート923は、機器を情報処理装置10に直接接続するためのポートである。接続ポート923は、例えば、USB(Universal Serial Bus)ポート、IEEE1394ポート、SCSI(Small Computer System Interface)ポートなどであり得る。また、接続ポート923は、RS-232Cポート、光オーディオ端子、HDMI(登録商標)(High-Definition Multimedia Interface)ポートなどであってもよい。接続ポート923に外部接続機器929を接続することで、情報処理装置10と外部接続機器929との間で各種のデータが交換され得る。
 通信装置925は、例えば、通信ネットワーク931に接続するための通信デバイスなどで構成された通信インターフェースである。通信装置925は、例えば、有線または無線LAN(Local Area Network)、Bluetooth(登録商標)、またはWUSB(Wireless USB)用の通信カードなどであり得る。また、通信装置925は、光通信用のルータ、ADSL(Asymmetric Digital Subscriber Line)用のルータ、または、各種通信用のモデムなどであってもよい。通信装置925は、例えば、インターネットや他の通信機器との間で、TCP/IPなどの所定のプロトコルを用いて信号などを送受信する。また、通信装置925に接続される通信ネットワーク931は、有線または無線によって接続されたネットワークであり、例えば、インターネット、家庭内LAN、赤外線通信、ラジオ波通信または衛星通信などである。
 撮像装置933は、例えば、CCD(Charge Coupled Device)またはCMOS(Complementary Metal Oxide Semiconductor)などの撮像素子、および撮像素子への被写体像の結像を制御するためのレンズなどの各種の部材を用いて実空間を撮像し、撮像画像を生成する装置である。撮像装置933は、静止画を撮像するものであってもよいし、また動画を撮像するものであってもよい。
 センサ935は、例えば、測距センサ、加速度センサ、ジャイロセンサ、地磁気センサ、光センサ、音センサなどの各種のセンサである。センサ935は、例えば情報処理装置10の筐体の姿勢など、情報処理装置10自体の状態に関する情報や、情報処理装置10の周辺の明るさや騒音など、情報処理装置10の周辺環境に関する情報を取得する。また、センサ935は、GPS(Global Positioning System)信号を受信して装置の緯度、経度および高度を測定するGPSセンサを含んでもよい。
 <3.むすび>
 以上説明したように、本開示の実施形態によれば、実空間内に配置された実オブジェクトの情報を取得する実空間情報取得部121と、ユーザと仮想オブジェクトの距離が第1の距離である場合、実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、ユーザと仮想オブジェクトの距離が第1の距離と異なる第2の距離である場合、実オブジェクトと第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが仮想オブジェクトとして表示装置によって表示されるよう制御する表示制御部126と、を備える、情報処理装置10が提供される。
 かかる構成によれば、ユーザと仮想オブジェクトとの距離に応じた適切な表示制御方法によって仮想オブジェクトの表示を制御することが可能となる。
 以上、添付図面を参照しながら本開示の好適な実施形態について詳細に説明したが、本開示の技術的範囲はかかる例に限定されない。本開示の技術分野における通常の知識を有する者であれば、請求の範囲に記載された技術的思想の範疇内において、各種の変更例または修正例に想到し得ることは明らかであり、これらについても、当然に本開示の技術的範囲に属するものと了解される。
 また、コンピュータに内蔵されるCPU、ROMおよびRAMなどのハードウェアを、上記した制御部120が有する機能と同等の機能を発揮させるためのプログラムも作成可能である。また、該プログラムを記録した、コンピュータに読み取り可能な記録媒体も提供され得る。
 例えば、上記した情報処理装置10の動作が実現されれば、各構成の位置は特に限定されない。情報処理装置10における各部の処理の一部はサーバ装置(不図示)によって行われてもよい。具体的な一例として、情報処理装置10における制御部120が有する各ブロックの一部または全部は、サーバ装置(不図示)などに存在していてもよい。例えば、情報処理装置10における実オブジェクト検出部122、アプリケーション実行部123、測距部124、および、視線検出部125の機能の一部または全部は、サーバ装置(不図示)などに存在していてもよい。
 また、本明細書に記載された効果は、あくまで説明的または例示的なものであって限定的ではない。つまり、本開示に係る技術は、上記の効果とともに、または上記の効果に代えて、本明細書の記載から当業者には明らかな他の効果を奏し得る。
 なお、以下のような構成も本開示の技術的範囲に属する。
(1)
 実空間内に配置された実オブジェクトの情報を取得する空間情報取得部と、
 ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御する表示制御部と、
 を備える、情報処理装置。
(2)
 前記第1の処理は、第1の精度によって前記第1の表示オブジェクトを生成する処理であり、
 前記第2の処理は、前記第1の精度よりも低い第2の精度によって前記第2の表示オブジェクトを生成する処理である、
 前記(1)に記載の情報処理装置。
(3)
 前記第1の処理は、第1のデプスマップに基づいて仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
 前記第2の処理は、前記第1のデプスマップよりも低解像度の第2のデプスマップに基づいて前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第2の領域を算出し、前記第2の領域を前記仮想オブジェクトから除去して前記第2の表示オブジェクトを生成する処理である、
 前記(2)に記載の情報処理装置。
(4)
 前記第1の処理は、仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
 前記第2の処理は、前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第2の領域を算出し、前記第2の領域を前記仮想オブジェクトから除去して前記第2の表示オブジェクトを生成する処理を、前記仮想オブジェクトおよび前記実オブジェクトが認識された領域の少なくとも一部の形状を簡易化してから行う処理である、
 前記(2)に記載の情報処理装置。
(5)
 前記簡易化は、前記少なくとも一部の形状のポリゴン数を低下させる処理を含む、
 前記(4)に記載の情報処理装置。
(6)
 前記簡易化は、前記少なくとも一部の形状を所定の形状に近似する処理を含む、
 前記(4)または(5)に記載の情報処理装置。
(7)
 前記簡易化は、前記少なくとも一部の形状を所定の平面に射影する処理を含む、
 前記(4)~(6)のいずれか一項に記載の情報処理装置。
(8)
 前記第1の処理は、第1のフレームレートで、仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
 前記第2の処理は、第1のフレームレートよりも低い第2のフレームレートで、前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第2の領域を算出し、前記第2の領域を前記仮想オブジェクトから除去して前記第2の表示オブジェクトを生成する処理である、
 前記(2)に記載の情報処理装置。
(9)
 前記第1の処理は、仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
 前記第2の処理は、前記仮想オブジェクトのうち、前記実オブジェクトが認識された領域のサイズおよび位置の少なくともいずれか一方が変更された変更後の領域の奥側に位置する第2の領域を算出し、前記第2の領域を前記仮想オブジェクトから除去して前記第2の表示オブジェクトを生成する処理である、
 前記(1)に記載の情報処理装置。
(10)
 前記表示制御部は、前記ユーザと前記仮想オブジェクトの距離が前記第2の距離である場合、前記変更後の領域のうち前記実オブジェクトが認識された領域と重ならない領域に所定の画像が前記表示装置によって表示されるように制御する、
 前記(9)に記載の情報処理装置。
(11)
 前記第1の処理は、前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
 前記第2の処理は、前記仮想オブジェクトを前記第2の表示オブジェクトとし、第3の表示オブジェクトとして、前記実オブジェクトが認識された領域の位置を指し示すポインタの位置を決定する処理である、
 前記(9)に記載の情報処理装置。
(12)
 前記第1の処理は、前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
 前記第2の処理は、前記実オブジェクトが認識された領域の位置に基づいて、第4の表示オブジェクトとして、前記実オブジェクトに対応するモデルの位置を決定し、前記仮想オブジェクトのうち前記実オブジェクトが認識された領域と重ならない領域を前記第2の表示オブジェクトとする処理である、
 前記(9)に記載の情報処理装置。
(13)
 前記表示制御部は、前記ユーザと複数の仮想オブジェクトそれぞれとの距離が第1の距離である場合、前記複数の仮想オブジェクトから選択した仮想オブジェクトに基づく前記第1の表示オブジェクトが前記表示装置によって表示されるように制御する、
 前記(1)~(12)のいずれか一項に記載の情報処理装置。
(14)
 前記表示制御部は、前記ユーザの視線または手の位置に最も近い仮想オブジェクトを前記複数の仮想オブジェクトから選択する、
 前記(13)に記載の情報処理装置。
(15)
 前記第1の距離は、閾値以上の距離であり、
 前記第2の距離は、前記閾値を下回る距離であり、
 前記表示制御部は、前記情報処理装置の動作モード、温度およびバッテリ残量の少なくともいずれか一つに基づいて、前記閾値を制御する、
 前記(1)~(14)のいずれか一項に記載の情報処理装置。
(16)
 前記表示制御部は、前記動作モードが省電力モードである場合、前記閾値を低下させる、
 前記(15)に記載の情報処理装置。
(17)
 前記表示制御部は、前記温度が所定の温度を上回る場合、前記閾値を低下させる、
 前記(15)に記載の情報処理装置。
(18)
 前記表示制御部は、前記バッテリ残量が所定の残量を下回る場合、前記閾値を低下させる、
 前記(15)に記載の情報処理装置。
(19)
 プロセッサにより、実空間内に配置された実オブジェクトの情報を取得することと、
 ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御することと、
 を含む、情報処理方法。
(20)
 コンピュータを、
 実空間内に配置された実オブジェクトの情報を取得する空間情報取得部と、
 ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御する表示制御部と、
 を備える情報処理装置として機能させるためのプログラム。
 10  情報処理装置
 111 視野分析用撮像部
 112 視線検出用撮像部
 120 制御部
 121 実空間情報取得部
 122 実オブジェクト検出部
 123 アプリケーション実行部
 124 測距部
 125 視線検出部
 126 表示制御部
 130 記憶部
 150 表示部
 30  仮想オブジェクト
 40  実オブジェクト
 41  矩形形状領域
 42  切り出し画像
 43  モデル
 44  ポインタ
 70  デプスマップ
 80  視野

Claims (20)

  1.  実空間内に配置された実オブジェクトの情報を取得する空間情報取得部と、
     ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御する表示制御部と、
     を備える、情報処理装置。
  2.  前記第1の処理は、第1の精度によって前記第1の表示オブジェクトを生成する処理であり、
     前記第2の処理は、前記第1の精度よりも低い第2の精度によって前記第2の表示オブジェクトを生成する処理である、
     請求項1に記載の情報処理装置。
  3.  前記第1の処理は、第1のデプスマップに基づいて仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
     前記第2の処理は、前記第1のデプスマップよりも低解像度の第2のデプスマップに基づいて前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第2の領域を算出し、前記第2の領域を前記仮想オブジェクトから除去して前記第2の表示オブジェクトを生成する処理である、
     請求項2に記載の情報処理装置。
  4.  前記第1の処理は、仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
     前記第2の処理は、前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第2の領域を算出し、前記第2の領域を前記仮想オブジェクトから除去して前記第2の表示オブジェクトを生成する処理を、前記仮想オブジェクトおよび前記実オブジェクトが認識された領域の少なくとも一部の形状を簡易化してから行う処理である、
     請求項2に記載の情報処理装置。
  5.  前記簡易化は、前記少なくとも一部の形状のポリゴン数を低下させる処理を含む、
     請求項4に記載の情報処理装置。
  6.  前記簡易化は、前記少なくとも一部の形状を所定の形状に近似する処理を含む、
     請求項4に記載の情報処理装置。
  7.  前記簡易化は、前記少なくとも一部の形状を所定の平面に射影する処理を含む、
     請求項4に記載の情報処理装置。
  8.  前記第1の処理は、第1のフレームレートで、仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
     前記第2の処理は、第1のフレームレートよりも低い第2のフレームレートで、前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第2の領域を算出し、前記第2の領域を前記仮想オブジェクトから除去して前記第2の表示オブジェクトを生成する処理である、
     請求項2に記載の情報処理装置。
  9.  前記第1の処理は、仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
     前記第2の処理は、前記仮想オブジェクトのうち、前記実オブジェクトが認識された領域のサイズおよび位置の少なくともいずれか一方が変更された変更後の領域の奥側に位置する第2の領域を算出し、前記第2の領域を前記仮想オブジェクトから除去して前記第2の表示オブジェクトを生成する処理である、
     請求項1に記載の情報処理装置。
  10.  前記表示制御部は、前記ユーザと前記仮想オブジェクトの距離が前記第2の距離である場合、前記変更後の領域のうち前記実オブジェクトが認識された領域と重ならない領域に所定の画像が前記表示装置によって表示されるように制御する、
     請求項9に記載の情報処理装置。
  11.  前記第1の処理は、前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
     前記第2の処理は、前記仮想オブジェクトを前記第2の表示オブジェクトとし、第3の表示オブジェクトとして、前記実オブジェクトが認識された領域の位置を指し示すポインタの位置を決定する処理である、
     請求項9に記載の情報処理装置。
  12.  前記第1の処理は、前記仮想オブジェクトのうち前記実オブジェクトの奥側に位置する第1の領域を算出し、前記第1の領域を前記仮想オブジェクトから除去して前記第1の表示オブジェクトを生成する処理であり、
     前記第2の処理は、前記実オブジェクトが認識された領域の位置に基づいて、第4の表示オブジェクトとして、前記実オブジェクトに対応するモデルの位置を決定し、前記仮想オブジェクトのうち前記実オブジェクトが認識された領域と重ならない領域を前記第2の表示オブジェクトとする処理である、
     請求項9に記載の情報処理装置。
  13.  前記表示制御部は、前記ユーザと複数の仮想オブジェクトそれぞれとの距離が第1の距離である場合、前記複数の仮想オブジェクトから選択した仮想オブジェクトに基づく前記第1の表示オブジェクトが前記表示装置によって表示されるように制御する、
     請求項1に記載の情報処理装置。
  14.  前記表示制御部は、前記ユーザの視線または手の位置に最も近い仮想オブジェクトを前記複数の仮想オブジェクトから選択する、
     請求項13に記載の情報処理装置。
  15.  前記第1の距離は、閾値以上の距離であり、
     前記第2の距離は、前記閾値を下回る距離であり、
     前記表示制御部は、前記情報処理装置の動作モード、温度およびバッテリ残量の少なくともいずれか一つに基づいて、前記閾値を制御する、
     請求項1に記載の情報処理装置。
  16.  前記表示制御部は、前記動作モードが省電力モードである場合、前記閾値を低下させる、
     請求項15に記載の情報処理装置。
  17.  前記表示制御部は、前記温度が所定の温度を上回る場合、前記閾値を低下させる、
     請求項15に記載の情報処理装置。
  18.  前記表示制御部は、前記バッテリ残量が所定の残量を下回る場合、前記閾値を低下させる、
     請求項15に記載の情報処理装置。
  19.  プロセッサにより、実空間内に配置された実オブジェクトの情報を取得することと、
     ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御することと、
     を含む、情報処理方法。
  20.  コンピュータを、
     実空間内に配置された実オブジェクトの情報を取得する空間情報取得部と、
     ユーザと仮想オブジェクトの距離が第1の距離である場合、前記実オブジェクトと第1の処理とに基づく第1の表示オブジェクトが前記仮想オブジェクトとして表示装置によって表示されるよう制御し、かつ、前記ユーザと前記仮想オブジェクトの距離が前記第1の距離と異なる第2の距離である場合、前記実オブジェクトと前記第1の処理とは異なる第2の処理とに基づく第2の表示オブジェクトが前記仮想オブジェクトとして前記表示装置によって表示されるよう制御する表示制御部と、
     を備える情報処理装置として機能させるためのプログラム。
PCT/JP2018/028442 2017-10-30 2018-07-30 情報処理装置、情報処理方法およびプログラム WO2019087491A1 (ja)

Priority Applications (2)

Application Number Priority Date Filing Date Title
DE112018005075.0T DE112018005075T5 (de) 2017-10-30 2018-07-30 Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren und programm
US16/757,982 US11176747B2 (en) 2017-10-30 2018-07-30 Information processing apparatus and information processing method

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2017208803 2017-10-30
JP2017-208803 2017-10-30

Publications (1)

Publication Number Publication Date
WO2019087491A1 true WO2019087491A1 (ja) 2019-05-09

Family

ID=66332488

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2018/028442 WO2019087491A1 (ja) 2017-10-30 2018-07-30 情報処理装置、情報処理方法およびプログラム

Country Status (3)

Country Link
US (1) US11176747B2 (ja)
DE (1) DE112018005075T5 (ja)
WO (1) WO2019087491A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7392512B2 (ja) 2020-02-20 2023-12-06 沖電気工業株式会社 情報処理装置、情報処理方法、プログラム、および情報処理システム

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11107280B1 (en) * 2020-02-28 2021-08-31 Facebook Technologies, Llc Occlusion of virtual objects in augmented reality by physical objects
JP2024509722A (ja) 2021-02-08 2024-03-05 サイトフル コンピューターズ リミテッド エクステンデッドリアリティにおけるユーザ相互作用
EP4295314A1 (en) 2021-02-08 2023-12-27 Sightful Computers Ltd Content sharing in extended reality
EP4288856A1 (en) 2021-02-08 2023-12-13 Sightful Computers Ltd Extended reality for productivity
WO2023009580A2 (en) 2021-07-28 2023-02-02 Multinarity Ltd Using an extended reality appliance for productivity
US11948263B1 (en) 2023-03-14 2024-04-02 Sightful Computers Ltd Recording the complete physical and extended reality environments of a user
US20230334795A1 (en) 2022-01-25 2023-10-19 Multinarity Ltd Dual mode presentation of user interface elements

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005038638A1 (ja) * 2003-10-21 2005-04-28 Sony Computer Entertainment Inc. 電子装置および電子装置の制御方法
JP2012238117A (ja) * 2011-05-10 2012-12-06 Canon Inc 情報処理装置、その処理方法及びプログラム
JP2015119373A (ja) * 2013-12-19 2015-06-25 ソニー株式会社 画像処理装置および方法、並びにプログラム
JP2017174125A (ja) * 2016-03-23 2017-09-28 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理システム、および情報処理方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4401728B2 (ja) * 2003-09-30 2010-01-20 キヤノン株式会社 複合現実空間画像生成方法及び複合現実感システム
JP4401727B2 (ja) * 2003-09-30 2010-01-20 キヤノン株式会社 画像表示装置及び方法
JP6121647B2 (ja) * 2011-11-11 2017-04-26 ソニー株式会社 情報処理装置、情報処理方法およびプログラム
TWI530909B (zh) * 2013-12-31 2016-04-21 財團法人工業技術研究院 影像合成系統及方法
JP6596883B2 (ja) 2015-03-31 2019-10-30 ソニー株式会社 ヘッドマウントディスプレイ及びヘッドマウントディスプレイの制御方法、並びにコンピューター・プログラム
US9898871B1 (en) * 2016-10-05 2018-02-20 Disney Enterprises, Inc. Systems and methods for providing augmented reality experience based on a relative position of objects
US10748342B2 (en) * 2018-06-19 2020-08-18 Google Llc Interaction system for augmented reality objects

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2005038638A1 (ja) * 2003-10-21 2005-04-28 Sony Computer Entertainment Inc. 電子装置および電子装置の制御方法
JP2012238117A (ja) * 2011-05-10 2012-12-06 Canon Inc 情報処理装置、その処理方法及びプログラム
JP2015119373A (ja) * 2013-12-19 2015-06-25 ソニー株式会社 画像処理装置および方法、並びにプログラム
JP2017174125A (ja) * 2016-03-23 2017-09-28 株式会社ソニー・インタラクティブエンタテインメント 情報処理装置、情報処理システム、および情報処理方法

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7392512B2 (ja) 2020-02-20 2023-12-06 沖電気工業株式会社 情報処理装置、情報処理方法、プログラム、および情報処理システム

Also Published As

Publication number Publication date
US20200342671A1 (en) 2020-10-29
US11176747B2 (en) 2021-11-16
DE112018005075T5 (de) 2020-08-06

Similar Documents

Publication Publication Date Title
WO2019087491A1 (ja) 情報処理装置、情報処理方法およびプログラム
US11194388B2 (en) Visibility improvement method based on eye tracking, machine-readable storage medium and electronic device
JP6780642B2 (ja) 情報処理装置、情報処理方法及びプログラム
US10783654B2 (en) Information processing apparatus, information processing method, and recording medium
CN106327584B (zh) 一种用于虚拟现实设备的图像处理方法及装置
JPWO2017183346A1 (ja) 情報処理装置、情報処理方法、及びプログラム
TW201337830A (zh) 資訊處理裝置,資訊處理方法及程式
JP7005161B2 (ja) 電子機器及びその制御方法
US10771707B2 (en) Information processing device and information processing method
US10964045B2 (en) Information processing device, information processing method, and individual imaging device for measurement of a size of a subject
WO2019130708A1 (ja) 情報処理装置、情報処理方法及びプログラム
US11443719B2 (en) Information processing apparatus and information processing method
JP7156301B2 (ja) 情報処理装置、情報処理方法およびプログラム
KR20190129982A (ko) 전자기기 및 그 제어 방법
JP6686319B2 (ja) 画像投影装置及び画像表示システム
US20220413295A1 (en) Electronic device and method for controlling electronic device

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

Country of ref document: EP

Kind code of ref document: A1

122 Ep: pct application non-entry in european phase

Ref document number: 18874282

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP