System and method for intraframe guided face generation

The VVC GFVC method addresses the limitations of existing GFVC by using a neural-network-based intraframe guided face generation with a U-Net discriminator and Cycle GAN training, enhancing facial video reconstruction quality and coding efficiency, especially at high QP conditions.

WO2026143591A1PCT designated stage Publication Date: 2026-07-09GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD

Patent Information

Authority / Receiving Office
WO · WO
Patent Type
Applications
Current Assignee / Owner
GUANGDONG OPPO MOBILE TELECOMMUNICATIONS CORP LTD
Filing Date
2025-01-02
Publication Date
2026-07-09

AI Technical Summary

Technical Problem

Existing generative facial video compression (GFVC) methods rely heavily on facial representation key points, leading to quality dependence on key frame quality and correctness of key point detection, and fail to show significant improvements in quality and bitstream efficiency at high QP, especially when compared to standard video coding techniques like VVC.

Method used

The proposed VVC GFVC employs a neural-network-based intraframe guided face generation using a generator with an attention mechanism and a discriminator based on a U-Net structure, combined with a multi-step Cycle GAN training strategy to enhance global context and local facial details, reducing encoding redundancy and improving reconstruction quality.

Benefits of technology

This approach achieves high-fidelity facial video reconstruction with improved coding efficiency and reduced encoding redundancy, maintaining stability and efficiency in high QP conditions, without relying on additional SEI messages.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN2025070116_09072026_PF_FP_ABST
    Figure CN2025070116_09072026_PF_FP_ABST
Patent Text Reader

Abstract

According to one aspect of the present disclosure, a method of generating a video is provided. The method may include decoding, by a processor, a bitstream to obtain one or more decoded pictures. The method may include determining, by the processor, a first reference picture and a second reference picture from the one or more decoded pictures. The method may include determining, by the processor, a parameter of a neural-network-based filter based on the first reference picture and the second reference picture. The method may include determining, by the processor, a video including one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.
Need to check novelty before this filing date? Find Prior Art

Description

SYSTEM AND METHOD FOR INTRAFRAME GUIDED FACE GENERATIONBACKGROUND

[0001] Embodiments of the present disclosure relate to video coding.

[0002] Digital video has become mainstream and is being used in a wide range of applications including digital television, video telephony, and teleconferencing. These digital video applications are feasible because of the advances in computing and communication technologies as well as efficient video coding techniques. Various video coding techniques may be used to compress video data, such that coding on the video data can be performed using one or more video coding standards. Exemplary video coding standards may include, but not limited to, versatile video coding (H. 266 / VVC) , high-efficiency video coding (H. 265 / HEVC) , advanced video coding (H. 264 / AVC) , moving picture expert group (MPEG) coding, to name a few.SUMMARY

[0003] According to one aspect of the present disclosure, a method of generating a video is provided. The method may include decoding, by a processor, a bitstream to obtain one or more decoded pictures. The method may include determining, by the processor, a first reference picture and a second reference picture from the one or more decoded pictures. The method may include determining, by the processor, a parameter of a neural-network-based filter based on the first reference picture and the second reference picture. The method may include determining, by the processor, a video including one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.

[0004] According to another aspect of the present disclosure, an apparatus for generating a video is provided. The apparatus may include a processor and memory storing instructions. The memory storing instructions, which when executed by the processor, may cause the processor to decode a bitstream to obtain one or more decoded pictures. The memory storing instructions, which when executed by the processor, may cause the processor to determine a first reference picture and a second reference picture from the one or more decoded pictures. The memory storing instructions, which when executed by the processor, may cause the processor to determine a parameter of a neural-network-based filter based on the first reference picture and the second reference picture. The memory storing instructions, which when executed by the processor, may cause the processor to determine a video including one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.

[0005] According to a further aspect of the present disclosure, a non-transitory computer-readable medium storing instructions video is provided. The instructions, which when executed by the processor, may cause the processor to decode a bitstream to obtain one or more decoded pictures. The instructions, which when executed by the processor, may cause the processor to determine a first reference picture and a second reference picture from the one or more decoded pictures. The instructions, which when executed by the processor, may cause the processor to determine a parameter of a neural-network-based filter based on the first reference picture and the second reference picture. The instructions, which when executed by the processor, may cause the processor to determine a video including one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.

[0006] These illustrative embodiments are mentioned not to limit or define the present disclosure, but to provide examples to aid understanding thereof. Additional embodiments are described in the Detailed Description, and further description is provided there.BRIEF DESCRIPTION OF THE DRAWINGS

[0007] The accompanying drawings, which are incorporated herein and form a part of the specification, illustrate embodiments of the present disclosure and, together with the description, further serve to explain the principles of the present disclosure and to enable a person skilled in the pertinent art to make and use the present disclosure.

[0008] FIG. 1 illustrates a block diagram of an exemplary video codec system, according to some embodiments of the present disclosure.

[0009] FIG. 2A illustrates a block diagram of an exemplary encoding apparatus, according to some embodiments of the present disclosure.

[0010] FIG. 2B illustrates a block diagram of an exemplary decoding apparatus, according to some embodiments of the present disclosure.

[0011] FIG. 3A illustrates a detailed block diagram of an exemplary video encoder, according to some embodiments of the present disclosure.

[0012] FIG. 3B illustrates a detailed block diagram of an exemplary video decoder and intraframe guided face generation network, according to some embodiments of the present disclosure.

[0013] FIG. 4 illustrates a detailed block diagram of an exemplary video coding apparatus with an intraframe guided face generation network, according to some embodiments of the present disclosure.

[0014] FIG. 5 illustrates a detailed block diagram of an exemplary intraframe guided face generation network, according to some embodiments of the present disclosure.

[0015] FIG. 6A illustrates a detailed block diagram of an exemplary generator included in the intraframe guided face generation network of FIG. 5, according to some embodiments of the present disclosure.

[0016] FIG. 6B illustrates a detailed block diagram of an exemplary channel and spatial attention layer included in the exemplary generator of FIG. 6A, according to some embodiments of the present disclosure.

[0017] FIG. 6C illustrates a detailed block diagram of an exemplary discriminator included in the intraframe guided face generation network of FIG. 5, according to some embodiments of the present disclosure.

[0018] FIG. 6D illustrates a detailed block diagram of another exemplary generator included in the intraframe guided face generation network of FIG. 5, according to some embodiments of the present disclosure.

[0019] FIG. 7 illustrates a visual representation of an exemplary Deep Image Structure and Texture Similarity (DISTS) model used for training the intraframe guided face generation network of FIG. 5, according to some embodiments of the present disclosure.

[0020] FIG. 8A illustrates an exemplary Learned Perceptual Image Patch Similarity (LPIPS) verses bitrate comparison of various GFVC methods, according to some embodiments of the present disclosure.

[0021] FIG. 8B illustrates an exemplary DISTS verses bitrate comparison of various GFVC methods, according to some embodiments of the present disclosure.

[0022] FIG. 8C illustrates an exemplary peak signal-to-noise ratio (PSNR) verses bitrate comparison of various GFVC methods, according to some embodiments of the present disclosure.

[0023] FIG. 8D illustrates an exemplary Structural Similarity Index Measure (SSIM) verses bitrate comparison of various GFVC methods, according to some embodiments of the present disclosure.

[0024] FIG. 9A illustrates average delta (BD) -rate (%) results of a Compact Feature Temporal Evolution (CFTE) model, according to some embodiments of the present disclosure.

[0025] FIG. 9B illustrates average BD-rate (%) results of a One-Shot Free-View Neural Talking-Head Synthesis (FV2V) model, according to some embodiments of the present disclosure.

[0026]

[0027] FIG. 9C illustrates average BD-rate (%) results of a First-Order Motion Model (FOMM) , according to some embodiments of the present disclosure.

[0028] FIG. 9D illustrates average BD-rate (%) results of the exemplary intraframe guided face generation network, according to some embodiments of the present disclosure.

[0029] FIG. 10 illustrates a flow chart of an exemplary method of GFVC, according to some embodiments of the present disclosure.

[0030] Embodiments of the present disclosure will be described with reference to the accompanying drawings.DETAILED DESCRIPTION

[0031] Although some configurations and arrangements are discussed, it should be understood that this is done for illustrative purposes only. A person skilled in the pertinent art will recognize that other configurations and arrangements can be used without departing from the spirit and scope of the present disclosure. It will be apparent to a person skilled in the pertinent art that the present disclosure can also be employed in a variety of other applications.

[0032] It is noted that references in the specification to “one embodiment, ” “an embodiment, ” “an example embodiment, ” “some embodiments, ” “certain embodiments, ” etc., indicate that the embodiment described may include a particular feature, structure, or characteristic, but every embodiment may not necessarily include the particular feature, structure, or characteristic. Moreover, such phrases do not necessarily refer to the same embodiment. Further, when a particular feature, structure, or characteristic is described in connection with an embodiment, it would be within the knowledge of a person skilled in the pertinent art to effect such feature, structure, or characteristic in connection with other embodiments whether or not explicitly described.

[0033] In general, terminology may be understood at least in part from usage in context. For example, the term “one or more” as used herein, depending at least in part upon context, may be used to describe any feature, structure, or characteristic in a singular sense or may be used to describe combinations of features, structures or characteristics in a plural sense. Similarly, terms, such as “a, ” “an, ” or “the, ” again, may be understood to convey a singular usage or to convey a plural usage, depending at least in part upon context. In addition, the term “based on” may be understood as not necessarily intended to convey an exclusive set of factors and may, instead, allow for existence of additional factors not necessarily expressly described, again, depending at least in part on context.

[0034] Various aspects of video coding systems will now be described with reference to various apparatus and methods. These apparatus and methods will be described in the following detailed description and illustrated in the accompanying drawings by various modules, components, circuits, steps, operations, processes, algorithms, etc. (collectively referred to as “elements” ) . These elements may be implemented using electronic hardware, firmware, computer software, or any combination thereof. Whether such elements are implemented as hardware, firmware, or software depends upon the particular application and design constraints imposed on the overall system.

[0035] The techniques described herein may be used for various video coding applications. As described herein, video coding includes both encoding and decoding a video. Encoding and decoding of a video can be performed by the unit of block. For example, an encoding / decoding process such as transform, quantization, prediction, in-loop filtering, reconstruction, or the like may be performed on a coding block, a transform block, or a prediction block. As described herein, a block to be encoded / decoded will be referred to as a “current block. ” For example, the current block may represent a coding block, a transform block, or a prediction block according to a current encoding / decoding process. In addition, it is understood that the term “unit” used in the present disclosure indicates a basic unit for performing a specific encoding / decoding process, and the term “block” indicates a sample array of a predetermined size. Unless otherwise stated, the “block, ” “unit, ” and “component” may be used interchangeably.

