Method of generating reconstructed block

CA3212893CActive Publication Date: 2026-10-06GENSQUARE LLC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CA3212893
Authority / Receiving Office
CA · CA
Patent Type
Patents
Current Assignee / Owner
Priority Date
2011-11-04
Filing Date
2012-11-02
Publication Date
2026-10-06
Estimated Expiration
2032-11-02
Patent Text Reader

Abstract

Provided is a method that derives an intra prediction mode of a prediction unit, determines a size of a current block using transform size information, generates a prediction block of the current block according to the intra prediction mode, generating a residual block of the current block according to the intra prediction mode and generating a reconstructed block of the current block using the prediction block and the residual block. The sizes of the prediction block and the residual block are set equal to a size of a transform unit. Therefore, the distance of intra prediction becomes short, and the amount of coding bits of residual block is reduced by generating a prediction block very similar to original block. Also, the signaling 10 bits required to signal intra prediction mode decrease by generating MPM group adaptively according to the neighboring intra prediction modes.
Need to check novelty before this filing date? Find Prior Art

Description

<DP=1>²METHOD OF GENERATING RECONSTRUCTED BLOCK² [Technical Field]²The present invention relates to a method and an apparatus of decoding an ²image, and ²more particularly, to a method and apparatus of adaptively generating a ²prediction block and ²residual block having equal size to a transform unit according to an intra ²prediction mode.²[Background Art]²In H.264 / MPEG-4 A VC, one picture is divided into macroblocks to encode an ²image, ²the respective macroblocks are encoded by generating a prediction block using ²inter prediction or ²intra prediction. The difference between an original block and the prediction ²block is transformed ²to generate a transformed block, and the transformed block is quantized using ²a quantization²parameter and one of a plurality of predetermined quantization matrices. The ²quantized²coefficient of the quantized block are scanned by a predetermined scan type ²and then entropy-²coded. The quantization parameter is adjusted per macroblock and encoded using ²a previous ²quantization parameter.²Meanwhile, techniques using various size of coding unit are introduced to ²improve the²coding efficiency. Techniques increasing a number of intra prediction modes ²are also introduces²to generate a prediction block more similar to an original block.²But, if the number of intra prediction modes increases, the amount of coding ²bits ²required for signaling the intra prediction mode becomes larger. Also, if the ²size of the coding unit ²is larger, the difference between an original block and a prediction block is ²greater.²Accordingly, more effective method is required to signal the intra prediction ²mode.²More effective method is also required to minimize the difference between the ²original block and²the prediction block and to minimize the coding bits of residual block.²1²Date Recue / Date Received 2023-09-18²<DP=2>²The present invention is directed to a method of deriving an infra prediction ²mode of a ²prediction unit, determining a size of a current block using transform size ²information, generating ²a prediction block and a residual block of the current block according to the ²intra prediction mode²and generating a reconstructed block of the current block using the prediction ²block and the²residual block.²According to one aspect of the present invention, there is provided an ²apparatus ²for encoding an image in intra prediction, comprising: an intra prediction ²unit of generating a ²prediction block using an infra prediction mode; a transform unit of ²transforming residual signals²generated using an original block and the prediction block to generate a ²transformed block; a²quantization unit of determining a quantization parameter and quantizing the ²transformed block ²using a quantization matrix and the quantization parameter to generate a ²quantized block; a ²scanning unit of determining a scan pattern and applying the scan pattern to ²the quantized block to ²generate one-dimensional coefficient information; and an entropy coding unit ²of entropy-coding²the one-dimensional coefficient information and the Ultra prediction mode, ²wherein the residual²signals are transformed in transform unit, DST-based integer transforms are ²used for transforming ²the residual signals if the size of the transform unit is smaller than a ²predetermined size, and DCT-²based transforms are used if the size of the transform unit is equal to or ²larger than the ²predetermined size, wherein a differential quantization parameter is generated ²by subtracting a²quantization parameter predictor from the quantization parameter, and is ²entropy-coded, and²wherein if two or more quantization parameters are available among a left ²quantization parameter, ²an above quantization parameter an a previous quantization parameter of a ²current coding unit, ²the quantization parameter predictor is generated using two available ²quantization parameters ²determined according a predetermined order, and if only one quantization ²parameter is available,²the available quantization parameter is set as the quantization parameter ²predictor.²Another aspect provides a method of generating a reconstructed block, ²comprising: ²deriving an infra prediction mode of a prediction unit, determining a size of ²a current block using²2²Date Recue / Date Received 2023-09-18²<DP=3>²transform size information, generating a prediction block of the current block ²according to the ²intra prediction mode, generating a residual block of the current block ²according to the intra ²prediction mode and generating a reconstructed block of the current block ²using the prediction ²block and the residual block.²A method according to the present invention derives an intra prediction mode ²of a ²prediction unit, determines a size of a current block using transform size ²information, generates a ²prediction block of the current block according to the intra prediction mode, ²generates a residual ²block of the current block according to the intra prediction mode and ²generates a reconstructed ²block of the current block using the prediction block and the residual block. ²In some²embodiments, the sizes of the prediction block and the residual block are set ²equal to a size of a²transform unit. Therefore, the distance of intra prediction becomes short, and ²the amount of ²coding bits of the residual block is²2a²Date Recue / Date Received 2023-09-18²<DP=4>²reduced by generating a prediction block very similar to original block. Also, ²in some ²embodiments the signaling bits required to signal intra prediction mode ²decrease by ²generating MPM group adaptively according to the neighboring intra prediction ²modes.² [Description of Drawings]²FIG. 1 is a block diagram of an image coding apparatus according to an ²embodiment of the present invention.²FIG. 2 is a block diagram of an image decoding apparatus according to an ²embodiment of the present invention.² FIG. 3 is a flow chart illustrating a procedure of generating a reconstructed²block in intra prediction according to an embodiment of the present invention.²FIG. 4 is a flow chart illustrating a procedure of deriving an intra ²prediction²mode of a current prediction unit according to an embodiment of the present ²invention.²FIG.5 is a conceptual diagram illustrating intra prediction modes² according to an embodiment of the present invention.²FIG. 6 is a flow chart illustrating a procedure of generating a prediction ²block²according to an embodiment of the present invention.²FIG. 7 is a conceptual diagram illustrating positions of reference pixels of a²current block according to an embodiment of the present invention.² FIG.8 is a flow chart illustrating a procedure of generating a residual block²according to an embodiment of the present invention.²FIG. 9 is a flow chart illustrating a procedure of deriving quanti7ation ²parameter according to an embodiment of the present invention.²FIG. 10 is a block diagram illustrating an apparatus of generating a² reconstructed block according to an embodiment of the present invention.²[Description of Embodiments]²Hereinafter, various embodiments of the present invention will be described in²detail with reference to the accompanying drawings. However, the present²invention is not limited to the exemplary embodiments disclosed below, but can ²be ²implemented in various types. Therefore, many other modifications and ²variations²3²Date Recue / Date Received 2023-09-18²<DP=5>²of the present invention are possible, and it is to be understood that within ²the scope ²of the disclosed concept, the present invention may be practiced otherwise ²than as ²has been specifically described.² FIG. 1 is a block diagram of an image coding apparatus 100 according to an²embodiment of the present invention.²Refening to FIG. 1, the image coding apparatus 100 according to an embodiment ²of the present invention includes a picture division unit 101, a transform ²unit 103, a quantization ²unit 104, a scanning unit 105, an entropy coding unit 106, an inverse ²quantization²unit 107, an inverse transform unit 108, a post-processing unit 110, a picture ²storing²unit 111, an intra prediction unit 112, an inter prediction unit 113, a ²subtracter 102 ²and an adder 109.²The picture division unit 101 divides a picture or a slice into a plurality of ²²largest coding units (LCUs), and divides each LCU into one or more coding ²units.²The picture division unit 101 determines prediction mode of each coding unit ²and a²size of prediction unit and a size of transform unit.²An LCU includes one or more coding units. The LCU has a recursive quad ²tree structure to specify a division structure. Information specifying the ²maximum ²size and the minimum size of the coding unit is included in a sequence ²parameter set.² The division structure is specified by one or more split coding unit flags²(split_cu_flags). The coding unit has a size of 2Nx2N.²A coding unit includes one or more prediction units. In intra prediction, the ²size of the prediction unit is 2Nx2N or NxN. In inter prediction, the size of ²the ²prediction unit is 2Nx2N, 2NxN, Nx2N or NxN. When the prediction unit is an²asymmetric partition in inter prediction, the size of the prediction unit may ²also be²one of hNx2N, (2-h)Nx2N, 2NxhN and 2Nx(2-h)N. The value of h is 1 / 2.²A coding unit includes one or more transform units. The transform unit has ²a recursive quad tree structure to specify a division structure. The division ²structure ²is specified by one or more split transform unit flags (split_tu_flags). ²Information²specifying the maximum size and the minimum size of the transform unit is ²included²in a sequence parameter set.²4²Date Recue / Date Received 2023-09-18²<DP=6>²The intra prediction unit 112 determines an intra prediction mode of a current ²²prediction unit and generates a prediction block using the intra prediction ²mode. ²The prediction block has the same size of the transform unit.²The inter prediction unit 113 determines motion information of the current²prediction unit using one or more reference pictures stored in the picture ²storing unit²111, and generates a prediction block of the prediction unit. The motion²information includes one or more reference picture indexes and one or more ²motion ²vectors.²The transform unit 103 transforms residual signals generated using an²original block and a prediction block to generate a transformed block. The ²residual²signals are transformed in transform units. A transform type is determined by ²the ²prediction mode and the size of the transform unit. The transform type is a ²DCT-²based integer transform or a DST-based integer transform. For example. inter ²prediction, DCT-based integer transforms are used. In intra prediction mode, ²if the²size of the transform unit is smaller than a predetermined size, the DST-based ²integer²transforms are used, otherwise the DCT-based integer transforms are used.²The quantization unit 104 determines a quantization parameter for quantizing ²the transformed block. The quantization parameter is a quantization step size. ²²The quantization parameter is determined per quantization unit. The size of ²the²quantization unit is one of allowable sizes of coding unit. If a size of the ²coding²unit is equal to or larger than the minimum size of the quantization unit, the ²coding²unit becomes the quantization unit. A ²plurality of coding units may be included in²a quantization unit. Theminimum size of the quantization unit is determined ²per ²picture and informationspecifying the minimum size of the quantization unit is² included in a picture parameter set.²The quantization unit 104 generates a quantization parameter predictor and ²generates a differential quantization parameter by subtracting the ²quantization ²parameter predictor from the quantizationparameter. The differential ²quantization ²parameter is entropy coded and included in coding unit syntax.² The quantization parameter predictor is generated by using quantization²parameters of neighboring coding units and a quantization parameter of ²previous ²coding unit as follows.²5²Date Recue / Date Received 2023-09-18²<DP=7>²A left quantization parameter, an above quantization parameter and a ²previous quantization parameter are sequentially retrieved in this order. An ²average ²of the first two available quantization parameters retrieved in that order is ²set as the ²quantization parameter predictor when two or more quantization parameters are²available, and when only one quantization parameter is available, the ²available²quantization parameter is set as the quantization parameter predictor. That ²is, if the ²left and above quantization parameter are available, the average of the left ²and above²quantization parameter is set as the quantization parameter predictor. If ²only one²of the left and above quantization parameter is available, the average of the ²available² quantization parameter and the previous quantization parameter is set as the²quantization parameter predictor. If both of the left and above quantization ²parameter are unavailable, the previous quantization parameter is set as the ²quantization parameter predictor. The average is rounded off.²The quantization unit 104 quantizes the transformed block using a²quantization matrix and the quantization parameter to generate a quantized ²block.²The quantized block is provided to the inverse quantization unit 107 and the ²scanning ²unit 105.²The scanning unit 105 determines a scan pattern and applies the scan pattern ²to the quantized block. When CABAC (Context adaptive binary arithmetic coding)² is used for entropy coding, the scan pattern is determined as follows.²In intra prediction, the scan pattern is determined by the intra prediction ²mode ²and the size of the transform unit. The size of the transform unit, the size ²of ²transformedblock and the size of the quantized block are same.The scan pattern ²is ²selected among a diagonal scan, vertical scan and horizontal scan. The ²quantized²transform coefficients of the quantized block are split into significant ²flags,²coefficient signs and coefficientlevels. The scan pattern is applied to the ²significant ²flags, coefficient signs and coefficient levels respectively. The significant ²flag ²indicates whether the corresponding quantized transform coefficient is zero or ²not. ²The coefficient sign indicates a sign of non-zero quantized transform ²coefficient, and²the coefficients level indicates an absolute value of non-zero quantized ²transform²coefficient.²When the size of the transform unit is equal to or smaller than a first size, ²the ²horizontal scan is selected for the vertical mode and a predetermined number ²of²6²Date Recue / Date Received 2023-09-18²<DP=8>²neighboring intra prediction modesof the vertical mode in directionality, the ²vertical ²scan is selected for the horizontal mode and the predetermined number of ²neighboring intra prediction modes of the horizontal mode in directionality, ²and the ²diagonal scan is selected for the other intra prediction modes. When the size ²of the²transform unit is larger than the first size, the diagonal scan is used. The ²first size is²8x8.²In inter prediction, a predetermined scan pattern is used regardless of the ²size ²of the transform unit. The predetermined scan pattern is the diagonal scan ²when thc ²CARAC is used for entropy coding.²When the size of the transform unit is larger than a second size, the ²quantized²block is divided into a main subset and a plurality of remainingsubsets and ²the ²determined scan pattern is applied to each subset. Significant flags, ²coefficient signs ²and coefficients levels of each subset are scanned respectively according to ²the²determined scan pattern. The main ²subset includes DC coefficient and the²remaining subsets covers the region other than the region covered by the main ²subset.²Thesecond size is 4x4. A size of the subset may be 4x4 block or may vary ²according, ²to the scan pattern. The subset contains 16 transform coefficients.²The scan pattern for scanning the subsets is the same as thc scan pattern for ²scanning quantized transform coefficients of each subset. The quantized ²transform²coefficients of each subset are scanned in the reverse direction. The subsets ²are also²scanned in the reverse direction.²Last non-zero coefficient positionis encoded and transmitted to the decoder. ²The last non-zero coefficient position specifies a position of last non-zero ²quantized ²transform coefficient within the transform unit. Non-zero subset flag is set ²for each²subset other than the main subset and the last subset. The last subset covers ²the last²non-zero coefficient.The non-zero subset flag indicates whether the subset ²contains ²non-zero coefficients or not.²The inverse quantization unit 107 inversely quantizes the quantized transform ²coefficients of the quantized block.² The inverse transform unit 108 inversely transforms the inverse quantized²block to generate residual signals of the spatial domain.²The adder 1119acnerates a reconstructed block by adding the residual block ²and the prediction block.²7²Date Recue / Date Received 2023-09-18²<DP=9>²The post-processing unit 110 performs a deblocking filtering process for ²removing blocking artifact generated in a reconstructed picture.²The picture storing unit 111 receives post-processed image from the post-²processing unit 110, and stores the image in picture units. A picture may be a ²frame² or a field.²The entropy coding unit 106 entropy-codes the one-dimensional coefficient²information received from the scanning unit 105, intra prediction information²received from the intra prediction unit 112, motion information received from ²the²inter prediction unit 113, and so on.² FIG. 2 is a block diagram of an image decoding apparatus 200 according to²an embodiment ofthe present invention.²The image decoding apparatus 200 according to an embodiment of the²present invention includes an entropy decoding unit 201, an inverse scanning ²unit 202, an inverse²quantization unit 203, an inverse transform unit 204, an adder 205, a post ²processing²unit 206, a picture storing unit 207, an intra prediction unit 208 and an ²inter ²prediction unit 209.²The entropy decoding unit 201 extracts the intra prediction information, the ²inter prediction information and the one-dimensional coefficient information ²from a²received bit stream. The entropy decoding unit 201 transmits the inter ²prediction²information to the inter prediction unit 209, the intra prediction information ²to the ²intra prediction unit 208 and the coefficient information to the inverse ²scanning unit ²202.²The inverse scanning unit 202 uses an inverse scan pattern to generate² quantized block. When CABAC is used for entropy coding, the scan pattern is²determined as follows.²In intra prediction, the inverse scan pattern is determined by the intra ²prediction mode and the size of the transform unit. The inverse scan pattern ²is ²selected among a diagonal scan, vertical scan and horizontal scan. The ²selected²inverse scan pattern is applied to significant flags, coefficient signs and ²coefficients²levels respectively to generate the quantized block.²When the size of the transform unit is equal to or smaller than a first size, ²the ²horizontal scan is selected for the vertical mode and a predetermined number ²of²8²Date Recue / Date Received 2023-09-18²<DP=10>²neighboring intra prediction modes of to the vertical mode, the vertical scan ²is ²selected for the horizontal mode and the predetermined number of neighboring ²intra ²prediction modes of the horizontal mode, and the diagonal scan is selected for ²the ²other intra prediction modes. When the size of the transform unit is larger ²than the²first size, the diagonal scan is used. When the size of the transform unit is ²larger than²the first size, the diagonal scan is selected for all intra prediction ²modes.The first size ²is 8x8.²When the size of the transform unit is larger than the first size, the ²diagonal ²scan is selected for all intra prediction modes.² In inter prediction, the diagonal scan is used.²When the size of the transform unit is larger than the second size, the ²significant flags, the coefficient signs and the coefficients levels are ²inversely ²scanned in the unit of subset using the determined inverse scan pattern to ²generate ²subsets, and the subsets are inversely scanned to generate the quantized ²block.The²second size is 4x4. The size of the subset may be 4x4 block or a non-square ²block²determined by the scan pattern. The non-square block includes 16 transform ²coefficients. For example, the size of the subset is 8x2 for the horizontal ²scan, 2x8 ²for the vertical scan and 4x4 for the diagonal scan.²The inverse scan pattern used for generating each subset is the same as the²inverse scan pattern used for generating the quantized block. The significant ²flags,²the coefficient signs and the coefficient levels are inversely scanned in the ²reverse ²direction. The subsets are also inversely scanned in the reverse direction.²The last non-zero coefficient position and the non-zero subset flags are ²received from the encoder. The number of encoded subsets is determined ²according²to the last non-zero coefficient position and the inverse scan pattern.The non-²zero²subset flags are used to selectsubsets to be generated. The main subset and ²the last ²subset are generated using the inverse scan pattern.²The inverse quantization unit 203 receives the differential quantization ²parameter from the entropy decoding unit 201 and generates the iquantiLation²parameter predictor. The quantization parameter predictor is generated through ²the²same operation of the quantization unit 104 of FIG. 1. Then, the inverse ²quantization unit 203 adds the differential quantization parameter and the ²quantization parameter predictor to generate the quantization parameter of the²9²Date Recue / Date Received 2023-09-18²<DP=11>²current coding unit. If the size of the current coding unit is equal to or ²larger than ²the minimurnsize of the quantization unit and the differential quantization ²parameter ²for the current coding unit is not received from the encoder, the differential ²²quantization parameter is set to 0.² The inverse quantization unit 203 inversely quantizes the quantized block.²The inverse transform unit 204 inversely transforms the inverse-quantized ²block to restore a residual block, The inverse transform type is adaptively ²determined according to the prediction mode and the size of the transform ²unit. The ²inverse transform type is the DCT-based integer transform or the DST-based ²integer²transform. For example, inter prediction, DCT-based integer transforms are ²used.²In intra prediction mode, if the size of the transform unit is smaller than a ²predetermined size, the DST-based integer transforms are used, otherwise the ²DCT-²based integer transforms are used.²The intra prediction unit 208 restores the intra prediction mode of the ²current²prediction unitusing the received intra prediction information, and generates ²a²prediction block according to the restored intra prediction mode.²The inter prediction unit 209 restores the motion information of the current ²prediction unit using the received inter prediction information, and generates ²a ²prediction block using the motion information.² The post-processing unit 206 operates the same as the post-processing unit²110 of FIG. 1.²The picture storing unit 207 receives post-processed image from the post-²processing unit 206, and stores the image in picture units. A picture may be a ²frame ²or a field.² The adder 205 adds the restored residual block and a prediction block to²generate a reconstructed block.²FIG. 3 is a flow chart illustrating a procedure of generating a reconstructed ²block in intra prediction according to an embodiment of the present invention.²First, an intra prediction mode of a current prediction unit is derived ²(S1100).²FIG. 4 is a flow chart illustrating a procedure of deriving the intra ²prediction ²mode of the current prediction unit according to an embodiment of the present ²invention.²i²Date Recue / Date Received 2023-09-18²<DP=12>²intra prediction parameters of the current prediction unit are extracted from ²a ²received bit stream (S1110).²The intra prediction parameters are s mode group indicator and a prediction ²mode index. The mode group indicator is a flag indicating whether the intra²prediction mode of the current prediction unit belongs to a most probable mode²group (IV1P1V1 group). If the flag is 1, the intra prediction unit of the ²current ²prediction unit belongs to the MPM group. If the flag is 0, the intra ²prediction unit ²of the current prediction unit belongs to a residual mode group, The residual ²mode ²group includes all intra prediction modes other than the intra prediction ²modes of the²MPM group. The prediction mode index specifies the intra prediction mode of ²the²current prediction unit within the group specified by the mode group ²indicator,²The MPM group is constructed using intra prediction modes of the²neighboring prediction units (S1120). The ²intra prediction modes of the MPM²group are adaptively determined by a left intra prediction mode and an above ²intra²prediction mode. The left intra prediction mode is the intra prediction mode ²of the²left neighboring prediction unit, and the above intra prediction mode is the ²intra ²prediction mode of the above neighboring prediction unit. The MPM group is ²comprised of three intra prediction modes.²If the left or above neighboring prediction unit does not exist, the intra²prediction mode of the left or above neighboring unit is set as unavailable. ²For²example, if the current prediction unit is located at the left or upper ²boundary of a ²picture, the left or above neighboring prediction unit does not exist. If the ²left or ²above neighboring unit is located within other slice or other tile, the intra ²prediction²mode of the left or above neighboring unit is set as unavailable. If the ²left or²above neighboring unit is inter-coded, the intra prediction mode of the left ²or above²neighboring unit is set as unavailable. If the above neighboring unit is ²located ²within other LCU, the intra prediction mode of the left or above neighboring ²unit is ²set as unavailable.²FIG. 5 is a conceptual diagram illustrating intra prediction modes according²to an embodiment of the present invention. As shown in Fig. 5, the number of ²intra prediction²modes is 35. The DC mode and the planar mode are non-directional intra ²prediction modes ²and the others are directional intra prediction modes.²11²Date Recue / Date Received 2023-09-18²<DP=13>²When both of the left intra prediction mode and the above intra prediction ²modeare available and are different each other, the left intra prediction mode ²and ²the above intra prediction mode are included in the MPM group and one ²additional ²intra prediction mode is added to the MPM group. Index 0 is assigned to one ²intra² prediction mode of small mode number and index I is assigned to the other. Or²index 0 is assigned to the left intra prediction mode and index 1 is assigned ²to the ²above intra prediction mode. The added intra prediction mode is determined by ²the left and above intra prediction modes as follows.²If one of the left and above intra prediction modes is a non-directional mode²and the other is a directional mode, the other non-directional mode is added ²to the²MPM group. For example, if the one of the left and above intra prediction ²modes ²is the DC mode, the planar mode is added to the MPM group. If the one of the ²left ²and above intra prediction modes is the planar mode, the DC mode is added to ²the ²MPM group. If both of the left and above intra prediction modes are non-²directional modes, the vertical mode is added to the MPM group. If both of the²left and above intra prediction modes are directional modes, the DC mode or ²the ²planar mode is added to the MPM group.²When only one of the left intra prediction mode and the above intra ²prediction mode is available, the available intra prediction mode is included ²in the²MPM group and two additional intra prediction modes are added to the MPM ²group.²The added two intra prediction modes are determined by the available intra ²prediction modes as follows.²If the available intra prediction mode is a non-directional mode, the other ²non-directional mode and the vertical mode are added to the MPM group. For²example, if the available intra prediction mode is the DC mode, the planar ²mode²and the vertical mode are added to the MPM group. If the available intra ²prediction mode is the planar mode, the DC mode and the vertical mode are ²added ²to the MPM group. If the available intra prediction mode is a directional ²mode, ²two non-directional modes (DC mode and planar mode) are added to the MPM² group.²When both of the left intra prediction mode and the above intra prediction ²mode are available and are the same as each other, the available intra ²prediction mode is ²included in the MPM group and two additional intra prediction modes are added ²to²12²Date Recue / Date Received 2023-09-18²<DP=14>²the MPM group. The added two intra prediction modes are determined by the ²available intra prediction modes as follows.²Tithe available intra prediction mode is a directional mode, two neighboring ²directional modes are added to the MPM group. For example, if the available ²intra²prediction mode is the mode 23, the left neighboring mode (mode 1) and the ²right²neighboring mode (mode 13) are added to the MPM group. If the available intra ²prediction mode is the mode 30, the two neighboring modes (mode 2 and mode 16) ²²are added to the MPM group. lithe available intra prediction mode is a non-²directional mode, the other non-directional mode and the vertical mode are ²added to²the MPM group. For example, if the available intra prediction mode is the DC ²mode,²the planar mode and the vertical mode are added to the MPM group.²When both of the left intra prediction mode and the above intra prediction ²modeare unavailable, three additional intra prediction modes are added to the ²MPM ²group. The three intra prediction modes are the DC mode, the planar mode and²the vertical mode. Indexes 0, 1 and 2 are assigned to the three intra ²prediction²modes in the order of the DC mode, the planar mode and the vertical mode or in ²the ²order of the planar mode, the DC mode and the vertical mode.²It is determined whether the mode group indicator indicates the MPM group ²(S1130).² lithe mode group indicator indicates the MPM group, the intra prediction of²the MPM group specified by the prediction mode index is set as the intra ²prediction ²mode of the current prediction unit (S1140).²Tithe mode group indicator does not indicate the MPM group, the three intra ²predictions of the MPM group are reordered in the mode number order (S1150).² Among the three intra prediction modes of the MPM group, the intra prediction²mode with lowest mode number is set to a first candidate, the intra prediction ²mode ²with middle mode number is set to a second candidate, and the intra prediction ²²mode with highest mode number is set to a third candidate.²The prediction mode index is compared with the first candidate (S1160). If²the prediction mode index is equal to or greater than the first candidate of ²the MPM²group, the value of the prediction mode index is increased by one. Otherwise, ²the ²value of the prediction mode index is maintained.²13²Date Recue / Date Received 2023-09-18²<DP=15>²The prediction mode index is compared with the second candidate (S1170). ²If the prediction mode index is equal to or greater than the second candidate ²of the ²MPM group, the value of the prediction mode index is increased by one. ²Otherwise, ²the value of the prediction mode index is maintained.² The prediction mode index is compared with the third candidate (S1180). If²the prediction mode index is equal to or greater than the third candidate of ²the MPM ²group, the value of the prediction mode index is increased by one. Otherwise, ²the ²value of the prediction mode index is maintained.²The value of the final prediction mode index is set as the mode number of the² 1 0 intra prediction mode of the current prediction unit (S1190).²Next, asize of a current block is determined to generate a prediction block²(S1200).²The size of thecurrent block is equal to the size of the transform unit. The²1 5 size of the current block is determined using the size of the ²prediction unit and²transform size information. A prediction block and a residual block of the ²current ²block have same size of the transform unit. The transform size information ²includes one or more split_tu_flags used for indicating the split structure.²If the size of the transform unit is equal to the size of the current ²prediction² 20 unit, the current prediction unit is set as the current block.²If the sizeof the transform unit is smaller than the size of the current ²prediction unit, the prediction unit is comprised of a plurality of sub-²blocks. Each ²sub-block is set as the current block. In this case, the steps S1300, S1400 ²and ²S1500 are performed for the first sub-block of the prediction unit. Then, the ²steps²25 S1300, S14110 and S1500 are repeatedly performed for the remaining sub-²blocks of²the prediction unit in decoding, order. Same intra prediction mode is used for ²all the ²sub-blocks within the prediction unit.²Next, a prediction block is generated according to the intra prediction mode² 30 (S1300).²FIG. 6 is a flow chart illustrating a procedure of generating the prediction²block according to an embodiment of the present invention.²14²Date Recue / Date Received 2023-09-18²<DP=16>²It is determined whether all reference pixels of the current block are ²available, ²and reference pixels are generated if one or more reference pixels are ²unavailable ²(S1210). The current block is the current prediction unit or the sub-block of ²the ²current prediction unit. The size of the current block is the size of the ²transform unit.²FIG. 7 is a conceptual diagram illustrating positions of reference pixels of ²the²current block according to an embodiment of the present invention. As shown in ²FIG. 7, the reference²pixels of the current blocks are comprised of above reference pixels located ²at (x=0,²..., 2N-1, y=-1), left reference pixels located at (x=1-, y=0, ..., 2M-1) and ²a corner²pixel located at (x=-1, y=1). N is the width of the current block and NI is ²the height² of the current block.²If one or more reference pixels are unavailable, one or more reference pixels²are generated as follows.²If all reference pixels are unavailable, a constant valueis substituted for ²the²values of all the reference pixels. The constant value is 21-1, and the value ²of L is the² number of bits used to represent luminance pixel value.²If available reference pixels are located at only one side of the unavailable²reference pixel, the value of the reference pixel nearest to the unavailable ²pixel is²substituted for the unavailable reference pixel.²If available reference pixels are located at both sides of the unavailable²reference pixel, the value of the reference pixel nearest to the unavailable ²pixel in a²predetermined direction is substituted for each unavailable reference pixel.²The reference pixels are adaptively filtered based on the intra prediction ²mode and the size of the current block (S1220). The size of the current block ²is the ²size of the transform unit.² In the DC mode, the reference pixels are not filtered. In the vertical mode²and the horizontal mode, the reference pixels are not filtered. In the ²directional ²modes other than the vertical and horizontal modes, the reference pixels are ²adaptively according to the size of the current block.²If the size of the current block is 4x4, the reference pixels are not filtered ²in²all intra prediction modes. For the size 8x8, 16x16 and 32x32, the number of ²intra²prediction mode where the reference pixels are filtered increases as the size ²of the ²current block becomes larger.² Date Recue / Date Received 2023-09-18²<DP=17>²Aprediction block of the cuntnt block is generated using the reference pixels ²according to the restored intra prediction mode (S1230).²In the DC mode, the prediction pixels are generated by copying average value ²of the N reference pixels located at (x=0, ...N-1, y=-1) and the M reference ²pixels²located at (x=-1, y=0, ..M-1).The prediction pixel adjacent to the reference ²pixel is²filtered by one or two adjacent reference pixels.²In the vertical mode, the prediction pixels are generated by copying the value ²²of the vertical corresponding reference pixel. The prediction pixels adjacent ²to the ²left reference pixel are filtered using the corner pixel and the left ²neighboring pixel,² In the horizontal mode, the prediction pixels are generated by copying the²value of the horizontal corresponding reference pixel. The prediction pixels ²adjacent ²to the above reference pixel are filtered using the corner pixel and the upper ²²neighboring pixel.² Next, a residual block is generated according to the intra prediction mode²(S1400).²FIG.8 is a flow chart illustrating a procedure of generating the residual ²block ²according to an embodiment of the present invention.²The encoded residual signals are entropy-decoded to generate quantized² coefficientinformation (S1410). When CABAC is used for entropy coding, the²coefficients information includes significant flags, coefficient signs and ²coefficient²levels. The ²significant flag indicates whether the corresponding quantized²transform coefficient is zero or not. The coefficient sign indicates a sign of ²non-²zero quantized transform coefficient, and thc coefficients level indicates an ²absolute²value of non-zero quantized transform coefficient.²An inverse scan pattern is determined and a quantized block is generated ²according the inverse scan pattern (S1420). The step is performed by the ²inverse ²scanning unit 220 of FIG.2. Therefore, the same operation of the inverse ²scanning ²unit 220 is performed to determine the inverse scan pattern and to generate ²the² quantized block.²The quantized block is inversely quantized using a quantization parameter²(S1430),²16²Date Recue / Date Received 2023-09-18²<DP=18>²FIG. 9 is a flow chart illustrating a procedure of deriving quantization ²parameter according to an embodiment of the present invention.²A minimum size of the quantization unit is derived (S1431). The minimum ²size of thequantization unit is equal to a size of LCU or a size of sub-block ²of LCU.²The minimum size of the quantization unit is determined per picture. A ²parameter²(cu_qp_delta enabled_info) specifying the depth of the minimum size of the ²quantization unit is extracted from PPS. The minimum size of the quantization ²unit ²is derived as following equation:²Log2(MinQUSize) = Log2(MaxCUSize) ¨cu_qp_delta_enabled_info² The MinQUSize is the minimum size of the quantization unit. The²MaxCUSize is the size of LCU. Only one parameter is used for deriving the ²minimum size of the quantization unit.²Adifferential quantization parameter (dQP) of the current coding unit is ²restored (S1432). The dQP is restored per quantization unit. For example, if ²the²size of the current coding unit is equal to or larger than the minimum size of ²the²quantization unit, the dQP is restored for the current coding unit. If the ²current ²coding unit does not contain an encoded dQP, the dQP is set to zero. If the ²quantization unit includes plural coding units, a first coding unit containing ²the dQP ²and the following coding unit within the quantization unit have same dQP.² The encoded dQP is arithmetically decoded to generate a bin string, and the²bin string is converted into the dQP. The bin string comprises a bin for ²indicating ²the dQP is zero or not. When the dQP is not zero, the bin string further ²comprises a ²bin for sign of the dQP, and a bin string for indicating absolute value of the ²dQP.²A quantization parameter predictor of the current coding unit is generated²(S1433). The quantization ²parameter predictor is generated using the same²operation of the inverse quantization unit 230 of FIG. 2.²If the quantization unit includes plural coding units, the quantization ²parameter predictor of the first coding unit in the decoding order is ²generated, and ²the generated quantizationparameter predictor is used for all the coding units ²within² the quantization unit.²The quantization parameter is generated using the dQP and the quantization²parameter predictor (S1434).²17²Date Recue / Date Received 2023-09-18²<DP=19>²Meanwhile, the user-defined quantization matrices are also restored. A set ²of the user-defined quantization matrices is received from the encoding ²apparatus ²through the SPS or the PPS. The user-defined quantization matrix is restored ²using ²inverse DPCM. The diagonal scan is used for the DPCM. When the size of the²user-defined quantization matrix is larger than 8x8, the user-defined ²quantization²matrix is restored by up-sampling the coefficients of the received 8x8 ²quantization ²matrix. The DC coefficient of the user-defined quantization matrix is ²extracted ²from the SPS or the PPS. For example, if the size of the user-defined ²quantization ²matrix is 16x16, coefficients of the received 8x8 quantization matrix are up-²sampled² using 1:4 up-sampling.²A residual block is generated by inversely transforming the inverse-quantized ²block (S1440). An inverse transform type is adaptively determined according to ²the ²prediction mode and the size of the transform unit. The inverse transform type ²is ²the DCT-based integer transform or the DST-based integer transform. In intra²prediction mode, if the size of the transform unit is smaller than a ²predetermined size,²the DST-based integer transforms are used, otherwise the DCT-based integer²transforms are used.²Next, a reconstructed block is generated by adding the prediction block and²the residual block (S1500).² FIG. 10 is a block diagram illustrating an apparatus 300 of generating a²reconstructed block according to an embodiment of the present invention.²As shown in FIG. 10, the apparatus 300 according to an embodiment of²the present invention includes an extra prediction mode deriving unit 310, a ²prediction size²sletermining unit 320, a prediction block generating unit 330, a residual ²block generating unit²340 and a reconstructed block generating unit 350.²The intra prediction mode deriving unit 310 derives the intra prediction mode²of the current prediction unit. The intra prediction mode deriving unit 310 ²performs²the same procedure of FIG. 4 to derive the intra prediction mode.² The prediction size determining unit 320 determines the size of the current²block using the size of the current prediction unit and the transform size ²information. ²The size of the current block is equal to the size of the transform unit. A ²prediction ²block and a residual block of the current block have same size of the ²transform unit.²18²Date Recue / Date Received 2023-09-18²<DP=20>²The current prediction unit or a sub-block of the current prediction unit is ²set as the ²current block based on the transform size information.²The prediction block generating unit 330 generates the prediction block of the ²²current block using, the intra prediction mode. The prediction block ²generating unit²330 includes a reference pixel generator 331, a reference pixel filter 332 and ²a²prediction block generator 333.²The reference pixel _generator 331 generates reference pixels if one or more ²reference pixels of the current block are unavailable. If all reference pixels ²are ²unavailable, the value of 2L-I is substituted for the values of all the ²reference pixels.²The value of L is the number of bits used to represent luminance pixel value. ²If²available reference pixels are located at only one side of the unavailable ²reference ²pixel, the value of the reference pixel nearest to the unavailable pixel is ²substituted ²for the unavailable reference pixel. If available reference pixels are located ²at both ²sides of the unavailable reference pixel, the value of the reference pixel ²nearest to the²unavailable pixel in a predetermined direction is substituted for each ²unavailable²reference pixel.²The reference pixel filter 332 adaptively filters the reference pixels based ²on²the intra prediction mode and the size of the transform unit.²In the DC mode, the reference pixels are not filtered. In the vertical mode²and the horizontal mode, the reference pixels are not filtered. In the ²directional²modes other than the vertical and horizontal modes, the reference pixels are ²adaptively according to the size of the current block.²If the size of the current block is 4x4, the reference pixels are not filtered ²in ²all intra prediction modes. For the size 8x8, 16x16 and 32x32, the number of ²intra²prediction mode where the reference pixels are filtered increases as the size ²of the²current block becomes larger. For example, the reference pixels are not ²filtered in ²the vertical mode and a predetermined number of neighboring intra prediction ²mode ²of the vertical mode. The reference pixels are also not filtered in the ²horizontal ²mode and the predetermined number of neighboring intra prediction mode of the²horizontal mode. The predetermined number is one of 0-7 and decreases as ²the²size of the current block increases.²The prediction block generator 333 generates a prediction block of the current ²²block using the reference pixels according to the intra prediction mode.²19²Date Recue / Date Received 2023-09-18²<DP=21>²In the DC mode, the prediction pixels are generated by copying average value ²of the N reference pixels located at (x.0, ...N-1, y=-1) and the M reference ²pixels ²located at (x=-1, y=0, ..M-1).The prediction pixel adjacent to the reference ²pixel is ²filtered by one or two adjacent reference pixels.²In the vertical mode, the prediction pixels are generated by copying the value²of the vertical reference pixel. The prediction pixels adjacent to the left ²reference ²pixel are filtered using the corner reference pixel and the left neighboring ²reference ²pixel.²In the horizontal mode, the prediction pixels are generated by copying the²value of the horizontal reference pixel. The prediction pixels adjacent to the ²above²reference pixel are filtered using the corner reference pixel and the above ²neighboring reference pixel.²The residual block generating unit 340 generates the residual block= of the ²current block using the intra prediction mode. The same procedure of FIG. 8 is² performed by the residual block generating unit 340.²The reconstructed block generating unit 350 adds the prediction block and the²residual block to generate the reconstructed block of the current block.²While the invention has been shown and described with reference to certain²exemplary embodiments thereof, it will be understood by those skilled in the ²art that²various changes in form and details may be made therein without departing from ²the ²scope of the invention as defined by the appended claims.² Date Recue / Date Received 2023-09-18²

