Volumetric video processing system and volumetric video processing method

JP2025036322APending Publication Date: 2025-03-14VIVERSE LTD
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
JP2024147085
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2023-08-31
Filing Date
2024-08-29
Publication Date
2025-03-14

AI Technical Summary

Benefits of technology

【0007】 以上のように、ボリュメトリックビデオ処理システムおよび方法は、ボリュメトリックビデオに埋め込まれたタイムコードに基づいて、効率的かつ低遅延(low-latency)の方法でボリュメトリックビデオをウェブ上でストリーミングする。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025036322000001_ABST
    Figure 2025036322000001_ABST
Patent Text Reader

Abstract

PURPOSE: To provide a volumetric video processing system capable of achieving a volumetric video real-time streaming, and a volumetric video processing method.SOLUTION: A volumetric video processing system includes a storage circuit and a processor. The storage circuit is configured to store a program code. The processor is coupled to the storage circuit and accesses program code to perform processing for: acquiring obtaining a texture of a frame of a volumetric video; generating a timecode on the basis of a frame number of the frame; embedding the timecode into the texture to generate an embedded texture; acquiring a 3D model of the frame; and storing the embedded texture and the 3D model together as the volumetric video.SELECTED DRAWING: Figure 2
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] The present invention relates to a volumetric video processing system, and more particularly to a volumetric video processing system and a volumetric video processing method. [Background technology]

[0002] In order to provide users with an immersive experience, technologies related to extended reality (XR), such as augmented reality (AR), virtual reality (VR), and mixed reality (MR), are constantly being developed. AR technology allows users to bring virtual elements into the real world. VR technology allows users to enter a whole new virtual world and experience a different life. MR technology merges the real world with the virtual world. In addition, visual content, audio content, or other sensory content can be provided to users on the web to provide users with a fully immersive experience. Summary of the Invention [Problem to be solved by the invention]

[0003] The present invention relates to a volumetric video processing system and a volumetric video processing method capable of realizing real-time streaming of volumetric video. [Means for solving the problem]

[0004] The present invention provides a volumetric video processing system. The volumetric video processing system includes a storage circuit and a processor. The storage circuit is configured to store program code. The processor is coupled to the storage circuit and accesses the program code to perform the following: obtain a texture for a frame of a volumetric video; generate a timecode based on a frame number of the frame; embed the timecode in the texture to generate an embedded texture; obtain a three-dimensional (3D) model for the frame; and save the embedded texture and the 3D model together as a volumetric video.

[0005] The present invention provides a volumetric video processing method, which includes: obtaining a texture of a frame of a volumetric video, generating a time code based on a frame number of the frame, embedding the time code into the texture to generate an embedded texture, obtaining a 3D model of the frame, and saving the embedded texture and the 3D model together as a volumetric video.

[0006] The present invention provides a volumetric video processing method, which includes: obtaining a frame of a volumetric video, obtaining a texture video from the frame of the volumetric video, obtaining a texture and a time code based on an embedded texture of the texture video, obtaining a frame number of the frame based on the time code, obtaining a 3D model of the frame from the volumetric video based on the frame number, and applying the texture to the 3D model to generate a rendered 3D model. Effect of the Invention

[0007] Thus, the volumetric video processing system and method streams volumetric video over the web in an efficient and low-latency manner based on timecode embedded in the volumetric video.

[0008] In order to make the above content more understandable, several embodiments will be described in detail below in combination with the drawings. [Brief description of the drawings]

[0009] The accompanying drawings are included to provide a further understanding of the principles of the invention, and are incorporated in and constitute a part of this specification. The drawings illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.