[0036] It is well known that humans acquire approximately 70%of information through visual means, and video information is more intuitive and convincing than, say, textual information. Due to the vast amount of data involved in video transmission, video compression technology is a beneficial aspect of digital media technology. The development of video encoding technology is primarily driven by the International Organization for Standardization (ISO) , the International Telecommunication Union (ITU) , and the Joint Video Experts Team (JVET) . In 1995, the H.262 / MPEG-2 standard was proposed, significantly improving coding efficiency than H. 261 and MPEG-1, the first video coding standard. In 1996, H. 263 was optimized for low bit-rate video. In 1999, MPEG-4 Part 2 was proposed for video on mobile devices. In 2003, ITU-T and ISO / IEC jointly developed the H. 264 / MPEG-4 Advanced Video Coding (AVC) standard, which was widely applied in Blu-ray discs, internet video, and mobile devices. In 2013, the H. 265 / HEVC standard was published for 4K and 8K ultra-high-definition video. In 2020, JVET released newest video standards technology, H. 266 / VVC, and its compression efficiency is 1.5 times that of HEVC.

[0037] In recent years, with the rapid development of smartphones and mobile networks, online socializing has gradually become the mainstream way of socializing, and people’s demand for video chatting and remote meetings has also increased sharply. The main transmission in video chat and remote meetings is facial videos, and how to transmit facial videos more efficiently and stably has become an important topic for video researchers. In general, the content of facial videos is relatively simple with very little background and only minor changes in the movements and expressions of the characters. Compared with ordinary full-scale videos, there is still great potential and possibility for improving the coding efficiency and transmission technology of facial videos. Therefore, GFVC aims to transmit facial videos using extremely low bitstreams, while preserving high visual quality and facial details. The technical components of GFVC primarily involve the development and optimization of the generation model, effective feature extraction and representation techniques, and the utilization of large-scale, diverse training datasets. However, GFVC also faces some challenges. Firstly, the network environment may experience fluctuations due to various factors, which can affect the stability and smoothness of video transmission. Secondly, although the content of facial videos is relatively simple, the amount of data in long-term real-time communication is also very large compared to ordinary videos.

[0038] Existing video compression standards may consume a lot of time when processing facial videos, and perform poorly in high network latency, occupying a large amount of network resources and even leading to network congestion. As research advances, GFVC is investigated to enhance user experiences and facilitate more efficient video transmission across various platforms and industries. In recent years, deep learning method has achieved outstanding performance in the field of image processing and computer vision, and research is being conducted to incorporate deep learning into GFVC. With the development of artificial intelligence (AI) technology, facial video compression technology based on deep learning has also received widespread attention. Especially, GFVC based on generative models has attracted widespread attention. This method aims to efficiently compress and restore facial videos by generating models, thereby achieving more efficient video transmission.

[0039] Generative model-based facial video compression has provided new solutions to GFVC. At the encoding side, the reference frame is compressed using VVC or HEVC, and the analysis model analyzes the facial representation of the inter frame and encodes it into a bitstream using auto encoder. At the decoding side, the reference frame is decoded by VVC or HEVC, which usually achieves good quality. The reconstructed reference frame and the decoded facial representation are transmitted to the generation model / network to reconstruct the entire face videos. The synthesis model can directly transmit changing features and model parameters at the encoding end, and through large-scale data training at the decoding end, it can reconstruct high-quality facial videos while retaining more details and realism. The generation of adversarial information can generate high-quality facial videos by learning the distribution of video data, significantly reducing data redundancy and achieving extremely high compression ratios. Therefore, efficient facial video encoding performance can be achieved at ultra-low bit rates. At the 29th JVET meeting, JVET-AC0088 first proposed using Supplemental Enhancement Information (SEI) messages to generate face videos. At the 32nd JVET meeting, a new Ad hoc Group on GFVC, named AHG 16, was established and which is mainly dedicated to researching standardized advanced algorithms, software tools, common testing conditions, and interoperability studies related to GFVC. JVET-AH0016 summarizes the activities of the AHG 16 on GFVC between the 33rd and 34th JVET meetings, and also clarifies the entire research goals of AHG 16.

[0040] However, existing GFVC methods strongly rely on facial representation key points, and the generator mainly warps the key frame of the face video based on the transmitted inter frame facial key points. Therefore, the quality of the generated face video depends entirely on the quality of the key frame and the correctness of key point detection. Moreover, different GFVC methods have their own transmission requirements, such as FOMM transmitting 2D key points and CFTE transmitting 4x4 compact features, which is not conducive to the widespread application of GFVC. Also, existing GFVC methods focus more on selecting facial representation and transmitting SEI messages, with less research on improving generator capabilities. Unfortunately, at extremely high QP (QP52) , compared to standard video coding techniques (VVC) , existing GFVC methods do not show significant improvements in quality and bitstream. Moreover, using VVC compressed QP52 facial videos can display basic facial position information, action information, and more video global information better than existing facial representation, but the face video suffers from significant quality defects.

[0041] To overcome these and other challenges, the present disclosure proposes a GFVC extension of the VVC standard, referred to herein as “VVC GFVC. ” VVC GFVC adopts VVC to compress face videos and generate bitstream for transmission. In the encoder, VVC GFVC compresses both intra and inter frames in face videos in Low-Delay B (LDB) configuration to generate a VVC bitstream that includes, e.g., an intra frame at QP 22 and inter frames at QP 52. The structure of compressed frames is I IPPP IPPP. . . IPPP, the QP for the first I frame is 22; and starting from the second I frame, QP52 is used to continue with the subsequent inter frame compression. VVC GFVC performs intraframe guided face generation on the decoded inter frames after VVC decoding. VVC GFVC employs a widely applicable compression framework VVC for face video compression, and does not need any additional SEI message in transmission, as shown in FIGs. 3A, 3B, and 4. In the VVC GFVC encoder, the use of high QP compression for inter frames can significantly improve the coding efficiency of facial videos and reduce encoding redundancy. In the VVC GFVC decoder, the generative model can perform high fidelity reconstruction on highly damaged facial videos, thus achieving a balance between global facial video quality and compression efficiency.

[0042] Moreover, the present disclosure provides an exemplary encoder-decoder (ED) generator GA with attention mechanism that can effectively enhance global context and local facial details for face generation. To further improve the performance of the generator, a discriminator based on a U-network (U-Net) structure is proposed to enhance its ability of distinguishing between real images and generated images. The discriminator may be used during training. The present disclosure also provides a multi-step generation process for a Cycle Generative Adversarial Network (Cycle GAN) to simplify the complexity of face generation and ensure the accuracy. By combining these blocks (e.g., generator, discriminator, etc. ) , the proposed Cycle GAN (e.g., the proposed intraframe guided face generation network) ensures high-quality facial restoration while maintaining training stability and efficiency.

[0043] The present disclosure proposes a three-stage training strategy to reduce the high randomness of the face generation task. The first stage trains generator GA based on pixel-level loss to reduce artifacts caused by Cycle GAN and successfully deals with the local features (e.g., empty holes) . The second stage trains the multi-step asymmetric Cycle GAN based on the pre-trained weights of GA to generate natural face frames with facial expressions and details. The third stage refines GA based on DISTS loss to generate perceptual textures in line with human visual perception.

[0044] Additional details of the present GFVC extension for VVC are provided below in connection with FIGs. 1-10.

[0045] FIG. 1 is a block diagram of a video codec system, according to some embodiments of the present disclosure. The video codec system, according to an embodiment, may include an encoding apparatus 10 and a decoding apparatus 20. The encoding apparatus 10 may deliver encoded video and / or picture information or data to the decoding apparatus 20 in the form of a file or streaming via a digital storage medium or network.

[0046] The encoding apparatus 10, according to an embodiment, may include a video source generator 11, an encoding unit 12, and a transmitter 13. The decoding apparatus 20, according to an embodiment, may include a receiver 21, a decoding unit 22, and a renderer 23. The encoding unit 12 may be called a video / picture encoding unit, and the decoding unit 22 may be called a video / picture decoding unit. The transmitter 13 may be included in the encoding unit 12.The receiver 21 may be included in the decoding unit 22. The renderer 23 may include a display, and the display may be configured as a separate device or an external component.

[0047] The video source generator 11 may acquire a video / picture through a process of capturing, synthesizing, or generating the video / picture. The video source generator 11 may include a video / picture capture device and / or a video / picture generating device. The video / picture capture device may include, for example, one or more cameras, video / picture archives including previously captured video / pictures, and the like. The video / picture-generating device may include, for example, computers, tablets, and smartphones, and may (electronically) generate video / pictures. For example, a virtual video / picture may be generated through a computer or the like. In this case, the video / picture capturing process may be replaced by a process of generating related data.

[0048] The encoding unit 12 may encode an input video / picture. The encoding unit 12 may perform a series of procedures such as prediction, transform, and quantization for compression and coding efficiency. The encoding unit 12 may output encoded data (encoded video / picture information) in the form of a bitstream.

[0049] The transmitter 13 may transmit the encoded video / picture information or data output in the form of a bitstream to the receiver 21 of the decoding apparatus 20 through a digital storage medium or a network in the form of a file or streaming. The digital storage medium may include various storage mediums such as universal serial bus (USB) , secure digital (SD) , compact disc (CD) , digital video disc (DVD) , Blu-ray, hard disk drive (HDD) , solid-state drive (SSD) , and the like. The transmitter 13 may include an element for generating a media file through a predetermined file format and may include an element for transmission through a broadcast / communication network. The receiver 21 may extract / receive the bitstream from the storage medium or network and transmit the bitstream to the decoding unit 22.

[0050] The decoding unit 22 may decode the video / picture by performing a series of procedures such as dequantization, inverse transform, and prediction corresponding to the operation of the encoding unit 12.

[0051] The renderer 23 may render the decoded video / picture. The rendered video / picture may be displayed through the display.

[0052] FIG. 2A is a schematic block diagram of an encoding apparatus, in accordance with some aspects of the present disclosure. Referring to FIG. 2A, the encoding apparatus 200 includes a picture partitioner 210, a predictor 220, a residual processor 230, an entropy encoder 240, an adder 251, a filter 261, and a memory 271. The predictor 220 may include an inter predictor 221 and an intra predictor 222. The residual processor 230 may include a transformer 232, a quantizer 233, a dequantizer 234, and an inverse transformer 235. The residual processor 230 may further include a subtractor 231. The adder 251 may be called a reconstructor or a reconstructed block generator. The picture partitioner 210, the predictor 220, the residual processor 230, the entropy encoder 240, the adder 251, and the filter 261 may be configured by at least one hardware component (e.g., an encoder chipset or processor) , according to an embodiment. In addition, the memory 271 may include a decoded picture buffer (DPB) or may be configured by a digital storage medium. The hardware component may further include the memory 271 as an internal / external component.

