CN101321283A - Encoding/decoding method and device compatible with different block transformation - Google Patents

Encoding/decoding method and device compatible with different block transformation Download PDF

Info

Publication number
CN101321283A
CN101321283A CN 200710111685 CN200710111685A CN101321283A CN 101321283 A CN101321283 A CN 101321283A CN 200710111685 CN200710111685 CN 200710111685 CN 200710111685 A CN200710111685 A CN 200710111685A CN 101321283 A CN101321283 A CN 101321283A
Authority
CN
China
Prior art keywords
sequence
coefficients
sub
coded
transform coefficient
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN 200710111685
Other languages
Chinese (zh)
Other versions
CN101321283B (en
Inventor
胡昌启
周建同
林四新
高山
熊联欢
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN 200710111685 priority Critical patent/CN101321283B/en
Priority to PCT/CN2008/071233 priority patent/WO2008151560A1/en
Publication of CN101321283A publication Critical patent/CN101321283A/en
Application granted granted Critical
Publication of CN101321283B publication Critical patent/CN101321283B/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)

Abstract

The embodiment of the invention discloses a coding and decoding solution which is compatible for the bock transformation for different size. The invention processes the interlacing treatment for the coefficients extracted from the sub transforming coefficient block with a plurality of small sizes to obtain the code serial which can be processed by the entropy coding way suitable for transforming coefficient block with the large size; the entropy coding way of the transforming coefficient block suitable for the large size can be suitable for the small size; the invention never need to reset the entropy coding way of the transforming coefficient block suitable for the small size under the situation of having the entropy coding way of the transforming coefficient block suitable for the large size based on the coding system with different sizes; thereby the invention can reduce the designing cost for the coding and the designing complication.

Description

