WO2022230253A1 - 情報処理装置及び情報処理方法 - Google Patents

情報処理装置及び情報処理方法 Download PDF

Info

Publication number
WO2022230253A1
WO2022230253A1 PCT/JP2022/001268 JP2022001268W WO2022230253A1 WO 2022230253 A1 WO2022230253 A1 WO 2022230253A1 JP 2022001268 W JP2022001268 W JP 2022001268W WO 2022230253 A1 WO2022230253 A1 WO 2022230253A1
Authority
WO
WIPO (PCT)
Prior art keywords
information processing
rendering
attention area
information
resolution
Prior art date
Application number
PCT/JP2022/001268
Other languages
English (en)
French (fr)
Inventor
俊也 浜田
Original Assignee
ソニーグループ株式会社
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ソニーグループ株式会社 filed Critical ソニーグループ株式会社
Priority to JP2023517042A priority Critical patent/JPWO2022230253A1/ja
Publication of WO2022230253A1 publication Critical patent/WO2022230253A1/ja

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region

Definitions

  • the present technology relates to an information processing device and an information processing method applicable to VR (Virtual Reality) video distribution and the like.
  • VR images virtual images
  • the distribution of virtual images (virtual images) such as VR images is expected to spread, and there is a demand for technology that enables the distribution of high-quality virtual images.
  • the purpose of the present technology is to provide an information processing device and an information processing method capable of realizing high-quality virtual video distribution.
  • an information processing device includes a rendering unit.
  • the rendering unit generates two-dimensional video data corresponding to the user's field of view by performing rendering processing on the three-dimensional space data based on the field of view information about the user's field of view. Further, the rendering unit sets an attention area to be rendered at high resolution and a non-attention area to be rendered at low resolution in the display area of the two-dimensional image data, A gaze object to be gazed by the user is extracted based on parameters relating to rendering processing and the field of view information, the gaze object within the attention area is rendered with high resolution, and the gaze object other than the gaze object in the attention area is extracted. to reduce the amount of data for non-gaze objects.
  • an attention area and a non-interest area are set for a display area of two-dimensional video data to be rendered. Then, the gaze object in the attention area is rendered with high resolution, and the data amount of the non-gain object in the attention area is reduced. This makes it possible to deliver high-quality virtual video.
  • the parameters related to the rendering process may include distance information to the object to be rendered.
  • the rendering unit may reduce the amount of data of the non-gazing object within the attention area based on the distance information.
  • the rendering unit may perform a blurring process on the non-gazing object within the attention area.
  • the rendering unit may perform the blurring process by simulating blurring based on the depth of field of a lens in the real world.
  • the rendering unit may set a higher blur intensity for the non-gained object as the difference between the distance to the non-gained object and a predetermined reference distance increases.
  • the rendering unit may set a plurality of ranges regarding the difference between the distance to the non-gazing object and a predetermined reference distance, and set the blur intensity for each of the plurality of ranges.
  • the rendering unit provides a first range in which the difference between the distance to the non-gazing object and a predetermined reference distance is from 0 to a first distance, and a range in which the difference is from the first distance to the first distance setting a second range up to a second distance greater than the above, setting a first blurring intensity in the first range, and setting a second blurring intensity higher than the first blurring intensity in the second range; You can also set the blur intensity.
  • the rendering unit sets a third range from the second distance to a third distance in which the difference is greater than the second distance, and sets the third range to a blur intensity higher than the second blur intensity.
  • a third blur intensity may be set.
  • the rendering unit sets the blur intensity such that the non-gained object located in a range farther than the reference distance is blurred more strongly than the non-gained object located in a range closer than the predetermined reference distance.
  • the rendering unit may perform the blurring process on the non-gained object after rendering the non-gained object at high resolution.
  • the rendering unit may render the non- gazeing object at the resolution when the blurring process is performed.
  • the rendering unit may render the focused object in the non-focused area at high resolution when the focused object exists within the non-focused area.
  • the rendering unit renders the focused object within the attention area at a first resolution, and renders non-focused objects other than the focused object within the attention area at a second resolution lower than the first resolution.
  • the rendering unit may set the attention area and the non-attention area based on the field-of-view information.
  • the information processing apparatus further comprises an encoding unit that sets a quantization parameter for the two-dimensional video data and performs an encoding process on the two-dimensional video data based on the set quantization parameter.
  • the encoding unit may set a first quantization parameter for the region of interest and set a second quantization parameter larger than the first quantization parameter for the region of non-interest. good.
  • the encoding unit sets a first quantization parameter for the focused object within the attention area, and sets a second quantization parameter larger than the first quantization parameter for the non-focused object within the attention area. may be set, and a third quantization parameter larger than the second quantization parameter may be set for the non-interest area.
  • the three-dimensional spatial data may include at least one of omnidirectional video data and spatial video data.
  • An information processing method is an information processing method executed by a computer system, wherein rendering processing is performed on three-dimensional space data based on field-of-view information regarding a user's field of view. It comprises a rendering step of generating two-dimensional image data according to the user's field of view.
  • the rendering step includes: setting an attention area to be rendered at high resolution and a non-attention area to be rendered at low resolution in the display area of the two-dimensional image data; a step of extracting a gaze object to be gazed at by the user based on the parameters relating to the rendering process and the field of view information; rendering the focused object in the attention area with high resolution to reduce the amount of data of non-focused objects other than the focused object in the attention area.
  • FIG. 1 is a schematic diagram showing a basic configuration example of a server-side rendering system
  • FIG. 4 is a schematic diagram for explaining an example of a virtual video viewable by a user
  • FIG. 4 is a schematic diagram for explaining rendering processing
  • 1 is a schematic diagram showing a functional configuration example of a server-side rendering system
  • FIG. 4 is a flow chart showing an example of basic operation of rendering
  • FIG. 4 is a schematic diagram for explaining an example of foveated rendering
  • FIG. 4 is a schematic diagram for explaining an example of rendering information
  • 5 is a schematic diagram showing a specific configuration example of a rendering unit and an encoding unit shown in FIG. 4
  • FIG. 4 is a flow chart showing an example of rendering video generation
  • FIG. 10 is a schematic diagram for explaining each step shown in FIG. 9;
  • FIG. FIG. 10 is a schematic diagram for explaining each step shown in FIG. 9;
  • FIG. FIG. 10 is a schematic diagram for explaining each step shown in FIG. 9;
  • FIG. FIG. 10 is a schematic diagram for explaining each step shown in FIG. 9;
  • FIG. FIG. 10 is a schematic diagram for explaining each step shown in FIG. 9;
  • FIG. FIG. 10 is a schematic diagram for explaining each step shown in FIG. 9;
  • FIG. FIG. 4 is a schematic diagram for explaining blurring processing using a depth map;
  • FIG. 4 is a schematic diagram for explaining blurring processing using a depth map;
  • FIG. 11 is a schematic diagram showing an example of rendering according to another embodiment;
  • 1 is a block diagram showing a hardware configuration example of a computer (information processing device) that can implement a server device and a client device;
  • FIG. 11 is a schematic diagram showing an example of rendering according to another embodiment;
  • 1 is a
  • FIG. 1 is a schematic diagram showing a basic configuration example of a server-side rendering system.
  • FIG. 2 is a schematic diagram for explaining an example of a virtual video viewable by a user.
  • FIG. 3 is a schematic diagram for explaining rendering processing. Note that the server-side rendering system can also be called a server-rendering media distribution system.
  • the server-side rendering system 1 includes an HMD (Head Mounted Display) 2, a client device 3, and a server device 4.
  • HMD 2 is a device used to display virtual images to user 5 .
  • the HMD 2 is worn on the head of the user 5 and used.
  • VR video is distributed as virtual video
  • an immersive HMD 2 configured to cover the field of view of the user 5 is used.
  • AR Augmented Reality
  • a device other than the HMD 2 may be used as a device for providing the user 5 with virtual images.
  • a virtual image may be displayed on a display provided in a television, a smartphone, a tablet terminal, a PC (Personal Computer), or the like.
  • a user 5 wearing an immersive HMD 2 is provided with an omnidirectional image 6 as a VR image.
  • the omnidirectional video 6 is provided to the user 5 as a 6DoF video.
  • the user 5 can view the video in the full 360° range of front, back, left, right, and up and down in the virtual space S, which is a three-dimensional space.
  • the user 5 freely moves the position of the viewpoint, the line-of-sight direction, etc. in the virtual space S, and freely changes the visual field (visual field range) 7 of the user.
  • the image 8 displayed to the user 5 is switched according to the change in the field of view 7 of the user 5 .
  • the user 5 can view the surroundings in the virtual space S with the same feeling as in the real world by performing actions such as changing the direction of the face, tilting the face, and looking back.
  • the server-side rendering system 1 can distribute photorealistic free-viewpoint video, and can provide a viewing experience at a free-viewpoint position.
  • the HMD 2 acquires visual field information.
  • the visual field information is information about the visual field 7 of the user 5 .
  • the field-of-view information includes any information that can specify the field-of-view 7 of the user 5 within the virtual space S.
  • the visual field information includes the position of the viewpoint, the line-of-sight direction, the rotation angle of the line of sight, and the like.
  • the visual field information includes the position of the user's 5 head, the rotation angle of the user's 5 head, and the like.
  • the position and rotation angle of the user's head can also be referred to as Head Motion information.
  • the rotation angle of the line of sight can be defined by, for example, a rotation angle around an axis extending in the line of sight direction.
  • the rotation angle of the head of the user 5 can be defined by a roll angle, a pitch angle, and a yaw angle when the three mutually orthogonal axes set with respect to the head are the roll axis, the pitch axis, and the yaw axis. It is possible. For example, let the axis extending in the front direction of the face be the roll axis. When the face of the user 5 is viewed from the front, the axis extending in the horizontal direction is defined as the pitch axis, and the axis extending in the vertical direction is defined as the yaw axis.
  • the roll angle, pitch angle, and yaw angle with respect to these roll axis, pitch axis, and yaw axis are calculated as the rotation angle of the head. Note that it is also possible to use the direction of the roll axis as the direction of the line of sight. In addition, any information that can specify the field of view of the user 5 may be used. As the visual field information, one of the information exemplified above may be used, or a plurality of pieces of information may be combined and used.
  • the method of acquiring visual field information is not limited. For example, it is possible to acquire visual field information based on the detection result (sensing result) by the sensor device (including the camera) provided in the HMD 2 .
  • the HMD 2 is provided with a camera and a distance measuring sensor whose detection range is around the user 5, an inward facing camera capable of imaging the left and right eyes of the user 5, and the like.
  • the HMD 2 is provided with an IMU (Inertial Measurement Unit) sensor and a GPS.
  • the position information of the HMD 2 acquired by GPS can be used as the viewpoint position of the user 5 and the position of the user's 5 head.
  • the positions of the left and right eyes of the user 5 may be calculated in more detail.
  • the self-position estimation of the user 5 may be performed based on the detection result by the sensor device provided in the HMD 2 .
  • the self-position it is possible to calculate the position information of the HMD 2 and the orientation information such as which direction the HMD 2 faces. View information can be obtained from the position information and orientation information.
  • the algorithm for estimating the self-position of the HMD 2 is also not limited, and any algorithm such as SLAM (Simultaneous Localization and Mapping) may be used.
  • head tracking that detects the movement of the head of the user 5 and eye tracking that detects the movement of the user's 5 left and right line of sight may be performed.
  • any device or any algorithm may be used to acquire the field-of-view information.
  • a smartphone or the like is used as a device for displaying a virtual image to the user 5
  • the face (head) or the like of the user 5 may be captured, and the visual field information may be obtained based on the captured image.
  • a device including a camera, an IMU, or the like may be worn around the head or eyes of the user 5 .
  • Any machine learning algorithm using, for example, a DNN (Deep Neural Network) or the like may be used to generate the visual field information.
  • AI artificial intelligence
  • the HMD 2 and the client device 3 are connected so as to be able to communicate with each other.
  • the form of communication for communicably connecting both devices is not limited, and any communication technique may be used.
  • wireless network communication such as WiFi, short-range wireless communication such as Bluetooth (registered trademark), and the like.
  • the HMD 2 transmits the field-of-view information to the client device 3 .
  • the HMD 2 and the client device 3 may be configured integrally. That is, the functions of the client device 3 may be installed in the HMD 2 .
  • the client device 3 and the server device 4 have hardware necessary for computer configuration, such as a CPU, ROM, RAM, and HDD (see FIG. 19).
  • the information processing method according to the present technology is executed by the CPU loading the program according to the present technology prerecorded in the ROM or the like into the RAM and executing the program.
  • the client device 3 and the server device 4 can be implemented by any computer such as a PC (Personal Computer).
  • PC Personal Computer
  • hardware such as FPGA and ASIC may be used.
  • the client device 3 and the server device 4 are not limited to having the same configuration.
  • the client device 3 and the server device 4 are communicably connected via a network 9 .
  • the network 9 is constructed by, for example, the Internet, a wide area communication network, or the like.
  • any WAN (Wide Area Network), LAN (Local Area Network), or the like may be used, and the protocol for constructing the network 9 is not limited.
  • the client device 3 receives the field-of-view information transmitted from the HMD 2 .
  • the client device 3 also transmits the field-of-view information to the server device 4 via the network 9 .
  • the server device 4 receives the field-of-view information transmitted from the client device 3 .
  • the server device 4 also generates two-dimensional video data (rendering video) corresponding to the field of view 7 of the user 5 by performing rendering processing on the three-dimensional space data based on the field-of-view information.
  • the server device 4 corresponds to an embodiment of an information processing device according to the present technology. An embodiment of an information processing method according to the present technology is executed by the server device 4 .
  • the 3D spatial data includes scene description information and 3D object data.
  • the scene description information corresponds to three-dimensional space description data that defines the configuration of the three-dimensional space (virtual space S).
  • the scene description information includes various metadata for reproducing each scene of the 6DoF content, such as object attribute information.
  • Three-dimensional object data is data that defines a three-dimensional object in a three-dimensional space. That is, it becomes the data of each object that constitutes each scene of the 6DoF content. For example, data of three-dimensional objects such as people and animals, and data of three-dimensional objects such as buildings and trees are stored. Alternatively, data of a three-dimensional object such as the sky or the sea that constitutes the background or the like is stored.
  • a plurality of types of objects may be collectively configured as one three-dimensional object, and the data thereof may be stored.
  • the three-dimensional object data is composed of, for example, mesh data that can be expressed as polyhedral shape data and texture data that is data to be applied to the faces of the mesh data. Alternatively, it consists of a set of points (point cloud) (Point Cloud).
  • the server device 4 reproduces the three-dimensional space by arranging the three-dimensional objects in the three-dimensional space based on the scene description information. This three-dimensional space is reproduced on the memory by calculation. Using the reproduced three-dimensional space as a reference, the image viewed by the user 5 is cut out (rendering processing) to generate a rendered image, which is a two-dimensional image viewed by the user 5 . The server device 4 encodes the generated rendered video and transmits it to the client device 3 via the network 9 . Note that the rendered image corresponding to the user's field of view 7 can also be said to be the image of the viewport (display area) corresponding to the user's field of view 7 .
  • the client device 3 decodes the encoded rendered video transmitted from the server device 4 . Also, the client device 3 transmits the decoded rendered video to the HMD 2 . As shown in FIG. 2 , the HMD 2 reproduces the rendered video and displays it to the user 5 .
  • the image 8 displayed to the user 5 by the HMD 2 may be hereinafter referred to as a rendered image 8 .
  • FIG. 2 Another distribution system for the omnidirectional video 6 (6DoF video) illustrated in FIG. 2 is a client-side rendering system.
  • the client device 3 executes rendering processing on the three-dimensional space data based on the field-of-view information to generate two-dimensional video data (rendering video 8).
  • a client-side rendering system can also be referred to as a client-rendered media delivery system.
  • it is necessary to deliver 3D space data (3D space description data and 3D object data) from the server device 4 to the client device 3 .
  • the three-dimensional object data is composed of mesh data or point cloud data. Therefore, the amount of data distributed from the server device 4 to the client device 3 becomes enormous.
  • the client device 3 is required to have a considerably high processing capacity in order to execute rendering processing.
  • the rendered image 8 after rendering is delivered to the client device 3 .
  • the processing load on the client device 3 side can be offloaded to the server device 4 side, and even when the client device 3 with low processing capability is used, the user 5 can experience 6DoF video. becomes.
  • a client that selects the optimum 3D object data from a plurality of 3D object data prepared in advance with different data sizes (quality) (for example, two types of high resolution and low resolution) according to the user's field of view information.
  • quality for example, two types of high resolution and low resolution
  • server-side rendering does not switch between two types of quality 3D object data even if the field of view is changed, so there is an advantage in that seamless playback is possible even if the field of view is changed.
  • field-of-view information is not sent to the server device 4, so if processing such as blurring is to be performed on a predetermined area in the rendered image 8, it must be performed on the client device 3 side. At that time, since the 3D object data before blurring is transmitted to the client device 3, a reduction in the amount of distribution data cannot be expected.
  • FIG. 4 is a schematic diagram showing a functional configuration example of the server-side rendering system 1.
  • HMD2 acquires the user's 5 visual field information in real time.
  • the HMD 2 acquires field-of-view information at a predetermined frame rate and transmits it to the client device 3 .
  • the visual field information is repeatedly transmitted from the client device 3 to the server device 4 at a predetermined frame rate.
  • the frame rate of visual field information acquisition (the number of visual field information acquisition times/second) is set to synchronize with the frame rate of the rendered image 8, for example.
  • the rendered image 8 is composed of a plurality of frame images that are continuous in time series. Each frame image is generated at a predetermined frame rate.
  • a frame rate for obtaining view field information is set so as to synchronize with the frame rate of the rendered image 8 .
  • AR glasses or a display may be used as a device for displaying virtual images to the user 5 .
  • the server device 4 has a data input section 11 , a view information acquisition section 12 , a rendering section 14 , an encoding section 15 and a communication section 16 .
  • These functional blocks are implemented, for example, by the CPU executing the program according to the present technology, and the information processing method according to the present embodiment is executed.
  • dedicated hardware such as an IC (integrated circuit) may be used as appropriate.
  • the data input unit 11 reads 3D space data (scene description information and 3D object data) and outputs it to the rendering unit 14 .
  • the three-dimensional space data is stored, for example, in the storage unit 68 (see FIG. 19) within the server device 4.
  • FIG. Alternatively, the three-dimensional spatial data may be managed by a content server or the like communicably connected to the server device 4 . In this case, the data input unit 11 acquires three-dimensional spatial data by accessing the content server.
  • the communication unit 16 is a module for performing network communication, short-range wireless communication, etc. with other devices.
  • a wireless LAN module such as WiFi
  • a communication module such as Bluetooth (registered trademark) are provided.
  • communication with the client device 3 via the network 9 is realized by the communication unit 16 .
  • the view information acquisition unit 12 acquires view information from the client device 3 via the communication unit 16.
  • the acquired visual field information may be recorded in the storage unit 68 (see FIG. 19) or the like.
  • a buffer or the like for recording field-of-view information may be configured.
  • the rendering unit 14 executes rendering processing illustrated in FIG. 3 . That is, the rendering image 8 corresponding to the field of view 7 of the user 5 is generated by executing the rendering process on the three-dimensional space data based on the field of view information obtained in real time.
  • the frame images 19 forming the rendered image 8 are generated in real time based on the field-of-view information acquired at a predetermined frame rate.
  • the encoding unit 15 performs encoding processing (compression encoding) on the rendered video 8 (frame image 19) to generate distribution data.
  • the distribution data is packetized by the communication unit 16 and transmitted to the client device 3 . Thereby, it becomes possible to deliver the frame image 19 in real time according to the field of view information acquired in real time.
  • the rendering unit 14 functions as an embodiment of the rendering unit according to the present technology.
  • the encoding unit 15 functions as an embodiment of an encoding unit according to the present technology.
  • the client device 3 has a communication section 23 , a decoding section 24 and a rendering section 25 .
  • These functional blocks are implemented, for example, by the CPU executing the program according to the present technology, and the information processing method according to the present embodiment is executed.
  • dedicated hardware such as an IC (integrated circuit) may be used as appropriate.
  • the communication unit 23 is a module for performing network communication, short-range wireless communication, etc. with other devices. For example, a wireless LAN module such as WiFi and a communication module such as Bluetooth (registered trademark) are provided.
  • the decoding unit 24 executes decoding processing on the distribution data. As a result, the encoded rendering video 8 (frame image 19) is decoded.
  • the rendering unit 25 executes rendering processing so that the decoded rendering image 8 (frame image 19) can be displayed by the HMD 2.
  • the rendered frame image 19 is transmitted to the HMD 2 and displayed to the user 5 . Thereby, it becomes possible to display the frame image 19 in real time according to the change in the field of view 7 of the user 5 .
  • an attention area and a non-attention area are set for the display area of the two-dimensional video data (frame image 19).
  • the display area of the frame image 19 is a viewport corresponding to the field of view 7 of the user 5 and corresponds to the image area of the frame image 19 to be rendered.
  • the display area of the frame image 19 is a rendering target area, and can be called a rendering target area or a rendering area.
  • a region of interest is a region targeted for rendering at high resolution.
  • a non-interest area is a non-interest area to be rendered at low resolution. Note that the resolution of the frame image to be rendered (the number of pixels of V ⁇ H) does not change.
  • the resolution of an image rendered for a certain region is relatively high, it is expressed as being rendered at high resolution. Also, when the resolution of an image rendered with respect to a certain area (pixel area) is relatively low, it is expressed as being rendered at a low resolution. For example, when rendering is performed so that different pixel values (gradation values) are set for each pixel of the frame image 19, the image is rendered at the resolution of the frame image 19. Become. On the other hand, when a plurality of pixels such as four are grouped together and rendering is performed so that the same pixel value is set for the pixels within the group, the resolution of the rendered image is the same as that of the frame image 19. lower than resolution.
  • the setting is not limited to such a setting.
  • the resolution of an image to be rendered may be referred to as rendering resolution.
  • foveated rendering is performed in this embodiment.
  • Foveated rendering is also called foveated rendering.
  • FIG. 6 is a schematic diagram for explaining an example of foveated rendering.
  • Foveated rendering is rendering that matches the visual characteristics of the human being, in which the resolution is high in the center of the visual field and the resolution decreases toward the periphery of the visual field.
  • high-resolution rendering is performed in a central field-of-view area 27 partitioned by rectangles, circles, or the like.
  • the peripheral area 28 is further divided into areas such as rectangles and concentric circles, and rendering at low resolution is executed.
  • the central field of view region 27 is rendered at full resolution. For example, it is rendered at the resolution of the frame image 19 .
  • the peripheral region 28 is divided into three regions, rendered at 1/4 full resolution, 1/8 full resolution, and 1/16 full resolution toward the periphery of the field of view. .
  • the visual field center area 27 is set as the attention area 29.
  • the peripheral area 28 is set as the non-attention area 30 .
  • the non-interest area 30 may be divided into multiple areas and the rendering resolution may be reduced step by step.
  • the rendering resolution is set according to the two-dimensional position within the viewport (display area) 31 .
  • the positions of the visual field central region 27 (attention region 29) and the peripheral region 28 (non-attention region 30) are fixed.
  • Such foveated rendering is also called fixed foveated rendering.
  • the attention area 29 rendered with high resolution may be dynamically set based on the point of gaze that the user 5 is gazing at.
  • the periphery of the set attention area 29 becomes the non-attention area 30 rendered at low resolution.
  • the gaze point of the user 5 can be calculated based on the visual field information of the user 5 .
  • the gaze point itself is also included in the visual field information. That is, the gaze point may be used as the visual field information.
  • the attention area 29 and the non-attention area 30 may be dynamically set based on the visual field information of the user 5 .
  • the gaze object is an object to be gazed at by the user 5 among rendered objects.
  • an object on which the gaze point of the user 5 is located is extracted as the gaze object.
  • an object located in the center of viewport 31 may be extracted as the gaze object.
  • the object of interest is at least partially contained within the region of interest 29 set by foveated rendering. It should be noted that a point that at least a part of the area is included in the attention area 29 may be set as a condition for determining whether or not the area corresponds to the gaze object.
  • a gaze object is extracted based on parameters relating to rendering processing and view information.
  • Parameters related to the rendering process include any information used to generate rendered image 8 .
  • Parameters related to the rendering process also include any information that can be generated using the information used to generate the rendered image 8 .
  • the rendering unit 14 generates parameters for rendering processing based on the three-dimensional space data and the field-of-view information. Of course, it is not limited to such a generation method.
  • parameters related to rendering processing may be referred to as rendering information.
  • FIG. 7 is a schematic diagram for explaining an example of rendering information.
  • FIG. 7A is a schematic diagram showing a frame image 19 generated by rendering processing.
  • FIG. 7B is a schematic diagram showing a depth map (depth map image) 33 corresponding to the frame image 19.
  • FIG. A depth map 33 can be used as rendering information.
  • the depth map 33 is data including distance information (depth information) to an object to be rendered.
  • the depth map 33 can also be called a depth information map or a distance information map.
  • image data obtained by converting the distance to luminance as the depth map 33 .
  • it is not limited to such a format.
  • the depth map 33 can be generated based on, for example, three-dimensional space data and field-of-view information.
  • 3D rendering when rendering an object, it is necessary to check the context with objects that have already been rendered. At that time, a so-called Z-buffer is used.
  • the Z-buffer is a buffer that temporarily stores depth information (same resolution as the rendered image) of the current rendered image.
  • the rendering unit 14 confirms the anteroposterior relationship with it. Then, if the current object is earlier, render, otherwise, make a pixel-by-pixel determination.
  • This Z-buffer is used for confirmation at that time, and the depth value of the object rendered so far is written in the corresponding pixel, which is referred to and confirmed. Then, along with the confirmation, the depth value is set to the newly rendered pixels and updated. That is, at the timing when the rendering of the frame image 19 is completed, the rendering unit 14 also holds the depth map image data of the corresponding frame.
  • the method of acquiring the depth map 33 as rendering information is not limited, and any method may be adopted.
  • rendering information various information such as a motion vector map including motion information of an object to be rendered, brightness information of an object to be rendered, and color information of an object to be rendered can be acquired.
  • step 102 it is desirable to accurately detect the shape and contour of the gazed object and separate the gazed object from other objects (hereinafter referred to as non-gained objects) with high accuracy.
  • Various image analysis techniques are available as techniques for recognizing and separating objects from the omnidirectional video 6 and 2D moving images.
  • various object recognition technologies have been proposed for images, including basic shape recognition based on luminance distribution and edge detection, but the processing load is high and errors due to false detection cannot be completely eliminated. is left.
  • real-time analysis of moving images is much more difficult in terms of processing load.
  • the depth map image 33 acquired as rendering information as shown in FIG. 7B is not a depth value estimated by executing image analysis or the like on the frame image 19, but an accurate value obtained in the rendering process. be. That is, since the server-side rendering system 1 renders the 2D video viewed by the user 5 by itself, the accurate depth map 33 is acquired without the image analysis processing load of analyzing the rendered 2D video. It is possible. By using the depth map 33, it is possible to detect the anteroposterior relationship of objects placed in the three-dimensional space (virtual space) S, and to accurately detect the shape and contour of each object.
  • step 102 it is possible to extract the gaze object with very high accuracy based on the depth map 33 and the visual field information.
  • three-dimensional object data may be used to extract the gaze object. This makes it possible to improve the accuracy of extracting the gaze object. Since it is possible to accurately detect the shape and contour of the gaze object, the range to be rendered with high resolution can be reduced to only the necessary area, and the amount of data (information amount) of the frame image 19 can be reduced. becomes possible.
  • the object of interest within the region of interest 29 is rendered in high resolution.
  • the amount of data of the non-attention objects other than the attention object in the attention area 29 is reduced. For example, after rendering the entire region of interest 29 at high resolution, data amount reduction processing for reducing the amount of data may be performed on the non-gained object. That is, data amount reduction processing may be performed on non-gazing objects rendered at high resolution.
  • the rendering resolution when the data amount reduction process is executed for the non-gazing object is calculated. Then, the non-gazing object may be rendered at the calculated rendering resolution.
  • Data amount reduction processing includes arbitrary processing for reducing the image data amount of an image, such as blur processing, rendering resolution reduction, grayscaling, image gradation value reduction, and image display format conversion. For example, rendering the non-gained object in the region of interest 29 at a rendering resolution lower than the rendering resolution set for the region of interest 29 is also included in the data amount reduction processing for the non-gained object.
  • the non-interest areas 30 are rendered at low resolution. As a result, the entire frame image 19 is rendered.
  • the order in which each step shown in FIG. 5 is executed is not limited. Further, the steps shown in FIG. 5 are not limited to being executed in chronological order, and a plurality of steps may be executed in parallel. For example, the setting of the attention area 29 and the non-attention area 30 in step 101 and the extraction of the attention object in step 102 may be performed in the opposite order. Moreover, step 101 and step 102 may be executed in parallel. Also, there may be a case where a plurality of steps in each step shown in FIG. 5 are integrally executed.
  • the rendering resolution for the focused object in the attention area 29, the rendering resolution after the data amount reduction processing for the non-focused object in the attention area 29, and the rendering resolution for the non-focused area 30 are set respectively. Then, the entire frame image 19 is rendered at the set rendering resolution.
  • steps 103 and 104 are integrally executed.
  • the area rendered in high resolution has a large amount of data, and if the compression rate during encoding (compression encoding) is constant, the bit rate after encoding is increases in proportion to If the compression rate of encoding is increased, the bit rate can be reduced.
  • the gaze object gazed at by the user 5 within the attention area 29 is rendered with high resolution.
  • the amount of data of non-gazing objects within the attention area 29 is reduced.
  • the substantial data compression rate can be lowered without increasing the bit rate, and image quality deterioration due to compression can be suppressed.
  • FIG. 8 is a schematic diagram showing a specific configuration example of each of the rendering section 14 and the encoding section 15 shown in FIG.
  • a reproduction unit 35, a renderer 36, an encoder 37, and a controller 38 are constructed as functional blocks in the server device 4.
  • FIG. These functional blocks are implemented, for example, by the CPU executing the program according to the present technology, and the information processing method according to the present embodiment is executed.
  • dedicated hardware such as an IC (integrated circuit) may be used as appropriate.
  • the reproduction unit 35 reproduces the three-dimensional space by arranging the three-dimensional objects based on the scene description information.
  • controller 38 Based on the scene description information and the view information, controller 38 generates rendering parameters to direct how renderer 36 performs rendering. For example, the controller 38 executes foveated rendering region designation, gaze object designation, rendering resolution designation, parameter designation regarding data amount reduction processing, and the like.
  • a resolution map rendering resolution map
  • a resolution map including the rendering resolution for the gazed object in the attention area 29, the rendering resolution after the data amount reduction processing of the non-gained object in the attention area 29, and the rendering resolution of the non-attention area 30, etc. Can be used as a rendering parameter.
  • the controller 38 also generates encoding parameters for instructing how the encoder 37 performs encoding based on the rendering parameters instructed to the renderer 36 .
  • the controller 38 generates a QP map.
  • a QP map corresponds to a quantization parameter set for two-dimensional video data. For example, by switching the quantization precision (QP: Quantization Parameter) for each area within the rendered frame image 19, it is possible to suppress deterioration in image quality due to compression of points of interest and important areas within the frame image 19. FIG. By doing so, it is possible to suppress an increase in distribution data and processing load while maintaining sufficient video quality for areas important to the user 5 .
  • the QP value here is a value indicating the step of quantization at the time of irreversible compression.
  • the QP value is high, the coding amount is small, the compression efficiency is high, and the image quality deterioration due to compression progresses.
  • the QP value is low, the encoding amount is large, the compression efficiency is low, and image quality deterioration due to compression can be suppressed.
  • the renderer 36 performs rendering based on rendering parameters output from the controller 38 .
  • the encoder 37 performs encoding processing (compression encoding) on the two-dimensional video data based on the QP map output from the controller 38 .
  • the rendering unit 14 shown in FIG. 4 is configured by the reproduction unit 35, the controller 38, and the renderer 36.
  • the encoder 15 shown in FIG. 4 is configured by the controller 38 and the encoder 37 .
  • FIG. 9 is a flowchart illustrating an example of rendering video generation.
  • FIG. 9 illustrates an example of rendering video 8 (frame image 19) generated by the server device 4 as renderer/encoder cooperative processing.
  • 10 to 15 are schematic diagrams for explaining each step shown in FIG.
  • the case where the frame image 19 of the scene shown in FIG. 10 is generated is taken as an example. That is, it is assumed that a frame image 19 including objects of three persons P1 to P3, a tree T, grass G, a road R, and a building B is generated.
  • a frame image 19 including objects of three persons P1 to P3, a tree T, grass G, a road R, and a building B is generated.
  • each of the plurality of trees T and each of the plurality of grasses G in the frame image 19 are actually processed as different objects, they are collectively referred to as trees T and grasses G here.
  • the visual field information of the user 5 is acquired from the client device 3 by the communication unit 16 (step 201).
  • the data input unit 11 acquires three-dimensional object data forming a scene (step 202).
  • three-dimensional object data of each object of three persons P1 to P3, tree T, grass G, road R, and building B shown in FIG. 10 is obtained.
  • the acquired three-dimensional object data is output to the reproducing section 35 .
  • the reproduction unit 35 arranges the three-dimensional objects and reproduces the three-dimensional space (scene) (step 203).
  • the three-dimensional object data of the three persons P1 to P3, the tree T, the grass G, the road R, and the building B shown in FIG. 10 are arranged to reproduce the three-dimensional space.
  • a gaze object is extracted by the controller 38 based on the visual field information (step 204).
  • the person P1 positioned in the center of the viewport (display area) 31 is extracted as the gaze object 40.
  • FIG. Step 102 shown in FIG. 5 is executed by this step 204 .
  • each region of foveated rendering is set by the controller 38 .
  • the foveated rendering illustrated in FIG. 6A is performed. Therefore, the visual field central area 27 is set as the attention area 29 and the peripheral area 28 is set as the non-attention area 30 .
  • FIG. 11 omits illustration of a plurality of areas in which the rendering resolution is gradually lowered in the non-attention area 30 . This point also applies to FIGS. 12 to 15 and the like.
  • Step 101 shown in FIG. 5 is executed by this step 204 .
  • the controller 38 sets the blur intensity for the non-gazing object 41 within the gazing area 29 (step 205).
  • the area included in the attention area 29 of the person P1 is the gaze object 40 within the attention area 29.
  • the non-gazing object 41 in the attention area 29 can also be said to be an area other than the gaze object 40 in the attention area 29 .
  • blurring processing is executed as the data amount reduction processing for the non-gazing object 41 within the attention area 29 .
  • a plurality of pixels are grouped, and the same pixel value is set for each pixel in the group.
  • the pixel value set to the group is calculated by integrating (averaging, etc.) the pixel values of the plurality of grouped pixels. Therefore, in the present embodiment, rendering resolution reduction is performed as the blurring process.
  • the blur intensity is used as a parameter for data amount reduction processing.
  • the blur intensity is calculated based on the depth map 33 illustrated in FIG. 7B. That is, the blur intensity is set for the non-gazing object 41 based on the distance information (depth information) to each object. Setting the blur strength will be described later in detail.
  • the gaze object 40 within the attention area 29 is rendered at the first resolution.
  • Non-gained objects 41 other than the gazed object 40 within the region of interest 29 are rendered at a second resolution lower than the first resolution.
  • data amount reduction processing other than the blurring processing may be executed as the rendering resolution reduction.
  • the rendering resolution for each object is set by the controller 38 (step 207). As shown in FIG. 15, for each object (persons P1 to P3, trees T, grass G, road R, building B) in the foveated rendering non-attention area 30, the peripheral area illustrated in FIG. 6A 28 progressively lower rendering resolutions are set. That is, the areas included in the non-attention area 30 of each object (persons P1 to P3, trees T, grass G, roads R, and buildings B) are rendered at low resolution.
  • the maximum resolution illustrated in FIG. 6A is set for the gaze object 40 (person P1) within the attention area 29.
  • the resolution of the frame image 19 is set.
  • the rendering resolution when the blurring process is performed is set for the non-gazing object 41 within the attention area 29.
  • the image data (pixel data) when the non-gazing object 41 is rendered at the maximum resolution is used as a reference, and the rendering resolution after the blurring process is executed is calculated by calculation.
  • the calculated rendering resolution is set as the rendering resolution of the non-gazing object 41 .
  • the blur strength is set such that the rendering resolution after blur processing is higher than the resolution of the non-interest area 30 . Of course, it is not limited to this.
  • the renderer 36 renders the frame image 19 at the set rendering resolution (step 208).
  • the rendered frame image 19 is output to the encoder 37 .
  • a QP map is generated by the controller 38 based on the resolution distribution (resolution map) of the frame image 19 (step 209).
  • a QP map is generated in which a QP value is set low in a high-resolution area and a high QP value is set in a low-resolution area. For example, a first quantization parameter (QP value) is set for the region of interest 29, and a second quantization parameter (QP value) larger than the first quantization parameter (QP value) is set for the region of non-interest 30. QP value) is set.
  • the first quantization parameter (QP value) is set for the focused object 40 in the attention area 29, and the first quantization parameter (QP value) is set for the non-attention object 41 in the attention area 29.
  • a second quantization parameter (QP value) that is larger than the non-interesting region 30 is set, and a third quantization parameter (QP value) that is larger than the second quantization parameter (QP value) is set for the non-attention area 30 .
  • any method may be adopted as a method of generating a QP map based on a resolution map.
  • the encoder 37 performs encoding processing (compression encoding) on the frame image 19 based on the QP map (step 210).
  • the QP value is low in the high-resolution area, the coding amount is large. Therefore, since the compression efficiency is low, it is possible to suppress deterioration of image quality due to compression.
  • the QP value is high in the low-resolution area, the coding amount is small and the compression efficiency is high. As a result, it is possible to prevent an increase in distribution data and processing load while maintaining sufficient video quality for the user 5, and in addition, it is extremely advantageous for real-time encoding processing.
  • the resolution map output from the rendering unit 14 can be used, processing such as analysis of the frame image 19 by the encoding unit 15 is unnecessary. As a result, the processing load on the encoding unit 15 is reduced, which is advantageous for real-time encoding processing.
  • steps 205 to 208 integrally execute steps 103 and 104 shown in FIG. Further, in the processing shown in FIG. 9, the blurring processing is executed simultaneously with the rendering. This makes it possible to suppress the rendering processing load. Without being limited to this, blurring processing may be performed by filtering processing or the like on the rendered frame image 19 .
  • FIG. Blur processing can be performed by simulating blur based on the depth of field (DoF) of a real-world lens, as shown in FIG. 16A. That is, the blurring process is executed in the same manner as the blurring that occurs when the real world is photographed by a camera. For example, by simulating the blurring of a physical lens with a shallow depth of field, the blurring intensity for the non-gazing object 41 is set. In a physical lens blur simulation, the blur increases continuously as the distance increases in the front and rear directions from the focal position (focus position). To apply this to a 2D image, contextual information for each object is required.
  • DoF depth of field
  • the renderer 36 can generate the depth map 33 with very high accuracy, so it is possible to easily calculate the blur intensity with high accuracy. That is, in the present embodiment, based on the high-precision depth map 33, not only the high-precision extraction (separation) of the focused object 40 and the non-gained object 41, but also the blurring process as the data amount reduction process is performed with high precision. The fact that it is possible is also a major feature.
  • a focus position is set as a predetermined reference position for the non-gazing object 41 .
  • the position of the gaze object 40 may be set as the focus position.
  • the greater the difference between the distance to the non-gained object 41 and the focus position (predetermined reference position) the higher the blur intensity for the non-gained object 41 is set.
  • the intensity is set according to the distance in the same manner (same ratio). Therefore, as shown in FIG. 16A, the intensity is set symmetrically in each of the range closer to the focal position and the range farther from the focal position.
  • the blur strength is set so that blurring occurs even for the non-gazing object 41 within the depth of field.
  • a constant blur intensity may be set as an offset value for the non-gazing object 41 within the depth of field.
  • the blur intensity may be set so that the blur intensity increases according to the distance even within the depth of field. This makes it possible to efficiently reduce the data amount of the non-gazing object 41 .
  • the focus position predetermined reference position
  • the non-gazing object 41 (within the region of interest 29), which is at the same distance as the gaze object 40 from the user's point of view, should be rendered in focus and at high resolution in a real lens simulation. Blurring the non-gazing object 41 within the depth of field is also because the purpose is not to simulate the actual lens but to improve the encoding efficiency.
  • the strength of the blur does not necessarily have to conform to the simulation based on parameters such as the focal length of the actual lens, the F-number, and the aperture.
  • the blur intensity is set so that the non-gazing object 41 is greatly blurred beyond the distance from the focus position.
  • a plurality of ranges are set for the difference between the distance to the non-gazing object 41 and the focus position (predetermined reference distance).
  • a blur intensity is set for each of the plurality of ranges.
  • the difference between the distance to the non-gazing object 41 and the predetermined reference distance is in the first range from 0 to the first distance, and the difference is greater than the first distance from the first distance to the first distance.
  • a second range up to a second larger distance is set.
  • the first range is the depth of field range. Of course, it is not limited to this.
  • a first blurring intensity is set in the first range, and a second blurring intensity higher than the first blurring intensity is set in the second range.
  • a third range is set from the second distance to a third distance in which the difference is greater than the second distance, and the third range has a higher blur intensity than the second blur intensity.
  • a third blur intensity is set. Blur processing in a manner different from such a real physical lens may be performed. That is, the blur intensity is set so that the non-gazing objects 41 within the same range are uniformly blurred. As a result, the data amount of the non-gazing object 41 can be greatly reduced, and the data amount of the image before input to the encoder can be reduced more efficiently.
  • the intensity is set symmetrically in each of the range closer to the focus position and the range farther from the focus position.
  • the blur strength may be set in a manner different from each other in the range closer to the focal position and in the range farther from the focal position. That is, the intensity may be set asymmetrically in each of the range closer to the focal position and the range farther from the focal position.
  • the blur setting is set so that the non-gazing object 41 positioned farther from the focus position is blurred more strongly than the non-gazing object 41 positioned closer to the focus position. be. For the user 5, it is considered that the non-gazing object 41, which is closer, is easier to see.
  • the blurring intensity is set so that the non-gazing object 41 in a far range is blurred more strongly than the non-gazing object 41 in a short range.
  • the frame image 19 becomes easy for the user 5 to view.
  • the blurring setting may be set so that the non-gazing object 41 positioned closer to the focal position is more blurred than the non-gazing object 41 positioned farther than the focal position.
  • a setting in which the blur intensity gradually increases as the difference from the focus position increases as shown in FIG. 16A and a setting in which the difference from the focus position is divided into a plurality of ranges as shown in FIG. 16B are combined.
  • the setting of FIG. 16A is adopted in the range closer than the focus position. In the range farther than the focal position, the setting of FIG. 16B is adopted. It is also possible to set such a blur intensity.
  • blurring may be performed for the entire attention area 29 including the gazed object 40 as well.
  • the gaze object 40 is positioned at the focus position (blurring strength 0). Note that when the gaze object 40 is long in the depth direction, blurring processing is performed such that any part of the gaze object 40 is in focus.
  • a process using a blurring filter such as an averaging filter may be executed.
  • a circular kernel is set for the target pixel, and the pixel value of the target pixel is converted to the average of the pixel values of each pixel included in the circular kernel.
  • the filter radius of the averaging filter (the radius of the circular kernel) can be used as the blurring intensity. The larger the filter radius, the greater the blurring intensity, and the smaller the filter deformation, the smaller the blurring intensity.
  • This blurring process can also simulate blurring based on the depth of field (DoF) of a real-world lens. Further, it is possible to set the blur intensity as illustrated in FIGS. 16 and 17 .
  • Reduction of color components may be performed as the data amount reduction process. That is, the types of expressible colors may be reduced. For example, the region of the non-gazing object 41 within the region of interest 29 is expressed in gray or a single color that is the main color of that region. This makes it possible to reduce the data amount of the non-gazing object 41 . Of course, blurring processing and deletion of color components may be used together. In addition, arbitrary data amount reduction processing may be executed.
  • the server device 4 sets the attention area 29 and the non-attention area 30 in the display area 31 of the two-dimensional video data to be rendered. Then, the focused object 40 within the focused area 29 is rendered with high resolution, and the data amount of the non-focused object 41 within the focused area 29 is reduced. This makes it possible to deliver high-quality virtual video.
  • foveated rendering is performed, and a target area 29 to be rendered at high resolution and a non-attention area to be rendered at low resolution are displayed on the viewport (display area) 31. 30 are set.
  • segmentation is performed independently of the content of the displayed image and the shape of objects within the image. Therefore, from the viewpoint of image compression encoding, the surrounding area (non-gained object 41) other than the gazed object 40 gazed at by the user 5 is also rendered with high resolution.
  • a quality designation parameter such as a CRF (Constant Rate Factor) to a small value in order to reduce image quality deterioration due to compression encoding when the attention area 29 is encoded by the subsequent encoder 37 .
  • a quality designation parameter such as a CRF (Constant Rate Factor)
  • CRF Constant Rate Factor
  • encoding with a small CRF value generates a large amount of bits.
  • the region of interest 29 is compression-encoded with a small CRF value
  • the region originally containing a large amount of information is encoded at a low compression rate. Therefore, the bit amount generated in the attention area 29 occupies a dominant ratio with respect to the generated bit amount of the entire image, and the bit rate of the entire image increases. If the compression ratio of the encoder 37 is increased, the bit rate will decrease, but generally the image quality will also decrease.
  • the gaze object 40 within the attention area 29 is extracted and rendered in high resolution.
  • the data amount reduction process is executed for the non-gazing object 41 in the attention area 29, and the data amount is reduced.
  • the amount of data in the attention area 29 can be efficiently reduced without impairing the subjective image quality, and the generated bit amount can be suppressed while maintaining the image quality of the attention area 29 without reducing the CFR value. becomes possible. That is, it is possible to reduce the effective compression ratio in the subsequent encoding, and to achieve both suppression of image quality deterioration and reduction in bit rate.
  • the server-side rendering system 1 since the server-side rendering system 1 is adopted, for example, it is possible to control the amount of data before encoding for each object without executing image analysis with a heavy processing load. can improve efficiency,
  • the non-gazing object 41 is blurred. Even if the non-gained object 41 is blurred, the number of pixels constituting the non-gained object 41 itself does not change significantly. Therefore, the data rate calculated from the number of pixels does not change, but compression encoding shortens the coefficient string when the blurred area is quantized by DCT (Discrete Cosine Transform). Therefore, the amount of generated data becomes smaller. This is because frequency components with high spatial frequencies are cut in the blurred area, and the substantial amount of data is reduced. In the present disclosure, data volume reduction includes such substantial data volume reduction.
  • Both foveated rendering and blurring can be said to be processes for reducing the amount of data.
  • foveated rendering reduces the amount of data using the position of the two-dimensional surface of the image as a parameter
  • blurring reduces the amount of data using the distance from the user position to each object as a parameter.
  • This embodiment is characterized in that a blurring process using a depth map 33 is introduced in order to reduce the amount of data other than the gaze object 40 in the attention area 29 in the server-side rendering system 1 that performs foveated rendering. This achieves the effect of both suppressing deterioration of the subjective image quality and reducing the amount of generated bits when the attention area 29 is compression-encoded.
  • application of the present technology is not limited to introducing blurring processing using the depth map 33 .
  • FIG. 18 is a schematic diagram showing an example of rendering according to another embodiment.
  • the gaze object 40 in the non-attention area 30 may be rendered with high resolution. That is, the entire person P1, which is the gaze object 40 (including the portion included in the non-attention area 30), may be rendered with high resolution.
  • the attention area 29 In fixed foveated rendering, since the attention area 29 is fixed, it is possible that the gaze object 40 extends outside the attention area. Even if the attention area 29 is dynamically set according to the gaze point, the attention object 40 may extend outside the attention area if the size of the attention object 40 is large. In this way, when part of the gaze object 40 in the attention area 29 exists in the non-attention area (low-resolution area) 30, that part is also rendered at high resolution. As a result, when the user 5 gazing at the gaze object 40 shifts the line of sight, it is possible to prevent a low-resolution portion from being seen even though it is the same gaze object 40 . In the example shown in FIG. 18, it is possible to prevent the user 5 from suddenly seeing the portion above the forehead of the person P1 with a low resolution and feeling uncomfortable.
  • the omnidirectional video 6 (6DoF video) including 360-degree spatial video data and the like is distributed as the virtual image
  • the present technology is not limited to this, and can be applied when 3DoF video, 2D video, or the like is distributed.
  • the virtual image instead of the VR video, an AR video or the like may be distributed.
  • the present technology can also be applied to stereo images (for example, right-eye images and left-eye images) for viewing 3D images.
  • FIG. 19 is a block diagram showing a hardware configuration example of a computer (information processing device) 60 that can implement the server device 4 and the client device 3.
  • the computer 60 includes a CPU 61, a ROM (Read Only Memory) 62, a RAM 63, an input/output interface 65, and a bus 64 connecting them together.
  • a display unit 66, an input unit 67, a storage unit 68, a communication unit 69, a drive unit 70, and the like are connected to the input/output interface 65.
  • the display unit 66 is a display device using liquid crystal, EL, or the like, for example.
  • the input unit 67 is, for example, a keyboard, pointing device, touch panel, or other operating device.
  • the input portion 67 includes a touch panel
  • the touch panel can be integrated with the display portion 66 .
  • the storage unit 68 is a non-volatile storage device such as an HDD, flash memory, or other solid-state memory.
  • the drive unit 70 is a device capable of driving a removable recording medium 71 such as an optical recording medium or a magnetic recording tape.
  • the communication unit 69 is a modem, router, or other communication equipment for communicating with other devices that can be connected to a LAN, WAN, or the like.
  • the communication unit 69 may use either wired or wireless communication.
  • the communication unit 69 is often used separately from the computer 60 .
  • Information processing by the computer 60 having the hardware configuration as described above is realized by cooperation of software stored in the storage unit 68 or the ROM 62 or the like and the hardware resources of the computer 60 .
  • the information processing method according to the present technology is realized by loading a program constituting software stored in the ROM 62 or the like into the RAM 63 and executing the program.
  • the program is installed in the computer 60 via the recording medium 61, for example.
  • the program may be installed on the computer 60 via a global network or the like.
  • any computer-readable non-transitory storage medium may be used.
  • An information processing method and a program according to the present technology may be executed by a plurality of computers communicably connected via a network or the like to construct an information processing apparatus according to the present technology. That is, the information processing method and program according to the present technology can be executed not only in a computer system configured by a single computer, but also in a computer system in which a plurality of computers work together.
  • a system means a set of multiple components (devices, modules (parts), etc.), and it does not matter whether all the components are in the same housing. Therefore, a plurality of devices housed in separate housings and connected via a network, and a single device housing a plurality of modules within a single housing, are both systems.
  • the information processing method according to the present technology and the execution of the program by the computer system are, for example, acquisition of view information, execution of rendering processing, generation of rendering information, etc. are executed by a single computer, and each processing is executed by a different computer including both when executed by Execution of each process by a predetermined computer includes causing another computer to execute part or all of the process and obtaining the result. That is, the information processing method and program according to the present technology can also be applied to a configuration of cloud computing in which a plurality of devices share and jointly process one function via a network.
  • expressions using "more than” such as “greater than A” and “less than A” encompass both concepts that include the case of being equivalent to A and concepts that do not include the case of being equivalent to A. is an expression contained in For example, “greater than A” is not limited to not including equal to A, but also includes “greater than or equal to A.” Also, “less than A” is not limited to “less than A”, but also includes “less than A”. When implementing the present technology, specific settings and the like may be appropriately adopted from concepts included in “greater than A” and “less than A” so as to exhibit the effects described above.
  • the present technology can also adopt the following configuration.
  • a rendering unit that generates two-dimensional video data corresponding to the user's field of view by executing rendering processing on the three-dimensional space data based on the user's field of view information;
  • the rendering unit setting an attention area to be rendered at high resolution and a non-attention area to be rendered at low resolution in the display area of the two-dimensional image data; extracting a gaze object to be gazed at by the user based on the parameters related to the rendering process and the field of view information;
  • An information processing apparatus that renders the gaze object in the attention area at a high resolution and reduces the amount of data of non-gain objects other than the attention object in the attention area.
  • the information processing device (2) The information processing device according to (1), The parameters related to the rendering process include distance information to an object to be rendered, The information processing apparatus, wherein the rendering unit reduces a data amount of the non-gazing object within the attention area based on the distance information. (3) The information processing device according to (2), The information processing apparatus, wherein the rendering unit executes a blurring process on the non-gazing object within the attention area. (4) The information processing device according to (3), The information processing apparatus, wherein the rendering unit executes the blurring process by simulating blurring based on the depth of field of a lens in the real world.
  • the information processing device according to (3) or (4), The information processing apparatus, wherein the rendering unit sets a higher blur intensity for the non-gained object as the difference between the distance to the non-gained object and a predetermined reference distance increases.
  • the rendering unit sets a plurality of ranges regarding a difference between a distance to the non-gazing object and a predetermined reference distance, and sets blur intensity for each of the plurality of ranges.
  • the rendering unit provides a first range in which the difference between the distance to the non-gazing object and a predetermined reference distance is from 0 to a first distance, and a range in which the difference is from the first distance to the first distance setting a second range up to a second distance greater than the above, setting a first blurring intensity in the first range, and setting a second blurring intensity higher than the first blurring intensity in the second range; An information processing device that sets the blur intensity.
  • the rendering unit sets a third range from the second distance to a third distance in which the difference is greater than the second distance, and sets the third range to a blur intensity higher than the second blur intensity.
  • An information processing device that sets a third blur intensity (9) The information processing device according to any one of (3) to (8), The rendering unit sets the blur intensity such that the non-gained object located in a range farther than the reference distance is blurred more strongly than the non-gained object located in a range closer than the predetermined reference distance.
  • Information processing equipment (10) The information processing device according to any one of (3) to (9), The information processing apparatus, wherein the rendering unit executes the blurring process on the non-gained object after rendering the non-gained object at a high resolution.
  • the information processing device according to any one of (1) to (11), The information processing apparatus, wherein the rendering unit renders the gaze object in the non-attention area with high resolution when the gaze object exists in the non-attention area.
  • the information processing device (13) The information processing device according to (1), The rendering unit renders the focused object within the attention area at a first resolution, and renders non-focused objects other than the focused object within the attention area at a second resolution lower than the first resolution. Information processing equipment.
  • the information processing device according to any one of (1) to (13), The information processing apparatus, wherein the rendering unit sets the attention area and the non-attention area based on the view information.
  • the information processing device according to any one of (1) to (14), further comprising: An information processing apparatus, comprising an encoding unit that sets a quantization parameter for the two-dimensional video data and performs an encoding process on the two-dimensional video data based on the set quantization parameter.
  • An information processing apparatus comprising an encoding unit that sets a quantization parameter for the two-dimensional video data and performs an encoding process on the two-dimensional video data based on the set quantization parameter.
  • the information processing device sets a first quantization parameter for the region of interest, and sets a second quantization parameter larger than the first quantization parameter for the region of non-interest.
  • the information processing device sets a first quantization parameter for the focused object within the attention area, and sets a second quantization parameter larger than the first quantization parameter for the non-focused object within the attention area.
  • the information processing device according to any one of (1) to (17), The information processing device, wherein the three-dimensional spatial data includes at least one of omnidirectional video data and spatial video data.
  • An information processing method executed by a computer system a rendering step of generating two-dimensional video data corresponding to the user's field of view by executing rendering processing on the three-dimensional space data based on the field of view information about the user's field of view;
  • the rendering step includes: setting an attention area to be rendered at high resolution and a non-attention area to be rendered at low resolution in the display area of the two-dimensional image data; a step of extracting a gaze object to be gazed at by the user based on the parameters relating to the rendering process and the field of view information; and rendering the gaze object in the attention area with high resolution to reduce the amount of data of non-gain objects other than the attention object in the attention area.
  • Server-side rendering system 2... HMD 3 Client device 4 Server device 5 User 6 Omnidirectional image 8 Rendered image 12 Visual field information acquisition unit 14 Rendering unit 15 Encoding unit 16 Communication unit 19 Frame image 29 Area of interest 30 Non Attention area 31 ... Viewport (display area) 33 Depth map 35 Reproduction unit 36 Renderer 37 Encoder 38 Controller 40 Gaze object 41 Non-gaze object 60 Computer

