Image-encoding method and a device therefor, and image-decoding method and a device therefor
Abstract
An image encoding method is provided, in which image data divided into basic blocks is classified in units of groups and subgroups, wherein each group comprises at least one basic block and each subgroup comprises at least one basic block and is included in each group; an encoding mode for a predetermined group is determined in order to encode the predetermined group, wherein the encoding mode represents a mode for encoding data included in the predetermined group in units of one data processing unit selected from a group, a subgroup, and a basic block; and the data of the predetermined group is encoded according to the determined encoding mode. Detailed operations in the image encoding method are performed in consideration of the encoding mode of the group.
Claims
exact text as granted — not AI-modified1 . An image encoding method comprising:
classifying image data divided into basic blocks, in units of groups and units of subgroups, wherein one of the groups comprises at least one of the basic blocks and one of the subgroups comprises the at least one of basic blocks and is in each group; determining an encoding mode for a predetermined group to encode the predetermined group, wherein the encoding mode represents a mode for encoding data in the predetermined group in units of one data processing unit selected from among a group, a subgroup, and a basic block; and encoding the data of the predetermined group according to the determined encoding mode.
2 . The image encoding method of claim 1 , further comprising encoding a flag that represents the encoding mode for the predetermined group.
3 . The image encoding method of claim 1 , wherein the classifying of the image data comprises determining a size of the predetermined group and a shape of the predetermined group, and
wherein the size represents a number of basic blocks the predetermined group and the shape is formed by the basic blocks in the predetermined group.
4 . The image encoding method of claim 1 , wherein the classifying of the image data comprises determining subgroups for the predetermined group based on a level representing the number of subgroups in the predetermined group and a scan sequence in which the basic blocks are scanned.
5 . The image encoding method of claim 1 , wherein the encoding mode comprises at least one of:
information about a type of data processing units in which the data of the predetermined group is encoded, wherein the type is one of a group type, a subgroup type, and a basic block type; information about a size of the data processing unit, wherein the size represents the number of basic blocks in the data processing unit; and information about a prediction mode that represents a mode for determining reference information corresponding to the data processing unit.
6 . The image encoding method of claim 1 , wherein the determining of the encoding mode for the predetermined group comprises:
encoding the predetermined group according to at least one prediction mode in units of different types of data processing units which are the units of groups, the units of subgroups, and units of basic blocks; determining error rates that are generated by encoding performed on the predetermined group in units of combinations of the different types of data processing units and the at least one prediction mode; and determining a prediction mode for a predetermined data processing unit generating a smallest error rate from among the determined error rates.
7 . The image encoding method of claim 6 , wherein the determining of the encoding mode for the predetermined group comprises comparing encoding error rates generated by considering the at least one prediction mode in units of the different types of data processing units with one another, and determining, as the encoding mode for the predetermined group, a combination of a data processing unit and an prediction mode, which generates the smallest error rate.
8 . The image encoding method of claim 1 , further comprising rearranging frequency-transformed coefficients of each group or each subgroup, in units of a plurality of basic blocks.
9 . The image encoding method of claim 1 , further comprising encoding a flag that represents a data processing unit of units in which the data of the predetermined group is frequency-transformed.
10 . The image encoding method of claim 1 , wherein in the classifying of the image data, sizes, shapes, and maximum levels of groups are determined in units of a data unit selected from pictures, sequences, and groups of the image data.
11 . The image encoding method of claim 1 , wherein the encoding comprises:
performing frequency transformation and quantization for encoding of the input image on the basis of a large data processing unit corresponding to the determined group encoding mode; performing motion estimation for the encoding of the input image, based on the large data processing unit; performing in-loop filtering for the encoding of the input image, based on the large data processing unit; and performing entropy encoding for the encoding of the input image, based on the large data processing unit.
12 . The image encoding method of claim 11 , wherein in the encoding, a size of a data processing unit for the frequency transformation is determined based on a size of a data processing unit for the motion estimation.
13 . The image encoding method of claim 11 , wherein the performing of the motion estimation comprises performing intra prediction or inter prediction through motion estimation processing based on the large data processing unit, and
wherein the motion estimation processing based on the large data processing unit is one selected from the group consisting of: a motion estimation process based on a scanning sequence for each determined data processing unit for sequential motion estimation based on the large data processing unit, a motion estimation process in which neighbor availability of a neighboring data processing unit located on a right upper end of a current data processing unit is determined for motion estimation with respect to the input image to be performed based on the large data processing unit, and a motion estimation process using a square-shaped data processing unit from among the data processing units, based on the large data processing unit.
14 . The image encoding method of claim 11 , wherein the performing of the motion estimation comprises performing intra prediction based on the large data processing unit, and
wherein the intra prediction based on the large data processing unit comprises at least one selected from the group consisting of: intra prediction performed in units of the large data processing units in an intra mode of a complex plain type, intra prediction performed in units of predetermined data processing units so that motion estimation can be performed in an intra mode, based on the large data processing unit, and intra prediction performed in a prediction mode in which an intra mode and an inter mode are mixed, based on the large data processing unit.
15 . The image encoding method of claim 11 , wherein the performing of the motion estimation comprises performing inter prediction based on the large data processing unit, and
wherein the inter prediction based on the large data processing unit comprises at least one selected from the group consisting of: inter prediction in which a motion vector for motion estimation of an inter mode with respect to a current data processing unit is determined, inter prediction in which a motion vector predictor corresponding to the motion vector is induced, based on the large data processing unit, and inter prediction in which a skip mode of an extended shape is determined based on the large data processing unit and skip processing is performed in units of a skip group comprising adjacent data processing units of at least one skip mode.
16 . The image encoding method of claim 11 , wherein the performing of the frequency transformation and quantization comprises performing at least one selected from the group consisting of:
integer discrete cosine transformation based on a large block, based on the large data processing unit, frequency transformation with respect to a chroma component of a current data processing unit, based on the large data processing unit, and modified frequency transformation for reducing calculation complexity of frequency transformation considering the large data processing unit.
17 . The image encoding method of claim 11 , wherein the performing of the entropy encoding comprises performing at least one selected from the group consisting of:
a coded block pattern hierarchically determined according to the size of each data processing unit based on the large data processing unit, by using quantized coefficients obtained by frequency-transforming and quantizing a current data processing unit, scanning of a coded block pattern according to a sequence based on the possibility that a quantized coefficient which is not 0 from among the quantized coefficients of the current data processing unit exists; Context-based Adaptive Binary Arithmetic Coding (CABAC) or Context-based Adaptive Variable Length Coding (CAVLC) modified based on the large data processing unit, and a single context determined for the coded block pattern of the large data processing unit of an intra mode or a chroma component, based on the large data processing unit.
18 . The image encoding method of claim 11 , wherein in the performing of the in-loop filtering, it is determined based on the large data processing unit whether deblocking filtering is performed on at least one selected from the group consisting of a boundary of a lower data processing unit in the large data processing unit, a boundary of a lower data processing unit in the large data processing unit on which frequency-transformation has been performed in units of a predetermined data processing unit, a boundary of a chroma component of a lower data processing unit in the large data processing unit, and a boundary of a lower data processing unit in the large data processing unit on which motion estimation has been performed in a mixed mode in which an inter mode and an intra mode are mixed, the degree of deblocking filtering with respect to each boundary is set for a boundary of at least one lower data processing unit in the large data processing unit, and additional filtering for reducing a ringing effect is performed on a current data processing unit having a large size, based on the large data processing unit.
19 . An image decoding method comprising:
receiving and parsing image data encoded in units of at least one data processing unit selected from among units of basic blocks, units of groups, and units of subgroups, wherein one of the groups comprises at least one of the basic blocks and one of the subgroups comprises the at least one of basic blocks and is in each group; reading an encoding mode for a predetermined group from the parsed image data, wherein the encoding mode represents a mode for encoding image data in the predetermined group in units of one data processing unit selected from among a group, a subgroup, and a basic block; and decoding the image data of the predetermined group according to the read encoding mode.
20 . The image decoding method of claim 19 , wherein the reading of the encoding mode for the predetermined group comprises:
reading information about a shape of a group set as a data processing unit in which decoding is performed, information about a size of a group representing a number of basic blocks in the group, and information about a maximum level associated with a maximum number of subgroups in the group; and determining the group which is the data processing unit by which decoding is performed, by classifying the parsed image data by using the information about the shape and size of the group.
21 . The image decoding method of claim 20 , wherein the groups are set in units of a data unit selected from among a picture, a sequence, and a group of the image data.
22 . The image decoding method of claim 19 , wherein the subgroups are set based on a level representing the number of subgroups in the group, and a scan sequence in which basic blocks in the group are scanned.
23 . The image decoding method of claim 19 , wherein the reading of the encoding mode for the predetermined group comprises:
extracting an encoding mode flag that represents the encoding mode for the predetermined group, from parsed data associated with the predetermined group; and reading the encoding mode for the predetermined group on the basis of the encoding mode flag.
24 . The image decoding method of claim 19 , wherein the encoding mode for the predetermined group comprises at least one of:
information about a type of data processing units in which the data of the predetermined group is encoded, wherein the type is one of a group type, a subgroup type, and a basic block type; information about a size of the data processing unit, wherein the size represents the number of basic blocks in the data processing unit; and information about a prediction mode that represents a mode for determining reference information corresponding to the data processing unit.
25 . The image decoding method of claim 24 , wherein the decoding of the data of the predetermined group comprises:
determining a data processing unit in units in which decoding is to be performed among the units of groups, the units of subgroups, and the units of basic blocks, based on the information about the type and size of the data processing unit; determining a prediction mode of the data processing unit on the basis of the information about the prediction mode; and decoding the data of the group according to the determined data processing unit and the determined prediction mode.
26 . The image decoding method of claim 24 , wherein:
the predetermined group is encoded according to at least one prediction mode in units of different types of data processing units, the different types of processing units comprising the units of groups, the units of subgroups, and the units of basic blocks, to calculate error rates for the at least one prediction mode; a combination of a predetermined data processing unit and a prediction mode, which corresponds to a smallest error rate from among the calculated error rates, is determined; and encoding error rates generated by considering the at least one prediction mode in units of the different types of data processing units, are compared with one another to determine, as the encoding mode for the predetermined group, a combination of a data processing unit and a prediction mode, which correspond to the smallest error rate.
27 . The image decoding method of claim 19 , wherein the basic blocks are decoded in a zigzag scan sequence.
28 . The image decoding method of claim 19 , further comprising rearranging frequency transformed coefficients of a plurality of basic blocks, in units of one of groups and subgroups.
29 . The image decoding method of claim 20 , further comprising reading, from the parsed data, a flag that represents a data processing unit of units in which the data in the predetermined group is frequency transformed.
30 . The image decoding method of claim 19 , wherein the decoding comprises:
performing entropy decoding for decoding of data of the group on the basis of a large data processing unit corresponding to the encoding mode for the determined group; performing inverse quantization and inverse frequency transformation for the decoding of the data of the group, based on the large data processing unit; performing motion compensation for the decoding of the data of the group, based on the large data processing unit; and performing in-loop filtering for the decoding of the data of the group, based on the large data processing unit.
31 . The image decoding method of claim 30 , wherein in the decoding, a size of a data processing unit for the frequency transformation is determined based on a size of a data processing unit for the motion compensation
32 . The image decoding method of claim 30 , wherein the performing of the motion prediction uses at least one selected from the group consisting of:
a scanning sequence determined for each data processing unit for sequential motion estimation determined based on the large data processing unit, neighbor availability of a neighboring data processing unit located on a right upper end of a current data processing unit which is determined based on the large data processing unit, and a simplification mode in which only data processing units having square block shapes from among the large data processing units are used.
33 . The image decoding method of claim 30 , wherein the performing of the motion compensation comprises performing intra prediction based on the large data processing unit, and
wherein the performing of the intra prediction comprises performing motion compensation for the decoding of the data of the group by using at least one selected from the group consisting of: intra compensation performed in units of the large data processing units in an intra mode of a complex plain type, a data processing unit preset so that motion compensation of an intra mode is performed, base don the large data processing unit, and a prediction mode in which an intra mode and an inter mode are mixed, based on the large data processing unit.
34 . The image decoding method of claim 30 , wherein the performing of the motion compensation comprises performing inter prediction based on the large data processing unit, and
wherein the performing of the inter prediction comprises performing inter prediction by using at least one selected from the group consisting of: a motion vector determined for motion compensation of an inter mode with respect to a current data processing unit determined based on the large data processing unit, a motion vector predictor induced to correspond to the motion vector, based on the large data processing unit, and a skip mode of an extended shape determined based on the large data processing unit and a skip group comprising adjacent data processing units of at least one skip mode.
35 . The image decoding method of claim 30 , wherein the performing of the inverse quantization and inverse frequency transformation comprises performing at least one selected from the group consisting of:
integer inverse discrete cosine transformation based on a large block, based on the large data processing unit, inverse frequency transformation with respect to a chroma component of a large data processing unit, based on the large data processing unit, and modified inverse frequency transformation for reducing calculation complexity of inverse frequency transformation considering the large data processing unit.
36 . The image decoding method of claim 30 , wherein the performing of the entropy decoding comprises using at least one selected from the group consisting of:
a hierarchical coded block pattern determined according to the size of each data processing unit on the basis of the large data processing unit; a coded block pattern scanned based on the possibility that a quantized coefficient which is not 0 from among the quantized coefficients of the large data processing unit exists; entropy decoding with respect to data obtained by entropy encoding according to CABAC or CAVLC considering the large data processing unit; and a coded block pattern determined to be a single context for the large data processing unit of an intra mode or a chroma component, based on the large data processing unit.
37 . The image decoding method of claim 30 , wherein in the performing of the in-loop filtering, it is determined based on the large data processing unit whether deblocking filtering is performed on at least one selected from the group consisting of a boundary of a lower data processing unit in a current data processing unit having a large size, a boundary of a lower data processing unit in the current data processing unit on which frequency-transformation has been performed in units of a data processing unit having a predetermined size, a boundary of a chroma component of a lower data processing unit in the current data processing unit, and a boundary of a lower data processing unit in the current data processing unit on which motion estimation has been performed in a mixed mode in which an inter mode and an intra mode are mixed, the degree of deblocking filtering with respect to each boundary is set for a boundary of at least one lower data processing unit in the current data processing unit, and additional filtering for reducing a ringing effect is performed on a current data processing unit having a large size, based on the large data processing unit.
38 . An image encoding apparatus comprising:
a data classifying unit classifying image data divided into basic blocks, in units of groups and units of subgroups, wherein one of the groups comprises at least one of the basic blocks and one of the subgroups comprises the at least one of basic blocks and is in each group; a group encoding mode determination unit that determines at least one data processing unit selected from among the units of groups, the units of subgroups, and the units of basic blocks and determines an encoding mode for a predetermined group to encode the predetermined group, wherein the encoding mode represents a mode for encoding data in the predetermined group in units of the at least one data processing unit; and a group encoding unit encoding the data of the predetermined group according to the determined encoding mode.
39 . An image decoding apparatus comprising:
a receiving unit that receives and parses image data encoded in units of at least one data processing unit selected from among the units of basic blocks, the units of groups, and the units of subgroups, wherein one of the groups comprises at least one of the basic blocks and one of the subgroups comprises the at least one of basic blocks and is in each group; a group encoding mode reading unit that reads an encoding mode for a predetermined group from the parsed image data, wherein the encoding mode represents a mode for encoding image data in the predetermined group in units of one data processing unit selected from among the units of groups, the units of subgroups, and the units of basic blocks; and a group decoding unit that decodes the image data of the predetermined group according to the read encoding mode.
40 . The image encoding apparatus of claim 38 , wherein the group encoding unit comprises:
a frequency transformation and quantization unit that performs frequency transformation and quantization for encoding of the input image on the basis of a large data processing unit corresponding to the determined group encoding mode; a motion estimation unit that performs motion estimation for the encoding of the input image, based on the large data processing unit; an in-loop filtering unit that performs in-loop filtering for the encoding of the input image, based on the large data processing unit; and an entropy encoding unit that performs entropy encoding for the encoding of the input image, based on the large data processing unit.
41 . The image decoding apparatus of claim 39 , wherein the group decoding unit comprises:
an entropy decoding unit that performs entropy decoding for decoding of data of the group on the basis of a large data processing unit corresponding to the determined group encoding mode; an inverse quantization and inverse frequency transformation unit that performs inverse quantization and inverse frequency transformation for the decoding of the data of the group, based on the large data processing unit; a motion compensation unit that performs motion compensation for the decoding of the data of the group, based on the large data processing unit; and an in-loop filtering unit that performs in-loop filtering for the decoding of the data of the group, based on the large data processing unit.
42 . A computer readable recording medium having recorded thereon a program for executing the image encoding method according to claim 1 .
43 . A computer readable recording medium having recorded thereon a program for executing the image decoding method according to claim 19 .Join the waitlist — get patent alerts
Track US2011090967A1 — get alerts on status changes and closely related new filings.
We store only your email — no account needed. See our privacy policy.