CN101129063B - Encoding device and method, decoding device and method, and transmission system - Google Patents
Encoding device and method, decoding device and method, and transmission system Download PDFInfo
- Publication number
- CN101129063B CN101129063B CN200680005866.5A CN200680005866A CN101129063B CN 101129063 B CN101129063 B CN 101129063B CN 200680005866 A CN200680005866 A CN 200680005866A CN 101129063 B CN101129063 B CN 101129063B
- Authority
- CN
- China
- Prior art keywords
- coefficient
- unit
- data
- permutatation
- decoding
- 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.)
- Active
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
Abstract
An encoding device and method, a decoding device and method, and a transmission system for enabling the receiving side to output image data which is compression-encoded and transmitted in a short time as a decoded image. To perform wavelet conversion, a filtering processing of each line is performed in units of lines from which one line of coefficient data in the lowest band component is created. The first to seventh lines are subjected to the first filtering processing. At a resolution level=1, coefficient C1, coefficient C2, and coefficient C3 of the high-band component, and coefficient Ca, coefficient Cb, and coefficient Cc of the low-band component are created. At a resolution level=2, coefficient C4 of the high-band component and coefficient C5 of the low-band component are created from coefficient Ca, coefficient Cb, and coefficient Cc. These coefficients are rearranged from the low band to the high band and supplied to a combining filter. The combining filter performs filtering processing of the coefficients in order of supply to create and output image data.
Description
Technical field
The present invention relates to encoding device and method, decoding device and method and transmission system, relate in particular to a kind of encoding device and method, decoding device and method and transmission system, wherein can be at short notice receiver side output stand compressed encoding and the view data that is sent out away as the image of decoding.
Background technology
Widely used traditionally Data Compression method is JPEG (JPEG (joint photographic experts group)) method, and it is by ISO (International Standards Organization) standardization.Use this JPEG method, view data is divided into piece, and the zone of each division stands DCT (discrete cosine transform) and obtain the DCT coefficient, and the DCT coefficient that obtains stands to quantize and further stand entropy coding, thereby realizes high-quality and high compression ratio.
In addition, in the last few years, many researchs have been carried out in such coding method, a plurality of frequency bands that image are divided into each filter that is called as bank of filters (wherein having made up high pass filter and low pass filter) wherein, and the frequency band of each division carried out coding.In these coding methods, the coding method that is called Coding with Wavelets especially is counted as a kind of new technology, because the problem that it does not have above-mentioned DCT to have, promptly, piece distortion when high compression ratio is so it is to substitute the candidate technologies that DCT carries out image compression encoding.
For example, finish the JPEG 2000 of International standardization January calendar year 2001, its compaction coding method that adopts has made up wavelet transformation and has used based on the bit modeling of bit-planes and the efficient entropy coding of arithmetic coding.These JPEG 2000 methods have realized the huge improvement to traditional JPEG method aspect code efficiency.Patent file 1 has been described the small wave converting method that wherein further improves code efficiency.
[patent file 1] Japanese unexamined patent is announced No.9-130800
This international standard has only been stipulated decoder-side, and can freely design coder side.
Summary of the invention
The technical problem to be solved in the present invention
Be example with JPEG 2000 methods recited above now, traditionally, because this algorithm, necessary header can not be described, up to having finished in the screen till the coding of all pixels.That is to say, this header is described for the requisite information of decoding, as the packed data size that obtains as coding result, and need add mark at the end of coded data, but only after having finished all codings of a screen, otherwise can not finally determine this information.
This is not only at JPEG 2000, also is like this for JPEG and MPEG (Motion Picture Experts Group, it is a kind of motion image data compression method).
Therefore, the problem that exists in the traditional images compress technique is that the output of the code stream of coding (as the result of compressed encoding) need be carried out after the image encryption of entire frame or (under the situation at interlaced picture).
Therefore the problem that exists is to avoid appearing at the transmitter side of view data and the time of delay of the frame between the receiver side or one (under the situation of interlaced picture).
Therefore, an object of the present invention is to provide a kind of encoding device and method, decoding device and method and transmission system, wherein the output of the compressed encoding of view data and decoding and decoded view data can be carried out with less delay.
The method of dealing with problems
Encoding device according to first aspect present invention is a kind of encoding device that is used for coded image data, comprise: filter, at described view data, Filtering Processing is carried out in classification, and generates a plurality of sub-bands that are made of the coefficient data according to band decomposition; Storage device is stored the coefficient data that described filter generates cumulatively; With coefficient permutatation device, the described coefficient data of the described memory device stores of permutatation is so that export it with predefined procedure.
Filter can be with the behavior increment, and Filtering Processing is carried out in the side direction bottom side from the screen of view data.
Filter can be at described view data, is that increment is carried out Filtering Processing to go piece, and the piece of wherein going is the view data that generates the required line number of delegation's coefficient data of lowest band component sub-band at least.
Filter can be carried out Filtering Processing on corresponding to the vertical direction of view data and horizontal direction.
The tap number of the described Filtering Processing of being carried out by described filter and at least one in other quantity of stage resolution ratio can be determined according to the target delay time.
Described filter can be carried out wavelet filtering and handle, and wherein the coefficient data of the low frequency band component sub-band that obtains by described Filtering Processing further stands described Filtering Processing.
Described filter can use lift technique to carry out described wavelet filtering and handle.
When described filter used described lift technique to carry out the Filtering Processing of resolution levels=X+1, this can be the coefficient data execution that calculates with the Filtering Processing of resolution levels=X for as the low frequency band component sub-band.
Described storage device can also comprise: first buffer unit, preserve the coefficient data that described filter is carried out the low frequency band component sub-band that generates in the process of described wavelet filtering processing; With second buffer unit, preserve the coefficient data that described filter is carried out the high band component sub-band that generates in the process of described wavelet filtering processing.
Described second buffer unit can keep the coefficient data of the sub-band of the band component beyond the described lowest band, generates up to described filter till the coefficient data of lowest band component sub-band.
Coefficient permutatation device can the permutatation coefficient data, makes according to the output of the order from the low frequency band component to high band component sub-band.
Coefficient permutatation device can be that increment is carried out permutatation to view data to go piece, and wherein said capable piece is the view data that generates the required line number of delegation's coefficient data of lowest band component sub-band at least.
Encoding device can also comprise the entropy coding device, is used to carry out the entropy coding of coefficient data.
The entropy coding device can be carried out the entropy coding of the coefficient data of described coefficient permutatation device permutatation successively.
Coefficient permutatation device can the permutatation coefficient data, makes according to the output of the order from the low frequency band component to high band component sub-band; In case described coefficient data is by the permutatation of described coefficient permutatation device, described entropy coding device is just carried out the entropy coding of the coefficient data of permutatation successively according to the order from the low frequency band component to the high band component.
The entropy coding device can be carried out the entropy coding of the coefficient data of described filter generation; Described memory device stores stands the coefficient data of the entropy coding that undertaken by described entropy coding device.
Storage device can be stored that sub-band as the band component beyond the lowest band generates and stand the coefficient data of the entropy coding that the entropy coding device carries out, till the coefficient data of lowest band component sub-band has stood entropy coding that the entropy coding device carries out.
Coefficient permutatation device coefficient data can the described memory device stores of permutatation and that stood the entropy coding that the entropy coding device carries out, in case the coefficient data that made permutatation, just export sub-band, and export the coefficient data of permutatation according to the order from the low frequency band component to the high band component according to the order from the low frequency band component to the high band component.
The entropy coding device can be carried out (batch) entropy coding in batch to the multirow coefficient data in the same sub-band.
The entropy coding device can be according to the order of taking high frequency band from low frequency to carrying out coding about the row coefficient data arranged in one dimension direction stream, that constitute all sub-bands of row piece, and wherein said capable piece is the corresponding coefficient data group of view data with the required line number of the delegation's coefficient data that generates lowest band component sub-band at least.
The entropy coding device can comprise: quantization device quantizes the described coefficient data that described filter generates; With the source encoding device, to quantize the quantized result coefficient execution source encoding that described coefficient data obtains by described quantization device.
Described encoding device can also comprise: the packetizing device, add predetermined headers to described entropy coding device carry out entropy coding to the coefficient data of each row piece according to the order from the low frequency band component to the high band component and the coding result data that obtain, and with head and data subject packetizing, wherein said capable piece is the set with the corresponding coefficient data of view data of the required line number of the delegation's coefficient data that generates lowest band component sub-band at least; And dispensing device, the described grouping that described packetizing device is generated sends, wherein said entropy coding device, described packetizing device and described dispensing device while and each processing of executed in parallel; The entropy coding device is the entropy coding that increment is carried out coefficient data to go piece; In case carry out the coding result data that entropy coding generates each row piece by the entropy coding device, the packetizing device is with regard to the coding result data of each row piece of packetizing; In case and packetizing device packetizing each the row piece the coding result data, dispensing device just sends out the grouping of acquisition.
Head can write down the identification information of the capable piece that is used for identifying screen, the data length and the coded message of data subject.
The entropy coding device can comprise: quantization device quantizes the described coefficient data that described filter generates; With the source encoding device, to quantize the quantized result coefficient execution source encoding that described coefficient data obtains by described quantization device; Described coded message comprises the information of the quantization step size of the quantification that described quantization device is carried out.
The information of quantization step size can comprise the information of the quantization step size of each sub-band.
Coding method according to a first aspect of the invention is a kind of coding method that is used for the encoding device of coded image data, this method comprises: filter step, at described view data, Filtering Processing is carried out in classification, and generates a plurality of sub-bands that are made of the coefficient data according to band decomposition; The storage controlled step is stored the coefficient data that is generated by the processing in the described filter step cumulatively in memory cell; With coefficient permutatation step, permutatation by the processing controls in the described storage controlled step, be stored in the described coefficient data in the described memory cell, so that it is exported with predefined procedure.
Decoding device according to second aspect present invention is a kind of decoding device that the coded image data of the view data of wherein having encoded is decoded, comprise: storage device, storage by to view data classification coefficient datas that first Filtering Processing obtains, a plurality of sub-bands that provide with the behavior increment, that be made of the coefficient data according to band decomposition are provided; Coefficient permutatation device, the coefficient data of the described memory device stores of permutatation is so that export it with predefined procedure; And filter, the permutatation of counterweight collating unit and carry out second Filtering Processing from the coefficient data of storage device output, and the coefficient data of synthetic a plurality of sub-bands according to band decomposition is so that generate view data.
Coefficient permutatation device can the permutatation coefficient data, makes according to the output of the order from the low frequency band component to high band component sub-band.
Coefficient permutatation device can be an increment to go piece, the coefficient data that is stored in the storage device is carried out permutatation, and wherein said capable piece is the set with the corresponding coefficient data of view data of the required line number of the delegation's coefficient data that generates lowest band component sub-band at least.
Filter can be with the behavior increment, and second Filtering Processing is carried out in the side direction bottom side from the screen, thereby generates view data.
Filter can be at described coefficient data, is that increment is carried out second Filtering Processing to go piece, and wherein said capable piece is the set with the corresponding coefficient data of view data of the required line number of the delegation's coefficient data that generates lowest band component sub-band at least.
Filter can use lifting (lifting) technology to carry out second Filtering Processing.
Decoding device can also comprise the entropy decoding device, each sub-band is carried out the entropy decoding of coded data with the behavior increment; Wherein memory device stores is carried out the entropy decoding and the coefficient data of acquisition by the entropy decoding device.
The entropy decoding device can be carried out the decoding of coded data, the row that wherein constitutes all sub-bands of row piece has been encoded and its one dimension has been arranged, and wherein said capable piece is the corresponding coefficient data group of view data with the required line number of the delegation's coefficient data that generates lowest band component sub-band at least.
The entropy decoding device can comprise: the source coding device, coded data is carried out source coding; With the inverse quantization device, carry out the inverse quantization of the coefficient data that obtains as the source coding result of source coding device.
According to the coding/decoding method of second aspect present invention is a kind of coding/decoding method that is used for decoding device that the coded image data of the view data of wherein having encoded is decoded, this method comprises: the storage controlled step, in memory cell storage by to view data classification carry out that first Filtering Processing obtains, provide with the behavior increment, according to the coefficient data of a plurality of sub-bands of band decomposition; Coefficient permutatation step, permutatation by the processing controls in the described storage controlled step, be stored in the coefficient data in the memory cell, so that it is exported with predefined procedure; And filter step, to by the processing permutatation in the permutatation step and carry out second Filtering Processing from the coefficient data of memory cell output, and the coefficient data of synthetic a plurality of sub-bands according to band decomposition is so that generate view data.
Transmission system according to third aspect present invention is a kind of transmission system, comprising: the encoding device of coded image data; Decoding device with the coded data of the wherein encoded view data of decoding; This transmission system is used for transfer encoding data between encoding device and decoding device; Wherein, encoding device comprises: first filter, and at described view data, first Filtering Processing is carried out in classification, and generates a plurality of sub-bands that are made of the coefficient data according to band decomposition; Storage device is stored the coefficient data that described first filter generates cumulatively; With coefficient permutatation device, the described coefficient data of the described memory device stores of permutatation is so that export it with predefined procedure; Wherein, decoding device comprises: second filter, to via transmission path from the transmission of described encoding device, by the permutatation of coefficient permutatation device and carry out second Filtering Processing from the coefficient data of storage device output, and the coefficient data of synthetic a plurality of sub-bands according to band decomposition is so that generate view data.
According to a first aspect of the invention, at described view data, Filtering Processing is carried out in classification, a plurality of sub-bands that generation is made of the coefficient data according to band decomposition, store the coefficient data that is generated cumulatively, and the described coefficient data that permutatation is stored is so that export it with predefined procedure.
According to a second aspect of the invention, storage by to view data classification carry out that first Filtering Processing obtains, provide with the behavior increment, according to the coefficient data of a plurality of sub-bands of band decomposition, the coefficient data that permutatation is stored, so that it is exported with predefined procedure, coefficient data to permutatation and output is carried out second Filtering Processing, and the coefficient data of synthetic a plurality of sub-bands according to band decomposition is so that generate view data.
According to a third aspect of the invention we, on encoding device, at described view data, first Filtering Processing is carried out in classification, a plurality of sub-bands that generation is made of the coefficient data according to band decomposition, the described coefficient data that the coefficient data that generated of storage, and permutatation is cumulatively stored is so that export it with predefined procedure; And on decoding device, for carrying out second Filtering Processing with the coefficient data of predefined procedure permutatation and by transmission path from the coefficient data that encoding device sends, and the coefficient data of synthetic a plurality of sub-bands according to band decomposition is so that generate view data.
Advantage
According to the present invention, at described view data, Filtering Processing is carried out in classification, generates a plurality of sub-bands according to the coefficient data formation of band decomposition, stores the coefficient data that is generated cumulatively, and the described coefficient data that permutatation is stored, so that it is exported, thereby when decoding, can handle it according to the order that coefficient data is provided with predefined procedure, and can reduce the time of delay from coded image data to decoding and coding data and output image data, this is an advantage.
Description of drawings
Fig. 1 is the block diagram that the configuration of the example of having used image encoding apparatus of the present invention is shown.
Fig. 2 is the profile string diagram of schematic description wavelet transformation.
Fig. 3 is the profile string diagram of schematic description wavelet transformation.
Fig. 4 is that schematic description is at the profile string diagram to the wavelet transformation under the situation of 5 * 3 filter applies lift techniques.
Fig. 5 is that schematic description is at the profile string diagram to the wavelet transformation under the situation of 5 * 3 filter applies lift techniques.
Fig. 6 is that schematic description is carried out the profile string diagram of the example of filtering by promote (lifting) with 5 * 3 filters to dividing rank=2.
Fig. 7 is the profile string diagram of schematic description according to the flow process of wavelet transformation of the present invention and anti-wavelet transformation.
Fig. 8 is a flow chart of describing the example of encoding process.
Fig. 9 is the block diagram that the example of having used image decoding apparatus of the present invention is shown.
Figure 10 is a flow chart of describing the example of decoding processing.
Figure 11 is the profile string diagram that schematically describes the parallel work-flow of each assembly of having used image encoding apparatus of the present invention and image decoding apparatus.
Figure 12 is the block diagram that the configuration of the example of having used image encoding apparatus of the present invention is shown.
Figure 13 is the profile string diagram that is described on the image encoding apparatus side handling process under the situation that the permutatation of carrying out wavelet coefficient handles.
Figure 14 is the profile string diagram that is described on the image decoding apparatus side handling process under the situation that the permutatation of carrying out wavelet coefficient handles.
Figure 15 is the block diagram that the configuration of the example of having used image encoding apparatus of the present invention is shown.
Figure 16 is the block diagram that the configuration of the example of having used image decoding apparatus of the present invention is shown.
Figure 17 is a schematic diagram of describing the example that how to exchange coded data.
Figure 18 is the figure that the ios dhcp sample configuration IOS DHCP of grouping is shown.
Figure 19 is the block diagram that the configuration of the example of having used image encoding apparatus of the present invention is shown.
Figure 20 is the figure of descriptor frequency band.
Figure 21 is the figure that the example of the quantization parameter that will encode is shown.
Figure 22 is the block diagram that the ios dhcp sample configuration IOS DHCP of entropy coding unit is shown.
Figure 23 is a flow chart of describing encoding process.
Figure 24 describes the flow chart that entropy coding is handled.
Figure 25 is a flow chart of describing w group (w set) encoding process.
Figure 26 is the block diagram that the ios dhcp sample configuration IOS DHCP of image decoding apparatus is shown.
Figure 27 is the block diagram that the ios dhcp sample configuration IOS DHCP of entropy decoding unit is shown.
Figure 28 is the block diagram that the ios dhcp sample configuration IOS DHCP of yard division unit is shown.
Figure 29 is the block diagram that the ios dhcp sample configuration IOS DHCP of yard division unit is shown.
Figure 30 is a flow chart of describing decoding processing.
Figure 31 is a flow chart of describing the entropy decoding processing.
Figure 32 is a flow chart of describing w group decoding processing.
Figure 33 is the block diagram that another ios dhcp sample configuration IOS DHCP of entropy coding unit is shown.
Figure 34 is the figure that the example of the quantization parameter that will encode is shown.
Figure 35 describes the flow chart that the w group coding is handled.
Figure 36 is a flow chart of describing w group decoding processing.
Figure 37 is the block diagram that the configuration of the example of having used digital three (triax) systems of the present invention is shown.
Figure 38 is the block diagram that the configuration of the example of having used wireless transmitting system of the present invention is shown.
Figure 39 is the figure that the configuration of the example of having used home game machine of the present invention is shown.
Figure 40 is the figure that the ios dhcp sample configuration IOS DHCP of having used information processing system of the present invention is shown.
Reference numeral
1 image encoding apparatus
10 wavelet transform unit
11 intermediate computations buffer cells
12 coefficient permutatation buffer cells
13 coefficient rearrangement unit
14 rate controlled unit
15 entropy coding unit
20 image decoding apparatus
21 entropy decoding units
22 coefficient buffer cells
23 wavelet inverse transformation unit
30 image encoding apparatus
31 coding permutatation buffer cells
32 coding rearrangement unit
41 image encoding apparatus
42 image decoding apparatus
43 coefficient permutatation buffer cells
111 image encoding apparatus
121 wavelet transform unit
122 quantifying unit
123 entropy coding unit
161 row determining units
The 162VLC coding unit
163 most significant digit computing units
The 164VLC coding unit
165 significant digit extraction units
The 166VLC coding unit
167 symbol extraction unit
The 168VLC coding unit
169 yards link units
211 image decoding apparatus
221 entropy decoding units
222 inverse quantization unit
223 wavelet inverse transformation unit
251 yards division unit
252 row determining units
253 generation units
The 254VLC decoding unit
The 255VLC decoding unit
The 256VLC decoding unit
257 quantization parameter synthesis units
258 switch elements
271 control units
272 memories
291 control units
401 buffers
500 transmission units
501 3 cables
502 camera control units
510 video signal coding unit
511 video signal decoding units
526 video signal decoding units
527 video signal coding unit
600 transmission units
601 receiving equipments
602 video signal coding unit
612 wireless module unit
621 wireless module unit
624 video signal decoding units
700 video camera apparatus
701 home game machines
Embodiment
Describe according to the first embodiment of the present invention with reference to the accompanying drawings.Fig. 1 shows an ios dhcp sample configuration IOS DHCP of the image encoding apparatus that can be applied to first embodiment of the invention.Image encoding apparatus 1 comprises wavelet transform unit 10, intermediate computations buffer cell 11, coefficient permutatation buffer cell 12, coefficient rearrangement unit 13, rate controlled unit 14 and entropy coding unit 15.
The view data of having imported is accumulated in the intermediate computations buffer cell 11 temporarily.10 pairs of middle view data of calculating accumulation in the buffer cell 11 of wavelet transform unit are carried out wavelet transformation.That is to say, wavelet transform unit 10 is calculated reads image data the buffer cell 11 from the centre, and carry out Filtering Processing with analysis filter and produce coefficient data, and the coefficient data that generates is stored in the intermediate computations buffer cell 11 with low frequency band component and high band component.Wavelet transform unit 10 has horizontal analysis filter and line analysis filter, and on screen level direction and screen vertical direction for image data set execution analysis Filtering Processing.Wavelet transform unit 10 reads the low frequency band component coefficient data that is stored in the intermediate computations buffer cell 11 once more, carry out Filtering Processing with analysis filter for the coefficient data that reads, and further generate coefficient data with high band component and low frequency band component.The coefficient data that generates is stored in the intermediate computations buffer cell 11.
When this processing has been repeated and divides rank when having reached intended level, wavelet transform unit 10 is calculated the buffer cell 11 from the centre and is read coefficient data, and the coefficient data that reads is write in the coefficient permutatation buffer cell 12.
Control entropy coding unit 15, so as with rate controlled unit 14 binding operations, the bit rate of wherein exporting compress coding data is the constant value.That is to say, rate controlled unit 14 provides control signal to entropy coding unit 15, the bit rate of data that wherein stands entropy coding unit 15 compressed encodings is when it reaches its desired value, perhaps be right after before reaching its desired value, based on the encoding process that finishes entropy coding unit 15 from the encoded digital information of entropy coding unit 15.Entropy coding unit 15 is according to the control signal that provides from speed control unit 14, outputting encoded data when encoding process finishes.
The processing that wavelet transform unit 10 places carry out will be described in further detail.At first, with the describe, in general terms that provides wavelet transformation.Use the wavelet transformation of view data, as Fig. 2 roughly shown in, the data with low-frequency band spatial frequency that obtain as dividing the result recursively are recycled and reused for the processing that view data is divided into the spatial frequency of the spatial frequency of high frequency band and low-frequency band.Therefore, force to be subdivided into less zone, can carry out more high efficiency compressed encoding by the data that will have the low-frequency band spatial frequency.
Be noted that Fig. 2 is the example under following situation, that is, triplicate handled in the division of the lowest band component area of view data,, wherein divide rank=3 to be divided into low frequency band component area L or high band component zone H.In Fig. 2, " L " and " H " represents low frequency band component and high band component respectively, the order of " L " and " H " shown as the front side by the result's of horizontal division frequency band and as rear side by the result's of vertical division frequency band.In addition, in its dividing region rank of " L " and " H " numeral before.
In addition, the example from Fig. 2 is carried out processing to the top left region of screen in mode progressively from the lower right area of screen as can be seen, and wherein low frequency band component is forced to divide.That is to say, in the example in Fig. 2, the zone is divided into four parts, wherein screen lower right area 3HH has minimum low frequency band component (comprising maximum high band component), this zone has the screen top left region, it is divided into four zones that further are divided into four zones, and in these zones, top left region further is divided into four zones.Zone in the upper left corner is area 0 LL, and it has maximum low frequency band component.
Because the concentration of energy of image is in low frequency band component, so repeat the conversion and the division of low frequency band component.This also can understand from the sub-band that advances to (example shown in Fig. 3 B) according to state of dividing rank=1 from (example as shown in Figure 3A) and divide the division rank of the state of rank=3, forming shown in Fig. 3 B.For example, the division rank of the wavelet transformation among Fig. 2 is 3, therefore forms 10 sub-frequency bands.
Then, as the specific example of the wavelet transformation that may be used on first embodiment of the invention, the method that adopts 5 * 3 filters will be described.Adopting the method for 5 * 3 filters is outstanding methods, and reason is and can carries out wavelet transformation with less filter tap, and also can use with described JPEG 2000 standards of reference conventional art.
The impulse response of 5 * 3 filters (Z-transformation is represented) is furnished with low band filter H
0(z) and high band filter H
1(z), shown in expression formula (1) and (2).By expression formula (1) and (2), can find low band filter H
0(z) have 5 taps, and can find high band filter H
1(z) have 3 taps.
H
0(z)=(-1+2z
-1+6z
-2+2z
-3-z
-4)/8 …(1)
H
1(z)=(-1+2z
-1-z
-2)/2 …(2)
According to these expression formulas (1) and (2), can directly calculate the coefficient of low frequency band component and high band component.Now, by using lift technique, the calculating that can alleviate Filtering Processing.The overview that is given under the situation to 5 * 3 filter applies lift techniques, uses wavelet transformation to carry out the processing of analysis and filter device side with reference to Fig. 4.
In Fig. 4, go up step part, intermediate steps part most and descend the step part most that each all shows pixel column, high band component output and the low frequency band component output of input picture.For going up most step, do not need it is limited to the pixel column of input picture, but can be the coefficient that obtains with Filtering Processing before yet.Here, go up the pixel column that step partly is an input picture most, wherein square mark is represented even pixel or row (since 0), and circles mark is represented odd pixel or row.
At first, as first step, generate the high band component coefficient d from the input pixel column in the expression formula (3) below
i 1
d
i 1=d
i 0-1/2(s
i 0+s
i+1 0) …(3)
Then,, adopt the odd pixel of input pixel, generate low frequency band component coefficient s from expression (4) as second step
i 1
s
i 1=s
i 0+1/4(d
i-1 1+d
i 1) …(4)
In the analysis filter side, the view data of input picture is divided into low frequency band component and high band component by Filtering Processing.
Be given in the general introduction of the processing that is used to carry out wavelet inverse transformation on the composite filter side with reference to Fig. 5, this wavelet inverse transformation recovers the coefficient that generated by wavelet transformation.Fig. 5 adopts 5 * 3 filters corresponding to above-mentioned Fig. 4, and the example of display application lift technique.In Fig. 5, go up step most and partly show the input coefficient that generates by wavelet transformation, wherein circles mark is represented the high frequency band coefficient, and square mark is represented the low-frequency band coefficient.
At first, as first step,, generate the coefficient s of even-numbered by input low frequency band component and high band component coefficient according to expression (5)
i 1(since 0).
s
i 0=s
i 1-1/4(d
i-1 1+d
i 1) …(5)
Then, as second step, according to expression (6), by the coefficient s of the even-numbered that in above-mentioned first step, generates
i 0Coefficient d with the input high band component
i 1Generate the coefficient d of odd-numbered
i 0
d
i 0=d
i 1+1/2(s
i 0+s
i+1 0) …(6)
In the composite filter side, therefore synthesize the coefficient of low frequency band component and high band component, and carry out wavelet inverse transformation by Filtering Processing.
Then, with the small wave converting method of describing according to first embodiment of the invention.Fig. 6 illustrates the example that promotes the Filtering Processing of carrying out with 5 * 3 filters, and it has been carried out with reference to Fig. 4 and has divided rank=2.In Fig. 6, be filter on the wavelet transform unit 10 on image decoding apparatus 1 side as the part shown in the figure of the analysis filter left side.In addition, be filter on the wavelet inverse transformation unit on the described after a while image decoding apparatus side as the part shown in the figure right side of composite filter.
In the following description, the pixel in the screen upper left corner on display device etc. for example dispose delegation, and carry out capable scanning to the lower end from the upper end of screen as leading pixel from the screen left end to the right-hand member scanning element, dispose a screen thus.
In Fig. 6, left end row display image data, the position is corresponding to the row of the raw image data of arranging on the vertical direction.That is to say,, carry out Filtering Processing with wavelet transform unit 10 by adopting the pixel on the vertical filter vertical scanning screen.Be listed as the Filtering Processing that the 3rd row have shown division rank=1 from left end first, and the 4th to the 6th row have shown the Filtering Processing of division rank=2.Export based on the high band component of the image of the raw image data in left side from the demonstration of left end secondary series, and export based on the low frequency band component of raw image data and high band component output from left end the 3rd row demonstration.The Filtering Processing of wherein dividing rank=2 is to handle for the Filtering Processing output of dividing rank=1, shown in from left end row 4 to row 6.
Divide therein in the Filtering Processing of rank=1, calculate the high band component coefficient data based on the raw image data pixel, as the first step Filtering Processing, and calculate the low frequency band component coefficient data based on high band component coefficient data that in the first step Filtering Processing, calculates and raw image data pixel.In the Filtering Processing of dividing an example of rank=1 shown in first to the 3rd row of the left side of Fig. 6 (analysis filter side).The high band component coefficient data that calculates is stored in the coefficient permutatation buffer cell 12 shown in 1.In addition, the low frequency band component coefficient data that calculates is stored in the intermediate computations buffer cell 11.
In Fig. 6, coefficient permutatation buffer cell 12 be shown as with chain-dotted line around part, and intermediate computations buffer cell 11 be shown as with dotted line around part.
The result that the Filtering Processing of wherein dividing rank=2 is based on the Filtering Processing of division rank=1 that is kept in the intermediate computations buffer cell 11 carries out.In the Filtering Processing of dividing rank=2, coefficient data as the low frequency band component coefficient calculations in the Filtering Processing of dividing rank=1 is taken as the coefficient data that comprises low frequency band component and high band component, and carries out the Filtering Processing of the Filtering Processing that is similar to division rank=1.The high band component coefficient data and the low frequency band component coefficient data that calculate with the Filtering Processing of dividing rank=2 are stored in the coefficient permutatation buffer cell 12 shown in Figure 1.
At wavelet transform unit 10 places, on each of the horizontal direction of screen and vertical direction, carry out above-mentioned Filtering Processing.For example, at first, carry out in the horizontal direction and divide rank=1 Filtering Processing, and the coefficient data with high band component and low frequency band component that generates is stored in the intermediate computations buffer cell 11.Then, in vertical direction, carry out the Filtering Processing of dividing rank=1 for the coefficient data that is stored in the intermediate computations buffer cell 11.Use this level and the vertical direction of wherein dividing rank=1 to handle, form four zones, these zones are regional HH and regional HL, its each by forming from the coefficient data that high band component further is divided into high band component and low frequency band component, and area L H and area L L, its each by forming from the coefficient data that low frequency band component further is divided into high band component and low frequency band component.
For dividing rank=2, for the coefficient data of dividing the low frequency band component that rank=1 generates, go up the execution Filtering Processing with each of vertical direction in the horizontal direction.That is to say, for dividing rank=2, further be divided into four zones by the area L L that forms in the division of dividing rank=1 o'clock, thereby further form regional HH, regional HL, area L H and area L L in the area L L.
In first embodiment, by the increment of the several rows on the vertical direction that processing is divided into screen, mode is repeatedly carried out the Filtering Processing of wavelet transformation set by step.For the example among Fig. 6, as the processing of the first row beginning from the screen the first time processing execution to the Filtering Processing of seven row, and as handling from the second time of the 8th row and the processing of backward processing is increment execution Filtering Processing with the four lines.The quantity of row is based on and is divided into the needed line number of delegation that two (high band component and low frequency band component) generate the lowest band component afterwards.
Below, the set that generates the needed row of amount (coefficient data of delegation that is equivalent to the sub-band of lowest band component) of the delegation of lowest band component (comprising other sub-bands) is called as capable piece (perhaps district).Here, row be meant corresponding to the view data before the wavelet transformation, picture or in or the amount of the delegation of the pixel data that forms in each sub-band or coefficient data.That is to say, row piece (district) is meant the pixel data group that is equivalent to following line number, promptly, described line number be generate the raw image data be equivalent to before wavelet transformation, after wavelet transformation the coefficient data of the delegation of lowest band component sub-band, the perhaps needed line number of coefficient data group of each sub-band of obtaining of the wavelet transformation by its pixel data group.
According to Fig. 6, based on the coefficient C that is stored in the intermediate computations buffer cell 11
aCalculate the coefficient C5 that obtains by the Filtering Processing result who divides rank=2, and based on the coefficient C that is stored in the intermediate computations buffer cell 11
a, coefficient C
bWith coefficient C
c, come design factor C4.In addition, based on being stored in coefficient C2 in the coefficient permutatation buffer cell 12 and coefficient C3 and, coming design factor Cc based on the pixel data in the fifth line.In addition, based on the pixel data design factor C3 in fifth line to the seven row.Therefore, in order to obtain to divide the low frequency band component coefficient C5 of rank=2, first row is essential to the pixel data in the 7th row.
On the contrary, for for the second time and later Filtering Processing, can use before Filtering Processing is calculated and be stored in coefficient data in the coefficient permutatation buffer cell 12, thereby required line number is less.
In other words, according to Fig. 6, dividing in the middle of rank=2 Filtering Processing low frequency band component coefficient that the place obtains as a result, the next coefficient C9 of coefficient C5 back is based on coefficient C4 and C8 and is stored in that coefficient Cc in the intermediate computations buffer cell 11 obtains.Coefficient C4 by above-mentioned first time Filtering Processing calculate, and be stored in the coefficient permutatation buffer cell 12.Similarly, coefficient Cc by above-mentioned first time Filtering Processing calculate, and be stored in the intermediate computations buffer cell 11.Therefore, for this Filtering Processing for the second time, have only the Filtering Processing of design factor C8 to re-execute.This new Filtering Processing also is to adopt the 8th to the tenth delegation to carry out.
Therefore, for the second time Filtering Processing and later processing, can use Filtering Processing is last time calculated and be stored in data in intermediate computations buffer cell 11 and the coefficient permutatation buffer cell 12, thus can with at every turn only four lines be that increment is carried out and handled.
Attention is not under the line number on the screen matches the situation of coding line number, and the replicating original image data lines is carried out Filtering Processing then with coupling coding line number in a predefined manner.
When will describe details below, for the present invention, by carrying out Filtering Processing by level, only obtain to be equivalent to the coefficient data (is increment to go piece) of delegation's lowest band component (row for whole screen is divided into several times), can under the transfer encoding data conditions, obtain decoded picture with minimum delay.
In order to carry out wavelet transformation, need first buffer and second buffer, first buffer is used for carrying out wavelet transformation self, and second buffer is used to be stored in the coefficient that execution generates during other processing of predetermined partition level.First buffer is corresponding to intermediate computations buffer cell 11, in Fig. 6, be shown as with chain-dotted line around.Adopt the coefficient be stored in second buffer in decoding, this is the purpose that entropy coding is handled in step after a while.
With the processing that is described in the coefficient rearrangement unit 13.As mentioned above, the coefficient data that calculates in wavelet transform unit 10 is stored in the coefficient permutatation buffer cell 12, and it is by 13 permutatation of coefficient rearrangement unit and be read out, and is sent to entropy coding unit 15.
As mentioned above, by wavelet transformation, become coefficient to the low frequency band component adnation by the high band component side.In the example in Fig. 6, for the first time, the pixel data by original image on division rank=1 Filtering Processing generates high band component coefficient C1, coefficient C2 and coefficient C3 successively.For dividing low frequency band component coefficient data execution division rank=2 Filtering Processing that obtain on rank=1 Filtering Processing, generate low frequency band component coefficient C4 and coefficient C5 thus successively then.That is to say that for the first time, the order of pressing coefficient C1, coefficient C2, coefficient C3, coefficient C4 and coefficient C5 generates coefficient data.Based on the principle of wavelet transformation, the genesis sequence of coefficient data is always by this order (taking the order of low-frequency band from high frequency to).
On the contrary, on the decoding side,, be necessary from low frequency band component generation and output image in order to decode immediately with low the delay.Therefore, wish to stress to be arranged in the coefficient data that the coding side generates, and it is provided to the decoding side from lowest band component side to high band component.
Provide further detailed description with reference to Fig. 6.The right side of Fig. 6 shows the composite filter side of carrying out inverse wavelet transform.Employing lowest band component coefficient C4 and coefficient C5 and the coefficient C1 that generate in the Filtering Processing first time on the coding side carry out the synthetic processing first time (inverse wavelet transform processing) that comprises first row of output image data on the decoding side.
That is to say, for synthetic processing for the first time, order from the coding side to the decoding side by coefficient C5, coefficient C4 and coefficient C1 provides coefficient data, thus on the decoding side, execution is for the synthetic processing of coefficient C5 and coefficient C4, generate coefficient Cf to handle (it is corresponding to the synthetic processing of dividing rank=2) by synthetic rank=2, and coefficient Cf is stored in the buffer.For the processing (it is corresponding to the synthetic processing of dividing rank=1) of synthetic rank=1, carry out synthetic processing then, export first row thus for coefficient Cf and coefficient C1.
Therefore, for synthetic processing for the first time, on the coding side, be formed and stored in coefficient data in the coefficient permutatation buffer cell 12 by the order of coefficient C1, coefficient C2, coefficient C3, coefficient C4 and coefficient C5, pressed the order rearrangement row of coefficient C5, coefficient C4, coefficient C1 etc., and offered the decoding side.
The composite filter side of attention about showing on the right side of Fig. 6 number represented with the coefficient on the inherent coding of the bracket side from the coefficient that provides of coding side, and shows the row number of composite filter outside the bracket.For example, coefficient C1 (5) shows: on the analysis filter side on the left side of Fig. 6, it is coefficient C5, and on the composite filter side, it is on first row.
Employing is from once preceding or come under the situation of synthetic processing of own coding side from the synthetic coefficient data that provides, and can carry out by in the synthetic processing coefficient data that generates with Filtering Processing and its reprocessing for the second time on the coding side, on the decoding side.In the example in Fig. 6, coefficient C2 and coefficient C3 that the second time synthetic processing of employing on the decoding side that the low frequency band component coefficient C8 that generates with Filtering Processing for the second time on the coding side and coefficient C9 carry out also need generate in the Filtering Processing in the first time on the coding side, and second row of decoding arrives fifth line.
That is to say,, provide coefficient data to the decoding side from the coding side by the order of coefficient C9, coefficient C8, coefficient C2, coefficient C3 for synthetic processing for the second time.On the side of decoding, handle for synthetic rank=2, the coefficient C8 and coefficient C9 and the coefficient C4 that provide from the coding side in synthetic processing for the first time are provided, generate coefficient C
gAdopt coefficient C
gHandle the coefficient C that produces and be stored in the buffer with above-mentioned coefficient C4 and by synthesizing for the first time
f, generate coefficient C
h, and with coefficient C
hBe stored in the buffer.
Handle for synthetic rank=1, adopt the coefficient C that in handle synthetic rank=2, is formed and stored in the buffer
gWith coefficient C
h, from coefficient C2 (being shown as the coefficient C6 (2) of composite filter) and the coefficient C3 (being shown as the coefficient C7 (3) of composite filter) that the coding side provides, carry out synthetic the processing, and second row of decoding is to fifth line.
Therefore, for synthetic processing for the second time, coefficient data-coefficient C2, coefficient C3, (coefficient C4, coefficient C5), coefficient C6, coefficient C7, coefficient C8, the coefficient C9 that generates on the coding side is rearranged row and is provided to the decoding side according to the order of coefficient C9, coefficient C8, coefficient C2, coefficient C3 etc.
Therefore, for synthetic the processing and later processing for the third time, similarly, being stored in coefficient data in the permutatation buffer cell 12 by permutatation in a predefined manner and offer decoding unit, wherein is the increment decoded row with the four lines.
Attention for the corresponding decoding side of Filtering Processing of row that comprises bottom of screen on the coding side on synthetic processing, the coefficient data that is formed and stored in the buffer to this moment all is output, thus the output line number increases.For the example among Fig. 6, the last time during output eight the row.
Attention is handled when reading the coefficient data that is stored in the coefficient permutatation buffer cell 12 by the permutatation of the coefficient data of coefficient rearrangement unit 13, and the address setting of reading is become predefined procedure.
Further describe above-mentioned processing with reference to Fig. 7 below.Fig. 7 adopts 5 * 3 filters, carries out the example of the Filtering Processing of dividing rank=2 by wavelet transformation.For wavelet transform unit 10, example shown in the A of Fig. 7, first row to input image data on each of level and vertical direction is carried out Filtering Processing (In-1 of the A in Fig. 7) for the first time to the 7th row.
Handle division rank=1 for the Filtering Processing first time, the coefficient data of the amount of the triplex row of generation coefficient C1, C2 and coefficient C3, and example shown in the B of Fig. 7, they each be placed in to divide among regional HH, regional HL that rank=1 forms and the area L H (WT-1 of the B among Fig. 7).
In addition, by by dividing rank=2 Filtering Processing in the horizontal and vertical directions, further be divided into four with the area L L that divides rank=1 formation.For to divide coefficient C5 and the coefficient C4 that rank=2 generate, delegation is placed the area L L in the area L L of division rank=1 by coefficient C5, and delegation is placed regional HH, regional HL and area L H each by coefficient C4.
For Filtering Processing and the second time with reprocessing by wavelet transform unit 10, with the four lines is that increment is carried out Filtering Processing (In-2... of the A among Fig. 7), o'clock generate coefficient data dividing rank=1, and o'clock generate coefficient data dividing rank=2 with a behavior increment with two behavior increments.
For the secondary example among Fig. 6, dividing the coefficient data that rank=1 Filtering Processing generates two row that are equivalent to coefficient C6 and coefficient C7, and example shown in the B of Fig. 7, and it is located at after the coefficient data of dividing rank=regional HH, the regional HL of 1 formation and generating in the Filtering Processing first time of area L H.By dividing in the area L L that rank=1 forms, be arranged in area L L to divide the coefficient C9 that is equivalent to delegation that rank=2 Filtering Processing generate, and the coefficient C8 that is equivalent to delegation is positioned at regional HH, regional HL and area L H each.
When decoding is subjected to the data of the wavelet transformation among the B of Fig. 7, example shown in the C of Fig. 7, corresponding to the first time Filtering Processing of first row on the coding side, export synthetic first row of the handling first time on (Out-1 among the C of Fig. 7) decoding side to the 7th row.Then, corresponding on the coding side from the Filtering Processing before once to the last for the second time, in the last four lines of exporting of decoding side (Out-2... among the C of Fig. 7).Corresponding to the last Filtering Processing on the coding side, output eight row on the decoding side.
Coefficient data from the high band component side to the low frequency band component side, that generate by wavelet transform unit 10 is stored in the coefficient permutatation buffer cell 12 successively.For coefficient rearrangement unit 13,,, and from coefficient permutatation buffer cell 12, read this coefficient data by necessary order rearrangement row coefficient data when coefficient data is accumulated in the coefficient permutatation buffer cell 12 in the time can carrying out above-mentioned coefficient permutatation.The coefficient data of reading is offered entropy coding unit 15 successively.
Encoding operation is controlled based on the control signal that provides from speed control unit 14 in entropy coding unit 15, thereby the bit rate of dateout becomes target bit rate, and carries out entropy coding for the coefficient data that is provided.The coded data that stands entropy coding is provided to the decoding side.As coding method, can consider known technology, as Huffman coding or arithmetic coding.Certainly, this method is not limited to these, and can adopt any other coding method that can carry out contrary encoding process.
Note, if quantification is at first carried out for the coefficient data that reads from coefficient rearrangement unit 13 in entropy coding unit 15, and carry out source encoding for the quantization parameter that obtains and handle (as Huffman coding or arithmetic coding), then can expect further improved compression advantage.For the method for this quantification, can use any method, and can use for example general device, that is, be used for coefficient data W by the device that quantizes step size, delta (shown in following expression formula (7)) division.
Quantization parameter=W/ Δ ... (7)
As described in reference Fig. 6 and Fig. 7, for according to the first embodiment of the present invention, wavelet transform unit 10 is that increment (is increment to go piece) is carried out wavelet transform process with the multirow of view data.With these row pieces is the coded data of increment output with entropy coding unit 15 codings.That is to say, adopting 5 * 3 filters to carry out under the situation of the processing of dividing rank=2, the screen output for data obtains the output as delegation for the first time, for the second time to the end before once once be the output that obtains as four lines each time, and export eight row for the last time.
Be noted that and standing under the situation of entropy coding, for example with the coefficient data after 13 permutatation of coefficient rearrangement unit, when the row of the first coefficient C5 being carried out entropy coding with the Filtering Processing first time shown in Figure 6, there is not horizontal line, that is, and the row that does not exist coefficient data to generate.Therefore in this case, have only delegation to stand entropy coding.On the contrary, in the row of code coefficient C1, the row of coefficient C5 and coefficient C4 becomes horizontal line.These close each other multirows can be considered to dispose similar data, are efficiently thereby make multirow stand entropy coding together.
In addition, as mentioned above,, describe and adopt 5 * 3 filters to carry out the example of Filtering Processing, but be not limited to this example with wavelet transformation for wavelet transform unit 10.For example, for wavelet transform unit 10, can use filter such as the longer tap number of 9 * 7 filters.In this case, if tap number is longer, the line number of accumulating in the filter also increases, thereby elongated from the time of delay that is input to till coded data is exported of view data.
In addition, for foregoing description, for the reason of describing, the division rank of wavelet transformation is described to divide rank=2, but should not be limited to this, and can further increase the division rank.Dividing rank increases manyly more, then can realize better high compression rate.For example, usually,, repeat up to the Filtering Processing of dividing rank=4 for wavelet transformation.Being noted that along with dividing rank increases, and also increase greatly time of delay.
Therefore, when the first embodiment of the present invention is applied to real system, wish time of delay or image quality, determine the filter tap number or divide rank according to the required decoded picture of system.Filter tap number or division rank need not be fixed value, and also can be suitably optional.
Then, with reference to the flow chart among Fig. 8, the specific flow example according to the overall encoding process of aforesaid image encoding apparatus 1 is described.
When encoding process began, in step S1, the No.A of the capable piece that wavelet transform unit 10 will be handled was set to initial setting up.Under normal circumstances, No.A is set to " 1 ".After end is set, in step S2, wavelet transform unit 10 obtains for the generation necessary line number of this delegation that A is capable above the lowest band sub-band (promptly, a capable piece) view data, in step S3, its view data is carried out the line analysis Filtering Processing, this processing is used for for the view data execution analysis filtering of arranging on the screen vertical direction, and in step S4, the executive level analysis filtered is handled, and this processing is used for for the view data execution analysis filtering of arranging on the screen level direction.
In step S5, wavelet transform unit 10 determines whether the analysis filtered processing is performed rank to the end, and determining to divide under other situation of the last level of rank no show still, processing turns back to step S3, and wherein the analysis filtered that repeats in step S3 and step S4 for current division rank is handled.
In step S5, determine analysis filtered handle be performed to the end level other the time, wavelet transform unit 10 advances to step S6 with processing.
In step S6, coefficient rearrangement unit 13 is according to the coefficient of the order rearrangement row row piece A (from the capable piece of A on picture (being the field under the situation of interlacing method) top) that takes high frequency band from low frequency to.In step S7, entropy coding unit 15 makes coefficient stand the entropy coding that carries out with the behavior increment.After entropy coding finishes, in step S8, will go the coded data of piece A and outwards transmit in entropy coding unit 15.
As mentioned above, repeated execution of steps S2 to the processing among the step S10 encode each the row piece.Make in step S10 and not existing in the determining of untreated image line of input, wavelet transform unit 10 finishes the encoding process of these pictures.Begin new encoding process for next picture.
Under the situation of traditional wavelet method, at first, whole image (being the field under the situation of interlacing method) executive level analysis filtered is handled, then, whole image is carried out the line analysis Filtering Processing.Then the low frequency band component of whole acquisition is carried out similar horizontal analysis Filtering Processing and line analysis Filtering Processing successively.As mentioned above, replicate analysis Filtering Processing recursively is up to dividing till rank reaches final rank.Therefore, the result that each analysis filtered is handled need be stored in the buffer, but in such a case, buffer need preserve a whole image (under the situation of interlacing method being) or the division rank of carving at this moment on the filtering result of whole low frequency band component, therefore need big memory capacity (data volume that will preserve is very big).
In addition, in this case,, then can not carry out coefficient permutatation or entropy coding in the later step, thereby increase time of delay greatly if do not finish for the wavelet transformation of whole image (being the field under the situation of interlacing method).
On the contrary, under the situation of the wavelet transform unit 10 of image encoding apparatus 1, as mentioned above, to go piece is that increment is carried out line analysis Filtering Processing and horizontal analysis Filtering Processing continuously, rank to the last, so compare with conventional method, (in the identical time period) to need to preserve the data volume of (buffering) less simultaneously, needs the memory capacity prepared in the buffer thereby significantly reduced.In addition, by execution analysis Filtering Processing rank to the end, also can carry out the coefficient permutatation of back or the step that entropy coding is handled (that is can be that increment is carried out coefficient permutatation or entropy coding) to go piece.Therefore, compare, can significantly reduce time of delay with conventional method.
Fig. 9 illustrates an example corresponding to the configuration of the image decoding apparatus of the image encoding apparatus among Fig. 11.The coded data of entropy coding unit 15 outputs of the image encoding apparatus 1 from Fig. 1 (the coded data output among Fig. 1) is provided to the entropy decoding unit 21 (the coded data input among Fig. 9) of the image decoding apparatus 20 among Fig. 9, entropy coding is decoded, and become coefficient data.Coefficient data is stored in the coefficient buffer cell 22.Wavelet inverse transformation unit 23 adopts the coefficient data that is stored in the coefficient buffer cell 22, for example carry out and handle with reference to the synthetic filtering of Fig. 5 and the described composite filter of Fig. 6, and the result that synthetic filtering is handled is stored in the coefficient buffer cell 22 once more.Wavelet inverse transformation unit 23 obtains decode image data (output image data) according to dividing the rank reprocessing.
Then, with reference to the specific flow example of the whole decoding processing of the aforesaid image decoding apparatus 20 of the flow chart description among Figure 10.
After decoding processing began, in step S31, entropy decoding unit 21 obtained coded data, and made coded data stand to decode with the entropy of behavior increment in step S32.In step S33, coefficient buffer cell 22 is preserved the coefficient of decoding thus and obtaining.In step S34, wavelet inverse transformation unit 23 determines whether to have accumulated the coefficient that is equivalent to a capable piece in coefficient buffer cell 22, if determine not accumulation, then handle and turn back to step S31, carry out later processing, and wavelet inverse transformation unit 23 is waited for, up to accumulated the coefficient that is equivalent to a capable piece in coefficient buffer cell 22.
Determine to have accumulated in coefficient buffer cell 22 in the coefficient that is equivalent to a capable piece in step S34, wavelet inverse transformation unit 23 advances to step S35 with processing, and reads the coefficient that is equivalent to a capable piece that is kept in the coefficient buffer cell 22.
Wavelet inverse transformation unit 23 makes the coefficient of reading stand vertically synthetic Filtering Processing, this processing is carried out synthetic filtering for the coefficient of arranging and is handled on the screen vertical direction, and in step S37, the executive level synthetic filtering is handled, this processing is carried out synthetic filtering for the coefficient of arranging and is handled on the screen level direction, and determine in step S38 whether the synthetic filtering processing reaches rank 1 (other value of partition level is the rank of " 1 ") and finish, promptly, determine whether inverse transformation is performed wavelet transformation state before, if determine not reach rank 1, then handle and return step S36, repeat the Filtering Processing in step S36 and step S37 thus.
In step S38, if definite inversion process reaches rank 1 and finishes, then wavelet inverse transformation unit 23 advances to step S39 with processing, and outwards exports the view data that obtains by inversion process.
In step S40, entropy decoding unit 21 determines whether to finish decoding processing, and is intermittently and under the decoding processing situation that will can not finish in the input of determining coded data, handles and returns step S31, and repeat later processing.In addition, in step S40, thereby under the situation that the end of input decoding processing of coded data finishes, entropy decoding unit 21 finishes decoding processing.
Using under the situation of traditional wavelet inverse transformation method, at first, on the screen level direction to all the coefficient executive level synthetic filterings on the division rank to be processed, on the screen vertical direction, carry out vertical synthetic filtering then.That is to say, handle for each execution synthetic filtering, the result that synthetic filtering is handled need be kept in the buffer, but in this case, buffer need be kept at all coefficients of delineating this moment on classification other synthetic filtering result and next the division rank, thereby needs big memory capacity (data volume that will preserve is very big).
In addition, in this case, the carries out image data are not exported till all wavelet inverse transformations in the picture (being the field under the situation at interlacing method), thereby increase greatly from the time of delay that is input to output.
On the contrary, under the situation of the wavelet inverse transformation unit 23 of aforesaid image decoding apparatus 20, it is to be that increment is carried out continuously up to rank 1 to go piece that vertical synthetic Filtering Processing and horizontal synthetic filtering are handled, thereby compare with conventional method, need the data volume of (at one time in the section) buffering simultaneously less, thereby help to reduce the memory capacity that to prepare in the buffer.In addition, handle (wavelet inverse transformation processing) by carrying out up to the synthetic filtering of rank 1, can be before all images data in obtaining picture output image data (is increment to go piece) successively, thereby compare and can significantly reduce time of delay with conventional method.
The operation of each element of image encoding apparatus 1 shown in Figure 1 or image decoding apparatus 20 shown in Figure 9 (encoding process among Fig. 8 or the decoding processing among Figure 10) is for example controlled according to preset program by unshowned CPU (CPU).This program for example is stored among the unshowned ROM (read-only memory) in advance.Yet this is not limited thereto, and can operate entire equipment by mutual timing signal or control signal between each element (comprising image encoding apparatus or image decoding apparatus).In addition, image encoding apparatus or image decoding apparatus can be realized with the software that moves on the computer equipment.
Then, will describe according to a second embodiment of the present invention.For second embodiment, carry out such configuration, wherein, operate each element of image encoding apparatus 1 and image decoding apparatus 20 concomitantly in the above for the system of for example describing among first embodiment, thereby with the compressed encoding and the decoding processing of less delay carries out image.
Be noted that for second embodiment, can similarly use above-mentioned image encoding apparatus 1 and image decoding apparatus 20 and coding method and the coding/decoding method of in first embodiment, describing referring to figs. 1 through Figure 10, therefore will omit its description.
Figure 11 is the schematic diagram according to the concurrent operations of the example of each element of the image encoding apparatus 1 of second embodiment of the invention and image decoding apparatus 20.Figure 11 is corresponding to above-mentioned Fig. 7.In entropy coding unit 15, carry out wavelet transformation WT-1 (B among Figure 11) for the first time for view data input In-1 (A of Figure 11).As described in reference Fig. 6, for the first time wavelet transformation WT-1 began and generates coefficient C1 in the moment of input head triplex row.That is to say, from the input In-1 of view data to beginning wavelet transformation WT-1 till, the delay that produces the amount of triplex row.
The coefficient data that generates is stored in the coefficient permutatation buffer cell 12.Then, the view data of input stands wavelet transformation, and when processing for the first time finishes, handles advancing to wavelet transformation WT-2 for the second time.
For the second time wavelet transformation WT-2 the view data In-2 input of purpose and the concurrent execution of wavelet transformation WT-2 for the second time by the permutatation Ord-1 (C of Figure 11) of coefficient rearrangement unit 13 couples of three coefficients-coefficient C1, coefficient C4 and coefficient C5-.
Note, can be based on the delay of equipment or system configuration to the delay of the beginning of permutatation Ord-1 from the end of wavelet transformation WT-1, for example, be accompanied by of the delay of the control signal of instruction permutatation processing to the transmission of coefficient rearrangement unit 13, processing about the coefficient rearrangement unit 13 of control signal begins necessary delay, the perhaps necessary delay of routine processes, rather than the actual delay of encoding process.
From coefficient permutatation buffer cell 12, read coefficient data, it is provided to entropy coding unit 15, and stands entropy coding EC-1 (D of Figure 11) according to the order that finishes permutatation.Entropy coding EC-1 can begin, and does not wait for the end of all permutatation of three coefficients-coefficient C1, coefficient C4 and coefficient C5-.For example, for from the delegation of coefficient C5 of output at first, in the moment in that permutatation finishes, can begin for coefficient C5 entropy coding.In this case, the delay of the beginning of handling from beginning of handling of permutatation Ord-1 to entropy coding EC-1 is the amount of delegation.
The coded data of entropy coding EC-1 of entropy coding unit 15 of wherein being through with is transferred to image decoding apparatus 20 by the transmission path (E among Figure 11) by certain type.For the transmission path of transfer encoding data, for example can consider communication network as internet and so on.In this case, coded data is by IP (Internet Protocol) transmission.Yet this configuration is not limited thereto, and other transmission paths of coded data can be communication interfaces, is the radio communication of representative as IEEE 1394 (Institute of Electrical and Electric Engineers 1394) or with IEEE 802.11 standards etc.
After the amount of seven row of handling for the first time arrived the view data input of image encoding apparatus 1, the view data of screen lower edge was down arrived in input successively.For image encoding apparatus 1,, as mentioned above, be that increment is carried out wavelet transformation WT-n, permutatation Ord-n and entropy coding EC-n with the four lines according to view data input In-n (n is 2 or more).The permutatation Ord of the last processing in image encoding apparatus 1 and entropy coding EC carry out for six row.In image encoding apparatus 1, carry out these concomitantly and handle, as the A of Figure 11 to as shown in the D of Figure 11.
By the coded data of the entropy coding EC-1 of image encoding apparatus 1 coding by transmission path to image decoding apparatus, and offer entropy decoding unit 21.Entropy decoding unit 21 makes the decoding iEC-1 that entropy coding is provided through the coded data that is provided of entropy coding EC-1 coding successively, and recovery coefficient data (F among Figure 11).The coefficient data that recovers is stored in coefficient buffer cell 22 successively.Be stored in coefficient buffer cell 22 (only can stand the amount of wavelet inverse transformation) afterwards at coefficient data, wavelet inverse transformation unit 23 reads coefficient data from coefficient buffer cell 22, and adopts the coefficient data that reads to carry out wavelet inverse transformation iWT-1 (G among Figure 11).
As described in reference Fig. 6, the wavelet inverse transformation iWT-1 of wavelet inverse transformation unit 23 can begin in the moment that coefficient C4 and coefficient C5 are stored in the coefficient buffer cell 22.Therefore, from the decoding iEC-1 of entropy decoding unit 21 to begin to the delay of the beginning of the wavelet inverse transformation iWT-1 of wavelet inverse transformation unit 23 be the amounts of two row.
23 when finishing the wavelet inverse transformation iWT-1 of the amount of the triplex row of wavelet transformations for the first time in the wavelet inverse transformation unit, carries out the output Out-1 (H among Figure 11) of the view data that wavelet inverse transformation iWT-1 generates.For output Out-1, the output first row view data is as reference Fig. 6 and Fig. 7 are described.
For image decoding apparatus 20, after the input by the code coefficient data that are equivalent to triplex row handled the first time in image encoding apparatus 1, the input coefficient data of encoding successively by entropy coding EC-n (n is 2 or more).For image decoding apparatus 20, as mentioned above, be that increment is carried out entropy decoding iEC-n and wavelet inverse transformation iWT-n with the four lines for the input coefficient data, and carry out output Out-n successively by wavelet inverse transformation iWT-n image restored data.For last entropy decoding iEC and the wavelet inverse transformation iWT of six row execution corresponding to image encoding apparatus, and output Out output eight row.These handle concurrent execution in image decoding apparatus, as the F of Figure 11 to as shown in the H of Figure 11.
As mentioned above, by according to the order from screen top to the bottom, the various processing in concurrent carries out image encoding device 1 and the image decoding apparatus 20 can be handled and the picture decoding processing with the compression of less delayed carries out image.
Calculate the time of delay that under the situation of the wavelet transformation of dividing rank=2, from image, is input to image output in the execution of employing 5 * 3 filters with reference to Figure 11.The summation of the element that list below being the time of delay from the first row view data input picture encoding device, 1 to first row view data from image decoding apparatus 20 outputs.Be noted that not comprise that the difference that causes owing to system configuration postpones, as the delay of transmission path or according to the actual treatment delay regularly of the various piece of equipment.
(1) the delay D_WT till the wavelet transformation WT-1 that is input to the amounts of seven row from first row finishes
(2) according to time D _ Ord of the permutatation Ord-1 of the amount of triplex row altogether
(3) according to time D _ EC of the entropy coding EC-1 of the amount of triplex row
(4) according to time D _ iEC of the entropy decoding iEC-1 of the amount of triplex row
(5) according to time D _ iWT of the wavelet inverse transformation iWT-1 of the amount of triplex row
With reference to the delay of Figure 11 calculating from above-mentioned each element.(1) the delay D_WT in is the time of the amount of ten row.(2) each is the time of the amount of triplex row for the time D _ iWT in the time D _ EC in the time D-Ord in, (3), the time D _ iEC in (4) and (5).In addition, can after beginning delegation, permutatation Ord-1 begin for image encoding apparatus 1, entropy coding EC-1.Similarly, for image decoding apparatus 20, wavelet inverse transformation iWT-1 can begin to begin after two row from entropy decoding iEC-1.In addition, entropy decoding iEC-1 can begin to handle constantly at the coding that entropy coding EC-1 finishes to be equivalent to delegation.
Therefore, for this example, from the first row view data be input to the capable view data of image encoding apparatus to the first from the time of delay that image decoding apparatus is exported be the capable amount of 10+1+1+2+3=17.
Provide more specific example time of delay with considering.Be under the situation of view data of interlaced video signal of HDTV (high definition television) at input image data, a frame is configured with the resolution that 1920 pixels are for example taken advantage of 1080 row, and a field is that 1920 pixels are taken advantage of 540 row.Therefore, if frame rate is 30Hz, then one of 540 row is imported into image encoding apparatus 1 in 16.67ms (=1 second/60).
Therefore, according to time of delay of input of the view data of the amounts of seven row are 0.216ms (=16.67ms * 7/540 row), it is the very short time for update time of one for example.In addition, about the delay D_WT in above-mentioned (1), time D _ Ord, time D _ EC, time D _ iEC in (4) in (3) and the sum of the time D _ iWT in (5) in (2), line number to be processed seldom so shortens time of delay greatly.Be configured to hardware if carry out the element of each processing, then can further shorten the processing time.
Then, will the 3rd embodiment of present embodiment be described.For above-mentioned first and second embodiment, permutatation coefficient data after carrying out wavelet transformation with image encoding apparatus 1.On the contrary, for a third embodiment in accordance with the invention, after entropy coding, carry out the coefficient data permutatation.That is to say that for image encoding apparatus in this case, the coefficient that generates for making input image data stand wavelet transformation is carried out entropy coding, and the data that stand entropy coding are carried out permutatation handle.Therefore, by after carrying out entropy coding, carrying out the coefficient data permutatation, can reduce demand to the memory capacity of coefficient permutatation buffer.
For example, be that if carry out the wavelet transformation of dividing up to a plurality of ranks, then the position precision of the coefficient data that is generated becomes for example about 12 under 8 the situation in the position of input image data precision.Carried out before entropy coding is handled under the situation that the coefficient permutatation handles, coefficient permutatation buffer cell need be stored the amount of row of predetermined quantity of the coefficient data of the position precision with 12.By permutatation to after entropy coding, stand that permutatation is handled, with the coefficient data that wavelet transformation generates, coefficient permutatation buffer can be stored the data by the entropy coding compression, therefore only needs a spot of memory capacity.
Figure 12 illustrates the example according to the image encoding apparatus of third embodiment of the invention.Have identical Reference numeral with the described identical part of Fig. 1 among Figure 12, and will omit its detailed description.
Input image data is temporarily stored in the intermediate computations buffer cell 11 of image encoding apparatus 30.Wavelet transform unit 10 is carried out predetermined wavelet transformation for the view data that is stored in the intermediate computations buffer cell 11, as described with reference to first embodiment.The coefficient data that generates with wavelet transformation is provided for entropy coding unit 15.Entropy coding unit 15 collaborative rate controlled unit 14 work, and Be Controlled makes that the bit rate of output compress coding data roughly is a fixed value, and carry out entropy coding for the coefficient data that provides and handle.That is to say the coefficient that entropy coding unit 15 obtains with the sequential encoding identical with the order that obtains, and the order of tube cofficients not.
Wherein the coefficient data that generates by the wavelet transformation coded data that stands the entropy coding of entropy coding unit 15 is temporarily stored in the coding permutatation buffer cell 31.Coding rearrangement unit 32 after the coded data of wanting permutatation is stored in the permutatation buffer cell 31 of encoding, permutatation and read the coded data of own coding permutatation buffer cell 31.As described, according to the coefficient data of from the high band component to the low frequency band component, from the upper end side of screen, using wavelet transform unit 10 generations to the order generation of lower end side with reference to first embodiment.For with less delay at decoding side output image data, be stored in coded data in the coding permutatation buffer cell 31 according to the low frequency band component of the coefficient data that generates by wavelet transformation to the order rearrangement row of high band component, and it read.
The coded data that reads from coding permutatation buffer cell 31 is sent to for example transmission path as outputting encoded data.
Be noted that this is similar to the situation among first embodiment by image decoding apparatus 20 decodings that can use according to the data of image encoding apparatus 30 coding of the 3rd embodiment and output according to described first embodiment of reference Fig. 9.That is to say, stand the decoding of the entropy coding in the entropy decoding unit 21 and recovery coefficient data by the coded data in the transmission path input picture decoding device 20 for example.The coefficient data that recovers by sequential storage in coefficient buffer cell 22.Wavelet inverse transformation unit 23 makes the coefficient data that is stored in the coefficient buffer cell 22 stand wavelet inverse transformation, and output image data.
Then, a fourth embodiment in accordance with the invention will be described.For above-mentioned first embodiment to the, three embodiment, the coefficient data that generates with wavelet transformation on the image encoding apparatus side to be carried out permutatation handle, example as shown in Figure 13 is such.On the contrary, for the fourth embodiment of the present invention, the permutatation of the coefficient data that wavelet transformation generates is handled and is configured to carry out on the image decoding apparatus side, and example as shown in Figure 14 is such.
Permutatation for the coefficient data that generates with wavelet transformation is handled, as described in reference to above-mentioned the 3rd embodiment, need the memory capacity of big relatively capacity, and need high disposal ability to be used for the processing self that the coefficient permutatation is handled as coefficient permutatation buffer.In this case, a certain amount of if the disposal ability on the image encoding apparatus side is higher than, handle even on the image encoding apparatus side, carry out the coefficient permutatation, problem can not take place, as first to the 3rd embodiment is described yet.
Here, situation is that image encoding apparatus is installed in as portable terminal (as cellular phone terminal or PDA (personal digital assistant)), has on the equipment of low relatively disposal ability.For example, be extensive use of the product (being called as cellular phone terminal) that wherein is added with camera function recently with camera function to cellular phone terminal.Can consider wherein to have compressed encoding and entropy coding that view data that the cellular telephone apparatus image of camera function catches stands wavelet transformation, and by situation wireless or the wire communication transmission.
This portable terminal is limited aspect its CPU disposal ability, and memory capacity also has the upper limit.Therefore, the processing load with above-mentioned coefficient permutatation is the problem that can not ignore.
Therefore, as an example shown in Figure 14, insert the image decoding apparatus side by permutatation is handled, can alleviate the load on the image encoding apparatus side, thereby on the equipment (as portable terminal) that image encoding apparatus can be installed in have low relatively disposal ability.
Figure 15 illustrates the example of the configuration of the image encoding apparatus that may be used on the 4th embodiment.Notice that in Figure 15, the part identical with above-mentioned Fig. 1 is given identical Reference numeral, and omit its detailed description.
The configuration of the image encoding apparatus 41 shown in Figure 15 is arranged to such configuration, wherein removes coefficient rearrangement unit 13 and coefficient permutatation buffer cell 12 from the configuration of the image encoding apparatus 1 shown in above-mentioned Fig. 1.In other words, for the 4th embodiment, image encoding apparatus 41 uses the configuration of combination wavelet transform unit 10, intermediate computations buffer cell 11, entropy coding unit 15 and rate controlled unit 14.
The view data of input is accumulated in the intermediate computations buffer cell 11 temporarily.Calculate the view data of accumulation in the buffer cells 11 in the middle of 10 pairs of the wavelet transform unit and carry out wavelet transformations, and the coefficient data that generates is offered entropy coding unit 15 successively according to the order that generates coefficient data.That is to say that the coefficient data of generation offers entropy coding unit 15 with the order from the high band component to the low frequency band component according to the order of wavelet transformation.The coefficient that 15 pairs of entropy coding unit provide is carried out entropy coding, and wherein the bit rate of dateout is subjected to the control of rate controlled unit 14.The coefficient data that wavelet transformation generates is exported as the coded data that is subjected to entropy coding.
Figure 16 illustrates an ios dhcp sample configuration IOS DHCP according to the image decoding apparatus of the 4th embodiment.Notice that in Figure 16, the part identical with above-mentioned Fig. 9 is given identical Reference numeral, and omit its detailed description.
Stand coded data entropy coding, that export from the entropy coding unit 15 of the image encoding apparatus described in Figure 15 41 and be provided for the entropy decoding unit 21 of the image decoding apparatus 42 Figure 16, and become coefficient data.Coefficient data is stored in the coefficient permutatation buffer cell 43 by coefficient buffer cell 22.Be accumulated in the coefficient permutatation buffer cell 43 can be rearranged at coefficient data and classify as when ending up to coefficient data, wavelet inverse transformation unit 23 is listed as the coefficient data that is stored in the coefficient permutatation buffer cell 43 according to the order rearrangement from the low frequency band component to the high band component, and read this coefficient data, adopt then according to the coefficient data of reading order and carry out the wavelet inverse transformation processing.Under the situation that adopts 5 * 3 filters, it is arranged as shown in above-mentioned Figure 14.
That is to say, for since a frame (for example, be stored in moment in the coefficient permutatation buffer cell 43 through coefficient C1, the coefficient C4 of entropy decoding decoding and coefficient C5) processing that rises, wavelet inverse transformation unit 23 reads coefficient data from coefficient permutatation buffer cell 43, and carries out wavelet inverse transformation and handle.To stand the data of the wavelet inverse transformation of wavelet inverse transformation unit 23 exports successively as output image data.
Note, under the situation of the 4th embodiment, as reference Figure 11 to as described in above-mentioned second embodiment, the processing of each element of image encoding apparatus 41 and are concurrent execution about the processing of each element of the coded data transmission of transmission path and image decoding apparatus 42.
Then, the fifth embodiment of the present invention will be described.For the 5th embodiment, the coded data of transmitting between image encoding apparatus and image decoding apparatus in first embodiment to the, four embodiment is set to grouping.
Figure 17 is a schematic diagram of describing the example that how to exchange coded data.Under the situation of example shown in Figure 17, similar with above-mentioned other embodiment, view data stands wavelet transformation, is the only amount of the row of predetermined quantity (sub-band 51) of increment input image data to go piece simultaneously.Reach predetermined wavelet transformation partition level other the time, line of coefficients that will be from the lowest band sub-band to high frequency band sub-band is according to the order rearrangement row of the reversed in order when generating them, that is, according to the order of taking high frequency band from low frequency to.
For the sub-band among Figure 17 51, each of the part that marks off according to the pattern of diagonal, vertical line and wave all is different capable piece (being that the white space in the sub-band 51 is divided and handled to increment to go piece also as shown by arrows).The coefficient of the capable piece after the permutatation stands above-mentioned entropy coding, thereby generates coded data.
Here, if image encoding apparatus in statu quo sends coded data, then for example, image decoding apparatus may be difficult to discern the border (perhaps may need complicated processing) of each row piece.Therefore, for present embodiment, carry out such layout, wherein, it is the coded data of increment that image encoding apparatus for example appends to head to go piece, and sends the grouping of being made up of head and coded data.
In other words, after the coded data (encoder data) of the image encoding apparatus generation first row piece (Lineblock-1), coded data is packetized, and sends to image decoding apparatus as transmission grouping 61, as shown in figure 17.After image decoding apparatus receives this grouping (receiving grouping 71), its coded data of decoding.
Similarly, after image encoding apparatus generated second row piece (Lineblock-2) coded data, coded data was packetized, and sends to image decoding apparatus as transmission grouping 62.After image decoding apparatus receives this grouping (receiving grouping 72), its coded data of decoding.Equally similarly, after image encoding apparatus generated the third line piece (Lineblock-3) coded data, coded data was packetized, and sent to image decoding apparatus as transmission grouping 63.After image decoding apparatus receives this grouping (receiving grouping 73), its coded data of decoding.
Image encoding apparatus and image decoding apparatus repeat above-mentioned processing, till the capable piece of final X (Lineblock-X) (transmission grouping 64 receives grouping 74).Therefore on image decoding apparatus, generate decoded picture 81.
Figure 18 illustrates the ios dhcp sample configuration IOS DHCP of head.As mentioned above, grouping comprises head (Header) 91 and coded data, and Header 91 comprises the description of capable piece number (NUM) 93 and coded data length (LEN) 94.
Image decoding apparatus can easily be discerned the border of each row piece, thereby reduce the load or the processing time of decoding processing by reading this information in the head that is included on the coded data that appends to reception.
Be noted that as shown in figure 18 can also add the sub-band with the configuration line piece is the description of the quantization step size (Δ 1 to Δ N) 92 of increment.Therefore, image decoding apparatus can be that increment is carried out inverse quantization with the sub-band, thereby can carry out picture quality control more specifically.
In addition, can be arranged to go piece be each processing that increment concurrent as described in the fourth embodiment (with pipeline system) is carried out coding, packetizing, exchange grouping and decoding for image encoding apparatus and image decoding apparatus.
Therefore, can significantly reduce in the time of delay that obtains on the image decoding apparatus till image is exported.As example, Figure 17 illustrates the operation example for interlacing motion picture (60/second).For this example, one time is the about 16.7ms of 1 second/60=, but each is handled by concurrent execution, and image output can be arranged to obtain with the time of delay of about 5ms.
Then, will describe according to a sixth embodiment of the invention.For the 6th embodiment, will describe with the entropy coding of image encoding apparatus and the specific example of the decoding of the entropy on image decoding apparatus for each the foregoing description.For each the foregoing description, can adopt any method to carry out entropy coding, but by adopting with the method shown in the present invention, image encoding apparatus can be carried out coding with easier calculating, thereby reduces time of delay, power uses and buffer stores capacity etc.
Note, as mentioned above, for each embodiment, in entropy coding, can after the quantification of coefficient data, carry out coding, but also so to say that for present embodiment, can make coefficient data carry out entropy coding after standing to quantize thus, perhaps coefficient data can stand entropy coding and without quantification.Yet, as will be described later, carry out the method that quantizes and help to increase picture quality, therefore will only describe below and carry out the entropy coding that quantizes.In other words, with the description of omitting, but can use the description of carrying out the entropy coding that quantizes to it to the entropy coding of not carrying out quantification.
In addition, will omit the description of coefficient permutatation below.For above-mentioned each embodiment, provided for the coefficient data that makes permutatation and stood the situation of the situation of entropy coding, coded data that permutatation has stood entropy coding and the description of the situation of permutatation coefficient data after the entropy decoding.Yet the permutatation here is the process that wavelet inverse transformation is handled of carrying out at a high speed basically, and it doesn't matter to handle (with the entropy decoding processing) with entropy coding basically.In addition, even under the situation of carrying out the coefficient permutatation, also be its permutatation of the interior execution of piece of being expert at, will be thereby do not influence basically with the entropy coding of present embodiment description, although will describe its particular content after a while.In other words, can use similarly at coding according to the entropy coding method of this example and changed under the situation of coefficient data of its order, perhaps under code coefficient data conditions before the permutatation.Therefore, below in order to simplify description, with the description of omitting about the coefficient permutatation.
In other words, will the entropy coding according to present embodiment be described for the situation of carrying out quantification treatment on the entropy coding unit 15 of the image encoding apparatus 41 of the 4th embodiment wherein shown in Figure 15 below.Be noted that owing to similar reason, also will only describe image decoding apparatus, and will omit about the coefficient permutatation or do not carry out the description of the situation of inverse quantization corresponding to such image encoding apparatus.
Figure 19 is the block diagram that the configuration of the example of having used image encoding apparatus of the present invention is shown.
Quantifying unit 122 will quantize from the wavelet coefficient that wavelet transform unit 121 provides, and will offer entropy coding unit 123 as the quantization parameter that its result obtains.
That is to say that quantifying unit 122 and entropy coding unit 123 are corresponding to entropy coding unit 15 and rate controlled unit 14 among Figure 15 for example.
Then, with reference to Figure 20 and Figure 21 the entropy coding that the entropy coding unit 123 among Figure 19 is carried out is described.
For example, as shown in figure 20, according to six row configurations, one sub-frequency bands from row L1 to L6, and will be taken as with the corresponding position of pixel on this row in the xy coordinate system (x, y).Now, in each of string diagram, the x coordinate on the left position is taken as 0, and the y coordinate on the L1 that is expert at is taken as 0.
By from the row L1 to the row L6 raster scan order with sub-band represent with bit-planes and in each position (x, y) quantization parameter on is input to entropy coding unit 123 from quantifying unit 122.
In other words, at first, be imported into entropy coding unit 123 corresponding to the quantization parameter of left end coordinate (0,0) of row L1.Then, corresponding to coordinate (0,0) the right (1,0) quantization parameter of adjacent coordinate is imported into entropy coding unit 123, and the quantization parameter corresponding to the coordinate adjacent with the coordinate of having imported quantization parameter is input to entropy coding unit 123 successively, till the coordinate on the right-hand member of row L1.After all quantization parameters of the coordinate on the row L1 all are transfused to, quantization parameter corresponding to each coordinate on the row L2, left end coordinate (0 from row L2,1) arrives the coordinate of right-hand member successively, be imported into entropy coding unit 123, and similarly from row L3 to row L6, be imported into entropy coding unit 123 corresponding to the quantization parameter of the coordinate on every row.
For example, in Figure 21, shown in figure upper left, after the order that 12 quantization parameters begin according to the left end coordinate of the capable L1 from Figure 20 was imported into entropy coding unit 123, entropy coding unit 123 was the incremental encoding quantization parameter with predetermined quantity w (w=4 among Figure 21).
Now, each of the quantization parameter shown in upper left is divided into the absolute value representation of the sign indicating number of binary digit (bit-planes is represented) with it among Figure 21, and, import quantization parameter " 0101 ", "+0011 ", " 0110 ", "+0010 ", "+0011 ", "+0110 ", " 0000 ", " 0011 ", "+1101 ", " 0100 ", "+0111 " and " 1010 " of delegation (the capable L1 among Figure 20) in order to entropy coding unit 123 for example shown in Figure 21.
Each quantization parameter is formed by the quantization parameter sign indicating number that is expressed as "+" (just) or "-" (bearing) symbol (Sign) of quantization parameter (below be referred to as) and with the absolute value of the quantization parameter of binary representation.In Figure 21, in the middle of the bit of value of each numerical digit of the absolute value of expression quantization parameter, the bit of upside is represented the highest order bit (bit of the highest order numerical digit) among the figure.Therefore, for quantization parameter " 0101 ", its symbol is "-", and is " 0101 " with the absolute value of binary representation, thereby the decimal representation of this quantization parameter is " 5 ".
At first, entropy coding unit 123 determines that whether full the quantization parameter (absolute value) of lines of input 0, and determines the result according to it, and whether all quantization parameters of the row that the output indication will be encoded all are 0 sign indicating number.Determining that quantization parameter is under complete 0 the situation, whether 123 outputs 0 of entropy coding unit are 0 sign indicating number as all quantization parameters of this row of indication, and finish the coding of the quantization parameter of the current row of just carrying out.In addition, be under the situation about determining of 0 (not being that quantization parameter all is 0) in the value of making not all quantization parameter, whether 123 outputs 1 of entropy coding unit are 0 sign indicating number as all quantization parameters of this row of indication.
Under the situation of input 12 quantization parameters shown in upper left among the figure, the quantization parameter variable delay of this line of input is not only 0, so 123 outputs 1 of entropy coding unit are as sign indicating number, shown in upper right among the figure.
Whether at all quantization parameters as this row of indication is that 0 sign indicating number output indication quantization parameter is not complete 0 sign indicating number 1 o'clock, then, the coding of the quantization parameter " 0101 " of preceding four (w) input of entropy coding unit 123 execution, "+0011 ", " 0110 " and "+0010 ".
The most significant digit of four continuous quantization parameters that entropy coding unit 123 will be imported specifically (value of variable B among Figure 21) compares with the most significant digit of the individual quantization encoding of preceding once (input) four (w), determine whether most significant digit changes, and the sign indicating number of the most significant digit of output indication quantization parameter.
Now, most significant digit is the most significant digit that has peaked quantization parameter in the middle of the individual quantization parameter of four (w) that will encode together.In other words, most significant digit indication, for the quantization parameter that has maximum value in the middle of four quantization parameters, 1 of the highest order on which numerical digit.Therefore, the most significant digit of four quantization parameters " 0101 " that will encode together, "+0011 ", " 0110 ", "+0010 " for example is " 3 ", and it is the numerical digit for the highest order 1 place of the quantization parameter with maximum value " 0110 ".
In addition, indicating yard sign indicating number, the indication most significant digit that whether are changed by the indication most significant digit of the most significant digit of quantization parameter is that the increase or the sign indicating number of the sign indicating number of reduction and indication most significant digit change amount are formed, and under the unaltered situation of most significant digit, not exporting the indication most significant digit is sign indicating number that increases or reduce and the sign indicating number of indicating most significant digit change amount.
Under the situation that most significant digit changes, comparative result according to most significant digit, entropy coding unit 123 output codes 1 change with the indication most significant digit, and under the unaltered situation of most significant digit, output code 0 does not change with the indication most significant digit.
In addition, about determining that whether most significant digit changes, import under the situation of four quantization parameters for the first time, promptly, under the situation of first quantization parameter of the sub-band that positive input will be encoded (for example, the left side in the capable L1 from Figure 20 is imported under the situation of four quantization parameters successively), the quantization parameter of the sub-band of before not encoding, therefore the most significant digit of the individual quantization parameter of four (w) of coding is set to 0 before.
Therefore, most significant digit 3 in the middle of four quantization parameters " 0101 " that entropy coding unit 123 will be imported specifically, "+0011 ", " 0110 " and "+0010 " compares with the preceding once most significant digit 0 of four quantization parameters of coding, and because most significant digit changes, thereby output code 1.
In addition, entropy coding unit 123 is after the sign indicating number 1 that the indication most significant digit changes, and output indication most significant digit is the sign indicating number that increases or reduce.Here, entropy coding unit 123 exports 0 under the situation that most significant digit increases, and exports 1 under the situation that most significant digit reduces.
Most significant digit before is 0, and current most significant digit is 3, therefore as shown in upper right among the figure, and the sign indicating number 0 that entropy coding unit 123 output indication most significant digits increase.
In addition, after output indication most significant digit was the sign indicating number that increases or reduce, entropy coding unit 123 output indication most significant digits increased or have reduced what sign indicating number, that is, and and the sign indicating number of the change amount of indication most significant digit.Specifically, for the change amount (that is, the amount of increase or the amount of reduction) that is the most significant digit of n, the individual sign indicating number 0 of entropy coding unit 123 output (n-1), and at these output codes 1 after 0.
Under the situation of coding four quantization parameters shown in Figure 3, the change amount of most significant digit be 3 (=3-0), so 123 outputs 2 of entropy coding unit (=3-1) individual 0, and export 1 subsequently as sign indicating number.
Then, the sign indicating number of the most significant digit of the absolute value of each of the individual quantization parameter of four (w) of entropy coding unit 123 these less important codings of output indication.That is to say, for each quantization parameter, each numerical digit of the absolute value of entropy coding unit 123 output indication quantization parameters-from the maximum numerical digit of the significant digit of most significant digit indication successively to minimum numerical digit-the sign indicating number of value.
The quantization parameter of this less important coding is " 0101 ", "+0011 ", " 0110 " and "+0010 ", thereby the at first sign indicating number of the most significant digit of the absolute value of the quantization parameter " 0101 " of input of indication is at first exported in entropy coding unit 123.Here, most significant digit is 3, thereby entropy coding unit 123 output is by the value " 1 " (that is the 3rd numerical digit) of the maximum numerical digit of the significant digit of the most significant digit indication of quantization parameter " 0101 ", than the value " 0 " of the numerical digit (second numerical digit) of low one of maximum numerical digit and the value " 1 " of lowest ordered numerical digit.Therefore, the sign indicating number " 101 " of the significant digit of the absolute value of output indication quantization parameter " 0101 ".
Equally, for the significant digit of indication quantization parameter "+0011 ", " 0110 " and "+0010 " absolute value, entropy coding unit 123 is output code " 011 ", " 110 " and " 010 " in order.Therefore, as each the sign indicating number of most significant digit of absolute value of indication " 0101 ", "+0011 ", " 0110 " and "+0010 ", export " 101011110010 ".Therefore, 123 outputs of entropy coding unit are corresponding to the sign indicating number of the length of the most significant digit of four quantization parameters will encoding, as the sign indicating number of the absolute value of indicating quantization parameter.
At last, its absolute values of entropy coding unit 123 output indication are not each the sign indicating number of symbol of 0 the individual quantization parameter of four (w).Now, be under the situation of "+" (just) at the symbol of quantization parameter, entropy coding unit 123 output codes 0, and be under the situation of "-" (bearing) at the symbol of quantization parameter, output code 1.
The quantization parameter of this less important coding is " 0101 ", "+0011 ", " 0110 " and "+0010 ", and the symbol of these quantization parameters is negative, positive, negative, positive in order, thereby shown in upper right among the figure, entropy coding unit 123 output " 1010 " is as each the sign indicating number of symbol of indication quantization parameter.
After four quantization parameters of input for the first time are encoded, entropy coding unit 123 then encode continuous four quantization parameters "+0011 " in back, "+0110 ", " 0000 " and " 0011 ".
With with the coding identical mode of situation of the quantization parameter of (once preceding) input for the first time, the most significant digit of the individual quantization parameter of four (w) that entropy coding unit 123 at first will current new input compares with the most significant digit of the preceding individual quantization parameter of four (w) of once encoding.
The most significant digit of the individual quantization parameters of four (w) "+0011 " of current input, "+0110 ", " 0000 " and " 0011 " is " 3 ", it is for the quantization parameter with maximum value "+0110 ", the numerical digit at 1 place of high order, and this most significant digit with the preceding once quantization parameter of coding is identical, so the unaltered sign indicating number 0 of entropy coding unit 123 output indication most significant digits.
Then, entropy coding unit 123 output codes " 011110000011 " are wherein arranged each sign indicating number absolute value, most significant digit " 011 ", " 110 ", " 000 " and " 011 " of the individual quantization parameters of four (w) "+0011 ", "+0110 ", " 0000 " and " 0011 " of this less important coding of indication in order.
After the sign indicating number of the absolute value of output indication quantization parameter, entropy coding unit 123 its absolute values of output indication are not each the sign indicating numbers of symbol of 0 the individual quantization parameter of four (w).
The quantization parameter of this less important coding is "+0011 ", "+0110 ", " 0000 " and " 0011 ", and the 3rd quantization parameter " 0000 " has absolute value 0, thus entropy coding unit 123 output codes " 001 " with indication be not 0 these quantization parameters-"+0011 ", "+0110 " and " 0011 "-symbol (just, positive and negative).
In coding four quantization parameters "+0011 ", "+0110 ", " 0000 " and " 0011 " afterwards, then encode continuous four quantization parameters "+1101 " in back, " 0100 ", "+0111 " and " 0101 " of entropy coding unit 123.
The most significant digit of the individual quantization parameters of four (w) "+1101 " of current input, " 0100 ", "+0111 " and " 0101 " is " 4 ", it is for the quantization parameter with maximum value "+1101 ", the numerical digit at 1 place of high order, and this most significant digit " 3 " with the preceding once quantization parameter of coding is different, so the sign indicating number 1 of entropy coding unit 123 output indication most significant digits changes.
In addition, most significant digit before is 3, and most significant digit is 4 specifically, so the sign indicating number 0 of entropy coding unit 123 output indication most significant digits increases, shown in right side among the figure.
In addition, what sign indicating number entropy coding unit 123 output indication most significant digits increased.In this case, the change amount of most significant digit be 1 (=4-3), so entropy coding unit output 0 (=1-1) individual zero, and further export one 1 (that is, output code 1).
Then, entropy coding unit 123 output codes " 1101010001111010 " are wherein arranged each sign indicating number absolute value, most significant digit " 1101 ", " 0100 ", " 0111 " and " 1010 " of the individual quantization parameters of four (w) "+1101 ", " 0100 ", "+0111 " and " 1010 " of this less important coding of indication in order.
After the sign indicating number of the absolute value of output indication quantization parameter, entropy coding unit 123 its absolute values of output indication are not each the sign indicating numbers of symbol of 0 the individual quantization parameter of four (w).
The quantization parameter of this less important coding is "+1101 ", " 0100 ", "+0111 " and " 1010 ", and the symbol of these quantization parameters is positive and negative, positive and negative successively, shown in bottom right among the figure, entropy coding unit 123 output codes " 0101 " are as the sign indicating number of the symbol of each quantization parameter of indication.
The entropy coding unit 123 individual input quantization parameter of continuous predetermined quantity (w) of encoding thus.Therefore, whether at all quantization parameters of the row that will encode from entropy coding unit 123 output indication all is after all quantization parameters of 0 sign indicating number and this row of output indication not all are 0 sign indicating number, then, the sign indicating number of the symbol of the sign indicating number of the absolute value (bit-planes is represented) of the sign indicating number of the most significant digit of w quantization parameter of output indication, w quantization parameter of indication and indication quantization parameter.
For the sign indicating number of the most significant digit of the sign indicating number of the symbol of the sign indicating number of the absolute value of the sign indicating number of the most significant digit of indication this w quantization parameter, w quantization parameter of indication and indication quantization parameter, the ensuing w of an indication quantization parameter, indicate this w quantization parameter absolute value yard and indicate this quantization parameter symbol yard be repeated to export, till all quantization parameters of this row all are encoded.
Now, to being described according to raster scan order coded quantization coefficient, but the order of coded quantization coefficient is not necessarily according to raster scan order.For example, under the situation of the quantization parameter of the sub-band shown in Figure 20 of just encoding, can carry out such layout, wherein in the position (0,0), (0,1), (0,2) and (0,3) (promptly, go each the position of left end of L1 in the drawings to row L4) on quantization parameter be encoded, and follow in the position (1,0), (1,1), (1,2) and the quantized data on (1,3) be encoded, the rest may be inferred, four locational quantization parameters of vertical alignment among the figure are taken as w quantization parameter and in order with its coding, once encode w.
The entropy coding unit 123 of the aforesaid processing of execution shown in Fig. 1 is configured to as shown in figure 22 in further detail.
Be provided (input) to row determining unit 161, most significant digit computing unit 163, significant digit extraction unit 165 and symbol extraction unit 167 from the quantization parameter of quantifying unit 122 (Figure 19) output.
Row determining unit 161 determines whether from all quantization parameters of the delegation that will encode of quantifying unit 122 inputs all be 0, and will indicate the information of determining the result to offer VLC coding unit 162.
Whether all quantization parameters of the row that the definite result's who makes based on indication row determining unit 161 information, VLC coding unit 162 will be encoded to the 169 output indications of sign indicating number link unit all are 0 sign indicating number.
Most significant digit computing unit 163 calculates from the most significant digit of w continuous quantization parameter of quantifying unit 122 inputs, and will indicate the information of its result of calculation to be provided to VLC coding unit 164 and significant digit extraction unit 165.
Based on the information from the indication result of calculation of most significant digit computing unit 163, VLC coding unit 164 will indicate the sign indicating number of the most significant digit of w quantization parameter to offer yard link unit 169.
Based on information from the indication result of calculation of most significant digit computing unit 163, the significant digit of w the quantization parameter that provides from quantifying unit 122 is provided for significant digit extraction unit 165, and the significant digit of the quantization parameter of extraction (data) is offered VCL coding unit 166 and symbol extraction unit 167.
The extraction symbol that VLC coding unit 168 coding provides from symbol extraction unit 167 (data), and will indicate thus obtained quantization parameter symbol yard offer yard link unit 169.
Whether all quantization parameters of the indication row that the link of sign indicating number link unit 169 provides from VLC coding unit 162, VLC coding unit 164, VLC coding unit 166 and VLC coding unit 168 respectively all are the sign indicating number of the symbol of the sign indicating number of absolute value of sign indicating number, indication quantization parameter of 0 sign indicating number, indication most significant digit and indication quantization parameter, and it is output as coded image (data).
Then, with reference to the encoding process of the flow chart description image encoding apparatus 111 (Figure 19) among Figure 23.This encoding process is wanting image encoded (data) to begin after being imported into wavelet transform unit 121.
In step S111, wavelet transform unit 121 makes input picture stand wavelet transformation, and input picture is divided into a plurality of sub-bands, and the wavelet coefficient of each sub-band is offered quantifying unit 122.
In step S112, the wavelet coefficient that quantifying unit 122 quantifications provide from wavelet transform unit 121, and will offer entropy coding unit 123 as the quantization parameter that its result obtains.Therefore, the quantization parameter with each position that represent with bit-planes, in sub-band of for example describing with reference to Figure 21 is input to entropy coding unit 123.
In step S113, entropy coding unit 123 is carried out entropy coding and is handled, and finishes encoding process.The details that entropy coding is handled will described after a while, in handling as the entropy coding of describing with reference to Figure 21, the individual quantization parameter of once encoding and provide from quantifying unit 122 in entropy coding unit 123 of continuous predetermined quantity (w), and all quantization parameters of the row that will encode of output indication whether all be the most significant digit of 0 sign indicating number, w quantization parameter of indication sign indicating number, indication quantization parameter absolute value yard and indicate quantization parameter symbol yard as coded image (data).
Thus, image encoding apparatus 111 codings and output input picture.
Then, handle corresponding to the entropy coding of the processing among the step S113 among Figure 23 with reference to Figure 24 description.
Among the step S112 in Figure 23, be provided to capable determining unit 161, most significant digit computing unit 163, significant digit extraction unit 165 and the symbol extraction unit 167 of entropy coding unit 123 (Figure 22) from the quantization parameter of quantifying unit 122 outputs.
In step S141, the variable y that row determining unit 161 is got the row of the sub-band that indication will encode now is y=0, and stores it.
For example, in the quantization parameter of the sub-band shown in coding Figure 20, the variable y that row determining unit 161 is got each row of indication (row L1 is to row L6) is y=0.Be noted that and capable y by variable y indication indicate each position on the row of sub-band (x, the y coordinate of y) locating is the row of y.Therefore, the variable y of the determining unit of being expert at 161 storages for example is under the situation of y=0, and the row of being indicated by this variable becomes capable L1, and the locational y coordinate of each on this row all is 0.
In step S142, it is Binit=0 that most significant digit computing unit 163 is got the variable Binit that indicates be expert at (y-1) (previous row of the capable y that the variable y in determining unit 161 is expert in storage is indicated) to go up the most significant digit of w the quantization parameter of importing for the first time, and stores it.
For example, be expert at (y-1) be under the situation of capable L1 shown in Figure 20, the value of the variable Binit of the most significant digit of w quantization parameter of input is a w quantization parameter of the left margin of the capable L1 from figure to indicate be expert at (y-1) to go up for the first time, promptly, in the position (0,0), (1,0) ..., the most significant digit of w quantization parameter on (w-1,0).In addition, the variable y in determining unit 161 is expert in storage is under the situation of y=0, and row (y-1) does not exist, so the value of variable Binit is Binit=0.
In step S143, row determining unit 161 determines whether the quantization parameter (absolute value) of the capable y that the variable y of wherein storage are indicated is 0 entirely.For example, when the y that is expert at was shown in Figure 20 capable L1, row determining unit 161 is determined to be expert at, and (x, y) all quantization parameters on all were that all quantization parameters all are 0 under 0 the situation for position on the L1.
In step S143, make quantization parameter and be entirely under 0 the situation about determining, 161 generations of row determining unit all are 0 information about all quantization parameters, and provide it to VLC coding unit 162 and most significant digit computing unit 163, and flow process advances to step S144.
In step S144, based on the information that about all quantization parameters all is 0, all quantization parameters of the row that VLC coding unit 162 will be encoded to sign indicating number link unit 169 output (providing) indication all are 0 sign indicating number 0.The sign indicating number link unit 169 obtain from VLC coding unit 162 provide the sign indicating number 0, and without change with its output as the row y quantization parameter coding result and obtain the sign indicating number.
In step S145, the value of the variable Binit that most significant digit computing unit 163 is wherein stored is set to Binit=0, and all is 0 information based on what come determining unit 161 voluntarily about all quantization parameters, more new variables Binit.
In step S146, row determining unit 161 determines whether there is any untreated row in the row of the sub-band of just encoding.That is to say whether quantization parameters of all row of row determining unit 161 definite sub-bands of just encoding are encoded.For example, under the situation of the quantization parameter of the sub-band shown in Figure 20 of having encoded, row determining unit 161 is expert at and is determined not exist untreated row on the point that L1 has been encoded to all the locational quantization parameters on the L6.
Make in step S146 and existing in the untreated row, row determining unit 161 makes flow process advance to step S147 and is coded in each locational quantization parameter on the next line (that is, going (y+1)).
In step S147, row determining unit 161 will indicate the variable y of the row of storing to increase progressively to be y=y+1, and flow process turns back to step S143, and carries out above-mentioned subsequent processes once more.
On the contrary, make in step S146 and not existing in the untreated row, the quantization parameters that constitute all row of sub-band all are encoded, and therefore row determining unit 161 finishes entropy codings and handles, and flow process is returned the step S113 among Figure 23, and encoding process finishes.
In addition, the quantization parameter of being trip y among the step S143 in Figure 24 is not 0 in (exist be not 0 quantization parameter) entirely, it is not the information of 0 (existence is not 0 quantization parameter) entirely that row determining unit 161 generates about quantization parameter, provide it to VLC coding unit 161 and most significant digit computing unit 163, and flow process advances to step S148.
In step S148, based on come determining unit 161 voluntarily, be not 0 information entirely about quantization parameter, the quantization parameter of the row that VLC coding unit 162 will be encoded to 169 output (providing) indications of sign indicating number link unit is not 0 sign indicating number 1 entirely.
In step S149, based on come determining unit 161 voluntarily, be not 0 information entirely about quantization parameter, the value that most significant digit computing unit 163 is provided with variable x is x=0, and storage of variables x, wherein the x coordinate of the position on the capable y of first quantization parameter that will import in w the quantization parameter that variable x indication will be encoded now.
For example, the y that is expert at is under the situation of the capable L1 shown in Figure 20, the value indication of the variable x of most significant digit computing unit 163 storages, w continuous position (x, 0) on the capable L1 that will encode, (x+1,0) ..., (x+w-1, the x coordinate of the top-left position (x, 0) 0).
In addition, in step S149, the value of the variable B of the most significant digit of w the quantization parameter of once encoding before most significant digit computing unit 163 is indicated is set to B=Binit, and storage of variables B.That is to say that most significant digit computing unit 163 is updated to the wherein value of the variable Binit of storage with the value of variable B, and the value of the variable B behind the storage update.
After the value of new variables B more, most significant digit computing unit 163 provides the value of the variable B (most significant digit) after indication is upgraded to VLC coding unit 164 and significant digit extraction unit 165.In addition, the value of the variable B that provides from most significant digit computing unit 163 of each storage of VLC coding unit 164 and significant digit extraction unit 165.
In step S150, entropy coding unit 123 is carried out the w group coding and is handled.The details that the w group coding is handled will described after a while, and in the w group coding was handled, w the continuous quantization parameter that the 123 pairs of storages in entropy coding unit are expert on the indicated capable y of variable y in the determining unit 161 encoded.
Now, by storage be expert in the determining unit 161 variable y and be stored in position on the capable y that variable x identified in the most significant digit computing unit 163 be (x, y), w continuous position on the row y is the continuous position (x on the row y, y), (x+1, y) ..., (x+w-1, y).That is to say, in the w group coding is handled, entropy coding unit 123 coding sites (x, y), (x+1, y) ..., (x+w-1, the quantization parameter on y) each.
In step S151, most significant digit computing unit 163 determines whether there is untreated quantization parameter on the row y.That is to say most significant digit computing unit 163 determines whether all be encoded by be expert at all quantization parameters of the position on the indicated capable y of variable y in the determining unit 161 of storage.
Determine to exist in the untreated quantization parameter on the row y in step S151, most significant digit computing unit 163 advances to the step S152 ensuing w quantization parameter of encoding with flow process.
In step S152, the variable x that most significant digit computing unit 163 will wherein be stored is taken as x=x+w, and flow process is returned step S150.Therefore, in the back the position on the code line y in the processing of step S150 (x+w, y), (x+w+1, y) ..., (x+2w-1, the quantization parameter of y) each.
In addition, do trip and do not exist in the untreated quantization parameter on the y in step S151, all the locational quantization parameters on the row y all are encoded, so most significant digit computing unit 163 returns flow process to step S146, and carry out processing subsequently.
Therefore, entropy coding unit 123 is according to raster scan order, at every turn with each locational quantization parameter of predetermined quantity coding sub-band.
Therefore, by according to raster scan order, each locational quantization parameter of coding sub-band (each predetermined quantity is individual), the quantization parameter of input can be processed according to their order of input, and can reduce the delay that causes owing to the quantization parameter coding.
Then, with the w group coding processing of describing corresponding to the processing of the step S150 among Figure 24.
In step S181, most significant digit computing unit 163 is got the y that identified of variable x by the wherein storage position on capable, and at w continuous position (x, y), (x+1, y) ..., (x+w-1, y) in, get the value of the significant digit of quantization parameter as variable Bnew with maximum value, and store this variable Bnew, wherein Bnew indicates the most significant digit of w quantization parameter will encoding now.
In addition, most significant digit computing unit 163 is with the most significant digit of w quantization parameter of acquisition, that is, the value of variable Bnew offers VLC coding unit 164 and significant digit extraction unit 165.
For example, quantization parameter at w continuous position is quantization parameter " 0101 ", "+0011 ", " 0110 " and "+0010 ", as shown in figure 21, the quantization parameter that has maximum value in these quantization parameters is " 0110 ", and its significant digit is " 3 ", it is the numerical digit at 1 place of high order of " 0110 ", so the value of variable Bnew is set as 3.
In step S182, VLC coding unit 164 determines whether B=Bnew.That is to say that VLC coding unit 164 is determined before the indication once the value of the variable B of the maximum significant digit of w quantization parameter of coding, and whether the value with (providing from most significant digit computing unit 163) variable Bnew of the maximum significant digit of indicating w quantization parameter will encoding now is identical.
Make in step S182 in the determining of B=Bnew, VLC coding unit 164 advances to step S183 with flow process, and the most significant digit of w quantization parameter will encoding from now on to the 169 output indications of sign indicating number link unit yard 0.After the sign indicating number 0 of output indication most significant digit, the processing of the processing among the VLC coding unit 164 skips steps S184 in the step S188, and flow process advanced to step S189.
On the contrary, in step S182, make B=Bnew invalid definite in, VLC coding unit 164 advances to step S184 with flow process, and (because most significant digit change) sign indicating number 1 of changing to sign indicating number link unit 169 output indication most significant digits.
In step S185, VLC coding unit 164 obtains to satisfy the Integer n and the m of expression (8).
Bnew=B+(n+1)×(-1)^m ...(8)
Now, the expression of the symbol " ^ " in the expression formula (8) power.Therefore, (1) ^m means the m power of (1).
For example, under the situation of Bnew=3 and B=0, obtain n=2 and m=0 as the n and the m that satisfy expression formula (8).Compare Bnew and variable B, the difference between the absolute value of the value of the absolute value of the value of variable Bnew and variable B is big more, and then the value of the n in the expression formula (8) is big more.In addition, under the situation of value greater than the value of variable B of variable Bnew, the value of m is 0, and on the contrary, under the situation of value less than the value of variable B of variable Bnew, the value of m is 1.Therefore, to can be described as the indication most significant digit be to increase or reduce to the value of the m in the expression formula (8).
In step S186, VLC coding unit 164 is exported the sign indicating number of the value of the m that satisfies expression formula (8) as 1 bit to sign indicating number link unit 169, and this yard indication most significant digit is to increase or reduce.For example, be under 0 the situation in the m value that satisfies expression formula (8), the sign indicating number 0 that VLC coding unit 164 output indication most significant digits increase.
In step S187, VLC coding unit 164 is as many 0 to sign indicating number link unit 169 output and the value of the n that satisfies expression formula (8), then exports the sign indicating number of the change amount that is used as indicating most significant digit for 1 then.That is to say that n 0 and one 1 of VLC coding unit 164 output are as the sign indicating number of indication most significant digit change amount.
For example, be that VLC coding unit 164 is to the sign indicating number of sign indicating number link unit 169 outputs " 001 " as indication most significant digit change amounts under 2 the situation in the value of the n that satisfies expression formula (8).
Therefore, the sign indicating number, the indication most significant digit that change to sign indicating number link unit 169 output indication most significant digits of VLC coding unit 164 be the sign indicating number of the change amount of the sign indicating number that increases or reduce and the indication most significant digit most significant digit that is used as indicating w quantization parameter will encoding from now on yard.
In step S188, most significant digit computing unit 163 is made as B=Bnew with the value of the variable B of storage, and flow process is advanced to step S189.That is to say that most significant digit computing unit 163 is updated to the wherein value of the variable Bnew of storage with the value of the variable B of storage.In addition, VLC coding unit 164 and significant digit extraction unit 165 also are made as B=Bnew with the value of variable B of storage.
The value of variable B is set as B=Bnew or exports in step S183 after the sign indicating number of the most significant digit of indicating quantization parameter in step S188, be under 0 the situation in the value of variable x of storage, in step S189, most significant digit computing unit 163 is made as Binit=B with the value of the variable Binit of storage.
That is to say, be under 0 the situation in the value of variable x of storage, the row (y-1) of most significant digit computing unit 163 by indication is wherein stored gone up the value of variable B that the value of the variable Binit of the most significant digit of w quantization parameter of input is for the first time got the most significant digit of w the quantization parameter of once encoding before the indication, more new variables Binit.
Therefore, under the situation of variable x=0, the value of variable Binit is set as Binit=B, can use thus with at previous row (for example, the dependency relation of the most significant digit of w the quantization parameter that begins from x=0 row y), w the quantization parameter that begins from x=0 in the next line (for example, going (y+1)) carried out the coding of quantization parameter.
In step S190, significant digit extraction unit 165 is got predetermined variable i, and variable i changes to (w-1) from 0, and (x-i y) extracts the significant digit of quantization parameter in the quantization parameter on so that the position from the y that is expert at.Significant digit extraction unit 165 offers VLC coding unit 166 and symbol extraction unit 167 with the significant digit of the quantization parameter that extracts (data).In addition, VLC coding unit 166 will indicate the sign indicating number of the absolute value of w quantization parameter to output to yard link unit 169 based on the significant digit that provides from significant digit extraction unit 165 (coding significant digit).
Now, (x+i, y) value of the x on is the value that is stored in the variable x in the most significant digit computing unit 163 in the position.For example, the value of variable x in being stored in most significant digit computing unit 163 is under 0 the situation, the value that is stored in the variable B in the significant digit extraction unit 165 is 3, and quantifying unit 122 provides the individual quantization parameter of the w shown in Figure 21 (four) " 0101 " to significant digit extraction unit 165, "+0011 ", " 0110 ", "+0010 ", they are corresponding to each position (X+i, y) (0≤i≤3), promptly, position (0, y), (1, y), (2, y) with (3, y) quantization parameter on, significant digit extraction unit 165 extracts significant digit from these quantization parameters.
In this case, the value that is stored in the variable B in the significant digit extraction unit 165 is 3, and significant digit is 3 numerical digits, so significant digit extraction unit 165 is from corresponding to position (x, y) extract in the quantization parameter " 0101 " " 101 ", it is three numerical digits of lowest ordered.
In an identical manner, significant digit extraction unit 165 is successively from position (x+1, y), position (x+2, y) and position (x+3, y) extraction value " 011 ", " 110 " and " 010 " in the quantization parameter on " 0011 ", " 0110 " and " 0010 ", they are three numerical digits that its lowest ordered begins.Therefore, the significant digit of quantization parameter " 0101 ", " 0011 ", " 0110 " and "+0010 " (sign indicating number) " 101 ", " 011 ", " 110 " and " 010 " are output to VLC coding unit 166 and symbol extraction unit 167.VLC coding unit 166 will be encoded, and will indicate the sign indicating number " 101011110010 " of the absolute value of w quantization parameter to output to yard link unit 169 from sign indicating number " 101 ", " 011 ", " 110 " and " 010 " that significant digit extraction unit 165 provides.
In step S191, predetermined variable i is got in symbol extraction unit 167, and variable i changes to (w-1) from 0, so that from the absolute value that is provided by quantifying unit 122 is not position (x+i 0 the quantization parameter, on the row y, y) extract the symbol of quantization parameter in the quantization parameter on, and the symbol that extracts (data) is offered VLC coding unit 168.VLC coding unit 168 is encoded from the symbol of symbol extraction unit 167, and indicates the sign indicating number of the symbol of thus obtained quantization parameter to 169 outputs of sign indicating number link unit.
After the sign indicating number of the symbol of indicating quantization parameters from 168 inputs of VLC coding unit, 169 links of sign indicating number link unit are respectively from VLC coding unit 162, VLC coding unit 164, whether all quantization parameters of this row of indication that VLC coding unit 166 and VLC coding unit 168 provide all are 0 sign indicating number, the sign indicating number of the most significant digit of indication quantization parameter, the sign indicating number of the symbol of the sign indicating number of the absolute value of indication quantization parameter and indication quantization parameter, the sign indicating number of link is exported as coded image, finishing the w group coding handles, flow process turns back to the step S150 among Figure 24, and carries out the processing from step S151.
Now, (x+i, y) value of the x on is the value that is stored in the variable x in the most significant digit computing unit 163 in the position.For example, the value of variable x in being stored in most significant digit computing unit 163 is under 0 the situation, quantifying unit 122 provides the individual quantization parameter of w (four) " 0101 ", "+0011 ", " 0110 " and "+0010 " shown in Figure 21, they are corresponding to each position (X+i, y) (0≤i≤3), promptly, position (0, y), (1, y), (2, y) and (3, the y) quantization parameter on, be not 0 in " 0101 ", "+0011 ", " 0110 " and "+0010 ", so symbol extraction unit 167 extract symbol from these quantization parameters.
In this case, symbol extraction unit 167 is from (extracting the symbol "-" of quantization parameter corresponding to the position among the x, quantization parameter y) " 0101 ".
In an identical manner, symbol extraction unit 167 is successively from corresponding to position (x+1, y), the position (x+2, y) and the position (extract symbol "+", "-", "+" of quantization parameter among the x+3, quantization parameter y) "+0011 ", " 0110 ", "+0010 ".Therefore, symbol "-", "+", "-" and "+" with quantization parameter " 0101 ", "+0011 ", " 0110 ", "+0010 " outputs to VLC coding unit 168 from symbol extraction unit 167.The symbol "-" of the quantization parameter that VLC coding unit 168 will provide from symbol extraction unit 167, "+", "-" and "+" coding.
For example, after incoming symbol "-", VLC coding unit 168 output codes 1, and after incoming symbol "+", output code 0, thereby the symbol of coding input.In this case, the symbol " " of quantization parameter, "+", "-" and "+" are imported into VLC coding unit 168, thereby the sign indicating number of the symbol of quantization parameter is indicated in sign indicating number " 1010 " conduct that VLC coding unit 168 is made up of sign indicating number " 1 ", " 0 ", " 1 ", " 0 " to 169 outputs of sign indicating number link unit.
Therefore, entropy coding unit 123 is the quantization parameter of a collection of coding sub-band with predetermined unit, and the sign indicating number of the absolute value of the sign indicating number of the most significant digit of output indication quantization parameter, indication quantization parameter and indicate the sign indicating number of the symbol of quantization parameter.
Therefore, with predetermined unit is that the quantization parameter of a collection of coding sub-band has been exempted the needs of bit-planes being carried out repeatedly to handle based on many coding paths (unlike the situation with JPEG 2000 coded images), in addition, carry out variable code length coding, so can significantly reduce the amount of encoding process.Therefore, carries out image is encoded at a relatively high speed, and can so expensively not realize the encoding device of real-time coding high-definition picture.
In addition, under the situation of coded image, do not need the code length of explicitly coded image encoding device 111, thus the amount of sign indicating number can be reduced, and do not need to manage information about code length.
Note, although described the significant digit of in w quantization parameter, getting quantization parameter value above as the variable Bnew of indication most significant digit with maximum value, yet, the value of variable Bnew is the value that is equal to or greater than the significant digit of the quantization parameter that has maximum value in w the quantization parameter, and is just enough.If the value of variable Bnew is bigger, then indicate the sign indicating number amount of sign indicating number of the absolute value of quantization parameter to increase, but can be made as the value of the significant digit that is equal to or greater than quantization parameter by value, reduce yard increase of measuring of the sign indicating number of the absolute value of indicating quantization parameter variable Bnew with maximum value.
Then, with the image decoding apparatus of describing about image encoding apparatus 111 image encoded are decoded.
Figure 26 is the block diagram that the ios dhcp sample configuration IOS DHCP of image decoding apparatus is shown.
Inverse quantization are carried out from the quantization parameters that entropy decoding unit 221 provides in 222 pairs of inverse quantization unit, and the wavelet coefficient of each sub-band that will obtain by inverse quantization offers wavelet inverse transformation unit 223.
Wavelet inverse transformation unit 223 makes the wavelet coefficient of each sub-band that provides from inverse quantization unit 222 stand wavelet inverse transformation, and will export as decoded picture as the image that its result obtains.
In addition, the entropy decoding unit 221 of carrying out the image decoding apparatus 211 of this processing for example is specifically configured to as shown in figure 27.
More particularly, entropy decoding unit 221 has yard division unit 251, row determining unit 252, generation unit 253, VLC decoding unit 254, VLC decoding unit 255, VLC decoding unit 256, quantization parameter synthesis unit 257 and switch element 258.
Sign indicating number division unit 251 is based on each information that provides from row determining unit 252, VLC decoding unit 254, VLC decoding unit 255 and VLC decoding unit 256, divide sign indicating number, and the division of predetermined length yard offered capable determining unit 252, VLC decoding unit 254, VLC decoding unit 255 or VLC decoding unit 256 as the coded image of having imported.
That is to say, the quantization parameter that the sign indicating number that sign indicating number division unit 251 will import is divided into a code line of indication whether be entirely 0 sign indicating number, w coding of indication quantization parameter most significant digit sign indicating number, indicate w quantization parameter of encoding absolute value sign indicating number and indicate the sign indicating number of the symbol of the quantization parameter of encoding, and it is offered capable determining unit 252, VLC decoding unit 254, VLC decoding unit 255 and VLC decoding unit 256 respectively.
Row determining unit 252 is based on the sign indicating number that provides from sign indicating number division unit 251, and whether the quantization parameter of the delegation of the sub-band of definite coding is 0 entirely, and will indicate its information of determining the result to offer yard division unit 251, generation unit 253 and VLC decoding unit 254.
Significant digit based on the quantization parameter that provides from VLC decoding unit 255, the sign indicating number decoding of the symbol of the indication quantization parameter that VLC decoding unit 256 will provide from sign indicating number division unit 251, and the symbol of thus obtained quantization parameter (data) offered quantization parameter synthesis unit 257.In addition, VLC decoding unit 256 provides result's the information of sign indicating number of the symbol of instruction decoding indication quantization parameter to sign indicating number division unit 251.
Quantization parameter synthesis unit 257 is based on the information of the indication most significant digit that provides from VLC decoding unit 254, the significant digit of the quantization parameter that will provide from VLC decoding unit 255 is synthetic with the symbol of the quantization parameter that provides from VLC decoding unit 256, and a thus obtained w quantization parameter is provided to switch element 258.
Figure 28 is the more specifically block diagram of configuration that yard division unit 251 is shown.
Sign indicating number division unit 251 has control unit 271 and memory 272.After the sign indicating number as coded image was transfused to, the sign indicating number that control unit 271 will be imported offers memory 272 so that interim storage.
Control unit 271 is then based on each information that provides from row determining unit 252, VLC decoding unit 254, VLC decoding unit 255 and VLC decoding unit 256, read the sign indicating number of predetermined length in the sign indicating number from temporarily be stored in memory 272, and provide it to capable determining unit 252, VLC decoding unit 254, VLC decoding unit 255 or VLC decoding unit 256.
In addition, except the ios dhcp sample configuration IOS DHCP shown in Figure 28, sign indicating number division unit 251 can be configured to as shown in figure 29.
Sign indicating number division unit 251 shown in Figure 29 has control unit 291, switch 292 and node 293-1 to node 293-4.
After the sign indicating number as coded image is transfused to, control unit 291 is based on each information that provides from row determining unit 252, VLC decoding unit 254, VLC decoding unit 255 and VLC decoding unit 256, control switch 292, and the sign indicating number of predetermined length offered capable determining unit 252, VLC decoding unit 254, VLC decoding unit 255 or VLC decoding unit 256.
That is to say, node 293-1 is connected respectively to capable determining unit 252, VLC decoding unit 254, VLC decoding unit 255 and VLC decoding unit 256 to each of node 293-4, and control unit 291 selects node 293-1 to the supply destination of one of node 293-4 as sign indicating number, and the connection between control switch 292 and the selected node.
Next, with reference to the decoding processing of the flow chart description image decoding apparatus 211 shown in Figure 30.This decoding processing begins when the sign indicating number as image encoded is imported into entropy decoding unit 221.
In step S231, entropy decoding unit 221 is carried out the entropy decoding processing, carries out the entropy decoding as the sign indicating number of the coded image of having imported, and thus obtained quantization parameter is offered inverse quantization unit 222.Though the details of entropy decoding processing will described in detail after a while, but for this entropy decoding processing, the quantization parameter of w decoding of entropy decoding unit 221 1 times on the continuous positions in the delegation of coding sub-band, and the quantization parameter of decoding offered inverse quantization unit 222.
In step S232, the inverse quantization of the quantization parameter that provides from entropy decoding unit 221 is provided for inverse quantization unit 222, and the wavelet coefficient of each sub-band that will obtain by inverse quantization offers wavelet inverse transformation unit 223.
In step S233, wavelet inverse transformation unit 223 makes the wavelet coefficient of each sub-band that provides from inverse quantization unit 222 stand wavelet inverse transformation, and will export as the image that its result obtains, and finishes decoding processing thus.
Like this, image decoding apparatus 211 is decoded coded image and is exported.
Then, with reference to the entropy decoding processing of the flow chart description among Figure 31 corresponding to the processing of the step S231 among Figure 30.
In step S261, the variable y that row determining unit 252 is got the row of the sub-band that indication will decode now is y=0, and stores it.
In step S262, it is Binit=0 that VLC decoding unit 254 is got the variable Binit that indicates be expert at (y-1) (previous row of the capable y that the variable y in determining unit 252 is expert in storage is indicated) to go up the most significant digit of w the quantization parameter of importing for the first time, and stores it.
For example, be expert at (y-1) be under the situation of the capable L1 shown in Figure 20, indication be expert at (y-1) go up the most significant digit of w quantization parameter that value of the variable Binit of the most significant digit of w quantization parameter of input for the first time is the left margin of the capable L1 from figure.In addition, the variable y in determining unit 252 is expert in storage is under the situation of y=1, and row (y-1) does not exist, so the value of variable Binit is Binit=0.
In addition, in step S262, sign indicating number division unit 251 provides 1 bit code of input code to row determining unit 252, and whether all quantization parameters of the row that will decode now as indication all are 0 sign indicating number.
In step S263, whether this 1 bit code that row determining unit 252 determines to read in from sign indicating number division unit 251 (providing) is 0, generates the information that the result is determined in indication, and offers generation unit 253, VLC decoding unit 254 and sign indicating number division unit 251.
Make this yard be in step S263 under 0 the situation about determining, the quantization parameter that this means capable y is 0 entirely, and therefore row determining unit 252 advances to step S264 with flow process.In step S264, generation unit 253 thinks that based on coming the indication of determining unit 252 voluntarily to determine result's information all quantization parameters on the capable y are 0.Generation unit 253 generates the sign indicating number of the quantization parameter of indication row y then, and provides it to switch element 258.
For example, a quantization parameter represent with four bits as shown in figure 21 and delegation on exist under the situation of five quantization parameters, it is individual zero that generation unit 253 generates 20 (=4 * 5), as the sign indicating number of the quantization parameter of indicating row y, and provides it to switch element 258.These 20 of providing from generation unit 253 to inverse quantization unit 222 output of switch element 258 continuous 0, as the sign indicating number of the quantization parameter of indication delegation.
In step S265, VLC decoding unit 254 is based on coming the indication of determining unit 252 voluntarily to determine result's information, and the value of the variable Binit of storage wherein is made as Binit=0, and new variables Binit more.
In step S266, row determining unit 252 determines whether there is any untreated row in the row of the sub-band of just decoding.That is to say whether the locational quantization parameters on all row of row determining unit 252 definite sub-bands of just decoding are decoded.
Make in step S266 and existing in the determining of untreated row, row determining unit 252 makes flow process advance to the decode quantization parameter of each position on the next line (y+1) of the indicated capable y of variable y in being stored in himself of step S267.
In step S267, row determining unit 252 will indicate the variable y of row of storage to increase progressively to be y=y+1, and flow process turns back to step S263, and execution is with reprocessing.
On the contrary, make in step S266 and not existing in the determining of untreated row, the quantization parameters of all row that constitute sub-band are all decoded, and therefore row determining unit 252 finishes the entropy decoding processing, flow process is returned the step S231 among Figure 30, and carries out the processing from step S232.
In addition, make this yard among the step S263 in Figure 31 and be not in 0 determine, row determining unit 252 advances to step S268 with flow process.In step S268, determine result's information based on coming the indication of determining unit 252 voluntarily, the value that VLC decoding unit 254 is provided with variable x is x=0, and storage of variables x, wherein the coordinate x of the position on the capable y of first quantization parameter that will import in w the quantization parameter that variable x indication will be decoded now.
In addition, in step S268, VLC decoding unit 254 gets before the indication once that the value of the variable B of the most significant digit of w quantization parameter of decoding is B=Binit, and stores this variable B.That is to say that VLC decoding unit 254 is updated to the value of the variable Binit that is stored and the value of the variable B behind the storage update with the value of variable B.
In addition, in step S268, sign indicating number division unit 251 is based on coming the indication of determining unit 252 voluntarily to determine result's information, provides next bit code of input code to VLC decoding unit 254, the most significant digit of w quantization parameter will encoding from now on as indication changed yard.
In step S269, entropy decoding unit 221 is carried out decoding processing is set.The details of w group decoding processing will described after a while, and in w group decoding processing, w the continuous quantization parameter that entropy decoding unit 221 is expert at storage on the indicated capable y of variable y in the determining unit 252 decoded.
In step S270, VLC decoding unit 254 determines whether there is untreated quantization parameter on the row y.That is to say that VLC decoding unit 254 determines whether locational all quantization parameters of being expert on the indicated capable y of variable y in the determining unit 252 by storage are all decoded.
Determine to exist in the untreated quantization parameter on the row y in step S270, VLC decoding unit 254 advances to the step S271 ensuing w quantization parameter of decoding with flow process.
In step S271, the variable x that VLC decoding unit 254 will wherein be stored is taken as x=x+w, and flow process is returned step S269.Therefore, the position in the processing of the step S269 of back on the decoded row y (x+w, y), (x+w+1, y) ..., (x+2w-1, the quantization parameter of y) each.
In addition, do trip and do not exist on the y in the determining of untreated quantization parameter in step S270, all the locational quantization parameters on the row y are all decoded, so VLC decoding unit 254 returns flow process to step S266, and carry out processing subsequently.
Therefore, entropy decoding unit 221 is according to raster scan order, decode each locational quantization parameter of sub-band of each predetermined quantity.
Therefore, by according to raster scan order, each locational quantization parameter of each predetermined quantity decoding sub-band can be handled the quantization parameter of input according to their input sequence, and can reduce the delay of encoding and causing owing to quantization parameter.
Then, with reference to flow chart description shown in Figure 32 w group decoding processing corresponding to the processing of the step S269 among Figure 31.
As mentioned above, in the step S268 of Figure 31,1 bit code that provides the most significant digit of w the quantization parameter that indication will decode whether to change to sign indicating number division unit 251 to VLC decoding units 254.
In the step S311 of Figure 32, whether this 1 bit code that VLC decoding unit 254 determines to read in (providing) is 0.
In step S311, make the sign indicating number that reads in and be under 0 the situation about determining, most significant digit does not change, therefore, VLC decoding unit 254 generates about the unaltered information of most significant digit, and provide it to yard division unit 251, VLC decoding unit 255 and quantization parameter synthesis unit 257, the processing of skips steps S312 in the S314, and flow process advances to step S315.
That is to say, the sign indicating number that whether has changed at the indication most significant digit is under 0 the situation, input followed by 1 bit code 0 of indicating most significant digit whether to change is not that the indication most significant digit is the sign indicating number of sign indicating number that increases or reduce and the change amount of indicating most significant digit, but the sign indicating number of the absolute value of indication quantization parameter, therefore skips steps S312 is to step S314, and they are that decoding indication most significant digit is the processing of the increase or the sign indicating number of the change amount of sign indicating number that reduces and indication most significant digit.
On the contrary, make the sign indicating number that reads in be not in step S311 under 0 the situation about determining, most significant digit changes, so VLC decoding unit 254 advances to step S312 with flow process, from sign indicating number division unit 251, read 1 bit code, and its value is stored as predetermined variable m.
In step S313, VLC decoding unit 254 reads in sign indicating number from sign indicating number division unit 251, and till sign indicating number is 1 (till reading in sign indicating number 1), and the quantity of the sign indicating number 0 that will read in till will arriving this moment is stored as variable n.For example, be under 1 the situation at the 3rd sign indicating number that VLC decoding unit 254 reads in from sign indicating number division unit 251, that is to say, read at VLC decoding unit 254 under the situation of sign indicating number " 001 ", 0 the quantity of reading in till 1 to be read in to VLC decoding unit 254 is 2, so VLC decoding unit 254 storages 2 (quantity of the sign indicating number 0 that reads in) are as the value of variable n.
In step S314, VLC decoding unit 254 is from the value of the B of expression (9) acquisition indication most significant digit, and the value of the variable B of storage acquisition.
B=B+(n+1)×(-1)^m...(9)
Now, the value of the new variable B that obtains of expression formula (9) left side expression, the B on right side represents the value of the variable B that stores.In addition, the expression of the symbol " ^ " in the expression formula (9) power.Therefore, (1) ^m means the m power of (1).
When in step S314, obtaining new most significant digit or in step S311, determine that 1 bit code of having read in is 0, VLC decoding unit 254 advances to step S315 with flow process, and be that the value of the variable Binit of storage is set to Binit=B under 0 the situation in the value of variable x of storage.
That is to say, be under 0 the situation in the value of variable x of storage, VLC decoding unit 254 is got indication row (y-1) and is gone up the value of the storing value of the variable Binit of the most significant digit of w quantization parameter of input for the first time as the variable of the most significant digit of indicating w quantization parameter will decoding from now on, and new variables Binit more.
Therefore, under the situation of variable x=0, the value of variable Binit is set as Binit=B, can use thus with at previous row (for example, the dependency relation of the most significant digit of w the quantization parameter that begins from x=0 row y), w the quantization parameter that begins from x=0 in the next line (for example, going (y+1)) carried out the decoding of quantization parameter.
In step S316, VLC decoding unit 255 is got predetermined variable i, and variable i changes to (w-1) from 0, so that with the B bit is that increment is from sign indicating number division unit 251 readout codes, and provide (output) to arrive VLC decoding unit 256 and quantization parameter synthesis unit 257 sign indicating number of the b bit that reads in, as indication be expert at position (x+i, y) sign indicating number of the significant digit of the quantization parameter on the y.In addition, VLC decoding unit 255 generates the information of the significant digit of indication quantization parameter, and provides it to yard division unit 251.
Now, (x+i, y) value of the x on is the value that is stored in the variable x in the VLC decoding unit 254 in the position.For example, the value of variable x in being stored in VLC decoding unit 254 be 0 and the value that is stored in the variable B in the VLC decoding unit 255 be under 3 the situation, VLC decoding unit 255 reads 3 bit code for variable i=0 from sign indicating number division unit 251, and output 3 bit code of reading in as the position (0, the y) significant digit of the quantization parameter on.
In an identical manner, VLC decoding unit 255 reads 3 bit code in addition for variable i=1 from sign indicating number division unit 251, and 3 bit code that output is read in are as position (1, the significant digit of the quantization parameter y), read ensuing 3 bit code for variable i=2 from sign indicating number division unit 251, and 3 bit code that output is read in are as position (2, the significant digit of the quantization parameter y), read ensuing 3 bit code for variable i=3 from sign indicating number division unit 251, and output 3 bit code of reading in as the position (3, the y) significant digit of the quantization parameter on.
In step S317, VLC decoding unit 256 is got predetermined variable i, and variable i changes to (w-1) from 0, and the position (x+i on the y that is expert at, the significant digit of the quantization parameter y) (absolute value) is not under 0 the situation, to read 1 bit code from sign indicating number division unit 251.The sign indicating number that VLC decoding unit 256 is decoded and read then, and provide (output) to arrive quantization parameter synthesis unit 257 the thus obtained sign indicating number, as the symbol of quantization parameter.In addition, VLC decoding unit 256 generates the information of the symbol of indication quantization parameter, and provides it to yard division unit 251.
Now, (x+i, y) value of the x on is taken as the value of the variable x that is stored in the VLC decoding unit 254 in the position.For example, the value of variable x in being stored in VLC decoding unit 254 is for 0 and to provide (indication) from VLC decoding unit 255 be not under the situation of 0 significant digit (sign indicating number), VLC decoding unit 256 is got variable i=0, and read 1 bit code from sign indicating number division unit 251, be under 0 the situation at this yard, vectorization coefficient synthesis unit 257 provides indicating positions (0, the sign indicating number of the symbol " " of the quantization parameter y), and be under 1 the situation at this yard, vectorization coefficient synthesis unit 257 provide indicating positions (0, the y) sign indicating number of the symbol "+" of the quantization parameter on.
In addition, be that (0, y) quantization parameter on does not have symbol, so VLC decoding unit 256 does not read in sign indicating number from sign indicating number division unit 251 in the position under 0 the situation at the absolute value of (indication) significant digit that provides from VLC decoding unit 255 (sign indicating number).
In an identical manner, be not under 0 the situation in the significant digit that provides from VLC decoding unit 255 (absolute value), VLC decoding unit 256 is got variable i=1, and read in 1 bit code from sign indicating number division unit 251, and be under 0 the situation at this yard, vectorization coefficient synthesis unit 257 provides the sign indicating number of designated symbol "-", and is under 1 the situation at this yard, and the sign indicating number of designated symbol "+" is provided.
In addition, not under 0 the situation in the significant digit that next provides from VLC decoding unit 255, VLC decoding unit 256 is got variable i=2, and read 1 bit code from sign indicating number division unit 251, and be under 0 the situation at this yard, vectorization coefficient synthesis unit 257 provides the sign indicating number of designated symbol " ", and is under 1 the situation at this yard, and the sign indicating number of designated symbol "+" is provided.In addition, not under 0 the situation in the significant digit that next provides from VLC decoding unit 255, VLC decoding unit 256 is got variable i=3, and read in 1 bit code from sign indicating number division unit 251, and be under 0 the situation at this yard, vectorization coefficient synthesis unit 257 provides the sign indicating number of designated symbol " ", and is under 1 the situation at this yard, and the sign indicating number of designated symbol "+" is provided.
In step S318, synthetic significant digit that provides from VLC decoding unit 255 of quantization parameter synthesis unit 257 and the symbol that provides from VLC decoding unit 256, export thus obtained quantization parameter by switch element 258 to inverse quantization unit 222, finish w group decoding processing, and flow process is returned the step S269 among Figure 31, and carries out the processing that begins from step S270.
For example, the quantity of the numerical digit of the absolute value of the quantization parameter that export is predetermined.Quantity in the numerical digit of the absolute value of the predetermined quantization parameter that will export is 4 numerical digits, and the indicated most significant digit of information from the indication most significant digit of VLC decoding unit 254 is 3, provide significant digit " 101 " from VLC decoding unit 255, and under the situation of the sign indicating number that designated symbol "-" is provided from VLC decoding unit 255, quantization parameter synthesis unit 257 output quantization parameters " 0101 ".
That is to say, the quantity of the numerical digit of the absolute value of the quantization parameter of exporting is 4 numerical digits, and significant digit is " 101 " (three), therefore quantization parameter synthesis unit 257 gets that a higher order bit is 0 in the significant digit " 101 ", as 4 numerical digit absolute values of quantization parameter " 0101 ".In addition, the absolute value " 0101 " of the symbol "-" of quantization parameter and quantization parameter is synthesized and obtains " 0101 ", and it is exported as quantization parameter.
Noting, is that 257 outputs of quantization parameter synthesis unit do not have the quantization parameter of symbol under 0 the situation in the significant digit that provides from VLC decoding unit 255.For example, quantity in the numerical digit of the absolute value of the predetermined quantization parameter that will export is 4 numerical digits, and the indicated most significant digit of information from the indication most significant digit of VLC decoding unit 254 is 3, and provide under the situation of significant digit " 000 " quantization parameter synthesis unit 257 output quantization parameters " 0000 " from VLC decoding unit 255.
Therefore, entropy decoding unit 221 is the quantization parameter of a collection of decoding sub-band with predetermined unit.
Therefore, be that the coded quantization coefficient of a collection of decoding sub-band has been exempted the needs of bit-planes being carried out repeatedly to handle based on many coding paths (unlike the situation with JPEG 2000 decoded pictures), therefore carries out image decoding quickly with predetermined unit.Therefore, can so expensively not realize the decoding device of real-time decoding high-definition picture.
Now, for above-mentioned image encoding apparatus 111, encode in order when having described the absolute value when coding (or decoding) quantization parameter absolute value of predetermined w quantization parameter, but, SIMD (single-instruction multiple-data) calculation command that is used for general dsp (digital signal processor) or universal cpu by utilization, coding (or decoding) this w quantization parameter, carries out image coding (or decoding) simultaneously quickly (walk abreast).
Now, the example of SIMD operational order comprises MMX (multimedia extension), SSE (stream SIMD expansion), SSE2, the SSE3 that together uses with the CPU of for example Intel Company etc.
Under the situation of the absolute value that uses this SIMD operation instruction to code quantization parameter, the entropy coding unit 123 of image encoding apparatus 111 is configured to for example shown in Figure 33.
Whether all quantization parameters of the indication row that the interim storage indication of the buffer 401 of sign indicating number link unit 169 provides from VLC coding unit 162, VLC coding unit 164, VLC coding unit 166 and VLC coding unit 168 respectively all are the sign indicating number of the symbol of the sign indicating number of absolute value of sign indicating number, indication quantization parameter of 0 sign indicating number, indication most significant digit and indication quantization parameter.
With 32 bits is the storage area of increment management buffer 401, and the sign indicating number (data) that is input in the buffer 401 is divided into sign indicating number that is used for the scalar computing and the sign indicating number storage that is used for the vector computing.That is to say that the storage area storage of one 32 bit is used for the sign indicating number of scalar computing or is used for the sign indicating number of vector computing, as the sign indicating number (data) of interim storage.
For the entropy coding unit 123 shown in Figure 33, use the absolute value of SIMD operational order parallel encoding quantization parameter, the sign indicating number conduct of therefore getting the absolute value of indication quantization parameter is used for the sign indicating number of vector computing, and gets the sign indicating number that other yards conduct is used for the scalar computing.
Note in the following description, in offering 32 bit storage zones of buffer 401, the storage be used for the scalar computing the sign indicating number storage area will be called as the scalar zone, and the storage be used for the vector computing the sign indicating number storage area will be called as vector area.
Then, with reference to Figure 34 the entropy coding of being carried out by entropy coding unit shown in Figure 33 123 is described.
For example, suppose 12 quantization parameters " 0101 " shown in Figure 21, "+0011 ", " 0110 ", "+0010 ", "+0011 ", "+0110 ", " 0000 ", " 0011 ", "+1101 ", " 0100 ", "+0111 " and " 1010 " are input to entropy coding unit 123, shown in Figure 34 is upper left.
With with the described mode same way as of reference Figure 21, whether be yard " 10001 " of most significant digit of quantization parameter " 0101 ", "+0011 ", " 0110 " and "+0010 " of 0 sign indicating number " 1 " and four inputs of indicating head entirely for the sign indicating number link unit 169 of entropy coding unit 123 provides the quantization parameter of the row that indication will encode.
Then, whether by the quantization parameter of indicating the row that will encode is that yard " 110001 " that 0 sign indicating number " 1 " and the sign indicating number " 10001 " of indicating the most significant digit of quantization parameter constitute are stored in the 32 bit scalar zones that provide in the buffer 401 of yard link unit 169, shown in arrow A 11 entirely.
In example shown in Figure 34, be stored in the scalar zone the sign indicating number according to the order that begins from high order bit, store on the direction from left to right in the drawings.After sign indicating number is stored in the whole scalar zone, promptly, after the sign indicating number of 32 bits is stored in the scalar zone, in buffer 401, provide a new scalar zone, and the scalar zone that newly provides is provided successively the sign indicating number that is used for the scalar computing.
After yard " 110001 " that the sign indicating number " 10001 " that by the quantization parameter of the row that will encode of indication whether is the most significant digit of 0 sign indicating number " 1 " and indication quantization parameter entirely constitutes are stored in the scalar zone, then, entropy coding unit 123 (parallel arranged) storage simultaneously in vector area be equivalent to expression input for the first time the individual quantization parameter of w (four) " 0101 ", "+0011 ", " 0110 " and "+0010 " each absolute value most significant digit yard.
As described in reference Figure 21, the most significant digit of quantization parameter " 0101 ", "+0011 ", " 0110 " and "+0010 " is 3, therefore the sign indicating number of representing the absolute value of these four quantization parameters is respectively " 101 ", " 011 ", " 110 " and " 010 ", and shown in arrow A 12, sign indicating number " 101 ", " 011 ", " 110 " and " 010 " of the absolute value of expression quantization parameter are arranged and are stored in the single vector area that offers buffer 401.
Now, vector area further is divided into four 8 bit regions, in four zones of vector area each is wherein according to the order that begins from the higher order bit, the sign indicating number of the absolute value of four quantization parameters of storage representation equal length (bit length) on left-to-right direction from figure.
For the vector area shown in the arrow A 12, in the drawings, in left end 8 bit regions, begin to store the sign indicating number " 101 " of the absolute value of indicating quantization parameter from a left side, rise on a left side in second 8 bit regions and to begin memory code " 011 " from a left side, rise in second 8 bit regions on the right side and to begin memory code " 110 ", in 8 bit regions of low order end, begin memory code " 010 " from a left side from a left side.
In addition, for vector area, in the mode identical with the situation in scalar zone, after sign indicating number is stored in the whole vector area, promptly, after the sign indicating number of 32 bits is stored in the vector area, in buffer 401, provide a new vector area, and the scalar zone that newly provides is provided successively the sign indicating number that is used for the vector computing.
After the sign indicating number of the absolute value of indicating quantization parameter " 0101 ", "+0011 ", " 0110 " and "+0010 " is stored in the vector area, entropy coding unit 123 will indicate the sign indicating number of the symbol of four quantization parameters to be stored in the scalar zone, shown in arrow A 13.
Shown in arrow A 11, whether by the quantization parameter of indicating the row that will encode is that yard " 110001 " that 0 sign indicating number " 1 " and the sign indicating number " 10001 " of indicating the most significant digit of quantization parameter constitute have been stored in the scalar zone entirely, therefore shown in arrow A 13, the sign indicating number " 1010 " of the symbol of indication quantization parameter " 0101 ", "+0011 ", " 0110 " and "+0010 " is stored in the right side of the sign indicating number " 110001 " that is stored in the scalar zone (by the storage of sign indicating number " 110001 " the right).
In addition, after four quantization parameters are encoded, entropy coding unit 123 coding ensuing four quantization parameters "+0011 ", "+0110 ", " 0000 " and " 0011 ".
At first, entropy coding unit 123 compares the most significant digit " 3 " of ensuing four quantization parameters "+0011 " of the most significant digit " 3 " of preceding once four quantization parameters of coding and current coding, "+0110 ", " 0000 " and " 0011 ", because most significant digit does not change, therefore will indicate the sign indicating number of the unaltered sign indicating number of most significant digit " 0 " storage as the indication most significant digit, shown in arrow A 14, be stored in the scalar zone by sign indicating number " 1100011010 " the right of having stored.
Then, shown in arrow A 15, entropy coding unit 123 each in memory code " 011 ", " 110 ", " 000 " and " 011 " simultaneously in vector area, the absolute value of each of the individual quantization parameter of w (four) "+0011 " that its expression is imported specifically, "+0110 ", " 0000 " and " 0011 ".
Shown in arrow A 12, in the drawings in 8 bit regions of Zuo Ce vector area, in second 8 bit regions played on a left side, rise in second 8 bit regions on the right side and stored sign indicating number " 101 " in 8 bit regions at low order end, " 011 ", " 110 " and " 010 ", therefore entropy coding unit 123 is close to each sign indicating number " 101 " of having stored in the vector area, " 011 ", the right of " 110 " and " 010 ", the sign indicating number " 011 " of the absolute value of each quantization parameter of the current input of storage representation, " 110 ", in " 000 " and " 011 " each is shown in arrow A 15.
In addition, the sign indicating number " 001 " that absolute value in the middle of four quantization parameters "+0011 ", "+0110 ", " 0000 " and " 0011 " of the current input of indication is not the symbol of 0 quantization parameter is got in entropy coding unit 123, and the right of its yard " 11000110100 " of having stored in the scalar zone is stored.
In four quantization parameters "+0011 " of having encoded, "+0110 ", " 0000 " and " 0011 " afterwards, the coding of ensuing four quantization parameters "+1101 ", " 0100 ", "+0111 " and " 1010 " is carried out in entropy coding unit 123.
At first, the most significant digit " 4 " of four quantization parameters "+1101 " that entropy coding unit 123 will be imported specifically, " 0100 ", "+0111 " and " 1010 " compares with the preceding once most significant digit " 3 " of four quantization parameters of coding, and shown in arrow A 17, the sign indicating number " 101 " of indication most significant digit is stored in the scalar zone, and " 1 " of " 0 " that " 1 " that sign indicating number " 101 " has been changed by the indication most significant digit, indication most significant digit increase and indication most significant digit recruitment is formed.
In this case, sign indicating number " 11000110100001 " has been stored in the scalar zone shown in arrow A 16, so the right that will indicate the sign indicating number " 101 " of most significant digit to store sign indicating number " 11000110100001 " in the drawings, entropy coding unit 123.
In addition, after the sign indicating number of the most significant digit of indication four quantization parameters "+1101 ", " 0100 ", "+0111 " and " 1010 " is stored, entropy coding unit 123 will represent that shown in arrow A 18 yard " 1101 ", " 0100 " of its each absolute value, each in " 0111 " and " 1010 " are stored in vector area simultaneously.
Shown in arrow A 15, in the drawings in 8 bit regions of left side vector area, in second 8 bit regions played on a left side, on the right side, rise in second 8 bit regions and in 8 bit regions at low order end and stored sign indicating number " 101011 ", " 011110 ", " 110000 " and " 010011 " respectively, therefore each of 8 bit regions that second 8 bit regions, right second 8 bit regions and low order end are played in 8 bit regions, a left side in the left side is merely able to store the dibit sign indicating number.
Therefore, new vector area in (providing) buffer 401 is provided in entropy coding unit 123, shown in arrow A 18, the sign indicating number " 1101 " of the absolute value of the current quantization parameter of importing will be represented, " 0100 ", two high order bits " 11 " in " 0111 " and " 1010 ", " 01 ", the sign indicating number of " 01 " and " 10 ", be close to the sign indicating number " 101011 " that has been stored in the vector area, " 011110 ", the storage of " 110000 " and " 010011 " the right, and the sign indicating number " 1101 " that will represent the absolute value of the current quantization parameter of importing, " 0100 ", two low order bits " 01 " in " 0111 " and " 1010 ", " 00 ", vector area (two vector areas shown in the arrow A 18 that newly provide in the drawings are provided respectively " 11 " and " 10 ", the vector area of figure bottom) left side 8 bit regions, second 8 bit regions played on a left side, rise in each of second 8 bit regions and the rightmost side 8 bit regions on the right side.
After the sign indicating number of the absolute value of indicating four quantization parameters "+1101 ", " 0100 ", "+0111 " and " 1010 " is stored, shown in arrow A 19, it is not the sign indicating number " 0101 " of the symbol of four quantization parameters of 0 that absolute value is indicated in the right of the sign indicating number " 11000110100001101 " that entropy coding unit 123 has been stored in the scalar zone storage.
Therefore, after the quantization parameter of input is encoded, entropy coding unit 123 is exported the sign indicating number of storing in the scalar zone shown in the arrow A 19 in order, the sign indicating number of storing in the vector area of top among the figure of two vector areas shown in the arrow A 19, and the sign indicating number of storing in the following vector area, as coded image.
In this case, 11 bits on right side do not have memory code among the figure in the scalar zone shown in the arrow A 19.In addition, in the following vector area of two vector areas shown in the arrow A 19, in playing 6 bit regions on the right in each of second 8 bit regions, right 8 bit regions that play second 8 bit regions and low order end, 8 bit regions in left side, a left side do not have memory code.
Sign indicating number in will being stored in scalar zone and vector area by this way is output as under the situation of coded image, when finishing the coding of input quantization parameter, in scalar zone and vector area, exist in the zone of memory code not, storage is sign indicating number arbitrarily, sign indicating number " 0 " for example is stored in yard being encoded and it is output as image in scalar zone and the vector area then.
Therefore, for example in the example shown in the arrow 19, with being stored in the sign indicating number " 11000110100001101010100000000000 " in the scalar zone, yard " 10101111011110011100000101001110 " and the sign indicating number " 01000000000000001100000010000000 " in the storage following vector area in the drawings in the storage top vector area in the drawings, be output as coded image in order.Now, the time do not read when being stored in the coding that wherein finishes quantization parameter scalar zone in the zone of memory code not and any sign indicating number in the vector area, so can store the sign indicating number of any kind in decoding.
Under the situation of the absolute value that also uses SIMD operation instruction to code quantization parameter, behind input picture, image encoding apparatus 111 is carried out with reference to the described encoding process of the flow chart among Figure 23.In addition, with Figure 23 in during entropy coding among the corresponding Figure 24 of step S113 handles, image encoding apparatus 111 is for processing, the processing of step S151 and the processing (with reference to Figure 24 described processing) of step S152 of step S141 among Figure 24 to step S149, carry out the processing identical with the situation of not using the SIMD operational order, and, carry out the processing different with the situation of not using the SIMD operational order for handling with the corresponding w group coding of step S150.
Below with reference to the flow chart among Figure 35, the w group coding that is described under the situation of absolute value that image encoding apparatus 111 uses SIMD operation instruction to code quantization parameters is handled.Be noted that step S411 each in the S419 handles each processing in the S189 corresponding to the step S181 among Figure 25, and each all is to carry out in the same manner.Therefore, will be unnecessary to its description, so will omit description.
In addition, under the situation of the absolute value that uses SIMD operation instruction to code quantization parameter, in reference Figure 24 and the described processing of Figure 35, whether the absolute value that is provided to the quantization parameter of the row that the indication of yard link unit 169 will encode from VLC coding unit 162 is 0 sign indicating number entirely, be provided to from VLC coding unit 164 yard link unit 169 the indication quantization parameter most significant digit the sign indicating number, and be provided to the sign indicating number of symbol of indication quantization parameter of yard link unit 169 each from VLC coding unit 168 and be stored in the scalar zone that provides in the buffer 401 with reference to the described sign indicating number of Figure 34 link unit 169.
In step S420, significant digit extraction unit 165 is 122 that provide from quantifying unit, the position on the row y (x, y), (x+1, y) ..., (x+w-1, y) w on the significant digit of extracting quantization parameter continuously in the quantization parameter.Significant digit extraction unit 165 offers VLC coding unit 166 and symbol extraction unit 167 with the significant digit of the quantization parameter of extraction.In addition, VLC coding unit 166 is exported the sign indicating number (coding significant digit) of the absolute value of w quantization parameter of indication simultaneously based on the significant digit that provides from significant digit extraction unit 165 to sign indicating number link unit 169.
Now, fetch bit puts that (x, y) value of the x on is the value that is stored in the variable x in the most significant digit computing unit 163, and the value of getting y is the be expert at value of the variable y in the determining unit 161 of storage.For example, when significant digit extraction unit 165 extracts significant digit " 101 ", " 011 ", " 110 " and " 010 " significant digit as quantization parameter, sign indicating number " 101 ", " 011 ", " 110 " and " 010 " of the absolute value of these four quantization parameters of indication are provided to sign indicating number link unit 169 from VLC coding unit 166, thereby the 169 coding indications of sign indicating number link unit are to the sign indicating number of the absolute value of its quantization parameter that provides, and shown in the arrow A among Figure 34 12, it is stored in the vector area.
In step S421, predetermined variable i is got in symbol extraction unit 167, and variable i changes to (w-1) from 0, so that from the absolute value that provides from quantifying unit 122 not being the position (x+i on the row y 0 the quantization parameter, y) extract the symbol of quantization parameter in the quantization parameter on, and the symbol that extracts (data) is offered VLC coding unit 168.Now, fetch bit puts that (x, y) value of the x on is the value that is stored in the variable x in the most significant digit computing unit 163, and the value of getting y is the be expert at value of the variable y in the determining unit 161 of storage.
In the scalar zone of buffer 401, store after the sign indicating number of the symbol of indicating quantization parameter, 169 links of sign indicating number link unit are with reference to the described scalar zone of buffer 401 and the sign indicating number in the vector area of being stored in of Figure 34, the sign indicating number of link is output as coded image, finishing the w group coding thus handles, and handle the step S150 that returns among Figure 24, and carry out processing from step S151.
Therefore, entropy coding unit 123 absolute value of quantization parameter of predetermined quantity of encoding simultaneously.
Entropy coding for JPEG 2000 methods, quantization parameter is that increment stands arithmetic coding with the bit-planes based on many coding paths, therefore the predetermined process in the while executed in parallel entropy coding is difficult, but for entropy coding unit 123, then need not be that increment is carried out complex process with the bit-planes, the absolute value of a plurality of quantization parameters of therefore can encoding simultaneously.
Therefore, the absolute value of the quantization parameter of the predetermined quantity of encoding simultaneously allows the while (walking abreast) to carry out a plurality of processing, therefore can be with the more speed coded image.
Note, in the processing in step S421, be that coding at the symbol of carrying out w quantization parameter in order is described, but can be by using the SIMD operational order, with with the situation of the absolute value of coded quantization coefficient under identical mode, carry out the coding of the symbol of w quantization parameter simultaneously.In this case, indication is stored in being divided in the individual vector area of w of buffer 401 by each yard of the symbol of w quantization parameter of coding acquisition.
In addition, although described a scalar zone or vector area is 32 bit regions for buffer 401, and this 32 bit regions further is divided into 8 bit regions for using, and the size of scalar zone or vector area etc. can be any size.For example, can dispose like this, wherein scalar zone or vector area are set to 128 bit regions, and this 128 bit regions is divided into 8 16 bit regions for using.
In addition, use in decoding under the situation of image of SIMD operation instruction to code, the sign indicating number division unit 251 (Figure 27) that is used for the image decoding apparatus 211 of decoded picture is configured to as shown in figure 28, and the sign indicating number as coded image is stored in the memory 272 than specially by one time 32, as described in reference Figure 34.
Under memory 272 sense codes and situation with its output, the storage area that control unit 271 is at first got 32 bit of memory code is the scalar zone, and whether the absolute value that reads the quantization parameter of the row that indication will decode by the order from top, scalar zone is the sign indicating number of the symbol of the sign indicating number of most significant digit of 0 sign indicating number, indication quantization parameter or indication quantization parameter entirely, and with its output.
In addition, under the situation of the sign indicating number of from memory 272, reading the absolute value of indicating quantization parameter, in control unit 271 access to memory 272 as 32 bit storage zones of the storage area back in scalar zone (therefore, Shang Weicong should the zone in sense code) as vector area, and from this vector area, read and export the sign indicating number of the absolute value of indication quantization parameter.
Note, under the situation that image is encoded, image is encoded, so that when the sign indicating number of absolute value of indication quantization parameter the time is read in decoding for the first time, always be stored in sign indicating number as absolute value in the ensuing 32 bit storage zones of the storage area back in scalar zone, the indication quantization parameter (be used for vector calculate yard).
In addition, in image encoding apparatus 111 coded images, wherein divide as the sign indicating number of coded image and it is stored in each storage area in the memory 272 and by how many bits constitute and be set to according to scalar zone and vector area how many bits change.That is to say that each the size that will divide and store into a plurality of storage areas in the memory 272 as the sign indicating number of coded image is the size of scalar zone and vector area in coded image.
Under the situation of the absolute value that also uses SIMD operational order decoding quantization parameter, behind the input coding image, the decoding processing that picture decoding unit 211 is carried out with reference to flow chart description shown in Figure 30.In addition, for with Figure 30 in entropy decoding processing among corresponding Figure 31 of processing of step S231, about step S261 among Figure 31 to each of step S268 handle, processing among the step S270 and the processing among the step S271, image decoding apparatus 211 carry out with the situation of not using the SIMD control command under (with reference to the described processing of Figure 31) identical processing, and in corresponding to the w of step S269 group decoding processing, carry out with the situation of not using the SIMD control command under different processing.
Below with reference to flow chart shown in Figure 36, describe image decoding apparatus 221 and use decode w group decoding processing under the situation of absolute value of quantization parameter of SIMD operational orders.
Be noted that the processing of step S451 in the S455 corresponding to the processing of the step S311 among Figure 32 in the S315, and each all is to carry out in the same manner.Therefore, will omit its unnecessary description.
In addition, under the situation of the absolute value that uses SIMD operational order decoding quantization parameter, be stored in as the sign indicating number of image and be divided in the memory 272 3 32 bit regions (for example, shown in the arrow A 19 of Figure 34), sign indicating number division unit 251.Each gets among Figure 34 uppermost zone as the scalar zone row determining unit 252, VLC decoding unit 254 and VLC decoding unit 256 in three 32 bit regions, and reads successively from the top (left side the figure) in scalar zone and whether the quantization parameter of the indication row of decoding is the sign indicating number of the symbol of the sign indicating number of most significant digit of 0 sign indicating number, indication quantization parameter and indication quantization parameter entirely.
In step S456, VLC decoding unit 255 is from the w group of B successive bits of 255 while of sign indicating number division unit readout code, and each of w group of B bit of getting the sign indicating number that reads is as the position (x on the capable y of indication, y), (x+1, y) ..., (x+w-1, y) w on is the sign indicating number of the significant digit of the quantization parameter in the quantization parameter continuously, and provides (output) to arrive VLC decoding unit 256 and quantization parameter synthesis unit 257 it.In addition, VLC decoding unit 255 generates the information of the significant digit of indication quantization parameter, and provides it to yard division unit 251.Now, fetch bit puts that (x, y) value of the x on is the value that is stored in the variable x in the VLC decoding unit 254, and the value of getting y is the be expert at value of the variable y in the determining unit 252 of storage.
For example, if we suppose that predetermined quantity w is 4, the value of variable B is 3, and the sign indicating number as image is stored in the memory 272 of the sign indicating number division unit 251 that is divided into 3 32 bit storage zones (shown in the arrow A 19 of Figure 34), uppermost 32 bit storage zones have been taken as the scalar zone among Figure 34, whether the quantization parameter of indication row is 0 sign indicating number entirely and indicates the sign indicating number of the most significant digit of quantization parameter to be read out, and the sign indicating number also not from ensuing 32 bit storage zones (from top several second storage area) read, so VLC decoding unit 255 is got from top several second storage area as vector area, and left side 8 bit regions of vector area from figure, several second 8 bit regions from a left side, from several second 8 bit regions in the right side and rightmost 8 bit regions, read indicating positions (x simultaneously, y), (x+1, y), (x+2, y) and (x+3, y) sign indicating number of the significant digit of the quantization parameter on " 101 ", " 011 ", " 110 " and " 010 ".
After the sign indicating number of the significant digit of indicating w quantization parameter is provided for VLC decoding unit 256 and quantization parameter synthesis unit 257, the then processing of execution in step S457 and the processing of step S458, but it is identical with the processing of the processing of step S317 and step S318 among Figure 32 that these are handled, so will omit its description.
Therefore, entropy decoding unit 221 absolute value of quantization parameter of predetermined quantity of decoding simultaneously.
Therefore, the absolute value of the quantization parameter of the predetermined quantity of decoding simultaneously allows the while (walking abreast) to carry out a plurality of processing, and can be with the more speed decoded picture.
Note, about the processing among the step S457, the decoding of each yard of the symbol of carrying out w quantization parameter of indication has in order been described, but also can make such configuration, wherein, can be by using the SIMD operational order, the decoding of each yard of the symbol of w the quantization parameter of execution indication that (walk abreast) simultaneously.
As mentioned above, need with the bit-planes arithmetic coding (with different) that increment is carried out quantization parameter based on many coding paths with the situation of traditional JPEG 2000 codings (or decoding) image, therefore can be with simpler processing carries out image coding (or decoding) quickly.
For traditional JPEG 2000 methods, based on a plurality of codings path each bit-planes is carried out processing, therefore when carrying out its processing, the number of times that needs the access quantization parameter roughly is that quantization parameter multiply by the quantity of bit-planes and the number that obtains, this means that treating capacity is huge.
In addition, under the situation of packetizing coded image, finish fully to begin packetization process, therefore correspondingly produce and be equivalent to it and wait for delay at interval up to the coding of an image.In addition, for JPEG 2000 methods, position corresponding (coding) quantization parameter in the rectangular area of forming with x direction on the sub-band for example shown in Figure 2 and the parallel edges on the y direction, therefore be stored in the grouping, also produce delay corresponding to the length of the y direction of rectangular area.For traditional JPEG 2000 methods, produce these delays that cause owing to coding, it is difficult therefore handling in real time.Now, although can reduce delay by the length on the y direction that shortens the rectangular area on the sub-band, code efficiency reduces in this case.
On the contrary, for image encoding apparatus 111, when the sign indicating number of quantization parameter absolute value is indicated in output, when the sign indicating number of most significant digit is indicated in output, and when exporting the sign indicating number of the symbol of indicating quantization parameter, do not need as mentioned above each bit-planes to be carried out the arithmetic coding of quantization parameter based on many coding paths, and access quantization parameter when coded image only, therefore can be with simpler mode coded image.
In addition, having the sign indicating number of indication most significant digit and indicating the sign indicating number of the symbol of quantization parameter is the situation of 1 bit or 0 bit, therefore under the situation of this image of coding, in fact as long as about access quantization parameter twice in fact just can coded image.In addition, under the situation of decoded picture, only need quantization parameter of access, therefore can be with simpler and mode decoded picture faster.
In image encoding apparatus 111 and image decoding apparatus 211,, therefore do not need to cushion quantization parameter, thereby can reduce the delay that causes owing to Code And Decode according to the quantization parameter of raster scan order Code And Decode sub-band.
In addition, use SIMD operational order (wherein w=4) actual coding and decoding YUV4:2:2 format-pattern (1920 horizontal pixels * 1080 vertical pixels) to produce following result.Be noted that image stands wavelet transformation and is broken down into five sub-frequency bands ranks when carrying out coding, and the quantization parameter of further encoding and obtaining by the wavelet coefficient that quantizes each sub-band.In addition, the functional block (for example, entropy coding unit 123 among Figure 33 and the entropy decoding unit 221 among Figure 27) that Code And Decode is required and be to realize by making the CPU (clock frequency of 3.0GHz) that is called Pentium (registered trade mark) 4 (trade mark of Intel Company) carry out preset program with the functional block of JPEG 2000 Code And Decode images.
Under the situation of the two field picture of encoding with traditional JPEG 2000 methods, the sign indicating number size is 291571 bytes, and the required time quantum of encoding is 0.26157 second.In addition, it is 0.24718 second to the coded image required time of decoding.
On the contrary, under the situation with 123 codings, one two field picture of the entropy coding unit among Figure 33, the sign indicating number size is 343840 bytes, and the required time quantum of encoding is 0.03453 second.In addition, it is 0.02750 second with 221 pairs of coded image required times of decoding of the entropy decoding unit among Figure 27.
Moving image usually shows with per second 30 frames, so as long as coding or decoding can just can be handled image in real time with every frame 0.033 (=1/30) second execution.For JPEG 2000 methods, the required time quantum of encoding is 0.26157 second, and the required time quantum of decoding is 0.24718 second, therefore the real-time processing of image is difficult, but under situation with entropy coding unit 123 coded images among Figure 33, the required time quantum of encoding is 0.03453 second, therefore can almost handle image in real time.In addition, under the situation with entropy decoding unit 221 decoded pictures among Figure 27, the required time quantum of decoding is 0.02750 second, therefore can enough handle image in real time.
The example of coded image data or the example that the coded data of the view data of wherein having encoded is decoded have been described in the above, but this is not limited to view data, and can be applied to coding audio data etc. or to the situation of the coded data decoding of the voice data of wherein having encoded.For example, under the situation of coding audio data, indication by as the symbol of the sign indicating number of the absolute value of the sign indicating number of the most significant digit of w represented predetermined value of the sign indicating number of voice data input, indication numerical value and indication numerical value yard, be outputted as coding audio data.
Mention another feature of present embodiment, with the coding method of present embodiment description, nondestructively coded quantization coefficient.Correspondingly, the high frequency band coefficient is used than big step sizes quantification so that the vision perception characteristic of match people allows to improve greatly yard picture quality of measuring that per unit generates.In addition, reduce the picture quality that the quantization step size of using allows to improve this spatial dimension in the particular space scope.
In addition, for the coding method that present embodiment is described, the array of the significant digit of encode absolute values part.If we suppose that the significant digit of absolute value partly stands VLC coding and with its transmission, significant digit at absolute value is under the situation of N so, very big VLC table with the individual clauses and subclauses of 2^ (N*W) is essential (not only increases the load and the processing time of computing, preserve the required memory capacity of VLC table but also increase).On the contrary, for the described coding method of present embodiment, do not need to use so big table (not only can reduce the load and the processing time of computing, can also reduce required memory capacity).
In addition, can conceive and use arithmetic coding with compression ratio higher than VLC, even but compression method is used for such arithmetic coding such as JPEG 2000, compared with the situation of the described coding method of reference present embodiment, do not improve compression ratio greatly yet.That is to say that for the described coding method of present embodiment, when compression ratio was high, encoding process was easy.
For the described coding method of present embodiment, the most significant digit of the absolute value of coding w group coefficient is so by the similar fact of the significant digit of utilizing adjacent coefficient, can reduce the size of the sign indicating number of generation.
In addition, for the described coding method of present embodiment, when the most significant digit of the absolute value of coding w group coefficient, carry out differential coding, so, can reduce the size of the sign indicating number of generation in this also by the similar fact of the significant digit of utilizing adjacent coefficient.
In addition, handle and the entropy decoding processing of entropy decoding unit 221 can be applied to each of above-mentioned first to the 5th embodiment according to the entropy coding of the entropy coding unit 123 of above-mentioned the 6th embodiment, handle for overview image encoding process and picture decoding thus and can further reduce processing required time of delay, power consumption, buffer memory size.For example, entropy coding unit 123 can be applied as the entropy coding unit 15 (that is, entropy coding unit 15 can carry out entropy coding in the mode identical with entropy coding unit 123 handle) of the image encoding apparatus 1 among Fig. 1.In addition, for example, entropy decoding unit 221 can be applied as the entropy decoding unit 21 (that is, entropy decoding unit 21 can be carried out the entropy decoding processing in the mode identical with entropy decoding unit 221) of the image decoding apparatus 20 among Fig. 9.
That is to say, to handle each that be applied to above-mentioned first to the 5th embodiment according to the entropy coding of the 6th embodiment allows in each embodiment by being used to reduce the sign indicating number size (that is, the significant digit of continuous coefficients is similar) that will generate from the feature of the output order of the coefficient of wavelet transformation unit.In addition, even under the situation of permutatation coefficient, wavelet transform unit is that increment is carried out wavelet transformation to go piece, so the similar feature of the significant digit of continuous coefficients is not subjected to big influence, and the sign indicating number size that entropy coding generates in handling does not have big change.
As mentioned above, feature and its desired advantages of the coefficient data of handling and handling according to the entropy coding of the 6th embodiment are similar to the described wavelet transform process of above-mentioned first embodiment to the, five embodiment of reference, and have strong substantial connection each other.Therefore, for the overview image encoding process, can expect the described wavelet transform process of above-mentioned first embodiment to the, five embodiment to compare bigger advantage with other coding methods of application from handling to be applied to according to the entropy coding of present embodiment.
Then, the seventh embodiment of the present invention will be described.The 7th embodiment is the example of using according to numeral three axle systems of the image encoding apparatus of the foregoing description and image decoding apparatus.
Three axle systems are the systems that use in television broadcasting station, production boutique etc.For this system, record or when remote location is broadcast live in the operating room, use the single three axis cables that connect video camera and camera control unit or change over switch to transmit multiplexed signals, as picture signal, audio signal, return picture signal, synchronizing signal etc., and be used for the power supply.
Many traditional three axle systems are configured to transmit above-mentioned signal with the form of analog signal.On the other hand, in the last few years, whole system becoming the numeral, therefore, three axle systems that in the television broadcasting station, use also become the numeral.
For known numeral three axle systems, the digital video signal that transmits on three axis cables is unpressed vision signal.Its reason is to be harsh especially about the desired specification of signal delay time for the television broadcasting station, basically, for example requires in a field (16.67ms) from the time of delay that photographs monitor output.The compressing and coding system such as MPEG2 and MPEG4 of realizing high compression rate and high image quality also is not used in three axle systems, this is because the decoding request of video signal compression and coding and compressed video signal is equivalent to the time of the amount of several frames, this means that time of delay is big.
Aforesaidly obtain output image according to image encoding of the present invention and picture decoding method from being input to of view data and have extremely short time of delay, in a field time, that is, in several row to tens are capable, so can be fit to be applied to digital three axle systems.
Figure 37 illustrates the example arrangement that can use according to numeral three axle systems of image encoding of the present invention and picture decoding method.Transmission unit 500 is connected by three axis cables 501 with camera control unit 502.On three axis cables 501 transmission from transmission unit 500 to camera control unit 502 digital video signal and digital audio and video signals (below be called " main line signal ") (its be actually broadcasting or as content), and the intercom from camera control unit 502 to video camera unit 503 (intercommunication) audio signal and return digital video signal.
Digital audio and video signals and essence of the present invention are had little or nothing to do with, and therefore in order to describe for simplicity, will omit its description.
What be also connected to video camera unit 503 is the display unit 551 that is used as monitor, and the intercom system 552 that is used for outside exchange audio.
For example, for example being mapped to, the baseband digital video signal of HD-SDI form is provided to transmission unit 500 from video camera unit 503.Compression and encoding digital video signal on video signal coding unit 510, so that become code stream, the latter is provided for digital modulation unit 512.Digital modulation unit 512 is modulated into the code stream that provides signal format and the output that is adapted at transmission on the three axis cables 501.The signal of 512 outputs is provided to video separation/synthesis unit 516 by amplifier 514 from the digital modulation unit.Video separation/synthesis unit 516 sends the signal that provides to three axis cables 501.Receive these signals at camera control unit 502 by three axis cables 501.
On transmission unit 500, receive from the signal of camera control unit 502 outputs by three axis cables 501.The signal that receives is provided for video separation/synthesis unit 516, and the digital video signal part is separated with other signal sections.In the middle of the signal that receives, the digital video signal part is provided to digital demodulation unit 513 by amplifier 515, signal is modulated into the signal that is adapted at the signal format of transmission on the three axis cables 501 in camera control unit 502 sides, and recovers code stream.
Code stream is provided to video signal decoding unit 511, decoding compressed coding, and obtain baseband digital video signal.The digital video signal of decoding is mapped to HD-SDI form and output, and offers video camera unit 503 as returning digital video signal.Return digital video signal and be provided for the display unit 551 that is connected to video camera unit 503, and the person's that uses it for the camera operation supervision.
Receive from the signal of transmission unit 500 outputs at camera control unit 502 by three axis cables 501.The signal that receives is provided for video separation/synthesis unit 520.Video separation/synthesis unit 520 will be provided to digital demodulation unit 524 by amplifier 521 and front end unit 523 to its signal that provides.Be noted that front end unit 523 has the gain control unit of the gain that is used to regulate input signal, is used for input signal is carried out the filter unit of predetermined filtering, or the like.
Return digital video signal and digital audio and video signals and externally offer camera control unit 502.Digital audio and video signals is provided for camera operation person's for example intercom system 552 to be used for to camera operation person transmit outer audio instructions.
Return digital video signal and be provided to video signal coding unit 527 and be compressed coding, and be provided to digital modulation unit 525.Digital modulation unit 525 is modulated into the code stream that provides signal and the output that is adapted at the signal format of transmission on the three axis cables 501.The signal of 525 outputs is provided to video separation/synthesis unit 520 by front end unit 523 and amplifier 522 from the digital modulation unit.Video separation/synthesis unit 520 is these signals and other signal multiplexings, and passes out to three axis cables 501.503 by three axis cables, 501 these signals of reception in the video camera unit.
For this 7th embodiment of the present invention, described image encoding apparatus of the foregoing description and image decoding apparatus are applied to video signal coding unit 510 and video signal coding unit 527 and video signal decoding unit 511 and video signal decoding unit 526 respectively.
Especially, the second embodiment of the present invention is configured to make can the executed in parallel image encoding apparatus and the processing of each element of image decoding apparatus, this can shorten greatly in the delay of video camera unit 503 picture shot during from camera control unit 502 output, and provide and transmit the delay of returning digital video signal to 503 outsides, video camera unit, and be applicable to the seventh embodiment of the present invention from camera control unit 502.
In addition, under the situation of system shown in Figure 37, suitably signalization disposal ability and memory capacity on each of transmission unit 500 and camera control unit 502, the position of therefore carrying out coefficient data permutatation processing can be in transmission unit 500 sides or camera control unit 502 sides, and the position of execution entropy coding can be equally before or after permutatation is handled.
That is to say that in transmission unit 500 sides, 510 the method according to this invention subtends its digital video signal that provides in video signal coding unit is carried out wavelet transformation and entropy coding, and output code flow.As mentioned above, after input is corresponding to the line number tap number of the filter that is used for wavelet transformation and according to other quantity of partition level of wavelet transformation, video signal coding unit 510 beginning wavelet transformations.In addition, as described in reference Fig. 5, Fig. 6, Figure 11 etc., in image encoding apparatus and image decoding apparatus, accumulated the required coefficient data of assembly after, carry out processing successively by assembly.After the end row of handling a frame or one finishes, beginning next frame or one 's processing.
This also sets up for returning digital video signal from the transmission of camera control unit 502 side direction transmission units 500 sides.That is to say,, carry out according to wavelet transformation of the present invention and entropy coding by the digital video signal that returns that 527 pairs of outsides, video signal coding unit provide in camera control unit 502 sides, and output code flow.
Now, there are many digital video signal situations lower that wherein allow to return than the picture quality of the digital video signal of main line signal.In this case, the bit rate in the time of can being reduced in 527 places, video signal coding unit and encoding.For example, the control of rate controlled unit 14 is carried out in video signal coding unit 527, and the bit rate that makes the entropy coding of entropy coding unit 15 handle is lower.In addition, can envision such configuration, wherein for example, in camera control unit 502 sides, carry out other conversion process of higher partition level with the wavelet transform unit 10 at 527 places, video signal coding unit, and in transmission unit 500 sides, the wavelet inverse transformation of the wavelet inverse transformation unit 23 of video signal coding unit 511 sides stops on lower division rank.Processing on the video signal coding unit 527 of camera control unit 502 is not limited to this example, and can envision the processing of various other types, and is low so that alleviate the load of conversion process as the division rank that keeps wavelet transformation.
Then, the eighth embodiment of the present invention will be described.For the eighth embodiment of the present invention, the transmission that the coded data of using the radio communication execution to encode on image encoding apparatus according to the present invention arrives the image decoding apparatus side.Figure 38 illustrates the example arrangement according to the wireless transmitting system of the eighth embodiment of the present invention.Be noted that in the example of Figure 38 vision signal is transferred to receiving equipment 601 sides from video camera or transmission unit 600 sides (below abbreviate " transmission unit 600 " as) indirectly.Can carry out two-way communication between transmission unit 600 and the receiving equipment 601 for audio signal and other signals.
In addition, digital audio and video signals and other signals, for example Yu Ding order and data also offer digital modulation unit 611.For example, video camera unit 602 has microphone, thereby converts the sound of collecting to audio signal, and audio signal stands the A/D conversion and is output as digital audio and video signals in addition.In addition, particular command and data can be exported in video camera unit 602.Order and data can generate video camera unit 602 in, perhaps can be for video camera unit 602 provide operating unit, and the operation of carrying out at operating unit in response to the user, generation is ordered and data.In addition, can make such configuration, the input equipment that wherein is used for input command and data is connected to video camera unit 602.
The digital modulation and the output of these digital audio and video signals and other signals is carried out in digital modulation unit 611.The digital modulation signals of 611 outputs are provided to wireless module unit 612 from the digital modulation unit, and wirelessly launch as radio wave from antenna 613.
Behind the ARQ (repeat requests automatically) that receives from receiving equipment 601 sides, wireless module unit 612 is with this ARQ notice digital modulation unit 611, so that request msg is retransmitted.
Receive at the antenna 620 of receiving equipment 601 sides from the radio wave of antenna 613 emissions, and provide it to wireless module unit 621.Wireless module unit 621 will be provided to front end unit 622 based on the digital modulation signals of the radio wave that receives.The digital modulation signals that 622 pairs of front end units provide is carried out prearranged signal and is handled, and as gain controlling, and offers digital demodulation unit 623.The digital modulation signals that digital demodulation unit 623 demodulation provide, and recover code stream.
The code stream that recovers in digital demodulation unit 623 is provided for video signal decoding unit 624, uses coding/decoding method according to the present invention that compressed encoding is decoded, and obtains baseband digital video signal.The digital video signal of decoding is mapped to for example HD-SDI form and output.
In addition, front end unit 622 according to the check of preordering method execution error, and is detecting mistake for the received signal that provides from wireless module unit 621, for example receives under the situation of wrong frame output ARQ.ARQ is provided for wireless module unit 621, and from antenna 620 emissions.
For such configuration, that transmission unit 600 is placed into is small-sized relatively, have in the video camera apparatus of video camera unit 602 for example, surveillance equipment is connected to receiving equipment 601, and is provided for surveillance equipment from the digital video signal of video signal decoding unit 624 outputs.As long as receiving equipment 601 distances have the video camera apparatus of built-in transmission unit 600 in the electric wave scope of the radio wave of wireless module unit 612 emissions, just can be with less delay on surveillance equipment, the for example delay in or a frame, the picture of watching video camera apparatus to take.
Be noted that in example shown in Figure 38 communicating by letter between transmission unit 600 and the receiving equipment 601 is to use radio communication to carry out, so that by the wireless communication transmissions vision signal, but this configuration is not limited to this example.For example, transmission unit 600 can be connected by the network such as the internet with receiving element 601.In this case, the wireless module unit 621 of the wireless module unit 612 of transmission unit 600 sides and receiving equipment 601 sides each all be the communication interface that can use IP (Internet Protocol) to communicate by letter.
Can visualize various application for system according to the 8th embodiment.For example, the system according to the 8th embodiment can be applied to video conferencing system.The example of configuration is, can carry out simple video picture pick-up device that USB (USB) connects and be connected to computer equipment such as personal computer, and the computer equipment side realizes video signal coding unit 610 and video signal decoding unit 624.Video signal coding unit of realizing on computer equipment 610 and video signal decoding unit 624 can be hardware configuration, perhaps can realize by the software that operates on the computing equipment.
For example, each member who participates in video conference is furnished with computer equipment and the video camera apparatus that is connected to this computer equipment, and computer equipment is connected to the server apparatus that the video conferencing system service is provided by wired or wireless network.Be provided to computer equipment from the vision signal of video camera apparatus output by the USB cable, and carry out according to encoding process of the present invention in the video signal coding unit 610 in computer equipment.To wherein the encode code stream of vision signal of computer equipment sends to server apparatus etc. by network.
Server apparatus sends to the computer equipment that each participates in the member by network with the code stream that receives.On each participates in member's computer equipment, receive this code stream, and make in the video signal decoding unit 624 of this code stream in computer equipment and stand according to decoding processing of the present invention.On the display unit of computer equipment, will be shown as picture from the view data of video signal decoding unit 624 outputs.
That is to say that the video pictures that other video camera apparatus that participate in the member are taken is displayed on the display unit of each computer equipment that participates in the member.Therefore, for the eighth embodiment of the present invention, the vision signal of taking from the encoded video picture pick-up device is shorter to the time of delay of its decoding to the computer equipment that participates in members at other, therefore can reduce because other participation members' that postpone to cause to participate in to show on member's the display unit of computer equipment the factitious sensation of picture.
In addition, can visualize the configuration that video signal coding unit 610 wherein is installed in the video camera apparatus side.For example, transmission unit 600 is inserted in the video camera apparatus.The needs that video camera apparatus is connected to another equipment such as computer equipment have been exempted in such configuration.
By such system that video camera apparatus that is built-in with transmission unit 600 and receiving equipment 601 constitute, can be applied to the various application in addition of above-mentioned video conferencing system.For example, as schematically showing among Figure 39, this system can be applied to home game machine.In Figure 39, insert in the video camera apparatus 700 in transmission unit 600 quilts according to eighth embodiment of the invention.
In the master unit 710 of family expenses game machine, bus for example connects CPU, RAM, ROM, (the compatible disc driving equipment of digital versatile disc-ROM), is used for the display control signal that CPU generates is converted to vision signal and the figure control unit of exporting, is used for audio playing unit of playing audio signal or the like with CD-ROM (compact disc read-only memory) and DVD-ROM, that is, has the configuration of similar computer equipment substantially.The master unit 701 of home game machine by CPU according to being stored in the program among the ROM in advance or being recorded in the CD-ROM of the disc driving equipment of packing into or the program among the DVD-ROM is totally controlled.Use the working storage of RAM as CPU.The master unit 701 of home game machine is built-in with receiving equipment 601.For example be provided to CPU from digital video signal and other signals of receiving equipment 601 outputs by bus.
The let us hypothesis is for such system, and for example, the master unit 701 of home game machine, Games Software are in operation, and the image of the digital video signal form that it can provide the outside is as the image in the recreation.For example, this Games Software can use the image of the format digital video signal that the outside provides as the image in the recreation, and the motion of the personage (player) in the recognition image, and carries out the operation corresponding to the motion of identification.
The digital video signal of using coding method coding according to the present invention to take in the video signal coding unit 610 of video camera apparatus 700 in built-in transmission unit 600, in digital modulation unit 611, modulate code stream, and offer wireless module unit 612, so that it is launched from antenna 613.The antenna 620 of the receiving equipment 601 in interior master unit 701 of inserting home game machine receives the radio wave of emission, and the signal of reception offers digital demodulation unit 623 by wireless module unit 621 and front end unit 622.The signal that receives is demodulated to code stream in digital demodulation unit 623, and provides it to video signal decoding unit 624.The code stream that the coding/decoding method decoding according to the present invention of video signal decoding unit 624 usefulness provides, and output baseband digital video signal.
Send by the bus the master unit 701 of home game machine from the baseband digital video signal of video signal decoding unit 624 outputs, and for example be stored among the RAM temporarily.When digital video signal in being stored in RAM was read according to preset program, CPU can detect the motion of the people in the image that digital video signal provides, and uses this image in recreation.
Since from video camera apparatus 700 photographic images and to the encoding digital video signals that obtains to decoded bit stream the master unit 701 of family expenses game machine and to obtain time of delay of image shorter, therefore improved the responsiveness of the Games Software of operation on the master unit 701 of home game machine, thereby improved the operability of recreation player's motion.
Note, the video camera apparatus 700 that uses with home game machine is because the restriction of price, size etc., therefore usually have simple configuration, and must suppose that the CPU with high throughput and mass storage as the computer equipment may realize.
That is to say that usually, video camera apparatus 700 is the ancillary equipment of the master unit 701 of home game machine, it is essential only to be only when using video camera apparatus 700 to play games, rather than the necessary equipment of playing games on the master unit 701 of family expenses game machine.In this case, video camera apparatus 700 usually separates sale (so-called separate to sell select) with the master unit 701 of home game machine.In this case, thus the memory that high-performance CPU and large storage capacity are installed in video camera apparatus 700 sell with high price, this Board Lot that may cause usually selling reduces.In this case, this may reduce the sales volume of the recreation of using video camera apparatus 700, thereby may cause low income.In addition, especially for household game, owning rate usually influences marketing unit's quantity largely, so the low owning rate of video camera apparatus 700 may cause lower marketing unit's quantity.
On the other hand, sell multitude of video picture pick-up device 700 at a low price and improve the household game sales volume that owning rate can improve use video camera apparatus 700, and improve its popularity, and can further expect the purchase enthusiasm of this master unit that can cause home game machine 701.From this angle, video camera apparatus 700 preferably has easy configuration usually.
In this case, can visualize such configuration, wherein in the video signal coding unit 610 of the transmission unit 600 that is built into video camera apparatus 700, carry out wavelet transformation with the low rank of dividing.This has reduced the memory capacity that is used for coefficient permutatation buffer cell.
In addition, can visualize such configuration, wherein described by the 3rd embodiment, the configuration of the exemplary image encoding apparatus that illustrates is applied to video signal coding unit 610 among Figure 12.In addition, with described by the 4th embodiment, the configuration of the exemplary image encoding apparatus that illustrates is applied to video signal coding unit 610 among Figure 15, this has exempted the needs of carrying out the permutatation processing of wavelet conversion coefficient data in video signal coding unit 610 sides, therefore can further reduce the load on video camera apparatus 700 sides, this is to be worth expectation.In this case, need to use described by the 4th embodiment, the exemplary image decoding apparatus that illustrates among Figure 16, as the video signal decoding unit 624 in the receiving equipment 601 in master unit 701 sides that are built in home game machine.
The video camera apparatus 700 that is noted that home game machine is described to be connected by radio communication with master unit 701 in the above, but this configuration is not limited to this example.That is to say that the video camera apparatus 700 of home game machine and master unit 701 can connect via the interface such as USB, IEEE 1394 by wired.
As mentioned above, another big advantage of the present invention is that it can be applied to various forms, and can easily be applied to multiple use (that is, very general) widely.
Above-mentioned series of processes can realize or realize by software by hardware.Realizing by software under the situation of this series of processes, the program that constitutes software is installed in from program recorded medium the computer that is built-in with specialized hardware, perhaps be installed in the all-purpose computer, perhaps by carrying out in the messaging device of the information processing system that a plurality of equipment of various functions constitute by various types of programs of wherein installing.
Figure 40 is the block diagram of ios dhcp sample configuration IOS DHCP of carrying out the information processing system of above-mentioned series of processes with program.
As shown in figure 40, the memory device 803 that information processing system 800 links to each other with messaging device 801 by messaging device 801, by pci bus 802, carry out the system that the operation control 807 of these input operations is formed to VTR 804-S and mouse 805, keyboard 806 with for the user, and be the system that carries out above-mentioned image encoding processing and picture decoding processing etc. by the program of installing as the VTR 804-1 of a plurality of video tape recorders (VRT).
The messaging device 801 of information processing system 800 for example can will be stored in by the dynamic image content in the mass-memory unit 803 of RAID (Redundant Array of Independent Disks (RAID)) configuration, and the coded data that obtains is stored in the memory device 803, the coded data of decode stored in memory device 803 neutralizes the decode image data (dynamic image content) that is stored in the acquisition in the memory device 803, coded data or decode image data are recorded on the video tape to VTR 804-S by VTR 804-1, or the like.In addition, messaging device 801 is configured to capture in the memory device 803 to the dynamic image content in the video tape of VTR 804-S being recorded in the VTR 804-1 that packs into.At this moment, can make such configuration, wherein messaging device 801 encoding moving pictures contents.
Be connected to mouse 805, keyboard 806, the VTR 804-1 in addition of south bridge 904 to VTR 804-S, memory device 803 and operation control 807 by pci bus 802.
Mouse 805 and keyboard 806 receive the operation input from the user, and provide the signal of indication from the content of user's operation input by pci bus 802 and south bridge 904 to microprocessor 901.Memory device 803 and VTR 804-1 can write down and play tentation data to VTR 804-S.
When starting, microprocessor 901 is read the necessary application program that is stored among the HDD 905 based on being stored among the HDD 905 and offering the control program of XDR-RAM 903, and carries out necessary control successively based on application program and operator's operation and handle.
In addition, pass through executive software, microprocessor 901 can realize that the image encoding of the foregoing description is handled and picture decoding is handled, the code stream that obtains is offered HDD 905 for storage as coding result by south bridge 904, the transfer of data of GPU 902 is arrived in execution as the broadcasting pictures of the mobile picture material of decoded result acquisition, so that for example be presented on the display 922, or the like.
Although it is optional how using the CPU core of microprocessor 901, but can make such configuration, wherein for example 941 execution of host CPU kernel are handled about image encoding and the processing of the control that picture decoding is handled, and eight from CPU core 942-1 to from CPU core 942-8 while and the various types of processing of executed in parallel as reference Figure 11 is described, as wavelet transformation, coefficient permutatation, entropy coding, entropy decoding, wavelet inverse transformation, quantification, inverse quantization etc.At this moment, realize such configuration in the mode identical with the described situation of reference Figure 11, wherein host CPU kernel 941 with go piece (district) be increment be eight from CPU core 942-1 to each allocation process from CPU core 942-8, thereby with go piece be increment simultaneously the executed in parallel image encoding handle and the picture decoding processing.That is to say, can improve the efficient that image encoding is handled and picture decoding is handled, and can further reduce and handle required load, processing time and memory capacity.Certainly, also can carry out each processing with additive method.
For example, can make such configuration, wherein, eight of microprocessor 901 carry out encoding process from CPU core 942-1 to the part from CPU core 942-8, and other parts executed in parallel decoding processing simultaneously.
In addition, for example, be connected under the situation of pci bus 802 at absolute coding device or decoder or codec handling equipment, eight of microprocessor 901 from CPU core 942-1 to the processing that can carry out by south bridge 904 and pci bus 802 these equipment of control from CPU core 942-8.In addition, under the situation that connects a plurality of these equipment, comprise under the situation of a plurality of decoders or encoder at these equipment that perhaps eight of microprocessor 901 to controlling from CPU core 942-8, make a plurality of decoders or encoder share processing from CPU core 942-1.
At this moment, eight of host CPU kernel 941 management to the action from CPU core 942-8, are each CPU core allocation process, retrieval process result etc. from CPU core 942-1.In addition, host CPU kernel 941 is also carried out and is different from these other processing from the processing of CPU core execution.For example, the order that 941 acceptance of host CPU kernel provide by south bridge 904 from mouse 805, keyboard 806 or operation control 807, and carry out corresponding to various types of processing of ordering.
Now, eight broadcasting pictures process transfer of data by microprocessor 901 from CPU core 942-1 to a plurality of dynamic image contents of decoding concurrently simultaneously from CPU core 942-8, be transferred to GPU 902 by bus 911, its transmission speed is up to 30[Gbyte/ for example second], therefore can be to show smoothly at a high speed even specific complicated picture image.
In addition, microprocessor 901 makes the picture data of dynamic image content and the voice data in the middle of the voice data stand the audio mixing processing, and the voice data through editor that will as a result of obtain sends to loud speaker 921 by south bridge 904 and sound I/O codec 907, so that based on the audio signal output audio frequency from loud speaker 921.
Realizing by software under the situation of above-mentioned series of processes, the program that constitutes this software is being installed from network or recording medium.
This recording medium comprises that not only the equipment that the is independent of master unit distribution shown in Figure 40 is so that give program distribution user's removable medium 811, as disk (comprising floppy disk), CD (comprising CD-ROM and DVD), magneto optical disk (comprising MD), semiconductor memory etc., also comprise HDD 905, memory device 803, wherein have program stored therein etc., be distributed to the user with the state that is assembled in the equipment master unit.Certainly, storage medium can also be a semiconductor memory, as ROM or flash memory etc.
Described microprocessor 901 in the above and be furnished with 8, but the invention is not restricted to this, and be optional from the quantity of CPU core from CPU core.In addition,, can make such configuration, wherein use the CPU of monokaryon (kernel) configuration rather than be furnished with the host CPU kernel and from the CPU of CPU core for microprocessor 901.In addition, can use a plurality of CPU to replace microprocessor 901, can use a plurality of messaging devices (that is, joint operation is carried out the program that is used to carry out processing of the present invention on a plurality of equipment).
Certainly carry out although describe the step of program stored in the program recorded medium in this specification, be not limited to this time sequencing, but can walk abreast or execution independently by the time sequencing of describing.
In addition, the system that uses in this specification is meant the whole equipment of being furnished with a plurality of equipment.
Note in the above being furnished with a plurality of equipment thereby the configuration that is described as individual equipment can be divided.On the contrary, thus the configuration that is described to a plurality of equipment in the above can be united and constituted individual equipment.In addition, the configuration of equipment can be added other configurations except above-mentioned.In addition, the configuration of the part of an equipment can be included in the configuration of another equipment, as long as the configuration of total system and operation are constant substantially.
Industrial applicability
The invention described above can advantageously be applied to various device or system, as long as the compressed coding of image and transmission and the decoded and output in the transmission destination compressed code. The present invention is particularly advantageous for requiring the compressed encoding from image to short equipment or the system of delay that decoding is exported.
For example, the present invention advantageously is applied to distance medical diagnosis and the treatment of for example using manipulator, watches simultaneously the image of taking with video camera. In addition, the present invention advantageously is applied to such as compressed encoding and the transmission of the middle digital video signals such as the system that uses in the broadcasting station and the decoding that stands the digital video signal of compressed encoding.
In addition, the present invention can be applied to educational system that system, its middle school student and the teacher of the video of distribution residential area can interactive communication etc.
In addition, the present invention can be applied to view data that transmission takes with the portable terminal cell phone of camera function (as have) with image camera function, be applied to video conferencing system, be applied to the surveillance of the document image of taking with the recorder trace surveillance camera, etc.
Claims (25)
1. the encoding device of a coded image data comprises:
Filter, each row piece by the view data of the required line number of the coefficient data that comprises the amount of the delegation of the sub-band of lowest band component at least of generating, for described view data, carry out Filtering Processing, and generate a plurality of sub-bands that constitute by coefficient data according to band decomposition;
Storage device is stored coefficient data each row piece, that described filter generates;
Coefficient permutatation device, according to carrying out the synthetic order of handling, each row of permutatation described coefficient data piece, described memory device stores, wherein said synthetic processing generates view data by the synthetic coefficient data that has been divided into a plurality of sub-bands of each frequency band; With
Code device, this coefficient data of the described coefficient permutatation device permutatation of encoding,
Wherein, described coefficient permutatation device is listed as the described coefficient data of each row piece according to the order rearrangement from the low frequency band component to the high band component.
2. encoding device as claimed in claim 1 also comprises control device, is used to control described filter, described storage device, described coefficient permutatation device and described code device, so that for each row piece parallel work-flow.
3. encoding device as claimed in claim 1, wherein, described filter, described storage device, described coefficient permutatation device and described each processing of code device executed in parallel.
4. encoding device as claimed in claim 1, wherein, described filter is carried out described Filtering Processing on corresponding to the vertical direction of the screen of described view data and horizontal direction.
5. encoding device as claimed in claim 1, wherein, the tap number of the described Filtering Processing of being carried out by described filter and at least one in the resolution levels quantity were determined according to the target delay time.
6. encoding device as claimed in claim 1, wherein, described filter is carried out wavelet filtering and is handled, and wherein makes the coefficient data of the low frequency band component sub-band of described Filtering Processing acquisition further stand described Filtering Processing.
7. encoding device as claimed in claim 6, wherein, described filter uses lift technique to carry out described wavelet filtering and handles.
8. encoding device as claimed in claim 6, wherein, when described filter used lift technique to carry out the Filtering Processing of resolution levels=X+1, this was for the coefficient data execution that calculates with the Filtering Processing of resolution levels=X as the low frequency band component sub-band.
9. encoding device as claimed in claim 6, described storage device also comprises:
First buffer unit is kept at the coefficient data of the low frequency band component sub-band that generates in the process that described wavelet filtering that described filter carries out handles; With
Second buffer unit is kept at the coefficient data of the high band component sub-band that generates in the process that described wavelet filtering that described filter carries out handles.
10. encoding device as claimed in claim 9, wherein, described second buffer unit is preserved the coefficient data of the sub-band of the band component beyond the described lowest band component, has generated up to described filter till the coefficient data of lowest band component sub-band.
11. encoding device as claimed in claim 1, wherein, in case the permutatation of described coefficient permutatation device described coefficient data, described code device is just carried out the entropy coding of the coefficient data of permutatation successively according to the order of permutatation.
12. encoding device as claimed in claim 1, wherein, described code device is carried out coding in batch to the multirow coefficient data in the same sub-band.
13. encoding device as claimed in claim 1, wherein, described code device according to the order of taking high frequency band from low frequency at the coefficient data arranged in one dimension direction stream, the row of all sub-bands of constituting capable piece is encoded.
14. encoding device as claimed in claim 1 also comprises:
The packetizing device adds predetermined headers to coded data that described code device generates, and should and the data subject packetizing;
Dispensing device, the described grouping that described packetizing device is generated sends; With
Control device is controlled described filter, described storage device, described coefficient permutatation device, described code device, described packetizing device and described dispensing device, so that for each row piece parallel work-flow.
15. encoding device as claimed in claim 1 also comprises:
The packetizing device adds predetermined headers to coded data that described code device generates, and should and the data subject packetizing; With
Dispensing device, the described grouping that described packetizing device is generated sends;
Wherein said filter, described storage device, described coefficient permutatation device, described code device, described packetizing device and described dispensing device are for each row piece parallel work-flow.
16. encoding device as claimed in claim 15, wherein, described head comprises the identification information of the described capable piece that is used for identifying this screen, the data length and the coded message of this data subject.
17. encoding device as claimed in claim 16, described code device comprises:
Quantization device quantizes the described coefficient data that described filter generates; With
The source encoding device is to quantizing the quantized result coefficient execution source encoding that described coefficient data obtains by described quantization device;
Wherein, described coded message comprises the information of the quantization step size of the quantification that described quantization device is carried out.
18. the coding method of a coded image data comprises:
Filter step, each row piece by the view data of the required line number of the coefficient data that comprises the amount of the delegation of the sub-band of lowest band component at least of generating, for described view data, carry out Filtering Processing, and generate a plurality of sub-bands that constitute by coefficient data according to band decomposition;
Storing step is stored each row coefficient data piece, that generate in described filter step;
Coefficient permutatation step, according to carrying out the synthetic order of handling, each row of permutatation described coefficient data piece, that in described storing step, store, wherein said synthetic processing generates view data by the synthetic coefficient data that has been divided into a plurality of sub-bands of each frequency band; With
Coding step is coded in this coefficient data of permutatation in the described coefficient permutatation step,
Wherein, in described coefficient permutatation step, be listed as the described coefficient data of each row piece according to the order rearrangement from the low frequency band component to the high band component.
19. the decoding device that the coded data of the view data of wherein having encoded is decoded comprises:
Decoding device, the described coded data of decoding, and generate the coefficient data that comprises in a plurality of sub-bands;
Storage device for each row piece, is stored the coefficient data that described decoding device generates, and described capable piece comprises the view data of the line number that the coefficient data of the amount of the delegation of the sub-band of lowest band component at least of generating is required;
Coefficient permutatation device, according to the order of this coefficient data that synthesizes a plurality of sub-bands that have been divided into each frequency band, each row of permutatation described coefficient data piece, described memory device stores; With
Filter is carried out Filtering Processing for the described coefficient data of described coefficient permutatation device permutatation, and is synthesized this coefficient data according to a plurality of sub-bands of band decomposition, so that generate described view data,
Wherein, described coefficient permutatation device is listed as the described coefficient data of each row piece according to the order rearrangement from the low frequency band component to the high band component.
20. decoding device as claimed in claim 19 also comprises: control device is used to control described decoding device, described storage device, described coefficient permutatation device and described filter, so that for each row piece parallel work-flow.
21. decoding device as claimed in claim 19, wherein, described decoding device, described storage device, described coefficient permutatation device and described each processing of filter executed in parallel.
22. decoding device as claimed in claim 19, wherein, described filter uses lift technique to carry out described Filtering Processing.
23. decoding device as claimed in claim 19, wherein, described decoding device decoding and coding data have wherein been encoded and arrange to have constituted the row of all sub-bands of described capable piece on the one dimension directions.
24. the coding/decoding method that the coded data of the view data of wherein having encoded is decoded comprises:
Decoding step, the described coded data of decoding, and generate the coefficient data that comprises in a plurality of sub-bands;
Storing step for each row piece, is stored the coefficient data that described decoding step generates, and described capable piece comprises the view data of the line number that the coefficient data of the amount of the delegation of the sub-band of lowest band component at least of generating is required;
Coefficient permutatation step, according to the order of this coefficient data that synthesizes a plurality of sub-bands that have been divided into each frequency band, each row of permutatation described coefficient data piece, that in described storing step, store; With
Filter step is carried out Filtering Processing for the described coefficient data of permutatation in described coefficient permutatation step, and is synthesized this coefficient data according to a plurality of sub-bands of band decomposition, so that generate described view data,
Wherein, in described coefficient permutatation step, be listed as the described coefficient data of each row piece according to the order rearrangement from the low frequency band component to the high band component.
25. a transmission system comprises: the encoding device of coded image data; Decoding device with the described coded data of decoding; Described transmission system is used for the described coded data of transmission between described encoding device and described decoding device;
Wherein said encoding device comprises:
First filter, by each row piece of the view data of the required line number of the coefficient data that comprises the amount of the delegation of the sub-band of lowest band component at least of generating,, carry out Filtering Processing for described view data, and generate a plurality of sub-bands that constitute by coefficient data according to band decomposition
First storage device is stored coefficient data each row piece, that described first filter generates,
The first coefficient permutatation device, according to carrying out the synthetic order of handling, each row of permutatation described coefficient data piece, described first memory device stores, wherein said synthetic processing generates view data by the synthetic coefficient data that has been divided into a plurality of sub-bands of each frequency band
Code device, this coefficient data of the described first coefficient permutatation device permutatation of encoding and
Dispensing device sends this coded data that described code device generates,
Wherein, the described first coefficient permutatation device is listed as the described coefficient data of each row piece according to the order rearrangement from the low frequency band component to the high band component;
And wherein said decoding device comprises:
Receiving system receives this coded data that sends from described dispensing device,
Decoding device, the coded data that the described receiving system of decoding receives, and generate the coefficient data that comprises in a plurality of sub-bands;
Second storage device for each row piece, is stored the coefficient data that described decoding device generates, and described capable piece comprises the view data of the line number that the coefficient data of the amount of the delegation of the sub-band of lowest band component at least of generating is required;
The second coefficient permutatation device, according to the order of this coefficient data that synthesizes a plurality of sub-bands that have been divided into each frequency band, each row of permutatation described coefficient data piece, described second memory device stores; With
Second filter is carried out Filtering Processing for the described coefficient data of the described second coefficient permutatation device permutatation, and is synthesized this coefficient data according to a plurality of sub-bands of band decomposition, so that generate described view data,
Wherein, the described second coefficient permutatation device is listed as the described coefficient data of each row piece according to the order rearrangement from the low frequency band component to the high band component.
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005334243 | 2005-11-18 | ||
JP334243/2005 | 2005-11-18 | ||
JP007256/2006 | 2006-01-16 | ||
JP2006007256 | 2006-01-16 | ||
PCT/JP2006/322949 WO2007058294A1 (en) | 2005-11-18 | 2006-11-17 | Encoding device and method, decoding device and method, and transmission system |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101129063A CN101129063A (en) | 2008-02-20 |
CN101129063B true CN101129063B (en) | 2010-05-19 |
Family
ID=39055700
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200680005215.6A Active CN101120584B (en) | 2005-11-18 | 2006-11-17 | Encoding device and method, composite device and method, and transmission system |
CN200680005866.5A Active CN101129063B (en) | 2005-11-18 | 2006-11-17 | Encoding device and method, decoding device and method, and transmission system |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200680005215.6A Active CN101120584B (en) | 2005-11-18 | 2006-11-17 | Encoding device and method, composite device and method, and transmission system |
Country Status (2)
Country | Link |
---|---|
CN (2) | CN101120584B (en) |
RU (1) | RU2340114C1 (en) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101474756B1 (en) | 2009-08-13 | 2014-12-19 | 삼성전자주식회사 | Method and apparatus for encoding and decoding image using large transform unit |
ES2549734T3 (en) | 2010-04-13 | 2015-11-02 | Ge Video Compression, Llc | Video encoding using multi-tree image subdivisions |
KR101584480B1 (en) | 2010-04-13 | 2016-01-14 | 지이 비디오 컴프레션, 엘엘씨 | Inter-plane prediction |
KR102166520B1 (en) | 2010-04-13 | 2020-10-16 | 지이 비디오 컴프레션, 엘엘씨 | Sample region merging |
CN106454371B (en) | 2010-04-13 | 2020-03-20 | Ge视频压缩有限责任公司 | Decoder, array reconstruction method, encoder, encoding method, and storage medium |
JP5707412B2 (en) | 2010-09-29 | 2015-04-30 | パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America | Image decoding method, image encoding method, image decoding device, image encoding device, program, and integrated circuit |
BR112013004112A2 (en) | 2010-09-30 | 2016-06-28 | Panasonic Corp | image decoding method, image coding method, image decoding device, image coding device, program, and integrated circuit |
JP6037156B2 (en) * | 2011-08-24 | 2016-11-30 | ソニー株式会社 | Encoding apparatus and method, and program |
JP5966345B2 (en) * | 2011-12-21 | 2016-08-10 | ソニー株式会社 | Image processing apparatus and method |
JP5966346B2 (en) * | 2011-12-21 | 2016-08-10 | ソニー株式会社 | Image processing apparatus and method |
CA2898150C (en) * | 2012-01-30 | 2017-11-14 | Samsung Electronics Co., Ltd. | Method and apparatus for video encoding for each spatial sub-area, and method and apparatus for video decoding for each spatial sub-area |
CN111726117B (en) * | 2019-03-20 | 2024-07-12 | 中国石油化工股份有限公司 | Digital core data parallel compression coding method and parallel decompression decoding method |
CN114143557B (en) * | 2021-12-24 | 2023-07-07 | 成都索贝数码科技股份有限公司 | Low-complexity coding method for wavelet transformation high-frequency coefficient of video image |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1604636A (en) * | 2003-10-03 | 2005-04-06 | 三洋电机株式会社 | Data processing apparatus |
JP2005109776A (en) * | 2003-09-30 | 2005-04-21 | Sony Corp | Encoding device and decoding device |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO1999062189A2 (en) * | 1998-05-27 | 1999-12-02 | Microsoft Corporation | System and method for masking quantization noise of audio signals |
JP2003204439A (en) * | 2002-01-08 | 2003-07-18 | Canon Inc | Image coding apparatus and method therefor |
JP3700670B2 (en) * | 2002-03-28 | 2005-09-28 | ソニー株式会社 | Bit plane encoding device |
-
2006
- 2006-11-17 CN CN200680005215.6A patent/CN101120584B/en active Active
- 2006-11-17 RU RU2007127508/09A patent/RU2340114C1/en active
- 2006-11-17 CN CN200680005866.5A patent/CN101129063B/en active Active
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2005109776A (en) * | 2003-09-30 | 2005-04-21 | Sony Corp | Encoding device and decoding device |
CN1604636A (en) * | 2003-10-03 | 2005-04-06 | 三洋电机株式会社 | Data processing apparatus |
Also Published As
Publication number | Publication date |
---|---|
CN101120584B (en) | 2011-04-20 |
CN101120584A (en) | 2008-02-06 |
RU2340114C1 (en) | 2008-11-27 |
CN101129063A (en) | 2008-02-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101129063B (en) | Encoding device and method, decoding device and method, and transmission system | |
KR101377021B1 (en) | Encoding device and method, decoding device and method, and transmission system | |
CN101543038B (en) | Information processing device and method | |
CN101133649B (en) | Encoding device, encoding method, decoding device, and decoding method | |
CN101237577B (en) | Information processing apparatus and method | |
US8031960B2 (en) | Wavelet transformation device and method, wavelet inverse transformation device and method, program, and recording medium | |
CN1312937C (en) | Image transmission method | |
CN101237576B (en) | Information processing apparatus and method | |
CN100551058C (en) | The video coding system that provides separate coding chains for dynamically selected for the small size or the full-scale broadcast of Dynamic Selection | |
CN100477788C (en) | Image processing display device and method | |
US20080013845A1 (en) | Wavelet transformation device and method, wavelet inverse transformation device and method, program, and recording medium | |
CN101138248A (en) | Encoding device, encoding method, encoding program, decoding device, decoding method, and decoding program | |
CN109804632A (en) | Image processing apparatus and image processing method | |
CN104952470A (en) | Video format for digital video recorder | |
CN101494788B (en) | Method and apparatus for compressing and decompressing video image | |
JP2000341689A (en) | Wavelet inverse converting device and its method and wavelet decoding device and its method | |
CN101902648A (en) | Wavelet transform system, the method and computer program product | |
US6628718B1 (en) | Color solid-state image-pickup camera system |
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 |