Abstract

本情報処理装置は、レンダリング部を具備する。前記レンダリング部は、ユーザの視野に関する視野情報に基づいて、3次元空間データに対してレンダリング処理を実行することにより、前記ユーザの視野に応じた2次元映像データを生成する。また、前記レンダリング部は、前記2次元映像データの表示領域に対して、高解像度でのレンダリングの対象となる注目領域と、低解像度でのレンダリングの対象となる非注目領域とを設定し、前記レンダリング処理に関するパラメータと前記視野情報とに基づいて、前記ユーザの注視対象となる注視オブジェクトを抽出し、前記注目領域内の前記注視オブジェクトを高解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトのデータ量を低減させる。

Description

情報処理装置及び情報処理方法
 本技術は、VR(Virtual Reality:仮想現実)映像の配信等に適用可能な情報処理装置、及び情報処理方法に関する。
 近年、全天周カメラ等により撮影された、全方位を見回すことが可能な全天周映像が、VR映像として配信されるようになってきている。さらに最近では、視聴者(ユーザ)が、全方位見回し(視線方向を自由に選択)することができ、3次元空間中を自由に移動することができる(視点位置を自由に選択することができる)6DoF(Degree of Freedom)映像(6DoFコンテンツとも称する)を配信する技術の開発が進んでいる。
 このような6DoFコンテンツは、時刻毎に、視聴者の視点位置、視線方向及び視野角(視野範囲)に応じて、1つもしくは複数の3次元オブジェクトで3次元空間を動的に再現するものである。
 このような映像配信においては、視聴者の視野範囲に応じて、視聴者に提示する映像データを動的に調整(レンダリング)することが求められる。例えば、このような技術の一例としては、特許文献1に開示の技術を挙げることができる。
