When transmitting images/videos, an encoder can utilize spatial correlation between pixels and temporal correlation between frames/pictures to compress the images/videos and transmit the compressed images/videos in a bitstream. A decoder can then reconstruct the images/videos from the bitstream. Researchers in this field have been committed to exploring a better compromise between a compression rate (e.g., bit-rate, R) and image distortion (D). In the past few decades, a series of image/video coding standards (e.g., JPEG, JPEG 2000, AVC, and HEVC) have been developed. Challenges remain in general compression performance and complexity.
Recent studies of video compression based on deep learning include two major aspects. First, some studies combine deep learning with traditional hybrid video compression. For example, replacing modules of loop filter, motion estimation, and motion compensation with neural networks. Disadvantages of traditional hybrid video compression frameworks include: (1) high complexity and (2) limits of optimization. Consumers' demands for high quality contents (e.g., resolutions 4K, 6K, 8K, etc.) result in remarkable increases of coding/decoding time and algorithm complexity. In addition, traditional hybrid video compression frameworks do not provide “end-to-end” global optimization. Second, some studies include deep learning-based video compression (DVC) framework focus only on 2D videos for compression. These traditional DVC frameworks use a pre-trained optical flow network to estimate motion information, and thus it is impossible to update their model parameters in real time to output optimal motion features. Also, the optical flow network only takes the previous frame as reference, which means that only “uni-directional” motion estimation is performed. Further, these traditional DVC frameworks fail to address data transmission problems from encoders to decoders. In other words, the traditional DVC frameworks require video sequence parameters to be manually provided to the decoder side (otherwise their decoders will not be able to decode videos). Therefore, it is advantageous to have improved methods or systems to address the foregoing issues.
The present disclosure relates to video compression schemes, including schemes involving deep omnidirectional video compression (DOVC). More specifically, the present disclosure is directed to systems and methods for providing a DOVC framework for omnidirectional and two-dimensional (2D) videos.
In a first aspect, there is provided a method for video processing, including following operations.
A current picture (xt) is received, a group of pictures (GOP) associated with the current picture (xt) is determined, the GOP includes a first key picture (xsI) and a second key picture (xeI), the first key picture is at a first time prior to the current picture (xt), and the second key picture is at a second time later than the current picture (xt); a first reference picture based on the first key picture (xsI) is generated, a second reference picture based on the second key picture (xeI) is generated; bi-directional predictive pictures (B/P pictures) in the GOP are determined based on the first reference picture and the second reference picture; and a motion estimation (ME) process is performed based on the current picture (xt) and the bi-directional predictive pictures so as to generate motion information (vt) of the current picture (xt).
In a second aspect, there is provided a method for video processing, including following operations.
A bitstream is parsed to obtain a quantized motion feature ({circumflex over (m)}t), the quantized motion feature ({circumflex over (m)}t) is determined from motion information (vt) of a current picture (xt), the motion information (vt) is determined based on bi-directional predictive pictures (B/P pictures) in a group of pictures (GOP), the B/P pictures are determined based on first and second reference pictures of the current picture (xt), the first reference picture is at a first time prior to the current picture (xt), and the second reference picture is at a second time later than the current picture (xt); and the quantized motion feature ({circumflex over (m)}t) is decoded by an MV decoder to generate a motion information ({circumflex over (v)}t).
In a third aspect, there is provided a decoder for video processing, including a processor and a memory.
The memory is configured to store instructions, when executed by the processor, to: parse a bitstream to obtain a quantized motion feature ({circumflex over (m)}t), the quantized motion feature ({circumflex over (m)}t) is formed from motion information (vt) of a current picture (xt), the motion information (vt) is determined based on bi-directional predictive pictures (B/P pictures) in a group of pictures (GOP), the B/P pictures are determined based on first and second reference pictures of the current picture (xt), the first reference picture is at a first time prior to the current picture (xt), and the second reference picture is at a second time later than the current picture (xt); and decode the quantized motion feature ({circumflex over (m)}t) to generate a motion information ({circumflex over (m)}t) by an MV decoder.
To describe the technical solutions in the implementations of the present disclosure more clearly, the following briefly describes the accompanying drawings. The accompanying drawings show merely some aspects or implementations of the present disclosure, and a person of ordinary skill in the art may still derive other drawings from these accompanying drawings without creative efforts.
To describe the technical solutions in the implementations of the present disclosure more clearly, the following briefly describes the accompanying drawings. The accompanying drawings show merely some aspects or implementations of the present disclosure, and a person of ordinary skill in the art may still derive other drawings from these accompanying drawings without creative efforts.
The present disclosure is related to systems and methods for deep learning (e.g., by using numerical optimization methods) video compression frameworks, including DOVC frameworks. More specifically, the present disclosure is directed to systems and methods for an “end-to-end” (e.g., delivering complex systems/methods in functional form from beginning to end) DOVC framework for both omnidirectional and 2D videos.
One aspect of the present disclosure includes methods for bi-directional image processing. “Bi-directional” means that the present image processing considers “forward” and “backward” frames (or pictures) in a time domain when predicting a current frame/picture (xt). By this arrangement, the present methods can better predict the current picture, compared to conventional “uni-directional” methods (i.e., less time consuming with higher image quality, as shown in test results of
The present methods include, for example, receiving a current picture of a video; and determining an open group of pictures (open GOP) associated with the current picture (xt). The open GOP includes a first key picture or “I-picture” (xsI) and a second key picture or “I-picture” (xeI). The first key picture is at a first time (e.g., a start time, noted as “s”) prior to the current picture (xt). The second key picture is at a second time (e.g., an end time, noted as “e”) later than the current picture (xt). By this arrangement, the present methods have a “bi-directional” prediction framework (embodiments are discussed in detail with reference to
The present methods can further include generating a first reference picture based on the first key picture (xsI); and generating a second reference picture based on the second key picture (xeI). In some embodiments, the first and second reference pictures can be generated by a better portable graphics (BPG) image compression tool (embodiments are discussed in detail with reference to, e.g.,
The present methods can further include determining bi-directional predictive pictures (B/P pictures) in the GOP based on the first reference picture and the second reference picture; and performing a motion estimation (ME) process based on the current picture (xt) and the reference pictures so as to generate motion information (vt) of the current picture (xt). Embodiments of the bi-directional predictive pictures are discussed in detail with reference to
In some embodiments, the present disclosure provides a DOVC framework that can be optimized by deep leaning (e.g., by an object function such as a loss function). In some embodiments, different loss functions can be used, for example, Mean Squared Error (MSE) functions, weighted Mean Squared Error (WMSE) functions, etc. Details of the loss functions are discussed in detail with reference to
One aspect of the present methods and systems is that they are capable of compressing and decompressing a variety of video contents, including regular 2D videos, high dynamic resolution (HDR) videos, and/or omnidirectional videos. Details of processing omnidirectional videos and general 2D videos are discussed in detail with reference to
One aspect of the present systems includes bi-directional ME and motion compensation (MC) module (see, e.g., details in
Another aspect of the present disclosure is that it provides a predicted offset field (“Δ” in
Yet another aspect of the present disclosure is that it provides a pre-trained model on a decoder side to complete decoding tasks, without requiring manually providing video sequence parameters (such as frame size, GOP, and the number of frames) on the decoder side. Details of the decoding capacity of the present system are discussed in detail with reference to
In some embodiments, the present method can be implemented by a tangible, non-transitory, computer-readable medium having processor instructions stored thereon that, when executed by one or more processors, cause the one or more processors to perform one or more aspects/features of the method described herein.
For example, picture 4 can be determined based on picture 0 and 8. Picture 2 can be determined based on picture 0 and picture 4, whereas picture 6 can be determined based on picture 4 and picture 8. The rest of the pictures can then be determined by similar approaches. By this arrangement, the “non-key” pictures can be predicted in a “bi-directional” fashion. In some embodiments, the current picture xt discussed herein can be one of the pictures to be predicted. The order of coding the foregoing pictures 0-16 is indicated by “coding order” in
Referring now to
A motion compensation (MC) module 205 utilizes a bi-directional motion compensation process 207 to form a predicted picture {tilde over (x)}t according to the motion information {circumflex over (v)}t and the aforementioned reference pictures (e.g., reconstructed pictures xsC and xeC).
At a substractor 209, the difference between the predicted picture {tilde over (x)}t and the current picture xt is calculated. The difference is defined as current residual information rt. The current residual information rt is then encoded (by a residual encoder/decoder 211) to generate a latent residual feature yt or qy. Then latent residual feature yt or qy is quantized to obtain a quantized residual feature ŷt or {circumflex over (q)}y. The quantized residual feature ŷt or {circumflex over (q)}y is then decoded to get residual information {circumflex over (r)}t. The prediction picture xt and the residual information {circumflex over (r)}t are added (at an adder 210) to obtain a reconstructed picture xtC.
To repeat the foregoing bi-directional process for the whole video sequence, the reconstructed pictures xsC and xtC can be used as reference pictures, and then set the next picture “
” In some embodiment, similarly, the reconstructed pictures xeC and xtC can be used as reference pictures, and then set the next picture “
”
In some embodiments, a bit-rate estimation module 213 can be used to determine a bit rate (R) for the encoder/decoder 203 and the residual encoder/decoder 211. The bit rate R can also be used to optimize the present DOVC framework by providing it as an input to a loss function module 215. The loss function module 215 can improve the present DOVC framework by optimizing a loss function such as “λD+R,” wherein “D” is a distortion parameter, “λ” is a Lagrangian coefficient, and R is the bit rate.
Referring now to
Referring back to
After the video sequence 301 is examined and/or processed (e.g., projected), current picture xt and reference (or reconstructed) pictures from previous picture {circumflex over (x)}t-1 (from a reference buffer 325) can be combined as input for a bi-directional ME module 307. The bi-directional ME module 307 generates current motion information vt. The current motion information is then encoded by a motion vector (MV) encoder 309 to form a latent motion feature mt, and then the latent motion feature mt is quantized by a quantization module 311 to obtain a quantized motion feature {circumflex over (m)}t. The quantized motion feature {circumflex over (m)}t is then decoded by the MV decoder 313 to form predicted motion information {circumflex over (v)}t.
The predicted motion information {circumflex over (v)}t is then directed to a bi-directional; motion compensation (MC) module 315 to form a predicted picture {tilde over (x)}t. The predicted picture {tilde over (x)}t is further directed to a substractor 316, where the difference between the predicted picture {tilde over (x)}t and the current picture xt is calculated. The difference is defined as current residual information rt.
The current residual information rt is then encoded (by a residual encoder 317) to generate a latent residual feature yt. Then latent residual feature yt is quantized (by a quantization module 319) to obtain a quantized residual feature ŷt. The quantized residual feature ŷt is then decoded (by a residual decoder 321) to get predicted residual information {circumflex over (r)}t. The prediction picture {tilde over (x)}t and the prediction residual information {circumflex over (r)}t are directed to an adder 322 to obtain a reconstructed picture {circumflex over (x)}t. The reconstructed picture {circumflex over (x)}t. can be used as future reference pictures and stored in the reference buffer 325.
In some embodiments, the reconstructed picture {circumflex over (x)}t can be directed to a quality enhancement (QE) module 323 for quality enhancement. The QE module 323 performs a convolutional process so as to enhance the image quality of the reconstructed pictures and obtain xtC with higher quality. Embodiments of the QE module 323 are discussed in detail with reference to
The DOVC framework 300 can include a bit-rate estimation module 329 configured to determine a bit rate (R) for the MV encoder/decoder 309, 313 and the residual encoder/decoder 317, 321. The bit rate R can also be used to optimize the present DOVC framework 300 by providing it as an input to the loss function module 327. The loss function module 327 can improve the present DOVC framework 300 by optimizing a loss function.
The deformable convolution module 703 is configured to fuse temporal-spatial information to generate motion information vt. Output features (e.g., the offset values δ and the offset field Δ) form the offset prediction module 701 are fed into the deformable convolution module 703 as an input. The deformable convolution module 703 then performs a convolutional process by using multiple convolutional layers with different parameters (e.g., stride, kernel, etc.). As shown in
Advantages of the ME module 700 include that it takes consecutive pictures together as an input so as to jointly consider and predict all deformable offsets at once (as compared to conventional optical flow methods that only handle one reference-target picture pair at a time).
In addition, the ME module 700 uses pictures with a symmetric structure (e.g., the “U-shaped” structure; e.g., referring to that the ME module 700 performs downsampling and then upsampling). Since consecutive pictures are highly correlated, offset prediction for the current picture can be benefited from the other adjacent pictures, which more effectively use temporal information of the frame, compared to conventional “pair-based” methods. Also, joint prediction is more computationally efficient at least because all deformable offsets can be obtained in a single process.
In some embodiments, during the convolutional process performed by the QE module 801, a regular convolutional layer can be set as “stride 1, zero padding” so as to retain feature size. Deconvolutional layers with “stride 2” can be used for down-sampling and up-sampling. Rectified Linear Unit (ReLU) can be adopted as an activation function for all layers except the last layer (which uses linear activation to regress the offset field 4). In some embodiments, a normalization layer is not used.
In some embodiments, the ME module, the MC module, and the QE module can be implemented in accordance with other standards, such as HEVC, VVC, etc., and are not limited to the DOVC framework disclosed herein.
At block 1105, the method 1100 continues by generating a first reference picture based on the first key picture xsI and generating a second reference picture based on the second key picture xeI. At block 1107, the method 1100 continues to determine bi-directional predictive pictures (B/P pictures) in the GOP based on the first reference picture and the second reference picture.
At block 1109, the method 1100 continues to perform a motion estimation (ME) process based on the current picture xt and the bi-directional predictive pictures so as to generate motion information vt of the current picture xt.
In some embodiments, the first reference picture can be a first reconstructed picture xsC based on the first key picture xxI processed by a better portable graphics (BPG) image compression tool. The second reference picture can be a second reconstructed picture xeC based on the second key picture xeI processed by the BPG image compression tool.
In some embodiments, the method 1100 can further comprise: (i) encoding the motion information vt by a motion vector (MV) encoder so as to form a latent motion feature mt of the current picture xt; (ii) quantizing the latent motion feature mt to form a quantized motion feature {circumflex over (m)}t; (iii) transmitting the quantized motion feature {circumflex over (m)}t in a bitstream; (iv) receiving the quantized motion feature {circumflex over (m)}t from the bitstream; (v) decoding the quantized motion feature {circumflex over (m)}t to form a predicted motion information {circumflex over (v)}t by an MV decoder; and (vi) performing a motion compensation (MC) process based on the motion information {circumflex over (v)}t and the bi-directional predictive pictures to form a predicted picture {tilde over (x)}t.
In some embodiments, the method 1100 can further comprise: (a) determining a current residual information rt by comparing the predicted picture {tilde over (x)}t and the current picture xt; (b) encoding the current residual information rt by a residual encoder to form a latent residual feature yt; (c) quantizing the latent residual feature yt to form a quantized residual feature ŷt; (d) decoding the quantized residual feature ŷt by a residual decoder to form a predicted residual information {circumflex over (r)}t; and (e) generating a reconstructed picture {circumflex over (x)}t based on the predicted picture {tilde over (x)}t and the residual information {circumflex over (r)}t.
In some embodiments, the method 1100 can further comprise setting the reconstructed picture {circumflex over (x)}t as the first reference picture. In some embodiments, the method 1100 can further comprise determining, by a video discriminator module, whether the video includes an omnidirectional video sequence based on a flag. In response to an event that video includes the omnidirectional video sequence, performing a sphere-to-plane projection on the omnidirectional sequence.
In some embodiments, the ME process is performed by an offset prediction network, the offset prediction network is configured to perform an offset prediction based on offset values (δ) of the current picture xt, the first reference picture, and the second reference picture. The offset values δ can be used to generate a feature map of the current picture xt by a spatiotemporal deformable convolution process. The feature map can used to form a residual map of the current picture xt by a quality enhancement module, and wherein the quality enhancement module includes multiple convolutional layers (L), and wherein the quality enhancement module performs a rectified linear unit (ReLU) activation process so as to form the residual map. The residual map is used to enhance a reconstructed picture {circumflex over (x)}t generated based on the current picture xt.
In
It may be understood that the memory in the implementations of this technology may be a volatile memory or a non-volatile memory, or may include both a volatile memory and a non-volatile memory. The non-volatile memory may be a read-only memory (ROM), a programmable read-only memory (PROM), an erasable programmable read-only memory (EPROM), an electrically erasable programmable read-only memory (EEPROM) or a flash memory. The volatile memory may be a random-access memory (RAM) and is used as an external cache. For exemplary rather than limitative description, many forms of RAMs can be used, and are, for example, a static random-access memory (SRAM), a dynamic random-access memory (DRAM), a synchronous dynamic random-access memory (SDRAM), a double data rate synchronous dynamic random-access memory (DDR SDRAM), an enhanced synchronous dynamic random-access memory (ESDRAM), a synchronous link dynamic random-access memory (SLDRAM), and a direct Rambus random-access memory (DR RAM). It should be noted that the memories in the systems and methods described herein are intended to include, but are not limited to, these memories and memories of any other suitable type.
As shown in
The term “w(i,j)” is a weight factor of ERP or CMP.
Also, the DOVC scheme can provide quality similar to the VVC scheme (but with less computing resources, due to the bi-directional prediction structure). “Table A” below shows a comparison of computing resource consumption by different schemes. “Class” and “Sequence Name” represent different testing samples. “Coding Time Complexity Comparison” shows time (in seconds) consumed for the coding. As shown, the VVC scheme (average “260279.819”) requires much higher computing resources (e.g., higher coding time) than the DOVC scheme (average “1650.327”).
Comparing
Comparing
According to at least some embodiments of the disclosure, a method for video processing is provided, which includes the following operations.
A current picture (xt) of the video is received.
A group of pictures (GOP) associated with the current picture (xt) is determined, the GOP includes a first key picture (xsI) and a second key picture (xeI), the first key picture is at a first time prior to the current picture (xt), and the second key picture is at a second time later than the current picture (xt).
A first reference picture based on the first key picture (xsI) is generated.
A second reference picture based on the second key picture (xeI) is generated.
Bi-directional predictive pictures (B/P pictures) in the GOP are determined based on the first reference picture and the second reference picture; and
A motion estimation (ME) process is performed based on the current picture (xt) and the bi-directional predictive pictures so as to generate motion information (vt) of the current picture (xt).
According to at least some embodiments, the method further includes: transmitting information of the first key picture and the second key picture in a bitstream.
According to at least some embodiments, the first reference picture is a first reconstructed picture (xsC) based on the first key picture (xsI) processed by a better portable graphics (BPG) image compression tool; and the second reference picture is a second reconstructed picture (xeC) based on the second key picture (xeI) processed by the BPG image compression tool.
According to at least some embodiments, the method further includes: encoding the motion information (vt) by a motion vector (MV) encoder so as to form a latent motion feature (mt) of the current picture (xt).
According to at least some embodiments, the method further includes: quantizing the latent motion feature (mt) to form a quantized motion feature ({circumflex over (m)}t).
According to at least some embodiments, the method further includes: transmitting the quantized motion feature ({circumflex over (m)}t) in a bitstream.
According to at least some embodiments, the method further includes: decoding the quantized motion feature ({circumflex over (m)}t) to form motion information ({circumflex over (v)}t) by an MV decoder; and performing a motion compensation (MC) process based on the predicted motion information ({circumflex over (v)}t) and the bi-directional predictive pictures to form a predicted picture ({tilde over (x)}t).
According to at least some embodiments, the method further includes: determining current residual information (rt) by comparing the predicted picture ({tilde over (x)}t) and the current picture (xt).
According to at least some embodiments, the method further includes: encoding the current residual information (rt) by a residual encoder to form a latent residual feature (yt); quantizing the latent residual feature (yt) to form a quantized residual feature (ŷt); and transmitting the quantized residual feature (ŷt) in a bitstream.
According to at least some embodiments, the method further includes: decoding the quantized residual feature (ŷt) by a residual decoder to form residual information (yt); and generating a reconstructed picture (xtC) based on the predicted picture (ŷt) and the predicted residual information (ŷt).
According to at least some embodiments, the method further includes: setting the reconstructed picture (xtC) as the first or second reference picture.
According to at least some embodiments, the method further includes: determining, by a video discriminator module, whether the video includes an omnidirectional video sequence; and setting a value of a flag for the current picture based on the determination.
According to at least some embodiments, the method further includes: in response to an event that video includes the omnidirectional video sequence, performing a sphere-to-plane projection on the omnidirectional sequence.
According to at least some embodiments, the method further includes: determining a loss function based on a result of the determination of the video discriminator module, a type of the video, or a flag according to the result of the determination of the video discriminator module.
According to at least some embodiments, the ME process is performed by an offset prediction network, the offset prediction network is configured to perform an offset prediction based on offset values (δ) of the current picture (xt), the first reference picture, and the second reference picture.
According to at least some embodiments, the offset values (δ) are used to generate a feature map of the current picture (xt) by a spatiotemporal deformable convolution process.
According to at least some embodiments, the feature map is used to form a residual map of the current picture (xt) by a quality enhancement module, and wherein the quality enhancement module includes multiple convolutional layers (L), and wherein the quality enhancement module performs a rectified linear unit (ReLU) activation process so as to form the residual map.
According to at least some embodiments, the residual map is used to enhance a reconstructed picture (xtC) generated based on the current picture (xt).
According to at least some embodiments, the offset values (δ) are used to generate a feature map of the current picture (xt), and wherein the feature map is used to form a residual map of the current picture (xt) by a quality enhancement module, and wherein the quality enhancement module includes multiple convolutional layers (L), and wherein the quality enhancement module performs a rectified linear unit (ReLU) activation process so as to form the residual map.
According to at least some embodiments of the disclosure, an encoder for video processing is provided, which includes a processor and a memory.
The memory is configured to store instructions, when executed by the processor, to: receive a current picture (xt) of a video; determine a group of pictures (GOP) associated with the current picture (xt), the GOP including a first key picture (xsI) and a second key picture (xeI), the first key picture being at a first time prior to the current picture (xt), the second key picture being at a second time later than the current picture (xt); generate a first reference picture based on the first key picture (xsI); generate a second reference picture based on the second key picture (xeI); determine bi-directional predictive pictures (B/P pictures) in the GOP based on the first reference picture and the second reference picture; and perform a motion estimation (ME) process based on the current picture (xt). and the bi-directional predictive pictures so as to generate motion information (vt) of the current picture (xt).
According to at least some embodiments, the instructions are further to: determine, by a video discriminator module of the encoder, whether the video includes an omnidirectional video sequence; and setting a value of a flag for the current picture based on the determination; and in response to an event that video includes the omnidirectional video sequence, perform a sphere-to-plane projection on the omnidirectional sequence, wherein the sphere-to-plane projection includes an equirectangular projection (ERP) or a cube-map projection (CMP).
According to at least some embodiments, the ME process is performed by an offset prediction network, the offset prediction network is configured to perform an offset prediction based on offset values (δ) of the current picture (xeI), the first reference picture, and the second reference picture.
According to at least some embodiments of the disclosure, a method for video processing is provided, which includes following operations.
A current picture (xt) of the video is received.
It is determined whether the video includes an omnidirectional video sequence.
In response to an event that video includes the omnidirectional video sequence, a sphere-to-plane projection is performed on the omnidirectional sequence.
A group of pictures (GOP) associated with the current picture (xt) is determined, the GOP includes a first key picture (xsI) and a second key picture (xeI), wherein the first key picture is at a first time prior to the current picture (xt), and the second key picture is at a second time later than the current picture (xt).
A first reference picture is generated based on the first key picture (xsI).
A second reference picture is generated based on the second key picture (xeI).
Bi-directional predictive pictures (B/P pictures) in the GOP are determined based on the first reference picture and the second reference picture.
A motion estimation (ME) process is performed based on the current picture (xt). and the bi-directional predictive pictures so as to generate motion information (vt) of the current picture (xt).
The motion information (vt) is encoded by a motion vector (MV) encoder so as to form a latent motion feature (mt) of the current picture (xt).
The latent motion feature (mt) is quantized to form a quantized motion feature ({circumflex over (m)}t).
The quantized motion feature ({circumflex over (m)}t) is decoded to form a motion information ({circumflex over (v)}t) by an MV decoder.
A motion compensation (MC) process is performed based on the predicted motion information ({circumflex over (v)}t) and the bi-directional predictive pictures to form a predicted picture ({tilde over (x)}t).
A current residual information (rt) is determined by comparing the predicted picture ({tilde over (x)}t) and the current picture (xt).
The current residual information (rt) is encoded by a residual encoder to form a latent residual feature (yt).
The latent residual feature (yt) is quantized to form a quantized residual feature (ŷt).
The quantized residual feature (ŷt) is decoded by a residual decoder to form a predicted residual information ({circumflex over (r)}t).
A reconstructed picture (xtC) is generated based on the predicted picture ({tilde over (x)}t) and the residual information ({circumflex over (r)}t).
According to at least some embodiments, a method for video processing is provided, which includes following operations.
A bitstream is parsed to obtain a quantized motion feature ({circumflex over (m)}t), the quantized motion feature ({circumflex over (m)}t) is formed from motion information (vt) of a current picture (xt), the motion information (vt) is determined based on bi-directional predictive pictures (B/P pictures) in a group of pictures (GOP) based on first and second reference pictures of the current picture (xt), the first reference picture is at a first time prior to the current picture (xt), and wherein the second reference picture is at a second time later than the current picture (xt).
The quantized motion feature ({circumflex over (m)}t) is decoded to form a motion information ({circumflex over (v)}t) by an MV decoder.
According to at least some embodiments, the method further includes: parsing information of key pictures from the bitstream to obtain the first and second reference pictures, and performing a motion compensation (MC) process based on the predicted motion information ({circumflex over (v)}t), the first and second reference pictures, and the bi-directional predictive pictures to form a predicted picture ({tilde over (x)}t).
According to at least some embodiments, the method further includes: parsing the bitstream to obtain a quantized residual feature (ŷt); decoding the quantized residual feature (ŷt) by a residual decoder to form a predicted residual information ({circumflex over (r)}t); and generating a reconstructed picture (xtC) based on the predicted picture ({tilde over (x)}t) and the residual information ({circumflex over (r)}t).
According to at least some embodiments, a decoder for video processing is provided, which includes a processor and a memory.
The memory is configured to store instructions, when executed by the processor, to: parse a bitstream to obtain a quantized motion feature ({circumflex over (m)}t), the quantized motion feature ({circumflex over (m)}t) is formed from motion information (vt) of a current picture (xt), the motion information (vt) is determined based on bi-directional predictive pictures (B/P pictures) in a group of pictures (GOP) based on first and second reference pictures of the current picture (xt), the first reference picture is at a first time prior to the current picture (xt), and the second reference picture is at a second time later than the current picture (xt); and decode the quantized motion feature ({circumflex over (m)}t) to form a motion information ({circumflex over (v)}t) by an MV decoder.
The above Detailed Description of examples of the disclosed technology is not intended to be exhaustive or to limit the disclosed technology to the precise form disclosed above. While specific examples for the disclosed technology are described above for illustrative purposes, various equivalent modifications are possible within the scope of the described technology, as those skilled in the relevant art will recognize. For example, while processes or blocks are presented in a given order, alternative implementations may perform routines having steps, or employ systems having blocks, in a different order, and some processes or blocks may be deleted, moved, added, subdivided, combined, and/or modified to provide alternative implementations or sub-combinations. Each of these processes or blocks may be implemented in a variety of different ways. Also, while processes or blocks are at times shown as being performed in series, these processes or blocks may instead be performed or implemented in parallel, or may be performed at different times. Further, any specific numbers noted herein are only examples; alternative implementations may employ differing values or ranges.
In the Detailed Description, numerous specific details are set forth to provide a thorough understanding of the presently described technology. In other implementations, the techniques introduced here can be practiced without these specific details. In other instances, well-known features, such as specific functions or routines, are not described in detail in order to avoid unnecessarily obscuring the present disclosure. References in this description to “an implementation/embodiment,” “one implementation/embodiment,” or the like mean that a particular feature, structure, material, or characteristic being described is included in at least one implementation of the described technology. Thus, the appearances of such phrases in this specification do not necessarily all refer to the same implementation/embodiment. On the other hand, such references are not necessarily mutually exclusive either. Furthermore, the particular features, structures, materials, or characteristics can be combined in any suitable manner in one or more implementations/embodiments. It is to be understood that the various implementations shown in the figures are merely illustrative representations and are not necessarily drawn to scale.
Several details describing structures or processes that are well-known and often associated with communications systems and subsystems, but that can unnecessarily obscure some significant aspects of the disclosed techniques, are not set forth herein for purposes of clarity. Moreover, although the following disclosure sets forth several implementations of different aspects of the present disclosure, several other implementations can have different configurations or different components than those described in this section. Accordingly, the disclosed techniques can have other implementations with additional elements or without several of the elements described below.
Many implementations or aspects of the technology described herein can take the form of computer- or processor-executable instructions, including routines executed by a programmable computer or processor. Those skilled in the relevant art will appreciate that the described techniques can be practiced on computer or processor systems other than those shown and described below. The techniques described herein can be implemented in a special-purpose computer or data processor that is specifically programmed, configured, or constructed to execute one or more of the computer-executable instructions described below. Accordingly, the terms “computer” and “processor” as generally used herein refer to any data processor. Information handled by these computers and processors can be presented at any suitable display medium. Instructions for executing computer- or processor-executable tasks can be stored in or on any suitable computer-readable medium, including hardware, firmware, or a combination of hardware and firmware. Instructions can be contained in any suitable memory device, including, for example, a flash drive and/or other suitable medium.
The term “and/or” in this specification is only an association relationship for describing the associated objects, and indicates that three relationships may exist, for example, A and/or B may indicate the following three cases: A exists separately, both A and B exist, and B exists separately.
These and other changes can be made to the disclosed technology in light of the above Detailed Description. While the Detailed Description describes certain examples of the disclosed technology, as well as the best mode contemplated, the disclosed technology can be practiced in many ways, no matter how detailed the above description appears in text. Details of the system may vary considerably in its specific implementation, while still being encompassed by the technology disclosed herein. As noted above, particular terminology used when describing certain features or aspects of the disclosed technology should not be taken to imply that the terminology is being redefined herein to be restricted to any specific characteristics, features, or aspects of the disclosed technology with which that terminology is associated. Accordingly, the invention is not limited, except as by the appended claims. In general, the terms used in the following claims should not be construed to limit the disclosed technology to the specific examples disclosed in the specification, unless the above Detailed Description section explicitly defines such terms.
A person of ordinary skill in the art may be aware that, in combination with the examples described in the implementations disclosed in this specification, units and algorithm steps may be implemented by electronic hardware, or a combination of computer software and electronic hardware. Whether the functions are performed by hardware or software depends on particular applications and design constraint conditions of the technical solutions. A person skilled in the art may use different methods to implement the described functions for each particular application, but it should not be considered that the implementation goes beyond the scope of this application.
Although certain aspects of the invention are presented below in certain claim forms, the applicant contemplates the various aspects of the invention in any number of claim forms. Accordingly, the applicant reserves the right to pursue additional claims after filing this application to pursue such additional claim forms, in either this application or in a continuing application.
This application is a continuation of International Application No. PCT/CN2021/121381 filed on Sep. 28, 2021, the disclosure of which is hereby incorporated by reference in its entirety.
Number | Date | Country | |
---|---|---|---|
Parent | PCT/CN2021/121381 | Sep 2021 | WO |
Child | 18617538 | US |