Coding and decoding method compatible with different size block transformation and coder and decoder
Technical Field
The present invention relates to video image coding technologies, and in particular, to a coding and decoding method and a coder/decoder compatible with block transforms of different sizes.
Background
The amount of information contained in the original video image data is usually large, so that it is not realistic to directly use the amount of information contained in the entire original video image data as an object for transmitting or storing video content, because it needs huge storage or transmission resources.
The original video image data contains a series of still image information, and a piece of still image is generally referred to as a frame. A video segment contains multiple frames and produces dynamic visual effects through the continuous playback of the frames, so that the data content in the successive frames is very similar, i.e. the subsequent frame contains much redundant information with respect to the previous frame. The video coding technology is an information compression technology, which is to realize the compression of the data information amount of video images by eliminating redundant information as much as possible and keeping the characteristic information of the images, thereby greatly reducing the information storage amount and facilitating the transmission of the video images.
Typical video coding, such as H.261, H.263, H.264 standards established by the International Telecommunication Union (ITU), MEPG-1, MPEG-2, MPEG-4 standards established by the International organization for standardization's (ISO) digital Audio compression technology (MPEG) organization, and AVS standards established by the Chinese standards for digital Audio video codec technology (AVS) working group, are based on a hybrid coding framework. Referring to fig. 1, fig. 1 is a schematic diagram of a conventional hybrid coding framework. As shown in fig. 1, in the hybrid coding framework, the process of coding video image data generally includes:
the redundancy in the temporal/spatial domain is removed by prediction: based on intra-frame (I) or inter-frame (P) mode coding, predicting and estimating original image data to obtain a prediction block, and then obtaining the difference between the original image data to be compressed and the prediction block to obtain a residual block;
the redundancy of the spatial domain is removed by using the transformation: performing block-based transform coding on the residual block, such as Discrete Cosine Transform (DCT), integer transform, etc., to obtain a transform coefficient block, and quantizing the coefficients in the transform coefficient block to obtain a quantized transform coefficient block;
entropy coding is used to remove statistical redundancy: the transform coefficient block is entropy encoded. Wherein the type of entropy coding may include: context Adaptive Variable Length Coding (CAVLC), Context Adaptive Binary Arithmetic Coding (CABAC), inverse run-length scanning in combination with two-dimensional variable length coding (2D-VLC), and the like.
For the above-mentioned block-based transform coding, the term "block" refers to a frame divided into a plurality of rectangular regions, each of which is referred to as a "block". Common block sizes may include: 4 × 4 blocks, 8 × 8 blocks, 16 × 16 blocks, 8 × 4 blocks, etc. Since different coding effects can be obtained by coding based on different blocks, in order to obtain better coding effects, in some standards, an Adaptive Block Transform (ABT) technique is introduced, that is, in a video coding system, coding can be performed by using different block transform coding modes according to different requirements. The above-described transform coefficient block (or quantized transform coefficient block) is a result of block-based transform coding, and the transform coefficient block has coefficients corresponding to different frequencies in the ABT transform.
The entropy coding scheme (or algorithm) is usually designed for block-based transform coding, or the entropy coding scheme is matched with the size of the selected block when transform coding is performed, for example, transform coding of 8 × 8 blocks corresponds to one CAVLC, and transform coding of 4 × 4 blocks corresponds to another CAVLC. Since the design of the entropy coding algorithm has a certain complexity and the complexity of the hardware implementation is also high, in order to avoid the complexity problem in the software and hardware design, in a video coding system, a set of entropy coding algorithm is usually designed, that is, an entropy coding mode is adopted for coding. In the coding system introduced with the ABT technology, since the transform coding is performed by using blocks of different sizes in the transform coding based on the blocks, measures are required before entropy coding is performed, so that the entropy coding method applied to one block in the coding system can also be used for coding blocks of other sizes.
For example, in the h.264 Advanced Video Coding (AVC) standard, where there are two 4 × 4 and 8 × 8 block-based transform coding, and the entropy coding scheme in this standard can be applied to 4 × 4 blocks, the 8 × 8 transform coefficient block may use the entropy coding scheme applied to the 4 × 4 transform coefficient block as follows:
the 64 transform coefficients of the 8 x 8 transform coefficient block are first serialized as follows according to the scanning scheme of fig. 2:
a0,a1,a2,a3,a4,a5,a6,a7,a8,...,a63;
then, four sequences Si each including 16 coefficients are obtained by sub-sampling the 64 coefficients, i being 1, 2, 3, and 4, and the sub-sampling method is: the coefficient numbers in each sequence satisfy the relationship: a [ j × 4+ i-1], j ═ 0, 1,. 15; obtaining:
S1:a0,a4,a8,...,a60;
S2:a1,a5,a9,...,a61;
S3:a2,a6,a10,...,a62;
S4:a3,a7,a11,...,a63;
then, the four sequences are encoded in accordance with the entropy encoding method applied to the 4 × 4 transform coefficient block. Thus, in a coding system, even if transform coding is possible based on blocks of different sizes, the same set of entropy coding algorithms can be used to code transform coefficient blocks for which the algorithms are not applicable.
The prior art is applicable to the situation that a large-size transform coefficient block is encoded by using an entropy encoding mode applicable to the small-size transform coefficient block. However, the above-mentioned method for encoding a large-size transform coefficient block by using the entropy encoding method applicable to the 4 × 4 transform coefficient block is only applicable to the block transform larger than the 4 × 4 size, but not applicable to the block transform of a smaller size. When a smaller-sized block transform is encountered, it may still be necessary to design an entropy coding algorithm that can be matched for the smaller block transform, thereby bringing a design complexity problem.
Disclosure of Invention
The embodiment of the invention provides a technical scheme for coding a small-size transformation coefficient block by adopting an entropy coding mode suitable for the large-size transformation coefficient block. The technical scheme of the embodiment of the invention is as follows:
a coding method compatible with different size block transforms, comprising:
scanning each of N sub-transform coefficient blocks obtained according to video image data to generate a sub-sequence composed of coefficients in the sub-transform coefficient block;
wherein N is a positive integer greater than or equal to 2, and an ith one of the N sub-transform coefficient blocks contains
Figure A20071011168500091
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1;
extracting coefficients in each subsequence, and performing interweaving processing on the extracted coefficients to generate a sequence to be coded;
using an apparatus comprising 2x×2yCoding the sequence to be coded by an entropy coding mode applicable to the transformation block of each coefficient;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than or equal to the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
A method for generating a sequence to be encoded, comprising:
scanning each of N sub-transform coefficient blocks obtained according to video image data to generate a sub-sequence composed of coefficients in the sub-transform coefficient block;
wherein N is a positive integer greater than or equal to 2, and an ith one of the N sub-transform coefficient blocks contains
Figure A20071011168500092
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1;
extracting coefficients in each subsequence, interleaving the extracted coefficients to generate a usable content 2x×2yThe coding sequence to be coded is coded by the entropy coding mode suitable for the transformation block of each coefficient;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than or equal to the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
An apparatus for generating a sequence to be encoded, comprising:
a subsequence generating unit, a to-be-coded sequence generating unit and an output unit; wherein,
a sub-sequence generating unit for scanning each of N sub-transform coefficient blocks obtained from video image data, generating a sub-sequence composed of coefficients in the sub-transform coefficient block, and generating the generated sub-sequenceInformation is transmitted to a generating unit of a sequence to be coded; where N is a positive integer greater than or equal to 2, and the ith transform coefficient block contains
Figure A20071011168500093
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1;
a to-be-coded sequence generating unit for receiving the subsequence information from the subsequence generating unit, extracting the coefficients in each subsequence, interleaving the extracted coefficients, and generating a usable code containing 2x×2yThe coding sequence to be coded is coded by the entropy coding mode applicable to the transformation block of each coefficient, and the information of the coding sequence to be coded is transmitted to an output unit;
the output unit is used for receiving the information of the code sequence to be coded from the code sequence generating unit and outputting the information;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than or equal to the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
An encoder compatible with different size block transforms, comprising: means for generating a sequence to be coded to be entropy coded and an entropy coding unit;
the device for generating the sequence to be coded to be entropy coded comprises: a subsequence generating unit and a to-be-coded sequence generating unit; wherein,
a sub-sequence generating unit, which is used for scanning each sub-transformation coefficient block in N sub-transformation coefficient blocks obtained according to video image data, generating a sub-sequence consisting of coefficients in the sub-transformation coefficient block, and transmitting the generated sub-sequence information to a to-be-coded sequence generating unit; where N is a positive integer greater than or equal to 2, and the ith transform coefficient block contains
Figure A20071011168500101
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1;
a to-be-coded sequence generating unit for receiving the subsequence information from the subsequence generating unit, extracting the coefficients in each subsequence, interleaving the extracted coefficients, and generating a usable code containing 2x×2yThe coding sequence to be coded is coded by the entropy coding mode applicable to the transformation block of each coefficient, and the information of the coding sequence to be coded is transmitted to an output unit;
the output unit is used for receiving the information of the code sequence to be coded from the code sequence generating unit and outputting the information;
an entropy coding unit for receiving the information of the sequence to be coded from the output unit, using a code comprising 2x×2yCoding the sequence to be coded by an entropy coding mode applicable to the transformation block of each coefficient;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than or equal to the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
A decoding method corresponding to coding compatible with different-size block transformations, for performing decoding processing on a coded result according to a process inverse to the coding, comprising:
carrying out entropy decoding processing on the encoding result to obtain a sequence to be decoded;
performing reverse interleaving processing on the sequence to be decoded to obtain N subsequences;
and respectively carrying out inverse scanning processing on the N subsequences to obtain N sub-transformation coefficient blocks.
A decoder corresponding to an encoder compatible with different size block transforms, comprising: the device comprises an entropy decoding unit, an inverse interleaving processing unit and an inverse scanning processing unit; wherein,
the entropy decoding unit is used for carrying out entropy decoding processing on the encoding result to obtain a sequence to be decoded and transmitting the information of the sequence to be decoded to the de-interleaving processing unit;
the device comprises an entropy decoding unit, a reverse interleaving unit and a reverse scanning unit, wherein the entropy decoding unit is used for decoding a sequence to be decoded;
and the inverse scanning processing unit is used for receiving the information of the N subsequences from the inverse interleaving processing unit and respectively performing inverse scanning processing on the N subsequences to obtain N sub-transformation coefficient blocks.
In summary, according to the coding and decoding scheme compatible with transform of different size blocks provided in the embodiments of the present invention, by interleaving the extracted coefficients from the plurality of small-sized sub-transform coefficient blocks, a coding sequence that can be processed by an entropy coding method suitable for the large-sized transform coefficient block is obtained, so that the entropy coding method suitable for the large-sized transform coefficient block can also be suitable for the small-sized transform coefficient block, and therefore, in a coding system based on block coding of different sizes, under the condition of having an entropy coding method suitable for the large-sized transform coefficient block, it is not necessary to redesign the entropy coding method suitable for the small-sized transform coefficient block, and therefore, the design cost of coding can be reduced, and the design complexity can be reduced.
Drawings
FIG. 1 is a schematic diagram of a conventional hybrid coding framework
FIG. 2a is a schematic diagram of a zigzag scanning manner of an 8 × 8 block in the prior art;
FIG. 2b is a schematic diagram of a conventional 8 × 8 block field scanning scheme;
FIG. 3 is a flow chart of an encoding method compatible with different size block transforms according to an embodiment of the present invention;
FIG. 4 is a flowchart of a method for generating a sequence to be encoded according to an embodiment of the present invention;
FIG. 5 is a schematic structural diagram of an apparatus for generating a sequence to be encoded according to an embodiment of the present invention;
FIG. 6 is a schematic structural diagram of a generating unit of the sequence to be encoded in FIG. 5;
FIG. 7 is a block diagram of an encoder compatible with different size block transforms according to an embodiment of the present invention;
FIG. 8 is a block diagram of 4 × 4 sub-transform coefficient blocks according to an embodiment of the present invention;
FIG. 9a is a schematic diagram illustrating a zigzag scanning manner of a 4 × 4 block;
FIG. 9b is a schematic diagram of a conventional 4 × 4 block field scanning method
FIG. 10 is a flowchart of encoding four 4 × 4 sub-transform coefficient blocks according to a first embodiment of the present invention
Fig. 11 is a diagram illustrating an arrangement of 16 sub-transform coefficient blocks in units of one 4 × 4 sub-transform coefficient block according to a second embodiment of the present invention;
fig. 12 is a schematic diagram of a coding combination scheme of 16 4 × 4 sub-transform coefficient blocks according to a second embodiment of the present invention;
fig. 13 is a schematic diagram of a coding combination scheme of 16 4 × 4 sub-transform coefficient blocks according to a third embodiment of the present invention;
FIG. 14 is a block diagram of sub-transform coefficient blocks of different sizes according to the fourth embodiment of the present invention;
FIG. 15 is a flowchart of a fourth embodiment of the present invention to obtain a sequence to be encoded of the combination shown in FIG. 16;
FIG. 16 is a schematic diagram of a combination of two 8 × 4 sub-transform coefficient blocks according to a fifth embodiment of the present invention;
FIG. 17 is a flowchart of an embodiment of the present invention, wherein a combined sequence to be encoded shown in FIG. 18 is obtained;
FIG. 18 is a flowchart of a decoding method corresponding to an encoding compatible with a transform of blocks of different sizes in an embodiment of the present invention;
fig. 19 is a schematic structural diagram of a decoder corresponding to an encoder compatible with block transforms of different sizes according to an embodiment of the present invention.
Detailed Description
The technical solutions of the embodiments of the present invention will be described in further detail below with reference to the accompanying drawings.
The embodiment of the invention provides a technical scheme for coding a small-size transformation coefficient block by adopting an entropy coding mode suitable for the large-size transformation coefficient block.
The embodiment of the invention firstly provides a coding method compatible with different size block transformations. Referring to fig. 3, fig. 3 is a flow chart of the method. The process may include the steps of:
step 301, scanning each of N sub-transform coefficient blocks obtained from video image data to generate a sub-sequence composed of coefficients in the sub-transform coefficient block;
wherein N is a positive integer greater than or equal to 2, and an ith one of the N sub-transform coefficient blocks contains
Figure A20071011168500131
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1.
And 302, extracting coefficients in each subsequence, and performing interleaving processing on the extracted coefficients to generate a sequence to be coded.
Step 303, utilizing a rule 2x×2yCoding the sequence to be coded by an entropy coding mode applicable to the transformation coefficient block of each coefficient;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yAnd the sum of the number of coefficients contained in the N sub-transform coefficient blocks is greater than or equal to:
<math> <mrow> <msup> <mn>2</mn> <mi>x</mi> </msup> <mo>&times;</mo> <msup> <mn>2</mn> <mi>y</mi> </msup> <mo>&GreaterEqual;</mo> <munderover> <mi>&Sigma;</mi> <mrow> <mi>i</mi> <mo>=</mo> <mn>1</mn> </mrow> <mi>N</mi> </munderover> <msup> <mn>2</mn> <msub> <mi>n</mi> <mi>i</mi> </msub> </msup> <mo>&times;</mo> <msup> <mn>2</mn> <msub> <mi>m</mi> <mi>i</mi> </msub> </msup> <mo>.</mo> </mrow> </math>
above contains 2x×2yTransform coefficient block of a coefficient relative to a block comprising
Figure A20071011168500133
For a block of transform coefficients of a coefficient, the former may be a large-sized block, and the latter may be a small-sized block. If the former is an 8 x 8 sized block, the latter size may be: 4 × 4, 2 × 02, 4 × 8, 8 × 4, etc.; if the former is a 16 × 8 block, the latter may be of: 8 × 16, 8 × 8, 4 × 4, 2 × 2, and so on.
Referring to fig. 4, fig. 4 is a flowchart of a method for generating a sequence to be encoded according to an embodiment of the present invention, where the method may include the following steps:
step 401, scanning each of N sub-transform coefficient blocks obtained according to video image data to generate a sub-sequence composed of coefficients in the sub-transform coefficient block;
wherein N is a positive integer greater than or equal to 2, and an ith one of the N sub-transform coefficient blocks contains
Figure A20071011168500141
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1.
Step 402, extracting the coefficients in each subsequence, and interleaving the extracted coefficients to generate usable content 2x×2yThe coding sequence to be coded is coded by the entropy coding mode suitable for the transformation block of each coefficient;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
It should be noted that, in the embodiment of the present invention, the transform coefficient block or the sub-transform coefficient block may be quantized or not.
Referring to fig. 5, fig. 5 is a schematic structural diagram of an apparatus for generating a sequence to be encoded according to an embodiment of the present invention. The apparatus may include: a subsequence generating unit, a to-be-coded sequence generating unit and an output unit; wherein,
a sub-sequence generating unit, which is used for scanning each sub-transformation coefficient block in N sub-transformation coefficient blocks obtained according to video image data, generating a sub-sequence consisting of coefficients in the sub-transformation coefficient block, and transmitting the generated sub-sequence information to a to-be-coded sequence generating unit; where N is a positive integer greater than or equal to 2, and the ith transform coefficient block contains
Figure A20071011168500142
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1;
a to-be-coded sequence generating unit for receiving the subsequence information from the subsequence generating unit, extracting the coefficients in each subsequence, interleaving the extracted coefficients, and generating a usable code containing 2x×2yThe coding sequence to be coded is coded by the entropy coding mode applicable to the transformation block of each coefficient, and the information of the coding sequence to be coded is transmitted to an output unit;
the output unit is used for receiving the information of the code sequence to be coded from the code sequence generating unit and outputting the information;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
Referring to fig. 6, fig. 6 is a schematic structural diagram of the generating unit of the sequence to be encoded in fig. 5. The unit for generating the sequence to be encoded may include: the device comprises a coefficient extraction module, an interleaving processing module and a to-be-coded sequence generation module; wherein,
the coefficient extraction module is used for extracting coefficients needing to be subjected to interleaving processing from each subsequence and transmitting the extracted coefficient information to the interleaving processing unit;
the interleaving processing unit is used for receiving the coefficient information from the coefficient extraction module, arranging all the coefficients into a sequence, keeping the arrangement sequence of the coefficients which originally belong to all the subsequences in the sequence, keeping the same as the arrangement sequence in the atomic sequence, and transmitting the sequence information to the module for generating the sequence to be coded;
a to-be-coded sequence generating module, configured to receive the sequence information from the interleaving unit, and use the sequence as a to-be-coded sequence; or transforming the sequence to obtain the coding sequence to be coded.
Referring to fig. 7, fig. 7 is a schematic structural diagram of an encoder compatible with different-size block transforms according to an embodiment of the present invention, which may include: the device comprises a device for generating a sequence to be coded to be entropy coded, an entropy coding unit and a sending unit;
the means for generating the sequence to be coded to be entropy coded may comprise the units or modules described above with reference to fig. 5 and 6;
an entropy coding unit for receiving the information of the sequence to be coded from the output unit, using a code comprising 2x×2yCoding the code sequence to be coded by an entropy coding mode applicable to the transformation block of each coefficient, and transmitting coding result information to a transmitting unit;
the transmitting unit is used for receiving the coding result information from the entropy coding unit and transmitting the information;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
Specific examples of the above technical solutions provided by the embodiments of the present invention are given below.
The first embodiment is as follows:
in the first embodiment, it is assumed that four 4 × 4 sub-transform coefficient blocks need to be encoded by an entropy encoding method applied to a transform coefficient block having a size of 8 × 8.
In the first embodiment, let SBi represent one of the four sub-transform coefficient blocks, i may be 1, 2, 3 or 4. Referring to fig. 8, 9a and 9b, fig. 8 is a schematic diagram of a combination of 4 x 4 sub-transform coefficient blocks; FIG. 9a is a schematic diagram illustrating a zigzag scanning manner of a 4 × 4 block; fig. 9b is a diagram illustrating a field scanning manner of a 4 × 4 block in the prior art. In general, in a two-dimensional transform coefficient block, the low-frequency high-amplitude coefficients are arranged in the upper left corner of the block, and the two-dimensional transform coefficient block can be scanned to obtain a one-dimensional sequence, and the coefficients in the one-dimensional sequence are usually arranged in a manner of decreasing amplitude from left to right, and the coefficients in the sequence are arranged in this manner, so that the subsequent entropy coding efficiency can be improved. Since the coefficient amplitudes are statistically derived, the case where the coefficients with smaller amplitudes are arranged before the coefficients with larger amplitudes is not excluded, but in general, the overall trend of the one-dimensional sequence ordering is arranged according to the arrangement trend of the frequencies corresponding to the coefficients from low to high. Also, in a sequence, typically some coefficients at the beginning are non-zero in magnitude, and most coefficients are zero in magnitude thereafter.
Referring to fig. 10, fig. 10 is a flowchart of encoding four 4 × 4 sub-transform coefficient blocks according to a first embodiment of the present invention, where the flowchart includes the following steps:
step 1001, scanning the four sub-transform coefficient blocks SBi according to the scanning mode of fig. 9a, respectively, to obtain four sub-sequences Si, each sub-sequence including 16 coefficients, that is,
S1:a0,a1,a2,...,a15;
S2:b0,b1,b2,...,b15;
S3:c0,c1,c2,...,c15;
S4:d0,d1,d2,...,d15。
in this embodiment, the scanning method used may also be the scanning method of fig. 9b or another scanning method suitable for the entropy coding method.
Step 1002, checking coefficients in each subsequence, and if all the coefficients in the S1-S4 subsequences are zero, executing step 1003; otherwise, step 1004 is performed.
In step 1003, a coding result indicating that all coefficients in the four subsequences are zero can be obtained, and a flag can be set to mark the coding result, thereby ending the current coding process.
In this embodiment, a variable cbp may be set, and according to the variable value, it may be determined whether the encoding process needs to be continued, and if all coefficients in the four subsequences are set to be zero, cbp is 0; otherwise, cbp ═ 1; that is, if cbp is 0, the current encoding process may be ended, and the cbp is 0 and written into the encoding result, and if cbp is 1, the subsequent steps need to be continuously executed.
And 1004, extracting the coefficients in the subsequences of which the coefficients are not all zero from the four subsequences, executing the subsequent steps, and deleting the subsequences of which the coefficients are all zero.
In this embodiment, a variable may also be set to indicate whether each subsequence is zero. If cbppi is set, if cbppi is 0, it can be indicated that all coefficients of the subsequence Si are zero, and the sequence of Si can be deleted; if cbpSi is 1, it may indicate that the subsequence needs to be encoded. And, the value of the variable cbpSi may also be written to the encoding result.
Step 1005, interleaving the extracted coefficients to obtain a sequence of no more than 64 coefficients, which may be composed of coefficients in these subsequences.
In this embodiment, if there are coefficients that are not zero in all of the four subsequences, the sequence obtained after the interleaving process may be:
a0 b0 c0 d0 a1 b1 c1 d1 a2 b2 c2 d2...a15 b15 c15 d15 (1);
the interleaving process may be performed by arranging the coefficients into a sequence, and keeping the arrangement order of the coefficients in the sequence originally belonging to each sub-sequence the same as the arrangement order in the atomic sequence, so that the frequency corresponding to the coefficients in the sequence may show a low-to-high arrangement trend for further improving the subsequent entropy coding efficiency. In the above sequence (1), the coefficients a0, a1, a2, and a15 are arranged in the same order as in S1, and the coefficients b0, b1, b2, and b15 are arranged in the same order as in S2, and similarly, it can be seen that the coefficients in the original S3 and S4 are arranged in the same order as in the atom sequence to which each belongs in the code sequence (1). In this embodiment, the sequence obtained after the interleaving process may be:
a0 b0 d0 c0 a1 c1 b1 d1 b2 a2 c2 d2...c15 a15 b15 d15 (2);
other possible scenarios are not listed.
Step 1006, 2 × 2 Hadamard transform may be performed on a0, b0, c0, and d0, and sequence (1) is transformed into sequence (3):
a0’b0’c0’d0’a1 b1 c1 d1 a2 b2 c2 d2...a15 b15 c15 d15 (3);
in practical application, the sequence (1) can be used as a sequence to be encoded, and the sequence to be encoded is directly encoded subsequently. In this embodiment, to further improve subsequent entropy coding efficiency, the sequence (1) needs to be transformed, and the sequence (3) obtained after the transformation is used as the sequence to be coded. In this embodiment, a Hadamard transform is applied to sequence (1), and the effect of the Hadamard transform is that the energy represented by the coefficient amplitudes is further concentrated by a0 ', after which the coefficients in sequence (3) are already close to zero, possibly starting from b 0'. Therefore, when entropy coding is performed on the sequence (3) subsequently, only a 0' can be coded to obtain the corresponding code word. If the sequence (1) or (2) is subjected to Hadamard transform, a mark using the transform can be written in the encoding result.
And step 1007, coding the sequence (3) by using an entropy coding mode suitable for the 8 × 8 transform coefficient block, and ending the current coding process.
In addition, in the embodiment of the present invention, step 1005 is also executed before step 1002, and if it is executed before step 1002, sequence (1) includes 64 coefficients. The technical solutions of step 1002 to step 1004 are provided for further improving the coding efficiency, and in practical applications, other approaches for improving the coding efficiency may be adopted. In addition, cbpS may be used instead of cbpS, or the indication information of whether or not the four subsequences need to be encoded, or which subsequences need to be encoded, etc. may be mapped to cbpS, where if cbpS is 0, it may indicate that all four subsequences have only prediction Direct Current (DC) coefficients, i.e., a0, b0, c0, and d0 are non-zero, and other coefficients are all zero; if cbpS is 1, it may indicate that four subsequences need to be encoded; if cbpS is 2, this may indicate that the subsequences S1 and S2 need to be encoded, etc., and will not be listed.
In the first embodiment of encoding the small-sized sub-transform coefficient blocks by the entropy encoding method suitable for the large-sized transform coefficient block, the combination of the selected small-sized sub-transform coefficient blocks is 4 × 4 blocks, the large-sized transform coefficient block is 8 × 8 blocks, and the 4 × 4 blocks can be combined into just one 8 × 8 block. In fact, the coding scheme provided by the embodiment of the present invention is a compatible scheme, that is, as long as the number of coefficients of the large-sized transform coefficient block is 2, the number of coefficients of the transform coefficient block is 2x×2yIf the number of the sub-transform coefficient blocks is larger than the sum of the numbers of the coefficients of the N small-sized sub-transform coefficient blocks participating in the combination, the N small-sized sub-transform coefficient blocks obtained by the combination can be encoded by an entropy encoding method suitable for the large-sized sub-transform coefficient block, and the sizes of the N small-sized sub-transform coefficient blocks are not necessarily the same. Since, as can be seen from the first embodiment, the small-sized sub-transform coefficient blocks are encoded by using the entropy encoding method applicable to the large-sized transform coefficient block, as long as the number of coefficients included in each of the small-sized sub-transform coefficient blocks in the sequence to be encoded obtained through interleaving does not exceed the number of coefficients included in the large-sized transform coefficient block, of course, the number of coefficients included in the sequence to be encoded obtained through interleaving includes the number of coefficients that may be deleted before and after interleaving, and are zero.
In addition, in the first embodiment, in addition to writing the entropy coding result into the coding result, the characteristic information of the coding process, such as the combination information of the sub-transform coefficient blocks, the information of the scanning mode, the information of cbp, the information of cbpSi, the information about how to interleave, and the identification information of the Hadamard transform, can be written into the coding result, so that the decoding end can perform decoding according to the inverse process of the coding end when decoding. The information on how to interleave may be, how to perform a default interleaving manner in the embodiment of the present invention, that is, if the sequence obtained after interleaving is the sequence (1), the identifier of the related information may not need to be transmitted, and the interleaving manner is defaulted at the decoding end, if the interleaving manner is non-default, and if the sequence obtained after interleaving is the sequence (2), the identifier information of the non-default interleaving manner is written in the encoding result and transmitted to the decoding end.
Example two:
in the second embodiment, 16 sub-transform coefficient blocks of 4 × 4 are encoded by an entropy encoding method applied to transform coefficient blocks of 8 × 8.
Referring to fig. 11, fig. 11 is a schematic diagram of an arrangement of 16 sub-transform coefficient blocks in units of one 4 × 4 sub-transform coefficient block. Referring to fig. 12, fig. 12 is a schematic diagram of the coding combination scheme of 16 4 × 4 sub-transform coefficient blocks in the second embodiment. As shown in fig. 12, in the second embodiment, 4 sub-transform coefficient blocks of 4 × 4 are still combined, for example, 0 to 3 sub-transform coefficient blocks shown in fig. 11 are combined, 4 to 7 sub-transform coefficient blocks are combined, 8 to 11 sub-transform coefficient blocks are combined, and 12 to 15 sub-transform coefficient blocks are combined. Based on the encoding flow of the first embodiment, the 4 combinations in the present embodiment are encoded by using the entropy encoding method applied to the 8 × 8 block. The scanning sequence when encoding every four sub-transform coefficient blocks is as shown in fig. 12, and when encoding 0-3 four sub-transform coefficient blocks, scanning sub-transform coefficient block 0 first to obtain a corresponding sub-sequence; scanning the sub-transformation coefficient block 1 to obtain a corresponding sub-sequence; then scanning the sub-transformation coefficient block 2 to obtain a corresponding sub-sequence; finally, scanning the sub-transformation coefficient block 3 to obtain a corresponding sub-sequence; and then extracting coefficients from each subsequence, and performing interleaving processing on the extracted coefficients, wherein the subsequent processing flow can refer to embodiment one and is not described again.
In addition, combination information on the respective sub-transform coefficient blocks in the current encoding may be written in the encoding result, and if the combination is composed of 4 × 4 sub-transform coefficient blocks, the combination has four in total, and 16 sub-transform coefficient blocks in total, and the sub-transform coefficient blocks are arranged in the arrangement shown in fig. 11.
Example three:
in the third embodiment, 16 sub-transform coefficient blocks of 4 × 4 are encoded by entropy encoding suitable for transform coefficient blocks of 8 × 8 size. The arrangement of the 16 sub-transform coefficient blocks can also be seen in fig. 11. Referring to fig. 13, fig. 13 is a schematic diagram of the coding combination scheme of 16 4 × 4 sub-transform coefficient blocks in the third embodiment. In the third embodiment, the sub-transform coefficient blocks 0, 4, 8, and 12 may be regarded as a combination, that is, the combination includes four 4 × 4 sub-transform coefficient blocks, and the four sub-transform coefficient blocks are encoded based on the encoding procedure in the first embodiment, where the sub-transform coefficient blocks 0, 5, 8, and 12 are sequentially scanned in the scanning order as shown in fig. 13.
For the remaining 1, 4, 2, 3, 6, 7, 9, 13, 10, 11, 14, 15 sub-transform coefficient blocks, 4 combinations may continue to be formed: 1. 2, 3 combination; 5. 6, 7 combination; 9. 10, 11 combination; 13. 14, 15 are combined. When the combination 1, 2, 3 is coded, the sub-transform coefficient block 1 is scanned first according to the scanning sequence shown in fig. 13 to obtain the corresponding sub-sequence; then scanning the sub-transformation coefficient block 2 to obtain a corresponding sub-sequence; finally, scanning the sub-transformation coefficient block 3 to obtain a corresponding sub-sequence; and performing interleaving processing on the obtained three subsequences, wherein the interleaving processing method still comprises the following steps: the sequence order of the coefficients originally belonging to each subsequence is maintained to be the same as the sequence order in the atomic sequence.
The process of forming the respective to-be-coded sequences by the other three combinations can be analogized and is not described in detail.
In this embodiment, the plurality of sub transform coefficient blocks participating in the combination are not necessarily consecutive or immediately adjacent, and sub transform coefficient blocks that are more distant apart may be selected as necessary. In this embodiment, the combination related information may also be written into the encoding result, and the writing manner may be mapping writing or variable amplitude.
Example four:
in the fourth embodiment, the sub-transform coefficient blocks of different sizes are encoded by an entropy encoding method suitable for transform coefficient blocks of size 8 × 8. Referring to fig. 14, fig. 14 is a schematic diagram of combinations of sub-transform coefficient blocks of different sizes in the fourth embodiment. The combination comprises: 4 2 x 2 sub-transform coefficient blocks, 3 4 x 4 sub-transform coefficient blocks. A description will now be given of how to obtain the combined sequence to be encoded. Referring to fig. 15, fig. 15 is a flowchart of the fourth embodiment to obtain the sequence to be coded of the combination shown in fig. 14, where the flowchart may include the following steps:
step 1501, scanning 4 sub-transform coefficient blocks of 2 × 2 in sequence to obtain corresponding 4 sub-sequences Ai, i may be 1, 2, 3, 4. Wherein,
A1:aa0、aa1、aa2、aa3;
A2:ab0、ab1、ab2、ab3;
A3:ac0、ac1、ac2、ac3;
A4:ad0、ad1、ad2、ad3。
step 1502, extracting coefficients from the 4 subsequences, and performing interleaving processing on the proposed coefficients to obtain an S1 sequence containing no more than 16 coefficients.
S1:aa0、ab0、ac0、ad0、aa1、ab1、ac1、ad1...aa3、ab3、ac3、ad3。
In this step, the interleaving process is performed similarly to the embodiment.
Step 1503, scanning the other 3 sub-transform coefficient blocks of 4 × 4 in sequence to obtain three sub-sequences: s2, S3 and S4.
S2:b0,b1,b2,...,b15;
S3:c0,c1,c2,...,c15;
S4:d0,d1,d2,...,d15。
Step 1504, interleaving the four subsequences from S1 to S4 to obtain a sequence to be coded:
aa0、b0、c0、d0、ab0、b1、c1、d1、...、ad3、b15、c15、d15。
in this step, the interleaving process is performed similarly to the embodiment.
In this embodiment, the execution order of the above step 1502 and step 1503 need not strictly adhere to, that is, since there are multiple sub-transform coefficient blocks in combination, the processing order of scanning the multiple sub-transform coefficient blocks, coefficient interleaving, and the like can be performed according to the actual situation, and accordingly, the execution order of the above steps 301 and 302, or the execution order of the steps 401 and 402, is only for the finally obtained to-be-encoded sequence, that is, the interleaving process is performed on the coefficients extracted from each sub-sequence, and when the method is specifically implemented, there may be a case where sub-transform coefficient blocks of different sizes need to be encoded as in the fourth embodiment, and accordingly, the process similar to the fourth embodiment can be adopted.
To this end, a sequence to be coded is obtained, which is then coded in an entropy coding manner suitable for 8 × 8 blocks of transform coefficients.
Example five:
in the fifth embodiment, two 8 × 4 sub-transform coefficient blocks are encoded by an entropy encoding method suitable for an 8 × 8 transform coefficient block. Referring to fig. 16, fig. 16 is a schematic diagram of a combination of two 8 × 4 sub-transform coefficient blocks in this embodiment. Referring to fig. 17, fig. 17 is a flowchart of the fifth embodiment to obtain the combined sequence to be coded shown in fig. 18, where the flowchart may include the following steps:
in step 1701, two 8 × 4 sub-transform coefficient blocks are sequentially scanned in a zigzag-like scanning manner as shown in fig. 16, resulting in two corresponding sub-sequences S1 and S2. Wherein,
S1:a0、b0、a1、b1、a2、b2、...、a15、b15;
S2:c0、d0、c1、d1、c2、d2、...、c15、d15。
scanning similar to field scanning or other scanning methods may be used, and typically the energy represented by the preceding coefficient amplitudes is greater in the scanned sequence.
Step 1702, performing interleaving processing on the coefficients extracted from S1 and S2 to obtain the combined to-be-coded sequence:
a0、b0、c0、d0、a1、b1、c1、d1、...、a15、b15、c15、d15。
in this step, the interleaving process is performed similarly to the embodiment.
To this end, the combined sequence to be encoded shown in fig. 16 is obtained, and then the sequence to be encoded is encoded by an entropy encoding method suitable for the 8 × 8 transform coefficient block.
The embodiment of the invention also provides a decoding method corresponding to the coding compatible with the transformation of the blocks with different sizes, and the decoding processing is carried out on the coding result according to the process inverse to the coding, namely the decoding process corresponds to the coding process and is the inverse process of the coding process. Referring to fig. 18, fig. 18 is a flowchart of the decoding method, which may include the steps of:
step 1801, entropy decoding is performed on the encoding result to obtain a sequence to be decoded.
The sequences to be decoded correspond to the same sequence to be coded.
And 1802, performing reverse interleaving processing on the sequence to be decoded to obtain N subsequences.
The effect of the de-interleaving process is to re-reduce the sequence to be decoded into a plurality of sub-sequences.
Step 1803, performing inverse scanning processing on the N subsequences respectively to obtain N sub-transform coefficient blocks.
The effect of the inverse scan is to restore the coefficients in each sequence to the corresponding positions in the two-dimensional block.
The embodiment of the invention also provides a decoder corresponding to the encoder compatible with the block transform with different sizes. Referring to fig. 19, fig. 19 is a schematic diagram of the structure of the decoder. The decoder may include: the device comprises an entropy decoding unit, an inverse interleaving processing unit and an inverse scanning processing unit; wherein,
the entropy decoding unit is used for carrying out entropy decoding processing on the encoding result to obtain a sequence to be decoded and transmitting the information of the sequence to be decoded to the de-interleaving processing unit; the band code sequences corresponding to the sequences to be decoded are the same;
the device comprises an entropy decoding unit, a reverse interleaving unit and a reverse scanning unit, wherein the entropy decoding unit is used for decoding a sequence to be decoded;
and the inverse scanning processing unit is used for receiving the information of the N subsequences from the inverse interleaving processing unit and respectively performing inverse scanning processing on the N subsequences to obtain N sub-transformation coefficient blocks.
The implementation of the decoding process in the embodiment of the present invention is described by decoding the code in the first embodiment. The decoder decodes the received coding result, such as:
decoding the combination information of the sub-transformation coefficient block in the coding result to obtain the information such as the size of the block corresponding to the sequence to be decoded;
decoding the cbp information in the coding result, if the cbp is 0, then no more information about the current coding exists; if cbp is 1, continuing decoding;
decoding information of CbpSi (i is 1, 2, 3, 4), and acquiring Si corresponding to a sequence to be decoded;
decoding to obtain a sequence to be decoded, which adopts a Hadamard transform identifier and carries out Hadamard inverse transform on the sequence to be decoded to obtain an inverse transformed sequence to be decoded;
the interleaving mode identification is not decoded, so that the converted sequence to be decoded is subjected to reverse interleaving treatment according to a default interleaving mode to obtain a plurality of subsequences;
decoding the information of the scanning mode, carrying out inverse scanning processing on each subsequence, resetting each coefficient to the corresponding position of the original two-dimensional sub-transformation coefficient block, and ending the decoding of the sub-transformation coefficient block.
In summary, according to the coding and decoding scheme compatible with transform of different size blocks provided in the embodiments of the present invention, by interleaving the extracted coefficients from the plurality of small-sized sub-transform coefficient blocks, a coding sequence that can be processed by an entropy coding method suitable for the large-sized transform coefficient block is obtained, so that the entropy coding method suitable for the large-sized transform coefficient block can also be suitable for the small-sized transform coefficient block, and thus, in a coding system based on block coding of different size, such as a coding system incorporating ABT technology, under the condition of having an entropy coding method suitable for the large-sized transform coefficient block, it is not necessary to redesign the entropy coding method suitable for the small-sized transform coefficient block, and therefore, the design cost of coding can be reduced, and the design complexity can be reduced.
In addition, in the embodiment of the invention, because a plurality of sub-transform coefficient blocks can be coded simultaneously, the correlation among the blocks is further reduced, and the coding performance is improved. In addition, in the embodiment of the invention, a plurality of sub-transform coefficient blocks can be coded simultaneously, and compared with the case of coding the sub-transform coefficient blocks one by one, the frequency of reading the coded end of block (EoB) mark is reduced, thereby effectively improving the coding efficiency.