[0053] The picture partitioner 210 may partition an input picture (or a picture or a frame) input to the encoding apparatus 200 into one or more processors. For example, the processor may be called a coding unit (CU) . In this case, the coding unit may be recursively partitioned according to a quad-tree binary-tree ternary-tree (QTBTTT) structure from a coding tree unit (CTU) or a largest coding unit (LCU) . For example, one coding unit may be partitioned into a plurality of coding units of a deeper depth based on a quad tree structure, a binary tree structure, and / or a ternary structure. In this case, for example, the quad tree structure may be applied first, and the binary tree structure and / or ternary structure may be applied later. Alternatively, the binary tree structure may be applied first. The coding procedure according to this disclosure may be performed based on the final coding unit that is no longer partitioned. In this case, the largest coding unit may be used as the final coding unit based on coding efficiency according to picture characteristics, or if necessary, the coding unit may be recursively partitioned into coding units of deeper depth, and a coding unit having an optimal size may be used as the final coding unit. Here, the coding procedure may include a procedure of prediction, transform, and reconstruction, which will be described later. As another example, the processor may further include a prediction unit (PU) or a transform unit (TU) . In this case, the prediction unit and the transform unit may be split or partitioned from the aforementioned final coding unit. The prediction unit may be a unit of sample prediction, and the transform unit may be a unit for deriving a transform coefficient and / or a unit for deriving a residual signal from the transform coefficient.

[0054] The unit may be used interchangeably with terms such as block or area in some cases. In a general case, an M×N block may represent a set of samples or transform coefficients composed of M columns and N rows. A sample may generally represent a pixel or a value of a pixel, may represent only a pixel / pixel value of a luma component or represent only a pixel / pixel value of a chroma component. A sample may be used as a term corresponding to one picture (or picture) for a pixel or a pel.

[0055] In the encoding apparatus 200, a prediction signal (predicted block, prediction sample array) output from the inter predictor 221 or the intra predictor 222 is subtracted from an input picture signal (original block, original sample array) to generate a residual signal (residual block, residual sample array) , and the generated residual signal is transmitted to the transformer 232. In this case, as shown, a unit for subtracting a prediction signal (predicted block, prediction sample array) from the input picture signal (original block, original sample array) in the encoding apparatus 200 may be called a subtractor 231. The predictor may perform prediction on a block to be processed (hereinafter, referred to as a current block) and generate a predicted block including prediction samples for the current block. The predictor may determine whether intra prediction or inter prediction is applied on a current block or CU basis. As described later in the description of each prediction mode, the predictor may generate various information related to prediction, such as prediction mode information, and transmit the generated information to the entropy encoder 240. The information on the prediction may be encoded in the entropy encoder 240 and output in the form of a bitstream.

[0056] The intra predictor 222 may predict the current block by referring to the samples in the current picture. The referred samples may be located in the neighborhood of the current block or may be located apart according to the prediction mode. In the intra prediction, prediction modes may include a plurality of non-directional modes and a plurality of directional modes. The non-directional mode may include, for example, a DC mode and a planar mode. The directional mode may include, for example, 33 directional prediction modes or 65 directional prediction modes according to the degree of detail of the prediction direction. However, this is merely an example, and more or less directional prediction modes may be used depending on the setting. The intra predictor 222 may determine the prediction mode applied to the current block by using a prediction mode applied to a neighboring block.

[0057] The inter predictor 221 may derive a predicted block for the current block based on a reference block (reference sample array) specified by a motion vector on a reference picture. Here, in order to reduce the amount of motion information transmitted in the inter prediction mode, the motion information may be predicted in units of blocks, subblocks, or samples based on the correlation of motion information between the neighboring block and the current block. The motion information may include a motion vector and a reference picture index. The motion information may further include inter prediction direction (L0 prediction, L1 prediction, Bi prediction, etc. ) information. In the case of inter prediction, the neighboring block may include a spatial neighboring block present in the current picture and a temporal neighboring block present in the reference picture. The reference picture including the reference block and the reference picture including the temporal neighboring block may be the same or different. The temporal neighboring block may be called a collocated reference block, a co-located CU (colCU) , and the like, and the reference picture including the temporal neighboring block may be called a collocated picture (colPic) . For example, the inter predictor 221 may configure a motion information candidate list based on neighboring blocks and generate information indicating which candidate is used to derive a motion vector and / or a reference picture index of the current block. Inter prediction may be performed based on various prediction modes. For example, in the case of a skip mode and a merge mode, the inter predictor 221 may use motion information of the neighboring block as motion information of the current block. In the skip mode, unlike the merge mode, the residual signal may not be transmitted. In the case of the motion vector prediction (MVP) mode, the motion vector of the neighboring block may be used as a motion vector predictor, and the motion vector of the current block may be indicated by signaling a motion vector difference.

[0058] The predictor 220 may generate a prediction signal based on various prediction methods described below. For example, the predictor may not only apply intra prediction or inter prediction to predict one block but also simultaneously apply both intra prediction and inter prediction. This may be called combined inter and intra prediction (CIIP) . In addition, the predictor may be based on an intra block copy (IBC) prediction mode or a palette mode for prediction of a block. The IBC prediction mode or palette mode may be used for content picture / video coding of a game or the like, for example, screen content coding (SCC) . The IBC basically performs prediction in the current picture but may be performed similarly to inter prediction in that a reference block is derived in the current picture. That is, the IBC may use at least one of the inter prediction techniques described in the present disclosure. The palette mode may be considered an example of intra coding or intra prediction. When the palette mode is applied, a sample value within a picture may be signaled based on information on the palette table and the palette index.

[0059] The prediction signal generated by the predictor (including the inter predictor 221 and / or the intra predictor 222) may be used to generate a reconstructed signal or to generate a residual signal. The transformer 232 may generate transform coefficients by applying a transform technique to the residual signal. For example, the transform technique may include at least one of a discrete cosine transform (DCT) , a discrete sine transform (DST) , a karhunen-loève transform (KLT) , a graph-based transform (GBT) , or a conditionally non-linear transform (CNT) . Here, the GBT means transform obtained from a graph when relationship information between pixels is represented by the graph. The CNT refers to the transform generated based on a prediction signal generated using all previously reconstructed pixels. In addition, the transform process may be applied to square pixel blocks having the same size or may be applied to blocks having a variable size rather than a square.

[0060] The quantizer 233 may quantize the transform coefficients and transmit them to the entropy encoder 240, and the entropy encoder 240 may encode the quantized signal (information on the quantized transform coefficients) and output a bitstream. The information on the quantized transform coefficients may be referred to as residual information. The quantizer 233 may rearrange block type quantized transform coefficients into a one-dimensional vector form based on a coefficient scanning order and generate information on the quantized transform coefficients based on the quantized transform coefficients in the one-dimensional vector form. Information on transform coefficients may be generated. The entropy encoder 240 may perform various encoding methods such as, for example, exponential Golomb, context-adaptive variable length coding (CAVLC) , context-adaptive binary arithmetic coding (CABAC) , and the like. The entropy encoder 240 may encode information necessary for video / picture reconstruction other than quantized transform coefficients (e.g., values of syntax elements, etc. ) together or separately. Encoded information (e.g., encoded video / picture information) may be transmitted or stored in units of NALs (network abstraction layer) in the form of a bitstream. The video / picture information may further include information on various parameter sets, such as an adaptation parameter set (APS) , a picture parameter set (PPS) , a sequence parameter set (SPS) , or a video parameter set (VPS) . In addition, the video / picture information may further include general constraint information. In the present disclosure, information and / or syntax elements transmitted / signaled from the encoding apparatus to the decoding apparatus may be included in video / picture information. The video / picture information may be encoded through the above-described encoding procedure and included in the bitstream. The bitstream may be transmitted over a network or may be stored in a digital storage medium. The network may include a broadcasting network and / or a communication network, and the digital storage medium may include various storage media such as USB, SD, CD, DVD, Blu-ray, HDD, SSD, and the like. A transmitter (not shown) transmitting a signal output from the entropy encoder 240 and / or a storage unit (not shown) storing the signal may be included as internal / external element of the encoding apparatus 200, and alternatively, the transmitter may be included in the entropy encoder 240.

[0061] The quantized transform coefficients output from the quantizer 233 may be used to generate a prediction signal. For example, the residual signal (residual block or residual samples) may be reconstructed by applying dequantization and inverse transform to the quantized transform coefficients through the dequantizer 234 and the inverse transformer 235. The adder 251 adds the reconstructed residual signal to the prediction signal output from the inter predictor 221 or the intra predictor 222 to generate a reconstructed signal (reconstructed picture, reconstructed block, reconstructed sample array) . If there is no residual for the block to be processed, such as in a case where the skip mode is applied, the predicted block may be used as the reconstructed block. The adder 251 may be called a reconstructor or a reconstructed block generator. The generated reconstructed signal may be used for intra prediction of the next block to be processed in the current picture and may be used for inter prediction of the next picture through filtering as described below.

[0062] Meanwhile, luma mapping with chroma scaling (LMCS) may be applied during picture encoding and / or reconstruction.

[0063] The filter 261 may improve subjective / objective picture quality by applying filtering to the reconstructed signal. For example, the filter 261 may generate a modified reconstructed picture by applying various filtering methods to the reconstructed picture and store the modified reconstructed picture in the memory 271, specifically, a DPB of the memory 271. The various filtering methods may include, for example, deblocking filtering, a sample adaptive offset, an adaptive loop filter, a bilateral filter, and the like. The filter 261 may generate various information related to the filtering and transmit the generated information to the entropy encoder 240, as described later in the description of each filtering method. The information related to the filtering may be encoded by the entropy encoder 240 and output in the form of a bitstream.

[0064] The modified reconstructed picture transmitted to the memory 271 may be used as the reference picture in the inter predictor 221. When the inter prediction is applied through the encoding apparatus, prediction mismatch between the encoding apparatus 200 and the decoding apparatus 250 may be avoided, and encoding efficiency may be improved.

[0065] The DPB of the memory 271 DPB may store the modified reconstructed picture for use as a reference picture in the inter predictor 221. The memory 271 may store the motion information of the block from which the motion information in the current picture is derived (or encoded) and / or the motion information of the blocks in the picture that have already been reconstructed. The stored motion information may be transmitted to the inter predictor 221 and used as the motion information of the spatial neighboring block or the motion information of the temporal neighboring block. The memory 271 may store reconstructed samples of reconstructed blocks in the current picture and may transfer the reconstructed samples to the intra predictor 222.

[0066] FIG. 2B is a schematic block diagram of a decoding, in accordance with some embodiments of the present disclosure. Referring to FIG. 2B, the decoding apparatus 250 may include an entropy decoder 270, a residual processor 252, a predictor 258, an adder 264, a filter 266, and a memory 268. The predictor 258 may include an inter predictor 260 and an intra predictor 262. The residual processor 252 may include a dequantizer 254 and an inverse transformer 256. The entropy decoder 270, the residual processor 252, the predictor 258, the adder 264, and the filter 266 may be configured by a hardware component (e.g., a decoder chipset or a processor) according to an embodiment. In addition, the memory 268 may include a decoded picture buffer (DPB) or may be configured by digital storage.

