The present disclosure relates to video data encoding/decoding technology. More particularly, the present disclosure relates to an apparatus and a method for encoding/decoding a multi-plane video by adaptively determining a plane encoding sequence according to the characteristics of a video input, and a recording medium for the same.
The statements in this section merely provide background information related to the present disclosure and may not constitute prior art.
In general, all color videos are input and output in RGB format. In other words, all colors may be expressed with colors of Red (R), Green (B), and Blue (B). However, the RGB format has such a high correlation between respective color channels that the compression ratio is disadvantageously low when a video is encoded in the RGB format. Accordingly, commercial applications currently use a video format of YCbCr format, instead of the RGB format, in processes of storage, transmission, and compression of a video. A method of converting the RGB format into the YCbCr format is defined by an international standard group, such as the International Telecommunication Union (ITU) or the Society of Motion Picture and Television Engineers (SMPTE). In the YCbCr, Y refers to a luminance component and Cb and Cr refer to chrominance components, and the correlation between respective color channels is substantially removed.
Most commercial applications currently use a signal in the 4:2:0 format, as well as a signal simply converted to the YCbCr format.
However, in this case, the chrominance signal of an encoded image experiences a big loss when compared to an original image. Accordingly, the professional application field, such as a digital cinema, a medical image, and an Ultra High Definition Television (UHDTV), uses the RGB 4:4:4 format or the YCbCr 4:4:4 format, rather than the YCbCr 4:2:0 format.
In order to support the format, the H.264/AVC AMD supports a signal processing in an RGB domain with high 4:4:4 intra/predictive profiles in the following two methods. The first method is a common mode method of commonly applying an intra/inter mode which has been determined at the time of encoding a green chrominance signal, to the encoding of a blue chrominance signal and a red chrominance signal in the processing of an RGB signal. The second method is an independent mode method of independently processing each of the R, G, and B signals. However, in this case, the compression ratio of an encoded image may be deteriorated due to the high correlation between the R, G and B signals as described above.
Accordingly, the high correlation between chrominance signals is inherent in the RGB domain, so that a research for improving the efficiency of an encoder through the removal of the correlation has been conducted.
In Document 1, based on the observation that the linear relationship is inherent between the R, G, and B signals, the R and B signals were predicted by using the G signal. In Document 2, the linear relation between R, G, and B signals was used to predict one color plane from another color plane.
Meanwhile, as Document 1 encodes a G plane which is then used exclusively to predict an R plane and a B plane, Document 2 first encodes a G plane followed by predicting a B plane from the G plane, and finally performs an encoding of an R plane with the B or G plane.
However, according to the aforementioned conventional technologies, the predictions are preformed only in designated sequence due to the fixed order of encoding/decoding among the planes, so that the prediction efficiency is deteriorated.
To solve the above-mentioned problems and meet the need for a developed technology, the present disclosure seeks to provide an apparatus and a method for encoding/decoding a multi-plane video by adaptively determining the encoding sequence between planes according to the characteristics of a video input, and a recording medium for the same, thereby improving the encoding and decoding efficiency.
An embodiment of the present disclosure provides an apparatus for encoding a multi-plane video including: a plane encoding sequence determiner for adaptively determining a sequence of multiple color planes inputted in a predetermined unit, based on an encoding cost; and an encoder for encoding the multiple color planes inputted by predetermined unit in a determined sequence. The plane encoding sequence determiner may set up all possible number of sequences of the multiple color planes inputted by predetermined unit, encode the multiple color planes in determined sequences respectively, and then determine an optimal sequence among the determined sequences based on the encoding cost. The encoding cost may be obtained based on a rate distortion optimization method. The encoder may perform the encoding on a first color plane in the determined sequence based on an intra plane prediction, and perform the encoding on a second and later color planes based on an inter plane prediction.
Another embodiment of the present disclosure provides a method for encoding a multi-plane video including: determining a plane encoding sequence by adaptively determining a sequence of multiple color planes inputted by predetermined unit, based on an encoding cost; and encoding the multiple color planes inputted by the predetermined unit by determined sequence, wherein the process of determining a plane encoding sequence may include: setting up all possible number of sequences of the multiple color planes inputted by predetermined unit; encoding the multiple color planes in determined sequences respectively, and determining an optimal sequence among the set sequences based on the encoding cost. The encoding cost may be obtained based on a rate distortion optimization method. The process of encoding may include: performing the encoding on a first color plane in the determined sequence based on an intra plane prediction; and performing the encoding on a second and later color planes in the determined sequence based on an inter plane prediction.
A further embodiment of the present disclosure provides a non-transitory computer readable recording medium for recording a computer program for causing, when executed in a processor, the processor to perform the method of encoding the multi-plane video.
A still further embodiment of the present disclosure provides an apparatus for decoding a multi-plane video including: a plane decoding sequence identifier for confirming a sequence of multiple color planes inputted in a predetermined unit from a bitstream; and a decoder for decoding the multiple color planes inputted by predetermined unit in a determined sequence.
A still yet further embodiment of the present disclosure provides a method for decoding a multi-plane video including: identifying a plane decoding sequence by confirming a sequence of multiple color planes inputted in a predetermined unit from a bitstream; and decoding the multiple color planes inputted by predetermined unit in a determined sequence.
The process of identifying the sequence of the multiple color planes may confirm the sequence of a blue plane, a red plane and a green plane by using color_plane_id in the bitstream.
A still further embodiment of the present disclosure provides a non-transitory computer readable recording medium for recording a computer program for causing, when executed in a processor, the processor to perform the method of decoding the multi-plane video.
According to various aspects of the present disclosure as described above, since the present disclosure reflects the characteristics of a multi-plane video in its encoding/decoding process by adaptively determining the encoding/decoding sequence between the planes, and thereby providing a higher encoding and decoding efficiency over the conventional fixed sequence plane encoding and decoding, and in particular a higher encoding/decoding efficiency in performing predictions between the planes.
Hereinafter, an apparatus and a method for encoding/decoding a multi-plane video and a recording medium for the same according to embodiments of the present disclosure will be described in detail with reference to the accompanying drawings.
The plane encoding sequence determiner 410 is configured to adaptively determine the sequence of color planes inputted in predetermined units to encode based on the encoding cost of the planes. It includes a sequence setting unit 411 for setting up all the possible number of cases of sequences of multiple color planes inputted in a predetermined unit, a cost calculation unit 413 for encoding the multiple color planes in each of the set sequences and then finding the cost in that encoding, and an optimal sequence determiner 415 for determining an optimal sequence among the respective sequences based on the calculated costs, as illustrated in
Encoder 430 is configured to encode the multiple planes in the sequence determined by plane encoding sequence determiner 410, wherein the first color plane in the determined sequence may undergo encoding based on an intra plane prediction, and the second and later planes may undergo encoding based on an inter plane prediction, according to this embodiment.
The present disclosure may be applied not only to the independent encoding method of independently encoding the color plane by plane but also to the common encoding method that uses a common prediction mode among the color planes.
Plane decoding sequence identifier 610 confirms the color plane to be currently decoded by identifying color_plane_id in a video stream.
Decoder 620 performs decoding on the first color plane in the determined sequence based on an intra plane prediction and on the second and later planes based on an inter plane prediction.
Plane Encoding Sequence Determining Process S710
At first, upon receiving an image signal by unit of the frame, slice, macroblock, block, etc., plane encoding sequence determiner 410 adaptively determines the sequence between the multiple planes as an input image based on their encoding costs.
Encoding Process S730
Encoder 430 in this process carries out encoding on the number of color planes input in the predetermined input unit in the optimal sequence which is determined adaptively by plane encoding sequence determiner 410 in plane encoding sequence determining process S710. Encoder 430 in this process carries out encoding on the first color plane in the determined sequence based on the intra plane prediction, and on the second and later planes in the determined sequence based on the inter plane prediction.
Hereinafter, an operation/effect of the apparatus of
According to the embodiment of the present disclosure, plane encoding sequence determiner 410 or plane encoding sequence determining process S710 determines the encoding sequence of the respective planes. The same plane encoding sequence determiner 410 or plane encoding sequence determining process S710 determines an optimal sequence in a method as will be exemplified below. For example, the input image is assumably composed of three kinds of R, G, B planes. In addition, encoder 430 or encoding process S730 carries out predictions between the planes in a method as will be described below. The inter plane prediction refers to process of performing predictions between planes for the purpose of improving the encoding efficiency. The first green plane is allowed to skip the inter plane prediction but encoded by using its own plane information, which is called the intra plane prediction. The second blue plane has the inter plane prediction performed by using the encoded information of the first plane. With the single available counterpart of the first encoded plane to employ, the second plane may have the inter plane prediction performed therein. With the first and/or second planes available for use, the third red plane has the inter plane prediction performed therein. In this event, there is a need to store information on whether the current block has the inter plane prediction performed in the first plane or the second plane and to transmit the information toward a decoder.
The following description will be provided on the premise that encoder 430 and encoding process S730 operate as mentioned above. Although the illustrated structures of encoder 430 and encoding process S730 are expected to maximize the performance of the disclosure, encoder 430 and encoding process S730 are not limited to the aforementioned case.
For the convenience of description of plane encoding sequence determiner 410 and plane encoding sequence determining process S710, it is assumed that the green plane is named the first plane and has been already encoded. Then, the remainders are the blue and red planes. Conventional method would perform encoding on the second plane as designated by the blue plane and the third plane as designated by the red plane. However, in accordance with the present disclosure, the secondly encoded plane may be either the blue plane or the red plane following the characteristics of the image.
Decision of the plane sequence in plane encoding sequence determiner 410 and plane encoding sequence determining process S710 may be made by the rate distortion optimization (RDO) among other techniques may be used unlimitedly for the purpose of the present disclosure. In this embodiment, the input image may be in units of the sequence, frame, slice, macroblock, block, etc.
In plane encoding sequence determiner 410 and plane encoding sequence determining process S710, the RDO-based plane encoding sequencing technique is as follows. Equation 1 below represents the cost when the blue plane is encoded followed by the red plane with the green plane encoded already as the first plane. In Equation 1, R represents the bits generated by encoding the blue plane image and the red plane image when encoder 430 performed encoding in the sequence of the green, blue and then red, D represents a distortion from the original image, of a decoded image generated by decoding performed with encoded bits, and λ is Lagrange multipliers having constant values. Equation 2 means a cost generated when the green plane is first encoded, encoding the red plane next followed by encoding the blue plane.
J
B,R|G
=D
B,R|G
+λR
B,R|G Equation 1
J
R,B|G
=D
R,B|G
+λR
R,B|G Equation 2
Between Equation 1 and Equation 2, the lowest cost generated makes up the optimal encoding plane sequence of the subject image. In other words, if Equation 2 is smaller than Equation 1, the second plane may be determined to be the red plane, and the third plane may become the blue plane.
In this way, plane encoding sequence determiner 410 and plane encoding sequence determining process S710 may operate based on RDO to determine the plane encoding sequence by predetermined units of an image. The first plane is not necessarily predetermined with the green plane as above, but the RDO-based plane encoding sequencing technique may apply to the first plane from the outset.
Encoder 430 or encoding process S730 performs encoding following the optimal plane sequence outputted from the plane encoding sequence determiner 410 or plane encoding sequence determining process S710. Specifically, if the optimal sequence is the green, red and then blue, encoder 430 or encoding process S730 performs encoding on the green plane first, performs encoding on the red plane second by using an inter plane prediction with respect to the green plane, and eventually on the blue plane through an inter plane prediction with a selection of the higher encoding efficiency plane between the red and green planes.
Plane encoding sequence confirming process S910 confirms color information of a current plane by using color_plane_id in a bitstream. For example, between color_plane_id and the color plane there may be mapping provided as in Table 1.
For example, if the encoded color_plane_id in the bitstream 1,2,0, then a blue plane may be first encoded, encoding a red plane next followed by encoding a blue plane.
Decoding process S930 performs decoding based on the color plane decoding sequence. In this example, if the encoding sequence is the blue, red and green planes, the blue plane is first decoded by using an intra plane prediction, the red plane is decoded next through either an intra plane prediction or the blue plane based inter plane prediction, and the green plane is decoded through an intra plane predicting or an inter plane prediction using the blue and red planes.
In a common mode where a common prediction mode is used for the RGB signals, it is recommended to add the sequence of color_plane_id to the header of the stream, which may be done in a method described below. There are six possible decoding sequences of the RGB color planes. For example, codeword for this operation may be encoded into fixed codeword, which does not restrict the present disclosure from utilizing other schemes.
The multi-plane video encoding method according to the embodiment of the present disclosure described with reference to
Although exemplary embodiments of the present disclosure have been described for illustrative purposes, those skilled in the art will appreciate that various modifications, additions and substitutions are possible, without departing from essential characteristics of the disclosure. Therefore, exemplary aspects of the present disclosure have not been described for limiting purposes. Accordingly, the scope of the disclosure is not to be limited by the above aspects but by the claims and the equivalents thereof.
As described above, the present disclosure is highly useful to apply in the fields of video data compression technology, especially, the multi-plane video encoding/decoding technology, to encoding/decoding operations by adaptively determining the encoding/decoding sequence among planes based on the input image characteristics to provide a higher encoding/decoding efficiency over the conventional fixed plane sequence encoding/decoding, and particularly higher encoding/decoding in carrying out predictions between the planes.
If applicable, this application claims priorities under 35 U.S.C. §119(a) of Patent Application No. 10-2009-0121964, filed on Dec. 9, 2009 and Patent Application No. 10-2010-0125291, filed on Dec. 9, 2010 in Korea, the entire contents of which are incorporated herein by reference. In addition, this non-provisional application claims priorities in countries, other than the U.S., with the same reason based on the Korean Patent Applications, the entire contents of which are hereby incorporated by reference.
Number | Date | Country | Kind |
---|---|---|---|
10-2009-0121964 | Dec 2009 | KR | national |
10-2010-0125291 | Dec 2010 | KR | national |
Filing Document | Filing Date | Country | Kind | 371c Date |
---|---|---|---|---|
PCT/KR10/08803 | 12/9/2010 | WO | 00 | 8/22/2012 |