特表2007-520925号公報
 VR映像等の仮想的な映像(仮想映像)の配信は普及していくと考えられ、高品質な仮想映像の配信を可能とする技術が求められている。
 以上のような事情に鑑み、本技術の目的は、高品質な仮想映像の配信を実現することが可能な情報処理装置、及び情報処理方法を提供することにある。
 上記目的を達成するため、本技術の一形態に係る情報処理装置は、レンダリング部を具備する。
 前記レンダリング部は、ユーザの視野に関する視野情報に基づいて、3次元空間データに対してレンダリング処理を実行することにより、前記ユーザの視野に応じた2次元映像データを生成する。
 また、前記レンダリング部は、前記2次元映像データの表示領域に対して、高解像度でのレンダリングの対象となる注目領域と、低解像度でのレンダリングの対象となる非注目領域とを設定し、前記レンダリング処理に関するパラメータと前記視野情報とに基づいて、前記ユーザの注視対象となる注視オブジェクトを抽出し、前記注目領域内の前記注視オブジェクトを高解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトのデータ量を低減させる。
 この情報処理装置では、レンダリング対象となる2次元映像データの表示領域に対して、注目領域と非注目領域とが設定される。そして、注目領域内の注視オブジェクトが高解像度でレンダリングされ、注目領域内の非注視オブジェクトのデータ量が低減される。これにより、高品質な仮想映像の配信を実現することが可能となる。
 前記レンダリング処理に関するパラメータは、レンダリング対象となるオブジェクトまでの距離情報を含んでもよい。この場合、前記レンダリング部は、前記距離情報に基づいて、前記注目領域内の前記非注視オブジェクトのデータ量を低減させてもよい。
 前記レンダリング部は、前記注目領域内の前記非注視オブジェクトに対して、ぼかし処理を実行してもよい。
 前記レンダリング部は、実世界のレンズの被写界深度に基づくぼけをシミュレートすることで、前記ぼかし処理を実行してもよい。
 前記レンダリング部は、前記非注視オブジェクトまでの距離と、所定の基準距離との差分が大きくなるほど、前記非注視オブジェクトに対するぼかし強度を高く設定してもよい。 
 前記レンダリング部は、前記非注視オブジェクトまでの距離と所定の基準距離との差分に関して複数の範囲を設定し、前記複数の範囲の各々に対して、ぼかし強度を設定してもよい。
 前記レンダリング部は、前記非注視オブジェクトまでの距離と所定の基準距離との差分が0から第1の距離までの第1の範囲と、前記差分が前記第1の距離から前記第1の距離よりも大きい第2の距離までの第2の範囲とを設定し、前記第1の範囲に第1のぼかし強度を設定し、前記第2の範囲に前記第1のぼかし強度よりも高い第2のぼかし強度を設定してもよい。
 前記レンダリング部は、前記差分が前記第2の距離から前記第2の距離よりも大きい第3の距離までの第3の範囲を設定し、前記第3の範囲に第2のぼかし強度よりも高い第3のぼかし強度を設定してもよい。
 前記レンダリング部は、所定の基準距離よりも近い範囲に位置する前記非注視オブジェクトよりも、前記基準距離よりも遠い範囲に位置する前記非注視オブジェクトの方が強くぼけるように、前記ぼかし強度を設定してもよい。
 前記レンダリング部は、前記非注視オブジェクトを高解像度でレンダリングした後に、前記非注視オブジェクトに対して前記ぼかし処理を実行してもよい。
 前記レンダリング部は、前記非注視オブジェクトを、前記ぼかし処理が実行された場合の解像度でレンダリングしてもよい。
 前記レンダリング部は、前記非注目領域内に前記注視オブジェクトが存在する場合には、前記非注目領域内の前記注視オブジェクトを高解像度でレンダリングしてもよい。
 前記レンダリング部は、前記注目領域内の前記注視オブジェクトを第1の解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトを前記第1の解像度よりも低い第2の解像度でレンダリングしてもよい。
 前記レンダリング部は、前記視野情報に基づいて、前記注目領域、及び前記非注目領域を設定してもよい。
 前記情報処理装置は、さらに、前記2次元映像データに対して量子化パラメータを設定し、設定された前記量子化パラメータに基づき前記2次元映像データに対してエンコード処理を実行するエンコード部を具備してもよい。
 前記エンコード部は、前記注目領域に対して第1の量子化パラメータを設定し、前記非注目領域に対して、前記第1の量子化パラメータよりも大きい第2の量子化パラメータを設定してもよい。
 前記エンコード部は、前記注目領域内の前記注視オブジェクトに対して第1の量子化パラメータを設定し、前記注目領域内の前記非注視オブジェクトに対して前記第1の量子化パラメータよりも大きい第2の量子化パラメータを設定し、前記非注目領域に対して前記第2の量子化パラメータよりも大きい第3の量子化パラメータを設定してもよい。
 前記3次元空間データは、全天周映像データ、又は空間映像データの少なくとも一方を含んでもよい。
 本技術の一形態に係る情報処理方法は、コンピュータシステムが実行する情報処理方法であって、ユーザの視野に関する視野情報に基づいて、3次元空間データに対してレンダリング処理を実行することにより、前記ユーザの視野に応じた2次元映像データを生成するレンダリングステップを具備する。
 前記レンダリングステップは、
 前記2次元映像データの表示領域に対して、高解像度でのレンダリングの対象となる注目領域と、低解像度でのレンダリングの対象となる非注目領域とを設定するステップと、
 前記レンダリング処理に関するパラメータと前記視野情報とに基づいて、前記ユーザの注視対象となる注視オブジェクトを抽出するステップと、
 前記注目領域内の前記注視オブジェクトを高解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトのデータ量を低減させるステップと
 を含む。