[0067] When a bitstream including video / picture information is input, the decoding apparatus 250 may reconstruct a picture corresponding to a process in which the video / picture information is processed in the encoding apparatus of FIG. 2A. For example, the decoding apparatus 250 may derive units / blocks based on block partition-related information obtained from the bitstream. The decoding apparatus 250 may perform decoding using a processor applied in the encoding apparatus. Thus, the processor of decoding may be a coding unit, for example, and the coding unit may be partitioned according to a quad tree structure, binary tree structure and / or ternary tree structure from the coding tree unit or the largest coding unit. One or more transform units may be derived from the coding unit. The input picture data signal decoded and output through the decoding apparatus 250 may be reproduced through a reproducing apparatus.

[0068] The decoding apparatus 250 may receive a signal output from the encoding apparatus of FIG. 2A in the form of a bitstream, and the received signal may be decoded through the entropy decoder 270. For example, the entropy decoder 270 may parse the bitstream to derive information (e.g., video / picture information) necessary for picture reconstruction (or picture reconstruction) . The video / picture information may further include information on various parameter sets, such as an adaptation parameter set (APS) , a picture parameter set (PPS) , a sequence parameter set (SPS) , or a video parameter set (VPS) . In addition, the video / picture information may further include general constraint information. The decoding apparatus may further decode picture based on the information on the parameter set and / or the general constraint information. Signaled / received information and / or syntax elements described later in the present disclosure may be decoded by the decoding procedure and obtained from the bitstream. For example, the entropy decoder 270 decodes the information in the bitstream based on a coding method such as exponential Golomb coding, CAVLC, or CABAC, and output syntax elements required for picture reconstruction and quantized values of transform coefficients for residual. More specifically, the CABAC entropy decoding method may receive a bin corresponding to each syntax element in the bitstream, determine a context model using a decoding target syntax element information, decoding information of a decoding target block or information of a symbol / bin decoded in a previous stage, and perform an arithmetic decoding on the bin by predicting a probability of occurrence of a bin according to the determined context model, and generate a symbol corresponding to the value of each syntax element. In this case, the CABAC entropy decoding method may update the context model by using the information of the decoded symbol / bin for a context model of the next symbol / bin after determining the context model. The information related to the prediction among the information decoded by the entropy decoder 270 may be provided to the predictor (the inter predictor 260 and the intra predictor 262) , and the residual value on which the entropy decoding was performed in the entropy decoder 270, that is, the quantized transform coefficients and related parameter information, may be input to the residual processor 252. The residual processor 252 may derive the residual signal (the residual block, the residual samples, and the residual sample array) . In addition, information on filtering among information decoded by the entropy decoder 270 may be provided to the filter 266. Meanwhile, a receiver (not shown) for receiving a signal output from the encoding apparatus may be further configured as an internal / external element of the decoding apparatus 250, or the receiver may be a component of the entropy decoder 270. Meanwhile, the decoding apparatus in the present disclosure may be referred to as a video / picture / picture decoding apparatus, and the decoding apparatus may be classified into an information decoder (video / picture / picture information decoder) and a sample decoder (video / picture / picture sample decoder) . The information decoder may include the entropy decoder 270, and the sample decoder may include at least one of the dequantizer 254, the inverse transformer 256, the adder 264, the filter 266, the memory 268, the inter predictor 260, and the intra predictor 262.

[0069] The dequantizer 254 may dequantize the quantized transform coefficients and output the transform coefficients. The dequantizer 254 may rearrange the quantized transform coefficients in the form of a two-dimensional block form. In this case, the rearrangement may be performed based on the coefficient scanning order performed in the encoding apparatus. The dequantizer 254 may perform dequantization on the quantized transform coefficients by using a quantization parameter (e.g., quantization step size information) and obtain transform coefficients.

[0070] The inverse transformer 256 inversely transforms the transform coefficients to obtain a residual signal (residual block, residual sample array) .

[0071] The predictor may perform prediction on the current block and generate a predicted block including prediction samples for the current block. The predictor may determine whether intra prediction or inter prediction is applied to the current block based on the information on the prediction output from the entropy decoder 270 and may determine a specific intra / inter prediction mode.

[0072] The predictor 258 may generate a prediction signal based on various prediction methods described below. For example, the predictor may not only apply intra prediction or inter prediction to predict one block but also simultaneously apply intra prediction and inter prediction. This may be called combined inter and intra prediction (CIIP) . In addition, the predictor may be based on an intra block copy (IBC) prediction mode or a palette mode for prediction of a block. The IBC prediction mode or palette mode may be used for content picture / video coding of a game or the like, for example, screen content coding (SCC) . The IBC basically performs prediction in the current picture but may be performed similarly to inter prediction in that a reference block is derived in the current picture. That is, the IBC may use at least one of the inter prediction techniques described in this document. The palette mode may be considered an example of intra coding or intra prediction. When the palette mode is applied, a sample value within a picture may be signaled based on information on the palette table and the palette index.

[0073] The intra predictor 262 may predict the current block by referring to the samples in the current picture. The referred samples may be located in the neighborhood of the current block or may be located apart according to the prediction mode. In the intra prediction, prediction modes may include a plurality of nondirectional modes and a plurality of directional modes. The intra predictor 262 may determine the prediction mode applied to the current block by using a prediction mode applied to a neighboring block.

[0074] The intra predictor 262 may predict the current block by referring to the samples in the current picture. The referenced samples may be located in the neighborhood of the current block or may be located apart according to the prediction mode. In intra prediction, prediction modes may include a plurality of nondirectional modes and a plurality of directional modes. The intra predictor 262 may determine the prediction mode applied to the current block by using the prediction mode applied to the neighboring block.

[0075] The inter predictor 260 may derive a predicted block for the current block based on a reference block (reference sample array) specified by a motion vector on a reference picture. In this case, in order to reduce the amount of motion information transmitted in the inter prediction mode, motion information may be predicted in units of blocks, subblocks, or samples based on the correlation of motion information between the neighboring block and the current block. The motion information may include a motion vector and a reference picture index. The motion information may further include inter prediction direction (L0 prediction, L1 prediction, Bi prediction, etc. ) information. In the case of inter prediction, the neighboring block may include a spatial neighboring block present in the current picture and a temporal neighboring block present in the reference picture. For example, the inter predictor 260 may configure a motion information candidate list based on neighboring blocks and derive a motion vector of the current block and / or a reference picture index based on the received candidate selection information. Inter prediction may be performed based on various prediction modes, and the information on the prediction may include information indicating a mode of inter prediction for the current block.

[0076] The adder 264 may generate a reconstructed signal (reconstructed picture, reconstructed block, reconstructed sample array) by adding the obtained residual signal to the prediction signal (predicted block, predicted sample array) output from the predictor (including the inter predictor 260 and / or the intra predictor 262) . If there is no residual for the block to be processed, such as when the skip mode is applied, the predicted block may be used as the reconstructed block.

[0077] The adder 264 may be called reconstructor or a reconstructed block generator. The generated reconstructed signal may be used for intra prediction of the next block to be processed in the current picture, may be output through filtering as described below, or may be used for inter prediction of the next picture.

[0078] Meanwhile, luma mapping with chroma scaling (LMCS) may be applied in the picture decoding process.

[0079] The filter 266 may improve subjective / objective picture quality by applying filtering to the reconstructed signal. For example, the filter 266 may generate a modified reconstructed picture by applying various filtering methods to the reconstructed picture and store the modified reconstructed picture in the memory 268, specifically, a DPB of the memory 268. The various filtering methods may include, for example, deblocking filtering, a sample adaptive offset, an adaptive loop filter, a bilateral filter, and the like.

[0080] The (modified) reconstructed picture stored in the DPB of the memory 268 may be used as a reference picture in the inter predictor 260. The memory 268 may store the motion information of the block from which the motion information in the current picture is derived (or decoded) and / or the motion information of the blocks in the picture that have already been reconstructed. The stored motion information may be transmitted to the inter predictor 221 so as to be utilized as the motion information of the spatial neighboring block or the motion information of the temporal neighboring block. The memory 268 may store reconstructed samples of reconstructed blocks in the current picture and transfer the reconstructed samples to the intra predictor 262.

[0081] In the present disclosure, the embodiments described in the filter 261, the inter predictor 221, and the intra predictor 222 of the encoding apparatus 200 may be the same as or respectively applied to correspond to the filter 266, the inter predictor 260, and the intra predictor 262of the decoding apparatus 250. The same may also apply to the inter predictor 260 and the intra predictor 262.

[0082] In-loop filtering techniques for traditional video codecs are one of the representative components of NN-based coding models or tools. Since VVC is a block-based hybrid coding framework, it inevitably produces undesirable compression artifacts, especially at a high compression rate. To address this issue, VVC employs a series of advanced filtering techniques to eliminate or reduce compression artifacts.

[0083] As mentioned above, the present disclosure proposes a GFVC Extension of the VVC Standard, referred to herein as “VVC GFVC. ” The input of the proposed intraframe guided face generation network is the low QP intraframe compressed by VTM 22.2 at Low QP (QP22) and the high QP inter frame compressed by VTM 22.2 at High QP (QP52) , while the output is restored high quality face video. Both intra and inter frames are compressed in Low Delay B (LDB) configuration with different QP setting. FIGs. 3A and 3B illustrate the proposed VVC GFVC framework. The proposed framework mainly uses VVC as compression framework, and the proposed generative model serves as an enhancement module after VVC decoding.

[0084] FIG. 3A illustrates a detailed block diagram of an exemplary video encoder 300 for GVFC, according to some embodiments of the present disclosure. FIG. 3B illustrates a detailed block diagram of an exemplary video decoder apparatus 350 that includes a video decoder 330 and an intraframe guided face generation network 340, according to some embodiments of the present disclosure. FIGs. 3A and 3B will be described together.

[0085] As shown in FIG. 3A, video encoder 300 may include a first summation operator 302, a transform and quantization block 304, an inverse quantization block 306, an inverse transform block 308, a second summation operator 310, an in-loop filter 312, a decoded picture buffer (DPB) 314, an inter prediction block 316, an intra prediction block 318, and an entropy coding block 320. Video encoder 300 may encode a face video 301, which is output as a bitstream 303 to a decoder apparatus 350 in FIG. 3B.

[0086] Referring to FIG. 3B, video decoder 330 decodes bitstream 303, which is output as decoded bitstream 305. The decoded bitstream may include an intra frame (QP52) and at least one inter frame (QP22) . Intraframe guided face generation network 340 may perform GFVC to output a generated face video 307. Video decoder 330 may include the same or similar architecture as video encoder 300.

[0087] Still referring to FIG. 3B, for generative face video compression, intraframe guided face generation network 340 adopts low QP compressed intraframe as guidance to preserve face biometric and detail information and high QP compressed inter frame as input to save the coded bitstream in VVC, which can serve as a GFVC model for high quality and low bit-rate transmission of face video as an extension of VVC.

