CN101005625B - Variable length coding method and variable length decoding method - Google Patents

Variable length coding method and variable length decoding method Download PDF

Info

Publication number
CN101005625B
CN101005625B CN 200610143687 CN200610143687A CN101005625B CN 101005625 B CN101005625 B CN 101005625B CN 200610143687 CN200610143687 CN 200610143687 CN 200610143687 A CN200610143687 A CN 200610143687A CN 101005625 B CN101005625 B CN 101005625B
Authority
CN
China
Prior art keywords
code
numerical value
distance
swimming
rank
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 - Lifetime
Application number
CN 200610143687
Other languages
Chinese (zh)
Other versions
CN101005625A (en
Inventor
角野真也
近藤敏志
羽饲诚
安倍清史
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Godo Kaisha IP Bridge 1
Original Assignee
Matsushita Electric Industrial Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Matsushita Electric Industrial Co Ltd filed Critical Matsushita Electric Industrial Co Ltd
Publication of CN101005625A publication Critical patent/CN101005625A/en
Application granted granted Critical
Publication of CN101005625B publication Critical patent/CN101005625B/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Images

Abstract

An image coding apparatus provides a run-length encoding unit RLE1 that subjects quantized coefficients which are obtained by quantizing frequency components of an image signal to a variable length coding process by using a run value Run that indicates the number of successive zero coefficients and a level value Lev that indicates a value of a non-zero coefficient following the zero coefficients. The run-length encoding unit RLE1 includes a reordering unit Lreodr for reordering level values Lev; a variable length coder LVLC for coding reordered level values ROLev by using a code table that is selected according to the value of a quantization parameter QP; a reordering unit Rreodr for reordering run values Run from high frequency component of the quantized coefficients to low frequency component; and a variable length coder RVLC for coding reordered run values RORun by using a code table that is selected according to the number of already-processed run values. To execute a variable length coding process of quantized coefficients at high coding efficiency which are obtained by quantizing frequency components of image signals, while effectively removing redundant information contained in the quantized coefficients.

Description

Variable length decoding method and variable length decoding method
The application is that application number is 02813282.3, the applying date is on November 22nd, 2002, denomination of invention is divided an application for the patent application of " variable length decoding method and variable length decoding method ".
Technical field
The present invention relates to a kind of variable length decoding method and variable length decoding method, be particularly related to and a kind ofly be used to change the method that the frequency component of view data (quantization parameter) is quantified as a plurality of coefficients that the data that are encoded obtain by handling, and relate to and be used for handling this coded data is decoded with the method for a plurality of coefficients of reconstruct according to a kind of length-changeable decoding according to variable length code.
Background technology
In recent years, we have welcome multimedia era, its sound intermediate frequency, video and other data are handled with being integrated, and for example the such conventional information medium of newspaper, magazine, TV, broadcasting and phone (promptly, be used for information is sent to individual's means) be used, as multimedia object.Usually the implication of " multimedia " is not only represented literal, but also representative image, voice and particularly time go up relevant image.In order to handle traditional information medium, be information translation that number format is an internal as multimedia object.
When being estimated with amount of digital data by the handled data volume of above-mentioned each information medium, in the situation of character, the data volume that is used for each character is a 1-2 byte.But in the situation of voice, data volume is per second 64kbits (quality that is used to communicate by letter), and in the situation of moving image, this data volume is greater than per second 100Mbits (quality that is used for current television broadcasting).Thereby for above-mentioned information medium, it is unpractical handling such lot of data with number format former state ground.For example, the video telephone ISDN (integrated services digital network) of the transmission rate by having 64kbps~1.5Mbps comes into operation, but importantly transmits the output image of the television camera with big data quantity by ISDN former state ground.
Thereby, need data compression technique.For example, in the situation of video telephone, adopt to be standardized as H.261 and moving image compress technique H.263 by ITU-T (International Telecommunications Union-telecommunication department).In addition, according to data compression technique based on MPEG-1, can be in a common music CD (compact disk) and voice data recording image data together.
At this, MPEG (Motion Picture Experts Group) is a kind of international standard relevant with the digital compression of the picture signal that is used for moving image.In MPEG-1, the picture signal of moving image is compressed to 1.5Mbps, that is, the data of TV signal are compressed to about 1/100.Because the transmission rate major limitation of MPEG-1 is about 1.5Mbps, MPEG-2 is standardized as and satisfies the more demand of high image quality.In MPEG-2, the picture signal of a moving image is compressed to 2-15Mbps.
In existing situation, by realizing having the more standardization of the MPEG-4 of high compression ratio for MPEG-1 and the standardized working group of MPEG-2 (ISO/IECJTC1/SC29/WG11), MPEG-4 not only can encode with low bit rate expeditiously, and realize a kind of introducing of strong anti-wrong technology, even it also can reduce subjective image quality decrease when the transmission line mistake occurring.In addition, H.26L ITU-T develops standard as the standard of method for encoding images of future generation, and up-to-date at this moment coding method is called as " test model " (TML8).
Figure 30 is the block diagram that traditional picture coding device is shown.
This picture coding device 201a has and is used for the piecemeal unit B lk of a picture signal Vin piecemeal of being imported for the picture signal BlkS of the unit area (piece) that comprises the pixel of predetermined number respectively and output piecemeal, and is used to make this output BlkS to be subjected to frequency translation to export the frequency conversion unit Trans corresponding to the frequency component TransS of each piece.At this, this piece is the zone of the preliminary dimension in an image (image space), and it is the unit that is used for the encoding process of a picture signal, and its pixel by predetermined number is constituted.At this, this picture signal Vin is corresponding to a moving image by a plurality of image constituted.
This picture coding device 201a further comprises a quantifying unit Q, is used to quantize output (frequency component) TransS from this frequency conversion unit, and output is corresponding to component (quantization parameter) QS of the quantification of each piece; And a coding unit RLE0a, be used for making that output (quantized components) QS from this quantifying unit is subjected to the variable length code processing.
Then, its operation will be described.
When a picture signal Vin was imported into this picture coding device 201a, the picture signal Vin of piecemeal unit B lk input was divided into the picture signal corresponding to module unit, to produce picture signal (picture signal of the piecemeal) BlkS corresponding to each piece.(discrete cosine transform) is divided into frequency component TransS or wavelet transformation to the picture signal BlkS of piecemeal to this frequency conversion unit Trans according to DCT.This quantifying unit Q quantizes this frequency component TransS according to a quantization parameter QP in a predetermined quantization step, with output variable polarization component QS, and output quantization parameter QP.Then, this coding unit RLE0a makes this quantized components QS be subjected to variable length code and handles, and exports an encoding stream Str0a.
Figure 31 illustrates the block diagram of the coding unit RLE0a that is used to illustrate composing images code device 201a.
This coding unit RLE0a has a zigzag scanning instrument Scan, is used for output (quantized components) QS at the quantifying unit Q of a two-dimensional array is transformed to quantized components in an one-dimensional array (that is predesigned order); And a variable length coder VLC, be used for making that being subjected to variable length code from the quantized components Coef of zigzag scanning instrument Scan output handles.
When coding unit RLE0a that the quantized components QS from quantifying unit Q output is output, this zigzag scanning instrument Scan is at the quantized components Coef that is transformed to from the quantized components QS in the two-dimensional array of this quantifying unit Q in an one-dimensional array (predesigned order), and exports this quantized components.
Figure 43 is used to specify the schematic diagram that is used for by the processing of this quantized components of zigzag scanning instrument Scan conversion QS.
As shown in Figure 43, has a two-dimensional array from the quantized components QS of quantifying unit Q output, that is, such array, wherein the form with matrix is provided with this quantized components QS according to the size of the size of horizontal frequency component and vertical frequency component and on a two-dimentional frequency field Fr.
This zigzag scanning instrument Scan carries out a processing and is used for the quantized components QS that scans at this two-dimensional array according to the tortuous mode shown in arrow Y1 to Y7, to be the quantized components Coef in an one-dimensional array to this component transformation.That is to say, in this scan process, along the process that scans predesigned order is set for a plurality of quantized components QS in this two-dimensional array.
Then, this variable length coder VLC utilization illustrates the size of expression quantized components and the code table of the relation between the code (code word) arrives assignment of code from the quantized components Coef of zigzag scanning instrument Scan output, this quantized components is transformed to an encoding stream Str0a corresponding to each piece.
Figure 32 is the block diagram that is used to illustrate corresponding to the picture decoding apparatus 202a of the picture coding device 201a shown in Figure 30.
This picture decoding apparatus 202a decodes to the encoding stream Str0a from as shown in Figure 30 normal image code device 201a output.
This picture decoding apparatus 202a has and is used to decode from the decoding unit RLD0a of the encoding stream Str0a of picture coding device 201a output and is used for making that output (quantized components of the decoding) DQS from decoding unit RLD0a is subjected to the inverse quantization unit IQ that inverse quantization is handled.
This picture decoding apparatus 202a comprises that further being used for feasible output (frequency component of decoding) ITransS from inverse quantization unit IQ is subjected to the anti-frequency conversion unit ITrans of anti-frequency conversion process and is used for basis the deblock cells D eBlk of output (the block image signal of decoding) the DBlkS generation of reflexive frequency conversion unit ITrans corresponding to the decoded image signal Vout of each image.
Below, its operation will be described.
When this encoding stream Str0a is imported from picture coding device 201a to picture decoding apparatus 202a, this decoding unit RLD0a decode this encoding stream Str0a and the quantized components DQS of output decoder.The operation of this decoding unit RLD0a is opposite with the operation of coding unit RLE0a.
This inverse quantization unit IQ carries out the anti-operation of the operation of quantifying unit Q,, according to quantization parameter QP the quantized components DQS that decodes is carried out the operation of the frequency component ITransS of inverse quantization and output decoder that is.This anti-frequency conversion unit ITrans carries out the anti-operation of the operation of frequency conversion unit Trans, that is, make the frequency component ITransS of decoding be subjected to anti-DCT or anti-wavelet transformation, with the operation of reconstruct corresponding to the decoded image signal DBlkS of each piece.Then, this cells D eBlk that deblocks is in conjunction with the decoded image signal DBlkS of each piece, to export a decoded image signal Vout corresponding to each image (frame).
Figure 33 is the block diagram that is used to illustrate the decoding unit RLD0a of composing images decoding device 202a.
This decoding unit RLD0a has a variable-length decoder VLD, is used to make encoding stream Str0a to be subjected to length-changeable decoding and handles, to decode corresponding to the quantized components Coef that is included in each code among the encoding stream Str0a; And contrary flexure folding scanner IScan, be used for from quantized components DQS by the quantized components DQS reconstruct two-dimensional array of the decoding of the one-dimensional array of variable-length decoder VLD output.
In this decoding unit RLD0a, variable-length decoder VLD is according to operation decodes this encoding stream Str0a opposite with variable length coder VLC, and output is corresponding to the quantized components Coef of code (code word).Then, this contrary flexure folding scanner IScan carries out and the opposite operation of zigzag scanning instrument Scan, with from quantized components DQS, and the quantized components DQS of this decoding outputed to this inverse quantization unit IQ by the decoding of the quantized components Coef reconstruct two-dimensional array of the one-dimensional array of variable-length decoder VLD output.
Disclose a kind of method among the Japanese patent application No.6-311534, one of them picture signal is divided into luminance signal and color difference signal, handles so that the signal that is obtained is subjected to variable length code.
A plurality of quantized components corresponding to each piece that is set up predesigned order are the data that comprise the highly redundant degree, that is, following a plurality of numerical value afterwards continuously at the coefficient (nonzero coefficient) of a non-zero is zero coefficient (zero coefficient).For this quantized components of encoding, usually adopt a kind of like this method, wherein the quantized components of deletion redundant information is encoded, for example, the runlength encoding method of quantized components being encoded by the rank numerical value of distance of swimming numerical value that uses the number of representing continuous zero coefficient and the numerical value that is illustrated in this zero coefficient nonzero coefficient afterwards.
Hereinafter, will the normal image code device that use this runlength encoding method be described.
Figure 34 is the block diagram that the normal image code device of carrying out run length coding, RLC is shown.
This picture coding device 201b comprises the run length coding, RLC unit R LE0b of the coding unit RLE0a that replaces the picture coding device 201a shown in Figure 30, be used for making that output (quantized components) QS from quantifying unit Q is subjected to run length coding, RLC, and export an encoding stream Str0b.Other parts are identical with picture coding device 201a's.
The operation part that the operation of this picture coding device 201b is different from picture coding device 201a only is the operation of coding unit RLE0b.
Figure 35 is the block diagram that is illustrated in the concrete structure of the coding unit RLE0b among the picture coding device 201b.
This run length coding, RLC unit R LE0b is similar to coding unit RLE0a, has a zigzag scanning instrument Scan, is used for handle is transformed to one dimension (that is predesigned order) from output (quantized components) QS of the two-dimensional array of quantifying unit Q quantized components Coef.
Then, this run length coding, RLC unit R LE0b further comprises: distance of swimming calculator RunCal is used to calculate its numerical value and is the number of zero continuous quantity polarization component (zero coefficient) Coef and the distance of swimming numerical value Run of the number of the continuous zero coefficient of output expression; And level calculator LevCal, be used to calculate the numerical value of the quantized components (nonzero coefficient) of numerical nonzero after this zero coefficient, and export the rank numerical value Lev of the numerical value of this nonzero coefficient of expression.
This run length coding, RLC unit R LE0b further comprises a variable length coder LevVLC, be used for making that being subjected to variable length code from the rank numerical value Lev of level calculator LevCal output handles, and export a code string (rank numerical value code string) LStr; Variable length coder RVLC is used for making that being subjected to variable length code from the distance of swimming numerical value Run of distance of swimming calculator RunCal output handles, and exports a code string (distance of swimming numerical value code string) RStr; And multiplexer MUX, be used for each piece multiplexer level value code string LStr and distance of swimming numerical value code string RStr, and export a multiplexing encoding stream Str0b.
Below its operation will be described.
The quantized components QS of this zigzag scanning instrument Scan handle the two-dimensional array of exporting from quantifying unit Q is transformed to the quantized components Coef in the one-dimensional array (predesigned order), and exports this quantized components Coef.By zigzag scanning instrument Scan the conversion process of quantized components QS is carried out according to the mode identical with the coding unit RLE0a of picture coding device 201a.
This distance of swimming calculator RunCal calculates the number of continuous zero coefficient according to the quantized components Coef from zigzag scanning instrument Scan output, and the distance of swimming numerical value Run of the numerical value that calculated of output expression.This level calculator LevCal calculates the numerical value of the nonzero coefficient after continuous zero coefficient according to the quantized components Coef from zigzag scanning instrument Scan output, and exports the rank numerical value Lev of this numerical value of expression.
At this, when detecting the highest frequency component (last nonzero coefficient) in object block that will be processed, this distance of swimming calculator RunCal produces a special value EOB (end of piece), all has remainder value to represent follow-up higher frequency component.
In addition, this variable length coder RVLC makes that being subjected to variable length code from the distance of swimming numerical value Run of distance of swimming calculator RunCal output handles, be used for a code (code word) being assigned to this distance of swimming numerical value, and export a code string RStr according to a code table or arithmetical operation.This variable length coder LevVLC makes that being subjected to variable length code from the rank numerical value Lev of level calculator LevCal output handles, be used for a code (code word) being assigned to this rank numerical value, and export a code string LStr according to code table or arithmetical operation.
This multiplexer MUX is for each piece multiplexing this code string LStr and code string RStr, and exports a multiplexing encoding stream Str0b.
At this, carry out the processing that is used for multiplexing code string LStr and code string RStr for each piece, for example according to corresponding to after the code string RStr of all distance of swimming numerical value that are used for an object block then corresponding to the code string LStr of all rank numerical value that are used for this object block, perhaps corresponding to after the code string LStr of all rank numerical value that are used for an object block then corresponding to the code string RStr of all distance of swimming numerical value that are used for this object block.
As indicated above, by use its numerical value of expression be zero (zero coefficient) Coef the quantized components number distance of swimming numerical value Run and be illustrated in the rank numerical value Lev of the numerical value of the quantized components of its numerical nonzero (nonzero coefficient) after this zero coefficient and can a plurality of quantization parameters be encoded with higher code efficiency according to the encode picture coding device of a plurality of quantization parameters of predesigned order, and eliminate its redundant information.
Figure 36 is the block diagram that is used to illustrate corresponding to the picture decoding apparatus 202b of as shown in Figure 34 picture coding device 201b.
This picture decoding apparatus 202b is to decoding from the encoding stream Str0 that dislikes picture coding device 201b output as shown in Figure 34.
This picture decoding apparatus 202b replaces the decoding unit RLD0a of picture decoding apparatus 202a as shown in Figure 32 with run length decoding unit RLD0b, is used for making being subjected to the run length decoding processing from picture coding device 201b output.Other parts are identical with picture decoding apparatus 202a.
The operation of this picture decoding apparatus 202b is different from the operation that picture decoding apparatus 202a part only is decoding unit RLD0b.
Figure 37 is the block diagram that is illustrated in the run length decoding unit RLD0b concrete structure among the picture decoding apparatus 202b.
This run length decoding unit RLD0b has a demultiplexer DMUX, be used for that the multiplexing encoding stream Strob from picture coding device 201b output is carried out multichannel and decompose, to obtain corresponding to the code string LStr of this rank numerical value and corresponding to the code string LStr of distance of swimming numerical value; Variable-length decoder LVLD is used to make this code string LStr to be subjected to length-changeable decoding and handles, with this rank numerical value of reconstruct Lev; Variable length coder RVLC is used to make code string RStr to be subjected to length-changeable decoding and handles, with this distance of swimming numerical value of reconstruct Run; And contrary flexure folding scanner IScan, be used for from the quantized components DQS of the decoding of decoding quantized components reconstruct two-dimensional array of the one-dimensional array represented by rank numerical value Lev and distance of swimming numerical value Run.
Below its operation will be described.
In picture decoding apparatus 202b, this run length decoding unit RLD0b carries out the anti-operation to run length coding, RLC unit R LE0b.That is, this run length decoding unit RLD0b decomposes this multiplexing encoding stream Str0b, to obtain corresponding to the code string LStr of this rank numerical value with corresponding to the code string RStr of distance of swimming numerical value.
Then, this variable-length decoder LVLD is by the code string LStr of the operation decodes opposite with variable length coder LevVLC corresponding to this rank numerical value, and exports this rank numerical value Lev.This variable-length decoder RVLD is by the code string RStr of the operation decodes opposite with variable length coder RVLC corresponding to this distance of swimming numerical value, and exports this distance of swimming numerical value Run.
This contrary flexure folding scanner IScan from the quantized components DQS by the decoding of quantized components reconstruct in two-dimensional array the represented one-dimensional array of rank numerical value Lev and distance of swimming numerical value Run, and outputs to inverse quantization unit IQ to the quantized components of this decoding by the operation opposite with zigzag scanning instrument Scan.But the contrary flexure folding scanner IScan part that contrary flexure folding scanner IScan (referring to Figure 37) is different from as shown in Figure 33 is that it is transfused to rank numerical value Lev and distance of swimming numerical value Run.Therefore, contrary flexure folding scanner IScan as shown in Figure 37 has the function that is converted to quantized components Coef by rank numerical value Lev and the represented coefficient of distance of swimming numerical value Run.
According to carrying out picture decoding apparatus according to predesigned order to the decoding processing of a plurality of quantization parameters decodings by to use its numerical value be the number of quantized components Coef of zero (zero coefficient) and the rank numerical value Lev that is illustrated in the numerical value of the quantized components Coef of (nonzero coefficient) of its numerical nonzero after this zero coefficient, can be satisfactorily to decoding by the data that are encoded that obtain according to the runlength encoding method coding of removing redundant information with higher code efficiency.
Hereinafter, will another example of the normal image code device that use runlength encoding method be described.
Figure 38 is the block diagram that another example of the picture coding device that adopts conventional run length coding, RLC unit is shown.Nearly all and for example MPEG or H.261 and H.263 the compatible mutually normal image code device of H26L standard (TML8) of (ITU) such standard or draft have as shown in Figure 38 structure.
Be similar to picture coding device 201b as shown in Figure 34, this picture coding device 201c uses distance of swimming numerical value and rank numerical value to carry out quantization parameter and dislikes coding, and this picture coding device 201c does not carry out and is similar to handling for the variable length code of distance of swimming numerical value and rank numerical value respectively of picture coding device 201b, handles but a pair of distance of swimming numerical value and rank numerical value (distance of swimming-rank to) are carried out variable length code.
More specifically, this picture coding device 201c be similar to picture coding device 201b and have the piecemeal unit B lk that is transfused to a picture signal Vin, be used for making from this minute module unit output BlkS be subjected to the quantifying unit Q that frequency translation is disliked frequency conversion unit and is used to quantize output (frequency component) TransS from this converter unit.This picture coding device 201c further comprises a run length coding, RLC unit R LE0c, be used for making that output (quantized components) QS from this quantifying unit is subjected to a run length coding, RLC processing, be used for comprising a distance of swimming-rank of distance of swimming numerical value and rank numerical value to being transformed to a variable-length codes.
Below its operation will be described.
This piecemeal unit B lk is divided into picture signal corresponding to module unit to picture signal Vin, to produce pixel value components (picture signal of piecemeal) BlkS.This frequency conversion unit Trans is transformed to frequency component TransS to this pixel value components BlkS according to DCT (discrete cosine transform) or wavelet transformation.This quantifying unit Q quantizes this frequency component TransS according to quantization parameter QP, with output variable polarization component QS, and exports this quantifying unit Q.This run length coding, RLC unit R LE0c makes this quantized components QS be subjected to run length coding, RLC, and exports an encoding stream Str0c.
At this, this piece is the zone of the preliminary dimension in this image (image space), and it is a unit in the encoding process that is used for a picture signal, and comprises the pixel of predetermined number.This run length coding, RLC is to be used for comprising that expression numerical value is that the distance of swimming numerical value of number of continuous quantity polarization component of zero (zero coefficient) and a pair of numerical transformation of rank numerical value of numerical value that is illustrated in the quantized components of the numerical nonzero (nonzero coefficient) after this zero coefficient are the processing of a variable-length codes, in other words, it is the processing that is used for a variable-length codes (code word) is assigned to a pair of distance of swimming numerical value and rank numerical value (distance of swimming-rank to).
To specifically describe run length coding, RLC unit R LE0c below.
Figure 39 is the block diagram that a kind of run length coding, RLC unit R LE0c of routine is shown.
The run length coding, RLC unit R LE0b that this run length coding, RLC unit R LE0c is similar to as shown in Figure 35 has a zigzag scanning instrument Scan, be used for output (quantized components) QS from the two-dimensional array of quantifying unit Q is transformed to quantized components Coef in one-dimensional array (that is predesigned order); Distance of swimming calculator RunCal is used to calculate its numerical value and is the continuous number of the quantized components Coef of zero numerical value (zero coefficient), and exports a distance of swimming numerical value Run; And level calculator LevCal, be used to calculate the numerical value of quantized components Coef of (nonzero coefficient) of the non-zero after this zero coefficient, and export a rank numerical value Lev.
This run length coding, RLC unit R LE0c further comprises a distance of swimming grade encoding device RunLevEnc, is used for obtaining Code Number Code corresponding to a pair of rank numerical value Lev and distance of swimming numerical value Run according to code table or arithmetical operation based on the output from distance of swimming calculator RunCal and level calculator LevCal; And variable length coder VLC, be used for a code word is assigned to this Code Number Code, to produce encoding stream Str0c corresponding to this picture signal Vin.
Below its operation will be described.
In run length coding, RLC unit R LE0c, be similar to run length coding, RLC unit R LE0b, the quantized components QS of this zigzag scanning instrument Scan handle from the two-dimensional array of quantifying unit Q output is transformed to the quantized components Coef in the one-dimensional array (predesigned order), and exports the quantized components that is obtained.
Figure 43 is used to specify the schematic diagram that is used for by the processing of this quantized components of zigzag scanning instrument Scan conversion QS.
Have as shown in Figure 43 two-dimensional array from the quantized components QS of quantifying unit Q output, that is, on a two-dimentional frequency field Fr, arrange the array of this quantized components QS with matrix form according to the size of the size of horizontal frequency component and vertical frequency component.
This zigzag scanning instrument Scan carries out and to be used for the processing at this quantized components of two-dimensional array scanning QS of the mode of complications, as shown in figure Y1 to Y7, this quantized components QS is transformed to the quantized components Coef of one-dimensional array.That is to say that this scan process is provided with a predesigned order for a plurality of quantized components QS of two-dimensional array along this scanning pattern.
This distance of swimming calculator RunCal calculates the number of continuous zero coefficient according to the quantized components Coef from zigzag scanning instrument Scan output, and exports the distance of swimming numerical value Run of expression institute calculated number.This level calculator LevCal calculates the numerical value of a nonzero coefficient after zero coefficient continuously according to the quantized components Coef from this zigzag scanning instrument Scan output, and a rank numerical value of the numerical value that calculated is represented in output.At this, numerical value EOB (end of piece) was specified in one of output when this distance of swimming calculator RunCal detected highest frequency component (last nonzero coefficient) in a object block that will be processed, all had remainder value to be illustrated in follow-up higher frequency component.
In addition, this distance of swimming grade encoding device RunLevEnc obtains Code Number Code corresponding to a pair of rank numerical value Lev and distance of swimming numerical value Run according to a code table or arithmetical operation based on the output from distance of swimming calculator RunCal and level calculator LevCal.This variable length coder VLC coding promptly, is assigned to this Code Number to a code word (bit string), to produce an encoding stream Str0 by the Code Number Code that this transducer RunLevEnc is obtained.
Figure 42 illustrates a code table that is adopted by run length coding, RLC unit R LE0c.Code table shown in Figure 42 (first generation code table) T1 illustrates and the draft of the plan now standard code table of the DC component of a compatible color difference signal mutually H.26L.
This code table T comprises: one can regular generating portion, it comprise corresponding to can according to a kind of arithmetical operation use that rank numerical value and distance of swimming numerical value (VLC of rule structure) calculates corresponding to rank numerical value and the right Code Number of distance of swimming numerical value; And irregular part, it comprise can not by arithmetical operation (table lookup VLC) calculate corresponding to rank numerical value and the right Code Number of distance of swimming numerical value.In addition, bit string (not shown) is given each Code Number Code according to relation allocation one to one, as a code word.A shorter code word is assigned to has a more Code Number Code of fractional value.
Conventional decoding device according to picture coding device 201c will be described below.
Figure 40 is the block diagram that a picture decoding apparatus 202c who adopts conventional run length decoding unit RLD0 is shown.
The encoding stream Str0c that this picture decoding apparatus 202c decodes and exports from normal image code device 201c as shown in Figure 39.
The coefficient that this picture decoding apparatus 202c uses this distance of swimming numerical value and the decoding of rank numerical value to quantize, this is identical with the picture decoding apparatus 202b shown in Figure 36, and this picture decoding apparatus 202c not mutually this picture decoding apparatus 202b carry out the length-changeable decoding of this distance of swimming numerical value and rank numerical value like that respectively, but carry out the length-changeable decoding that comprises this distance of swimming numerical value and rank numerical value (distance of swimming-rank to).
More specifically, this picture decoding apparatus 202c has a run length decoding unit RLD0c, and its use comprises that a distance of swimming-rank of distance of swimming numerical value and rank numerical value is subjected to the run length decoding processing to making from the encoding stream Str0c of picture coding device 201c output.This picture decoding apparatus 202c is identical with picture decoding apparatus 202b further to have an inverse quantization unit IQ, is used for making output (quantized components of decoding) DQS from run length decoding unit RLDc to be subjected to inverse quantization and handles; Anti-frequency conversion unit ITrans is used for making that output (frequency component of the decoding) ITransS from inverse quantization unit IQ is subjected to anti-frequency conversion process; And the cells D eBlk that deblocks, be used for according to the decoded image signal Vout of output (decoded image signal) the DBlkS generation that comes reflexive frequency conversion unit ITrans corresponding to each image.
Below its operation will be described.
In picture decoding apparatus 202c, this run length decoding unit RLD0c carries out the opposite operation with the operation of run length coding, RLC unit R LE0c.More specifically, this run length decoding unit RLD0c makes encoding stream Str0c be subjected to the run length decoding processing, with the quantized components DQS of output decoder.This inverse quantization unit IQ carries out the operation opposite with quantifying unit Q,, with reference to quantization parameter QP the quantized components DQS of this decoding is carried out the operation of inverse quantization, with the frequency component ITransS of output decoder that is.This anti-frequency conversion unit ITrans carries out the operation opposite with frequency conversion unit Trans, promptly, make the frequency component ITransS of decoding be subjected to anti-DCT or anti-wavelet transformation, with pixel value signal (the block image signal of the decoding) DBlkS of reconstruct corresponding to the decoding of each piece.This cells D eBlk that deblocks is in conjunction with the image pixel value component that is used for each piece, and output is corresponding to the decoded image signal Vout of each image (frame).
To specifically describe run length decoding unit RLD0c below.
Figure 41 is the block diagram that is used to illustrate the concrete structure of run length decoding unit RLD0c.
This run length decoding unit RLD0c has a variable-length decoder VLD, is used to make this encoding stream Str0c to be subjected to length-changeable decoding and handles, to obtain corresponding to the Code Number Code that is included in each code (code word) among the encoding stream Str0c; Distance of swimming rank detector RunLevDec is used to detect a pair of rank numerical value Lev and distance of swimming numerical value Run corresponding to this Code Number Code; And contrary flexure folding scanner IScan, be used for according to this to rank numerical value Lev and distance of swimming numerical value Run from quantized components DQS by the decoding of quantized components reconstruct two-dimensional array of the decoding of the represented one-dimensional array of rank numerical value Lev and distance of swimming numerical value Run.
Below its operation will be described.
In run length decoding unit RLD0c, this variable-length decoder VLD is according to operation decodes this encoding stream Str0c opposite with variable length coder VLC, and output is corresponding to a Code Number Code of a code word (bit string).This distance of swimming rank detector RunLevDec is with reference to a code table or carry out arithmetical operation, to export a pair of rank numerical value Lev and the distance of swimming numerical value Run corresponding to Code Number Code according to the operation opposite with distance of swimming grade encoding device RunLevEne.This contrary flexure folding scanner ISca from by this quantized components DQS to the quantized components reconstruct decoding in a two-dimensional array the represented one-dimensional array of rank numerical value Lev and distance of swimming numerical value Run, and outputs to inverse quantization unit IQ to the quantized components DQS of this decoding according to the operation opposite with zigzag scanning instrument Scan.
Japanese patent application No.6-237184 discloses a kind of runlength encoding method, and wherein to use its numerical value of expression be the distance of swimming numerical value Run of number of quantized components Coef of zero (zero coefficient) and the rank numerical value Lev that is illustrated in the quantized components Coef of (nonzero coefficient) of its numerical nonzero after this zero coefficient according to predesigned order a plurality of coefficients of encoding.
Japan Patent No.3144456 (corresponding to Japanese patent application No.8-79088) discloses a kind of method, and wherein the numerical value according to this differential motion vector value changes variable length code table (VLC table) when using a variable length code table that the differential motion vector value is encoded in the method that is used for encoding digital video data predictably.
In addition, known this arithmetic coding method as another kind of method is variable-length coding by this pixel value of this method, wherein carries out variable length code by the possibility of using this pixel value to get predetermined value according to a kind of arithmetical operation.According to this arithmetic coding, derive a code from this possibility, make description show corresponding to this VLC corresponding to the arithmetic coding of the possibility of various situations.At this, " all about MPEG-4 " (write by Miki Sukeichi, published by KogyoChosakai publishing company, front page, the first impression, the 69-73 page or leaf) describe a kind of method, it is by changing a possibility form and the pixel value corresponding to the pixel of a coding target is carried out arithmetic coding from the Forecasting Methodology of a coding target pixel of the pixel value prediction of surrounding pixel according to being used for.
The coding unit RLE0a of the picture coding device 201a of above-mentioned routine is to carrying out variable length code by a plurality of quantization parameters that each predetermined process unit (piece) quantized image data frequency component is obtained.This coding unit adopts the numerical information of the size that each quantization parameter is shown and the predetermined code table of the corresponding relation between the code (code word).Carried out in the variable length code processing by this coding unit, the redundant information that is included in the quantization parameter (wanting processed data) can not be removed fully, therefore can further improve compression ratio.
And in this run length coding, RLC unit, it uses its numerical value of expression is the distance of swimming numerical value of number of quantized components Coef of zero (zero coefficient) and the variable length code that the rank numerical value that is illustrated in the numerical value of the quantized components Coef of (nonzero coefficient) of its numerical nonzero after this zero coefficient is carried out a plurality of quantization parameters, be similar to coding unit RLE0b or RLE0c in normal image code device 201b or 201c, the redundant information that is included in this quantization parameter in this variable length code is handled is not removed fully.
In addition, the run length decoding unit RLD0b of the picture decoding apparatus 202b of the decoding unit RLD0a of Chang Gui picture decoding apparatus 202a or routine or 202c or RLD0c remove the coding unit that is included in the redundant information in this quantization parameter fully corresponding to handling in the variable length code that is used for this quantization parameter.
In addition, for the method that when using a variable length code table that the differential motion vector value is encoded, changes variable length code table (VLC table) in the method that is used for encoding digital video data predictably according to the numerical value of this differential motion vector value, now also not to be similar to the variable length code of data of characteristic that the quantization parameter that obtains by the frequency component that quantizes a picture signal has the number of the continuous zero coefficient of following subsequently like this handle in the effective method of change variable length code table.
The present invention will address the above problem, and the purpose of coding provides a kind of variable length decoding method and variable length decoding method, it can eliminate the redundant information that is included in the target data (quantization parameter) that is used for the variable length code processing with the state that is used for the encoding process of quantized components more effectively according to the characteristic of the coefficient that is quantized, thereby further increases the compression ratio of picture signal or the like.
Summary of the invention
According to the present invention, provide a kind of variable length decoding method of the coefficient data that constitutes by a plurality of coefficient of being used to encode at this, comprising: coding step, be used for by the numerical value of this coefficient of use expression and a plurality of code tables of the corresponding relation between the code, make each coefficient be subjected to coefficient data is transformed to the encoding process of the data that are encoded that constitute by a plurality of code, and this coding step comprises: code table is selected step, is used for according to coefficient and the parameter relevant with the encoding process of this coefficient this code table of Information Selection one of at least that is encoded about being encoded; And the assignment of code step, be used to use selecteed code table an assignment of code to a uncoded coefficient that also is not encoded.Therefore, by selecting code table and remove the redundant information that is included in as in the coefficient data that will be subjected to the object that variable length code handles effectively, thereby increase the code efficiency that the variable length code that is used for picture signal or the like is handled widely according to the characteristic of the coefficient that constitutes this coefficient data or to the state of the encoding process of this coefficient.
According to the present invention, in above-mentioned variable length decoding method, by obtaining this coefficient according to frequency component corresponding to the quantization view data of this view data, and select in the step at this code table, the code table that be used for this assignment of code step is selected according to the numerical value of this quantization step.Therefore always can adopt the code table of the numerical value that is applicable to this quantization step and make the code efficiency maximization.
According to the present invention, in above-mentioned variable length decoding method, according to encoding process to this coefficient, represent that its numerical value is that the distance of swimming numerical value of number of zero continuous zero coefficient and the rank numerical value that is illustrated in the numerical value of the nonzero coefficient after this zero coefficient are transformed to a code respectively, select in the step at this code table, select first of a code table to select to handle at the numerical value that is used for according to this quantization step from a plurality of code tables of representing the corresponding relation between this distance of swimming numerical value and the code, and be used for selecting second at least one processing of selecting to handle of a code table to be performed from a plurality of code tables of representing the corresponding relation between this rank numerical value and the code according to the numerical value of this quantization step, and in this assignment of code step, according to selecteed code table, code is assigned to corresponding to one that also is not encoded the not distance of swimming numerical value of code coefficient and at least one numerical value in the rank numerical value.Therefore, the code table that is suitable for the numerical value of this quantization step by use always can be carried out the assignment of code at least one numerical value in distance of swimming numerical value and the rank numerical value, and makes the total bit corresponding to institute's allocation of codes be minimized.
According to the present invention, in above-mentioned variable length decoding method, according to encoding process to this coefficient, comprise that its numerical value of expression is that the distance of swimming numerical value of number of zero continuous zero coefficient and the distance of swimming-rank of rank numerical value of numerical value that is illustrated in the nonzero coefficient after this zero coefficient are to being transformed to a code, select in the step at this code table, numerical value according to this quantization step, from represent this distance of swimming-rank to and this code between a plurality of code tables of corresponding relation select a code table, and in this assignment of code step, according to selected code table, it is right that code is assigned to corresponding to a distance of swimming-rank of the not code coefficient that also is not encoded.Therefore, always can carry out the assignment of code right, and make the total bit corresponding to institute's assigned code minimize the distance of swimming-rank by using a code table that is suitable for the numerical value of this quantization step.
According to the present invention, in above-mentioned variable length decoding method, select in the step, according to Information Selection used code table in this assignment of code step about the coefficient that is encoded at this code table.Therefore, be suitable for not the code table of the number of code coefficient by use and always can carry out the encoding process that is used for quantization parameter, and make this code efficiency maximization.
According to the present invention, in above-mentioned variable length decoding method, according to encoding process to this coefficient, represent that its numerical value is that the distance of swimming numerical value of number of zero continuous zero coefficient and the rank numerical value that is illustrated in the numerical value of the nonzero coefficient after this zero coefficient are transformed to a code respectively, select in the step at this code table, be used for according to selecting first of a code table to select to handle from a plurality of code tables of representing the corresponding relation between this distance of swimming numerical value and the code about information corresponding to the distance of swimming numerical value of this coding, and be used for selecting second at least one processing of selecting to handle of a code table to be performed from a plurality of code tables of representing the corresponding relation between this rank numerical value and the code according to information about the rank numerical value of the coefficient that is encoded corresponding to this, and in this assignment of code step, according to selected code table, code is assigned to corresponding to the not distance of swimming numerical value of code coefficient and at least one numerical value in the rank numerical value.Therefore, be suitable for the code table of the number of code coefficient not by use and always can carry out assignment of code, and make this code efficiency maximization at least one numerical value in distance of swimming numerical value and the rank numerical value.
According to the present invention, in above-mentioned variable length decoding method, select in the step at this code table, number according to the distance of swimming numerical value that is encoded that has been encoded is selected a code table from a plurality of code tables of representing the corresponding relation between this distance of swimming numerical value and the code, and in this assignment of code step, according to selected code table, a code is assigned to the distance of swimming numerical value of not encoding that also is not encoded.Therefore, the code table that is suitable for the number of also untreated distance of swimming numerical value by use always can be carried out the assignment of code to distance of swimming numerical value, and makes the code efficiency maximization.
According to the present invention, in above-mentioned variable length decoding method, according to encoding process to this coefficient, comprise that its numerical value of expression is that the distance of swimming numerical value of number of zero continuous zero coefficient and the distance of swimming-rank of rank numerical value of numerical value that is illustrated in the nonzero coefficient after this zero coefficient are to being transformed to a code, select in the step at this code table, according to about corresponding to the right information of the distance of swimming-rank of the encoded coefficient that is encoded from represent this distance of swimming-rank to and code between a plurality of code tables of corresponding relation select a code table, and in this assignment of code step, according to selected code table, it is right that code is assigned to corresponding to a distance of swimming-rank of the not code coefficient that also is not encoded.Therefore, be suitable for the also code table of the number of untreated coefficient, always can carry out the distribution right, and make code efficiency maximize this distance of swimming-rank by use.
According to the present invention, in above-mentioned variable length decoding method, by obtaining this coefficient according to frequency component corresponding to the quantization view data of this view data, and in this coding step, execution is to the encoding process of this coefficient, makes code be assigned to constitute from the high fdrequency component to the low frequency component a plurality of coefficients of this coefficient data.Therefore, the total bit corresponding to the code that is assigned to this coefficient can further be reduced.
According to the present invention, in above-mentioned variable length decoding method, according to encoding process to this coefficient, comprise that its numerical value of expression is that the distance of swimming numerical value of number of zero continuous zero coefficient and the distance of swimming-rank of rank numerical value of numerical value that is illustrated in the nonzero coefficient after this zero coefficient are to being converted into a code, be used for each piece that coefficient constituted by predetermined number, and select in the step at this code table, number sum according to the nonzero coefficient of not encoding that in object block, has been subjected to the number of handling coefficient of encoding process and in this object block, also has not been encoded as the object of this encoding process, from represent this distance of swimming-rank to and this code between a plurality of code tables of corresponding relation select a code table, and in this assignment of code step, according to selected code table, code is assigned to that the distance of swimming-the rank of code coefficient is not right corresponding to one in this object block.Therefore, can adopt not comprise the distance of swimming numerical value that can not occur and the code table of rank numerical value, thereby increase variable length code efficient.
According to of the present invention, in above-mentioned variable length decoding method, according to encoding process to this coefficient, comprise that its numerical value of expression is that the distance of swimming numerical value of number of zero continuous zero coefficient and the distance of swimming-rank of rank numerical value that is illustrated in the nonzero coefficient after this zero coefficient are to being converted into a code, this coding step comprises a code table treatment step, be used for based on this first generation code table, according to constituting the right distance of swimming numerical value of this distance of swimming-rank and the combination of rank numerical value, change termly this distance of swimming-rank of expression to and respective code between the first generation code table of corresponding relation in this distance of swimming-rank to and this code between corresponding relation, thereby form different with first generation code table have this distance of swimming-rank to and this code between the second generation code table of different corresponding relations, and select in step at this code table, according to about one of treated coefficient and the parameter relevant this first and second code table of Information Selection one of at least with the generation of this coefficient.Therefore, when code be assigned to distance of swimming numerical value and rank numerical value to the time, one of this first and second code table is adapted to ground to be selected as an optimum code table that will be used, thereby can form the redundant information that is included in the target data of wanting processed effectively.Correspondingly, the compression ratio that is used for picture signal or the like can be further improved, thereby this variable length decoding method is very useful.
According to the present invention, in above-mentioned variable length decoding method, in first and second code tables, short code is applicable to that correspondingly each the distance of swimming-rank with the less rank numerical value that constitutes this distance of swimming-rank centering is right, and in second generation code table, with first code epiphase ratio, less with the mean value of the right rank numerical value of the distance of swimming-rank corresponding than short code.Therefore, when the quantization parameter of the coefficient that is used to constitute the target data of wanting processed was big, this variable length decoding method was useful.
According to the present invention, in above-mentioned variable length decoding method, in this first and second code table, it is right corresponding to having each the distance of swimming-rank that constitutes the right less distance of swimming numerical value of this distance of swimming-rank to adapt to ground than short code, and it is in second generation code table, less corresponding to the mean value of the distance of swimming numerical value right than the distance of swimming-rank of short code with first code epiphase ratio.Therefore, when the quantization parameter that is used for this coefficient that constitutes this target data hour, this variable length decoding method is useful.
According to the present invention, in above-mentioned variable length decoding method, according to encoding process to this coefficient, for carrying out the distance of swimming-rank to conversion to code by each piece that coefficient constituted of predetermined number, and in this code table treatment step, form second generation code table according to the number of handling coefficient that in object block, has been subjected to encoding process as the object of encoding process.Therefore, can adopt not comprise the right code table that is constituted by distance of swimming numerical value and rank numerical value that can not occur, thereby further increase this variable length code efficient as second generation code table.
According to the present invention, in above-mentioned variable length decoding method, in this assignment of code step, from the high fdrequency component to the low frequency component, from corresponding to the distance of swimming-rank of the coefficient of highest frequency component with view data to carrying out the assignment of code right to the distance of swimming-rank.Therefore, can become bigger by the recruitment of using the right variable length code efficient that code table obtained do not comprise the distance of swimming numerical value that can not occur and rank numerical value.
According to the present invention, in above-mentioned variable length decoding method, by the distance of swimming-rank in being contained in first generation code table to and code between corresponding relation in only change the corresponding relation that can regularly operate and form this second generation code table.Therefore, can reduce to form the required arithmetical operation of this second generation code table.
According to the present invention, at above-mentioned variable length decoding method, according to quantization step corresponding to this view data, obtain to constitute the coefficient of this coefficient data by the frequency component that quantizes view data, and this code table to select step be to be used for the code table switch step that the numerical value according to this quantization step switches between first generation code table and second generation code table.Therefore, a code table that is applicable to this quantization step can be used as the code table that the variable length code of the coefficient that will be used for constituting the target data of wanting processed is handled.
According to the present invention, at above-mentioned variable length decoding method, it is to be used for a code table switch step switching between first generation code table and second generation code table according to a switching command signal that this code table is selected step, and in this coding step, carries out the coding of this switching command signal.Therefore, be used for the code table that the variable length code of this coefficient is handled can be changed according to the feature of this target data or the like.
According to the present invention, in above-mentioned variable length decoding method, according to encoding process to this coefficient, to carrying out the distance of swimming-rank to conversion to code by each piece that coefficient constituted of predetermined number, and in this code table treatment step, according in a object block, be subjected to the number of handling coefficient of encoding process as the object of encoding process and in this object block the number sum of the also uncoded nonzero coefficient of not encoding form second generation code table.Therefore, do not comprise that the distance of swimming numerical value and the right code table of rank numerical value that can not occur can be used as second generation code table, thereby further increase variable length code efficient.
According to the present invention, provide a kind of variable-length encoder of the coefficient data that constitutes by a plurality of coefficient of being used to encode at this, comprising: coding unit, be used for by the numerical value of this coefficient of use expression and a plurality of code tables of the corresponding relation between the code, make each coefficient be subjected to coefficient data is transformed to the encoding process of the data that are encoded that constitute by a plurality of code, and this coding unit comprises: the code table selected cell is used for according to coefficient and the parameter relevant with the encoding process of this coefficient this code table of Information Selection one of at least that is encoded about being encoded; And the assignment of code unit, be used to use selecteed code table an assignment of code to a uncoded coefficient that also is not encoded.Therefore, by according to the characteristic of the coefficient that constitutes this coefficient data or to the state of the encoding process of this coefficient select a code table and effectively deletion be included in as the redundant information in the coefficient data that will be subjected to the object that variable length code handles, thereby increase the code efficiency that the variable length code that is used for picture signal or the like is handled widely.
According to the present invention, in above-mentioned variable length decoding method, by obtaining this coefficient according to frequency component corresponding to the quantization view data of this view data, and this code table selected cell select according to the numerical value of this quantization step will be by the used code table in this assignment of code unit.Therefore, always can adopt the code table of the numerical value that is applicable to this quantization step and make code efficiency maximization.
According to the present invention, in above-mentioned variable-length encoder, this code table selected cell is according to the information about this coefficient that is encoded, and selection will be by the used code table in this assignment of code unit.Therefore, always can be applicable to that also the number execution of untreated coefficient is used for the encoding process of quantization parameter, and make code efficiency maximize by employing.
According to the present invention, in above-mentioned variable-length encoder, according to encoding process to this coefficient, represent that its numerical value is that the distance of swimming numerical value of number of zero continuous zero coefficient and the rank numerical value that is illustrated in the numerical value of the nonzero coefficient after this zero coefficient are transformed to a code respectively, this code table selected cell is according to a plurality of distance of swimming numerical value that are encoded that are assigned with code, from a plurality of code tables of representing the corresponding relation between this distance of swimming numerical value and the code, select a code table, and this assignment of code unit is given the also uncoded distance of swimming numerical value of not encoding an assignment of code according to selecteed code table.Therefore, be applicable to the code table of the number of also untreated distance of swimming numerical value, always can carry out assignment of code, and make the code efficiency maximization distance of swimming numerical value by use.
According to the present invention, in above-mentioned variable-length encoder, according to quantization step corresponding to this view data, obtain this coefficient by the frequency component that quantizes view data, and this coding unit is carried out encoding process to this coefficient of coding unit, makes code be assigned to constitute from the high fdrequency component to the low frequency component a plurality of coefficients of this coefficient data.Therefore, the sum corresponding to the code that is assigned to this coefficient can further be reduced.
According to the present invention, provide a kind of storage medium at this, carry out the program of handling by the variable length code of the coding of the coefficient data that a plurality of coefficient constituted comprising being used for by computer, and this program comprises: coding step, be used for by the numerical value of this coefficient of use expression and a plurality of code tables of the corresponding relation between the code, make each coefficient be subjected to coefficient data is transformed to the encoding process of the data that are encoded that constitute by a plurality of code, and this coding step comprises: code table is selected step, is used for according to coefficient and the parameter relevant with the encoding process of this coefficient this code table of Information Selection one of at least that is encoded about being encoded; And the assignment of code unit, be used to use selecteed code table an assignment of code to a not code coefficient that also is not encoded.Therefore, can realize having the more variable length code of high coding efficiency by software and handle, its by according to the characteristic of the coefficient that constitutes this coefficient data or to the state of the encoding process of this coefficient select a code table and effectively deletion be included in as the redundant information in the coefficient data that will be subjected to the object that variable length code handles.
According to the present invention, provide a kind of variable length decoding method of the data that are encoded that comprise a plurality of codes of being used to decode at this, comprising: decoding step, be used to use the numerical value of this coefficient of expression and a plurality of code tables of the corresponding relation between the code, make each code be subjected to decoding processing to these data that are encoded, with reconstruct by coefficient data that a plurality of coefficient was constituted, and this decoding step comprises: code table is selected step, is used for according to about decoded decoded coefficient and the parameter relevant with the decoding processing of this coefficient this code table of Information Selection one of at least; And numerical value detection step, be used for by using the numerical value of selected code table detection corresponding to the code of not decoding of also not decoding.Therefore, can carry out the length-changeable decoding of handling corresponding to the variable length code with higher code efficiency and handle, this encoding process is deleted the redundant information that is included in the coefficient data effectively by changing code table, with this coefficient data of encoding.
According to the present invention, in above-mentioned length-changeable decoding is handled, by obtaining this coefficient according to frequency component corresponding to the quantization view data of view data, and select in the step at this code table, select to be used for the code table that this numerical value detects step according to the numerical value of this quantization step.Therefore, can carry out the length-changeable decoding of handling corresponding to a kind of variable length code and handle, this encoding process is applicable to the code table of this quantization step and makes the code efficiency maximization by always adopting.
According to the present invention, in above-mentioned length-changeable decoding is handled, be used for the decoding processing of this code, a code is decoded, represent that with reconstruct its numerical value is the distance of swimming numerical value of number of zero continuous zero coefficient and the rank numerical value that is illustrated in the numerical value of a nonzero coefficient after this zero coefficient, select in the step at this code table, be used for selecting first of a code table to select to handle according to the numerical value of this quantization step from a plurality of code tables of representing the corresponding relation between this distance of swimming numerical value and the code at least, and be used for carrying out one of second these two steps of selecting step of selecting a code table from a plurality of code tables of representing the corresponding relation between this rank numerical value and this code and be performed according to the numerical value of quantization step, and detect in the step at this numerical value, according to selected code table, corresponding to also distance of swimming numerical value and at least one numerical value in the rank numerical value of the not decoded data of decoding are not detected.Therefore, by always being to use the numerical value that is suitable for this quantization step and making the total bit corresponding to institute's allocation of codes minimize, can carry out the length-changeable decoding of handling to the variable length code of the distribution of at least one distance of swimming numerical value and rank numerical value corresponding to run time version and handle.
According to the present invention, in above-mentioned length-changeable decoding is handled, according to the decoding processing that is used for code, a code is decoded, with reconstruct serve as by its numerical value of expression zero continuous zero coefficient number distance of swimming numerical value and to be illustrated in the distance of swimming-rank that the rank numerical value of the numerical value of a nonzero coefficient after this zero coefficient constituted right, select step at this code table, numerical value according to this quantization step, from represent this distance of swimming-rank to and this code between a plurality of code tables of corresponding relation select a code table, and detect in the step at this numerical value, according to selected code table, it is not right to detect corresponding to the distance of swimming-rank of a code of not decoding of also decoding.Therefore, can carry out the length-changeable decoding of handling corresponding to a variable length code handles, this encoding process arrives the right distribution of the distance of swimming-rank by the code table run time version that always is to use the numerical value that is suitable for this quantization step, and makes that being assigned with the code total bit corresponding to this minimizes.
According to the present invention, in above-mentioned variable length decoding method, select in the step at this code table, detect the code table that uses in the step according to Information Selection at this numerical value about decoded coefficient.Therefore, can carry out the length-changeable decoding of handling corresponding to variable length code and handle, this encoding process is coded quantization coefficient and make code efficiency maximize by always being to use the code table that is suitable for untreated number of coefficients also.
According to the present invention, in above-mentioned variable length decoding method, according to the decoding processing that is used for this code, this code is decoded represents that with reconstruct respectively its numerical value is the distance of swimming numerical value of the number of zero continuous zero coefficient, and the rank numerical value that is illustrated in the numerical value of the nonzero coefficient after this zero coefficient, select in the step at this code table, be used for selecting first of a code table to select to handle from a plurality of code tables of representing the corresponding relation between this distance of swimming numerical value and the code according to information about decoded distance of swimming numerical value, and be used for selecting second of a code table to select at least one processing the processing to be performed from a plurality of code tables of representing the corresponding relation between this rank numerical value and the code according to information about decoded rank numerical value, and detect in the step at this numerical value, detect corresponding to the distance of swimming numerical value of the code of not decoding and at least one numerical value in the rank numerical value according to selecteed code table.Therefore, can carry out a kind of length-changeable decoding of handling corresponding to variable length code handles, this variable length code always handle by use be applicable to the code table of the number of untreated coefficient also and run time version to the distribution of at least one distance of swimming numerical value and rank numerical value, and make this code efficiency maximize.
According to the present invention, in above-mentioned variable length decoding method, select in the step at this code table, number according to the distance of swimming numerical value of decoding of having decoded, select a code table from a plurality of code tables of representing the corresponding relation between this distance of swimming numerical value and the code, and detect in the step at this numerical value, according to the distance of swimming numerical value of selected code table detection corresponding to the code of not decoding of also not decoding.Therefore, can carry out a kind of length-changeable decoding of handling corresponding to variable length code handles, this variable length code always handle by use be applicable to the code table of the number of untreated coefficient also and run time version to the distribution of distance of swimming numerical value, and make this code efficiency maximize.
According to the present invention, in above-mentioned variable length decoding method, according to decoding processing to code, a code is decoded, with reconstruct comprise its numerical value of expression serve as zero continuous zero coefficient number distance of swimming numerical value and to be illustrated in the distance of swimming-rank of rank numerical value of a plurality of nonzero coefficients after this zero coefficient right, select in the step at this code table, according to about by the right information of a distance of swimming-rank that decoding processing obtained from represent this distance of swimming-rank to and code between a plurality of code tables of corresponding relation select a code table, and detect in the step at this numerical value, detect corresponding to also a distance of swimming-rank of the code of not decoding of decoding is not right according to selected code table.Therefore, can carry out a kind of length-changeable decoding of handling corresponding to variable length code handles, this variable length code always handle by use be applicable to the code table of the number of untreated coefficient also and run time version to the right distribution of the distance of swimming-rank, and make this code efficiency maximize.
According to the present invention, in above-mentioned variable length decoding method, by obtaining this coefficient according to frequency component corresponding to the quantization view data of view data, and in decoding step, execution is to the decoding processing of code, thereby acquisition is corresponding to the numerical value of this code from the high frequency components to the low frequency component.Therefore, can carry out a kind of length-changeable decoding of handling corresponding to variable length code and handle, the total bit that further reduces corresponding to the code of distributing to this coefficient is handled in this variable length code.
According to the present invention, in above-mentioned variable length decoding method, according to decoding processing to code, for each piece by the pre-determined factor that comprises coefficient data, code decoded with reconstruct comprise its numerical value of expression serve as zero continuous zero coefficient number distance of swimming numerical value and to be illustrated in the distance of swimming-rank of numerical value of the nonzero coefficient after this zero coefficient right, select step at this code table, according in as the object block of an object of decoding processing by the decoding processing to this object block number of handling coefficient that obtains and the not nonzero coefficient number sum of decoding in this object block that does not also obtain by decoding processing to this object block, from represent this distance of swimming-rank to and code between a plurality of code tables of corresponding relation select a code table, and detect in the step at this numerical value, it is right corresponding to the distance of swimming-rank of the not desorption coefficient in this object block to detect according to selected code table.Therefore, do not comprise the right code table that is constituted by distance of swimming numerical value and rank numerical value that can not occur, can realize having the length-changeable decoding that high efficiency more handles corresponding to variable length code and handle by using.
According to the present invention, in above-mentioned variable length decoding method, according to decoding processing to this code, the code that constitutes the data that are encoded is decoded, with reconstruct comprise its numerical value of expression serve as zero continuous zero coefficient number distance of swimming numerical value and to be illustrated in the distance of swimming-rank of rank numerical value of numerical value of the nonzero coefficient after this zero coefficient right, this decoding step comprises a code table treatment step, be used for according to constituting the right distance of swimming numerical value of this distance of swimming-rank and the combination of rank numerical value, change termly this distance of swimming-rank of expression to and respective code between the first generation code table of corresponding relation in the distance of swimming-rank to and code between corresponding relation, based on this first generation code table form have different with first generation code table the distance of swimming-rank to and code between the second generation code table of corresponding relation, and select in step at this code table, according to about one of at least one Information Selection first and second code table of handling coefficient and the parameter relevant with the generation of this coefficient.Therefore, one of first and second code tables suitably selected as be transformed to when code distance of swimming numerical value and rank numerical value to the time employed optimum code table.Correspondingly, carry out satisfactorily corresponding to the length-changeable decoding of deleting the variable length code processing that is included in the redundant information in the target data effectively and handle, thereby this length-changeable decoding processing is very useful.
According to the present invention, in above-mentioned variable length decoding method, in first and second code tables, short code is by right corresponding to having each the distance of swimming-rank that constitutes the right littler rank numerical value of this distance of swimming-rank adaptively, and it is in second generation code table, more less with the first code epiphase than mean value corresponding to the rank numerical value right than the distance of swimming-rank of short code.Therefore, under the bigger situation of the quantization parameter relevant with the coefficient that constitutes the target data of wanting processed, this variable length decoding method is effectively.
According to the present invention, in above-mentioned variable length decoding method, in this first and second code table, than short code by right corresponding to having each the distance of swimming-rank that constitutes the right less distance of swimming numerical value of this distance of swimming-rank adaptively, and in second generation code table, first code epiphase ratio, less corresponding to the mean value of the distance of swimming numerical value right than the distance of swimming-rank of short code.Therefore, under the less situation of this quantization parameter relevant with the coefficient that constitutes the target data of wanting processed, this variable length decoding method is effective.
According to the present invention.In above-mentioned variable length decoding method, according to decoding processing to this code, right to carrying out from the distance of swimming-rank of a code refactoring by each piece that coefficient constituted of the predetermined number that constitutes this coefficient data, and in this code table treatment step, according to by forming this second generation code table at the number of handling coefficient that obtains as the decoding processing in the object block of the object of decoding processing.Therefore, can adopt not comprise the right code table of the distance of swimming numerical value that can not occur and rank numerical value, thereby can realize handling corresponding to having the length-changeable decoding that more high efficiency variable length code handles as this second generation code table.
According to the present invention, in above-mentioned variable length decoding method, detect in step at this numerical value, from the high fdrequency component to the low frequency component, by a distance of swimming-rank of high fdrequency component with view data to carrying out a detection that the distance of swimming-rank is right corresponding to this code.Therefore, can adopt a code table that does not comprise the distance of swimming numerical value that can not occur and rank numerical value, thereby can realize that the length-changeable decoding of handling corresponding to the variable length code that increases compression ratio handles as this second generation code table.
According to the present invention, in above-mentioned variable length decoding method, by the distance of swimming-rank in being contained in first generation code table between corresponding relation in only change the corresponding relation that can regularly operate and form second generation code table.Therefore can reduce the required arithmetical operation of formation that is used for second generation code table.
According to the present invention, in above-mentioned variable length decoding method, according to quantization step corresponding to this view data, obtain to constitute the coefficient of this coefficient data by the sampling frequency component of view data, and select in the step at this code table, according to the switching of numerical value execution between first generation code table and second generation code table of this quantization step.Therefore, can adopt code table being applicable to this quantization step as handling the code table that uses at the length-changeable decoding of the coefficient that is used for constituting the target data of wanting processed.
According to the present invention, in above-mentioned variable length decoding method, this code table selects step to comprise a code table switch step, is used for switching between this first generation code table and second generation code table according to a switching command signal, and in this decoding step, carry out the decoding of this switching command signal.Therefore, can switch in the code table that this length-changeable decoding uses in handling according to characteristic of wanting processed target data or the like.
According to the present invention, in above-mentioned variable length decoding method, according to decoding processing to this code, carry out from right operation of the distance of swimming-rank of a code refactoring comprising by each piece of the coefficient of the predetermined number that constitutes this coefficient data, and in this code table treatment step, according to forming second generation code table as the number sum that obtains as the number of handling coefficient in the object block of the object of decoding processing and the not nonzero coefficient of decoding in the object block that does not also obtain by decoding processing to this piece by decoding processing to object block.Therefore, do not comprise that the distance of swimming numerical value and a right code table of rank numerical value that can not occur are used as second generation code table, thereby can realize corresponding to having the length-changeable decoding processing that more high efficiency variable length code is handled.
According to the present invention, providing a kind of at this is used for comprising by to carried out the variable length decoding apparatus of the data decode that is encoded of a plurality of codes that variable length code obtains by coefficient data that a plurality of coefficient constituted, comprising: decoding unit, be used to use the numerical value of this coefficient of expression and a plurality of code tables of the corresponding relation between the code, make each code be subjected to decoding processing to these data that are encoded that are used to decode, with reconstruct by coefficient data that a plurality of coefficient was constituted, and this decoding unit comprises: the code table selected cell, be used for according to about decoded decoded coefficient and the parameter relevant information one of at least with the decoding processing of this coefficient from code table of a plurality of code tables selections; And the numerical value detecting unit, be used for by using the numerical value of selected code table detection corresponding to the code of not decoding of also not decoding.Therefore, can carry out the length-changeable decoding of handling corresponding to the variable length code with higher code efficiency and handle, this encoding process is deleted the redundant information that is included in the coefficient data effectively by changing code table, with this coefficient data of encoding.
According to the present invention, in above-mentioned variable length decoding apparatus, by obtaining this coefficient according to frequency component corresponding to the quantization view data of view data, and in this code table selected cell, select to be used for the code table of this numerical value detecting unit according to the numerical value of this quantization step.Therefore, can carry out the length-changeable decoding of handling corresponding to a kind of variable length code and handle, this encoding process is applicable to the code table of this quantization step and makes the code efficiency maximization by always adopting.
According to the present invention, in above-mentioned variable length decoding apparatus, this code table selected cell according to about the Information Selection of a decoded coefficient by the employed code table of this numerical value detecting unit.Therefore, can carry out the length-changeable decoding of handling corresponding to a kind of variable length code and handle, this variable length code is handled by always being to use the code table that is suitable for the number of desorption coefficient not being quantized coefficient coding and making the code efficiency maximization.
According to the present invention, in above-mentioned variable length decoding apparatus, according to decoding processing to this code, this code is decoded, represent that with reconstruct respectively its numerical value is the distance of swimming numerical value of number of zero continuous zero coefficient and the rank numerical value that is illustrated in the numerical value of the nonzero coefficient after this zero coefficient, this code table selected cell is selected a code table according to decoded distance of swimming numerical value from a plurality of code tables of representing the corresponding relation between this distance of swimming numerical value and the code, and this numerical value detecting unit is according to the distance of swimming numerical value of selected code table detection corresponding to a decoded code.Therefore, can carry out a kind of length-changeable decoding of handling corresponding to variable length code and handle, this variable length code always handle be applicable to untreated distance of swimming numerical value by use the code table of number to distance of swimming numeric coding and can realize the maximization of code efficiency.
According to the present invention, in above-mentioned variable-length encoder, by obtaining this coefficient according to frequency component corresponding to the quantization view data of view data, and this decoding unit is carried out decoding processing to code, to obtain the numerical value corresponding to this code from the high fdrequency component to the low frequency component.Therefore, can carry out a kind of length-changeable decoding of handling corresponding to variable length code and handle, the total bit that can further reduce corresponding to the code of distributing to coefficient is handled in this variable length code.
According to the present invention, provide a kind of recording medium at this, comprising a program, be used for carrying out the length-changeable decoding processing of the data decode that is encoded of a plurality of codes that the variable length code that comprises the coefficient data that is made of a plurality of coefficient is obtained by computer, and this program comprises decoding step, be used to use the numerical value of this coefficient of expression and a plurality of code tables of the corresponding relation between the code to make each code be subjected to decoding processing to this data decode that is encoded, with reconstruct by coefficient data that a plurality of coefficient was constituted, and this decoding step further comprises: code table is selected step, is used for according to about decoded decoded coefficient and the parameter relevant with the decoding processing of this coefficient this code table of Information Selection one of at least; And numerical value detection step, be used for by using the numerical value of selected code table detection corresponding to the code of not decoding of also not decoding.Therefore, can realize handling by software corresponding to the length-changeable decoding of variable length code processing with higher code efficiency, this encoding process is deleted the redundant information that is included in the coefficient data effectively by changing code table, with this coefficient data of encoding.
Description of drawings
Fig. 1 is the block diagram that is used to illustrate according to the picture coding device 101 of first embodiment of the invention.
Fig. 2 illustrates the block diagram of formation according to the run length coding, RLC unit R LE1 of the picture coding device 101 of first embodiment.
Fig. 3 (a)-3 (d) is for being used to illustrate schematic diagram by the performed zigzag scanning of run length coding, RLC unit R LE1, and Fig. 3 (e) and (f) be the schematic diagram that is used to illustrate the rearrangement of distance of swimming numerical value and rank numerical value.
Fig. 4 is the schematic diagram of processing that is used for illustrating the variable length coder LVLC of this run length coding, RLC unit R LE1: Fig. 4 (a) for the flow chart that the variable length code that is used for rank numerical value is handled is shown, and the code table of Fig. 4 (b) for being used for the variable length code of this rank numerical value is handled.
Fig. 5 is the schematic diagram of processing that is used for illustrating the variable length coder RVLC of this run length coding, RLC unit R LE1: Fig. 5 (a) for the flow chart that the variable length code of a distance of swimming numerical value is handled is shown, and Fig. 5 (b) be a used code table in to the variable length code processing of this distance of swimming numerical value.
Fig. 6 for be illustrated in respectively adopt code table L2 (Fig. 6 (a)) and in the situation that adopts code table L1 (Fig. 6 (b)) corresponding to the schematic diagram of the total bit of the code of distributing to rank numerical value (quantization parameter is less relatively) by variable length coder LevVLC.
Fig. 7 for be illustrated in respectively adopt code table L2 (Fig. 7 (a)) and in the situation that adopts code table L1 (Fig. 7 (b)) corresponding to the schematic diagram of the total bit of the code of distributing to rank numerical value (quantization parameter is relatively large) by variable length coder LevVLC.
Fig. 8 for the situation of the rearrangement (Fig. 8 (b)) of the change that is illustrated in the situation that adopts a particular code table (Fig. 8 (a)), run time version table respectively and distance of swimming numerical value and the situation of situation (Fig. 8 (c)) that only changes code table corresponding to the schematic diagram of the total bit of the code of distributing to distance of swimming numerical value by variable length coder RVLC.
Fig. 9 is the block diagram that is used to illustrate according to the picture decoding apparatus 102 of second embodiment of the invention.
Figure 10 illustrates the block diagram of formation according to the run length decoding unit RLD1 of the picture decoding apparatus 102 of second embodiment.
Figure 11 is that the schematic diagram that is used to illustrate the length-changeable decoding processing of being carried out by variable-length decoder LVLD: Figure 11 (a) is the flow chart that the length-changeable decoding processing that is used for a rank numerical value of reconstruct is shown, and Figure 11 (b) is a code table that uses in this length-changeable decoding is handled.
Figure 12 is used to illustrate by variable-length decoder RVLD carry out the flow chart that the schematic diagram that length-changeable decoding is handled: Figure 12 (a) illustrates the length-changeable decoding processing that is used for a distance of swimming numerical value of reconstruct, and Figure 12 (b) is a used code table in this length-changeable decoding is handled.
Figure 13 is the block diagram that is used to illustrate according to the picture coding device 103 of third embodiment of the invention.
Figure 14 illustrates the block diagram of formation according to the run length coding, RLC unit R LE2 of the picture coding device 103 of the 3rd embodiment.
Figure 15 is for to illustrate according to the 3rd embodiment by the example T2a (Figure 15 (a)) of the formed code table of run length coding, RLC unit R LE2 (second generation code table) and the schematic diagram of T2b (Figure 15 (b)).
Figure 16 is for to illustrate according to the 3rd embodiment by other examples T2c (Figure 16 (a)), the T2d (Figure 16 (b)) of the formed code table of run length coding, RLC unit R LE2 (second generation code table) and the schematic diagram of T2e (Figure 16 (c)).
Figure 17 illustrates the schematic diagram by the example of an order of the coded quantized components of run length coding, RLC unit R LE2 according to the 3rd embodiment.
Figure 18 is the block diagram that is used to illustrate according to the picture decoding apparatus 104 of fourth embodiment of the invention.
Figure 19 illustrates the block diagram of formation according to the run length decoding unit RLD2 of the picture decoding apparatus 104 of the 4th embodiment.
Figure 20 is the block diagram of explanation according to the picture coding device 105 of fifth embodiment of the invention.
Figure 21 is the block diagram of explanation formation according to the run length coding, RLC unit R LE3 of the picture coding device 105 of the 5th embodiment.
Figure 22 is the block diagram that is used to illustrate according to the picture decoding apparatus 106 of sixth embodiment of the invention.
Figure 23 illustrates the block diagram of formation according to the run length decoding unit RLD3 of the picture decoding apparatus 106 of the 6th embodiment.
Figure 24 illustrates according to the run length coding, RLC unit R LE3 of the 5th embodiment and according to Ta (Figure 24 (a)), the Tb (Figure 24 (b)) of the employed variable-length codes table of run length coding, RLC unit R LE3 of the 6th embodiment and the schematic diagram of Tc (Figure 24 (c)).
Figure 25 is for being used for the schematic diagram that explanation comprises a data storage medium of variable length code processing of any the foregoing description of being realized by a computer system (Figure 25 (a) and 25 (b)) and computer system (Figure 25 (c)) or the program that length-changeable decoding is handled.
Figure 26 is the schematic diagram that is used to illustrate according to an application of the method for encoding images of any embodiment and picture decoding method, and this illustrates the content that realizes the content release service system is provided.
Figure 27 is used to illustrate the schematic diagram of employing according to the portable phone of the method for encoding images of any embodiment and picture decoding method.
Figure 28 is the block diagram that portable phone as shown in figure 27 is shown.
Figure 29 illustrates the schematic diagram of employing according to the digit broadcasting system of the picture coding device of any embodiment or picture decoding apparatus.
Figure 30 is the block diagram that a kind of normal image code device 201a is shown.
Figure 31 is the block diagram that is used to illustrate the coding unit RLE0a that constitutes this normal image code device 201a.
Figure 32 is the block diagram that is used to illustrate according to the normal image decoding device 202a of this normal image code device 201a.
Figure 33 is the block diagram that is used to illustrate the decoding unit RLD0a that constitutes this normal image decoding device 202a.
Figure 34 is the block diagram that the picture coding device 201b that carries out conventional run length coding, RLC is shown.
Figure 35 is the block diagram that is used to illustrate the run length coding, RLC unit R LE0b that constitutes this normal image code device 201b.
Figure 36 is the block diagram that is used to illustrate corresponding to the picture decoding apparatus 202b of this normal image code device 201b.
Figure 37 is the block diagram that is used to illustrate the run length coding, RLC unit R LE0b that constitutes this normal image code device 201b.
Figure 38 is the block diagram that is used to illustrate another picture coding device 201c that carries out conventional run length coding, RLC.
Figure 39 constitutes the block diagram of the run length coding, RLC unit R LE0c of this normal image code device 201c for explanation.
Figure 40 is the block diagram that is used to illustrate corresponding to the normal image decoding device 202c of this normal image code device 201c.
Figure 41 is the block diagram that is used to illustrate the decoding unit RLD0c that constitutes this normal image decoding device 202c.
Figure 42 is the schematic diagram that illustrates by the example of the employed code table of run length coding, RLC unit R LE0c that constitutes this normal image code device 201c.
Figure 43 is the schematic diagram that illustrates by the example of the order of the coded quantized components of this routine run length coding, RLC unit R LE0a, RLE0b or RLE0c.
Embodiment
At first, basic principle of the present invention will be described.
Usually, when this quantization step when being rough, the component that is quantized has less absolute value.Then, this distance of swimming (length of zero coefficient continuously) is longer, and correspondingly this rank numerical value (numerical value of nonzero coefficient) has littler absolute value.On the contrary, when this quantization step when being meticulous, the component that is quantized has bigger absolute value.Therefore, this distance of swimming shorter and correspondingly this rank numerical value have bigger absolute value.
In addition, less when in a variable length code of wanting to finish in the processed object block many components that are quantized and the uncoded number that is quantized component, the distance of swimming numerical value of the number of uncoded quantized components then can not appear surpassing.Therefore, when remove these distance of swimming numerical value and rank numerical value to the time, increase code efficiency.
From this viewpoint, the present invention handles or is used to be quantized state that the length-changeable decoding of coefficient handles and the parameter (quantization parameter) relevant with the generation that is quantized coefficient according to variable length code, change the code table that one of expression is quantized corresponding relation between the numerical information of size of coefficient and the code, thereby remove the redundant information that is included in the target data (being quantized coefficient) that this variable length code handles effectively.
For example, according to the treatment state that is quantized coefficient, by being chosen in the code table (first generation code table) that uses in conventional variable length code or the decoding processing or forming and to wanting processed data-optimized second generation code table to carry out the change of this code table according to first generation code table.Needn't always form second generation code table, but be applicable to that any code table of processing target data can be selected as a code table according to first generation code table.
Hereinafter, with reference to Fig. 1 to 25 embodiments of the invention are described.
[embodiment 1]
Fig. 1 is the block diagram that is used to illustrate according to the picture coding device of first embodiment of the invention.
Have according to the picture coding device 101 of first embodiment and to be used for selecting signal VlcSel to make the output QS from quantifying unit Q be subjected to the run length coding, RLC unit R LE1 that an encoding stream Str1 was handled and exported in variable length code according to quantization parameter QP and VLC, replace the run length coding, RLC unit R LE0b among the normal image code device 201b as shown in Figure 3, its feasible output (quantized components) QS from quantifying unit Q is subjected to variable length code and handles and export an encoding stream Strob.
At this, this quantization parameter QP is the parameter of the numerical value of a quantization step of expression, and this quantization step is similar to this quantization parameter QP proportional.More specifically, when quantizing parameter QP when big, be quantized component and have less absolute value, this zero run-length (numerical value is the length of zero continuous component) that is quantized component is longer then, and a rank numerical value has less absolute value.
Fig. 2 is the block diagram that is used to illustrate the concrete structure of this run length coding, RLC unit R LE1.
This run length coding, RLC unit R LE1 is similar to the conventional run length coding, RLC unit R LE0b shown in Figure 35, have: zigzag scanning instrument Scan is used for (quantized components) QS of the two-dimensional array of exporting from quantifying unit Q is transformed to (that is predesigned order) quantization parameter Coef of one-dimensional array; Distance of swimming calculator RunCal is used to calculate its numerical value and is the distance of swimming numerical value Run of the number of the continuous number of quantized components Coef of zero (zero coefficient) and the continuous zero coefficient of output expression; And level calculator LevCal, be used to calculate the numerical value of the quantized components Coef of (nonzero coefficient) of its numerical nonzero after this zero coefficient, and export the rank numerical value Lev of the numerical value of this nonzero coefficient of expression.
Fig. 3 (a) illustrates a two-dimensional array corresponding to the quantized components Q1 to Q16 of a piece, and Fig. 3 (b) is by the scanning pattern of the quantized components Q1 to Q16 in zigzag scanning instrument Scan shown in the arrow A 1 to A15.At this, by quantizing to obtain a quantized components Q1 corresponding to the DC component of the frequency component of a picture signal, and by quantizing to obtain quantized components Q2 to Q16 corresponding to the alternating current component of the frequency component of this picture signal.Fig. 3 (c) illustrates the one-dimensional array (coding order) of this quantized components Q1 to Q16, and it obtains by the zigzag scanning in zigzag scanning instrument Scan, and Fig. 3 (d) illustrates the one-dimensional array of the concrete numerical value of the numerical value of representing quantized components Q1 to Q16.
This run length coding, RLC unit R LE1 further comprises a rearrangement unit Lreodr who is used for the rank numerical value Lev from level calculator LevCal output is resequenced; Be used for rearranging unit R reodr from the distance of swimming numerical value Run rearrangement of distance of swimming calculator RunCal output; And be used for according to a number Cnum that calculates from the output of distance of swimming calculator RunCal at the not code coefficient of an object block and a number calculator NumClc of output institute calculated number.Fig. 3 (e) illustrates from the distance of swimming numerical value of the numerical value acquisition of the quantized components with the arrangement shown in Fig. 3 (c) and 3 (d) and the order of rank numerical value.The distance of swimming numerical value after Fig. 3 (f) is illustrated in and rearranges and the order of rank numerical value.
This run length coding, RLC unit R LE1 further comprises: variable length coder LVLC, be used for according to quantization parameter QP and select signal VlcSel to make being subjected to the variable length code processing, and export a code string (rank numerical value code string) LStr from the output ROLev that rearranges unit Lreodr; Variable length coder RVLC is used for making that according to the number Cnum of code coefficient not being subjected to variable length code from the output RORun that rearranges unit R reodr handles, and exports a code string (distance of swimming numerical value code string) RStr; And multiplexer MUX, it is multiplexing to be used for the code string LStr and the code string RStr that are used for each piece, and exports a multiplexing encoding stream Str1.
Fig. 4 is used to illustrate the schematic diagram of being handled by the performed variable length code of variable length coder LVLC.Fig. 4 (a) is the flow chart that the variable length code processing that is used for a rank numerical value is shown, and Fig. 4 (b) is used for the schematic diagram that the code table that uses is handled in this rank numerical value variable length code for being illustrated in.
Fig. 4 (b) illustrates the arrangement Alev of rank numerical value (Level), at quantization parameter QP less than the arrangement Cal of the code in the situation of a threshold value (code word) and the arrangement Ca2 of the code when quantization parameter QP is equal to or greater than this threshold value (code word).
At this, code table L1 is constituted by the arrangement Alev of rank numerical value (Level) with at the arrangement Cal of the code (code word) of quantization parameter QP during less than a threshold value.This code table L1 illustrates this rank numerical value (Level) and this quantization parameter QP less than the corresponding relation between the code in the situation of this threshold value.A code table L2 is made of the arrangement Alev of rank numerical value (Level) and the arrangement Ca2 of the code when quantization parameter QP is equal to or greater than this threshold value (code word).This code table L2 illustrates the corresponding relation between rank numerical value (Level) and the code when quantization parameter QP is equal to or greater than this threshold value.
Fig. 5 is used to illustrate the schematic diagram of being handled by the performed variable length code of variable length coder RVLC.Fig. 5 (a) illustrates the flow chart that the variable length code of a distance of swimming numerical value is handled for being used to, and Fig. 5 (b) is for being illustrated in the schematic diagram of code table used in the variable length code processing to this distance of swimming numerical value.
Fig. 5 (b) illustrates the arrangement Arun of distance of swimming numerical value (Run), number at the zero coefficient of not encoding is the arrangement Cb1 of 1 o'clock code (code word), number at the zero coefficient of not encoding is the arrangement Cb2 of 2 o'clock code (code word), number at the zero coefficient of not encoding is the arrangement Cb3 of 3 o'clock code (code word), number at the zero coefficient of not encoding is the arrangement Cb4 of 4 o'clock code (code word), number at the zero coefficient of not encoding is the arrangement Cb5 of 5 o'clock code (code word), number at the zero coefficient of not encoding is the arrangement Cb6 of 6 o'clock code (code word), number at the zero coefficient of not encoding is the arrangement Cb7 of 7 o'clock code (code word), and be the arrangement Cb8 of 8 o'clock code (code word) at the number of the zero coefficient of not encoding.
At this, code table R1 is constituted by the arrangement Arun of distance of swimming numerical value (Run) with at the number of the zero coefficient of the not encoding arrangement Cb1 by 1 o'clock code (code word), and code table R1 illustrates distance of swimming numerical value (Run) and be corresponding relation between 1 o'clock the code at the number of the zero coefficient of not encoding.Similarly, code table R2, R3, R4, R5, R6 and R7 respectively by the arrangement Arun of distance of swimming numerical value (Run) and the number of the zero coefficient of not encoding by 2,3,4,5,6 and arrangement Cb, Cb3, Cb4, Cb5, Cb6 and the Cb7 of 7 o'clock code (code word) constituted, and illustrate distance of swimming numerical value (Run) respectively and the number of the zero coefficient of not encoding be 2,3,4,5,6 and 7 o'clock code between corresponding relation.In addition, code table R8 by the arrangement Arun of distance of swimming numerical value (Run) and the number of the zero coefficient of not encoding by 8 or the arrangement Cb8 of code (code word) when bigger constituted, and illustrate this distance of swimming numerical value (Run) and the number of the zero coefficient of not encoding be 8 or code when bigger between corresponding relation.
Below its operation will be described.
In the picture coding device 101 according to first embodiment, this piecemeal unit B lk, frequency conversion unit Trans operate according to the mode identical with normal image code device 201a (referring to Figure 30) or picture coding device 201b (referring to Figure 34) with quantifying unit Q.
More specifically, when picture signal Vin was imported into picture coding device 101a, this piecemeal unit B lk was divided into module unit to the picture signal Vin that is imported, to produce picture signal (pixel value components) BlkS corresponding to each piece.This frequency conversion unit Trans is transformed to frequency component TransS to pixel value components BlkS according to DCT (discrete cosine transform) or wavelet transformation.This quantifying unit Q quantizes this frequency component TransS according to quantization parameter QP in a predetermined quantitative step, with output variable polarization component QS, and output quantization parameter QP.This run length coding, RLC unit R LE1 makes quantized components QS be subjected to variable length code and handles, and encoding stream Str1 of step Sc.
Hereinafter, the operation of run length coding, RLC unit R LE1 will be specifically described.
This zigzag scanning instrument Scan is to the zigzag scanning from the quantized components QS (that is, a plurality of quantized components Q1 to Q16 in the two-dimensional array are as shown in Fig. 3 (a)) of quantifying unit Q output, so that this quantized components QS is transformed to quantized components Coef.At this, by along the zigzag scanning of carrying out quantized components QS by a plurality of quantized components Q1 to Q16 in the two-dimensional array of the route of the arrow A 1 to A15 shown in Fig. 3 (b) scanning as shown in Fig. 3 (a), the array of a plurality of quantized components Q1 to Q16 is transformed to the one-dimensional array (processing order) as shown in Fig. 3 (c).At this, Fig. 3 (d) illustrates the arrangement (20 ,-10,5,0,2,0,0,0,1,0,0,0 ,-1,0,0,1) of the concrete numerical value of a plurality of quantized components Q1 to Q16 that are subjected to zigzag scanning.
This distance of swimming calculator RunCal calculates the number of continuous zero coefficient according to the quantized components Coef from zigzag scanning instrument Scan output, and exports the distance of swimming numerical value Run of expression institute calculated number.Fig. 3 (e) illustrates the concrete distance of swimming numerical value of exporting from distance of swimming calculator RunCal continuously according to the output order of this distance of swimming numerical value: (0,0,0,1,3,3,2).On the other hand, this level calculator LevCal calculates nonzero coefficient this continuous zero coefficient after according to the quantized components Coef from zigzag scanning instrument Scan output, and the rank numerical value Lev of the numerical value that calculated is represented in output.Fig. 3 (e) illustrates the concrete rank numerical value of exporting continuously from level calculator LevCal according to the order of this rank numerical value output: (20 ,-10,5,2,1 ,-1,1).
Rearranging unit R reodr rearranges according to the reversed sequence opposite with the order of distance of swimming numerical value output the distance of swimming numerical value of exporting continuously from distance of swimming calculator RunCal.Fig. 3 (f) illustrates the order after the change that is rearranged the concrete distance of swimming numerical value that unit R reodr rearranges: (2,3,3,1,0,0,0).This number calculator NumClc calculates the not number of code coefficient according to the distance of swimming numerical value Run from distance of swimming calculator RunCal output, and exports number (hereinafter, being also referred to as the not code coefficient number) Cnum of the not code coefficient that is calculated.On the other hand, this rearrangement unit Lreodr to sequentially from the rank numerical value of level calculator LevCal output according to the opposite order rearrangement of order that is illustrated with this rank numerical value.Fig. 3 (f) illustrates the change order by the concrete rank numerical value of this unit Lreodr rearrangement of resequencing: (1 ,-1,1,2,5 ,-10,20).
This variable length coder RVLC makes conduct be subjected to the variable length code processing from the distance of swimming numerical value RORun that has resequenced of the output of rearrangement unit R reodr, be used for number Cum according to the zero coefficient of exporting from number calculator NumClc of not encoding, by using a plurality of code tables of the corresponding relation between this distance of swimming numerical value of expression and the code (code word), code (code word) is assigned to distance of swimming numerical value RORun, and exports a distance of swimming numerical value code string RStr.On the other hand, this variable length coder LVLC is according to the number Cum of the zero coefficient of exporting from number calculator NumClc of not encoding, by using a plurality of code tables of the corresponding relation between this distance of swimming numerical value of expression and the code (code word), the distance of swimming numerical value ROLev that makes conduct resequence from the quilt of the output of rearrangement unit Lreodr is subjected to variable length code and handles, be used for code (code word) is assigned to distance of swimming numerical value RORun, and export a distance of swimming numerical value code string RStr.On the other hand, this variable length coder LVLC is according to indicating the selection signal VlcSel that selects from the quantization parameter QP of quantifying unit Q with from the outside of variable length code, by using a plurality of code tables of the corresponding relation between expression rank numerical value and the code (code word), make conduct be subjected to the variable length code processing from the distance of swimming numerical value ROLev that has been resequenced of the output of rearrangement unit Lreodr, be used for code (code word) is assigned to distance of swimming numerical value ROL, and export a rank numerical value code string LStr.
Then, piece of this multiplexer MUX is followed piece ground multiplexing this rank numerical value code string LStr and distance of swimming numerical value code string RStr, and exports a multiplexing encoding stream Str1.
At this, a piece is then carried out the processing that is used for multiplexing this rank numerical value code string LStr and distance of swimming numerical value code string RStr in a piece ground, for example, in this manner, corresponding to after the code string RStr of the distance of swimming numerical value of all object block then corresponding to the code string LStr of all rank numerical value of this object block, perhaps corresponding to after the code string LStr of all rank numerical value of this object block then corresponding to the code string RStr of the distance of swimming numerical value of all object block.
Hereinafter, specifically describe the operation of variable length coder LVLC with reference to Fig. 4.
This variable length coder LVLC obtains quantization parameter QP (step Sa1) from quantifying unit Q, and whether the numerical value of definite quantization parameter QP that is obtained is equal to or greater than the threshold value (step Sa2) of the quantization parameter QP that is kept among the variable length coder LVLC.
Determine the result when this and show the threshold value of the numerical value of the quantization parameter QP that is obtained less than quantization parameter QP, then this variable length coder LVLC selects the code table L1 (referring to Fig. 4 (b)) (step Sa3) that the arrangement Ca1 by the arrangement Alev of rank numerical value and code (code word) is constituted, when the numerical value of the quantization parameter QP that is obtained is equal to or greater than the threshold value of quantization parameter QP, select code table L2 that the arrangement Ca2 by the arrangement Alev of rank numerical value and code (code word) constituted (referring to Fig. 4 (b) (step Sa4).
Then, variable length coder LVLC determines whether there is uncoded rank numerical value Lev (step Sa5) in an object block.When a uncoded rank numerical value Lev is comprised in this object block, this variable length coder LVLC uses selected code table to carry out the processing that is used for this rank numeric coding, promptly, be used for the processing (step Sa6) of corresponding assignment of code to this rank numerical value, the processing of execution in step Sa5 then.On the other hand, show that when not having uncoded rank numerical value Lev in this object block, then this variable length coder LVLC finishes the variable length code of rank numerical value Lev is handled when the result in step Sa5.
At this, when VLC selects signal VlcSel to specify the variable length code of a particular code table of use to handle in advance, then this variable length coder LVLC handles by using the particular code table that this rank numerical value is carried out variable length code, and irrelevant with the numerical value of quantization parameter QP.
Then, specifically describe the operation of variable length coder RVLC with reference to Fig. 5.
This variable length coder RVLC determines whether there is any uncoded nonzero coefficient (step Sb1) in this object block according to output (the not number of the code coefficient) Cnum from number calculator NumClc.When this determined that the result shows uncoded nonzero coefficient of existence, this variable length coder RVLC was according to the number (step Sb2) that calculates the uncoded zero coefficient in this object block from the output Cnum of number calculator NumClc.
Then, this variable length coder RVLC selects a code table (step Sb3) according to institute's calculating number of uncoded zero coefficient.More specifically, when the number of uncoded zero coefficient was 1, this variable length coder RVLC selected by the arrangement Arun of distance of swimming numerical value and the arrangement Cb1 of code (code word) (referring to Fig. 5 (b)).Similarly, when the number of uncoded zero coefficient was 2, this variable length coder RVLC selected code table R2, selected code table R3 when the number of uncoded zero coefficient is 3, and selected code table R4 when the number of uncoded zero coefficient is 4.In addition, when the number of uncoded zero coefficient was 5, this variable length coder RVLC selected code table R5, selected code table R6 when the number of uncoded zero coefficient is 6, and selected code table R7 when the number of uncoded zero coefficient is 7.In addition, when the number of uncoded zero coefficient be 8 or when bigger, this variable length coder RVLC selects code table R8.
Then, this variable length coder RVLC uses selected code table to carry out the processing that distance of swimming numerical value Run is encoded, and, is used for respective code is assigned to the processing (step Sb4) of this distance of swimming numerical value, then definite processing of execution in step Sb1 that is.
At this, when the definite result in step Sb1 shows when not having uncoded nonzero coefficient, this variable length coder RVLC finishes the variable length code of distance of swimming numerical value is handled.
Then, will describe an object lesson, wherein select a code table, thereby increase code efficiency according to the quantization parameter in the variable length code of rank numerical value as indicated above.
Fig. 6 illustrates corresponding to when quantizing parameter QP relatively hour, promptly, when from level calculator LevCal and resequenced and from the rank numerical value of rearrangement unit Lreodr output for as shown in Fig. 3 (f) 1,-1,1,2,5,-10,20 o'clock, corresponding to the total bit of the code of distributing to rank numerical value.
When this quantization parameter QP is determined to be equivalent to or greater than a threshold value and when adopting this code table L2, code (code word) is assigned to each rank numerical value as shown in Fig. 6 (a), and it is 75 corresponding to the total bit of the code that is assigned with.
On the other hand, be confirmed as less than this threshold value and when adopting this code table L1, code (code word) is assigned to each rank numerical value as shown in Fig. 6 (b), and be 47 corresponding to the total bit of institute's assigned code when quantizing parameter QP.
When quantizing parameter QP relatively hour, the frequency of occurrences that is quantized component with bigger numerical is bigger.Therefore, L2 compares with code table, and the code table L1 that selects wherein to be equivalent on mean value than short code the relatively large rank numerical value of absolute value is effectively, to increase code efficiency.
Fig. 7 illustrates when quantification parameter QP is relatively large, promptly, when from level calculator LevCal's and resequenced with from the output (rank numerical value) of this rearrangement unit Lreodr output for Fig. 3 (f) different 1,-1,1,1,1,-2,3 o'clock, corresponding to the total bit that is assigned to rank numerical value.
When definite quantization parameter QP was equal to or greater than this threshold value and adopt code table L2, code (code word) was assigned to each rank numerical value as shown in Fig. 7 (a), and was 15 corresponding to the total bit that is assigned with code.
On the other hand, when definite quantization parameter QP less than this threshold value and when adopting code table L1, code (code word) is assigned to each rank numerical value as shown in Fig. 7 (b), and is 17 corresponding to the total bit that is assigned with code.
As indicated above, when the numerical value that quantizes parameter QP was relatively large, the frequency of occurrences of quantization parameter with bigger numerical was lower.Therefore, L1 compares with code table, and selecting wherein than the short code concentrated area is effectively corresponding to the code table L2 of the less relatively rank numerical value of absolute value, to increase code efficiency.
Fig. 8 illustrates when distance of swimming numerical value and is as Fig. 3 (e) as shown in 0,0,0,1,3,3, the 2 o'clock total bits corresponding to the code that is assigned to the distance of swimming numerical value of exporting from distance of swimming calculator RunCal.
When the change of the rearrangement of not carrying out the distance of swimming numerical value in run length coding, RLC unit R LE1 and code table but when always adopting code table R8 as shown in Fig. 5 (b), code (code word) is assigned to each distance of swimming numerical value as shown in Fig. 8 (a), and is 21 corresponding to the total bit that is assigned with code.
When the change of the rearrangement of carrying out the distance of swimming numerical value in run length coding, RLC unit R LE1 according to the number of the zero coefficient of not encoding and code table, code (code word) is assigned to each distance of swimming numerical value shown in Fig. 8 (b), and is 13 corresponding to the total bit that is assigned with code.At this, during at every turn an assignment of code to distance of swimming numerical value, the number of code coefficient is not reduced by adding the numerical value that distance of swimming numerical value is obtained that and then preceding is being encoded to 1.This is because single or continuous zero coefficient is always followed a nonzero coefficient.In addition, the number of the zero coefficient of not encoding that obtains from the distance of swimming numerical value corresponding to a plurality of rearrangements of a piece of rearrangement unit R reodr output is 15.This is because want processed piece always to have at least one nonzero coefficient.
When the rearrangement of not carrying out the distance of swimming numerical value in run length coding, RLC unit R LE1 for example but when only carrying out number according to uncoded zero coefficient and changing code table, code (code word) is assigned to each distance of swimming numerical value as shown in Fig. 8 (c), and is 20 corresponding to the total bit that is assigned with code.
As indicated above, picture coding device 101 according to first embodiment comprises run length coding, RLC unit R LE1, its use its numerical value of expression be zero (zero coefficient) quantized components Coef consecutive numbers purpose distance of swimming numerical value Run and be illustrated in the rank numerical value Lev of numerical value of quantized components Coef of (nonzero coefficient) of the numerical nonzero after this zero coefficient, coding is quantized coefficient by what the frequency component that quantizes a picture signal obtained.Therefore, by removing redundant information, can be quantized coefficient to this with higher code efficiency and encode.
In addition, run length coding, RLC unit R LE1 according to first embodiment comprises variable length coder LVLC, its numerical value according to quantization parameter QP is selected a code table, and pass through to use the variable length code of selected code table executive level numerical value, thereby reduce total bit corresponding to the code that is assigned to this rank numerical value.This run length coding, RLC unit R LE1 further comprises rearrangement unit R reodr, its from the high fdrequency component to the low frequency component to a plurality of distance of swimming numerical value rearrangements that coefficient obtains that are quantized from given predetermined process order; And variable length coder RVLC, its number according to the uncoded zero coefficient in this object block is selected a code table, and uses selected code table to carry out the variable length code of the distance of swimming numerical value of rearrangement.Therefore, reduce total bit effectively, thereby increase code efficiency corresponding to the code that is assigned to this distance of swimming numerical value.
In this first embodiment, variable length coder RVLC selects a code table according to the number (that is the output Cnum that exports from number calculator NumClc) of the uncoded zero coefficient in this object block.But this variable length coder RVLC not only can be according to selecting signal VlcSel to select a code table from the output Cnum of number calculator NumClc but also according to VLC.For example, when selecting signal VlcSel to specify the variable length code of a particular code table of use to handle by VLC in advance, this variable length coder RVLC handles the variable length code of this distance of swimming numerical value by using the particular code table to carry out, and irrelevant with the uncoded zero coefficient in this object block.
[embodiment 2]
Fig. 9 is the block diagram that is used to illustrate according to a picture decoding apparatus of second embodiment of the invention.
For example decode from the encoding stream Str1 of picture coding device 101 output of first embodiment according to the picture decoding apparatus 102 of second embodiment.
This picture decoding apparatus 102 has to be selected signal VldSel to make the encoding stream Str1 that is imported be subjected to length-changeable decoding according to quantization parameter QP and VLD to handle a run length decoding unit RLD1 who is quantized coefficient with reconstruct, and its encoding stream Str0b that is imported that makes that replaces as shown in Figure 36 is subjected to the run length decoding unit RLD0b that length-changeable decoding is handled.Except run length decoding unit RLD1, this structure is identical with the structure of the picture decoding apparatus 202b shown in Figure 36.
Figure 10 is the block diagram that is used to illustrate the concrete structure of run length decoding unit RLD1.
This run length decoding unit RLD1 has a demultiplexer DMUX, being used for that the multiplexing and encoding stream Str1 from picture coding device 101 outputs is carried out multichannel decomposes, obtaining corresponding to the code string LStr of rank numerical value with corresponding to the code string RStr of distance of swimming numerical value, this is identical with as shown in Figure 37 conventional run length decoding unit RLD0b.
This run length decoding unit RLD1 has a variable-length decoder LVLD, be used for selecting signal VlcSel according to quantization parameter QP and VLC, make to be subjected to the length-changeable decoding processing, with reconstructing runlength numerical value ROLev by multiplexing encoding stream Str1 multichannel being decomposed the rank numerical value code string LStr that obtains; And variable-length decoder RVLD, be used for the not number of desorption coefficient of basis, make to be subjected to the length-changeable decoding processing, with reconstructing runlength numerical value RORun by multiplexing encoding stream Str1 multichannel being decomposed the distance of swimming numerical value code string RStr that obtains.
This run length decoding unit RLD1 further comprises bob-weight new sort unit LIreodr, the rank numerical value ROLev that it is exported by variable-length decoder LVLD according to the order rearrangement opposite with rearrangement unit Lreodr when end-of-encode; Bob-weight new sort unit R Ireodr, it is when this end-of-encode, according to the distance of swimming numerical value RORun rearrangement of the inferior ordered pair opposite with rearrangement unit R reodr by variable-length decoder RVLD output; And number calculator NumClc, its basis is calculated the number Cnum of the not desorption coefficient in an object block from the output Run of bob-weight new sort unit R Ireodr, and exports the number that is obtained.
This run length decoding unit RLD1 further comprises contrary flexure folding scanner IScan, and it is from the quantized components DQS by the decoding of the decoded quantized components reconstruct two-dimensional array the represented one-dimensional array of rank numerical value Lev and distance of swimming numerical value Run.
Figure 11 is used to illustrate the length-changeable decoding processing of being carried out by variable-length decoder LVLD.The flow chart that Figure 11 (a) handles for the length-changeable decoding that is used to illustrate reconstruct rank numerical value, and Figure 11 (b) is for being illustrated in the schematic diagram of this length-changeable decoding used code table in handling.At this, identical with the code table L1 and the L2 that are used in encoding process, adopting according to the rank numerical value of the run length coding, RLC unit R LE1 of first embodiment at code table L1 that the length-changeable decoding that is used for this rank numerical value handle to adopt and L2.
Figure 12 is the schematic diagram that is used to illustrate the length-changeable decoding processing of being carried out by variable-length decoder RVLD.Figure 12 (a) is for being used to illustrate the flow chart of the length-changeable decoding processing that is used for reconstructing runlength numerical value.Figure 12 (b) is for being illustrated in the schematic diagram of the code table that adopts in this length-changeable decoding processing.At this, the code table R1 to R8 that adopts in the length-changeable decoding of distance of swimming numerical value is handled is identical with the code table R1 and the R8 that adopt in the encoding process to distance of swimming numerical value in according to the run length coding, RLC unit R LE1 of first embodiment respectively.
Below its operation will be described.
When a multiplexing quantifying unit Q for example by when the picture coding device 101 according to first embodiment is input to picture decoding apparatus 102, this run length decoding unit RLD1 makes this encoding stream Str1 be subjected to decoding processing, and the quantized components DQS of output decoder.The operation of this run length decoding unit RLD1 is opposite with the operation of run length coding, RLC unit R LE1.
More specifically, in run length decoding unit RLD1, this demultiplexer DMUX carries out multichannel to the rich encoding stream Str1 that is imported and decomposes, obtaining, and this rank numerical value code string and distance of swimming numerical value code string are outputed to variable-length decoder LVLD and variable-length decoder RVLD respectively corresponding to the rank numerical value code string LStr of rank numerical value with corresponding to the distance of swimming numerical value code string RStr of distance of swimming numerical value.
This variable-length decoder LVLD is by using a plurality of code tables of the corresponding relation between this rank numerical value of expression and the code (code word), according to selecting signal VlcSel from the quantization parameter QP of quantifying unit Q and the VLC that selects from the outside indication of length-changeable decoding, obtain rank numerical value ROLev for the rank numerical value code string LStr that obtains from this demultiplexer DMUX, and the rank numerical value that is obtained is outputed to bob-weight new sort unit LIreodr corresponding to each code (code word).On the other hand, this variable-length decoder RVLD is by using a plurality of code tables of the corresponding relation between this distance of swimming numerical value of expression and the code (code word), number Cnum according to the not code coefficient of exporting from number calculator NumClc, the distance of swimming numerical value code string RStr that obtains from this demultiplexer DMUX is obtained distance of swimming numerical value RORun corresponding to each code (code word), and the distance of swimming numerical value that is obtained is outputed to bob-weight new sort unit R Ireodr.
This bob-weight new sort unit LIreodr makes when end-of-encode from the rank numerical value ROLev of this variable-length decoder LVLD output be subjected to the resequencing processing of unit Lreodr, with the output Lev of reconstruct when the end-of-encode from this level calculator.On the other hand, this bob-weight new sort unit R Ireodr makes that when end-of-encode being subjected to the arrangement opposite with the processing of the unit R reodr that resequences from the distance of swimming numerical value RORun of variable-length decoder RVLD output handles, with the output Run of reconstruct when the end-of-encode from this distance of swimming calculator.In addition, number calculator NumClc is according to the number Cnum that calculates the not desorption coefficient in an object block from the output Run of bob-weight new sort unit R Ireodr, and the number Cnum that is obtained is outputed to variable-length decoder RVLD.
Then, this contrary flexure folding scanner IScan carries out and the opposite operation of zigzag scanning instrument Scan, with from quantized components DQS, and the quantized components DQS that is obtained outputed to inverse quantization unit IQ by the decoding that is quantized component reconstruct two-dimensional array of the represented one-dimensional array of rank numerical value Lev and distance of swimming numerical value Run.
Hereinafter, specifically describe the operation of variable-length decoder LVLD with reference to Figure 11.
This variable-length decoder LVLD obtains quantization parameter QP (step Sc1) from the quantifying unit Q of picture coding device 101, and determines whether the quantization parameter QP that is obtained is equal to or greater than the threshold value (step Sc2) of the quantization parameter QP that remains among the variable-length decoder LVLD.
Determine the result when this and show the quantization parameter QP that obtained threshold value less than this quantization parameter QP, then this variable-length decoder LVLD selects to be constituted code table L1 (referring to Figure 11 (b)) (step Sc3) by the arrangement Alev of rank numerical value and the arrangement Ca1 of code (code word), and when the quantization parameter QP that obtains is equal to or greater than the threshold value of quantization parameter QP, select arrangement Alev and the arrangement code table L2 (referring to Figure 11 (b)) (step Sc4) that Ca2 constituted by rank numerical value.
Then, this variable-length decoder LVLD determines whether to have any not rank numerical value Lev (step Sc5) of decoding in this object block.When the rank numerical value Lev of not decoding is comprised in this object block, this variable-length decoder is carried out the decoding processing that is used for reconstruct rank numerical value Lev by using selected code table, promptly, be used to obtain processing (step Sc6), carry out the processing of above-mentioned steps Sc5 then corresponding to the rank numerical value of code.On the other hand, the definite result in step Sc5 shows the rank numerical value Lev that does not decode in this object block, and this variable-length decoder finishes to be used for the length-changeable decoding processing of this rank numerical value of reconstruct Lev.
At this, when VLC selects signal VlcSel before to specify the length-changeable decoding of a particular code table of use to handle, the length-changeable decoding processing that this variable-length decoder LVLD is used for reconstruct rank numerical value by using this particular code table to carry out, and irrelevant with the numerical value of quantization parameter QP.
Then, specifically describe the operation of variable-length decoder RVLD with reference to Figure 12.
This variable-length decoder RVLD determines whether to have any not nonzero coefficient (step Sd1) of decoding according to output (the not number of the desorption coefficient) Cnum from number calculator NumClc in an object block.Determine the result when this and show the nonzero coefficient that existence is not decoded, then this variable-length decoder according to this not the number Cnum of desorption coefficient determine the number (step Sd2) of the zero coefficient of not decoding in this object block.
This variable-length decoder RVLD is according to the institute's number that obtains selection code table (step Sd3) of the zero coefficient of not decoding.More specifically, when the number of the zero coefficient of not decoding is 1, the code table R1 (referring to Figure 12 (b)) that this variable-length decoder selects the arrangement Cb1 by the arrangement Arun of distance of swimming numerical value and code (code word) to be constituted.Similarly, when the number of the zero coefficient of not decoding was 2, this variable-length decoder was selected code table R2, selected code table R3 when the number of the zero coefficient of not decoding is 3, and selected code table R4 when the number of the zero coefficient of not decoding is 4.In addition, when the number of the zero coefficient of not decoding was 5, this variable-length decoder was selected code table R5, selected code table R6 when the number of the zero coefficient of not decoding is 6, and selected code table R7 when the number of the zero coefficient of not decoding is 7.In addition, when the number of the zero coefficient of not decoding be 8 or when bigger, this variable-length decoder RVLD selects code table R8.
Then, this variable-length decoder RVLD carries out the decoding processing that is used for reconstructing runlength numerical value Run by using selecteed code table, that is, be used to obtain processing (step Sd4), and carry out definite processing of above-mentioned steps Sd1 then corresponding to the distance of swimming numerical value of each code.
In addition, when the definite result in step Sd1 showed the nonzero coefficient that does not have not decoding, this variable-length decoder RVLD finished to be used for the length-changeable decoding processing of reconstructing runlength numerical value.
In the picture decoding apparatus 102 according to second embodiment, this inverse quantization unit IQ, anti-frequency conversion unit ITrans conciliate module unit DeBlk and work according to the mode identical with picture decoding apparatus 202b (referring to Figure 36) with normal image decoding device 202a (referring to Figure 32).
Specifically, this inverse quantization unit IQ carries out the anti-operation of quantifying unit Q, that is, and and with reference to the operation of quantization parameter QP, with the frequency component ITransS of output decoder to the quantized components DQS execution inverse quantization of decoding.This anti-frequency conversion unit ITrans carries out the anti-operation of frequency conversion unit Trans, promptly, according to anti-DCT or anti-wavelet transformation conversion operation, with the pixel value signal DBlkS of reconstruct corresponding to the decoding of each piece corresponding to the frequency component ITransS of the decoding of each piece.Then, this cells D eBlk that deblocks is in conjunction with the pixel value signal DBllkS of the decoding of each piece, and output is corresponding to the decoded image signal Vout of each image (frame).
As indicated above, picture decoding apparatus 102 according to second embodiment comprises run length decoding unit RLD1, its formation be encoded the distance of swimming numerical value code string RStr of data and rank numerical value code string LStr be transformed to respectively the continuous zero coefficient Coef of expression number distance of swimming numerical value Run and be illustrated in the rank numerical value Lev of the numerical value of the nonzero coefficient after this zero coefficient, to be quantized coefficient according to this distance of swimming numerical value and the reconstruct of rank numerical value.Therefore, can carry out the decoding processing of handling corresponding to a kind of variable length code satisfactorily, this encoding process can be removed the coefficient that is quantized of redundant information with high coding efficiency coding more.
In addition, run length decoding unit RLD1 according to second embodiment comprises variable-length decoder LVLD, its numerical value according to quantization parameter QP is selected a code table, and by using selecteed code table to carry out the length-changeable decoding that is used for reconstruct rank numerical value.Therefore, can decode satisfactorily by the rank numerical value code string that total bit constituted corresponding to the minimizing of the code of distributing to rank numerical value.
This run length decoding unit RLD1 further comprises variable-length decoder RVLD, inverse quantization unit IQ selects a code table according to the number of the zero coefficient of not decoding in an object block, and by using the code string of selecteed code table decoding corresponding to the distance of swimming numerical value of rearrangement; And bob-weight new sort unit R Ireodr, its according to in run length decoding unit RLD1, order is on the contrary handled in the rearrangement of distance of swimming numerical value, to by the rearrangement of distance of swimming numerical value that this decoding processing obtained.Therefore, can be reduced effectively corresponding to the total bit of the code that is assigned to this distance of swimming numerical value, and the distance of swimming numerical value code string that can decode satisfactorily and be constituted by this distance of swimming numerical value.
In this second embodiment, the number of the do not decode zero coefficient of this variable-length decoder RVLD basis in object block (promptly, output Cnum from number calculator NumClc) selects a code table, but this variable-length decoder RVLD not only can be according to the output Cnum from number calculator NumClc, but also selects signal VldSel to select this code table according to VLD.For example, when before selecting signal VldSel to specify the length-changeable decoding of use particular code table to handle by VLD, this variable-length decoder RVLD handles by using this particular code table to carry out length-changeable decoding, with reconstructing runlength numerical value, and irrelevant with the number of the zero coefficient of not decoding in this object block.
[embodiment 3]
Figure 13 is the block diagram that is used to illustrate according to the picture coding device of third embodiment of the invention.
Have according to quantization parameter QP or VLC according to the picture coding device 103 of the 3rd embodiment and to select signal VlcSel to make the output QS from quantifying unit Q be subjected to the run length coding, RLC unit R LE2 that an encoding stream Str2 was handled and exported in variable length code, it is substituted in the run length coding, RLC unit R LE0c among the picture coding device 201c shown in Figure 38, and its feasible output (being quantized component) QS from quantifying unit Q is subjected to variable length code and handles and export an encoding stream Str0c.Other parts of the picture coding device 103 of the 3rd embodiment are identical with conventional picture coding device 201c.
More specifically, be similar to conventional run length coding, RLC unit R LE0c, this run length coding, RLC unit R LE2 has first generation code table T1 (referring to Figure 42), and its combination according to distance of swimming numerical value and rank numerical value illustrates distance of swimming numerical value and rank numerical value to the corresponding relation between (be called hereinafter the distance of swimming-rank to) and the respective code.This run length coding, RLC unit R LE2 according to this first generation code table regularly change the distance of swimming-rank to and code in this first generation code table between corresponding relation, the second generation code table that has the corresponding relation that is different from first generation code table with formation, and according to selecting signal VlcSel to select one of first and second code tables, and give assignment of code the distance of swimming-rank relevant right with coefficient in wanting processed target data according to selecteed code table from the quantization parameter QP of quantifying unit Q output or from the VLC of outside.
At this, this quantization parameter QP is the parameter of numerical value of this quantization step of expression, and this quantization step is similar to quantization parameter QP and is directly proportional.More specifically, when quantizing parameter QP when big, this quantized components has less absolute value, and it is longer to be quantized zero run-length in the component (its numerical value is the length of zero continuous component) at this then, so this rank numerical value has littler absolute value.Therefore, selected less assignment of code in this case to a right code table of the distance of swimming-rank that comprises big distance of swimming numerical value and less rank numerical value, thus increase code efficiency.On the contrary, when quantizing parameter QP hour, this is quantized component and has bigger absolute value.Therefore, less assignment of code to comprising less distance of swimming numerical value and selected than a code table of large level numerical value, thereby increase code efficiency.
In addition, when input was selected signal VlcSel from the VLC of picture coding device 103 outsides, this run length coding, RLC unit R LE2 selected signal VlcSel to be chosen in used in this an encoding process code table according to VLC.Therefore, when selecting a suitable code table from the outside according to picture characteristics (details of the motion value of image, the complexity of motion, pattern or the like), perhaps in the time can being formed on picture coding device 103 sides by the data flow that a picture decoding apparatus that only comprises a code table is decoded, this picture coding device 103 can be selected signal VlcSel to control by VLC and always select the predetermined code table.That is to say, can also carry out a kind of variable length code that does not change a code table and handle, but only use a code table.
Figure 14 is the block diagram that is used to illustrate the concrete structure of run length coding, RLC unit R LE2.
This run length coding, RLC unit R LE2 is similar to conventional run length coding, RLC unit R LE0c (referring to Figure 39) to have: zigzag scanning instrument Scan, be used for output (quantized components) QS two-dimensional array is converted to one-dimensional array (that is predesigned order) from quantifying unit Q quantized components Coef; Distance of swimming calculator RunCal is used to calculate its numerical value and is the number of zero continuous quantity polarization component (zero coefficient), and exports a distance of swimming numerical value Run; And level calculator LevCal, be used to calculate the numerical value of the quantized components Coef of its numerical nonzero (nonzero coefficient), and export a rank numerical value Lev.
In the 3rd embodiment, this run length coding, RLC unit R LE2 further has a distance of swimming transducer RunConv, be used for selecting signal VlcSel, carry out the processing that output (distance of swimming numerical value) Run from distance of swimming calculator RunCal is divided into distance of swimming numerical value Run1 with the distance of swimming numerical value Run2 of the low order digit of expression distance of swimming numerical value Run of the high-order digit of representing distance of swimming numerical value Run according to quantization parameter QP or VLC; And rank transducer LevConv, be used for selecting signal VleSel, carry out the processing that output (rank numerical value) Lev from level calculator LevCal is converted to rank numerical value Lev1 with the rank numerical value Lev2 of the low order digit of expression rank numerical value Lev of the high-order digit of representing rank numerical value Lev according to quantization parameter QP or VLC.
This run length coding, RLC unit R LE2 further comprises a distance of swimming grade encoding device RunLevEnc, be used for according to a code table or arithmetical operation, obtain Code Number Code corresponding to a pair of distance of swimming numerical value Run1 and rank numerical value Lev1 (be called hereinafter the distance of swimming-rank high-order digit to); And rearrangement unit R eOdr, be used for selecting signal VlcSel to carry out to of the processing of the distance of swimming-rank high-order digit to rearrangement according to quantization parameter QP or VLC, make corresponding to the distance of swimming-rank high-order digit of wanting a processed object block to according to the distance of swimming-rank high-order digit to Code Number Code corresponding to less Code Number, and output is corresponding to a right Code Number ReOdrCode of the distance of swimming-rank high-order digit of rearrangement.
This run length coding, RLC unit R LE2 further comprises: position calculator PosClc is used for calculating the be encoded number P os of coefficient of the number of the quantized components (coefficient is encoded) be encoded and output from distance of swimming numerical value Run; Number converter CodeTrans, be used for according to the distance of swimming-rank high-order digit to and Code Number ReOdrCode between corresponding relation, from rank numerical value Lev2 and distance of swimming numerical value Run2 output corresponding to by the represented right Code Number ExtCode of a distance of swimming-rank of second generation code table; And variable length coder VLC, be used for a bit string (code word) is assigned to Code Number ExtCode, to produce an encoding stream Str2.
Zigzag scanning instrument Scan in run length coding, RLC unit R LE2, distance of swimming calculator RunCal, level calculator LevCal and variable length coder VLC are identical with as shown in Figure 39 conventional run length coding, RLC unit R LE0c.
Below its effect will be described.
This zigzag scanning instrument Scan is converted to the quantization parameter QP of two-dimensional array the quantized components Coef of one-dimensional array (that is, an order being set).This distance of swimming calculator RunCal calculates the number of continuous null component (its numerical value is zero quantized components) Coef, and the distance of swimming numerical value Run of the number of output expression acquisition.This level calculator LevCal calculates a nonzero component (quantized components of the numerical nonzero after null component) Coef, and exports the rank numerical value Lev of the numerical value of this nonzero component of expression.
This distance of swimming calculator RunCal carries out the conversion process that distance of swimming numerical value Run is divided into distance of swimming numerical value Run1 with the distance of swimming numerical value Run2 of the low order digit of expression distance of swimming numerical value Run of the high-order digit of representing distance of swimming numerical value Run.This level calculator LevCal carries out the conversion process that rank numerical value Lev is divided into rank numerical value Lev1 with the rank numerical value Lev2 of the low order digit of expression rank numerical value Lev of the high-order digit of representing rank numerical value Lev.
This distance of swimming grade encoding device RunLevEnc is according to as shown in Figure 42 code table (first generation code table) or according to arithmetical operation, obtains the Code Number Code corresponding to a pair of rank numerical value Lev1 and distance of swimming numerical value Run1 (distance of swimming-rank high-order digit to).This rearrangement unit R eOdr carries out according to quantization parameter QP or VLC and selects signal VlcSel to the processing of this distance of swimming-rank high-order digit to rearrangement, and output is corresponding to the right Code Number ReOdrCode of the distance of swimming-rank high-order digit of a rearrangement.According to the distance of swimming-rank high-order digit to the rearrangement processing, the distance of swimming-rank the high-order digit that is obtained by distance of swimming grade encoding device RunLevEnc to and Code Number Code between corresponding relation be converted into such corresponding relation, wherein less Code Number is corresponding to processed the corresponding distance of swimming of higher frequency components-the rank high-order digit is right wanting.
This position calculator PosClc calculates the number of the component that is encoded from distance of swimming numerical value Run, and exports the number P os of the coefficient that is encoded.This number converter CodeTrans according to the distance of swimming-rank high-order digit to and Code Number ReOdrCode between corresponding relation, output corresponding to right from the distance of swimming-rank of rank numerical value Lev2 and distance of swimming numerical value Run2.At this moment, this number converter CodeTrans adopts from the number P os of the coefficient that is encoded of position calculator PosClc output, with the number of the component that obtains not encode.
At this, according to this distance of swimming-rank to and Code Number between corresponding relation be different from the second generation code table of first generation code table, obtain corresponding to the right Code Number ExtCode of this distance of swimming-rank from number converter CodeTrans output.The following formation of this second generation code table: at first, by the rearrangement of rearrangement unit R eOdr handle form have the distance of swimming-rank of being different from first generation code table to and Code Number between a code table of corresponding relation, changed according to the number P os of the coefficient that is encoded by number converter CodeTrans by rearrangement unit R eOdr formed this code table then, make its do not comprise corresponding to the distance of swimming numerical value Run of the number that surpasses the component of not encoding the distance of swimming-rank to and Code Number between corresponding relation.
This variable length coder VLC is assigned to Code Number ExtCode to a bit string (code word), to produce an encoding stream Str2.
Figure 15 output is by the example of run length coding, RLC unit R LE2 according to the formed second generation code table of first generation code table.At this, first generation code table is identical with the code table that is used for conventional run length coding, RLC unit R LE0c shown in Figure 42.In first and second code tables, a bit string (code word) is distributed to this Code Number correspondingly, and much less short code word is assigned to the Code Number Code that has than fractional value.
Figure 15 (a) illustrates an example of second generation code table,, is applicable to the code table T2a under the less situation of quantization parameter QP that is.
The following formation of this second generation code table T2a:
At first, be designated as rank numerical value Lev1, and (absolute value of Lev1 * 2-Lev) is designated as rank numerical value Lev2 corresponding to 1/2 the numerical value of rank numerical value Lev.
At this, when rank numerical value Lev is an odd number, by an even number that has than the absolute value of this rank numerical value Lev big 1 is used as rank numerical value Lev1 divided by 2 numerical value that obtained.More specifically, when rank numerical value Lev is positive number, be assigned to rank numerical value Lev1, and when rank numerical value Lev is negative, be assigned to rank numerical value Lev1 corresponding to 1/2 the numerical value of (Lev-1) corresponding to 1/2 the numerical value of (Lev+1).
Then, obtain Code Number Code according to the combination of rank numerical value Lev and distance of swimming numerical value Run from first generation code table (referring to Figure 42) corresponding to a pair of rank numerical value Lev1 and distance of swimming numerical value Run.
In addition, when the Lev value is positive number according to following formula (1), and when the Lev value is negative according to formula (2), conversion is corresponding to the Code Number Code of a pair of rank numerical value Lev1 and distance of swimming numerical value Run.This second generation code table T2a illustrate this Code Number and by the distance of swimming-rank that above-mentioned conversion obtained between corresponding relation.
2×(Code-Lev2)-l...(1)
2×(Code-Lev2)...(2)
For example, a distance of swimming-rank in the code table (first generation code table) that attentiveness is placed among Figure 42 is to (rank=-2, when the distance of swimming=1) going up, corresponding to the right Code Number Code of this distance of swimming-rank by from being converted to by represented " 12 " of second generation code table T2a among Figure 15 (a) by the first generation code table T1 Figure 42.
That is to say, because this distance of swimming-rank is to (Lev Run) in this situation is (2,1), then following calculating Lev1 and Lev2.
Lev1=LeV·(1/2)=-1
Lev2=|Lev1·2-Lev1|=|-1·2-(-2)=0
Therefore, (Lev1 Run) is (1,1), and according to first generation code table, and this distance of swimming-rank is to corresponding to Code Number (Code=6) (referring to Figure 42).
Then, by adopt formula (2) calculate corresponding to this distance of swimming-rank to (Lev, Code Number Run)=(2,1):
2×(Code-Lev2)=2×(6-0)=12
Code table among Figure 15 (a) is characterised in that less Code Number (promptly, short code word) it is right to be assigned to the such distance of swimming-rank, this distance of swimming-rank pair is compared by less distance of swimming numerical value with than large level numerical value with the code table shown in Figure 42 (first generation code table) and to be constituted, and this is suitable for the less situation of quantization parameter QP.
Figure 15 (b) illustrates another example of second generation code table,, is applicable to the second generation code table T2b in the bigger situation of quantization parameter QP that is.
The following formation of this second generation code table T2b.
At first, be assigned to distance of swimming numerical value Run1, and (absolute value of Run1 * 2-Run) is assigned to distance of swimming numerical value Run2 corresponding to 1/2 the numerical value of distance of swimming numerical value Run.At this, when this distance of swimming numerical value is odd number, be assigned to distance of swimming numerical value Run1 corresponding to 1/2 the numerical value of (Run+1).
Then, according to the combination of rank numerical value Lev and distance of swimming numerical value Run1, obtain from first generation code table (referring to Figure 42), corresponding to the Code Number Code of a pair of rank numerical value Lev and distance of swimming numerical value Run1.
In addition, when the Lev value is positive number according to following formula (3), and when the Lev value is negative according to formula (4) conversion Code Number Code corresponding to a pair of rank numerical value Lev and distance of swimming numerical value Run1.This second generation code table T2b this Code Number is shown and as the result of conversion and the distance of swimming-rank of obtaining between corresponding relation.
2×(Code+Run2)-1...(3)
2×(Code+Run2)-2...(4)
For example, a distance of swimming-rank in the code table that attentiveness is placed on Figure 42 (first generation code table) is to (rank=-1, the distance of swimming=2) time, corresponding to the right Code Number Code of this distance of swimming-rank by from being converted to by the second generation code table T2b represented " 10 " among Figure 15 (b) by represented " 12 " of first generation code table T1 Figure 42.
More specifically, since in this case the distance of swimming-rank to (Lev Run) be (1,2), so following calculating Run1 and Run2.
Run1=Run·(1/2)=1
Run2=|Run1·2-Run|=|1·2-2|=0
Therefore, (Lev Run1) is (1,1), and according to first generation code table, and this distance of swimming-rank is to corresponding to a Code Number (code=6).
Then, by use formula (4) calculate corresponding to this distance of swimming-rank to (Lev, Code Number Run)=(1,2):
2×(Code+Run2)=2×(6-0)-2=10
Second generation code table T2b shown in Figure 15 (b) is characterised in that less Code Number (promptly, than short code) to be assigned to the such distance of swimming-rank right, it is compared with the code table shown in Figure 42 (first generation code table) T1 by big distance of swimming numerical value and wife and children's rank numerical value and is constituted, and this is applicable to the situation that quantization parameter QP is bigger.
Figure 16 illustrates another example that is formed second generation code table by run length coding, RLC unit R LE2 according to first generation code table.At this, this first generation code table is identical with the code table T1 that is used for conventional run length coding, RLC unit R LE0c shown in Figure 42.
This number converter CodeTrans calculates the number (also not being subjected to the number of the coefficient of encoding process) of the component of not encoding in object block that will be processed according to the number P os of the coefficient of exporting from position calculator PosClc that is encoded.In addition, the second generation code table that forms from first generation code table does not comprise the right code word of the distance of swimming-rank corresponding to the distance of swimming numerical value that comprises the number that surpasses the component of not encoding.Thereby, can encode with higher compression efficiency.
It is 3 or formed second generation code table T2c when bigger that Figure 16 (a) illustrates number when the component of not encoding.Figure 16 (b) illustrates the second generation code table T2d that forms when the number of the component of not encoding is 2.Figure 16 (c) illustrates formed second generation code table T2e when the number 1 of the component of not encoding.
As indicated above, when the distance of swimming-rank that is comprising the distance of swimming numerical value that can not use to and code between corresponding relation by from the deletion of this code table the time, one to be assigned to this distance of swimming-rank than short code right.For example, according to the second generation code table T2e as shown in Figure 16 (c), a distance of swimming-rank that is made of distance of swimming numerical value [0] and a rank numerical value [4] is to corresponding to a Code Number [7].According to the second generation code table T2b as shown in Figure 16 (b), the distance of swimming-the rank that is made of distance of swimming numerical value [0] and rank numerical value [4] is to corresponding to a Code Number [11], and according to the second generation code table T2c as shown in Figure 16 (a), the distance of swimming-rank that is made of distance of swimming numerical value [0] and rank numerical value [4] is to corresponding to a Code Number with bigger numerical value (not shown).
Figure 17 illustrates an example according to the coding order of the run length coding, RLC unit R LE2 of the picture coding device 103 of the 3rd embodiment.
Usually, bigger corresponding to the absolute value of the rank numerical value of low frequency component, and in this code table, the Code Number Code with bigger numerical is corresponding to right with the corresponding distance of swimming-rank of low frequency component.On the contrary, less corresponding to the absolute value of the rank numerical value of high fdrequency component, and in this code table, have code table than fractional value corresponding to right with the corresponding distance of swimming-rank of high fdrequency component.
As described in reference Figure 16, increment by the compression efficiency that obtains corresponding to the right Code Number (code word) of the distance of swimming-rank of the distance of swimming numerical value that comprises the number that surpasses the component of not encoding from the deletion of this code table increases along with the number of the component of not encoding diminishes, and along with the change of the absolute value of rank numerical value is big and increase, because compare with the situation that does not have delete code number, it is big that the ratio that the numerical value of the Code Number that is assigned with reduces becomes.
Therefore, when by run length coding, RLC unit R LE2 to being quantized the big absolute value that has rank numerical value in the component coding and being encoded after corresponding to the component that is quantized of the rank numerical value of low frequency component, be similar to the picture coding device 103 according to the 3rd embodiment, this compression efficiency is further increased.
More specifically, this rearrangement unit R eOdr is to being quantized heavy new sort, so that its from the distance of swimming-rank of being quantized component (last nonzero component) corresponding to of high fdrequency component to corresponding to the distance of swimming-rank that is quantized component of low frequency component to sequence arrangement, as shown in the arrow X1 to X7 among Figure 17, an EOB who is illustrated in the component that is encoded at last in the object block being added on, thereby increase compression efficiency corresponding to after the right code word of one with lowest frequency components distance of swimming-rank that is quantized component.
In addition, in the 3rd embodiment, this quantization parameter QP and VLC select signal VlcSel to be provided to variable length coder LVLC, distance of swimming transducer RunConv, rearrangement unit R eOdr and number converter CodeTrans.Therefore, can change a code table, perhaps can select a suitable code table from the outside according to the content (details of the motion value of this image, the complexity of motion or pattern) of image according to quantization parameter QP.
For example, when the code table that is used for this encoding process was selected signal VlcSel to change according to the VLC from this picture coding device outside, this picture decoding apparatus can be created a data flow of being decoded by the decoding unit that only has a code table.
In the 3rd embodiment, this picture coding device 103 that is quantized coefficient coding as the picture signal of wanting processed target data is comprised run length coding, RLC unit R LE2, it uses a code table that variable-length codes is assigned to this and is quantized coefficient, and this run length coding, RLC unit R LE2 forms the second generation code table that coded data that will be processed is optimized according to this first generation code table, and selects signal VlcSel to select one of first and second code tables as a code table that is used for the distribution of variable-length codes according to quantization parameter QP or VLC.Therefore, can remove the redundant information that is included in the target data effectively, thereby further increase the compression ratio that is used for picture signal or the like.
In the 3rd embodiment, run length coding, RLC unit R LE2 comprises the various device that is used to increase compression ratio, that is, distance of swimming transducer RunConv, rank transducer LevConv, rearrangement unit R eOdr and number converter CodeTrans, as shown in Figure 14.But this run length coding, RLC unit R LE2 can only comprise some equipment that are used to increase this compression ratio.In this case, this run length coding, RLC unit R LE2 can easily be installed.
In addition, in the 3rd embodiment, by in the part that constitutes first generation code table, change this distance of swimming-rank to and Code Number between corresponding relation obtain second generation code table: the part that can regularly produce, and the part that can not regularly produce (table is searched VLC) by arithmetical operation (making up VLC termly).But, can regularly produce the part of (making up VLC termly) by arithmetical operation and during the part (table is searched VLC) that can not regularly produce when this first generation code table has, this second generation code table can by only change as can be termly the part of the first generation code table that produces of computing by easy execution form.In this case, can carry out the installation of run length coding, RLC unit R LE2 more easily.
According to the 3rd embodiment, in the run length coding, RLC unit of the variable length code that execution is quantized component by the use distance of swimming-rank, this is quantized component and is subjected to variable length code continuously from the high fdrequency component to the low frequency component.But, much less, be subjected to respectively being similar in the run length coding, RLC unit of the variable length code processing among first embodiment corresponding to distance of swimming numerical value that is quantized component in this object block and rank numerical value feasible, can from the high fdrequency component to the low frequency component, be subjected to the variable length code processing continuously corresponding to distance of swimming numerical value that is quantized component in this object block and rank numerical value.
[embodiment 4]
Figure 18 is the block diagram that is used to illustrate according to the picture decoding apparatus of fourth embodiment of the invention.
Picture decoding apparatus 104 according to the 4th embodiment comprises run length decoding unit RLD2, it selects signal (VLD selects signal) VldSel to make encoding stream Str2 be subjected to the length-changeable decoding processing according to quantization parameter QP or length-changeable decoding, and the quantized components DQS of output decoder, the encoding stream Str0c that makes among its replacement normal image decoding device 202c as shown in Figure 40 is subjected to the run length decoding unit RLD0c of the quantized components DQS of length-changeable decoding processing and output decoder.Identical according to other parts of the picture decoding apparatus 104 of the 4th embodiment with part among the normal image decoding device 202c.
More specifically, this run length decoding unit RLD2 is similar to conventional run length decoding unit RLD0c, have first generation code table T1 (referring to Figure 42), the corresponding relation between a pair of distance of swimming numerical value and rank numerical value (be called hereinafter the distance of swimming-rank to) and the respective code is represented in its combination according to this distance of swimming numerical value and rank numerical value.Then, this run length decoding unit RLD2 according to this first generation code table change termly the distance of swimming-rank to and this first generation code table in code between corresponding relation, the second generation code table that has the different corresponding relations that are different from first generation code table with formation, and according to selecting signal VldSel to select one of first and second code tables from the quantization parameter QP of quantifying unit Q output or from the VLD of outside, and according to selected code table, it is right that the code table (bit string) that constitutes this encoding stream Str2 is converted to distance of swimming numerical value and the rank numerical value relevant with coefficient in target data that will be processed.
As indicated above, this quantization parameter QP is a parameter of the numerical value of expression quantization step, and this quantization step is similar to quantization parameter QP proportional.More specifically, when quantizing parameter QP when big, this is quantized component and has less absolute value, and the zero run-length (its numerical value is the length of zero continuous component) that is quantized component then becomes longer, and therefore rank numerical value has littler absolute value.In this case, correspondingly, select such code table, it is right that wherein less code is assigned to by the distance of swimming-rank of big distance of swimming numerical value and less rank numerical value, thereby further improve code efficiency.On the contrary, when quantizing parameter QP hour, this is quantized component and has absolute value, and it is right therefore to select such code table, wherein less code to be assigned to by less distance of swimming numerical value and the distance of swimming-rank of being constituted than large level numerical value, thereby increases code efficiency.
The block diagram of the concrete structure of the not shown run length decoding unit of Figure 19 RLD2.
This run length decoding unit RLD2 and conventional run length decoding unit RLD0c have variable-length decoder VLD equally, and the encoding stream Str2 of this decoder VLD decoding, and export a Code Number ExtCode from exporting according to the picture coding device 103 of the 3rd embodiment.
In the 4th embodiment, this run length decoding unit RLD2 has: a number inverse transformer ICodeTrans, being used to carry out the number inverse transformation handles, selecting signal VldSel according to quantization parameter QP or VLD, it is right that Code Number ExtCode is divided into corresponding to the distance of swimming-rank high-order digit that is made of rank numerical value Lev1 and distance of swimming numerical value Run1, rank numerical value Lev2 and distance of swimming numerical value Run2; And bob-weight new sort unit IReOdr, be used for corresponding to a plurality of Code Number PrmCode that want a processed object block according to the order rearrangement of the right increase frequency of the distance of swimming-rank, and output is corresponding to this object block with have a plurality of Code Number Code of the order of change.
This run length decoding unit RLD2 further comprises: distance of swimming rank detector RunLevDec, it is right corresponding to the distance of swimming-rank of Code Number Code to be used for according to code table or arithmetical operation detection, and output is by rank numerical value Lev1 and the distance of swimming numerical value Run1 of this distance of swimming-rank to being constituted; Distance of swimming decommutator IRunConv is used for from a distance of swimming numerical value of the distance of swimming numerical value Run2 reconstruct Run of the low order digit of the distance of swimming numerical value Run1 of the high-order digit of expression distance of swimming numerical value Run and expression distance of swimming numerical value Run; And rank decommutator ILevConv, be used for from the high-order digit of expression rank numerical value Lev and a rank numerical value of the rank numerical value Lev2 reconstruct Lev of rank numerical value Lev1 and the low order digit of expression rank numerical value Lev.
The identical contrary flexure folding scanner IScan that further comprises of this run length decoding unit RLD2 with run length decoding unit RLD0c.This contrary flexure folding scanner IScan is being quantized quantized components DQS that component transformation is the decoding of two-dimensional array and output by the represented one-dimensional array of rank numerical value Lev and distance of swimming numerical value Run.
At this, the variable-length decoder VLD in run length decoding unit RLD2, distance of swimming rank detector RunLevDec roll over scanner IScan with identical at the run length decoding unit RLD0c shown in Figure 41 with contrary flexure.
Below its function and effect will be described.
In run length decoding unit RLD2, this variable-length decoder VLD carries out the operation opposite with variable length coder VLC.That is to say, this variable-length decoder VLD decoding and coding stream Str2, and output is corresponding to a Code Number ExtCode of the code word (bit string) that constitutes this stream.This number inverse transformer ICodeTrans selects signal VldSel to carry out and the opposite operation of number converter CodeTrans according to quantization parameter QP or VLD, with a right Code Number PrmCode of the distance of swimming-rank high-order digit who Code Number ExtCode is divided into and is made of rank numerical value Lev1 and distance of swimming numerical value Run1, rank numerical value Lev2 and distance of swimming numerical value Run2.
This bob-weight new sort unit IReOdr selects signal VldSel to carry out the opposite operation with rearrangement unit R eOdr according to quantization parameter QP or VLD.Thereby, carry out rearrangement according to the inferior ordered pair of the right increase frequency of the distance of swimming-rank with wanting the processed corresponding a plurality of Code Number PrmCode of object block, and the order that changes of output device and corresponding to a plurality of Code Number Code of this piece.This distance of swimming rank detector RunLevDec is right corresponding to the distance of swimming-rank of Code Number Code according to a code table or arithmetical operation detection, and output constitutes right rank numerical value Lev1 and the distance of swimming numerical value Run1 of the distance of swimming-rank that is detected.
This distance of swimming decommutator IRunConv selects signal VldSel to carry out and the opposite operation of distance of swimming transducer RunConv according to quantization parameter QP or VLD, with from the distance of swimming numerical value Run1 of the high-order digit of expression distance of swimming numerical value Run with represent this distance of swimming numerical value of distance of swimming numerical value Run2 reconstruct Run of a plurality of positions of distance of swimming numerical value Run.In addition, this rank decommutator ILevConv selects signal VldSel to carry out and the opposite operation of rank transducer LevConv according to quantization parameter QP or VLD, with from the rank numerical value Lev1 of the high-order digit of expression rank numerical value Lev with represent this rank numerical value of rank numerical value Lev2 reconstruct Lev of the low order digit of rank numerical value Lev.
At this, in number inverse transformer ICodeTrans, bob-weight new sort unit IReOdr, distance of swimming decommutator IRunConv and rank decommutator ILevConv, select signal VldSel to carry out first or the selection of second generation code table according to quantization parameter QP and VLD, and carry out this operation according to selected code table.
Contrary flexure folding scanner IScan carries out and the opposite operation of zigzag scanning instrument Scan, with according to rank numerical value Lev and the distance of swimming numerical value Run handle quantized components DQS that component transformation is the decoding of two-dimensional array that is quantized by the represented one-dimensional array of rank numerical value Lev and distance of swimming numerical value Run.
In addition, when VLD selected signal VldSel to be imported from the outside, this run length decoding unit RLD2 selected corresponding to the suitable code table of being selected the represented picture material (details of the numerical value of image motion, the complexity of motion, pattern) of signal VldSel by VLD.
In the 4th embodiment, quantization parameter QP and VLD select signal VldSel to be provided to number inverse transformer ICodeTrans, bob-weight new sort unit IReOdr, distance of swimming decommutator IRunConv and rank decommutator ILevConv respectively.Therefore, a code table can change according to quantization parameter QP, and perhaps according to the characteristic of image, that is, details of the numerical value of image motion, the complexity of motion, pattern or the like is selected a suitable code table from the outside of this picture decoding apparatus.
As indicated above, in the 4th embodiment, the picture decoding apparatus 104 that the data that are encoded that the variable length code that is quantized coefficient by a picture signal is obtained are decoded comprises and uses a code table to be used for a variable-length codes is converted to the run length decoding unit RLD2 that is quantized component.In addition, this run length decoding unit RLD2 forms the second generation code table that target data that will be processed is optimized according to this first generation code table, and select signal VldSel according to quantization parameter QP or VLD, select one of first and second code tables as variable-length codes being converted to the code table that is quantized in the coefficient to be adopted.Therefore, can carry out satisfactorily corresponding to the decoding processing that can remove the variable length code processing that is included in the redundant information in the target data of wanting processed effectively.
In the 4th embodiment, as shown in Figure 19, run length decoding unit RLD2 has the various device that is used to increase compression ratio, promptly, number inverse transformer ICodeTrans, bob-weight new sort unit IReOdr, distance of swimming decommutator IRunConv and rank decommutator ILevConv, and this run length decoding unit RLD2 can only have some equipment of the equipment that is used for increasing compression ratio like this.In this case, run length decoding unit RLD2 can be installed more easily.
In addition, in the 4th embodiment, by in the part that constitutes first generation code table, change this distance of swimming-rank to and Code Number between corresponding relation form second generation code table: the part that can regularly produce, and the part that can not regularly produce (table is searched VLC) by arithmetical operation (making up VLC termly).But, can regularly produce the part of (making up VLC termly) by arithmetical operation and during the part (table is searched VLC) that can not regularly produce when this first generation code table has, this second generation code table can by only change as can be termly the part of the first generation code table that produces of computing by easy execution form.In this case, can carry out the installation of run length decoding unit RLD2 more easily.
According to the 4th embodiment, by using the distance of swimming-rank, from the high fdrequency component to the low frequency component, carry out length-changeable decoding continuously corresponding to the coded data that is quantized component to carrying out in the run length decoding unit corresponding to the length-changeable decoding of the coded data that is quantized component.But, make the data that are encoded corresponding to distance of swimming numerical value that is quantized component in the object block and rank numerical value be subjected to respectively with second embodiment in the length-changeable decoding unit of identical length-changeable decoding, from the high fdrequency component to the low frequency component, be subjected to length-changeable decoding continuously corresponding to the distance of swimming numerical value that is quantized component of this object block and the data that are encoded of rank numerical value.
[embodiment 5]
Figure 20 is the block diagram that is used to illustrate according to the picture coding device of fifth embodiment of the invention.
This picture coding device 105 comprises the run length coding, RLC unit R LE3 according to the run length coding, RLC unit R LE2 in the picture coding device 103 of the 3rd embodiment that is substituted in as shown in Figure 13, the distance of swimming-rank of its coding to and the number of nonzero component, be similar to run length coding, RLC unit R LE2.According to other parts of the picture coding device 105 of the 5th embodiment with identical according to the part in the picture coding device 103 of the 3rd embodiment.
Figure 21 is illustrated in the concrete structure of the run length coding, RLC unit R LE3 in the picture coding device 105.
Be substituted in as shown in Figure 14 according to the position calculator PosClc among the run length coding, RLC unit R LE2 of the 3rd embodiment, run length coding, RLC unit R LE3 according to the 5th embodiment has nonzero coefficient calculator NZcount, is used for according to the number N Znum that is quantized component counting nonzero component that is imported; And position calculator PosClc2, be used for according to the count number NZnum of nonzero component and calculate the number P os2 of the coefficient that is encoded by the distance of swimming numerical value Run that distance of swimming calculator RunCal is calculated.
Run length coding, RLC unit R LE3 according to the 5th embodiment encodes to output (Code Number) ExtCode from number converter CodeTrans, and the number N Znum of coding nonzero component, these are different with variable length coder VLC according to the run length coding, RLC unit R LE2 of the 3rd embodiment.
Other parts of run length coding, RLC unit R LE3 are identical with run length coding, RLC unit R LE2 according to the 3rd embodiment.
Below its function and effect will be described.
Identical with operation according to the picture coding device 103 of the 3rd embodiment according to the operation of piecemeal unit B lk, frequency conversion unit Trans in the picture coding device 105 of the 5th embodiment and quantifying unit Q.In addition, except operation according to other parts nonzero coefficient calculator NZcount, position calculator PosClc2, number converter CodeTrans and the variable length coder VLC2 among the run length coding, RLC unit R LE3 of the 5th embodiment, that is, the operation of zigzag scanning instrument Scan, distance of swimming calculator RunCal, level calculator LevCal, distance of swimming transducer RunConv, rank transducer LevConv, distance of swimming grade encoding device RunLevEnc and rearrangement unit R eOdr is identical with the operation according to the run length coding, RLC unit R LE2 of the 3rd embodiment.Therefore, the operation of nonzero coefficient calculator NZcount, position calculator PosClc2, number converter CodeTrans and variable length coder VLC2 will mainly be described at this.
When the quantized components QS from quantifying unit Q output is imported into run length coding, RLC unit R LE3, nonzero coefficient calculator NZcount in run length coding, RLC unit R LE3 is according to the quantized components QS counting a plurality of components that are quantized corresponding to each piece, and the number N Znum of the nonzero component that is obtained is outputed to position calculator PosClc2 and variable length coder VLC2.
This position calculator PosClc2 is according to from the number N Znum of the nonzero component of nonzero coefficient calculator NZcount with from the distance of swimming numerical value Run of distance of swimming calculator RunCal, the number of the null component that be encoded of calculating in an object block and the number sum of nonzero component, and export the numerical value Pos2 that is obtained.
This number converter CodeTrans according to the distance of swimming-rank high-order digit to and Code Number ReOdrCode between corresponding relation, output corresponding to Code Number ExtCode from rank numerical value Lev2 and distance of swimming numerical value Run2.At this moment, this number converter CodeTrans adopts from the evaluation Pos2 of institute of position calculator PosClc2 output, to obtain the number of the component of not encoding in this object block.
At this, according to have be different from first generation code table the distance of swimming-rank to and Code Number between the second generation code table of corresponding relation obtain from number converter CodeTrans output corresponding to a Code Number ExtCode that the distance of swimming-rank is right.The following formation of this second generation code table: at first by the rearrangement in rearrangement unit R eOdr handle form have different with first generation code table the distance of swimming-rank to and Code Number between a code table of corresponding relation, have greater than the distance of swimming-rank of the distance of swimming numerical value of the maximum run numerical value Run in this code table corresponding to the Code Number ExtCode that is not assigned with code by changing formed code table according to the evaluation Pos2 of institute by number converter CodeTrans, making then by rearrangement unit R eOdr.
This variable length coder VLC2 is to the number N Znum coding of nonzero component, and execution is to the coding of Code Number ExtCode, so that a bit string (code word) is assigned to Code Number ExtCode, to produce an encoding stream Str3.
Hereinafter, the operation of variable length coder VLC2 will be specifically described.
Different with variable length coder VLC according to the 3rd embodiment, variable length coder VLC2 according to the 5th embodiment not only encodes corresponding to the right Code Number ExtCode of the distance of swimming-rank of an object block, and also is coded in the number N Znum of the nonzero component in this object block before the Code Number ExtCode of this piece of coding.
As indicated above, when the coding piece Code Number ExtCode before the coding nonzero component number N Znum the time, at first can decode by the number N Znum to the nonzero component of this object block in when decoding, and when reconstruct corresponding to the distance of swimming-rank of the number N Znum of nonzero component to the time, check whether the right reconstruct of the last distance of swimming-rank in this object block is finished.Thereby this variable length coder VLC2 need be by a special value EOB when this object block finish encoding required according to the variable length coder VLC of the 3rd embodiment (numerical value that sends after last nonzero component).
Then, the operation of position calculator PosClc2 and number converter CodeTrans will be specifically described.
Suppose that an object block comprises NBlock quantization parameter QP (comprising null component and nonzero component), according to the number N Znum of the nonzero component in this object block, maximum run length (maximum number of zero coefficient continuously) is (NBlock-NZnum).In addition, the maximum run numerical value when the right coding of first distance of swimming-rank has been finished (maximum number of zero coefficient continuously) MaxRun (1) uses the right distance of swimming numerical value FRun of first distance of swimming-rank of this object block to represent by following formula (5).
MaxRun(1)=NBlock-NZnum-FRun...(5)
Maximum run numerical value MaxRun (i) when usually, the right coding of i the distance of swimming-rank in a piece has been finished is represented by following formula (6).
MaxRun (i)=NBlock-NZnum-{ the first~the i distance of swimming numerical value sum } ... (6)
Therefore, position calculator PosClc2 exports by the represented evaluation Pos2 of institute of following formula (7), thereby shows that to number converter CodeTrans this maximum run numerical value MaxRun (i) is by a represented numerical value of formula (8).
Pos2=NZnum+{ the first~the i distance of swimming numerical value sum } ... (7)
MaxRun(i)=NBlock-Pos2...(8)
This number converter CodeTrans forms second generation code table, and the Code Number ExtCode that wherein is not assigned with code is corresponding to the distance of swimming numerical value that has greater than maximum run numerical value MaxRun.Thereby, eliminate because the redundancy of assignment of code in the right encoding process of the distance of swimming-rank that can not occur, thereby increase compression ratio.
When by being used as by the first's (making up VLC termly) that arithmetical operation produced and the variable-length codes table that can not be constituted when being quantized component and carrying out first and second code tables that variable length code handles by the second portion (table is searched VLC) that arithmetical operation produced, can form this second generation code table by first and second parts that change in first generation code table according to maximum run numerical value, perhaps can form second generation code table according to the first in the easy first generation code table of carrying out that arithmetical operation produced of maximum run numerical value by only changing.
In addition, when according to maximum run numerical value MaxRun (i) the change variable-length codes table when finishing the right coding of i the distance of swimming-rank, not this code table not to be changed into code is assigned to the right code table of the distance of swimming-rank that has greater than the distance of swimming numerical value Run of maximum run numerical value MaxRun (i), can a variable-length codes table directly not changed into and give the right code table of the distance of swimming-rank that has greater than the distance of swimming numerical value Run of maximum run numerical value MaxRun (i) assignment of code.
Figure 24 is the example that the variable-length codes table is shown.Compare with code table Tb (Figure 24 (b)), (Figure 24 (a)) is assigned to less distance of swimming numerical value than short code in a code table Ta.Compare with code table Tc (Figure 24 (c)), in this code table Tb (Figure 24 (b)), short code is assigned to less distance of swimming numerical value.
In addition, compare, in this code table Tc (Figure 24 (c)), be assigned to rank numerical value than short code with less absolute value with code table Tb (Figure 24 (b)).Compare with code table Ta (Figure 24 (a)), in this code table Tb, be assigned to rank numerical value than short code with less absolute value.
Therefore, when maximum run numerical value MaxRun hour, preferably be chosen in the code table among Figure 24 (a), when maximum run numerical value MaxRun is big, be chosen in the code table Tc among Figure 24 (c), and when maximum run numerical value MaxRun is a median, be chosen in the code table Tb among Figure 24 (b).
According to the 5th embodiment, the picture coding device that is quantized coefficient 105 that the frequency component of coding by quantized visual signal obtains has run length coding, RLC unit R LE3, and it uses a code table that variable-length codes is distributed to this and is quantized component.Then, this run length coding, RLC unit R LE3 is according to the number of the processed coefficient (coefficient is encoded) in the object block that will be encoded and the number sum of the nonzero coefficient of not encoding in this object block, in other words be the number of the nonzero coefficient in this object block and the number sum of handling distance of swimming numerical value in this object block, a right code table of the distance of swimming-rank of selecting deletion can not occur, thus variable length code efficient increased.
According to the 5th embodiment, by using the distance of swimming-rank to carrying out in the run length coding, RLC unit corresponding to the variable length code that is quantized component of each piece, the number N Znum of the nonzero component in an object block is encoded.But, can be in the run length coding, RLC unit of carrying out respectively corresponding to the variable length code of the distance of swimming numerical value that is quantized component of each piece and rank numerical value, execution is to the coding of the number N Znum of the nonzero component of the nonzero component of an object block, and this is identical with first embodiment.In this situation, the maximum run numerical value in this object block can be set at by from this object block important number deduct the numerical value that the number N Znum of nonzero component obtains.
[embodiment 6]
Figure 22 is the block diagram that is used to illustrate according to the picture decoding apparatus of sixth embodiment of the invention.
Run length decoding unit RLD2 in the picture decoding apparatus 104 of replacement basis the 4th embodiment as shown in Figure 18, picture decoding apparatus 106 according to the 6th embodiment has run length decoding unit RLD3, itself and the decoding processing of the identical execution of run length decoding unit RLD2 to the data that are encoded are with the right number of the distance of swimming-rank of reconstruct in each piece and the number of nonzero component.Identical according to other parts of the picture decoding apparatus 106 of the 6th embodiment with part according to the picture decoding apparatus 104 of the 4th embodiment.
Figure 23 is illustrated in the concrete structure of the run length decoding unit RLD3 in the picture decoding apparatus 106.
Be substituted in according to the position calculator PosClc among the run length decoding unit RLD2 as shown in Figure 19, the run length decoding unit RLD3 of the 6th embodiment comprises a position calculator PosClc2, is used for calculating at the number of the distance of swimming numerical value of the decoding of wanting a decoded object block and the number N Znum of the nonzero component in this object block.
In addition, be different from according to the variable-length decoder VLD part among the run length decoding unit RLD2 of the 4th embodiment according to the variable-length decoder VLD2 of the run length decoding unit RLD3 of the 6th embodiment and be to carry out the decoding processing that is used for reconfiguration code ExtCode and be used for the decoding processing of the number N Znum of reconstruct nonzero component.
Below its function and effect will be described.
Identical in the operation of conciliating module unit DeBlk according to the inverse quantization unit IQ in the picture decoding apparatus 106 of the 6th embodiment, anti-frequency conversion unit ITrans with the picture decoding apparatus 104 of the 4th embodiment.In addition, except variable-length decoder VLD2, position calculator PosClc2 and number inverse transformer ICodeTrans, operation according to other parts of the run length decoding unit RLD3 of the 6th embodiment, that is, the operation of bob-weight new sort unit IReOdr, distance of swimming rank detector RunLevDec, rank decommutator ILevConv, distance of swimming decommutator IRunConv and contrary flexure folding scanner IScan is identical with run length decoding unit RLD2 according to the 4th embodiment.Therefore, the operation of variable-length decoder VLD2, position calculator PosClc2 and number inverse transformer ICodeTrans is mainly described hereinafter.
This variable-length decoder VLD2 decoding and coding stream Str3, and output is corresponding to a Code Number ExtCode of a code word (bit string) that is made of the stream that is encoded.This number inverse transformer ICodeTrans selects the number of signal VldSel and decoded coefficient and the number sum Pos2 of the nonzero coefficient of decoding not according to quantization parameter QP or VLD, carry out and the opposite operation of number converter CodeTrans, Code Number ExtCode is divided into corresponding to the distance of swimming-rank high-order digit that comprises rank numerical value Lev1 and distance of swimming numerical value Run1 right Code Number PrmCode, rank numerical value Lev2 and distance of swimming numerical value Run2.
This bob-weight new sort unit IReOdr, distance of swimming rank detector RunLevDec, distance of swimming decommutator IRunConv, rank decommutator ILevConv and contrary flexure folding scanner IScan carry out and the 4th embodiment identical operations.
At this, number inverse transformer ICodeTrans, bob-weight new sort unit IReOdr, distance of swimming decommutator IRunConv and rank decommutator ILevConv select among signal VldSel and coefficient and the Pos2 at least one to select one of first and second code tables according to quantization parameter QP or VLD, and according to selected code table executable operations.
Hereinafter, the operation of variable-length decoder VLD2 will be specifically described.
Be different from variable-length decoder VLD part according to the 4th embodiment according to the variable-length decoder VLD2 of the 6th embodiment and be that it not only decodes corresponding to a Code Number ExtCode that the distance of swimming-rank is right, but also the number N Znum that is encoded of the nonzero component of decoding in this object block.When NZnum the distance of swimming-rank obtains the number N Znum of nonzero component by decoding under to decoded situation, this NZnum the distance of swimming-rank is right to being judged as the last distance of swimming-rank.Thereby variable-length decoder VLD2 does not need a numerical value EOB, and this numerical value is that variable-length decoder VLD is required, and is encoded when this object block finishes.
For example, suppose to have NBlock quantized components QS in this object block, comprise null component and nonzero component, then according to the number N Znum of the nonzero component in this object block, maximum run numerical value (maximum number of zero coefficient continuously) is (NBlock-NZnum).In addition, the maximum run numerical value when being used for the right decoding of reconstruct first distance of swimming-rank and having finished (maximum number of zero coefficient continuously) MaxRun (1) for as at (NBlock-NZnum-FRun) described in the 5th embodiment.
Usually, carrying out when being used for reconstruct the following acquisition of maximum run numerical value MaxRun (i) in the right decoding of i the distance of swimming-rank of a piece:
MaxRun (i)=Nblock-Nznum-{ the 1st~the i distance of swimming numerical value sum }
Therefore, position calculator PosClc2 output factor sum Pos2[=NZnum+{ the 1st~the i distance of swimming numerical value sum }], thus show carrying out the maximum run numerical value of having carried out when being used for the right decoding of i the distance of swimming-rank of reconstruct to number converter CodeTrans and to be (NBlock-Pos2).
This number inverse transformer ICodeTrans adopts such code table, wherein there is not code to be assigned to the right Code Number of the distance of swimming-rank that is constituted corresponding to by distance of swimming numerical value greater than maximum run numerical value Run, obtaining Code Number ExtCode, thereby be assigned to the code of a Code Number according to avoiding assignment of code decoded to the right assignment of code of the distance of swimming-rank that can not occur corresponding to a code.
At this, when a variable-length codes table that is made of the first that can produce by arithmetical operation (making up VLC termly) and the second portion (table is searched VLC) that can not regularly produce is used as first and second code tables in length-changeable decoding is handled, this second generation code table can form by first and second parts that change in first generation code table according to maximum run numerical value, and second generation code table can be formed by the first of the first generation code table that arithmetical operation produced of easy execution by only changing according to maximum run numerical value.
In addition, when under finishing the situation that is used for the right decoding of i the distance of swimming-rank of reconstruct, changing the variable-length codes table according to maximum run numerical value MaxRun, this variable-length codes table can directly be changed into code table Tb among code table Ta, Figure 24 (b) among Figure 24 (a) or the code table Tc among Figure 24 (c), replaces this code table is changed into not assignment of code to situation about comprising greater than the right code table of the distance of swimming-rank of the distance of swimming numerical value of maximum run numerical value MaxRun.
For example, when maximum run numerical value MaxRun hour preferably selects code table Ta among Figure 24 (a), when maximum run numerical value MaxRun is big, preferably select the code table Tc among Figure 24 (c), and when maximum run numerical value MaxRun is intermediate value, preferably select the code table Tb among Figure 24 (b).
As indicated above, according to the 6th embodiment, be provided run length decoding unit RLD3 by the picture decoding apparatus that is quantized coefficient 106 that frequency component obtained, be used for by adopting a code table to obtain the coefficient that is quantized corresponding to a variable-length to the decoding processing reconstruct quantized visual signal of the data that are encoded.Then, this run length decoding unit RLD3 selects not comprise a right code table of the distance of swimming-rank that can not occur according to processed coefficient (decoded coefficient) number in an object block and the not number sum of the nonzero coefficient of decoding in this object block.Therefore, can carry out satisfactorily corresponding to being included in the decoding processing that the variable length code that is quantized the redundant information in the coefficient of wanting processed is handled according to removing effectively.
According to the 6th embodiment, by using the distance of swimming-rank to carrying out in the length-changeable decoding unit to the length-changeable decoding that is quantized component of each piece, the number N Znum of the nonzero component in an object block is decoded.But, for example, making the distance of swimming numerical value that is quantized component corresponding to each piece be subjected to respectively in the length-changeable decoding unit of the length-changeable decoding processing identical with second embodiment with rank numerical value, the number N Znum of the nonzero component of this object block is decoded.In this case, when NZnum rank numerical value is decoded, can judge that NZnum rank numerical value is the last rank numerical value in this object block.
In above-mentioned any embodiment, this code table is changed according to quantization parameter QP, and this code table can change according to another parameter.For example, can and switch another parameter clearly to the new derivation of each piece.
In the above-described embodiments, as being used for making that for example being quantized the such coefficient of component is subjected to the method that variable length code (decoding) is handled, a kind of method is shown, wherein adopt a VLC table, and about being subjected to the coefficient of processing that coding (decoding) is handled, this VLC of perhaps relevant with the generation of this coefficient parameter change shows according at least.But the method that is used for for example being quantized the such variable length code of component (decoding) coefficient according to the present invention is not limited to use the method for VLC table.For example, being used for the method for carrying out variable length code in the quantized components described in the first, the 3rd and the 5th embodiment can be a kind of variable length decoding method that does not adopt VLC table, and according to changing a code table of showing corresponding to VLC about at least one information in the information of handling coefficient or the parameter relevant with the generation of this coefficient.In addition, can be a kind of variable length decoding method that does not adopt the VLC table according to any the second, the 4th and the 6th embodiment pair with being quantized be encoded the accordingly variable length decoding method of data of component, and, change code table corresponding to the VLC table according to about at least one information in the information of processed coefficient or the parameter relevant with the generation of coefficient.
Realize by hardware according to the picture decoding apparatus that the picture coding device or the execution length-changeable decoding of the foregoing description execution variable length code processing are handled, and these devices can be realized by software.In this case, when the program according to the variable length code of any the foregoing description or decoding processing carried out is recorded in the such data storage medium of floppy disk for example, can easily in a stand alone computer system, realize picture coding device or picture decoding apparatus according to any the foregoing description.
Figure 25 is used to illustrate that execution handles according to the variable length code of the first, the 3rd or the 5th embodiment, perhaps the schematic diagram of the computer system of handling according to the length-changeable decoding of the second, the 4th or the 6th embodiment.
Figure 25 (a) illustrates front view, cross sectional view and the floppy disk body D as the floppy disk FD of a kind of medium that comprises the program that is used for this computer system.Figure 25 (b) illustrates the example of the physical format of floppy disk body D.
This floppy disk FD comprises floppy disk body D and comprises the housing FC of this floppy disk body D.On the surface of floppy disk body D, from outer thoughtful interior a plurality of recorded trace Tr that form with one heart in week of this dish.Each recorded trace is divided into 16 sector Se on angle direction.Therefore, be recorded at the floppy disk FD that comprises said procedure, be used for carrying out the data of the program that variable length code processing or length-changeable decoding handle and be assigned with memory block (sector) on the floppy disk body D.
Figure 25 (c) illustrates the structure that is used on floppy disk FD record or reproduces.When program was recorded on the floppy disk FD, the data of program were written to the floppy disk FD by floppy disk FDD from computer system Cs.When in computer system Cs, constructing above-mentioned picture coding device or picture decoding apparatus by the program among the floppy disk FD of being recorded in, from floppy disk FD, read this program by floppy disk FDD, be loaded into computer system Cs then.
Although in the foregoing description, floppy disk is used as and comprises the storage medium that is used to carry out variable length code processing or length-changeable decoding processing, and CD also can be used as this storage medium.And in this case, can pass through software, the situation of using floppy disk is carried out the variable length code processing or length-changeable decoding is handled according to being similar to.This storage medium is not limited to these dishes, and any medium can be used, as long as they can comprise this program, for example, CD-ROM, storage card or ROM.And when adopting this data storage medium, can carry out variable length code processing or length-changeable decoding processing according to the mode identical by computer system with the situation of using floppy disk.
According to the method for encoding images or the picture decoding method of any the foregoing description and use the system of this method will be described below.
Figure 26 provides the integrally-built block diagram of system 1100 for a content carrying out the content release service is shown.
The zone (sub-district) that communication service provides the zone to be divided into required size, and be based upon in each sub-district as the base station 1107 to 1110 of fixed radio station respectively,
Provide in the system 1100 in this content, for example computer 1111, PDA (personal digital assistant) 1112, camera 1113, portable phone 1114 and portable phone 1200 with camera for example are connected to the Internet 1101 by ISP 1102, telephone network 1104 and base station 1107 to 1110.
But, the system that content provides system 1100 to be not limited to comprise a plurality of equipment shown in all Figure 26, and can be the system that comprises some equipment in a plurality of equipment shown in Figure 26.In addition, each equipment can be directly connected to telephone network 1104, and not by the base station 1107 to 1110 as fixed radio station.
This camera 1113 is the equipment that can take the moving image of an object, for example digital camera.This portable phone can be the pocket telephone according to any PDC (individual digital communication) system, CDMA (code division multiple access) system, W-CDMA (broadband-code division multiple access) system and GSM (global digital mobile phone) system or PHS (personal handyphone system).
A streaming server 1103 is connected to camera 1113 by base station 1109 and telephone network 1104.In this system, can carry out real-time release according to the data that are encoded that send by the user who uses camera 1113.The encoding process that is used for the data of captured image can be performed by the server of camera 1113 or transmission data.The motion image data that the moving image of taking an object by camera 1116 obtains can be sent to streaming server 1103 by computer 1111.This camera 1116 is to take the rest image of an object or the equipment of moving image, for example digital camera.In this case, can carry out the coding of motion image data by camera 1116 or computer 1111.In addition, carry out this encoding process by the LSI1117 that is included in computer 1111 or the camera 1116.
Image encoding or decoding software can be stored in as comprising in the storage medium that can be read by computer 1111 or the like (CD-ROM, floppy disk, hard disk or the like).This motion image data can send by the portable phone 1200 with camera.This motion image data is the LSI data encoded that has been comprised in the portable phone 1200.
Provide in the system 1100 in this content, corresponding to (for example by the content of user by the captured image of camera 1113 or camera 1116, the live video of concert) encoded in this camera according to the mode identical, and sent to streaming server 1103 from this camera with any the foregoing description.This content-data is subjected to the stream issue from streaming server 1103 to requesting clients.
This client computer can be any this data computing machine 1111 that is encoded, PDA1112, camera 1113, portable phone 1114 or the like of can decoding.
Provide in the system 1100 in this content, this coded data is received at client-side and is reproduced.When these data are received in real time, decode and reproduce, can realize private broadcasting on client-side.
Can use picture coding device or coding or the decoding of picture decoding apparatus execution in each equipment that constitutes this system according to the foregoing description.
Portable phone as an example of image encoding or decoding device will be described below.
Figure 27 illustrates the schematic diagram of employing according to the portable phone 1200 of the method for encoding images of any the foregoing description and picture decoding method.
This portable phone 1200 comprise the camera unit 1203 of motion that the antenna 1201 that is used for base station 1110 transmission/reception radio waves, for example CCD camera like this can shot objects or rest image and for example LCD be used to show the display unit 1202 of the video image that receives by the captured data of camera unit 1203 or by antenna 1201 like this.
This portable phone 1200 further comprises the main body 1204 that comprises a plurality of control buttons, for example loudspeaker is used to export the voice-output unit 1208 of voice like this, for example microphone is used to import the voice-input unit 1205 of voice like this, be used to preserve the data of taking moving image for example or rest image, the perhaps data of received e-mail, coded data that motion image data or Still image data are such or the storage medium of decoded data 1207, and make storage medium 1207 be attached to the receptacle unit 1206 on the portable phone 1200.
This storage medium 1207 has as for example the fast storage element that is included in the electrically programmable erasable nonvolatile memory in the plastic casing of EEPROM (Electrically Erasable Read Only Memory) type, for example SD card.
With reference to going into 28 this portable phone 1200 is described more specifically below.
This portable phone 1200 has carries out the general main control unit of controlling 1241 in each unit that is used to comprise the display unit 1202 and the main body of control button 1204.
This portable phone 1200 further comprises power circuit 1240, operation Input Control Element 1234, image encoding unit 1242, camera interface unit 1233, LCD (LCD) control unit 1232, picture decoding unit 1239, multiplexed/resolving cell 1238, recoding/reproduction unit 1237, modulation/demodulation unit 1236 and audio treatment unit 1235.Each unit of this portable phone 1200 interconnects by synchronous bus 1250.
When starting end of calling/power button under the control the user, this power circuit 1240 is provided to each unit to electric energy from a battery pack, is operating state thereby the portable phone 1200 with camera activated.
In portable phone 1200, each unit is operated under the control of the main control unit 1241 that is made of CPU, ROM, RAM or the like.More specifically, in portable phone 1200, be converted to digital audio-frequency data by audio treatment unit 1235 by the audio signal that voice obtain that in voice communication mode, is input to voice-input unit 1205.This digital audio-frequency data is subjected to the spread processing of modulation/demodulation unit 1236, is further sent/the digital-to-analogue conversion processing and the frequency conversion process of receiving circuit 1231, and sends by antenna 1201.
In this portable phone 1200, the signal that receives by antenna 1201 in voice communication mode is exaggerated, and is subjected to frequency conversion process and analog-to-digital conversion process then.The signal that is received further is subjected to anti-spread processing in modulation/demodulation unit 1236, be converted to simulated audio signal by audio treatment unit 1235, and this simulated audio signal is exported by voice-output unit 1208.
When portable phone 1200 in data communication mode during send Email, the lteral data of the Email of importing by the control button 1204 that operates on the main body is sent to main control unit 1241 by operation Input Control Element 1234.These main control unit 1241 each unit of control, make this lteral data in modulation/demodulation unit 1236, be subjected to spread processing, in transmission/receiving circuit 1231, be subjected to digital-to-analogue conversion processing and frequency conversion process then, send to base station 1110 by antenna 1201 then.
When portable phone 1200 sends view data in data communication mode, be provided to image encoding unit 1242 by camera interface unit 1233 by camera unit 1203 captured view data.When portable phone 1200 does not send view data, can directly be presented on the display unit 1202 by camera interface unit 1233 and LCD control unit 1232 by camera unit 1203 captured view data.
This image encoding unit 1242 comprises the picture coding device according to above-mentioned any embodiment.This image encoding unit 1242 carries out compressed encoding by the method for encoding images according to any the foregoing description to the view data from camera unit 1203, it being converted to the image encoded data, and the coded image data that is obtained is outputed to multiplexed/resolving cell 1238.Meanwhile, by camera unit 1203 photographic images the time, portable phone 1200 sends to multiplexed/resolving cell 1238 to the voice that are input to voice-input unit 1205 as digital audio-frequency data by audio treatment unit 1235.
This multiplexed/resolving cell 1238 by preordering method to from the coded image data of image encoding unit 1242 with carry out multiplexed from the voice data of audio treatment unit 1235.The multiplex data that is obtained is subjected to spread processing in modulation/demodulation unit 1236, further be subjected to digital-to-analogue conversion processing and frequency conversion process in transmission/receiving circuit 1231 then, and obtains the data that send by antenna 1201.
When portable phone 1200 is received in the data of the motion pictures files that is linked to homepage or the like in the data communication mode, 1110 signals that receive are subjected to the anti-spread processing of modulation/demodulation unit 1236 from the base station by antenna 1201, and the multiplex data that is obtained is sent to multiplexed/resolving cell 1238.
When the multiplex data that receives by antenna 1201 is decoded, these multiplexed/1238 pairs of these multiplexed datas of resolving cell carry out multichannel and decompose, these data are divided into corresponding to the coding stream of view data with corresponding to the coding stream of voice data, and this coded image data is provided to picture decoding unit 1239, and this voice data is provided to audio treatment unit 1235 by synchronous bus 1250.
This picture decoding unit 1239 comprises the picture decoding apparatus according to any the foregoing description.This picture decoding unit 1239 is by decoding to the coding stream of this view data corresponding to the coding/decoding method according to the coding method of any the foregoing description, with the reproducing motion pictures data, and the data of being reproduced are provided to display unit 1202 by LCD control unit 1232.Thereby for example, the motion image data that is included in the motion pictures files that is linked to this homepage is shown.Meanwhile, audio treatment unit 1235 is converted to simulated audio signal to this voice data, then this simulated audio signal is provided to voice-output unit 1208.Thereby, for example, reproduce the voice data that is included in the motion pictures files that is linked to this homepage.
At this, the system according to the method for encoding images of any the foregoing description and picture decoding method of can using is not limited to foregoing provides system.
Recently, use the digital broadcasting of satellite or ground wave often to be discussed, and also can be applied to as shown in Figure 29 digit broadcasting system according to the picture coding device of the foregoing description and picture decoding apparatus.
More specifically, 1409 sent to for example communication satellite or the such satellite 1410 of broadcasting satellite corresponding to the coding stream of video information from the broadcasting station by radio communication.When this broadcasting satellite 1410 receives coding stream corresponding to this video information, electric waves of these satellite 1410 defeated broadcasting, and these electric waves are received by the antenna 1406 at the dwelling house place that comprises the satellite broadcasting reception facilities.For example, TV (receiver) 1401 or set-top box (STB) 1407 such devices this coding stream of decoding, and reproduce this video information.
In addition, also can be installed on the transcriber 1403 according to the picture decoding apparatus of any the foregoing description, it can read and decoding is recorded in coding stream on the such storage medium 1402 of CD for example or DVD (recording medium).
In this case, a reproduced vision signal is displayed on the monitor 1404.This picture decoding apparatus can be installed in the cable that is used for cable TV 1405 or be used for the set-top box 1407 that the antenna of satellite/terrestrial broadcasting 1406 is connected, to reproduce the output of this picture decoding apparatus on the monitor 1408 that will be presented at TV.In this case, this picture decoding apparatus can not be included in this set-top box, and is included in this TV.Have a vehicle 1412 of antenna 1411 and can be from satellite 1410 or base station 1107 receive a signal, and reproduce a moving image, on the display device that it is presented at Vehicular navigation system 1413 of being installed on the vehicle 1412 or the like.
In addition, can also by according to the picture coding device of any the foregoing description to an image signal encoding, and be recorded in the recording medium.
A kind of object lesson of recording equipment be for example the such video tape recorder 1420 of the DVD recorder of picture signal record on DVD dish 1421 and on hard disk the dish video tape recorder of recording image signal.This picture signal can be recorded on the SD card 1422.In addition, when this video tape recorder 1420 comprised picture decoding apparatus according to any the foregoing description, the picture signal that is recorded on DVD dish 1421 or the SD card 1422 can be reproduced by video tape recorder 1420, and is presented on the monitor 1408.
At this, the structure of Vehicular navigation system 1413 for example can comprise the assembly of pocket telephone as shown in Figure 28 except camera unit 1203, camera interface unit 1233 and image encoding unit 1242, and this can be applied to computer 1111 or TV (receiver) 1401 equally.
In addition, as the such terminal of portable phone for example 1114, one of three kinds of terminals can be installed: have the transmission reception type terminal of encoder, only have the transmission terminal of encoder and a receiving terminal that only has decoder.
As indicated above, any the said equipment or system can be applied to according to the method for encoding images or the picture decoding method of any the foregoing description, thereby described effect can be obtained as above-mentioned embodiment.
In addition, needless to say embodiments of the invention and its application are not limited in the content described in this specification.
Industrial applicability
The code table of the state of processing by the coding of selecting to be suitable for consisting of the coefficient feature of this coefficient data or be used for this coefficient according to variable length decoding method of the present invention and variable length decoding method, and effectively eliminate redundancy in the coefficient data be included in the object of processing as variable length code, thereby increase widely the code efficiency that the variable length code of picture signal etc. is processed. These variable length decoding methods and variable length decoding method are used to send or the Data processing of storing moving image data.

Claims (2)

1. the method for the data behind the coding of the coefficient after the quantification that obtains by transform and quantization piece image that is used to decode, this method comprises:
Reception comprises distance of swimming numerical value behind the coding and the data behind the coding of rank numerical value behind the coding, wherein each distance of swimming numerical value of number that all has a continuous quantization parameter of null value obtains the distance of swimming numerical value behind the coding by coded representation, and the rank numerical value behind the coding has a quantization parameter of nonzero value by coded representation the rank numerical value of value obtains;
Distance of swimming numerical value behind the decoding and coding is to obtain decoded distance of swimming numerical value;
Rank numerical value behind the decoding and coding is to obtain decoded rank numerical value;
Rank numerical value after decoded distance of swimming numerical value and decoding obtains quantization parameter; And
The quantization parameter counter-scanning is become the two-dimensional array of quantization parameter;
The decoding of the distance of swimming numerical value behind the wherein said coding comprises: according to about also not being subjected to the not Information Selection code table of number of the null value quantization parameter of decoding of decoding processing; And the code table of utilize selecting, the decoding expression is not subjected to the not decoding distance of swimming numerical value of the distance of swimming numerical value behind the coding of decoding processing.
2. according to the process of claim 1 wherein
Data behind the coding of described quantization parameter are block-by-block decodings.
CN 200610143687 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method Expired - Lifetime CN101005625B (en)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
JP2001-358197 2001-11-22
JP2001358197 2001-11-22
JP2001358197 2001-11-22
JP2002099227 2002-04-01
JP2002-99227 2002-04-01
JP200299227 2002-04-01

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CNB028132823A Division CN1301014C (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method

Publications (2)

Publication Number Publication Date
CN101005625A CN101005625A (en) 2007-07-25
CN101005625B true CN101005625B (en) 2010-06-02

Family

ID=38045365

Family Applications (6)

Application Number Title Priority Date Filing Date
CN 200610143688 Expired - Lifetime CN100586190C (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method
CN 200610143689 Expired - Lifetime CN1946186B (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method
CN 200610143690 Expired - Lifetime CN1946187B (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method
CN 200610143687 Expired - Lifetime CN101005625B (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method
CN 200610107555 Expired - Lifetime CN101064843B (en) 2001-11-22 2002-11-22 Variable length coding method
CN200610143686.5A Expired - Lifetime CN1946185B (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method

Family Applications Before (3)

Application Number Title Priority Date Filing Date
CN 200610143688 Expired - Lifetime CN100586190C (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method
CN 200610143689 Expired - Lifetime CN1946186B (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method
CN 200610143690 Expired - Lifetime CN1946187B (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method

Family Applications After (2)

Application Number Title Priority Date Filing Date
CN 200610107555 Expired - Lifetime CN101064843B (en) 2001-11-22 2002-11-22 Variable length coding method
CN200610143686.5A Expired - Lifetime CN1946185B (en) 2001-11-22 2002-11-22 Variable length coding method and variable length decoding method

Country Status (1)

Country Link
CN (6) CN100586190C (en)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8179974B2 (en) * 2008-05-02 2012-05-15 Microsoft Corporation Multi-level representation of reordered transform coefficients
JP2011024066A (en) * 2009-07-17 2011-02-03 Sony Corp Image processing apparatus and method
US10499059B2 (en) 2011-03-08 2019-12-03 Velos Media, Llc Coding of transform coefficients for video coding
CN103188486B (en) * 2011-12-28 2016-04-20 联芯科技有限公司 H.263 the variable-length coding method of Video coding and system
CN106877874A (en) * 2017-01-17 2017-06-20 杭州清本科技有限公司 A kind of compaction coding method
CN109474281B (en) * 2018-09-30 2022-07-08 湖南瑞利德信息科技有限公司 Data encoding and decoding method and device
CN117097906B (en) * 2023-10-20 2023-12-26 河北天英软件科技有限公司 Method and system for efficiently utilizing regional medical resources
CN117498873A (en) * 2023-11-07 2024-02-02 东莞市杜氏诚发精密弹簧有限公司 Intelligent processing system for vascular embolism spring assembly

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1117779A (en) * 1993-12-16 1996-02-28 三星电子株式会社 Adaptive variable-length coding and decoding methods for image data
US5497153A (en) * 1992-07-23 1996-03-05 Samsung Electronics Co., Ltd. System for variable-length-coding and variable-length-decoding digital data for compressing transmission data
US5539401A (en) * 1994-08-31 1996-07-23 Mitsubishi Denki Kabushiki Kaisha Variable-length code table and variable-length coding device
US5555321A (en) * 1993-11-19 1996-09-10 Fujitsu Limited Image data binary coding method and apparatus
US5812788A (en) * 1995-07-21 1998-09-22 Intel Corporation Encoding/decoding video signals using quantization tables based on explicitly encoded base and scale matrices
US5825312A (en) * 1996-11-25 1998-10-20 Xerox Corporation DX JPEG Huffman decoder
US5995148A (en) * 1997-02-14 1999-11-30 At&T Corp Video coder having scalar dependent variable length coder
US6141446A (en) * 1994-09-21 2000-10-31 Ricoh Company, Ltd. Compression and decompression system with reversible wavelets and lossy reconstruction
US6241778B1 (en) * 1999-06-18 2001-06-05 Lucent Technologies Inc. Methods and apparatus for implementing run-length limited and maximum transition run codes

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR970007530B1 (en) * 1991-09-30 1997-05-10 가부시기가이샤 도시바 Band compressed signal processing apparatus
US5227878A (en) * 1991-11-15 1993-07-13 At&T Bell Laboratories Adaptive coding and decoding of frames and fields of video
KR100209410B1 (en) * 1995-03-28 1999-07-15 전주범 Apparatus for encoding an image signal
US7099387B2 (en) * 2002-03-22 2006-08-29 Realnetorks, Inc. Context-adaptive VLC video transform coefficients encoding/decoding methods and apparatuses

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5497153A (en) * 1992-07-23 1996-03-05 Samsung Electronics Co., Ltd. System for variable-length-coding and variable-length-decoding digital data for compressing transmission data
US5555321A (en) * 1993-11-19 1996-09-10 Fujitsu Limited Image data binary coding method and apparatus
CN1117779A (en) * 1993-12-16 1996-02-28 三星电子株式会社 Adaptive variable-length coding and decoding methods for image data
US5539401A (en) * 1994-08-31 1996-07-23 Mitsubishi Denki Kabushiki Kaisha Variable-length code table and variable-length coding device
US6141446A (en) * 1994-09-21 2000-10-31 Ricoh Company, Ltd. Compression and decompression system with reversible wavelets and lossy reconstruction
US5812788A (en) * 1995-07-21 1998-09-22 Intel Corporation Encoding/decoding video signals using quantization tables based on explicitly encoded base and scale matrices
US5825312A (en) * 1996-11-25 1998-10-20 Xerox Corporation DX JPEG Huffman decoder
US5995148A (en) * 1997-02-14 1999-11-30 At&T Corp Video coder having scalar dependent variable length coder
US6241778B1 (en) * 1999-06-18 2001-06-05 Lucent Technologies Inc. Methods and apparatus for implementing run-length limited and maximum transition run codes

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
JP平10-271017A 1998.10.09

Also Published As

Publication number Publication date
CN1946186A (en) 2007-04-11
CN1946187A (en) 2007-04-11
CN101064843B (en) 2010-08-18
CN101005626A (en) 2007-07-25
CN101005625A (en) 2007-07-25
CN100586190C (en) 2010-01-27
CN101064843A (en) 2007-10-31
CN1946187B (en) 2012-02-22
CN1946185A (en) 2007-04-11
CN1946186B (en) 2012-02-22
CN1946185B (en) 2014-07-23

Similar Documents

Publication Publication Date Title
CN101001385B (en) Variable length coding method and variable length decoding method
CN101005625B (en) Variable length coding method and variable length decoding method
JP4100552B2 (en) Decryption method
JP4158985B2 (en) Encoding method and encoding apparatus
JP4158986B2 (en) Decoding method and decoding apparatus
AU2007202520A1 (en) Variable length coding method and variable length decoding method

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
ASS Succession or assignment of patent right

Owner name: MATSUSHITA ELECTRIC (AMERICA) INTELLECTUAL PROPERT

Free format text: FORMER OWNER: MATSUSHITA ELECTRIC INDUSTRIAL CO, LTD.

Effective date: 20140714

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20140714

Address after: California, USA

Patentee after: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA

Address before: Osaka Japan

Patentee before: Matsushita Electric Industrial Co.,Ltd.

C41 Transfer of patent application or patent right or utility model
TR01 Transfer of patent right

Effective date of registration: 20151112

Address after: Tokyo, Japan

Patentee after: Godo Kaisha IP Bridge 1

Address before: Seaman Avenue Torrance in the United States of California No. 20000 room 200

Patentee before: PANASONIC INTELLECTUAL PROPERTY CORPORATION OF AMERICA

CX01 Expiry of patent term

Granted publication date: 20100602

CX01 Expiry of patent term