サーバサイドレンダリングシステムの基本的な構成例を示す模式図である。 ユーザが視聴可能な仮想映像の一例を説明するための模式図である。 レンダリング処理を説明するための模式図である。 サーバサイドレンダリングシステムの機能的な構成例を示す模式図である。 レンダリングの基本動作例を示すフローチャートである。 フォービエイテッドレンダリングの一例を説明するための模式図である。 レンダリング情報の一例を説明するための模式図である。 図4に示すレンダリング部及びエンコード部の具体的な構成例を示す模式図である。 レンダリング映像の生成の一例を示すフローチャートである。 図9に示す各ステップを説明するための模式図である。 図9に示す各ステップを説明するための模式図である。 図9に示す各ステップを説明するための模式図である。 図9に示す各ステップを説明するための模式図である。 図9に示す各ステップを説明するための模式図である。 図9に示す各ステップを説明するための模式図である。 デプスマップを用いたぼかし処理について説明するための模式図である。 デプスマップを用いたぼかし処理について説明するための模式図である。 他の実施形態に係るレンダリングの一例を示す模式図である。 サーバ装置及びクライアント装置を実現可能なコンピュータ(情報処理装置)のハードウェア構成例を示すブロック図である。
 以下、本技術に係る実施形態を、図面を参照しながら説明する。
 [サーバサイドレンダリングシステム]
 本技術に係る一実施形態として、サーバサイドレンダリングシステムを構成する。まず図1~図3を参照して、サーバサイドレンダリングシステムの基本的な構成例及び基本的な動作例について説明する。
 図1は、サーバサイドレンダリングシステムの基本的な構成例を示す模式図である。
 図2は、ユーザが視聴可能な仮想映像の一例を説明するための模式図である。
 図3は、レンダリング処理を説明するための模式図である。
 なお、サーバサイドレンダリングシステムを、サーバレンダリング型のメディア配信システムと呼ぶことも可能である。
 図1に示すように、サーバサイドレンダリングシステム1は、HMD(Head Mounted Display)2と、クライアント装置3と、サーバ装置4とを含む。
 HMD2は、ユーザ5に仮想映像を表示するために用いられるデバイスである。HMD2は、ユーザ5の頭部に装着されて使用される。
 例えば、仮想映像としてVR映像が配信される場合には、ユーザ5の視野を覆うように構成された没入型のHMD2が用いられる。
 仮想映像として、AR(Augmented Reality:拡張現実)映像が配信される場合には、ARグラス等が、HMD2として用いられる。
 ユーザ5に仮想映像を提供するためのデバイスとして、HMD2以外のデバイスが用いられてもよい。例えば、テレビ、スマートフォン、タブレット端末、及びPC(Personal Computer)等に備えられたディスプレイにより、仮想映像が表示されてもよい。
 図2に示すように、本実施形態では、没入型のHMD2を装着したユーザ5に対して、全天球映像6がVR映像として提供される。また全天球映像6は、6DoF映像としてユーザ5に提供される。
 ユーザ5は、3次元空間からなる仮想空間S内において、前後、左右、及び上下の全周囲360°の範囲で映像を視聴することが可能となる。例えばユーザ5は、仮想空間S内にて、視点の位置や視線方向等を自由に動かし、自分の視野(視野範囲)7を自由に変更させる。このユーザ5の視野7の変更に応じて、ユーザ5に表示される映像8が切替えられる。ユーザ5は、顔の向きを変える、顔を傾ける、振り返るといった動作をすることで、現実世界と同じような感覚で、仮想空間S内にて周囲を視聴することが可能となる。
 このように、本実施形態に係るサーバサイドレンダリングシステム1では、フォトリアルな自由視点映像を配信することが可能となり、自由な視点位置での視聴体験を提供することが可能となる。
 図1に示すように、本実施形態では、HMD2により、視野情報が取得される。
 視野情報は、ユーザ5の視野7に関する情報である。具体的には、視野情報は、仮想空間S内におけるユーザ5の視野7を特定することが可能な任意の情報を含む。
 例えば、視野情報として、視点の位置、視線方向、視線の回転角度等が挙げられる。また視野情報として、ユーザ5の頭の位置、ユーザ5の頭の回転角度等が挙げられる。ユーザの頭の位置や回転角度を、Head Motion情報ということも可能である。
 視線の回転角度は、例えば、視線方向に延在する軸を回転軸とする回転角度により規定することが可能である。またユーザ5の頭の回転角度は、頭に対して設定される互いに直交する3つの軸をロール軸、ピッチ軸、ヨー軸とした場合の、ロール角度、ピッチ角度、ヨー角度により規定することが可能である。
 例えば、顔の正面方向に延在する軸をロール軸とする。ユーザ5の顔を正面から見た場合に左右方向に延在する軸をピッチ軸とし、上下方向に延在する軸をヨー軸とする。これらロール軸、ピッチ軸、ヨー軸に対する、ロール角度、ピッチ角度、ヨー角度が、頭の回転角度として算出される。なお、ロール軸の方向を、視線方向として用いることも可能である。
 その他、ユーザ5の視野を特定可能な任意の情報が用いられてよい。視野情報として、上記で例示した情報が1つ用いられてもよいし、複数の情報が組み合わされて用いられてもよい。
 視野情報を取得する方法は限定されない。例えば、HMD2に備えられたセンサ装置(カメラを含む)による検出結果(センシング結果)に基づいて、視野情報を取得することが可能である。
 例えば、HMD2に、ユーザ5の周囲を検出範囲とするカメラや測距センサ、ユーザ5の左右の目を撮像可能な内向きカメラ等が設けられる。また、HMD2に、IMU(Inertial Measurement Unit)センサやGPSが設けられる。
 例えば、GPSにより取得されるHMD2の位置情報を、ユーザ5の視点位置や、ユーザ5の頭の位置として用いることが可能である。もちろん、ユーザ5の左右の目の位置等がさらに詳しく算出されてもよい。
 また、ユーザ5の左右の目の撮像画像から、視線方向を検出することも可能である。
 また、IMUの検出結果から、視線の回転角度や、ユーザ5の頭の回転角度を検出することも可能である。
 また、HMD2に備えらえたセンサ装置による検出結果に基づいて、ユーザ5(HMD2)の自己位置推定が実行されてもよい。例えば、自己位置推定により、HMD2の位置情報、及びHMD2がどの方向を向いているか等の姿勢情報を算出することが可能である。当該位置情報や姿勢情報から、視野情報を取得することが可能である。
 HMD2の自己位置を推定するためのアルゴリズムも限定されず、SLAM(Simultaneous Localization and Mapping)等の任意のアルゴリズムが用いられてもよい。
 また、ユーザ5の頭の動きを検出するヘッドトラッキングや、ユーザ5の左右の視線の動きを検出するアイトラッキングが実行されてもよい。
 その他、視野情報を取得するために、任意のデバイスや任意のアルゴリズムが用いられてもよい。例えば、ユーザ5に対して仮想映像を表示するデバイスとして、スマートフォン等が用いられる場合等では、ユーザ5の顔(頭)等が撮像され、その撮像画像に基づいて視野情報が取得されてもよい。
 あるいは、ユーザ5の頭や目の周辺に、カメラやIMU等を備えるデバイスが装着されてもよい。
 視野情報を生成するために、例えばDNN(Deep Neural Network:深層ニューラルネットワーク)等を用いた任意の機械学習アルゴリズムが用いられてもよい。例えばディープラーニング(深層学習)を行うAI(人工知能)等を用いることで、視野情報の生成精度を向上させることが可能となる。
 なお機械学習アルゴリズムの適用は、本開示内の任意の処理に対して実行されてよい。
 HMD2と、クライアント装置3とは、互いに通信可能に接続されている。両デバイスを通信可能に接続するための通信形態は限定されず、任意の通信技術が用いられてよい。例えば、WiFi等の無線ネットワーク通信や、Bluetooth(登録商標)等の近距離無線通信等を用いることが可能である。
 HMD2は、視野情報を、クライアント装置3に送信する。
 なお、HMD2とクライアント装置3とが一体的構成されてもよい。すなわちHMD2に、クライアント装置3の機能が搭載されてもよい。
 クライアント装置3、及びサーバ装置4は、例えばCPU、ROM、RAM、及びHDD等のコンピュータの構成に必要なハードウェアを有する(図19参照)。CPUがROM等に予め記録されている本技術に係るプログラムをRAMにロードして実行することにより、本技術に係る情報処理方法が実行される。
 例えばPC(Personal Computer)等の任意のコンピュータにより、クライアント装置3、及びサーバ装置4を実現することが可能である。もちろんFPGA、ASIC等のハードウェアが用いられてもよい。
 もちろん、クライアント装置3とサーバ装置4とが互いに同じ構成を有する場合に限定される訳ではない。
 クライアント装置3とサーバ装置4とは、ネットワーク9を介して、通信可能に接続されている。
 ネットワーク9は、例えばインターネットや広域通信回線網等により構築される。その他、任意のWAN(Wide Area Network)やLAN(Local Area Network)等が用いられてよく、ネットワーク9を構築するためのプロトコルは限定されない。
 クライアント装置3は、HMD2から送信された視野情報を受信する。またクライアント装置3は、視野情報を、ネットワーク9を介して、サーバ装置4に送信する。
 サーバ装置4は、クライアント装置3から送信された視野情報を受信する。またサーバ装置4は、視野情報に基づいて、3次元空間データに対してレンダリング処理を実行することにより、ユーザ5の視野7に応じた2次元映像データ(レンダリング映像)を生成する。
 サーバ装置4は、本技術に係る情報処理装置の一実施形態に相当する。サーバ装置4により、本技術に係る情報処理方法の一実施形態が実行される。
 図3に示すように、3次元空間データは、シーン記述情報と、3次元オブジェクトデータとを含む。
 シーン記述情報は、3次元空間(仮想空間S)の構成を定義する3次元空間記述データに相当する。シーン記述情報は、オブジェクトの属性情報等、6DoFコンテンツの各シーンを再現するための種々のメタデータを含む。
 3次元オブジェクトデータは、3次元空間における3次元オブジェクトを定義するデータである。すなわち6DoFコンテンツの各シーンを構成する各オブジェクトのデータとなる。
 例えば、人物や動物等の3次元オブジェクトのデータや、建物や木等の3次元オブジェクトのデータが格納される。あるいは、背景等を構成する空や海等の3次元オブジェクトのデータが格納される。複数の種類の物体がまとめて1つの3次元オブジェクトとして構成され、そのデータが格納されてもよい。
 3次元オブジェクトデータは、例えば、多面体の形状データとして表すことのできるメッシュデータとその面に張り付けるデータであるテクスチャデータとにより構成される。あるいは、複数の点の集合(点群)で構成される(Point Cloud)。
 図3に示すように、サーバ装置4は、シーン記述情報に基づいて、3次元空間に3次元オブジェクトを配置することにより、3次元空間を再現する。この3次元空間は、演算によりメモリ上で再現される。
 再現された3次元空間を基準として、ユーザ5から見た映像を切り出すことにより(レンダリング処理)、ユーザ5が視聴する2次元映像であるレンダリング映像を生成する。
 サーバ装置4は、生成したレンダリング映像をエンコードし、ネットワーク9を介してクライアント装置3に送信する。
 なお、ユーザの視野7に応じたレンダリング映像は、ユーザの視野7に応じたビューポート(表示領域)の映像ともいえる。
 クライアント装置3は、サーバ装置4から送信された、エンコードされたレンダリング映像をデコードする。また、クライアント装置3は、デコードしたレンダリング映像を、HMD2に送信する。
 図2に示すように、HMD2により、レンダリング映像が再生され、ユーザ5に対して表示される。以下、HMD2によりユーザ5に対して表示される映像8を、レンダリング映像8と記載する場合がある。
 [サーバサイドレンダリングシステムの利点]
 図2に例示するような全天球映像6(6DoF映像)の他の配信システムとして、クライアントサイドレンダリングシステムが挙げられる。
 クライアントサイドレンダリングシステムでは、クライアント装置3により、視野情報に基づいて3次元空間データに対してレンダリング処理が実行され、2次元映像データ(レンダリング映像8)が生成される。クライアントサイドレンダリングシステムを、クライアントレンダリング型のメディア配信システムと呼ぶことも可能である。
 クライアントサイドレンダリングシステムでは、サーバ装置4からクライアント装置3に、3次元空間データ(3次元空間記述データ及び3次元オブジェクトデータ)を配信する必要がある。
 3次元オブジェクトデータは、メッシュデータにより構成されたり、点群データ(Point Cloud)により構成される。従ってサーバ装置4からクライアント装置3への配信データ量は、膨大になってしまう。また、レンダリング処理を実行するために、クライアント装置3には、かなり高い処理能力が求められる。
 これに対して、本実施形態に係るサーバサイドレンダリングシステム1では、レンダリング後のレンダリング映像8がクライアント装置3に配信される。これにより、配信データ量を十分に抑えることが可能となる。すなわち少ない配信データ量にて、ユーザ5に対して、膨大な3次元オブジェクトデータから構成される大空間の6DoF映像を、体験させることが可能となる。
 また、クライアント装置3側の処理負荷を、サーバ装置4側にオフロードすることが可能となり、処理能力が低いクライアント装置3が用いられる場合でも、ユーザ5に対して6DoF映像を体験させることが可能となる。
 また、ユーザの視野情報に応じて、予め用意されたデータサイズ(品質)が異なる複数の3Dオブジェクトデータ(例えば高解像度及び低解像度の2種類)の中から最適な3Dオブジェクトデータを選択する、クライアントサイドレンダリングの配信方法もある。
 この配信方法と比較すると、サーバサイドレンダリングでは、視野が変更されても2種類の品質の3Dオブジェクトデータの切り替えが行われないため、視野が変更されてもシームレスな再生が可能となり利点がある。
 またクライアントサイドレンダリングでは、視野情報がサーバ装置4に送られないため、レンダリング映像8内の所定の領域にぼかし等の処理を仮に行う場合には、クライアント装置3側で行う必要がある。そのとき、クライアント装置3に送信されるのはぼかす前の3Dオブジェクトデータであるから、やはり配信データ量の削減は見込めない。
 図4は、サーバサイドレンダリングシステム1の機能的な構成例を示す模式図である。
 HMD2は、ユーザ5の視野情報をリアルタイムで取得する。
 例えばHMD2は、所定のフレームレートで視野情報を取得し、クライアント装置3に送信する。同様にクライアント装置3からサーバ装置4にも、所定のフレームレートで視野情報が、繰り返し送信される。
 視野情報取得のフレームレート(視野情報の取得回数/秒)は、例えば、レンダリング映像8のフレームレートに同期するように設定される。
 例えば、レンダリング映像8は、時系列に連続する複数のフレーム画像により構成される。各フレーム画像は、所定のフレームレートで生成される。このレンダリング映像8のフレームレートと同期するように、視野情報取得のフレームレートが設定される。もちろんこれに限定される訳ではない。
 また上記したように、ユーザ5に対して、仮想映像を表示するデバイスとして、ARグラスやディスプレイが用いられてもよい。
 サーバ装置4は、データ入力部11と、視野情報取得部12と、レンダリング部14と、エンコード部15と、通信部16とを有する。
 これらの機能ブロックは、例えばCPUが本技術に係るプログラムを実行することで実現され、本実施形態に係る情報処理方法が実行される。なお各機能ブロックを実現するために、IC(集積回路)等の専用のハードウェアが適宜用いられてもよい。
 データ入力部11は、3次元空間データ(シーン記述情報、及び3次元オブジェクトデータ)を読み出し、レンダリング部14に出力する。
 なお、3次元空間データは、例えば、サーバ装置4内の記憶部68(図19参照)に格納されている。あるいは、サーバ装置4と通信可能に接続されたコンテンツサーバ等により、3次元空間データが管理されてもよい。この場合、データ入力部11は、コンテンツサーバにアクセスすることで、3次元空間データを取得する。
 通信部16は、他のデバイスとの間で、ネットワーク通信や近距離無線通信等を実行するためのモジュールである。例えばWiFi等の無線LANモジュールや、Bluetooth(登録商標)等の通信モジュールが設けられる。
 本実施形態では、通信部16により、ネットワーク9を介したクライアント装置3との通信が実現される。
 視野情報取得部12は、通信部16を介してクライアント装置3から視野情報を取得する。取得された視野情報が、記憶部68(図19参照)等に記録されてもよい。例えば、視野情報を記録するためのバッファ等が構成されてもよい。
 レンダリング部14は、図3に例示するレンダリング処理を実行する。すなわち、リアルタイムで取得された視野情報に基づいて、3次元空間データに対してレンダリング処理を実行することにより、ユーザ5の視野7に応じたレンダリング映像8を生成する。
 本実施形態では、所定のフレームレートで取得される視野情報に基づいて、レンダリング映像8を構成するフレーム画像19が、リアルタイムで生成される。
 エンコード部15は、レンダリング映像8(フレーム画像19)に対してエンコード処理(圧縮符号化)を実行し、配信データを生成する。配信データは、通信部16にてパケット化され、クライアント装置3に送信される。
 これにより、リアルタイムで取得される視野情報に応じて、リアルタイムでフレーム画像19を配信することが可能となる。
 本実施形態において、レンダリング部14は、本技術に係るレンダリング部の一実施形態として機能する。エンコード部15は、本技術に係るエンコード部の一実施形態として機能する。
 クライアント装置3は、通信部23と、デコード部24と、レンダリング部25とを有する。
 これらの機能ブロックは、例えばCPUが本技術に係るプログラムを実行することで実現され、本実施形態に係る情報処理方法が実行される。なお各機能ブロックを実現するために、IC(集積回路)等の専用のハードウェアが適宜用いられてもよい。
 通信部23は、他のデバイスとの間で、ネットワーク通信や近距離無線通信等を実行するためのモジュールである。例えばWiFi等の無線LANモジュールや、Bluetooth(登録商標)等の通信モジュールが設けられる。
 デコード部24は、配信データに対してデコード処理を実行する。これにより、エンコードされたレンダリング映像8(フレーム画像19)がデコードされる。
 レンダリング部25は、デコードされたレンダリング映像8(フレーム画像19)がHMD2により表示可能なように、レンダリング処理を実行する。
 レンダリングされたフレーム画像19は、HMD2に送信され、ユーザ5に対して表示される。これにより、ユーザ5の視野7の変更に応じて、リアルタイムでフレーム画像19を表示することが可能となる。
 [本技術に係るレンダリングの基本動作例]
 本発明者は、サーバサイドレンダリングシステム1において、高品質な仮想画像の配信を実現するために検討を重ねた。特に、「レンダリング処理負荷」と、「リアルタイムエンコードによる画質劣化」という2つの観点について考察を重ねた。
 その結果、図5に示す各処理を基本的な動作例とするレンダリングを新たに考案した。図5に示す処理は、レンダリング部14により実行される。
 ステップ101では、2次元映像データ(フレーム画像19)の表示領域に対して、注目領域と、非注目領域とが設定される。
 フレーム画像19の表示領域は、ユーザ5の視野7に応じたビューポートであり、レンダリングされるフレーム画像19の画像領域に相当する。フレーム画像19の表示領域は、レンダリングの対象となる領域であり、レンダリング対象領域やレンダリング領域ともいえる。
 注目領域は、高解像度でのレンダリングの対象となる領域である。非注目領域は、低解像度でのレンダリングの対象となる非注目領域である。
 なお、レンダリングされるフレーム画像の解像度(V×Hの画素数)は、変わらない。本開示では、ある領域(画素領域)に対してレンダリングされる画像の解像度が相対的に高い場合、高解像度でレンダリングされるという表現をする。またある領域(画素領域)に対してレンダリングされる画像の解像度が相対的に低い場合、低解像度でレンダリングされるという表現をする。
 例えば、フレーム画像19の画素1つ1つに対して、互いに異なる画素値(階調値)が設定されるようにレンダリングが行われる場合、フレーム画像19の解像度にて画像がレンダリングされることになる。一方で、4つ等の複数の画素を1つのグループとして、グループ内の画素に対して同じ画素値が設定されるようにレンダリングが行われる場合、レンダリングされる画像の解像度は、フレーム画像19の解像度よりも低くなる。
 例えば、高解像度でのレンダリングの対象となる注目領域を、フレーム画像19の解像度にてレンダリングが行われる領域として設定することが可能である。そして、低解像度でのレンダリングの対象となる非注目領域を、フレーム画像19の解像度よりも低い解像でレンダリングされる領域として設定することが可能である。もちろんこのような設定に限定されない。
 以下、レンダリングされる画像の解像度を、レンダリング解像度と記載する場合がある。
 ステップ101を実現するために、本実施形態では、フォービエイテッドレンダリング(foveated rendering)が実行される。フォービエイテッドレンダリングは、中心窩レンダリングとも呼ばれる。
 図6は、フォービエイテッドレンダリングの一例を説明するための模式図である。
 フォービエイテッドレンダリングは、視野中央の分解能は高く、視野周辺に行くにつれて分解能が下がる人の視覚特性に合わせたレンダリングとなる。
 例えば、図6A及びBに示すように、矩形や円形などで区切った視野中央領域27にて高解像度でのレンダリングが実行される。そして、その周辺領域28をさらに矩形や同心円などの領域に分け、低解像度でのレンダリングが実行される。
 図6A及びBに示す例では、視野中央領域27が、最大解像度でレンダリングされる。例えば、フレーム画像19の解像度でレンダリングされる。
 周辺領域28は、3つの領域に分けられ、視野の周辺に行くにつれて、最大解像度の1/4の解像度、最大解像度の1/8の解像度、最大解像度の1/16の解像度でそれぞれレンダリングされる。
 図6A及びBに示す例では、視野中央領域27が、注目領域29として設定される。また周辺領域28が非注目領域30として設定される。図6A及びBに示すように、非注目領域30が複数の領域に分割され、段階的にレンダリング解像度が低減されてもよい。
 このようにフォービエイテッドレンダリングでは、ビューポート(表示領域)31内での2次元的な位置に応じて、レンダリング解像度が設定される。
 なお、図6A及びBに示す例では、視野中央領域27(注目領域29)、及び周辺領域28(非注目領域30)の位置が固定されている。このようなフォービエイテッドレンダリングは、固定フォービエイテッドレンダリング(fixed foveated rendering)とも呼ばれる。
 これに限定されず、ユーザ5が注視している注視点に基づいて、高解像度でレンダリングされる注目領域29が動的に設定されてもよい。設定された注目領域29の周辺が、低解像度でレンダリングされる非注目領域30となる。
 なお、ユーザ5の注視点は、ユーザ5の視野情報に基づいて算出することが可能である。例えば、視線方向やHead Motion情報等に基づいて、注視点を算出することが可能である。もちろん、注視点自体も、視野情報に含まれる。すなわち視野情報として注視点が用いられてもよい。
 このように、ユーザ5の視野情報に基づいて、注目領域29、及び非注目領域30が動的に設定されてもよい。
 ステップ102では、注視オブジェクトが抽出される。
 注視オブジェクトは、レンダリングされるオブジェクトのうち、ユーザ5の注視対象となるオブジェクトのことである。
 例えば、ユーザ5の注視点が位置するオブジェクトが、注視オブジェクトとして抽出される。あるいは、ビューポート31の中央に位置するオブジェクトが、注視オブジェクトとして抽出されてもよい。
 ほとんどの場合、注視オブジェクトは、少なくとも一部の領域が、フォービエイテッドレンダリングにより設定される注目領域29内に含まれる。
 なお、注視オブジェクトに該当するか否かの判定条件として、少なくとも一部の領域が注目領域29内に含まれている点が設定されてもよい。
 注視オブジェクトは、レンダリング処理に関するパラメータと、視野情報とに基づいて抽出される。
 レンダリング処理に関するパラメータは、レンダリング映像8を生成するために用いられる任意の情報を含む。またレンダリング処理に関するパラメータは、レンダリング映像8を生成するために用いられる情報を用いて生成することが可能な任意の情報を含む。
 例えば、レンダリング部14により、3次元空間データと、視野情報とに基づいて、レンダリング処理に関するパラメータが生成される。もちろんこのような生成方法に限定される訳ではない。
 以下、レンダリング処理に関するパラメータを、レンダリング情報と記載する場合がある。
 図7は、レンダリング情報の一例を説明するための模式図である。
 図7A、レンダリング処理により生成されるフレーム画像19を示す模式図である。図7Bは、フレーム画像19に対応するデプスマップ(デプスマップ画像)33を示す模式図である。
 レンダリング情報として、デプスマップ33を用いることが可能である。デプスマップ33は、レンダリング対象となるオブジェクトまでの距離情報(奥行情報)を含むデータである。デプスマップ33を、奥行情報マップ、距離情報マップということも可能である。
 例えば、距離を輝度に変換した画像データを、デプスマップ33として用いることも可能である。もちろんこのような形式に限定されない。
 デプスマップ33は、例えば、3次元空間データと、視野情報とに基づいて生成することが可能である。
 例えば、3Dレンダリングでは、あるオブジェクトをレンダリングする際に、すでにレンダリング済みのオブジェクト達との前後関係を確認する必要がある。その際に、Zバッファというものを使用する。
 Zバッファとは、現在のレンダリング画像のデプス情報(レンダリング画像と同じ解像度)を一時的にためておくバッファのことである。
 レンダリング部14は、オブジェクトをレンダリングする際に、該当ピクセルにすでにレンダリングされている別オブジェクトがある場合、それとの前後関係を確認する。そして、現在のオブジェクトの方が前であれば、レンダリングを行い、そうでなければ、レンダリングをしないという判断をピクセルごとに行う。
 その際の確認に使用するのが、このZバッファで、これまでにレンダリングしたオブジェクトのデプス値が該当ピクセルに書かれており、それを参照して確認する。そして、確認と共に新たにレンダリングを行ったピクセルにはそのデプス値をセットし、更新していく。
 つまり、レンダリング部14はフレーム画像19のレンダリングが完成するタイミングにおいて、内部に該当フレームのデプスマップ画像データも合わせて保持している。
 なお、レンダリング情報としてのデプスマップ33の取得方法は限定されず、任意の方法が採用されてよい。
 その他、レンダリング情報として、レンダリング対象となるオブジェクトの動き情報を含む動きベクトルマップや、レンダリング対象となるオブジェクトの輝度情報、レンダリング対象となるオブジェクトの色情報等、種々の情報を取得可能である。
 ステップ102では、注視オブジェクトの形状及び輪郭を正確に検出し、注視オブジェクトと、その他のオブジェクト(以下、非注視オブジェクトと記載する)を高精度に分離することが望ましい。
 全天球映像6や2D動画に対してオブジェクトの認識及び分離を実行する技術として、様々な画像解析技術が挙げられる。例えば、輝度分布やエッジ検出による基本的な形状認識をはじめ、画像に対して様々なオブジェクト認識技術が提案されているが、その処理負荷は高く、誤検出によるエラーを完全には無くせないという課題が残っている。また動画のリアルタイム解析は、処理負荷の観点でより難易度が非常に高い。
 図7Bに示すような、レンダリング情報として取得されるデプスマップ画像33は、フレーム画像19に対して画像解析等を実行することで推定したデプス値ではなく、レンダリング工程で得られた正確な値である。
 すなわち、サーバサイドレンダリングシステム1では、ユーザ5が視聴する2D映像を自身でレンダリングしているため、レンダリング後の2D映像を解析するという画像解析の処理負荷なしに、正確なデプスマップ33を取得することが可能である。
 デプスマップ33を用いることで、3次元空間(仮想空間)Sに配置されるオブジェクトの前後関係を検出することが可能となり、各オブジェクトの形状及び輪郭を正確に検出することが可能となる。
 本実施形態ではステップ102にて、デプスマップ33と、視野情報とに基づいて、注視オブジェクトを、非常に高い精度で抽出することが可能となる。なお、注視オブジェクトの抽出のために、3次元オブジェクトデータが用いられてもよい。これにより、注視オブジェクトの抽出精度の向上を図ることが可能となる。
 注視オブジェクトの形状及び輪郭を正確に検出することが可能となるので、高解像度にレンダリングする範囲を必要な領域のみに抑えることが可能となり、フレーム画像19のデータ量(情報量)を削減することが可能となる。
 ステップ103では、注目領域29内の注視オブジェクトが高解像度でレンダリングされる。また注目領域29内の注視オブジェクト以外の非注視オブジェクトのデータ量が低減される。
 例えば、注目領域29の全体を高解像度でレンダリングした後に、非注視オブジェクトに対して、データ量を低減させるためのデータ量低減処理が実行されてもよい。すなわち、高解像度でレンダリングされた非注視オブジェクトに対して、データ量低減処理が実行されてもよい。
 または、非注視オブジェクトに対して、データ量低減処理が実行された場合のレンダリング解像度が算出される。そして、算出されたレンダリング解像度にて、非注視オブジェクトがレンダリングされてもよい。
 データ量低減処理としては、ぼかし処理、レンダリング解像度の削減、グレースケール化、画像の階調値の削減、画像の表示形式の変換等、画像の画像データ量を低減させる任意の処理が含まれる。
 例えば、注目領域29に設定されているレンダリング解像度よりも低いレンダリング解像度で、注目領域29内の非注視オブジェクトをレンダリングすることも、非注視オブジェクトに対するデータ量低減処理に含まれる。
 ステップ104では、非注目領域30が、低解像度でレンダリングされる。これにより、フレーム画像19の全体がレンダリングされる。
 なお、図5に示す各ステップが実行される順番は限定されない。また図5に示す各ステップが時系列的に順番に実行される場合に限定されず、複数のステップが並列的に実行されてもよい。例えば、ステップ101の注目領域29及び非注目領域30の設定と、ステップ102の注視オブジェクトの抽出について、処理の順番が逆の場合もあり得る。またステップ101とステップ102とが、並列的に実行される場合もあり得る。
 また図5の示す各ステップの中の複数のステップが、統合的に実行される場合もあり得る。例えば、注目領域29内の注視オブジェクトに対するレンダリング解像度、注目領域29内の非注視オブジェクトのデータ量低減処理後のレンダリング解像度、及び非注目領域30のレンダリング解像度がそれぞれ設定される。そして、設定されたレンダリング解像度にて、フレーム画像19の全体がレンダリングされる。
 このような処理が実行された場合、ステップ103及びステップ104が統合的に実行されたといえる。
 フレーム画像19のエンコードに関して、高解像度にレンダリングされた領域はデータ量が多く、エンコード(圧縮符号化)時の圧縮率が一定であれば、符号化後のビットレートは圧縮前の画像のデータ量に比例して高くなる。
 ここで符号化の圧縮率を上げればビットレートを下げることが可能であるが、圧縮率を上げると、圧縮に伴う画質劣化が目立ってくるというデメリットがある。
 図5に示す本実施形態に係るレンダリングでは、注目領域29内のユーザ5が注視している注視オブジェクトが高解像度でレンダリングされる。一方、注目領域29内の非注視オブジェクトのデータ量は低減される。
 これにより、フレーム画像19の実質的なデータ量を、主観的な画質を損なわない範囲で、必要最小限に削減することが可能となる。この結果、後段のエンコード部15において、ビットレートを上げることなく実質的なデータ圧縮率を下げることができ、圧縮起因での画質劣化も抑えることが可能となる。
 [2次元映像データ(レンダリング映像)の生成動作]
 図5に示すレンダリングが適用された、レンダリング映像の生成例について説明する。
 図8は、図4に示すレンダリング部14、及びエンコード部15の各々の具体的な構成例を示す模式図である。
 本実施形態では、サーバ装置4内に、機能ブロックとして、再現部35と、レンダラ36と、エンコーダ37と、コントローラ38とが構築される。
 これらの機能ブロックは、例えばCPUが本技術に係るプログラムを実行することで実現され、本実施形態に係る情報処理方法が実行される。なお各機能ブロックを実現するために、IC(集積回路)等の専用のハードウェアが適宜用いられてもよい。
 再現部35は、シーン記述情報に基づいて3次元オブジェクトを配置することにより、3次元空間を再現する。
 コントローラ38は、シーン記述情報と、視野情報とに基づいて、レンダラ36がレンダリングをどのように実行するかを指示するためのレンダリングパラメータを生成する。
 例えば、コントローラ38により、フォービエイテッドレンダリングの領域指定、注視オブジェクトの指定、レンダリング解像度の指定、データ量低減処理に関するパラメータの指定等が実行される。
 例えば注目領域29内の注視オブジェクトに対するレンダリング解像度、注目領域29内の非注視オブジェクトのデータ量低減処理後のレンダリング解像度、及び非注目領域30のレンダリング解像度を含む解像度マップ(レンダリング解像度マップ)等を、レンダリングパラメータとして用いることが可能である。
 また、コントローラ38は、レンダラ36に指示したレンダリングパラメータに基づいて、エンコーダ37がエンコードをどのように実行するかを指示するためのエンコードパラメータを生成する。
 本実施形態では、コントローラ38により、QPマップが生成される。QPマップは、2次元映像データに対して設定される量子化パラメータに相当する。
 例えば、レンダリングされたフレーム画像19内で量子化精度(QP:Quantization Parameter)を領域ごとに切り替えることにより、フレーム画像19内の着目点や重要領域の圧縮による画質劣化を抑えることが可能となる。
 このようにすることで、ユーザ5にとって重要な領域については十分な映像の品質を維持しつつ、配信データや処理の負荷を増加させることを抑えることができる。なお、ここでQP値とは、非可逆圧縮の際の量子化の刻みを示す値である。QP値が高いと符号化量が小さくなって、圧縮効率が高くなり、圧縮による画質劣化が進む。一方、QP値が低いと符号化量が大きくなり、圧縮効率が低くなり、圧縮による画質劣化を抑えることができる。
 レンダラ36は、コントローラ38から出力されるレンダリングパラメータに基づいて、レンダリングを実行する。エンコーダ37は、コントローラ38から出力されるQPマップに基づいて、2次元映像データに対してエンコード処理(圧縮符号化)を実行する。
 図8に示す例では、再現部35、コントローラ38、及びレンダラ36により、図4に示すレンダリング部14が構成される。またコントローラ38及びエンコーダ37により、図4に示すエンコード部15が構成される。
 図9は、レンダリング映像の生成の一例を示すフローチャートである。図9では、レンダラ・エンコーダ連携処理として、サーバ装置4によるレンダリング映像8(フレーム画像19)の生成例を説明する。
 図10~図15は、図9に示す各ステップを説明するための模式図である。
 ここでは、図10に示すシーンのフレーム画像19が生成される場合を例に挙げる。
 すなわち、3人の人物P1~P3、木T、草G、道路R、及び建物Bの各オブジェクトを含むフレーム画像19が生成されるものとする。なお、実際にはフレーム画像19内の複数の木Tの各々や、複数の草Gの各々が、互いに異なるオブジェクトとして処理されるが、ここではまとめて木Tや草Gとしている。
 通信部16により、クライアント装置3からユーザ5の視野情報が取得される(ステップ201)。
 データ入力部11により、シーンを構成する3次元オブジェクトデータが取得される(ステップ202)。本実施形態では、図10に示す、3人の人物P1~P3、木T、草G、道路R、及び建物Bの各オブジェクトの3次元オブジェクトデータが取得される。取得された3次元オブジェクトデータは、再現部35に出力される。
 再現部35により、3次元オブジェクトが配置され、3次元空間(シーン)が再現される(ステップ203)。本実施形態では、図10に示す、3人の人物P1~P3、木T、草G、道路R、及び建物Bの各オブジェクトの3次元オブジェクトデータが配置され、3次元空間が再現される。
 コントローラ38により、視野情報に基づいて、注視オブジェクトが抽出される(ステップ204)。本実施形態では、ビューポート(表示領域)31の中央に位置する人物P1が注視オブジェクト40として抽出される。本ステップ204により、図5に示すステップ102が実行される。
 図11に示すように、コントローラ38により、フォービエイテッドレンダリングの各領域が設定される。本実施形態では、図6Aに例示するフォービエイテッドレンダリングが実行される。従って、視野中央領域27が注目領域29として設定され、周辺領域28が非注目領域30として設定される。
 なお、図11では、非注目領域30内の、レンダリング解像度が段階的に低くなる複数の領域の区分けは、図示が省略されている。この点は、図12~図15等でも同様である。
 本ステップ204により、図5に示すステップ101が実行される。
 コントローラ38により、注目領域29内の非注視オブジェクト41に対するぼかし強度が設定される(ステップ205)。
 図12~図14に示すように、本実施形態では、人物P1の注目領域29に含まれる領域が、注目領域29内の注視オブジェクト40となる。
 また、他のオブジェクト(人物P2及びP3、木T、草G、道路R、建物B)の注目領域29に含まれる領域が、注目領域29内の非注視オブジェクト41となる。注目領域29内の非注視オブジェクト41は、注目領域29内の、注視オブジェクト40以外の領域ともいえる。
 本実施形態では、注目領域29内の非注視オブジェクト41に対するデータ量低減処理として、ぼかし処理が実行される。
 本実施形態では、ぼかし処理として、複数の画素をグループとして、グループ内の各画素に対して同じ画素値が設定される。例えば、グループ化された複数の画素の各々の画素値を統合(平均等)することで、グループに設定される画素値が算出される。従って、本実施形態では、ぼかし処理として、レンダリング解像度の削減が実行される。
 グループ化される画素数が多いほどぼかし強度が大きくなり、グループ化される画素数が少ないほどぼかし強度は小さくなる。従って、グループ化される画素数を、ほかし強度を規定するパラメータとして用いることが可能である。なお、ぼかし強度は、データ量低減処理に関するパラメータとして用いられる。
 本実施形態では、図7Bに例示したデプスマップ33に基づいて、ぼかし強度が算出される。すなわち、各オブジェクトまでの距離情報(奥行情報)に基づいて、非注視オブジェクト41に対してぼかし強度が設定される。ぼかし強度の設定については、後に詳しく説明する。
 データ量低減処理として、レンダリング解像度の削減が実行される場合、例えば注目領域29内の注視オブジェクト40は第1の解像度でレンダリングされる。注目領域29内の注視オブジェクト40以外の非注視オブジェクト41は、第1の解像度よりも低い第2の解像度でレンダリングされる。もちろん、レンダリング解像度の削減として、ぼかし処理以外のデータ量低減処理が実行されてもよい。
 コントローラ38により、各オブジェクトのレンダリング解像度が設定される(ステップ207)。
 図15に示すように、フォービエイテッドレンダリングの非注目領域30内の各オブジェクト(人物P1~P3、木T、草G、道路R、建物B)に対しては、図6Aに例示する周辺領域28の段階的に低くなるレンダリング解像度が設定される。
 すなわち、各オブジェクト(人物P1~P3、木T、草G、道路R、建物B)の、非注目領域30に含まれる領域は、低解像度でレンダリングされる。
 図13に示すように、注目領域29内の注視オブジェクト40(人物P1)に対しては、図6Aに例示する最大解像度が設定される。本実施形態では、フレーム画像19の解像度が設定される。
 図14に示すように、注目領域29内の非注視オブジェクト41については、ぼかし処理が実行された場合のレンダリング解像度が設定される。例えば、非注視オブジェクト41が最大解像度でレンダリングされる場合の画像データ(画素データ)を基準として、ぼかし処理が実行された後のレンダリング解像度が演算により算出される。算出されたレンダリング解像度が、非注視オブジェクト41のレンダリング解像度として設定される。
 典型的には、ステップ205にて、ぼかし処理の実行後のレンダリング解像度が非注目領域30の解像度より高くなるように、ぼかし強度が設定される。もちろんこれに限定される訳ではない。
 レンダラ36により、設定されたレンダリング解像度にて、フレーム画像19がレンダリングされる(ステップ208)。レンダリングされたフレーム画像19は、エンコーダ37に出力される。
 コントローラ38により、フレーム画像19の解像度分布(解像度マップ)に基づいて、QPマップが生成される(ステップ209)。
 本実施形態では、高解像度の領域ではQP値が低く設定され、低解像度の領域ではQP値が高く設定されたQPマップが生成される。
 例えば、注目領域29に対して第1の量子化パラメータ(QP値)が設定され、非注目領域30に対して、第1の量子化パラメータ(QP値)よりも大きい第2の量子化パラメータ(QP値)が設定される。
 あるいは、注目領域29内の注視オブジェクト40に対して第1の量子化パラメータ(QP値)が設定され、注目領域29内の非注視オブジェクト41に対して第1の量子化パラメータ(QP値)よりも大きい第2の量子化パラメータ(QP値)が設定され、非注目領域30に対して第2の量子化パラメータ(QP値)よりも大きい第3の量子化パラメータ(QP値)が設定される。
 その他、解像度マップに基づいてQPマップを生成する方法として、任意の方法が採用されてもよい。
 エンコーダ37により、QPマップに基づいて、フレーム画像19に対して、エンコード処理(圧縮符号化)が実行される(ステップ210)。
 本実施形態では、高解像度の領域ではQP値が低いので、符号化量が大きくなる。従って、圧縮効率が低くなるので、圧縮による画質劣化を抑えることができる。一方、低解像度の領域ではQP値が高いので、符号化量が小さくなり、圧縮効率が高くなる。
 これにより、ユーザ5にとって十分な映像の品質を維持しつつ、配信データや処理の負荷を増加させることを抑え、加えて、リアルタイムでのエンコード処理に非常に有利となる。
 また本実施形態では、レンダリング部14から出力される解像度マップを利用することが可能であるので、エンコード部15にてフレーム画像19を解析するといった処理が不要である。この結果、エンコード部15での処理負荷を低減し、リアルタイムエンコード処理に有利となる。
 図9に示す処理では、ステップ205~ステップ208により、図5に示すステップ103及びステップ104が統合的に実行される。
 また、図9に示す処理では、ぼかし処理がレンダリングと同時に実行される。これにより、レンダリング処理負荷を抑制することが可能となる。
 これに限定されず、レンダリング後のフレーム画像19に対して、フィルタ処理等により、ぼかし処理が実行されてもよい。
 [ぼかし処理]
 図16及び図17は、デプスマップ33を用いたぼかし処理について説明するための模式図である。
 図16Aに示すように、実世界のレンズの被写界深度(DoF:Depth of field)に基づくぼけをシミュレートすることで、ぼかし処理を実行することが可能である。すなわち、現実世界をカメラで撮影したときに生じるぼけと同じ仕組みで、ぼかし処理を実行する。
 例えば、被写界深度が浅い物理レンズのぼけをシミュレートすることで、非注視オブジェクト41に対するぼかし強度が設定される。
 物理レンズのボケのシミュレーションでは、焦点位置(ピント位置)から前後に距離が離れていくにつれて連続的にぼけが強くなる。これを2D画像に施すには、各オブジェクトの前後関係の情報が必要である。一般の2D画像ではそのような情報が付加されていないので、オブジェクトごとにぼかし強度を決定することが難しい。
 本実施形態では、レンダラ36で非常に精度の高いデプスマップ33を生成することが可能なので、ぼかし強度を高精度に容易に算出することが可能である。
 すなわち、本実施形態では、高精度のデプスマップ33に基づいて、注視オブジェクト40及び非注視オブジェクト41の高精度の抽出(分離)のみならず、データ量削減処理としてのぼかし処理を高精度に実行可能である点も、大きな特徴となっている。
 例えば、非注視オブジェクト41に対して、所定の基準位置として、焦点位置が設定される。例えば、注視オブジェクト40の位置が、焦点位置として設定されてもよい。
 図16Aに示すように、非注視オブジェクト41までの距離と、焦点位置(所定の基準位置)との差分が大きくなるほど、非注視オブジェクト41に対するぼかし強度が高く設定される。
 図16Aに示す例では、焦点位置よりも近い範囲と、焦点位置よりも遠い範囲との各々において、互いに同じ態様(同じ割合)で距離に応じたほかし強度が設定される。従って、図16Aに示すように、焦点位置よりも近い範囲と、焦点位置よりも遠い範囲との各々において、ほかし強度は対称的に設定される。
 なお、ぼかし処理は、非注視オブジェクト41のデータ量を削減するために実行される。従って、図16及び図17では、被写界深度内にある非注視オブジェクト41に対してもぼけが発生するように、ぼかし強度が設定される。
 例えば、被写界深度内にある非注視オブジェクト41に対して一定のぼかし強度がオフセット値として設定されてもよい。あるいは、被写界深度内においても、距離に応じてぼかし強度が増加するように、ぼかし強度が設定されてもよい。これにより、非注視オブジェクト41のデータ量を効率よく削減することが可能となる。
 また、非注視オブジェクト41の多くが、注視オブジェクト40と同じ位置に存在する場合、非注視オブジェクト41に対するぼかし強度が低くなり、データ量の削減量が小さくなる場合もあり得る。このような場合等において、焦点位置(所定の基準位置)が、注視オブジェクト40の位置から前方(近づく方向)又は後方(遠ざかる方向)にオフセットされてもよい。
 後段のエンコーダ37でのエンコード効率をより高めることを目的として、距離に応じたぼかし強度の設定について、様々なバリエーションも考えられる。
 そもそも、ユーザから見て注視オブジェクト40と同じ距離にある(注目領域29内の)非注視オブジェクト41は、現実のレンズシミュレーションであれば、フォーカスが合って高解像度にレンダリングされるべきである。
 被写界深度内にある非注視オブジェクト41をぼかすのも、現実のレンズシミュレーションが目的ではなくエンコード効率を高める目的があるからである。ぼけの強さについても、必ずしも現実のレンズの焦点距離、F値、絞りなどのパラメータに基づくシミュレーションに沿う必要はない。
 図16Bに示す例では、非注視オブジェクト41に対して、焦点位置からの距離以上に大きくぼかしが発生するように、ぼかし強度が設定される。
 例えば、非注視オブジェクト41までの距離と焦点位置(所定の基準距離)との差分に関して複数の範囲が設定される。そして、複数の範囲の各々に対して、ぼかし強度が設定される。
 図16Bに示す例では、非注視オブジェクト41までの距離と所定の基準距離との差分が0から第1の距離までの第1の範囲と、差分が第1の距離から第1の距離よりも大きい第2の距離までの第2の範囲とが設定される。図16Bに示す例では、第1の範囲は、被写界深度の範囲となる。もちろんこれに限定されない。
 第1の範囲には、第1のぼかし強度が設定され、第2の範囲には、第1のぼかし強度よりも高い第2のぼかし強度が設定される。
 また、図16Bに示す例では、差分が第2の距離から第2の距離よりも大きい第3の距離までの第3の範囲が設定され、第3の範囲に第2のぼかし強度よりも高い第3のぼかし強度が設定される。
 このような現実の物理レンズとは異なる態様のぼかし処理が実行されてもよい。すなわち同じ範囲内の非注視オブジェクト41に対しては、一律にぼかしが発生するように、ぼかし強度が設定される。
 これにより、非注視オブジェクト41のデータ量をより大きく削減することが可能となり、エンコーダ入力前の画像のデータ量をより効率的に削減することが可能となる。
 図16A及びBに示す例では、焦点位置よりも近い範囲と、焦点位置よりも遠い範囲との各々において、ほかし強度が対称的に設定される。
 これに限定されず、焦点位置よりも近い範囲と、焦点位置よりも遠い範囲との各々において、互いに異なる態様で、ぼかし強度が設定されてもよい。すなわち、焦点位置よりも近い範囲と、焦点位置よりも遠い範囲との各々において、ほかし強度が非対称的に設定されてもよい。
 図17A及びBに示す例では、焦点位置よりも近い範囲に位置する非注視オブジェクト41より、焦点位置よりも遠い範囲に位置する非注視オブジェクト41の方が強くぼけるように、ぼかし設定が設定される。
 ユーザ5にとって、距離が近い非注視オブジェクト41の方が目に入りやすいと考えられる。従って、距離が近い範囲の非注視オブジェクト41よりも距離が遠い範囲の非注視オブジェクト41の方が強くぼかされるように、ぼかし強度が設定される。これにより、ユーザ5にとって視聴しやすいフレーム画像19となる。
 これに限定されず、焦点位置よりも遠い範囲に位置する非注視オブジェクト41より、焦点位置よりも近い範囲に位置する非注視オブジェクト41の方が強くぼけるように、ぼかし設定が設定されてもよい。
 また、図16Aに示すような焦点位置からの差分が大きくなるにつれて徐々にぼかし強度が強くなる設定と、図16Bに示すような焦点位置からの差分が複数の範囲に分けられる設定とが、組み合わされてもよい。
 例えば、焦点位置よりも近い範囲では、図16Aの設定が採用される。焦点位置よりも遠い範囲では、図16Bの設定が採用される。このようなぼかし強度の設定も可能である。
 非注視オブジェクト41に対するデータ量低減処理として、注視オブジェクト40も含めた注目領域29の全体に対して、ぼかし処理が実行されてもよい。この場合、注視オブジェクト40は、焦点位置に位置するものとされる(ぼかし強度0)。なお注視オブジェクト40が奥行き方向に長い場合は、注視オブジェクト40はどの部分にもフォーカスが合っているようなぼかし処理が実行される。
 ぼかし処理として、平均化フィルタ等のぼかしフィルタを用いた処理が実行されてもよい。このぼかし処理は、ターゲット画素に対して、円形カーネルが設定され、ターゲット画素の画素値が、円形カーネル内に含まれる各画素の画素値の平均に変換される。
 本ぼかし処理では、平均化フィルタのフィルタ半径(円形カーネルの半径)をぼかし強度として用いることが可能である。フィルタ半径が大きいほどぼかし強度は大きくなり、フィルタ変形が小さいほどぼかし強度は小さくなる。
 本ぼかし処理でも、実世界のレンズの被写界深度(DoF)に基づくぼけをシミュレートすることが可能である。また図16及び図17で例示したようなぼかし強度の設定が可能である。
 本ぼかし処理では、画素ごとに画素値が算出される処理であるので、非注視オブジェクト41のレンダリング解像度が削減されない場合もあり得るが、データ量は低減させることが可能である。従って、後段のエンコーダ37でのエンコード効率を高めることが可能となる。
 データ量低減処理として、色成分の削減が実行されてもよい。すなわち表現可能な色の種類が削減されてもよい。例えば、注目領域29内の非注視オブジェクト41の領域が、グレー色あるいはその領域の主要な色の単色で表現される。これにより、非注視オブジェクト41のデータ量を削減することが可能となる。
 もちろん、ぼかし処理と色成分の削除が併用されてもよい。その他、任意のデータ量低減処理が実行されてよい。
 以上、本実施形態に係るサーバサイドレンダリングシステム1では、サーバ装置4により、レンダリング対象となる2次元映像データの表示領域31に対して、注目領域29と非注目領域30とが設定される。そして、注目領域29内の注視オブジェクト40が高解像度でレンダリングされ、注目領域29内の非注視オブジェクト41のデータ量が低減される。これにより、高品質な仮想映像の配信を実現することが可能となる。
 本実施形態では、フォービエイテッドレンダリングが実行され、ビューポート(表示領域)31に対して、高解像度でレンダリングされる対象となる注目領域29と、低解像度でレンダリングされる対象となる非注目領域30とが設定される。これにより、レンダリング処理負荷を低減させることが可能となり、リアルタイム動作の実現に有利となる。
 フォービエイテッドレンダリングは、表示画像の内容や画像内のオブジェクトの形状とは無関係に領域分割が行われる。従って、画像の圧縮符号化の観点で見ると、ユーザ5が注視している注視オブジェクト40以外の周辺の領域(非注視オブジェクト41)も、高解像度にレンダリングされることになる。
 後段のエンコーダ37で注目領域29をエンコードする際、圧縮符号化に起因する画質劣化を小さくするために、品質指定のパラメータ、例えばCRF(Constant Rate Factor)を小さな値に設定する方法がある。
 しかしながら、小さなCRF値でエンコードすると、発生ビット量が多くなる。注目領域29を小さなCRF値で圧縮符号化すると、元々情報量が多い領域が低圧縮率で符号化されることになる。従って、注目領域29で発生するビット量が、画像全体の発生ビット量に対して支配的な割合を占め、画像全体のビットレートは上昇してしまう。エンコーダ37での圧縮率を上げればビットレートは下がるが、一般に画質も低下する。
 本実施形態では、注目領域29内の注視オブジェクト40が抽出され、高解像度にレンダリングされる。また、注目領域29内の非注視オブジェクト41に対してデータ量低減処理が実行され、データ量が低減される。
 これにより、主観画質を損なわずに注目領域29内のデータ量を効率的に削減することが可能となり、CFR値を小さくしなくても、注目領域29の画質を維持しつつ発生ビット量を抑えることが可能となる。すなわち、後段のエンコードでの実質圧縮率を軽減させ、画質低下抑制とビットレート低減とを両立させることが可能となる。
 このように本実施形態では、レンダリング処理負荷の軽減(すなわちリアルタイム動作実現)、及びリアルタイムエンコードによる画質劣化の抑制を実現することが可能となる。
 また、サーバサイドレンダリングシステム1が採用されているので、例えば、処理負荷の重い画像の解析を実行することなく、オブジェクト単位でエンコード前のデータ量をコントロールすることが可能となり、送出ビットストリームのエンコード効率を向上させることが可能となる、
 なお、データ量低減処理としてぼかし処理が実行される場合、非注視オブジェクト41はぼかされる。非注視オブジェクト41をぼかしても、非注視オブジェクト41を構成する画素数自体が大きく変わるというわけではない。
 従って、画素数から算出されるデータレートとしては変わらないが、圧縮符号化すると、ぼけている領域はDCT(離散コサイン変換)して量子化した際の係数列が短くなるため、ぼかす前と比較して発生データ量が小さくなる。ぼけている領域は空間周波数の高い周波数成分がカットされ、実質的なデータ量が少なくなっているためである。
 本開示において、データ量の削減は、このような実質的なデータ量の削減を含む。
 フォービエイテッドレンダリングとぼかし処理とは、共にデータ量を削減する処理といえる。一方で、フォービエイテッドレンダリングは画像の2次元面の位置をパラメータとしてデータ量を削減しているが、ぼかし処理はユーザ位置から各オブジェクトまでの距離をパラメータとしてデータ量を削減している点で考え方が異なる。
 本実施形態では、フォービエイテッドレンダリングを行うサーバサイドレンダリングシステム1において、注目領域29内における注視オブジェクト40以外のデータ量を下げるために、デプスマップ33を利用したぼかし処理を導入する点が特徴で、これにより注目領域29を圧縮符号化した際の主観画質の低下抑制と発生ビット量削減を両立するという効果が実現されている。
 もちろん、本技術の適用が、デプスマップ33を利用したぼかし処理を導入するという点に限定される訳ではない。
 <その他の実施形態>
 本技術は、以上説明した実施形態に限定されず、他の種々の実施形態を実現することができる。
 図18は、他の実施形態に係るレンダリングの一例を示す模式図である。
 図18に示すように、非注目領域30内に、注視オブジェクト40が存在する場合には、非注目領域30内の注視オブジェクト40が高解像度でレンダリングされてもよい。
 すなわち、注視オブジェクト40である人物P1の全体(非注目領域30に含まれる部分も合わせて)、高解像度にレンダリングされてもよい。
 固定フォービエイテッドレンダリングでは、注目領域29が固定であるため、注視オブジェクト40が注目領域外にまたがることもあり得る。注視点に合わせて、注目領域29が動的に設定される場合でも、注視オブジェクト40のサイズが大きい場合等では、注視オブジェクト40が注目領域外にまたがることもあり得る。
 このように、注目領域29内の注視オブジェクト40の一部が非注目領域(低解像度領域)30に存在する場合には、その部分も含めて高解像度にレンダリングする。これにより、注視オブジェクト40を注視するユーザ5が視線を移動させた場合に、同じ注視オブジェクト40であるにもかかわらず、解像度の低い部分が見えてしまうといったことを抑制することが可能となる。
 図18に示す例では、人物P1のおでこよりも上の部分が、急に低い解像度で見えてしまい、ユーザ5にとって違和感となってしまうといったことを抑制することが可能となる。
 また、特に固定フォービエイテッドレンダリングでは、ユーザ5の視線移動に対してマージンをもたせるために、注目領域(高解像度領域)29を広めにとる必要がある。そうすると、注目領域29のデータ量は多くなってしまう。
 図18に示すレンダリングを実行することで、注目領域29のサイズを小さくすることが可能となり、注目領域29のデータ量を低減させることが可能となる。この結果、レンダリング処理負荷の軽減、及びリアルタイムエンコードによる画質劣化の抑制に有利となる。
 上記したように、本実施形態では、レンダリング情報として取得される高精度のデプスマップ33に基づいて、注視オブジェクト40の輪郭を正確に把握することが可能であり、図18に示すレンダリングの実現に非常に有利である。
 上記では、仮想画像として、360度の空間映像データ等を含む全天球映像6(6DoF映像)が配信される場合を例に挙げた。これに限定されず、3DoF映像や2D映像等が配信される場合にも、本技術は適用可能である。また仮想画像として、VR映像ではなく、AR映像等が配信されてもよい。
 また、3D画像を視聴するためのステレオ映像(例えば右目画像及び左目画像等)についても、本技術は適用可能である。
 図19は、サーバ装置4及びクライアント装置3を実現可能なコンピュータ(情報処理装置)60のハードウェア構成例を示すブロック図である。
 コンピュータ60は、CPU61、ROM(Read Only Memory)62、RAM63、入出力インタフェース65、及びこれらを互いに接続するバス64を備える。入出力インタフェース65には、表示部66、入力部67、記憶部68、通信部69、及びドライブ部70等が接続される。
 表示部66は、例えば液晶、EL等を用いた表示デバイスである。入力部67は、例えばキーボード、ポインティングデバイス、タッチパネル、その他の操作装置である。入力部67がタッチパネルを含む場合、そのタッチパネルは表示部66と一体となり得る。
 記憶部68は、不揮発性の記憶デバイスであり、例えばHDD、フラッシュメモリ、その他の固体メモリである。ドライブ部70は、例えば光学記録媒体、磁気記録テープ等、リムーバブルの記録媒体71を駆動することが可能なデバイスである。
 通信部69は、LAN、WAN等に接続可能な、他のデバイスと通信するためのモデム、ルータ、その他の通信機器である。通信部69は、有線及び無線のどちらを利用して通信するものであってもよい。通信部69は、コンピュータ60とは別体で使用される場合が多い。
 上記のようなハードウェア構成を有するコンピュータ60による情報処理は、記憶部68またはROM62等に記憶されたソフトウェアと、コンピュータ60のハードウェア資源との協働により実現される。具体的には、ROM62等に記憶された、ソフトウェアを構成するプログラムをRAM63にロードして実行することにより、本技術に係る情報処理方法が実現される。
 プログラムは、例えば記録媒体61を介してコンピュータ60にインストールされる。あるいは、グローバルネットワーク等を介してプログラムがコンピュータ60にインストールされてもよい。その他、コンピュータ読み取り可能な非一過性の任意の記憶媒体が用いられてよい。
 ネットワーク等を介して通信可能に接続された複数のコンピュータが協働することで、本技術に係る情報処理方法及びプログラムが実行され、本技術に係る情報処理装置が構築されてもよい。
 すなわち本技術に係る情報処理方法、及びプログラムは、単体のコンピュータにより構成されたコンピュータシステムのみならず、複数のコンピュータが連動して動作するコンピュータシステムにおいても実行可能である。
 なお本開示において、システムとは、複数の構成要素(装置、モジュール(部品)等)の集合を意味し、すべての構成要素が同一筐体中にあるか否かは問わない。したがって、別個の筐体に収納され、ネットワークを介して接続されている複数の装置、及び、1つの筐体の中に複数のモジュールが収納されている1つの装置は、いずれもシステムである。
 コンピュータシステムによる本技術に係る情報処理方法、及びプログラムの実行は、例えば視野情報の取得、レンダリング処理の実行、レンダリング情報の生成等が、単体のコンピュータにより実行される場合、及び各処理が異なるコンピュータにより実行される場合の両方を含む。また所定のコンピュータによる各処理の実行は、当該処理の一部または全部を他のコンピュータに実行させその結果を取得することを含む。
 すなわち本技術に係る情報処理方法及びプログラムは、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成にも適用することが可能である。
 各図面を参照して説明したサーバサイドレンダリングシステム、HMD、サーバ装置、クライアント装置等の各構成、各処理フロー等はあくまで一実施形態であり、本技術の趣旨を逸脱しない範囲で、任意に変形可能である。すなわち本技術を実施するための他の任意の構成やアルゴリズム等が採用されてよい。
 本開示において、説明の理解を容易とするために、「略」「ほぼ」「おおよそ」等の文言が適宜使用されている。一方で、これら「略」「ほぼ」「おおよそ」等の文言を使用する場合と使用しない場合とで、明確な差異が規定されるわけではない。
 すなわち、本開示において、「中心」「中央」「均一」「等しい」「同じ」「直交」「平行」「対称」「延在」「軸方向」「円柱形状」「円筒形状」「リング形状」「円環形状」等の、形状、サイズ、位置関係、状態等を規定する概念は、「実質的に中心」「実質的に中央」「実質的に均一」「実質的に等しい」「実質的に同じ」「実質的に直交」「実質的に平行」「実質的に対称」「実質的に延在」「実質的に軸方向」「実質的に円柱形状」「実質的に円筒形状」「実質的にリング形状」「実質的に円環形状」等を含む概念とする。
 例えば「完全に中心」「完全に中央」「完全に均一」「完全に等しい」「完全に同じ」「完全に直交」「完全に平行」「完全に対称」「完全に延在」「完全に軸方向」「完全に円柱形状」「完全に円筒形状」「完全にリング形状」「完全に円環形状」等を基準とした所定の範囲(例えば±10%の範囲)に含まれる状態も含まれる。
 従って、「略」「ほぼ」「おおよそ」等の文言が付加されていない場合でも、いわゆる「略」「ほぼ」「おおよそ」等を付加して表現され得る概念が含まれ得る。反対に、「略」「ほぼ」「おおよそ」等を付加して表現された状態について、完全な状態が必ず排除されるというわけではない。
 本開示において、「Aより大きい」「Aより小さい」といった「より」を使った表現は、Aと同等である場合を含む概念と、Aと同等である場合を含まない概念の両方を包括的に含む表現である。例えば「Aより大きい」は、Aと同等は含まない場合に限定されず、「A以上」も含む。また「Aより小さい」は、「A未満」に限定されず、「A以下」も含む。
 本技術を実施する際には、上記で説明した効果が発揮されるように、「Aより大きい」及び「Aより小さい」に含まれる概念から、具体的な設定等を適宜採用すればよい。
 以上説明した本技術に係る特徴部分のうち、少なくとも2つの特徴部分を組み合わせることも可能である。すなわち各実施形態で説明した種々の特徴部分は、各実施形態の区別なく、任意に組み合わされてもよい。また上記で記載した種々の効果は、あくまで例示であって限定されるものではなく、また他の効果が発揮されてもよい。
 なお、本技術は以下のような構成も採ることができる。