[0010] [Figure 1] 1 is a schematic diagram of a volumetric video processing system according to one embodiment of the present invention. [Diagram 2] 1 is a schematic flowchart of a volumetric video processing method according to one embodiment of the present invention; [Diagram 3] FIG. 1 is a schematic diagram of a rendering scenario for a 3D model according to one embodiment of the present invention. [Figure 4] FIG. 2 is a schematic diagram of an embedding scenario for embedded texture according to one embodiment of the present invention; [Diagram 5] FIG. 1 is a schematic diagram of a rendering scenario for a 3D model according to one embodiment of the present invention. [Figure 6] FIG. 2 is a schematic diagram of a file format of an SXRWEB file with adaptive streaming according to one embodiment of the present invention. [Figure 7] FIG. 2 is a schematic diagram of a file format of an SXRWEB file without adaptive streaming according to one embodiment of the present invention. [Figure 8] 1 is a schematic flow chart of a volumetric video playback scenario according to one embodiment of the present invention; DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0011] DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings, in which the same reference numerals are used to refer to the same or similar elements throughout the various drawings.

[0012] Although specific terms are used to refer to specific components throughout the present specification and the appended claims, as one skilled in the art will appreciate, manufacturers of electronic devices may refer to the same components by different names. This document does not intend to distinguish between those components that have the same function but different names. In the following description and claims, terms such as "comprise" and "include" are open-ended terms and should be interpreted as "including, but not limited to...".

[0013] The term "coupling" (or connection) used throughout the entire specification of this application (including the appended claims) can refer to any direct or indirect connection means. For example, if a sentence describes a first device being coupled (or connected) to a second device, it should be interpreted that the first device may be directly connected to the second device, or the first device may be indirectly connected to the second device through other devices or specific connection means. The terms "first", "second" and similar terms used throughout the entire specification of this application (including the appended claims) are used merely to indicate separate elements or to distinguish between different embodiments or scopes. Thus, these terms should not be considered as limiting the upper or lower limits of the number of elements, and should not be used to limit the arrangement order of elements. Furthermore, wherever possible, elements / components / steps having the same reference numbers in the drawings and embodiments indicate the same or similar parts. Related descriptions of elements / components / steps using the same reference numbers or the same terms in different embodiments may be cross-referenced.

[0014] It should be noted that in the following embodiments, without departing from the spirit of the present invention, the technical features of several different embodiments may be substituted, recombined and mixed to complete other embodiments, and as long as the features of each embodiment do not violate the spirit of the present invention or contradict each other, they may be arbitrarily mixed and used together.

[0015] Technologies related to extended reality (XR), such as augmented reality (AR), virtual reality (VR), and mixed reality (MR), are constantly being developed to provide users with an immersive experience. AR technology allows users to bring virtual elements into the real world. VR technology allows users to enter a whole new virtual world and experience a different life. MR technology merges the real world with the virtual world. In addition, visual content, audio content, or other sensory content can be provided to users over the web to provide users with a fully immersive experience.

[0016] For example, volumetric video is a type of video in which each frame is not a two-dimensional image, but rather a three-dimensional model is generated from footage captured from multiple different angles. Traditionally, each model consists of three-dimensional (3D) data (a mesh) and a texture that is applied to the mesh. Volumetric videos typically have 25, 30, or 60 reconstructed 3D models per second, which means that a large amount of data needs to be transferred to stream volumetric video over the web.

[0017] While streaming volumetric videos containing 3D geometric data to users over the web, it is important that users do not have to wait for long periods of time while the volumetric video content loads. Therefore, at the volumetric video creation stage, the size and composition of the volumetric video content is important.

[0018] Furthermore, while a user is watching a volumetric video, traditional methods of loading volumetric video on the web often load all the data at once at startup (leading to long load times). This means that a user may not have the option to change the quality of the volumetric video depending on Internet conditions. Thus, the loading latency may disrupt the user experience. In view of the above, those skilled in the art seek to stream volumetric video on the web in an efficient and low latency manner.

[0019] FIG. 1 is a schematic diagram of a volumetric video processing system according to one embodiment of the present invention. Referring to FIG. 1, a volumetric video processing system 100 is shown. In different embodiments, the volumetric video processing system 100 can be implemented as various smart devices and / or computer devices, but the present invention is not limited thereto. In one embodiment, the volumetric video processing system 100 can be used as an encoder to generate volumetric video. In another embodiment, the volumetric video processing system 100 can be a decoder, player, or game engine for playing volumetric video.