[0088] To enhance the face reconstruction capability of generative model, intraframe guided face generation network 340 may be implemented as a multi-step cycle asymmetric GAN. The proposed multi-step cycle asymmetric GAN may include two different types generators and U-Net discriminators. One generator GA / discriminator DA pair is dedicated to generate high quality face frames from ultra compressed face frames (QP52) , while the other generator GB / discriminator DB pair focuses on restoring the original ultra compressed face frames from the generated high quality ones. This cycle framework is used to ensure the translation consistency between high quality face frames and ultra compressed face frames. To reduce model complexity, asymmetric generators GA and GB with different complexities may be used. For instance, GB may use a low complexity encoder-decoder (ED) structure based on a convolutional neural network (CNN) . GA is also a ED structure but uses an attention mechanism to consider both local and global relationships. Since the output of GAN has high degree of randomness and lacks data fidelity, local artifacts or holes may be produced in certain areas of the result. To compensate for this, the intraframe guided face generation network 340 may input ultra compressed face frames into multiple progressive steps and impose specific loss functions at each stage. This step-by-step approach decomposes one complex ultra compressed face reconstruction task into three QP-distance face recovery tasks, e.g., QP52, QP42, and QP32 so that it simplifies the face recovery problem and ensures the network stability, thus leading to the clarity and fidelity of the reconstructed face image.

[0089] Meanwhile, to protect the facial identity features and reduce the potential artifacts generated by GAN, a three-step training strategy may be implemented as follows. Firstly, GA conducts pre-training independently as a traditional deep learning network. Subsequently, in the second stage, the entire cycle GAN model is trained with the pre-trained weights of GA as a favorable starting point to ensure that the proposed network can effectively restore facial details while maintaining identity attributes. Finally, a third stage is added as a refining stage to learn more face details, which just uses DISTS loss function to train only GA.

[0090] FIG. 4 illustrates a detailed block diagram of an exemplary video coding apparatus 400 with intraframe guided face generation network 340, according to some embodiments of the present disclosure. Referring to FIG. 4, the video coding apparatus 400 may include, e.g., an encoder 402, a decoder 404, and intraframe guided face generation network 340. Encoder 402 may encode an input sequence 401 of video pictures that includes an intra frame (QP22) and one or more inter frames (QP52) into a coded bitstream 403, which is received by decoder 404. Coded bitstream 403 may be a video coding bitstream (e.g., a VVC bitstream, etc. ) . Decoder 404 may decode the coded bitstream 403 to generate a VVC compressed sequence 405, which is output as a single video coding bitstream. In other words, the VVC compressed sequence 405 does not include any SEI messages. The video coding bitstream output by decoder 404 may include an intra frame (QP22) and one or more inter frames (QP52) . Intraframe guided face generation network 340 may generate a generative face sequence 407 using the intra frame of VVC compressed sequence 405 as guidance.

[0091] FIG. 5 illustrates a detailed block diagram of intraframe guided face generation network 340 of FIGs. 3B and 4, according to some embodiments of the present disclosure.

[0092] Referring to FIG. 5, the architecture of intraframe guided face generation network 340 is shown. Intraframe guided face generation network 340 may be designed as a multi-step asymmetric cycle GAN to recover an ultra-high QP compressed face picture (e.g., output picture 509) , where Pred (42 / 32) means the multi-step predicted face pictures (e.g., the high quality frames) restored by the proposed GAN (such as compressed by QP (42 / 32) ) , Pred (GT) means the final predicted video picture. This generative model consists of an encoder-decoder (ED) based attention mechanism generator GA, a conventional ED based CNN generator GB and two U-Net discriminators DA and DB.

[0093] As shown in FIG. 5, intraframe guided face generation network 340 may include, e.g., a first generator GA1 502a, a second generator GA2 502b, a third generator GA3 502c, a first discriminator 504a, a fourth generator GB 506, and a second discriminator 504b.

[0094] First generator GA1 502a may take as input, e.g., a first reference picture 501 (e.g., intra frame QP (22) ) and a second reference picture 503 (e.g., inter frame (s) QP (52) ) . Using first reference picture 501 as guidance, first generator GA1 502a may generate a third reference picture 505 (e.g., predicted frame QP (42) ) based on second reference picture 503. Second generator GA2 502b may generate a fourth reference picture 507 (e.g., predicted frame QP (32) ) based on third reference picture, using first reference picture 501 as guidance. Third generator GA3 502c may generate output picture 509 (e.g., predicted ground truth (GT) ) , using first reference picture 501 as guidance.

[0095] To learn the weights and biases used for the multi-step generators GA during training, output picture 509 may be input into first discriminator DA 504a. First discriminator DA 504a may output a fifth reference picture 511, which may be indication as to whether output picture 509 is in fact a ground truth image. Fourth generator GB 506 may generate a sixth reference picture 513 (e.g., predicted frame QP (52) ) based on the fifth reference picture 511. Second discriminator DB 504b may output second reference picture 503, which may be an indication as to whether sixth reference picture 513 is in fact second reference picture 503.

[0096] Still referring to FIG. 5, generators GA use multiple steps to simplify the complexity of each individual task and guarantee the authenticity of the recovered high quality face frame. The multi-step strategy decomposes one complex ultra compressed face reconstruction task into three QP-distance face reconstruction tasks, e.g., QP52, QP42, and QP32. Based on the multi-step strategy, intraframe guided face generation network 340 progressively and meticulously recovers the highly destroyed face frame (e.g., second reference picture 503) , while recovering different levels of face details and reducing complexity. This step-by-step approach not only simplifies the computational burden, but also contributes to the ability of multi-step cycle asymmetric Cycle GAN of ensuring consistency and stability between the recovery high quality face frame and its corresponding ground truth by reducing the randomness in the generative progress.

[0097] FIG. 6A illustrates a detailed block diagram of an exemplary generator GA 502 included in intraframe guided face generation network 340 of FIG. 5, according to some embodiments of the present disclosure. FIG. 6B illustrates a detailed block diagram of an exemplary channel and spatial attention layer 606 included in first generator GA 502 of FIG. 6A, according to some embodiments of the present disclosure. FIG. 6C illustrates a detailed block diagram of an exemplary discriminator 504 (referred to hereinafter as “discriminator 504” ) included in intraframe guided face generation network 340 of FIG. 5, according to some embodiments of the present disclosure. FIG. 6D illustrates a detailed block diagram of another exemplary generator (GB) 506 included in intraframe guided face generation network 340 of FIG. 5, according to some embodiments of the present disclosure. FIGs. 6A-6D will be described together.

[0098] Referring to FIG. 6A, generator GA 502 may include, e.g., a plurality of convolutional layers 602, a plurality of leaky rectified linear units (L-ReLU) 604, channel and spatial attention layer 606, a plurality of deconvolutional layers 608, and a hyperbolic tangent layer 610.

[0099] Referring to FIG. 6B, channel and spatial attention layer 606 may include, e.g., an adaptive average pooling layer 612, a plurality of linear function layers 614, a plurality of rectified linear units (ReLU) 616, a plurality of sigmoid function layers 618, a 3x3 convolutional layer 620, a plurality of 1x1 convolutional layers 622, and a plurality of summation operators 624.

[0100] Referring to FIGs. 6A and 6B, channel and spatial attention layer 606 may receive input features 601 from the generator layers located before channel and spatial attention layer 606, and output features 603 to the generator layers located after channel and spatial attention layer 606.

[0101] Referring to FIG. 6C, discriminator 504 may include, e.g., a plurality of convolutional layers 602, a plurality of L-ReLU 604, and a plurality of normalization layers 626.

[0102] Referring to FIG. 6D, another generator 506 may include, e.g., a plurality of convolutional layers 602, a plurality of deconvolutional layers 608, a hyperbolic tangent layer 610, and a residual block 628. More specifically, another generator GB 506 includes three downscale convolutional layers 602, one residual block 628 to accelerate the convergence speed of training, and three upscale deconvolutional layers 608, which are used to learn the inverse mapping from high QP compressed inter frame to final recovery high quality frame.

[0103] Referring to FIGs. 6A and 6D, generator GA 502 and another generator GB 506 both have an ED structure. For example, referring to FIG. 6A, the layers before channel and spatial attention layer 606 form an encoder structure in generator GA 502, and the layers after channel and spatial attention layer 606 form a decoder structure in generator GA 502. Referring to FIG. 6D, the layers before residual block 628 form an encoder structure in another generator GB 506, and the layers after residual block 628 form a decoder structure in another generator GB 506.

[0104] In FIG. 6A, the plurality of L-ReLU 604 are added to help with deeper model training and enhance model generalization. Channel and spatial attention layer 606 improves the quality, fidelity, and diversity of the results in image generation, and enhances adaptivity and fine-grained control ability of intraframe guided face generation network 340, as well as filters out unwanted information so that the generated clear faces do not contain unnecessary noise. Moreover, a combination of spatial attention and channel attention is to enhance the features of useful channels and retain important spatial information, which can emphasize spatial and channel-wise feature refinement.

[0105] Referring to FIG. 6C, ultra-high QP compressed face frame recovery is a face degradation problem, and it is difficult for general discriminator to discriminate such difficult feature representation and may fall into local optima. Therefore, a U-Net architecture is used for discriminator 504 with skip connection to have accurate gradient feedback on both global contents and local textures. In the proposed multi-step asymmetric Cycle GAN, discriminator 504 generates a discriminant value at each pixel, providing the another generator GB 506 with pixel-by-pixel discriminant feedback. At the same time, to prevent the instability of discriminator 504 and reduce dynamic fluctuation of the discriminator training, normalization and regularization (by normalization layers 626) that improve the overall performance of the multi-step asymmetric Cycle GAN are used. Normalization and regularization not only improve the stability of training, but also reduce the generation of artifacts in multi-step asymmetric Cycle GAN and further improve the quality of recovery face frame results. The adversarial loss is used to fine tune discriminator 504.

[0106] FIG. 7 illustrates a visual representation of an exemplary Deep Image Structure and Texture Similarity (DISTS) model 700 used for training the intraframe guided face generation network of FIG. 5, according to some embodiments of the present disclosure.

[0107] Referring to FIG. 7, traditional GAN often operates in the feature domain so that it learns and mimics the relationship between features for image generation. Due to the limited ability of generator and discriminator, the adversarial learning easily causes pattern collapse and training instability. Thus, GAN has a high degree of randomness and frequently generates artifacts in certain areas of the image, especially causing random local voids of the generated image. The artifacts may have a huge impact on the image generation, thus making the generated image look unrealistic with distortion. Therefore, a three-step training strategy is proposed to address the issues as follows. First, training is only on generator GA. The pixel-level loss function and the training objective of the face recovery enable end-to-end generator GA to stably learn the face recovery task, thereby reducing randomness of image generation. Thus, generator GA becomes more robust when dealing with local features. In the first step of training, the loss function only uses the joint loss term Lfirst and is trained for 5 epochs. Due to the limited generation capacity of CNN, pre-trained weights are used as a starting point for training the entire network. At this time, facial information is generated by learning the relationship between different features to make up for the lost texture details while retaining better global visual effects. The high-quality facial video frame recovered in two stages are a bit too smooth. Thus, a third stage is proposed as a refining stage to learn more face details, which uses DISTS loss function to train only generator GA. The three-step training strategy can provide a more stable training starting point for GAN than direct training and increase the robustness of the multi-step asymmetric Cycle GAN, thus enabling the proposed network to generate clearer and more identity-preserving face images.

