Huffman encoder, huffman encoding method and recording medium having program for huffman encoding process recorded thereon
Abstract
This record has no abstract on file.
Term
Term ended
Expired 1 February 2020, 6.6 years ago.
- Priority and filed
- Granted
- Expired
- Today
3 claims: 3 independent, 0 dependent
- 1一連のデータをハフマン符号に符号化するハフマン符号化装置であって、 DCT係数を予め定められた量子化係数を用いて量子化し、量子化されたDCT係数に整数化処理を行わず一連のデータを出力する量子化手段と、 一連のデータの各々が所定範囲内にあるか否かを判定する判定手段と、前記一連のデータのうち前記所定範囲内にあるデータを無効係数とするとともに前記所定範囲内にないデータを 整数化処理して 有効係数とし、連続する無効係数の数と有効係数との組み合わせを用いて符号化を行う符号化手段とを備えたことを特徴とするハフマン符号化装置。
- 2一連のデータをハフマン符号に符号化するハフマン符号化方法であって、 DCT係数を予め定められた量子化係数を用いて量子化し、量子化されたDCT係数に整数化処理を行わず一連のデータを出力し、 一連のデータの各々が所定範囲内にあるか否かを判定し、前記一連のデータのうち前記所定範囲内にあるデータを無効係数とするとともに前記所定範囲内にないデータを 整数化処理して 有効係数とし、連続する無効係数の数と有効係数との組み合わせを用いて符号化を行うことを特徴とするハフマン符号化方法。
- 3演算処理装置が読み込み可能なハフマン符号化処理プログラムを記録した記録媒体であって、前記ハフマン符号化処理プログラムは、 DCT係数を予め定められた量子化係数を用いて量子化し、量子化されたDCT係数に整数化処理を行わず一連のデータを出力する処理と、 一連のデータの各々が所定範囲内にあるか否かを判定する処理と、前記一連のデータのうち前記所定範囲内にあるデータを無効係数とするとともに前記所定範囲内にないデータを 整数化処理して 有効係数とし、連続する無効係数の数と有効係数との組み合わせを用いて符号化を行う処理とを、前記演算処理装置に実行させることを特徴とするハフマン符号化処理プログラムを記録した記録媒体。
Independent claims3
158 paragraphs in 1 section, as filed
【0001】
[Technical field to which the invention belongs]
The present invention relates to a Huffman coding device that encodes discrete cosine transform data into a Huffman code, a Huffman coding method, and a recording medium that records a Huffman coding processing program.
【0002】
[Conventional technology]
Image data contains a very large amount of information. Therefore, processing the image data as it is is not practical in terms of memory capacity and communication speed. Therefore, image data compression technology is important.
【0003】
JPEG (Joint Photographic Expert Group) is one of the international standards for image data compression. In JPEG, a DCT (discrete cosine transform) method that performs lossy coding and a lossless coding method that performs DPCM (Differential PCM) in a two-dimensional space are adopted. The DCT method of image data compression will be described below.
【0004】
FIG. 7 is a block diagram of a Huffman coding apparatus that performs DCT-type image data compression.
【0005】
The DCT transformant 100 performs discrete cosine transform (hereinafter referred to as DCT transform) the input original image data and outputs the DCT coefficient. In this DCT transform, first, as shown in FIG. 8, the image data is divided into a plurality of 8 × 8 pixel blocks. As shown in FIG. 9, 64 pixel data P are contained in one 8 × 8 pixel block.<sub>XY</sub>(X, Y = 0, ..., 7) is included. When two-dimensional DCT transform is performed on the divided 8 × 8 pixel block, 64 DCT coefficients S<sub>UV</sub>(U, V = 0, ..., 7) is obtained.
【0006】
DCT coefficient S<sub>00</sub>Is called the DC coefficient, and the remaining 63 DCT coefficients are called the AC coefficient. As shown in FIG. 9, the DCT-transformed block contains a large amount of high-frequency horizontal frequency components as it progresses from left to right, and contains a large amount of high-frequency vertical frequency components as it progresses from top to bottom.
【0007】
In the quantizer 110 of FIG. 7, the DCT coefficient output from the DCT transformer 100 is converted into 8 × 8 quantization coefficients Q.<sub>UV</sub>Quantized by the following equation using a quantization table consisting of (U, V = 0, ..., 7), and the quantized DCT coefficient γ<sub>UV</sub>Output (U, V = 0, ..., 7).
【0008】
γ<sub>UV</sub>= round (S<sub>UV</sub>/ Q<sub>UV</sub>) ... (1) Here, round indicates the integer conversion process to the nearest integer. This quantization controls the image quality and the amount of coded information. Figure 10 shows an example of the DCT coefficient output from the quantizer 110. In FIG. 10, A, B, C, D, E, and F represent values other than 0.
【0009】
The Huffman coding unit 120 in FIG. 7 has a DCT coefficient γ output from the quantizer 110.<sub>UV</sub>Is encoded into a Huffman code, and the coded data is output. In the coding of the DC coefficient, the difference value between the DC coefficient of the previous block and the DC coefficient of the current block is obtained, and the difference value is coded. In this case, the difference values of the DC coefficients are grouped, the group number SSSS is assigned to each difference value, and the Huffman code is assigned to each group number SSSS.
【0010】
In the coding of the AC coefficient, as shown in FIG. 11, the AC coefficient is first arranged in one dimension by a zigzag scan. This one-dimensionally arranged AC coefficient is encoded using a run length NNNN indicating the number of consecutive 0 coefficients (invalid coefficient) and a value of a coefficient other than 0 (effective coefficient). .. In this case, the effective coefficients are grouped and each effective coefficient is assigned the group number SSSS. In AC coefficient coding, a Huffman code is assigned to the combination of run length NNNN and group number SSSS.
【0011】
Figure 12 shows an example of a Huffman code table for DC coefficients. For example, the Huffman code 00 with a code length of 2 is assigned to the difference value of the DC coefficient with the group number SSSS 0, and the code length is assigned to the difference value of the DC coefficient with the group number SSSS 1. The Huffman code 010 with a code length of 3 is assigned, and the Huffman code 010 with a code length of 3 is assigned to the difference value of the DC coefficient whose group number SSSS is 2.
【0012】
In the Huffman code table of FIG. 12, the group number SSSS only limits the group to which the difference value of the DC coefficient belongs. Additional bits are used to identify one of the DC coefficients that belong to a group.
【0013】
Figure 13 shows an example of a Huffman code table for AC coefficients. For example, the combination of run length and group number NNNN / SSSS is "0/0" The AC coefficient is assigned the Huffman code "1010" with a code length of 4, and NNNN / SSSS is "0/1". The Huffman code 00 with a code length of 2 is assigned to the AC coefficient, and the Huffman code 01 with a code length of 2 is assigned to the AC coefficient with NNNN / SSSS 0/2.
【0014】
In the Huffman code table of FIG. 13, the group number SSSS only limits the group to which the effective coefficient belongs. Additional bits are used to identify one of the effective coefficients that belong to a group.
【0015】
[Problems to be Solved by the Invention]
FIG. 14 is a schematic diagram showing an example of Huffman coding processing in the conventional Huffman coding apparatus shown in FIG. 7.
【0016】
As shown in FIG. 14, the DCT coefficient S<sub>UV</sub>Quantized by the above equation (1), and the quantized DCT coefficient γ<sub>UV</sub>To get. In the example of FIG. 14, the DCT coefficient S<sub>00</sub>Is "260" and the quantization coefficient Q<sub>00</sub>Is the quantized DCT coefficient γ when is 16<sub>00</sub>Is "16". Similarly, γ<sub>01</sub>= 4, γ<sub>02</sub>=-2, γ<sub>10</sub>= -7, γ<sub>11</sub>= 3, γ<sub>21</sub>= -1, γ<sub>30</sub>= -1, and other quantized DCT coefficients γ<sub>UV</sub>Is 0.
【0017】
Quantized DCT coefficient γ<sub>UV</sub>Are arranged in one dimension by zigzag scan, and the run length and effective coefficient indicating the number of consecutive "0" coefficients are obtained. The first effective coefficient (DC coefficient) is "16". After that, the combination of run length and effective coefficient is "0/4", "0 / -7", "1/3", "0 / -2", "2 / -1", "0 / -1". The final run length is "54".
【0018】
In the above-mentioned conventional Huffman coding apparatus, when changing the data compression ratio, the 8 × 8 quantization coefficients Q included in the quantization table are used.<sub>UV</sub>Need to change. Therefore, the process for controlling the data compression rate becomes complicated.
【0019】
An object of the present invention is to provide a recording medium on which a Huffman coding apparatus, a Huffman coding method, and a Huffman coding processing program capable of easily changing the compression rate of data are recorded.
【0020】
[Means for Solving Problems and Effects of Invention]
(1) First Invention The Huffman coding device according to the first invention is a Huffman coding device that encodes a series of data into a Huffman code.<u style="single">A quantization means that quantizes the DCT coefficient using a predetermined quantization coefficient and outputs a series of data without performing integerization processing on the quantized DCT coefficient.</u>Judgment means for determining whether or not each of the series of data is within the predetermined range, and data within the predetermined range of the series of data is set as an invalid coefficient and data not within the predetermined range is used.<u style="single">Integerization process</u>It is provided with a coding means for coding by using a combination of a number of consecutive invalid coefficients and an effective coefficient as an effective coefficient.
【0021】
In the Huffman coding apparatus according to the present invention,<u style="single">The DCT coefficient is quantized using a predetermined quantization coefficient, and the quantized DCT coefficient is not quantized and a series of data is output by the quantization means.</u>The determination means determines whether or not each of the series of data is within a predetermined range. Then, in the coding means, the data within the predetermined range of the series of data is regarded as the invalid coefficient, and the data not within the predetermined range is regarded as the invalid coefficient.<u style="single">Integered</u>It is defined as an effective coefficient, and coding is performed using a combination of the number of consecutive invalid coefficients and the effective coefficient.
【0022】
In this case, the number of invalid coefficients can be arbitrarily adjusted by arbitrarily changing the predetermined range in the determination means. Therefore, it is possible to easily change the data compression rate.
【0024】<u style="single">Also,</u>Since the number of invalid coefficients can be arbitrarily adjusted by arbitrarily changing the predetermined range in the determination means, the data compression rate can be easily changed without changing the quantization coefficient in the quantization means.
【0025】
(<u style="single">2</u>) No.<u style="single">2</u>Invention No.<u style="single">2</u>The Huffman coding method according to the invention of<u style="single">The DCT coefficient is quantized using a predetermined quantization coefficient, and a series of data is output without performing integerization processing on the quantized DCT coefficient.</u>It is a Huffman coding method that encodes a series of data into a Huffman code. It determines whether or not each of the series of data is within a predetermined range, and the data within the predetermined range of the series of data is invalidated. And data that is not within the specified range<u style="single">Integerization process</u>It is used as an effective coefficient, and coding is performed using a combination of the number of consecutive invalid coefficients and the effective coefficient.
【0026】
In the Huffman coding method according to the present invention,<u style="single">The DCT coefficient is quantized using a predetermined quantization coefficient, and a series of data is output without performing integerization processing on the quantized DCT coefficient.</u>Whether or not each of the series of data is within the predetermined range is determined, and among the series of data, the data within the predetermined range is regarded as the invalid coefficient, and the data not within the predetermined range is regarded as the invalid coefficient.<u style="single">Integered</u>It is considered as an effective coefficient. Then, coding is performed using a combination of the number of consecutive invalid coefficients and the effective coefficient.
【0027】
In this case, the number of invalid coefficients can be arbitrarily adjusted by arbitrarily changing the predetermined range. Therefore, it is possible to easily change the data compression rate.
【0029】<u style="single">Also,</u>Since the number of invalid coefficients can be arbitrarily adjusted by arbitrarily changing the predetermined range, the data compression rate can be easily changed without changing the quantization coefficient.
【0030】
(<u style="single">3</u>) No.<u style="single">3</u>Invention No.<u style="single">3</u>The recording medium on which the Huffman coding processing program according to the present invention is recorded is a recording medium on which the Huffman coding processing program that can be read by the arithmetic processing unit is recorded.<u style="single">A process in which the DCT coefficient is quantized using a predetermined quantization coefficient and a series of data is output without performing an integerization process on the quantized DCT coefficient.</u>The Huffman coding processing program performs a process of determining whether or not each of a series of data is within a predetermined range, and sets the data within the predetermined range as an invalid coefficient and the data not within the predetermined range. The<u style="single">Integerization process</u>An arithmetic processing unit is made to execute a process of coding using a combination of a number of consecutive invalid coefficients and an effective coefficient as an effective coefficient.
【0031】
According to the Huffman coding processing program according to the present invention.<u style="single">The DCT coefficient is quantized using a predetermined quantization coefficient, and a series of data is output without performing integerization processing on the quantized DCT coefficient.</u>Whether or not each of the series of data is within the predetermined range is determined, and among the series of data, the data within the predetermined range is regarded as the invalid coefficient, and the data not within the predetermined range is regarded as the invalid coefficient.<u style="single">Integered</u>It is considered as an effective coefficient. Then, coding is performed using a combination of the number of consecutive invalid coefficients and the effective coefficient.
【0032】
In this case, the number of invalid coefficients can be arbitrarily adjusted by arbitrarily changing the predetermined range. Therefore, it is possible to easily change the data compression rate.
【0034】<u style="single">Also,</u>Since the number of invalid coefficients can be arbitrarily adjusted by arbitrarily changing the predetermined range, the data compression rate can be easily changed without changing the quantization coefficient.
【0035】
BEST MODE FOR CARRYING OUT THE INVENTION
FIG. 1 is a block diagram showing a configuration of a Huffman coding apparatus according to an embodiment of the present invention.
【0036】
In FIG. 1, the Huffman encoder 1 includes a DCT transformer 10, a quantizer 20, a comparator 30, a run length counter 40, and an encoder 50. The comparator 30, the run length counter 40, and the encoder 50 constitute the Huffman coding unit 60.
【0037】
The DCT transformant 10 performs discrete cosine transform (hereinafter referred to as DCT transform) the input original image data and outputs the DCT coefficient. In this DCT transform, first, as shown in FIG. 8, the image data is divided into a plurality of 8 × 8 pixel blocks. As shown in FIG. 9, 64 pixel data P are contained in one 8 × 8 pixel block.<sub>XY</sub>(X, Y = 0, ..., 7) is included. When two-dimensional DCT transform is performed on the divided 8 × 8 pixel block, 64 DCT coefficients S<sub>UV</sub>(U, V = 0, ..., 7) is obtained. As mentioned above, the DCT coefficient S<sub>00</sub>Is called the DC coefficient, and the remaining 63 DCT coefficients are called the AC coefficient.
【0038】
The quantizer 20 has a DCT coefficient S output from the DCT transformer 10.<sub>UV</sub>8 × 8 quantization coefficients Q<sub>UV</sub>Quantized by the following equation using a quantization table consisting of (U, V = 0, ..., 7), and the quantized DCT coefficient γ<sub>UV</sub>Output (U, V = 0, ..., 7).
【0039】
γ<sub>UV</sub>= S<sub>UV</sub>/ Q<sub>UV</sub> ... (2) In the quantization of this embodiment, S<sub>UV</sub>/ Q<sub>UV</sub>The calculation result of is not converted to an integer. Therefore, the quantized DCT coefficient γ<sub>UV</sub>Has a value after the decimal point.
【0040】
An adjustable threshold TH is set in the comparator 30. The comparator 30 has a DCT coefficient γ output from the quantizer 20.<sub>UV</sub>Determines whether or not satisfies the following equation.
【0041】
| γ<sub>UV</sub>| TH ... (3) This comparator 30 has a quantized DCT coefficient γ.<sub>UV</sub>Satisfies the above equation (3), then its quantized DCT coefficient γ<sub>UV</sub>Is regarded as an invalid coefficient. In this case, the comparator 30 outputs a detection signal CT indicating the detection of the invalid coefficient. In addition, the comparator 30 has a quantized DCT coefficient γ.<sub>UV</sub>Does not satisfy the above equation (3), then its quantized DCT coefficient γ<sub>UV</sub>Is regarded as an effective coefficient. In this case, the comparator 30 has a quantized DCT coefficient γ.<sub>UV</sub>Is converted to the nearest integer, and the converted DCT coefficient is output as the effective coefficient VC, and the reset signal RS is output. In addition, the comparator 30 has 8 × 8 quantized DCT coefficients γ for one block.<sub>UV</sub>The reset signal RS is also output when the processing of is completed.
【0042】
The run length counter 40 counts the detection signal CT output from the comparator 30 and outputs the count result as the run length RL. Further, the run length counter 40 resets the count result to 0 in response to the reset signal RS output from the comparator 30. The run length RL is the number of consecutive invalid coefficients, that is, the continuous DCT coefficient γ that satisfies the above equation (3).<sub>UV</sub>Represents the number of.
【0043】
The encoder 50 performs Huffman coding based on the effective coefficient VC output from the comparator 30 and the run length RL output from the run length counter 40, and outputs the encoded data.
【0044】
In the coding of the DC coefficient, the difference value between the DC coefficient of the previous block and the DC coefficient of the current block is obtained, and the difference value is coded. In this case, the difference values of the DC coefficients are grouped, a group number SSSS is assigned to each difference value, and a Huffman code is assigned to each group number SSSS.
【0045】
In the coding of the AC coefficient, as shown in FIG. 11, the AC coefficient is first arranged in one dimension by a zigzag scan. The AC coefficients arranged in this one dimension are encoded using a run length RL indicating the number of consecutive invalid coefficients and an effective coefficient VC. In this case, the effective coefficient VCs are grouped and each effective coefficient VC is assigned the group number SSSS. In the AC coefficient coding, a Huffman code is assigned to the combination of the run length RL and the group number SSSS.
【0046】
FIG. 2 shows an example of a Huffman coding table for the AC coefficient used in the Huffman coding device 1 of FIG. For example, the combination of run length and group RL / SSSS is "0/0" AC coefficient is assigned Huffman code "1010" with code length 4 and RL / SSSS is "0/1" AC The Huffman code 00 with a code length of 2 is assigned to the coefficient, and the Huffman code 01 with a code length of 2 is assigned to the AC coefficient having RL / SSSS 0/2.
【0047】
In the Huffman code table of FIG. 2, the group number SSSS only limits the group to which the effective coefficient belongs. Additional bits are used to identify one of the effective coefficients that belong to a group.
【0048】
In the actual coding process, the last quantized DCT coefficient γ in one block<sub>77</sub>If is an invalid coefficient, EOB (End of Block) is added immediately after the last effective coefficient to end the block coding. Last quantized DCT coefficient γ in one block<sub>77</sub>If is an effective coefficient, EOB is not added. If the number of consecutive invalid coefficients in one block exceeds 15, ZRL representing the run length RL of 16 consecutive invalid coefficients is repeatedly assigned until the remaining run length RL becomes 15 or less. To do.
【0049】
In this embodiment, the comparator 30 corresponds to the determination means, and the run length counter 40 and the encoder 50 constitute the coding means. Further, the quantizer 20 corresponds to the quantization means.
【0050】
The DCT converter 10, the quantization device 20, and the Huffman coding unit 60 in the Huffman coding device shown in FIG. 1 can be realized by hardware such as an integrated circuit, or by hardware and software such as a computer. You can also.
【0051】
Next, an example in which the Huffman coding device 1 of FIG. 1 is realized by hardware and software is shown. FIG. 3 is a block diagram showing a hardware configuration of the Huffman coding device 1 of FIG.
【0052】
The Huffman coding device 1 is composed of a CPU (central processing unit) 11, a RAM (random access memory) 12, a ROM (read-only memory) 13, and an external storage device 14. The external storage device 14 includes a recording medium drive device 15 such as a hard disk drive, a floppy disk drive, and a CD-ROM drive, and a recording medium 16 such as a hard disk, a floppy disk, and a CD-ROM.
【0053】
The system program is stored in ROM13. A Huffman coding processing program is recorded on the recording medium 16. The CPU 11 operates according to the system program stored in the ROM 13, reads the Huffman coding processing program recorded on the recording medium 16 via the recording medium driving device 15, and executes the Huffman coding processing program on the RAM 12.
【0054】
As a result, the DCT transform process by the DCT transformor 10 in FIG. 1, the quantization process by the quantizer 20, and the coding process by the Huffman coding unit 60 are realized. This coding process includes output processing of run length RL and effective coefficient VC.
【0055】
FIG. 4 is a flowchart showing the output processing of the run length RL and the effective coefficient VC in the Huffman coding processing program recorded on the recording medium 16 of FIG.
【0056】
First, set the run length RL to 0 (step S1). Next, the DCT coefficient γ quantized by the quantizer 20<sub>UV</sub>Is entered (step S2). And the quantized DCT coefficient γ<sub>UV</sub>Determine if the absolute value of is less than or equal to the threshold TH (step S3).
【0057】
Quantized DCT coefficient γ<sub>UV</sub>If the absolute value of is less than or equal to the threshold TH, the quantized DCT coefficient γ<sub>UV</sub>Is regarded as an invalid coefficient, 1 is added to the run length RL (step S4), and the process returns to step S2.
【0058】
In step S3, the quantized DCT coefficient γ<sub>UV</sub>If the absolute value of is greater than the threshold TH, then its quantized DCT coefficient γ<sub>UV</sub>Is converted to an integer and output as an effective coefficient VC (step S5). Also, the current run length RL is output (step S6). Then, returning to step S1, the next quantized DCT coefficient γ<sub>UV</sub>The processing of steps S1 to S6 is executed.
【0059】
As described above, in the actual coding process, when the number of consecutive invalid coefficients in one block exceeds 15, ZRL representing the run length of 16 consecutive invalid coefficients is used as the remaining run. Output repeatedly until the length is 15 or less.
【0060】
In the above example, the Huffman coding processing program is recorded on the recording medium 16 of the external storage device 14, but the Huffman coding processing program is stored in the ROM 13 and the CPU 11 stores the Huffman coding processing program stored in the ROM 13. It may be read and executed on RAM12. Further, the Huffman coding processing program received via a communication medium such as a communication line may be executed on the RAM 12. In this case, the communication medium becomes the recording medium.
【0061】
FIG. 5 is a schematic diagram showing an example of the Huffman coding process in the Huffman coding device 1 of FIG. In the example of FIG. 5, the threshold TH is set to 0.2.
【0062】
As shown in Figure 5, the DCT coefficient S<sub>UV</sub>Quantized by the above equation (2), and the quantized DCT coefficient γ<sub>UV</sub>To get.
【0063】
In the example of Figure 5, the DCT coefficient S<sub>00</sub>Is "260" and the quantization coefficient Q<sub>00</sub>Is the quantized DCT coefficient γ when is 16<sub>00</sub>Is "16.3". Similarly, γ<sub>01</sub>= 4.4, γ<sub>02</sub>= -1.6, γ<sub>03</sub>= 0.3, γ<sub>10</sub>= -6.6, γ<sub>11</sub>= 3.0, γ<sub>13</sub>= -0.4, γ<sub>21</sub>= -0.6, γ<sub>30</sub>= -0.6, γ<sub>41</sub>= -0.3, and these quantized DCT coefficients γ<sub>UV</sub>Does not satisfy the above equation (3), so it is regarded as an effective coefficient. Other quantized DCT coefficients γ<sub>UV</sub>Is regarded as an invalid coefficient because it satisfies the above equation (3).
【0064】
Quantized DCT coefficient γ<sub>UV</sub>Are arranged one-dimensionally by zigzag scan to obtain the run length RL indicating the number of consecutive invalid coefficients that satisfy the above equation (3), and the quantized DCT coefficient γ that does not satisfy the above equation (3).<sub>UV</sub>Is converted to an integer by rounding to 4 and obtained as the effective coefficient VC. In this case, the quantized DCT coefficient γ becomes 0 by integerization.<sub>UV</sub>Is rounded up to "1" and output as an effective coefficient VC. For example, the quantized DCT coefficient γ<sub>UV</sub>= 0.3 is output as "1".
【0065】
The effective coefficient VC (DC coefficient) at the beginning of the block is 16. There is no run length RL before the leading effective coefficient VC. After that, the combination of run length RL and effective coefficient VC is "0/4", "0 / -7", "1/3", "0 / -2", "0/1", "1 /-". 1 , 0/1 , 3/1 , 5/1 , and the final run length RL is 44 . In the example of FIG. 5, the data compression ratio is lower than that of the example of FIG.
【0066】
FIG. 6 is a schematic diagram showing another example of the Huffman coding process in the Huffman coding device 1 of FIG. In the example of FIG. 6, the threshold TH is set to 1.5.
【0067】
As shown in Figure 6, the DCT coefficient S<sub>UV</sub>Quantized by the above equation (2), and the quantized DCT coefficient γ<sub>UV</sub>To get.
【0068】
In the example of Figure 6, the DCT coefficient S<sub>00</sub>Is "260" and the quantization coefficient Q<sub>00</sub>Is the quantized DCT coefficient γ when is 16<sub>00</sub>Is "16.3". Similarly, γ<sub>01</sub>= 4.4, γ<sub>02</sub>= -1.6, γ<sub>10</sub>= -6.6, γ<sub>11</sub>= 3.0, and these quantized DCT coefficients γ<sub>UV</sub>Does not satisfy the above equation (3), so it is regarded as an effective coefficient. Other quantized DCT coefficients γ<sub>UV</sub>Is regarded as an invalid coefficient because it satisfies the above equation (3).
【0069】
Quantized DCT coefficient γ<sub>UV</sub>Are arranged one-dimensionally by zigzag scan to obtain the run length RL indicating the number of consecutive invalid coefficients that satisfy the above equation (3), and the quantized DCT coefficient γ that does not satisfy the above equation (3).<sub>UV</sub>Is converted to an integer by rounding to 4 and obtained as the effective coefficient VC.
【0070】
The effective coefficient VC (DC coefficient) at the beginning of the block is 16. There is no run length RL before the leading effective coefficient VC. After that, the combination of run length RL and effective coefficient VC is "0/4", "0 / -7", "1/3", "0 / -2", and the final run length RL is "59". It becomes. In the example of FIG. 6, the data compression ratio is higher than that of the example of FIG.
【0071】
As described above, in the Huffman coding apparatus 1 of the present embodiment, the quantized DCT coefficient γ output from the quantizer 20 by arbitrarily adjusting the threshold value TH.<sub>UV</sub>DCT coefficient γ which is regarded as an invalid coefficient<sub>UV</sub>The number of can be adjusted arbitrarily, and the run length RL indicating the number of consecutive invalid coefficients can be adjusted arbitrarily. Therefore, the 8 × 8 quantization coefficients Q included in the quantization table.<sub>UV</sub>It is possible to easily change the data compression rate without changing the data.
【0072】
In the above embodiment, in the quantization by the quantizer 20, S<sub>UV</sub>/ Q<sub>UV</sub>Although the calculation result of is not integerized, S is shown in the above equation (1) at the time of quantization.<sub>UV</sub>/ Q<sub>UV</sub>The calculation result of may be converted into an integer.
【0073】
Further, in the above embodiment, the quantized DCT coefficient γ<sub>UV</sub>DCT coefficient γ when the absolute value of is less than or equal to the threshold value TH<sub>UV</sub>Is regarded as the invalid coefficient, but the quantized DCT coefficient γ is regarded as the invalid coefficient.<sub>UV</sub>The range of can be set arbitrarily.
[Simple explanation of drawings]
FIG. 1 is a block diagram showing a configuration of a Huffman coding apparatus according to an embodiment of the present invention.
FIG. 2 is a diagram showing an example of a Huffman coding table for AC coefficients used in the Huffman coding apparatus of FIG.
3 is a block diagram showing a hardware configuration of the Huffman coding apparatus of FIG. 1. FIG.
FIG. 4 is a flowchart showing an output process of a run length and an effective coefficient in the Huffman coding processing program recorded on the recording medium of FIG.
5 is a schematic diagram showing an example of Huffman coding processing in the Huffman coding apparatus of FIG. 1. FIG.
6 is a schematic diagram showing another example of Huffman coding processing in the Huffman coding apparatus of FIG. 1. FIG.
FIG. 7 is a block diagram showing a configuration of a conventional Huffman coding apparatus.
FIG. 8 is a diagram showing blocking of image data.
FIG. 9 is a diagram showing an 8 × 8 pixel block and a DCT-converted block.
FIG. 10 is a diagram showing an example of a quantized DCT coefficient.
FIG. 11 is a diagram for explaining a zigzag scan.
FIG. 12 is a diagram showing an example of a Huffman code table for DC coefficients.
FIG. 13 is a diagram showing an example of a Huffman coding table for AC coefficients used in a conventional Huffman coding apparatus.
FIG. 14 is a schematic diagram showing an example of Huffman coding processing in a conventional Huffman coding apparatus.
[Explanation of symbols]
1 Huffman coding device 10 DCT converter 11 CPU12 RAM13 ROM14 External storage device 15 Recording medium drive device 16 Recording medium 20 Quantizer 30 Comparator 40 Run length counter 50 Encoder 60 Huffman coding unit
Every citation, both ways
| Document | Relation | Office |
|---|---|---|
| JP04356886A | Cites | Japan |
| JP03229571A | Cites | Japan |
| JP06189140A | Cites | Japan |
| JP04177916A | Cites | Japan |
| JP11098025A | Cites | Japan |
| JP06070175A | Cites | Japan |
4 members in 2 offices
Priority claims2
| Document | Office | Kind | Date |
|---|---|---|---|
| 2000023480 | Japan | A | |
| JP20000023480 | – | – | – |
Members4
| Document | Office | Kind | |
|---|---|---|---|
| US2001011959A1 | United States of America | A1 | |
| JP2001217721A | Japan | A | |
| US6606039B2 | United States of America | B2 | |
| JP3603000B2This record | Japan | B2 |
36 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Cancellation because of no payment of annual feesLAPS | LAPS | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Written notification of registration of transferJAPANESE INTERMEDIATE CODE: R350R350 | R350 | |
| Written request for registration of change of domicileJAPANESE INTERMEDIATE CODE: R313531S531 | S531 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Written notification of registration of transferJAPANESE INTERMEDIATE CODE: R350R350 | R350 | |
| Request for change of ownership or part of ownershipJAPANESE INTERMEDIATE CODE: R313113S111 | S111 | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| First payment of annual fees (during grant procedure)JAPANESE INTERMEDIATE CODE: A61A61 | A61 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Report on retrievalJAPANESE INTERMEDIATE CODE: A971007A977 | A977 |
Numbers
- Publication
- 3603000
- Publication, DOCDB
- 3603000
- Publication, EPODOC
- JP3603000B
- Application
- 23480
- Application, DOCDB
- 2000023480
- Application, EPODOC
- JP20000023480
Titles2
- Japanese
- ハフマン符号化装置、ハフマン符号化方法およびハフマン符号化処理プログラムを記録した記録媒体
- English
- A recording medium on which a Huffman coding device, a Huffman coding method, and a Huffman coding processing program are recorded.
Classification
- CPC, 2
- H03M7/40
- G06T9/007
- IPC, 9
- H04N1 41
- G06T9 00
- H03M7 40
- H04N1 419
- H04N19 60
- H04N19 625
- H04N19 85
- H04N19 91
- H04N19 93