[0020] 1, the volumetric video processing system 100 includes a memory circuit 102 and a processor 104. The memory circuit 102 may be, for example, any type of fixed or removable random access memory (RAM), read-only memory (ROM), flash memory, a hard disk, other similar devices, or a combination of these devices, and may be used to store multiple program codes or modules.

[0021] The processor 104 is coupled to the memory circuitry 102 and may be a general purpose processor, a special purpose processor, a conventional processor, a digital signal processor, multiple microprocessors, one or more microprocessors in combination with a digital signal processor core, a controller, a microcontroller, an application specific integrated circuit (ASIC), a field programmable gate array (FPGA), other types of integrated circuits, state machines, advanced reduced instruction set compute (RISC) machine (ARM) based processor, or the like.

[0022] In one embodiment of the present invention, the processor 104 can access modules and program codes recorded in the storage circuit 102 to implement the volumetric video processing method proposed by the present invention, which will be described in detail below.

[0023] Fig. 2 is a schematic flow chart of a volumetric video processing method according to one embodiment of the present invention. With reference to Fig. 1 and Fig. 2, the volumetric video processing method of the present embodiment can be performed by the volumetric video processing system 100 of Fig. 1. Each step of Fig. 2 will be described in detail below in conjunction with the components shown in Fig. 1.

[0024] First, in step S210, the processor 104 may be configured to obtain a texture for a frame (also referred to as a selected frame) of a volumetric video. In one embodiment, the volumetric video includes a plurality of frames, and each frame of the volumetric video corresponds to a texture, a 3D model, and a frame number. The texture may be applied in 3D to form 3D geometric data for the frame. The frame number may be configured to represent the order of the frame within the plurality of frames. However, the present invention is not limited thereto.

[0025] Next, in step S220, the processor 104 can be configured to generate a time code based on the frame number of the frame (selected frame). In one embodiment, the frame number can be converted from text to image to generate the time code. That is, the frame number can be graphically represented as the time code, for example, by a binary image. However, the present invention is not limited thereto.

[0026] Thereafter, in step S230, the processor 104 may be configured to embed (or encode) the time code into the texture to generate the embedded texture. That is, by loading the embedded texture for a particular frame, the frame number of the particular frame may be known. In one embodiment, the time code may be located at the bottom of the texture. In another embodiment, the time code may be located at the top of the texture. However, the present invention is not limited thereto. That is, the present invention does not limit the location of the time code within the texture.

[0027] Further, in step S240, the processor 104 may be configured to obtain a 3D model of the frame. In one embodiment, the 3D model may include a plurality of vertices, and the plurality of vertices may form a plurality of triangular meshes. The 3D geometric data of a frame may be formed by applying the embedded meshes to the 3D model.

[0028] Further, in step S250, the processor 104 may be configured to save the embedded texture and the 3D model together as a volumetric video. In one embodiment, the embedded texture and the 3D model may be saved together and streamed over the web.

[0029] As described above, since the timecode is in the embedded texture, while searching for a specific frame of the volumetric video, the user only needs to load a part of the embedded texture of multiple frames, i.e., the user can simply load the frames near the current timecode, thus enabling volumetric video to be streamed on the web in an efficient and low latency manner.

[0030] Also, details of the implementation of the volumetric video processing system 100 and the volumetric video processing method 200 can be obtained from sufficient teachings, suggestions, and embodiments by referring to the following description of Figures 3 to 8. In some embodiments, the functionality of the volumetric video generator and / or the functionality of the player or game engine for playing the volumetric video can be performed by the processor 104 of the volumetric video processing system 100, although the invention is not limited thereto.

[0031] 3 is a schematic diagram of a rendering scenario for a 3D model according to one embodiment of the present invention. Referring to FIG. 3, a rendering scenario 300 shows an original 3D model 301 and a rendered 3D model 302.