(1)
 ユーザの視野に関する視野情報に基づいて、3次元空間データに対してレンダリング処理を実行することにより、前記ユーザの視野に応じた2次元映像データを生成するレンダリング部を具備し、
 前記レンダリング部は、
 前記2次元映像データの表示領域に対して、高解像度でのレンダリングの対象となる注目領域と、低解像度でのレンダリングの対象となる非注目領域とを設定し、
 前記レンダリング処理に関するパラメータと前記視野情報とに基づいて、前記ユーザの注視対象となる注視オブジェクトを抽出し、
 前記注目領域内の前記注視オブジェクトを高解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトのデータ量を低減させる
 情報処理装置。
(2)(1)に記載の情報処理装置であって、
 前記レンダリング処理に関するパラメータは、レンダリング対象となるオブジェクトまでの距離情報を含み、
 前記レンダリング部は、前記距離情報に基づいて、前記注目領域内の前記非注視オブジェクトのデータ量を低減させる
 情報処理装置。
(3)(2)に記載の情報処理装置であって、
 前記レンダリング部は、前記注目領域内の前記非注視オブジェクトに対して、ぼかし処理を実行する
 情報処理装置。
(4)(3)に記載の情報処理装置であって、
 前記レンダリング部は、実世界のレンズの被写界深度に基づくぼけをシミュレートすることで、前記ぼかし処理を実行する
 情報処理装置。
