The present technology relates to an information processing apparatus, an information processing method, and a recording medium that are applicable to image display.
Patent Literature 1 describes an information processing apparatus that displays a stereoscopic image, in a region corresponding to a distance from a lower end to an upper end of a display surface, on which a display unit displays a stereoscopic image, and to an angle formed by a horizontal plane in real space and the display surface, such that a first plane parallel to the horizontal plane is observed. This is designed to suppress a burden on a user who observes the stereoscopic image (paragraphs [0025] to [0057] of the specification, FIG. 4, and the like of Patent Literature 1).
There is a demand for a technology capable of providing a high-quality viewing experience in such a device that displays a stereoscopic image.
In view of the circumstances as described above, it is an object of the present technology to provide an information processing apparatus, an information processing method, and a recording medium that are capable of providing a high-quality viewing experience.
In order to achieve the above object, an information processing apparatus according to an embodiment of the present technology includes a display controller.
The display controller switches a display format of a virtual object on the basis of viewpoint information of a user who visually recognizes a virtual space and position information of the virtual object displayed within the virtual space.
In such an information processing apparatus, the display format of the virtual object is switched on the basis of the viewpoint information of the user who visually recognizes the virtual space and the position information of the virtual object displayed within the virtual space. This makes it possible to provide a high-quality viewing experience.
The virtual space may include a first region and a second region. In this case, the display controller may switch the display format of the virtual object displayed in the first region.
The information processing apparatus may further include a determination unit that determines whether or not the virtual object is a target of the switching of the display format.
The determination unit may determine whether or not the virtual object exists in the first region on the basis of the position information, and if the virtual object exists in the first region, may set the virtual object as the target of the switching of the display format.
The determination unit may determine whether or not the virtual object traverses a boundary of the first region on the basis of the position information, and if the virtual object traverses the first region, may set the virtual object as the target of the switching of the display format.
The determination unit may determine whether or not the viewpoint information in the virtual object existing in the first region is changed on the basis of the viewpoint information, and if the viewpoint information is changed, may set the virtual object as the target of the switching of the display format.
The determination unit may determine whether or not the position information of the virtual object existing in the first region is changed on the basis of the position information, and if the position information is changed, may set the virtual object as the target of the switching of the display format.
The determination unit may determine whether or not the virtual object existing in the first region exists within a field of view of the user on the basis of the viewpoint information and the position information, and if the virtual object exists in the field of view of the user, may set the virtual object as the target of the switching of the display format.
The information processing apparatus may further include a calculation unit that calculates a parallax of the user with respect to the virtual object set as the target of the switching of the display format.
The display controller may switch the display format of the virtual object set as the target of the switching of the display format on the basis of a calculation result by the calculation unit.
The virtual object may include a stereoscopic image and a planar image. In this case, the switching of the display format may include at least one of switching of the virtual object from the stereoscopic image to the planar image or switching of the virtual object from the planar image to the stereoscopic image.
If an amount of change in parallax of the user with respect to the virtual object of the stereoscopic image exceeds a threshold, the virtual object being set as the target of the switching of the display format, the display controller may switch the virtual object set as the target of the switching of the display format from the stereoscopic image to the planar image.
If an amount of change in parallax of the user with respect to the virtual object of the planar image exceeds a threshold, the virtual object being set as the target of the switching of the display format, the display controller may maintain the display format of the virtual object set as the target of the switching of the display format.
If an amount of change in parallax of the user with respect to the virtual object of the planar image does not exceed a threshold, the virtual object being set as the target of the switching of the display format, the display controller may switch the virtual object set as the target of the switching of the display format from the planar image to the stereoscopic image.
If an amount of change in parallax of the user with respect to the virtual object of the stereoscopic image does not exceed a threshold, the virtual object being set as the target of the switching of the display format, the display controller may maintain the display format of the virtual object set as the target of the switching of the display format.
The determination unit may determine whether or not an amount of change in parallax of the user with respect to the virtual object exceeds a threshold within a predetermined time, and if the amount of change in parallax of the user exceeds the threshold within the predetermined time, may set the virtual object as the target of the switching of the display format. An information processing method according to an embodiment of the present technology is an information processing method executed by a computer system, the method including switching a display format of a virtual object on the basis of viewpoint information of a user who visually recognizes a virtual space and position information of the virtual object displayed within the virtual space.
A recording medium according to an embodiment of the present technology is a recording medium, on which a program is described, the program causing a computer system to execute the following step of switching a display format of a virtual object on the basis of viewpoint information of a user who visually recognizes a virtual space and position information of the virtual object displayed within the virtual space.
Hereinafter, embodiments according to the present technology will be described with reference to the drawings.
As shown in A of
The glasses-free stereoscopic display 10 is an image display apparatus capable of displaying a planar image and a stereoscopic image in a virtual space.
For example, the glasses-free stereoscopic display 10 includes a display unit, a user detection unit (not shown), and the like.
For example, the display unit is a display that displays a planar image and a stereoscopic image.
For example, the user detection unit detects viewpoint information of a user who visually recognizes a virtual space. The viewpoint information includes a position of a left eye and a position of a right eye of the user. In addition to that information, a line of sight direction of the left eye, a line of sight direction of the right eye, a user's field of view, a user's posture and face, and the like may be detected as the viewpoint information.
Further, an acceleration sensor, a gyro sensor, a magnetic sensor, or the like for detecting a posture of a display serving as the display unit may be mounted. Further, the user detection unit may be constituted by a camera, a depth camera, a motion sensor, or the like, or may be implemented by a configuration capable of tracking a user.
The information processing apparatus 20 includes a CPU 21, a GPU 22, and an HDD or an SSD 23. In addition to this, the information processing apparatus 20 includes hardware necessary for the configuration of a computer, for example, a processor such as a DSP, memories such as a ROM and a RAM, and a storage device. For example, the CPU loads a program according to the present technology, which is recorded in advance on the ROM or the like, to the RAM and executes the program, so that an information processing method according to the present technology is executed.
For example, it is possible to achieve the information processing apparatus 20 by any computer such as a PC. As a matter of course, hardware such as a FPGA or an ASIC may be used.
In this embodiment, the CPU executes a predetermined program, thus configuring a display controller as a functional block. As a matter of course, in order to implement a functional block, dedicated hardware such as an integrated circuit (IC) may be used.
The program is installed on the information processing apparatus 20, for example, via various recording media. Alternatively, the program may be installed via the Internet or the like.
The type or the like of recording media on which programs are recorded is not limited, and any computer-readable recording media may be used. For example, any non-transitory computer-readable recording media may be used.
The information processing apparatus 20 switches a display format of a virtual object on the basis of the viewpoint information of the user and position information of a virtual object displayed in a virtual space. In this embodiment, the virtual object includes a stereoscopic image and a planar image. In other words, display-format switching includes switching from 3D display to 2D display of a virtual object, and switching from 2D display to 3D display of a virtual object.
The virtual space is a space displayed by the display unit capable of displaying a stereoscopic image and a planar image. In this embodiment, the virtual space is divided into the inside of a display region and the outside of the display region. Typically, the display region is set according to the size of the display unit of the glasses-free stereoscopic display 10. In other words, the display region is set according to the size or angle of the display (see
In this embodiment, the information processing apparatus 20 switches the display format of a virtual object displayed on the outside of the display region. As shown in B of
Similarly, when the amount of change in position of a user's viewpoint with respect to a 2D-displayed virtual object or of the virtual object is below a threshold, the information processing apparatus 20 changes the 2D-displayed virtual object into a 3D-displayed virtual object. Further, when the amount of change in position of a user's viewpoint with respect to a 2D-displayed virtual object or of the virtual object exceeds a threshold, the information processing apparatus 20 maintains the 2D display.
As shown in
In this embodiment, the inside of the display region 12 is set according to the size of the display surface 11. In other words, in
Further, the outside of the display region 13 is a range excluding the inside of the display region 12 within the virtual space.
In the case of the glasses-free stereoscopic display 10 as shown in
Further, in the case of the glasses-free stereoscopic display 10, when a plurality of virtual objects is disposed in the depth direction (direction of short side A×cosθ) and if the virtual objects with a large parallax are displayed instantaneously (e.g., 1 fps) on the far side, fusion is difficult to occur and the virtual objects appear to be displayed doubly, which causes motion sickness of the user.
In the present invention, display-format switching from 3D display to 2D display and from 2D display to 3D display is dynamically performed on the basis of the position of the user's viewpoint and the movement of the virtual object. This makes it possible to maintain the space on the inside of the display region 12 and eliminate limitations in the content production.
Further, in the present invention, if there is a virtual object displayed on the outside of the display region 13 and exceeding a threshold of a parallax, the virtual object is rendered as a 2D image matched with the position of the user's viewpoint on the outside of the display region 13, and is used as a background texture for the inside of the display region 12 to be displayed like a diorama background. This makes it possible to prevent a user's viewing experience from being impaired.
As shown in A of
At that time, it is assumed that the amount of change in parallax of the user 14 with respect to the virtual object 16 traversing the boundary of the inside of the display region 12 exceeds a threshold. In this case, a display controller 28, which will be described later with reference to
In such a manner, if the display format of the virtual object is switched in accordance with the parallax in real time, and a 2D-displayed background image following the viewpoint position is generated, a high-quality viewing experience can be achieved.
As shown in
The user information acquisition unit 24 acquires information regarding a user who visually recognizes a virtual space. In this embodiment, the user information acquisition unit 24 acquires user's viewpoint information from user's image information acquired by the user detection unit (e.g., camera) mounted on the glasses-free stereoscopic display 10.
The viewpoint information such as the position of the eye, the line of sight, the field of view, and the like acquired by the user information acquisition unit 24 is supplied to the determination unit 26 and the calculation unit 27.
Note that, in this embodiment, the position of the user's eye or virtual object represents a position at coordinate values (e.g., XYZ coordinate values) determined by an absolute coordinate system (world coordinate system) or coordinate values (e.g., xyz coordinate values or uvd coordinate values) determined by a local coordinate system with a predetermined point (e.g., glasses-free stereoscopic display 10) as a reference (origin point).
The content information acquisition unit 25 acquires information regarding the content displayed by the glasses-free stereoscopic display 10. In this embodiment, the content information acquisition unit 25 acquires the position or shape of a virtual object in the virtual space.
The position or shape of the virtual object acquired by the content information acquisition unit 25 is supplied to the determination unit 26 and the calculation unit 27.
The determination unit 26 determines whether or not the virtual object is a target of the switching of the display format. In this embodiment, the determination unit 26 determines whether or not the virtual object is located on the outside of the display region. Further, in this embodiment, the determination unit 26 performs various determinations on the virtual object located outside the display region and determines whether or not the virtual object is a target of the switching of the display format. Specific determination methods are classified into the following four patterns.
First pattern in a case where the virtual object traverses the display region from the inside to the outside of the display region or moves from the inside of the display region to the outside of the display region (Step 104 of
Second pattern in a case where the position of a user's viewpoint with respect to the virtual object is changed (Step 106 of
Third pattern in a case where the position of the virtual object on the outside of the display region is changed (Step 108 of
Fourth pattern including at least two of the first pattern, the second pattern, or the third pattern described above. Note that, in this embodiment, traversing the display region from the inside to the outside of the display region means a state in which the virtual object is over the boundary between the inside of the display region and the outside of the display region, and a state in which the virtual object is stationary.
A determination result determined by the determination unit 26 is supplied to the calculation unit 27. Note that the determination by the determination unit 26 is performed on each virtual object in the content.
The calculation unit 27 calculates a user's parallax with respect to the virtual object serving as a target of the switching of the display format, which is determined by the determination unit 26. In this embodiment, the calculation unit 27 calculates the amount of change in user's parallax on the basis of the determination result of the virtual object (first to four patterns).
A calculation result calculated by the calculation unit 27 is supplied to the display controller 28.
The display controller 28 switches the display format of the virtual object on the basis of the viewpoint information of the user who visually recognizes the virtual space, and the position information of the virtual object displayed in the virtual space. In this embodiment, when the amount of change in parallax calculated by the calculation unit 27 exceeds a threshold, the display controller 28 changes the 3D-displayed virtual object into a 2D-displayed virtual object.
Further, in this embodiment, when the amount of change in parallax calculated by the calculation unit 27 does not exceed a threshold, the display controller 28 changes the 2D-displayed virtual object into a 3D-displayed virtual object.
Note that, in this embodiment, the inside of the display region 12 corresponds to a first region included in the virtual space.
Note that, in this embodiment, the outside of the display region corresponds to a second region included in the virtual space.
Note that, in this embodiment, the determination unit 26 corresponds to a determination unit that determines whether or not the virtual object is a target of the switching of the display format.
Note that, in this embodiment, the calculation unit 27 corresponds to a calculation unit that calculates a user's parallax with respect to the virtual object serving as a target of the switching of the display format.
Note that, in this embodiment, the display controller 28 corresponds to a display controller that switches the display format of the virtual object on the basis of the viewpoint information of the user who visually recognizes the virtual space, and the position information of the virtual object displayed in the virtual space.
As shown in
If a virtual object exists on the outside of the display region (YES in Step 102), the determination unit 26 determines whether or not the virtual object exists in a user's field of view on the basis of the user's viewpoint information (Step 103).
If the virtual object exists in the user's field of view (YES in Step 103), the determination unit 26 determines whether or not the virtual object traverses the boundary in the display region on the basis of the position information of the virtual object (Step 104). If the virtual object traverses the boundary in the display region (YES in Step 104), that virtual object is added to parallax calculation targets (Step 105).
As shown in
The calculation unit 27 calculates the amount of change in parallax of the rock 32 added to the parallax calculation targets. When the amount of change in parallax is equal to or larger than a threshold, the display controller 28 switches the 3D-displayed rock 32 to be 2D-displayed. In other words, the display controller 28 changes a part of the rock 32 into 2D display, like an overhead view 19 shown in
Further, the determination unit 26 determines whether or not the position of the user's viewpoint is changed on the basis of the user's viewpoint information (Step 106). If the position of the user's viewpoint is changed (YES in Step 106), that virtual object is added to parallax calculation targets (Step 107).
In
The calculation unit 27 calculates the amount of change in parallax of the user 42 at the tree 41. When the amount of change in parallax is equal to or larger than a threshold, the display controller 28 switches the 3D-displayed tree 41 to be 2D-displayed.
Further, the determination unit 26 determines whether or not the position of the virtual object is changed on the basis of the position information of the virtual object (Step 108). If the position of the virtual object is changed (YES in Step 108), that virtual object is added to parallax calculation targets (Step 109).
In
The calculation unit 27 calculates the amount of change in parallax of the tree 50 added to parallax calculation targets. When the amount of change in parallax is equal to or larger than a threshold, the display controller 28 switches the 3D-displayed tree 50 to be 2D-displayed. Further, the display controller 28 displays a 2D image of the tree 50 corresponding to the position (angle) as viewed from the user 51.
In this case, it is assumed that a user 62 moves.
Since the position of the user's viewpoint is changed, the determination unit 26 adds the virtual objects 60 and the virtual objects 61 to parallax calculation targets. The display controller 28 switches the display format depending on whether or not the amount of change in parallax of each virtual object exceeds a threshold. Further, the display controller 28 displays 2D images of the virtual objects corresponding to the positions at which the 2D-displayed virtual objects 60 and virtual objects newly 2D-displayed are viewed from the user 62.
If a parallax calculation target exists in the determinations in Steps 104, 106, and 108 (YES in Step 110), the calculation unit 27 calculates the amount of change in parallax (Step 111).
In this embodiment, the amount of change in parallax is represented by the following expression.
Amount of change in parallax angle Δd=|Current parallax angle d−Previous parallax angle d′|
Further, the method of calculating a parallax angle is represented by the following expression (Math. 1). Note that θ is 0<θ<π.
As shown in
The calculation unit 27 calculates a current parallax angle d and a previous parallax angle d′ from the state of
As shown in
The calculation unit 27 calculates a current parallax angle d and a previous parallax angle d′ from the state of
If the amount of change in parallax calculated by the calculation unit 27 exceeds a threshold (YES in Step 112), the display controller 28 changes the virtual object 75 to be 2D-displayed (Step 113). In this case, the display controller 28 renders a 2D image of the virtual object 75 to serve as a background on the wall surface in accordance with the position of the user's viewpoint.
If the amount of change in parallax calculated by the calculation unit 27 is equal to or smaller than a threshold (NO in Step 112), the display controller 28 switches the 2D-displayed virtual object to be 3D-displayed, or maintains the display format of the 3D-displayed virtual object (Step 114).
Hereinabove, the information processing apparatus 20 according to this embodiment switches the display format of the virtual object on the basis of the viewpoint information of a user who visually recognizes the virtual space and the position information of the virtual object displayed in the virtual space. This makes it possible to achieve a high-quality viewing experience.
Conventionally, when content using a 3D CG object is displayed on a glasses-free stereoscopic display that is a glasses-free 3D display, the user takes a viewing posture for viewing the display from a higher point of view. So, if a space matched with the size of the display is defined, a stereoscopic effect is increased. However, if a virtual object is displayed outside the space, the space is not recognized, and the stereoscopic effect is degraded. Further, in the case of the glasses-free stereoscopic display, when a plurality of virtual objects is disposed in a depth direction and if the virtual objects with a large parallax are displayed instantaneously on the far side, fusion is difficult to occur and the virtual objects appear to be displayed doubly, which causes motion sickness of the user.
In the present technology, with the virtual objects displayed outside the display region as targets, if a parallax equal to or larger than any threshold occurs instantaneously in those virtual objects, a virtual object outside the display region is two-dimensionally rendered on the wall surface within the display region, so that the change in parallax is eliminated. At that time, if the virtual object outside the display region is displayed as an image of a certain fixed viewpoint on the wall surface, the inside and outside of the display region are seen in different ways, and thus the virtual object outside the display region is rendered in real time on the wall surface in accordance with the position of the user's viewpoint.
In other words, in the present technology, the display-format switching in which, regarding a virtual object located over the inside and outside of the display region, a portion inside the display region is 3D-displayed, a portion outside the display region is concealed by the wall surface, and an image projected onto the wall surface is presented to the user, and real-time 2D background generation according to the viewpoint position are performed.
The present technology is not limited to the embodiment described above and can achieve various other embodiments.
In the embodiment described above, a virtual object located within the field of view is subjected to a determination and is added to parallax calculation targets. The present technology is not limited to this, and the determination and calculation of the amount of change in parallax angle may be performed on all of the displayed virtual objects.
In the embodiment described above, a parallax calculation target is added by the determinations in Step 104, Step 106, and Step 108. The present technology is not limited to this, and virtual objects may be added to parallax calculation targets by various methods. For example, the number of virtual objects added to parallax calculation targets may be set in accordance with the specifications such as an arithmetic capability or resolution of a display device such as the glasses-free stereoscopic display 10. Further, for example, when the number of virtual objects added to parallax calculation targets exceeds a certain number, the virtual objects may be 2D-displayed without calculating the amount of change in parallax.
In the embodiment described above, the glasses-free stereoscopic display 10 is used as a 3D display. The present technology is not limited to this, and a fully-immersive head mounted display (HMD) or a video see-through head mounted display may be used.
If a virtual object within a virtual space is displayed as a stereoscopic video by using a binocular parallax on a fully-immersive head mounted display, a parallax is calculated for a virtual object outside of a region having a radius of any distance centering on a viewpoint position, among virtual objects in the field of view (virtual objects displayed on HMD).
Note that the distance may be set by an application developer or may be set by a user (viewer) via a setting menu or the like.
Further, in a video see-through head mounted display, if a video input from a stereo camera installed on the front side is displayed on each of the left eye and the right eye to perform a stereoscopic parallax using a binocular parallax, a parallax is calculated for a virtual object outside of a region having a radius of any distance centering on a viewpoint position, among virtual objects in the field of view (virtual objects displayed on HMD).
Note that the distance may be set by an application developer or may be set by a user (viewer) via a setting menu or the like.
Note that Step 201 to Step 212 shown in
If the amount of change in parallax is equal to or smaller than a threshold (NO in Step 212), a 2D rendering screen (billboard) corresponding to the wall surface of the glasses-free stereoscopic display 10 is created (Step 213). In this embodiment, the display controller 28 creates a 2D rendering screen centering on an intersection between a line, which connects a viewpoint position and an virtual object serving as a parallax calculation target, and a boundary surface of the display region.
The display controller 28 projects a 2D-displayed virtual object, which is suitable for a manner that 3D display according to the viewpoint position is seen, in real time on the created 2D rendering screen (Step 214).
As shown in
In
In this case, as shown in Step 213 of
The display controller 28 projects a 2D-displayed virtual object 82, which is suitable for a manner that 3D display according to the viewpoint position 80 is seen, in real time on the 2D rendering screen 83.
Note that the 2D rendering screen 83 is constantly directed to the viewpoint position 80 (user), constantly centering on the intersection 85 between the line 84, which connects the viewpoint position 80 and the virtual object 82, and the boundary surface of the display region 81. Further, the 2D rendering screen 83 may be transmissive.
The constituent elements such as the determination unit, the calculation unit, and the display controller, the flows of the display-format switching, and the like described with reference to the drawings are merely embodiments and can be discretionarily modified without departing from the gist of the present technology. In other words, any other constituent elements, algorithms, and the like for implementing the present technology may be adopted.
Further, the information processing apparatus, the information processing method, and the recording medium according to the present technology can be executed not only in a computer system including a single computer but also in a computer system in which a plurality of computers operates in conjunction with each other. Note that, in the present disclosure, a system means a collection of a plurality of constituent elements (apparatuses, modules (components), and the like), and whether or not all the constituent elements are in the same housing is not limited. Therefore, a plurality of apparatuses accommodated in separate housings and connected to each other through a network, and a single apparatus in which a plurality of modules is accommodated in a single housing are both the system.
The execution of the information processing apparatus, the information processing method, and the recording medium according to the present technology by a computer system include, for example, both a case where the determination of a virtual object, the calculation of a parallax angle, the display-format switching, and the like are executed by a single computer and a case where each process is executed by a different computer. Further, the execution of each process by a predetermined computer includes causing another computer to execute a part or all of the processes and acquiring a result thereof.
In other words, the information processing apparatus, the information processing method, and the recording medium according to the present technology are also applicable to a configuration of cloud computing in which a single function is shared and cooperatively processed by a plurality of apparatuses through a network.
Note that the effects described in the present disclosure are not limitative but are merely illustrative, and other effects may be provided. The description on the plurality of effects does not mean that those effects are not necessarily exerted at the same time. It means that at least any of the effects described above is obtained depending on conditions or the like, and as a matter of course, effects not described in the present disclosure may be exerted.
At least two of the characteristic portions according to each embodiment described above can be combined. In other words, the various characteristic portions described in each embodiment may be discretionarily combined without distinguishing between the embodiments.
Note that the present technology may also take the following configurations.
(1) An information processing apparatus, including
| Number | Date | Country | Kind |
|---|---|---|---|
| 2021-080232 | May 2021 | JP | national |
| Filing Document | Filing Date | Country | Kind |
|---|---|---|---|
| PCT/JP2022/000675 | 1/12/2022 | WO |