[0108] During training, multiple loss functions may be used to constrain the high quality frame restoration task. First, an L1 loss function may be used to measure the difference between the real value and the predicted value to reduce the loss of texture information as shown below in equation (1) . However, the L1 loss function is not sufficient to support the generation of all high-frequency texture information, and there may still contain a certain degree of image smoothness. Therefore, the gradient loss function Lgrad of equation (2) may be used to constrain gradient information and generate a clearer face image (e.g., such as enhancing hairs and wrinkles) , reaching the real value from the intensity domain and gradient domain. At the same time, taking advantage of the ability of the convolutional layer to abstract high-dimensional features, perceptual loss Lper of equation (3) may be used to guide the learning process in the latent feature domain. A Visual Geometry Group 19 (VGG19) neural network may be used as the feature extractor to calculate the feature-aware loss Lfirst using equation (4) for layer 4 and layer 16. L1 (Pred (i) , Ori (i) ) =|Pred (i) -Ori (i) |1              (1) , Lper (Pred (i) , Ori (i) ) =|Φl (Pred (i) ) -Φl (Ori (i) ) |2          (3) , and Lfirst =L1+αLgras+βLper                                (4) , where Pred (i) means the predicted different QP compressed and uncompressed frame (QP42,  QP32, GT) , Ori (i) means the corresponding VTM compressed frame and uncompressed frame,  means the gradient operation, Φl means the lth layer features, α and β are the coefficient to balance L1 loss, gradient loss Lgrad, and perceptual loss Lper. α and β may be set to 0.05, and Lfirst may be used in the first training stage for 5 epochs.

[0109] Since the proposed generative model is based on Cycle GAN, in addition to using multiple loss function, Cycle GAN loss LGAN and LCycle are used in the loss function during training process. Specifically, the total loss function may be described according to equations (5) , (6) , (7) , and (8) shown below. Lc (QP (52) , Ori) =LGAN (QP (52) , Ori) +LCycle (QP (52) , Ori)               (5) , and Lsecond =Lc+Lfirst                                                 (8) .

[0110] The second stage may be for 15 epochs using Lsecond.

[0111] In the third training stage, DISTS loss may be to constrain GA and train it for 5 epochs to enhance the structural and texture features of the face frame. VGG-based perceptual representation for DISTS model may include a total of six stages. Global texture and structure similarity measurements are made at each stage, and combined with a weighted summation. It uses VGG to extract spatial patterns in the image that are crucial for preserving the overall structure. DISTS integrates texture similarity in addition to the structure. This component is sensitive to high-frequency details, ensuring that fine textures are well-preserved. The final DISTS loss Lthird is a weighted sum of these components, balancing both global structure and local textures, as shown below in equation (9) .

[0112] Following the existing GFVC method, the VoxCeleb dataset may be for training intraframe guided face generation network 340. The VoxCeleb dataset may contains more than 200000 mp4 format videos of size 224×224. Due to the large training set, the aim is to reduce the training time. So, firstly, ffmpeg may be used to capture one frame per second for each video to divide it into an entire image group. Then, 100000 sets may be selected from all image groups as the training set; and the datasets of size 256×256 may be resized for compression consistent with the training methods of general GFVC methods. Due to the limitations of graphical processing unit (GPU) memory and large model size, in order to ensure a certain batch size, the proposed model is trained with an image size of 128x128. The Adam optimizer with momentum parameters b1 = 0.5, b2 = 0.999 may be employed, and initial learning rates of 0.0002 and 0.0001 may be used for the generators and discriminators, respectively. During training stages 1 and 3, the batch size may be set to 10; and during training stage 2, the batch size may be adjusted to 6. For testing, 30 test sequences, which are provided by GFVC common test condition (CTC) , may be used. Consistent with training stage, the compressed size may be 256×256, and visual test size may be 128x128. The training datasets and test datasets may adopt the VTM 22.2 LDB configuration for compression in different QPs. For training, the QP of intra frame is 22, all inter frames are compressed to QP52. For ground truth, QPs of the video are 22, 32, 42, 52. For testing, QPs of the intra frame are based on GFVC CTC, which are 22, 32, 42, 52, all inter frames are compressed in QP52. Five evaluation metrics of PSNR, SSIM, DISTS, LPIPS, and kbps may be used to evaluate the performance of intraframe guided face generation network 340.

[0113] CFTE, FOMM, FV2V are comparative GFVC methods, where VVC is the anchor. These four methods use different facial feature representations (e.g., 2D key points, 3D key points, and compact featured) to reduce the bitrate of face video transmission. In addition, these four methods use VVC compressed intraframe to guide the decoding facial feature to reconstruct face video frames. Compared to other methods, experimental results for intraframe guided face generation network 340 demonstrate significant advantages, while still maintaining natural image representation and presenting realistic visual effects. Both the global structure and local details have achieved a high degree of consistency in the reconstruction effect, making the generated images look more coordinated, realistic and persuasive.

[0114] FIG. 8A illustrates an exemplary LPIPS verses bitrate comparison 800 of various GFVC methods, according to some embodiments of the present disclosure. FIG. 8B illustrates an exemplary DISTS verses bitrate comparison 825 of various GFVC methods, according to some embodiments of the present disclosure. FIG. 8C illustrates an exemplary PSNR verses bitrate comparison 850 of various GFVC methods, according to some embodiments of the present disclosure. FIG. 8D illustrates an exemplary SSIM verses bitrate comparison 875 of various GFVC methods, according to some embodiments of the present disclosure.

[0115] Referring to FIGs. 8A-8D, RD curves for all test sequences (Class A and Class B) on the comparison methods are shown. The horizontal coordinate represents kbps of face video, while the vertical coordinate is its corresponding 1-LPIPS, 1-DISTS, PSNR and SSIM value. The four compressed QPs for VVC anchor are 37, 42, 47, and 52, the four compressed QPs for GFVC methods (intraframe) are 22, 32, 42, and 52.

[0116] FIG. 9A illustrates average BD-rate (%) results 900 of a CFTE model, according to some embodiments of the present disclosure. FIG. 9B illustrates average BD-rate (%) results 925 of an FV2V model, according to some embodiments of the present disclosure. FIG. 9C illustrates average BD-rate (%) results 950 of an FOMM, according to some embodiments of the present disclosure. FIG. 9D illustrates average BD-rate (%) results 975 of the exemplary intraframe guided face generation network, according to some embodiments of the present disclosure. FIGs. 9A-9D will be described together.

[0117] Referring to FIGs. 9A-9D, traditional objective quality assessment index, such as PSNR and SSIM, are mainly used to measure pixel level distortion; however, these indexes are not suitable for evaluating the generated face videos as unique indicator. GFVC methods have introduced some perception-based visual quality assessment metrics, such as DISTS and LPIPS. These indicators evaluate the similarity between reconstructed images and original images by analyzing the correlation of learning based features, providing a more effective method for assessing the quality of generated images. Among these indicators, the lower the score, the higher the perceived image quality. For the evaluation of video quality, the overall quality performance of the video is usually measured by calculating the average quality score of each frame. In addition to these quality metrics, the kbps of each video is also calculated to more comprehensively reflect the balance between compression performance and quality. This multidimensional evaluation method can more accurately reflect the actual effectiveness of GFVC technology.

[0118] To unify the display of evaluation metrics, 1-DISTS and 1-LPIPS is used to evaluate video quality, with higher scores indicating better quality, similar to SSIM and PSNR. As shown in FIGs. 9A-9D and 10A-10D, although the present technique does not demonstrate the best performance at kbps compared to other GFVC methods, the present BD-rate is also much lower than VVC anchor, and the difference in kbps with other GFVC methods is only within 2kbps, which is acceptable. However, the visual quality score of the present technique is significantly higher than other methods, demonstrating the superiority of the present approach in terms of visual quality. This improvement can especially be seen in the pixel evaluation metrics PSNR and SSIM, in which the present techniques even outperforms VVC anchor at high QP, which is a significant advantage over other methods.

[0119] FIG. 10 illustrates a flow chart of an exemplary method 1000 of GVFC, according to some embodiments of the present disclosure. Method 1000 may be performed by an apparatus, e.g., such as intraframe guided face generation network 340, etc. Method 1000 may include operations 1002-1006 as described below. It is understood that some of the operations may be optional, and some of the operations may be performed simultaneously, or in a different order other than shown in FIG. 10.

[0120] At 1002, the apparatus may decode a bitstream to obtain one or more decoded pictures. In some implementations, the bitstream may be a video bitstream.

[0121] At 1004, the apparatus may determine a first reference picture and a second reference picture from the one or more decoded pictures. In some implementations, the first reference picture may be associated with a first QP value. In some implementations, the second reference picture may be associated with a second QP value higher than the first QP value. In some implementations, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the apparatus may decode access unit data in the bitstream to determine the first reference picture and the second reference picture. In some implementations, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the apparatus may decode supplemental data in the bitstream to determine or more of the first reference picture or the second reference picture. In some implementations, the supplemental data may be decoded to determine the first reference picture. In some implementations, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the apparatus may decode access unit data in the bitstream to determine the second reference picture. In some implementations, the supplemental data comprises one or more of SEI, alpha channel data, or auxiliary picture data. In some implementations, the first reference picture may include a first picture decoded from the bitstream. In some implementations, the second reference picture may include one or more subsequent pictures decoded from the bitstream after the first picture.

[0122] At 1006, the apparatus may determine a parameter of a neural-network-based filter based on the first reference picture and the second reference picture. In some implementations, the to determine the parameter of the neural-network-based filter based on the first reference picture and the second reference picture, the apparatus may determine a set of features based on the first reference picture and the second reference picture. In some implementations, the to determine the parameter of the neural-network-based filter based on the first reference picture and the second reference picture, the apparatus may determine the parameter of the neural-network-based filter based on the set of features. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the apparatus may determine a first set of features based on ED-based attention generation of the first reference picture and the second reference picture. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the apparatus may determine a second set of features based on first U-network discrimination of the first reference picture and the first set of features. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the apparatus may determine a third set of features based on ED-based CNN generation of the first reference picture and the second set of features. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the apparatus may determine a fourth set of features based on second U-network discrimination of the first reference picture and the third set of features. In some implementations, to determine the parameter of the neural-network-based filter based on the set of features, the apparatus may determine the parameter of the neural-network-based filter based on one or more of the first set of features, the second set of features, the third set of features, or the fourth set of features.

[0123] At 1008, the apparatus may determine a video including one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.