(5)(3)又は(4)に記載の情報処理装置であって、
 前記レンダリング部は、前記非注視オブジェクトまでの距離と、所定の基準距離との差分が大きくなるほど、前記非注視オブジェクトに対するぼかし強度を高く設定する
 情報処理装置。
(6)(3)又は(4)に記載の情報処理装置であって、
 前記レンダリング部は、前記非注視オブジェクトまでの距離と所定の基準距離との差分に関して複数の範囲を設定し、前記複数の範囲の各々に対して、ぼかし強度を設定する
 情報処理装置。
(7)(6)に記載の情報処理装置であって、
 前記レンダリング部は、前記非注視オブジェクトまでの距離と所定の基準距離との差分が0から第1の距離までの第1の範囲と、前記差分が前記第1の距離から前記第1の距離よりも大きい第2の距離までの第2の範囲とを設定し、前記第1の範囲に第1のぼかし強度を設定し、前記第2の範囲に前記第1のぼかし強度よりも高い第2のぼかし強度を設定する
 情報処理装置。
(8)(7)に記載の情報処理装置であって、
 前記レンダリング部は、前記差分が前記第2の距離から前記第2の距離よりも大きい第3の距離までの第3の範囲を設定し、前記第3の範囲に第2のぼかし強度よりも高い第3のぼかし強度を設定する
 情報処理装置。