Claims (14)

1. A coding method compatible with different size block transforms, comprising:
scanning each of N sub-transform coefficient blocks obtained according to video image data to generate a sub-sequence composed of coefficients in the sub-transform coefficient block;
wherein N is a positive integer greater than or equal to 2, and an ith one of the N sub-transform coefficient blocks containsA coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1;
extracting coefficients in each subsequence, and performing interweaving processing on the extracted coefficients to generate a sequence to be coded;
using an apparatus comprising 2x×2yCoding the sequence to be coded by an entropy coding mode applicable to the transformation block of each coefficient;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than or equal to the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
2. The method of claim 1, wherein the step of interleaving the extracted coefficients comprises:
and arranging the coefficients into a sequence, and keeping the arrangement sequence of the coefficients originally belonging to the subsequences in the sequence to be the same as the arrangement sequence in the atomic sequence.
3. The method of claim 2, wherein the step of arranging the respective coefficients into a sequence comprises: and arranging the coefficients according to the arrangement trend of the frequencies corresponding to the coefficients from low to high.
4. A method according to claim 1, 2 or 3, wherein the step of generating the sequence to be encoded comprises:
the sequence formed by arranging the coefficients is used as the sequence to be coded; or,
and carrying out transformation processing on the sequence to obtain a sequence to be coded.
5. The method of claim 4, wherein the transformation process comprises: hadamard transform.
6. A method according to claim 1, 2 or 3, wherein the step of extracting coefficients in each sub-sequence comprises:
if the coefficients in the subsequence are not all zeros, the coefficients in the subsequence are extracted.
7. A method as claimed in claim 1, 2 or 3, characterized in that x-3 and y-3.
8. A method as claimed in claim 1, 2 or 3, wherein the coefficients are quantized coefficients.
9. A method for generating a sequence to be encoded, comprising:
scanning each of N sub-transform coefficient blocks obtained according to video image data to generate a sub-sequence composed of coefficients in the sub-transform coefficient block;
wherein N is a positive integer greater than or equal to 2, and an ith one of the N sub-transform coefficient blocks contains
Figure A2007101116850003C1
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1;
extracting coefficients in each subsequence, interleaving the extracted coefficients to generate a usable content 2x×2yThe coding sequence to be coded is coded by the entropy coding mode suitable for the transformation block of each coefficient;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than or equal to the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
10. An apparatus for generating a sequence to be encoded, comprising:
a subsequence generating unit, a to-be-coded sequence generating unit and an output unit; wherein,
a sub-sequence generating unit, which is used for scanning each sub-transformation coefficient block in N sub-transformation coefficient blocks obtained according to video image data, generating a sub-sequence consisting of coefficients in the sub-transformation coefficient block, and transmitting the generated sub-sequence information to a to-be-coded sequence generating unit; where N is a positive integer greater than or equal to 2, and the ith transform coefficient block contains
Figure A2007101116850003C2
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1;
a to-be-coded sequence generating unit for receiving the subsequence information from the subsequence generating unit, extracting the coefficients in each subsequence, interleaving the extracted coefficients, and generating a usable code containing 2x×2yThe coding sequence to be coded is coded by the entropy coding mode applicable to the transformation block of each coefficient, and the information of the coding sequence to be coded is transmitted to an output unit;
the output unit is used for receiving the information of the code sequence to be coded from the code sequence generating unit and outputting the information;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than or equal to the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
11. The apparatus of claim 10, wherein the unit for generating the sequence to be coded comprises:
the device comprises a coefficient extraction module, an interleaving processing module and a to-be-coded sequence generation module; wherein,
the coefficient extraction module is used for extracting coefficients needing to be subjected to interleaving processing from each subsequence and transmitting the extracted coefficient information to the interleaving processing unit;
the interleaving processing unit is used for receiving the coefficient information from the coefficient extraction module, arranging each coefficient into a sequence, keeping the arrangement sequence of the coefficients originally belonging to each subsequence in the sequence, keeping the same as the arrangement sequence in the atomic sequence, and transmitting the sequence information to the module for generating the sequence to be coded;
a to-be-coded sequence generating module, configured to receive the sequence information from the interleaving unit, and use the sequence as a to-be-coded sequence; or transforming the sequence to obtain the coding sequence to be coded.
12. An encoder compatible with different size block transforms, comprising: means for generating a sequence to be coded to be entropy coded and an entropy coding unit;
the device for generating the sequence to be coded to be entropy coded comprises: a subsequence generating unit and a to-be-coded sequence generating unit; wherein,
a sub-sequence generating unit, which is used for scanning each sub-transformation coefficient block in N sub-transformation coefficient blocks obtained according to video image data, generating a sub-sequence consisting of coefficients in the sub-transformation coefficient block, and transmitting the generated sub-sequence information to a to-be-coded sequence generating unit; where N is a positive integer greater than or equal to 2, and the ith transform coefficient block contains
Figure A2007101116850004C1
A coefficient, i 1, 2iAnd miIs a positive integer greater than or equal to 1;
a to-be-coded sequence generating unit for receiving the subsequence information from the subsequence generating unit, extracting the coefficients in each subsequence, interleaving the extracted coefficients, and generating a usable code containing 2x×2yThe coding sequence to be coded is coded by the entropy coding mode applicable to the transformation block of each coefficient, and the information of the coding sequence to be coded is transmitted to an output unit;
the output unit is used for receiving the information of the code sequence to be coded from the code sequence generating unit and outputting the information;
an entropy coding unit for receiving the information of the sequence to be coded from the output unit, using a code comprising 2x×2yCoding the sequence to be coded by an entropy coding mode applicable to the transformation block of each coefficient;
wherein x and y are positive integers greater than or equal to 2, and the transform coefficient block contains 2 coefficientsx×2yGreater than or equal to the sum of the number of coefficients contained in the N sub-transform coefficient blocks.
13. A decoding method corresponding to an encoding compatible with a transform of blocks of different sizes, for performing a decoding process on an encoding result in a process inverse to the encoding, comprising:
carrying out entropy decoding processing on the encoding result to obtain a sequence to be decoded;
performing reverse interleaving processing on the sequence to be decoded to obtain N subsequences;
and respectively carrying out inverse scanning processing on the N subsequences to obtain N sub-transformation coefficient blocks.
14. A decoder corresponding to an encoder compatible with different size block transforms, comprising: the device comprises an entropy decoding unit, an inverse interleaving processing unit and an inverse scanning processing unit; wherein,
the entropy decoding unit is used for carrying out entropy decoding processing on the encoding result to obtain a sequence to be decoded and transmitting the information of the sequence to be decoded to the de-interleaving processing unit;
the device comprises an entropy decoding unit, a reverse interleaving unit and a reverse scanning unit, wherein the entropy decoding unit is used for decoding a sequence to be decoded;
and the inverse scanning processing unit is used for receiving the information of the N subsequences from the inverse interleaving processing unit and respectively performing inverse scanning processing on the N subsequences to obtain N sub-transformation coefficient blocks.
CN 200710111685 2007-06-10 2007-06-10 Encoding/decoding method and device compatible with different block transformation Expired - Fee Related CN101321283B (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN 200710111685 CN101321283B (en) 2007-06-10 2007-06-10 Encoding/decoding method and device compatible with different block transformation
PCT/CN2008/071233 WO2008151560A1 (en) 2007-06-10 2008-06-06 Coding and decoding method, coder and decoder, and method and device for generating the sequences to be coded

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN 200710111685 CN101321283B (en) 2007-06-10 2007-06-10 Encoding/decoding method and device compatible with different block transformation

Publications (2)

Publication Number Publication Date
CN101321283A true CN101321283A (en) 2008-12-10
CN101321283B CN101321283B (en) 2010-04-07

Family

ID=40129254

Family Applications (1)

Application Number Title Priority Date Filing Date
CN 200710111685 Expired - Fee Related CN101321283B (en) 2007-06-10 2007-06-10 Encoding/decoding method and device compatible with different block transformation

Country Status (2)

Country Link
CN (1) CN101321283B (en)
WO (1) WO2008151560A1 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104041029A (en) * 2012-01-13 2014-09-10 高通股份有限公司 Determining contexts for coding transform coefficient data in video coding
CN105284110A (en) * 2013-07-31 2016-01-27 松下电器(美国)知识产权公司 Image coding method, and image coding device
CN106878748A (en) * 2010-08-17 2017-06-20 M&K控股株式会社 For the equipment of decoding moving picture
CN109996074A (en) * 2017-12-29 2019-07-09 富士通株式会社 Picture coding device, picture decoding apparatus and electronic equipment
CN110291792A (en) * 2017-01-11 2019-09-27 交互数字Vc控股公司 The ratio depending on block of asymmetric coding unit size
US20210211743A1 (en) 2010-04-13 2021-07-08 Ge Video Compression, Llc Coding of a spatial sampling of a two-dimensional information signal using sub-division
US11546641B2 (en) 2010-04-13 2023-01-03 Ge Video Compression, Llc Inheritance in sample array multitree subdivision
US11611761B2 (en) 2010-04-13 2023-03-21 Ge Video Compression, Llc Inter-plane reuse of coding parameters
US11734714B2 (en) 2010-04-13 2023-08-22 Ge Video Compression, Llc Region merging and coding parameter reuse via merging

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120009618A (en) * 2010-07-19 2012-02-02 에스케이 텔레콤주식회사 Method and Apparatus for Partitioned-Coding of Frequency Transform Unit and Method and Apparatus for Encoding/Decoding of Video Data Thereof

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6795584B2 (en) * 2002-10-03 2004-09-21 Nokia Corporation Context-based adaptive variable length coding for adaptive block transforms
JP3679083B2 (en) * 2002-10-08 2005-08-03 株式会社エヌ・ティ・ティ・ドコモ Image encoding method, image decoding method, image encoding device, image decoding device, image encoding program, image decoding program
CN1286322C (en) * 2004-08-06 2006-11-22 联合信源数字音视频技术(北京)有限公司 Quantizing device for low complicated degree integer 4x4 discrete cosine transform and its realizing method
US7839933B2 (en) * 2004-10-06 2010-11-23 Microsoft Corporation Adaptive vertical macroblock alignment for mixed frame video sequences
CN100345449C (en) * 2005-03-18 2007-10-24 清华大学 Method of entropy coding of transformation coefficient in image/video coding

Cited By (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11734714B2 (en) 2010-04-13 2023-08-22 Ge Video Compression, Llc Region merging and coding parameter reuse via merging
US11611761B2 (en) 2010-04-13 2023-03-21 Ge Video Compression, Llc Inter-plane reuse of coding parameters
US11546641B2 (en) 2010-04-13 2023-01-03 Ge Video Compression, Llc Inheritance in sample array multitree subdivision
US11546642B2 (en) 2010-04-13 2023-01-03 Ge Video Compression, Llc Coding of a spatial sampling of a two-dimensional information signal using sub-division
US11983737B2 (en) 2010-04-13 2024-05-14 Ge Video Compression, Llc Region merging and coding parameter reuse via merging
US11910030B2 (en) 2010-04-13 2024-02-20 Ge Video Compression, Llc Inheritance in sample array multitree subdivision
US11910029B2 (en) 2010-04-13 2024-02-20 Ge Video Compression, Llc Coding of a spatial sampling of a two-dimensional information signal using sub-division preliminary class
US11765362B2 (en) 2010-04-13 2023-09-19 Ge Video Compression, Llc Inter-plane prediction
US11553212B2 (en) 2010-04-13 2023-01-10 Ge Video Compression, Llc Inheritance in sample array multitree subdivision
US11765363B2 (en) 2010-04-13 2023-09-19 Ge Video Compression, Llc Inter-plane reuse of coding parameters
US12010353B2 (en) 2010-04-13 2024-06-11 Ge Video Compression, Llc Inheritance in sample array multitree subdivision
US11736738B2 (en) 2010-04-13 2023-08-22 Ge Video Compression, Llc Coding of a spatial sampling of a two-dimensional information signal using subdivision
US20210211743A1 (en) 2010-04-13 2021-07-08 Ge Video Compression, Llc Coding of a spatial sampling of a two-dimensional information signal using sub-division
CN106878748A (en) * 2010-08-17 2017-06-20 M&K控股株式会社 For the equipment of decoding moving picture
CN106878748B (en) * 2010-08-17 2019-12-06 M&K控股株式会社 Apparatus for decoding moving picture
CN104041029A (en) * 2012-01-13 2014-09-10 高通股份有限公司 Determining contexts for coding transform coefficient data in video coding
CN104041029B (en) * 2012-01-13 2018-03-06 高通股份有限公司 It is determined that it is used for the context for decoding transform coefficient data in video coding
CN105284110A (en) * 2013-07-31 2016-01-27 松下电器(美国)知识产权公司 Image coding method, and image coding device
CN105284110B (en) * 2013-07-31 2019-04-23 太阳专利托管公司 Image encoding method and picture coding device
US11533502B2 (en) 2017-01-11 2022-12-20 Interdigital Madison Patent Holdings, Sas Asymmetric coding unit size block dependent ratio
CN110291792A (en) * 2017-01-11 2019-09-27 交互数字Vc控股公司 The ratio depending on block of asymmetric coding unit size
CN109996074A (en) * 2017-12-29 2019-07-09 富士通株式会社 Picture coding device, picture decoding apparatus and electronic equipment

Also Published As

Publication number Publication date
WO2008151560A1 (en) 2008-12-18
CN101321283B (en) 2010-04-07

Similar Documents

Publication Publication Date Title
CN101321283B (en) Encoding/decoding method and device compatible with different block transformation
KR101129655B1 (en) Fast codec with high compression ratio and minimum required resources
CN1108063C (en) MPEG2 moving picte encoding.decodind system
KR101874945B1 (en) Method and apparatus for improved entropy encoding and decoding
KR101313952B1 (en) Compressed domain system and method for compression gains in encoded data
WO2002098138A2 (en) Method and apparatus for coding of wavelet transformed coefficients
WO2007030788A2 (en) Reduced dimension wavelet matching pursuits coding and decoding
JP2003250157A (en) Optimal scanning method for transform coefficients in coding/decoding of still image and moving image
WO2007030784A2 (en) Wavelet matching pursuits coding and decoding
CN1347621A (en) Reducing &#39;blocking picture&#39; effects
KR100561587B1 (en) Method and apparatus for three-dimensional wavelet transform
JP2000341689A (en) Wavelet inverse converting device and its method and wavelet decoding device and its method
US5426673A (en) Discrete cosine transform-based image coding and decoding method
JP2723867B2 (en) Image signal decoding device
KR100451731B1 (en) IDCT Apparatus
CN102355580B (en) Hexagonal transformation method and device applied to picture coding and video coding
JP2005229441A (en) Image coding equipment and method therefor, and image decoding equipment and method therefor
JP2000165873A (en) Compression method for moving picture information and its system
JP2839987B2 (en) Image signal decoder
JP2004048212A (en) Digital image coder, coding method and program
JP2993212B2 (en) How to combine images
US20100014764A1 (en) Image encoding/decoding devices and image band decomposing/composing devices
JP2002335532A (en) Picture prediction encoding method and its device
Muharam et al. Efficient Architecture for 3-D Medical Image Compression Using CABAC
CN115209146A (en) Video encoding and decoding method and device, computer readable medium and electronic equipment

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20100407

Termination date: 20160610

CF01 Termination of patent right due to non-payment of annual fee