CN101553988B - Video encoding method, video encoding device, and video encoding program - Google Patents
Video encoding method, video encoding device, and video encoding program Download PDFInfo
- Publication number
- CN101553988B CN101553988B CN2007800455397A CN200780045539A CN101553988B CN 101553988 B CN101553988 B CN 101553988B CN 2007800455397 A CN2007800455397 A CN 2007800455397A CN 200780045539 A CN200780045539 A CN 200780045539A CN 101553988 B CN101553988 B CN 101553988B
- Authority
- CN
- China
- Prior art keywords
- arithmetic coding
- mentioned
- calculating
- bit number
- coding
- 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.)
- Expired - Fee Related
Links
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000006243 chemical reaction Methods 0.000 claims abstract description 36
- 238000013139 quantization Methods 0.000 claims description 36
- 230000008569 process Effects 0.000 claims description 15
- 230000009466 transformation Effects 0.000 claims description 5
- 230000000052 comparative effect Effects 0.000 claims 2
- 239000000872 buffer Substances 0.000 description 50
- 238000012545 processing Methods 0.000 description 38
- 230000015654 memory Effects 0.000 description 22
- 238000010586 diagram Methods 0.000 description 19
- 238000012546 transfer Methods 0.000 description 14
- 230000008859 change Effects 0.000 description 9
- 230000005012 migration Effects 0.000 description 9
- 238000013508 migration Methods 0.000 description 9
- 238000009825 accumulation Methods 0.000 description 7
- 238000004364 calculation method Methods 0.000 description 5
- 230000000694 effects Effects 0.000 description 4
- 230000006870 function Effects 0.000 description 4
- 230000003044 adaptive effect Effects 0.000 description 3
- 230000015572 biosynthetic process Effects 0.000 description 3
- 230000004075 alteration Effects 0.000 description 2
- 230000008676 import Effects 0.000 description 2
- 230000010365 information processing Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000011156 evaluation Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- 238000004321 preservation Methods 0.000 description 1
- 201000007094 prostatitis Diseases 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
- H03M7/40—Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code
- H03M7/4006—Conversion to or from arithmetic code
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/12—Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/102—Methods 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/13—Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/134—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
- H04N19/146—Data rate or code amount at the encoder output
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
- H04N19/169—Methods 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/17—Methods 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/176—Methods 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
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- Discrete Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
A video encoding method includes: a digital-sequence conversion step for converting image block encoded data into a digital-sequence symbol; a binary arithmetic encoding step for subjecting each digital-sequence symbol to arithmetic encoding in accordance with a context; an estimation step for estimating the number of bits required for the binary arithmetic encoding of the encoded data for the image block; an encoded data decision step for deciding whether to subject the encoded data to the binary arithmetic encoding in accordance with the number of bits estimated by the estimation step for output; and a context update step for updating the context corresponding the encoded data decided to be subjected to the binary arithmetic encoding for output by the encoded data decision step and not updating the context corresponding to the encoded data decided not to be subjected to the binary arithmetic encoding for output by the encoded data decision step. The estimation step uses the maximum value of the number of arithmetic encoding output bits for the input symbol to the binary arithmetic encoding as the aforementioned number of bits.
Description
Technical field
The present invention relates to utilize method for video coding, video coding apparatus and the video coding program that drives CABAC (the Context-based Adaptive binary Arithmetic Coding) technology of binary arithmetic coding engine (table-driven binary arithmetic coding engine) according to table.
Background technology
Video coding apparatus thus, generates coded data, i.e. bit stream will after the moving picture signal digitlization of outside input, following the encoding process of the image encoding mode of defined.
As one of image encoding mode, H.264/AVC (AdvancedVideo Coding) (with reference to non-patent literature 1) of ITU-T suggestion arranged.H.264/AVC be equivalent to ISO/IEC14496-10 AVC.In H.264/AVC; To the syntactic element (SE) as the coded data below macro block (MB) layer, the CABAC (Context-based Adaptive binary ArithmeticCoding) of the CAVLC (Context-based Adaptive Variable Length Coding) of selection Huffman encoding system or the coding system that counts carries out entropy coding.And, among the 7.3.5 Macroblocklayer syntax of non-patent literature 1 relevant for the record of the SE of MB layer.In addition, below will in H.264/AVC, the content of defined be called H.264 specification.
Compare with the situation of selecting CAVLC, carry out entropy coding, can obtain the effect of the encoding amount of decreased average about 15% through selecting CABAC.In addition, as the reference pattern of encoder H.264/AVC, united mode (Joint Model) mode known (below, be called general video coding apparatus.)。
With reference to Fig. 9, to formation and the work of the picture frame that is digitized as the general video coding apparatus of input and output bit flow is described.Video coding apparatus shown in Figure 9 has original image frame buffer 10, MB code device 20, rate control device 30 and decoding image frame buffers 40.At picture frame is under the situation of QCIF (Quarter CommonIntermediate Format), and original image frame buffer 10 is preserved view data shown in figure 10.Picture frame is divided into the luminance pixel of 16 * 16 pixels that are called MB and is the block of pixels of inscape with the aberration pixel (Cr and Cb) of 8 * 8 pixels.
Usually, MB code device 20 is encoded MB with the order from the raster scan left to bottom right of picture frame.
In order to use the decoded picture based on MB code device 20 in the coding (prediction) afterwards, decoded picture frame buffer 40 in the moment that MB code device 20 has been accomplished the coding of 1MB, reads in decoded picture and preservation based on MB code device 20.
Next, internal structure and the work to MB code device 20 describes.As shown in Figure 9, MB code device 20 has: read (Read) device 210, prediction unit 220, video coding (Venc) device 230, entropy coding (EC) device 240.Read (read) device 210 and comprise original image MB memory 211 and with reference to video memory 212.Video coding apparatus 230 comprises conversion/quantizer 231, inverse guantization (IQ)/inverse converter 232 and decoded picture MB memory 233.Entropy coding device 240 comprises that entropy coder 241, output buffer 242, control device 243 and context duplicate memory 244.
In original image MB memory 211, preserve the image (below, be called original image org) of the coded object MB in the picture frame of being preserved in the original image frame buffer 10.In with reference to video memory 212, preserve in the image of being preserved in the decoded picture frame buffer 40, required image when predictive coding object MB encodes (below, be called) with reference to image ref.
Prediction has two kinds of infra-frame prediction and inter predictions.Predicted picture under infra-frame prediction/inter prediction and prediction error image are described.If the execution infra-frame prediction, then with reference to showing constantly identical with present coded object picture frame former coded image, the pixel that is utilized in (direction in space) in the picture frame is related, generation forecast image pred.As an example; The various patterns of the infra-frame prediction of 4 * 4 block of pixels size after the key diagram of Figure 11 has been represented MB more carefully cut apart (about the infra-frame prediction under aberration or other situation, with reference to 8.3 joint Intra prediction process of non-patent literature 1).
Intra_dir among Figure 11 (A)~(I) is the intra-frame prediction directioin parameter of the direction etc. of expression infra-frame prediction.If the selection infra-frame prediction, then prediction unit 220 is just according to intra-frame prediction directioin parameter intra_dir generation forecast image pred.Explanation for the back is defined as formula 1 with infra-frame prediction.
(formula 1)
pred=intra_prediction(ref,intra_dir)
In formula 1, intra_prediction () is according to intra-frame prediction directioin parameter intra_dir, by the function with reference to predicted picture in the image ref delta frame.
If the execution inter prediction then with reference to showing constantly different with present coded object picture frame former decoded pictures, utilizes the association of (time orientation) between picture frame, generation forecast image pred.As an example of inter prediction,, the inter prediction of 16 * 16 block of pixels is described (about the inter prediction of other block of pixels sizes etc., with reference to 8.4 joint Intra prediction process of non-patent literature 1) with reference to the key diagram of Figure 12.
The Prediction Parameters that motion vector mv_x shown in Figure 12, mv_y are inter prediction.If the selection inter prediction, then prediction unit 220 is just according to motion vector mv_x, mv_y generation forecast image pred.For later explanation, inter prediction is defined as formula 2.
(formula 2)
pred=inter_prediction(ref,mv_x,mv_y)
In formula 2, inter_prediction () is according to motion vector mv_x, mv_y, by the function with reference to predicted picture between image ref delta frame.In addition, H.264 in the specification, the pixel precision of motion vector is 1/4 pixel.
(formula 3)
(formula 4)
(formula 5)
(formula 6)
pe
idx(y,x)=org(b4y
idx+y,b4x
idx+x)-pred(b4y
idx+y,b4x
idx+x)
(formula 7)
λ(QP)=2
(QP-12)/6
(formula 8)
(b4x
idx,b4y
idx){0≤b4x
idx≤12,0≤b4y
idx≤12}
In addition, formula 3 is formula of the calculating of the prediction and evaluation value in explaining H.264.Formula 4 is formula of the calculating of the SATD (idx) in the explanation formula 3.Formula 5 is formula of the calculating of the H (idx) in the explanation formula 4.Formula 6 is peidx (y, the formula of calculating x) in the explanation formula 5.Formula 7 is formula of the calculating of the λ (QP) in the explanation formula 3.Formula 8 is the b4x in the explanation formula 6, the formula of b4y.In addition, the QP in formula 3~formula 7 representes: the quantization parameter of MB; Idx representes the numbering of 4 * 4 modules that MB shown in Figure 10 is inner; B4x, b4y represent the inner coordinate corresponding to the MB in the upper left corner of 4 * 4 modules of idx.
Next, conversion/quantizer 231 is the predicated error pe that prediction unit 220 provides, and uses the module unit also thinner than MB (below, be called conversion block) to carry out frequency inverted, changes to frequency domain from transform of spatial domain.The prediction error image that is switched to frequency domain is called conversion coefficient T.
In addition, conversion/quantizer 231 with conversion coefficient T to carry out quantization with the corresponding quantization width of quantization parameter QP that is provided by rate control device 30.Be commonly referred to as conversion quantization value L by quantized conversion coefficient.For later coding, conversion quantization value L is provided for inverse guantization (IQ)/inverse converter 232, and in order to form bit stream, conversion quantization value L is provided for entropy coding device 240.
Conversion quantization value L to being provided for inverse guantization (IQ)/inverse converter 232 explains later work.
Inverse guantization (IQ)/inverse converter 232 will carry out inverse guantization (IQ) by the conversion quantization value L that conversion/quantizer 231 is provided, and the step of going forward side by side carries out the frequency inverse conversion and turns back to original spatial domain.The prediction error image that is returned original spatial domain is called reconstruct prediction error image pe_rec.
In the reconstruct prediction error image pe_rec that is provided by inverse guantization (IQ)/inverse converter 232; As to shown in the formula 9 that describes with reference to image in the specification H.264; The predicted picture pred that is provided by prediction unit 220 is added in calculating together, and is kept in the decoded picture MB memory 233 as decoded picture rec.Be stored in the decoded picture rec in the decoded picture MB memory 233, read in by prediction unit 220 or decoded picture frame buffer 40 in the back and become with reference to image.
(formula 9)
rec=pred+pe_rec
Next, to the conversion quantization value L that offers entropy coding device 240 later work is described.
The input data that 1MB is all are carried out entropy coding; The upper limit bit number that is no more than defined in the specification H.264 at this output bit number (for example; With reference to the Annex A of non-patent literature 1 Levels A.3; Then be 3200 bits) situation under, control device 243 will be exported as the coded data of MB according to the bit that the output buffer control signal is saved in the output buffer 242.In addition, below will be H.264 in the specification upper limit bit number of every 1MB of defined be called setting.
The moment that surpasses the setting of MB bit number at the output bit number that the input data of 1MB has been carried out entropy coding; Control device 243 is according to the entropy coding control signal; Temporarily stop the work of entropy coder 241, according to the output buffer control signal that the bit of output buffer 242 is all discarded.That is to say that the content of not inciting somebody to action output buffer 242 at this moment is as coded data.After bit was discarded, control device 243 started entropy coder 241 according to the entropy coding control signal, and encoding input image data again are to reach the bit number below the setting.
Next, internal structure and the work to the entropy coder 241 under the situation of having selected CABAC as entropy coding describes.Shown in figure 13, entropy coder 241 is to be made up of the entropy coding portion 2416 that comprises binarization device 2411, binary arithmetic coding device 2412 and context modeling device 2413, switch 2414 and switch 2415.
To the coding work again of the PCM through the entropy coding device, describe.
As encoding process again, will not use processing that the original image of above-mentioned conversion process encodes again through PCM and be called as original image PCM encode again (with reference to patent documentation 1).If utilize original image PCM to encode again; Then can be with conversion or all inoperative image of prediction; Also encode with certain bit number of the setting that is lower than the MB bit number in undistorted ground, so, we can say the not only processing time of the entropy coding device of code device; In the processing time of the entropy decoding device of decoding side, also can guarantee within a certain period of time.
In addition, encode as not following again, observe the method for the setting of MB bit number, following method is arranged, that is, and the MB output bit number of prediction MB before CABAC, and switch to the pcm encoder (with reference to patent documentation 2) that has utilized coded image.
Below, the encoding process of detailed description CABAC.
Shown in figure 14, in order to realize CABAC, for example, constitute by binarizer 101, switch 111, binary arithmetic coder 102 and 103 of context modeler.In addition, structure shown in Figure 14 is equivalent to the structure of entropy coding portion 2416 shown in Figure 13.Context modeler 103 was used the QP of original M B be initialised (with reference to the 9.3.1Initialisation process of non-patent literature 1) before the MB in fragment (slice) prostatitis handles.
The SE that binarizer 101 will be transfused to according to the rule with specification institution converts binary sequence (binary sequence) (about the conversion of SE and binary sequence corresponding, with reference to the 9.2.3Binarization process of non-patent literature 1) to.Next; Binary arithmetic coder 102; Context that utilization is provided by context modeler 103 (big probability symbol (MPS)) and state index (state_idx), each symbol (bin) of the binary sequence that will be provided by binarizer 101 carries out binary arithmetic coding.
In addition, contextual MPS is corresponding to the valMPS in the non-patent literature 1, and state_idx is corresponding to the pStateIdx in the non-patent literature 1.Usually, in binary arithmetic coding, according to the probability of occurrence ρ of symbol cut apart the numerical value line [0,1) the binary fraction value of the interval representative point of last part is carried out bit output as final code word.The work of the general binary arithmetic coding of the input of 3 symbols (110) is for example shown in Figure 15.
In the binary arithmetic coding of specification H.264, the probability of occurrence (rLPS (i)) of the small probability symbol (LPS) when existing bin handles is corresponding to the ρ among Figure 15.RLPS (i) can represent with following formula 10.
(formula 10)
rLPS(i)=range?Tab?LRS[state_idx][qCodIrangeIdx]/Rrange(i)
At this; Erange (i) (corresponding to the codIRange in the non-patent literature) is made as the existing bin arithmetic scope when handling; The arithmetic scope index that qCodIRangeIdx is obtained as the high order bit from Erange (i), with rangeTabLPS [64] [4] (table9-35 in the non-patent literature 1) as small probability symbolic range table (with reference to the 9.3.4 Arithmetic encoding process (informative) of non-patent literature 1).
Binary arithmetic coder 102 uses rLPS (i); Be equivalent to the processing (with reference to the 9.3.4.2 Encodingprocess for a binary decision (informative) of non-patent literature 1) of the calculation of formula 11 and 12; Thus, accomplish the processing of the binary arithmetic coding that is directed against 1bin.At this, the arithmetic lower limit when Elow (i) (corresponding to the codILow in the non-patent literature 1) handles as existing bin.Having as rLPS (i) usually becomes the Bypass of fixed value encoding (with reference to the 9.3.4.4 Bypass Encoding process for a binarydecisions (informative) of non-patent literature 1).
(formula 11)
(formula 12)
In addition; In the binary arithmetic coding of specification H.264; For the arithmetic coding of the frequency of occurrences that meets incoming symbol, when the binary arithmetic coding of each 1bin is accomplished, upgrade the contextual MPS of the binary arithmetic coding that is used for bin according to following formula 13; Simultaneously, upgrade the value of contextual state_idx according to state migration table (Table9-36 of non-patent literature 1).
(formula 13)
As stated; H.264 the binary arithmetic coding of specification is according to the probability of small probability symbolic range table and state migration table management small probability symbol; So, be called as table and drive binary arithmetic coding (table-driven binary arithmetic coding).
Through all bin that are transfused to are carried out above-mentioned binary arithmetic coding one by one, can obtain arithmetic coding output bit (bit stream).
Patent documentation 1: TOHKEMY 2006-93777 communique
Patent documentation 2: Japan special hope 2005-300933 communique
Non-patent literature 1:ITU-T advises H.264 Advanced video coding forgeneric audiovisual services, in May, 2005 (Prepublishedversion)
Invent the 1st problem to be solved and provide and a kind ofly consider because the change of the output bit that arithmetic scope or context cause, extrapolate the peaked method of the output bit number of CABAC.Advising need not to follow PCM to encode again, and observing in the patent documentation 2 of method of setting of MB bit number,, often considering to calculate precision about the reckoning of the MB output bit number of CABAC.Specifically; In the method that patent documentation 2 is put down in writing, there is following problem, promptly; Owing to be directed against the number of the incoming symbol (bin) of CABAC; Utilize the simple linear MB output bit number of calculating CABAC that calculates, therefore, can not consider that the output bit number can be because arithmetic coding scope or contextual cause change.
Invent the 2nd problem to be solved and provide a kind of bin and context, correspondingly select the method that suitable projectional technique is calculated the output bit number according to CABAC.In the reckoning of the change of having considered the output bit number; If use the projectional technique of high accuracy to all bin; Though then can carry out the reckoning of the highest output bit number of reliability, can generation device area and this other problem of computational throughput increase.
Summary of the invention
Promptly; The objective of the invention is: provide a kind of output bit number of considering to change owing to arithmetic scope or context; The maximum to the arithmetic coding output bit number of 1 symbol or a plurality of symbols is calculated on high accuracy ground, carries out method for video coding, video coding apparatus and the video coding program of video coding.
In addition; Another object of the present invention is: provide a kind of can the minimizing to follow the output bit number to calculate and the calculation amount that causes reduces this problem, and high-quality, high accuracy ground are exported method for video coding, video coding apparatus and the video coding program of the reckoning of bit number.
The present invention who solves above-mentioned problem is a kind of method for video coding, it is characterized by, and has: the binary sequence switch process that the coded data of image block is converted to the symbol of binary sequence; Based on context each symbol of binary sequence is carried out the binary arithmetic coding step of arithmetic coding; Calculate the reckoning step of bit number required when coded data to image block is by binary arithmetic coding; According to the bit number of being calculated in the above-mentioned reckoning step, whether decision carries out the encoded data decision step that binary arithmetic coding is exported to above-mentioned coded data; And to upgrading, to the updating context step of not upgrading with the corresponding above-mentioned context of coded data that in above-mentioned encoded data decision step, has determined not carry out binary arithmetic coding output with the corresponding above-mentioned context of coded data that in above-mentioned encoded data decision step, has determined to carry out binary arithmetic coding output.In above-mentioned reckoning step, will to the maximum of the arithmetic coding output bit number of the incoming symbol of binary arithmetic coding as above-mentioned bit number.
In addition, the present invention who solves above-mentioned problem is a kind of video coding apparatus, it is characterized by, and have: binary sequence converter section, its coded data with image block convert the symbol of binary sequence to; Binary arithmetic coding portion, based on context it carry out arithmetic coding to each symbol of binary sequence; Reckoning portion, it calculates bit number required when coded data to image block is by binary arithmetic coding; Encoded data decision portion, the bit number that it is calculated according to above-mentioned reckoning portion, whether decision carries out binary arithmetic coding output to above-mentioned coded data; With updating context portion; It has been to having determined the corresponding above-mentioned context of coded data that carries out binary arithmetic coding output to upgrade with above-mentioned encoded data decision portion, to having determined the corresponding above-mentioned context of coded data that does not carry out binary arithmetic coding output not upgrade with above-mentioned encoded data decision portion.Above-mentioned reckoning portion will to the maximum of the arithmetic coding output bit number of the incoming symbol of binary arithmetic coding as above-mentioned bit number.
In addition, the present invention who solves above-mentioned problem is a kind of video coding program.It is characterized by, computer is handled below carrying out: the binary sequence conversion process converts the coded data of image block to the symbol of binary sequence; Binary arithmetic coding is handled, and based on context each symbol to binary sequence carries out arithmetic coding; Calculate to handle, calculate bit number required when coded data to image block is by binary arithmetic coding; Encoded data decision is handled, the bit number of being calculated in handling according to above-mentioned reckoning, and whether decision carries out binary arithmetic coding output to above-mentioned coded data; And updating context is handled; To upgrading, to not upgrading with in above-mentioned encoded data decision is handled, having determined the corresponding above-mentioned context of coded data that does not carry out binary arithmetic coding output with in above-mentioned encoded data decision is handled, having determined the corresponding above-mentioned context of coded data that carries out binary arithmetic coding output.In above-mentioned reckoning is handled, execution will be exported the processing of the maximum of bit number as above-mentioned bit number to the arithmetic coding to the incoming symbol of binary arithmetic coding.
The 1st effect of the present invention be, a kind of method for video coding, video coding apparatus and video coding program of the output bit number in can the arithmetic coding of reliability highland estimation CABAC can be provided.Its reason is: because can be according to the scope of arithmetic coding or the change of context estimation output bit number.
The 2nd effect is; Obtained the estimation of the high output bit number of the reliability of the 1st effect through utilization; And use to observe and in the method for video coding of specification H.264, not follow the methods such as setting of the MB bit number of coding again, a kind of method for video coding, video coding apparatus and video coding program of high-quality H.246 specification can be provided.Its reason is: because can the high estimation of application reliability; So can reduce the number of coded bits part unnecessary with respect to the setting of MB bit number; For example, can suppress because the method for alligatoring quantization parameter etc. makes the method for observing of setting of the image quality variation of the video that is encoded.
Description of drawings
Fig. 1 be among the CABAC state_idx and ρ LPS concern key diagram.
Fig. 2 is that expression is used for realizing the block diagram according to the structure of the entropy coding portion of the CABAC of the arithmetic coding output bit number projectional technique of the video encoder of the 1st execution mode of the present invention.
Fig. 3 is the flow chart of the work of expression entropy coding portion shown in Figure 2.
Fig. 4 is the block diagram of the structure of the binary arithmetic coding maximum number bits calculator in expression the present invention the 2nd execution mode.
Fig. 5 is the flow chart of the work of expression binary arithmetic coding maximum number bits calculator shown in Figure 4.
Fig. 6 is that expression is used for realizing the block diagram according to the structure of the entropy coding portion of the CABAC of the arithmetic coding output bit number projectional technique of the video encoder of the 3rd execution mode of the present invention.
Fig. 7 is the flow chart of the work of expression entropy coding portion shown in Figure 6.
Fig. 8 is the block diagram that expression can realize the structure of information processing system of the present invention.
Fig. 9 is the block diagram of the structure of the general video coding apparatus of explanation.
Figure 10 is the key diagram of the structure of key diagram picture frame (YUV420 form).
Figure 11 is the key diagram of an example of explanation infra-frame prediction.
Figure 12 is the key diagram of an example of explanation inter prediction.
Figure 13 is the key diagram that explanation PCM encodes again.
Figure 14 is the block diagram of the structure of the expression general entropy coding portion that is used to realize CABAC.
Figure 15 is the key diagram of the work example of explanation binary arithmetic coding.
The explanation of symbol
101 binarizer
102 binary arithmetic coders
103 context modeler
104 bin buffers
105 binary arithmetic coding maximum number bits calculators
106 the 2nd context modeler
107 contexts duplicate memory
110 switch portion (PCM is code switch again)
1050 binary arithmetic coding maximum number bits calculators
1051 1bin unit's calculators
The calculator of bin unit more than 1052
1053 accumulation calculating devices
1054 switch portion (unit calculator switch)
1055 switch portion (accumulation calculating device switch)
Embodiment
Execution mode of the present invention is described.
As stated, through using rLPS (i), can be with the arithmetic coding output bit number (cabac_bits (i)) of the moment that is directed against existing bin (i number bin), the comparison through existing bin and MPS calculates with formula 14.Formula 14 is to be used to calculate the formula from the bit number of 1bin output through CABAC.
(formula 14)
At this, in specification H.246, have following 2 points in mind, that is, Erange (i) shows with fixing bit accuracy (9 bit), and rangeTabLPS [64] [4] is the fixed value according to specification specifies.Thus; Even the value of following arithmetic scope Erange (i) is uncertain condition (condition 1); For contextual state_idx, maximum that rLPS (i) can obtain (max_rLPS (state_idx)) and minimum value (min_rLPS (state_idx)) are also confirmed.That is, can correctly calculate maximum (max_cabac_bits (i)) with respect to the cabac_bits (i) of existing bin according to formula 15.Formula 15 is to be used for calculating through CABAC at 1 time peaked formula by the bit number of 1bin output of condition.
(formula 15)
That is to say; In CABAC, carry out the initialization of contextual state_idx and MPS with original M B, the intermediate buffer of preserving bin is set between binarization and binary arithmetic coding; Before binary arithmetic coding; Through to being kept at each bin in the intermediate buffer, carry out the calculating of formula 15 and calculate based on the state_idx migration of state migration table, can correctly calculate the bin that preserves in the intermediate buffer; That is, to the maximum of the arithmetic coding output bit number of the SE of MB layer.
And; The not only following arithmetic scope Erange (i) is even following contextual state_idx is uncertain condition (condition 2), in specification H.264; If being conceived to state_idx is managed through the state migration table; In addition, the rLPS to state_idx changes (Fig. 1, the ρ LPS of the longitudinal axis of coordinate diagram is corresponding to rLPS) this 2 point continuously; Then the maximum (max_sum_cabac_bits) to the arithmetic coding output bit number of the many bin in the condition 2 is: until the value of the state_idx of current time becomes till 0, import LPS continuously and the bit number that produces during with state=0 MPS continue counter-rotating and the total of the bit number of generation.In addition, Fig. 1 is the figure of the relation of state_idx (transverse axis) and the ρ LPS (longitudinal axis) of explanation in CABAC.If with the bin number be made as B, with the value of the state_idx of current time be made as s0 (s0=62 is maximum output bit number), will import LPS continuously, maximum bin number till from state=s0 to state=0 is made as L, then can calculate max_sum_cabac_bits according to formula 16 and formula 17.And, because the maximum of F (ρ) is 1 (ρ=0.5), so also can use with the formula 18 after formula 16 simplification.Formula 16 is to be used for calculating through CABAC condition 2 times, from the peaked formula of the bit number of many bin outputs.Formula 17 is to be used for the formula of the F (ρ) in the computing formula 16.
(formula 16)
(formula 17)
F(ρ)=ρlog
2(-ρ)+(1-ρ)log
2(-(1-ρ))
(formula 18)
Because formula 16, formula 18 the 1st is the summation of minimum value of the rLPS (state) of each state during the state migration of defined, so be the minimum value of the summation of the rLPS (state) during the state migration of defined.
Sum up above content:
Even the value of following arithmetic scope Erange (i) is uncertain, also can use formula 15 to calculate maximum to the arithmetic coding output bit number of 1bin.
Can know, though the not only following arithmetic scope Erange (i), and also following contextual state_idx is also uncertain, can use formula 16 or 18 to calculate the maximum value calculation to the arithmetic coding output bit number of many bin.
The present invention is based on above-mentioned 2 facts; In method for video coding, video coding apparatus and video coding program; Consider that the output bit number can be because arithmetic scope or context and change has realized calculating accurately the peaked arithmetic coding output bit number projectional technique to the arithmetic coding output bit number of 1bin or many bin.
That is, being characterized as of method for video coding of the present invention has: the binary sequence switch process that the coded data of image block is converted to the symbol of binary sequence; Based on context each symbol of binary sequence is carried out the binary arithmetic coding step of arithmetic coding; Calculate the reckoning step of bit number required when coded data to image block is by binary arithmetic coding; According to calculating the bit number of calculating in the step, whether decision carries out binary arithmetic coding to coded data and the encoded data decision step exported; With to upgrading, to the updating context step of not upgrading with the corresponding context of coded data that in the encoded data decision step, has determined not carry out binary arithmetic coding output with the corresponding context of coded data that in the encoded data decision step, has determined to carry out binary arithmetic coding output.In calculating step, will be to maximum from bit number to the arithmetic coding of the incoming symbol of binary arithmetic coding that export as bit number.
Method for video coding also can constitute like this,, in calculating step, through the calculating of 1 symbolic unit, obtains the maximum of arithmetic coding output bit number that is, and the minimum value of small probability symbol appearing probability has been used in the calculating of above-mentioned 1 symbolic unit.
Method for video coding also can constitute like this; Promptly; In calculating step; Through the calculating of a plurality of symbolic units, obtain the maximum of arithmetic coding output bit number, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur.
Method for video coding also can constitute like this; That is, in calculating step, through the calculating of 1 symbolic unit; Calculating with a plurality of symbolic units; Obtain the maximum of arithmetic coding output bit number, the minimum value of small probability symbol appearing probability has been used in the calculating of above-mentioned 1 symbolic unit, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur.
Method for video coding also can constitute like this, has: calculate the conversion quantization step that image block is transformed into frequency domain and quantized conversion quantization value; With output image block is carried out non-entropy coding and (do not used entropy coding; And encode as unpacked data) the non-entropy coding step of data; In the encoded data decision step; When the bit number of calculating surpasses under the situation of defined value, with the coded data of PCM pattern header decision, in non-entropy coding step as output; After through the binary arithmetic coding step PCM pattern header being carried out arithmetic coding output, will change the quantization value and the image of the image block that obtains or the original image piece before the applied transformation quantization has carried out the PCM data of non-entropy coding and exports to reconstruct.
Video coding apparatus of the present invention is characterized by, and has: binary sequence converter section (, realizing) with binarizer 101 as an example, and its coded data with image block converts the symbol of binary sequence to; Binary arithmetic coding portion (, realizing) with binary arithmetic coder 102 as an example, based on context it carry out arithmetic coding to each symbol of binary sequence; Reckoning portion (, realizing) with binary arithmetic coding maximum number bits calculator 105,1050 as an example, it calculates bit number required when coded data to image block is by binary arithmetic coding; Encoded data decision portion (, realizing) with binary arithmetic coder 102 as an example, the bit number that it is calculated according to reckoning portion, whether decision carries out binary arithmetic coding output to coded data; With updating context portion (as an example; Realize with binary arithmetic coder 102); It is to having determined the corresponding context of coded data that carries out binary arithmetic coding output to upgrade with encoded data decision portion; The corresponding context of having exported having determined not carry out binary arithmetic coding with encoded data decision portion of coded data does not upgrade, reckoning portion will to the maximum of the arithmetic coding output bit number of the incoming symbol of binary arithmetic coding as bit number.
Video coding apparatus also can constitute like this, that is, reckoning portion obtains the maximum of arithmetic coding output bit number through the calculating (with reference to formula 15) of 1 symbolic unit, and the skill of above-mentioned 1 symbolic unit has been used the minimum value of small probability symbol appearing probability.
Video coding apparatus also can constitute like this; Promptly; Reckoning portion is through the calculating (with reference to formula 16,18) of a plurality of symbolic units; Obtain the maximum of arithmetic coding output bit number, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur.
Video coding apparatus also can constitute like this; Promptly; Reckoning portion obtains the maximum of arithmetic coding output bit number through the calculating of 1 symbolic unit and the calculating of a plurality of symbolic units; The minimum value of small probability symbol appearing probability has been used in the calculating of above-mentioned 1 symbolic unit, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur.
Video coding apparatus also can constitute like this, that is, have: calculate the conversion quantization portion that image block is transformed into frequency domain and quantized conversion quantization value; Image block has been carried out the non-entropy coding portion of the data of non-entropy coding with output; When the bit number of calculating surpasses under the situation of defined value; Encoded data decision portion is with the coded data of PCM pattern header decision as output; After binary arithmetic coding portion carries out PCM pattern header arithmetic coding output, the non-entropy coding output PCM of portion data, the image block that these PCM data obtain reconstruct conversion quantization value or the image of the original image piece before the applied transformation quantization have carried out non-entropy coding.
Video coding program of the present invention is characterized by, and computer is handled below carrying out: the binary sequence conversion process converts the coded data of image block to the symbol of binary sequence; Binary arithmetic coding is handled, and based on context each symbol to binary sequence carries out arithmetic coding; Calculate to handle, calculate bit number required when coded data to image block is by binary arithmetic coding; Encoded data decision is handled, and according to calculating the bit number of calculating in the processing, whether decision carries out binary arithmetic coding output to coded data; Handle with updating context; To upgrading with in encoded data decision is handled, having determined the corresponding context of coded data that carries out binary arithmetic coding output; To not upgrading, carry out in handling and to export of the processing of the maximum of bit number to arithmetic coding calculating as bit number to the incoming symbol of binary arithmetic coding with in encoded data decision is handled, having determined the corresponding context of coded data that does not carry out binary arithmetic coding output.
Video coding program also can constitute like this; That is, in computer, handle below the execution: in calculating processing, through the calculating of 1 symbolic unit; Obtain the maximum of arithmetic coding output bit number, the minimum value of small probability symbol appearing probability has been used in the calculating of above-mentioned 1 symbolic unit.
Video coding program also can constitute like this; Promptly; Handle below in computer, carrying out: in calculating the step processing; Through the calculating of a plurality of symbolic units, obtain the maximum of arithmetic coding output bit number, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur.
Video coding program also can constitute like this; That is, make computer carry out following the processing: in calculating processing, through the calculating of 1 symbolic unit; Calculating with a plurality of symbolic units; Obtain the maximum of arithmetic coding output bit number, the minimum value of small probability symbol appearing probability has been used in the calculating of above-mentioned 1 symbolic unit, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur.
Video coding program also can constitute like this, that is, make computer carry out following the processing: the conversion quantization that image block is transformed into frequency domain and quantized conversion quantization value is handled in calculating; Image block having been carried out the non-entropy coding of the data of non-entropy coding with output handles; In encoded data decision is handled; When the bit number of calculating surpasses under the situation of defined value; With the coded data of PCM pattern header decision, in non-entropy coding is handled, handle through binary arithmetic coding after with the output of PCM pattern header arithmetic coding as output; Output PCM data, the image block that these PCM data obtain reconstruct conversion quantization value or the image of the original image piece before the applied transformation quantization have carried out non-entropy coding.
Embodiment of the present invention is described with reference to the accompanying drawings.
Fig. 2 is the block diagram of the entropy coding portion of the expression CABAC that is used for realizing this execution mode.If be used for realizing the CABAC of this execution mode entropy coding portion, compare with entropy coding shown in Figure 14, then also have bin buffer 104, binary arithmetic coding maximum number bits calculator the 105, the 2nd context modeler 106 and switch portion (PCM is code switch again) 110.And in this execution mode, binary arithmetic coder 102 has according to the bit number of extrapolating, and whether decision carries out the function that binary arithmetic coding is exported with coded data.In addition, in the 1st~the 3rd execution mode, though the formation of entropy coder 241 is different, the integral body of video coding apparatus constitutes identical with formation shown in Figure 9.
Carrying out PCM with the entropy coding device when encoding again, in groundwork, read in context modeler 103 with being stored in the context data that context duplicates in the memory 244.Then, binarizer 101 generates the bin of the Prediction Parameters of representing that PCM begins, offers binary arithmetic coder 102.Meanwhile, context modeler 103 will offer binary arithmetic coder 102 corresponding to the context data of bin.Binary arithmetic coder 102; Use context data that bin is carried out arithmetic coding; And will export bit via switch portion 110 outputs to output buffer 242 on one side, will through context data that arithmetic coding upgrade turn back to context modeler 103 on one side.Binary arithmetic coder 102 behind the arithmetic coding of the bin of the Prediction Parameters that begins of expression PCM that is through with, reads in the image that is kept in the original image MB memory 211, encodes with the former state state of PCM again, and outputs in the output buffer 242.
In this execution mode; Binary arithmetic coder 102 is kept watch on the maximum number bits that is provided by binary arithmetic coding maximum number bits calculator 105; If maximum number bits is below the threshold value (for example 3200 bits) of defined; Then, utilize the context that provides by context modeler 103, each bin that is kept at the binary sequence in the bin buffer 104 is carried out binary arithmetic coding with shown in Figure 14 identical.If maximum number bits is more than the threshold value of defined, then binary arithmetic coder 102 each bin of binary sequence that only will be equivalent to the SE (PCM pattern header) of the MB layer corresponding with pcm encoder carries out binary arithmetic coding.Through carrying out such processing, can prevent: be not updated with having determined the corresponding context of coded data that does not carry out binary arithmetic coding output, and the required context of the binary arithmetic coding of MB is afterwards upgraded by error.
It should be noted at this: the context of in the 2nd context modeler 106, preserving is usually synchronous with the context that is kept in the context modeler 104.That is to say; Under the situation of the maximum number bits that is provided by binary arithmetic coding maximum number bits calculator 105 above the threshold value of defined, entropy coding portion upgrades the context of being preserved in the 2nd context modeler 106 with the context of being preserved in the context modeler 104.
In addition, can be the original digital image data of corresponding MB by the view data that the outside provided, also can be the MB with correspondence has carried out the coded image data behind the coding.
Below, with reference to the flow chart of Fig. 3, the work of the entropy coding portion of the CABAC that realizes this execution mode is described.
The entropy coding portion of this execution mode, when the CABAC of MB layer SE, the value initialization that the MB maximal bit is counted (mb_max_bit) is 0.Then, after the initialization, the processing of 6 steps will explaining below carrying out.
In step S101, binarizer 101 according to specification specifies the rule of SE of MB layer, convert all SE of MB layer to binary sequence, and be saved in bin buffer 104.Then, transfer to step S102.
In step S102; Binary arithmetic coding maximum number bits calculator 105 is to each bin of the binary sequence of being preserved in the bin buffer 104; The context that utilization is provided by the 2nd context modeler; Calculate the maximum of the arithmetic coding output bit of each bin with formula 15, upgrade the MB maximal bit with formula 19 and count.Then, transfer to step S103.Formula 19 is computing formula that the encoding amount in this execution mode is calculated.
(formula 19)
mb_max_bit=mb_max_bit+cabac_bits(i)
In step S103; Binary arithmetic coding maximum number bits calculator 105 is to each bin of the binary sequence of being preserved in the bin buffer 104; Judged whether to use whole processing of step S102,, then transferred to step S104 if used all; If not, then transfer to step S102.In addition, as the condition of transferring to step S104, can also append mb_max_bit and whether surpass 3200 (threshold values).
In step S104, binary arithmetic coder 102 judges that mb_max_bit whether below 3200 bits, if below 3200 bits, then transfers to step S105, if not, then transfer to step S106.
In step S105, binary arithmetic coder 102 utilizes the context that is provided from context modeler 103, and each bin of the binary sequence preserved in the bin buffer 104 is carried out binary arithmetic coding.After accomplishing to the binary arithmetic coding of each bin of the binary sequence of being preserved in the bin buffer 104, the CABAC that finishes MB handles.
In step S106, switch portion 110 after the binary arithmetic coding data output that will be equivalent to the SE of the corresponding MB layer of pcm encoder, is exported view data as the PCM data.Next, for follow-up MB, after the context of being preserved in the updating context of being preserved in the context modeler 104 the 2nd context modeler 106, the CABAC that finishes MB handles.
The processing of CABAC in as recited above, carry out this execution mode.In this execution mode, consider owing to arithmetic scope or contextual cause are exported the bit number change, and calculate maximum accurately the arithmetic coding output bit number of 1bin.Thereby; Be used for realizing the entropy coding portion of the CABAC of this execution mode through utilization; Can calculate accurately that the control of can encoding accurately reaches below 3200 bits so that MB exports bit number to the maximum of the arithmetic coding output bit of each bin of MB layer SE.
In addition; In this execution mode; Can judge not only also whether MB maximal bit counting surpasses 3200 bits (step S104) of defined value, also consider the relation of the encoding amount that MB maximal bit counting and rate control device 30 distribute, as the processing of above-mentioned steps S106, carry out pcm encoder.
Execution mode 2
In the 1st execution mode (execution mode 1), calculated the maximum of arithmetic coding output bit number accurately with 1bin unit.In this execution mode, CABAC calculates the maximum of the arithmetic coding output bit number of many bin unit also according to the kind of the SE of MB layer.The peaked benefit of calculating arithmetic coding output bit number with many bin unit is to reduce the calculation expense.But, to compare with the situation of the 1st execution mode, the arithmetic coding output bit number of estimation can be bigger.
As the SE of the peaked MB layer of calculating arithmetic coding output bit number with many bin unit, preferably than the also upper SE of residual layer (with reference to the 7.3.4.3 of non-patent literature 1).This be because: than the also upper SE of residual layer, the ratio of the bin in the MB layer is few, and is even estimate the maximum of arithmetic coding output bit number more, also fewer to the influence of the whole arithmetic coding output bit of MB layer.But certainly, the switching that utilizes the maximum of the arithmetic coding output bit number of 1bin unit to calculate to calculate with the maximum of the arithmetic coding output bit number that utilizes many bin unit can be carried out with SE arbitrarily.
In addition; Because the significant_coneff_flag of residual layer and the SE of last_significant_coeff_flag are the SE that can only generate 1 symbol from 1 SE; And be the also a lot of SE of number in the MB layer; So, preferably calculate the maximum of arithmetic coding output bit number accurately with 1bin unit.
About the structure of the entropy coding portion of the CABAC that is used for realizing this execution mode,, only be the internal structure change of binary arithmetic coding maximum number bits calculator 105 because in the entropy coding portion of the 1st execution mode.Therefore, only the binary arithmetic coding maximum number bits calculator 105 of conduct with the difference of the 1st execution mode described.
Fig. 4 is the block diagram of structure of the binary arithmetic coding maximum number bits calculator 1050 of this execution mode of expression.As shown in Figure 4, binary arithmetic coding maximum number bits calculator 1050 is made up of switch portion (unit calculator switch) 1054,1bin unit's calculator 1051, many bin unit calculator 1052, switch portion (accumulation calculating device switch) 1055 and accumulation calculating device 1053.
About the binary sequence that is provided by outside (bin buffer 104 shown in Figure 2), if this SE is the peaked SE that calculates arithmetic coding output bit number with 1bin unit, then switch portion 1054 just offers 1bin unit's calculator 1051 with binary sequence.If not, then switch portion 1054 just offers many bin unit calculator 1052 with binary sequence.
1bin unit's calculator 1051 utilizes the context that is provided by outside (the 2nd context modeler 106 shown in Figure 2) one by one; Calculate maximum according to formula 15 to the arithmetic coding output bit of each bin; Via switch portion 1055, the value of calculating is outputed to accumulation calculating device 1053.
Many bin unit calculator 1051 utilizes the context that is provided by outside (the 2nd context modeler 106 shown in Figure 2) one by one; Calculate maximum according to formula 16 or formula 18 to the arithmetic coding output bit number of many bin; Via switch portion 1055, this maximum is outputed to accumulation calculating device 1053.And in this execution mode, the contextual value of the context modeler 103 after the 2nd context modeler 106 after the MB layer is handled and the processing of MB layer is different.This be because with the context of the 2nd context modeler 106 as the context that the small probability signal recurs, make the cause of state_idx migration.
Then, with reference to the flow chart of Fig. 5, the work of the binary arithmetic coding maximum number bits calculator 1050 of this execution mode is described.Though be used for realizing that the processing shown in the flow chart of the whole processing of the entropy coding portion of CABAC and Fig. 3 is identical, the processing of step S102 is replaced into the processing shown in the flow chart of Fig. 4.
In step S111, switch portion 1054 judges whether the SE of binary sequence is the peaked SE (whether being the SE also more upper than the SE of MB layer for example) that calculates arithmetic coding output bit number with 1bin unit.If calculate with 1bin unit and the peaked SE of arithmetic coding output bit number then to transfer to step S112, if not, then transfer to S113.
In step S112,1bin unit's calculator 1051 utilizes the context that is provided by outside (the 2nd context modeler 103 shown in Figure 2) one by one, calculates the maximum to the arithmetic coding output bit number of each bin according to formula 15, accomplishes and handles.In step S113; Many bin unit calculator 1051 utilizes the context that is provided by outside (the 2nd context modeler 106 shown in Figure 2) one by one; Calculate maximum according to formula 16 or formula 18, accomplish and handle to the arithmetic coding output bit number of each many bin.
The maximum that in step S112 or step S113, obtains (to the maximum of the arithmetic coding output bit number of 1bin or many bin) is provided for the outside, finishes to the calculating of the binary arithmetic coding maximum number bits of binary sequence.
Through utilizing the CABAC of this execution mode, can calculate accurately that the control of can encoding accurately reaches below 3200 bits so that MB exports bit number to the maximum of the arithmetic coding output bit number of each bin of the SE of MB layer.In addition, through calculate the maximum of arithmetic coding output bit number with many bin unit, can reduce the expense of the calculation of following reckoning.
In addition; In this execution mode; Though judgment processing through step S111; Utilize the peaked reckoning of the arithmetic coding output bit number of 1bin unit to handle the switching of handling with the peaked reckoning of the arithmetic coding output bit number that utilizes many bin unit, still, usually also can carry out the peaked reckoning of the arithmetic coding output bit number that utilizes many bin unit and handle.
Execution mode 3
Fig. 6 is the block diagram of the entropy coding portion of the expression CABAC that is used for realizing the 3rd execution mode (execution mode 3).In this execution mode, binary arithmetic coding maximum number bits calculator 105 use with the 1st execution mode (execution mode 1) or the 2nd execution mode (execution mode 2) in the identical mode of the employed mode of binary arithmetic coding maximum number bits calculator in any one mode.At this, be example with the binary arithmetic coding maximum number bits calculator 105 identical with the 1st execution mode.
Be used for realizing the entropy coding portion of the CABAC of this execution mode,, then also have: bin buffer 104, binary arithmetic coding maximum number bits calculator the 105, the 2nd context modeler 106 and switch portion 108 if compare with entropy coding portion shown in Figure 14.
Switch portion 108 is kept watch on the maximum number bits that is provided by binary arithmetic coding maximum number bits calculator 105, if maximum number bits below the setting of MB maximum number bits, is then only selected the output of binarizer 101, and offers bin buffer 104.If maximum number bits is more than the setting of MB maximum number bits, then switch portion 108 is after the bin of the header that pcm encoder is provided, and selection offers bin buffer 104 by the view data that the outside provides as the PCM data.
Binary arithmetic coder 102 is started working after the 1MB work of binarizer 101 is accomplished; And it is identical with the situation of entropy coding portion shown in Figure 14; The context that utilization is provided by context modeler 103 carries out binary arithmetic coding to each bin that is kept at the binary sequence in the bin buffer 104.Begin to postpone under the situation more than the 1MB in work,, can the load for the binary arithmetic coding of importing the bin code check be disperseed to count MB unit according to the capacity of bin buffer 104 with arithmetic coding.
In this execution mode, because the processing of binary arithmetic coder 102 postpones, so when carrying out pcm encoder under the situation of Duoing than setting, can not carry out duplicating at once to the 2nd context modeler 103 in the MB maximum number bits.Therefore; Binary arithmetic coding maximum number bits calculator 105 is for using formula 15 to calculate the context of output bit number, MB handle initial, preserve duplicating in advance from the 2nd context modeler 106; When pcm encoder, the context that copy is duplicated continues binary coding.And the view data that is provided by the outside can be the original digital image data of corresponding MB, also can be the coded image data behind the corresponding MB of having encoded.
Next, with reference to the flow chart of Fig. 7, the work of the entropy coding portion of the CABAC that is used for realizing this execution mode is described.
When the CABAC of MB layer SE, the entropy coding portion of this execution mode is 0 with the value initialization of MB maximal bit counting (mb_max_bit).And, after initialization, carry out the processing of following 7 steps will explaining.
In step S201, binary arithmetic coding maximum number bits calculator 105 duplicates the context that the 2nd context modeler 106 is calculated according to formula 15 at the MB layer.Then, transfer to step S202.In step S202, binarizer 101 according to specification specifies the rule of SE of MB layer, convert all SE of MB layer to binary sequence, and be saved in the bin buffer 104.Then, transfer to step S203.
In step 203; Binary arithmetic coding maximum number bits calculator 105, the same with the processing of step S102 in the 1st execution mode, to each bin that is stored in the binary sequence in the bin buffer 104; The context that utilization is provided by the 2nd context modeler; Calculate maximum according to formula 15, shown in formula 19, upgrade MB maximal bit counting to the arithmetic coding output bit of each bin.Then, transfer to step S204.
Under the situation of the binary coding maximum number bits calculator 1050 in using the 2nd execution mode, in step S203, after having carried out the processing identical, upgrade MB maximal bit counting according to formula 19 with the flow chart of Fig. 5.Then, transfer to step S204.
In step S204; Binary arithmetic coding maximum number bits calculator 105 is to each bin of the binary sequence of being preserved in the bin buffer 104; Judged whether to use the processing of all step S203,, then transferred to step S205 if all used; If not, then transfer to step S203.And,, can also append mb_max_bit and whether surpass 3200 (threshold values) as the condition of transferring to step S205.
In step S205, binary arithmetic coder 102 judges that mb_max_bit whether below 3200 bits, if below 3200 bits, then transfers to step S206, if not, then transfer to step S207.
In step S206, binary arithmetic coder 102 will be equivalent to after the bin data output with the SE of the corresponding MB layer of pcm encoder view data preserved as the PCM data.Next; For follow-up MB, duplicate the context of being preserved in the memory (the 2nd context duplicates memory) 107 with context, upgrade the context of being preserved in the 2nd context modeler 106; And carrying out context migration corresponding to the SE part of pcm encoder, the CABAC that finishes MB handles.
In step S207, binary arithmetic coder 102 utilizes the context that is provided by context modeler 103, and each bin of the binary sequence preserved in the bin buffer 104 is carried out the binary arithmetic coding.After accomplishing to the binary arithmetic coding of each bin of the binary sequence of being preserved in the Bin buffer 104, the CABAC that finishes MB handles.In addition, in this execution mode, also can not wait the processing of step S207 to finish just to begin the processing of S201 to following MB.
As top, carry out the processing of the CABAC in this execution mode.In this execution mode; Can calculate the maximum of the arithmetic coding output bit number of each bin that is directed against MB layer SE accurately; And, can be to count the processing load that MB unit disperses binary arithmetic coding, so be applicable to very much the processing of streamline (pipeline) mode.
Can be clear and definite by above-mentioned explanation, can constitute above-mentioned each execution mode through hardware, but also can the program of using a computer realize.For example, be used for realizing the information processing system shown in Figure 8 of above-mentioned each execution mode, comprise: the storage medium 504 of the storage medium 503 of processor 501, program storage 502, storing image data and stored bits stream.Processor 501 is carried out processing shown in Figure 3 (the 1st execution mode) or processing (the 3rd execution mode) shown in Figure 7 according to the program of being preserved in the program storage 502.Realizing under the situation of the 2nd execution mode execution graph 3 or processing shown in Figure 7 and processing shown in Figure 5.In addition, the storage area of the storage area of storage medium 503 and storage medium 504 both can be the storage area in the different storage medium, also can be the storage area in the same storage medium.In addition, as storage medium 503,504, can use the magnetic-based storage media of hard disk etc.
The application's requirement is recorded in this with the priority that the special hope of the japanese publication that proposed on December 14th, 2006 is the basis 2006-337468 number with its disclosed all the elements.
Utilizability in the industry
The present invention can use in the video coding apparatus that uses the CABAC that exports the bit number projectional technique based on the coding that counts well.
Claims (10)
1. a method for video coding is characterized by, and has:
The binary sequence switch process converts the coded data of image block to the symbol of binary sequence;
The binary arithmetic coding step, based on context each symbol to binary sequence carries out arithmetic coding;
Calculate step, calculate bit number required when coded data to image block is by binary arithmetic coding;
The encoded data decision step, according to the comparative result of the threshold value of bit number of being calculated in the above-mentioned reckoning step and regulation, whether decision carries out binary arithmetic coding output to above-mentioned coded data; With
The updating context step; To upgrading with in above-mentioned encoded data decision step, having determined the corresponding above-mentioned context of coded data that carries out binary arithmetic coding output; To not upgrading with in above-mentioned encoded data decision step, having determined the corresponding above-mentioned context of coded data that does not carry out binary arithmetic coding output
In above-mentioned reckoning step, will to the maximum of the arithmetic coding output bit number of the incoming symbol of binary arithmetic coding as above-mentioned bit number.
2. according to the method for video coding of claim 1 record, it is characterized by:
In calculating step, through the calculating of 1 symbolic unit, obtain the maximum of arithmetic coding output bit number, the minimum value of small probability symbol appearing probability has been used in the calculating of above-mentioned 1 symbolic unit.
3. according to the method for video coding of claim 1 record, it is characterized by:
In calculating step,, obtain the maximum of arithmetic coding output bit number, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur through the calculating of a plurality of symbolic units.
4. according to the method for video coding of claim 1 record, it is characterized by:
In calculating step; Through the calculating of 1 symbolic unit and the calculating of a plurality of symbolic units; Obtain the maximum of arithmetic coding output bit number; The minimum value of small probability symbol appearing probability has been used in the calculating of above-mentioned 1 symbolic unit, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur.
5. according to the method for video coding of claim 1 record, it is characterized by, have:
Conversion quantization step is calculated image block is transformed into frequency domain and quantized conversion quantization value; With
Non-entropy coding step is exported the data of image block having been carried out non-entropy coding,
In the encoded data decision step, surpassed when the bit number of calculating under the situation of value of defined, with the decision of PCM pattern header as the coded data of exporting,
In above-mentioned non-entropy coding step; Through the binary arithmetic coding step; After above-mentioned PCM pattern header being carried out arithmetic coding output, the image block that output obtains reconstruct above-mentioned conversion quantization value or the image of the original image piece before the applied transformation quantization have carried out the PCM data of non-entropy coding.
6. a video coding apparatus is characterized by, and has:
The binary sequence converter section, its coded data with image block converts the symbol of binary sequence to;
Binary arithmetic coding portion, based on context it carry out arithmetic coding to each symbol of binary sequence;
Reckoning portion, it calculates bit number required when coded data to image block is by binary arithmetic coding;
Encoded data decision portion, the comparative result of the bit number that it is calculated according to above-mentioned reckoning portion and the threshold value of regulation, whether decision carries out binary arithmetic coding output to above-mentioned coded data; With
Updating context portion; It is to having determined the corresponding above-mentioned context of coded data that carries out binary arithmetic coding output to upgrade with above-mentioned encoded data decision portion; To having determined the corresponding above-mentioned context of coded data that does not carry out binary arithmetic coding output not upgrade with above-mentioned encoded data decision portion
Above-mentioned reckoning portion, will to the maximum of the arithmetic coding output bit number of the incoming symbol of binary arithmetic coding as above-mentioned bit number.
7. according to the video coding apparatus of claim 6 record, it is characterized by:
Reckoning portion obtains the maximum of arithmetic coding output bit number through the calculating of 1 symbolic unit, and the minimum value of small probability symbol appearing probability has been used in the calculating of above-mentioned 1 symbolic unit.
8. according to the video coding apparatus of claim 6 record, it is characterized by:
Reckoning portion obtains the maximum of arithmetic coding output bit number, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur through the calculating of a plurality of symbolic units.
9. according to the video coding apparatus of claim 6 record, it is characterized by:
Reckoning portion is through the calculating of 1 symbolic unit and the calculating of a plurality of symbolic units; Obtain the maximum of arithmetic coding output bit number; The minimum value of small probability symbol appearing probability has been used in the calculating of above-mentioned 1 symbolic unit, the minimum value of the summation of the small probability symbol appearing probability the when calculating of above-mentioned a plurality of symbolic units has used the small probability symbol to recur.
10. according to the video coding apparatus of claim 6 record, it is characterized by, have:
Conversion quantization portion, it calculates image block is transformed into frequency domain and quantized conversion quantization value; With
Non-entropy coding portion, its output has been carried out the data of non-entropy coding with image block,
Encoded data decision portion has surpassed when the bit number of calculating under the situation of value of defined, with the decision of PCM pattern header as the coded data of exporting,
Above-mentioned non-entropy coding portion; After binary arithmetic coding portion carried out above-mentioned PCM pattern header arithmetic coding output, the image block that output obtains reconstruct above-mentioned conversion quantization value or the image of the original image piece before the applied transformation quantization had carried out the PCM data of non-entropy coding.
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP337468/2006 | 2006-12-14 | ||
JP2006337468 | 2006-12-14 | ||
PCT/JP2007/073769 WO2008072592A1 (en) | 2006-12-14 | 2007-12-10 | Video encoding method, video encoding device, and video encoding program |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101553988A CN101553988A (en) | 2009-10-07 |
CN101553988B true CN101553988B (en) | 2012-10-17 |
Family
ID=39511612
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800455397A Expired - Fee Related CN101553988B (en) | 2006-12-14 | 2007-12-10 | Video encoding method, video encoding device, and video encoding program |
Country Status (5)
Country | Link |
---|---|
US (1) | US8345767B2 (en) |
EP (1) | EP2124343A4 (en) |
JP (1) | JP5045950B2 (en) |
CN (1) | CN101553988B (en) |
WO (1) | WO2008072592A1 (en) |
Families Citing this family (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4915350B2 (en) * | 2008-01-16 | 2012-04-11 | 日本電気株式会社 | Entropy encoder, video encoding device, video encoding method, and video encoding program |
US8542748B2 (en) * | 2008-03-28 | 2013-09-24 | Sharp Laboratories Of America, Inc. | Methods and systems for parallel video encoding and decoding |
US8503527B2 (en) | 2008-10-03 | 2013-08-06 | Qualcomm Incorporated | Video coding with large macroblocks |
JP2010278668A (en) * | 2009-05-27 | 2010-12-09 | Sony Corp | Coding apparatus and method, and decoding apparatus and method |
EP3550726B1 (en) * | 2010-05-21 | 2020-11-04 | BlackBerry Limited | Methods and devices for reducing sources in binary entropy coding and decoding |
US20120014431A1 (en) * | 2010-07-14 | 2012-01-19 | Jie Zhao | Methods and Systems for Parallel Video Encoding and Parallel Video Decoding |
US9313514B2 (en) | 2010-10-01 | 2016-04-12 | Sharp Kabushiki Kaisha | Methods and systems for entropy coder initialization |
MX2013005652A (en) | 2010-11-26 | 2013-09-13 | Nec Corp | Image encoding device, image decoding device, image encoding method, image decoding method, and program. |
JP6002973B2 (en) * | 2011-02-23 | 2016-10-05 | サン パテント トラスト | Image encoding method and image decoding method |
UA109312C2 (en) * | 2011-03-04 | 2015-08-10 | PULSE-CODE MODULATION WITH QUANTITATION FOR CODING VIDEO INFORMATION | |
FR2972588A1 (en) | 2011-03-07 | 2012-09-14 | France Telecom | METHOD FOR ENCODING AND DECODING IMAGES, CORRESPONDING ENCODING AND DECODING DEVICE AND COMPUTER PROGRAMS |
US10123053B2 (en) | 2011-05-23 | 2018-11-06 | Texas Instruments Incorporated | Acceleration of bypass binary symbol processing in video coding |
US8805099B2 (en) * | 2011-06-22 | 2014-08-12 | Panasonic Intellectual Property Corporation Of America | Image decoding method and image coding method |
JP5318292B2 (en) | 2011-06-23 | 2013-10-16 | パナソニック株式会社 | Image decoding method and image decoding apparatus |
USRE47366E1 (en) | 2011-06-23 | 2019-04-23 | Sun Patent Trust | Image decoding method and apparatus based on a signal type of the control parameter of the current block |
FR2977111A1 (en) | 2011-06-24 | 2012-12-28 | France Telecom | METHOD FOR ENCODING AND DECODING IMAGES, CORRESPONDING ENCODING AND DECODING DEVICE AND COMPUTER PROGRAMS |
EP3407610B1 (en) | 2011-06-24 | 2019-09-04 | Sun Patent Trust | Coding method and coding apparatus |
KR102067683B1 (en) | 2011-06-24 | 2020-01-17 | 선 페이턴트 트러스트 | Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device |
KR102060621B1 (en) | 2011-06-27 | 2019-12-30 | 선 페이턴트 트러스트 | Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device |
BR112013030181B1 (en) | 2011-06-28 | 2022-09-27 | Sun Patent Trust | DECODING METHOD TO DECODE A CONTROL PARAMETER TO CONTROL DECODING OF AN IMAGE, AND ENCODING METHOD TO CODING A CONTROL PARAMETER TO CONTROL ENCODING AN IMAGE |
KR101643527B1 (en) * | 2011-06-28 | 2016-07-27 | 닛본 덴끼 가부시끼가이샤 | Method for coding video quantization parameter and method for decoding video quantization parameter |
KR102006032B1 (en) | 2011-06-29 | 2019-07-31 | 선 페이턴트 트러스트 | Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device |
PL2728869T3 (en) | 2011-06-30 | 2022-02-28 | Sun Patent Trust | Image decoding method |
AU2012277219A1 (en) | 2011-06-30 | 2013-09-19 | Sun Patent Trust | Image decoding method, image encoding method, image decoding device, image encoding device, and image encoding/decoding device |
CN103765885B (en) | 2011-07-11 | 2017-04-12 | 太阳专利托管公司 | Image decoding method, image encoding method, image decoding apparatus, image encoding apparatus, and image encoding/decoding apparatus |
US9451259B2 (en) * | 2011-07-12 | 2016-09-20 | Nec Corporation | Image quantization parameter encoding method and image quantization parameter decoding method |
IN2014CN03193A (en) * | 2011-11-01 | 2015-07-03 | Nec Corp | |
AU2012200345B2 (en) | 2012-01-20 | 2014-05-01 | Canon Kabushiki Kaisha | Method, apparatus and system for encoding and decoding the significance map residual coefficients of a transform unit |
CN103220509B (en) * | 2012-01-21 | 2017-12-15 | 中兴通讯股份有限公司 | Method, the encoder and decoder of Self Adaptive Control arithmetic coding BIN quantity |
US20130251028A1 (en) * | 2012-03-22 | 2013-09-26 | The Hong Kong University Of Science And Technology | Video encoding and decoding with channel prediction and error correction capability |
DK2842313T3 (en) * | 2012-04-13 | 2017-01-23 | Ge Video Compression Llc | Scalable data stream and network device |
US20150181213A1 (en) * | 2012-06-26 | 2015-06-25 | Nec Corporation | Video encoding device, video decoding device, video encoding method, video decoding method, and program |
CN104685893B (en) | 2012-06-29 | 2019-08-13 | Ge视频压缩有限责任公司 | Coding, decoding, transmission method and encoder, the decoder of video data stream |
JP6257587B2 (en) * | 2013-03-28 | 2018-01-10 | 京セラ株式会社 | Wireless communication apparatus and signal processing method |
US10200716B2 (en) * | 2015-06-25 | 2019-02-05 | Sony Interactive Entertainment Inc. | Parallel intra-prediction encoding/decoding process utilizing PIPCM and/or PIDC for selected sections |
CN109842797B (en) * | 2018-12-28 | 2020-04-24 | 城云科技(中国)有限公司 | Big data encoding method and computer readable storage medium |
US12047575B2 (en) * | 2020-12-03 | 2024-07-23 | Intel Corporation | Methods, apparatus, and articles of manufacture for multi-symbol equiprobable mode entropy coding |
CN116760987B (en) * | 2022-11-18 | 2024-12-31 | 杭州海康威视数字技术股份有限公司 | Image encoding and decoding method, device and storage medium |
CN116015312B (en) * | 2023-03-28 | 2023-06-09 | 山东奔虎智能科技有限公司 | Gas alarm system data storage method based on Internet of things platform |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1787384A (en) * | 2004-12-06 | 2006-06-14 | 松下电器产业株式会社 | Decoding method and encoding method |
Family Cites Families (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6639942B1 (en) * | 1999-10-21 | 2003-10-28 | Toshiba America Electronic Components, Inc. | Method and apparatus for estimating and controlling the number of bits |
JP3853710B2 (en) | 2002-07-15 | 2006-12-06 | Necアクセステクニカ株式会社 | Digital image encoding apparatus and digital image encoding method |
JP4240283B2 (en) * | 2002-10-10 | 2009-03-18 | ソニー株式会社 | Decoding device and decoding method |
JP4449400B2 (en) | 2002-10-25 | 2010-04-14 | ソニー株式会社 | Image encoding apparatus and method, program, and recording medium |
US8064520B2 (en) * | 2003-09-07 | 2011-11-22 | Microsoft Corporation | Advanced bi-directional predictive coding of interlaced video |
US7599435B2 (en) * | 2004-01-30 | 2009-10-06 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Video frame encoding and decoding |
JP2005300933A (en) | 2004-04-12 | 2005-10-27 | Sanyo Electric Co Ltd | Remote controller for karaoke |
JP2006093777A (en) | 2004-09-21 | 2006-04-06 | Victor Co Of Japan Ltd | Motion picture encoder and encoding program |
US20060176953A1 (en) * | 2005-02-04 | 2006-08-10 | Nader Mohsenian | Method and system for video encoding with rate control |
EP2566160A3 (en) * | 2005-10-14 | 2013-08-21 | NEC Corporation | Apparatus and method for entropy coding with rate control |
JP4828925B2 (en) * | 2005-11-30 | 2011-11-30 | パナソニック株式会社 | Encoder |
JP2008011431A (en) * | 2006-06-30 | 2008-01-17 | Toshiba Corp | Image coding apparatus |
-
2007
- 2007-12-10 US US12/443,734 patent/US8345767B2/en not_active Expired - Fee Related
- 2007-12-10 WO PCT/JP2007/073769 patent/WO2008072592A1/en active Application Filing
- 2007-12-10 CN CN2007800455397A patent/CN101553988B/en not_active Expired - Fee Related
- 2007-12-10 JP JP2008549305A patent/JP5045950B2/en not_active Expired - Fee Related
- 2007-12-10 EP EP07850343A patent/EP2124343A4/en not_active Withdrawn
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1787384A (en) * | 2004-12-06 | 2006-06-14 | 松下电器产业株式会社 | Decoding method and encoding method |
Also Published As
Publication number | Publication date |
---|---|
US8345767B2 (en) | 2013-01-01 |
US20100238998A1 (en) | 2010-09-23 |
JP5045950B2 (en) | 2012-10-10 |
EP2124343A1 (en) | 2009-11-25 |
CN101553988A (en) | 2009-10-07 |
WO2008072592A1 (en) | 2008-06-19 |
JPWO2008072592A1 (en) | 2010-03-25 |
EP2124343A4 (en) | 2012-01-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101553988B (en) | Video encoding method, video encoding device, and video encoding program | |
TWI753356B (en) | Method and apparatuses for coding transform blocks | |
JP7575374B2 (en) | Efficient coding of transform coefficients for use in or suitable for combination with dependent scalar quantization - Patents.com | |
CN101502123B (en) | Coder | |
CN103959782B (en) | Video decoder with enhanced cabac decoding and video encoder | |
KR100930263B1 (en) | Video Compression Method and Its System Using Iterative Encoding Algorithm | |
CN102783035B (en) | Parallel entropy coding and decoding methods and devices | |
CN101491106A (en) | Image processing device, method, and program | |
JPH11252573A (en) | Hierarchical image coding system and hierarchical image decoding system | |
CN1980393A (en) | Image coding device, method and computer program | |
JPWO2007043609A1 (en) | Image encoding method, and apparatus and computer program using the same | |
CN102783154A (en) | Encoding and decoding methods and devices employing dual codesets | |
CN113497936B (en) | Coding method, decoding method, encoder, decoder and storage medium | |
KR20090113103A (en) | Method and apparatus for decoding video | |
US20140044167A1 (en) | Video encoding apparatus and method using rate distortion optimization | |
KR20130088114A (en) | Image processing device, image processing method, and program | |
JP2012060208A (en) | Moving image encoding method, moving image encoding apparatus, moving image decoding method, moving image decoding apparatus, and program thereof | |
KR101581399B1 (en) | Motion video predict coding method, motion video predict coding device, motion video predict coding program, motion video predict decoding method, motion video predict decoding device, and motion video predict decoding program | |
CN102783036A (en) | Encoding and decoding methods and devices using a secondary codeword indicator | |
JP7020431B2 (en) | Quantizers, quantization methods and programs | |
JP4799377B2 (en) | Image encoding device | |
KR100755388B1 (en) | Method and apparatus for estimating reconstruction error in video compression | |
JP7663097B2 (en) | Image data encoding device, image data encoding method, computer software, and non-transitory storage medium | |
CN114731421A (en) | Multistage Residual Coding in Modern Hybrid Image and Video Coding Schemes | |
KR20100111732A (en) | Time-varying image encoding and decoding device |
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: 20121017 Termination date: 20141210 |
|
EXPY | Termination of patent right or utility model |