(9)(3)から(8)のうちいずれか1つに記載の情報処理装置であって、
 前記レンダリング部は、所定の基準距離よりも近い範囲に位置する前記非注視オブジェクトよりも、前記基準距離よりも遠い範囲に位置する前記非注視オブジェクトの方が強くぼけるように、前記ぼかし強度を設定する
 情報処理装置。
(10)(3)から(9)のうちいずれか1つに記載の情報処理装置であって、
 前記レンダリング部は、前記非注視オブジェクトを高解像度でレンダリングした後に、前記非注視オブジェクトに対して前記ぼかし処理を実行する
 情報処理装置。
(11)(3)から(9)のうちいずれか1つに記載の情報処理装置であって、
 前記レンダリング部は、前記非注視オブジェクトを、前記ぼかし処理が実行された場合の解像度でレンダリングする
 情報処理装置。
(12)(1)から(11)のうちいずれか1つに記載の情報処理装置であって、
 前記レンダリング部は、前記非注目領域内に前記注視オブジェクトが存在する場合には、前記非注目領域内の前記注視オブジェクトを高解像度でレンダリングする
 情報処理装置。
(13)(1)に記載の情報処理装置であって、
 前記レンダリング部は、前記注目領域内の前記注視オブジェクトを第1の解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトを前記第1の解像度よりも低い第2の解像度でレンダリングする
 情報処理装置。