[0032] In one embodiment, the 3D model in the volumetric video can be created by converting a mesh of multiple vertices into a triangular mesh of multiple vertices, as shown in the original 3D model 301. Furthermore, a list of multiple vertices and a list of indices for connecting the vertices to triangles can be saved. Furthermore, for each vertex, the position and uv coordinates can be saved, and the normals can be discarded. Also, the Draco algorithm can be used to compress the 3D mesh as a Draco file (i.e., the file extension is .drc). However, the present invention is not limited thereto. Also, the volumetric video having any kind of volumetric video file format can be read to extract the mesh data of the 3D model from the volumetric video. That is, all kinds of volumetric video file formats can be supported and utilized to create the 3D model.

[0033] In one embodiment, the rendered 3D model 302 can be generated by applying textures to a triangular mesh of the original 3D model 301. This process of applying textures to the original 3D model 301 to create the rendered 3D model 301 is commonly referred to as "rendering."

[0034] It should be noted that to create a volumetric video (e.g., an animated 3D model), the rendered 3D model 302 can move frame by frame. Therefore, a frame number can be used to represent each frame of the 3D model 302. Conventionally, the texture and mesh of the original 3D model 301 are stored frame by frame in the volumetric video. That is, for each frame, the texture and mesh of the original 3D model 301 are stored separately. For example, for a volumetric video of 30 frames, there may be 30 textures and 30 meshes of 30 3D models 301. Therefore, the overall size of the volumetric video may be huge. That is, the compression ratio of the volumetric video is low.

[0035] In one embodiment, to reduce the size of the volumetric video, the textures of the volumetric video of every frame can be compressed as a video to improve the compression ratio. The compressed textures and meshes of the original 3D model 301 can then be combined to form the volumetric video. For example, for a volumetric video with 30 frames, there may be one video of the compressed textures and 30 meshes. However, most of the players of the volumetric video do not provide the exact frame number currently being played by the player. That is, while the user is searching for a specific frame of the volumetric video, the entire rendered 3D model 302 must be read by the player. That is, before the volumetric video can be played by the player, the entire volumetric video must be read first.

[0036] It is worth mentioning that most of the volumetric videos are very large files (e.g. gigabytes in size) which can lead to long loading times and hence increased latency. Therefore, for efficiency, the frame number can be converted to a time code and embedded or encoded into each frame of the volumetric video texture to reduce latency.

[0037] 4 is a schematic diagram of an embedding scenario for an embedded texture according to one embodiment of the present invention. Referring to FIG. 1-4, an embedding scenario 400 illustrates one example embodiment when embedding a time code 402 into a texture 401.

[0038] In one embodiment, to reduce latency, the frame number can be converted to a time code 402, and the time code 402 can be embedded or encoded into the texture 401 of each frame of the volumetric video to generate an embedded texture 403 for each frame. That is, while a user is searching for a particular frame of the volumetric video, the player of the volumetric video only needs to load the embedded texture 403 near the current frame (instead of loading the texture 401 of every frame, or loading both the texture 401 and the original 3D model 301 of every frame). That is, when the embedded texture 403 is read by the player from the volumetric video, the exact frame number of the current frame (also referred to as the current frame number) can be obtained by sampling the embedded texture 403. Then, since the mesh of the original 3D model 301 is saved as an individual file, the matching mesh near the current frame can be easily retrieved based on the current frame number, and then the texture 401 and the mesh are rendered together to generate the rendered 3D model 302 near the current frame.

[0039] In one embodiment, the frame number may be converted into a binary number first, and then the binary number may be converted into a binary image, which is called the time code 402. That is, the time code 402 may be configured to graphically display the frame number. In one embodiment, the time code 402 may be visually added (placed) on the top or bottom of the texture 401 of the original 3D model 301. For example, the time code 402 may be represented by a row of black squares (■) and white squares (□), where the black squares may represent 0 or 1, and the white squares may represent 1 or 0. In one embodiment, the time code 402 may be placed on the left or right side of the texture 401 of the original 3D model 301. For example, the time code 402 may be represented by a column of black squares and white squares. Furthermore, the time code 402 may be represented by other specific patterns, such as circles, dots, triangles, stars, etc. That is, the present invention does not limit the specific pattern used to represent the time code 402. Further, the leftmost rectangle may represent the least significant bit (LSB) of a binary number, and the rightmost rectangle may represent the most significant bit (MSB) of a binary number. However, the present invention is not limited thereto. In this way, only a portion (e.g., a bottom portion) of the embedded texture 403 needs to be loaded while the user is searching for a particular frame of the volumetric video. Thus, the user does not need to wait for a long time while the content of the volumetric video is loading, thereby improving the user experience.

