WO2018214697A1 - 图形处理方法、处理器和虚拟现实系统 - Google Patents
图形处理方法、处理器和虚拟现实系统 Download PDFInfo
- Publication number
- WO2018214697A1 WO2018214697A1 PCT/CN2018/084714 CN2018084714W WO2018214697A1 WO 2018214697 A1 WO2018214697 A1 WO 2018214697A1 CN 2018084714 W CN2018084714 W CN 2018084714W WO 2018214697 A1 WO2018214697 A1 WO 2018214697A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- information
- picture
- target
- videos
- image
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Ceased
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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 OR CALCULATING; 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/013—Eye tracking input arrangements
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; 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/015—Input arrangements based on nervous system activity detection, e.g. brain waves [EEG] detection, electromyograms [EMG] detection, electrodermal response detection
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—Three-dimensional [3D] image rendering
- G06T15/005—General purpose rendering architectures
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T15/00—Three-dimensional [3D] image rendering
- G06T15/04—Texture mapping
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/20—Image signal generators
- H04N13/275—Image signal generators from three-dimensional [3D] object models, e.g. computer-generated stereoscopic image signals
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/011—Emotion or mood input determined on the basis of sensed human body parameters such as pulse, heart rate or beat, temperature of skin, facial expressions, iris, voice pitch, brain activity patterns
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/012—Walk-in-place systems for allowing a user to walk in a virtual environment while constraining him to a given position in the physical environment
-
- G—PHYSICS
- G06—COMPUTING OR CALCULATING; COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T2215/00—Indexing scheme for image rendering
- G06T2215/16—Using real world measurements to influence rendering
Definitions
- the present application relates to the field of graphics processing, and more particularly to a graphics processing method, a processor, and a virtual reality system.
- VR modeling technology generates VR scenes mainly based on 3D models to create VR scenes.
- VR scenes are mainly implemented using 3D modeling technology combined with real-time rendering technology.
- the user uses a VR head-mounted display device, such as a VR glasses or a VR helmet, as an observation medium, and integrates into a VR scene to interact with characters or other objects in the VR scene to obtain a real spatial experience.
- the most common ones are, for example, roller coaster VR scenes.
- the embodiment of the present application provides a graphics processing method, including: a graphics processing method, is applied to a computing device, including: acquiring location information of an observer; and determining a target in a virtual reality VR image to be displayed according to the location information. Obtaining at least two images corresponding to the target object stored in advance, the at least two images being images respectively taken from different shooting positions; and shooting positions corresponding to the at least two images according to the position information Generating a target image using the at least two images, the target image being an image of the target object corresponding to the position of the observer; presenting the VR picture, and rendering the target image in the VR picture .
- the embodiment of the present application provides a graphics processing device processor and a memory, where the memory stores computer readable instructions, and the processor may be configured to: obtain position information of an observer; and determine to be displayed according to the location information.
- a target object in the virtual reality VR picture acquiring at least two images corresponding to the target object stored in advance, the at least two images being images respectively taken from different shooting positions; according to the position information and the a shooting position corresponding to the at least two images, the target image is generated by using the at least two images, the target image is an image of the target object corresponding to the position of the observer; the VR screen is displayed, and The target image is rendered in the VR picture.
- the embodiment of the present application provides a graphics processing method, which is applicable to a computing device, including: collecting current posture information of an observer; obtaining location information of the observer according to the posture information; and determining to be displayed according to the location information a target object in the virtual reality VR picture; acquiring at least two images corresponding to the target object stored in advance, the at least two images being images respectively taken from different shooting positions; according to the position information and the a shooting position corresponding to the at least two images, the target image is generated by using the at least two images, the target image is an image of the target object corresponding to the position of the observer; the VR screen is displayed, and The target image is rendered in the VR picture.
- the embodiment of the present application provides a virtual reality VR system, including a gesture collection device, a processing device, and a display device: the gesture collection device is configured to: collect current posture information of an observer; and the processing device is configured to: according to the Position information, obtaining position information of the observer; determining a target object in the virtual reality VR picture to be displayed according to the position information; acquiring at least two images corresponding to the target object stored in advance, the at least two The images are images respectively taken from different shooting positions; according to the position information and the shooting positions corresponding to the at least two images, a target image is generated using the at least two images, the target image being the observer's An image of the target object corresponding to the location; the display device is configured to display the VR picture and render the target image in the VR picture.
- the gesture collection device is configured to: collect current posture information of an observer
- the processing device is configured to: according to the Position information, obtaining position information of the observer; determining a target object in the virtual reality VR picture to be displayed according
- the embodiment of the present application provides a computer storage medium on which an instruction is stored, and when the instruction is run on a computer, the computer is caused to execute the method described in the embodiment of the present application.
- the embodiment of the present application provides a computer storage medium on which an instruction is stored, and when the instruction is run on a computer, the computer is caused to execute the method described in the embodiment of the present application.
- the embodiment of the present application provides a computer program product including instructions.
- the computer runs the finger of the computer program product, the computer executes the method described in the embodiment of the present application.
- the embodiment of the present application provides a computer program product including instructions.
- the computer runs the finger of the computer program product, the computer executes the method described in the embodiment of the present application.
- FIG. 1 is a schematic diagram of a VR system according to an embodiment of the present application.
- FIG. 2 is a schematic flowchart of a graphics processing method according to an embodiment of the present application.
- FIG. 3 is a schematic flowchart of a graphics processing method according to an embodiment of the present application.
- FIG. 4 is a schematic diagram of a scenario that needs to be presented in an embodiment of the present application.
- FIG. 5 is a schematic diagram of a scene for performing pre-shooting according to an embodiment of the present application.
- FIG. 6 is a schematic diagram of a video obtained at different shooting positions according to an embodiment of the present application.
- FIG. 7 is a schematic diagram of determining a target video according to an embodiment of the present application.
- FIG. 8 is a schematic diagram of a presentation target video according to an embodiment of the present application.
- FIG. 9A is a schematic structural diagram of a computing device where a graphics processing apparatus according to an embodiment of the present application is located.
- FIG. 9A is a schematic structural diagram of a computing device where a graphics processing apparatus according to an embodiment of the present application is located.
- 9B is a schematic block diagram of a processor of one embodiment of the present application.
- FIG. 10 is a schematic diagram of a virtual reality system according to an embodiment of the present application.
- FIG. 11 is a schematic diagram of a virtual reality system of another embodiment of the present application.
- the embodiment of the present application provides a graphics processing method, apparatus, and VR system.
- the methods and devices of the embodiments of the present application are applied to the field of VR scenarios, for example, can be applied to the field of VR games, and can also be applied to other interactive scenarios, such as interactive VR movies, interactive VR concerts.
- the embodiments of the present application do not limit this.
- real-time rendering technology involved in various embodiments of the present application.
- the essence of real-time rendering technology is the real-time calculation and output of graphics data. Its biggest feature is real time.
- processors in personal computers (PCs), workstations, game consoles, mobile devices, or VR systems operate at least 24 frames per second. In other words, rendering an image of a screen should be at least 1/24 of a second. In actual 3D games, the frame number per second requirement is higher. It is because of the real-time nature of real-time rendering that it is possible to achieve consistent play of 3D games and to enable users to interact with characters or other objects in the game scene in 3D games.
- the real-time rendering of the embodiments of the present application may be implemented by a central processing unit (CPU) or a graphics processing unit (GPU), which is not limited in this embodiment of the present application.
- the GPU is a processor dedicated to image computing operations, which may be present in a graphics card, also known as a display core, a visual processor, or a display chip.
- FIG. 1 is a schematic diagram of a VR system according to an embodiment of the present application. As shown in FIG. 1, the system includes a VR head display device 101 and a computing device 102.
- the VR head display device 101 may be a VR glasses or a VR helmet or the like, and may include an angle sensor 1011, a signal processor 1012, a data transmitter 1013, and a display 1014.
- the angle sensor 1011 can collect the posture information of the observer.
- the computing device 102 can be a smart terminal device such as a personal computer (PC), a notebook computer, or a smart mobile terminal device such as a smart phone, a PAD, or a tablet computer, and can include a CPU and a GPU for calculating and rendering an observation image, and The observation screen is sent to the display 1014 for display.
- Signal processor 1012 and data transmitter 1013 are primarily used for communication between VR head-display device 101 and computing device 102.
- the VR system of the embodiments of the present application may further include: a camera 103 for video of an object within the VR scene taken from a plurality of different shooting positions.
- FIG. 2 is a flowchart of a graphics processing method 200 provided by an embodiment of the present application, which is performed by a computing device 102 in a VR system. As shown in FIG. 2, the method includes the following steps:
- Step 201 Obtain the position information of the observer.
- the observer's left eye position information, right eye position information, left eye orientation information, and right eye orientation information are acquired.
- the left eye position information, the right eye position information, the left eye orientation information, and the right eye orientation information are determined according to the collected current posture information of the user, and the posture information includes a head posture.
- Step 202 Determine a target object in the virtual reality VR picture to be displayed according to the location information.
- the target object can be a character.
- the character is an object that is desired to be improved in its authenticity, that is, the target object.
- each scene or multiple scenes may have a target object list, and when the VR scene is generated, the target object in the target scene is found according to the target object list.
- the target object list For example, in the game design of the VR scene, it is stipulated that the person at the close scene (the scene within a certain range of the user) is the target object, and the object other than the person at the close scene is not the target object, and the distant scene (the scene outside the certain range of the user) All objects at ) are not target objects, and so on. Determining the target object in the scene can be performed by the processing device 34, for example, by the CPU in the processing device 34, which is not limited by the embodiment of the present application.
- Step 203 Acquire at least two images corresponding to the target object stored in advance, and the at least two images are images respectively taken from different shooting positions.
- a video frame corresponding to the time information in each video is determined as the image from a plurality of pre-captured videos according to time information of the VR picture to be displayed, wherein the VR picture
- the time information can be the current time of the VR picture.
- Step 204 Generate a target image by using the at least two images according to the location information and the shooting position corresponding to the at least two images, where the target image is an image of the target object corresponding to the position of the observer. .
- the target image is rendered onto a first predetermined texture in the VR picture, wherein the first predetermined texture is based on an artboard patch technique.
- the plurality of videos are videos that include only the target object after the original video of the plurality of videos is transparently processed, wherein the target object may be a character.
- At least one video is selected from the left and right sides of the average position, and a video frame corresponding to the time information is selected from the selected at least one video as the image.
- the time information may be current time information of the VR picture, and the image may be interpolated to obtain the target image according to a spatial positional relationship between the average position and the shooting positions of the at least two videos.
- the determining the target image averaging the left eye position information and the right eye position information to obtain an average position; according to the average position, from the pre-shooting
- the target video is selected from the video, wherein the distance between the shooting position of the target video and the average position is the smallest of the spatial distances between the shooting position of the plurality of pre-captured videos and the average position;
- One video frame is selected from the target video, and the video frame is used as the target image.
- the time information may be current time information of the VR screen.
- Step 205 Display the VR picture and render the target image in the VR picture.
- determining the left eye frame according to the left eye position information and the left eye orientation information determining the right eye frame according to the right eye position information and the right eye orientation information; Rendering the left eye image in real time with the left eye orientation information and the target image, and rendering the target image in the left eye image; rendering the right image in real time according to the right eye orientation information and the target image An eye picture, and the target image is rendered in the right eye picture.
- the technical solution of the embodiment of the present application may determine a target object in the virtual reality VR picture to be displayed according to the position information of the observer; and acquire at least two images corresponding to the target object stored in advance, where the at least two images are Images respectively taken from different shooting positions; generating a target image using the at least two images according to the position information and the shooting position corresponding to the at least two images, the target image being the position corresponding to the observer An image of the target object; presenting the VR picture and rendering the target image in the VR picture.
- the VR picture can realistically display the real scene, and provide the user with a real sense of presence on the basis of maintaining the interactivity of the entire VR scene, thereby improving the user experience.
- the method 300 is performed by the VR system 30.
- the VR system 30 can include a gesture collection device 32, a processing device 34, and a display device 36.
- the method 300 can include the following steps.
- S310 Collect current user posture information. It should be understood that S310 can be performed by gesture collection device 32.
- S340 Determine a target video according to the left eye position information, the right eye position information, and the plurality of pre-captured videos, wherein the plurality of videos are videos respectively taken from different shooting positions.
- S350 Render a left eye picture in real time according to the left eye orientation information, the target three-dimensional model, and the target video.
- S320 through S360 can be performed by processing device 34.
- S370 can be performed by display device 36.
- the graphics processing method of the embodiment of the present application collects the posture information of the user to determine the position of the left and right eyes of the user, determines the target three-dimensional model according to the position information of the left and right eyes of the user, and determines the target video according to the plurality of pre-captured videos, and performs real-time rendering.
- the rendering method respectively renders the left-eye image and the right-eye image to display the VR scene, wherein the VR scene includes the image of the target three-dimensional model and the image of the target video, and the target video can realistically display the reality scene while maintaining the entire VR scene.
- the VR scene includes the image of the target three-dimensional model and the image of the target video
- the target video can realistically display the reality scene while maintaining the entire VR scene.
- On the basis of interactivity it provides users with a real sense of presence, which can enhance the user experience.
- VR system 30 includes a VR head display device, and display device 36 can be integrated into the VR head display device.
- the processing device 34 and/or the gesture collecting device 32 of the embodiment of the present application may be integrated in the VR head display device, or may be separately deployed independently of the VR head display device, wherein the VR head display device may be a VR head mounted display device.
- VR glasses or VR helmets For example, VR glasses or VR helmets.
- the gesture collection device 32, the processing device 34, and the display device 36 may be connected by wire or by wireless communication, which is not limited by the embodiment of the present application.
- the gesture collection device 32 collects the current posture information of the user.
- Gesture collection device 32 may include a VR head mounted display device, such as a sensor in a VR glasses or VR helmet.
- the sensor may include a photosensitive sensor, such as an infrared sensor, a camera, etc.; the sensor may also include a force sensitive sensor, such as a gyroscope, etc.; the sensor may also include a magnetic sensor, such as a brain-computer interface, etc.; the sensor may also include an acoustic sensor, etc.
- the specific embodiment of the sensor is not limited in the application embodiment.
- the sensor in the VR head mounted display device may collect at least one of a user's current head posture information, eye tracking information, skin sensing information, muscle electrical stimulation information, and brain signal information. Then, the processing device 34 can determine the left eye position information, the right eye position information, the left eye orientation information, and the right eye orientation information of the user based on the information.
- the user's perspective refers to the azimuth of the user's human eye's line of sight direction in the virtual space, including the position and orientation of the human eye.
- the user's perspective can change as the user's head changes in the posture in real space.
- the change in the perspective of the user in the virtual space is the same as the change in the posture of the user's head in the real space.
- the user's perspective includes the left eye view and the right eye view, that is, the left eye position, the right eye position, the left eye orientation, and the right eye orientation of the user.
- the sensor on the VR head display device worn by the user can sense the movement of the head, the movement, and the posture thereof during the process of using the VR head display device, and solve the motions.
- Obtaining related head posture information for example, speed, angle, and the like of the motion
- the processing device 34 can determine the left eye position information, the right eye position information, the left eye orientation information, and the right eye orientation of the user according to the obtained head posture information. information.
- the gesture collection device 32 may further include a positioner, a manipulation handle, a somatosensory glove, a somatosensory garment, and a dynamic device such as a treadmill, etc., for collecting posture information of the user, and then processed by the processing device 34 to obtain the left eye position information of the user, Right eye position information, left eye orientation information, and right eye orientation information.
- the posture collecting device 32 can collect the user's limb posture information, trunk posture information, muscle electrical stimulation information, skin sensing information, motion sensing information, and the like through a manipulation handle, a somatosensory glove, a somatosensory garment, and a treadmill.
- one or more locators may be provided on the VR head display device for monitoring the position of the user's head (which may include height), orientation, and the like.
- the user may be provided with a positioning system in the real space where the VR head display device is located, and the positioning system may perform positioning communication with one or more locators on the VR head display device worn by the user to determine the reality of the user.
- Attitude information such as specific position (which may include height), orientation, etc. in space. then.
- the above-described posture information may be converted by the processing device 34 into information such as a relevant position (which may include height), orientation, and the like of the user's head in the virtual space. That is, the processing device 34 obtains the user's left eye position information, right eye position information, left eye orientation information, and right eye orientation information.
- left eye position information and the right eye position information of the embodiment of the present application may be represented by coordinate values in a coordinate system; the left eye orientation information and the right eye orientation information may be represented by a vector in a coordinate system.
- this embodiment of the present application does not limit this.
- the gesture collection device 32 sends the gesture information to the processing device 34 through wired communication or wireless communication after the gesture information is collected, which is not described herein.
- the embodiment of the present application may also collect the posture information of the user by other means, and obtain and/or represent the left eye position information, the right eye position information, the left eye orientation information, and the right eye orientation information by using other methods.
- the specific embodiments are not limited to the specific embodiments.
- a location is designed to correspond to a group of objects.
- the object corresponding to the left eye position LE and the right eye position RE of the user respectively is as shown in FIG.
- the user's left eye position corresponds to the object L41, the object 43, the object 44, the object 46, and the character 42
- the user's right eye position corresponds to the object R45, the object 43, the object 44, the object 46, and the character 42.
- the character 42 is an object that is desired to be improved in its authenticity, and is a target object.
- determining which object in the object group corresponding to the left eye position or the right eye position of the user is the target object may be based on the design of the VR scene.
- each scene or multiple scenes may have a target object list, and when the VR scene is generated, the target object in the target scene is found according to the target object list.
- the person at the close scene (the scene within a certain range of the user) is the target object, and the object other than the person at the close scene is not the target object, and the distant scene (the scene outside the certain range of the user) All objects at ) are not target objects, and so on.
- Determining the target object in the scene can be performed by the processing device 34, for example, by the CPU in the processing device 34, which is not limited by the embodiment of the present application.
- the target object may be generated in advance by 3D modeling to be stored in the 3D model library.
- the 3D models of the object L41, the object 43, the object 44, the object R45, and the object 46 shown in FIG. 4 are all stored in the 3D model library.
- the processing device 34 obtains the left eye position information and the right eye position information
- the target three-dimensional model that is, the object L41, the object 43, the object 44, the object R45, and the object 46 are determined from the 3D model library.
- 3D model for subsequent rendering can also be determined by other means, which is not limited by the embodiment of the present application.
- the character 42 in the VR scene shown in FIG. 4 is generated based on a plurality of videos taken in advance.
- the plurality of videos are videos including target objects respectively taken from different shooting positions.
- FIG. 5 shows a schematic diagram of a pre-taken scene.
- the scene to be photographed includes the character 42, the object 52, and the object 54, and the scene to be photographed is as close as possible to the case of the finally displayed VR scene to increase the sense of reality.
- multiple shooting devices can be placed in the horizontal direction, respectively, from the shooting position C 1 , the shooting position C 2 and the shooting position C 3 , and the original video of the character at different shooting positions can be obtained as shown in FIG. 6 . Show.
- shooting may be performed on a circumference having a certain radius from the target object when the video is captured in advance.
- the more and more dense the shooting position is selected on the circumference the greater the probability of selecting the same or similar to the left eye position or the right eye position of the user, and the final selected or calculated target video is placed in the VR scene.
- the authenticity is also higher.
- the shooting position when the pre-shooting video is taken may be formed on a straight line or a circle having a certain radius from the target object, and the shooting position may also be a plane or a curved surface or even a different position in the three-dimensional space, thereby achieving 360 degrees. Panorama.
- the plurality of videos may be videos including only the target object after the original video is transparently processed. Specifically, it is possible to separate the person 42 from the object 52 and the object 54 constituting the background among the three videos respectively photographed from the three shooting positions, and to obtain three videos including only the person 42.
- the three videos are videos that are the same length of time at the same time.
- the transparent processing may be a processing based on an alpha (alpha) transparent technology.
- the alpha value is used to record the transparency of the pixels so that the objects can have different degrees of transparency.
- the target object person 42 in the original video may be processed as opaque, and the object 52 and the object 54 constituting the background are processed to be transparent.
- the S340 determines the target video according to the left eye position information, the right eye position information, and the plurality of pre-captured videos, and may include: the left eye position information and the right eye position.
- the information is averaged to obtain an average position; and the target video is selected from the plurality of videos according to the average position, wherein a distance between a shooting position of the target video and the average position is the plurality of The closest of all the shooting positions of the video to the average position.
- the left eye position, the right eye position, and the shooting position may be uniformly represented as coordinates of the virtual space in the VR scene, for example, coordinates of the x-axis, y-axis, and z-axis three-axis coordinate system or Ball coordinates.
- the left eye position, the right eye position, and the shooting position may also be represented in other forms, which is not limited in the embodiment of the present application.
- the left eye position information and the right eye position information are averaged to obtain an average position.
- the left eye position is (x 1 , y 1 , z 1 )
- the right eye position is (x 2 , y 2 , z 2 )
- the average position is ((x 1 +x) 2 )/2, (y 1 + y 2 )/2, (z 1 + z 2 )/2).
- the video whose shooting position is closest to the average position is selected from the plurality of videos as the target video.
- the closest position of the shooting position of the target video to the average position can be understood as the shooting position of the target video (x t , y t , z t ).
- the distance from the average position ((x 1 + x 2 )/2, (y 1 + y 2 )/2, (z 1 + z 2 )/2) needs to be less than the preset threshold, that is, the shooting position of the target video is guaranteed.
- the distance from the average position is small enough.
- the shooting position of the target video is closest to the average position, and it can be understood that the line segment composed of the average position and the target object and the shooting position of the target video and the target object constitute The angle between the line segments is the smallest angle between the line segment formed by the average position and the target object and the line segment formed by all the shooting positions and the target object.
- the S340 determines the target video according to the left eye position information, the right eye position information, and the plurality of pre-captured videos, and may include: the left eye position information and the right eye.
- the position information is averaged to obtain an average position; according to the average position, at least two videos are selected from the plurality of videos; and each of the at least two videos is extracted at a corresponding time And performing interpolation on the at least two video frames according to the average position and the shooting positions of the at least two videos to obtain the target video.
- At least one shooting position of the left and right eye positions of the user may be selected, and a video taken by at least one of the left and right shooting positions is selected from the plurality of videos as a reference for calculating the target video. Intercepting at least two video frames at the same time to perform interpolation calculation to obtain a target video.
- selecting at least two videos from the plurality of videos may be the selected and average positions ((x 1 + x 2 )/2, ( y 1 + y 2 )/2, (z 1 + z 2 )/2) at least two videos with the smallest distance. At least one of the shooting positions of at least two videos is distributed on the left side of the average position, and at least one is distributed on the right side of the average position.
- selecting at least two videos from the plurality of videos may be a line segment composed of the average position and the target object and a shooting position of the at least two videos and the target object.
- the angle between the formed line segments is the smallest of the angles between the average position and the line segment formed by the target object and the line segment formed by all the shooting positions and the target object.
- At least one of the shooting positions of at least two videos is distributed on the left side of the average position, and at least one is distributed on the right side of the average position.
- the video as a reference may also be selected according to other criteria, and the embodiment of the present application does not limit the play.
- the video captured at different shooting positions represents different viewing positions when viewing the target object (eg, the character 42).
- the video frames corresponding to the three videos shown in FIG. 6 at the same physical moment are images viewed at different viewing positions.
- the three shooting angles can correspond to three shooting positions C 1 , C 2 and C 3 , respectively .
- a plurality of sets of photos (or groups of images) of the target object are photographed in advance from a plurality of shooting positions.
- at least two images corresponding to at least two shooting positions are found from the plurality of sets of images, and at least two images are interpolated to obtain Target image.
- the specific interpolation algorithm will be described in detail below.
- FIG. 7 is a schematic diagram of determining a target video according to an embodiment of the present application. According to the average position, at least two videos are selected from the plurality of videos, and each of the at least two videos is extracted at a corresponding time, and at least two are selected according to the average position and the shooting positions of the at least two videos.
- the video frames are interpolated, and the specific process of obtaining the target video can be as shown in FIG. 7.
- the viewing position may change. For example, when the user faces the VR scene, the viewing position may move in the left and right direction.
- the three shooting positions are C 1 , C 2 and C 3 , respectively .
- C 1 , C 2 , and C 3 may be represented by the coordinate values of the three-dimensional Cartesian coordinate system, or may be represented by the coordinate values of the spherical coordinate system, and may be represented by other means, which is not limited by the embodiment of the present application.
- the average position Cview when the user observes can be determined. As shown in FIG 7, the average position between C 1 and C view in C 2.
- the video photographed in advance at the shooting positions C 1 and C 2 is selected as a reference.
- the video photographed in advance at the shooting positions C 1 and C 2 is selected as a reference.
- the corresponding video frame I1 and I2 may be linear Interpolation.
- the weight of the interpolation depends on the distance between the average position C view and C 1 and C 2 .
- the video frame of the output target video I out I1 * (1 - (C 1 - C view / C 1 - C 2 )) + I2 * (1 - (C 2 - C view / C 1 - C 2 )).
- the embodiment of the present application is described by taking a target object as a character as an example.
- the target object may also be an animal that requires authenticity, even a building or a plant, etc., which is not limited by the embodiment of the present application.
- the S350 may render the left-eye image in real time according to the left-eye orientation information, the target three-dimensional model, and the target video, and may include: performing the target according to the left-eye orientation information. Rendering the three-dimensional model onto the first texture; rendering the target video onto the second texture according to the left-eye orientation information, wherein the first texture may be a background of the left-eye image, the second The texture is based on the advertisement panel patch technology; the S360 renders the right eye image in real time according to the right eye orientation information, the target three-dimensional model, and the target video, and may include: the target three-dimensional according to the right eye orientation information Rendering the model onto the third texture; rendering the target video onto the fourth texture according to the right eye orientation information, wherein the third texture may be a background of the right eye image, the fourth texture It is based on the technology of the advertising board.
- the processing device 34 e.g., the CPU therein
- the processing device 34 determines a left eye picture that should be presented based on the left eye orientation information; and determines a right eye picture that should be presented based on the right eye orientation information. For example, in the scene shown in FIG.
- the object L41, the object 43, the object 44, and the person 42 in the left-eye picture are determined; according to the right-eye orientation information (for the person 42), It is determined that the object 43, the object 44, the object R45, and the person 42 are present in the right eye picture.
- Processing device 34 (eg, a GPU therein) renders target three-dimensional model object L41, object 43 and object 44 onto first texture 82 of left-eye picture L800, and renders the target video to second texture of left-eye picture L800 84;
- the target three-dimensional model object 43, object 44, and object R45 are rendered onto the third texture 86 of the right eye frame R800, and the target video is rendered onto the fourth texture 88 of the right eye frame R800.
- a billboard panel may be set at a position of the target object of the screen, and a target video may be presented on the billboard panel.
- Advertising board technology is a method of rapid drawing in the field of computer graphics. In the case of similar real-time requirements like 3D games, the use of advertising board technology can greatly speed up the drawing and improve the fluency of 3D game graphics.
- the billboard technology is to represent the object in 2D in a 3D scene, so that the object is always facing the user.
- the panel of the advertisement board may have an inclination angle on the left eye screen, and the specific parameter of the inclination angle may be calculated according to the left eye position information;
- the advertisement panel patch may have an inclination angle on the right eye screen, and the specific parameters of the inclination angle may be according to The right eye position information is calculated.
- the VR scene is rendered in real time, at any time, it can be considered that the aforementioned video frame obtained by interpolation is presented at the position of the target object. In a continuous period of time change of the scene, it can be equivalent to playing the video on the panel of the advertisement board.
- an advertisement panel is set at a position corresponding to the target object, and each frame of the video is drawn as a texture of the texture to the texture of the advertisement panel, and each frame of the video is always facing the user. of.
- depth rendering techniques can be employed in conjunction with billboard technology when rendering left eye and right eye images.
- the depth buffering technique helps the target object form an occlusion relationship and a proportional relationship with other objects according to the distance.
- other technologies may be used to render the target video, which is not limited in this embodiment of the present application.
- the embodiment of the present application further provides a graphics processing method, including steps S320 to S360, where the method is performed by a processor.
- FIGS. 9A, 9B, and 10 The graphics processing method according to an embodiment of the present application has been described in detail above with reference to FIGS. 1 through 8.
- An apparatus, a processor, and a VR system according to embodiments of the present application will be described in detail below with reference to FIGS. 9A, 9B, and 10.
- FIG. 9A is a schematic structural diagram of a computing device used in a graphics processing method according to an embodiment of the present application.
- the computing device 900 includes a processor 901, a non-volatile computer readable memory 902, an I/O interface 903, a display interface 904, and a network communication interface 905. These components communicate over bus 906.
- a plurality of program modules are stored in the memory 902: an operating system 907, an I/O module 908, a communication module 909, and an image processing device 900A.
- the processor 901 can read the computer readable instructions corresponding to the image processing device 900A in the memory 902 to implement the solution provided by the embodiment of the present application.
- the I/O interface 903 can be connected to an input/output device.
- the I/O interface 903 transmits the input data received from the input device to the I/O module 908 for processing, and transmits the data output by the I/O module 908 to the output device.
- the network communication interface 905 can transmit data received from the communication bus 906 to the communication module 909 and transmit the data received from the communication module 909 over the communication bus 906.
- the computer readable instructions corresponding to the image processing apparatus 900A stored in the memory 902 may cause the processor 901 to perform: acquiring position information of an observer; and determining a virtual reality to be displayed according to the location information.
- a target object in the VR picture acquiring at least two images corresponding to the target object stored in advance, the at least two images being images respectively taken from different shooting positions; according to the position information and the at least two a shooting position corresponding to the image, the target image is generated by using the at least two images, the target image is an image of the target object corresponding to the position of the observer; the VR screen is displayed, and in the VR screen Render the target image.
- the instruction may cause the processor 901 to: determine, according to time information of the VR picture to be displayed, a video frame corresponding to the time information in each video from a plurality of pre-captured videos as The image.
- the instructions may cause the processor 901 to: render the target image onto a first predetermined texture in the VR picture, wherein the first predetermined texture is based on an advertising board surface Piece of technology.
- the instructions may cause the processor 901 to: acquire left eye position information, right eye position information, left eye orientation information, and right eye orientation information of the observer; wherein the VR screen a left eye picture and a right eye picture are included; the left eye picture is determined according to the left eye position information and the left eye orientation information; and the right eye picture is determined according to the right eye position information and the right eye orientation information And rendering the left eye image in real time according to the left eye orientation information and the target image, and rendering the target image in the left eye image; according to the right eye orientation information and the target image, real time The right eye picture is rendered and the target image is rendered in the right eye picture.
- the instructions may cause the processor 901 to: determine a first object in the VR picture according to the location information; and determine a target three-dimensional model corresponding to the first object from a three-dimensional model library And rendering the three-dimensional model onto a second predetermined texture of the VR picture.
- the instructions may cause the processor 901 to: average the left eye position information and the right eye position information to obtain an average position; according to the average position, from the pre-photographed Selecting at least two videos from the plurality of videos, the plurality of videos being captured from different shooting positions; selecting one video frame from each of the at least two videos as the image; A spatial positional relationship between the position and the photographing position of the at least two videos, the image being operated to obtain the target image.
- the instructions may cause the processor 901 to: average the left eye position information and the right eye position information to obtain an average position; according to the average position, from the pre-photographed Selecting a target video from the plurality of videos, wherein a distance between a shooting position of the target video and the average position is the smallest of a spatial distance from the average position among the shooting positions of the plurality of pre-captured videos; A video frame is selected from the target video, and the video frame is used as the target image.
- the plurality of videos are videos that include only the target object after the original video of the plurality of videos is transparently processed, the target object being a character.
- the left eye position information, the right eye position information, the left eye orientation information, and the right eye orientation information are determined according to the collected current posture information of the user.
- the posture information includes at least one of head posture information, limb posture information, torso posture information, muscle electrical stimulation information, eye tracking information, skin sensing information, motion sensing information, and brain signal information.
- FIG. 9B is a schematic block diagram of a processor 900BB according to an embodiment of the present application.
- Processor 900B may correspond to processing device 34 as previously described.
- the processor 900B can include an acquisition module 910, a calculation module 920, and a rendering module 930.
- the obtaining module 910 is configured to acquire left eye position information, right eye position information, left eye orientation information, and right eye orientation information of the user.
- the calculating module 920 is configured to determine a target three-dimensional model from the three-dimensional model library according to the left-eye position information and the right-eye position information acquired by the acquiring module, and the calculating module 920 is further configured to use the left-eye position information according to the left eye position information.
- the right eye position information and a plurality of pre-captured videos determine a target video, wherein the plurality of videos are videos respectively taken from different shooting positions.
- the rendering module 930 is configured to render a left eye image in real time according to the left eye orientation information, the target three-dimensional model, and the target video; the rendering module 930 is further configured to use the right eye orientation information, the target three-dimensional model, and the target video. Rendering a right eye picture in real time; wherein the left eye picture and the right eye picture are displayed on a virtual reality VR display, and the VR scene includes an image of the target three-dimensional model and the target video Image.
- the graphics processing apparatus of the embodiment of the present application determines a target three-dimensional model according to location information of the left and right eyes of the user, and determines a target video according to a plurality of pre-captured videos, and respectively renders a left-eye image and a right-eye image by using a real-time rendering method.
- the VR scene is displayed, wherein the VR scene includes an image of the target three-dimensional model and an image of the target video, and the target video can realistically display the real scene, and provide the user with a real presence on the basis of maintaining the interactivity of the entire VR scene. Sense, which can enhance the user experience.
- the rendering module 930 may be configured to: render the target three-dimensional model onto the first texture according to the left-eye orientation information; according to the left-eye orientation information, Rendering the target video onto the second texture, wherein the second texture is based on an advertisement panel patch technique; rendering the target three-dimensional model onto the third texture according to the right eye orientation information; The right eye orientation information is rendered onto the fourth texture, wherein the fourth texture is based on an artboard patch technique.
- the calculating module 920 determines the target video according to the left eye position information, the right eye position information, and the plurality of pre-captured videos, and may include: the left eye position information. And averaging the right eye position information to obtain an average position; selecting at least two videos from the plurality of videos according to the average position; and correspondingly corresponding to each of the at least two videos at corresponding moments The video frame is extracted; and the at least two video frames are interpolated according to the average position and the shooting positions of the at least two videos to obtain the target video.
- the calculating module 920 determines the target video according to the left eye position information, the right eye position information, and the plurality of pre-captured videos, and may include: the left eye position information. And averaging the right eye position information to obtain an average position; and selecting, according to the average position, the target video from the plurality of videos, wherein a shooting position of the target video and the average position The distance is the closest to the average position among all the shooting positions of the plurality of videos.
- the multiple videos are videos that only include the target object after the original video is transparently processed.
- the target object is a character.
- the left eye position information, the right eye position information, the left eye orientation information, and the right eye orientation information acquired by the acquiring module 910 are according to the collected The user's current posture information is determined.
- the posture information includes at least one of head posture information, limb posture information, trunk posture information, muscle electrical stimulation information, eyeball tracking information, skin sensing information, motion sensing information, and brain signal information.
- the processor 900B may be a CPU or a GPU.
- the processor 900B may also include both the functions of the CPU and the functions of the GPU.
- the functions of the acquisition module 910 and the calculation module 920 (S320 to S340) are executed by the CPU, and the functions of the rendering module 930 (S350 and S360) are performed by the GPU. This embodiment of the present application does not limit this.
- FIG. 10 is a schematic diagram of a VR system according to an embodiment of the present application. Shown in FIG. 10 is a VR helmet 1000 that may include a head tracker 1010, a CPU 1020, a GPU 1030, and a display 1040. Wherein, the head tracker 1010 corresponds to the gesture collecting device, the CPU 1020 and the GPU 1030 correspond to the processing device, and the display 1040 corresponds to the display device, where the functions of the head tracker 1010, the CPU 1020, the GPU 1030 and the display 1040 are not Let me repeat.
- the head tracker 1010 corresponds to the gesture collecting device
- the CPU 1020 and the GPU 1030 correspond to the processing device
- the display 1040 corresponds to the display device, where the functions of the head tracker 1010, the CPU 1020, the GPU 1030 and the display 1040 are not Let me repeat.
- the head tracker 1010, CPU 1020, GPU 1030, and display 1040 shown in FIG. 10 are integrated in the VR helmet 1000. There may be other gesture collection devices on the outside of the VR helmet 1000, and the posture information of the user is collected and sent to the CPU 1020 for processing, which is not limited in the embodiment of the present application.
- FIG. 11 is a schematic diagram of another VR system of an embodiment of the present application.
- FIG. 11 shows a VR system composed of VR glasses 1110 and a host 1120.
- the VR glasses 1110 may include an angle sensor 1112, a signal processor 1114, a data transmitter 1116, and a display 1118.
- the angle sensor 1112 corresponds to the gesture collection device
- the host 1120 includes a CPU and a GPU corresponding to the processing device to calculate and render the screen
- the display 1118 corresponds to the display device.
- the angle sensor 1112 collects the posture information of the user, transmits the posture information to the host 1120 for processing, and the host 1120 calculates and renders the left eye screen and the right eye screen, and transmits the left eye screen and the right eye screen to the display 1118 for display.
- Signal processor 1114 and data transmitter 1116 are primarily used for communication between VR glasses 1110 and host 1120.
- posture collection devices may be provided outside the VR glasses 1110, and the posture information of the user is collected and sent to the host 1120 for processing. This embodiment of the present application does not limit this.
- the virtual reality system of the embodiment of the present application collects the posture information of the user to determine the position of the left and right eyes of the user, determines the target three-dimensional model according to the position information of the left and right eyes of the user, and determines the target video according to the plurality of pre-captured videos, and performs real-time rendering.
- the rendering method respectively renders the left-eye image and the right-eye image to display the VR scene, wherein the VR scene includes the image of the target three-dimensional model and the image of the target video, and the target video can realistically display the reality scene while maintaining the entire VR scene.
- the VR scene includes the image of the target three-dimensional model and the image of the target video
- the target video can realistically display the reality scene while maintaining the entire VR scene.
- On the basis of interactivity it provides users with a real sense of presence, which can enhance the user experience.
- the embodiment of the present application further provides a computer readable storage medium having stored thereon instructions that, when executed on a computer, cause the computer to execute the graphics processing method of the foregoing method embodiment.
- the computer may be the above VR system or a processor.
- the embodiment of the present application further provides a computer program product comprising instructions, wherein when the computer runs the finger of the computer program product, the computer executes the graphic processing method of the method embodiment.
- the computer program product can be run in a VR system or processor.
- the computer program product includes one or more computer instructions.
- the computer can be a general purpose computer, a special purpose computer, a computer network, or other programmable device.
- the computer instructions can be stored in a computer readable storage medium or transferred from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions can be from a website site, computer, server or data center Transmission to another website site, computer, server, or data center by wire (eg, coaxial cable, fiber optic, Digital Subscriber Line (DSL)) or wireless (eg, infrared, wireless, microwave, etc.).
- the computer readable storage medium can be any available media that can be accessed by a computer or a data storage device such as a server, data center, or the like that includes one or more available media.
- the usable medium may be a magnetic medium (for example, a floppy disk, a hard disk, a magnetic tape), an optical medium (for example, a high-density digital video disc (DVD)), or a semiconductor medium (for example, a solid state hard disk (Solid State Disk, SSD)) and so on.
- a magnetic medium for example, a floppy disk, a hard disk, a magnetic tape
- an optical medium for example, a high-density digital video disc (DVD)
- DVD high-density digital video disc
- semiconductor medium for example, a solid state hard disk (Solid State Disk, SSD)
- the disclosed system, apparatus, and method may be implemented in other manners.
- the device embodiments described above are merely illustrative.
- the division of the unit is only a logical function division.
- there may be another division manner for example, multiple units or components may be combined or Can be integrated into another system, or some features can be ignored or not executed.
- the mutual coupling or direct coupling or communication connection shown or discussed may be an indirect coupling or communication connection through some interface, device or unit, and may be electrical, mechanical or otherwise.
- the units described as separate components may or may not be physically separated, and the components displayed as units may or may not be physical units, that is, may be located in one place, or may be distributed to multiple network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of the embodiment.
- each functional unit in each embodiment of the present application may be integrated into one processing unit, or each unit may exist physically separately, or two or more units may be integrated into one unit.
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Graphics (AREA)
- Biomedical Technology (AREA)
- Health & Medical Sciences (AREA)
- Dermatology (AREA)
- General Health & Medical Sciences (AREA)
- Neurology (AREA)
- Neurosurgery (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Processing Or Creating Images (AREA)
Abstract
本申请提供一种图形处理方法、处理器和虚拟现实系统,该方法包括:获取观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;展示所述VR画面,并在所述VR画面中渲染所述目标图像。
Description
本申请要求于2017年05月25日提交中国专利局、申请号为201710379516.5、名称为“图形处理方法、处理器和虚拟现实系统”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
本申请涉及图形处理领域,并且更具体地涉及一种图形处理方法、处理器和虚拟现实系统。
背景
当前生成虚拟现实(Virtual Reality,VR)场景的一种主流技术是三维(three Dimensional,3D)建模技术。3D建模技术生成VR场景主要是根据3D模型制作VR场景。在某些VR游戏产品中,VR场景主要是采用3D建模技术结合实时渲染技术完成的。用户以VR头戴式显示设备,例如VR眼镜或VR头盔等,作为观察媒体,融入到VR场景中,与VR场景中的人物或其他物体进行交互,从而得到真实的空间感受。最常见的例如过山车VR场景等。
技术内容
本申请实施例提供了一种图形处理方法,包括:一种图形处理方法,应用于计算设备,包括:获取观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息和所述至少两个图像对应 的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;展示所述VR画面,并在所述VR画面中渲染所述目标图像。
本申请实施例提供了一种图形处理装置处理器和存储器,所述存储器中存储有计算机可读指令,可以使所述处理器执行:获取观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;展示所述VR画面,并在所述VR画面中渲染所述目标图像。
本申请实施例提供了一种图形处理方法,适应于计算设备,包括:收集观察者当前的姿态信息;根据所述姿态信息,得到所述观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;展示所述VR画面,并在所述VR画面中渲染所述目标图像。
本申请实施例提供了一种虚拟现实VR系统,包括姿态收集装置、处理装置和显示装置:所述姿态收集装置用于:收集观察者当前的姿态信息;所述处理装置用于:根据所述姿态信息,得到所述观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息 和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;所述显示装置用于展示所述VR画面,并在所述VR画面中渲染所述目标图像。
本申请实施例提供一种计算机存储介质,其上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行本申请实施例所述的方法。
本申请实施例提供一种计算机存储介质,其上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行本申请实施例所述的方法。
本申请实施例提供一种包括指令的计算机程序产品,当计算机运行所述计算机程序产品的所述指时,所述计算机执行本申请实施例所述的方法。
本申请实施例提供一种包括指令的计算机程序产品,当计算机运行所述计算机程序产品的所述指时,所述计算机执行本申请实施例所述的方法。
图1是本申请一个实施例所述的VR系统的示意图。
图2是本申请一个实施例的图形处理方法的示意性流程图。
图3是本申请一个实施例的图形处理方法的示意性流程图。
图4是本申请一个实施例的需要呈现的场景的示意图。
图5是本申请一个实施例的进行预先拍摄的场景的示意图。
图6是本申请一个实施例的在不同拍摄位置得到的视频的示意图。
图7是本申请一个实施例的确定目标视频的示意图。
图8是本申请一个实施例的呈现目标视频的示意图。
图9A是本申请一个实施例的图形处理装置所在的计算设备的结构示意图。
图9B是本申请一个实施例的处理器的示意性框图。
图10是本申请一个实施例的虚拟现实系统的示意图。
图11是本申请另一个实施例的虚拟现实系统的示意图。
实施方式
下面将结合附图,对本申请中的技术方案进行描述。
本申请实施例提供了一种图形处理方法、装置和VR系统。
应理解,本申请各实施例的方法和设备应用于VR场景领域,例如,可以应用于VR游戏领域,还可以应用于其他的可交互场景,例如可交互的VR电影,可交互的VR演唱会等,本申请各实施例对此不作限定。
在详细说明本申请实施例的图形处理方法之前,首先介绍本申请各实施例涉及的实时渲染技术。实时渲染技术的本质是图形数据的实时计算和输出,其最大的特性是实时(real time)性。当前,个人电脑(Personal Computer,PC)、工作站、游戏机、移动设备或VR系统等中的处理器每秒至少以24帧以上的速度进行运算。也就是说,渲染一屏幕的图像,至少也要在1/24秒以内。而在实际的3D游戏中,每秒帧数要求则更高。正是由于实时渲染的实时性,才有可能实现3D游戏的连贯播放,以及实现3D游戏中用户与游戏场景中的人物或其他物体进行交互。
本申请各实施例涉及的实时渲染可以是通过中央处理器(Central Processing Unit,CPU)或图形处理器(Graphics Processing Unit,GPU)实现的,本申请实施例对此不作限定。具体而言,GPU是一种专门用于实现图像运算工作的处理器,其可以存在于显卡中,又称显示核心、视觉处理器或显示芯片。
图1示出的是本申请实施例的一种VR系统的示意图。图1所示,该系统包括VR头显设备101与计算设备102。
其中,VR头显设备101可以是VR眼镜或VR头盔等,可以包括角度感应器1011、信号处理器1012、数据传输器1013和显示器1014。其中,角度感应器1011可以收集观察者的姿态信息。
计算设备102可以是个人计算机(PC)、笔记本电脑等智能终端设备,也可以是智能手机、PAD或者平板电脑等智能移动终端设备,可以包括CPU和GPU,用于计算并渲染观察画面,并将观察画面发送给显示器1014进行显示。信号处理器1012和数据传输器1013主要用于VR头显设备101与计算设备102之间的通信。
在一些实例中,本申请实施例的VR系统还可以进一步包括:摄像机103,用于从多个不同的拍摄位置拍摄的VR场景内物体的视频。
基于图1所示的系统,本申请实施例提出了一种图形处理方法。图2是本申请实施例提供的一种图形处理方法200的流程图,该方法由VR系统中的计算设备102执行。如图2所示,该方法包括以下步骤:
步骤201:获取观察者的位置信息。
在一些实例中,获取所述观察者的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息。其中,所述左眼位置信息、所述右眼位置信息、所述左眼朝向信息和所述右眼朝向信息是根据所收集的用户当前的姿态信息确定的,所述姿态信息包括头部姿态信息、四肢姿态信息、躯干姿态信息、肌肉电刺激信息、眼球跟踪信息、皮肤感知信息、运动感知信息和脑信号信息中的至少一种。
步骤202:根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体。
在一些实例中,所述目标物体可以为人物。其中,该人物是希望被改善其真实性的物体,也即为所述目标物体。
例如,每个场景或多个场景可以存在一个目标物体列表,在生成VR场景时,根据目标物体列表找到该目标场景中的目标物体。再如, 在VR场景的游戏设计中规定,近景(距离用户一定范围内的场景)处的人物是目标物体,近景处除人物以外的其他物体不是目标物体,远景(距离用户一定范围外的场景)处的所有物体均不是目标物体,等等。确定场景中的目标物体可以由处理装置34来执行,例如可以由处理装置34中的CPU确定,本申请实施例对此不作限定。
步骤203:获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像。
在一些实例中,根据待展示的所述VR画面的时间信息,从预先拍摄的多个视频中确定每个视频中所述时间信息对应的视频帧作为所述图像,其中,所述VR画面的时间信息可以为VR画面当前的时间。
步骤204:根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像。
在一些实例中,将所述目标图像渲染到所述VR画面中的第一预设纹理上,其中,所述第一预设纹理是基于广告板面片技术的。
在一些实例中,根据所述位置信息,确定所述VR画面中的第一物体;从三维模型库中确定出所述第一物体对应的三维模型;将所述三维模型渲染到所述VR画面的第二预设纹理上,其中,其中,所述VR画面内包括上述目标物体和上述目标物体以外的上述第一物体,所述第二预设纹理可以为所述VR画面的背景。
在一些实例中,所述多个视频是对所述多个视频的原始视频经过透明处理后的仅包括所述目标物体的视频,其中,所述目标物体可以为人物。
在一些实例中,在确定所述目标图像的步骤中,对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取至少两个视频,所述多个视频是从不同的拍摄位置拍摄得到;从所述至少两个视频中的每个视频中选取一个视频帧作为所述图像;根据所述平均位置和所述至少两个视 频的拍摄位置之间的空间位置关系,对所述图像进行运算得到所述目标图像。
具体的,在得到上述平均位置之后,从所述平均位置左右两侧各选取至少一个视频,从选取的至少一个视频中各选取一个与上述时间信息对应的视频帧作为所述图像,其中,上述时间信息可以为上述VR画面当前的时间信息,根据上述平均位置和上述至少两个视频的拍摄位置之间的空间位置关系,对所述图像进行插值运算得到所述目标图像。
在一些实例中,在确定所述目标图像的步骤中,对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取出目标视频,其中,所述目标视频的拍摄位置与所述平均位置的距离是所述预先拍摄的多个视频的拍摄位置与所述平均位置的空间距离中最小的;从所述目标视频中选取一个视频帧,并将所述视频帧作为所述目标图像。
具体的,在得到上述平均位置之后,从上述预先拍摄的多个视频中选取一个拍摄位置距离上述平均位置最近的视频最为目标视频,从上述目标视频中选取一个上述时间信息对应的视频帧作为上述目标图像,其中,上述时间信息可以为上述VR画面当前的时间信息。
步骤205:展示所述VR画面,并在所述VR画面中渲染所述目标图像。
在一些实例中,根据所述左眼位置信息和所述左眼朝向信息确定所述左眼画面;根据所述右眼位置信息和所述右眼朝向信息确定所述右眼画面;根据所述左眼朝向信息和所述目标图像,实时渲染所述左眼画面,并在所述左眼画面中渲染所述目标图像;根据所述右眼朝向信息和所述目标图像,实时渲染所述右眼画面,并在所述右眼画面中渲染所述目标图像。
本申请实施例的技术方案可以根据观察者的位置信息,确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍 摄的图像;根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;展示所述VR画面,并在所述VR画面中渲染所述目标图像。该VR画面可以真实的展现实景,在保持整个VR场景可交互性的基础上,为用户提供真实的临场感,从而能够提升用户体验。图3是本申请一个实施例的图形处理方法300的示意性流程图。该方法300由VR系统30执行。其中,VR系统30可以包括姿态收集装置32、处理装置34和显示装置36。该方法300可以包括以下步骤。
S310,收集用户当前的姿态信息。应理解,S310可以由姿态收集装置32来执行。
S320,根据姿态信息,得到用户的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息。
S330,根据左眼位置信息和右眼位置信息,从三维模型库中确定出目标三维模型。
S340,根据左眼位置信息、右眼位置信息和预先拍摄的多个视频,确定目标视频,其中,多个视频是分别从不同的拍摄位置拍摄的视频。
S350,根据左眼朝向信息、目标三维模型和目标视频,实时渲染左眼画面。
S360,根据右眼朝向信息、目标三维模型和目标视频,实时渲染右眼画面。
应理解,S320至S360可以由处理装置34来执行。
S370,显示左眼画面和右眼画面,其中,左眼画面和右眼画面显示时形成VR场景,VR场景中包括目标三维模型的图像和目标视频的图像。
应理解,S370可以由显示装置36来执行。
本申请实施例的图形处理方法,收集用户的姿态信息来确定用户左右眼的位置,根据用户的左右眼的位置信息,确定目标三维模型并且根据预先拍摄的多个视频确定目标视频,通过实时渲染的方式渲染 技术分别渲染左眼画面和右眼画面,从而显示VR场景,其中,VR场景中包括目标三维模型的图像和目标视频的图像,该目标视频可以真实的展现实景,在保持整个VR场景可交互性的基础上,为用户提供真实的临场感,从而能够提升用户体验。
应理解,通常而言VR系统30包括VR头显设备,显示装置36可以集成在VR头显设备中。本申请实施例的处理装置34和/或姿态收集装置32可以集成在VR头显设备中,也可以独立于VR头显设备单独部署,其中,上述VR头显设备可以是VR头戴式显示设备,例如VR眼镜或VR头盔等。姿态收集装置32、处理装置34和显示装置36之间可以通过有线通信也可以通过无线通信,本申请实施例对此不作限定。
下面具体描述本申请的图形处理方法300的各个步骤以及VR系统30的各组件。
在本申请实施例中,S310,姿态收集装置32收集用户当前的姿态信息。
姿态收集装置32可以包括VR头戴式显示设备,例如VR眼镜或VR头盔中的传感器。传感器可以包括光敏传感器,例如红外传感器、摄像头等;传感器还可以包括力敏传感器,例如陀螺仪等;传感器还可以包括磁敏传感器,例如脑机接口等;传感器还可以包括声敏传感器等,本申请实施例对传感器的具体类型不作限定。VR头戴式显示设备中的传感器可以收集用户当前的头部姿态信息、眼球跟踪信息、皮肤感知信息、肌肉电刺激信息和脑信号信息中的至少一种。然后,处理装置34可以根据这些信息确定用户的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息。
在一个具体的例子中,在VR场景中,用户的视角是指用户的人眼视线方向在虚拟空间中的方位角,其中,包括人眼的位置和朝向。在虚拟空间中,用户的视角可以随用户的头部在现实空间中姿态的变化而变化。在一种具体的情况下,虚拟空间中用户的视角的变化与现实空间中用户的头部姿态的变化同速且同方向。其中,用户的视角又 包括左眼视角和右眼视角,即包括用户的左眼位置、右眼位置、左眼朝向和右眼朝向。
在该例子中,用户佩戴的VR头显设备上的传感器可以在用户使用VR头显设备的过程中感测头部的转动、移动等运动及其姿态变化,并对各项运动进行解算,得到相关的头部姿态信息(例如运动的速度、角度等),处理装置34根据得到的头部姿态信息就可以确定用户的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息。
姿态收集装置32还可以包括定位器、操控手柄、体感手套、体感衣服,以及跑步机等动感装置等等,用于收集用户的姿态信息,继而由处理装置34处理得到用户的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息。其中,姿态收集装置32可以通过操控手柄、体感手套、体感衣服和跑步机等收集用户的四肢姿态信息、躯干姿态信息、肌肉电刺激信息、皮肤感知信息和运动感知信息等。
在一个具体的例子中,VR头显设备上可以设有一个或多个定位器,用于监测用户头部位置(可以包括高度)、朝向等。此时,用户在佩戴VR头显设备所在的现实空间中可以设有定位系统,该定位系统可以与用户佩戴的VR头显设备上的一个或多个定位器进行定位通信,确定用户在此现实空间中的具体位置(可以包括高度)、朝向等姿态信息。然后。可以由处理装置34将上述姿态信息转换为用户头部在虚拟空间中的相关位置(可以包括高度)、朝向等信息。亦即,处理装置34得到用户的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息。
应理解,本申请实施例的左眼位置信息、右眼位置信息可以通过在坐标系中的坐标值来表示;左眼朝向信息和右眼朝向信息可以通过在坐标系中的一个向量来表示,但本申请实施例对此不作限定。
还应理解,姿态收集装置32在收集到姿态信息后,需通过有线通信或无线通信,将姿态信息发送给处理装置34,文中对此不进行赘述。
还应理解,本申请实施例还可以通过其他方式收集用户的姿态信 息,通过其他的方式来获取和/或表示左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息,本申请实施例对具体的方式不作限定。
在VR场景的设计中,例如在VR场景的游戏设计中,一个位置被设计为对应一个物体组。在一个具体的例子中,用户的左眼位置LE和右眼位置RE分别对应的物体如图4所示。用户的左眼位置对应物体L41、物体43、物体44、物体46和人物42,用户的右眼位置对应物体R45、物体43、物体44、物体46和人物42。其中,该人物42是希望被改善其真实性的物体,为目标物体。
具体地,确定用户的左眼位置或右眼位置对应的物体组中哪个物体是目标物体,可以基于VR场景的设计。例如,每个场景或多个场景可以存在一个目标物体列表,在生成VR场景时,根据目标物体列表找到该目标场景中的目标物体。再如,在VR场景的游戏设计中规定,近景(距离用户一定范围内的场景)处的人物是目标物体,近景处除人物以外的其他物体不是目标物体,远景(距离用户一定范围外的场景)处的所有物体均不是目标物体,等等。确定场景中的目标物体可以由处理装置34来执行,例如可以由处理装置34中的CPU确定,本申请实施例对此不作限定。
应理解,对于VR场景而言,其中除目标物体以外的其他物体可以是预先通过3D建模生成3D模型,存储在3D模型库中。具体而言,图4示出的物体L41、物体43、物体44、物体R45和物体46的3D模型均存储在3D模型库中。处理装置34(例如处理装置34中的CPU)得到左眼位置信息和右眼位置信息后,从3D模型库中确定出目标三维模型,即物体L41、物体43、物体44、物体R45和物体46的3D模型,以供后续渲染画面使用。当然,也可以通过其他方式确定目标三维模型,本申请实施例对此不作限定。
对于VR场景中的目标物体,例如图4所示的VR场景中的人物42,则根据预先拍摄的多个视频来生成。其中,该多个视频是分别从不同的拍摄位置拍摄的包括目标物体的视频。
具体地,假设该目标物体是人物42,则本申请实施例会从多个 拍摄位置预先拍摄的关于该人物42的多个视频。图5示出了预先拍摄的场景的示意图。如图5所示,要拍摄的场景中包括人物42、物体52和物体54,要拍摄的场景尽量与最终显示的VR场景的情况接近,以增加真实感。针对要拍摄的场景,可以在水平方向上放置多个拍摄设备,分别从拍摄位置C
1、拍摄位置C
2和拍摄位置C
3进行摄像,可以得到人物在不同拍摄位置的原始视频如图6所示。
应理解,预先拍摄视频时可以在距离目标物体一定半径的圆周上进行拍摄。在该圆周上拍摄位置选取得越多越密集,从中选择出与用户的左眼位置或右眼位置相同或相近的概率也越大,最终选择出的或者计算出的目标视频放到VR场景中的真实性也越高。
更进一步的,拍预先拍摄视频时的拍摄位置除了在一条直线上或距离目标物体一定半径的圆周上以外,拍摄位置还可以组成一个平面或曲面甚至在三维空间内不同的位置,进而实现360度全景拍摄。
在本申请实施例中,多个视频可以是对原始视频经过透明处理后的仅包括目标物体的视频。具体地,可以将分别从3个拍摄位置所拍摄的3个视频中将人物42与构成背景的物体52和物体54进行分离,就可以得到只包括人物42的3个视频。3个视频是在相同的时间进行摄制的时间长度也相同的视频。
可选地,本申请实施例中,透明处理可以是基于阿尔法(alpha)透明技术的处理。具体而言,如果VR场景的3D环境中允许像素拥有一组alpha值,alpha值用来记载像素的透明度,这样使得物体可以拥有不同的透明程度。本申请实施例中,可以将原始视频中的目标物体人物42处理为不透明的,构成背景的物体52和物体54处理为透明的。
一种具体的方案中,S340根据所述左眼位置信息、所述右眼位置信息和预先拍摄的多个视频,确定目标视频,可以包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述多个视频中选取出所述目标视频,其中,所述目标视频的拍摄位置与所述平均位置的距离是所述多个视频的所有的拍 摄位置中与所述平均位置最接近的。
应理解,本申请各实施例中,左眼位置、右眼位置和拍摄位置在VR场景中可以统一表示为虚拟空间的坐标,例如在x轴、y轴和z轴三轴坐标系的坐标或者球坐标。左眼位置、右眼位置和拍摄位置也可以以其他形式表示,本申请实施例对此不作限定。
在本方案中,对左眼位置信息和右眼位置信息求平均值,得到平均位置。例如,以三轴坐标系为例,左眼位置为(x
1,y
1,z
1),右眼位置为(x
2,y
2,z
2),则平均位置为((x
1+x
2)/2,(y
1+y
2)/2,(z
1+z
2)/2)。从多个视频中选出拍摄位置与平均位置最接近的视频作为目标视频。
在多个拍摄位置是距离目标物体一定半径的圆周上的多个位置的情况下,目标视频的拍摄位置与平均位置最接近可以理解为目标视频的拍摄位置(x
t,y
t,z
t)与平均位置((x
1+x
2)/2,(y
1+y
2)/2,(z
1+z
2)/2)的距离需小于预设的阈值,即保证目标视频的拍摄位置与平均位置的距离足够小。
在多个拍摄位置不在距离目标物体一定半径的圆周上的情况下,目标视频的拍摄位置与平均位置最接近可以理解为,平均位置与目标物体构成的线段与目标视频的拍摄位置与目标物体构成的线段之间的夹角是平均位置与目标物体构成的线段与所有拍摄位置与目标物体构成的线段之间的夹角中角度最小的。
另一种具体的方案中,S340根据所述左眼位置信息、所述右眼位置信息和预先拍摄的多个视频,确定目标视频,可以包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述多个视频中选取出至少两个视频;将所述至少两个视频中每个视频在相应时刻对应的视频帧抽取出来;根据所述平均位置和所述至少两个视频的拍摄位置,对所述至少两个视频帧进行插值运算,得到所述当目标视频。
在这个方案中,可以选取用户的左眼和右眼平均位置的左右至少各一个拍摄位置,从多个视频中选取出左右至少各一个拍摄位置拍摄 的视频,作为计算目标视频的参考。截取至少两个视频在同一时刻对应的视频帧进行插值运算,得到目标视频。
在多个拍摄位置是距离目标物体一定半径的圆周上的多个位置的情况下,从多个视频中选取至少两个视频可以是选取与平均位置((x
1+x
2)/2,(y
1+y
2)/2,(z
1+z
2)/2)的距离最小的至少两个视频。至少两个视频的拍摄位置至少有一个分布在平均位置的左侧,并且至少有一个分布在平均位置的右侧。
在多个拍摄位置不在距离目标物体一定半径的圆周上的情况下,从多个视频中选取至少两个视频可以是,平均位置与目标物体构成的线段与至少两个视频的拍摄位置与目标物体构成的线段之间的夹角是平均位置与目标物体构成的线段与所有拍摄位置与目标物体构成的线段之间的夹角中角度最小的几个。至少两个视频的拍摄位置至少有一个分布在平均位置的左侧,并且至少有一个分布在平均位置的右侧。
应理解,在本申请实施例中,还可以根据其他的准则选取作为参考的视频,本申请实施例对戏不作限定。
还应理解,在本申请实施例中,不同拍摄位置拍摄到的视频代表着观察目标物体(例如,人物42)时的不同的观察位置。换句话说,图6所示的3个视频在同一物理时刻对应的视频帧,是在不同的观察位置观察时的图像。3个拍摄角度分别可以对应3个拍摄位置C
1、C
2和C
3。
应理解,在本申请实施例中,除了预先拍摄多个视频以外,也可以采用从多个拍摄位置预先拍摄目标物体的多组照片(或多组图像)。根据左眼位置和右眼位置(或者平均位置)与多个拍摄位置的关系,从多组图像中找到至少两个拍摄位置对应的至少两张图像,对至少两张图像进行插值运算,得到目标图像。具体的插值算法,会在下文中详细描述。
图7是本申请一个实施例的确定目标视频的示意图。根据平均位置,从多个视频中选取出至少两个视频,将至少两个视频中每个视频 在相应时刻对应的视频帧抽取出来,根据平均位置和至少两个视频的拍摄位置,对至少两个视频帧进行插值运算,得到当目标视频的具体过程可以如图7所示。
用户在观察VR场景时,观察位置可以发生变化,例如用户在面向VR场景时,观察位置可以沿左右方向移动。3个拍摄位置分别为C
1、C
2和C
3。C
1、C
2和C
3可以通过三维直角坐标系的坐标值来表示,也可以通过球坐标系的坐标值表示,还可以通过其他方式表示,本申请实施例对此不作限定。根据用户的左眼位置信息和右眼位置信息,可以确定用户观察时的平均位置C
view。如图7所示,平均位置C
view在C
1和C
2之间。在确定目标视频时,因为平均位置C
view介于C
1和C
2之间,因此选取在拍摄位置C
1和C
2预先拍摄的视频作为参考。在生成目标视频的视频帧(图像)时,同时取出C
1和C
2分别对应的视频在同一时刻对应的视频帧I1和I2,然后对两个视频帧I1和I2进行插值,例如可以是线性插值。其中,插值的权重依据平均位置C
view与C
1和C
2的距离而定。输出的目标视频的视频帧I
out=I1*(1-(C
1-C
view/C
1-C
2))+I2*(1-(C
2-C
view/C
1-C
2))。
应理解,以上只讨论了用户的观察位置沿左右方向移动的情况,如果用户的观察位置前后移动,因为是在VR的3D场景中,所以观察者看到的人物自然会呈现近大远小的效果,虽然在物理上显示的角度也应该有所变化,但是这种变化影响很小,一般用户不会在意或者观察到。此外,在一般的场景中,用户只会前后左右移动,很少会进行在上下方向上进行大范围移动,所以对于根据本申请实施例的方法确定的目标视频,用户所产生的失真感觉也很小。
应理解,本申请实施例以目标物体为人物为例进行说明。当然目标物体也可以为要求真实性的动物,甚至建筑物或植物等等,本申请实施例对此不作限定。
可选地,在本申请实施例中,S350根据左眼朝向信息、所述目标三维模型和所述目标视频,实时渲染左眼画面,可以包括:根据所述左眼朝向信息,将所述目标三维模型渲染到第一纹理上;根据所述 左眼朝向信息,将所述目标视频渲染到第二纹理上,其中,所述第一纹理可以是所述左眼画面的背景,所述第二纹理是基于广告板面片技术的;S360根据右眼朝向信息、所述目标三维模型和所述目标视频,实时渲染右眼画面,可以包括:根据所述右眼朝向信息,将所述目标三维模型渲染到第三纹理上;根据所述右眼朝向信息,将所述目标视频渲染到第四纹理上,其中,所述第三纹理可以是所述右眼画面的背景,所述第四纹理是基于广告板面片技术的。
下面,结合图8详细说明本申请实施例中渲染左眼画面和右眼画面的过程。如前文描述,处理装置34(例如其中的CPU)在S330中已经确定目标三维模型,在S340中已经确定目标视频。处理装置34(例如其中的GPU)根据左眼朝向信息,确定应呈现的左眼画面;根据右眼朝向信息,确定应呈现的右眼画面。例如如图4所示的场景中,根据左眼朝向信息(面向人物42),确定左眼画面中呈现物体L41、物体43、物体44和人物42;根据右眼朝向信息(面向人物42),确定右眼画面中呈现物体43、物体44、物体R45和人物42。
处理装置34(例如其中的GPU)将目标三维模型物体L41、物体43和物体44,渲染到左眼画面L800的第一纹理82上,将所述目标视频渲染到左眼画面L800的第二纹理84上;将目标三维模型物体43、物体44和物体R45渲染到右眼画面R800的第三纹理86上,将所述目标视频渲染到右眼画面R800的第四纹理88上。
具体地,分别对于左眼画面和右眼画面,可以在画面的目标物体的位置设置广告板(billboard)面片,在广告板面片上呈现目标视频。广告板技术是计算机图形学领域中进行快速绘制的一种方法。在类似3D游戏这种对实时性要求较高的情况下,采取广告板技术可以大大加快绘制的速度从而提高3D游戏画面的流畅性。广告板技术是在3D场景中,用2D来表示物体,让该物体始终朝向用户。
具体地,广告板面片在左眼画面可以具有倾斜角度,倾斜角度的具体参数可以根据左眼位置信息来计算;广告板面片在右眼画面可以具有倾斜角度,倾斜角度的具体参数可以根据右眼位置信息来计算。
实际上,由于VR场景是实时渲染的,在任一时刻,可以认为是将前述通过插值得到的视频帧呈现在目标物体的位置上。在场景变化的一个连续时间段内,可以等效为视频在广告板面片上进行播放。
如图8所示,在目标物体对应的位置设置广告板面片,将视频的每一帧作为贴图纹理绘制到上述广告板面片的贴图,则视频的每一帧会是一直是面对用户的。
应理解,在渲染左眼画面和右眼画面时,可以采用深度缓冲技术与广告板技术结合。深度缓冲技术有助于目标物体按远近距离与其他物体形成遮挡关系和大小比例关系。本申请实施例中,渲染目标视频还可以使用其他技术,本申请实施例对此不作限定。
还应理解,本申请实施例还提供一种图形处理方法,包括步骤S320至S360,方法由处理器执行。
还应理解,在本发明的各种实施例中,上述各过程的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
上文中结合图1至图8,详细描述了根据本申请实施例的图形处理方法。下面将结合图9A、9B和图10,详细描述根据本申请实施例的装置、处理器和VR系统。
图9A是本申请实施例中用于图形处理方法的计算设备的结构示意图。如图9A所示,该计算设备900包括处理器901、非易失性计算机可读存储器902、I/O接口903、显示接口904和网络通信接口905。这些组件通过总线906进行通信。在本申请一些实施例中,存储器902中存储有多个程序模块:操作系统907、I/O模块908、通信模块909和图像处理装置900A。处理器901可以读取存储器902中的图像处理装置900A对应的计算机可读指令,来实现本申请实施例提供的方案。
在本申请实施例中,I/O接口903可以与输入/输出设备连接。I/O接口903将从输入设备接收到的输入数据发送给I/O模块908进行处理,并将I/O模块908输出的数据发送给输出设备。
网络通信接口905可以将从通信总线906接收到的数据发送给通信模块909,并将从通信模块909接收到的数据通过通信总线906发送出去。
在一些实例中,所述存储器902中存储的图像处理装置900A对应的计算机可读指令,可以使所述处理器901执行:获取观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;展示所述VR画面,并在所述VR画面中渲染所述目标图像。
在一些实例中,所述指令可以使所述处理器901:根据待展示的所述VR画面的时间信息,从预先拍摄的多个视频中确定每个视频中所述时间信息对应的视频帧作为所述图像。
在一些实例中,所述指令可以使所述处理器901:将所述目标图像渲染到所述VR画面中的第一预设纹理上,其中,所述第一预设纹理是基于广告板面片技术的。
在一些实例中,其中,所述指令可以使所述处理器901:获取所述观察者的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息;其中,所述VR画面包括左眼画面和右眼画面;根据所述左眼位置信息和所述左眼朝向信息确定所述左眼画面;根据所述右眼位置信息和所述右眼朝向信息确定所述右眼画面;根据所述左眼朝向信息和所述目标图像,实时渲染所述左眼画面,并在所述左眼画面中渲染所述目标图像;根据所述右眼朝向信息和所述目标图像,实时渲染所述右眼画面,并在所述右眼画面中渲染所述目标图像。
在一些实例中,所述指令可以使所述处理器901:根据所述位置信息,确定所述VR画面中的第一物体;从三维模型库中确定出所述第一物体对应的目标三维模型;将所述三维模型渲染到所述VR画面的第二预设纹理上。在一些实例中,所述指令可以使所述处理器901: 对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取至少两个视频,所述多个视频是从不同的拍摄位置拍摄得到;从所述至少两个视频中的每个视频中选取一个视频帧作为所述图像;根据所述平均位置和所述至少两个视频的拍摄位置之间的空间位置关系,对所述图像进行运算得到所述目标图像。
在一些实例中,所述指令可以使所述处理器901:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取出目标视频,其中,所述目标视频的拍摄位置与所述平均位置的距离是所述预先拍摄的多个视频的拍摄位置中与所述平均位置的空间距离中最小的;从所述目标视频中选取一个视频帧,并将所述视频帧作为所述目标图像。
在一些实例中,所述多个视频是对所述多个视频的原始视频经过透明处理后的仅包括所述目标物体的视频,所述目标物体为人物。
在一些实例中,所述左眼位置信息、所述右眼位置信息、所述左眼朝向信息和所述右眼朝向信息是根据所收集的所述用户当前的姿态信息确定的。
在一些实例中,所述姿态信息包括头部姿态信息、四肢姿态信息、躯干姿态信息、肌肉电刺激信息、眼球跟踪信息、皮肤感知信息、运动感知信息和脑信号信息中的至少一种。
图9B是本申请一个实施例的处理器900BB的示意性框图。处理器900B可以对应于前文所述的处理装置34。如图9所示,处理器900B可以包括获取模块910、计算模块920和渲染模块930。
获取模块910用于获取用户的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息。
计算模块920用于根据所述获取模块获取的所述左眼位置信息和所述右眼位置信息,从三维模型库中确定出目标三维模型;计算模块920还用于根据所述左眼位置信息、所述右眼位置信息和预先拍摄的多个视频,确定目标视频,其中,所述多个视频是分别从不同的拍 摄位置拍摄的视频。
渲染模块930用于根据左眼朝向信息、所述目标三维模型和所述目标视频,实时渲染左眼画面;渲染模块930还用于根据右眼朝向信息、所述目标三维模型和所述目标视频,实时渲染右眼画面;其中,所述左眼画面和所述右眼画面显示在虚拟现实VR显示器上时形成VR场景,所述VR场景中包括所述目标三维模型的图像和所述目标视频的图像。
本申请实施例的图形处理装置,根据用户的左右眼的位置信息,确定目标三维模型并且根据预先拍摄的多个视频确定目标视频,通过实时渲染的方式渲染技术分别渲染左眼画面和右眼画面,从而显示VR场景,其中,VR场景中包括目标三维模型的图像和目标视频的图像,该目标视频可以真实的展现实景,在保持整个VR场景可交互性的基础上,为用户提供真实的临场感,从而能够提升用户体验。
可选地,作为一个实施例,所述渲染模块930具体可以用于:根据所述左眼朝向信息,将所述目标三维模型渲染到第一纹理上;根据所述左眼朝向信息,将所述目标视频渲染到第二纹理上,其中,所述第二纹理是基于广告板面片技术的;根据所述右眼朝向信息,将所述目标三维模型渲染到第三纹理上;根据所述右眼朝向信息,将所述目标视频渲染到第四纹理上,其中,所述第四纹理是基于广告板面片技术的。
可选地,作为一个实施例,所述计算模块920根据所述左眼位置信息、所述右眼位置信息和预先拍摄的多个视频,确定目标视频,可以包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述多个视频中选取出至少两个视频;将所述至少两个视频中每个视频在相应时刻对应的视频帧抽取出来;根据所述平均位置和所述至少两个视频的拍摄位置,对所述至少两个视频帧进行插值运算,得到所述当目标视频。
可选地,作为一个实施例,所述计算模块920根据所述左眼位置信息、所述右眼位置信息和预先拍摄的多个视频,确定目标视频,可 以包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述多个视频中选取出所述目标视频,其中,所述目标视频的拍摄位置与所述平均位置的距离是所述多个视频的所有的拍摄位置中与所述平均位置最接近的。
可选地,作为一个实施例,所述多个视频是对原始视频经过透明处理后的仅包括目标物体的视频。
可选地,作为一个实施例,所述目标物体为人物。
可选地,作为一个实施例,所述获取模块910获取的所述左眼位置信息、所述右眼位置信息、所述左眼朝向信息和所述右眼朝向信息是根据所收集的所述用户当前的姿态信息确定的。
可选地,作为一个实施例,所述姿态信息包括头部姿态信息、四肢姿态信息、躯干姿态信息、肌肉电刺激信息、眼球跟踪信息、皮肤感知信息、运动感知信息和脑信号信息中的至少一种。
应理解,所述处理器900B可以是CPU也可以是GPU。处理器900B还可以既包括CPU的功能又包括GPU的功能,例如,获取模块910和计算模块920的功能(S320至S340)由CPU执行,渲染模块930的功能(S350和S360)由GPU执行,本申请实施例对此不作限定。
图10示出的是本申请实施例的一种VR系统的示意图。图10所示的是一种VR头盔1000,VR头盔1000可以包括头部跟踪器1010、CPU 1020、GPU 1030和显示器1040。其中,头部跟踪器1010对应于姿态收集装置,CPU 1020和GPU 1030对应于处理装置,显示器1040对应于显示装置,此处对头部跟踪器1010、CPU 1020、GPU 1030和显示器1040的功能不再赘述。
应理解,图10示出的头部跟踪器1010、CPU 1020、GPU 1030和显示器1040集成在VR头盔1000中。在VR头盔1000外部还可以有其他的姿态收集装置,收集用户的姿态信息,发送给CPU 1020进行处理,本申请实施例对此不作限定。
图11示出的是本申请实施例的另一种VR系统的示意图。图11 所示的是一种VR眼镜1110与主机1120构成的VR系统,VR眼镜1110可以包括角度感应器1112、信号处理器1114、数据传输器1116和显示器1118。其中,角度感应器1112对应于姿态收集装置,主机1120中包括CPU和GPU对应于处理装置来计算并渲染画面,显示器1118对应于显示装置。角度感应器1112收集用户的姿态信息,将姿态信息发送给主机1120进行处理,主机1120计算并渲染左眼画面和右眼画面,并将左眼画面和右眼画面发送给显示器1118进行显示。信号处理器1114和数据传输器1116主要用于VR眼镜1110与主机1120之间的通信。
在VR眼镜1110外部还可以有其他的姿态收集装置,收集用户的姿态信息,发送给主机1120进行处理,本申请实施例对此不作限定。
本申请实施例的虚拟现实系统,收集用户的姿态信息来确定用户左右眼的位置,根据用户的左右眼的位置信息,确定目标三维模型并且根据预先拍摄的多个视频确定目标视频,通过实时渲染的方式渲染技术分别渲染左眼画面和右眼画面,从而显示VR场景,其中,VR场景中包括目标三维模型的图像和目标视频的图像,该目标视频可以真实的展现实景,在保持整个VR场景可交互性的基础上,为用户提供真实的临场感,从而能够提升用户体验。
本申请实施例还提供一种计算机可读存储介质,其上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行上述方法实施例的图形处理方法。具体地,该计算机可以为上述VR系统或者为处理器。
本申请实施例还提供一种包括指令的计算机程序产品,其特征在于,当计算机运行所述计算机程序产品的所述指时,所述计算机执行上述方法实施例的图形处理方法。具体地,该计算机程序产品可以运行于VR系统或者处理器中。
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机 程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(Digital Subscriber Line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,高密度数字视频光盘(Digital Video Disc,DVD))、或者半导体介质(例如,固态硬盘(Solid State Disk,SSD))等。
应理解,本文中涉及的第一、第二以及各种数字编号仅为描述方便进行的区分,并不用来限制本申请的范围。
应理解,本文中术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其他的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其他的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应所述以权利要求的保护范围为准。
Claims (46)
- 一种图形处理方法,应用于计算设备,包括:获取观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;展示所述VR画面,并在所述VR画面中渲染所述目标图像。
- 根据权利要求1所述的方法,其中,获取预先存储的所述目标物体对应的至少两个图像包括:根据待展示的所述VR画面的时间信息,从预先拍摄的多个视频中确定所述时间信息对应的至少两个视频帧作为所述至少两个图像。
- 根据权利要求1所述的方法,进一步包括:将所述目标图像渲染到所述VR画面中的第一预设纹理上,其中,所述第一预设纹理是基于广告板面片技术的。
- 根据权利要求1所述的方法,其中,获取所述观察者的所述位置信息包括:获取所述观察者的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息;其中,所述VR画面包括左眼画面和右眼画面,所述展示所述VR画面,并在所述VR画面中渲染所述目标图像,包括:根据所述左眼位置信息和所述左眼朝向信息确定所述左眼画面;根据所述右眼位置信息和所述右眼朝向信息确定所述右眼画面;根据所述左眼朝向信息和所述目标图像,实时渲染所述左眼画面,并在所述左眼画面中渲染所述目标图像;根据所述右眼朝向信息和所述目标图像,实时渲染所述右眼画面,并在所述右眼画面中渲染所述目标图像。
- 根据权利要求1所述的方法,进一步包括根据所述位置信息,确定所述VR画面中的第一物体;从三维模型库中确定出所述第一物体对应的三维模型;将所述三维模型渲染到所述VR画面的第二预设纹理上。
- 根据权利要求4所述的方法,其中,获取预先存储的所述目标物体对应的所述至少两个图像、利用所述至少两个图像生成所述目标图像包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取至少两个视频,所述多个视频是从不同的拍摄位置拍摄得到;从所述至少两个视频中的每个视频中选取一个视频帧作为所述图像;根据所述平均位置和所述至少两个视频的拍摄位置之间的空间位置关系,对所述图像进行运算得到所述目标图像。
- 根据权利要求4所述的方法,其中,根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成所述目标图像,包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取出目标视频,其中,所述目标视频的拍摄位置与所述平均位置的距离是所述预先拍摄的多个视频的拍摄位置与所述平均位置的空间距离中最小的;从所述目标视频中选取一个视频帧,并将所述视频帧作为所述目标图像。
- 根据权利要求2所述的方法,其中,所述多个视频是对所述多个视频的原始视频经过透明处理后的仅包括所述目标物体的视频。
- 根据权利要求8所述的方法,其中,所述目标物体为人物。
- 根据权利要求4所述的方法,其中,所述左眼位置信息、所 述右眼位置信息、所述左眼朝向信息和所述右眼朝向信息是根据所收集的用户当前的姿态信息确定的。
- 根据权利要求10所述的方法,其中,所述姿态信息包括头部姿态信息、四肢姿态信息、躯干姿态信息、肌肉电刺激信息、眼球跟踪信息、皮肤感知信息、运动感知信息和脑信号信息中的至少一种。
- 一种图形处理装置,包括:处理器和存储器,所述存储器中存储有计算机可读指令,可以使所述处理器执行:获取观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;展示所述VR画面,并在所述VR画面中渲染所述目标图像。
- 根据权利要求12所述的装置,其中,所述指令可以使所述处理器:根据待展示的所述VR画面的时间信息,从预先拍摄的多个视频中确定每个视频中所述时间信息对应的至少两个视频帧作为所述至少两个图像。
- 根据权利要求12所述的装置,其中,所述指令可以使所述处理器:将所述目标图像渲染到所述VR画面中的第一预设纹理上,其中,所述第一预设纹理是基于广告板面片技术的。
- 根据权利要求12所述的装置,其中,所述指令可以使所述处理器:获取所述观察者的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息;其中,所述VR画面包括左眼画面和右眼画面;根据所述左眼位置信息和所述左眼朝向信息确定所述左眼画面;根据所述右眼位置信息和所述右眼朝向信息确定所述右眼画面;根据所述左眼朝向信息和所述目标图像,实时渲染所述左眼画面,并在所述左眼画面中渲染所述目标图像;根据所述右眼朝向信息和所述目标图像,实时渲染所述右眼画面,并在所述右眼画面中渲染所述目标图像。
- 根据权利要求14所述的装置,其中,所述指令可以使所述处理器:根据所述位置信息,确定所述VR画面中的第一物体;从三维模型库中确定出所述第一物体对应的目标三维模型;将所述三维模型渲染到所述VR画面的第二预设纹理上。
- 根据权利要求15所述的装置,其中,所述指令可以使所述处理器:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取至少两个视频,所述多个视频是从不同的拍摄位置拍摄得到;从所述至少两个视频中的每个视频中选取一个视频帧作为所述图像;根据所述平均位置和所述至少两个视频的拍摄位置之间的空间位置关系,对所述图像进行运算得到所述目标图像。
- 根据权利要求15所述的装置,其中,所述指令可以使所述处理器:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取出目标视频,其中,所述目标视频的拍摄位置与所述平均位置的距离是所述预先拍摄的多个视频的拍摄位置中与所述平均位置的空间距离中最小的;从所述目标视频中选取一个视频帧,并将所述视频帧作为所述目 标图像。
- 根据权利要求13所述的装置,其中,所述多个视频是对所述多个视频的原始视频经过透明处理后的仅包括所述目标物体的视频。
- 根据权利要求19所述的装置,其中,所述目标物体为人物。
- 根据权利要求15所述的装置,其中,所述左眼位置信息、所述右眼位置信息、所述左眼朝向信息和所述右眼朝向信息是根据所收集的所述用户当前的姿态信息确定的。
- 根据权利要求21所述的装置,其中,所述姿态信息包括头部姿态信息、四肢姿态信息、躯干姿态信息、肌肉电刺激信息、眼球跟踪信息、皮肤感知信息、运动感知信息和脑信号信息中的至少一种。
- 根据权利要求12至22中任一项所述的装置,其中,所述处理器包括中央处理器CPU和图形处理器GPU中的至少一种。
- 一种图形处理方法,适应于计算设备,包括:收集观察者当前的姿态信息;根据所述姿态信息,得到所述观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对应的所述目标物体的图像;展示所述VR画面,并在所述VR画面中渲染所述目标图像。
- 根据权利要求24所述的方法,其中,根据待展示的所述VR画面的时间信息,从预先拍摄的多个视频中确定每个视频中所述时间信息对应的视频帧作为所述图像。
- 根据权利要求24所述的方法,进一步包括:将所述目标图像渲染到所述VR画面中的第一预设纹理上,其中, 所述第一预设纹理是基于广告板面片技术的。
- 根据权利要求24所述的方法,其中,所述获取观察者的位置信息,包括:获取所述观察者的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息;其中,所述VR画面包括左眼画面和右眼画面,所述展示所述VR画面,并在所述VR画面中渲染所述目标图像,包括:根据所述左眼位置信息和所述左眼朝向信息确定所述左眼画面;根据所述右眼位置信息和所述右眼朝向信息确定所述右眼画面;根据所述左眼朝向信息和所述目标图像,实时渲染所述左眼画面,并在所述左眼画面中渲染所述目标图像;根据所述右眼朝向信息和所述目标图像,实时渲染所述右眼画面,并在所述右眼画面中渲染所述目标图像。
- 根据权利要求24所述的方法,进一步包括:根据所述位置信息,确定所述VR画面中的第一物体;从三维模型库中确定出所述第一物体对应的三维模型;将所述三维模型渲染到所述VR画面的第二预设纹理上。
- 根据权利要求27所述的方法,其中,获取预先存储的所述目标物体对应的所述至少两个图像、利用所述至少两个图像生成所述目标图像,包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取至少两个视频,所述多个视频是从不同的拍摄位置拍摄得到;从所述至少两个视频中的每个视频中选取一个视频帧作为所述图像;根据所述平均位置和所述至少两个视频的拍摄位置之间的空间位置关系,对所述图像进行运算得到所述目标图像。
- 根据权利要求27所述的方法,其中,所述根据所述位置信 息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取出目标视频,其中,所述目标视频的拍摄位置与所述平均位置的距离是所述预先拍摄的多个视频的拍摄位置与所述平均位置的空间距离中最小的;从所述目标视频中选取一个视频帧,并将所述视频帧作为所述目标图像。
- 根据权利要求25所述的方法,其中,所述多个视频是对所述多个视频的原始视频经过透明处理后的仅包括所述目标物体的视频。
- 根据权利要求31所述的方法,其中,所述目标物体为人物。
- 根据权利要求24所述的方法,其中,所述收集观察者当前的姿态信息,包括:收集所述观察者当前的头部姿态信息、四肢姿态信息、躯干姿态信息、肌肉电刺激信息、眼球跟踪信息、皮肤感知信息、运动感知信息和脑信号信息中的至少一种。
- 一种虚拟现实VR系统,包括姿态收集装置、处理装置和显示装置:所述姿态收集装置用于:收集观察者当前的姿态信息;所述处理装置用于:根据所述姿态信息,得到所述观察者的位置信息;根据所述位置信息确定待展示的虚拟现实VR画面中的目标物体;获取预先存储的所述目标物体对应的至少两个图像,所述至少两个图像为分别从不同的拍摄位置拍摄的图像;根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,所述目标图像为所述观察者的位置对 应的所述目标物体的图像;所述显示装置用于展示所述VR画面,并在所述VR画面中渲染所述目标图像。
- 根据权利要求34所述的VR系统,其中,所述处理装置根据待展示的所述VR画面的时间信息,从预先拍摄的多个视频中确定每个视频中所述时间信息对应的视频帧作为所述图像。
- 根据权利要求34所述的VR系统,其中,所述处理装置将所述目标图像渲染到所述VR画面中的第一预设纹理上,其中,所述第一预设纹理是基于广告板面片技术的。
- 根据权利要求34所述的VR系统,其中,所述处理装置,获取所述观察者的左眼位置信息、右眼位置信息、左眼朝向信息和右眼朝向信息;其中,所述VR画面包括左眼画面和右眼画面,其中,所述处理装置根据所述左眼位置信息和所述左眼朝向信息确定所述左眼画面;根据所述右眼位置信息和所述右眼朝向信息确定所述右眼画面;根据所述左眼朝向信息和所述目标图像,实时渲染所述左眼画面,并在所述左眼画面中渲染所述目标图像;根据所述右眼朝向信息和所述目标图像,实时渲染所述右眼画面,并在所述右眼画面中渲染所述目标图像。
- 根据权利要求34所述的VR系统,其中,所述处理装置,进一步根据所述位置信息,确定所述VR画面中的第一物体;从三维模型库中确定出所述第一物体对应的三维模型;将所述三维模型渲染到所述VR画面的第二预设纹理上。
- 根据权利要求37所述的VR系统,其中,所述处理装置获取预先存储的所述目标物体对应的所述至少两个图像、利用所述至少两个图像生成所述目标图像,包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取至少两个 视频,所述多个视频是从不同的拍摄位置拍摄得到;从所述至少两个视频中的每个视频中选取一个视频帧作为所述图像;根据所述平均位置和所述至少两个视频的拍摄位置之间的空间位置关系,对所述图像进行运算得到所述目标图像。
- 根据权利要求34、35或37任一项所述的VR系统,其中,所述处理装置根据所述位置信息和所述至少两个图像对应的拍摄位置,利用所述至少两个图像生成目标图像,包括:对所述左眼位置信息和所述右眼位置信息求平均值,得到平均位置;根据所述平均位置,从所述预先拍摄的多个视频中选取出目标视频,其中,所述目标视频的拍摄位置与所述平均位置的距离是所述预先拍摄的多个视频的拍摄位置与所述平均位置的空间距离中最小的;从所述目标视频中选取一个视频帧,并将所述视频帧作为所述目标图像。
- 根据权利要求37所述的VR系统,其中,所述多个视频是对所述多个视频的原始视频经过透明处理后的仅包括所述目标物体的视频。
- 根据权利要求41所述的VR系统,其中,所述目标物体为人物。
- 根据权利要求34所述的VR系统,其中,所述姿态收集装置具体用于:收集所述用户当前的头部姿态信息、四肢姿态信息、躯干姿态信息、肌肉电刺激信息、眼球跟踪信息、皮肤感知信息、运动感知信息和脑信号信息中的至少一种。
- 根据权利要求34所述的VR系统,其中,所述处理装置包括中央处理器CPU和图形处理器GPU中的至少一种。
- 一种计算机存储介质,其上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行权利要求1至11中任一项所述的 方法。
- 一种计算机存储介质,其上存储有指令,当所述指令在计算机上运行时,使得所述计算机执行权利要求24至33中任一项所述的方法。
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| CN201710379516.5 | 2017-05-25 | ||
| CN201710379516.5A CN107315470B (zh) | 2017-05-25 | 2017-05-25 | 图形处理方法、处理器和虚拟现实系统 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| WO2018214697A1 true WO2018214697A1 (zh) | 2018-11-29 |
Family
ID=60182018
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| PCT/CN2018/084714 Ceased WO2018214697A1 (zh) | 2017-05-25 | 2018-04-27 | 图形处理方法、处理器和虚拟现实系统 |
Country Status (3)
| Country | Link |
|---|---|
| CN (1) | CN107315470B (zh) |
| TW (1) | TWI659335B (zh) |
| WO (1) | WO2018214697A1 (zh) |
Families Citing this family (19)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN107315470B (zh) * | 2017-05-25 | 2018-08-17 | 腾讯科技(深圳)有限公司 | 图形处理方法、处理器和虚拟现实系统 |
| CN110134222A (zh) * | 2018-02-02 | 2019-08-16 | 上海集鹰科技有限公司 | 一种vr头显定位瞄准系统及其定位瞄准方法 |
| CN108616752B (zh) * | 2018-04-25 | 2020-11-06 | 北京赛博恩福科技有限公司 | 支持增强现实交互的头戴设备及控制方法 |
| CN109032350B (zh) * | 2018-07-10 | 2021-06-29 | 深圳市创凯智能股份有限公司 | 眩晕感减轻方法、虚拟现实设备及计算机可读存储介质 |
| CN110570513B (zh) * | 2018-08-17 | 2023-06-20 | 创新先进技术有限公司 | 一种展示车损信息的方法和装置 |
| WO2020078354A1 (zh) | 2018-10-16 | 2020-04-23 | 北京凌宇智控科技有限公司 | 视频串流系统、视频串流方法及装置 |
| CN111065053B (zh) * | 2018-10-16 | 2021-08-17 | 北京凌宇智控科技有限公司 | 一种视频串流的系统及方法 |
| CN111064985A (zh) * | 2018-10-16 | 2020-04-24 | 北京凌宇智控科技有限公司 | 一种实现视频串流的系统、方法及装置 |
| CN109976527B (zh) * | 2019-03-28 | 2022-08-12 | 重庆工程职业技术学院 | 交互式vr展示系统 |
| CN112015264B (zh) * | 2019-05-30 | 2023-10-20 | 深圳市冠旭电子股份有限公司 | 虚拟现实显示方法、虚拟现实显示装置及虚拟现实设备 |
| CN111857336B (zh) * | 2020-07-10 | 2022-03-25 | 歌尔科技有限公司 | 头戴式设备及其渲染方法、存储介质 |
| CN113947652A (zh) * | 2020-07-15 | 2022-01-18 | 北京芯海视界三维科技有限公司 | 实现目标物体定位的方法、装置及显示器件 |
| CN112073669A (zh) * | 2020-09-18 | 2020-12-11 | 三星电子(中国)研发中心 | 一种视频通信的实现方法和装置 |
| CN112308982A (zh) * | 2020-11-11 | 2021-02-02 | 安徽山水空间装饰有限责任公司 | 一种装修效果展示方法及其装置 |
| CN113436489A (zh) * | 2021-06-09 | 2021-09-24 | 深圳大学 | 一种基于虚拟现实的留学体验系统及留学体验方法 |
| CN115713614A (zh) * | 2022-11-25 | 2023-02-24 | 立讯精密科技(南京)有限公司 | 一种图像场景构造方法、装置、电子设备和存储介质 |
| CN115914607A (zh) * | 2022-12-01 | 2023-04-04 | 四川科比科科技有限公司 | 一种基于OsgEarth的全息智能沙盘的渲染方法及装置及介质 |
| US20250233975A1 (en) * | 2023-02-20 | 2025-07-17 | Boe Technology Group Co., Ltd. | Video communication method and device |
| US12587632B2 (en) | 2023-02-20 | 2026-03-24 | Boe Technology Group Co., Ltd. | Display method |
Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1809844A (zh) * | 2003-06-20 | 2006-07-26 | 日本电信电话株式会社 | 虚拟视点图像生成方法和三维图像显示方法及装置 |
| CN106385576A (zh) * | 2016-09-07 | 2017-02-08 | 深圳超多维科技有限公司 | 立体虚拟现实直播方法、装置及电子设备 |
| CN106507086A (zh) * | 2016-10-28 | 2017-03-15 | 北京灵境世界科技有限公司 | 一种漫游实景vr的3d呈现方法 |
| CN107315470A (zh) * | 2017-05-25 | 2017-11-03 | 腾讯科技(深圳)有限公司 | 图形处理方法、处理器和虚拟现实系统 |
Family Cites Families (15)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| KR100656342B1 (ko) * | 2004-12-16 | 2006-12-11 | 한국전자통신연구원 | 다중 입체 영상 혼합 제시용 시각 인터페이스 장치 |
| US8400493B2 (en) * | 2007-06-25 | 2013-03-19 | Qualcomm Incorporated | Virtual stereoscopic camera |
| KR101629479B1 (ko) * | 2009-11-04 | 2016-06-10 | 삼성전자주식회사 | 능동 부화소 렌더링 방식 고밀도 다시점 영상 표시 시스템 및 방법 |
| WO2011111349A1 (ja) * | 2010-03-10 | 2011-09-15 | パナソニック株式会社 | 立体映像表示装置および視差調整方法 |
| CN102404584B (zh) * | 2010-09-13 | 2014-05-07 | 腾讯科技(成都)有限公司 | 调整场景左右摄像机的方法及装置、3d眼镜、客户端 |
| US9292973B2 (en) * | 2010-11-08 | 2016-03-22 | Microsoft Technology Licensing, Llc | Automatic variable virtual focus for augmented reality displays |
| US9255813B2 (en) * | 2011-10-14 | 2016-02-09 | Microsoft Technology Licensing, Llc | User controlled real object disappearance in a mixed reality display |
| CN104603673B (zh) * | 2012-09-03 | 2017-03-15 | Smi创新传感技术有限公司 | 头戴式系统以及使用头戴式系统计算和渲染数字图像流的方法 |
| US9451162B2 (en) * | 2013-08-21 | 2016-09-20 | Jaunt Inc. | Camera array including camera modules |
| US20150358539A1 (en) * | 2014-06-06 | 2015-12-10 | Jacob Catt | Mobile Virtual Reality Camera, Method, And System |
| CN104679509B (zh) * | 2015-02-06 | 2019-11-15 | 腾讯科技(深圳)有限公司 | 一种渲染图形的方法和装置 |
| EP3356877A4 (en) * | 2015-10-04 | 2019-06-05 | Thika Holdings LLC | HELMET WITH VIRTUAL REALITY RESPONDING TO THE LOOK OF THE EYE |
| CN106527696A (zh) * | 2016-10-31 | 2017-03-22 | 宇龙计算机通信科技(深圳)有限公司 | 一种实现虚拟操作的方法以及可穿戴设备 |
| CN106657906B (zh) * | 2016-12-13 | 2020-03-27 | 国家电网公司 | 具有自适应场景虚拟现实功能的信息设备监控系统 |
| CN106643699B (zh) * | 2016-12-26 | 2023-08-04 | 北京互易科技有限公司 | 一种虚拟现实系统中的空间定位装置和定位方法 |
-
2017
- 2017-05-25 CN CN201710379516.5A patent/CN107315470B/zh active Active
-
2018
- 2018-04-27 WO PCT/CN2018/084714 patent/WO2018214697A1/zh not_active Ceased
- 2018-05-17 TW TW107116847A patent/TWI659335B/zh active
Patent Citations (4)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN1809844A (zh) * | 2003-06-20 | 2006-07-26 | 日本电信电话株式会社 | 虚拟视点图像生成方法和三维图像显示方法及装置 |
| CN106385576A (zh) * | 2016-09-07 | 2017-02-08 | 深圳超多维科技有限公司 | 立体虚拟现实直播方法、装置及电子设备 |
| CN106507086A (zh) * | 2016-10-28 | 2017-03-15 | 北京灵境世界科技有限公司 | 一种漫游实景vr的3d呈现方法 |
| CN107315470A (zh) * | 2017-05-25 | 2017-11-03 | 腾讯科技(深圳)有限公司 | 图形处理方法、处理器和虚拟现实系统 |
Also Published As
| Publication number | Publication date |
|---|---|
| TWI659335B (zh) | 2019-05-11 |
| TW201835723A (zh) | 2018-10-01 |
| CN107315470B (zh) | 2018-08-17 |
| CN107315470A (zh) | 2017-11-03 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| TWI659335B (zh) | 圖形處理方法和裝置、虛擬實境系統和計算機儲存介質 | |
| CN114647318B (zh) | 跟踪设备的位置的方法 | |
| CN107820593B (zh) | 一种虚拟现实交互方法、装置及系统 | |
| US8878846B1 (en) | Superimposing virtual views of 3D objects with live images | |
| CN107852573B (zh) | 混合现实社交交互 | |
| US12586294B2 (en) | Systems and methods for generating stabilized images of a real environment in artificial reality | |
| US10607403B2 (en) | Shadows for inserted content | |
| CN109743892B (zh) | 虚拟现实内容的显示方法和装置 | |
| JP2021530817A (ja) | 画像ディスプレイデバイスの位置特定マップを決定および/または評価するための方法および装置 | |
| CN111862348B (zh) | 视频显示方法、视频生成方法、装置、设备及存储介质 | |
| JP2017174125A (ja) | 情報処理装置、情報処理システム、および情報処理方法 | |
| CN107479699A (zh) | 虚拟现实交互方法、装置及系统 | |
| JP2025107314A (ja) | 動的オクルージョンのための高速の手のメッシュ化 | |
| KR101892735B1 (ko) | 직관적인 상호작용 장치 및 방법 | |
| US12067677B2 (en) | Information processing apparatus, information processing method, and computer-readable storage medium | |
| CN120359547A (zh) | 视频透视(vst)增强现实(ar)系统中扩展视图几何图形的生成和渲染 | |
| CN107065164B (zh) | 图像展示方法及装置 | |
| CN106843790B (zh) | 一种信息展示系统和方法 | |
| CN113678173B (zh) | 用于虚拟对象的基于图绘的放置的方法和设备 | |
| KR20250067902A (ko) | 패스스루 증강 현실(ar) 시스템들에서 효율적인 깊이 재구성 및 필터링을 갖춘 메시 변환 | |
| JP6775669B2 (ja) | 情報処理装置 | |
| US11128836B2 (en) | Multi-camera display | |
| WO2023277043A1 (ja) | 情報処理装置 | |
| CN108388351B (zh) | 一种混合现实体验系统 | |
| TW202533174A (zh) | 改善透視畫面的方法及主機 |
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: 18806762 Country of ref document: EP Kind code of ref document: A1 |
|
| NENP | Non-entry into the national phase |
Ref country code: DE |
|
| 122 | Ep: pct application non-entry in european phase |
Ref document number: 18806762 Country of ref document: EP Kind code of ref document: A1 |