[0124] In summary, a GFVC extension of the VVC standard, referred to as “VVC GFVC, ” is proposed. In the encoder, VVC GFVC takes intraframe compressed at low QP (QP22) as guidance to explicitly preserve the biometric features and high-frequency face details, while taking inter frames compressed at high QP (QP52) as input to reduce the bitstream compressed by VVC. In the decoder, VVC GFVC uses multi-step asymmetric Cycle GAN for face generation after VVC decoding. Unlike existing GFVC techniques, the present VVC GFVC adopts a widely applicable compression framework VVC for face video compression, and does not need any additional SEI message in transmission.

[0125] To further enhance the reconstruction performance, a multi-step asymmetric Cycle GAN based on attention generator may be used. This generator simultaneously focuses on the global scene background and local facial details, ensuring that the reconstruction results are visually natural, accurate, and detailed. To optimize computational efficiency, an asymmetric generator structure that achieves an efficient trade-off between model performance and complexity by differentially allocating computing resources is introduced. This design significantly reduces computational overhead while ensuring image reconstruction quality, providing a lightweight solution for practical deployment.

[0126] In terms of training strategy, a three-stage training strategy is adopted for the generator. This exemplary strategy decomposes the complexity of the task in three stages to gradually optimize the accuracy and consistency of the generated results. In addition, to enhance the robustness of multi-step asymmetric Cycle GAN, the three-stage training strategy is employed to improve the stability and reliability of the model during the reconstruction process. Experimental results show that this method not only generated visually clear high-quality facial images, but also significantly maintained the identity consistency and naturalness of the face. The overall framework successfully integrates high-quality reconstruction, computational efficiency, and robustness, providing an advanced solution for GFVC.

[0127] The VVC GFVC provided herein may be further extended to other generative models, such as variational autoencoders, diffusion models, style GAN, and big data-driven model. These extensions can address various vision tasks such as facial expression synthesis, identity-preserving face generation, high-fidelity video restoration, and face video super-resolution.

[0128] VVC GFVC can transmit a large amount of face videos to users in a limited bandwidth, and provides a solution to the generative recovery of face video degradation caused by excessive compression. VVC GFVC reconstructs high-fidelity face videos from heavily compressed bitstreams, and optimizes bandwidth usage with the minimum quality loss. VVC GFVC is integrated into the VVC test model (VTM) in LDB configuration, where the generative recovery enhances face visual quality, providing clear and realistic face videos.

[0129] VVC GFVC can be applied to real-time video communication and remote conferencing systems. By leveraging the generative reconstruction of face videos, VVC GFVC significantly improves transmission efficiency in a limited bandwidth, while simultaneously enhancing visual quality. This leads to fast video streaming and realistic user experience in applications such as online video conferencing, virtual meetings, and telepresence systems, thereby ensuring smoother communication, reduced latency, and enhanced video realism.

[0130] In various aspects of the present disclosure, the functions described herein may be implemented in hardware, software, firmware, or any combination thereof. If implemented in software, the functions may be stored as instructions on a non-transitory computer-readable medium. Computer-readable media includes computer storage media. Storage media may be any available media that can be accessed by a processor, such as a processor in encoding unit 12, decoding unit 22 in FIG. 1, or intraframe guided face generation network 340 in FIG. 4. By way of example, and not limitation, such computer-readable media can include RAM, ROM, EEPROM, CD-ROM or other optical disk storage, HDD, such as magnetic disk storage or other magnetic storage devices, Flash drive, SSD, or any other medium that can be used to carry or store desired program code in the form of instructions or data structures and that can be accessed by a processing system, such as a mobile device or a computer. Disk and disc, as used herein, include CD, laser disc, optical disc, digital video disc (DVD) , and floppy disk where disks usually reproduce data magnetically, while discs reproduce data optically with lasers. Combinations of the above should also be included within the scope of computer-readable media.

[0131] According to one aspect of the present disclosure, a method of generating a video is provided. The method may include decoding, by a processor, a bitstream to obtain one or more decoded pictures. The method may include determining, by the processor, a first reference picture and a second reference picture from the one or more decoded pictures. The method may include determining, by the processor, a parameter of a neural-network-based filter based on the first reference picture and the second reference picture. The method may include determining, by the processor, a video including one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.

[0132] In some implementations, the bitstream may be a video bitstream.

[0133] In some implementations, the first reference picture may be associated with a QP value. In some implementations, the second reference picture may be associated with a second QP value higher than the first QP value.

[0134] In some implementations, the determining, by the processor, the first reference picture and the second reference picture from the one or more decoded pictures may include decoding, by the processor, access unit data in the bitstream to determine the first reference picture and the second reference picture.

[0135] In some implementations, the determining, by the processor, the first reference picture and the second reference picture from the one or more decoded pictures may include decoding, by the processor, supplemental data in the bitstream to determine or more of the first reference picture or the second reference picture.

[0136] In some implementations, the supplemental data may be decoded to determine the first reference picture. In some implementations, the determining, by the processor, the first reference picture and the second reference picture from the one or more decoded pictures may include decoding, by the processor, access unit data in the bitstream to determine the second reference picture.

[0137] In some implementations, the supplemental data comprises one or more of SEI, alpha channel data, or auxiliary picture data.

[0138] In some implementations, the first reference picture may include a first picture decoded from the bitstream. In some implementations, the second reference picture may include one or more subsequent pictures decoded from the bitstream after the first picture.

[0139] In some implementations, the determining, by the processor, the parameter of the neural-network-based filter based on the first reference picture and the second reference picture may include determining, by the processor, a set of features based on the first reference picture and the second reference picture. In some implementations, the determining, by the processor, the parameter of the neural-network-based filter based on the first reference picture and the second reference picture may include determining, by the processor, the parameter of the neural-network-based filter based on the set of features.

[0140] In some implementations, the determining, by the processor, the set of features based on the first reference picture and the second reference picture may include determining, by the processor, a first set of features based on ED-based attention generation of the first reference picture and the second reference picture. In some implementations, the determining, by the processor, the set of features based on the first reference picture and the second reference picture may include determining, by the processor, a second set of features based on first U-network discrimination of the first reference picture and the first set of features. In some implementations, the determining, by the processor, the set of features based on the first reference picture and the second reference picture may include determining, by the processor, a third set of features based on ED-based CNN generation of the first reference picture and the second set of features. In some implementations, the determining, by the processor, the set of features based on the first reference picture and the second reference picture may include determining, by the processor, a fourth set of features based on second U-network discrimination of the first reference picture and the third set of features.

[0141] In some implementations, the determining, by the processor, the parameter of the neural-network-based filter based on the set of features may include determining, by the processor, the parameter of the neural-network-based filter based on one or more of the first set of features, the second set of features, the third set of features, or the fourth set of features.

[0142] According to another aspect of the present disclosure, an apparatus for generating a video is provided. The apparatus may include a processor and memory storing instructions. The memory storing instructions, which when executed by the processor, may cause the processor to decode a bitstream to obtain one or more decoded pictures. The memory storing instructions, which when executed by the processor, may cause the processor to determine a first reference picture and a second reference picture from the one or more decoded pictures. The memory storing instructions, which when executed by the processor, may cause the processor to determine a parameter of a neural-network-based filter based on the first reference picture and the second reference picture. The memory storing instructions, which when executed by the processor, may cause the processor to determine a video including one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.

[0143] In some implementations, the bitstream may be a video bitstream.

[0144] In some implementations, the first reference picture may be associated with a QP value. In some implementations, the second reference picture may be associated with a second QP value higher than the first QP value.

[0145] In some implementations, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the memory storing instructions, which when executed by the processor, may cause the processor to decode access unit data in the bitstream to determine the first reference picture and the second reference picture.

[0146] In some implementations, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the memory storing instructions, which when executed by the processor, may cause the processor to decode supplemental data in the bitstream to determine or more of the first reference picture or the second reference picture.

[0147] In some implementations, the supplemental data may be decoded to determine the first reference picture. In some implementations, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the memory storing instructions, which when executed by the processor, may cause the processor to decode access unit data in the bitstream to determine the second reference picture.

[0148] In some implementations, the supplemental data comprises one or more of SEI, alpha channel data, or auxiliary picture data.

[0149] In some implementations, the first reference picture may include a first picture decoded from the bitstream. In some implementations, the second reference picture may include one or more subsequent pictures decoded from the bitstream after the first picture.

[0150] In some implementations, to determine the parameter of the neural-network-based filter based on the first reference picture and the second reference picture, the memory storing instructions, which when executed by the processor, may cause the processor to determine a set of features based on the first reference picture and the second reference picture. In some implementations, to determine the parameter of the neural-network-based filter based on the first reference picture and the second reference picture, the memory storing instructions, which when executed by the processor, may cause the processor to determine the parameter of the neural-network-based filter based on the set of features.

[0151] In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the memory storing instructions, which when executed by the processor, may cause the processor to determine a first set of features based on ED-based attention generation of the first reference picture and the second reference picture. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the memory storing instructions, which when executed by the processor, may cause the processor to determine a second set of features based on first U-network discrimination of the first reference picture and the first set of features. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the memory storing instructions, which when executed by the processor, may cause the processor to determine a third set of features based on ED-based CNN generation of the first reference picture and the second set of features. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the memory storing instructions, which when executed by the processor, may cause the processor to determine a fourth set of features based on second U-network discrimination of the first reference picture and the third set of features.

[0152] In some implementations, to determine the parameter of the neural-network-based filter based on the set of features, the memory storing instructions, which when executed by the processor, may cause the processor to determine the parameter of the neural-network-based filter based on one or more of the first set of features, the second set of features, the third set of features, or the fourth set of features.

[0153] According to a further aspect of the present disclosure, a non-transitory computer-readable medium storing instructions video is provided. The instructions, which when executed by the processor, may cause the processor to decode a bitstream to obtain one or more decoded pictures. The instructions, which when executed by the processor, may cause the processor to determine a first reference picture and a second reference picture from the one or more decoded pictures. The instructions, which when executed by the processor, may cause the processor to determine a parameter of a neural-network-based filter based on the first reference picture and the second reference picture. The instructions, which when executed by the processor, may cause the processor to determine a video including one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.

[0154] In some implementations, the bitstream may be a video bitstream.

[0155] In some implementations, the first reference picture may be associated with a QP value. In some implementations, the second reference picture may be associated with a second QP value higher than the first QP value.

[0156] In some implementations, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the instructions, which when executed by the processor, may cause the processor to decode access unit data in the bitstream to determine the first reference picture and the second reference picture.

[0157] In some implementations, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the instructions, which when executed by the processor, may cause the processor to decode supplemental data in the bitstream to determine or more of the first reference picture or the second reference picture.

[0158] In some implementations, the supplemental data may be decoded to determine the first reference picture. In some implementations, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the instructions, which when executed by the processor, may cause the processor to decode access unit data in the bitstream to determine the second reference picture.

[0159] In some implementations, the supplemental data comprises one or more of SEI, alpha channel data, or auxiliary picture data.

[0160] In some implementations, the first reference picture may include a first picture decoded from the bitstream. In some implementations, the second reference picture may include one or more subsequent pictures decoded from the bitstream after the first picture.