[0040] 5 is a schematic diagram of a rendering scenario for a 3D model according to one embodiment of the present invention. Referring to FIGs. 1-5, a rendering scenario 500 illustrates a process of generating a rendered 3D model 503 by applying an embedded texture 502 to an original 3D model 501.

[0041] Similar to the rendering scenario 300, in the rendering scenario 500, the rendering process of the volumetric video can be performed by combining the embedded texture 502 and the mesh data of the original 3D model 501. The difference is that during the rendering process, the player can read the time code 402 from the embedded texture 502 to check the frame number of the embedded texture 502. That is, the introspection of which frame is being played or will be played can be performed based only on the embedded texture 502. That is, instead of first reading the frame number and then finding the corresponding texture 401 separately, the frame number and the corresponding texture 401 can be fetched together by reading the embedded texture 502. Therefore, the player can efficiently find the texture 401 of the correct frame based on the embedded texture 502.

[0042] The texture 401 fetched from the embedded texture 502 can then be applied to the original 3D model 501, ignoring the timecode 402 in the embedded texture 502, to generate the rendered 3D model 503. By rendering the rendered 3D model 503 frame by frame, the volumetric video can be played by a player and displayed on a display.

[0043] It should be noted that, as mentioned above, the volumetric video only includes the rendered 3D model 503, but the entire volumetric video must be loaded before playing the volumetric video. Therefore, instead of saving the rendered 3D model 503 in the volumetric video, the original 3D model 501 and the embedded texture 502 can be saved in the volumetric video separately. In this way, at the beginning of playback, the player only needs to load the original 3D model 501 and the embedded texture 502 of the first few frames, so that real-time playback of the volumetric video can be achieved.

[0044] Figure 6 is a schematic diagram of a file format of an SXRWEB file with adaptive streaming according to one embodiment of the present invention. Figure 7 is a schematic diagram of a file format of an SXRWEB file without adaptive streaming according to one embodiment of the present invention. With reference to Figures 5-7, file format 600 is an exemplary content of a volumetric video with adaptive streaming, and file format 700 is an exemplary content of a volumetric video without adaptive streaming.

[0045] In one embodiment, to store the original 3D model 501 and the embedded texture 502 separately, the texture 502 and the mesh data (e.g., Draco file) of the original 3D model 501 can be stored together but separately in a container file using file format 600 or file format 700. In one embodiment, the container file can be referred to as a streaming extended reality web (SXRWEB) file (i.e., the file extension is .sxrweb). That is, the file format of the container file can be referred to as SXRWEB, although the invention is not limited thereto.

[0046] It should be noted that the container file may be streamed on the web or played in a game engine to provide XR content. Most websites can support adaptive streaming (e.g., hypertext transfer protocol (HTTP) live streaming, HLS)), but most game engines (e.g., Unreal Engine or Unity Engine) cannot support adaptive streaming. Therefore, the file format of the container file for streaming on the web and the file format of the container file for game engines may be different.

[0047] In one embodiment, a video creation application such as FFmpeg can be used to convert the texture 401 with timecode 402 into a video (i.e., frames of embedded texture 403) to create an HLS adaptive bitrate video stream or separate videos output at different resolutions (e.g., 2k, 1k, 500p). In one embodiment, these videos can be referred to as texture videos, but the invention is not limited thereto. If an audio stream is available, the audio stream can be added using the video creation application or can be saved separately in the container file. These videos can be saved in the container file along with other information such as mesh data (e.g., Draco files).