Claims

<DP=1>²CLAIMS:²1. A ²method of deriving an intra prediction mode of a current prediction unit, the ²method²comprising:²entropy decoding a mode group indicator and a prediction mode index, wherein ²the mode ²group indicator is a flag indicating whether the intra prediction mode of the ²current prediction unit ²belongs to a most probable mode, MPM, group and wherein the prediction mode ²index specifies ²the intra prediction mode of the current prediction unit within the group ²specified by the mode ²group indicator;²constructing the MPM group using intra prediction modes of a left block and an ²above ²block of the current prediction unit, wherein the MPM group includes three ²intra prediction modes;²determining whether the mode group indicator indicates the MPM group;²determining an intra prediction mode specified by the prediction mode index ²among the ²three intra prediction modes in the MPM group as the intra prediction mode of ²the current ²prediction unit when the mode group indicator indicates the MPM group; and²deriving the intra prediction mode of the current prediction unit using the ²prediction mode ²index and the three intra prediction modes in the MPM group when the mode ²group indicator does ²not indicate the MPM group,²wherein if the prediction mode Index is greater than or equal to a first mode ²in the MPM ²group, the value of the prediction mode index is increased by one; if the ²prediction mode index is ²greater than or equal to a second mode in the MPM group, the value of the ²prediction mode index ²is increased by one; and then if the prediction mode index is greater than or ²equal to a third mode ²in the MPM group, the value of the prediction mode index is increased by one,²wherein the MPM group includes two non-directional modes and vertical mode ²when only ²one of the intra prediction modes of the left and the above blocks is ²available and the available²2 1²Date Recue / Date Received 2023-09-18²<DP=2>²intra prediction mode is one of the two non-directional modes, wherein the two ²non-directional ²modes are planar mode and DC mode,²wherein the first mode is an intra prediction mode of a lowest mode number in ²the MPM ²group, the second mode is an intra prediction mode of a middle mode number in ²the MPM group, ²and the third mode is an intra prediction mode of a highest mode number in the ²MPM group,²wherein the three intra prediction modes in the MPM group are sorted in an ²order of the ²first mode, the second mode and the third mode; and²wherein, when only one of the intra prediction modes of the left and the above ²blocks is ²available and the available intra prediction mode is one of directional modes, ²the MPM group ²includes the two non-directional modes and the available intra prediction ²mode.²2. ²The method of claim 1, wherein the MPM group is comprised of the two non-²directional²modes and the vertical mode when both intra prediction modes of the left block ²and the above ²block are unavailable.²22²Date Recue / Date Received 2023-09-18²