[0161] In some implementations, to determine the parameter of the neural-network-based filter based on the first reference picture and the second reference picture, the instructions, which when executed by the processor, may cause the processor to determine a set of features based on the first reference picture and the second reference picture. In some implementations, to determine the parameter of the neural-network-based filter based on the first reference picture and the second reference picture, the instructions, which when executed by the processor, may cause the processor to determine the parameter of the neural-network-based filter based on the set of features.

[0162] In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the instructions, which when executed by the processor, may cause the processor to determine a first set of features based on ED-based attention generation of the first reference picture and the second reference picture. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the instructions, which when executed by the processor, may cause the processor to determine a second set of features based on first U-network discrimination of the first reference picture and the first set of features. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the instructions, which when executed by the processor, may cause the processor to determine a third set of features based on ED-based CNN generation of the first reference picture and the second set of features. In some implementations, to determine the set of features based on the first reference picture and the second reference picture, the instructions, which when executed by the processor, may cause the processor to determine a fourth set of features based on second U-network discrimination of the first reference picture and the third set of features.

[0163] In some implementations, to determine the parameter of the neural-network-based filter based on the set of features, the instructions, which when executed by the processor, may cause the processor to determine the parameter of the neural-network-based filter based on one or more of the first set of features, the second set of features, the third set of features, or the fourth set of features.

[0164] The foregoing description of the embodiments will so reveal the general nature of the present disclosure that others can, by applying knowledge within the skill of the art, readily modify and / or adapt for various applications such embodiments, without undue experimentation, without departing from the general concept of the present disclosure. Therefore, such adaptations and modifications are intended to be within the meaning and range of equivalents of the disclosed embodiments, based on the teaching and guidance presented herein. It is to be understood that the phraseology or terminology herein is for the purpose of description and not of limitation, such that the terminology or phraseology of the present specification is to be interpreted by the skilled artisan in light of the teachings and guidance.

[0165] Embodiments of the present disclosure have been described above with the aid of functional building blocks illustrating the implementation of specified functions and relationships thereof. The boundaries of these functional building blocks have been arbitrarily defined herein for the convenience of the description. Alternate boundaries can be defined so long as the specified functions and relationships thereof are appropriately performed.

[0166] The Summary and Abstract sections may set forth one or more but not all exemplary embodiments of the present disclosure as contemplated by the inventor (s) , and thus, are not intended to limit the present disclosure and the appended claims in any way.

[0167] Various functional blocks, modules, and steps are disclosed above. The arrangements provided are illustrative and without limitation. Accordingly, the functional blocks, modules, and steps may be reordered or combined in different ways than in the examples provided above. Likewise, some embodiments include only a subset of the functional blocks, modules, and steps, and any such subset is permitted.

[0168] The breadth and scope of the present disclosure should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.

Claims

1.A method of generating a video, comprising:decoding, by a processor, a bitstream to obtain one or more decoded pictures;determining, by the processor, a first reference picture and a second reference picture from the one or more decoded pictures;determining, by the processor, a parameter of a neural-network-based filter based on the first reference picture and the second reference picture; anddetermining, by the processor, a video comprising one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.2.The method of claim 1, wherein the bitstream is a video bitstream.3.The method of claim 1, wherein:the first reference picture is associated with a first quantization parameter (QP) value, andthe second reference picture is associated with a second QP value higher than the first QP value.4.The method of claim 1, wherein the determining, by the processor, the first reference picture and the second reference picture from the one or more decoded pictures comprises:decoding, by the processor, access unit data in the bitstream to determine the first reference picture and the second reference picture.5.The method of claim 1, wherein the determining, by the processor, the first reference picture and the second reference picture from the one or more decoded pictures comprises:decoding, by the processor, supplemental data in the bitstream to determine or more of the first reference picture or the second reference picture.6.The method of claim 5, wherein:the supplemental data is decoded to determine the first reference picture, andthe determining, by the processor, the first reference picture and the second reference picture from the one or more decoded pictures comprises:decoding, by the processor, access unit data in the bitstream to determine the second reference picture.7.The method of claim 5, wherein the supplemental data comprises one or more of supplemental enhancement information (SEI) , alpha channel data, or auxiliary picture data.8.The method of claim 1, wherein:the first reference picture comprises a first picture decoded from the bitstream, andthe second reference picture comprises one or more subsequent pictures decoded from the bitstream after the first picture.9.The method of claim 1, wherein the determining, by the processor, the parameter of the neural-network-based filter based on the first reference picture and the second reference picture comprises:determining, by the processor, a set of features based on the first reference picture and the second reference picture; anddetermining, by the processor, the parameter of the neural-network-based filter based on the set of features.10.The method of claim 9, wherein the determining, by the processor, the set of features based on the first reference picture and the second reference picture comprises:determining, by the processor, a first set of features based on encoder-decoder (ED) -based attention generation of the first reference picture and the second reference picture;determining, by the processor, a second set of features based on first U-network discrimination of the first reference picture and the first set of features;determining, by the processor, a third set of features based on ED-based convolutional neural network (CNN) generation of the first reference picture and the second set of features; anddetermining, by the processor, a fourth set of features based on second U-network discrimination of the first reference picture and the third set of features.11.The method of claim 10, wherein the determining, by the processor, the parameter of the neural-network-based filter based on the set of features comprises:determining, by the processor, the parameter of the neural-network-based filter based on one or more of the first set of features, the second set of features, the third set of features, or the fourth set of features.12.An apparatus for generating a video, comprising:a processor; andmemory storing instructions, which when executed by the processor, cause the processor to:decode a bitstream to obtain one or more decoded pictures;determine a first reference picture and a second reference picture from the one or more decoded pictures;determine a parameter of a neural-network-based filter based on the first reference picture and the second reference picture; anddetermine a video comprising one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.13.The apparatus of claim 12, wherein the bitstream is a video bitstream.14.The apparatus of claim 12, wherein:the first reference picture is associated with a first quantization parameter (QP) value, andthe second reference picture is associated with a second QP value higher than the first QP value.15.The apparatus of claim 12, wherein, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the memory storing instructions, which when executed by the processor, cause the processor to:decode access unit data in the bitstream to determine the first reference picture and the second reference picture.16.The apparatus of claim 12, wherein, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the memory storing instructions, which when executed by the processor, cause the processor to:decode supplemental data in the bitstream to determine or more of the first reference picture or the second reference picture.17.The apparatus of claim 16, wherein:the supplemental data is decoded to determine the first reference picture, andto determine the first reference picture and the second reference picture from the one or more decoded pictures, the memory storing instructions, which when executed by the processor, cause the processor to:decode access unit data in the bitstream to determine the second reference picture.18.The apparatus of claim 16, wherein the supplemental data comprises one or more of supplemental enhancement information (SEI) , alpha channel data, or auxiliary picture data.19.The apparatus of claim 12, wherein:the first reference picture comprises a first picture decoded from the bitstream, andthe second reference picture comprises one or more subsequent pictures decoded from the bitstream after the first picture.20.The apparatus of claim 12, wherein, to determine the parameter of the neural-network-based filter based on the first reference picture and the second reference picture, the memory storing instructions, which when executed by the processor, cause the processor to:determine a set of features based on the first reference picture and the second reference picture; anddetermine the parameter of the neural-network-based filter based on the set of features.21.The apparatus of claim 20, wherein, to determine the set of features based on the first reference picture and the second reference picture, the memory storing instructions, which when executed by the processor, cause the processor to:determine a first set of features based on encoder-decoder (ED) -based attention generation of the first reference picture and the second reference picture;determine a second set of features based on first U-network discrimination of the first reference picture and the first set of features;determine a third set of features based on ED-based convolutional neural network (CNN) generation of the first reference picture and the second set of features; anddetermine a fourth set of features based on second U-network discrimination of the first reference picture and the third set of features.22.The apparatus of claim 21, wherein, to determine the parameter of the neural-network-based filter based on the set of features, the memory storing instructions, which when executed by the processor, cause the processor to:determine the parameter of the neural-network-based filter based on one or more of the first set of features, the second set of features, the third set of features, or the fourth set of features.23.A non-transitory computer-readable medium storing instructions, which when executed by a processor, cause the processor to:decode a bitstream to obtain one or more decoded pictures;determine a first reference picture and a second reference picture from the one or more decoded pictures;determine a parameter of a neural-network-based filter based on the first reference picture and the second reference picture; anddetermine a video comprising one or more pictures by performing filtering on one or more of the decoded pictures based on the neural-network-based filter.24.The non-transitory computer-readable medium of claim 23, wherein the bitstream is a video bitstream.25.The non-transitory computer-readable medium of claim 23, wherein:the first reference picture is associated with a first quantization parameter (QP) value, andthe second reference picture is associated with a second QP value higher than the first QP value.26.The non-transitory computer-readable medium of claim 23, wherein, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the instructions, which when executed by the processor, cause the processor to:decode access unit data in the bitstream to determine the first reference picture and the second reference picture.27.The non-transitory computer-readable medium of claim 23, wherein, to determine the first reference picture and the second reference picture from the one or more decoded pictures, the instructions, which when executed by the processor, cause the processor to:decode supplemental data in the bitstream to determine or more of the first reference picture or the second reference picture.28.The non-transitory computer-readable medium of claim 27, wherein:the supplemental data is decoded to determine the first reference picture, andto determine the first reference picture and the second reference picture from the one or more decoded pictures, the instructions, which when executed by the processor, cause the processor to:decode access unit data in the bitstream to determine the second reference picture.29.The non-transitory computer-readable medium of claim 27, wherein the supplemental data comprises one or more of supplemental enhancement information (SEI) , alpha channel data, or auxiliary picture data.30.The non-transitory computer-readable medium of claim 23, wherein:the first reference picture comprises a first picture decoded from the bitstream, andthe second reference picture comprises one or more subsequent pictures decoded from the bitstream after the first picture.31.The non-transitory computer-readable medium of claim 23, wherein, to determine the parameter of the neural-network-based filter based on the first reference picture and the second reference picture, the instructions, which when executed by the processor, cause the processor to:determine a set of features based on the first reference picture and the second reference picture; anddetermine the parameter of the neural-network-based filter based on the set of features.32.The non-transitory computer-readable medium of claim 31, wherein, to determine the set of features based on the first reference picture and the second reference picture, the instructions, which when executed by the processor, cause the processor to:determine a first set of features based on encoder-decoder (ED) -based attention generation of the first reference picture and the second reference picture;determine a second set of features based on first U-network discrimination of the first reference picture and the first set of features;determine a third set of features based on ED-based convolutional neural network (CNN) generation of the first reference picture and the second set of features; anddetermine a fourth set of features based on second U-network discrimination of the first reference picture and the third set of features.33.The non-transitory computer-readable medium of claim 32, wherein, to determine the parameter of the neural-network-based filter based on the set of features, the instructions, which when executed by the processor, cause the processor to:determine the parameter of the neural-network-based filter based on one or more of the first set of features, the second set of features, the third set of features, or the fourth set of features.