(14)(1)から(13)のうちいずれか1つに記載の情報処理装置であって、
 前記レンダリング部は、前記視野情報に基づいて、前記注目領域、及び前記非注目領域を設定する
 情報処理装置。
(15)(1)から(14)のうちいずれか1つに記載の情報処理装置であって、さらに、
 前記2次元映像データに対して量子化パラメータを設定し、設定された前記量子化パラメータに基づき前記2次元映像データに対してエンコード処理を実行するエンコード部を具備する
 情報処理装置。
(16)(15)に記載の情報処理装置であって、
 前記エンコード部は、前記注目領域に対して第1の量子化パラメータを設定し、前記非注目領域に対して、前記第1の量子化パラメータよりも大きい第2の量子化パラメータを設定する
 情報処理装置。
(17)(15)に記載の情報処理装置であって、
 前記エンコード部は、前記注目領域内の前記注視オブジェクトに対して第1の量子化パラメータを設定し、前記注目領域内の前記非注視オブジェクトに対して前記第1の量子化パラメータよりも大きい第2の量子化パラメータを設定し、前記非注目領域に対して前記第2の量子化パラメータよりも大きい第3の量子化パラメータを設定する
 情報処理装置。
(18)(1)から(17)のうちいずれか1つに記載の情報処理装置であって、
 前記3次元空間データは、全天周映像データ、又は空間映像データの少なくとも一方を含む
 情報処理装置。
(19)
 コンピュータシステムが実行する情報処理方法であって、
 ユーザの視野に関する視野情報に基づいて、3次元空間データに対してレンダリング処理を実行することにより、前記ユーザの視野に応じた2次元映像データを生成するレンダリングステップを具備し、
 前記レンダリングステップは、
 前記2次元映像データの表示領域に対して、高解像度でのレンダリングの対象となる注目領域と、低解像度でのレンダリングの対象となる非注目領域とを設定するステップと、
 前記レンダリング処理に関するパラメータと前記視野情報とに基づいて、前記ユーザの注視対象となる注視オブジェクトを抽出するステップと、
 前記注目領域内の前記注視オブジェクトを高解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトのデータ量を低減させるステップと
 を含む
 情報処理方法。
 1…サーバサイドレンダリングシステム
 2…HMD
 3…クライアント装置
 4…サーバ装置
 5…ユーザ
 6…全天球映像
 8…レンダリング映像
 12…視野情報取得部
 14…レンダリング部
 15…エンコード部
 16…通信部
 19…フレーム画像
 29…注目領域
 30…非注目領域
 31…ビューポート(表示領域)
 33…デプスマップ
 35…再現部
 36…レンダラ
 37…エンコーダ
 38…コントローラ
 40…注視オブジェクト
 41…非注視オブジェクト
 60…コンピュータ

Claims (19)

  1.  ユーザの視野に関する視野情報に基づいて、3次元空間データに対してレンダリング処理を実行することにより、前記ユーザの視野に応じた2次元映像データを生成するレンダリング部を具備し、
     前記レンダリング部は、
     前記2次元映像データの表示領域に対して、高解像度でのレンダリングの対象となる注目領域と、低解像度でのレンダリングの対象となる非注目領域とを設定し、
     前記レンダリング処理に関するパラメータと前記視野情報とに基づいて、前記ユーザの注視対象となる注視オブジェクトを抽出し、
     前記注目領域内の前記注視オブジェクトを高解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトのデータ量を低減させる
     情報処理装置。
  2.  請求項1に記載の情報処理装置であって、
     前記レンダリング処理に関するパラメータは、レンダリング対象となるオブジェクトまでの距離情報を含み、
     前記レンダリング部は、前記距離情報に基づいて、前記注目領域内の前記非注視オブジェクトのデータ量を低減させる
     情報処理装置。
  3.  請求項2に記載の情報処理装置であって、
     前記レンダリング部は、前記注目領域内の前記非注視オブジェクトに対して、ぼかし処理を実行する
     情報処理装置。
  4.  請求項3に記載の情報処理装置であって、
     前記レンダリング部は、実世界のレンズの被写界深度に基づくぼけをシミュレートすることで、前記ぼかし処理を実行する
     情報処理装置。
  5.  請求項3に記載の情報処理装置であって、
     前記レンダリング部は、前記非注視オブジェクトまでの距離と、所定の基準距離との差分が大きくなるほど、前記非注視オブジェクトに対するぼかし強度を高く設定する
     情報処理装置。
  6.  請求項3に記載の情報処理装置であって、
     前記レンダリング部は、前記非注視オブジェクトまでの距離と所定の基準距離との差分に関して複数の範囲を設定し、前記複数の範囲の各々に対して、ぼかし強度を設定する
     情報処理装置。
  7.  請求項6に記載の情報処理装置であって、
     前記レンダリング部は、前記非注視オブジェクトまでの距離と所定の基準距離との差分が0から第1の距離までの第1の範囲と、前記差分が前記第1の距離から前記第1の距離よりも大きい第2の距離までの第2の範囲とを設定し、前記第1の範囲に第1のぼかし強度を設定し、前記第2の範囲に前記第1のぼかし強度よりも高い第2のぼかし強度を設定する
     情報処理装置。
  8.  請求項7に記載の情報処理装置であって、
     前記レンダリング部は、前記差分が前記第2の距離から前記第2の距離よりも大きい第3の距離までの第3の範囲を設定し、前記第3の範囲に第2のぼかし強度よりも高い第3のぼかし強度を設定する
     情報処理装置。
  9.  請求項3に記載の情報処理装置であって、
     前記レンダリング部は、所定の基準距離よりも近い範囲に位置する前記非注視オブジェクトよりも、前記基準距離よりも遠い範囲に位置する前記非注視オブジェクトの方が強くぼけるように、前記ぼかし強度を設定する
     情報処理装置。
  10.  請求項3に記載の情報処理装置であって、
     前記レンダリング部は、前記非注視オブジェクトを高解像度でレンダリングした後に、前記非注視オブジェクトに対して前記ぼかし処理を実行する
     情報処理装置。
  11.  請求項3に記載の情報処理装置であって、
     前記レンダリング部は、前記非注視オブジェクトを、前記ぼかし処理が実行された場合の解像度でレンダリングする
     情報処理装置。
  12.  請求項1に記載の情報処理装置であって、
     前記レンダリング部は、前記非注目領域内に前記注視オブジェクトが存在する場合には、前記非注目領域内の前記注視オブジェクトを高解像度でレンダリングする
     情報処理装置。
  13.  請求項1に記載の情報処理装置であって、
     前記レンダリング部は、前記注目領域内の前記注視オブジェクトを第1の解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトを前記第1の解像度よりも低い第2の解像度でレンダリングする
     情報処理装置。
  14.  請求項1に記載の情報処理装置であって、
     前記レンダリング部は、前記視野情報に基づいて、前記注目領域、及び前記非注目領域を設定する
     情報処理装置。
  15.  請求項1に記載の情報処理装置であって、さらに、
     前記2次元映像データに対して量子化パラメータを設定し、設定された前記量子化パラメータに基づき前記2次元映像データに対してエンコード処理を実行するエンコード部を具備する
     情報処理装置。
  16.  請求15に記載の情報処理装置であって、
     前記エンコード部は、前記注目領域に対して第1の量子化パラメータを設定し、前記非注目領域に対して、前記第1の量子化パラメータよりも大きい第2の量子化パラメータを設定する
     情報処理装置。
  17.  請求項15に記載の情報処理装置であって、
     前記エンコード部は、前記注目領域内の前記注視オブジェクトに対して第1の量子化パラメータを設定し、前記注目領域内の前記非注視オブジェクトに対して前記第1の量子化パラメータよりも大きい第2の量子化パラメータを設定し、前記非注目領域に対して前記第2の量子化パラメータよりも大きい第3の量子化パラメータを設定する
     情報処理装置。
  18.  請求項1に記載の情報処理装置であって、
     前記3次元空間データは、全天周映像データ、又は空間映像データの少なくとも一方を含む
     情報処理装置。
  19.  コンピュータシステムが実行する情報処理方法であって、
     ユーザの視野に関する視野情報に基づいて、3次元空間データに対してレンダリング処理を実行することにより、前記ユーザの視野に応じた2次元映像データを生成するレンダリングステップを具備し、
     前記レンダリングステップは、
     前記2次元映像データの表示領域に対して、高解像度でのレンダリングの対象となる注目領域と、低解像度でのレンダリングの対象となる非注目領域とを設定するステップと、
     前記レンダリング処理に関するパラメータと前記視野情報とに基づいて、前記ユーザの注視対象となる注視オブジェクトを抽出するステップと、
     前記注目領域内の前記注視オブジェクトを高解像度でレンダリングし、前記注目領域内の前記注視オブジェクト以外の非注視オブジェクトのデータ量を低減させるステップと
     を含む
     情報処理方法。
PCT/JP2022/001268 2021-04-28 2022-01-17 情報処理装置及び情報処理方法 WO2022230253A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2023517042A JPWO2022230253A1 (ja) 2021-04-28 2022-01-17

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2021-076652 2021-04-28
JP2021076652 2021-04-28

Publications (1)

Publication Number Publication Date
WO2022230253A1 true WO2022230253A1 (ja) 2022-11-03

Family

ID=83846841

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2022/001268 WO2022230253A1 (ja) 2021-04-28 2022-01-17 情報処理装置及び情報処理方法

Country Status (2)

Country Link
JP (1) JPWO2022230253A1 (ja)
WO (1) WO2022230253A1 (ja)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11161814A (ja) * 1997-11-25 1999-06-18 Namco Ltd 画像生成装置、シミュレーション装置及び情報記憶媒体
WO2014091824A1 (ja) * 2012-12-10 2014-06-19 ソニー株式会社 表示制御装置、表示制御方法およびプログラム
JP2021057769A (ja) * 2019-09-30 2021-04-08 株式会社ソニー・インタラクティブエンタテインメント 画像データ転送装置、画像表示システム、および画像圧縮方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH11161814A (ja) * 1997-11-25 1999-06-18 Namco Ltd 画像生成装置、シミュレーション装置及び情報記憶媒体
WO2014091824A1 (ja) * 2012-12-10 2014-06-19 ソニー株式会社 表示制御装置、表示制御方法およびプログラム
JP2021057769A (ja) * 2019-09-30 2021-04-08 株式会社ソニー・インタラクティブエンタテインメント 画像データ転送装置、画像表示システム、および画像圧縮方法

Also Published As

Publication number Publication date
JPWO2022230253A1 (ja) 2022-11-03

Similar Documents

Publication Publication Date Title
US11973979B2 (en) Image compression for digital reality
US11025959B2 (en) Probabilistic model to compress images for three-dimensional video
US10536693B2 (en) Analytic reprocessing for data stream system and method
CN109996055B (zh) 位置零时延
US10706631B2 (en) Image generation based on brain activity monitoring
WO2018044917A1 (en) Selective culling of multi-dimensional data sets
US10791313B2 (en) Method and apparatus for providing 6DoF omni-directional stereoscopic image based on layer projection
US10957063B2 (en) Dynamically modifying virtual and augmented reality content to reduce depth conflict between user interface elements and video content
US10572764B1 (en) Adaptive stereo rendering to reduce motion sickness
US10769754B2 (en) Virtual reality cinema-immersive movie watching for headmounted displays
US11967014B2 (en) 3D conversations in an artificial reality environment
US20220342365A1 (en) System and method for holographic communication
US20230018560A1 (en) Virtual Reality Systems and Methods
US11099392B2 (en) Stabilized and tracked enhanced reality images
WO2022230253A1 (ja) 情報処理装置及び情報処理方法
WO2022259632A1 (ja) 情報処理装置及び情報処理方法
EP3564905A1 (en) Conversion of a volumetric object in a 3d scene into a simpler representation model
WO2022249536A1 (ja) 情報処理装置及び情報処理方法
WO2022224964A1 (ja) 情報処理装置及び情報処理方法
US20190052868A1 (en) Wide viewing angle video processing system, wide viewing angle video transmitting and reproducing method, and computer program therefor
US20240119557A1 (en) Image display system and image display method
US20230067584A1 (en) Adaptive Quantization Matrix for Extended Reality Video Encoding
EP3598271A1 (en) Method and device for disconnecting user's attention
GB2602841A (en) Image generation system and method

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

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 2023517042

Country of ref document: JP

WWE Wipo information: entry into national phase

Ref document number: 18556361

Country of ref document: US

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22795176

Country of ref document: EP

Kind code of ref document: A1