WO2020116179A1 - 情報処理装置および方法 - Google Patents
情報処理装置および方法 Download PDFInfo
- Publication number
- WO2020116179A1 WO2020116179A1 PCT/JP2019/045559 JP2019045559W WO2020116179A1 WO 2020116179 A1 WO2020116179 A1 WO 2020116179A1 JP 2019045559 W JP2019045559 W JP 2019045559W WO 2020116179 A1 WO2020116179 A1 WO 2020116179A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- information processing
- content data
- content
- communication path
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/011—Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
- G06F3/012—Head tracking input arrangements
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/02—Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas
- H04B7/04—Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas
- H04B7/06—Diversity systems; Multi-antenna system, i.e. transmission or reception using multiple antennas using two or more spaced independent antennas at the transmitting station
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/442—Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/025—Services making use of location information using location based information parameters
- H04W4/027—Services making use of location information using location based information parameters using movement velocity, acceleration information
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/02—Services making use of location information
- H04W4/029—Location-based management or tracking services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/06—Selective distribution of broadcast services, e.g. multimedia broadcast multicast service [MBMS]; Services to user groups; One-way selective calling services
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W72/00—Local resource management
- H04W72/50—Allocation or scheduling criteria for wireless resources
- H04W72/51—Allocation or scheduling criteria for wireless resources based on terminal or device properties
Definitions
- the present technology relates to an information processing device and method, and more particularly to an information processing device and method capable of ensuring an optimum communication path.
- VR Virtual Reality
- HMDs Head Mounted Displays
- a higher frequency band is used to achieve a higher transmission rate than in the conventionally used WLAN (Wireless Local Area Network).
- WLAN Wireless Local Area Network
- those using a millimeter wave band such as WiGig and WirelessHD and those using 5G communication are known.
- high-frequency wireless communication such as 5G communication and millimeter-wave communication has stronger signal straightness and weaker shielding than those using relatively low frequency such as WLAN.
- next best communication path is selected when the communication path is blocked (blocked).
- transmission errors and delays are more likely to occur than in a communication path that linearly connects the transmitter to the receiver, and the user experience is degraded. It may occur.
- the present technology has been made in view of such a situation, and aims to ensure an optimal communication path.
- the information processing apparatus includes a shield detection unit that detects a shield of a communication path between a reproduction apparatus that reproduces content based on content data, and a shield of the communication path.
- a movement calculation unit that calculates a movement amount of the playback device to a position where the shielding does not occur, and a control unit that controls generation of the content data based on the movement amount.
- the information processing method detects blocking of a communication path with a playback device that plays back content based on content data, and when blocking of the communication path is detected, the blocking is performed. Calculating the amount of movement of the playback device to a position that does not occur and controlling the generation of the content data based on the amount of movement.
- a shield of a communication path with a playback device that reproduces content based on content data is detected, and when the shield of the communication path is detected, a position where the shield does not occur
- the amount of movement of the playback device to the computer is calculated, and the generation of the content data is controlled based on the amount of movement.
- An information processing apparatus is an information processing apparatus that reproduces content based on content data, and shields a communication path with another information processing apparatus that transmits the content data. And a movement detection unit that calculates a movement amount of the information processing device to a position where the shielding does not occur when a shielding of the communication path is detected, and the movement amount by wireless communication. And a wireless communication unit for transmitting to another information processing apparatus.
- an information processing device that reproduces content based on content data detects blocking of a communication path with another information processing device that transmits the content data. Then, when the blocking of the communication path is detected, the step of calculating the moving amount of the information processing device to the position where the blocking does not occur and transmitting the moving amount to the other information processing device by wireless communication is performed. Including.
- an information processing device that reproduces content based on content data detects a blocking of a communication path with another information processing device that transmits the content data, and When the blocking of the communication path is detected, the moving amount of the information processing device to the position where the blocking does not occur is calculated, and the moving amount is transmitted to the other information processing device by wireless communication.
- FIG. 19 is a diagram illustrating a configuration example of a computer.
- the present technology in a system including a playback device that plays back content and an information processing device that sends content data to the playback device, changes (corrects) the position of the user in the virtual space according to the blocking state of the communication path. However, by generating the content data based on the changed position, the optimum communication path can be secured.
- the present technology can be applied to any system as long as it is a system that transmits and receives content data by wireless communication and reproduces content, but in the following, as an example, a VR content reproduction system that reproduces VR content will be described. The case where the technology is applied will be described.
- a VR content playback system to which this technology is applied consists of, for example, a console that functions as a transmitter and an HMD that functions as a receiver.
- content data for playing VR content (hereinafter simply referred to as content) is transmitted from the console to the HMD by wireless communication, and the HMD plays the content based on the content data.
- the user wearing the HMD views the content reproduced by the HMD.
- position and orientation information indicating the position and orientation of the user in the virtual space reproduced by the content is transmitted from the HMD to the console as needed.
- the content data is composed of video information (video data) for reproducing (displaying) the video of the content and audio information (audio data) for reproducing audio accompanying the video.
- the content may be composed of only one of video and audio. That is, the content data may be composed of at least one of video information and audio information.
- the video of the virtual space is displayed as the video of the content based on the video information.
- the space where the console and the HMD actually exist is also referred to as a real space
- the virtual space reproduced by the content is also referred to as a virtual space.
- the video based on the video information changes according to the position and orientation information that indicates the position and orientation of the user wearing the HMD in the virtual space.
- the video based on the video information is the video (image) of the virtual space seen by the user in the virtual space in the position and orientation indicated by the position and orientation information.
- the voice based on the voice information is a sound in the virtual space heard by the user in the virtual space in the state and position indicated by the position and posture information.
- the position and orientation information indicating the position and orientation of the user in the virtual space can be obtained from the measurement result of the position and orientation of the user (HMD) in the real space.
- HMD position and orientation of the user
- the position/orientation information of the virtual space is information indicating the position and orientation of the user in the virtual space coordinate system whose origin is the reference position in the virtual space.
- the information indicating the position and orientation of the user in the real space coordinate system whose origin is the reference position in the real space is the information indicating the position and orientation of the user in the real space coordinate system whose origin is the reference position in the real space.
- the position and orientation information indicating the position and orientation of the user (HMD) in the real space may be transmitted to the console, and the position and orientation information in the real space may be converted into the position and orientation information in the virtual space in the console.
- the content data does not use information indicating the user's attitude, but only position information indicating the user's position in the virtual space. It may be generated.
- the relative positional relationship between the virtual space and the user is corrected according to the detection result, that is, the virtual position.
- the position and orientation information of the user is updated so that the position of the user in the space is corrected.
- the position and orientation information is updated such that the position of the user in the virtual space is moved according to the detection result of the occlusion, separately from the actual movement of the user.
- Redirection is a phenomenon in which humans are greatly affected by information from the five senses, including the visual sense, and thus the perceptual movement amount and the actual physical movement amount do not match.
- console 11 and the HMD 12 exist in the real space, and the content data is transmitted from the console 11 to the HMD 12, as shown by the arrow Q11 in FIG.
- the communication path (communication path) represented by the arrow W11 that linearly connects the console 11 and the HMD 12 is the optimum communication path, and when transmitting the content data through this communication path, a content data transmission error or The transmission delay should be minimal.
- the wireless signal output from the console 11 is reflected by the wall in the room and reaches the HMD 12, and the communication path is obtained as the search result of the suboptimal communication path. Switching to the communication path indicated by arrow W12 is performed.
- the HMD that is a receiver is mounted on the user's freely movable head, by unconsciously moving the user to a position where the shielding by the shield can be avoided, Be able to always secure the optimum communication path. As a result, it is possible to suppress a transmission error and a transmission delay of the content data and suppress a deterioration in user experience.
- console 11 and the HMD 12 exist in the real space, and the content data is transmitted from the console 11 to the HMD 12.
- FIG. 2 parts corresponding to those in FIG. 1 are designated by the same reference numerals, and the description thereof will be omitted as appropriate.
- the communication path represented by the arrow W11 is the optimum communication path. From such a state, it is assumed that the communication path is blocked by the shield 13 as indicated by an arrow Q22, for example. That is, it is assumed that the shielding of the communication path by the shield 13 is detected.
- the movement amount of the HMD 12 to a position where the communication path is not shielded is obtained according to the shielding detection result as indicated by an arrow Q23, and the HMD 12, that is, the user moves by the amount of the movement amount.
- the position and orientation information is updated as follows.
- the arrow M11 represents the amount of movement in the real space, and the position and orientation information is updated according to this amount of movement.
- the user wearing the HMD 12 unconsciously moves by the movement amount indicated by the arrow M11. In other words, by reproducing the content, the user wearing the HMD 12 is guided to an appropriate position where the blocking of the communication path does not occur without particular awareness.
- the communication path indicated by the arrow W21 that linearly connects the console 11 and the HMD 12 is not shielded by the shield 13, and the optimum communication path can be easily secured without providing special equipment.
- redirection is used to unconsciously move the user by updating the position and orientation information.
- the position of the user U11 in the virtual space before the update is moved to the left side of the user U11 by the amount of movement in the virtual space corresponding to the amount of movement in the real space.
- the position and orientation information is updated so as to be the position of the user U11 in the updated virtual space.
- the position/orientation information is updated in this way, content data is generated based on the updated position/orientation information, and the video indicated by arrow Q32 is displayed as the video of the content.
- the position of the user U11 in the virtual space is slightly displaced to the left from the case at the timing indicated by the arrow Q31. That is, the user U11 is in a state of walking from the center line L11 of the road to the left in the figure.
- the user U11 decides to walk along the line L11, so when the image shown by the arrow Q32 is presented, the user unknowingly approaches the line L11 as shown by the arrow Q33. Move your body as you go.
- the user U11 again walks at the position of the line L11 at the center of the road, and in the real space, the user U11 is at the position where the communication path is not shielded, that is, the destination indicated by the movement amount in the real space. Move to the position.
- FIG. 4 is a diagram showing a configuration example of an embodiment of a VR content reproduction system to which the present technology is applied.
- the VR content playback system shown in FIG. 4 has a console 51 and an HMD 52 in the same room.
- the console 51 is an information processing device that functions as a transmitter and transmits content data to the HMD 52 by wireless communication.
- the HMD 52 is an information processing device (playback device) that functions as a receiver and receives content data from the console 51 to play back the content.
- the HMD 52 is mounted on the head of the user who views the content.
- the console 51 and the HMD 52 correspond to the console 11 and the HMD 12 shown in FIG.
- the transmission of content data from the console 51 to the HMD 52 is performed by wireless communication using a high frequency broadband such as 60 GHz.
- position/orientation information IMU (Inertial Measurement Unit) information
- other control information are transmitted from the HMD 52 to the console 51 by wireless communication.
- wireless communication method when transmitting information from the console 51 to the HMD 52 and the wireless communication method when transmitting information from the HMD 52 to the console 51 may be the same or different.
- console 51 is configured, for example, as shown in FIG.
- the console 51 shown in FIG. 5 includes a sensor unit 81, a shielding detection unit 82, a movement calculation unit 83, a control unit 84, a generation unit 85, a storage unit 86, an encoder unit 87, a wireless communication unit 88, and an antenna 89. There is.
- the sensor unit 81 includes, for example, a distance sensor such as an RGBD sensor or an ultrasonic sensor, a sensor such as a camera for detecting a shield between the console 51 and the HMD 52, and a sensing result (observation result) around the sensor. And outputs the sensor output information.
- a distance sensor such as an RGBD sensor or an ultrasonic sensor
- a sensor such as a camera for detecting a shield between the console 51 and the HMD 52
- a sensing result (observation result) around the sensor and outputs the sensor output information.
- the sensor unit 81 when the sensor unit 81 is composed of a camera, a peripheral environment image around the console 51 captured by the camera is output as sensor output information. Further, for example, when the sensor unit 81 is composed of a distance sensor, distance information indicating the distance to the object around the console 51 measured by the distance sensor is output as the sensor output information. In the following description, the surrounding environment image and distance information are output as sensor output information.
- the sensor output information output from the sensor unit 81 is supplied to the shielding detection unit 82, the movement calculation unit 83, and the control unit 84.
- the shielding detection unit 82 shields the communication path between the console 51 and the HMD 52 based on the sensor output information supplied from the sensor unit 81 and the position/orientation information of the user (HMD 52) supplied from the control unit 84. The situation, that is, the blocking of the communication path is detected.
- the shielding detection unit 82 supplies the detection result of the shielding of the communication path to the movement calculation unit 83 and the control unit 84.
- the movement calculation unit 83 uses the sensor output information from the sensor unit 81 and the position/orientation information from the control unit 84 as necessary, and based on the detection result supplied from the shielding detection unit 82, detects the shielding of the communication path. The amount of movement of the user (HMD 52) to a position that does not occur is calculated and supplied to the control unit 84.
- the movement amount calculated by the movement calculation unit 83 is the movement amount of the user in the real space. Further, more specifically, this movement amount indicates the movement direction and movement distance of the user.
- the control unit 84 controls the overall operation of the console 51.
- control unit 84 controls the generation of content data based on the movement amount supplied from the movement calculation unit 83. Specifically, the control unit 84 updates the position and orientation information based on the supplied movement amount, and controls the generation of content data by the generation unit 85 based on the updated position and orientation information. As a result, the update (correction) of the position and orientation information is reflected in the content.
- control unit 84 controls encoding of content data by the encoder unit 87, and controls transmission/reception of wireless signals by the wireless communication unit 88.
- the generation unit 85 generates content data according to the control of the control unit 84 and supplies it to the storage unit 86.
- the generation unit 85 generates video information and audio information that make up the content data.
- the storage unit 86 temporarily stores the content data supplied from the generation unit 85 and supplies the content data to the encoder unit 87.
- the encoder unit 87 encodes (compresses) the content data supplied from the storage unit 86, and supplies the code information obtained as a result to the wireless communication unit 88.
- the wireless communication unit 88 performs wireless communication with the HMD 52 through the antenna 89 under the control of the control unit 84. That is, for example, the wireless communication unit 88 causes the code information supplied from the encoder unit 87 to be transmitted from the antenna 89 by wireless communication, and the position and orientation information transmitted from the HMD 52 is received by the antenna 89 and supplied to the control unit 84. To do
- the console 51 and the HMD 52 are in wireless communication through an optimal communication path, that is, a communication path that linearly connects the console 51 and the HMD 52.
- wireless communication is performed by a communication path that uses reflection or the like, which is not a communication path that linearly connects the console 51 and the HMD 52. It may be in the state of being.
- the content transmission process described below is performed, for example, for each frame of content data.
- step S11 the wireless communication unit 88 receives the position and orientation information transmitted from the HMD 52 by the antenna 89 and supplies the position and orientation information to the control unit 84.
- the control unit 84 also supplies the position and orientation information supplied from the wireless communication unit 88 to the shielding detection unit 82 and the movement calculation unit 83.
- the position and orientation of the HMD 52 (user) in the real space can be specified from the sensor output information of the sensor unit 81 and the like without receiving the position and orientation information from the HMD 52. Therefore, in such a case, the control unit 84 may generate the position and orientation information from the sensor output information or the like without performing the process of step S11.
- step S12 the shielding detection unit 82 detects the shielding condition of the communication path, that is, the shielding of the communication path based on the sensor output information from the sensor unit 81 and the position and orientation information from the control unit 84, and the detection result is displayed. It is supplied to the movement calculation unit 83 and the control unit 84.
- the occlusion detection unit 82 uses the surrounding environment image as sensor output information, distance information, position/orientation information, and the like to determine the position of the HMD 52 in the real space and the position and size of an obstruction between the console 51 and the HMD 52. Can be specified (detected).
- a shielding object is detected between the console 51 and the HMD 52, it means that the shielding condition that the communication path is shielded is detected. That is, the blockage of the communication path is detected.
- step S13 the control unit 84 determines whether or not the blocking of the communication path is detected based on the detection result of the blocking status supplied from the blocking detection unit 82.
- the shielding detection unit 82 can predict the timing (time) at which the communication path will be shielded in the future and the period during which the communication path is shielded, that is, the duration of the shielding.
- control unit 84 determines that the blocking is detected in step S13 not only when the communication channel is actually blocked but also when it is predicted that the communication channel is blocked after a predetermined time. May be.
- the user HMD 52
- the control unit 84 determines that the blocking is detected in step S13 not only when the communication channel is actually blocked but also when it is predicted that the communication channel is blocked after a predetermined time. May be.
- step S13 When it is determined in step S13 that the occlusion is not detected, the control unit 84 supplies the position/orientation information received in step S11 to the generation unit 85 to instruct generation of content data, and then the process is step S14. Go to.
- step S14 the generation unit 85 generates content data according to the position/orientation information supplied from the control unit 84, that is, the position/orientation information received in step S11, and supplies the content data to the storage unit 86.
- the storage unit 86 temporarily stores the content data supplied from the generation unit 85.
- the generation unit 85 reproduces, as data for generating content data, a video data group including a plurality of video data captured from different viewpoints and sounds of a plurality of sound sources (objects). Holds audio data for.
- the generation unit 85 performs a rendering process based on the video data group and the position/orientation information, and generates the video information of the viewpoint position and the line-of-sight direction corresponding to the position/orientation information as the video information forming the content data.
- the generation unit 85 performs VBAP (Vector Base Amplitude Panning), binaural processing, and panning processing as rendering processing based on the audio data and the position and orientation information, and generates audio information that constitutes the content data.
- VBAP Vector Base Amplitude Panning
- binaural processing binaural processing
- panning processing as rendering processing based on the audio data and the position and orientation information
- step S14 After the processing of step S14 is performed and content data is generated, the processing proceeds to step S18.
- step S13 when it is determined that the occlusion is detected in step S13, the control unit 84 instructs the movement calculation unit 83 to calculate the movement amount, and then the process proceeds to step S15.
- step S15 the movement calculation unit 83 is supplied from the shielding detection unit 82 according to the instruction from the control unit 84 while using the sensor output information from the sensor unit 81 and the position/orientation information from the control unit 84 as necessary. Based on the detection result, the amount of movement of the user in the real space is calculated (calculated) and supplied to the control unit 84.
- the shielding detection unit 82 can detect, as the shielding state of the communication path, how large the shield is on the communication path. Therefore, the movement calculation unit 83 moves the HMD 52 in any direction in the real space based on the positional relationship between the console 51, the HMD 52, and the shield, and the detection result of the shield. Can be specified. That is, the amount of movement of the HMD 52 (user) to the position where the communication path is not shielded in the real space, that is, the moving direction and the moving distance can be obtained.
- step S16 the control unit 84 updates the position and orientation information indicating the position and orientation of the user in the virtual space based on the movement amount supplied from the movement calculation unit 83. Then, the control unit 84 supplies the updated position and orientation information to the generation unit 85 to instruct (control) generation of content data.
- step S17 the generation unit 85 generates content data according to the updated position and orientation information supplied from the control unit 84 and supplies the content data to the storage unit 86.
- the storage unit 86 temporarily stores the content data supplied from the generation unit 85.
- step S17 the same processing as in step S14 is performed to generate content data. That is, the process of step S17 and the process of step S14 differ only in whether or not the position and orientation information has been updated, and are the same in other points.
- the encoder section 87 encodes the content data stored in the storage section 86 under the control of the control section 84 in step S18.
- the encoder unit 87 supplies the code information obtained by the encoding to the wireless communication unit 88.
- step S19 the wireless communication unit 88 causes the antenna 89 to wirelessly transmit the code information supplied from the encoder unit 87 under the control of the control unit 84, and the content transmission process ends.
- the HMD 52 reproduces the content based on the content data, and guides to a position where the shielding does not occur, for example, as described with reference to FIG.
- the HMD 52 receives the content data (code information) transmitted in step S19, and the content is reproduced based on the received content data.
- the code information may be transmitted through the communication path that linearly connects the console 51 and the HMD 52 depending on the shielding condition of the communication path. For example, as shown by the arrow W12 in FIG.
- the code information may be transmitted through a communication path that uses reflection or the like, instead of a communication path that linearly connects the console 51 and the HMD 52.
- step S15 and step S16 will be described more specifically with reference to FIGS. 7 and 8.
- the occlusion detection unit 82 recognizes the position and orientation of the HMD 52 in the real space and the position and size of the obstruction based on the sensor output information and the position and orientation information, and as a result, for example, in the real space as shown in FIG. It is assumed that the positional relationship between the console 51, the HMD 52, and the shield OBJ1 is specified.
- the movement calculation unit 83 based on the positional relationship specified by the occlusion detection unit 82, the movement of the HMD 52 to the movement destination of the HMD 52 such that the straight line connecting the console 51 and the HMD 52 in the real space does not intersect the obstruction OBJ1.
- a vector ⁇ x w indicating the amount of movement can be obtained. That is, the vector ⁇ x w indicating the destination of the HMD 52 for preventing the communication path that linearly connects the console 51 and the HMD 52 from being shielded by the shield OBJ1 can be obtained.
- the real space coordinate system is a three-dimensional orthogonal coordinate system whose origin is the position of the HMD 52 at the start of content reproduction and whose axes are the X w axis, Y w axis, and Z w axis that are orthogonal to each other. Has been done.
- the upward direction is the Z w axis direction.
- the right direction is the X w axis direction
- the front direction that is, the upward direction when seen from the user wearing the HMD 52 is the Y w axis direction.
- the origin and axial direction of the real space coordinate system may be set in any way.
- the position of the user's head in the Y w axis direction is basically determined by the height and sitting height of the user wearing the HMD 52, the user can follow the position even if the position of the user in the virtual space is shifted in the Y w axis direction. I can't. Therefore, here, the HMD 52 is moved on the X w Z w plane.
- the HMD52 is used. Can also be moved in the Y w axis direction.
- the arrow M31 represents the vector ⁇ x w indicating the movement amount of the HMD 52.
- the starting point position of the arrow M31 is the actual position of the HMD 52 at the present time
- the ending point position of the arrow M31 is the target position of the HMD 52 to move to, that is, the position of the HMD 52 at which the communication path is not blocked. Is shown.
- the actual position of the HMD 52 at the present time is the origin of the real space coordinate system
- the movement amount in the X w axis direction is ⁇ x
- step S15 the movement calculation unit 83 obtains the vector ⁇ x w represented by the arrow M31 as the movement amount, and supplies the vector ⁇ x w to the control unit 84.
- control unit 84 converts the vector ⁇ x w in the real space coordinate system into the vector ⁇ x v in the virtual space coordinate system.
- the vector ⁇ x v is a vector indicating the movement amount in the virtual space corresponding to the movement amount indicated by the vector ⁇ x w in the real space coordinate system.
- a virtual space coordinate system is a three-dimensional orthogonal coordinate system having an X v axis, a Y v axis, and a Z v axis that are orthogonal to each other, and each of the X v axis, the Y v axis, and the Z v axis is a real axis. It corresponds to each of the X w axis, Y w axis, and Z w axis of the spatial coordinate system.
- control unit 84 calculates the following expression (1) using the rotation matrix R( ⁇ wv ) that rotates the vector by the rotation angle ⁇ wv , to calculate the virtual space. It is possible to obtain a vector ⁇ x v indicating the movement amount of the HMD 52 at.
- the vector ⁇ x w is rotated by ⁇ wv degrees by the rotation matrix R( ⁇ wv ) to obtain the vector ⁇ x v .
- the arrow M41 represents the vector ⁇ x v .
- control unit 84 moves the position indicated by the position and orientation information of the virtual space by - ⁇ x v on the X v Z v plane in order to move the HMD 52 (user) to the position indicated by the vector ⁇ x w in the real space. Let That is, the control unit 84 corrects (changes) the position indicated by the position/orientation information by ⁇ x v on the X v Z v plane with respect to the position/orientation information at the present time, and obtains the resulting position/orientation.
- the information is the updated position and orientation information.
- control unit 84 supplies the updated position and orientation information to the generation unit 85 to generate the content data.
- the process of converting the vector ⁇ x w to the vector ⁇ x v described above and the process of updating the position and orientation information based on the vector ⁇ x v are performed as the process of step S16 described above.
- the virtual space itself may be moved from the current position by the movement amount indicated by the vector ⁇ x v , that is, by ⁇ x v . This is because moving the virtual space itself by ⁇ x v is equivalent to moving the position of the user in the virtual space by ⁇ x v .
- control unit 84 instructs the generation unit 85 to generate content data by moving the virtual space by ⁇ x v , and the generation unit 85 performs the rendering process according to the instruction of the control unit 84. Then, the content data is generated by moving the virtual space by ⁇ x v .
- the virtual space coordinate system is shifted by ⁇ x v, and the rendering process relating to the video information and audio information is performed, but as a result, the position indicated by the position and orientation information is moved by ⁇ x v .
- the console 51 calculates the movement amount for moving the user (HMD 52), updates the position and orientation information based on the movement amount, and Content data is generated based on the position and orientation information.
- step S16 the position/orientation information is corrected (changed) by the amount of the vector ⁇ x w indicating the movement amount calculated in step S15.
- the example in which the user is moved at once by the amount of movement indicated by the vector ⁇ x v in the virtual space has been described.
- the user may be moved little by little over a period of several frames of the content data, that is, divided into several times.
- the movement of that amount is reflected at once at the next time t′ in the content data.
- the user may recognize a sudden change in position, which may impair the user experience. Therefore, instead of moving the obtained vector ⁇ x v at once, for example, it may be divided and moved a predetermined number of times, or may be moved by a predetermined moving amount.
- control unit 84 updates the position and orientation information by setting the movement amount in the virtual space as ⁇ x v /N in step S16.
- control unit 84 updates the position and orientation information by moving the position indicated by the position and orientation information at the present time by - ⁇ x v /N, and controls the generation of the content data based on the updated position and orientation information.
- the processing and the processing in which the wireless communication unit 88 transmits the content data by wireless communication are performed N times in succession.
- the movement amount of one time that is, the movement amount in one frame is ⁇ x v /N
- the movement of the user vector ⁇ x v is completed after N times of movement (after N frames). Become. In this way, the movement of the user can be surely completed within a predetermined time, and an optimum communication path can be secured.
- the movement is repeatedly performed by the movement amount ⁇ x v until ⁇ x v ⁇ M ⁇
- step S16 the control unit 84 updates the position/orientation information with the movement amount in the virtual space as ⁇ x v .
- control unit 84 updates the position and orientation information by moving the position indicated by the position and orientation information at the present time by ⁇ x v in the direction opposite to the direction indicated by the vector ⁇ x v , and
- the process of controlling the generation of the content data based on the position/orientation information and the process of the wireless communication unit 88 transmitting the content data by wireless communication are continuously performed M times.
- the HMD 52 is configured as shown in FIG. 9, for example.
- the HMD 52 shown in FIG. 9 includes a sensor unit 111, a shielding detection unit 112, a movement calculation unit 113, a position/orientation measurement unit 114, a control unit 115, an antenna 116, a wireless communication unit 117, a decoder unit 118, a generation unit 119, a storage unit 120, and It has a video display unit 121 and a speaker 122.
- the sensor unit 111 corresponds to the sensor unit 81 shown in FIG. 5, and includes, for example, a distance sensor such as an RGBD sensor or an ultrasonic sensor, a camera, a sensor such as a gyro sensor, and the sensor output information obtained by the sensor is used as the position and orientation. It is supplied to the measuring unit 114 and the shielding detection unit 112.
- the sensor output information output from the sensor unit 111 is, for example, a surrounding environment image and distance information, an angular velocity indicating a change in the position and orientation of the HMD 52, and the sensor output information is used not only for detecting the shielding condition but also for detecting the position of the HMD 52. Also used for measuring posture.
- the shielding detection unit 112 corresponds to the shielding detection unit 82 shown in FIG. 5, and the sensor output information supplied from the sensor unit 111 and the positional relationship between the console 51 and the HMD 52 supplied from the control unit 115, that is, the console 51 with respect to the console 51.
- the blocking condition of the communication path is detected based on the relative position of the HMD 52. That is, the blockage of the communication path between the console 51 and the HMD 52 is detected.
- the shielding detection unit 112 supplies the detection result of the shielding of the communication path to the movement calculation unit 113 and the control unit 115.
- the positional relationship between the console 51 and the HMD 52 may be obtained by the control unit 115 from the position/orientation information supplied from the position/orientation measuring unit 114, or the control unit 115 may output the sensor output information from the sensor unit 111. You may make it based on.
- the wireless communication unit 117 may receive information indicating the positional relationship between the console 51 and the HMD 52 from the console 51 via the antenna 116 and supply the information to the control unit 115.
- the movement calculation unit 113 uses the position and orientation information from the control unit 115 and the information indicating the positional relationship between the console 51 and the HMD 52 as necessary, and based on the detection result supplied from the occlusion detection unit 112, the real space.
- the amount of movement of the user at, that is, the vector ⁇ x w is calculated (calculated) and supplied to the control unit 115.
- the position/orientation measuring unit 114 measures the position and orientation of the HMD 52 based on the sensor output information supplied from the sensor unit 111, generates position/orientation information from the measurement result, and supplies it to the control unit 115.
- the control unit 115 controls the operation of the entire HMD 52.
- the control unit 115 controls transmission/reception of wireless signals by the wireless communication unit 117, and controls processing of content data by the generation unit 119 based on position/orientation information.
- the wireless communication unit 117 performs wireless communication with the console 51 by the antenna 116 under the control of the control unit 115. That is, for example, the wireless communication unit 117 causes the antenna 116 to transmit the movement amount (vector ⁇ x w ) and the like supplied from the control unit 115 by wireless communication, and receives the code information transmitted from the console 51 by the antenna 116. , To the decoder unit 118.
- the decoder unit 118 decodes the code information supplied from the wireless communication unit 117, and supplies the content data obtained as a result to the generation unit 119.
- the generation unit 119 Based on the position and orientation information supplied from the control unit 115, the generation unit 119 performs a processing process on the video information of the content data from the decoder unit 118 according to the control of the control unit 115, and the processed video information. And content data including audio information are supplied to the storage unit 120.
- the processing process performed by the generation unit 119 is, for example, a process of finely adjusting (correcting) the viewpoint position or the like of the user in the virtual space according to the position and orientation information.
- the storage unit 120 temporarily stores the content data supplied from the generation unit 119, supplies the video information of the stored content data to the video display unit 121, and supplies the audio information of the content data to the speaker 122. ..
- the video display unit 121 is composed of, for example, a liquid crystal display panel, and displays the video of the content based on the video information supplied from the storage unit 120.
- the speaker 122 outputs sound based on the audio information supplied from the storage unit 120 and reproduces the audio of the content.
- the HMD 52 When the code information is transmitted from the console 51 by wireless communication, the HMD 52 receives the code information and performs content reproduction processing to reproduce the content.
- content reproduction process by the HMD 52 will be described with reference to the flowchart in FIG.
- step S41 the wireless communication unit 117 receives the code information transmitted by wireless communication from the console 51 by the antenna 116 and supplies it to the decoder unit 118.
- step S42 the decoder unit 118 decodes the code information supplied from the wireless communication unit 117, and supplies the content data obtained as a result to the generation unit 119.
- the generation unit 119 appropriately processes the video information of the content data from the decoder unit 118 according to the control of the control unit 115 to generate content data including the processed video information and audio information. It is supplied to the storage unit 120.
- step S43 the video display unit 121 and the speaker 122 reproduce the content, and the content reproduction process ends.
- the video display unit 121 displays the video of the content based on the video information supplied from the storage unit 120. Further, the speaker 122 outputs a sound based on the audio information supplied from the storage unit 120. As a result, the video and audio of the content are reproduced.
- the HMD 52 performs the content reproduction processing described with reference to FIG. 10 and at the same time, detects the blocking of the communication path and also performs the movement amount transmission processing of transmitting the movement amount according to the detection result.
- the movement amount transmission processing by the HMD 52 will be described with reference to the flowchart in FIG.
- step S71 the shielding detection unit 112 linearly connects the HMD 52 and the console 51 based on the sensor output information supplied from the sensor unit 111 and the positional relationship between the console 51 and the HMD 52 supplied from the control unit 115.
- the condition of road blocking that is, the blocking of the communication path is detected.
- the shielding detection unit 112 supplies the detection result of the shielding state to the movement calculation unit 113 and the control unit 115.
- step S71 the same processing as step S12 in FIG. 6 is performed, and the blocking status of the communication path is detected.
- step S72 the control unit 115 determines, based on the detection result of the shielding supplied from the shielding detection unit 112, whether the shielding of the communication path has been detected. For example, in step S72, the same determination process as in step S13 of FIG. 6 is performed.
- step S72 If it is determined in step S72 that the occlusion is not detected, the processing in steps S73 and S74 is not performed, and the movement amount transmission processing ends.
- step S72 when it is determined in step S72 that the occlusion is detected, the control unit 115 instructs the movement calculation unit 113 to calculate the movement amount, and then the process proceeds to step S73.
- step S73 the movement calculation unit 113 uses the position and orientation information from the control unit 115 and the information indicating the positional relationship between the console 51 and the HMD 52 as necessary, and based on the detection result supplied from the shielding detection unit 112. The amount of movement of the user in the real space is calculated (calculated).
- the movement calculation unit 113 performs the same process as step S15 of FIG. 6 to calculate the vector ⁇ x w indicating the movement amount, and supplies it to the control unit 115.
- step S73 the movement calculation unit 113 calculates the vector ⁇ x w indicating the movement amount in the real space based on the positional relationship between the shield OBJ1 and the console 51 viewed from the HMD 52. Note that in FIG. 12, portions corresponding to those in FIG. 7 are denoted by the same reference numerals, and description thereof will be omitted as appropriate.
- the vector ⁇ x w is calculated based on the positional relationship between the shield OBJ1 and the console 51 viewed from the HMD 52, but as a result, the same vector ⁇ x w is calculated. Is obtained.
- the arrow M31 represents the vector ⁇ x w indicating the movement amount of the HMD 52.
- the control unit 115 supplies the vector ⁇ x w indicating the movement amount to the wireless communication unit 117 and the console 51. To send to.
- step S74 the wireless communication unit 117 transmits the movement amount (vector ⁇ x w ) supplied from the control unit 115 from the antenna 116 to the console 51 by wireless communication, and the movement amount transmission process ends.
- the wireless communication unit 88 of the console 51 receives the transmitted vector ⁇ x w by the antenna 89 and supplies it to the control unit 84.
- the control unit 84 updates the position and orientation information of the HMD 52 based on the vector ⁇ x w supplied from the wireless communication unit 88, and supplies the updated position and orientation information to the generation unit 85 to generate content data.
- the same processing as step S16 in FIG. 6 is performed. That is, the vector ⁇ x w is converted into the vector ⁇ x v by the rotation matrix R( ⁇ wv ), and the position and orientation information is updated based on the vector ⁇ x v .
- the content data obtained from the code information received in step S41 of FIG. 10 to be performed next time is generated according to the updated position/orientation information, and when the content is reproduced based on the content data, the user unknowingly operates. Will move. Therefore, even when the HMD 52 detects the blocking condition of the communication path, the optimum communication path is secured.
- the HMD 52 calculates the movement amount for moving the user (HMD 52) when the blocking of the communication path is detected, and transmits the movement amount to the console 51. By doing so, it is possible to unconsciously guide the user to an appropriate place by utilizing redirection, and it is possible to secure an optimum communication path.
- position/orientation information is updated here on the side of the console 51, but the position/orientation information may be updated in the HMD 52.
- the control unit 115 acquires the position and orientation information generated by the position and orientation measurement unit 114, and updates the acquired position and orientation information based on the vector ⁇ x w supplied from the movement calculation unit 113. To do. That is, the control unit 115 converts the vector ⁇ x w into the vector ⁇ x v and updates the position and orientation information based on the vector ⁇ x v .
- the control unit 115 supplies the updated position/orientation information to the wireless communication unit 117 and causes it to be transmitted.
- the wireless communication unit 117 transmits the updated position and orientation information supplied from the control unit 115 by wireless communication using the antenna 116. Further, in this case, when the occlusion is not detected, the wireless communication unit 117 directly transmits the position and orientation information generated by the position and orientation measurement unit 114, which is supplied from the control unit 115, through the antenna 116.
- the series of processes described above can be executed by hardware or software.
- a program forming the software is installed in the computer.
- the computer includes a computer incorporated in dedicated hardware and, for example, a general-purpose personal computer capable of executing various functions by installing various programs.
- FIG. 13 is a block diagram showing a hardware configuration example of a computer that executes the series of processes described above by a program.
- a CPU 501 In a computer, a CPU 501, a ROM (Read Only Memory) 502, and a RAM (Random Access Memory) 503 are connected to each other by a bus 504.
- An input/output interface 505 is further connected to the bus 504.
- An input unit 506, an output unit 507, a recording unit 508, a communication unit 509, and a drive 510 are connected to the input/output interface 505.
- the input unit 506 includes a keyboard, a mouse, a microphone, an image sensor, and the like.
- the output unit 507 includes a display, a speaker and the like.
- the recording unit 508 includes a hard disk, a non-volatile memory, or the like.
- the communication unit 509 includes a network interface or the like.
- the drive 510 drives a removable recording medium 511 such as a magnetic disk, an optical disk, a magneto-optical disk, or a semiconductor memory.
- the CPU 501 loads the program recorded in the recording unit 508 into the RAM 503 via the input/output interface 505 and the bus 504 and executes the program, thereby performing the above-described series of operations. Is processed.
- the program executed by the computer (CPU 501) can be provided by being recorded in a removable recording medium 511 such as a package medium, for example. Further, the program can be provided via a wired or wireless transmission medium such as a local area network, the Internet, or digital satellite broadcasting.
- the program can be installed in the recording unit 508 via the input/output interface 505 by mounting the removable recording medium 511 in the drive 510. Further, the program can be received by the communication unit 509 via a wired or wireless transmission medium and installed in the recording unit 508. In addition, the program can be installed in the ROM 502 or the recording unit 508 in advance.
- the program executed by the computer may be a program in which processing is performed in time series in the order described in this specification, or in parallel or at a necessary timing such as when a call is made. It may be a program for processing.
- the present technology can be configured as cloud computing in which one function is shared by a plurality of devices via a network and jointly processes.
- each step described in the above-mentioned flowchart can be executed by one device or shared by a plurality of devices.
- one step includes a plurality of processes
- the plurality of processes included in the one step can be executed by one device or shared by a plurality of devices.
- present technology can also be configured as below.
- a shielding detection unit that detects shielding of a communication path with a reproducing device that reproduces content based on content data
- a movement calculation unit that calculates the amount of movement of the playback device to a position where the shielding does not occur, when the shielding of the communication path is detected
- An information processing apparatus comprising: a control unit that controls generation of the content data based on the movement amount.
- the control unit updates position information indicating a position of the user in the virtual space of the content based on the movement amount, and controls generation of the content data based on the updated position information.
- the information processing device according to [1].
- the control unit updates the position information by moving the position indicated by the position information by ⁇ x, where ⁇ x is the movement amount in the virtual space corresponding to the movement amount.
- the controller updates the position information by moving the position indicated by the position information by ⁇ x in the direction opposite to the direction of the movement amount ⁇ x, and generates the content data based on the updated position information.
- Process to control The information processing device according to (3), wherein the process of the wireless communication unit transmitting the content data to the playback device is continuously performed M times.
- the information processing apparatus according to (7), wherein the content is VR content.
- the information processing device according to any one of (2) to (8), wherein the control unit generates video information of a viewpoint corresponding to a position indicated by the updated position information as the content data.
- the control unit generates, as the content data, audio information generated by a rendering process based on the updated position information.
- the information processing device Detects the blocking of the communication path with the playback device that plays back the content based on the content data, When the blocking of the communication path is detected, the amount of movement of the playback device to a position where the blocking does not occur is calculated, An information processing method for controlling generation of the content data based on the movement amount.
- An information processing apparatus for reproducing content based on content data A shielding detection unit that detects shielding of a communication path with another information processing apparatus that transmits the content data, When the shielding of the communication path is detected, a movement calculation unit that calculates the amount of movement of the information processing device to a position where the shielding does not occur, An information processing apparatus, comprising: a wireless communication unit that transmits the movement amount to the other information processing apparatus by wireless communication. (13) The information processing apparatus according to (12), wherein the wireless communication unit receives the content data transmitted from the other information processing apparatus, which is generated based on the movement amount.
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- User Interface Of Digital Computer (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Mobile Radio Communication Systems (AREA)
- Controls And Circuits For Display Device (AREA)
Abstract
本技術は、最適な通信路を確保することができるようにする情報処理装置および方法に関する。 情報処理装置は、コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽を検出する遮蔽検出部と、通信路の遮蔽が検出された場合、遮蔽が生じない位置への再生装置の移動量を計算する移動計算部と、移動量に基づいてコンテンツデータの生成を制御する制御部とを備える。本技術はコンソールに適用することができる。
Description
本技術は、情報処理装置および方法に関し、特に、最適な通信路を確保することができるようにした情報処理装置および方法に関する。
近年、ハイエンドパーソナルコンピュータやゲーム機器などのコンソールでレンダリングされた映像をHMD(Head Mounted Display)へと伝送するVR(Virtual Reality)システムにおいて、通信路(伝送路)をケーブルレス化したものが出現してきた。
そのようなVRシステムの多くでは、高伝送レートを実現できるように、従来から用いられているWLAN(Wireless Local Area Network)などにおける場合よりも高い周波数帯域が利用される。具体例としてはWiGigやWirelessHDなどのようなミリ波帯を用いるものや、5G通信を用いるものが知られている。
ところで、5G通信やミリ波による通信などといった高周波帯の無線通信はWLANなどの比較的低周波利用のものと比べて信号の直進性が強く、遮蔽に弱いことが知られている。
そのため、コンソールなどの送信機と、HMDなどの受信機との間に障害物や人物などによる遮蔽が生じると、通信環境の悪化により映像情報や音声情報が正しく伝わりにくくなる。そうすると、伝送エラーに起因する映像や音声の品質低下、伝送遅延などが生じ、ユーザ体験が低下してしまうことになる。
そこで、コンソールに付随するカメラから取得した情報を用いて障害物の位置を検出し、その検出結果に基づいて通信路選択を行うことで、映像情報や音声情報の伝送エラーを抑制する技術が提案されている(例えば、特許文献1参照)。
しかしながら、上述した技術では最適な通信路を確保することが困難であった。
すなわち、本来であれば、なるべく送信機から受信機までを直線で結んだ経路で通信したいが、上述した技術では通信路が遮蔽(遮断)されたときに次善の通信路が選択される。このようにして選択された次善の通信路においては、送信機から受信機までを直線的に結ぶ通信路と比較して伝送エラーや伝送遅延が発生しやすいこともあり、ユーザ体験の低下が生じてしまう場合がある。
本技術は、このような状況に鑑みてなされたものであり、最適な通信路を確保することができるようにするものである。
本技術の第1の側面の情報処理装置は、コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽を検出する遮蔽検出部と、前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記再生装置の移動量を計算する移動計算部と、前記移動量に基づいて前記コンテンツデータの生成を制御する制御部とを備える。
本技術の第1の側面の情報処理方法は、コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽を検出し、前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記再生装置の移動量を計算し、前記移動量に基づいて前記コンテンツデータの生成を制御するステップを含む。
本技術の第1の側面においては、コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽が検出され、前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記再生装置の移動量が計算され、前記移動量に基づいて前記コンテンツデータの生成が制御される。
本技術の第2の側面の情報処理装置は、コンテンツデータに基づいてコンテンツを再生する情報処理装置であって、前記コンテンツデータを送信してくる他の情報処理装置との間の通信路の遮蔽を検出する遮蔽検出部と、前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記情報処理装置の移動量を計算する移動計算部と、無線通信により前記移動量を前記他の情報処理装置に送信する無線通信部とを備える。
本技術の第2の側面の情報処理方法は、コンテンツデータに基づいてコンテンツを再生する情報処理装置が、前記コンテンツデータを送信してくる他の情報処理装置との間の通信路の遮蔽を検出し、前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記情報処理装置の移動量を計算し、無線通信により前記移動量を前記他の情報処理装置に送信するステップを含む。
本技術の第2の側面においては、コンテンツデータに基づいてコンテンツを再生する情報処理装置により、前記コンテンツデータを送信してくる他の情報処理装置との間の通信路の遮蔽が検出され、前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記情報処理装置の移動量が計算され、無線通信により前記移動量が前記他の情報処理装置に送信される。
以下、図面を参照して、本技術を適用した実施の形態について説明する。
〈第1の実施の形態〉
〈本技術について〉
本技術は、コンテンツを再生する再生装置と、その再生装置にコンテンツデータを送信する情報処理装置とからなるシステムにおいて、通信路の遮蔽状況に応じて仮想空間内におけるユーザの位置を変更(補正)し、変更後の位置に基づいてコンテンツデータを生成することで最適な通信路を確保できるようにするものである。
〈本技術について〉
本技術は、コンテンツを再生する再生装置と、その再生装置にコンテンツデータを送信する情報処理装置とからなるシステムにおいて、通信路の遮蔽状況に応じて仮想空間内におけるユーザの位置を変更(補正)し、変更後の位置に基づいてコンテンツデータを生成することで最適な通信路を確保できるようにするものである。
本技術は、無線通信によりコンテンツデータの授受を行ってコンテンツを再生するシステムであれば、どのようなシステムにも適用可能であるが、以下では例としてVRコンテンツを再生するVRコンテンツ再生システムに本技術を適用する場合について説明する。
本技術を適用したVRコンテンツ再生システムは、例えば送信機として機能するコンソールと、受信機として機能するHMDとからなる。
VRコンテンツ再生システムでは、VRコンテンツ(以下、単にコンテンツと称する)を再生するためのコンテンツデータが無線通信によりコンソールからHMDへと伝送され、HMDにおいてコンテンツデータに基づくコンテンツの再生が行われる。HMDを装着しているユーザは、HMDにより再生されるコンテンツを視聴する。
その他、HMDからコンソールには、コンテンツにより再現される仮想的な空間内におけるユーザの位置および姿勢を示す位置姿勢情報が必要に応じて伝送される。
ここで、コンテンツデータは、コンテンツの映像を再生(表示)させるための映像情報(ビデオデータ)と、その映像に付随する音声を再生させるための音声情報(オーディオデータ)とからなる。なお、コンテンツは映像と音声の何れか一方のみから構成されてもよい。すなわち、コンテンツデータは映像情報と音声情報の少なくとも何れか一方により構成されていればよい。
また、コンテンツ再生時には映像情報に基づいて仮想的な空間の映像がコンテンツの映像として表示される。以下では、コンソールやHMDが実際に存在する空間を実空間とも称し、コンテンツにより再現される仮想的な空間を仮想空間とも称することとする。
映像情報に基づく映像は、HMDを装着するユーザの仮想空間内における位置および姿勢を示す位置姿勢情報に応じて変化する。換言すれば、映像情報に基づく映像は、仮想空間内にいるユーザが位置姿勢情報により示される位置および姿勢である状態において見ている仮想空間の映像(画像)とされる。また、音声情報に基づく音声は、仮想空間内にいるユーザが位置姿勢情報により示される位置および姿勢である状態において聞いている仮想空間の音である。
仮想空間におけるユーザの位置および姿勢を示す位置姿勢情報は、実空間におけるユーザ(HMD)の位置および姿勢の計測結果から得ることができる。実空間においてユーザが位置や姿勢を変化させると、それに連動して仮想空間におけるユーザの位置や姿勢も変化する。
すなわち、仮想空間の位置姿勢情報は、仮想空間内の基準となる位置を原点とする仮想空間座標系におけるユーザの位置および姿勢を示す情報である。これに対して、HMD側において実際に計測されるのは、実空間内の基準となる位置を原点とする実空間座標系におけるユーザの位置および姿勢を示す情報である。
これらの仮想空間座標系と実空間座標系との対応関係は予め定められているため、実空間におけるユーザの位置および姿勢を示す情報を仮想空間の位置姿勢情報へと変換することが可能である。なお、実空間におけるユーザ(HMD)の位置および姿勢を示す位置姿勢情報がコンソールへと送信され、コンソールにおいて実空間の位置姿勢情報が仮想空間の位置姿勢情報へと変換されてもよい。
また、以下ではコンテンツデータが位置姿勢情報に基づいて生成される例について説明するが、コンテンツデータは、ユーザの姿勢を示す情報は用いずに、仮想空間内におけるユーザの位置を示す位置情報のみから生成されるようにしてもよい。
VRコンテンツ再生システムでは、無線通信によりコンテンツデータを伝送する通信路の遮蔽が検出されると、その検出結果に応じて仮想空間とユーザとの相対的な位置関係が補正されるように、つまり仮想空間内におけるユーザの位置が補正されるように、ユーザの位置姿勢情報が更新される。換言すれば、実際のユーザの動きとは別に仮想空間内におけるユーザの位置が遮蔽の検出結果に応じて移動されるように位置姿勢情報が更新される。
このようにすることで、VRコンテンツ再生システムにおいてはリダイレクションと呼ばれている現象が利用されて、コンソールとHMDとの間の最適な通信路が確保される。リダイレクションとは、人間は視覚をはじめとする五感による情報の影響が大きいため、知覚的な移動量と実際の物理的な移動量は一致しないという現象である。
ここで、本技術によるリダイレクションを利用した最適な通信路の確保について、より具体的に説明する。
例えば図1の矢印Q11に示すように、実空間にコンソール11とHMD12とが存在しており、コンソール11からHMD12へとコンテンツデータが伝送されるとする。
この場合、コンソール11とHMD12とを直線的に結ぶ矢印W11により表される通信路(通信経路)が最適な通信路となり、この通信路によりコンテンツデータを伝送するときに、コンテンツデータの伝送エラーや伝送遅延が最も少なくなるはずである。
しかし、例えば矢印Q12に示すようにコンソール11とHMD12との間に遮蔽物13があると、矢印Q11に示した最適な通信路が遮蔽物13によって遮蔽されてしまい、通信環境が悪化してしまう。すなわち、伝送エラーや伝送遅延が生じてしまう可能性がある。
そこで、このような通信路の遮蔽が検出された場合には、例えば矢印Q13に示すように遮蔽物13により遮蔽されない次善の通信路を探索し、その次善の通信路へとコンテンツデータを伝送するための通信路を切り替えることが考えられる。
この例では、矢印W12に示すようにコンソール11から出力された無線信号が室内の壁等で反射されてHMD12へと到達する通信路が次善の通信路の探索結果として得られており、この矢印W12に示す通信路への切り替えが行われる。
しかし、矢印W12に示す通信路での伝送では、矢印Q11に示した最適な通信路での伝送と比較すると伝送エラーや伝送遅延が生じる可能性が高い。
したがって、できるだけコンソール11とHMD12とを結ぶ直線を経路として有する通信路を確保することが望まれる。
そこで、本技術では受信機であるHMDが自由に移動可能なユーザの頭部に装着されることに着目し、遮蔽物による遮蔽を避けることができる位置へとユーザを無意識に移動させることで、常に最適な通信路を確保することができるようにする。これにより、コンテンツデータの伝送エラーや伝送遅延を抑制し、ユーザ体験の低下を抑制することができるようになる。
具体的には、図2の矢印Q21に示すように、実空間にコンソール11とHMD12とが存在しており、コンソール11からHMD12へとコンテンツデータが伝送されるとする。なお、図2において図1における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
この場合、図1における場合と同様に、矢印W11により表される通信路が最適な通信路となる。このような状態から、例えば矢印Q22に示すように遮蔽物13によって通信路が遮蔽されてしまう状態となるとする。すなわち、遮蔽物13による通信路の遮蔽が検出されたとする。
すると、本技術では矢印Q23に示すように遮蔽の検出結果に応じて、通信路の遮蔽が生じない位置へのHMD12の移動量が求められ、その移動量の分だけHMD12、すなわちユーザが移動するように位置姿勢情報が更新される。ここでは、矢印M11が実空間における移動量を表しており、この移動量に応じて位置姿勢情報が更新される。
そして、更新後の位置姿勢情報に基づいてコンテンツデータが生成され、そのコンテンツデータに基づいてコンテンツが再生されると、HMD12を装着したユーザは無意識に矢印M11により示される移動量だけ移動する。換言すれば、コンテンツの再生によって、HMD12を装着したユーザは、特に意識することなく、通信路の遮蔽が生じない適切な位置へと誘導される。
その結果、コンソール11とHMD12とを直線的に結ぶ矢印W21により示される通信路は、遮蔽物13により遮蔽されなくなり、特別な設備等を設けることなく簡単に最適な通信路が確保される。
上述したように、位置姿勢情報を更新することによりユーザを無意識に移動させるのには、リダイレクションと呼ばれる現象が利用されている。
具体的には、例えば図3の矢印Q31に示すように、仮想空間内の道をユーザU11が歩くようなユーザ体験を提供するコンテンツがあるとする。このとき、ユーザU11は道の中央のラインL11に沿って前方に歩いていくように体を動かしており、このタイミングではユーザU11は道の中央のラインL11の位置を歩いている。
そのような状態で図2の矢印Q22に示したように通信路が遮蔽されたとする。この場合、図2の矢印Q23に示した例と同様に、実空間内でユーザU11から見て右側に所定の移動量だけユーザU11が移動すれば通信路が遮蔽されなくなるとすると、その移動量に対応する分だけ位置姿勢情報により示される位置が移動(変更)される。
具体的には、更新前の仮想空間内におけるユーザU11の位置を、実空間内での移動量に対応する仮想空間内での移動量の分だけユーザU11から見て左側に移動させた位置が、更新後の仮想空間内におけるユーザU11の位置となるように位置姿勢情報が更新される。
このようにして位置姿勢情報が更新されると、更新後の位置姿勢情報に基づいてコンテンツデータが生成され、矢印Q32に示す映像がコンテンツの映像として表示される。この例では、仮想空間内においてユーザU11の位置は、矢印Q31に示したタイミングにおける場合よりもわずかに左側にずれている。すなわち、ユーザU11は道の中央のラインL11から図中、左側にずれた位置を歩いている状態となる。
この例では、ユーザU11はラインL11に沿って歩くことにしているので、矢印Q32に示す映像が提示されると、その後、矢印Q33に示すようにユーザは無意識のうちにラインL11へと寄っていくように体を動かす。その結果、仮想空間ではユーザU11は再び道の中央のラインL11の位置を歩くようになり、実空間ではユーザU11は通信路が遮蔽されない位置、すなわち実空間内での移動量により示される移動先の位置まで移動する。
このようにユーザU11が無意識に移動したことにより、実空間では図2の矢印Q23に示した例と同様に、ユーザU11の頭部に装着されているHMD12と、コンソール11とを結ぶ直線上に遮蔽物13が位置しない状態となる。つまり、通信路が遮蔽物13により遮蔽されない状態となり、これにより最適な通信路が確保されたことになる。
〈VRコンテンツ再生システムの構成例〉
次に、本技術を適用したVRコンテンツ再生システムについて、より具体的に説明する。
次に、本技術を適用したVRコンテンツ再生システムについて、より具体的に説明する。
図4は、本技術を適用したVRコンテンツ再生システムの一実施の形態の構成例を示す図である。
図4に示すVRコンテンツ再生システムは、同じ室内にあるコンソール51とHMD52を有している。
コンソール51は送信機として機能し、HMD52に対して無線通信によりコンテンツデータを送信する情報処理装置である。また、HMD52は受信機として機能し、コンソール51からコンテンツデータの供給を受けてコンテンツを再生する情報処理装置(再生装置)であり、HMD52はコンテンツを視聴するユーザの頭部に装着される。これらのコンソール51およびHMD52は、図2に示したコンソール11およびHMD12に対応する。
コンソール51からHMD52へのコンテンツデータの伝送は、例えば60GHzなどの高周波広帯域を利用した無線通信により行われる。また、HMD52からコンソール51へは位置姿勢情報(IMU(Inertial Measurement Unit)情報)やその他の制御情報などが無線通信により伝送される。
なお、コンソール51からHMD52への情報伝送時の無線通信方式と、HMD52からコンソール51への情報伝送時の無線通信方式とは同じであってもよいし異なる無線通信方式であってもよい。
〈コンソールの構成例〉
さらにコンソール51は、例えば図5に示すように構成される。
さらにコンソール51は、例えば図5に示すように構成される。
図5に示すコンソール51は、センサ部81、遮蔽検出部82、移動計算部83、制御部84、生成部85、記憶部86、エンコーダ部87、無線通信部88、およびアンテナ89を有している。
センサ部81は、例えばRGBDセンサや超音波センサ等の距離センサ、カメラなど、コンソール51とHMD52との間にある遮蔽物を検出するためのセンサからなり、センサによる周囲のセンシング結果(観測結果)であるセンサ出力情報を出力する。
例えばセンサ部81がカメラからなる場合、カメラにより撮影されたコンソール51の周囲の周辺環境画像がセンサ出力情報として出力される。また、例えばセンサ部81が距離センサからなる場合、距離センサにより測定されたコンソール51の周囲の物体までの距離を示す距離情報がセンサ出力情報として出力される。なお、以下においては周辺環境画像と距離情報がセンサ出力情報として出力されるものとして説明を続ける。
センサ部81から出力されるセンサ出力情報は、遮蔽検出部82、移動計算部83、および制御部84に供給される。
遮蔽検出部82は、センサ部81から供給されたセンサ出力情報と、制御部84から供給されたユーザ(HMD52)の位置姿勢情報とに基づいて、コンソール51とHMD52との間の通信路の遮蔽状況、すなわち通信路の遮蔽を検出する。遮蔽検出部82は、通信路の遮蔽の検出結果を移動計算部83および制御部84に供給する。
移動計算部83は、センサ部81からのセンサ出力情報や制御部84からの位置姿勢情報を必要に応じて用いて、遮蔽検出部82から供給された検出結果に基づいて、通信路の遮蔽の生じない位置へのユーザ(HMD52)の移動量を計算し、制御部84に供給する。
移動計算部83で算出される移動量は、実空間におけるユーザの移動量である。また、より詳細には、この移動量はユーザの移動方向と移動距離を示すものである。
制御部84は、コンソール51全体の動作を制御する。
例えば制御部84は、移動計算部83から供給された移動量に基づいてコンテンツデータの生成を制御する。具体的には、制御部84は、供給された移動量に基づいて位置姿勢情報を更新し、更新後の位置姿勢情報に基づいて生成部85によるコンテンツデータの生成を制御する。これにより位置姿勢情報の更新(補正)がコンテンツに反映される。
また、例えば制御部84は、エンコーダ部87によるコンテンツデータの符号化を制御したり、無線通信部88による無線信号の送受信を制御したりする。
生成部85は、制御部84の制御に従ってコンテンツデータを生成し、記憶部86に供給する。生成部85では、コンテンツデータを構成する映像情報と音声情報が生成される。
記憶部86は、生成部85から供給されたコンテンツデータを一時的に記憶し、エンコーダ部87へと供給する。エンコーダ部87は、制御部84の制御に従って、記憶部86から供給されたコンテンツデータを符号化(圧縮)し、その結果得られた符号情報を無線通信部88に供給する。
無線通信部88は、制御部84の制御に従って、アンテナ89によるHMD52との無線通信を行う。すなわち、例えば無線通信部88は、エンコーダ部87から供給された符号情報を無線通信によりアンテナ89から送信させたり、HMD52から送信されてきた位置姿勢情報をアンテナ89により受信し、制御部84に供給したりする。
〈コンテンツ送信処理の説明〉
続いてコンソール51の動作について説明する。すなわち、以下、図6のフローチャートを参照して、コンソール51によるコンテンツ送信処理について説明する。
続いてコンソール51の動作について説明する。すなわち、以下、図6のフローチャートを参照して、コンソール51によるコンテンツ送信処理について説明する。
なお、コンテンツ送信処理時においては、コンソール51とHMD52とは、最適な通信路、つまりコンソール51とHMD52を直線的に結ぶ通信路により無線通信を行っている状態であるとする。但し、通信路の遮蔽状況によっては、例えば図1の矢印W12に示したように、コンソール51とHMD52を直線的に結ぶ通信路ではない、反射等を利用した通信路により無線通信が行われている状態であることもある。また、以下で説明するコンテンツ送信処理は、例えばコンテンツデータのフレームごとに行われる。
ステップS11において無線通信部88は、HMD52から送信されてきた位置姿勢情報をアンテナ89により受信し、制御部84に供給する。また、制御部84は、無線通信部88から供給された位置姿勢情報を遮蔽検出部82や移動計算部83に供給する。
一般的にコンソール51においては、HMD52から位置姿勢情報を受信しなくても、センサ部81のセンサ出力情報などから実空間におけるHMD52(ユーザ)の位置および姿勢を特定可能である。したがって、そのような場合には、ステップS11の処理は行われずに、制御部84がセンサ出力情報などから位置姿勢情報を生成するようにしてもよい。
ステップS12において遮蔽検出部82は、センサ部81からのセンサ出力情報と、制御部84からの位置姿勢情報とに基づいて通信路の遮蔽状況、すなわち通信路の遮蔽を検出し、その検出結果を移動計算部83および制御部84に供給する。
例えば遮蔽検出部82は、センサ出力情報としての周辺環境画像や距離情報、位置姿勢情報などに基づいて、実空間におけるHMD52の位置や、コンソール51とHMD52の間にある遮蔽物の位置および大きさを特定(検出)することができる。
このとき、例えばコンソール51とHMD52との間に遮蔽物が検出された場合には、通信路が遮蔽されているという遮蔽状況が検出されたことになる。つまり、通信路の遮蔽が検出されたことになる。
ステップS13において制御部84は、遮蔽検出部82から供給された遮蔽状況の検出結果に基づいて、通信路の遮蔽が検出されたか否かを判定する。
なお、センサ部81でセンサ出力情報が時系列に得られる場合には、周辺環境画像上において遮蔽物となり得る物体と、その物体の移動方向および移動速度とを検出することが可能である。そのため、遮蔽検出部82では、未来において通信路が遮蔽されるであろうタイミング(時刻)と、通信路が遮蔽される期間、つまり遮蔽の継続時間とを予測することができる。
したがって、制御部84では、実際に通信路が遮蔽された場合だけでなく、所定時間後に通信路が遮蔽されると予測される場合においても、ステップS13において遮蔽が検出されたと判定されるようにしてもよい。なお、遮蔽物が移動してくることにより通信路が遮蔽されると予測されるときには、後述のステップS15において、ユーザ(HMD52)を遮蔽物の移動方向と反対方向に移動させて最適な通信路を確保するような移動量を算出するようにしてもよい。
ステップS13において遮蔽が検出されなかったと判定された場合、制御部84は、ステップS11で受信された位置姿勢情報を生成部85に供給してコンテンツデータの生成を指示し、その後、処理はステップS14へと進む。
ステップS14において生成部85は、制御部84から供給された位置姿勢情報、すなわちステップS11で受信された位置姿勢情報に応じたコンテンツデータを生成し、記憶部86に供給する。記憶部86は、生成部85から供給されたコンテンツデータを一時的に記憶する。
具体的には、例えば生成部85はコンテンツデータを生成するためのデータとして、互いに異なる視点で撮影された複数の映像データからなる映像データ群と、複数の各音源(オブジェクト)の音を再生するためのオーディオデータとを保持している。
例えば生成部85は、映像データ群および位置姿勢情報に基づいてレンダリング処理を行い、位置姿勢情報に対応する視点位置および視線方向の映像情報をコンテンツデータを構成する映像情報として生成する。
また、例えば生成部85は、オーディオデータおよび位置姿勢情報に基づいて、VBAP(Vector Base Amplitude Panning)およびバイノーラル処理や、パニング処理をレンダリング処理として行い、コンテンツデータを構成する音声情報を生成する。
このようにして得られた音声情報に基づいて音声を再生すれば、位置姿勢情報により示される位置にいるユーザが、仮想空間の予め定められた位置等にある各音源からの音を聞いているかのような音場、すなわち音像定位を再現することができる。
ステップS14の処理が行われてコンテンツデータが生成されると、その後、処理はステップS18へと進む。
これに対して、ステップS13において遮蔽が検出されたと判定された場合、制御部84は移動計算部83に移動量の計算を指示し、その後、処理はステップS15へと進む。
ステップS15において移動計算部83は、制御部84からの指示に従って、センサ部81からのセンサ出力情報や制御部84からの位置姿勢情報を必要に応じて用いながら、遮蔽検出部82から供給された検出結果に基づいて、実空間におけるユーザの移動量を計算(算出)し、制御部84に供給する。
例えば遮蔽検出部82では、通信路の遮蔽状況として、通信路がどの程度の大きさの遮蔽物により遮蔽されているかを検出することが可能である。したがって、移動計算部83は、コンソール51とHMD52と遮蔽物との位置関係や、遮蔽の検出結果に基づいて、HMD52を実空間におけるどの方向にどれだけ移動させれば通信路の遮蔽が生じなくなるかを特定することができる。すなわち、実空間における通信路の遮蔽が生じない位置へのHMD52(ユーザ)の移動量、つまり移動方向と移動距離を求めることができる。
ステップS16において制御部84は、移動計算部83から供給された移動量に基づいて、仮想空間におけるユーザの位置および姿勢を示す位置姿勢情報を更新する。そして制御部84は、更新後の位置姿勢情報を生成部85に供給してコンテンツデータの生成を指示(制御)する。
ステップS17において生成部85は、制御部84から供給された更新後の位置姿勢情報に応じたコンテンツデータを生成し、記憶部86に供給する。また、記憶部86は、生成部85から供給されたコンテンツデータを一時的に記憶する。
なお、ステップS17では、ステップS14と同様の処理が行われてコンテンツデータが生成される。すなわち、ステップS17の処理とステップS14の処理とは、位置姿勢情報が更新されたものであるか否かのみが異なり、他の点では同じ処理となっている。
ステップS14またはステップS17の処理が行われてコンテンツデータが生成されると、ステップS18においてエンコーダ部87は、制御部84の制御に従って、記憶部86に記憶されているコンテンツデータを符号化する。エンコーダ部87は、符号化により得られた符号情報を無線通信部88に供給する。
ステップS19において無線通信部88は、制御部84の制御に従って、エンコーダ部87から供給された符号情報を無線通信によりアンテナ89から送信させ、コンテンツ送信処理は終了する。この場合、HMD52ではコンテンツデータに基づいてコンテンツが再生され、例えば図3を参照して説明したように遮蔽の生じない位置への誘導が行われる。
また、HMD52ではステップS19で送信されたコンテンツデータ(符号情報)が受信され、受信されたコンテンツデータに基づいてコンテンツが再生される。なお、ステップS19では、通信路の遮蔽状況に応じて、コンソール51とHMD52とを直線的に結ぶ通信路により符号情報が送信されることもあるし、例えば図1の矢印W12に示したように、コンソール51とHMD52を直線的に結ぶ通信路ではない、反射等を利用した通信路により符号情報が送信されることもある。
ここで、図7および図8を参照して、ステップS15およびステップS16で行われる処理について、より具体的に説明する。
例えば遮蔽検出部82においてセンサ出力情報や位置姿勢情報に基づいて、実空間におけるHMD52の位置および姿勢や遮蔽物の位置および大きさを認識し、その結果、例えば図7に示すように実空間におけるコンソール51、HMD52、および遮蔽物OBJ1の位置関係が特定されたとする。
そのような場合、移動計算部83では、遮蔽検出部82で特定された位置関係に基づいて、実空間においてコンソール51とHMD52を結ぶ直線が遮蔽物OBJ1と交差しないようなHMD52の移動先への移動量を示すベクトルΔxwを求めることができる。すなわち、コンソール51とHMD52を直線的に結ぶ通信路が遮蔽物OBJ1により遮蔽されないようにするためのHMD52の移動先を示すベクトルΔxwを求めることができる。
図7に示す例では、実空間座標系は、コンテンツ再生開始時におけるHMD52の位置を原点とし、互いに直交するXw軸、Yw軸、およびZw軸を軸とする3次元直交座標系とされている。
特に、ここではコンテンツ再生開始時における、HMD52の位置である原点とコンソール51とを結ぶ方向である図中、上方向がZw軸方向とされている。また、図7中、右方向がXw軸方向とされており、さらに図7中、手前方向、つまりHMD52を装着するユーザから見て上方向がYw軸方向とされている。
なお、実空間座標系の原点や軸方向はどのように設定してもよい。さらにYw軸方向におけるユーザ頭部の位置は、基本的にHMD52を装着するユーザの身長や座高により定まるため、仮想空間におけるユーザの位置をYw軸方向にずらしてもユーザがそれに追従することはできない。したがって、ここではXwZw平面上でHMD52を移動させることとするが、例えば無重力空間や水中などの自由な3次元移動が可能なVRコンテンツ再生システムに本技術を適用する場合には、HMD52をYw軸方向にも移動させることができる。
図7に示す例では、矢印M31がHMD52の移動量を示すベクトルΔxwを表している。具体的には、矢印M31の始点位置が現時点における実際のHMD52の位置となっており、矢印M31の終点位置が目標とするHMD52の移動先の位置、すなわち通信路の遮蔽が生じなくなるHMD52の位置を示している。
ここでは現時点における実際のHMD52の位置が実空間座標系の原点となっており、Xw軸方向の移動量がΔxであり、Zw軸方向の移動量が0であるのでベクトルΔxwはΔxw=(Δx,0)となる。
移動計算部83は、ステップS15において、移動量として矢印M31により表されるベクトルΔxwを求め、制御部84に供給する。
すると、制御部84は、実空間座標系のベクトルΔxwを、仮想空間座標系のベクトルΔxvへと変換する。ベクトルΔxvは、実空間座標系のベクトルΔxwにより示される移動量に相当する仮想空間における移動量を示すベクトルである。
例えば仮想空間座標系が互いに直交するXv軸、Yv軸、およびZv軸を軸とする3次元直交座標系であり、Xv軸、Yv軸、およびZv軸の各軸が実空間座標系のXw軸、Yw軸、およびZw軸の各軸に対応するとする。
そのような場合に、例えば図8に示すように仮想空間座標系が実空間座標系に対して回転角度θwvだけ回転しているとする。すなわち、Zv軸とZw軸とのなす角度がθwv度であるとする。
このような回転角度θwvは既知であるので、制御部84はベクトルを回転角度θwvだけ回転させる回転行列R(θwv)を用いて次式(1)の計算を行うことで、仮想空間におけるHMD52の移動量を示すベクトルΔxvを得ることができる。
式(1)の計算では、回転行列R(θwv)によってベクトルΔxwがθwv度だけ回転されてベクトルΔxvとされている。図8では、矢印M41がベクトルΔxvを表している。
さらに制御部84は、実空間におけるベクトルΔxwにより示される位置にHMD52(ユーザ)を移動させるために、仮想空間の位置姿勢情報により示される位置をXvZv平面上で-Δxvだけ移動させる。すなわち、制御部84は現時点における位置姿勢情報に対して、位置姿勢情報により示される位置をXvZv平面上で-Δxvだけ移動させる補正(変更)を行い、その結果得られた位置姿勢情報を更新後の位置姿勢情報とする。
そして、制御部84は更新後の位置姿勢情報を生成部85に供給し、コンテンツデータを生成させる。以上において説明したベクトルΔxwのベクトルΔxvへの変換処理と、ベクトルΔxvに基づく位置姿勢情報の更新処理が上述のステップS16の処理として行われる。
なお、ここでは位置姿勢情報により示されるユーザの仮想空間における位置(視点位置)を-Δxvだけ移動させる例について説明した。
しかし、位置姿勢情報により示される位置を移動させるのではなく、仮想空間自体を現時点の位置からベクトルΔxvに示される移動量だけ、すなわちΔxvだけ移動させるようにしてもよい。これは、仮想空間自体をΔxvだけ移動させることと、仮想空間におけるユーザの位置を-Δxvだけ移動させることとは等価であるからである。
仮想空間を移動させる場合、制御部84は、生成部85に対して仮想空間をΔxvだけ移動させたコンテンツデータの生成を指示し、生成部85は制御部84の指示に応じてレンダリング処理を行い、仮想空間をΔxvだけ移動させたコンテンツデータを生成する。
この場合、仮想空間座標系がΔxvだけずらされて映像情報や音声情報に関するレンダリング処理が行われるが、結果的に位置姿勢情報により示される位置が-Δxvだけ移動されることになる。
以上のようにしてコンソール51は、通信路の遮蔽が検出された場合には、ユーザ(HMD52)を移動させる移動量を算出し、その移動量に基づいて位置姿勢情報を更新するとともに更新後の位置姿勢情報に基づいてコンテンツデータを生成する。
このようにすることで、リダイレクションを利用して無意識にユーザを適切な場所へと誘導することができ、最適な通信路を確保することができる。
なお、ステップS16では、ステップS15で算出した移動量を示すベクトルΔxwの分だけ位置姿勢情報を補正(変更)すると説明した。換言すれば、仮想空間においてベクトルΔxvにより示される移動量の分だけ一度にユーザを移動させる例について説明した。しかし、コンテンツデータの数フレーム分の時間をかけて、つまり何度かに分割して少しずつユーザを移動させるようにしてもよい。
例えばある時刻tにおいて通信路の遮蔽が検出され、仮想空間における移動量を示すベクトルΔxvが得られたとしても、その分の移動をコンテンツデータに対して次の時刻t’で一度に反映させると、ユーザが急激な位置変化を認識してしまい、ユーザ体験を損ねてしまうおそれがある。そこで、得られたベクトルΔxvの分だけ一度に移動させるのではなく、例えば予め定められた回数で分割して移動させたり、予め定められた移動量ずつ移動させたりするようにしてもよい。
例えば移動させる回数N、すなわち分割数Nが予め定められている場合、制御部84は、ステップS16において仮想空間における移動量をΔxv/Nとして位置姿勢情報を更新する。
この場合、制御部84が現時点における位置姿勢情報により示される位置を-Δxv/Nだけ移動させることで位置姿勢情報を更新し、更新後の位置姿勢情報に基づいてコンテンツデータの生成を制御する処理と、無線通信部88がコンテンツデータを無線通信により送信する処理とがN回連続して行われることになる。
この例では一回の移動量、すなわち、例えば1フレームにおける移動量がΔxv/Nとなるので、N回の移動後(Nフレーム後)にユーザのベクトルΔxv分の移動が完了することになる。このようにすれば、予め定められた時間内に確実にユーザの移動を完了させ、最適な通信路を確保することができる。
また、例えば一度の移動量がδxv(但し、δxv>0)と定められているとする。すなわち、一度の移動量δxvがδxv=k[mm](例えばk=2)などと定められているとする。
そのような場合、処理回数をMとすると、δxv×M≧|Δxv|が満たされるまで繰り返し移動量δxv分ずつ移動が行われる。すなわち、M回(Mフレーム)に分けて移動が行われる。
具体的には、ステップS16では制御部84は仮想空間における移動量をδxvとして位置姿勢情報を更新する。
したがって、この場合には制御部84が現時点における位置姿勢情報により示される位置を、ベクトルΔxvにより示される方向とは反対方向にδxvだけ移動させることで位置姿勢情報を更新し、更新後の位置姿勢情報に基づいてコンテンツデータの生成を制御する処理と、無線通信部88がコンテンツデータを無線通信により送信する処理とがM回連続して行われることになる。
このようにすれば、移動完了までの時間はその都度変化するが、ユーザの移動がユーザ体験に及ぼす影響を最小限にするなどのコントロールが可能である。
〈第2の実施の形態〉
〈HMDの構成例〉
ところで、以上においてはコンソール51とHMD52からなるVRコンテンツ再生システムにおいて、コンソール51側で通信路の遮蔽を検出し、その検出結果に応じて位置姿勢情報を更新する例について説明した。しかし、コンソール51側ではなく、HMD52側で通信路の遮蔽の検出や移動量の算出を行うようにしてもよい。
〈HMDの構成例〉
ところで、以上においてはコンソール51とHMD52からなるVRコンテンツ再生システムにおいて、コンソール51側で通信路の遮蔽を検出し、その検出結果に応じて位置姿勢情報を更新する例について説明した。しかし、コンソール51側ではなく、HMD52側で通信路の遮蔽の検出や移動量の算出を行うようにしてもよい。
そのような場合、HMD52は例えば図9に示すように構成される。
図9に示すHMD52はセンサ部111、遮蔽検出部112、移動計算部113、位置姿勢計測部114、制御部115、アンテナ116、無線通信部117、デコーダ部118、生成部119、記憶部120、映像表示部121、およびスピーカ122を有している。
センサ部111は、図5に示したセンサ部81に対応し、例えばRGBDセンサや超音波センサ等の距離センサ、カメラ、ジャイロセンサなどのセンサからなり、センサで得られたセンサ出力情報を位置姿勢計測部114および遮蔽検出部112に供給する。
センサ部111から出力されるセンサ出力情報は、例えば周辺環境画像や距離情報、HMD52の位置や姿勢の変化を示す角速度などとされ、このセンサ出力情報は遮蔽状況の検出だけでなく、HMD52の位置や姿勢の計測にも用いられる。
遮蔽検出部112は、図5に示した遮蔽検出部82に対応し、センサ部111から供給されたセンサ出力情報、および制御部115から供給されたコンソール51とHMD52の位置関係、すなわちコンソール51に対するHMD52の相対的な位置に基づいて通信路の遮蔽状況を検出する。つまり、コンソール51とHMD52との間の通信路の遮蔽が検出される。遮蔽検出部112は、通信路の遮蔽の検出結果を移動計算部113および制御部115に供給する。
なお、コンソール51とHMD52の位置関係は、制御部115が位置姿勢計測部114から供給された位置姿勢情報から求めるようにしてもよいし、制御部115がセンサ部111から出力されたセンサ出力情報に基づいて求めるようにしてもよい。その他、無線通信部117がアンテナ116によりコンソール51から、コンソール51とHMD52の位置関係を示す情報を受信し、制御部115に供給してもよい。
移動計算部113は、制御部115からの位置姿勢情報や、コンソール51とHMD52の位置関係を示す情報を必要に応じて用いて、遮蔽検出部112から供給された検出結果に基づいて、実空間におけるユーザの移動量、すなわちベクトルΔxwを計算(算出)し、制御部115に供給する。
位置姿勢計測部114は、センサ部111から供給されたセンサ出力情報に基づいてHMD52の位置および姿勢を計測し、その計測結果から位置姿勢情報を生成して制御部115に供給する。
制御部115は、HMD52全体の動作を制御する。例えば制御部115は、無線通信部117による無線信号の送受信を制御したり、位置姿勢情報に基づいて生成部119によるコンテンツデータの加工を制御したりする。
無線通信部117は、制御部115の制御に従って、アンテナ116によるコンソール51との無線通信を行う。すなわち、例えば無線通信部117は、制御部115から供給された移動量(ベクトルΔxw)等を無線通信によりアンテナ116から送信させたり、コンソール51から送信されてきた符号情報をアンテナ116により受信し、デコーダ部118に供給したりする。
デコーダ部118は、無線通信部117から供給された符号情報を復号(デコード)し、その結果得られたコンテンツデータを生成部119に供給する。
生成部119は、制御部115から供給された位置姿勢情報に基づいて、制御部115の制御に従って、デコーダ部118からのコンテンツデータの映像情報に対する加工処理を行い、加工処理が施された映像情報と、音声情報とからなるコンテンツデータを記憶部120に供給する。生成部119により行われる加工処理は、例えば位置姿勢情報に応じて仮想空間内のユーザの視点位置等を微調整(補正)する処理である。
記憶部120は生成部119から供給されたコンテンツデータを一時的に記憶し、記憶しているコンテンツデータの映像情報を映像表示部121に供給するとともに、コンテンツデータの音声情報をスピーカ122に供給する。
映像表示部121は、例えば液晶表示パネルなどからなり、記憶部120から供給された映像情報に基づいてコンテンツの映像を表示する。スピーカ122は記憶部120から供給された音声情報に基づいて音を出力し、コンテンツの音声を再生する。
〈コンテンツ再生処理の説明〉
次に、HMD52の動作について説明する。
次に、HMD52の動作について説明する。
HMD52は、コンソール51から無線通信により符号情報が送信されてくると、それを受信してコンテンツを再生するコンテンツ再生処理を行う。以下、図10のフローチャートを参照して、HMD52によるコンテンツ再生処理について説明する。
ステップS41において無線通信部117は、コンソール51から無線通信により送信されてきた符号情報をアンテナ116により受信し、デコーダ部118に供給する。
ステップS42においてデコーダ部118は、無線通信部117から供給された符号情報を復号し、その結果得られたコンテンツデータを生成部119に供給する。
また、生成部119は、適宜、制御部115の制御に従って、デコーダ部118からのコンテンツデータの映像情報に対する加工処理を行い、加工処理が施された映像情報と、音声情報とからなるコンテンツデータを記憶部120に供給する。
ステップS43において映像表示部121およびスピーカ122はコンテンツを再生し、コンテンツ再生処理は終了する。
すなわち、映像表示部121は、記憶部120から供給された映像情報に基づいてコンテンツの映像を表示する。また、スピーカ122は記憶部120から供給された音声情報に基づいて音を出力する。これにより、コンテンツの映像と音声が再生される。
〈移動量送信処理の説明〉
さらに、HMD52は図10を参照して説明したコンテンツ再生処理を行いながら、それと並行して通信路の遮蔽を検出し、その検出結果に応じて移動量を送信する移動量送信処理も行う。以下、図11のフローチャートを参照して、HMD52による移動量送信処理について説明する。
さらに、HMD52は図10を参照して説明したコンテンツ再生処理を行いながら、それと並行して通信路の遮蔽を検出し、その検出結果に応じて移動量を送信する移動量送信処理も行う。以下、図11のフローチャートを参照して、HMD52による移動量送信処理について説明する。
ステップS71において遮蔽検出部112は、センサ部111から供給されたセンサ出力情報、および制御部115から供給されたコンソール51とHMD52の位置関係に基づいて、HMD52とコンソール51とを直線的に結ぶ通信路の遮蔽状況、つまり通信路の遮蔽を検出する。遮蔽検出部112は、遮蔽状況の検出結果を移動計算部113および制御部115に供給する。
例えばステップS71では、図6のステップS12と同様の処理が行われ、通信路の遮蔽状況が検出される。
ステップS72において制御部115は、遮蔽検出部112から供給された遮蔽の検出結果に基づいて、通信路の遮蔽が検出されたか否かを判定する。例えばステップS72では、図6のステップS13と同様の判定処理が行われる。
ステップS72において遮蔽が検出されなかったと判定された場合、ステップS73およびステップS74の処理は行われず、移動量送信処理は終了する。
これに対してステップS72において遮蔽が検出されたと判定された場合、制御部115は移動計算部113に移動量の計算を指示し、その後、処理はステップS73へと進む。
ステップS73において移動計算部113は、制御部115からの位置姿勢情報や、コンソール51とHMD52の位置関係を示す情報を必要に応じて用いて、遮蔽検出部112から供給された検出結果に基づいて実空間におけるユーザの移動量を計算(算出)する。
すなわち、例えば移動計算部113は、図6のステップS15と同様の処理を行って移動量を示すベクトルΔxwを計算し、制御部115に供給する。
但し、ステップS73では、図12に示すように移動計算部113は、HMD52から見た遮蔽物OBJ1やコンソール51の位置関係に基づいて実空間における移動量を示すベクトルΔxwを計算する。なお、図12において図7における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
図12に示す例では、図7に示した例とは逆に、HMD52から見た遮蔽物OBJ1やコンソール51の位置関係に基づいてベクトルΔxwが算出されるが、結果としては同じベクトルΔxwが得られる。ここでは矢印M31がHMD52の移動量を示すベクトルΔxwを表している。
図11のフローチャートの説明に戻り、制御部115は移動計算部113からベクトルΔxw、すなわち移動量が供給されると、その移動量を示すベクトルΔxwを無線通信部117に供給し、コンソール51への送信を指示する。
ステップS74において無線通信部117は、制御部115から供給された移動量(ベクトルΔxw)を無線通信によりアンテナ116からコンソール51へと送信し、移動量送信処理は終了する。
このようにしてベクトルΔxwが送信されると、コンソール51の無線通信部88は、送信されてきたベクトルΔxwをアンテナ89により受信し、制御部84に供給する。
制御部84は無線通信部88から供給されたベクトルΔxwに基づいてHMD52の位置姿勢情報を更新し、更新後の位置姿勢情報を生成部85に供給してコンテンツデータを生成させる。ここで、位置姿勢情報の更新時には図6のステップS16と同様の処理が行われる。すなわち、ベクトルΔxwが回転行列R(θwv)によりベクトルΔxvに変換され、そのベクトルΔxvに基づいて位置姿勢情報が更新される。
そうすると、次回行われる図10のステップS41で受信する符号情報から得られるコンテンツデータは、更新後の位置姿勢情報に応じて生成されたものとなり、そのコンテンツデータに基づいてコンテンツを再生すると無意識にユーザが移動することになる。したがって、HMD52において通信路の遮蔽状況を検出する場合においても最適な通信路が確保される。
以上のようにしてHMD52は、通信路の遮蔽が検出された場合には、ユーザ(HMD52)を移動させる移動量を算出し、その移動量をコンソール51に送信する。このようにすることで、リダイレクションを利用して無意識にユーザを適切な場所へと誘導することができ、最適な通信路を確保することができる。
なお、ここでは位置姿勢情報の更新はコンソール51側で行われると説明したが、HMD52において位置姿勢情報が更新されるようにしてもよい。
そのような場合、例えば制御部115は、位置姿勢計測部114で生成された位置姿勢情報を取得するとともに、移動計算部113から供給されたベクトルΔxwに基づいて、取得した位置姿勢情報を更新する。すなわち、制御部115は、ベクトルΔxwをベクトルΔxvに変換し、そのベクトルΔxvに基づいて位置姿勢情報を更新する。
そして制御部115は、更新後の位置姿勢情報を無線通信部117に供給し、送信させる。無線通信部117は、制御部115から供給された更新後の位置姿勢情報を無線通信によりアンテナ116で送信する。また、この場合、遮蔽が検出されなかったときには、無線通信部117は、制御部115から供給された、位置姿勢計測部114で生成された位置姿勢情報をそのままアンテナ116により送信する。
〈コンピュータの構成例〉
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
図13は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
コンピュータにおいて、CPU501,ROM(Read Only Memory)502,RAM(Random Access Memory)503は、バス504により相互に接続されている。
バス504には、さらに、入出力インターフェース505が接続されている。入出力インターフェース505には、入力部506、出力部507、記録部508、通信部509、及びドライブ510が接続されている。
入力部506は、キーボード、マウス、マイクロホン、撮像素子などよりなる。出力部507は、ディスプレイ、スピーカなどよりなる。記録部508は、ハードディスクや不揮発性のメモリなどよりなる。通信部509は、ネットワークインターフェースなどよりなる。ドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体511を駆動する。
以上のように構成されるコンピュータでは、CPU501が、例えば、記録部508に記録されているプログラムを、入出力インターフェース505及びバス504を介して、RAM503にロードして実行することにより、上述した一連の処理が行われる。
コンピュータ(CPU501)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体511に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
コンピュータでは、プログラムは、リムーバブル記録媒体511をドライブ510に装着することにより、入出力インターフェース505を介して、記録部508にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部509で受信し、記録部508にインストールすることができる。その他、プログラムは、ROM502や記録部508に、あらかじめインストールしておくことができる。
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
さらに、本技術は、以下の構成とすることも可能である。
(1)
コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽を検出する遮蔽検出部と、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記再生装置の移動量を計算する移動計算部と、
前記移動量に基づいて前記コンテンツデータの生成を制御する制御部と
を備える情報処理装置。
(2)
前記制御部は、前記移動量に基づいて、前記コンテンツの仮想空間内におけるユーザの位置を示す位置情報を更新するとともに、更新後の前記位置情報に基づいて前記コンテンツデータの生成を制御する
(1)に記載の情報処理装置。
(3)
前記コンテンツデータを無線通信により前記再生装置に送信する無線通信部をさらに備える
(2)に記載の情報処理装置。
(4)
前記制御部は、前記移動量に対応する前記仮想空間内の移動量をΔxとしたときに、前記位置情報により示される位置を-Δxだけ移動させることで前記位置情報を更新する
(3)に記載の情報処理装置。
(5)
所定の分割数をNとし、前記移動量に対応する前記仮想空間内の移動量をΔxとしたときに、
前記制御部が前記位置情報により示される位置を-Δx/Nだけ移動させることで前記位置情報を更新し、更新後の前記位置情報に基づいて前記コンテンツデータの生成を制御する処理と、
前記無線通信部が前記コンテンツデータを前記再生装置に送信する処理と
がN回連続して行われる
(3)に記載の情報処理装置。
(6)
前記移動量に対応する前記仮想空間内の移動量をΔxとし、予め定められた移動量をδxとし、処理回数をMとしたときにδx×M≧|Δx|が満たされるまで、
前記制御部が前記位置情報により示される位置を、移動量Δxの方向と反対方向にδxだけ移動させることで前記位置情報を更新し、更新後の前記位置情報に基づいて前記コンテンツデータの生成を制御する処理と、
前記無線通信部が前記コンテンツデータを前記再生装置に送信する処理と
がM回連続して行われる
(3)に記載の情報処理装置。
(7)
前記再生装置は、前記コンテンツを視聴する前記ユーザに装着される
(2)乃至(6)の何れか一項に記載の情報処理装置。
(8)
前記コンテンツはVRコンテンツである
(7)に記載の情報処理装置。
(9)
前記制御部は、更新後の前記位置情報により示される位置に対応する視点の映像情報を前記コンテンツデータとして生成する
(2)乃至(8)の何れか一項に記載の情報処理装置。
(10)
前記制御部は、更新後の前記位置情報に基づくレンダリング処理により生成された音声情報を前記コンテンツデータとして生成する
(2)乃至(9)の何れか一項に記載の情報処理装置。
(11)
情報処理装置が、
コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽を検出し、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記再生装置の移動量を計算し、
前記移動量に基づいて前記コンテンツデータの生成を制御する
情報処理方法。
(12)
コンテンツデータに基づいてコンテンツを再生する情報処理装置であって、
前記コンテンツデータを送信してくる他の情報処理装置との間の通信路の遮蔽を検出する遮蔽検出部と、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記情報処理装置の移動量を計算する移動計算部と、
無線通信により前記移動量を前記他の情報処理装置に送信する無線通信部と
を備える情報処理装置。
(13)
前記無線通信部は、前記移動量に基づいて生成された、前記他の情報処理装置から送信されてきた前記コンテンツデータを受信する
(12)に記載の情報処理装置。
(14)
前記コンテンツデータは、前記移動量に応じて更新された、前記コンテンツの仮想空間内におけるユーザの位置を示す位置情報に基づいて生成される
(12)に記載の情報処理装置。
(15)
前記移動量に対応する前記仮想空間内の移動量をΔxとしたときに、前記位置情報により示される位置が-Δxだけ移動されるように前記位置情報が更新される
(14)に記載の情報処理装置。
(16)
前記コンテンツデータには、更新後の前記位置情報により示される位置に対応する視点の映像情報が含まれている
(14)または(15)に記載の情報処理装置。
(17)
前記コンテンツデータには、更新後の前記位置情報に基づくレンダリング処理により生成された音声情報が含まれている
(14)乃至(16)の何れか一項に記載の情報処理装置。
(18)
前記情報処理装置は、前記コンテンツを視聴するユーザに装着される
(12)乃至(17)の何れか一項に記載の情報処理装置。
(19)
前記コンテンツはVRコンテンツである
(18)に記載の情報処理装置。
(20)
コンテンツデータに基づいてコンテンツを再生する情報処理装置が、
前記コンテンツデータを送信してくる他の情報処理装置との間の通信路の遮蔽を検出し、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記情報処理装置の移動量を計算し、
無線通信により前記移動量を前記他の情報処理装置に送信する
情報処理方法。
コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽を検出する遮蔽検出部と、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記再生装置の移動量を計算する移動計算部と、
前記移動量に基づいて前記コンテンツデータの生成を制御する制御部と
を備える情報処理装置。
(2)
前記制御部は、前記移動量に基づいて、前記コンテンツの仮想空間内におけるユーザの位置を示す位置情報を更新するとともに、更新後の前記位置情報に基づいて前記コンテンツデータの生成を制御する
(1)に記載の情報処理装置。
(3)
前記コンテンツデータを無線通信により前記再生装置に送信する無線通信部をさらに備える
(2)に記載の情報処理装置。
(4)
前記制御部は、前記移動量に対応する前記仮想空間内の移動量をΔxとしたときに、前記位置情報により示される位置を-Δxだけ移動させることで前記位置情報を更新する
(3)に記載の情報処理装置。
(5)
所定の分割数をNとし、前記移動量に対応する前記仮想空間内の移動量をΔxとしたときに、
前記制御部が前記位置情報により示される位置を-Δx/Nだけ移動させることで前記位置情報を更新し、更新後の前記位置情報に基づいて前記コンテンツデータの生成を制御する処理と、
前記無線通信部が前記コンテンツデータを前記再生装置に送信する処理と
がN回連続して行われる
(3)に記載の情報処理装置。
(6)
前記移動量に対応する前記仮想空間内の移動量をΔxとし、予め定められた移動量をδxとし、処理回数をMとしたときにδx×M≧|Δx|が満たされるまで、
前記制御部が前記位置情報により示される位置を、移動量Δxの方向と反対方向にδxだけ移動させることで前記位置情報を更新し、更新後の前記位置情報に基づいて前記コンテンツデータの生成を制御する処理と、
前記無線通信部が前記コンテンツデータを前記再生装置に送信する処理と
がM回連続して行われる
(3)に記載の情報処理装置。
(7)
前記再生装置は、前記コンテンツを視聴する前記ユーザに装着される
(2)乃至(6)の何れか一項に記載の情報処理装置。
(8)
前記コンテンツはVRコンテンツである
(7)に記載の情報処理装置。
(9)
前記制御部は、更新後の前記位置情報により示される位置に対応する視点の映像情報を前記コンテンツデータとして生成する
(2)乃至(8)の何れか一項に記載の情報処理装置。
(10)
前記制御部は、更新後の前記位置情報に基づくレンダリング処理により生成された音声情報を前記コンテンツデータとして生成する
(2)乃至(9)の何れか一項に記載の情報処理装置。
(11)
情報処理装置が、
コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽を検出し、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記再生装置の移動量を計算し、
前記移動量に基づいて前記コンテンツデータの生成を制御する
情報処理方法。
(12)
コンテンツデータに基づいてコンテンツを再生する情報処理装置であって、
前記コンテンツデータを送信してくる他の情報処理装置との間の通信路の遮蔽を検出する遮蔽検出部と、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記情報処理装置の移動量を計算する移動計算部と、
無線通信により前記移動量を前記他の情報処理装置に送信する無線通信部と
を備える情報処理装置。
(13)
前記無線通信部は、前記移動量に基づいて生成された、前記他の情報処理装置から送信されてきた前記コンテンツデータを受信する
(12)に記載の情報処理装置。
(14)
前記コンテンツデータは、前記移動量に応じて更新された、前記コンテンツの仮想空間内におけるユーザの位置を示す位置情報に基づいて生成される
(12)に記載の情報処理装置。
(15)
前記移動量に対応する前記仮想空間内の移動量をΔxとしたときに、前記位置情報により示される位置が-Δxだけ移動されるように前記位置情報が更新される
(14)に記載の情報処理装置。
(16)
前記コンテンツデータには、更新後の前記位置情報により示される位置に対応する視点の映像情報が含まれている
(14)または(15)に記載の情報処理装置。
(17)
前記コンテンツデータには、更新後の前記位置情報に基づくレンダリング処理により生成された音声情報が含まれている
(14)乃至(16)の何れか一項に記載の情報処理装置。
(18)
前記情報処理装置は、前記コンテンツを視聴するユーザに装着される
(12)乃至(17)の何れか一項に記載の情報処理装置。
(19)
前記コンテンツはVRコンテンツである
(18)に記載の情報処理装置。
(20)
コンテンツデータに基づいてコンテンツを再生する情報処理装置が、
前記コンテンツデータを送信してくる他の情報処理装置との間の通信路の遮蔽を検出し、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記情報処理装置の移動量を計算し、
無線通信により前記移動量を前記他の情報処理装置に送信する
情報処理方法。
51 コンソール, 52 HMD, 81 センサ部, 82 遮蔽検出部, 83 移動計算部, 84 制御部, 85 生成部, 87 エンコーダ部, 88 無線通信部, 111 センサ部, 112 遮蔽検出部, 113 移動計算部, 114 位置姿勢計測部, 115 制御部, 117 無線通信部, 121 映像表示部, 122 スピーカ
Claims (20)
- コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽を検出する遮蔽検出部と、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記再生装置の移動量を計算する移動計算部と、
前記移動量に基づいて前記コンテンツデータの生成を制御する制御部と
を備える情報処理装置。 - 前記制御部は、前記移動量に基づいて、前記コンテンツの仮想空間内におけるユーザの位置を示す位置情報を更新するとともに、更新後の前記位置情報に基づいて前記コンテンツデータの生成を制御する
請求項1に記載の情報処理装置。 - 前記コンテンツデータを無線通信により前記再生装置に送信する無線通信部をさらに備える
請求項2に記載の情報処理装置。 - 前記制御部は、前記移動量に対応する前記仮想空間内の移動量をΔxとしたときに、前記位置情報により示される位置を-Δxだけ移動させることで前記位置情報を更新する
請求項3に記載の情報処理装置。 - 所定の分割数をNとし、前記移動量に対応する前記仮想空間内の移動量をΔxとしたときに、
前記制御部が前記位置情報により示される位置を-Δx/Nだけ移動させることで前記位置情報を更新し、更新後の前記位置情報に基づいて前記コンテンツデータの生成を制御する処理と、
前記無線通信部が前記コンテンツデータを前記再生装置に送信する処理と
がN回連続して行われる
請求項3に記載の情報処理装置。 - 前記移動量に対応する前記仮想空間内の移動量をΔxとし、予め定められた移動量をδxとし、処理回数をMとしたときにδx×M≧|Δx|が満たされるまで、
前記制御部が前記位置情報により示される位置を、移動量Δxの方向と反対方向にδxだけ移動させることで前記位置情報を更新し、更新後の前記位置情報に基づいて前記コンテンツデータの生成を制御する処理と、
前記無線通信部が前記コンテンツデータを前記再生装置に送信する処理と
がM回連続して行われる
請求項3に記載の情報処理装置。 - 前記再生装置は、前記コンテンツを視聴する前記ユーザに装着される
請求項2に記載の情報処理装置。 - 前記コンテンツはVRコンテンツである
請求項7に記載の情報処理装置。 - 前記制御部は、更新後の前記位置情報により示される位置に対応する視点の映像情報を前記コンテンツデータとして生成する
請求項2に記載の情報処理装置。 - 前記制御部は、更新後の前記位置情報に基づくレンダリング処理により生成された音声情報を前記コンテンツデータとして生成する
請求項2に記載の情報処理装置。 - 情報処理装置が、
コンテンツデータに基づいてコンテンツを再生する再生装置との間の通信路の遮蔽を検出し、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記再生装置の移動量を計算し、
前記移動量に基づいて前記コンテンツデータの生成を制御する
情報処理方法。 - コンテンツデータに基づいてコンテンツを再生する情報処理装置であって、
前記コンテンツデータを送信してくる他の情報処理装置との間の通信路の遮蔽を検出する遮蔽検出部と、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記情報処理装置の移動量を計算する移動計算部と、
無線通信により前記移動量を前記他の情報処理装置に送信する無線通信部と
を備える情報処理装置。 - 前記無線通信部は、前記移動量に基づいて生成された、前記他の情報処理装置から送信されてきた前記コンテンツデータを受信する
請求項12に記載の情報処理装置。 - 前記コンテンツデータは、前記移動量に応じて更新された、前記コンテンツの仮想空間内におけるユーザの位置を示す位置情報に基づいて生成される
請求項12に記載の情報処理装置。 - 前記移動量に対応する前記仮想空間内の移動量をΔxとしたときに、前記位置情報により示される位置が-Δxだけ移動されるように前記位置情報が更新される
請求項14に記載の情報処理装置。 - 前記コンテンツデータには、更新後の前記位置情報により示される位置に対応する視点の映像情報が含まれている
請求項14に記載の情報処理装置。 - 前記コンテンツデータには、更新後の前記位置情報に基づくレンダリング処理により生成された音声情報が含まれている
請求項14に記載の情報処理装置。 - 前記情報処理装置は、前記コンテンツを視聴するユーザに装着される
請求項12に記載の情報処理装置。 - 前記コンテンツはVRコンテンツである
請求項18に記載の情報処理装置。 - コンテンツデータに基づいてコンテンツを再生する情報処理装置が、
前記コンテンツデータを送信してくる他の情報処理装置との間の通信路の遮蔽を検出し、
前記通信路の遮蔽が検出された場合、前記遮蔽が生じない位置への前記情報処理装置の移動量を計算し、
無線通信により前記移動量を前記他の情報処理装置に送信する
情報処理方法。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/309,409 US11924708B2 (en) | 2018-12-05 | 2019-11-21 | Information processing device and information processing method |
JP2020559903A JP7363811B2 (ja) | 2018-12-05 | 2019-11-21 | 情報処理装置および方法 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2018228016 | 2018-12-05 | ||
JP2018-228016 | 2018-12-05 |
Publications (1)
Publication Number | Publication Date |
---|---|
WO2020116179A1 true WO2020116179A1 (ja) | 2020-06-11 |
Family
ID=70974139
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP2019/045559 WO2020116179A1 (ja) | 2018-12-05 | 2019-11-21 | 情報処理装置および方法 |
Country Status (3)
Country | Link |
---|---|
US (1) | US11924708B2 (ja) |
JP (1) | JP7363811B2 (ja) |
WO (1) | WO2020116179A1 (ja) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11308662A (ja) * | 1998-02-20 | 1999-11-05 | Hitachi Ltd | 移動体通信システム、基地局及び基地局制御装置 |
JP2011082876A (ja) * | 2009-10-08 | 2011-04-21 | Panasonic Corp | 無線通信装置、無線通信システム、設置支援方法、及び集積回路 |
WO2017099077A1 (ja) * | 2015-12-11 | 2017-06-15 | 株式会社ソニー・インタラクティブエンタテインメント | 通信経路特定装置、ヘッドマウントディスプレイ、通信経路特定方法及びプログラム |
JP2019053644A (ja) * | 2017-09-19 | 2019-04-04 | セイコーエプソン株式会社 | 頭部装着型表示装置、及び頭部装着型表示装置の制御方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999043179A1 (fr) | 1998-02-20 | 1999-08-26 | Hitachi, Ltd. | Systeme de communication mobile, station de base, controleur de station de base et procede de communication mobile |
US9281559B2 (en) | 2011-11-29 | 2016-03-08 | Harris Corporation | Method for directed antenna alignment through augmented reality |
JP5872594B2 (ja) | 2014-01-08 | 2016-03-01 | 株式会社東芝 | 衛星通信システム、およびアンテナ調整方法 |
US10756788B1 (en) * | 2017-09-22 | 2020-08-25 | Apple Inc. | Relay dock and base station with position information based directional wave forming |
-
2019
- 2019-11-21 JP JP2020559903A patent/JP7363811B2/ja active Active
- 2019-11-21 WO PCT/JP2019/045559 patent/WO2020116179A1/ja active Application Filing
- 2019-11-21 US US17/309,409 patent/US11924708B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH11308662A (ja) * | 1998-02-20 | 1999-11-05 | Hitachi Ltd | 移動体通信システム、基地局及び基地局制御装置 |
JP2011082876A (ja) * | 2009-10-08 | 2011-04-21 | Panasonic Corp | 無線通信装置、無線通信システム、設置支援方法、及び集積回路 |
WO2017099077A1 (ja) * | 2015-12-11 | 2017-06-15 | 株式会社ソニー・インタラクティブエンタテインメント | 通信経路特定装置、ヘッドマウントディスプレイ、通信経路特定方法及びプログラム |
JP2019053644A (ja) * | 2017-09-19 | 2019-04-04 | セイコーエプソン株式会社 | 頭部装着型表示装置、及び頭部装着型表示装置の制御方法 |
Also Published As
Publication number | Publication date |
---|---|
US20220038852A1 (en) | 2022-02-03 |
JP7363811B2 (ja) | 2023-10-18 |
JPWO2020116179A1 (ja) | 2021-10-21 |
US11924708B2 (en) | 2024-03-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11202164B2 (en) | Predictive head-tracked binaural audio rendering | |
US20190042182A1 (en) | Multimedia device for processing spatialized audio based on movement | |
EP3584539B1 (en) | Acoustic navigation method | |
US10638247B2 (en) | Audio processing | |
JP6764490B2 (ja) | 媒介現実 | |
WO2017176375A1 (en) | Spatialized audio output based on predicted position data | |
JP2020509492A (ja) | 複合現実デバイスにおける仮想および実オブジェクトの記録 | |
JP2021508426A (ja) | 双方向性拡張または仮想現実装置 | |
US20200150751A1 (en) | Methods, Apparatus, Systems, Computer Programs for Enabling Consumption of Virtual Content for Mediated Reality | |
JP2022517535A (ja) | ヘッドマウントディスプレイ用の無線データ伝送システム | |
US10684678B1 (en) | Method and apparatus for generating mixed reality environment using drone equipped with stereo camera | |
JP2021136465A (ja) | 受信装置、コンテンツ伝送システム、及びプログラム | |
CN110622106A (zh) | 音频处理 | |
US11443487B2 (en) | Methods, apparatus, systems, computer programs for enabling consumption of virtual content for mediated reality | |
US10869156B2 (en) | Audio processing | |
CN116601514A (zh) | 用于使用声信标来确定设备的位置和取向的方法和系统 | |
WO2020116179A1 (ja) | 情報処理装置および方法 | |
EP3255450A1 (en) | A positioning arrangement | |
CN112927718B (zh) | 感知周围环境的方法、装置、终端和存储介质 | |
US10638249B2 (en) | Reproducing apparatus | |
US12035125B2 (en) | Processing of audio data | |
US20240122781A1 (en) | Information processing device, information processing method, and program | |
KR20240039120A (ko) | 음향 처리 장치, 음향 처리 방법, 음향 처리 프로그램 및 음향 처리 시스템 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
121 | Ep: the epo has been informed by wipo that ep was designated in this application |
Ref document number: 19893212 Country of ref document: EP Kind code of ref document: A1 |
|
ENP | Entry into the national phase |
Ref document number: 2020559903 Country of ref document: JP Kind code of ref document: A |
|
NENP | Non-entry into the national phase |
Ref country code: DE |
|
122 | Ep: pct application non-entry in european phase |
Ref document number: 19893212 Country of ref document: EP Kind code of ref document: A1 |