CN101663895B - Video coding mode selection using estimated coding costs - Google Patents
Video coding mode selection using estimated coding costs Download PDFInfo
- Publication number
- CN101663895B CN101663895B CN2007800528186A CN200780052818A CN101663895B CN 101663895 B CN101663895 B CN 101663895B CN 2007800528186 A CN2007800528186 A CN 2007800528186A CN 200780052818 A CN200780052818 A CN 200780052818A CN 101663895 B CN101663895 B CN 101663895B
- Authority
- CN
- China
- Prior art keywords
- decoding
- block
- matrix
- remaining data
- bit quantity
- 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
Images
Classifications
-
- 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/103—Selection of coding mode or of prediction mode
-
- 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/189—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
- H04N19/19—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
-
- 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/103—Selection of coding mode or of prediction mode
- H04N19/107—Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
-
- 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/103—Selection of coding mode or of prediction mode
- H04N19/109—Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
-
- 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/103—Selection of coding mode or of prediction mode
- H04N19/11—Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
-
- 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
- H04N19/147—Data rate or code amount at the encoder output according to rate distortion criteria
-
- 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
- H04N19/149—Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
-
- 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
-
- 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)
- Physics & Mathematics (AREA)
- Algebra (AREA)
- General Physics & Mathematics (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
This disclosure describes techniques for coding mode selection using estimated coding costs. To provide high compression efficiency, for example, an encoding device may attempt to select a coding mode for coding blocks of pixels that codes the data of the blocks with high efficiency. To this end, the encoding device may perform coding mode selection based on estimates of coding cost for at least a portion of the possible modes. In accordance with the techniques described herein, the encoding device estimates the coding cost for the different modes without actually coding the blocks. In fact, in some aspects, the encoding module device may estimate the coding cost for the modes without quantizing the data of the block for each mode. In this manner, the coding cost estimation techniques of this disclosure reduce the amount of computationally intensive calculations needed to perform effective mode selection.
Description
Technical field
The present invention relates to video coding, and more particularly relate to estimation in order to decipher the decoding cost of video sequence.
Background technology
Digital video capabilities can be incorporated in the various devices, comprising Digital Television, digital live broadcast system, radio communication device, personal digital assistant (PDA), laptop computer, desktop PC, video game machine, digital camera, digital recorder, honeycomb fashion or satelline radio phone etc.Digital video apparatus is in the remarkable improvement that can provide aspect processing and the transmission of video sequence with respect to the conventional simulation video system.
The built vertical different video coding standard that is used for the decoding digital video sequence.For instance, moving images expert group (MPEG) has worked out many standards, comprises MPEG-1, MPEG-2 and MPEG-4.Other example comprises H.263 H.264 standard and homologue thereof, ISO/IEC MPEG-4 of standard and ITU-T of International Telecommunications Union (ITU)-T, part 10, i.e. advanced video decoding (AVC).These video coding standards are by supporting the efficiency of transmission of the improvement of video sequence with the compress mode decoding data.
Many current techniques are utilized block-based decoding.In block-based decoding, the frame of multimedia sequence is divided into discrete block of pixels, and based on deciphering described block of pixels with the difference of other piece, described other piece can be arranged in same number of frames or different frame with described block of pixels.Some block of pixels (so-called " macro block ") comprises sub-pixel piece group.As an example, the 16x16 macro block can comprise four 8x8 sub-blocks.Described sub-block can be deciphered separately.For instance, described H.264 standard permits using various different sizes (for example, 16x16,16x8,8x16,8x8,4x4,8x4 and 4x8) to come decode block.In addition, expand, in macro block, can include the sub-block of any size (for example, 2x16,16x2,2x2,4x16 and 8x2).
Summary of the invention
Of the present invention aspect some in, a kind of method for the treatment of digital of digital video data comprises: one or more conversion coefficients that will keep non-zero when quantizing of the remaining data of identification block of pixels; At least the bit quantity that is associated with the decoding of described remaining data based on the described conversion coefficient estimation of identifying; And estimate be used to the decoding cost of deciphering described block of pixels based on the estimated bit quantity that is associated with the described remaining data of decoding at least.
In certain aspects, a kind of equipment for the treatment of digital of digital video data comprises: conversion module, and it is the remaining data generation conversion coefficient of block of pixels; The position estimation module, it is identified in the bit quantity that will keep one or more conversion coefficients of non-zero when quantizing and be associated with the decoding of described remaining data based on the described conversion coefficient estimation of identifying at least; And control module, it is estimated be used to the decoding cost of deciphering described block of pixels based on the estimated bit quantity that is associated with the described remaining data of decoding at least.
In certain aspects, a kind of equipment for the treatment of digital of digital video data comprises: the device that will keep one or more conversion coefficients of non-zero when quantizing that is used for the remaining data of identification block of pixels; Be used at least estimating based on the described conversion coefficient of identifying the device of the bit quantity that is associated with the decoding of described remaining data; Be used at least estimating device be used to the decoding cost of deciphering described block of pixels based on the estimated bit quantity that is associated with the described remaining data of decoding.
In certain aspects, a kind of computer program for the treatment of digital of digital video data comprises the computer-readable media that has instruction on it.Described instruction comprises: the code that will keep one or more conversion coefficients of non-zero when quantizing that is used for the remaining data of identification block of pixels; Be used at least estimating based on the described conversion coefficient of identifying the code of the bit quantity that is associated with the decoding of described remaining data; And be used at least estimating code be used to the decoding cost of deciphering described block of pixels based on the estimated bit quantity that is associated with the described remaining data of decoding.
In accompanying drawing and following explanation, illustrate the details of one or more examples.According to described explanation and graphic and claims, will understand further feature, purpose and advantage.
Description of drawings
Fig. 1 is the calcspar that the video coding system of decoding cost estimation technique described herein is adopted in graphic extension.
Fig. 2 is the calcspar of in more detail graphic extension exemplary coding module.
Fig. 3 is the calcspar of another exemplary coding module of in more detail graphic extension.
Fig. 4 is the graphic extension coding module is selected the example operational of coding mode based on estimated decoding cost flow chart.
Fig. 5 be the graphic extension coding module do not quantize or the situation of the remaining data of encoding block under estimate flow chart with the example operational of deciphering the bit quantity that described remaining data is associated.
To be the graphic extension coding module estimate in the situation of the remaining data of encoding block not Fig. 6 and the flow chart of the example operational of deciphering the bit quantity that described remaining data is associated.
Embodiment
The present invention describes the technology for the video coding model selection of using estimated decoding cost.For instance, for high compression efficiency is provided, the decoding mode that code device can be attempted selecting to decipher the data of block of pixels with high efficiency is deciphered described.For this reason, described code device can be at least selected based on decoding mode is carried out in the estimation of the decoding cost of at least a portion that may pattern.According to the techniques described herein, described code device is estimated the decoding cost of different mode in the situation of actual decode block not.In fact, in certain aspects, described coding module device can be estimated the decoding cost of described pattern in not for the situation of the data of described of each pattern quantization.In this way, decoding cost estimation technique of the present invention reduce carry out effective model select needed on calculating intensive amount of calculation.
Fig. 1 is the calcspar of graphic extension multimedia decoding system 10, and described system adopts decoding cost estimation technique as described herein.Decoding system 10 comprises code device 12 and the decoding device 14 that connects by transmission channel 16.One or more digital multimedia data sequences of code device 12 coding, and described encoded sequence transmission is arrived decoding device 14 by transmission channel 16, decoding device 14 are decoded and may be provided it to the user of decoding device 14.Transmission channel 16 can comprise arbitrary wired or wireless media, or its combination.
In certain aspects, use for two-way communication, multimedia decoding system 10 can according to (ITU-T) of session initiation protocol (SIP), International Telecommunications Union's standard H.323 the standard, ITU-T of part H.324 standard or other standard are supported visual telephone or video streaming.For unidirectional or two-way communication, code device 12 can according to such as moving images expert group (MPEG)-2, MPEG-4, ITU-T H.263 or ITU-T H.264 video compression standards such as (it are corresponding to advanced video of MPEG-4 the 10th part decoding (AVC)) produce encoded multi-medium data.Although in Fig. 1, do not show, code device 12 and decoding device 14 can integrate with audio coder and decoder respectively, and comprise suitable multiplexer-demultiplexer (MUX-DEMUX) module or other hardware, firmware or software, to dispose shared data sequence or independent data sequence sound intermediate frequency and both codings of video.The MUX-DEMUX module can meet ITU H.223 multiplexer agreement or other agreement, for example User Datagram Protoco (UDP) (UDP) if suitably.
In certain aspects, the present invention is contained and is applied to enhancement mode H.264 video coding is to send the instant multimedia service in using ground mobile multimedia multicast (TM3) system of forward link (FLO) air interface specification only, and " the only forward link air interface specification of ground mobile multimedia multicast " published in August, 2006 and be technical standard TIA-1099 (" FLO " standard).Yet decoding cost estimation technique described in the present invention is not limited to broadcasting, multicast, clean culture or the point of arbitrary particular type-p-dot system.
As illustrated in Fig. 1, code device 12 comprises coding module 18 and transmitter 20.Coding module 18 receives one or more input multimedia sequences (in the situation of Video coding, described input multimedia sequence can comprise one or more Frames) and the frame of the multimedia sequence that receives of optionally encoding.Coding module 18 (shows) from one or more sources to receive among Fig. 1 inputs multimedia sequence.In certain aspects, coding module 18 can receive the input multimedia sequence via satellite from one or more video content providers (for example).As another example, coding module 18 can be in being integrated in code device 12 or being coupled in the image capture apparatus (showing Fig. 1) of code device 12 and receiving multimedia sequence.Perhaps, coding module 18 can be in code device 12 or is coupled in the memory of code device 12 or the file store (showing Fig. 1) and receives multimedia sequence.Described multimedia sequence can comprise will be as broadcasting or on-the-spot instant or near instant video, audio or video and the tonic train deciphering as required and transmit, and can comprise will be as the video through pre-decode and storage, audio or video and the tonic train of broadcasting or deciphering as required and transmitting.In certain aspects, at least a portion of described multimedia sequence can be that computer produces, for example in the situation of gambling.
Under any circumstance, coding module 18 coded frame and be transferred to decoding device 14 with a plurality of through decoded frame by transmitter 20.Coding module 18 can be encoded to intra-coding frame, interframe decoded frame or its combination with the frame of input multimedia sequence.Use the frame of intra-coding technology for encoding not decipher with reference to other frame, and (" I ") frame in so-called.Use the frame of interframe decoding technique coding to decipher with reference to one or more other frames.Described interframe decoded frame can comprise one or more predictions (" P ") frame, two-way (" B ") frame or its combination.The P frame is encoded with reference at least one interim previous frame, and the B frame is encoded with reference at least one interim future frame.In some cases, the B frame can be encoded with reference at least one interim future frame and at least one interim previous frame.
For high compression efficiency is provided, according to various aspects of the present invention, coding module 18 is attempted selection with the pattern of the data of high efficiency decode block.For this reason, coding module 18 is estimated the decoding cost of at least a portion of described pattern in described each.Coding module 18 is according to ratio and distortion estimation decoding cost.According to the techniques described herein, coding module 18 determines to estimate in the situation of ratio and distortion metrics the decoding cost of described pattern described of unactual decoding.In this way, decoding mode 18 can be at least based on the described one that is decoded in the described pattern of original selection in not for the situation of calculating complicated decoding of the data of each pattern execution block.Normal mode is selected to carry out actual decoding to data with in the described pattern each and is come definite which pattern of selection.Therefore, described technology is by saving time and computational resource based on the decoding cost preference pattern in not for the situation of each the actual decoding data in the described pattern.In fact, in certain aspects, coding module 18 can be estimated the decoding cost of described pattern in not for the situation of the data of each pattern quantization piece.In this way, decoding cost estimation technique of the present invention reduce carry out effective model select needed on calculating intensive amount of calculation.
In some instances, code device 12 and decoding device 14 can comprise mutual transmission and receiving circuit separately, so that for encoded multimedia and other information by transmission channel 16 transmission, each all can be used as transmitting device and receiving system.In the case, code device 12 and decoding device 14 both can transmit and receive multimedia sequence and therefore participate in two-way communication.In other words, the illustrated assembly of decoding system 10 can be integrated into the part of encoder/decoder (CODEC).
Assembly in code device 12 and the decoding device 14 is the example that can be used for implementing those devices of technology described herein.Yet if necessary, code device 12 and decoding device 14 can comprise many other assemblies.For instance, code device 12 can comprise a plurality of coding modules, its each receive one or more multi-medium data sequences and according to the corresponding multi-medium data sequence of technology for encoding described herein.In the case, code device 12 can comprise further that at least one multiplexer is to make up described data segment to be used for transmission.In addition, if applicable, code device 12 and decoding device 14 can comprise that suitable modulation, demodulation, frequency conversion, filtering and amplifier block are to be used for transmission and to receive encoded video, comprising radio frequency (RF) wireless module and antenna.Yet for ease of graphic extension, described assembly is not shown among Fig. 1.
Fig. 2 is the calcspar of in more detail graphic extension exemplary coding module 30.Coding module 30 can (for instance) presentation graphs 1 the coding module 18 of code device 12.As illustrated among Fig. 2, coding module 30 comprises control module 32, and it receives the input multi-medium data frame of one or more multimedia sequences from one or more sources, and processes the described frame of the multimedia sequence that receives.In particular, the multimedia sequence frame that imports into of control module 32 analysis and based on the analysis of described frame being determined coding still skips the described frame that imports into.In certain aspects, code device 12 can be striden the bandwidth of transmission channel 16 with encode contained information saving in the described multimedia sequence of the frame rate that reduces with frame-skip.
And for the frame that imports into that will encode, control module 32 also can be configured to determine described frame is encoded to I frame, P frame or B frame.Control module 32 can determine at multimedia sequence beginning, will import frame at the scene changes place of described sequence and be encoded to the I frame, for use as channel switch frame or for use as interior refresh frame.Otherwise control module 32 is encoded to described frame the amount of bandwidth of frame (being P frame or B frame) to reduce to be associated with the described frame of decoding of deciphering through interframe.
For the piece that will carry out interframe decoding through selection, motion estimation module 36 and motion compensating module 38 produce described remaining data.In particular, motion estimation module 36 at least one reference frame of identification and search for the described piece in the described incoming frame of mating most in the described reference frame.Motion estimation module 36 calculation of motion vectors are with the skew between the position that represents described position in the described incoming frame and the described institute identification block in the described reference frame.Motion compensating module 38 calculates poor between the described institute identification block pointed of motion vector described in described of described incoming frame and the described reference frame.This difference is described remaining data.
Coding module 30 also comprises conversion module 40, quantization modules 46 and entropy coder 48.Conversion module 40 is according to the remaining data of described of transforming function transformation function conversion.In certain aspects, 40 pairs of remaining datas of conversion module are used integer transform, and for example 4x4 or 8x8 integer transform or discrete cosine transform (DCT) are to produce the conversion coefficient of described remaining data.Quantization modules 46 quantizes described conversion coefficient and described conversion coefficient through quantizing is provided to entropy coder 48.Entropy coder 48 uses context-adaptive decoding techniques such as context-adaptive variable-length decoding (CAVLC) or context adaptive binary arithmetically decoding (CABAC) to encode through the conversion coefficient of quantification.As hereinafter describing in detail, entropy coder 48 is used selected pattern and is deciphered described data.
Select to be used for described pattern for auxiliary control module 32, control module 32 is estimated the decoding cost of at least a portion of described possibility pattern.In certain aspects, control module 32 can be estimated the cost of described of decoding in described each in may decoding mode.For instance, can be according in giving mould-fixed, coming estimated cost with the ratio of the amount distortion of deciphering described bit quantity that is associated and in that pattern, producing.For instance, in the situation of standard H.264, for the piece that carries out interframe decoding through selection, control module 32 can be estimated the decoding cost of 22 different decoding modes (interframe decoding mode and intra-coding pattern), and for the piece that carries out intra-coding through selection, control module 32 can be estimated the decoding cost of 13 different decoding modes.In other side, control module 32 can reduce the possibility modal sets at first with another mode selection techniques, and then utilizes technology of the present invention to estimate the decoding cost of pattern of surplus in described group.In other words, in certain aspects, control module 32 can be dwindled the quantity of pattern possibility before using described cost estimation technique.Advantageously, coding module 30 is estimated the decoding cost of described pattern in the situation of the data of described of the unactual decoding for different mode, thereby reduces the computing cost of making a strategic decision and being associated with described decoding.In fact, in the illustrated example of Fig. 2, coding module 30 is not quantizing can to estimate decoding cost in the described situation of data for different mode.In this way, described decoding cost estimation technique of the present invention reduce calculate decoding cost needed on calculating intensive amount of calculation.In particular, needn't use various decoding modes to encode described for selecting the one in the described pattern.
To describe in more detail such as this paper, control module 32 is estimated the decoding cost of each institute's analytical model according to following equation:
J=D+λmode·R, (1)
Wherein J is estimated decoding cost, and D is described distortion metrics, and λ mode is Lagrange (Lagrange) multiplier of corresponding modes, and R is described ratio measures.Distortion metrics (D) can comprise (for instance): absolute difference and (SAD), the difference of two squares and (SSD), absolute transformed and (SATD), Square Transformation is poor and (SSTD) etc.Ratio measures (R) (for instance) can be the position amount that is associated with the described data of decoding in given.As indicated above, can use the different dissimilar blocks of data of decoding technique decoding.Therefore, equation (1) can be rewritten as following form:
J=D+λ
mode(R
context+R
non_context), (2)
R wherein
ContextThe ratio measures of the blocks of data that expression use context-adaptive decoding technique is deciphered, and R
Non_contextThe ratio measures of the blocks of data that the non-context-adaptive decoding technique of expression use is deciphered.In standard H.264, for instance, can use context-adaptive decoding (for example, CAVLC or CABAC) to decipher remaining data.Other blocks of data such as motion vector, block mode can use FLC or general VLC technology (for example, Exp-Golomb) to decipher.In the case, equation (2) can be rewritten as following form:
J=D+λ
mode(R
residual+R
other), (3)
Wherein Rresidual represents to use the context-adaptive decoding technique to decipher the ratio measures of described remaining data, the bit quantity that for example is associated with the described remaining data of decoding, and Rother represents to use FLC or general VLC technology to decipher the ratio measures of other blocks of data, the bit quantity that for example is associated with other blocks of data of decoding.
When calculating estimated decoding cost (J), coding module 30 can be determined and the bit quantity of using FLC or general VLC decode block data to be associated, i.e. R relatively simply
OtherCoding module 30 can be identified with using FLC or general VLC with decoding table (for instance) and decipher the bit quantity that described blocks of data is associated.Described decoding table can comprise (for instance) a plurality of code words and the bit quantity that is associated with the described code word of decoding.Yet, determine the bit quantity (R that is associated with the described remaining data of decoding
Residual) because context-adaptive decoding proposes more difficult task with the self adaptation character that the context of data becomes.Be to determine the accurate bit quantity that is associated with the described remaining data of decoding (or no matter which kind of data is being carried out context-adaptive decoding), coding module 30 must the described remaining data of conversion, quantification is described through the remaining data of conversion and the described remaining data through change quantization of encoding.Yet according to technology of the present invention, position estimation module 42 can be estimated to decipher the bit quantity that described remaining data is associated with using described context-adaptive decoding technique in the situation of the described remaining data of unactual decoding.
In the illustrated example of Fig. 2, position estimation module 42 uses the conversion coefficient of remaining data to estimate the bit quantity that is associated with the described remaining data of decoding.Therefore, for each pattern that will analyze, the conversion coefficient that coding module 30 only needs to calculate described remaining data can be estimated the bit quantity that is associated with the described remaining data of decoding.Therefore, coding module 30 is by for each quantizes described conversion coefficient or the conversion coefficient of coding through quantizing and reduces to determine and the needed computational resource of bit quantity and the amount of time deciphering described remaining data and be associated in the described pattern.
The conversion coefficient that position estimation module 42 analytic transformation modules 40 are exported is to be identified in one or more conversion coefficients that quantize will keep afterwards non-zero.In particular, each and corresponding threshold value in the estimation module 42 more described conversion coefficients of position.In certain aspects, can calculate according to the QP of coding module 30 described corresponding threshold value.Position estimation module 42 will be identified as more than or equal to the conversion coefficient of its corresponding threshold value the conversion coefficient that will keep non-zero after quantizing.
Position estimation module 42 is at least based on estimating and the bit quantity of deciphering described remaining data and being associated through being identified in the conversion coefficient that keeps non-zero after quantizing.In particular, position estimation module 42 is determined after quantification the quantity of the non-zero transform coefficient that still exists.Position estimation module 42 is also to still at least a portion of the absolute value of the conversion coefficient of existence summation after being identified in quantification.Then position estimation module 42 uses following equation to estimate the ratio measures of described remaining data, the bit quantity that namely is associated with the described remaining data of decoding:
R
residual=a
1*SATD+a
2*NZ
est+a
3, (4)
Wherein SATD be the non-zero transform coefficient that after quantification, still exists through prediction at least a portion absolute value and, NZ
EstThe estimated non-zero transform coefficient quantity that after quantification, still exists through prediction, and a
1, a
2And a
3It is coefficient.Can use least-squares estimation design factor a
1, a
2And a
3In the example of equation (4), although described conversion coefficient and that be absolute transformed and SATD also can use such as other poor coefficients such as SSTD.
The R of graphic extension 4x4 piece hereinafter
ResidualExemplary calculate.Can carry out similar calculating to the piece of different sizes.Coding module 30 calculates the matrix of the conversion coefficient of described remaining data.Hereinafter graphic extension exemplary transform coefficient matrix.
The line number amount of transform coefficient matrix (A) equals the line number amount of described middle pixel, and the number of columns of described transform coefficient matrix equals the number of columns of described middle pixel.Therefore, in above example, the size of described transform coefficient matrix is that 4x4 is with corresponding with the 4x4 piece.Every monobasic A (i, j) of described transform coefficient matrix is corresponding residue system transformation of variable.
During quantizing, the conversion coefficient that has smaller value in the matrix A often becomes zero after quantizing.Equally, coding module 30 relatively remains the matrix A of conversion coefficient and threshold matrix and will keep non-zero with which conversion coefficient of prediction matrix A after quantizing.Hereinafter graphic extension exemplary threshold matrix.
Can be according to QP value compute matrix C.The size of Matrix C and matrix A measure-alike.For instance, in the situation of standard H.264, can be based on the unit of following equation compute matrix C:
Wherein QBITS{QP} is the parameter of determining convergent-divergent according to QP, Level-_Offset (i, j) { QP} is the dead band parameter of the capable i of described matrix and the unit that is listed as the j place and also is the function of QP, Level_Scale (i, j) { QP} is the multiplier factor of the capable i of described matrix and the unit that is listed as the j place and also is the function of QP, i is corresponding to the row of matrix, and j is corresponding to matrix column, and QP is corresponding to the quantization parameter of coding module 30.In exemplary equation (5), in coding standards H.264, can define described variable according to the QP of operation.Other equation can be used for determining that in the described variable which will exist after quantizing, and can define based on the quantization method that described specific criteria adopts in other coding standards.In certain aspects, coding module 30 can be configured to operate in the scope of QP value.In the case, coding module 30 can calculate a plurality of comparator matrixs in advance, and described comparator matrix is corresponding with in the QP value described in the described QP value scope each.Coding module 30 selects the comparator matrix corresponding with the described QP of coding module 30 to compare with described transform coefficient matrix.
Comparative result between transform coefficient matrix A and the threshold matrix C is by one and zero matrix that consists of.In above example, described relatively form following illustrated by one with zero matrix that consists of:
Wherein an expression is identified as after quantification the position of the conversion coefficient that may have (namely may keep non-zero), and may there be the position of the conversion coefficient of (namely may become zero) in null representation after quantification.As indicated above, when the absolute value of the conversion coefficient of matrix A during more than or equal to the corresponding threshold value of Matrix C, described conversion coefficient is identified as may keeps non-zero.
Use formed one and null matrix, position estimation module 42 is determined the quantity of the conversion coefficient that will exist after quantification.In other words, position estimation module 42 determines to be identified as the quantity that keeps the conversion coefficient of non-zero after quantizing.Position estimation module 42 can determine to be identified as the quantity that keeps the conversion coefficient of non-zero after quantizing according to following equation:
NZ wherein
EstBe the estimated quantity of non-null transformation coefficient, and M (i, j) is the value of i and row j place matrix M of being expert at.In above-mentioned example, NZ
EstEqual 8.
Position estimation module 42 also calculate the described conversion coefficient through estimating after quantification, still to exist absolute value at least a portion and.In certain aspects, the position estimation module 42 can according to following equation calculate described conversion coefficient absolute value at least a portion and:
Wherein SATD be identified as all conversion coefficients of after quantizing, keeping non-zero with, M (i, j) is the value of row i and row j place matrix M, and A (i, j) be the value of row i and row j place matrix A, and abs (x) is the ABS function of calculating the absolute value of x.In above-mentioned example, SATD equals 2361.Other difference metric can be used for conversion coefficient, for example SSTD.
Use these values, position estimation module 42 is used the approximate bit quantity that is associated with the described residual coefficient of decoding of above equation (3).Control module 32 can be used R
ResidualThe estimation estimation of calculating total decoding cost of described pattern.Coding module 30 can estimate in the same manner one or more other may pattern total decoding cost, and then select to have the pattern of minimum decoding cost.Then coding module 30 is used selected decoding mode and is deciphered described of described frame.
Above-mentioned technology can be individually or two or more these type of technology or all this type of technology be implemented in together in the code device 12.Assembly in the coding module 30 is the exemplary components that is suitable for implementing those assemblies of technology described herein.Yet if necessary, coding module 30 can comprise many other assemblies, and the assembly of functional lesser amt of above-mentioned one or more modules of combination.Described assembly in the coding module 30 can be embodied as one or more processors, digital signal processor, application-specific integrated circuit (ASIC) (ASIC), field programmable gate array (FPGA), discrete logic, software, hardware, firmware or its arbitrary combination.Describing different features with modular form is intended to give prominence to the difference in functionality aspect of coding module 30 and may not hint and must realize described module by independent hardware and/or component software.But, can be with functional being integrated in shared or the independent hardware or component software that is associated with one or more modules.
Fig. 3 is the calcspar of another exemplary coding module 50 of graphic extension.The coding module 50 of Fig. 3 roughly is similar to the coding module 30 of Fig. 2, and just the position estimation module 52 of coding module 50 is estimated after the conversion coefficient to remaining data quantizes and the bit quantity of deciphering described remaining data and being associated.In particular, after the quantification of conversion coefficient, position estimation module 52 uses following equation to estimate the bit quantity that is associated with the described residual coefficient of decoding:
R
residual=a
1*SATQD+a
2*NZ
TQ+a
3, (8)
Wherein SATQD be non-zero through the absolute value of quantization transform coefficient and, NZ
TQThe quantity through quantization transform coefficient of non-zero, and a
1, a
2And a
3It is coefficient.Can use least-squares estimation design factor a
1, a
2And a
3Although coding module 50 is estimating to quantize described conversion coefficient before the bit quantity that is associated with the described remaining data of decoding, coding module 50 is the decoding cost of the described pattern of estimation in the situation of the data of described of unactual decoding still.Therefore, still reduce intensive amount of calculation on calculating.
Fig. 4 is the flow chart of the example operational of graphic extension coding module, and for example the coding module 50 of the coding module 30 of Fig. 2 and/or Fig. 3 is selected coding mode based on estimated decoding cost at least.Yet, for the purpose of exemplary, will discuss Fig. 4 according to coding module 30.Coding module 30 is selected to estimate for it pattern (60) of decoding cost.Coding module 30 produces the distortion metrics (62) of current block.For instance, coding module 30 can be based on the tolerance of the comparison calculated distortion between described and at least one reference block.In the situation of the piece that will carry out intra-coding through selection, described reference block can be the contiguous block in the described same number of frames.On the other hand, for the piece that will carry out interframe decoding through selection, described reference block can be the piece from contiguous frames.Described distortion metrics can be (for instance) SAD, SSD, SATD, SSTD or other similar distortion metrics.
In the example of Fig. 4, the bit quantity (64) that coding module 30 definite described parts with using non-context-adaptive decoding technique to decipher described data are associated.As indicated above, these data can comprise identifier, one or more reference frame index, QP information, the described slice information etc. of decoding mode of described described of one or more motion vectors, indication.Coding module 30 can be identified with using FLC, general VLC or other non-context-adaptive decoding technique with decoding table (for instance) and decipher the bit quantity that described data are associated.
The bit quantity (66) that coding module 30 is estimated and/or calculating is associated with the described part of using the context-adaptive decoding technique to decipher described data.For instance, in the context of standard H.264, coding module 30 can be estimated and decipher the bit quantity that described remaining data is associated with context-adaptive.Coding module 30 can be deciphered in unactual execution and estimate in the situation of described remaining data and the bit quantity of deciphering described remaining data and being associated.In certain aspects, coding module 30 can be estimated in the situation that does not quantize described remaining data and the bit quantity that is associated of the described remaining data of decoding.For instance, coding module 30 can calculate the conversion coefficient of described remaining data, and is identified in the conversion coefficient that quantizes may keep afterwards non-zero.Use these conversion coefficients of identifying, the bit quantity that coding module 30 estimations are associated with the described remaining data of decoding.In other side, coding module 30 can quantize described conversion coefficient and estimate the bit quantity that is associated with the described remaining data of decoding through the conversion coefficient that quantizes based on described at least.In either case, coding module 30 is by estimating needed bit quantity and save time and processing resource.If enough computational resources are arranged, coding module 30 can calculate but not estimate needed actual bit quantity so.
Coding module 30 is estimated and/or is calculated with selected pattern and decipher total decoding cost (68) of described.Coding module 30 can estimate to decipher total decoding cost of described based on distortion metrics, the position that is associated with the part of the non-context-adaptive decoding of the use of deciphering described data decoding and the position that is associated with the part of the use context-adaptive decoding decoding of deciphering described data.For instance, coding module 30 can use above equation (2) or (3) to estimate to decipher total decoding cost of described with selected pattern.
Coding module 30 determines whether to exist will estimate for it any other decoding mode (70) of decoding cost.As indicated above, coding module 30 is estimated the decoding cost of at least a portion of described possibility pattern.In certain aspects, coding module 30 can be estimated the cost of described of decoding in described each in may decoding mode.For instance, in the context of standard H.264, for the piece that carries out interframe decoding through selection, coding module 30 can be estimated the decoding cost of 22 different decoding modes (interframe decoding and intra-coding pattern), and for through selecting to carry out the piece of intra-coding, coding module 30 can be estimated 13 different decoding modes.In other side, control module 30 can reduce the possibility modal sets at first with another mode selection techniques, and then utilizes technology of the present invention to estimate the decoding cost of described decoding mode group through reducing.
More will estimate the decoding mode of decoding cost for it the time when existing, coding module 30 is selected next decoding mode and estimate the cost of the described data of decoding in described selected decoding mode.More will estimate the decoding mode of decoding cost for it the time when not existing, coding module 30 selects the one in the described pattern to be used for deciphering described (72) based on described estimated decoding cost at least.In an example, decoding module 30 can select to have the decoding mode of minimum estimated decoding cost.When preference pattern, decoding module 30 can be used described selected pattern and decipher described specific (74).Described process can be for continuing for the additional blocks in the framing.As an example, described process can continue until used according to the decoding mode of the choice of technology described herein and decipher all pieces in the described frame.And described process can continue until used high efficiency mode to decipher the piece of a plurality of frames.
Fig. 5 is the flow chart of the example operational of graphic extension coding module (for example coding module 30 of Fig. 2), the bit quantity that its estimation is associated with the residual coefficient of decode block.In selecting described decoding mode will estimate the one of decoding cost for it after, coding module 30 is for the remaining data (80) of described of described selected mode producing.For instance, for through selecting to carry out the piece of intra-coding, spatial prediction module 34 based on described with described prediction version relatively produce described remaining data.Perhaps, for through selecting to carry out the piece of interframe decoding, motion estimation module 36 and motion compensating module 38 are based on relatively calculating described remaining data between the corresponding blocks in described and the reference frame.In certain aspects, described remaining data may be as calculated to produce described distortion metrics.In the case, coding module 30 can be from the described remaining data of memory search.
Position estimation module 42 determines whether the described remaining data for described exists extra conversion coefficient (90).If there is described additional transformations coefficient, position estimation module 42 is selected the another one in the described coefficient and it is compared with corresponding threshold value so.If there is no with the additional transformations coefficient of analyzing, position estimation module 42 determines to keep the number of coefficients (92) of non-zero after being identified in quantification so.Position estimation module 42 is also at least a portion of the absolute value through being identified in the conversion coefficient that keeps non-zero after quantizing sue for peace (94).Position estimation module 42 use the quantity of determined nonzero coefficient and nonzero coefficient part with estimate and the bit quantity (96) of deciphering described remaining data and being associated.For instance, position estimation module 42 can use above equation (4) to estimate the bit quantity that is associated with the described remaining data of decoding.In this way, coding module 30 do not quantize or the situation of the described remaining data of encoding under in described selected pattern, estimate the bit quantity that is associated with the described remaining data of deciphering described.
Fig. 6 is the flow chart of the example operational of graphic extension coding module, and for example the coding module 50 of Fig. 3 is estimated the bit quantity that is associated with the residual coefficient of decode block.In selecting described decoding mode will estimate the one of decoding cost for it after, coding module 50 produces described residual coefficient (100).For instance, for through selecting to carry out the piece of intra-coding, spatial prediction module 34 based on described with described prediction version relatively calculate described remaining data.Perhaps, for through selecting to carry out the piece of interframe decoding, motion estimation module 36 and motion compensating module 38 are based on relatively calculating described remaining data between the corresponding blocks in described and the reference frame.In certain aspects, described residual coefficient may be as calculated to produce described distortion metrics.
Based on teaching as herein described, should be appreciated that, can not rely on any other side and implement aspect disclosed herein and can make up in every way both or more persons in these aspects.The techniques described herein may be implemented in hardware, software, firmware or its arbitrary combination.If be implemented in the hardware, can use so digital hardware, analog hardware or its combination to realize described technology.If be implemented in the software, can realize described technology by computer program at least in part so, described computer program comprises the computer-readable media that stores instruction or code on it.The described instruction or the code that are associated with the computer-readable media of described computer program can be carried out by computer, for example, carried out by one or more processors, ASIC, FPGA or other equivalent integrated circuits such as one or more digital signal processors (DSP), general purpose microprocessor or discrete logic.
By way of example and unrestriced mode, described computer-readable media (for example can comprise RAM, Synchronous Dynamic Random Access Memory (SDRAM)), read-only memory (ROM), nonvolatile RAM (NVRAM), ROM, Electrically Erasable Read Only Memory (EEPROM), EEPROM, flash memory, CD-ROM or other optical disc memory device, magnetic disk memory or other magnetic storage device, or arbitrary other can be used to carry or store and is instruction or data structure form and can be by the tangible media of the expectation program code of computer access.
This paper has described many aspects and example.Yet, also can make various modifications to these examples, and the principle that this paper provides also can be applicable to other side.These and other aspect belongs in the scope of above claims.
Claims (24)
1. method for the treatment of digital of digital video data, described method comprises:
Identify one or more conversion coefficients that when quantizing, will keep non-zero of the remaining data of block of pixels by in more one or more conversion coefficients each with the corresponding one in a plurality of threshold values, wherein calculate in described a plurality of threshold value each according to quantization parameter QP;
Produce the matrix of described conversion coefficient, the line number amount of wherein said transform coefficient matrix equals the pixel column quantity in described, and the number of columns of described transform coefficient matrix equals the pixel column quantity in described;
The matrix of more described transform coefficient matrix and described a plurality of threshold values, the described matrix of wherein said a plurality of threshold values has the measure-alike size with described transform coefficient matrix, and further wherein said 1 and 0 the matrix that relatively produces, after quantizing, will become 0 position in the described transform coefficient matrix of wherein said 0 expression, and the position that after quantizing, will keep non-zero in the described transform coefficient matrix of described 1 expression;
1 quantity in described 1 and 0 matrix is sued for peace to calculate the quantity that is identified as when quantizing, keeping the described conversion coefficient of non-zero; And
To in the described transform coefficient matrix corresponding at least one the absolute value summation in the described conversion coefficient of 1 position described in described 1 and 0 matrix;
At least based on the quantity of the conversion coefficient of identifying and the absolute value sum of some described conversion coefficient of identifying at least, estimate the bit quantity that is associated with the decoding of described remaining data; And
At least based on the distortion metrics of described block of pixels and the described estimated bit quantity that is associated with the described remaining data of decoding, estimate be used to the decoding cost of deciphering described block of pixels.
2. method according to claim 1, the corresponding one in each in more described one or more conversion coefficient and the described a plurality of threshold values wherein, described one or more conversion coefficients that will keep non-zero when quantizing to be identified in comprise absolute value is identified as described one or more conversion coefficients that will keep non-zero when the quantification more than or equal to described one or more conversion coefficients of its corresponding threshold value.
3. method according to claim 1, it further comprises:
The a plurality of sets of threshold values of precomputation, each in the wherein said sets of threshold values is corresponding to the different value of described quantization parameter QP; And
Select the one of described a plurality of sets of threshold values based on the described value of the described quantization parameter QP of the described block of pixels that is used for encoding.
4. method according to claim 1, wherein estimate and decipher the described bit quantity that described remaining data is associated and comprise:
Determine to be identified as when quantizing, keeping the described quantity of described one or more conversion coefficients of non-zero; And
To at least some the described absolute value summation in the described one or more conversion coefficients that are identified as when quantizing, keeping non-zero.
5. method according to claim 1, estimate wherein that the described bit quantity be associated with the decoding of described remaining data is included in in two block modes each at least and estimate to decipher the needed bit quantity of described remaining data, and estimate that described decoding cost is included in in described two block modes each at least and estimate described decoding cost based on the described estimated bit quantity in the corresponding one in described block mode at least, and further comprise at least based on each the described estimated one that is decoded in the described block mode of original selection in the described pattern.
6. method according to claim 5, it further comprises:
Select to have in the described block mode one of minimum estimated decoding cost; And
Use described selected block mode and decipher described block of pixels.
7. method according to claim 6, estimate that wherein described decoding cost further comprises:
Calculate the described distortion metrics of described block of pixels;
The bit quantity that calculating is associated with the decoding of the non-residue data of described block of pixels; And
At least estimate be used to the described decoding cost of deciphering described block of pixels based on described distortion metrics, the described bit quantity that is associated with the decoding of described non-residue data and the described bit quantity that is associated with the decoding of described remaining data.
8. method according to claim 1, it further comprises:
At least the decoding mode that has minimum estimated decoding cost based on the described estimated bit quantity selection that is associated with the decoding of described remaining data;
After selecting described decoding mode, quantize the described conversion coefficient of described remaining data;
The described through quantization transform coefficient of described remaining data of encoding; And
Transmit the described encoded coefficient of described remaining data.
9. equipment for the treatment of digital of digital video data, described equipment comprises:
Each that is used for by more one or more conversion coefficients is identified the device that will keep one or more conversion coefficients of non-zero when the quantification of the remaining data of block of pixels with the corresponding one in a plurality of threshold values, wherein calculates in described a plurality of threshold value each according to quantization parameter QP;
Be used at least based on the quantity of the conversion coefficient of identifying and the absolute value sum of some described conversion coefficient of identifying at least, estimate the device of the bit quantity that is associated with the decoding of described remaining data;
Be used at least estimating device be used to the decoding cost of deciphering described block of pixels based on the distortion metrics of described block of pixels and the described estimated bit quantity that is associated with the described remaining data of decoding;
For generation of the device of the matrix of described conversion coefficient, the line number amount of wherein said transform coefficient matrix equals the pixel column quantity in described, and the number of columns of described transform coefficient matrix equals the pixel column quantity in described, and wherein:
The matrix of the more described transform coefficient matrix of described recognition device and described a plurality of threshold values, the described matrix of wherein said a plurality of threshold values has the measure-alike size with described transform coefficient matrix, and further wherein said 1 and 0 the matrix that relatively produces, after quantizing, will become 0 position in the described transform coefficient matrix of wherein said 0 expression, and the position that after quantizing, will keep non-zero in the described transform coefficient matrix of described 1 expression; And
Described device for estimating bit quantity to described 1 and the quantity of 0 matrix 1 sue for peace to calculate the quantity that is identified as when quantizing, keeping the described conversion coefficient of non-zero, and in the described transform coefficient matrix corresponding at least one the absolute value summation in the described conversion coefficient of 1 position described in described 1 and 0 matrix.
10. equipment according to claim 9, wherein said recognition device is identified as described one or more conversion coefficients that will keep non-zero when quantizing with absolute value more than or equal to the described conversion coefficient of its corresponding threshold value.
11. equipment according to claim 9, it further comprises:
Be used for the device of a plurality of sets of threshold values of precomputation, each in the wherein said sets of threshold values is corresponding to the different value of described quantization parameter QP; And
Be used for selecting based on the described value of the described quantization parameter QP of the described block of pixels that is used for encoding the device of the one of described a plurality of sets of threshold values.
12. equipment according to claim 9, wherein saidly determine to be identified as when quantizing, keeping the described quantity of described one or more conversion coefficients of non-zero for the device of estimating bit quantity, and at least some the described absolute value summation in the described conversion coefficient that is identified as when quantizing, keeping non-zero.
13. equipment according to claim 9, wherein said device for estimating bit quantity is estimated the bit quantity that is associated with the decoding of described remaining data in each of at least two block modes, and described decoding cost estimation unit is estimated each decoding cost in the described block mode based on the described estimated bit quantity in the corresponding one in described at least two block modes at least, and further comprises for the device of selecting at least the one in the described block mode based on each described estimated bit quantity of described block mode.
14. equipment according to claim 13, wherein said choice device selects to have in the described block mode one of minimum estimated decoding cost.
15. equipment according to claim 14, wherein said decoding cost estimation unit calculates the described distortion metrics of described block of pixels, calculate the bit quantity that is associated with the decoding of the non-residue data of described block of pixels, and reach the described bit quantity that is associated with the decoding of described remaining data based on described distortion metrics, the described bit quantity that is associated with the decoding of described non-residue data at least and estimate be used to the described decoding cost of deciphering described block of pixels.
16. equipment according to claim 9, it further comprises:
Be used for having based on the described estimated bit quantity selection that is associated with the decoding of described remaining data at least the device of the decoding mode of minimum estimated decoding cost;
Be used for after selecting described decoding mode, quantizing the device of the described conversion coefficient of described remaining data;
Described device through quantization transform coefficient for the described remaining data of encoding; And
Device for the described encoded coefficient that transmits described remaining data.
17. the equipment for the treatment of digital of digital video data, described equipment comprises:
Produce the conversion module of conversion coefficient for the remaining data of block of pixels;
Be identified in one or more in the described conversion coefficient that will keep non-zero when quantizing by in more one or more conversion coefficients each with corresponding one in a plurality of threshold values, wherein calculate in described a plurality of threshold value each according to quantization parameter QP, and at least based on the quantity of the conversion coefficient of identifying and at least the absolute value sum of some described conversion coefficient of identifying estimate the position estimation module of the bit quantity that is associated with the decoding of described remaining data; And
At least estimate control module be used to the decoding cost of deciphering described block of pixels based on the distortion metrics of described block of pixels and the described estimated bit quantity that is associated with the described remaining data of decoding;
Wherein said conversion module produces the matrix of described conversion coefficient, and the line number amount of wherein said transform coefficient matrix equals the pixel column quantity in described, and the number of columns of described transform coefficient matrix equals the pixel column quantity in described, and
The matrix of the more described transform coefficient matrix of institute's rheme estimation module and described a plurality of threshold values, the described matrix of wherein said a plurality of threshold values has the measure-alike size with described transform coefficient matrix, and further wherein said 1 and 0 the matrix that relatively produces, after quantizing, will become the position that after quantification, will keep non-zero in 0 position and the described transform coefficient matrix of described 1 expression in the described transform coefficient matrix of wherein said 0 expression
Further wherein said position estimation module sues for peace to calculate the quantity that is identified as keeping the described conversion coefficient of non-zero when quantizing to 1 quantity in described 1 and 0 matrix, and in the described transform coefficient matrix corresponding at least one the absolute value summation in the described conversion coefficient of 1 position described in described 1 and 0 matrix.
18. equipment according to claim 17, wherein said position estimation module is identified as described one or more conversion coefficients that will keep non-zero when quantizing with absolute value more than or equal to described one or more conversion coefficients of its corresponding threshold value.
19. equipment according to claim 17, the a plurality of sets of threshold values of wherein said position estimation module precomputation, in the wherein said sets of threshold values each is corresponding to the different value of described quantization parameter QP, and selects the one of described a plurality of sets of threshold values based on the described value of the described quantization parameter QP of the described block of pixels that is used for encoding.
20. equipment according to claim 17, wherein said position estimation module determines to be identified as keeping the described quantity of described one or more conversion coefficients of non-zero when quantizing, and at least some the described absolute value summation in the described one or more conversion coefficients that are identified as when quantizing, keeping non-zero.
21. equipment according to claim 17, wherein:
The described bit quantity that estimation is associated with the decoding of described remaining data in each at least two block modes of institute's rheme estimation module, and
Described control module is estimated each decoding cost in the described block mode based on the described estimated bit quantity in the corresponding one in described at least two block modes at least, and at least based on each the described estimated one that is decoded in the described block mode of original selection in the described pattern.
22. equipment according to claim 21, wherein said control module selects to have in the described block mode one of minimum estimated decoding cost, and uses described selected block mode and decipher described block of pixels.
23. equipment according to claim 22, wherein said control module is calculated the described distortion metrics of described block of pixels, calculate the bit quantity that is associated with the decoding of the non-residue data of described block of pixels, and reach the described bit quantity that is associated with the decoding of described remaining data based on described distortion metrics, the described bit quantity that is associated with the decoding of described non-residue data at least and estimate be used to the described decoding cost of deciphering described block of pixels.
24. equipment according to claim 17, it further comprises:
Described control module, the decoding mode that it has minimum estimated decoding cost based on the described estimated bit quantity selection that is associated with the described remaining data of decoding at least;
Quantization modules, it quantizes the described conversion coefficient of described remaining data after selecting described decoding mode;
The entropy coding module, its described remaining data of encoding described through quantization transform coefficient; And transmitter, it transmits the described encoded coefficient of described remaining data.
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/US2007/068307 WO2008136828A1 (en) | 2007-05-04 | 2007-05-04 | Video coding mode selection using estimated coding costs |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101663895A CN101663895A (en) | 2010-03-03 |
CN101663895B true CN101663895B (en) | 2013-05-01 |
Family
ID=39145223
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2007800528186A Expired - Fee Related CN101663895B (en) | 2007-05-04 | 2007-05-04 | Video coding mode selection using estimated coding costs |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP2156672A1 (en) |
JP (1) | JP2010526515A (en) |
KR (2) | KR20120031529A (en) |
CN (1) | CN101663895B (en) |
WO (1) | WO2008136828A1 (en) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9008171B2 (en) | 2008-01-08 | 2015-04-14 | Qualcomm Incorporated | Two pass quantization for CABAC coders |
US8891615B2 (en) | 2008-01-08 | 2014-11-18 | Qualcomm Incorporated | Quantization based on rate-distortion modeling for CABAC coders |
US9338449B2 (en) * | 2011-03-08 | 2016-05-10 | Qualcomm Incorporated | Harmonized scan order for coding transform coefficients in video coding |
CN107529706B (en) * | 2011-06-16 | 2020-11-17 | Ge视频压缩有限责任公司 | Decoder, encoder, method of decoding and encoding video, and storage medium |
US9332259B2 (en) * | 2012-01-18 | 2016-05-03 | Qualcomm Incorporated | Indication of use of wavefront parallel processing in video coding |
KR102126855B1 (en) * | 2013-02-15 | 2020-06-26 | 한국전자통신연구원 | Method and apparatus for coding mode decision |
KR102229386B1 (en) * | 2014-12-26 | 2021-03-22 | 한국전자통신연구원 | Apparatus and methdo for encoding video |
WO2020153506A1 (en) * | 2019-01-21 | 2020-07-30 | 엘지전자 주식회사 | Method and apparatus for processing video signal |
WO2023067822A1 (en) * | 2021-10-22 | 2023-04-27 | 日本電気株式会社 | Video encoding device, video decoding device, video encoding method, video decoding method, and video system |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1176562A (en) * | 1996-09-06 | 1998-03-18 | 汤姆森多媒体公司 | Quantization process for video encoding |
CN1674680A (en) * | 2005-03-31 | 2005-09-28 | 华中科技大学 | An enhanced in-frame predictive mode coding method |
CN1813480A (en) * | 2003-06-27 | 2006-08-02 | 坦德伯格电信公司 | Early detection of zeros in the transform domain |
CN1835595A (en) * | 2005-03-16 | 2006-09-20 | 株式会社东芝 | Image encoding/decoding method and apparatus therefor |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH0646268A (en) * | 1992-07-24 | 1994-02-18 | Chinon Ind Inc | Code quantity controller |
JP2006140758A (en) * | 2004-11-12 | 2006-06-01 | Toshiba Corp | Method, apparatus and program for encoding moving image |
-
2007
- 2007-05-04 CN CN2007800528186A patent/CN101663895B/en not_active Expired - Fee Related
- 2007-05-04 KR KR1020127007471A patent/KR20120031529A/en not_active Application Discontinuation
- 2007-05-04 JP JP2010507374A patent/JP2010526515A/en not_active Ceased
- 2007-05-04 KR KR1020097025315A patent/KR101166732B1/en not_active IP Right Cessation
- 2007-05-04 EP EP07761930A patent/EP2156672A1/en not_active Withdrawn
- 2007-05-04 WO PCT/US2007/068307 patent/WO2008136828A1/en active Application Filing
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1176562A (en) * | 1996-09-06 | 1998-03-18 | 汤姆森多媒体公司 | Quantization process for video encoding |
CN1813480A (en) * | 2003-06-27 | 2006-08-02 | 坦德伯格电信公司 | Early detection of zeros in the transform domain |
CN1835595A (en) * | 2005-03-16 | 2006-09-20 | 株式会社东芝 | Image encoding/decoding method and apparatus therefor |
CN1674680A (en) * | 2005-03-31 | 2005-09-28 | 华中科技大学 | An enhanced in-frame predictive mode coding method |
Non-Patent Citations (4)
Title |
---|
A fast bits estimation method for rate distortion optimization in H.264/AVC;Q Chen 等;《proceedings of the picture coding symposium》;20041215;参见第3.1部分,公式2,3;第2章,公式1 * |
Low complexity RDO mode decision based on a fast coding-bits estimation model for H.264/AVC;Q WANG 等;《Circuits and systems,2005,ISCAS 2005》;20050523;参见第4章 * |
Q Chen 等.A fast bits estimation method for rate distortion optimization in H.264/AVC.《proceedings of the picture coding symposium》.2004,全文. |
Q WANG 等.Low complexity RDO mode decision based on a fast coding-bits estimation model for H.264/AVC.《Circuits and systems,2005,ISCAS 2005》.2005,全文. |
Also Published As
Publication number | Publication date |
---|---|
KR20100005240A (en) | 2010-01-14 |
WO2008136828A1 (en) | 2008-11-13 |
JP2010526515A (en) | 2010-07-29 |
KR101166732B1 (en) | 2012-07-19 |
CN101663895A (en) | 2010-03-03 |
EP2156672A1 (en) | 2010-02-24 |
KR20120031529A (en) | 2012-04-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101663895B (en) | Video coding mode selection using estimated coding costs | |
CN101911702B (en) | Method and device for quantization of video module coefficient for CABAC supported video coding process | |
CN100581232C (en) | Method for coding motion in video sequence | |
CN101406056B (en) | Method of reducing computations in intra-prediction and mode decision processes in a digital video encoder | |
CN106131576B (en) | Use the video encoding/decoding method, encoding device and decoding device of quad-tree structure | |
CN100456833C (en) | Slice layer in video codec | |
RU2533196C2 (en) | Video coding with large macroblocks | |
KR101387255B1 (en) | Adaptive motion resolution for video coding | |
CN101232618B (en) | Method and device for indicating quantizer parameters in a video coding system | |
CN101946515A (en) | Two pass quantization for cabac coders | |
CN103238322A (en) | Separately coding the position of a last significant coefficient of a video block in video coding | |
CN103202016A (en) | Adaptive motion vector resolution signaling for video coding | |
CN114501010B (en) | Image encoding method, image decoding method and related devices | |
CN101999230A (en) | Offsets at sub-pixel resolution | |
CN103190147A (en) | Joint coding of syntax elements for video coding | |
CN101854545A (en) | The method of intra-prediction and the equipment that are used for video encoder | |
CN101267563A (en) | Adaptive variable length coding | |
CN103238323A (en) | Coding the position of a last significant coefficient within a video block based on a scanning order for the block in video coding | |
CN104041045A (en) | Secondary boundary filtering for video coding | |
CN104303501A (en) | Quantization matrix and deblocking filter adjustments for video coding | |
CN105027160A (en) | Spatially adaptive video coding | |
CN101529917A (en) | Signalling of maximum dynamic range of inverse discrete cosine transform | |
US20070133689A1 (en) | Low-cost motion estimation apparatus and method thereof | |
CN102447896A (en) | Method, device and system for processing image residual block | |
JP2004241957A (en) | Image processor and encoding device, and methods therefor |
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: 20130501 Termination date: 20150504 |
|
EXPY | Termination of patent right or utility model |