[0048] 6, file format 600 may be one exemplary file format of a container file with adaptive streaming. As shown in FIG. 6, each container file may include a header file, a JavaScript Object Notation (JSON) file, mesh data of an original 3D model 501 (e.g., a Draco file), HLS video fragments (HLS chunks) (i.e., frames of embedded textures 502), and a playlist file.

[0049] In one embodiment, the header file can be configured to hold general information of the files inside the container file. For example, the header file can describe where the basic information and the JSON file are located. Furthermore, the JSON file can be configured to describe the position (location) of the remaining files in the container file. For example, the JSON file can describe the start and end positions of each mesh. Furthermore, the mesh data can include meshes of the original 3D model 501 for every frame. Furthermore, the HLS video fragments can be configured to be decoded by adaptive streaming to obtain the video of the embedded texture 502 of the appropriate or selected resolution. Also, the playlist file is configured to save the playback order of the HLS video fragments. However, the present invention is not limited thereto.

[0050] 7, file format 700 may be one exemplary file format of a container file without adaptive streaming. As shown in FIG. 7, each container file may include a header file, a JSON file, mesh data (e.g., a Draco file) of the original 3D model 501, a low quality video, a standard (medium) quality video, and a high quality video.

[0051] In one embodiment, the header file can be configured to hold general information of the files inside the container file. For example, the header file can describe where the basic information and JSON files are located. Additionally, the JSON file can be configured to describe the location of the remaining files in the container file. For example, the JSON file can describe the start and end location of each mesh. Additionally, the mesh data can include meshes of the original 3D model 501 for every frame. Additionally, low quality video, medium quality video, and high quality video can be configured to be played by the player based on the appropriate or selected resolution. However, the present invention is not limited thereto.

[0052] FIG. 8 is a schematic flow chart of a playback scenario of a volumetric video according to one embodiment of the present invention. With reference to FIG. 1 to FIG. 8, a playback scenario 800 shows a playback process of a volumetric video. In one embodiment, while a user is trying to play a volumetric video on the web or using a game engine, the user can utilize a player to execute the playback process and play the volumetric video. However, the present invention is not limited thereto.

[0053] First, in step S801, a header file of a volumetric video container file (e.g., an SXRWEB file) can be downloaded from a server using an HTTP range request. In response to the HTTP range request, the server can provide the header to the player or game engine. Next, in step S802, the player or game engine can parse (decode) the header file to find all file locations inside the container file. For example, by parsing the header file, the location where a JSON file is located can be identified, and the JSON file can be downloaded. Based on the JSON file, the locations of the remaining files in the container file can be obtained. However, the present invention is not limited thereto.

[0054] Then, in step S803, the player or game engine can open a video stream for adaptive streaming using HLS, or can open a video file of a specific quality (e.g., low quality, medium quality video, or high quality) for the game engine. For example, a current frame of the volumetric video can be obtained from the opened video stream or the opened video file. A frame number of the current frame can be obtained based on a time code 402 of the current frame in the volumetric video. In one embodiment, the opened video includes an embedded texture 502 of the current frame. That is, the opened video can be referred to as a texture video. Then, in step S804, a corresponding mesh of the original 3D model 501 near the current frame number can be loaded (or downloaded) and decoded based on the time code 402. That is, not only the mesh of the current frame of the original 3D model 501 but also the mesh of the original 3D model 501 of at least one neighboring frame is obtained.

[0055] Thereafter, in step S805, when a new frame of the video stream or video file arrives in the player or game engine, a copy of the embedded texture 502 fetched from the video stream or video file can be created on a graphics processing unit (GPU). The GPU can then be configured to obtain the timecode 402 (e.g., read from the bottom row of the embedded texture 502) in step S806.

