WO2017195513A1 - 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム - Google Patents
情報処理装置、情報処理システム、および情報処理方法、並びにプログラム Download PDFInfo
- Publication number
- WO2017195513A1 WO2017195513A1 PCT/JP2017/014549 JP2017014549W WO2017195513A1 WO 2017195513 A1 WO2017195513 A1 WO 2017195513A1 JP 2017014549 W JP2017014549 W JP 2017014549W WO 2017195513 A1 WO2017195513 A1 WO 2017195513A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- virtual viewpoint
- virtual
- viewpoint image
- user
- virtual camera
- Prior art date
- Legal status (The legal status 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 status listed.)
- Ceased
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/302—Image reproducers for viewing without the aid of special glasses, i.e. using autostereoscopic displays
- H04N13/31—Image reproducers for viewing without the aid of special glasses, i.e. using autostereoscopic displays using parallax barriers
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—3D [Three Dimensional] image rendering
- G06T15/10—Geometric effects
- G06T15/20—Perspective computation
- G06T15/205—Image-based rendering
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/10—Processing, recording or transmission of stereoscopic or multi-view image signals
- H04N13/106—Processing image signals
- H04N13/128—Adjusting depth or disparity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/366—Image reproducers using viewer tracking
- H04N13/368—Image reproducers using viewer tracking for two or more viewers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/141—Systems for two-way working between two video terminals, e.g. videophone
- H04N7/147—Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/14—Systems for two-way working
- H04N7/15—Conference systems
- H04N7/157—Conference systems defining a virtual conference space and using avatars or agents
Definitions
- the present disclosure relates to an information processing apparatus, an information processing system, an information processing method, and a program. More specifically, for example, the present invention relates to an information processing apparatus, an information processing system, an information processing method, and a program that transmit images and sounds by bidirectional communication via a network and execute bidirectional communication.
- Bidirectional communication systems such as a video conference system that transmits and receives images and audio by bidirectional communication via a network are used in various fields.
- high-definition large-sized displays are often used, and the quality of images and sounds communicated over the network has been improved.
- Communication with remote users displayed on the display can be performed in the same conference room. It is possible to do as if you are doing.
- Patent Document 1 Japanese Patent Laid-Open No. 2014-86775.
- Patent Document 1 discloses a configuration in which a display image of a display unit is displayed as a three-dimensional model, and for example, the orientation of a display person is changed according to the movement of a viewer. With the configuration disclosed in this document, a three-dimensional image can be observed by changing the display image according to the movement of the viewer. However, for example, the position of the person displayed on the display unit is fixed at one position on the display and is observed as a three-dimensional image showing an unnatural movement.
- an image to be displayed on a display unit (display) used in a two-way communication system is displayed as if it were on the spot.
- An object is to provide an information processing apparatus, an information processing system, an information processing method, and a program that can be displayed.
- the first aspect of the present disclosure is: A virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of the virtual camera that captures the virtual viewpoint image based on viewing position information of the viewing user of the virtual viewpoint image; A virtual viewpoint image generation unit that generates a virtual viewpoint image corresponding to a captured image from the virtual viewpoint position; The virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user, The information processing apparatus generates a virtual viewpoint image in which a shooting direction is set to a virtual camera shooting direction setting point C set at a position different from the subject user.
- the second aspect of the present disclosure is: A receiving unit for receiving viewing position information of the viewing user of the virtual viewpoint image; A virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of a virtual camera that captures a virtual viewpoint image based on the viewing position information; A virtual viewpoint image generation unit that generates a virtual viewpoint image corresponding to a photographed image from the virtual viewpoint position; A transmission unit that transmits the virtual viewpoint image generated by the virtual viewpoint image generation unit to the device on the viewing user side; The virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user, The information processing apparatus generates a virtual viewpoint image in which a shooting direction is set to a virtual camera shooting direction setting point C set at a position different from the subject user.
- the third aspect of the present disclosure is: A viewing position detecting unit for detecting viewing position information of the viewing user of the virtual viewpoint image; A virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of a virtual camera that captures a virtual viewpoint image based on the viewing position information; A virtual viewpoint image generation unit that generates a virtual viewpoint image corresponding to a captured image from the virtual viewpoint position; The virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user, The information processing apparatus generates a virtual viewpoint image in which a shooting direction is set to a virtual camera shooting direction setting point C set at a position different from the subject user.
- the fourth aspect of the present disclosure is: An information processing system having a first information processing apparatus and a second information processing apparatus for performing bidirectional communication,
- the first information processing device and the second information processing device are: A receiving unit that receives viewing position information of the viewing user of the virtual viewpoint image from the communication partner device; A virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of a virtual camera that captures a virtual viewpoint image to be displayed on the display unit of the communication partner apparatus based on the viewing position information; A virtual viewpoint image generation unit that generates a virtual viewpoint image corresponding to a photographed image from the virtual viewpoint position; A transmission unit that transmits the virtual viewpoint image to a communication partner device; The virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user, The information processing system generates a virtual viewpoint image in which a shooting direction is set to a virtual camera shooting direction setting point C set at a position different from the subject user.
- the fifth aspect of the present disclosure is: An information processing method executed in an information processing apparatus,
- the virtual viewpoint position calculation unit calculates a virtual viewpoint position corresponding to the position of the virtual camera that captures the virtual viewpoint image based on the viewing position information of the viewing user of the virtual viewpoint image
- a virtual viewpoint image generation unit executes a virtual viewpoint image generation process for generating a virtual viewpoint image corresponding to a photographed image from the virtual viewpoint position
- the virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user, and a virtual viewpoint image in which a photographing direction is set to a virtual camera photographing direction setting point C set at a position different from the subject user is generated.
- the sixth aspect of the present disclosure is: A program for executing information processing in an information processing apparatus; Based on the viewing position information of the viewing user of the virtual viewpoint image, the virtual viewpoint position calculation unit calculates a virtual viewpoint position corresponding to the position of the virtual camera that captures the virtual viewpoint image, Causing the virtual viewpoint image generation unit to execute a virtual viewpoint image generation process for generating a virtual viewpoint image corresponding to a photographed image from the virtual viewpoint position; In the virtual viewpoint image generation process, The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user, and a virtual viewpoint image in which a photographing direction is set to a virtual camera photographing direction setting point C set at a position different from the subject user is generated. In the program.
- the program of the present disclosure is a program that can be provided by, for example, a storage medium or a communication medium provided in a computer-readable format to an information processing apparatus or a computer system that can execute various program codes.
- a program in a computer-readable format, processing corresponding to the program is realized on the information processing apparatus or the computer system.
- system is a logical set configuration of a plurality of devices, and is not limited to one in which the devices of each configuration are in the same casing.
- a configuration in which a virtual viewpoint image transmitted / received between information processing apparatuses that perform bidirectional communication is a more natural stereoscopic image is realized.
- a virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of the virtual camera that captures the virtual viewpoint image
- a virtual viewpoint image generation unit configured to generate a virtual viewpoint image corresponding to the captured image;
- the virtual viewpoint image generation unit is configured to generate a virtual viewpoint image based on a photographed image of a real camera that photographed the subject user, and sets a photographing direction at a virtual camera photographing direction setting point C set at a position different from the subject user.
- the generated virtual viewpoint image is generated.
- a virtual viewpoint image that is assumed to be shot with the shooting direction directed to the virtual camera shooting direction setting point C set at the front position of the subject user is generated.
- a configuration is realized in which a virtual viewpoint image transmitted and received between information processing apparatuses that perform bidirectional communication is a more natural stereoscopic image. Note that the effects described in the present specification are merely examples and are not limited, and may have additional effects.
- FIG. 25 is a diagram for describing a hardware configuration example of an information processing device.
- Embodiment 2 Regarding an embodiment in which a virtual camera that captures a virtual viewpoint image is moved linearly 12.
- Modification 1 of Embodiment 2 Example of Simplifying Calculation of Virtual Camera Position Corresponding to Shooting Position of Virtual Viewpoint Image 13.
- Example 3 Regarding an example in which a virtual camera that captures a virtual viewpoint image is moved in a vertical circle with a radius R.
- Embodiment 4 Regarding an embodiment in which a virtual camera that captures a virtual viewpoint image is moved in a vertical straight line.
- Example 5 Example in which the position of the virtual camera is the position where the subject and the line of sight of the viewer coincide with each other 16 (Example 6) The position of the virtual camera is the position where the line of sight of the object and the viewer coincides, and the virtual camera 16.
- Example in which the movement of the camera is set linearly Regarding an embodiment in which the position of the virtual camera is set to a position where the line of sight between the subject and the viewer coincides, and the trajectory of the virtual camera is set to keep the distance between the virtual camera and the subject constant. .
- (Embodiment 7) Regarding an embodiment in which the position of the virtual camera is set to a position on a straight line connecting the subject and the viewer (such as behind the viewer).
- FIG. 1 is a diagram illustrating an example of the configuration of a bidirectional communication system.
- First location (2) Second location A configuration example of these two locations is shown. These two locations are at remote locations that are remote from each other, and users at each location perform two-way communication. The systems at each location are connected via the network 30.
- User A is in the first location.
- an information processing apparatus 10 including a display unit (display) 11, cameras 12a to 12c, and voice input / output units (microphones and speakers) 13a to 13b.
- a user B at the second location.
- an information processing apparatus 10 including a display unit (display) 21, cameras 22a to 22c, and voice input / output units (microphones and speakers) 23a to 23b.
- the first location cameras 12a to 12c photograph the user A at the first location from different directions.
- the data processing unit in the information processing apparatus 10 generates one virtual viewpoint image as a transmission image from these images, and transmits it to the information processing apparatus 20 at the second location via the network 30.
- One virtual viewpoint image generated by the information processing apparatus 10 at the first location is displayed on the display unit 21 of the information processing apparatus 20 at the second location.
- This virtual viewpoint image is an observation image from the viewpoint of the user B, for example.
- the viewpoint information of the user B is analyzed by the information processing apparatus 20 based on the images taken by the cameras 22a to 22c at the second location, and this viewpoint analysis information is transmitted to the information processing apparatus 10 at the first location.
- the voice input / output units (microphones and speakers) 13a and 13b at the first location acquire the utterances of the user A at the first location and the acquired voice data is processed via the network 30 at the information processing device at the second location. 20 is transmitted.
- the information processing apparatus 20 at the second location outputs the received voice from the first location via the voice input / output units (microphones and speakers) 23a, b.
- the cameras 22a to 22c at the second location take images of the user B at the second location from different directions.
- the data processing unit in the information processing apparatus 20 generates one virtual viewpoint image as a transmission image from these images, and transmits it to the information processing apparatus 10 at the first location via the network 30.
- On the display unit 11 of the information processing apparatus 10 at the first location one virtual viewpoint image generated by the information processing apparatus 20 at the second location is displayed.
- This virtual viewpoint image is an observation image from the viewpoint of the user A, for example.
- the viewpoint information of the user A is analyzed by the information processing apparatus 10 based on the images taken by the cameras 12a to 12c at the first location, and this viewpoint analysis information is transmitted to the information processing apparatus 20 at the second location.
- the voice input / output units (microphones and speakers) 23 a and b in the second location acquire the utterances and the like of the user B in the second location, and the acquired voice data is information processing apparatus in the first location via the network 30. 10 is transmitted.
- the information processing apparatus 10 at the first location outputs the received voice from the second location via the voice input / output units (microphones and speakers) 13a and 13b.
- the user A at the first location and the user B at the second location can acquire images and utterances of the remote user via the display unit and the speaker, and can perform two-way communication. Become.
- a virtual viewpoint image is used as a display image of the user displayed on the display units 11 and 21, so that the communication partner communicates with a sense of presence that is present on the spot. It becomes possible.
- the virtual viewpoint image By using the virtual viewpoint image, it is possible to present an interactive user displayed on the display unit as an image having a sense that the user is facing at the same location as that of the user, that is, a stereoscopic effect.
- a motion parallax As a parallax that gives a presentation effect of this stereoscopic effect.
- the stereoscopic effect presentation effect based on motion parallax will be described with reference to FIG.
- a human can grasp the three-dimensional structure of an observation target, that is, a three-dimensional structure, based on visual observation information.
- One of them is parallax of an image observed by the left and right eyes, that is, binocular parallax.
- the other is motion parallax.
- Motion parallax is parallax generated according to the movement of either the observer or the observation target. For example, when you look outside from a train window, nearby objects move quickly, and landscapes such as distant mountains move slowly. Motion parallax is a parallax that occurs according to the observation distance, depending on the movement of the observation object itself or the movement of the observer, as described above. It is possible to grasp the three-dimensional feeling. Note that this motion parallax is different from binocular parallax and is also obtained from an image observed with one eye, and a stereoscopic effect can be grasped by one-eye observation.
- FIG. 2 shows, for example, users A and B who are conducting a video conference using the system described with reference to FIG.
- User A is at a first location and user B is at a second location in a remote location.
- the image and sound of the user B are transmitted to the first location where the user A is located via the network, the face of the user B is displayed on the display unit (display), and the conversation is performed between the user A and the user B.
- FIG. 2 shows the following figures. (1) When the user A in the center of FIG. 2 observes the display unit from the front (2) When the user A on the left side of FIG. 2 observes the display unit from the left (3) (3) User A on the right side of FIG. When observing the display unit from diagonally right
- the user B's face is shot with one camera in front of the user B, and the shot image is displayed as it is on the display unit of the first location.
- the display mode of the user B does not change at all, and a face facing front, that is, a face when the user B is viewed from the front. (Front face) image.
- the user A can only observe the user B as a planar two-dimensional image and cannot grasp the stereoscopic effect. In other words, it is impossible to grasp the stereoscopic effect due to motion parallax.
- FIG. 3 shows an example of a display mode that makes it possible to grasp a stereoscopic effect by motion parallax.
- the three figures shown in FIG. 3 show the following figures as in FIG. 3 (1) When user A is observing the display unit from the front FIG. 3 left side (2) When user A is observing the display unit from the left diagonal FIG. 3 right side (3) User A is the display unit Is observed from diagonally right
- the display mode of the user B on the display unit shown in FIG. 3 is as follows. 3 (1) When the user A is observing the display unit from the front, the face of the user B viewed from the front is displayed. The left side of FIG. 3 (2) When the user A is observing the display unit from the left side, the face of the user B viewed from the left side is displayed. The right side of FIG. 3 (3) When the user A is observing the display unit from the right side, the face of the user B viewed from the right side is displayed.
- This parallax is motion parallax, and the observer (user A) can grasp the observation object (user B) as a three-dimensional object by this motion parallax.
- the display mode changing process shown in FIG. 3 is executed according to the movement of the user A who is the viewer of the display unit.
- This display control corresponds to the display control described in Patent Document 1 (Japanese Patent Application Laid-Open No. 2014-86775) described in the above item [Background Art].
- the user B is photographed by a plurality of cameras at different positions, and a virtual image from the viewpoint direction of the user A is generated and displayed based on the plurality of photographed images.
- the position of the user B is fixed to the display surface position of the display unit. That is, there is a problem that the viewing user A watching the display unit feels that the user B is present at a position attached to the display surface (display surface) and is observed as a three-dimensional image showing an unnatural movement. is there.
- FIG. 4 shows setting examples of the following two virtual viewpoint image shooting smears.
- the user displayed as a virtual viewpoint image is assumed to be user O here.
- a viewer who views the user O displayed on the display unit is the user A.
- the user A views the user O on the display unit from various positions (p1, p2, p3).
- This virtual viewpoint image is generated by the synthesis process of images taken from a plurality of different positions described above with reference to FIG.
- FIG. 4A corresponds to the display control described in Patent Document 1 (Japanese Patent Laid-Open No. 2014-86775) described above.
- a virtual viewpoint image photographing camera is set at the position p1
- an image obtained by photographing the user O from this position is generated as a virtual viewpoint image.
- Displayed on the A side display When the viewing user A views the display unit from the position p2, a virtual viewpoint image photographing camera is set at the position p2, and an image obtained by photographing the user O from this position is generated as a virtual viewpoint image. It is displayed on the display unit on the viewing user A side.
- a virtual viewpoint image photographing camera is set at the position p3, and an image obtained by photographing the user O from this position is generated as a virtual viewpoint image. It is displayed on the display unit on the viewing user A side.
- the virtual viewpoint image shooting camera setting example shown in FIG. 4A corresponds to the display control described in Patent Document 1 (Japanese Patent Application Laid-Open No. 2014-86775) described above.
- Patent Document 1 Japanese Patent Application Laid-Open No. 2014-86775
- the position of the user O is displayed on the display screen. It will be fixed to the display surface position of the part. That is, as described with reference to FIG. 3, there is a problem that the position of the user O is observed as a three-dimensional image showing an unnatural movement such as sticking to the display surface (display surface).
- FIG. 4B corresponds to an example of display control executed by the information processing apparatus according to the present disclosure.
- the virtual viewpoint image photographing camera is set at the position p1 as in FIG. 4A, but the photographing direction of the virtual viewpoint image photographing camera is not the user O.
- the virtual camera shooting direction setting point C set in front of the user O is assumed to be.
- the setting of the virtual viewpoint image shooting camera when the viewing user A views the display unit from the positions p2 and p3 is the same, and the shooting direction of each virtual viewpoint image shooting camera set at each position is not the user O but the user O.
- the virtual camera shooting direction setting point C set in front of the.
- the display can be displayed in a mode different from the display where the display user sticks to the surface of the display unit described with reference to FIG.
- a display object such as a user displayed on the display unit can be displayed as a stereoscopic image with a natural sense of depth.
- a specific display example will be described with reference to FIG.
- FIG. 5 is a diagram illustrating a display example of the virtual viewpoint image generated by the virtual viewpoint image photographing camera setting illustrated in FIG. FIG. 5 shows the following figures, as described above with reference to FIG. Center of FIG. 5 (1)
- Right side of FIG. 5 (3)
- the display mode of the user O on the display unit shown in FIG. 5 is as follows. Center of FIG. 5 (1) When the user A is observing the display unit from the front, the face of the user O viewed from the front is displayed. The display position of the user O is in the center of the display unit.
- FIG. 5 left side (2)
- the face of the user O viewed from the left side is displayed.
- the display position of the user O moves to the left side of the display unit. This is because the orientation of the virtual image shooting camera is directed to the virtual camera shooting direction setting point C shown in FIG. 4 (2), the point C is set at the center position of the display unit, and the display position of the user O is displayed. Is a position shifted to the left from the center of the display unit.
- FIG. 6 is a diagram similar to FIG. 5, with the top view showing the display surface of the display unit and a view showing where the display user O is viewed from the viewing user A.
- FIG. 6 is a diagram similar to FIG. 5, with the top view showing the display surface of the display unit and a view showing where the display user O is viewed from the viewing user A.
- FIGS. 6 (1) to 6 (3) are the following diagrams, similar to FIGS. 5 (1) to 5 (3).
- When user A is observing the display unit from the left When user A is observing the display unit from position p1 in FIG. 4 (2))
- the position of the display user O grasped by the viewing user A is a position far away from the display surface of the display unit. 6 (2) When the user A is observing the display unit from the left side, the face of the user O viewed from the left side is displayed on the left side of the display unit, and the center (1) user A in FIG. When the display unit is observed from the front, the face of the user O viewed from the front is displayed in the center of the display unit, and the right side of FIG. 6 (3) User A is viewing the display unit from the right side. The face of the user O as viewed from the right is displayed on the right side of the display unit. As a result, the viewing user A grasps that the display user O is positioned at the object observation position 50 shown in the upper part of FIG. That is, it is a position on the back side from the display surface of the display unit.
- FIG. 7 is a diagram for explaining a specific example of the presence position recognition of the display user O grasped by the viewing user A.
- the viewing user A can grasp that the display user O is located further on the back side than the display surface of the display unit placed on the table, and display a stereoscopic image with a more natural sense of depth. Will be made.
- the virtual camera shooting direction setting point C is set at a position different from that of the display user O, thereby separating the display user O from the display surface of the display unit. Therefore, it is possible to display a stereoscopic image with a natural sense of depth.
- the information processing apparatus according to the present disclosure is an information processing apparatus that performs the same bidirectional communication as described above with reference to FIG. 1, and the information processing apparatuses 10 and 20 installed at the respective locations in FIG. 1.
- the apparatus has a display unit, a camera, and a voice input / output unit, and can send and receive images, voices, and other information via a network.
- FIG. 8 is a block diagram illustrating a configuration example of the image processing apparatus 100 according to an embodiment of the present disclosure.
- FIG. 8 shows the information processing apparatus 100 at the first location for executing bidirectional communication and the remote second location information processing apparatus 130 connected to the network, and further shows the information processing apparatus 100 at the first location. A detailed configuration is shown. The detailed configuration of the information processing device 130 at the second location is the same as the detailed configuration of the information processing device 100 at the first location.
- the information processing apparatus 100 at the first location includes a sensor unit (camera, depth sensor) 101, a local information processing unit 102, an encoding unit 103, a transmission unit 104, a reception unit 1025, a decoding unit 106, a remote information processing unit 107, and a display unit. 108.
- the transmission unit 104 and the reception unit 105 perform communication with the remote second location information processing apparatus 130 that performs bidirectional communication via the network 120.
- the configuration illustrated in FIG. 8 is a partial configuration of the information processing apparatus that is illustrated centering on a processing unit that performs image processing in the information processing apparatus.
- the information processing apparatus includes various configurations such as a voice processing execution unit and a storage unit. The same applies to the second location information processing apparatus 130.
- the sensor unit (camera, depth sensor) 101 includes a camera that captures an image of a user performing bidirectional communication on the first location side, a distance measurement sensor (depth sensor) that measures the position of the captured user (local user), and the like. Is done.
- the own device side is called the local side
- the user on the own device side is called the local user
- the communication partner device side is called the remote side
- the user on the partner device side is called the remote user.
- the user position can also be calculated based on captured images of cameras installed at a plurality of different positions, and only a plurality of cameras that shoot subjects from a plurality of different positions may be used without using a depth sensor.
- the sensor unit 101 may have any of the following configurations. (A) Multiple cameras that shoot subjects from a plurality of different positions (b) One (or more) camera and one depth sensor
- the configuration (a) corresponds to the configuration including the three cameras shown in FIG. As shown in (b), one camera and one depth sensor may be used. Sensor information (camera image (+ depth information)) detected by the sensor unit 101 is input to the local information processing unit 102.
- the local information processing unit 102 is a user (local user) on the first location side from a viewing position (virtual viewpoint position) of a user (remote user) on the second location information processing apparatus 130 side, that is, a partner device for bidirectional communication.
- a virtual viewpoint image that is an image when viewing is generated.
- the local information processing unit 102 receives input data from the sensor unit 101 as (A) Images taken of a local user from a plurality of different positions, or (B) one image and subject (local user) distance information; At least sensor information of any one of (a) and (b) is input. Further, virtual viewpoint position information generated based on the position information of the user (remote user) at the second location is input from the remote information processing unit 107. The local information processing unit 102 generates a virtual viewpoint image to be transmitted to the second location information processing device 130 based on the input information. Note that the local information processing unit 102, on the second location information processing device 130 side, views the local user necessary for generating a virtual user's virtual viewpoint image to be displayed on the display unit of the first location information processing device 100. Position information is also generated.
- Pieces of generated information are encoded (compressed) in the encoding unit 103 and then transmitted to the second location information processing apparatus 130 via the network 120 via the transmission unit 104.
- the receiving unit 105 receives the virtual viewpoint image generated by the second location information processing apparatus 130 and the viewing position information of the user (remote user) on the second location side via the network 120.
- the reception data of the reception unit 105 is encoded (compressed) data, and is decoded by the decoding unit 106 and then input to the remote information processing unit 107.
- the remote information processing unit 107 displays the virtual viewpoint image generated by the second location information processing device 130 on the display unit 108, and further, based on the viewing position information of the user (remote user) on the second location side, Virtual viewpoint position information applied to generate a virtual viewpoint image to be transmitted to the location is generated and input to the local information processing unit 1102.
- the display unit 108 displays the virtual viewpoint image generated by the second location information processing device 130 on the display unit 108.
- the virtual viewpoint image displayed on the display unit 108 is an image observed from the virtual viewpoint position set according to the viewing position of the local user at the first location, and specifically, FIG. It is the image image
- the virtual viewpoint image that is a captured image of the shooting camera of the virtual viewpoint image is shown in FIG. As shown in 2), the images are taken from the positions p1 to p3 with the shooting direction (optical axis) in the virtual camera shooting direction C.
- a display image as described above with reference to FIGS. 5 to 7, that is, a stereoscopic image with a feeling that a communication partner (remote user) exists behind the display surface of the display unit is observed. Is possible.
- FIG. 9 shows detailed configurations of the local information processing unit 102 and the remote information processing unit 107 which are components of the information processing apparatus 100 shown in FIG.
- the local information processing unit 102 includes a local user viewing position detection unit 151 and a transmission virtual viewpoint image generation unit 152.
- the remote information processing unit 107 includes a remote-side virtual viewpoint position calculation unit 161.
- the local information processing unit 102 inputs local sensor information 171 from the sensor unit 101.
- the local sensor information 171 includes the following information (a) or (b).
- the local information processing unit 102 inputs local sensor information 171 including at least one of (a) and (b).
- remote side virtual viewpoint position information 183 generated based on the position information of the user (remote user) at the second location is input from the remote information processing unit 107.
- the remote-side virtual viewpoint position information 183 is information indicating the photographing camera position of the virtual viewpoint image transmitted to the remote information processing apparatus.
- the remote virtual viewpoint position information 183 may or may not match the remote user viewing position, that is, the received remote user viewing position information 181 shown in FIG. 9 transmitted from the remote information processing apparatus. .
- the viewing position (p1 to p3) and the position of the virtual viewpoint image capturing camera that captures the virtual viewpoint image coincide with each other, but this is an example, and in the configuration of the present application,
- the remote side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 calculates the remote side virtual viewpoint position information 183 according to a predetermined algorithm based on the received remote user viewing position information 181 received from the remote information processing apparatus. calculate. In other words, a remote user viewing position (received remote user viewing position information 181) that is a viewing user who is viewing the display unit on the remote side is input, and the virtual viewpoint image capturing position displayed on the remote display unit is input. The viewpoint position (remote side virtual viewpoint position information 183) is calculated.
- the remote side virtual viewpoint position information 183 is coordinate information of a horizontal plane (xz plane) including the center position of the display surface of the display unit, for example.
- the direction parallel to the display screen is x
- the direction perpendicular to the display screen is z.
- This is coordinate information (x, z) in the xz plane. An example of generation and use of this coordinate information will be described later.
- the virtual viewpoint image generation unit 152 for transmission of the local information processing unit 102
- the local side sensor information 171 input from the sensor unit 101, that is, (A) Images taken of a local user from a plurality of different positions, or (B) one image and subject (local user) distance information; Enter any of the above information (a), (b), and From the remote side virtual viewpoint position calculation unit 161 of the remote information processing unit 107, Remote-side virtual viewpoint position information 183 Enter.
- the transmission virtual viewpoint image generation unit 152 of the local information processing unit 102 Based on the input information, the transmission virtual viewpoint image generation unit 152 of the local information processing unit 102 generates a virtual viewpoint image to be transmitted to the remote information processing apparatus, that is, the transmission virtual viewpoint image 173 shown in FIG. To do.
- This transmission virtual viewpoint image 173 is an image observed from the virtual viewpoint position corresponding to the remote-side virtual viewpoint position information 183. Specifically, it is a virtual viewpoint image captured by the virtual viewpoint image capturing camera of FIG.
- the local user viewing position detection unit 151 of the local information processing unit 102 has local sensor information 171 input from the sensor unit 101, that is, (A) Images taken of a local user from a plurality of different positions, or (B) one image and subject (local user) distance information; Any one of the information (a) and (b) is input, and the viewing position information of the local user is generated based on the input information.
- the local user viewing position information 172 for transmission and the virtual viewpoint image 173 for transmission generated by the local information processing unit 102 are encoded (compressed) by the encoding unit 103, and the remote information processing apparatus, that is, FIG. To the second location information processing device 130 shown.
- Example 1 Regarding an embodiment in which a virtual camera is moved in a circle with a radius R
- Example 1 an example in which a virtual camera that is a camera that captures a virtual viewpoint image is moved in a circle with a radius R will be described.
- the remote virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG. 9 generates remote virtual viewpoint position information 183 based on the received remote user viewing position information 181 received from the remote side.
- the transmission virtual viewpoint image generation unit 152 of the local information processing unit 102 illustrated in FIG. 9 generates a virtual viewpoint image assumed to be taken from the remote side virtual viewpoint position based on the remote side virtual viewpoint position information 183. To do.
- FIG. 10 is a diagram for explaining a specific procedure for calculating the position of the virtual viewpoint image photographing camera (virtual camera position) in the same setting as the setting described with reference to FIG.
- the upper left diagram in FIG. 10 is the same diagram as described with reference to FIG. 4B, and is composed of the following components.
- O: Shooting object ( display user included in virtual viewpoint image)
- A: Viewing user ( user viewing a virtual viewpoint image)
- Virtual viewpoint image camera ( virtual camera)
- C Virtual camera shooting direction set point
- the upper left diagram in FIG. 10 shows the x-axis and z-axis which are coordinate axes of the xz plane coordinate. This is coordinate information in which the horizontal plane including the position of the shooting object O is the xz plane.
- the direction parallel to the display unit display surface is x
- the direction perpendicular to the display unit display surface is z.
- Xz coordinate axes (x axis, z axis) are shown.
- the xz plane which is a horizontal plane with the position of the shooting object O as the origin, is a display on the remote side where the shooting object O is displayed, that is, in the remote side space where the viewing user A exists, for example, the display on the remote side device. This corresponds to a horizontal plane perpendicular to the display surface of the part.
- the position of the viewing user A is (x 0 , z 0 ).
- This viewing user position information is information measured by the remote information processing apparatus and received by the local information processing apparatus. This corresponds to the received remote user viewing position information 181 shown in FIG.
- the coordinate setting information the setting information such as the radius R of the estimated moving circle of the viewing user, the position information of the virtual camera shooting direction setting point C described above with reference to FIG. It is determined in advance and shared among information processing apparatuses that execute bidirectional communication processing. These pieces of information are determined and shared by both parties in a communication preparation process executed before the start of communication. A specific processing sequence will be described later with reference to a flowchart.
- (A) Trajectory and Direction of Virtual Camera As shown in the left diagram of FIG. 10, the distance between the subject O and the virtual camera shooting direction setting point C is c. Also, The coordinates of the viewing user A are (x 0 , z 0 ), The camera coordinates indicating the position of the virtual camera are (x 1 , z 1 ), And Note that the position of the viewing user A corresponds to the received remote user viewing position information 181 received from the remote side.
- the coordinates satisfy the above formula (x 1 , z 1 ).
- R is a value of a radius centered on the subject O, and is determined in advance and shared between both devices in a device that performs bidirectional communication. This parameter determination and sharing process will be described in detail in the description with reference to the flowchart shown in FIG.
- the direction of the virtual camera (the direction of the camera optical axis) is set toward the virtual camera shooting direction setting point C.
- the positive / negative setting of the distance c between the subject O and the virtual camera shooting direction setting point C is as follows.
- the distance c is set to a positive value, that is, c> 0.
- the distance c is set to a negative value, that is, c ⁇ 0.
- the virtual camera shooting direction set point C is determined in advance and shared between both devices, as with the radius R described above, in a device that performs bidirectional communication.
- the position of the viewing user A that is, the received remote user viewing position information 181 received from the remote side is assumed to be (x 0 , z 0 ).
- the remote virtual viewpoint position calculation unit 161 of the remote information processing unit 107 shown in FIG. 9 is based on the received remote user viewing position information (x 0 , z 0 ), the setting position of the virtual camera that captures the virtual viewpoint image ( x 1 , z 1 ) is calculated by the following procedure.
- the viewing user A does not necessarily follow the trajectory of a circle with a radius R centered on the subject O, but the virtual camera approximates and follows the trajectory of a circle with a radius R centered on the subject O.
- the center coordinates of viewing user A and (x 0, z 0), and the straight line OA the intersection coordinates of the locus of the circle of radius R the distance between the object O and virtual camera (R) was the radius (x 1, z 1 ) is the center coordinate position of the virtual camera.
- the straight line OA connecting the subject O and the viewing user A is a straight line when it is assumed that the subject O and the viewing user A exist in the same space, and the subject O displayed on the display unit of the device on the viewing user A side. Corresponds to a straight line connecting the virtual position of the viewer and the actual position of the viewing user A.
- x 1 Rx 0 / SQRT (x 0 2 + z 0 2 )
- z 1 Rz 0 / SQRT (x 0 2 + z 0 2 )
- a virtual camera position (x 1 , z 1 ) is obtained.
- the remote-side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 shown in FIG. 9 uses the received remote user viewing position information 181 received from the remote side based on (x 0 , z 0 ) according to the above-described procedure. calculating the camera position (x 1, z 1).
- the virtual camera position (x 1 , z 1 ) becomes remote-side virtual viewpoint position information 183 that is output information of the remote-side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 shown in FIG.
- the transmission virtual viewpoint image generation unit 152 of the local information processing unit 102 illustrated in FIG. 9 inputs the remote-side virtual viewpoint position information 183, that is, the virtual camera position (x 1 , z 1 ), and the virtual camera position ( A virtual viewpoint image that is assumed to be taken from x 1 , z 1 ) is generated.
- sensor information input from the sensor unit 101 that is, (A) Images taken of a local user from a plurality of different positions, or (B) one image and subject (local user) distance information; Either of the information (a) and (b) is used.
- the virtual viewpoint image generated by the transmission virtual viewpoint image generation unit 152 is set from the virtual camera position (x 1 , z 1 ) as a predetermined virtual camera shooting direction setting point C as the shooting direction (optical axis direction). It is an image that was taken.
- a display image as described above with reference to FIGS. 5 to 7, that is, a stereoscopic image with a feeling that a communication partner (remote user) exists behind the display surface of the display unit is observed. Is possible.
- the flowchart shown in FIG. 11 is a flowchart for explaining the entire sequence when the information processing apparatus executes bidirectional communication with the remote second information processing apparatus.
- the processing according to the flowchart shown in FIG. 11 and the following is executed under the control of a data processing unit including a CPU having a program execution function, for example, according to a program stored in the storage unit of the information processing apparatus. .
- the processing of each step in the flow shown in FIG. 11 will be described sequentially.
- Step S101 First, in step S101, the information processing apparatus executes communication connection processing with the information processing apparatus at the second location that executes bidirectional communication.
- Step S102 In step S101, when the communication connection between the two information processing apparatuses that perform bidirectional communication is completed, the information processing apparatus next executes communication preparation processing in step S102.
- Step S103 In step S102, when preparation processing such as use parameter determination and sharing processing is completed between the two information processing devices that perform bidirectional communication, the information processing device next executes communication processing in step S103. To do.
- the information processing apparatus executes generation, transmission processing, and the like of a virtual viewpoint image corresponding to the viewing position of the viewing user on the communication partner side. Details of this communication process will be described later with reference to FIG.
- Step S104 the information processing apparatus determines whether to end communication, and if the information processing ends, the information processing apparatus proceeds to step S105. When communication is continued without ending, the process returns to step S103 to continue communication execution processing.
- Step S105 If it is determined in step S104 that the communication is to be terminated, the process proceeds to step S105. In step S105, a communication disconnection process for canceling the communication connection with the communication partner apparatus is executed, and the process is terminated.
- step S102 in the flow of FIG. 11 a detailed sequence of the communication preparation process in step S102 in the flow of FIG. 11 will be described with reference to the flowchart shown in FIG.
- the communication preparation process of step S102 in the flow of FIG. 11 for example, the coordinate setting information described above with reference to FIG. Determine and share. Processing of each step in the flow shown in FIG. 12 will be described.
- Step S122 the information processing apparatus executes parameter determination and sharing processing necessary for generating the virtual viewpoint image.
- the parameter determination process may be executed in one of the two information processing apparatuses that execute the bidirectional communication process, and the determined parameter may be transmitted to the other party.
- Coordinate setting information (2) Viewing user estimated movement trajectory information (3) Position of virtual camera shooting direction set point C
- the two diagrams on the right side of FIG. 12 show two parameter setting examples 1 and 2.
- the parameter setting example 1 is an example in which it is assumed that the viewing user A moves on a circle with a radius R centering on the position of the display user, as described above with reference to FIG.
- the coordinates are coordinate settings in which the horizontal plane with the position of the user O as the origin is set as the xz plane, the direction parallel to the display unit display surface is set as the x axis, and the vertical direction is set as the z axis.
- the position of the virtual camera shooting direction setting point C is the position (x c , z c ) shown in FIG.
- at least one information processing apparatus that performs bidirectional communication determines these parameters, notifies the other party of the determined parameters, and performs a process of sharing the parameters between the two information processing apparatuses.
- the coordinates are coordinate settings in which the horizontal plane with the position of the user O as the origin is set as the xz plane, the direction parallel to the display unit display surface is set as the x axis, and the vertical direction is set as the z axis.
- the position of the virtual camera shooting direction setting point C is the position (x c , z c ) shown in the figure.
- at least one information processing apparatus that performs bidirectional communication determines these parameters, notifies the other party of the determined parameters, and performs a process of sharing the parameters between the two information processing apparatuses.
- step S102 of the flow shown in FIG. 11 these parameter determination and sharing processes are executed. After these processes, the communication process in step S103 is started.
- step S103 in the flow shown in FIG. 11 that is, the detailed sequence of the communication processing will be described with reference to the flowchart shown in FIG.
- the information processing apparatus executes generation, transmission processing, and the like of a virtual viewpoint image corresponding to the viewing position of the viewing user on the communication partner side.
- the process of each step of the flow shown in FIG. 13 will be described in sequence.
- step S131 the information processing apparatus performs sensor information acquisition processing. Specifically, the information processing apparatus acquires a captured image of a local user who is a user on the own apparatus side of bidirectional communication. As described above with reference to FIG. 1, the image shooting is performed by, for example, a plurality of cameras installed at different positions. Note that it may be set to acquire a captured image of one camera and depth information (distance information).
- Step S132 the information processing apparatus detects the viewing position of the local user in step S132.
- the sensor information acquired in step S131 that is, Images taken from several different positions, or One camera image and depth information,
- the viewing position of the local user is detected based on any one of the sensor information.
- Step S141 The information processing apparatus executes the processes of steps S141 to S142 in parallel with the processes of steps S131 to S132.
- step S141 viewing position information of a remote user who is a user on the partner device side of bidirectional communication is received and acquired. This information is information generated and transmitted by the remote information processing apparatus.
- Step S142 the information processing apparatus calculates the virtual viewpoint position of the virtual viewpoint image to be transmitted to the remote apparatus based on the remote user viewing position information received from the remote apparatus in step S141.
- This process is a process executed by the remote-side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 described above with reference to FIG.
- the remote side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 calculates the remote side virtual viewpoint position information 183 according to a predetermined algorithm based on the received remote user viewing position information 181 received from the remote information processing apparatus. calculate.
- a remote user viewing position (received remote user viewing position information 181) that is a viewing user who is viewing the display unit on the remote side is input, and the virtual viewpoint image capturing position displayed on the remote display unit is input.
- the viewpoint position (remote side virtual viewpoint position information 183) is calculated. Specifically, the virtual camera position (x 1 , z 1 ) described above with reference to FIG. 10 is calculated.
- step S143 the information processing apparatus generates a local user virtual viewpoint image corresponding to the virtual user position of the remote user.
- This process is a process executed by the transmission virtual viewpoint image generation unit 152 of the local information processing unit 102 described above with reference to FIG.
- the transmission virtual viewpoint image generation unit 152 of the local information processing unit 102 inputs the sensor information (image or the like) acquired in step S131, the virtual viewpoint position (remote side virtual viewpoint position information 183) calculated in step S142, and these inputs. Based on the information, a virtual viewpoint image to be transmitted to the remote information processing apparatus, that is, a transmission virtual viewpoint image 173 shown in FIG. 9 is generated.
- This transmission virtual viewpoint image 173 is an image observed from the virtual viewpoint position corresponding to the remote-side virtual viewpoint position information 183.
- the virtual viewpoint image captured by the virtual viewpoint image capturing camera of FIG. 4B, and the captured virtual viewpoint with the shooting direction (optical axis direction) set to the virtual camera shooting direction setting point C is used. It is an image.
- the virtual viewpoint image is observed so that the display user is located on the back side from the display surface of the display unit. It is data.
- step S144 the information processing apparatus corresponds to the virtual viewpoint calculated based on the viewing position information of the local user detected in step S132 and the virtual viewpoint image for transmission generated in step S143, that is, the viewing position of the remote user. Are transmitted to the remote information processing apparatus.
- Step S151 The processes of steps S151 to S152 are processes performed in parallel with the processes of steps S131 to S132 and steps S141 to S144.
- step S151 the information processing apparatus receives the virtual user's virtual viewpoint image transmitted from the remote side usage processing apparatus.
- This virtual viewpoint image is a virtual viewpoint image including the generated remote user after the same processing as the processing of steps S131 to S132 and steps S141 to S144 in the flow of FIG. 13 is performed in the remote apparatus.
- the virtual viewpoint position is a virtual viewpoint calculated based on the viewing position of the local user.
- Step S152 the information processing apparatus displays the virtual viewpoint image received from the remote information processing apparatus in step s151 on the display unit.
- This virtual viewpoint image is an image corresponding to an image photographed from a virtual viewpoint calculated based on the viewing position of the local user.
- this virtual viewpoint image corresponds to an image taken with the camera facing the virtual camera shooting direction setting point C, and is referred to FIGS.
- the display user is displayed as three-dimensional image data located on the back side of the display surface of the display unit.
- the virtual viewpoint image generated by the counterpart device is generated by executing the generation processing of the virtual viewpoint image for display to be displayed on the display unit of the own device in the counterpart device (remote device). This is a sequence in which an image is received by the own device (local device) and displayed on the display unit of the own device (local device).
- This process corresponds to the configuration of the local information processing apparatus 102 and the remote information processing apparatus 107 described above with reference to FIG.
- FIG. 14 is a diagram illustrating the detailed configuration and processing of the local information processing unit 102 and the remote information processing unit 107 in the present embodiment. Note that the local information processing unit 102 and the remote information processing unit 107 illustrated in FIG. 14 are components of the information processing apparatus 100 illustrated in FIG.
- the local information processing unit 102 includes a local user viewing position detection unit 201 and a local virtual viewpoint position calculation unit 202.
- the remote information processing unit 107 includes a display virtual viewpoint image generation unit 211.
- the local information processing unit 102 inputs local sensor information 231 from the sensor unit 101.
- the local sensor information 231 includes the following information (a) or (b).
- the local information processing unit 102 inputs local sensor information 231 including at least one of (a) and (b).
- the sensor information 231 is encoded by the encoding unit 103 and transmitted as it is to the remote information processing apparatus. Further, it is input to the local user viewing position detection unit 201 of the local information processing unit 102.
- the local user viewing position detection unit 201 of the local information processing unit 102 inputs any of the information (a) and (b) input from the sensor unit 101, and based on the input information, the local user viewing position is detected. Generate location information. This is the local user viewing position information 232 shown in FIG.
- the local user viewing position information 232 generated by the local user viewing position detection unit 201 is input to the local virtual viewpoint position calculation unit 202 of the local information processing unit 102.
- the local virtual viewpoint position calculation unit 202 calculates the local virtual viewpoint position information 233 according to a predetermined algorithm. That is, the virtual viewpoint image displayed on the display unit on the own device (local) side by inputting the viewing position (local user viewing position information 232) of the local user who is the viewing user viewing the display unit on the local side of the own device.
- the virtual viewpoint position (local side virtual viewpoint position information 233) that is the shooting position is calculated.
- the local virtual viewpoint position information 233 calculated by the local virtual viewpoint position calculation unit 202 is input to the display virtual viewpoint image generation unit 211 of the remote information processing unit 107.
- the display virtual viewpoint image generation unit 211 of the remote information processing unit 107 includes: Sensor information 234 received from the remote side information processing apparatus, that is, (A) Images taken of a remote user from a plurality of different positions, or (B) one image and subject (remote user) distance information; Enter any of the above information (a), (b), and The local side virtual viewpoint position information 233 calculated by the local side virtual viewpoint position calculation unit 202 is input.
- the display virtual viewpoint image generation unit 211 of the remote information processing unit 107 displays a virtual viewpoint image to be displayed on the display unit on the own device (local) side, that is, the display virtual viewpoint image shown in FIG. 235 is generated and displayed on the display unit 108.
- This display virtual viewpoint image 235 is an image observed from the virtual viewpoint position corresponding to the local-side virtual viewpoint position information 233. Specifically, it is a virtual viewpoint image captured by the virtual viewpoint image capturing camera of FIG.
- the configuration in FIG. 9 described above is a configuration in which the virtual viewpoint image received from the remote side is displayed as it is.
- sensor information image, or image and depth with the remote side
- Information is used to generate a virtual viewpoint image for display on its own device side.
- the processing sequence executed by the information processing apparatus is the process according to FIG. 11 described above, and the communication preparation process of step S102 is a process according to the flow described above with reference to FIG. .
- the communication process in step S103 is a sequence different from the flow shown in FIG. 13 described above.
- step S103 A detailed sequence of the communication process in step S103 when the configuration of FIG. 14 is applied will be described with reference to the flowchart shown in FIG.
- the information processing apparatus executes a generation process and a display process of a virtual viewpoint image corresponding to the viewing position of the viewing user on the own apparatus side.
- the process of each step of the flow illustrated in FIG. 15 will be sequentially described.
- step S171 the information processing apparatus performs a process for acquiring sensor information. Specifically, the information processing apparatus acquires a captured image of a local user who is a user on the own apparatus side for bidirectional communication. As described above with reference to FIG. 1, the image shooting is performed by, for example, a plurality of cameras installed at different positions. Note that it may be set to acquire a captured image of one camera and depth information.
- step S172 the information processing apparatus transmits the sensor information acquired in step S171 to the remote information processing apparatus.
- step S181 the information processing apparatus detects the viewing position of the local user.
- the sensor information acquired in step S171 that is, Images taken from several different positions, or One camera image and depth information,
- the viewing position of the local user is detected based on any one of the sensor information.
- Step S182 the information processing apparatus calculates the virtual user's virtual viewpoint position based on the local user viewing position information acquired in step S181.
- This process is a process executed by the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 described above with reference to FIG. Based on the local user viewing position information 232 generated by the local user viewing position detection unit 201, the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 obtains the local virtual viewpoint position information 232 according to a predetermined algorithm. calculate.
- the viewing position (local user viewing position information 232) of a local user who is viewing the display unit on the own apparatus side (local side) is input, and a virtual viewpoint image displayed on the local display unit is captured.
- a virtual viewpoint position (local side virtual viewpoint position information 233) serving as a position is calculated. Specifically, the virtual camera position (x 1 , z 1 ) described above with reference to FIG. 10 is calculated.
- Step S191 is a process for receiving sensor information from the remote information processing apparatus.
- A Images taken of a remote user from a plurality of different positions, or
- B one image and subject (remote user) distance information; The information of either (a) or (b) is received.
- step S192 the information processing apparatus generates a virtual user's virtual viewpoint image corresponding to the local user's virtual viewpoint position.
- This process is a process executed by the display virtual viewpoint image generation unit 211 of the remote information processing unit 107 described above with reference to FIG.
- the display virtual viewpoint image generation unit 211 of the remote information processing unit 107 includes the remote-side sensor information (image or the like) acquired in step S191, the virtual viewpoint position calculated in step S182 (local-side virtual viewpoint position information 233), Based on the input information, a virtual viewpoint image to be displayed on the display unit on the own device (local) side, that is, a display virtual viewpoint image 235 shown in FIG. 14 is generated.
- This display virtual viewpoint image 235 is an image observed from the virtual viewpoint position corresponding to the local-side virtual viewpoint position information 233. Specifically, it is a virtual viewpoint image captured by the virtual viewpoint image capturing camera of FIG.
- step S193 the information processing apparatus displays the virtual viewpoint image for display generated in step S192, that is, the virtual viewpoint image corresponding to the virtual viewpoint calculated based on the viewing position of the local user, on the own apparatus (local) side. To display.
- the virtual viewpoint image displayed on the display unit is an image corresponding to an image photographed from the virtual viewpoint calculated based on the viewing position of the local user. Specifically, for example, it corresponds to a photographed image from the virtual viewpoint image photographing camera shown in FIG. As described above with reference to FIG. 4 (2), this virtual viewpoint image corresponds to an image taken with the camera facing the virtual camera shooting direction setting point C, and is referred to FIGS. As described above, the display user (remote user) is displayed as three-dimensional image data located on the back side of the display surface of the display unit.
- FIG. 16 The upper left diagram shown in FIG. 16 is also the same diagram as described with reference to FIG. 4 (2), similar to FIG. 10 described above, and is composed of the following components.
- O: Shooting object ( display user included in virtual viewpoint image)
- A: Viewing user ( user viewing a virtual viewpoint image)
- Virtual viewpoint image camera ( virtual camera)
- the upper left figure in FIG. 16 shows the x-axis and z-axis which are coordinate axes of the xz plane coordinate. It is the coordinate information which made the horizontal surface containing the center position of the display surface of a display part the xz plane.
- the direction parallel to the display unit display surface is x
- the direction perpendicular to the display unit display surface (separation direction) is z.
- Xz coordinate axes (x axis, z axis) are shown.
- the position of the viewing user A is (x 0 , z 0 ).
- the coordinate setting information, the setting information such as the radius R of the estimated moving circle of the viewing user, the position information of the virtual camera shooting direction setting point C described above with reference to FIG. It is determined in advance and shared among information processing apparatuses that execute bidirectional communication processing. As described with reference to the flowcharts of FIGS. 11 and 12, these pieces of information are determined and shared by both parties in the communication preparation process executed before the start of communication. On the right side of FIG. 16, a procedure for calculating the setting position of the virtual camera is shown.
- the position of the viewing user A is (x 0 , z 0 ). Based on the user viewing position information (x 0 , z 0 ), the setting position (x 1 , z 1 ) of the virtual camera that captures the virtual viewpoint image is calculated in the following procedure.
- the viewing user A does not necessarily follow the trajectory of a circle with a radius R centered on the subject O, but the virtual camera approximates and follows the trajectory of a circle with a radius R centered on the subject O.
- the virtual camera position (x 1 , z 1 ) becomes remote side virtual viewpoint position information 183 that is output information of the remote side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 shown in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (x 1 , z 1 ).
- FIG. 17 is a diagram illustrating an example in which the virtual camera shooting direction setting point C is arranged behind the subject O.
- the shooting direction of the virtual viewpoint image shooting camera coincides with the subject, as described with reference to FIG. 3, the user There is a problem that the position of O is fixed at the display surface (display surface) position and is observed as a three-dimensional image showing an unnatural movement.
- the shooting direction of the virtual viewpoint image shooting camera is not the user O but the virtual camera shooting direction setting point C set in front of the subject (user O).
- Example 1 described with reference to FIG. 10 is an example in which the virtual camera shooting direction setting point C is set in front of the subject (user O) as in the setting of FIG. 4 (2).
- the virtual camera shooting direction setting point C By setting the virtual camera shooting direction setting point C at various positions, it is possible to change the appearance of the object (subject) displayed on the display unit.
- FIG. 17 illustrates an example in which the virtual camera shooting direction setting point C is arranged behind the subject. With such a setting, it is possible to display the display user O so as to exist at a position in front of the display surface of the display unit.
- FIG. 18 is a diagram illustrating a display example of the virtual viewpoint image generated by the setting of the virtual viewpoint image photographing camera illustrated in FIG.
- the display mode of the user O on the display unit shown in FIG. 18 is as follows.
- FIG. 18 center (1) When the user A is observing the display unit from the front, the face of the user O viewed from the front is displayed. The display position of the user O is in the center of the display unit.
- FIG. 18 left side (2)
- the face of the user O viewed from the diagonally left is displayed.
- the display position of the user O moves to the right side of the display unit. This is because the orientation of the virtual image photographing camera is directed to the virtual camera photographing direction setting point C shown in FIG. 17, the point C is set at the center position of the display unit, and the display position of the user O is displayed. The position is shifted to the right side from the center of the part.
- FIG. 18 (3) when the user A is observing the display unit from the right side, a face of the user O viewed from the right side is displayed. However, the display position of the user O moves to the left side of the display unit. This is because the orientation of the virtual image photographing camera is directed to the virtual camera photographing direction setting point C shown in FIG. 17, the point C is set at the center position of the display unit, and the display position of the user O is displayed. The position is shifted to the left side from the center of the part.
- the viewing user A grasps the position of the display user O as a position protruding from the display screen to the front as shown in the upper part of FIG. 18 due to motion parallax.
- the display object such as the display user can be set at various positions away from the display surface of the display unit. It can be displayed as it exists.
- FIG. 19 shows an example in which a virtual camera (virtual viewpoint image photographing camera) is positioned on a circle with a radius R centered on a virtual camera photographing direction setting point C.
- (A) Trajectory and direction of virtual camera As shown in the diagram on the left side of FIG. 19, let c be the distance between the subject O and the virtual camera shooting direction setting point C. Also, The coordinates of the viewing user A are (x 0 , z 0 ), The camera coordinates indicating the position of the virtual camera are (x 1 , z 1 ), And
- the coordinates satisfy the above formula (x 1 , z 1 ).
- R is a value of a radius centered on the virtual camera shooting direction setting point C, and is determined in advance and shared between both devices in a device that performs bidirectional communication.
- the direction of the virtual camera (the direction of the camera optical axis) is set to face the virtual camera shooting direction setting point C.
- the positive / negative setting of the distance c between the subject O and the virtual camera shooting direction setting point C is as follows.
- the distance c is set to a positive value, that is, c> 0.
- the distance c is set to a negative value, that is, c ⁇ 0.
- the virtual camera shooting direction set point C is determined in advance and shared between both devices, as with the radius R described above, in a device that performs bidirectional communication.
- the position of the viewing user A is (x 0 , z 0 ).
- the viewing user position is acquired in advance, and based on the acquired viewing user position information (x 0 , z 0 ), the setting position (x 1 , z 1 ) of the virtual camera that captures the virtual viewpoint image is determined by the following procedure. Calculate with
- the virtual camera performs processing by approximating that following a locus of a circle with a radius R around the virtual camera shooting direction setting point C.
- the center coordinate of the viewing user A is (x 0 , z 0 )
- the intersection coordinates of the locus of a circle with a radius R with the radius being the straight line OA and the distance (R) between the virtual camera shooting direction setting point C and the virtual camera.
- (X 1 , z 1 ) is the center coordinate position of the virtual camera.
- the remote virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG. 9 obtains the received remote user viewing position information 181 received from the remote side based on (x 0 , z 0 ) according to the above-described procedure.
- the virtual camera position (x 1 , z 1 ) is calculated.
- the virtual camera position (x 1 , z 1 ) becomes remote-side virtual viewpoint position information 183 that is output information of the remote-side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 shown in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (x 1 , z 1 ).
- the locus and direction of the virtual camera that captures the virtual viewpoint image of this example, and the setting position calculation process of the virtual camera will be described.
- 20 shows an example in which the position of the virtual camera shooting direction setting point C is set to move according to the viewing user position.
- the virtual camera shooting direction set point when the viewing user A is at the position p1 shown in the figure is C1 shown in the figure.
- the virtual camera shooting direction set point when the viewing user A is at the position p2 shown in the figure is C2 shown in the figure.
- the virtual camera shooting direction setting point C moves the z-axis information shown in the figure according to the viewing user position.
- the distance between the subject O and the virtual camera shooting direction setting point C is c,
- c c 0 ⁇ ⁇
- c 0 is the pre-default coefficients. Under such a setting, the position of the virtual camera shooting direction setting point C moves according to the viewing user position.
- (A) Trajectory and Direction of Virtual Camera As shown in the left side of FIG. 20, the distance between the subject O and the virtual camera shooting direction setting point C is set as c. Also, The coordinates of the viewing user A are (x 0 , z 0 ), The camera coordinates indicating the position of the virtual camera are (x 1 , z 1 ), And
- the coordinates satisfy the above formula (x 1 , z 1 ).
- R is a value of a radius centered on the virtual camera shooting direction setting point C, and is determined in advance and shared between both devices in a device that performs bidirectional communication.
- the direction of the virtual camera (the direction of the camera optical axis) is set to face the virtual camera shooting direction setting point C.
- the distance between the subject O and the virtual camera shooting direction setting point C is c.
- the coordinates of the viewing user A are (x 0 , z 0 ),
- the camera coordinates indicating the position of the virtual camera are (x 1 , z 1 ),
- the coordinates satisfy the above formula (x 1 , z 1 ).
- Example 2 Regarding an embodiment in which a virtual camera that captures a virtual viewpoint image is moved linearly
- Example 2 an example in which a virtual camera that captures a virtual viewpoint image is moved linearly will be described.
- the virtual camera that captures the virtual viewpoint image is set to move on an arc having a radius R centered on the subject O.
- Example 2 described below is an example in which a virtual camera that captures a virtual viewpoint image is moved linearly as shown in FIG.
- the diagram shown in FIG. 21 is an example in which it is assumed that the viewing user A and the virtual camera translate the position of the distance R from the subject O in the z-axis direction (vertical direction of the display surface) to the display surface.
- the coordinates are set such that the horizontal plane with the position of the user O as the origin is the xz plane, the direction parallel to the display screen is the x axis, and the vertical direction is the z axis.
- (A) Trajectory and Direction of Virtual Camera As shown in the left side of FIG. 21, the distance between the subject O and the virtual camera shooting direction setting point C is c. Also, The coordinates of the viewing user A are (x 0 , z 0 ), The camera coordinates indicating the position of the virtual camera are (x 1 , z 1 ), And
- R is the distance in the z direction from the subject O, and is determined in advance and shared between both devices in a device that performs bidirectional communication.
- the direction of the virtual camera (the direction of the camera optical axis) is set to face the virtual camera shooting direction setting point C.
- the positive / negative setting of the distance c between the subject O and the virtual camera shooting direction setting point C is as follows.
- the distance c is set to a positive value, that is, c> 0.
- the distance c is set to a negative value, that is, c ⁇ 0.
- the virtual camera shooting direction set point C is determined in advance and shared between both devices, as in the above-described R, in a device that performs bidirectional communication.
- the position of the viewing user A is (x 0 , z 0 ).
- the viewing user position is acquired in advance, and based on the acquired viewing user position information (x 0 , z 0 ), the setting position (x 1 , z 1 ) of the virtual camera that captures the virtual viewpoint image is determined by the following procedure. Calculate with
- the virtual camera performs processing by approximating that it follows the trajectory of the straight line pq of the distance R in the z direction from the subject O. If the center coordinates of the viewing user A are (x 0 , z 0 ), the intersection coordinates (x 1 , z 1 ) of the straight line OA and the straight line pq of the distance R in the z direction from the subject O are the center coordinate position of the virtual camera. Become.
- the remote virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG. 9 obtains the received remote user viewing position information 181 received from the remote side based on (x 0 , z 0 ) according to the above-described procedure.
- the virtual camera position (x 1 , z 1 ) is calculated.
- the virtual camera position (x 1 , z 1 ) becomes remote-side virtual viewpoint position information 183 that is output information of the remote-side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 shown in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (x 1 , z 1 ).
- the upper left diagram shown in FIG. 22 is also a diagram illustrating an embodiment in which a virtual camera that captures a virtual viewpoint image is moved linearly, as in FIG. 21 described above. 22 is an example in which it is assumed that the viewing user A and the virtual camera translate the position of the distance R from the subject O in the z-axis direction (vertical direction of the display surface) to the display surface.
- the coordinates are set such that the horizontal plane with the position of the user O as the origin is the xz plane, the direction parallel to the display screen is the x axis, and the vertical direction is the z axis.
- the right side of FIG. 22 shows the procedure for calculating the setting position of the virtual camera.
- the position of the viewing user A is (x 0 , z 0 ).
- the setting position (x 1 , z 1 ) of the virtual camera that captures the virtual viewpoint image is calculated in the following procedure.
- the virtual camera performs processing by approximating that it follows the trajectory of the straight line pq of the distance R in the z direction from the subject O. If the center coordinates of the viewing user A are (x 0 , z 0 ), the intersection coordinates (x 1 , z 1 ) of the straight line OA and the straight line pq of the distance R in the z direction from the subject O are the center coordinate position of the virtual camera. Become. Furthermore, it approximates that the viewing user A and the x coordinate of a virtual camera correspond.
- the remote virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG. 9 obtains the received remote user viewing position information 181 received from the remote side based on (x 0 , z 0 ) according to the above-described procedure.
- the virtual camera position (x 1 , z 1 ) is calculated.
- the virtual camera position (x 1 , z 1 ) becomes remote-side virtual viewpoint position information 183 that is output information of the remote-side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 shown in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (x 1 , z 1 ).
- FIG. 23 is a diagram illustrating the configuration of the third embodiment, and includes the following components.
- O: Shooting object ( display user included in virtual viewpoint image)
- A: Viewing user ( user viewing a virtual viewpoint image)
- Virtual viewpoint image camera ( virtual camera)
- FIG. 23 shows the y-axis and the z-axis, which are coordinate axes of the yz plane coordinates with the subject O as the origin, the vertical direction in the y direction, and the right direction in the z direction.
- the virtual camera moves on a semicircle having a radius R in the vertical (vertical) direction around the subject O.
- the position of the viewing user A is assumed to be (y 0 , z 0 ).
- Let the position of the virtual camera be (y 1 , z 1 ).
- the coordinate setting information, the setting information such as the radius R of the estimated moving circle of the viewing user, and the position information of the virtual camera shooting direction setting point C are transmitted between the information processing apparatuses that execute the bidirectional communication processing. Predetermined and shared. These pieces of information are determined and shared by both parties in a communication preparation process executed before the start of communication.
- FIG. 24 is a diagram illustrating a display example of the virtual viewpoint image generated by the setting of the virtual viewpoint image photographing camera illustrated in FIG. FIG. 24 shows the following figures.
- FIG. 24 (2) When user A is observing the display unit from the front ( when user A is observing the display unit from position p2 in FIG. 23)
- the display mode of the user O on the display unit shown in FIG. 24 is as follows.
- FIG. 24 (2) When the user A is observing the display unit from the front, the face of the user O viewed from the front is displayed. The display position of the user O is in the center of the display unit.
- FIG. 24 (1) When the user A is observing the display unit from the upper side, a face of the user O viewed from the upper side is displayed. However, the display position of the user O moves to the upper side of the display unit. This is because the orientation of the virtual image photographing camera is directed to the virtual camera photographing direction setting point C shown in FIG. 23, the point C is set at the center position of the display unit, and the display position of the user O is displayed. The position is shifted upward from the center of the part.
- FIG. 24 (3) when the user A is observing the display unit from an obliquely downward direction, a face of the user O viewed from an obliquely downward direction is displayed. However, the display position of the user O moves to the lower side of the display unit. This is because the orientation of the virtual image photographing camera is directed to the virtual camera photographing direction setting point C shown in FIG. 23, the point C is set at the center position of the display unit, and the display position of the user O is displayed. The position is shifted downward from the center of the part.
- the viewing user A grasps the position of the display user O at a position on the back side of the display screen as shown on the right side of FIG. 24 due to motion parallax.
- FIG. 25 shows an example in which a virtual camera (virtual viewpoint image capturing camera) is moved on a semicircle having a radius R in the vertical (vertical) direction around the subject O.
- a virtual camera virtual viewpoint image capturing camera
- (A) Trajectory and direction of virtual camera As shown in the left side of FIG. 25, let c be the distance between the subject O and the virtual camera shooting direction setting point C. Also, The coordinates of the viewing user A are (y 0 , z 0 ), The camera coordinates indicating the position of the virtual camera are (y 1 , z 1 ), And
- the coordinates satisfy the above formula (y 1 , z 1 ).
- R is a value of a radius centered on the subject O, and is determined in advance and shared between both devices in a device that performs bidirectional communication.
- the direction of the virtual camera (the direction of the camera optical axis) is set to face the virtual camera shooting direction setting point C.
- the positive / negative setting of the distance c between the subject O and the virtual camera shooting direction setting point C is as follows.
- the distance c is set to a positive value, that is, c> 0.
- the distance c is set to a negative value, that is, c ⁇ 0.
- the virtual camera shooting direction set point C is determined in advance and shared between both devices, as with the radius R described above, in a device that performs bidirectional communication.
- the virtual camera performs processing by approximating the tracing of a circle with a radius R centered on the subject O. Assuming that the center coordinates of the viewing user A are (y 0 , z 0 ), the intersection coordinates (y 1 , z) of the locus of a circle with a radius R with the radius (R) between the straight line OA and the subject O and the virtual camera as the radius. 1 ) is the center coordinate position of the virtual camera.
- the remote virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG. 9 uses the received remote user viewing position information 181 received from the remote side based on (y 0 , z 0 ) according to the above-described procedure.
- the virtual camera position (y 1 , z 1 ) is calculated.
- the virtual camera position (y 1 , z 1 ) becomes remote-side virtual viewpoint position information 183 that is output information of the remote-side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 shown in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (y 1 , z 1 ).
- Example 2 an example in which a virtual camera that captures a virtual viewpoint image is moved in a straight line in the vertical (up and down) direction will be described.
- the virtual camera that captures the virtual viewpoint image moves on the circular arc with the radius R set in the vertical (vertical) direction with the subject O as the center.
- a virtual camera that captures a virtual viewpoint image is moved in a straight line in the vertical (up and down) direction.
- the diagram shown in FIG. 26 is an example in which it is assumed that the viewing user A and the virtual camera move a distance R from the subject O in the z-axis direction (display surface vertical direction) vertically and linearly.
- the coordinates are set such that the vertical plane with the position of the user O as the origin is the yz plane, the vertical direction is the y axis, and the horizontal direction is the z axis.
- (A) Trajectory and Direction of Virtual Camera As shown in the left diagram of FIG. 26, let c be the distance between the subject O and the virtual camera shooting direction setting point C. Also, The coordinates of the viewing user A are (y 0 , z 0 ), The camera coordinates indicating the position of the virtual camera are (y 1 , z 1 ), And
- R is the distance in the z direction from the subject O, and is determined in advance and shared between both devices in a device that performs bidirectional communication.
- the direction of the virtual camera (the direction of the camera optical axis) is set to face the virtual camera shooting direction setting point C.
- the positive / negative setting of the distance c between the subject O and the virtual camera shooting direction setting point C is as follows.
- the distance c is set to a positive value, that is, c> 0.
- the distance c is set to a negative value, that is, c ⁇ 0.
- the virtual camera shooting direction set point C is determined in advance and shared between both devices, as in the above-described R, in a device that performs bidirectional communication.
- the virtual camera performs processing by approximating that it follows the trajectory of the straight line pq of the distance R in the z direction from the subject O. If the center coordinates of the viewing user A are (y 0 , z 0 ), the intersection coordinates (y 1 , z 1 ) of the straight line OA and the straight line pq of the distance R in the z direction from the subject O are the center coordinate position of the virtual camera. Become.
- the remote virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG. 9 uses the received remote user viewing position information 181 received from the remote side based on (y 0 , z 0 ) according to the above-described procedure.
- the virtual camera position (y 1 , z 1 ) is calculated.
- the virtual camera position (y 1 , z 1 ) becomes remote-side virtual viewpoint position information 183 that is output information of the remote-side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 shown in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (y 1 , z 1 ).
- the fifth embodiment described below is an embodiment in which the position of the virtual camera is set at a position that realizes this line-of-sight matching.
- the virtual camera setting position according to the trajectory and orientation of the virtual camera and the viewer angle in the fifth embodiment will be described.
- c be the distance between the subject O and the virtual camera shooting direction setting point C.
- the coordinates of the viewing user A are (x 0 , z 0 ),
- the camera coordinates indicating the position of the virtual camera are (x 2 , z 2 ),
- R is a value of a radius centered on the subject O, and is determined in advance and shared between both devices in a device that performs bidirectional communication.
- ⁇ is an angle formed by the virtual camera and the z axis.
- the direction of the virtual camera (the direction of the camera optical axis) is set to face the virtual camera shooting direction setting point C.
- the positive / negative setting of the distance c between the subject O and the virtual camera shooting direction setting point C is as follows.
- the distance c is set to a positive value, that is, c> 0.
- the distance c is set to a negative value, that is, c ⁇ 0.
- the virtual camera shooting direction set point C is determined in advance and shared between both devices, as with the radius R described above, in a device that performs bidirectional communication.
- the virtual camera angle ⁇ with respect to the subject O is changed according to the viewer angle ⁇ .
- ⁇ and ⁇ are the following angles, as shown in the figure.
- ⁇ an angle formed by the z axis and a straight line connecting the subject O and the virtual camera
- ⁇ angle formed by the z axis and a straight line connecting the subject O and the viewing user A
- the straight line connecting the subject O and the viewing user A is a straight line when it is assumed that the subject O and the viewing user A exist in the same space, and the position of the subject O displayed on the display unit and the viewing user A Corresponds to a straight line connecting
- the virtual camera angle ⁇ with respect to the subject O is changed according to the viewer angle ⁇ , and specifically, the virtual camera position is set to a position where the line of sight between the subject O and the viewing user A coincides. For example, if the viewing user A is at a position shifted by an angle ⁇ from the front, the position of the virtual camera is set at a position shifted by an angle ⁇ from the front.
- ⁇ is calculated by the following calculation function f using ⁇ as a parameter.
- ⁇ f ( ⁇ )
- the information processing apparatus holds the function f or the relation data between ⁇ and ⁇ in advance in a storage unit as a database.
- the information processing apparatus determines the set position of the virtual camera based on the input viewing user position using the database storage data.
- the database is generated by repeating the following two steps (S01) to (S02).
- Step S01 The subject O is photographed from the position of the angle ⁇ from the front.
- Step S02 When the viewer A is at the position of the angle ⁇ from the front of the display, the photographing subject O in (S01) is displayed on the display. The angle ⁇ at which the line of sight matches is obtained.
- 29 is a view similar to that described with reference to FIG. 27, and includes the following components.
- O: Shooting object ( display user included in virtual viewpoint image)
- A: Viewing user ( user viewing a virtual viewpoint image)
- Virtual viewpoint image camera ( virtual camera)
- the right side of FIG. 29 shows a virtual camera position calculation processing example in the setting of the fifth embodiment.
- the position of the viewing user A is (x 0 , z 0 ).
- the setting position (x 2 , z 2 ) of the virtual camera that captures the virtual viewpoint image is calculated in the following procedure.
- the viewing user A does not necessarily follow the trajectory of a circle with a radius R centered on the subject O, but the virtual camera approximates and follows the trajectory of a circle with a radius R centered on the subject O.
- the center coordinate of the viewing user A is (x 0 , z 0 )
- the intersection coordinates (x 1 , z) of the trajectory of a circle with a radius R having a radius (R) between the straight line OA and the subject O and the virtual camera as a radius. 1 ) is a reference for obtaining the position (x 2 , z 2 ) of the virtual camera.
- the virtual camera position (x 2 , z 2 ) becomes, for example, remote side virtual viewpoint position information 183 that is output information of the remote side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (x 2 , z 2 ).
- the position of the virtual camera is set to a position that realizes this line-of-sight matching.
- the movement trajectory of the virtual camera is a straight line.
- the setting position of the virtual camera according to the locus and orientation of the virtual camera and the viewer angle in the sixth embodiment will be described.
- c be the distance between the subject O and the virtual camera shooting direction setting point C.
- the coordinates of the viewing user A are (x 0 , z 0 ),
- the camera coordinates indicating the position of the virtual camera are (x 2 , z 2 ),
- the viewing user A and the virtual camera translate the position of the distance R from the subject O in the z-axis direction (vertical direction of the display surface) to the display surface.
- R is a parameter that defines the straight line pq along which the virtual camera moves, and corresponds to the distance from the subject O. This R is determined in advance in a device that performs two-way communication, and is shared between both devices.
- ⁇ is an angle formed by the virtual camera and the z axis.
- the direction of the virtual camera (the direction of the camera optical axis) is set to face the virtual camera shooting direction setting point C.
- the positive / negative setting of the distance c between the subject O and the virtual camera shooting direction setting point C is as follows.
- the distance c is set to a positive value, that is, c> 0.
- the distance c is set to a negative value, that is, c ⁇ 0.
- the virtual camera shooting direction set point C is determined in advance and shared between both devices, as in the above-described R, in a device that performs bidirectional communication.
- the virtual camera angle ⁇ with respect to the subject O is changed according to the viewer angle ⁇ .
- ⁇ and ⁇ are the following angles, as shown in the figure. ⁇ : an angle formed by the z axis and a straight line connecting the subject O and the virtual camera, ⁇ : angle formed by the z axis and a straight line connecting the subject O and the viewing user A,
- the virtual camera angle ⁇ with respect to the subject O is changed according to the viewer angle ⁇ , and specifically, the virtual camera position is set to a position where the line of sight between the subject O and the viewing user A coincides. For example, if the viewing user A is at a position shifted by an angle ⁇ from the front, the position of the virtual camera is set at a position shifted by an angle ⁇ from the front.
- ⁇ is calculated by the following calculation function f using ⁇ as a parameter.
- ⁇ f ( ⁇ )
- the information processing apparatus holds the function f or the relation data between ⁇ and ⁇ in advance in a storage unit as a database.
- the information processing apparatus determines the set position of the virtual camera based on the input viewing user position using the database storage data.
- FIG. 31 The diagram shown on the left side of FIG. 31 is the same diagram as described with reference to FIG. 30, and is composed of the following components.
- Virtual viewpoint image camera ( virtual camera)
- C Virtual camera shooting direction set point
- the right side of FIG. 31 shows a virtual camera position calculation processing example in the setting of the sixth embodiment.
- the position of the viewing user A is (x 0 , z 0 ).
- the setting position (x 2 , z 2 ) of the virtual camera that captures the virtual viewpoint image is calculated in the following procedure.
- the viewing user A does not necessarily follow the straight locus of the distance R from the subject O, but the virtual camera executes the processing by approximating that it follows the straight locus of the distance R from the subject O.
- the center coordinate of the viewing user A is (x 0 , z 0 )
- the intersection coordinates (x 1 , z 1 ) of the straight line OA and the straight line pq at a distance R from the subject O are the virtual camera position (x 2 , z 2 ) is a standard for obtaining.
- the virtual camera position (x 2 , z 2 ) becomes, for example, remote side virtual viewpoint position information 183 that is output information of the remote side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (x 2 , z 2 ).
- the virtual camera setting position according to the trajectory and orientation of the virtual camera and the viewer angle in the first modification of the sixth embodiment will be described.
- c be the distance between the subject O and the virtual camera shooting direction setting point C.
- the coordinates of the viewing user A are (x 0 , z 0 ),
- the camera coordinates indicating the position of the virtual camera are (x 2 , z 2 ),
- the viewing user A and the virtual camera translate the position of the distance R from the subject O in the z-axis direction (vertical direction of the display surface) to the display surface.
- the distance between the subject O and the viewing user A and the distance between the subject O and the virtual camera are set to be constant. Let D be this distance.
- D is the distance between the subject O and the viewing user A.
- ⁇ is an angle formed by the virtual camera and the z axis.
- the direction of the virtual camera (the direction of the camera optical axis) is set to face the virtual camera shooting direction setting point C.
- the positive / negative setting of the distance c between the subject O and the virtual camera shooting direction setting point C is as follows.
- the distance c is set to a positive value, that is, c> 0.
- the distance c is set to a negative value, that is, c ⁇ 0.
- the virtual camera shooting direction setting point C is determined in advance and shared between both devices, as in D described above, in a device that performs bidirectional communication.
- the virtual camera angle ⁇ with respect to the subject O is changed according to the viewer angle ⁇ .
- ⁇ and ⁇ are the following angles, as shown in the figure. ⁇ : an angle formed by the z axis and a straight line connecting the subject O and the virtual camera, ⁇ : angle formed by the z axis and a straight line connecting the subject O and the viewing user A,
- the virtual camera angle ⁇ with respect to the subject O is changed according to the viewer angle ⁇ , and specifically, the virtual camera position is set to a position where the line of sight between the subject O and the viewing user A coincides. For example, if the viewing user A is at a position shifted by an angle ⁇ from the front, the position of the virtual camera is set at a position shifted by an angle ⁇ from the front.
- ⁇ is calculated by the following calculation function f using ⁇ as a parameter.
- ⁇ f ( ⁇ )
- the information processing apparatus holds the function f or the relation data between ⁇ and ⁇ in advance in a storage unit as a database.
- the information processing apparatus determines the set position of the virtual camera based on the input viewing user position using the database storage data.
- FIG. 33 a virtual camera position calculation processing example in Modification 1 of the sixth embodiment will be described.
- the diagram shown on the left side of FIG. 33 is the same diagram as described with reference to FIG. 32, and is composed of the following components.
- O: Shooting object ( display user included in virtual viewpoint image)
- A: Viewing user ( user viewing a virtual viewpoint image)
- Virtual viewpoint image camera ( virtual camera)
- the right side of FIG. 33 shows a virtual camera position calculation processing example in the setting of the first modification of the sixth embodiment.
- the position of the viewing user A is (x 0 , z 0 ).
- the setting position (x 2 , z 2 ) of the virtual camera that captures the virtual viewpoint image is calculated in the following procedure.
- the viewing user A does not necessarily follow the straight locus of the distance R from the subject O, but the virtual camera executes the processing by approximating that it follows the straight locus of the distance R from the subject O.
- the center coordinate of the viewing user A is (x 0 , z 0 )
- the intersection coordinates (x 1 , z 1 ) of the straight line OA and the straight line pq at a distance R from the subject O are the virtual camera position (x 2 , z 2 ) is a standard for obtaining.
- the virtual camera position (x 2 , z 2 ) becomes, for example, remote side virtual viewpoint position information 183 that is output information of the remote side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (x 2 , z 2 ).
- the seventh embodiment will be described with reference to FIG.
- the diagram shown on the left side of FIG. 34 is a diagram for explaining the configuration of the seventh embodiment, and includes the following components.
- O: Shooting object ( display user included in virtual viewpoint image)
- A: Viewing user ( user viewing a virtual viewpoint image)
- Virtual viewpoint image camera ( virtual camera)
- the angle ⁇ is an angle formed by the z axis and a straight line connecting the subject O and the viewing user A.
- the viewing user A moves on an arc of radius R centered on the subject O
- the virtual camera is set to move on an arc of radius (R + r) centered on the subject O. Yes.
- FIG. 33 shows (a) a description of the trajectory and orientation of the virtual camera.
- the direction of the virtual camera (the direction of the camera optical axis) is set to face the virtual camera shooting direction setting point C.
- the positive / negative setting of the distance c between the subject O and the virtual camera shooting direction setting point C is as follows.
- the distance c is set to a positive value, that is, c> 0.
- the distance c is set to a negative value, that is, c ⁇ 0.
- FIG. 35 a virtual camera position calculation processing example in the setting of the seventh embodiment will be described.
- the diagram shown on the left side of FIG. 35 is the same diagram as described with reference to FIG. 34, and is composed of the following components.
- O: Shooting object ( display user included in virtual viewpoint image)
- A: Viewing user ( user viewing a virtual viewpoint image)
- Virtual viewpoint image camera ( virtual camera)
- the right side of FIG. 35 shows a virtual camera position calculation processing example in the setting of the seventh embodiment.
- the position of the viewing user A is (x 0 , z 0 ).
- the setting position (x 2 , z 2 ) of the virtual camera that captures the virtual viewpoint image is calculated in the following procedure.
- the viewing user A does not necessarily follow the trajectory of a circle with a radius R centered on the subject O, but the virtual camera approximates the trajectory of a circle with a radius (R + r) centered on the subject O.
- the center coordinate of the viewing user A is (x 0 , z 0 )
- the intersection coordinates (x 1 , z) of the trajectory of a circle with a radius R having a radius (R) between the straight line OA and the subject O and the virtual camera as a radius. 1 ) is a reference for obtaining the position (x 2 , z 2 ) of the virtual camera.
- the virtual camera position (x 2 , z 2 ) becomes, for example, remote side virtual viewpoint position information 183 that is output information of the remote side virtual viewpoint position calculation unit 161 of the remote information processing unit 107 illustrated in FIG.
- the local virtual viewpoint position information 233 that is output information of the local virtual viewpoint position calculation unit 202 of the local information processing unit 102 illustrated in FIG. 14 is the virtual camera position (x 2 , z 2 ).
- the seventh embodiment is characterized in that the distance between the virtual camera and the subject O is kept constant.
- the effect of this processing will be described with reference to FIG. FIG. 36 shows the distance c from the subject O to the virtual camera shooting direction setting point C.
- FIG. 6 is a diagram illustrating two examples of c> 0 (a virtual camera shooting direction setting point C is set behind an object O).
- FIG. 36 (1) shows a display example when c> 0 (the virtual camera shooting direction set point C is set in front of the subject O).
- the face of the subject O is displayed so as to be localized on the back side of the display screen (display), this means that the distance between the viewing user A and the subject O is increased.
- the virtual camera is moved away from the object to be imaged (r> 0). Then, the face to be photographed is displayed small.
- FIG. 36 (2) shows a display example when c> 0 (the virtual camera shooting direction set point C is set behind the subject O).
- the face of the subject O is displayed so as to be localized on the front side of the display screen (display), this means that the distance between the viewing user A and the subject O is closer.
- the virtual camera is brought closer to the shooting target (r ⁇ 0). Then, the face to be photographed is displayed large.
- the size of the subject is changed according to the position setting of the virtual camera shooting direction setting point C.
- the virtual camera position is set to further emphasize this effect by controlling the parameter r as the separation distance from the viewing user.
- FIG. 37 is a diagram illustrating a hardware configuration example of an information processing apparatus that executes the processing of the present disclosure.
- a CPU (Central Processing Unit) 501 functions as a control unit or a data processing unit that executes various processes according to a program stored in a ROM (Read Only Memory) 502 or a storage unit 508. For example, processing according to the sequence described in the above-described embodiment is executed.
- a RAM (Random Access Memory) 503 stores programs executed by the CPU 501 and data.
- the CPU 501, ROM 502, and RAM 503 are connected to each other by a bus 504.
- the CPU 501 is connected to the input / output interface 505 via the bus 504, and the input unit 506, the output unit 507, and the like are connected to the input / output interface 505.
- the input unit 506 inputs sensor information (captured image and depth information) from the sensor 521 and inputs various data, commands, setting information, and the like from various switches, keyboards, mice, microphones, and the like that can be input by the user. I do.
- the output unit 507 executes, for example, data output to the display unit 522 or a speaker.
- the CPU 501 executes various processes corresponding to data input from the input unit 506 and commands, and outputs the processing results to, for example, the output unit 507.
- the storage unit 508 connected to the input / output interface 505 includes, for example, a hard disk and stores programs executed by the CPU 501 and various data.
- the communication unit 509 functions as a data transmission / reception unit for Wi-Fi communication, Bluetooth (registered trademark) communication, and other data communication via a network such as the Internet or a local area network, and communicates with an external device.
- the drive 510 connected to the input / output interface 505 drives a removable medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card, and executes data recording or reading.
- a removable medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory such as a memory card
- the technology disclosed in this specification can take the following configurations.
- a virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of the virtual camera that captures the virtual viewpoint image based on viewing position information of the viewing user of the virtual viewpoint image;
- a virtual viewpoint image generation unit that generates a virtual viewpoint image corresponding to a captured image from the virtual viewpoint position;
- the virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user,
- An information processing apparatus that generates a virtual viewpoint image in which a shooting direction is set to a virtual camera shooting direction setting point C set at a position different from the subject user.
- the virtual viewpoint image generation unit The information processing apparatus according to (1), wherein a virtual viewpoint image that is assumed to have been shot with a shooting direction directed toward the virtual camera shooting direction setting point C set at the front position of the subject user is generated.
- the virtual viewpoint position calculation unit The circumference of a circle set on the horizontal plane with the subject user as the center is a virtual camera locus, and the proximity position of the viewing user position on the virtual camera locus is a virtual viewpoint position,
- the virtual viewpoint image generation unit A virtual viewpoint image in which a shooting direction is set to the virtual camera shooting direction setting point C is generated from a virtual camera trajectory along the circumference of a circle set on a horizontal plane with the subject user as a center (1) or (2)
- the virtual viewpoint position calculation unit The circumference of a circle set on the horizontal plane with the virtual camera shooting direction setting point C as the center is defined as a virtual camera trajectory, and the proximity position of the viewing user position on the virtual camera trajectory is defined as a virtual viewpoint position,
- the virtual viewpoint image generation unit From the virtual camera trajectory along the circumference of a circle set on the horizontal plane with the virtual camera shooting direction setting point C as the center, a virtual viewpoint image in which the shooting direction is set to the virtual camera shooting direction setting point C is generated (1 ) Or the information processing apparatus according to (2).
- the virtual viewpoint image generation unit According to the viewing user's position, the position of the virtual camera shooting direction setting point C is changed to generate a virtual viewpoint image in which the shooting direction is set to the virtual camera shooting direction setting point C (1) to (4) )
- the information processing apparatus according to any one of the above.
- the virtual viewpoint position calculation unit A straight line set on a horizontal plane through a point separated from the subject user by a predetermined distance is set as a virtual camera locus, and a proximity position of the viewing user position on the virtual camera locus is set as a virtual viewpoint position,
- the virtual viewpoint image generation unit A virtual viewpoint image in which a shooting direction is set to the virtual camera shooting direction setting point C is generated from a virtual camera trajectory along a straight line set on a horizontal plane through a point separated by a predetermined distance from the subject user (1).
- the information processing apparatus according to (2).
- the virtual viewpoint position calculation unit The circumference of a circle set on the vertical plane centered on the subject user is a virtual camera trajectory, and the proximity position of the viewing user position on the virtual camera trajectory is a virtual viewpoint position,
- the virtual viewpoint image generation unit A virtual viewpoint image in which a shooting direction is set to the virtual camera shooting direction setting point C is generated from a virtual camera trajectory along a circle set on a vertical plane with the subject user as a center (1) or (2) ).
- the virtual viewpoint position calculation unit A straight line set on a vertical plane passing through a point separated from the subject user by a predetermined distance is defined as a virtual camera locus, and a proximity position of the viewing user position on the virtual camera locus is defined as a virtual viewpoint position,
- the virtual viewpoint image generation unit A virtual viewpoint image in which a shooting direction is set to the virtual camera shooting direction setting point C is generated from a virtual camera trajectory along a straight line set on a vertical plane through a point separated from the subject user by a predetermined distance (1).
- the information processing apparatus according to (2).
- the virtual viewpoint position calculation unit A line-of-sight matching position in which the line-of-sight of the display user in the virtual viewpoint image and the viewing user match is calculated as a virtual viewpoint position;
- the virtual viewpoint image generation unit The information processing apparatus according to (1) or (2), wherein a virtual viewpoint image in which a shooting direction is set to the virtual camera shooting direction setting point C is generated with the line-of-sight matching position as a virtual camera position.
- the virtual viewpoint position calculation unit The circumference of a circle set on the horizontal plane with the subject user as the center is a virtual camera locus, and the proximity position of the viewing user position on the virtual camera locus is a virtual viewpoint position,
- the virtual viewpoint image generation unit The information according to (9), wherein a virtual viewpoint image in which a shooting direction is set to the virtual camera shooting direction setting point C is generated from a virtual camera trajectory along a circumference of a circle set on a horizontal plane with the subject user as a center. Processing equipment.
- the virtual viewpoint position calculation unit A straight line set on a horizontal plane through a point separated from the subject user by a predetermined distance is set as a virtual camera locus, and a proximity position of the viewing user position on the virtual camera locus is set as a virtual viewpoint position,
- the virtual viewpoint image generation unit A virtual viewpoint image in which the shooting direction is set to the virtual camera shooting direction setting point C is generated from a virtual camera trajectory along a straight line set on a horizontal plane through a point separated from the subject user by a predetermined distance (9).
- the information processing apparatus described in 1.
- a receiving unit that receives viewing position information of the viewing user of the virtual viewpoint image;
- a virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of a virtual camera that captures a virtual viewpoint image based on the viewing position information;
- a virtual viewpoint image generation unit that generates a virtual viewpoint image corresponding to a photographed image from the virtual viewpoint position;
- a transmission unit that transmits the virtual viewpoint image generated by the virtual viewpoint image generation unit to the device on the viewing user side;
- the virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user,
- An information processing apparatus that generates a virtual viewpoint image in which a shooting direction is set to a virtual camera shooting direction setting point C set at a position different from the subject user.
- a viewing position detection unit that detects viewing position information of the viewing user of the virtual viewpoint image
- a virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of a virtual camera that captures a virtual viewpoint image based on the viewing position information
- a virtual viewpoint image generation unit that generates a virtual viewpoint image corresponding to a captured image from the virtual viewpoint position
- the virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user,
- An information processing apparatus that generates a virtual viewpoint image in which a shooting direction is set to a virtual camera shooting direction setting point C set at a position different from the subject user.
- the information processing apparatus includes: A receiving unit that receives an image applied to the generation of the virtual viewpoint image; The virtual viewpoint image generation unit The information processing apparatus according to (13), wherein a virtual viewpoint image is generated based on an image received by the reception unit.
- An information processing system having a first information processing apparatus and a second information processing apparatus that perform bidirectional communication
- the first information processing device and the second information processing device are: A receiving unit that receives viewing position information of the viewing user of the virtual viewpoint image from the communication partner device; A virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of a virtual camera that captures a virtual viewpoint image to be displayed on the display unit of the communication partner apparatus based on the viewing position information; A virtual viewpoint image generation unit that generates a virtual viewpoint image corresponding to a photographed image from the virtual viewpoint position; A transmission unit that transmits the virtual viewpoint image to a communication partner device; The virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user, An information processing system that generates a virtual viewpoint image in which a shooting direction is set to a virtual camera shooting direction setting point C set at a position different from the subject user.
- the virtual viewpoint position calculation unit calculates a virtual viewpoint position corresponding to the position of the virtual camera that captures the virtual viewpoint image based on the viewing position information of the viewing user of the virtual viewpoint image
- a virtual viewpoint image generation unit executes a virtual viewpoint image generation process for generating a virtual viewpoint image corresponding to a photographed image from the virtual viewpoint position;
- the virtual viewpoint image generation unit The virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user, and a virtual viewpoint image in which a photographing direction is set to a virtual camera photographing direction setting point C set at a position different from the subject user is generated.
- a program for executing information processing in an information processing device Based on the viewing position information of the viewing user of the virtual viewpoint image, the virtual viewpoint position calculation unit calculates a virtual viewpoint position corresponding to the position of the virtual camera that captures the virtual viewpoint image, Causing the virtual viewpoint image generation unit to execute a virtual viewpoint image generation process for generating a virtual viewpoint image corresponding to a photographed image from the virtual viewpoint position;
- the virtual viewpoint image is generated based on a photographed image of a real camera that photographed the subject user, and a virtual viewpoint image in which a photographing direction is set to a virtual camera photographing direction setting point C set at a position different from the subject user is generated.
- the series of processes described in the specification can be executed by hardware, software, or a combined configuration of both.
- the program recording the processing sequence is installed in a memory in a computer incorporated in dedicated hardware and executed, or the program is executed on a general-purpose computer capable of executing various processing. It can be installed and run.
- the program can be recorded in advance on a recording medium.
- the program can be received via a network such as a LAN (Local Area Network) or the Internet and installed on a recording medium such as a built-in hard disk.
- the various processes described in the specification are not only executed in time series according to the description, but may be executed in parallel or individually according to the processing capability of the apparatus that executes the processes or as necessary.
- the system is a logical set configuration of a plurality of devices, and the devices of each configuration are not limited to being in the same casing.
- a configuration in which a virtual viewpoint image transmitted and received between information processing apparatuses that perform bidirectional communication is used as a more natural stereoscopic image is realized.
- a virtual viewpoint position calculation unit that calculates a virtual viewpoint position corresponding to the position of the virtual camera that captures the virtual viewpoint image
- a virtual viewpoint image generation unit configured to generate a virtual viewpoint image corresponding to the captured image;
- the virtual viewpoint image generation unit is configured to generate a virtual viewpoint image based on a photographed image of a real camera that photographed the subject user, and sets a photographing direction at a virtual camera photographing direction setting point C set at a position different from the subject user.
- the generated virtual viewpoint image is generated.
- a virtual viewpoint image that is assumed to be shot with the shooting direction directed to the virtual camera shooting direction setting point C set at the front position of the subject user is generated.
- a configuration is realized in which a virtual viewpoint image transmitted and received between information processing apparatuses that perform bidirectional communication is a more natural stereoscopic image.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Geometry (AREA)
- Computing Systems (AREA)
- Computer Graphics (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Closed-Circuit Television Systems (AREA)
- Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
Abstract
双方向コミュニケーションを実行する情報処理装置間で送受信する仮想視点画像を、より自然な立体画像とする構成を実現する。仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有する。仮想視点画像生成部は、被写体ユーザを撮影した実カメラの撮影画像に基づいて仮想視点画像を生成する構成であり、被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する。例えば、被写体ユーザの前方位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を向けて撮影したと想定される仮想視点画像を生成する。
Description
本開示は、情報処理装置、情報処理システム、および情報処理方法、並びにプログラムに関する。さらに詳細には、例えばネットワークを介した双方向通信により画像や音声を送信し、双方向コミュニケーションを実行する情報処理装置、情報処理システム、および情報処理方法、並びにプログラムに関する。
ネットワークを介した双方向通信により画像や音声を送受信するテレビ会議システム等の双方向コミュニケーションシステムは、様々な分野で利用されている。
昨今では、高精細の大型ディスプレイが多く利用され、また、ネットワークを介して通信される画像、音声の品質も向上しており、ディスプレイに表示された遠隔のユーザとのコミュニケーションを、同じ会議室で行っているような感覚で行うことが可能となっている。
昨今では、高精細の大型ディスプレイが多く利用され、また、ネットワークを介して通信される画像、音声の品質も向上しており、ディスプレイに表示された遠隔のユーザとのコミュニケーションを、同じ会議室で行っているような感覚で行うことが可能となっている。
しかし、このような、双方向コミュニケーションシステムでは、多くの場合、表示部(ディスプレイ)に表示される会議参加者等のユーザは平面的な2次元画像であり、そのため、相手方がその場にいるような雰囲気が失われ、臨場感に欠けるという問題点がある。
このような問題点を解決する従来技術として、例えば特許文献1(特開2014-86775号公報)がある。
特許文献1には、表示部の表示画像を3次元モデルとして表示し、視聴者の動きに応じて、例えば表示人物の向きを変更する構成を開示している。
この文献に開示された構成は、視聴者の動きに応じて表示画像を変更することで、立体感のある画像が観察できる。しかし、例えば表示部に表示される人物位置は、ディスプレイ上の1つの位置に固定され、不自然な動きを示す3次元画像として観察されるという問題がある。
特許文献1には、表示部の表示画像を3次元モデルとして表示し、視聴者の動きに応じて、例えば表示人物の向きを変更する構成を開示している。
この文献に開示された構成は、視聴者の動きに応じて表示画像を変更することで、立体感のある画像が観察できる。しかし、例えば表示部に表示される人物位置は、ディスプレイ上の1つの位置に固定され、不自然な動きを示す3次元画像として観察されるという問題がある。
本開示は、例えば、上述の問題点に鑑みてなされたものであり、例えば、双方向コミュニケーションシステムにおいて利用される表示部(ディスプレイ)に表示する画像を、あたかもその場にいるような表示画像として表示することを可能とした情報処理装置、情報処理システム、および情報処理方法、並びにプログラムを提供することを目的とする。
本開示の第1の側面は、
仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置にある。
仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置にある。
さらに、本開示の第2の側面は、
仮想視点画像の視聴ユーザの視聴位置情報を受信する受信部と、
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像生成部の生成した仮想視点画像を、前記視聴ユーザ側の装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置にある。
仮想視点画像の視聴ユーザの視聴位置情報を受信する受信部と、
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像生成部の生成した仮想視点画像を、前記視聴ユーザ側の装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置にある。
さらに、本開示の第3の側面は、
仮想視点画像の視聴ユーザの視聴位置情報を検出する視聴位置検出部と、
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置にある。
仮想視点画像の視聴ユーザの視聴位置情報を検出する視聴位置検出部と、
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置にある。
さらに、本開示の第4の側面は、
双方向通信を実行する第1情報処理装置と第2情報処理装置を有する情報処理システムであり、
前記第1情報処理装置、および第2情報処理装置は、
通信相手装置から、仮想視点画像の視聴ユーザの視聴位置情報を受信する受信部と、
前記視聴位置情報に基づいて、通信相手装置の表示部に表示する仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像を通信相手装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理システムにある。
双方向通信を実行する第1情報処理装置と第2情報処理装置を有する情報処理システムであり、
前記第1情報処理装置、および第2情報処理装置は、
通信相手装置から、仮想視点画像の視聴ユーザの視聴位置情報を受信する受信部と、
前記視聴位置情報に基づいて、通信相手装置の表示部に表示する仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像を通信相手装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理システムにある。
さらに、本開示の第5の側面は、
情報処理装置において実行する情報処理方法であり、
仮想視点位置算出部が、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出し、
仮想視点画像生成部が、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成するとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理方法にある。
情報処理装置において実行する情報処理方法であり、
仮想視点位置算出部が、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出し、
仮想視点画像生成部が、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成するとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理方法にある。
さらに、本開示の第6の側面は、
情報処理装置において情報処理を実行させるプログラムであり、
仮想視点位置算出部に、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出させ、
仮想視点画像生成部に、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行させ、
前記仮想視点画像生成処理において、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成させるとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成させるプログラムにある。
情報処理装置において情報処理を実行させるプログラムであり、
仮想視点位置算出部に、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出させ、
仮想視点画像生成部に、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行させ、
前記仮想視点画像生成処理において、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成させるとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成させるプログラムにある。
なお、本開示のプログラムは、例えば、様々なプログラム・コードを実行可能な情報処理装置やコンピュータ・システムに対して、コンピュータ可読な形式で提供する記憶媒体、通信媒体によって提供可能なプログラムである。このようなプログラムをコンピュータ可読な形式で提供することにより、情報処理装置やコンピュータ・システム上でプログラムに応じた処理が実現される。
本開示のさらに他の目的、特徴や利点は、後述する本開示の実施例や添付する図面に基づくより詳細な説明によって明らかになるであろう。なお、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
本開示の一実施例の構成によれば、双方向コミュニケーションを実行する情報処理装置間で送受信する仮想視点画像を、より自然な立体画像とする構成が実現される。
具体的には、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有する。仮想視点画像生成部は、被写体ユーザを撮影した実カメラの撮影画像に基づいて仮想視点画像を生成する構成であり、被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する。例えば、被写体ユーザの前方位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を向けて撮影したと想定される仮想視点画像を生成する。
本構成により、双方向コミュニケーションを実行する情報処理装置間で送受信する仮想視点画像を、より自然な立体画像とする構成が実現される。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
具体的には、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有する。仮想視点画像生成部は、被写体ユーザを撮影した実カメラの撮影画像に基づいて仮想視点画像を生成する構成であり、被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する。例えば、被写体ユーザの前方位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を向けて撮影したと想定される仮想視点画像を生成する。
本構成により、双方向コミュニケーションを実行する情報処理装置間で送受信する仮想視点画像を、より自然な立体画像とする構成が実現される。
なお、本明細書に記載された効果はあくまで例示であって限定されるものではなく、また付加的な効果があってもよい。
以下、図面を参照しながら本開示の情報処理装置、情報処理システム、および情報処理方法、並びにプログラムの詳細について説明する。なお、説明は以下の項目に従って行なう。
1.双方向コミュニケーション処理の概要と、運動視差に基づく立体感提示効果について
2.表示部の表示オブジェクトを、自然な奥行き感のある立体画像として表示する構成について
3.本開示の情報処理装置の構成と処理について
4.(実施例1)仮想カメラを半径Rの円状に移動させる実施例について
5.情報処理装置の実行する処理シーケンスについて
6.自装置の表示部に表示する表示用仮想視点画像生成処理を、自装置側で行う実施例について
7.(実施例1の変形例1)仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について
8.(実施例1の変形例2)仮想カメラ撮影方向設定点Cを被写体後方に配置した例について
9.(実施例1の変形例3)仮想カメラを、仮想カメラ撮影方向設定点Cを中心とする半径Rの円上に位置させた例について
10.(実施例1の変形例4)仮想カメラ撮影方向設定点Cの位置を視聴ユーザ位置に応じて移動する設定とした例について
11.(実施例2)仮想視点画像を撮影する仮想カメラを直線状に移動させる実施例について
12.(実施例2の変形例1)仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について
13.(実施例3)仮想視点画像を撮影する仮想カメラを半径Rの垂直の円状に移動させる実施例について
14.(実施例4)仮想視点画像を撮影する仮想カメラを垂直な直線状に移動させる実施例について
15.(実施例5)仮想カメラの位置を被写体と視聴者の視線が一致する位置とする実施例について
16(実施例6)仮想カメラの位置を被写体と視聴者の視線が一致する位置とし、仮想カメラの動きを直線状に設定した実施例について
17.(実施例6の変形例1)仮想カメラの位置を被写体と視聴者間の視線が一致する位置とし、仮想カメラの軌跡を、仮想カメラと被写体間距離を一定に保つ設定とした実施例について
18.(実施例7)仮想カメラの位置を被写体と視聴者間を結ぶ直線上の位置(視聴者の後方等)にした実施例について
19.情報処理装置のハードウェア構成例について
20.本開示の構成のまとめ
1.双方向コミュニケーション処理の概要と、運動視差に基づく立体感提示効果について
2.表示部の表示オブジェクトを、自然な奥行き感のある立体画像として表示する構成について
3.本開示の情報処理装置の構成と処理について
4.(実施例1)仮想カメラを半径Rの円状に移動させる実施例について
5.情報処理装置の実行する処理シーケンスについて
6.自装置の表示部に表示する表示用仮想視点画像生成処理を、自装置側で行う実施例について
7.(実施例1の変形例1)仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について
8.(実施例1の変形例2)仮想カメラ撮影方向設定点Cを被写体後方に配置した例について
9.(実施例1の変形例3)仮想カメラを、仮想カメラ撮影方向設定点Cを中心とする半径Rの円上に位置させた例について
10.(実施例1の変形例4)仮想カメラ撮影方向設定点Cの位置を視聴ユーザ位置に応じて移動する設定とした例について
11.(実施例2)仮想視点画像を撮影する仮想カメラを直線状に移動させる実施例について
12.(実施例2の変形例1)仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について
13.(実施例3)仮想視点画像を撮影する仮想カメラを半径Rの垂直の円状に移動させる実施例について
14.(実施例4)仮想視点画像を撮影する仮想カメラを垂直な直線状に移動させる実施例について
15.(実施例5)仮想カメラの位置を被写体と視聴者の視線が一致する位置とする実施例について
16(実施例6)仮想カメラの位置を被写体と視聴者の視線が一致する位置とし、仮想カメラの動きを直線状に設定した実施例について
17.(実施例6の変形例1)仮想カメラの位置を被写体と視聴者間の視線が一致する位置とし、仮想カメラの軌跡を、仮想カメラと被写体間距離を一定に保つ設定とした実施例について
18.(実施例7)仮想カメラの位置を被写体と視聴者間を結ぶ直線上の位置(視聴者の後方等)にした実施例について
19.情報処理装置のハードウェア構成例について
20.本開示の構成のまとめ
[1.双方向コミュニケーション処理の概要と、運動視差に基づく立体感提示効果について]
まず、双方向コミュニケーション処理の概要と、運動視差に基づく立体感提示効果について説明する。
図1は、双方向コミュニケーションシステム構成の一例を示す図である。
まず、双方向コミュニケーション処理の概要と、運動視差に基づく立体感提示効果について説明する。
図1は、双方向コミュニケーションシステム構成の一例を示す図である。
図1には、
(1)第1ロケーション
(2)第2ロケーション
これらの2つのロケーションの構成例を示している。
これら2つのロケーションは、各々離れた遠隔地にあり、各ロケーションにいるユーザ同士が、双方向コミュニケーションを行う。各ロケーションのシステム同士がネットワーク30を介して接続されている。
(1)第1ロケーション
(2)第2ロケーション
これらの2つのロケーションの構成例を示している。
これら2つのロケーションは、各々離れた遠隔地にあり、各ロケーションにいるユーザ同士が、双方向コミュニケーションを行う。各ロケーションのシステム同士がネットワーク30を介して接続されている。
第1ロケーションには、ユーザAがいる。
また、第1ロケーションには、表示部(ディスプレイ)11、カメラ12a~c、音声入出力部(マイク&スピーカ)13a~bを備えた情報処理装置10がある。
一方、第2ロケーションには、ユーザBがいる。
また、第2ロケーションには、表示部(ディスプレイ)21、カメラ22a~c、音声入出力部(マイク&スピーカ)23a~bを備えた情報処理装置10がある。
また、第1ロケーションには、表示部(ディスプレイ)11、カメラ12a~c、音声入出力部(マイク&スピーカ)13a~bを備えた情報処理装置10がある。
一方、第2ロケーションには、ユーザBがいる。
また、第2ロケーションには、表示部(ディスプレイ)21、カメラ22a~c、音声入出力部(マイク&スピーカ)23a~bを備えた情報処理装置10がある。
第1ロケーションのカメラ12a~cは、第1ロケーションのユーザAを異なる方向から撮影する。
情報処理装置10内のデータ処理部は、これらの画像から送信用画像として、1つの仮想視点画像を生成しネットワーク30を介して第2ロケーションの情報処理装置20に送信する。
第2ロケーションの情報処理装置20の表示部21には、第1ロケーションの情報処理装置10が生成した1つの仮想視点画像が表示される。
この仮想視点画像は、例えばユーザBの視点からの観察画像である。ユーザBの視点情報は、第2ロケーションのカメラ22a~22cによる撮影画像に基づいて、情報処理装置20が解析し、この視点解析情報が第1ロケーションの情報処理装置10に送信される。
情報処理装置10内のデータ処理部は、これらの画像から送信用画像として、1つの仮想視点画像を生成しネットワーク30を介して第2ロケーションの情報処理装置20に送信する。
第2ロケーションの情報処理装置20の表示部21には、第1ロケーションの情報処理装置10が生成した1つの仮想視点画像が表示される。
この仮想視点画像は、例えばユーザBの視点からの観察画像である。ユーザBの視点情報は、第2ロケーションのカメラ22a~22cによる撮影画像に基づいて、情報処理装置20が解析し、この視点解析情報が第1ロケーションの情報処理装置10に送信される。
なお、第1ロケーションの音声入出力部(マイク&スピーカ)13a,bは、第1ロケーションのユーザAの発話等を取得し、取得音声データが、ネットワーク30を介して第2ロケーションの情報処理装置20に送信される。
第2ロケーションの情報処理装置20は、第1ロケーションからの受信音声を、音声入出力部(マイク&スピーカ)23a,bを介して出力する。
第2ロケーションの情報処理装置20は、第1ロケーションからの受信音声を、音声入出力部(マイク&スピーカ)23a,bを介して出力する。
一方、第2ロケーションのカメラ22a~cは、第2ロケーションのユーザBを異なる方向から撮影する。
情報処理装置20内のデータ処理部は、これらの画像から送信用画像として、1つの仮想視点画像を生成しネットワーク30を介して第1ロケーションの情報処理装置10に送信する。
第1ロケーションの情報処理装置10の表示部11には、第2ロケーションの情報処理装置20が生成した1つの仮想視点画像が表示される。
この仮想視点画像は、例えばユーザAの視点からの観察画像である。ユーザAの視点情報は、第1ロケーションのカメラ12a~12cによる撮影画像に基づいて、情報処理装置10が解析し、この視点解析情報が第2ロケーションの情報処理装置20に送信される。
情報処理装置20内のデータ処理部は、これらの画像から送信用画像として、1つの仮想視点画像を生成しネットワーク30を介して第1ロケーションの情報処理装置10に送信する。
第1ロケーションの情報処理装置10の表示部11には、第2ロケーションの情報処理装置20が生成した1つの仮想視点画像が表示される。
この仮想視点画像は、例えばユーザAの視点からの観察画像である。ユーザAの視点情報は、第1ロケーションのカメラ12a~12cによる撮影画像に基づいて、情報処理装置10が解析し、この視点解析情報が第2ロケーションの情報処理装置20に送信される。
また、第2ロケーションの音声入出力部(マイク&スピーカ)23a,bは、第2ロケーションのユーザBの発話等を取得し、取得音声データが、ネットワーク30を介して第1ロケーションの情報処理装置10に送信される。
第1ロケーションの情報処理装置10は、第2ロケーションからの受信音声を、音声入出力部(マイク&スピーカ)13a,bを介して出力する。
第1ロケーションの情報処理装置10は、第2ロケーションからの受信音声を、音声入出力部(マイク&スピーカ)13a,bを介して出力する。
このような処理により、第1ロケーションのユーザAと、第2ロケーションのユーザBは、遠隔地のユーザの画像と発話を表示部、スピーカを介して取得し、双方向コミュニケーションを行うことが可能となる。
このような双方向コミュニケーション処理において、表示部11,21に表示されるユーザの表示画像として、仮想視点画像を用いることで、コミュニケーション相手が、その場にいるような臨場感を持ってコミュニケーションを行うことが可能となる。
仮想視点画像を用いることで、表示部に表示された対話ユーザが、自分と同じロケーションで対面しているような感覚、すなわち立体感を持つ画像として提示することができる。
この立体感の提示効果を与える視差として運動視差がある。
図2以下を参照して運動視差に基づく立体感提示効果について説明する。
人間は、視覚的な観察情報に基づいて、観察対象の立体構造、すなわち3次元構造を把握することができる。
その1つが、左右の眼に観察される画像の視差、すなわち両眼視差である。
さらに、もう1つが運動視差である。
この立体感の提示効果を与える視差として運動視差がある。
図2以下を参照して運動視差に基づく立体感提示効果について説明する。
人間は、視覚的な観察情報に基づいて、観察対象の立体構造、すなわち3次元構造を把握することができる。
その1つが、左右の眼に観察される画像の視差、すなわち両眼視差である。
さらに、もう1つが運動視差である。
運動視差とは、観察者あるいは観察対象、いずれかの動きに応じて発生する視差である。例えば、電車の窓から外を観察した場合、近くのものは素早く動き、遠くの山などの風景はゆっくり動く。運動視差は、このように観察オブジェクト自体の動き、または観察者自身の動きによって、観察距離に応じて発生する視差であり、自分の近くにあるものと遠くにあるもの、すなわち被写体距離を判別して立体感を把握可能としている。
なお、この運動視差は、両眼視差とは異なり、片目で観察した画像からも得られる視差であり、片目観察によっても立体感を把握することができる。
なお、この運動視差は、両眼視差とは異なり、片目で観察した画像からも得られる視差であり、片目観察によっても立体感を把握することができる。
運動視差による立体感の把握、および提示例について、図2、図3を参照して説明する。
図2は、例えば、図1を参照して説明したシステムを利用したテレビ会議等を行っているユーザA,Bを示している。ユーザAは、第1ロケーションにおり、ユーザBは、遠隔地の第2ロケーションにいる。ユーザBの画像や音声がネットワークを介して、ユーザAのいる第1ロケーションに送信され、ユーザBの顔が表示部(ディスプレイ)に表示され、ユーザAとユーザB間で会話が行われる。
図2は、例えば、図1を参照して説明したシステムを利用したテレビ会議等を行っているユーザA,Bを示している。ユーザAは、第1ロケーションにおり、ユーザBは、遠隔地の第2ロケーションにいる。ユーザBの画像や音声がネットワークを介して、ユーザAのいる第1ロケーションに送信され、ユーザBの顔が表示部(ディスプレイ)に表示され、ユーザAとユーザB間で会話が行われる。
図2には、以下の各図を示している。
図2中央の(1)ユーザAが表示部を正面から観察している場合
図2左側の(2)ユーザAが表示部を左斜めから観察している場合
図2右側の(3)ユーザAが表示部を右斜めから観察している場合
図2中央の(1)ユーザAが表示部を正面から観察している場合
図2左側の(2)ユーザAが表示部を左斜めから観察している場合
図2右側の(3)ユーザAが表示部を右斜めから観察している場合
ユーザBのいる第2ロケーションにおいて、ユーザBの顔の撮影を、ユーザBの正面にある1台のカメラで行い、その撮影画像が、そのまま、第1ロケーションの表示部に表示する構成の場合、図2(1)~(3)に示すように、ユーザAの観察位置が変化しても、ユーザBの表示態様は全く変わらず、正面向きの顔、すなわち、ユーザBを正面から見た顔(正面顔)の画像となる。
このような表示処理を行なうと、ユーザAは、ユーザBを平面的な2次元画像としてしか観察できず、立体感を把握することができない。
すなわち、運動視差による立体感の把握ができない。
このような表示処理を行なうと、ユーザAは、ユーザBを平面的な2次元画像としてしか観察できず、立体感を把握することができない。
すなわち、運動視差による立体感の把握ができない。
これに対して、運動視差による立体感の把握を可能とした表示態様の例を図3に示す。
図3に示す3つの図は、図2と同様、以下の各図を示している。
図3中央(1)ユーザAが表示部を正面から観察している場合
図3左側(2)ユーザAが表示部を左斜めから観察している場合
図3右側(3)ユーザAが表示部を右斜めから観察している場合
図3に示す3つの図は、図2と同様、以下の各図を示している。
図3中央(1)ユーザAが表示部を正面から観察している場合
図3左側(2)ユーザAが表示部を左斜めから観察している場合
図3右側(3)ユーザAが表示部を右斜めから観察している場合
図3に示す表示部のユーザBの表示態様は、以下の通りである。
図3中央(1)ユーザAが表示部を正面から観察している場合には、ユーザBを正面から見た顔が表示されている。
図3左側(2)ユーザAが表示部を左斜めから観察している場合には、ユーザBを左斜めから見た顔が表示されている。
図3右側(3)ユーザAが表示部を右斜めから観察している場合には、ユーザBを右斜めから見た顔が表示されている。
図3中央(1)ユーザAが表示部を正面から観察している場合には、ユーザBを正面から見た顔が表示されている。
図3左側(2)ユーザAが表示部を左斜めから観察している場合には、ユーザBを左斜めから見た顔が表示されている。
図3右側(3)ユーザAが表示部を右斜めから観察している場合には、ユーザBを右斜めから見た顔が表示されている。
ユーザAは、自身の視点の移動に応じて、ユーザBを異なる方向から見ることができる。このようにあるオブジェクトを観察する観察者自身の動き、あるいは観察オブジェクトの動きに応じて見え方が異なる、すなわち視差が発生する。この視差が運動視差であり、この運動視差により観察者(ユーザA)は、観察オブジェクト(ユーザB)を立体的なオブジェクトとして把握することができる。
図3に示す表示態様変更処理は、表示部の視聴者であるユーザAの動きに応じて実行される。この表示制御は、先の項目[背景技術]の欄で説明した特許文献1(特開2014-86775号公報)に記載された表示制御に相当する。
具体的にはユーザBを複数の異なる位置にあるカメラで撮影し、これらの複数の撮影画像に基づいて、ユーザAの視点方向からの仮想画像を生成して表示する構成である。
具体的にはユーザBを複数の異なる位置にあるカメラで撮影し、これらの複数の撮影画像に基づいて、ユーザAの視点方向からの仮想画像を生成して表示する構成である。
しかし、この方法では、ユーザBの位置が、表示部の表示面位置に固定されてしまう。すなわち表示部を見ている視聴ユーザAは、ユーザBが、表示面(ディスプレイ面)に張り付いた位置に存在するように感じ、不自然な動きを示す3次元画像として観察されるという問題がある。
例えば、表示部の表示面(ディスプレイ面)より奥側にユーザBがいるような観察画像が得られれば、より自然な位置関係での立体感の把握が可能となると考えられる。
以下、表示部に表示される人物等の表示オブジェクトを、より自然な奥行き感や立体感で表示することを可能とした本開示の処理について説明する。
以下、表示部に表示される人物等の表示オブジェクトを、より自然な奥行き感や立体感で表示することを可能とした本開示の処理について説明する。
[2.表示部の表示オブジェクトを、自然な奥行き感のある立体画像として表示する構成について]
次に、本開示の情報処理装置が実行する処理、すなわち、表示部の表示オブジェクトを、自然な奥行き感のある立体画像として表示する構成について説明する。
次に、本開示の情報処理装置が実行する処理、すなわち、表示部の表示オブジェクトを、自然な奥行き感のある立体画像として表示する構成について説明する。
図4には、以下の2つの仮想視点画像撮影スメラの設定例を示している。
(1)従来の仮想視点画像撮影カメラの設定例
(2)本開示の仮想視点画像撮影カメラの設定例
(1)従来の仮想視点画像撮影カメラの設定例
(2)本開示の仮想視点画像撮影カメラの設定例
仮想視点画像として表示されるユーザは、ここではユーザOとする。表示部に表示されるユーザOを見る視聴者がユーザAである。
ユーザAは、図に示すように様々な位置(p1,p2,p3)から表示部のユーザOを見る。
ユーザAは、図に示すように様々な位置(p1,p2,p3)から表示部のユーザOを見る。
表示部に表示する仮想視点画像は、ユーザAの位置(=仮想視点)に対応した仮想カメラによって撮影された仮想視点画像とする。
この仮想視点画像は、先に図1を参照して説明した複数の異なる位置から撮影された画像の合成処理によって生成される。
この仮想視点画像は、先に図1を参照して説明した複数の異なる位置から撮影された画像の合成処理によって生成される。
図4(1)は、上述した特許文献1(特開2014-86775号公報)に記載された表示制御に相当する。
視聴ユーザAが位置p1から表示部を見る場合、この位置p1に仮想視点画像撮影カメラが設定され、この位置からユーザOを撮影した画像が仮想視点画像として生成され、この仮想視点画像が視聴ユーザA側の表示部に表示される。
また、視聴ユーザAが位置p2から表示部を見る場合、この位置p2に仮想視点画像撮影カメラが設定され、この位置からユーザOを撮影した画像が仮想視点画像として生成され、この仮想視点画像が視聴ユーザA側の表示部に表示される。
さらに、視聴ユーザAが位置p3から表示部を見る場合、この位置p3に仮想視点画像撮影カメラが設定され、この位置からユーザOを撮影した画像が仮想視点画像として生成され、この仮想視点画像が視聴ユーザA側の表示部に表示される。
視聴ユーザAが位置p1から表示部を見る場合、この位置p1に仮想視点画像撮影カメラが設定され、この位置からユーザOを撮影した画像が仮想視点画像として生成され、この仮想視点画像が視聴ユーザA側の表示部に表示される。
また、視聴ユーザAが位置p2から表示部を見る場合、この位置p2に仮想視点画像撮影カメラが設定され、この位置からユーザOを撮影した画像が仮想視点画像として生成され、この仮想視点画像が視聴ユーザA側の表示部に表示される。
さらに、視聴ユーザAが位置p3から表示部を見る場合、この位置p3に仮想視点画像撮影カメラが設定され、この位置からユーザOを撮影した画像が仮想視点画像として生成され、この仮想視点画像が視聴ユーザA側の表示部に表示される。
図4(1)に示す仮想視点画像撮影カメラ設定例は、上述した特許文献1(特開2014-86775号公報)に記載された表示制御に相当し、この結果、ユーザOの位置は、表示部の表示面位置に固定されてしまう。すなわち、図3を参照して説明したように、ユーザOの位置が表示面(ディスプレイ面)に張り付いたような不自然な動きを示す3次元画像として観察されるという問題がある。
一方、図4(2)は、本開示の情報処理装置が実行する表示制御の一例に相当する。
視聴ユーザAが位置p1から表示部を見る場合、図4(1)と同様、この位置p1に仮想視点画像撮影カメラが設定されるが、この仮想視点画像撮影カメラの撮影方向はユーザOではなく、ユーザOの前方に設定された仮想カメラ撮影方向設定点Cとする。視聴ユーザAが位置p2,p3から表示部を見る場合の仮想視点画像撮影カメラの設定も同様であり、各位置に設定される各仮想視点画像撮影カメラの撮影方向はユーザOではなく、ユーザOの前方に設定された仮想カメラ撮影方向設定点Cとする。
視聴ユーザAが位置p1から表示部を見る場合、図4(1)と同様、この位置p1に仮想視点画像撮影カメラが設定されるが、この仮想視点画像撮影カメラの撮影方向はユーザOではなく、ユーザOの前方に設定された仮想カメラ撮影方向設定点Cとする。視聴ユーザAが位置p2,p3から表示部を見る場合の仮想視点画像撮影カメラの設定も同様であり、各位置に設定される各仮想視点画像撮影カメラの撮影方向はユーザOではなく、ユーザOの前方に設定された仮想カメラ撮影方向設定点Cとする。
このように、仮想視点画像撮影カメラの撮影方向を、ユーザOではなく、ユーザOの前方に設定された仮想カメラ撮影方向設定点Cとすることで、表示部に表示されるユーザOを、先に図3を参照して説明した表示部表面に表示ユーザが張り付いたような表示とは異なる態様で表示することが可能となる。
具体的には、表示部に表示されるユーザ等の表示オブジェクトを、自然な奥行き感のある立体画像として表示することが可能となる。
具体的な表示例について、図5以下を参照して説明する。
具体的な表示例について、図5以下を参照して説明する。
図5は、図4(2)に示す仮想視点画像撮影カメラ設定で生成した仮想視点画像の表示例を示す図である。
図5には、先に図3を参照して説明したと同様、以下の各図を示している。
図5中央(1)ユーザAが表示部を正面から観察している場合(=ユーザAが、図4(2)の位置p2から表示部を観察している場合)
図5左側(2)ユーザAが表示部を左斜めから観察している場合(=ユーザAが、図4(2)の位置p1から表示部を観察している場合)
図5右側(3)ユーザAが表示部を右斜めから観察している場合(=ユーザAが、図4(2)の位置p3から表示部を観察している場合)
図5には、先に図3を参照して説明したと同様、以下の各図を示している。
図5中央(1)ユーザAが表示部を正面から観察している場合(=ユーザAが、図4(2)の位置p2から表示部を観察している場合)
図5左側(2)ユーザAが表示部を左斜めから観察している場合(=ユーザAが、図4(2)の位置p1から表示部を観察している場合)
図5右側(3)ユーザAが表示部を右斜めから観察している場合(=ユーザAが、図4(2)の位置p3から表示部を観察している場合)
図5に示す表示部のユーザOの表示態様は、以下の通りである。
図5中央(1)ユーザAが表示部を正面から観察している場合には、ユーザOを正面から見た顔が表示されている。
ユーザOの表示位置は表示部の中央になる。
図5中央(1)ユーザAが表示部を正面から観察している場合には、ユーザOを正面から見た顔が表示されている。
ユーザOの表示位置は表示部の中央になる。
図5左側(2)ユーザAが表示部を左斜めから観察している場合には、ユーザOを左斜めから見た顔が表示されている。
ただし、ユーザOの表示位置が表示部の左側に移動する。これは、仮想画像撮影カメラの向きが、図4(2)に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より左側にずれた位置となる。
ただし、ユーザOの表示位置が表示部の左側に移動する。これは、仮想画像撮影カメラの向きが、図4(2)に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より左側にずれた位置となる。
また、図5右側(3)ユーザAが表示部を右斜めから観察している場合には、ユーザOを右斜めから見た顔が表示されている。
ただし、ユーザOの表示位置が表示部の右側に移動する。これは、仮想画像撮影カメラの向きが、図4(2)に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より右側にずれた位置となる。
ただし、ユーザOの表示位置が表示部の右側に移動する。これは、仮想画像撮影カメラの向きが、図4(2)に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より右側にずれた位置となる。
視聴ユーザAが、表示部に表示されるユーザOをどのような位置にいると把握するかについて図6、図7を参照して説明する。
図6は、図5と同様の図に合わせて、上段に表示部の表示面を上面から見た図と、視聴ユーザAから、表示ユーザOがどの位置に見えているかを示す図を追加した図である。
図6は、図5と同様の図に合わせて、上段に表示部の表示面を上面から見た図と、視聴ユーザAから、表示ユーザOがどの位置に見えているかを示す図を追加した図である。
図6(1)~(3)は図5(1)~(3)と同様、以下の各図である。
中央(1)ユーザAが表示部を正面から観察している場合(=ユーザAが、図4(2)の位置p2から表示部を観察している場合)
左側(2)ユーザAが表示部を左斜めから観察している場合(=ユーザAが、図4(2)の位置p1から表示部を観察している場合)
右側(3)ユーザAが表示部を右斜めから観察している場合(=ユーザAが、図4(2)の位置p3から表示部を観察している場合)
中央(1)ユーザAが表示部を正面から観察している場合(=ユーザAが、図4(2)の位置p2から表示部を観察している場合)
左側(2)ユーザAが表示部を左斜めから観察している場合(=ユーザAが、図4(2)の位置p1から表示部を観察している場合)
右側(3)ユーザAが表示部を右斜めから観察している場合(=ユーザAが、図4(2)の位置p3から表示部を観察している場合)
視聴ユーザAが把握する表示ユーザOの位置は、図6の上段に示すように、表示部の表示面から奥に離間した位置となる。
図6左側(2)ユーザAが表示部を左斜めから観察している場合には、ユーザOを左斜めから見た顔が表示部の左側に表示され、図6中央(1)ユーザAが表示部を正面から観察している場合には、ユーザOを正面から見た顔が表示部の中央に表示され、図6右側(3)ユーザAが表示部を右斜めから観察している場合には、ユーザOを右斜めから見た顔が表示部の右側に表示される。
この結果、視聴ユーザAは、表示ユーザOが、図6の上段に示すオブジェクト観察位置50に位置するように把握することになる。
すなわち、表示部の表示面より奥側の位置である。
図6左側(2)ユーザAが表示部を左斜めから観察している場合には、ユーザOを左斜めから見た顔が表示部の左側に表示され、図6中央(1)ユーザAが表示部を正面から観察している場合には、ユーザOを正面から見た顔が表示部の中央に表示され、図6右側(3)ユーザAが表示部を右斜めから観察している場合には、ユーザOを右斜めから見た顔が表示部の右側に表示される。
この結果、視聴ユーザAは、表示ユーザOが、図6の上段に示すオブジェクト観察位置50に位置するように把握することになる。
すなわち、表示部の表示面より奥側の位置である。
図7は、視聴ユーザAが把握する具体的な表示ユーザOの存在位置認識例を説明する図である。
視聴ユーザAは、例えばテーブル上に置かれた表示部の表示面より、さらに奥側に表示ユーザOが位置していると把握することができ、より自然な奥行き感のある立体画像の表示がなされることになる。
視聴ユーザAは、例えばテーブル上に置かれた表示部の表示面より、さらに奥側に表示ユーザOが位置していると把握することができ、より自然な奥行き感のある立体画像の表示がなされることになる。
このように、図4(1)のような従来型の仮想視点画像撮影カメラの設定構成では、先に図3を参照して説明したように、表示ユーザは、表示面に張り付いた位置にあるように把握されてしまうが、図4(2)に示すように、仮想カメラ撮影方向設定点Cを表示ユーザOと異なる位置に設定することで、表示ユーザOを表示部の表示面から離れた位置に存在するように表示することが可能となり、自然な奥行き感のある立体画像の表示を行うことができる。
[3.本開示の情報処理装置の構成と処理について]
次に、図8以下を参照して、本開示の情報処理装置の構成と処理について説明する。
なお、本開示の情報処理装置は、先に図1を参照して説明したと同様の双方向コミュニケーションを実行する情報処理装置であり、図1の各ロケーションに設置される情報処理装置10,20と同様、表示部、カメラ、音声入出力部を有し、ネットワークを介して画像、音声、その他の情報を送受信することが可能に装置である。
次に、図8以下を参照して、本開示の情報処理装置の構成と処理について説明する。
なお、本開示の情報処理装置は、先に図1を参照して説明したと同様の双方向コミュニケーションを実行する情報処理装置であり、図1の各ロケーションに設置される情報処理装置10,20と同様、表示部、カメラ、音声入出力部を有し、ネットワークを介して画像、音声、その他の情報を送受信することが可能に装置である。
図8は、本開示の一実施例に係る画像処理装置100の構成例を示すブロック図である。
なお、図8には双方向コミュニケーションを実行する第1ロケーションの情報処理装置100と、ネットワーク接続された遠隔の第2ロケーション情報処理装置130を示しており、さらに第1ロケーションの情報処理装置100の詳細構成を示している。
第2ロケーションの情報処理装置130の詳細構成は、第1ロケーションの情報処理装置100の詳細構成と同様の構成である。
なお、図8には双方向コミュニケーションを実行する第1ロケーションの情報処理装置100と、ネットワーク接続された遠隔の第2ロケーション情報処理装置130を示しており、さらに第1ロケーションの情報処理装置100の詳細構成を示している。
第2ロケーションの情報処理装置130の詳細構成は、第1ロケーションの情報処理装置100の詳細構成と同様の構成である。
第1ロケーションの情報処理装置100は、センサ部(カメラ,デプスセンサ)101、ローカル情報処理部102、符号化部103、送信部104、受信部1025、復号部106、リモート情報処理部107、表示部108を有する。
送信部104、受信部105は、ネットワーク120を介して双方向コミュニケーションを実行する遠隔の第2ロケーション情報処理装置130との通信を実行する。
図8に示す構成は、情報処理装置における画像処理を実行する処理部を中心として示す情報処理装置の一部構成である。
情報処理装置には、この他にも、音声処理の実行部や記憶部等、様々な構成が備えられている。なお、第2ロケーション情報処理装置130も同様である。
送信部104、受信部105は、ネットワーク120を介して双方向コミュニケーションを実行する遠隔の第2ロケーション情報処理装置130との通信を実行する。
図8に示す構成は、情報処理装置における画像処理を実行する処理部を中心として示す情報処理装置の一部構成である。
情報処理装置には、この他にも、音声処理の実行部や記憶部等、様々な構成が備えられている。なお、第2ロケーション情報処理装置130も同様である。
センサ部(カメラ,デプスセンサ)101は、第1ロケーション側の双方向コミュニケーション実行ユーザの画像を撮影するカメラと、撮影されるユーザ(ローカルユーザ)の位置を測定する距離測定センサ(デプスセンサ)等によって構成される。
なお、以下の説明において、自装置側をローカル側、自装置側のユーザをローカルユーザと呼び、コミュニケーション相手装置側をリモート側、相手装置側のユーザをリモートユーザと呼ぶ。
なお、以下の説明において、自装置側をローカル側、自装置側のユーザをローカルユーザと呼び、コミュニケーション相手装置側をリモート側、相手装置側のユーザをリモートユーザと呼ぶ。
なお、ユーザ位置は、複数の異なる位置に設置されたカメラの撮影画像に基づいても算出可能であり、デプスセンサを用いることなく、複数の異なる位置から被写体を撮影する複数カメラのみの構成としてもよい。
具体的には、センサ部101は、以下のいずれかの構成であればよい。
(a)複数の異なる位置から被写体を撮影する複数カメラ
(b)1台(以上)のカメラと1つのデプスセンサ
具体的には、センサ部101は、以下のいずれかの構成であればよい。
(a)複数の異なる位置から被写体を撮影する複数カメラ
(b)1台(以上)のカメラと1つのデプスセンサ
(a)の構成は、例えは図1に示す3台のカメラ備えた構成に相当する。
(b)のように1台のカメラと1つのデプスセンサとしてもよい。
センサ部101の検出したセンサ情報(カメラ撮影画像(+デプス情報))は、ローカル情報処理部102に入力される。
(b)のように1台のカメラと1つのデプスセンサとしてもよい。
センサ部101の検出したセンサ情報(カメラ撮影画像(+デプス情報))は、ローカル情報処理部102に入力される。
ローカル情報処理部102は、双方向コミュニケーションの相手装置、すなわち、第2ロケーション情報処理装置130側のユーザ(リモートユーザ)の視聴位置(仮想視点位置)から、第1ロケーション側のユーザ(ローカルユーザ)を見た場合の画像である仮想視点画像を生成する。
ローカル情報処理部102は、センサ部101からの入力データとして、
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
少なくともこれら(a),(b)のいずれかのセンサ情報を入力する。
さらに、リモート情報処理部107から、第2ロケーションのユーザ(リモートユーザ)の位置情報に基づいて生成される仮想視点位置情報を入力する。
ローカル情報処理部102は、これらの入力情報に基づいて、第2ロケーション情報処理装置130に送信する仮想視点画像を生成する。
なお、ローカル情報処理部102は、第2ロケーション情報処理装置130側で、第1ロケーション情報処理装置100の表示部に表示するリモートユーザの仮想視点画像を生成するために必要となるローカルユーザの視聴位置情報も生成する。
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
少なくともこれら(a),(b)のいずれかのセンサ情報を入力する。
さらに、リモート情報処理部107から、第2ロケーションのユーザ(リモートユーザ)の位置情報に基づいて生成される仮想視点位置情報を入力する。
ローカル情報処理部102は、これらの入力情報に基づいて、第2ロケーション情報処理装置130に送信する仮想視点画像を生成する。
なお、ローカル情報処理部102は、第2ロケーション情報処理装置130側で、第1ロケーション情報処理装置100の表示部に表示するリモートユーザの仮想視点画像を生成するために必要となるローカルユーザの視聴位置情報も生成する。
これらの生成情報は、符号化部103において符号化(圧縮)処理された後、送信部104を介してネットワーク120経由で第2ロケーション情報処理装置130に送信される。
受信部105は、第2ロケーション情報処理装置130が生成した仮想視点画像と、第2ロケーション側のユーザ(リモートユーザ)の視聴位置情報を、ネットワーク120を介して受信する。
受信部105の受信データは、符号化(圧縮)データであり、復号部106において復号された後、リモート情報処理部107に入力される。
リモート情報処理部107は、第2ロケーション情報処理装置130が生成した仮想視点画像を表示部108に表示し、さらに、第2ロケーション側のユーザ(リモートユーザ)の視聴位置情報に基づいて、第2ロケーションに送信する仮想視点画像を生成するために適用する仮想視点位置情報を生成してローカル情報処理部1102に入力する。
リモート情報処理部107は、第2ロケーション情報処理装置130が生成した仮想視点画像を表示部108に表示し、さらに、第2ロケーション側のユーザ(リモートユーザ)の視聴位置情報に基づいて、第2ロケーションに送信する仮想視点画像を生成するために適用する仮想視点位置情報を生成してローカル情報処理部1102に入力する。
表示部108は、第2ロケーション情報処理装置130が生成した仮想視点画像を表示部108に表示する。
なお、表示部108に表示される仮想視点画像は、第1ロケーションのローカルユーザの視聴位置に応じて設定された仮想視点位置から観察した画像であり、具体的には、図4(2)を参照して説明した仮想カメラによって撮影された画像である。
すなわち、カメラの撮影方向(光軸)を、図4(2)に示す仮想カメラ撮影方向Cに向けて撮影された画像である。
なお、表示部108に表示される仮想視点画像は、第1ロケーションのローカルユーザの視聴位置に応じて設定された仮想視点位置から観察した画像であり、具体的には、図4(2)を参照して説明した仮想カメラによって撮影された画像である。
すなわち、カメラの撮影方向(光軸)を、図4(2)に示す仮想カメラ撮影方向Cに向けて撮影された画像である。
第1ロケーションのローカルユーザの位置は、図4(2)に示すユーザAの位置(p1~p3)に対応するとき、仮想視点画像の撮影カメラの撮影画像である仮想視点画像は、図4(2)に示すように各位置p1~p3の位置から、撮影方向(光軸)を仮想カメラ撮影方向Cに向けて撮影された画像となる。
この結果、先に図5~図7を参照して説明したような表示画像、すなわち、表示部の表示面より奥側にコミュニケーシュン相手(リモートユーザ)が存在するような感覚の立体画像の観察が可能となる。
この結果、先に図5~図7を参照して説明したような表示画像、すなわち、表示部の表示面より奥側にコミュニケーシュン相手(リモートユーザ)が存在するような感覚の立体画像の観察が可能となる。
図8に示す情報処理装置100のローカル情報処理部102と、リモート情報処理部107の詳細構成と処理について、図9を参照して説明する。
図9には、図8に示す情報処理装置100の構成要素であるローカル情報処理部102と、リモート情報処理部107の詳細構成を示している。
図9に示すように、ローカル情報処理部102は、ローカルユーザ視聴位置検出部151と、送信用仮想視点画像生成部152を有する。
また、リモート情報処理部107は、リモート側仮想視点位置算出部161を有する。
図9に示すように、ローカル情報処理部102は、ローカルユーザ視聴位置検出部151と、送信用仮想視点画像生成部152を有する。
また、リモート情報処理部107は、リモート側仮想視点位置算出部161を有する。
図9に示すように、ローカル情報処理部102は、センサ部101からローカル側センサ情報171を入力する。
ローカル側センサ情報171には、以下の(a),(b)のいずれかの情報が含まれる。
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
ローカル情報処理部102は、少なくともこれら(a),(b)のいずれかを含むローカル側センサ情報171を入力する。
さらに、リモート情報処理部107から、第2ロケーションのユーザ(リモートユーザ)の位置情報に基づいて生成されるリモート側仮想視点位置情報183を入力する。
ローカル側センサ情報171には、以下の(a),(b)のいずれかの情報が含まれる。
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
ローカル情報処理部102は、少なくともこれら(a),(b)のいずれかを含むローカル側センサ情報171を入力する。
さらに、リモート情報処理部107から、第2ロケーションのユーザ(リモートユーザ)の位置情報に基づいて生成されるリモート側仮想視点位置情報183を入力する。
なお、このリモート側仮想視点位置情報183は、リモート側の情報処理装置に送信する仮想視点画像の撮影カメラ位置を示す情報である。
なお、このリモート側仮想視点位置情報183は、リモートユーザの視聴位置、すなわち、リモート側の情報処理装置から送信される図9に示す受信リモートユーザ視聴位置情報181に一致する場合としない場合がある。
なお、このリモート側仮想視点位置情報183は、リモートユーザの視聴位置、すなわち、リモート側の情報処理装置から送信される図9に示す受信リモートユーザ視聴位置情報181に一致する場合としない場合がある。
図4(2)に示す設定では、視聴位置(p1~p3)と仮想視点画像を撮影する仮想視点画像撮影カメラの位置は一致しているが、これは、一例であり、本願の構成では、表示部を見る視聴ユーザの視聴位置と、表示部に表示される仮想視点画像の撮影視点(=仮想画像撮影カメラの位置)とが異なる場合がある。この具体例については後段で説明する。
リモート情報処理部107のリモート側仮想視点位置算出部161は、リモート側の情報処理装置から受信する受信リモートユーザ視聴位置情報181に基づいて、予め既定されたアルゴリズムに従ってリモート側仮想視点位置情報183を算出する。
すなわちリモート側で表示部を見ている視聴ユーザであるリモートユーザの視聴位置(受信リモートユーザ視聴位置情報181)を入力して、リモート側の表示部に表示する仮想視点画像の撮影位置となる仮想視点位置(リモート側仮想視点位置情報183)を算出する。
すなわちリモート側で表示部を見ている視聴ユーザであるリモートユーザの視聴位置(受信リモートユーザ視聴位置情報181)を入力して、リモート側の表示部に表示する仮想視点画像の撮影位置となる仮想視点位置(リモート側仮想視点位置情報183)を算出する。
リモート側仮想視点位置情報183は、例えば表示部の表示面の中心位置を含む水平面(xz平面)の座標情報である。
具体的には、例えば予め規定した原点を(x,z)=(0,0)、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz平面における座標情報(x,z)である。
この座標情報の生成、利用例については後段で説明する。
具体的には、例えば予め規定した原点を(x,z)=(0,0)、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz平面における座標情報(x,z)である。
この座標情報の生成、利用例については後段で説明する。
ローカル情報処理部102の送信用仮想視点画像生成部152は、
センサ部101から入力するローカル側センサ情報171、すなわち、
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
上記(a),(b)のいずれかの情報を入力し、さらに、
リモート情報処理部107のリモート側仮想視点位置算出部161から、
リモート側仮想視点位置情報183
を入力する。
センサ部101から入力するローカル側センサ情報171、すなわち、
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
上記(a),(b)のいずれかの情報を入力し、さらに、
リモート情報処理部107のリモート側仮想視点位置算出部161から、
リモート側仮想視点位置情報183
を入力する。
ローカル情報処理部102の送信用仮想視点画像生成部152は、これらの入力情報に基づいて、リモート側の情報処理装置に送信する仮想視点画像、すなわち図9に示す送信用仮想視点画像173を生成する。
この送信用仮想視点画像173は、リモート側仮想視点位置情報183に対応する仮想視点位置から観察した画像である。
具体的には、例えば図4(2)の仮想視点画像撮影カメラによって撮影される仮想視点画像である。
この送信用仮想視点画像173は、リモート側仮想視点位置情報183に対応する仮想視点位置から観察した画像である。
具体的には、例えば図4(2)の仮想視点画像撮影カメラによって撮影される仮想視点画像である。
さらに、ローカル情報処理部102のローカルユーザ視聴位置検出部151は、センサ部101から入力するローカル側センサ情報171、すなわち、
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
上記(a),(b)のいずれかの情報を入力し、これらの入力情報に基づいて、ローカルユーザの視聴位置情報を生成する。図9に示す送信用ローカルユーザ視聴位置情報172である。
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
上記(a),(b)のいずれかの情報を入力し、これらの入力情報に基づいて、ローカルユーザの視聴位置情報を生成する。図9に示す送信用ローカルユーザ視聴位置情報172である。
ユーザ視聴位置情報は、前述のリモート側仮想視点位置情報183と同様、例えば、表示部の表示面の中心位置を含む水平面をxz平面とした座標情報である。
予め規定した原点を(x,z)=(0,0)、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz平面における座標情報(x,z)として生成する。
この座標情報の生成、利用例については後段で説明する。
予め規定した原点を(x,z)=(0,0)、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz平面における座標情報(x,z)として生成する。
この座標情報の生成、利用例については後段で説明する。
ローカル情報処理部102の生成した送信用ローカルユーザ視聴位置情報172と、送信用仮想視点画像173は、符号化部103において符号化(圧縮)され、リモート側の情報処理装置、すなわち、図8に示す第2ロケーション情報処理装置130に送信される。
[4.(実施例1)仮想カメラを半径Rの円状に移動させる実施例について]
次に、実施例1として、仮想視点画像を撮影するカメラである仮想カメラを半径Rの円状に移動させる実施例について説明する。
次に、実施例1として、仮想視点画像を撮影するカメラである仮想カメラを半径Rの円状に移動させる実施例について説明する。
図10を参照して、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161が実行するリモート側仮想視点位置情報183の生成処理の具体例について説明する。
図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、リモート側から受信する受信リモートユーザ視聴位置情報181に基づいて、リモート側仮想視点位置情報183を生成する。
図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、リモート側から受信する受信リモートユーザ視聴位置情報181に基づいて、リモート側仮想視点位置情報183を生成する。
図9に示すローカル情報処理部102の送信用仮想視点画像生成部152は、このリモート側仮想視点位置情報183に基づいて、このリモート側仮想視点位置から撮影したと仮定される仮想視点画像を生成する。
図10は、先に図4(2)を参照して説明した設定と同様の設定において、仮想視点画像撮影カメラの位置(仮想カメラ位置)を算出する具体的手順を説明する図である。
図10左上部の図は、図4(2)を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図10左上部の図は、図4(2)を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図10左上部の図には、xz平面座標の座標軸であるx軸とz軸を示している。
撮影オブジェクトOの位置を含む水平面をxz平面とした座標情報である。
図10には、撮影オブジェクトOの位置を原点(x,z)=(0,0)として、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz座標軸(x軸,z軸)を示している。
撮影オブジェクトOの位置を含む水平面をxz平面とした座標情報である。
図10には、撮影オブジェクトOの位置を原点(x,z)=(0,0)として、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz座標軸(x軸,z軸)を示している。
なお、撮影オブジェクトOの位置を原点とした水平面であるxz平面は、撮影オブジェクトOが表示されるリモート側の表示装置、すなわち視聴ユーザAが存在するリモート側の空間では、例えばリモート側装置の表示部の表示面に垂直な水平面に相当する。
視聴ユーザAの位置を(x0,z0)とする。この視聴ユーザ位置情報は、リモート側の情報処理装置において計測され、ローカル側情報処理装置において受信する情報である。図9に示す受信リモートユーザ視聴位置情報181に相当する。
なお、座標の設定情報や、視聴ユーザの推定移動円の半径R等の設定情報、さらに、先に図4(2)を参照して説明した仮想カメラ撮影方向設定点Cの位置情報等は、双方向コミュニケーション処理を実行する情報処理装置間で、予め決定し共有する。
これらの情報は、コミュニケーション開始前に実行するコミュニケーション準備処理において双方で決定し、共有する。
なお、具体的な処理シーケンスについては、後段でフローチャートを参照して説明する。
これらの情報は、コミュニケーション開始前に実行するコミュニケーション準備処理において双方で決定し、共有する。
なお、具体的な処理シーケンスについては、後段でフローチャートを参照して説明する。
図10を参照して、仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
図10の右側に、
(a)仮想カメラの軌跡と向き
(b)仮想カメラの設定位置の算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
図10の右側に、
(a)仮想カメラの軌跡と向き
(b)仮想カメラの設定位置の算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
図10左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
なお、視聴ユーザAの位置は、リモート側から受信する受信リモートユーザ視聴位置情報181に相当する。
図10左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
なお、視聴ユーザAの位置は、リモート側から受信する受信リモートユーザ視聴位置情報181に相当する。
この時、仮想カメラの軌跡、すなわち、仮想視点画像を生成する仮想カメラの移動経路を示すカメラ座標(x1,z1)の軌跡は、
x2+z2=R2
上記式を満足する座標(x1,z1)となる。
なお、Rは、被写体Oを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
このパラメータ決定、共有処理については、図11以下に示すフローチャートを参照した説明において詳細に説明する。
x2+z2=R2
上記式を満足する座標(x1,z1)となる。
なお、Rは、被写体Oを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
このパラメータ決定、共有処理については、図11以下に示すフローチャートを参照した説明において詳細に説明する。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向けた設定とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述の半径Rと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述の半径Rと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
(b)仮想カメラの設定位置の算出例
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置、すなわち、リモート側から受信する受信リモートユーザ視聴位置情報181を(x0,z0)とする。
図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、この受信リモートユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置、すなわち、リモート側から受信する受信リモートユーザ視聴位置情報181を(x0,z0)とする。
図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、この受信リモートユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
なお、視聴ユーザAは、被写体Oを中心とする半径Rの円の軌跡を必ずしも辿らないが、仮想カメラは、被写体Oを中心とする半径Rの円の軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)が仮想カメラの中心座標位置となる。
なお、被写体Oと視聴ユーザAを接続する直線OAは、同一空間に被写体Oと視聴ユーザAが存在すると想定した場合の直線であり、視聴ユーザA側の装置の表示部に表示される被写体Oの仮想的な位置と視聴ユーザAの実際の位置を結ぶ直線に相当する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)が仮想カメラの中心座標位置となる。
なお、被写体Oと視聴ユーザAを接続する直線OAは、同一空間に被写体Oと視聴ユーザAが存在すると想定した場合の直線であり、視聴ユーザA側の装置の表示部に表示される被写体Oの仮想的な位置と視聴ユーザAの実際の位置を結ぶ直線に相当する。
ここで、仮想カメラ位置(x1,z1)と、視聴ユーザ位置(x0,z0)の各パラメータ間には、以下の関係式が成立する。
z1=(z0/x0)x1
x1 2+z1 2=R2
z1=(z0/x0)x1
x1 2+z1 2=R2
上記の連立方程式を解くと、
x1=Rx0/SQRT(x0 2+z0 2)
z1=Rz0/SQRT(x0 2+z0 2)
となり、
仮想カメラ位置(x1,z1)が求まる。
x1=Rx0/SQRT(x0 2+z0 2)
z1=Rz0/SQRT(x0 2+z0 2)
となり、
仮想カメラ位置(x1,z1)が求まる。
図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、上述した手順に従って、リモート側から受信する受信リモートユーザ視聴位置情報181を(x0,z0)に基づいて、仮想カメラ位置(x1,z1)を算出する。
この仮想カメラ位置(x1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
この仮想カメラ位置(x1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
図9に示すローカル情報処理部102の送信用仮想視点画像生成部152は、このリモート側仮想視点位置情報183、すなわち、仮想カメラ位置(x1,z1)を入力し、この仮想カメラ位置(x1,z1)から撮影したと過程される仮想視点画像を生成する。この仮想視点画像の生成処理には、センサ部101から入力するセンサ情報、すなわち、
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
上記(a),(b)のいずれかの情報が利用される。
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
上記(a),(b)のいずれかの情報が利用される。
ただし、送信用仮想視点画像生成部152の生成する仮想視点画像は、仮想カメラ位置(x1,z1)から、予め規定した仮想カメラ撮影方向設定点Cを撮影方向(光軸方向)として設定して撮影した画像である。
この結果、先に図5~図7を参照して説明したような表示画像、すなわち、表示部の表示面より奥側にコミュニケーシュン相手(リモートユーザ)が存在するような感覚の立体画像の観察が可能となる。
この結果、先に図5~図7を参照して説明したような表示画像、すなわち、表示部の表示面より奥側にコミュニケーシュン相手(リモートユーザ)が存在するような感覚の立体画像の観察が可能となる。
[5.情報処理装置の実行する処理シーケンスについて]
次に、図11以下のフローチャートを参照して情報処理装置の実行する処理シーケンスについて説明する。
次に、図11以下のフローチャートを参照して情報処理装置の実行する処理シーケンスについて説明する。
図11に示すフローチャートは、情報処理装置が、遠隔の第2の情報処理装置との間で双方向コミュニケーションを実行する場合の全体シーケンスを説明するフローチャートである。
なお、図11以下に示すフローチャートに従った処理は、例えば、情報処理装置の記憶部に格納されたプログラムに従って、プログラム実行機能を持つCPU等を備えたデータ処理部の制御の下に実行される。
図11に示すフローの各ステップの処理について、順次、説明する。
なお、図11以下に示すフローチャートに従った処理は、例えば、情報処理装置の記憶部に格納されたプログラムに従って、プログラム実行機能を持つCPU等を備えたデータ処理部の制御の下に実行される。
図11に示すフローの各ステップの処理について、順次、説明する。
(ステップS101)
まず、ステップS101において、情報処理装置は、双方向コミュニケーションを実行する第2ロケーションの情報処理装置との通信接続処理を実行する。
まず、ステップS101において、情報処理装置は、双方向コミュニケーションを実行する第2ロケーションの情報処理装置との通信接続処理を実行する。
(ステップS102)
ステップS101において、双方向コミュニケーションを実行する2つの情報処理装置間の通信接続が完了すると、情報処理装置は、次に、ステップS102において、コミュニケーション準備処理を実行する。
ステップS101において、双方向コミュニケーションを実行する2つの情報処理装置間の通信接続が完了すると、情報処理装置は、次に、ステップS102において、コミュニケーション準備処理を実行する。
このコミュニケーション準備処理では、例えば先に図10を参照して説明した座標設定情報等、双方向コミュニケーションを行う情報処理装置間で利用するパラメータ等の決定、共有処理を行なう。
このコミュニケーション準備処理の詳細については、図12を参照して後段で説明する。
このコミュニケーション準備処理の詳細については、図12を参照して後段で説明する。
(ステップS103)
ステップS102において、双方向コミュニケーションを実行する2つの情報処理装置間で、利用パラメータ等の決定、共有処理等の準備処理が完了すると、情報処理装置は、次に、ステップS103において、コミュニケーション処理を実行する。
ステップS102において、双方向コミュニケーションを実行する2つの情報処理装置間で、利用パラメータ等の決定、共有処理等の準備処理が完了すると、情報処理装置は、次に、ステップS103において、コミュニケーション処理を実行する。
このコミュニケーション処理において、情報処理装置は、通信相手側の視聴ユーザの視聴位置対応の仮想視点画像の生成、送信処理等を実行する。
このコミュニケーション処理の詳細については、図13を参照して後段で説明する。
このコミュニケーション処理の詳細については、図13を参照して後段で説明する。
(ステップS104)
次に、ステップS104において、情報処理装置は、コミュニケーションの終了判定を行ない、終了する場合は、ステップS105に進む。終了せずコミュニケーションを継続する場合は、ステップS103に戻りコミュニケーションの実行処理を継続する。
次に、ステップS104において、情報処理装置は、コミュニケーションの終了判定を行ない、終了する場合は、ステップS105に進む。終了せずコミュニケーションを継続する場合は、ステップS103に戻りコミュニケーションの実行処理を継続する。
(ステップS105)
ステップS104において、コミュニケーションを終了すると判定した場合は、ステップS105に進み、ステップS105において、コミュニケーション相手装置との通信接続を解除する通信切断処理を実行して処理を終了する。
ステップS104において、コミュニケーションを終了すると判定した場合は、ステップS105に進み、ステップS105において、コミュニケーション相手装置との通信接続を解除する通信切断処理を実行して処理を終了する。
次に、図12に示すフローチャートを参照して、図11のフローにおけるステップS102のコミュニケーション準備処理の詳細シーケンスについて説明する。
先に説明したように、図11のフローにおけるステップS102のコミュニケーション準備処理では、例えば先に図10を参照して説明した座標設定情報等、双方向コミュニケーションを行う情報処理装置間で利用するパラメータ等の決定、共有処理を行なう。
図12に示すフローの各ステッブの処理について説明する。
先に説明したように、図11のフローにおけるステップS102のコミュニケーション準備処理では、例えば先に図10を参照して説明した座標設定情報等、双方向コミュニケーションを行う情報処理装置間で利用するパラメータ等の決定、共有処理を行なう。
図12に示すフローの各ステッブの処理について説明する。
(ステップS121)
まず、情報処理装置は、双方向コミュニケーション処理を実行する情報処理装置間で撮影画像を送受信する。
双方の視聴ユーザ(=相手側の表示ユーザ)を撮影した画像の送受信を行う。
まず、情報処理装置は、双方向コミュニケーション処理を実行する情報処理装置間で撮影画像を送受信する。
双方の視聴ユーザ(=相手側の表示ユーザ)を撮影した画像の送受信を行う。
(ステップS122)
次に、情報処理装置は、仮想視点画像の生成に必要となるパラメータの決定、共有処理を実行する。
なお、パラメータ決定処理は、双方向コミュニケーション処理を実行する2つの情報処理装置のいずれか一方において実行し、決定したパラメータを相手方に送信する構成としてもよい。
次に、情報処理装置は、仮想視点画像の生成に必要となるパラメータの決定、共有処理を実行する。
なお、パラメータ決定処理は、双方向コミュニケーション処理を実行する2つの情報処理装置のいずれか一方において実行し、決定したパラメータを相手方に送信する構成としてもよい。
決定し共有するパラメータは。例えば以下のパラメータである。
(1)座標設定情報
(2)視聴ユーザ推定移動軌跡情報
(3)仮想カメラ撮影方向設定点Cの位置
(1)座標設定情報
(2)視聴ユーザ推定移動軌跡情報
(3)仮想カメラ撮影方向設定点Cの位置
図12の右側の2つの図は、2つのパラメータ設定例1,2を示す。
パラメータ設定例1は、先に図10を参照して説明したと同様、視聴ユーザAが表示ユーザの位置を中心とした半径Rの円上を移動すると想定した例である。
座標は、ユーザOの位置を原点とした水平面をxz平面として、表示部表示面に平行な方向をx軸、垂直方向をz軸として設定した座標設定である。
視聴ユーザ推定移動軌跡は、例えば、原点(x,z)=(0,0)を中心とした半径Rの円である。
仮想カメラ撮影方向設定点Cの位置は、図12に示す(xc,zc)の位置となる。
双方向コミュニケーションを実行する少なくとも一方の情報処理装置は、例えばこれらのパラメータを決定し、相手方に決定パラメータを通知し、双方の情報処理装置間でパラメータを共有する処理を行なう。
パラメータ設定例1は、先に図10を参照して説明したと同様、視聴ユーザAが表示ユーザの位置を中心とした半径Rの円上を移動すると想定した例である。
座標は、ユーザOの位置を原点とした水平面をxz平面として、表示部表示面に平行な方向をx軸、垂直方向をz軸として設定した座標設定である。
視聴ユーザ推定移動軌跡は、例えば、原点(x,z)=(0,0)を中心とした半径Rの円である。
仮想カメラ撮影方向設定点Cの位置は、図12に示す(xc,zc)の位置となる。
双方向コミュニケーションを実行する少なくとも一方の情報処理装置は、例えばこれらのパラメータを決定し、相手方に決定パラメータを通知し、双方の情報処理装置間でパラメータを共有する処理を行なう。
パラメータ設定例2は、先に図10を参照して説明した例と異なり、視聴ユーザAが表示ユーザの位置から表示面垂直方向に距離Rの位置を表示面に平行に移動すると想定した例である。
座標は、ユーザOの位置を原点とした水平面をxz平面として、表示部表示面に平行な方向をx軸、垂直方向をz軸として設定した座標設定である。
視聴ユーザ推定移動軌跡は、表示ユーザの位置(原点(x,z)=(0,0))から表示面垂直方向に距離Rの位置の表示面に平行なラインである。
仮想カメラ撮影方向設定点Cの位置は、図に示す(xc,zc)の位置となる。
双方向コミュニケーションを実行する少なくとも一方の情報処理装置は、例えばこれらのパラメータを決定し、相手方に決定パラメータを通知し、双方の情報処理装置間でパラメータを共有する処理を行なう。
座標は、ユーザOの位置を原点とした水平面をxz平面として、表示部表示面に平行な方向をx軸、垂直方向をz軸として設定した座標設定である。
視聴ユーザ推定移動軌跡は、表示ユーザの位置(原点(x,z)=(0,0))から表示面垂直方向に距離Rの位置の表示面に平行なラインである。
仮想カメラ撮影方向設定点Cの位置は、図に示す(xc,zc)の位置となる。
双方向コミュニケーションを実行する少なくとも一方の情報処理装置は、例えばこれらのパラメータを決定し、相手方に決定パラメータを通知し、双方の情報処理装置間でパラメータを共有する処理を行なう。
図11に示すフローのステップS102におけるコミュニケーション準備処理では、これらのパラメータの決定、共有処理が実行される。
これらの処理の後、ステップS103のコミュニケーション処理が開始される。
これらの処理の後、ステップS103のコミュニケーション処理が開始される。
次に、図11に示すフロー中のステップS103の処理、すなわちコミュニケーション処理の詳細シーケンスについて図13に示すフローチャートを参照して説明する。
コミュニケーション処理において、情報処理装置は、通信相手側の視聴ユーザの視聴位置対応の仮想視点画像の生成、送信処理等を実行する。
以下、図13に示すフローの各ステップの処理について、順次説明する。
コミュニケーション処理において、情報処理装置は、通信相手側の視聴ユーザの視聴位置対応の仮想視点画像の生成、送信処理等を実行する。
以下、図13に示すフローの各ステップの処理について、順次説明する。
なお、図13に示すフローにおいて、
ステップS131~132の処理、
ステップS141~S142の処理、
ステップS151~S152の処理、
これらの各処理は、並列に実行される。
また、ステップS143~S144の処理は、ステップS151~S152の処理と並列に実行される。
ステップS131~132の処理、
ステップS141~S142の処理、
ステップS151~S152の処理、
これらの各処理は、並列に実行される。
また、ステップS143~S144の処理は、ステップS151~S152の処理と並列に実行される。
(ステップS131)
情報処理装置は、ステップS131において、センサ情報の取得処理を行なう、具体的には、双方向コミュニケーションの自装置側の利用ユーザであるローカルユーザの撮影画像を取得する。
画像撮影は、先に図1を参照して説明したように、例えば異なる位置に設置された複数のカメラによって実行される。
なお、1つのカメラの撮影画像と、デプス情報(距離情報)を取得する設定としてもよい。
情報処理装置は、ステップS131において、センサ情報の取得処理を行なう、具体的には、双方向コミュニケーションの自装置側の利用ユーザであるローカルユーザの撮影画像を取得する。
画像撮影は、先に図1を参照して説明したように、例えば異なる位置に設置された複数のカメラによって実行される。
なお、1つのカメラの撮影画像と、デプス情報(距離情報)を取得する設定としてもよい。
(ステップS132)
次に情報処理装置は、ステップS132において、ローカルユーザの視聴位置を検出する。ステップS131で取得したセンサ情報、すなわち、
複数の異なる位置からの撮影画像、あるいは、
1つのカメラの撮影画像とデプス情報、
上記いずれかのセンサ情報に基づいて、ローカルユーザの視聴位置を検出する。
次に情報処理装置は、ステップS132において、ローカルユーザの視聴位置を検出する。ステップS131で取得したセンサ情報、すなわち、
複数の異なる位置からの撮影画像、あるいは、
1つのカメラの撮影画像とデプス情報、
上記いずれかのセンサ情報に基づいて、ローカルユーザの視聴位置を検出する。
(ステップS141)
情報処理装置は、ステップS131~S132の処理に並列にステップS141~S142の処理を実行する。
まず、ステップS141において、双方向コミュニケーションの相手装置側の利用ユーザであるリモートユーザの視聴位置情報を受信取得する。
この情報は、リモート側の情報処理装置において生成、送信された情報である。
情報処理装置は、ステップS131~S132の処理に並列にステップS141~S142の処理を実行する。
まず、ステップS141において、双方向コミュニケーションの相手装置側の利用ユーザであるリモートユーザの視聴位置情報を受信取得する。
この情報は、リモート側の情報処理装置において生成、送信された情報である。
(ステップS142)
次に、情報処理装置は、ステップS141においてリモート側装置から受信したリモートユーザ視聴位置情報に基づいて、リモート装置に送信する仮想視点画像の仮想視点位置を算出する。
次に、情報処理装置は、ステップS141においてリモート側装置から受信したリモートユーザ視聴位置情報に基づいて、リモート装置に送信する仮想視点画像の仮想視点位置を算出する。
この処理は、先に、図9を参照して説明したリモート情報処理部107のリモート側仮想視点位置算出部161の実行する処理である。リモート情報処理部107のリモート側仮想視点位置算出部161は、リモート側の情報処理装置から受信する受信リモートユーザ視聴位置情報181に基づいて、予め既定されたアルゴリズムに従ってリモート側仮想視点位置情報183を算出する。
すなわちリモート側で表示部を見ている視聴ユーザであるリモートユーザの視聴位置(受信リモートユーザ視聴位置情報181)を入力して、リモート側の表示部に表示する仮想視点画像の撮影位置となる仮想視点位置(リモート側仮想視点位置情報183)を算出する。具体的には、先に図10を参照して説明した仮想カメラ位置(x1,z1)を算出する。
(ステップS143)
次に、情報処理装置は、ステップS143において、リモートユーザの仮想視点位置対応のローカルユーザの仮想視点画像を生成する。
次に、情報処理装置は、ステップS143において、リモートユーザの仮想視点位置対応のローカルユーザの仮想視点画像を生成する。
この処理は、先に図9を参照して説明したローカル情報処理部102の送信用仮想視点画像生成部152の実行する処理である。
ローカル情報処理部102の送信用仮想視点画像生成部152は、ステップS131で取得したセンサ情報(画像等)と、ステップS142で算出した仮想視点位置(リモート側仮想視点位置情報183)、これらの入力情報に基づいて、リモート側の情報処理装置に送信する仮想視点画像、すなわち図9に示す送信用仮想視点画像173を生成する。
ローカル情報処理部102の送信用仮想視点画像生成部152は、ステップS131で取得したセンサ情報(画像等)と、ステップS142で算出した仮想視点位置(リモート側仮想視点位置情報183)、これらの入力情報に基づいて、リモート側の情報処理装置に送信する仮想視点画像、すなわち図9に示す送信用仮想視点画像173を生成する。
この送信用仮想視点画像173は、リモート側仮想視点位置情報183に対応する仮想視点位置から観察した画像である。
具体的には、例えば図4(2)の仮想視点画像撮影カメラによって撮影される仮想視点画像であり、撮影方向(光軸方向)を仮想カメラ撮影方向設定点Cに設定した撮影された仮想視点画像である。
この仮想視点画像は、図5~図7を参照して説明したように、表示部において表示された場合、表示ユーザが表示部の表示面より奥側に位置するように観察される3次元画像データである。
具体的には、例えば図4(2)の仮想視点画像撮影カメラによって撮影される仮想視点画像であり、撮影方向(光軸方向)を仮想カメラ撮影方向設定点Cに設定した撮影された仮想視点画像である。
この仮想視点画像は、図5~図7を参照して説明したように、表示部において表示された場合、表示ユーザが表示部の表示面より奥側に位置するように観察される3次元画像データである。
(ステップS144)
次に、情報処理装置は、ステップS144において、ステップS132で検出したローカルユーザの視聴位置情報と、ステップS143で生成した送信用仮想視点画像、すなわちリモートユーザの視聴位置に基づいて算出した仮想視点対応の仮想視点画像をリモート側の情報処理装置に送信する。
次に、情報処理装置は、ステップS144において、ステップS132で検出したローカルユーザの視聴位置情報と、ステップS143で生成した送信用仮想視点画像、すなわちリモートユーザの視聴位置に基づいて算出した仮想視点対応の仮想視点画像をリモート側の情報処理装置に送信する。
(ステップS151)
ステップS151~S152の処理は、ステップS131~S132、ステップS141~S144の処理と並列に行われる処理である。
ステップS151~S152の処理は、ステップS131~S132、ステップS141~S144の処理と並列に行われる処理である。
情報処理装置は、ステップS151において、リモート側の次用法処理装置から送信されるリモートユーザの仮想視点画像を受信する。
この仮想視点画像は、リモート側の装置において、図13のフローのステップS131~S132、ステップS141~S144の処理と同様の処理が行われ、生成されたリモートユーザが含まれる仮想視点画像である。
仮想視点位置は、ローカルユーザの視聴位置に基づいて算出された仮想視点となる。
この仮想視点画像は、リモート側の装置において、図13のフローのステップS131~S132、ステップS141~S144の処理と同様の処理が行われ、生成されたリモートユーザが含まれる仮想視点画像である。
仮想視点位置は、ローカルユーザの視聴位置に基づいて算出された仮想視点となる。
(ステップS152)
情報処理装置は、ステップS152において、ステップs151でリモート情報処理装置から受信した仮想視点画像を表示部に表示する。
この仮想視点画像は、ローカルユーザの視聴位置に基づいて算出された仮想視点から撮影された画像に相当する画像である。
情報処理装置は、ステップS152において、ステップs151でリモート情報処理装置から受信した仮想視点画像を表示部に表示する。
この仮想視点画像は、ローカルユーザの視聴位置に基づいて算出された仮想視点から撮影された画像に相当する画像である。
具体的には、例えば図4(2)に示す仮想視点画像撮影カメラからの撮影画像に相当する。
先に図4(2)を参照して説明したように、この仮想視点画像は、仮想カメラ撮影方向設定点Cに、カメラを向けて撮影した画像に相当し、図5~図7を参照して説明したように、表示ユーザ(リモートユーザ)は表示部の表示面より奥側に位置する3次元画像データとして表示される。
先に図4(2)を参照して説明したように、この仮想視点画像は、仮想カメラ撮影方向設定点Cに、カメラを向けて撮影した画像に相当し、図5~図7を参照して説明したように、表示ユーザ(リモートユーザ)は表示部の表示面より奥側に位置する3次元画像データとして表示される。
[6.自装置の表示部に表示する表示用仮想視点画像生成処理を、自装置側で行う実施例について]
図13に示すフローチャートに従ったコミュニケーション処理は、自装置の表示部に表示する表示用仮想視点画像の生成処理を相手装置(リモート装置)において実行し、相手装置(リモート装置)の生成した仮想視点画像を、自装置(ローカル装置)が受信して、自装置(ローカル装置)の表示部に表示するシーケンスである。
図13に示すフローチャートに従ったコミュニケーション処理は、自装置の表示部に表示する表示用仮想視点画像の生成処理を相手装置(リモート装置)において実行し、相手装置(リモート装置)の生成した仮想視点画像を、自装置(ローカル装置)が受信して、自装置(ローカル装置)の表示部に表示するシーケンスである。
この処理は、先に図9を参照して説明したローカル情報処理装置102と、リモート情報処理装置107の構成に対応した処理である。
次に、自装置の表示部に表示する表示用仮想視点画像の生成処理を自装置側で行う実施例について、図14、図15を参照して説明する。
図14は、本実施例におけるローカル情報処理部102と、リモート情報処理部107の詳細構成と処理について説明する図である。
なお、図14に示すローカル情報処理部102と、リモート情報処理部107は、図8に示す情報処理装置100の構成要素である。
なお、図14に示すローカル情報処理部102と、リモート情報処理部107は、図8に示す情報処理装置100の構成要素である。
図14に示すように、ローカル情報処理部102は、ローカルユーザ視聴位置検出部201と、ローカル側仮想視点位置算出部202を有する。
また、リモート情報処理部107は、表示用仮想視点画像生成部211を有する。
また、リモート情報処理部107は、表示用仮想視点画像生成部211を有する。
図14に示すように、ローカル情報処理部102は、センサ部101からローカル側センサ情報231を入力する。
ローカル側センサ情報231には、以下の(a),(b)のいずれかの情報が含まれる。
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
ローカル情報処理部102は、少なくともこれら(a),(b)のいずれかを含むローカル側センサ情報231を入力する。
ローカル側センサ情報231には、以下の(a),(b)のいずれかの情報が含まれる。
(a)複数の異なる位置からローカルユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(ローカルユーザ)距離情報、
ローカル情報処理部102は、少なくともこれら(a),(b)のいずれかを含むローカル側センサ情報231を入力する。
これらのセンサ情報231は、符号化部103において符号化され、リモート側の情報処理装置にそのまま送信される。
さらに、ローカル情報処理部102のローカルユーザ視聴位置検出部201に入力される。
さらに、ローカル情報処理部102のローカルユーザ視聴位置検出部201に入力される。
ローカル情報処理部102のローカルユーザ視聴位置検出部201は、センサ部101から入力する上記(a),(b)のいずれかの情報を入力し、これらの入力情報に基づいて、ローカルユーザの視聴位置情報を生成する。図14に示すローカルユーザ視聴位置情報232である。
ユーザ視聴位置情報は、先に図10を参照して説明したように、例えば、表示部の表示面の中心位置を含む水平面をxz平面とした座標情報である。
予め規定した原点を(x,z)=(0,0)、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz平面における座標情報(x,z)として生成する。
予め規定した原点を(x,z)=(0,0)、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz平面における座標情報(x,z)として生成する。
ローカルユーザ視聴位置検出部201の生成したローカルユーザ視聴位置情報232は、ローカル情報処理部102のローカル側仮想視点位置算出部202に入力される。
ローカル側仮想視点位置算出部202は、ローカルユーザ視聴位置情報232に基づいて、予め既定されたアルゴリズムに従ってローカル側仮想視点位置情報233を算出する。
すなわち自装置のローカル側で表示部を見ている視聴ユーザであるローカルユーザの視聴位置(ローカルユーザ視聴位置情報232)を入力して、自装置(ローカル)側の表示部に表示する仮想視点画像の撮影位置となる仮想視点位置(ローカル側仮想視点位置情報233)を算出する。
すなわち自装置のローカル側で表示部を見ている視聴ユーザであるローカルユーザの視聴位置(ローカルユーザ視聴位置情報232)を入力して、自装置(ローカル)側の表示部に表示する仮想視点画像の撮影位置となる仮想視点位置(ローカル側仮想視点位置情報233)を算出する。
ローカル側仮想視点位置情報233は、例えば表示部の表示面の中心位置を含む水平面をxz平面とした座標情報である。
予め規定した原点を(x,z)=(0,0)、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz平面における座標情報(x,z)として生成する。
予め規定した原点を(x,z)=(0,0)、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz平面における座標情報(x,z)として生成する。
ローカル側仮想視点位置算出部202が算出したローカル側仮想視点位置情報233は、リモート情報処理部107の表示用仮想視点画像生成部211に入力される。
リモート情報処理部107の表示用仮想視点画像生成部211は、
リモート側情報処理装置から受信するセンサ情報234、すなわち、
(a)複数の異なる位置からリモートユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(リモートユーザ)距離情報、
上記(a),(b)のいずれかの情報を入力し、さらに、
ローカル側仮想視点位置算出部202が算出したローカル側仮想視点位置情報233を入力する。
リモート側情報処理装置から受信するセンサ情報234、すなわち、
(a)複数の異なる位置からリモートユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(リモートユーザ)距離情報、
上記(a),(b)のいずれかの情報を入力し、さらに、
ローカル側仮想視点位置算出部202が算出したローカル側仮想視点位置情報233を入力する。
リモート情報処理部107の表示用仮想視点画像生成部211は、これらの入力情報に基づいて、自装置(ローカル)側の表示部に表示する仮想視点画像、すなわち図14に示す表示用仮想視点画像235を生成して、表示部108に表示する。
この表示用仮想視点画像235は、ローカル側仮想視点位置情報233に対応する仮想視点位置から観察した画像である。
具体的には、例えば図4(2)の仮想視点画像撮影カメラによって撮影される仮想視点画像である。
この表示用仮想視点画像235は、ローカル側仮想視点位置情報233に対応する仮想視点位置から観察した画像である。
具体的には、例えば図4(2)の仮想視点画像撮影カメラによって撮影される仮想視点画像である。
先に説明した図9の構成は、リモート側から受信する仮想視点画像をそのまま表示する構成であったが、この図14に示す構成では、リモート側から受信するセンサ情報(画像、または画像とデプス情報)を利用して、自装置側で、表示用の仮想視点画像を生成する構成である。
この構成において情報処理装置の実行する処理シーケンスは、先に説明した図11に従った処理となり、ステップS102のコミュニケーション準備処理は、先に図12を参照して説明したフローに従った処理となる。
ただし、ステップS103のコミュニケーション処理は、先に説明した図13に示すフローとは異なるシーケンスとなる。
ただし、ステップS103のコミュニケーション処理は、先に説明した図13に示すフローとは異なるシーケンスとなる。
図14の構成を適用した場合のステップS103のコミュニケーション処理の詳細シーケンスについて、図15に示すフローチャートを参照して説明する。
図14の構成を適用した場合、コミュニケーション処理において、情報処理装置は、自装置側の視聴ユーザの視聴位置対応の仮想視点画像の生成、表示処理等を実行する。
以下、図15に示すフローの各ステップの処理について、順次説明する。
図14の構成を適用した場合、コミュニケーション処理において、情報処理装置は、自装置側の視聴ユーザの視聴位置対応の仮想視点画像の生成、表示処理等を実行する。
以下、図15に示すフローの各ステップの処理について、順次説明する。
(ステップS171)
情報処理装置は、ステップS171において、センサ情報の取得処理を行なう、具体的には、双方向コミュニケーションの自装置側の利用ユーザであるローカルユーザの撮影画像を取得する。
画像撮影は、先に図1を参照して説明したように、例えば異なる位置に設置された複数のカメラによって実行される。
なお、1つのカメラの撮影画像と、デプス情報を取得する設定としてもよい。
情報処理装置は、ステップS171において、センサ情報の取得処理を行なう、具体的には、双方向コミュニケーションの自装置側の利用ユーザであるローカルユーザの撮影画像を取得する。
画像撮影は、先に図1を参照して説明したように、例えば異なる位置に設置された複数のカメラによって実行される。
なお、1つのカメラの撮影画像と、デプス情報を取得する設定としてもよい。
(ステップS172)
次に情報処理装置は、ステップS172において、ステップS171で取得したセンサ情報をリモート側の情報処理装置に送信する。
次に情報処理装置は、ステップS172において、ステップS171で取得したセンサ情報をリモート側の情報処理装置に送信する。
(ステップS181)
情報処理装置は、ステップS181において、ローカルユーザの視聴位置を検出する。ステップS171で取得したセンサ情報、すなわち、
複数の異なる位置からの撮影画像、あるいは、
1つのカメラの撮影画像とデプス情報、
上記いずれかのセンサ情報に基づいて、ローカルユーザの視聴位置を検出する。
情報処理装置は、ステップS181において、ローカルユーザの視聴位置を検出する。ステップS171で取得したセンサ情報、すなわち、
複数の異なる位置からの撮影画像、あるいは、
1つのカメラの撮影画像とデプス情報、
上記いずれかのセンサ情報に基づいて、ローカルユーザの視聴位置を検出する。
(ステップS182)
次に、情報処理装置は、ステップS182において、ステップS181で取得したローカルユーザ視聴位置情報に基づいて、ローカルユーザの仮想視点位置を算出する。
次に、情報処理装置は、ステップS182において、ステップS181で取得したローカルユーザ視聴位置情報に基づいて、ローカルユーザの仮想視点位置を算出する。
この処理は、先に、図14を参照して説明したローカル情報処理部102のローカル側仮想視点位置算出部202の実行する処理である。ローカル情報処理部102のローカル側仮想視点位置算出部202は、ローカルユーザ視聴位置検出部201が生成したローカルユーザ視聴位置情報232に基づいて、予め既定されたアルゴリズムに従ってローカル側仮想視点位置情報232を算出する。
すなわち自装置側(ローカル側)で表示部を見ている視聴ユーザであるローカルユーザの視聴位置(ローカルユーザ視聴位置情報232)を入力して、ローカル側の表示部に表示する仮想視点画像の撮影位置となる仮想視点位置(ローカル側仮想視点位置情報233)を算出する。具体的には、先に図10を参照して説明した仮想カメラ位置(x1,z1)を算出する。
(ステップS191)
ステップS191は、リモート側情報処理装置からのセンサ情報の受信処理である。
具体的には、
(a)複数の異なる位置からリモートユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(リモートユーザ)距離情報、
上記(a),(b)のいずれかの情報を受信する。
ステップS191は、リモート側情報処理装置からのセンサ情報の受信処理である。
具体的には、
(a)複数の異なる位置からリモートユーザを撮影した画像、あるいは、
(b)1枚の画像と、被写体(リモートユーザ)距離情報、
上記(a),(b)のいずれかの情報を受信する。
(ステップS192)
次に、情報処理装置は、ステップS192において、ローカルユーザの仮想視点位置対応のリモートユーザの仮想視点画像を生成する。
次に、情報処理装置は、ステップS192において、ローカルユーザの仮想視点位置対応のリモートユーザの仮想視点画像を生成する。
この処理は、先に図14を参照して説明したリモート情報処理部107の表示用仮想視点画像生成部211の実行する処理である。
リモート情報処理部107の表示用仮想視点画像生成部211は、ステップS191で取得したリモート側のセンサ情報(画像等)と、ステップS182で算出した仮想視点位置(ローカル側仮想視点位置情報233)、これらの入力情報に基づいて、自装置(ローカル)側の表示部に表示する仮想視点画像、すなわち図14に示す表示用仮想視点画像235を生成する。
リモート情報処理部107の表示用仮想視点画像生成部211は、ステップS191で取得したリモート側のセンサ情報(画像等)と、ステップS182で算出した仮想視点位置(ローカル側仮想視点位置情報233)、これらの入力情報に基づいて、自装置(ローカル)側の表示部に表示する仮想視点画像、すなわち図14に示す表示用仮想視点画像235を生成する。
この表示用仮想視点画像235は、ローカル側仮想視点位置情報233に対応する仮想視点位置から観察した画像である。
具体的には、例えば図4(2)の仮想視点画像撮影カメラによって撮影される仮想視点画像である。
具体的には、例えば図4(2)の仮想視点画像撮影カメラによって撮影される仮想視点画像である。
(ステップS193)
次に、情報処理装置は、ステップS193において、ステップS192で生成した表示用仮想視点画像、すなわちローカルユーザの視聴位置に基づいて算出した仮想視点対応の仮想視点画像を自装置(ローカル)側の表示部に表示する。
次に、情報処理装置は、ステップS193において、ステップS192で生成した表示用仮想視点画像、すなわちローカルユーザの視聴位置に基づいて算出した仮想視点対応の仮想視点画像を自装置(ローカル)側の表示部に表示する。
表示部に表示される仮想視点画像は、ローカルユーザの視聴位置に基づいて算出された仮想視点から撮影された画像に相当する画像である。
具体的には、例えば図4(2)に示す仮想視点画像撮影カメラからの撮影画像に相当する。
先に図4(2)を参照して説明したように、この仮想視点画像は、仮想カメラ撮影方向設定点Cに、カメラを向けて撮影した画像に相当し、図5~図7を参照して説明したように、表示ユーザ(リモートユーザ)は表示部の表示面より奥側に位置する3次元画像データとして表示される。
具体的には、例えば図4(2)に示す仮想視点画像撮影カメラからの撮影画像に相当する。
先に図4(2)を参照して説明したように、この仮想視点画像は、仮想カメラ撮影方向設定点Cに、カメラを向けて撮影した画像に相当し、図5~図7を参照して説明したように、表示ユーザ(リモートユーザ)は表示部の表示面より奥側に位置する3次元画像データとして表示される。
[7.(実施例1の変形例1)仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について]
次に実施例1の変形例1(バリエーション1)として、仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について説明する。
次に実施例1の変形例1(バリエーション1)として、仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について説明する。
仮想視点画像の撮影位置に相当する仮想カメラ位置の算出処理の具体例として、先に図10を参照して説明した。
この図10に示す仮想カメラ位置の算出処理を、簡易化した処理について、図16を参照して説明する。
この図10に示す仮想カメラ位置の算出処理を、簡易化した処理について、図16を参照して説明する。
図16に示す左上部の図も、先に説明した図10と同様、図4(2)を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図16左上部の図には、xz平面座標の座標軸であるx軸とz軸を示している。
表示部の表示面の中心位置を含む水平面をxz平面とした座標情報である。
図16には、撮影オブジェクトOの位置を原点(x,z)=(0,0)として、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz座標軸(x軸,z軸)を示している。
表示部の表示面の中心位置を含む水平面をxz平面とした座標情報である。
図16には、撮影オブジェクトOの位置を原点(x,z)=(0,0)として、表示部表示面に平行な方向をx、表示部表示面に垂直な方向(離間方向)をzとしたxz座標軸(x軸,z軸)を示している。
視聴ユーザAの位置を(x0,z0)とする。なお、座標の設定情報や、視聴ユーザの推定移動円の半径R等の設定情報、さらに、先に図4(2)を参照して説明した仮想カメラ撮影方向設定点Cの位置情報等は、双方向コミュニケーション処理を実行する情報処理装置間で、予め決定し共有する。
これらの情報は、図11、図12のフローを参照して説明したようにコミュニケーション開始前に実行するコミュニケーション準備処理において双方で決定し、共有する。
図16の右側に、仮想カメラの設定位置の算出処理の手順を示している。
これらの情報は、図11、図12のフローを参照して説明したようにコミュニケーション開始前に実行するコミュニケーション準備処理において双方で決定し、共有する。
図16の右側に、仮想カメラの設定位置の算出処理の手順を示している。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
なお、視聴ユーザAは、被写体Oを中心とする半径Rの円の軌跡を必ずしも辿らないが、仮想カメラは、被写体Oを中心とする半径Rの円の軌跡を辿るものと近似して処理を実行する。
図16に示す仮想カメラ位置算出処理例では、視聴ユーザAの中心座標(x0,z0)のx座標位置と、仮想カメラ位置座標(x1,z1)のx座標を一致するものと近似する。すなわち、
x1=x0
とする。ただし、
x0>Rの場合は、z1が求まるように、
x0=R
上記の近似処理を行う。
図16に示す仮想カメラ位置算出処理例では、視聴ユーザAの中心座標(x0,z0)のx座標位置と、仮想カメラ位置座標(x1,z1)のx座標を一致するものと近似する。すなわち、
x1=x0
とする。ただし、
x0>Rの場合は、z1が求まるように、
x0=R
上記の近似処理を行う。
この近似処理を行なうと、仮想カメラ位置(x1,z1)と、視聴ユーザ位置(x0,z0)の各パラメータ間には、以下の関係式が成立する。
x1=x0
x1 2+z1 2=R2
x1=x0
x1 2+z1 2=R2
上記の連立方程式を解くと、
x1=x0
z1=SQRT(R2-x0 2)
となり、
仮想カメラ位置(x1,z1)が求まる。
x1=x0
z1=SQRT(R2-x0 2)
となり、
仮想カメラ位置(x1,z1)が求まる。
この仮想カメラ位置(x1,z1)が、例えば図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x1,z1)となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x1,z1)となる。
[8.(実施例1の変形例2)仮想カメラ撮影方向設定点Cを被写体後方に配置した例について]
次に、実施例1の変形例2(バリエーション2)として、仮想カメラ撮影方向設定点Cを被写体後方に配置した例について説明する。
次に、実施例1の変形例2(バリエーション2)として、仮想カメラ撮影方向設定点Cを被写体後方に配置した例について説明する。
図17は、仮想カメラ撮影方向設定点Cを被写体Oの後方に配置した例について説明する図である。
先に図4を参照して説明したように、例えば図4(1)に示すように、仮想視点画像撮影カメラの撮影方向を被写体に一致させると図3を参照して説明したように、ユーザOの位置が表示面(ディスプレイ面)位置に固定されてしまい、不自然な動きを示す3次元画像として観察されるという問題がある。
先に図4を参照して説明したように、例えば図4(1)に示すように、仮想視点画像撮影カメラの撮影方向を被写体に一致させると図3を参照して説明したように、ユーザOの位置が表示面(ディスプレイ面)位置に固定されてしまい、不自然な動きを示す3次元画像として観察されるという問題がある。
そこで、図4(2)に示すように、仮想視点画像撮影カメラの撮影方向はユーザOではなく、被写体(ユーザO)の前方に設定された仮想カメラ撮影方向設定点Cとすることで、図5~図7を参照して説明したように、表示ユーザOを表示部の表示面から離れた位置に存在するように表示することが可能となり、自然な奥行き感のある立体画像の表示を行うことができる。
図10を参照して説明した(実施例1)は、図4(2)の設定と同様、被写体(ユーザO)の前方に仮想カメラ撮影方向設定点Cを設定した例である。
この仮想カメラ撮影方向設定点Cを、様々な位置に設定することで、表示部に表示されるオブジェクト(被写体)見え方を変更することが可能となる。
この仮想カメラ撮影方向設定点Cを、様々な位置に設定することで、表示部に表示されるオブジェクト(被写体)見え方を変更することが可能となる。
図17に示す例は、仮想カメラ撮影方向設定点Cを被写体後方に配置した例を示している。
このような設定とすると、表示ユーザOを表示部の表示面の前方の位置に存在するように表示することが可能となる。
このような設定とすると、表示ユーザOを表示部の表示面の前方の位置に存在するように表示することが可能となる。
図18は、図17に示す仮想視点画像撮影カメラの設定で生成した仮想視点画像の表示例を示す図である。
図18には、以下の各図を示している。
図18中央(1)ユーザAが表示部を正面から観察している場合(=ユーザAが、図17の位置p2から表示部を観察している場合)
図18左側(2)ユーザAが表示部を左斜めから観察している場合(=ユーザAが、図17の位置p1から表示部を観察している場合)
図18右側(3)ユーザAが表示部を右斜めから観察している場合(=ユーザAが、図17の位置p3から表示部を観察している場合)
図18には、以下の各図を示している。
図18中央(1)ユーザAが表示部を正面から観察している場合(=ユーザAが、図17の位置p2から表示部を観察している場合)
図18左側(2)ユーザAが表示部を左斜めから観察している場合(=ユーザAが、図17の位置p1から表示部を観察している場合)
図18右側(3)ユーザAが表示部を右斜めから観察している場合(=ユーザAが、図17の位置p3から表示部を観察している場合)
図18に示す表示部のユーザOの表示態様は、以下の通りである。
図18中央(1)ユーザAが表示部を正面から観察している場合には、ユーザOを正面から見た顔が表示される。
ユーザOの表示位置は表示部の中央になる。
図18中央(1)ユーザAが表示部を正面から観察している場合には、ユーザOを正面から見た顔が表示される。
ユーザOの表示位置は表示部の中央になる。
図18左側(2)ユーザAが表示部を左斜めから観察している場合には、ユーザOを左斜めから見た顔が表示されている。
ただし、ユーザOの表示位置が表示部の右側に移動する。これは、仮想画像撮影カメラの向きが、図17に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より右側にずれた位置となる。
ただし、ユーザOの表示位置が表示部の右側に移動する。これは、仮想画像撮影カメラの向きが、図17に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より右側にずれた位置となる。
また、図18右側(3)ユーザAが表示部を右斜めから観察している場合には、ユーザOを右斜めから見た顔が表示されている。
ただし、ユーザOの表示位置が表示部の左側に移動する。これは、仮想画像撮影カメラの向きが、図17に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より左側にずれた位置となる。
ただし、ユーザOの表示位置が表示部の左側に移動する。これは、仮想画像撮影カメラの向きが、図17に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より左側にずれた位置となる。
これらの画像表示により、視聴ユーザAは、運動視差により、表示ユーザOの位置が図18の上段に示すように、表示部表示面から前面に飛び出した位置として把握することになる。
このように、仮想カメラ撮影方向設定点Cを被写体(=表示ユーザ等の表示オブジェクト)と異なる位置に設定することで、表示ユーザ等の表示オブジェクトを表示部の表示面から離れた様々な位置に存在するように表示することが可能となる。
[9.(実施例1の変形例3)仮想カメラを、仮想カメラ撮影方向設定点Cを中心とする半径Rの円上に位置させた例について]
次に、実施例1の変形例3(バリエーション3)として、仮想カメラを、仮想カメラ撮影方向設定点Cを中心とする半径Rの円上に位置させた例について説明する。
次に、実施例1の変形例3(バリエーション3)として、仮想カメラを、仮想カメラ撮影方向設定点Cを中心とする半径Rの円上に位置させた例について説明する。
図19を参照して本例の仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
図19の左に示す図は、仮想カメラ(仮想視点画像撮影カメラ)を、仮想カメラ撮影方向設定点Cを中心とする半径Rの円上に位置させた例を示している。
図19の左に示す図は、仮想カメラ(仮想視点画像撮影カメラ)を、仮想カメラ撮影方向設定点Cを中心とする半径Rの円上に位置させた例を示している。
図19の右側に、
(a)仮想カメラの軌跡と向き
(b)仮想カメラの設定位置の算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
(b)仮想カメラの設定位置の算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
図19左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
図19左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
この時、仮想カメラの軌跡、すなわち、カメラ座標(x1,z1)の軌跡は、
x2+(z-c)2=R2
上記式を満足する座標(x1,z1)となる。
なお、Rは、仮想カメラ撮影方向設定点Cを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
x2+(z-c)2=R2
上記式を満足する座標(x1,z1)となる。
なお、Rは、仮想カメラ撮影方向設定点Cを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向く設定とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述の半径Rと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述の半径Rと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
(b)仮想カメラの設定位置の算出例
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置を(x0,z0)とする。
この視聴ユーザ位置は、予め取得され、取得された視聴ユーザ位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置を(x0,z0)とする。
この視聴ユーザ位置は、予め取得され、取得された視聴ユーザ位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
なお、仮想カメラは、仮想カメラ撮影方向設定点Cを中心とする半径Rの円の軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、仮想カメラ撮影方向設定点Cと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)が仮想カメラの中心座標位置となる。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、仮想カメラ撮影方向設定点Cと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)が仮想カメラの中心座標位置となる。
ここで、仮想カメラ位置(x1,z1)と、視聴ユーザ位置(x0,z0)の各パラメータ間には、以下の関係式が成立する。
z1=(z0/x0)x1
x1 2+(z1-c)2=R2
z1=(z0/x0)x1
x1 2+(z1-c)2=R2
上記の連立方程式を解くと、
仮想カメラ位置(x1,z1)が求まる。
仮想カメラ位置(x1,z1)が求まる。
例えば、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、上述した手順に従って、リモート側から受信する受信リモートユーザ視聴位置情報181を(x0,z0)に基づいて、仮想カメラ位置(x1,z1)を算出する。
この仮想カメラ位置(x1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
この仮想カメラ位置(x1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x1,z1)となる。
[10.(実施例1の変形例4)仮想カメラ撮影方向設定点Cの位置を視聴ユーザ位置に応じて移動する設定とした例について]
次に、実施例1の変形例4(バリエーション4)として、仮想カメラ撮影方向設定点Cの位置を視聴ユーザ位置に応じて移動する設定とした例について説明する。
次に、実施例1の変形例4(バリエーション4)として、仮想カメラ撮影方向設定点Cの位置を視聴ユーザ位置に応じて移動する設定とした例について説明する。
図20を参照して本例の仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
図20の左に示す図は、仮想カメラ撮影方向設定点Cの位置を視聴ユーザ位置に応じて移動する設定とした例を示している。
図20の左に示す図は、仮想カメラ撮影方向設定点Cの位置を視聴ユーザ位置に応じて移動する設定とした例を示している。
例えば、視聴ユーザAが図に示す位置p1にいる場合の仮想カメラ撮影方向設定点は図に示すC1である。
また、視聴ユーザAが図に示す位置p2にいる場合の仮想カメラ撮影方向設定点は図に示すC2である。
また、視聴ユーザAが図に示す位置p2にいる場合の仮想カメラ撮影方向設定点は図に示すC2である。
仮想カメラ撮影方向設定点Cは、視聴ユーザ位置に応じて図に示すz軸情報を移動する。
被写体Oと仮想カメラ撮影方向設定点Cの距離をcとし、
被写体Oと視聴ユーザAとを結ぶOAと、z軸との角度をθとしたとき、
c=c0×θ
とする。
ただし、c0は予め既定された係数である。
このような設定の下、仮想カメラ撮影方向設定点Cの位置が、視聴ユーザ位置に応じて移動する。
被写体Oと仮想カメラ撮影方向設定点Cの距離をcとし、
被写体Oと視聴ユーザAとを結ぶOAと、z軸との角度をθとしたとき、
c=c0×θ
とする。
ただし、c0は予め既定された係数である。
このような設定の下、仮想カメラ撮影方向設定点Cの位置が、視聴ユーザ位置に応じて移動する。
図20の右側に、
(a)仮想カメラの軌跡と向き
(b)仮想カメラ撮影方向設定点Cの設定例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
(b)仮想カメラ撮影方向設定点Cの設定例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
図20左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
図20左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
この時、仮想カメラの軌跡、すなわち、カメラ座標(x1,z1)の軌跡は、
x2+z2=R2
上記式を満足する座標(x1,z1)となる。
なお、Rは、仮想カメラ撮影方向設定点Cを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
x2+z2=R2
上記式を満足する座標(x1,z1)となる。
なお、Rは、仮想カメラ撮影方向設定点Cを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向く設定とする。
(b)仮想カメラ撮影方向設定点Cの設定例
次に、仮想視点画像を撮影する仮想カメラの撮影方向設定点Cの設定例について説明する。
次に、仮想視点画像を撮影する仮想カメラの撮影方向設定点Cの設定例について説明する。
図20左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
この時、仮想カメラの軌跡、すなわち、カメラ座標(x1,z1)の軌跡は、
x2+z2=R2
上記式を満足する座標(x1,z1)となる。
x2+z2=R2
上記式を満足する座標(x1,z1)となる。
仮想カメラの光軸の向きを決定する仮想カメラの撮影方向設定点Cは、
被写体の手前、または後ろに設定可能である。
前述したように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとし、
被写体Oと視聴ユーザAとを結ぶOAと、z軸との角度をθとしたとき、
c=c0×θ
とする。
ただし、c0は予め既定された係数である。
このような設定の下、仮想カメラ撮影方向設定点Cの位置が、視聴ユーザ位置に応じて移動する。
被写体の手前、または後ろに設定可能である。
前述したように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとし、
被写体Oと視聴ユーザAとを結ぶOAと、z軸との角度をθとしたとき、
c=c0×θ
とする。
ただし、c0は予め既定された係数である。
このような設定の下、仮想カメラ撮影方向設定点Cの位置が、視聴ユーザ位置に応じて移動する。
[11.(実施例2)仮想視点画像を撮影する仮想カメラを直線状に移動させる実施例について]
次に、実施例2として、仮想視点画像を撮影する仮想カメラを直線状に移動させる実施例について説明する。
次に、実施例2として、仮想視点画像を撮影する仮想カメラを直線状に移動させる実施例について説明する。
例えば、図10を参照して説明した実施例1において、仮想視点画像を撮影する仮想カメラは、被写体Oを中心とする半径Rの円弧上を移動する設定としていた。
以下に説明する実施例2は、図21に示すように、仮想視点画像を撮影する仮想カメラを直線状に移動させる実施例である。
以下に説明する実施例2は、図21に示すように、仮想視点画像を撮影する仮想カメラを直線状に移動させる実施例である。
図21に示す図は、視聴ユーザA、および仮想カメラが、被写体Oからz軸方向(表示面垂直方向)に距離Rの位置を表示面に平行移動すると想定した例である。
座標は、ユーザOの位置を原点とした水平面をxz平面として、表示部表示面に平行な方向をx軸、垂直方向をz軸として設定してある。
仮想カメラの軌跡は、表示ユーザの位置(原点(x,z)=(0,0))から表示面垂直方向に距離Rの位置の表示面に平行なラインpqとなる。
座標は、ユーザOの位置を原点とした水平面をxz平面として、表示部表示面に平行な方向をx軸、垂直方向をz軸として設定してある。
仮想カメラの軌跡は、表示ユーザの位置(原点(x,z)=(0,0))から表示面垂直方向に距離Rの位置の表示面に平行なラインpqとなる。
図21の右側に、
(a)仮想カメラの軌跡と向き
(b)仮想カメラ位置算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
(b)仮想カメラ位置算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
図21左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
図21左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x1,z1)、
とする。
この時、仮想カメラの軌跡、すなわち、カメラ座標(x1,z1)の軌跡は、
z=R
となる。
なお、Rは、被写体Oからのz方向距離であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
z=R
となる。
なお、Rは、被写体Oからのz方向距離であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向く設定とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述のRと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述のRと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
(b)仮想カメラ設定位置算出例
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置を(x0,z0)とする。
この視聴ユーザ位置は、予め取得され、取得された視聴ユーザ位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置を(x0,z0)とする。
この視聴ユーザ位置は、予め取得され、取得された視聴ユーザ位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
なお、仮想カメラは、被写体Oからのz方向距離Rの直線pqの軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oからのz方向距離Rの直線pqの交点座標(x1,z1)が仮想カメラの中心座標位置となる。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oからのz方向距離Rの直線pqの交点座標(x1,z1)が仮想カメラの中心座標位置となる。
ここで、仮想カメラ位置(x1,z1)と、視聴ユーザ位置(x0,z0)の各パラメータ間には、以下の関係式が成立する。
z1=(z0/x0)x1
z1=R
z1=(z0/x0)x1
z1=R
上記の連立方程式を解くと、
x1=Rx0/z0
z1=R
となり、
仮想カメラ位置(x1,z1)が求まる。
x1=Rx0/z0
z1=R
となり、
仮想カメラ位置(x1,z1)が求まる。
例えば、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、上述した手順に従って、リモート側から受信する受信リモートユーザ視聴位置情報181を(x0,z0)に基づいて、仮想カメラ位置(x1,z1)を算出する。
この仮想カメラ位置(x1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
この仮想カメラ位置(x1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x1,z1)となる。
[12.(実施例2の変形例1)仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について]
次に実施例2の変形例1(バリエーション1)として、仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について説明する。
図22を参照して説明する。
次に実施例2の変形例1(バリエーション1)として、仮想視点画像の撮影位置に相当する仮想カメラ位置の算出を簡易化した例について説明する。
図22を参照して説明する。
図22に示す左上部の図も、先に説明した図21と同様、仮想視点画像を撮影する仮想カメラを直線状に移動させる実施例を説明する図である。
図22に示す図は、視聴ユーザA、および仮想カメラが、被写体Oからz軸方向(表示面垂直方向)に距離Rの位置を表示面に平行移動すると想定した例である。
座標は、ユーザOの位置を原点とした水平面をxz平面として、表示部表示面に平行な方向をx軸、垂直方向をz軸として設定してある。
仮想カメラの軌跡は、表示ユーザの位置(原点(x,z)=(0,0))から表示面垂直方向に距離Rの位置の表示面に平行なラインpqとなる。
図22に示す図は、視聴ユーザA、および仮想カメラが、被写体Oからz軸方向(表示面垂直方向)に距離Rの位置を表示面に平行移動すると想定した例である。
座標は、ユーザOの位置を原点とした水平面をxz平面として、表示部表示面に平行な方向をx軸、垂直方向をz軸として設定してある。
仮想カメラの軌跡は、表示ユーザの位置(原点(x,z)=(0,0))から表示面垂直方向に距離Rの位置の表示面に平行なラインpqとなる。
図22の右側に、仮想カメラの設定位置の算出処理の手順を示している。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x1,z1)を以下の手順で算出する。
なお、仮想カメラは、被写体Oからのz方向距離Rの直線pqの軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oからのz方向距離Rの直線pqの交点座標(x1,z1)が仮想カメラの中心座標位置となる。
さらに、視聴ユーザAと仮想カメラのx座標が一致すると近似する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oからのz方向距離Rの直線pqの交点座標(x1,z1)が仮想カメラの中心座標位置となる。
さらに、視聴ユーザAと仮想カメラのx座標が一致すると近似する。
ここで、仮想カメラ位置(x1,z1)と、視聴ユーザ位置(x0,z0)の各パラメータ間には、以下の関係式が成立する。
x1=x0
z1=R
上記となり、
仮想カメラ位置(x1,z1)が求まる。
x1=x0
z1=R
上記となり、
仮想カメラ位置(x1,z1)が求まる。
例えば、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、上述した手順に従って、リモート側から受信する受信リモートユーザ視聴位置情報181を(x0,z0)に基づいて、仮想カメラ位置(x1,z1)を算出する。
この仮想カメラ位置(x1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
この仮想カメラ位置(x1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x1,z1)となる。
[13.(実施例3)仮想視点画像を撮影する仮想カメラを半径Rの垂直の円状に移動させる実施例について]
次に、実施例3として、仮想視点画像を撮影する仮想カメラを半径Rの垂直の円状に移動させる実施例について説明する。
次に、実施例3として、仮想視点画像を撮影する仮想カメラを半径Rの垂直の円状に移動させる実施例について説明する。
図23は、本実施例3の構成を説明する図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図23は、被写体Oを原点として、垂直上方向をy方向、右方向をz方向としたyz平面座標の座標軸であるy軸とz軸を示している。
仮想カメラは、被写体Oを中心とした上下(垂直)方向の半径Rの半円上を移動する。
仮想カメラは、被写体Oを中心とした上下(垂直)方向の半径Rの半円上を移動する。
視聴ユーザAの位置を(y0,z0)とする。
仮想カメラの位置を(y1,z1)とする。
なお、座標の設定情報や、視聴ユーザの推定移動円の半径R等の設定情報、さらに、仮想カメラ撮影方向設定点Cの位置情報等は、双方向コミュニケーション処理を実行する情報処理装置間で、予め決定し共有する。
これらの情報は、コミュニケーション開始前に実行するコミュニケーション準備処理において双方で決定し、共有する。
仮想カメラの位置を(y1,z1)とする。
なお、座標の設定情報や、視聴ユーザの推定移動円の半径R等の設定情報、さらに、仮想カメラ撮影方向設定点Cの位置情報等は、双方向コミュニケーション処理を実行する情報処理装置間で、予め決定し共有する。
これらの情報は、コミュニケーション開始前に実行するコミュニケーション準備処理において双方で決定し、共有する。
図24は、図23に示す仮想視点画像撮影カメラの設定で生成した仮想視点画像の表示例を示す図である。
図24には、以下の各図を示している。
図24(1)ユーザAが表示部を上斜めから観察している場合(=ユーザAが、図23の位置p1から表示部を観察している場合)
図24(2)ユーザAが表示部を正面から観察している場合(=ユーザAが、図23の位置p2から表示部を観察している場合)
図24(3)ユーザAが表示部を下斜めから観察している場合(=ユーザAが、図23の位置p3から表示部を観察している場合)
図24には、以下の各図を示している。
図24(1)ユーザAが表示部を上斜めから観察している場合(=ユーザAが、図23の位置p1から表示部を観察している場合)
図24(2)ユーザAが表示部を正面から観察している場合(=ユーザAが、図23の位置p2から表示部を観察している場合)
図24(3)ユーザAが表示部を下斜めから観察している場合(=ユーザAが、図23の位置p3から表示部を観察している場合)
図24に示す表示部のユーザOの表示態様は、以下の通りである。
図24(2)ユーザAが表示部を正面から観察している場合には、ユーザOを正面から見た顔が表示される。
ユーザOの表示位置は表示部の中央になる。
図24(2)ユーザAが表示部を正面から観察している場合には、ユーザOを正面から見た顔が表示される。
ユーザOの表示位置は表示部の中央になる。
図24(1)ユーザAが表示部を上斜めから観察している場合には、ユーザOを上斜めから見た顔が表示されている。
ただし、ユーザOの表示位置が表示部の上側に移動する。これは、仮想画像撮影カメラの向きが、図23に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より上側にずれた位置となる。
ただし、ユーザOの表示位置が表示部の上側に移動する。これは、仮想画像撮影カメラの向きが、図23に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より上側にずれた位置となる。
また、図24(3)ユーザAが表示部を下斜めから観察している場合には、ユーザOを下斜めから見た顔が表示されている。
ただし、ユーザOの表示位置が表示部の下側に移動する。これは、仮想画像撮影カメラの向きが、図23に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より下側にずれた位置となる。
ただし、ユーザOの表示位置が表示部の下側に移動する。これは、仮想画像撮影カメラの向きが、図23に示す仮想カメラ撮影方向設定点Cに向いているためであり、表示部の中央位置に点Cが設定され、ユーザOの表示位置は、表示部の中央より下側にずれた位置となる。
これらの画像表示により、視聴ユーザAは、運動視差により、表示ユーザOの位置が図24の右側に示すように、表示部表示面より奥側の位置に把握することになる。
次に、図25を参照して、この実施例3の仮想カメラの
軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
図25の左に示す図は、仮想カメラ(仮想視点画像撮影カメラ)を、被写体Oを中心とした上下(垂直)方向の半径Rの半円上を移動する例を示している。
軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
図25の左に示す図は、仮想カメラ(仮想視点画像撮影カメラ)を、被写体Oを中心とした上下(垂直)方向の半径Rの半円上を移動する例を示している。
図25の右側に、
(a)仮想カメラの軌跡と向き
(b)仮想カメラの設定位置の算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
(b)仮想カメラの設定位置の算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
図25左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(y0,z0)、
仮想カメラの位置を示すカメラ座標を(y1,z1)、
とする。
図25左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(y0,z0)、
仮想カメラの位置を示すカメラ座標を(y1,z1)、
とする。
この時、仮想カメラの軌跡、すなわち、カメラ座標(y1,z1)の軌跡は、
y2+z2=R2
上記式を満足する座標(y1,z1)となる。
なお、Rは、被写体Oを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
y2+z2=R2
上記式を満足する座標(y1,z1)となる。
なお、Rは、被写体Oを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向く設定とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述の半径Rと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述の半径Rと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
(b)仮想カメラの設定位置の算出例
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置を(y0,z0)とする。
この視聴ユーザ位置は、予め取得され、取得された視聴ユーザ位置情報(y0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(y1,z1)を以下の手順で算出する。
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置を(y0,z0)とする。
この視聴ユーザ位置は、予め取得され、取得された視聴ユーザ位置情報(y0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(y1,z1)を以下の手順で算出する。
なお、仮想カメラは、被写体Oを中心とする半径Rの円の軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(y0,z0)とすると、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(y1,z1)が仮想カメラの中心座標位置となる。
視聴ユーザAの中心座標を(y0,z0)とすると、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(y1,z1)が仮想カメラの中心座標位置となる。
ここで、仮想カメラ位置(y1,z1)と、視聴ユーザ位置(y0,z0)の各パラメータ間には、以下の関係式が成立する。
z1=(z0/y0)y1
y1 2+z1 2=R2
z1=(z0/y0)y1
y1 2+z1 2=R2
上記の連立方程式を解くと、
y1=Ry0/SQRT(y0 2+z0 2)
z1=Rz0/SQRT(y0 2+z0 2)
となり、
仮想カメラ位置(y1,z1)が求まる。
y1=Ry0/SQRT(y0 2+z0 2)
z1=Rz0/SQRT(y0 2+z0 2)
となり、
仮想カメラ位置(y1,z1)が求まる。
例えば、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、上述した手順に従って、リモート側から受信する受信リモートユーザ視聴位置情報181を(y0,z0)に基づいて、仮想カメラ位置(y1,z1)を算出する。
この仮想カメラ位置(y1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
この仮想カメラ位置(y1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(y1,z1)となる。
[14.(実施例4)仮想視点画像を撮影する仮想カメラを垂直な直線状に移動させる実施例について]
次に、実施例2として、仮想視点画像を撮影する仮想カメラを垂直(上下)方向の直線状に移動させる実施例について説明する。
次に、実施例2として、仮想視点画像を撮影する仮想カメラを垂直(上下)方向の直線状に移動させる実施例について説明する。
先に図23~図25を参照して説明した実施例3において、仮想視点画像を撮影する仮想カメラは、被写体Oを中心として垂直(上下)方向に設定した半径Rの円弧上を移動する。
以下に説明する実施例4は、図26に示すように、仮想視点画像を撮影する仮想カメラを垂直(上下)方向の直線状に移動させる実施例である。
以下に説明する実施例4は、図26に示すように、仮想視点画像を撮影する仮想カメラを垂直(上下)方向の直線状に移動させる実施例である。
図26に示す図は、視聴ユーザA、および仮想カメラが、被写体Oからz軸方向(表示面垂直方向)に距離Rの位置を垂直に直線状に移動すると想定した例である。
座標は、ユーザOの位置を原点とした垂直面をyz平面として、上下方向をy軸、水平方向をz軸として設定してある。
仮想カメラの軌跡は、表示ユーザの位置(原点(y,z)=(0,0))から表示面距離Rの位置の表示面に平行な垂直ラインpqとなる。
座標は、ユーザOの位置を原点とした垂直面をyz平面として、上下方向をy軸、水平方向をz軸として設定してある。
仮想カメラの軌跡は、表示ユーザの位置(原点(y,z)=(0,0))から表示面距離Rの位置の表示面に平行な垂直ラインpqとなる。
図26の右側に、
(a)仮想カメラの軌跡と向き
(b)仮想カメラ位置算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
(b)仮想カメラ位置算出例
これらについての説明を示している。以下、これらの記載に基づいて仮想視点画像を撮影する仮想カメラの軌跡と向き、および仮想カメラの設定位置算出処理について説明する。
(a)仮想カメラの軌跡と向き
図26左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(y0,z0)、
仮想カメラの位置を示すカメラ座標を(y1,z1)、
とする。
図26左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(y0,z0)、
仮想カメラの位置を示すカメラ座標を(y1,z1)、
とする。
この時、仮想カメラの軌跡、すなわち、カメラ座標(y1,z1)の軌跡は、
z=R
となる。
なお、Rは、被写体Oからのz方向距離であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
z=R
となる。
なお、Rは、被写体Oからのz方向距離であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向く設定とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述のRと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述のRと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
(b)仮想カメラ設定位置算出例
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置を(y0,z0)とする。
この視聴ユーザ位置は、予め取得され、取得された視聴ユーザ位置情報(y0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(y1,z1)を以下の手順で算出する。
次に、仮想視点画像を撮影する仮想カメラの設定位置の算出処理について説明する。
視聴ユーザAの位置を(y0,z0)とする。
この視聴ユーザ位置は、予め取得され、取得された視聴ユーザ位置情報(y0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(y1,z1)を以下の手順で算出する。
なお、仮想カメラは、被写体Oからのz方向距離Rの直線pqの軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(y0,z0)とすると、直線OAと、被写体Oからのz方向距離Rの直線pqの交点座標(y1,z1)が仮想カメラの中心座標位置となる。
視聴ユーザAの中心座標を(y0,z0)とすると、直線OAと、被写体Oからのz方向距離Rの直線pqの交点座標(y1,z1)が仮想カメラの中心座標位置となる。
ここで、仮想カメラ位置(y1,z1)と、視聴ユーザ位置(y0,z0)の各パラメータ間には、以下の関係式が成立する。
z1=(z0/y0)y1
z1=R
z1=(z0/y0)y1
z1=R
上記の連立方程式を解くと、
y1=Ry0/z0
z1=R
となり、
仮想カメラ位置(y1,z1)が求まる。
y1=Ry0/z0
z1=R
となり、
仮想カメラ位置(y1,z1)が求まる。
例えば、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161は、上述した手順に従って、リモート側から受信する受信リモートユーザ視聴位置情報181を(y0,z0)に基づいて、仮想カメラ位置(y1,z1)を算出する。
この仮想カメラ位置(y1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
この仮想カメラ位置(y1,z1)が、図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(y1,z1)となる。
[15.(実施例5)仮想カメラの位置を被写体と視聴者の視線が一致する位置とする実施例について]
次に、実施例5として、仮想カメラの位置を被写体と視聴者の視線が一致する位置とする実施例について説明する。
次に、実施例5として、仮想カメラの位置を被写体と視聴者の視線が一致する位置とする実施例について説明する。
双方向コミュニケーションを行う場合、表示部に表示された表示ユーザと、表示部を見る視聴ユーザが会話をする。このような会話を行う場合、双方のユーザの視線が一致することがスムーズなコミュニケーションを行う上で重要となる。
以下に説明する実施例5は、この視線一致を実現する位置に仮想カメラの位置を設定する実施例である。
以下に説明する実施例5は、この視線一致を実現する位置に仮想カメラの位置を設定する実施例である。
図27を参照して、本実施例5における仮想カメラの軌跡と向き、視聴者角度に応じた仮想カメラの設定位置について説明する。
図27左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x2,z2)、
とする。
図27左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x2,z2)、
とする。
この時、仮想カメラ座標(x2,z2)は、
x2=Rsinθ,
z2=Rcosθ
となる。
ただし、Rは、被写体Oを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
θは、仮想カメラとz軸のなす角度である。
カメラの軌跡は、x2+z2=R2
となる。
x2=Rsinθ,
z2=Rcosθ
となる。
ただし、Rは、被写体Oを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
θは、仮想カメラとz軸のなす角度である。
カメラの軌跡は、x2+z2=R2
となる。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向く設定とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述の半径Rと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述の半径Rと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
本実施例では、被写体Oに対する仮想カメラ角度θを、視聴者角度Φに応じて変化させる。
なお、θ、Φは、図に示すように、それぞれ、以下の角度である。
θ:z軸と、被写体Oと仮想カメラを接続する直線のなす角度、
Φ:z軸と、被写体Oと視聴ユーザAを接続する直線のなす角度、
なお、被写体Oと視聴ユーザAを接続する直線とは、同一空間に被写体Oと視聴ユーザAが存在すると想定した場合の直線であり、表示部に表示される被写体Oの位置と視聴ユーザAとを結ぶ直線に相当する。
なお、θ、Φは、図に示すように、それぞれ、以下の角度である。
θ:z軸と、被写体Oと仮想カメラを接続する直線のなす角度、
Φ:z軸と、被写体Oと視聴ユーザAを接続する直線のなす角度、
なお、被写体Oと視聴ユーザAを接続する直線とは、同一空間に被写体Oと視聴ユーザAが存在すると想定した場合の直線であり、表示部に表示される被写体Oの位置と視聴ユーザAとを結ぶ直線に相当する。
本実施例では、被写体Oに対する仮想カメラ角度θを、視聴者角度Φに応じて変化させ、具体的には、仮想カメラ位置を被写体Oと視聴ユーザA間の視線が一致する位置に設定する。
例えば、視聴ユーザAが正面から角度φだけずれた位置にいるとすると、仮想カメラの位置を正面から角度θだけずれた位置に設定する。
θは、Φをパラメータとした以下の算出関数fによって算出される。
θ=f(φ)
情報処理装置は、上記の関数f、あるいは、θとφの関係データを、予めデータベースとして記憶部に保持する。
例えば、視聴ユーザAが正面から角度φだけずれた位置にいるとすると、仮想カメラの位置を正面から角度θだけずれた位置に設定する。
θは、Φをパラメータとした以下の算出関数fによって算出される。
θ=f(φ)
情報処理装置は、上記の関数f、あるいは、θとφの関係データを、予めデータベースとして記憶部に保持する。
図27(b)には、データベースに格納されるデータである上記の関数:θ=f(φ)
の例を示している。
情報処理装置は、このデータベース格納データを利用して、入力された視聴ユーザ位置に基づいて、仮想カメラの設定位置を決定する。
の例を示している。
情報処理装置は、このデータベース格納データを利用して、入力された視聴ユーザ位置に基づいて、仮想カメラの設定位置を決定する。
図28を参照して、上述したデータベースの生成処理例について説明する。
データベースの生成は、以下の2つのステップ(S01)~(S02)を繰り返して行われる。
(ステップS01)被写体Oを正面から角度θの位置から撮影する
(ステップS02)視聴者Aがディスプレイの正面から角度φの位置にいる場合、ディスプレイに(S01)での撮影被写体Oを表示して、視線が一致する角度φを求める。
データベースの生成は、以下の2つのステップ(S01)~(S02)を繰り返して行われる。
(ステップS01)被写体Oを正面から角度θの位置から撮影する
(ステップS02)視聴者Aがディスプレイの正面から角度φの位置にいる場合、ディスプレイに(S01)での撮影被写体Oを表示して、視線が一致する角度φを求める。
上記の(S01),(S02)を繰り返して、角度φの位置から見て視線が一致する被写体の撮影角度θとし、
θ=f(φ)の関数を求め、関数f、またはθとΦとの対応関係データをデータベースとして記憶部に保存する。
θ=f(φ)の関数を求め、関数f、またはθとΦとの対応関係データをデータベースとして記憶部に保存する。
次に、図29を参照して、本実施例5の設定における仮想カメラ位置算出処理例について説明する。
図29左に示す図は、図27を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図29左に示す図は、図27を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図29の右側には、本実施例5の設定における仮想カメラ位置算出処理例を示している。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x2,z2)を以下の手順で算出する。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x2,z2)を以下の手順で算出する。
なお、視聴ユーザAは、被写体Oを中心とする半径Rの円の軌跡を必ずしも辿らないが、仮想カメラは、被写体Oを中心とする半径Rの円の軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)が仮想カメラの位置(x2,z2)を求める基準となる。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)が仮想カメラの位置(x2,z2)を求める基準となる。
視聴ユーザAの中心座標(x0,z0)と、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)との間には以下の式が成立する。
z1=(z0/x0)x1
x1 2+z1 2=R2
上記の連立方程式を解くと、
x1=Rx0/SQRT(x0 2+z0 2)
z1=Rz0/SQRT(x0 2+z0 2)
となる。
この(x1,z1)から、角度Φを算出し、θ=f(Φ)に従って、θを算出し、θから、仮想カメラ位置(x2,z2)を求める。
z1=(z0/x0)x1
x1 2+z1 2=R2
上記の連立方程式を解くと、
x1=Rx0/SQRT(x0 2+z0 2)
z1=Rz0/SQRT(x0 2+z0 2)
となる。
この(x1,z1)から、角度Φを算出し、θ=f(Φ)に従って、θを算出し、θから、仮想カメラ位置(x2,z2)を求める。
この仮想カメラ位置(x2,z2)が、例えば図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x2,z2)となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x2,z2)となる。
[16(実施例6)仮想カメラの位置を被写体と視聴者の視線が一致する位置とし、仮想カメラの動きを直線状に設定した実施例について]
次に、実施例6として、仮想カメラの位置を被写体と視聴者の視線が一致する位置とし、仮想カメラの動きを直線状に設定した実施例について説明する。
次に、実施例6として、仮想カメラの位置を被写体と視聴者の視線が一致する位置とし、仮想カメラの動きを直線状に設定した実施例について説明する。
本実施例6は、実施例5と同様、この視線一致を実現する位置に仮想カメラの位置を設定する実施例である。ただし、仮想カメラの移動軌跡を直線としている。
図30を参照して、本実施例6における仮想カメラの軌跡と向き、視聴者角度に応じた仮想カメラの設定位置について説明する。
図30左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x2,z2)、
とする。
視聴ユーザA、および仮想カメラが、被写体Oからz軸方向(表示面垂直方向)に距離Rの位置を表示面に平行移動すると想定している。
図30左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x2,z2)、
とする。
視聴ユーザA、および仮想カメラが、被写体Oからz軸方向(表示面垂直方向)に距離Rの位置を表示面に平行移動すると想定している。
この時、仮想カメラ座標(x2,z2)は、
x2=Rtanθ,
z2=R
となる。
ただし、Rは、仮想カメラの移動する直線pqを規定するパラメータであり被写体Oからの距離に相当する。このRは、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
θは、仮想カメラとz軸のなす角度である。
カメラの軌跡は、z=R
となる。
x2=Rtanθ,
z2=R
となる。
ただし、Rは、仮想カメラの移動する直線pqを規定するパラメータであり被写体Oからの距離に相当する。このRは、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
θは、仮想カメラとz軸のなす角度である。
カメラの軌跡は、z=R
となる。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向く設定とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述のRと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述のRと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
本実施例では、被写体Oに対する仮想カメラ角度θを、視聴者角度Φに応じて変化させる。
なお、θ、Φは、図に示すように、それぞれ、以下の角度である。
θ:z軸と、被写体Oと仮想カメラを接続する直線のなす角度、
Φ:z軸と、被写体Oと視聴ユーザAを接続する直線のなす角度、
なお、θ、Φは、図に示すように、それぞれ、以下の角度である。
θ:z軸と、被写体Oと仮想カメラを接続する直線のなす角度、
Φ:z軸と、被写体Oと視聴ユーザAを接続する直線のなす角度、
本実施例では、被写体Oに対する仮想カメラ角度θを、視聴者角度Φに応じて変化させ、具体的には、仮想カメラ位置を被写体Oと視聴ユーザA間の視線が一致する位置に設定する。
例えば、視聴ユーザAが正面から角度φだけずれた位置にいるとすると、仮想カメラの位置を正面から角度θだけずれた位置に設定する。
θは、Φをパラメータとした以下の算出関数fによって算出される。
θ=f(φ)
情報処理装置は、上記の関数f、あるいは、θとφの関係データを、予めデータベースとして記憶部に保持する。
例えば、視聴ユーザAが正面から角度φだけずれた位置にいるとすると、仮想カメラの位置を正面から角度θだけずれた位置に設定する。
θは、Φをパラメータとした以下の算出関数fによって算出される。
θ=f(φ)
情報処理装置は、上記の関数f、あるいは、θとφの関係データを、予めデータベースとして記憶部に保持する。
図30(b)には、データベースに格納されるデータである上記の関数:θ=f(φ)
の例を示している。
情報処理装置は、このデータベース格納データを利用して、入力された視聴ユーザ位置に基づいて、仮想カメラの設定位置を決定する。
の例を示している。
情報処理装置は、このデータベース格納データを利用して、入力された視聴ユーザ位置に基づいて、仮想カメラの設定位置を決定する。
次に、図31を参照して、本実施例6の設定における仮想カメラ位置算出処理例について説明する。
図31左に示す図は、図30を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図31左に示す図は、図30を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図31の右側には、本実施例6の設定における仮想カメラ位置算出処理例を示している。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x2,z2)を以下の手順で算出する。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x2,z2)を以下の手順で算出する。
なお、視聴ユーザAは、被写体Oから距離Rの直線の軌跡を必ずしも辿らないが、仮想カメラは、被写体Oから距離Rの直線の軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oから距離Rの位置の直線pqの交点座標(x1,z1)が仮想カメラの位置(x2,z2)を求める基準となる。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oから距離Rの位置の直線pqの交点座標(x1,z1)が仮想カメラの位置(x2,z2)を求める基準となる。
視聴ユーザAの中心座標(x0,z0)と、直線OAと、被写体Oから距離Rの位置の直線pqの交点座標(x1,z1)との間には以下の式が成立する。
z1=(z0/x0)x1
z1=R
上記の連立方程式を解くと、
x1=Rx0/z0
z1=R
となる。
この(x1,z1)から、角度Φを算出し、θ=f(Φ)に従って、θを算出し、θから、仮想カメラ位置(x2,z2)を求める。
z1=(z0/x0)x1
z1=R
上記の連立方程式を解くと、
x1=Rx0/z0
z1=R
となる。
この(x1,z1)から、角度Φを算出し、θ=f(Φ)に従って、θを算出し、θから、仮想カメラ位置(x2,z2)を求める。
この仮想カメラ位置(x2,z2)が、例えば図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x2,z2)となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x2,z2)となる。
[17.(実施例6の変形例1)仮想カメラの位置を被写体と視聴者間の視線が一致する位置とし、仮想カメラの軌跡を、仮想カメラと被写体間距離を一定に保つ設定とした実施例について]
次に、実施例6の変形例1として、仮想カメラの位置を被写体と視聴者間の視線が一致する位置とし、仮想カメラの軌跡を、仮想カメラと被写体間距離を一定に保つ設定とした実施例について説明する。
次に、実施例6の変形例1として、仮想カメラの位置を被写体と視聴者間の視線が一致する位置とし、仮想カメラの軌跡を、仮想カメラと被写体間距離を一定に保つ設定とした実施例について説明する。
図32を参照して、本実施例6の変形例1における仮想カメラの軌跡と向き、視聴者角度に応じた仮想カメラの設定位置について説明する。
図32左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x2,z2)、
とする。
視聴ユーザA、および仮想カメラが、被写体Oからz軸方向(表示面垂直方向)に距離Rの位置を表示面に平行移動すると想定している。
図32左側の図に示すように、被写体Oと仮想カメラ撮影方向設定点Cの距離をcとする。また、
視聴ユーザAの座標を(x0,z0)、
仮想カメラの位置を示すカメラ座標を(x2,z2)、
とする。
視聴ユーザA、および仮想カメラが、被写体Oからz軸方向(表示面垂直方向)に距離Rの位置を表示面に平行移動すると想定している。
さらにこの変形例1では、被写体Oと視聴ユーザAとの距離、および被写体Oと仮想カメラとの距離を一定に維持する設定としている。
この距離をDとする。
この距離をDとする。
この時、仮想カメラ座標(x2,z2)は、
x2=Dsinθ,
z2=Dcosθ
となる。
ただし、Dは、被写体Oと視聴ユーザAとの距離に相当し、
D=SQRT(x1 2+z1 2)
x2=Dsinθ,
z2=Dcosθ
となる。
ただし、Dは、被写体Oと視聴ユーザAとの距離に相当し、
D=SQRT(x1 2+z1 2)
上記のように、Dは、被写体Oと視聴ユーザAとの距離である。また、
θは、仮想カメラとz軸のなす角度である。
θは、仮想カメラとz軸のなす角度である。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向く設定とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述のDと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、この仮想カメラ撮影方向設定点Cは、上述のDと同様、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
本実施例では、被写体Oに対する仮想カメラ角度θを、視聴者角度Φに応じて変化させる。
なお、θ、Φは、図に示すように、それぞれ、以下の角度である。
θ:z軸と、被写体Oと仮想カメラを接続する直線のなす角度、
Φ:z軸と、被写体Oと視聴ユーザAを接続する直線のなす角度、
なお、θ、Φは、図に示すように、それぞれ、以下の角度である。
θ:z軸と、被写体Oと仮想カメラを接続する直線のなす角度、
Φ:z軸と、被写体Oと視聴ユーザAを接続する直線のなす角度、
本実施例では、被写体Oに対する仮想カメラ角度θを、視聴者角度Φに応じて変化させ、具体的には、仮想カメラ位置を被写体Oと視聴ユーザA間の視線が一致する位置に設定する。
例えば、視聴ユーザAが正面から角度φだけずれた位置にいるとすると、仮想カメラの位置を正面から角度θだけずれた位置に設定する。
θは、Φをパラメータとした以下の算出関数fによって算出される。
θ=f(φ)
情報処理装置は、上記の関数f、あるいは、θとφの関係データを、予めデータベースとして記憶部に保持する。
例えば、視聴ユーザAが正面から角度φだけずれた位置にいるとすると、仮想カメラの位置を正面から角度θだけずれた位置に設定する。
θは、Φをパラメータとした以下の算出関数fによって算出される。
θ=f(φ)
情報処理装置は、上記の関数f、あるいは、θとφの関係データを、予めデータベースとして記憶部に保持する。
図32(b)には、データベースに格納されるデータである上記の関数:θ=f(φ)
の例を示している。
情報処理装置は、このデータベース格納データを利用して、入力された視聴ユーザ位置に基づいて、仮想カメラの設定位置を決定する。
の例を示している。
情報処理装置は、このデータベース格納データを利用して、入力された視聴ユーザ位置に基づいて、仮想カメラの設定位置を決定する。
次に、図33を参照して、本実施例6の変形例1における仮想カメラ位置算出処理例について説明する。
図33左に示す図は、図32を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図33左に示す図は、図32を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図33の右側には、本実施例6の変形例1の設定における仮想カメラ位置算出処理例を示している。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x2,z2)を以下の手順で算出する。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x2,z2)を以下の手順で算出する。
なお、視聴ユーザAは、被写体Oから距離Rの直線の軌跡を必ずしも辿らないが、仮想カメラは、被写体Oから距離Rの直線の軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oから距離Rの位置の直線pqの交点座標(x1,z1)が仮想カメラの位置(x2,z2)を求める基準となる。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oから距離Rの位置の直線pqの交点座標(x1,z1)が仮想カメラの位置(x2,z2)を求める基準となる。
視聴ユーザAの中心座標(x0,z0)と、直線OAと、被写体Oから距離Rの位置の直線pqの交点座標(x1,z1)との間には以下の式が成立する。
z1=(z0/x0)x1
z1=R
上記の連立方程式を解くと、
x1=Rx0/z0
z1=R
となる。
この(x1,z1)から、角度Φを算出し、さらに、
θ=f(Φ)
に従って、θを算出し、さらに、先に、図32を参照して説明した関係式、すなわち、
x2=Dsinθ
z2=Dcosθ
上記式に従って、仮想カメラ位置(x2,z2)を求める。
z1=(z0/x0)x1
z1=R
上記の連立方程式を解くと、
x1=Rx0/z0
z1=R
となる。
この(x1,z1)から、角度Φを算出し、さらに、
θ=f(Φ)
に従って、θを算出し、さらに、先に、図32を参照して説明した関係式、すなわち、
x2=Dsinθ
z2=Dcosθ
上記式に従って、仮想カメラ位置(x2,z2)を求める。
この仮想カメラ位置(x2,z2)が、例えば図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x2,z2)となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x2,z2)となる。
[18.(実施例7)仮想カメラの位置を被写体と視聴者間を結ぶ直線上の位置(視聴者の後方等)にした実施例について]
次に、実施例7として、仮想カメラの位置を被写体と視聴者間を結ぶ直線上の位置(視聴者の後方等)にした実施例について説明する。
次に、実施例7として、仮想カメラの位置を被写体と視聴者間を結ぶ直線上の位置(視聴者の後方等)にした実施例について説明する。
図34を参照して本実施例7について説明する。
図34左に示す図は、本実施例7の構成を説明する図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図34左に示す図は、本実施例7の構成を説明する図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
なお、角度Φは、z軸と、被写体Oと視聴ユーザAを接続する直線のなす角度である。
本実施例7では、視聴ユーザAは、被写体Oを中心とする半径Rの円弧上を移動すると仮定し、仮想カメラは、被写体Oを中心とする半径(R+r)の円弧上を移動する設定としている。
本実施例7では、視聴ユーザAは、被写体Oを中心とする半径Rの円弧上を移動すると仮定し、仮想カメラは、被写体Oを中心とする半径(R+r)の円弧上を移動する設定としている。
図33の右には、(a)仮想カメラの軌跡と向きについての説明を示している。
以下、この実施例7における仮想カメラの軌跡と向きについて説明する。
被写体Oと仮想カメラ撮影方向設定点Cの距離をcとすると、
視聴ユーザAの座標(x0,z0)のとき、カメラ座標(x2,z2)は、以下のように示される。
x2=(R+r)sinΦ,
z2=(R+r)cosΦ
以下、この実施例7における仮想カメラの軌跡と向きについて説明する。
被写体Oと仮想カメラ撮影方向設定点Cの距離をcとすると、
視聴ユーザAの座標(x0,z0)のとき、カメラ座標(x2,z2)は、以下のように示される。
x2=(R+r)sinΦ,
z2=(R+r)cosΦ
また、仮想カメラの軌跡は、
x2+z2=(R+r)2
を満足する座標(x2,z2)となる。
なお、R+rは、被写体Oを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
x2+z2=(R+r)2
を満足する座標(x2,z2)となる。
なお、R+rは、被写体Oを中心とする半径の値であり、双方向コミュニケーションを実行する装置において、事前に決定され、双方の装置間で共有される。
さらに、仮想カメラの向き(カメラ光軸の向き)は、仮想カメラ撮影方向設定点Cに向く設定とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
なお、被写体Oと仮想カメラ撮影方向設定点Cの距離cの正負の設定は以下の設定とする。
被写体Oより前方(視聴ユーザAに近づく方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが+の値、すなわち、c>0とする。
一方、被写体Oより後方(視聴ユーザAから離れる方向)に、仮想カメラ撮影方向設定点Cが設定される場合は、距離cが-の値、すなわち、c<0とする。
次に、図35を参照して、本実施例7の設定における仮想カメラ位置算出処理例について説明する。
図35左に示す図は、図34を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図35左に示す図は、図34を参照して説明したと同様の図であり、以下の各構成要素からなる図である。
O:撮影オブジェクト(=仮想視点画像に含まれる表示ユーザ)
A:視聴ユーザ(=仮想視点画像を見るユーザ)
仮想視点画像撮影カメラ(=仮想カメラ)
C:仮想カメラ撮影方向設定点
図35の右側には、本実施例7の設定における仮想カメラ位置算出処理例を示している。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x2,z2)を以下の手順で算出する。
視聴ユーザAの位置を(x0,z0)とする。
このユーザ視聴位置情報(x0,z0)に基づいて、仮想視点画像を撮影する仮想カメラの設定位置(x2,z2)を以下の手順で算出する。
なお、視聴ユーザAは、被写体Oを中心とする半径Rの円の軌跡を必ずしも辿らないが、仮想カメラは、被写体Oを中心とする半径(R+r)の円の軌跡を辿るものと近似して処理を実行する。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)が仮想カメラの位置(x2,z2)を求める基準となる。
視聴ユーザAの中心座標を(x0,z0)とすると、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)が仮想カメラの位置(x2,z2)を求める基準となる。
視聴ユーザAの中心座標(x0,z0)と、直線OAと、被写体Oと仮想カメラ間の距離(R)を半径とした半径Rの円の軌跡の交点座標(x1,z1)との間には以下の式が成立する。
z1=(z0/x0)x1
x1 2+z1 2=R2
上記の連立方程式を解くと、
x1=Rx0/SQRT(x0 2+z0 2)
z1=Rz0/SQRT(x0 2+z0 2)
となる。
この(x1,z1)から、角度Φを算出し、Rとrとの対応関係に従って仮想カメラ位置(x2,z2)を求める。
z1=(z0/x0)x1
x1 2+z1 2=R2
上記の連立方程式を解くと、
x1=Rx0/SQRT(x0 2+z0 2)
z1=Rz0/SQRT(x0 2+z0 2)
となる。
この(x1,z1)から、角度Φを算出し、Rとrとの対応関係に従って仮想カメラ位置(x2,z2)を求める。
この仮想カメラ位置(x2,z2)が、例えば図9に示すリモート情報処理部107のリモート側仮想視点位置算出部161の出力情報であるリモート側仮想視点位置情報183となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x2,z2)となる。
また、図14に示す例では、図14に示すローカル情報処理部102のローカル側仮想視点位置算出部202の出力情報であるローカル側仮想視点位置情報233が、この仮想カメラ位置(x2,z2)となる。
この実施例7は、仮想カメラと被写体Oとの距離を一定に維持することを特徴としている。この処理の効果について、図36を参照して説明する。
図36は、被写体Oから、仮想カメラ撮影方向設定点Cまでの距離cについて、
c>0の場合(被写体Oの前方に仮想カメラ撮影方向設定点Cを設定)と、
c>0の場合(被写体Oの後方に仮想カメラ撮影方向設定点Cを設定)との
2つの例について説明する図である。
図36は、被写体Oから、仮想カメラ撮影方向設定点Cまでの距離cについて、
c>0の場合(被写体Oの前方に仮想カメラ撮影方向設定点Cを設定)と、
c>0の場合(被写体Oの後方に仮想カメラ撮影方向設定点Cを設定)との
2つの例について説明する図である。
図36(1)には、c>0の場合(被写体Oの前方に仮想カメラ撮影方向設定点Cを設定)の表示例を示している。
この場合、被写体Oの顔が表示部表示面(ディスプレイ)の奥側に定位するように表示されるので、視聴ユーザAと被写体Oとの距離が離れることを意味する。
この距離が離れる効果をさらに強調するために、仮想カメラを撮影対象から離す(r>0)。すると、撮影対象の顔が小さく表示される。
この場合、被写体Oの顔が表示部表示面(ディスプレイ)の奥側に定位するように表示されるので、視聴ユーザAと被写体Oとの距離が離れることを意味する。
この距離が離れる効果をさらに強調するために、仮想カメラを撮影対象から離す(r>0)。すると、撮影対象の顔が小さく表示される。
図36(2)には、c>0の場合(被写体Oの後方に仮想カメラ撮影方向設定点Cを設定)の表示例を示している。
この場合、被写体Oの顔が表示部表示面(ディスプレイ)の手前側に定位するように表示されるので、視聴ユーザAと被写体Oとの距離が近づくことを意味する。
この距離が近づく効果をさらに強調するために、仮想カメラを撮影対象に近づける(r<0)。すると、撮影対象の顔が大きく表示される。
この場合、被写体Oの顔が表示部表示面(ディスプレイ)の手前側に定位するように表示されるので、視聴ユーザAと被写体Oとの距離が近づくことを意味する。
この距離が近づく効果をさらに強調するために、仮想カメラを撮影対象に近づける(r<0)。すると、撮影対象の顔が大きく表示される。
このように、仮想カメラ撮影方向設定点Cの位置設定に応じて被写体の大きさが変更される。実施例7では、仮想カメラの位置を、視聴ユーザからの離間距離としてのパラメータrを制御してこの効果をさらに強調する設定としている。
[19.情報処理装置のハードウェア構成例について]
次に、図37を参照して情報処理装置のハードウェア構成例について説明する。
図37は、本開示の処理を実行する情報処理装置のハードウェア構成例を示す図である。
次に、図37を参照して情報処理装置のハードウェア構成例について説明する。
図37は、本開示の処理を実行する情報処理装置のハードウェア構成例を示す図である。
CPU(Central Processing Unit)501は、ROM(Read Only Memory)502、または記憶部508に記憶されているプログラムに従って各種の処理を実行する制御部やデータ処理部として機能する。例えば、上述した実施例において説明したシーケンスに従った処理を実行する。RAM(Random Access Memory)503には、CPU501が実行するプログラムやデータなどが記憶される。これらのCPU501、ROM502、およびRAM503は、バス504により相互に接続されている。
CPU501はバス504を介して入出力インタフェース505に接続され、入出力インタフェース505には、入力部506、出力部507等が接続される。
入力部506は、例えばセンサ521からのセンサ情報(撮影画像やデプス情報)の入力を行うとともに、ユーザ入力可能な各種スイッチ、キーボード、マウス、マイクロホン等からの各種データ、コマンド、設定情報等の入力を行う。
出力部507は、例えば、表示部522やスピーカなどに対するデータ出力を実行する。
CPU501は、入力部506から入力されるデータや、指令に対応して各種の処理を実行し、処理結果を例えば出力部507に出力する。
入力部506は、例えばセンサ521からのセンサ情報(撮影画像やデプス情報)の入力を行うとともに、ユーザ入力可能な各種スイッチ、キーボード、マウス、マイクロホン等からの各種データ、コマンド、設定情報等の入力を行う。
出力部507は、例えば、表示部522やスピーカなどに対するデータ出力を実行する。
CPU501は、入力部506から入力されるデータや、指令に対応して各種の処理を実行し、処理結果を例えば出力部507に出力する。
入出力インタフェース505に接続されている記憶部508は、例えばハードディスク等からなり、CPU501が実行するプログラムや各種のデータを記憶する。通信部509は、Wi-Fi通信、ブルートゥース(登録商標)通信、その他インターネットやローカルエリアネットワークなどのネットワークを介したデータ通信の送受信部として機能し、外部の装置と通信する。
入出力インタフェース505に接続されているドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、あるいはメモリカード等の半導体メモリなどのリムーバブルメディア511を駆動し、データの記録あるいは読み取りを実行する。
[20.本開示の構成のまとめ]
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
以上、特定の実施例を参照しながら、本開示の実施例について詳解してきた。しかしながら、本開示の要旨を逸脱しない範囲で当業者が実施例の修正や代用を成し得ることは自明である。すなわち、例示という形態で本発明を開示してきたのであり、限定的に解釈されるべきではない。本開示の要旨を判断するためには、特許請求の範囲の欄を参酌すべきである。
なお、本明細書において開示した技術は、以下のような構成をとることができる。
(1) 仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置。
(1) 仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置。
(2) 前記仮想視点画像生成部は、
前記被写体ユーザの前方位置に設定した前記仮想カメラ撮影方向設定点Cに撮影方向を向けて撮影したと想定される仮想視点画像を生成する(1)に記載の情報処理装置。
前記被写体ユーザの前方位置に設定した前記仮想カメラ撮影方向設定点Cに撮影方向を向けて撮影したと想定される仮想視点画像を生成する(1)に記載の情報処理装置。
(3) 前記仮想視点位置算出部は、
前記被写体ユーザを中心として水平面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザを中心として水平面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
前記被写体ユーザを中心として水平面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザを中心として水平面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
(4) 前記仮想視点位置算出部は、
前記仮想カメラ撮影方向設定点Cを中心として水平面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記仮想カメラ撮影方向設定点Cを中心として水平面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
前記仮想カメラ撮影方向設定点Cを中心として水平面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記仮想カメラ撮影方向設定点Cを中心として水平面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
(5) 前記仮想視点画像生成部は、
前記視聴ユーザの位置に応じて、前記仮想カメラ撮影方向設定点Cの位置を変更して、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)~(4)いずれかに記載の情報処理装置。
前記視聴ユーザの位置に応じて、前記仮想カメラ撮影方向設定点Cの位置を変更して、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)~(4)いずれかに記載の情報処理装置。
(6) 前記仮想視点位置算出部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
(7) 前記仮想視点位置算出部は、
前記被写体ユーザを中心として垂直面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザを中心として垂直面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
前記被写体ユーザを中心として垂直面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザを中心として垂直面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
(8) 前記仮想視点位置算出部は、
前記被写体ユーザから所定距離、離間した点を通り、垂直面に設定した直線を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザから所定距離、離間した点を通り、垂直面に設定した直線に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
前記被写体ユーザから所定距離、離間した点を通り、垂直面に設定した直線を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザから所定距離、離間した点を通り、垂直面に設定した直線に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
(9) 前記仮想視点位置算出部は、
前記仮想視点画像内の表示ユーザと、前記視聴ユーザとの視線の一致する視線一致位置を仮想視点位置として算出し、
前記仮想視点画像生成部は、
前記視線一致位置を仮想カメラ位置として、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
前記仮想視点画像内の表示ユーザと、前記視聴ユーザとの視線の一致する視線一致位置を仮想視点位置として算出し、
前記仮想視点画像生成部は、
前記視線一致位置を仮想カメラ位置として、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(1)または(2)に記載の情報処理装置。
(10) 前記仮想視点位置算出部は、
前記被写体ユーザを中心として水平面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザを中心として水平面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(9)に記載の情報処理装置。
前記被写体ユーザを中心として水平面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザを中心として水平面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(9)に記載の情報処理装置。
(11) 前記仮想視点位置算出部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(9)に記載の情報処理装置。
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する(9)に記載の情報処理装置。
(12) 仮想視点画像の視聴ユーザの視聴位置情報を受信する受信部と、
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像生成部の生成した仮想視点画像を、前記視聴ユーザ側の装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置。
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像生成部の生成した仮想視点画像を、前記視聴ユーザ側の装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置。
(13) 仮想視点画像の視聴ユーザの視聴位置情報を検出する視聴位置検出部と、
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置。
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置。
(14) 前記情報処理装置は、
前記仮想視点画像の生成に適用する画像を受信する受信部を有し、
前記仮想視点画像生成部は、
前記受信部の受信した画像に基づいて仮想視点画像を生成する(13)に記載の情報処理装置。
前記仮想視点画像の生成に適用する画像を受信する受信部を有し、
前記仮想視点画像生成部は、
前記受信部の受信した画像に基づいて仮想視点画像を生成する(13)に記載の情報処理装置。
(15) 双方向通信を実行する第1情報処理装置と第2情報処理装置を有する情報処理システムであり、
前記第1情報処理装置、および第2情報処理装置は、
通信相手装置から、仮想視点画像の視聴ユーザの視聴位置情報を受信する受信部と、
前記視聴位置情報に基づいて、通信相手装置の表示部に表示する仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像を通信相手装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理システム。
前記第1情報処理装置、および第2情報処理装置は、
通信相手装置から、仮想視点画像の視聴ユーザの視聴位置情報を受信する受信部と、
前記視聴位置情報に基づいて、通信相手装置の表示部に表示する仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像を通信相手装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理システム。
(16) 情報処理装置において実行する情報処理方法であり、
仮想視点位置算出部が、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出し、
仮想視点画像生成部が、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成するとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理方法。
仮想視点位置算出部が、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出し、
仮想視点画像生成部が、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成するとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理方法。
(17) 情報処理装置において情報処理を実行させるプログラムであり、
仮想視点位置算出部に、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出させ、
仮想視点画像生成部に、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行させ、
前記仮想視点画像生成処理において、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成させるとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成させるプログラム。
仮想視点位置算出部に、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出させ、
仮想視点画像生成部に、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行させ、
前記仮想視点画像生成処理において、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成させるとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成させるプログラム。
また、明細書中において説明した一連の処理はハードウェア、またはソフトウェア、あるいは両者の複合構成によって実行することが可能である。ソフトウェアによる処理を実行する場合は、処理シーケンスを記録したプログラムを、専用のハードウェアに組み込まれたコンピュータ内のメモリにインストールして実行させるか、あるいは、各種処理が実行可能な汎用コンピュータにプログラムをインストールして実行させることが可能である。例えば、プログラムは記録媒体に予め記録しておくことができる。記録媒体からコンピュータにインストールする他、LAN(Local Area Network)、インターネットといったネットワークを介してプログラムを受信し、内蔵するハードディスク等の記録媒体にインストールすることができる。
なお、明細書に記載された各種の処理は、記載に従って時系列に実行されるのみならず、処理を実行する装置の処理能力あるいは必要に応じて並列的にあるいは個別に実行されてもよい。また、本明細書においてシステムとは、複数の装置の論理的集合構成であり、各構成の装置が同一筐体内にあるものには限らない。
以上、説明したように、本開示の一実施例の構成によれば、双方向コミュニケーションを実行する情報処理装置間で送受信する仮想視点画像を、より自然な立体画像とする構成が実現される。
具体的には、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有する。仮想視点画像生成部は、被写体ユーザを撮影した実カメラの撮影画像に基づいて仮想視点画像を生成する構成であり、被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する。例えば、被写体ユーザの前方位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を向けて撮影したと想定される仮想視点画像を生成する。
本構成により、双方向コミュニケーションを実行する情報処理装置間で送受信する仮想視点画像を、より自然な立体画像とする構成が実現される。
具体的には、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有する。仮想視点画像生成部は、被写体ユーザを撮影した実カメラの撮影画像に基づいて仮想視点画像を生成する構成であり、被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する。例えば、被写体ユーザの前方位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を向けて撮影したと想定される仮想視点画像を生成する。
本構成により、双方向コミュニケーションを実行する情報処理装置間で送受信する仮想視点画像を、より自然な立体画像とする構成が実現される。
10,20 情報処理装置
11,21 表示部(ディスプレイ)
12,22 カメラ
13,23 スピーカ
30 ネットワーク
100 情報処理装置
101 センサ部
102 ローカル情報処理部
103 符号化部
104 送信部
105 受信部
106 復号部
107 リモート情報処理部
108 表示部
120 ネットワーク
130 第2ロケーション情報処理部
151 ローカルユーザ視聴位置検出部
152 送信用仮想視点画像生成部
161 リモート側仮想視点位置算出部
201 ローカルユーザ視聴位置検出部
202 ローカル側仮想視点位置算出部
211 表示用仮想視点画像生成部
501 CPU
502 ROM
503 RAM
504 バス
505 入出力インタフェース
506 入力部
507 出力部
508 記憶部
509 通信部
510 ドライブ
511 リムーバブルメディア
521 センサ
522 表示部
11,21 表示部(ディスプレイ)
12,22 カメラ
13,23 スピーカ
30 ネットワーク
100 情報処理装置
101 センサ部
102 ローカル情報処理部
103 符号化部
104 送信部
105 受信部
106 復号部
107 リモート情報処理部
108 表示部
120 ネットワーク
130 第2ロケーション情報処理部
151 ローカルユーザ視聴位置検出部
152 送信用仮想視点画像生成部
161 リモート側仮想視点位置算出部
201 ローカルユーザ視聴位置検出部
202 ローカル側仮想視点位置算出部
211 表示用仮想視点画像生成部
501 CPU
502 ROM
503 RAM
504 バス
505 入出力インタフェース
506 入力部
507 出力部
508 記憶部
509 通信部
510 ドライブ
511 リムーバブルメディア
521 センサ
522 表示部
Claims (17)
- 仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置。 - 前記仮想視点画像生成部は、
前記被写体ユーザの前方位置に設定した前記仮想カメラ撮影方向設定点Cに撮影方向を向けて撮影したと想定される仮想視点画像を生成する請求項1に記載の情報処理装置。 - 前記仮想視点位置算出部は、
前記被写体ユーザを中心として水平面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザを中心として水平面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する請求項1に記載の情報処理装置。 - 前記仮想視点位置算出部は、
前記仮想カメラ撮影方向設定点Cを中心として水平面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記仮想カメラ撮影方向設定点Cを中心として水平面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する請求項1に記載の情報処理装置。 - 前記仮想視点画像生成部は、
前記視聴ユーザの位置に応じて、前記仮想カメラ撮影方向設定点Cの位置を変更して、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する請求項1に記載の情報処理装置。 - 前記仮想視点位置算出部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する請求項1に記載の情報処理装置。 - 前記仮想視点位置算出部は、
前記被写体ユーザを中心として垂直面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザを中心として垂直面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する請求項1に記載の情報処理装置。 - 前記仮想視点位置算出部は、
前記被写体ユーザから所定距離、離間した点を通り、垂直面に設定した直線を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザから所定距離、離間した点を通り、垂直面に設定した直線に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する請求項1に記載の情報処理装置。 - 前記仮想視点位置算出部は、
前記仮想視点画像内の表示ユーザと、前記視聴ユーザとの視線の一致する視線一致位置を仮想視点位置として算出し、
前記仮想視点画像生成部は、
前記視線一致位置を仮想カメラ位置として、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する請求項1に記載の情報処理装置。 - 前記仮想視点位置算出部は、
前記被写体ユーザを中心として水平面に設定した円の円周を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザを中心として水平面に設定した円の円周に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する請求項9に記載の情報処理装置。 - 前記仮想視点位置算出部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線を仮想カメラ軌跡とし、該仮想カメラ軌跡上の視聴ユーザ位置の近接位置を仮想視点位置とし、
前記仮想視点画像生成部は、
前記被写体ユーザから所定距離、離間した点を通り、水平面に設定した直線に沿った仮想カメラ軌跡上から、前記仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する請求項9に記載の情報処理装置。 - 仮想視点画像の視聴ユーザの視聴位置情報を受信する受信部と、
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像生成部の生成した仮想視点画像を、前記視聴ユーザ側の装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置。 - 仮想視点画像の視聴ユーザの視聴位置情報を検出する視聴位置検出部と、
前記視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理装置。 - 前記情報処理装置は、
前記仮想視点画像の生成に適用する画像を受信する受信部を有し、
前記仮想視点画像生成部は、
前記受信部の受信した画像に基づいて仮想視点画像を生成する請求項13に記載の情報処理装置。 - 双方向通信を実行する第1情報処理装置と第2情報処理装置を有する情報処理システムであり、
前記第1情報処理装置、および第2情報処理装置は、
通信相手装置から、仮想視点画像の視聴ユーザの視聴位置情報を受信する受信部と、
前記視聴位置情報に基づいて、通信相手装置の表示部に表示する仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出する仮想視点位置算出部と、
前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成部と、
前記仮想視点画像を通信相手装置に送信する送信部を有し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成する構成であり、
前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理システム。 - 情報処理装置において実行する情報処理方法であり、
仮想視点位置算出部が、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出し、
仮想視点画像生成部が、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行し、
前記仮想視点画像生成部は、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成するとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成する情報処理方法。 - 情報処理装置において情報処理を実行させるプログラムであり、
仮想視点位置算出部に、仮想視点画像の視聴ユーザの視聴位置情報に基づいて、仮想視点画像を撮影する仮想カメラの位置に相当する仮想視点位置を算出させ、
仮想視点画像生成部に、前記仮想視点位置からの撮影画像に相当する仮想視点画像を生成する仮想視点画像生成処理を実行させ、
前記仮想視点画像生成処理において、
被写体ユーザを撮影した実カメラの撮影画像に基づいて前記仮想視点画像を生成させるとともに、前記被写体ユーザと異なる位置に設定した仮想カメラ撮影方向設定点Cに撮影方向を設定した仮想視点画像を生成させるプログラム。
Priority Applications (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| US16/097,943 US11006098B2 (en) | 2016-05-10 | 2017-04-07 | Information processing apparatus, information processing system, and information processing method |
| JP2018516899A JPWO2017195513A1 (ja) | 2016-05-10 | 2017-04-07 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP2016094335 | 2016-05-10 | ||
| JP2016-094335 | 2016-05-10 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2017195513A1 true WO2017195513A1 (ja) | 2017-11-16 |
Family
ID=60266585
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/JP2017/014549 Ceased WO2017195513A1 (ja) | 2016-05-10 | 2017-04-07 | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム |
Country Status (3)
| Country | Link |
|---|---|
| US (1) | US11006098B2 (ja) |
| JP (1) | JPWO2017195513A1 (ja) |
| WO (1) | WO2017195513A1 (ja) |
Cited By (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2019155894A1 (ja) * | 2018-02-08 | 2019-08-15 | キヤノン株式会社 | 通信装置、通信方法、及びプログラム |
| WO2020054605A1 (ja) * | 2018-09-12 | 2020-03-19 | シャープ株式会社 | 映像表示装置、映像処理装置 |
| WO2024127596A1 (ja) * | 2022-12-15 | 2024-06-20 | 日本電信電話株式会社 | 情報処理方法、情報処理装置及び情報処理プログラム |
| JP2024095389A (ja) * | 2022-12-28 | 2024-07-10 | トヨタ自動車株式会社 | 端末装置 |
| JP2024150589A (ja) * | 2020-04-30 | 2024-10-23 | 塁 佐藤 | 通信端末装置 |
| WO2025013495A1 (ja) * | 2023-07-07 | 2025-01-16 | ソニーグループ株式会社 | 情報処理装置、情報処理方法、及びコンピュータが読み取り可能な記録媒体 |
Families Citing this family (7)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP6672075B2 (ja) * | 2016-05-25 | 2020-03-25 | キヤノン株式会社 | 制御装置、制御方法、及び、プログラム |
| CN107392961B (zh) * | 2017-06-16 | 2019-12-06 | 华勤通讯技术有限公司 | 基于增强现实的空间定位方法及装置 |
| US11153465B2 (en) * | 2017-06-21 | 2021-10-19 | Dell Products L.P. | System and method of processing video of a tileable wall |
| JP2019103067A (ja) * | 2017-12-06 | 2019-06-24 | キヤノン株式会社 | 情報処理装置、記憶装置、画像処理装置、画像処理システム、制御方法、及びプログラム |
| US12126937B2 (en) * | 2020-05-12 | 2024-10-22 | Truemeeting, Ltd. | Method and system for virtual 3D communications having multiple participants per camera |
| WO2022212109A1 (en) * | 2021-03-31 | 2022-10-06 | Dathomir Laboratories Llc | Techniques for viewing 3d photos and 3d videos |
| CN115272483B (zh) * | 2022-07-22 | 2023-07-07 | 北京城市网邻信息技术有限公司 | 一种图像生成方法、装置、电子设备及存储介质 |
Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11355804A (ja) * | 1998-06-04 | 1999-12-24 | Nec Corp | ネットワーク会議画像処理装置 |
| JP2005157921A (ja) * | 2003-11-27 | 2005-06-16 | Sony Corp | 画像処理装置及び方法 |
| JP2013055402A (ja) * | 2011-09-01 | 2013-03-21 | Panasonic Corp | 3d映像処理装置 |
| JP2014045474A (ja) * | 2012-07-31 | 2014-03-13 | Nlt Technologies Ltd | 立体画像表示装置、画像処理装置及び立体画像処理方法 |
| JP2015114716A (ja) * | 2013-12-09 | 2015-06-22 | シャープ株式会社 | 画像データ再生装置および画像データ生成装置 |
| JP2016051918A (ja) * | 2014-08-28 | 2016-04-11 | 任天堂株式会社 | 情報処理端末、情報処理プログラム、情報処理端末システム、および情報処理方法 |
Family Cites Families (3)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| WO2011052064A1 (ja) * | 2009-10-30 | 2011-05-05 | キヤノン株式会社 | 情報処理装置および方法 |
| JP5833526B2 (ja) | 2012-10-19 | 2015-12-16 | 日本電信電話株式会社 | 映像コミュニケーションシステム及び映像コミュニケーション方法 |
| WO2015011741A1 (ja) * | 2013-07-25 | 2015-01-29 | 株式会社スクウェア・エニックス・ホールディングス | 画像処理プログラム、サーバ装置、画像処理システムおよび画像処理方法 |
-
2017
- 2017-04-07 WO PCT/JP2017/014549 patent/WO2017195513A1/ja not_active Ceased
- 2017-04-07 JP JP2018516899A patent/JPWO2017195513A1/ja not_active Abandoned
- 2017-04-07 US US16/097,943 patent/US11006098B2/en not_active Expired - Fee Related
Patent Citations (6)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JPH11355804A (ja) * | 1998-06-04 | 1999-12-24 | Nec Corp | ネットワーク会議画像処理装置 |
| JP2005157921A (ja) * | 2003-11-27 | 2005-06-16 | Sony Corp | 画像処理装置及び方法 |
| JP2013055402A (ja) * | 2011-09-01 | 2013-03-21 | Panasonic Corp | 3d映像処理装置 |
| JP2014045474A (ja) * | 2012-07-31 | 2014-03-13 | Nlt Technologies Ltd | 立体画像表示装置、画像処理装置及び立体画像処理方法 |
| JP2015114716A (ja) * | 2013-12-09 | 2015-06-22 | シャープ株式会社 | 画像データ再生装置および画像データ生成装置 |
| JP2016051918A (ja) * | 2014-08-28 | 2016-04-11 | 任天堂株式会社 | 情報処理端末、情報処理プログラム、情報処理端末システム、および情報処理方法 |
Cited By (13)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| JP2019139443A (ja) * | 2018-02-08 | 2019-08-22 | キヤノン株式会社 | 通信装置、通信方法、及びプログラム |
| JP7073128B2 (ja) | 2018-02-08 | 2022-05-23 | キヤノン株式会社 | 通信装置、通信方法、及びプログラム |
| US11523144B2 (en) | 2018-02-08 | 2022-12-06 | Canon Kabushiki Kaisha | Communication apparatus, communication method, and computer-readable storage medium |
| WO2019155894A1 (ja) * | 2018-02-08 | 2019-08-15 | キヤノン株式会社 | 通信装置、通信方法、及びプログラム |
| WO2020054605A1 (ja) * | 2018-09-12 | 2020-03-19 | シャープ株式会社 | 映像表示装置、映像処理装置 |
| JP2024150589A (ja) * | 2020-04-30 | 2024-10-23 | 塁 佐藤 | 通信端末装置 |
| JP7697112B2 (ja) | 2020-04-30 | 2025-06-23 | 塁 佐藤 | 通信端末装置 |
| JPWO2024127596A1 (ja) * | 2022-12-15 | 2024-06-20 | ||
| WO2024127596A1 (ja) * | 2022-12-15 | 2024-06-20 | 日本電信電話株式会社 | 情報処理方法、情報処理装置及び情報処理プログラム |
| JP2024095389A (ja) * | 2022-12-28 | 2024-07-10 | トヨタ自動車株式会社 | 端末装置 |
| JP7694555B2 (ja) | 2022-12-28 | 2025-06-18 | トヨタ自動車株式会社 | 端末装置 |
| US12487784B2 (en) | 2022-12-28 | 2025-12-02 | Toyota Jidosha Kabushiki Kaisha | Terminal apparatus |
| WO2025013495A1 (ja) * | 2023-07-07 | 2025-01-16 | ソニーグループ株式会社 | 情報処理装置、情報処理方法、及びコンピュータが読み取り可能な記録媒体 |
Also Published As
| Publication number | Publication date |
|---|---|
| US20190149807A1 (en) | 2019-05-16 |
| JPWO2017195513A1 (ja) | 2019-03-14 |
| US11006098B2 (en) | 2021-05-11 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| WO2017195513A1 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
| Beck et al. | Immersive group-to-group telepresence | |
| US6583808B2 (en) | Method and system for stereo videoconferencing | |
| Zhang et al. | Viewport: A distributed, immersive teleconferencing system with infrared dot pattern | |
| US10587868B2 (en) | Virtual reality system using mixed reality and implementation method thereof | |
| US11244145B2 (en) | Information processing apparatus, information processing method, and recording medium | |
| US10681276B2 (en) | Virtual reality video processing to compensate for movement of a camera during capture | |
| CN103384306B (zh) | 用于视频中眼睛对准的系统和方法 | |
| JP2024150589A (ja) | 通信端末装置 | |
| WO2010119852A1 (ja) | 任意視点画像合成装置 | |
| JPWO2012147363A1 (ja) | 画像生成装置 | |
| JPWO2017141511A1 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
| JP2008140271A (ja) | 対話装置及びその方法 | |
| CN111061575A (zh) | 数据处理方法、装置、用户设备及增强现实系统 | |
| JP2014203462A (ja) | 光フィールド映像を生成する方法及び装置 | |
| CN105933637A (zh) | 一种视频通信的方法及系统 | |
| JP5731462B2 (ja) | 映像コミュニケーションシステム及び映像コミュニケーション方法 | |
| JPWO2017141584A1 (ja) | 情報処理装置、情報処理システム、および情報処理方法、並びにプログラム | |
| JP6091850B2 (ja) | テレコミュニケーション装置及びテレコミュニケーション方法 | |
| US20210400234A1 (en) | Information processing apparatus, information processing method, and program | |
| JP2011113206A (ja) | 映像コミュニケーションシステム、及び映像コミュニケーション方法 | |
| Cooke | Image-based rendering for teleconference systems | |
| JP5759439B2 (ja) | 映像コミュニケーションシステム及び映像コミュニケーション方法 | |
| JP5898036B2 (ja) | 映像コミュニケーションシステム及び映像コミュニケーション方法 | |
| US20240406666A1 (en) | Sound field capture with headpose compensation |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| WWE | Wipo information: entry into national phase |
Ref document number: 2018516899 Country of ref document: JP |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 17795874 Country of ref document: EP Kind code of ref document: A1 |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 17795874 Country of ref document: EP Kind code of ref document: A1 |