[0056] Subsequently, in step S807, a corresponding mesh of the original 3D model 501 can be selected (from the meshes already downloaded in step S804) based on the timecode 402. Then, in step S808, a copy of the embedded texture 502 (stored in the GPU in step S804) can be loaded, and the texture 401 in the embedded texture 502 can be used as a color map for the mesh of the original 3D model 501. That is, by applying the texture 401 (fetched from the video stream or video file) to the mesh of the original 3D model 501, a frame of the volumetric video (i.e., the rendered 3D model 503) near the current frame can be obtained and played. Furthermore, if the volumetric video does not end with the current frame, steps S804 to S808 can be repeatedly performed until the end of the volumetric video.

[0057] As described above, according to the volumetric video processing system 100, the volumetric video processing method 200, and the playback scenario 800, since the time code 402 is in the embedded texture 403, while a user is searching for a particular frame of the volumetric video, only a part of the embedded texture 403 for multiple frames needs to be loaded, i.e., the user can simply load the frames near the current time code 402. This allows the volumetric video to be streamed on the web in an efficient and low-latency manner.

[0058] It will be appreciated by those of ordinary skill in the art that various modifications and variations may be made to the disclosed embodiments without departing from the scope or spirit of the invention. In view of this, it is intended that the present invention cover modifications and variations that come within the scope of the following claims and their equivalents. [Industrial Applicability]

[0059] The volumetric video processing system and method of the present invention can be applied to computer devices. [Explanation of symbols]

[0060] 100 Volumetric Video Processing System 102 Memory circuit 104 processors 200 Volumetric Video Processing Methods 300, 500 Rendering Scenarios 301, 501 Original 3D model 302, 503 Rendered 3D models 400 Embedded Scenarios 401 Texture 402 Timecode 403, 502 Embedded Textures 600, 700 file formats 800 Playback Scenario S210, S220, S230, S240, S250, S801, S802, S803, S804, S805, S806, S807, S808 steps

Claims

1. a memory circuit for storing program code; a memory circuit connected to the memory and configured to access the program code; Obtaining a texture of a frame of the volumetric video; generating a time code based on a frame number of the frame; embedding the time code into the texture to generate an embedded texture; obtaining a 3D model of the frame; saving the embedded texture and the 3D model together as the volumetric video; A processor executing A volumetric video processing system comprising:

2. The processor further comprises: The volumetric video processing system of claim 1 , further comprising: converting the frame number from text to image to generate the time code.

3. The volumetric video processing system of claim 1 , wherein the time code is a binary image.

4. 2. The volumetric video processing system of claim 1, wherein the time code is a row of black and white squares or a column of black and white squares.

5. The processor further comprises: The volumetric video processing system of claim 1 , further comprising: placing the time code at the top, bottom, left, or right side of the texture to generate the embedded texture.

6. Obtaining a texture of a frame of the volumetric video; generating a time code based on a frame number of the frame; embedding the time code into the texture to generate an embedded texture; obtaining a 3D model of the frame; saving the embedded texture and the 3D model together as the volumetric video; A volumetric video processing method comprising:

7. The volumetric video processing method of claim 6, further comprising converting the frame number from text to image to generate the time code.

8. 7. The volumetric video processing method of claim 6, wherein the time code is a binary image.

9. 7. The volumetric video processing method of claim 6, wherein the time code is a row of black and white squares or a column of black and white squares.

10. The method of claim 6 , further comprising: placing the timecode at the top, bottom, left, or right side of the texture to generate the embedded texture.

11. acquiring frames of a volumetric video; obtaining a texture video from the frames of the volumetric video; obtaining a texture and a time code based on an embedded texture of the texture video; obtaining a frame number of the frame based on the time code; obtaining a 3D model of the frame from the volumetric video based on the frame number; and applying the texture to the 3D model to generate a rendered 3D model; A volumetric video processing method comprising:

Citation Information

Patent Citations

  • Time stamp reading method and apparatus, electronic device and storage medium

    CN107770560A

  • Video blurred screen area detection method, device and equipment and readable storage medium

    CN113542864A

  • System and method for processing digital video

    US20180005449A1

  • Capture of raw augmented reality data and subsequent 3D mesh generation

    US20200372709A1

  • Encoding and decoding of volumetric video

    WO2019034808A1