WO2007148425A1 - 画像圧縮装置、画像復元装置、及びプログラム - Google Patents

画像圧縮装置、画像復元装置、及びプログラム Download PDF

Info

Publication number
WO2007148425A1
WO2007148425A1 PCT/JP2007/000406 JP2007000406W WO2007148425A1 WO 2007148425 A1 WO2007148425 A1 WO 2007148425A1 JP 2007000406 W JP2007000406 W JP 2007000406W WO 2007148425 A1 WO2007148425 A1 WO 2007148425A1
Authority
WO
WIPO (PCT)
Prior art keywords
coefficient
difference value
unit
pixel
function
Prior art date
Application number
PCT/JP2007/000406
Other languages
English (en)
French (fr)
Inventor
Shigeru Yoshida
Original Assignee
Fujitsu Limited
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fujitsu Limited filed Critical Fujitsu Limited
Publication of WO2007148425A1 publication Critical patent/WO2007148425A1/ja

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Definitions

  • Image compression apparatus image restoration apparatus, and program
  • the present invention relates to a technique for compressing image data using orthogonal transform that transforms data in a spatial (pixel value) domain into data in a spatial frequency domain.
  • the performance requirements of the in-vehicle LAN are (1) light weight (low cost), (2) high image quality of both natural and CG (Computer Graphics) images, and (3) low latency. (3) Low delay is necessary to transmit the video from the in-vehicle camera as information for safe driving. Since video (image) has a large amount of data, it is actually necessary to compress data at a high compression rate to some extent in order to achieve low delay. Specifically, a compression rate of about 1Z3 to 1Z10 is considered necessary. As a result, a compression ratio of about 1 Z3 to 1 Z10 is a performance requirement (4). Therefore, the following outlines typical standardized image (video) compression methods.
  • J PEG-LS Lissless JPEG
  • J PEG-LS Low JPEG
  • high quality can be obtained for both a natural image and a CG image with low delay. Therefore, the above performance requirement (2) is satisfied.
  • the compression rate is limited to about 1Z3, the above requirement (4) is difficult to achieve. Since the scale of the hardware becomes large, the above performance requirement (1) is not satisfied.
  • FIG. 1 is a block diagram showing a configuration of a conventional first image compression apparatus.
  • the image compression apparatus includes a DCT (Discrete Cosine Transform) encoding unit 10 and a prediction encoding unit 20, as shown in FIG.
  • the DCT encoding unit 10 includes a block line memory 11, a two-dimensional DCT conversion unit 12, a quantization control unit 13, a DCT coefficient quantization unit 14, and a variable length encoding unit 75.
  • the other predictive coding unit 20 includes a two-dimensional DCT inverse transform unit 21, a difference calculation unit 22, a pixel difference value quantization unit 23, and a variable length coding unit 24.
  • the block line memory 11 stores pixel data for 8 lines in the image data. It is a memory that can be retained.
  • the D C T coefficient quantization unit 14 refers to the quantization table set by the quantization control unit 13 and quantizes 64 DCT coefficients.
  • the quantized DCT coefficient is subjected to variable length coding using a Huffman code or the like by the variable length coding unit 15 and the result of the coding is output as compressed data.
  • the quantization control unit 13 sets the quantization table with reference to the DCT coefficient output from the two-dimensional DCT conversion unit 22.
  • the 64 DCT coefficients quantized by the DCT coefficient quantization unit 14 are output to the two-dimensional DCT inverse transform unit 21 in the predictive coding unit 20.
  • the two-dimensional DCT inverse transform unit 21 performs the two-dimensional DCT inverse transform using these 64 DCT coefficients, and outputs pixel data for 8 ⁇ 8 pixel blocks to the difference calculation unit 22.
  • the difference calculation unit 22 receives the corresponding 64 pixel data from the block line memory 11. The difference value is calculated for each pixel. The difference value corresponds to the quantization error.
  • the pixel data stored in the block line memory 11 and the image data composed of the pixel data are hereinafter referred to as “original image data” and “original pixel data” for convenience. The same applies to the following.
  • the difference value quantization unit 33 quantizes the difference value output from the difference value calculation unit 32 for each pixel.
  • the quantized difference value of each pixel is variable-length encoded by the variable-length encoding unit 34 and output as compressed data.
  • image compression is performed using a two-dimensional DCT transform. For this reason, a large-capacity memory must be adopted as the block line memory 11, and the memory capacity required for each unit to store pixel data, coefficients, etc. increases. As a result, the hardware scale The above performance requirement (1) is not satisfied.
  • FIG. 2 is a block diagram showing a configuration of a conventional second image compression apparatus.
  • the image compression apparatus includes a one-line memory 31, a one-dimensional D * cho conversion unit 32, eight coefficient difference value calculation units 94, a coefficient storage unit 33, a coefficient difference value quantization unit 35, A variable length encoding unit 36, an inverse quantization unit 37, and eight coefficient calculation units 38 are provided.
  • the 1-line memory 31 is a memory capable of holding pixel data for one line in the image data.
  • the one-dimensional DCT conversion unit 32 performs one-dimensional DCT conversion on pixel data for eight consecutive pixels on the line read from the one-line memory 31, and outputs eight DCT coefficients.
  • the DC T coefficients are one direct current (DC) component DC and seven alternating current (AC) components AC 1-7.
  • DC component DC is outputted to the coefficient difference value calculation unit 34, the lowest order AC component AC 1 among the AC component AC 1 to 7 are output to the coefficient difference value calculation unit 34 2. Next lower AC component AC 2 is output to the coefficient difference value calculation unit 34 3.
  • the numbers “1” to “7” attached to “AC” indicate the height of the spatial frequency of the DCT coefficient (AC component), and “1” to “ The number “8” indicates the height of the spatial frequency of the input DCT coefficient. The height is higher, the higher the number. The same applies to the quantization coefficient calculation unit 38.
  • the coefficient storage unit 33 stores a DCT coefficient restored from the compressed data obtained by performing the compression process on the immediately preceding pixel data.
  • the DCT coefficients are distinguished by attaching “”, for example “DC,” and “AC 1,”.
  • Each coefficient difference value calculation unit 34 calculates a difference value between the DCT coefficient stored in the coefficient storage unit 33 and the DCT coefficient input from the one-dimensional DCT conversion unit 32, and the coefficient difference value quantization unit Output to 35.
  • the coefficient difference value quantization unit 35 quantizes each difference value calculated by each coefficient difference value calculation unit 34 and outputs the result to the variable length coding unit 36.
  • the quantized differential value is variable-length encoded, and the encoded data is variable-length as compressed data. Output from the encoding unit 36.
  • Each quantized difference value is also output to the inverse quantization unit 37.
  • the inverse quantization unit 37 dequantizes each difference value and outputs the difference value to the corresponding coefficient calculation unit 38.
  • Each coefficient calculation unit 38 adds the difference value input from the inverse quantization unit 37 and the DCT coefficient stored in the coefficient storage unit 33 to restore the DC T coefficient output from the one-dimensional DCT conversion unit 32. I do.
  • Each DC T coefficient restored in this way is stored in the coefficient storage unit 33.
  • "DC '" and “AC 1'" with "'” represent the DCT coefficients restored in this way.
  • the conventional second image compression apparatus shown in Fig. 2 uses a one-dimensional DCT transform, it is compared with the conventional first image compression apparatus shown in Fig. 1 that uses a two-dimensional DCT transform.
  • the device can be configured more lightweight. However, sufficient image quality cannot be obtained and the above performance condition (2) is not satisfied.
  • Patent Document 1 JP-A-6_204885
  • Patent Document 2 Japanese Patent Laid-Open No. 5-681 71
  • Patent Document 3 Japanese Patent Application Laid-Open No. 58-1 48565
  • Patent Document 4 Japanese Patent Laid-Open No. 10-276432
  • Patent Document 5 Japanese Unexamined Patent Publication No. 63-227271
  • Patent Document 6 Japanese Unexamined Patent Application Publication No. 2005 _ 1 67655
  • Patent Document 7 Japanese Patent Laid-Open No. 2005_252428
  • Patent Document 8 USP5, 683068
  • Non-patent document 1 A. Habibi, "Hybrid Coding of Pictorial Data", pp.614-6 24, Vol. COM-22, No.5, IEEE Transactions on Communications, 1974.05
  • Non-patent document 2 J. Max, " Quantizing for Mini mum Distortion ", IRE Trans action on Information Theory, Vol. IT-6, pp.7-12, 1960
  • Non-Patent Document 3 Wen-Hsiung Chen, C. Harrison Smith, SC Fraick, "A Fa st Computational Algor ithm for the Discrete Cosine Transform", pp.10 04-1007, IEEE Transactions of Communications, Vol. COM-25, No.9, Sep. Disclosure of the invention
  • the present invention provides an image compression apparatus that satisfies the above performance conditions (1) to (3), that is, is lightweight, capable of realizing high image quality, and low delay (high compression), and compressed image.
  • An object of the present invention is to provide an image restoration apparatus that restores image data.
  • the image compression apparatuses according to the first to sixth aspects of the present invention are all configured as follows on the assumption that image data having pixel data for each pixel is compressed.
  • the image compression apparatus performs orthogonal transformation of an original pixel data group composed of pixel data for a plurality of continuous pixels in image data, restricts the frequency component to a predetermined number from the lowest frequency side, and reduces frequency components.
  • a coefficient difference value calculation unit that calculates a coefficient difference value between the coefficient and the previously restored coefficient
  • a coefficient difference value calculation unit A coefficient difference value quantization unit that quantizes a coefficient difference value calculated for each coefficient, outputs a quantization value obtained by the quantization, and a quantized value output for each coefficient from the coefficient difference value quantization unit
  • a predetermined number of coefficients is calculated by performing inverse quantization and calculating the coefficient difference value that is output by the inverse quantization unit, the coefficient difference value output by the inverse quantization unit for each coefficient, and the previously restored coefficient.
  • the coefficient restoration unit that restores and outputs the The pixel difference value between the inverse transformation unit that performs orthogonal inverse transformation using the restored coefficients and restores the original pixel data group, the original pixel data group, and the original pixel data group restored by the inverse transformation unit
  • a pixel difference value calculation unit to be calculated every time, a quantization value output from the coefficient difference value quantization unit, and a pixel difference value calculated by the pixel difference value calculation unit to output compressed data , Are provided.
  • the image compression device of the second aspect quantizes the pixel difference value calculated for each pixel by the pixel difference value calculation unit, and performs the quantization.
  • a pixel difference value quantization unit that outputs the obtained quantization value is further provided, and the encoding unit encodes the quantization value output from the pixel difference value quantization unit.
  • the program according to the first aspect of the present invention includes a function for realizing the constituent elements of the image compression apparatus according to the first aspect.
  • An image restoration device restores the image data encoded by the image compression device according to the first aspect, the quantized value of a coefficient difference value from the compressed data, and the pixel
  • a first restoration unit restores the difference value, an inverse quantization unit that outputs the coefficient difference value by dequantizing the quantized value restored by the first restoration unit, and a coefficient difference value and the previous restoration
  • a coefficient calculation unit that performs a calculation using the calculated coefficient, a coefficient calculation unit that restores the coefficient, an inverse conversion unit that performs orthogonal inverse transformation using the coefficient restored by the coefficient calculation unit, and outputs a pixel data group;
  • a second restoration unit that restores the original pixel data group using the pixel difference value restored by the restoration unit and the pixel data group output by the inverse conversion unit.
  • the image restoration device is the first when the quantized value of the pixel difference value is encoded as the pixel difference value.
  • the decompression unit further includes another inverse quantization unit that inversely quantizes the quantized value restored from the compressed data and outputs the pixel difference value, and the second restoration unit includes a pixel difference value quantum
  • the quantized value is encoded, the original pixel data group is restored using the pixel difference value output from the other inverse quantization unit.
  • a program according to the second aspect of the present invention is equipped with a function for realizing the constituent elements of the image restoration apparatus according to the first aspect.
  • the image compression apparatus thins out a plurality of second pixel data by thinning out a plurality of different pixel data from a first pixel data group for a plurality of pixels existing in a block into which an image is divided. Performs orthogonal transformation for each data generation unit that generates a pixel data group and each second pixel data group generated by the data generation unit, and outputs a coefficient that indicates a frequency component by limiting to a predetermined number from the lowest frequency side.
  • a coefficient difference value quantization unit that quantizes the difference value and outputs a quantization value obtained by the quantization, and inverse quantization of the quantization value output for each coefficient from the coefficient difference value quantization unit,
  • An inverse quantization unit that outputs coefficient difference values, and an inverse quantity Recovery and engagement speed difference value, a calculation using the reconstructed coefficients before the coefficients of a predetermined number of unit outputs per coefficient
  • a coefficient restoration unit that outputs the original data, an inverse transformation unit that performs orthogonal inverse transformation using a predetermined number of restored coefficients output by the coefficient restoration unit, and restores the second pixel data group; and a second A pixel difference value calculation unit that calculates, for each pixel, a pixel difference value between the pixel data group and the second pixel data group restored by the inverse conversion unit; a quantized value output by the coefficient difference value quantization unit;
  • an encoding unit that encodes the pixel difference value calculated by the pixel difference value calculation unit and outputs compressed data.
  • the image compression apparatus thins out a plurality of different pixel data from a first pixel data group for a plurality of pixels existing in a block into which an image is divided.
  • the program of the third aspect is equipped with a function for realizing the constituent elements of the image compression apparatus of the third aspect.
  • An image restoration device restores the image data re-encoded by the image compression device according to the third aspect, and a quantized value of a coefficient difference value and a pixel difference from the compressed data
  • a first restoration unit that restores a value
  • an inverse quantization unit that outputs a coefficient difference value by dequantizing the quantized value restored by the first restoration unit, a coefficient difference value, and a previously restored coefficient
  • the coefficient calculation unit that performs the calculation used to restore the coefficient, the inverse transformation unit that performs orthogonal inverse transformation using the coefficient restored by the coefficient calculation unit, and outputs the pixel data group
  • the first restoration unit restore
  • a second restoration unit that restores the second pixel data group using the pixel difference value that has been obtained and the pixel data group output from the inverse transformation unit, and a plurality of second pixel data restored by the second restoration unit
  • the program of the fourth aspect is equipped with a function for realizing the constituent elements of the image restoration device of the third aspect.
  • An image compression apparatus includes a conversion unit capable of performing multiple types of orthogonal transformations on an original pixel data group composed of pixel data for a plurality of continuous pixels in image data, and multiple types of image data.
  • a transform selection unit for selecting one of the orthogonal transforms;
  • Coefficient difference value calculation for calculating the coefficient difference value between the coefficient and the previously restored coefficient for each coefficient indicating the frequency component output by the conversion unit performing the type of orthogonal transformation selected by the conversion selection unit
  • a coefficient difference value quantization unit that quantizes the coefficient difference value calculated for each coefficient by the coefficient difference value calculation unit and outputs a quantized value obtained by the quantization, and a coefficient difference value quantization unit outputs
  • An encoding unit that encodes the quantized value and outputs compressed data.
  • the image compression device of the sixth aspect performs inverse quantization on the quantized value output for each coefficient from the coefficient difference value quantizing unit, and obtains the coefficient difference
  • the coefficient output by the converter is restored and output by calculation using the inverse quantizer that outputs the value, the coefficient difference value output by the inverse quantizer for each coefficient, and the previously restored coefficient.
  • a coefficient restoration unit a coefficient output from the coefficient restoration unit, an inverse transformation unit that performs orthogonal inverse transformation according to the selection by the transformation selection unit to restore the original pixel data group, and an original pixel data group
  • a pixel difference value calculation unit that calculates a pixel difference value with respect to the original pixel data group restored by the inverse conversion unit for each pixel, and a pixel difference value calculated by the pixel difference value calculation unit is obtained by quantization.
  • a pixel difference value quantizing unit that outputs a quantized value to be output; Parts outputs the compressed data by encoding the quantized value output from the pixel difference value quantization unit.
  • the program of the fifth aspect is equipped with a function for realizing the constituent elements of the image compression apparatus of the sixth aspect.
  • the image restoration device restores the image data encoded by the image compression device according to the sixth aspect, and restores the quantized value of the coefficient difference value and the pixel difference value from the compressed data.
  • the first reconstruction unit, the quantization value restored by the first restoration unit, the inverse quantization unit that outputs the coefficient difference value, and the coefficient difference value and the previously restored coefficient are used.
  • the coefficient calculator that performs the calculation and restores the coefficient, and the coefficient restored by the coefficient calculator, the inverse orthogonal transform corresponding to the type of orthogonal transform that obtained the coefficient is performed and the pixel data group is output.
  • a second restoration unit that restores the original pixel data group using the pixel difference value restored by the first restoration unit and the pixel data group output by the inverse transformation unit.
  • the program of the sixth aspect is equipped with a function for realizing the constituent elements of the image restoration device of the fourth aspect.
  • the original pixel data group composed of pixel data for a plurality of continuous pixels in the image data is subjected to orthogonal transformation, limited to a predetermined number from the lowest frequency side, and a coefficient indicating a frequency component is output,
  • a coefficient difference value between the coefficient and the previously restored coefficient is calculated, the coefficient difference value is quantized, and the quantized value obtained by the quantization is dequantized.
  • a predetermined number of coefficients are restored and orthogonal inverse transformation is performed to restore the original pixel data group.
  • the pixel difference value between the pixel data group and the restored original pixel data group is calculated for each pixel, the quantized value of the coefficient difference value, and the pixel difference value are encoded and compressed data is output.
  • orthogonal transform By limiting the coefficients to be output by orthogonal transform, orthogonal transform can be performed with a smaller amount of calculation. As a result, high-speed processing and the number of arithmetic units (circuit scale) can be reduced.
  • the low frequency component existing in the original pixel data group (block) is encoded as the quantized value of the coefficient difference value, and the high frequency component is encoded as the pixel difference value. Therefore, it is possible to always obtain high image quality regardless of whether the image is a natural image or a CG image (line drawing).
  • a high compression rate can be realized. For this reason, it can be used comfortably for applications such as in-vehicle data transmission with severe restrictions.
  • a plurality of second pixel data groups are generated by thinning out a plurality of different pixel data from a first pixel data group for a plurality of pixels existing in a block that divides an image.
  • the encoding of the first pixel data group is performed in multiple steps.
  • the amount of calculation for orthogonal transformation increases exponentially as the number of points (number of pixel data) increases. For this reason, the amount of calculation required for encoding is reduced by dividing the first image data group into a plurality of times. This is effective for faster processing and circuit scale reduction.
  • FIG. 1 is a block diagram showing a configuration of a conventional first image compression apparatus.
  • FIG. 2 is a block diagram showing a configuration of a second conventional image compression apparatus.
  • FIG. 3 is a block diagram showing a configuration of an image compression apparatus according to the first embodiment of the present invention.
  • FIG. 4 is a diagram showing changes in appearance frequency due to difference values.
  • FIG. 5 is a diagram showing the contents of a quantization table when the tendency shown in FIG. 4 exists in the appearance frequency.
  • FIG. 6 is a graph showing quantization of difference values by the quantization table of FIG.
  • FIG. 7 is a diagram showing the contents of a quantization table that is actually used.
  • FIG. 8 is a diagram showing the contents of an inverse quantization table.
  • FIG. 9 is a diagram showing a configuration of compressed data when only low frequency components are encoded.
  • FIG. 10A is a diagram showing the structure of compressed data when high frequency components are encoded together (part 1).
  • FIG. 10B is a diagram showing the structure of compressed data when high frequency components are encoded together (part 2).
  • FIG. 10C is a diagram showing the structure of compressed data when high frequency components are encoded together (part 3).
  • FIG. 11 is a diagram illustrating an example of a butterfly operation performed when the one-dimensional DCT conversion unit 41 performs DCT.
  • FIG. 12 is a block diagram showing a configuration of an image restoration device according to the first embodiment.
  • FIG. 13 is a diagram illustrating an example of a hardware configuration of a computer capable of realizing the image compression device 30 or the image restoration device 60.
  • FIG. 14 is a block diagram showing a configuration of an image compression apparatus according to a second embodiment.
  • FIG. 15 is a diagram showing a configuration of a prediction order conversion unit.
  • FIG. 16 is a diagram showing a basis function of SI ant transformation.
  • FIG. 17 is a diagram showing a high-speed calculation method for DST.
  • FIG. 18 This is a diagram showing the calculation required for DST when the coefficients to be calculated are limited to three low-order.
  • FIG. 19A is a diagram showing a power-of-two approximation method of multipliers (part 1).
  • FIG. 19B is a diagram showing a power-of-two approximation method of multipliers (part 2).
  • FIG. 19C is a diagram showing a power-of-two approximation method of multipliers (part 3).
  • FIG. 19D is a diagram showing a power-of-two approximation method of multipliers (part 4).
  • FIG. 20 is a diagram showing calculation points to which a power-of-two approximation method of multipliers is applied.
  • FIG. 21 is a block diagram showing a configuration of an image restoration apparatus according to a second embodiment.
  • FIG. 22 is a diagram illustrating a configuration of a prediction order reverse conversion unit.
  • FIG. 23 is a block diagram showing a configuration of an image restoration apparatus according to a third embodiment.
  • FIG. 24 is a diagram showing a high-speed calculation method for 16-point DCT.
  • FIG. 25 is a block diagram showing a configuration of an image compression apparatus according to a third embodiment.
  • FIG. 26 is a block diagram showing a configuration of an image restoration apparatus according to a fourth embodiment.
  • FIG. 27 is a diagram illustrating an example of a basis function of S I ant transform for natural images.
  • FIG. 28 is a diagram illustrating an example of a basis function of a S I ant transform for line drawing.
  • FIG. 29 is a diagram illustrating a butterfly operation performed when a basis function for line drawing is used.
  • FIG. 30 is a block diagram showing a configuration of an image compression apparatus according to a fourth embodiment.
  • FIG. 31 is a block diagram showing a configuration of an image restoration apparatus according to a fifth embodiment.
  • FIG. 32 is a diagram showing the relationship between the amount of codes existing between the image type and the orthogonal transform type.
  • FIG. 33 A flowchart of image identification processing.
  • FIG. 34 is a block diagram showing a configuration of an image compression apparatus according to a fifth embodiment.
  • FIG. 3 is a block diagram showing the configuration of the image compression apparatus according to the first embodiment of the present invention.
  • the image compression device 30 is assumed to be an in-vehicle LAN of an automobile, for example.
  • a one-line memory 31 a one-dimensional DCT conversion unit 41, three coefficient difference value calculation units 42, coefficient storage unit 43, coefficient difference value quantization unit 44, variable length coding unit 32, inverse quantization unit 51, three coefficient calculation units 52, one-dimensional DCT inverse transformation unit 53, difference value calculation unit 54
  • a difference value quantization unit 55 a pixel number counter 33, and a block boundary pixel detection unit 34.
  • the 1-line memory 31 is a memory capable of holding image data for one line.
  • the one-dimensional DCT conversion unit 41 inputs a pixel data group (hereinafter referred to as “original pixel data group”) for a predetermined number of pixels on the line (here, eight pixels) from the one-line memory 31 and performs one-dimensional DCT conversion. I do. By this conversion, only three DC T coefficients from the lowest frequency side, that is, DC component DC, AC component AC 1 and AC 2 are output. Those DCT coefficients are input to the corresponding coefficient difference value calculation unit 42.
  • FIG. 11 is a diagram illustrating an example of a butterfly operation executed by the one-dimensional DCT conversion unit 41 during DCT.
  • the DC component DC, the AC components AC 1 and AC 2 are calculated using the C hen method (Non-Patent Document 3), which is known as a high-speed DCT calculation method.
  • a small circle indicates a node where a value can be obtained during the calculation.
  • X 0 to 7 represent pixel data (values), and y 0 to 7 represent DCT coefficients.
  • ⁇ ⁇ ′ to ⁇ 7 ′ indicate the values obtained at the corresponding nodes.
  • the Chen method uses a value obtained at each node in the figure. This is a method for obtaining DCT coefficients y 0 to 7 from pixel data X 0 to 7 by repeating the line operation. Compared to the case of performing a normal matrix operation, there is an advantage that the calculation amount (the number of multiplications and the number of additions) can be greatly reduced. In the present embodiment, since only a predetermined low-order DC T coefficient, that is, DC component DC (y 0), AC component AC 1 (y 1) and AC2 (y 2) is obtained, the amount of calculation can be further reduced. it can. The amount of computation is about 75% of the case where 8 DCT coefficients are obtained.
  • a value (variable) set for a node is a value set for one or more nodes that are located on the left of the node and connected by a line (link). It is determined by the calculation using. For links with a factor ("One”, “Soil Cos *”, or “ ⁇ S in *", where "*" is a symbol indicating a wildcard), the value of the node located at the left end of the link The value multiplied by the factor is passed to the rightmost node. For links without a factor, the value of the node at the left end is passed to the node at the right end. Therefore, “1” as a factor is omitted.
  • the value of the node on the left side or an addition result obtained by adding a value obtained by multiplying the value by the factor is used as the node value.
  • the reason for adding the negative value of pixel data “ ⁇ 5” is that “1” exists as a factor in the link.
  • the coefficient storage unit 43 stores the DC power coefficient output from each count calculation unit 52. It is memory. In the figure, the DCT coefficients are distinguished from each other with “DC '” and “AC 1 ′”, for example.
  • Each coefficient difference value calculation unit 42 calculates a difference value between the DCT coefficient stored in the coefficient storage unit 43 and the DCT coefficient input from the one-dimensional DCT conversion unit 41, and the coefficient difference value quantum Output to 4 4
  • the coefficient difference value quantization unit 44 quantizes each difference value calculated by each coefficient difference value calculation unit 42 and outputs the result to the variable length coding unit 32.
  • the quantized difference value is variable-length encoded, and the encoded data is output from the variable-length encoding unit 36 as compressed data.
  • the quantized value is called “index value”.
  • Fig. 4 is a diagram showing the change in appearance frequency due to the difference value.
  • the DC coefficient that is stored in the coefficient storage unit 43 is assumed to have been obtained from the original pixel data group processed immediately before. For this reason, as shown in FIG. 4, the difference value calculated by each coefficient difference value calculation unit 42 has the highest appearance frequency of 0, and the appearance frequency tends to decrease as the distance from the difference increases. As a result, the quantization step size is set in consideration of this tendency.
  • Each “representative section” in Fig. 4 corresponds to the quantization step size.
  • X 1 to ⁇ 5 represent difference values represented by quantization.
  • FIG. 5 is a diagram showing the contents of the quantization table when the tendency shown in FIG. 4 exists in the appearance frequency
  • FIG. 6 is a graph showing quantization of the difference value by the quantization table.
  • ⁇ 1 to ⁇ 5 are the difference values represented by quantization
  • the input difference value is the difference value before quantization
  • the output difference value is the difference value (index value) after quantization
  • X represents an actual input difference value.
  • the vertical axis represents the output difference value
  • the horizontal axis represents the input difference value.
  • Non-Patent Document 2 describes an optimal quantizer design method for a given occurrence distribution.
  • a quantizer designed based on this design method is called a “M a X quantizer”.
  • FIG. 7 is a diagram showing the contents of the quantization table that is actually used.
  • the coefficient difference value quantization unit 44 in FIG. 3 quantizes the difference value input from each coefficient difference value quantization unit 42 by referring to the quantization table as shown in FIG. Are output to the variable length encoding unit 3 2 and the inverse quantization unit 5 1, respectively.
  • the inverse quantization unit 51 dequantizes each index value and outputs it to the corresponding coefficient calculation unit 52.
  • the inverse quantization is performed with reference to an inverse quantization table as shown in Fig. 8, and a difference value associated with the index value is output.
  • Each coefficient calculation unit 52 restores the D C T coefficient by adding the difference value input from the inverse quantization unit 51 and the D C T coefficient stored in the coefficient storage unit 43.
  • Each D C T coefficient restored in this way is output to the one-dimensional D C T inverse transform unit 53 and also stored in the coefficient storage unit 43.
  • “ ⁇ D C” and “A C 1 ′” with “′” represent the D C T coefficients restored in this way.
  • the one-dimensional DCT inverse transform unit 53 performs one-dimensional DCT inverse transform using the DCT coefficient calculated by each coefficient calculation unit 52, and outputs pixel data for eight pixels to the difference value calculation unit 54.
  • the difference value calculation unit 54 for each pixel data input from the one-dimensional 0-00 reverse conversion unit 53, the pixel data and corresponding pixel data in the original pixel data group input from the 1-line memory 31.
  • the difference value between and is calculated and output to the difference value quantization unit 5 5.
  • the difference value quantization unit 55 refers to a quantization table similar to that shown in FIG. 7, for example, and quantizes each difference value and outputs it to the variable length coding unit 3 2. Accordingly, the variable length coding unit 32 performs variable length coding on the difference value between the pixel data in addition to the difference value of the DCT coefficient, and outputs the result as compressed data.
  • variable-length encoding unit 32 will be specifically described with reference to FIG. 9, FIG. 10 to FIG.
  • the difference value between the pixel data is divided into four left pixels and four right pixels constituting the original pixel data group.
  • the left and right four pixels are handled differently depending on whether all difference values are zero or not.
  • left and right 4 strokes Encoding is divided into the following four cases: all primes are 0, only the difference values for the left 4 pixels are all 0, only the difference values for the right 4 pixels are all 0, and the left and right 4 pixels are not 0. I am doing it.
  • variable length encoding unit 3 2 When the variable length encoding unit 3 2 receives the quantized difference value (index value) between the pixel data from the difference value quantization unit 55, the variable length encoding unit 3 2 determines the case corresponding to the difference value, Depending on the determination result, compressed data having the structure shown in one of FIGS. 9 and 10 to 1 OC is generated and output. Code information indicating a set of index values is also obtained by variable length coding.
  • the pixel number counter 33 for example, counts the number of pixels subjected to compression processing in one line. Thus, for example, when the compression process for one line is completed, a carry signal is output to the block boundary detection unit 57.
  • the block boundary detection unit 5 7 receives a carry signal and receives a difference value quantization unit.
  • the calculation of the DCT coefficient by the one-dimensional DCT conversion unit 41 is limited to a low-order one, and the calculated DCT coefficient (here, the difference value) is encoded. . Difference values between pixels are encoded as necessary.
  • the DCT coefficients restricted to the low order (here, the three DCT coefficients from the lowest frequency side) are used for high accuracy.
  • the high-frequency components in those regions are encoded as the difference values between pixels. For this reason, both natural images and CG images can always be restored with high accuracy.
  • high-compression can be realized in the same way as sub-band encoding by encoding the band into low frequency components and high frequency components.
  • the DCT coefficient and the pixel Both data encode the difference value to achieve higher compression.
  • the circuit scale can be realized at the same level as that of the conventional image compression apparatus in FIG.
  • a one-dimensional 0-00 reverse transformation unit 53, a difference calculation unit 54, and a difference value quantization unit 55 are added, but a coefficient difference value calculation unit, and a coefficient calculation unit This is because the number of is decreasing.
  • the difference value of the D C T coefficient is encoded, but the D C T coefficient itself may be encoded.
  • the DCT coefficients stored in the coefficient storage unit 43 are obtained from the original pixel data group processed immediately before, but may be obtained from the original pixel data group at the same position on different lines. You may make it select from those original pixel data groups according to a condition.
  • FIG. 13 is a diagram showing an example of a hardware configuration of a computer that can realize the image compression apparatus 30.
  • the computer has a CPU 9 1, a memory 9 2, an input device 9 3, an output device 9 4, an external storage device 9 5, a medium drive device 9 6, and a network connection device 9 7. These are connected to each other by a bus 98.
  • This configuration is an example, and the present invention is not limited to this.
  • the memory 92 is an external storage device for program execution, data update, etc.
  • the input device 93 has, for example, an interface connected to an input device such as a keyboard and a mouse, or all of them.
  • the output device 94 is, for example, a display control device connected to a display device, or one having them.
  • the external storage device 95 is, for example, a hard disk device.
  • the storage medium drive unit 96 accesses a portable recording medium 99 such as an optical disk or a magneto-optical disk.
  • the image compression apparatus 30 is realized by causing the CPU 91 to execute a program (hereinafter referred to as "compression software") equipped with necessary functions. Is done.
  • compression software When the compression software is stored in the external storage device 95, each unit shown in FIG. 3 is realized by the external storage device 95, the CPU 91, the memory 92, and the bus 98. Therefore, the image compression apparatus 30 may be realized by causing a computer to execute compression software.
  • the compression software may be recorded on the recording medium 99 and distributed, or may be acquired by the network connection device 97. The same applies to other embodiments.
  • FIG. 12 is a block diagram showing the configuration of the image restoration apparatus according to the first embodiment.
  • the image restoration apparatus 40 includes a variable length code decoding unit 61, a coefficient difference value inverse quantization unit 71, a coefficient storage unit 72, and three coefficient calculation units 73, 1 A dimensional DCT inverse transform unit 74, a pixel difference value inverse quantization unit 81, an adder unit 82, a one-line memory 62, a pixel number counter 63, and a block boundary pixel detection unit 64.
  • the coefficient difference value inverse quantization unit 7 1, the coefficient storage unit 7 2, the three coefficient calculation units 7 3, and the one-dimensional DCT inverse transform unit 7 4 constitute a low-frequency component restoration processing unit 7 0, and
  • the difference value inverse quantization unit 8 1 and the addition unit 8 2 constitute a high-frequency component restoration processing unit 80.
  • variable-length code decoding unit 61 decodes the compressed data output by the image compression apparatus 30 shown in Fig. 3, and outputs the index value (quantized value) of the difference value of the DCT coefficient. If the compressed data has any one of the configurations shown in FIGS. 10 to 1OC, the index value of the difference value between pixels is output together with decoding.
  • the index value of the difference value of the DCT coefficient is output to the coefficient difference value inverse quantization unit 71, and the index value of the difference value between the pixels is output to the pixel difference value inverse quantization unit 81.
  • the coefficient difference value inverse quantization unit 71 refers to the inverse quantization table shown in FIG. 8, performs inverse quantization for each index value, and calculates each coefficient corresponding to the index value. Output to part 73.
  • the numbers "1" to “3" attached as subscripts to "7 3" indicate the height of the spatial frequency of the DCT coefficient to which the difference value is input. ing.
  • the coefficient storage unit 72 is a memory that stores the DCT coefficient calculated (restored) immediately before.
  • the DCT coefficient difference value input to each coefficient calculation unit 73 is obtained by DCT conversion of the DCT coefficient obtained by processing the previous original pixel data group and the current original pixel data group. This is the difference from the DCT coefficient obtained by doing (in the case of DC component, for example, the value obtained by DC'-DC).
  • each coefficient calculation unit 73 calculates the DCT coefficient by adding the difference value input from the coefficient difference value inverse quantization unit 71 from the value of the DCT coefficient stored in the coefficient storage unit 72. .
  • the DCT coefficient thus restored is output to the one-dimensional DCT inverse quantization unit 74 and newly stored in the coefficient storage unit 72.
  • “DC ′”, “AC 1 ′”, and “AC 2 ′” in the figure represent DCT coefficients output from each coefficient calculation unit 73 and stored in the coefficient storage unit 72.
  • the one-dimensional DCT inverse transform unit 74 performs DCT inverse transform using a total of three D C T coefficients input from each coefficient calculation unit 73, and outputs pixel data for 8 pixels to the addition unit 82.
  • a difference value between pixels is input from the pixel difference value inverse quantization unit 81 to the adding unit 82.
  • the pixel difference value inverse quantization unit 81 refers to the block boundary pixel detection unit 64 that receives the carry signal from the pixel number counter 63 by control via the quantization table switching signal. Change the inverse quantization table.
  • the difference value between the pixels to be encoded is, for example, a value obtained by subtracting the value of the pixel data restored by the DCT inverse transformation from the value of the original pixel data. Therefore, the adder 82 adds the difference value input from the pixel difference value inverse quantization unit 81 to each pixel data input from the one-dimensional DCT inverse transform unit 74. By the addition, the original pixel data group is restored and stored in the 1-line memory 62.
  • the 1-line memory 62 is capable of storing image data for one line. For this reason, the restored image data is stored in the one-line memory 62 for one line and then passed to the subsequent stage.
  • the image restoration device 60 as described above is similar to the image compression device 30 in addition to it. It may be realized by causing a computer such as the one shown in Fig. 13 to execute a program (hereinafter referred to as “restoration software”) equipped with the necessary functions.
  • a program hereinafter referred to as “restoration software”
  • each unit shown in FIG. 12 is realized by the external storage device 95, the CPU 91, the memory 92, and the bus 98.
  • the restoration software may be recorded on the recording medium 99 and distributed, or may be acquired by the network connection device 97. The same applies to other embodiments.
  • eight-point one-dimensional DCT transformation is performed at the time of compression, but the transformation may be performed with a score other than eight points.
  • the eight DCT coefficients obtained by the eight-point DCT transform three are to be encoded, but any number other than three is acceptable.
  • one-dimensional DCT is used for conversion from spatial (pixel value) domain data to spatial frequency domain data.
  • the second embodiment uses a one-dimensional DST (Discrete Slant Transform) transformation for the transformation.
  • DST Discrete Slant Transform
  • FIG. 14 is a block diagram showing a configuration of an image compression apparatus according to the second embodiment.
  • the image compression apparatus 30 is replaced with a one-dimensional DST conversion unit 41 and a one-dimensional DCT inverse conversion unit 53 shown in FIG.
  • An inverse conversion unit 1402 is provided.
  • a prediction rank conversion unit 1403 is arranged between the difference value quantization unit 55 and the variable length coding unit 32.
  • One-dimensional DST converter 1 401 reads pixel data (original pixel data group) for eight pixels from one-line memory 31 and performs one-dimensional DST conversion, and only three coefficients on the lowest frequency side Are output to the corresponding coefficient difference value calculation unit 42.
  • FIG. 16 is a diagram showing a basis function of S I ant transform
  • FIG. 17 is a diagram showing a high-speed calculation method of DST. Both FIG. 16 and FIG. 17 are described in Patent Document 8.
  • the basis function of the S I a n t transformation is a straight line, and the number of multiplications is less than DCT.
  • calculations should be performed as shown in Fig. 18. Therefore, when calculating 8 coefficients, it is necessary to perform 26 additions and 1 2 multiplications, whereas when calculating only 3 coefficients, 17 additions, You only need to perform 6 multiplications. This greatly reduces the amount of calculation. As a result, when using LSI, the number of computing units to be installed is reduced, and the circuit scale can be reduced.
  • the multiplication is avoided as follows so that the circuit scale can be further suppressed. This will be described in detail with reference to FIGS. 19 to 19D and FIG.
  • These multipliers are approximated by 2 or 3 digits of the power of 2, as shown in Figure 19 to Figure 19D, so that multiplication with the multiplicand V is expressed by bit shift operations and additions. Can do.
  • Approximation can be performed by adding the 1-bit shifted value of the multiplicand V and the complement of the 4-bit shifted value of the multiplicand V.
  • multiplication with 3 Z 5 1 2 can be performed by adding multiplicand V to the 2-bit shifted value of multiplicand V and the added value of 3-bit shifted value. it can.
  • the multiplication with a 8 can be performed by adding the complement of the 3-bit shifted value of the multiplicand V to the multiplicand V, as shown in Figure 19 C.
  • the multiplication with b8 can be performed by adding the complement of the value shifted by 3 bits of the multiplicand V to the value shifted by 1 bit of the multiplicand V, as shown in Fig. 19D.
  • the multiplier When mounted on L S I, the multiplier usually requires about five times the area of the adder. For this reason, avoiding multiplication or reducing the number of multipliers to reduce the number of required multipliers is very effective in reducing the circuit scale. In the present embodiment, paying attention to this, by performing power-of-two approximation of the multiplier, the number of required multipliers is reduced and the circuit scale can be further suppressed.
  • RMS Root Mean Square
  • RMS (total square error Z total number of pixels) 1/2
  • the one-dimensional DST inverse transform unit 1 40 2 arranged in the compression processing unit 50 performs the DST inverse transform using a total of three coefficients input from each coefficient calculation unit 52, and calculates the difference value between pixels as a difference value.
  • the difference value quantization unit 55 quantizes the difference value and outputs the index value (quantization number) to the prediction rank conversion unit 1 403 as in the first embodiment. To do.
  • FIG. 15 is a diagram showing the configuration of the prediction order conversion unit 1 403.
  • the conversion unit 1 403 includes five registers 1 403a to e, a prediction conversion table ROM 1 403f, and a line memory 1403g, as shown in FIG.
  • Prediction order conversion is a method in which the rank of the value of the target pixel value in terms of the value of surrounding reference pixels is obtained in advance using a sample image, and the value of the target pixel is converted into the prediction order using the rank. It is.
  • Predictive conversion table ROM 1 403 f contains reference pixels Prediction ranks are stored for each combination of values (index values of difference values).
  • Registers 1 403 a, 1 403 b. 1 403 d and 1 403 e are the target pixel and the position immediately before it, respectively.
  • the index value of the target pixel, the pixel located immediately above it, and the pixel located immediately before it are stored.
  • the prediction order of the index value of the target pixel is obtained by referring to the index values of the three pixels (reference pixels).
  • ROM 1 403 f inputs those index values and outputs the prediction order associated with the combination.
  • ROM 1 403 f outputs the index value of the pixel of interest in addition to the prediction order.
  • Register 1 403 c is used to hold the data output from ROM 1 403 f
  • line memory 1 403 g is used to store the latest index value held in register 1 403 c for one line. .
  • the index value of the register 1 403a is moved to the register 1 403b
  • the index value of the register 1 403d is moved to the register 1 403e.
  • the index value of the register 1 403 c is newly stored in the line memory 1 403 g, and the index value read from the line memory 1 403 g is held in the register 1 403 d.
  • the storage capacity required for ROM 1 403 f is 256 WX 2 if the difference value is 3 level quantization if 3 pixels are referenced, and 4 KWX 3 if 5 level quantization. This level of storage capacity is easy to implement on LSI.
  • variable length coding unit 32 performs variable length coding of the prediction order instead of the index value of the difference value.
  • the configuration of the compressed data generated by the variable length coding is basically the same as that of the first embodiment (FIG. 9 and FIG. 1 OA to FIG. 1 OC).
  • FIG. 21 is a block diagram showing a configuration of an image restoration apparatus according to the second embodiment.
  • an image restoration device 60 that restores (decodes) the compressed data output from the image compression device 30 shown in FIG. 14 will be described in detail with reference to FIG.
  • the image restoration device 60 has a one-dimensional DC shown in Fig. 12. Instead of the T inverse transform unit 74, a one-dimensional DST inverse transform unit 2 1 0 1 is provided. Further, a prediction order reverse conversion unit 2 102 is inserted between the variable length code decoding unit 61 and the pixel difference value inverse quantization unit 81.
  • the one-dimensional DST inverse transform unit 2 1 0 1 includes the totals restored by the respective count calculation units 73.
  • the DST inverse transform is performed using the three coefficients, and the pixel data for 8 pixels obtained thereby is output to the adder 82.
  • the prediction order reverse conversion unit 2 102 converts the difference value index value (quantization number) corresponding to the prediction order output from the variable length code decoding unit 61. As shown in FIG. 22, it includes five registers 2202a to e, a prediction inverse conversion table ROM2202f, and a line memory 2202g.
  • the ROM 2202 f stores the index value of the difference value according to the combination of the prediction order of the reference pixels.
  • the registers 2202 a, 2202 b. 2 202 d, and 2202 e each include the target pixel, The prediction position of the pixel located immediately before, the pixel located immediately above, and the pixel located immediately before is stored. As a result, the index value of the target pixel is obtained by referring to the prediction order of the three pixels (reference pixels).
  • the ROM 2202 f inputs the prediction order, and outputs the index value associated with the combination and the prediction order of the target pixel to the register 2202 c.
  • image data is compressed by performing orthogonal transform for each pixel block having a predetermined size.
  • the third embodiment generates a plurality of pixel data groups by thinning out different pixels from the pixel block (original pixel data group), performs orthogonal transform for each pixel data group, and outputs image data. Is compressed.
  • the amount of calculation for orthogonal transform increases exponentially as the block size (number of pixels) increases. For example, in DCT, calculation as shown in FIG. 11 is sufficient for 8 pixel data, but calculation as shown in FIG. 24 must be performed for 16 pixel data.
  • the third embodiment focuses on that, The entire calculation amount is reduced by dividing the pixel block into a plurality of times and performing the encoding. By reducing the amount of computation, the circuit scale can be further reduced, and compression and decompression can be performed at higher speed.
  • FIG. 23 is a block diagram showing the configuration of the image compression apparatus according to the third embodiment.
  • a multiplexer (MPX) 2 3 0 1 is inserted between the 1-line memory 3 1 and the one-dimensional DCT converter 4 1, and the pixel data group output from the multiplexer 2 3 0 1
  • the (original pixel data group) is input to the difference value calculation unit 54 in addition to the one-dimensional DCT conversion unit 41.
  • the coefficient read from the coefficient storage unit 43 is output to each coefficient difference value calculation unit 4 2 and each coefficient calculation unit 52 via the multiplexer 2 320.
  • the multiplexer 2 30 2 selects and outputs one of the coefficient output from each coefficient calculation unit 52 and the coefficient read from the coefficient storage unit 43.
  • Each multiplexer 2 3 0 1 .2 3 0 2 performs selection according to a selection signal output from a control unit (not shown).
  • compression is performed for each block composed of 16 pixels.
  • DCT conversion is performed in such a way that the block is divided into 8 pixel sub-blocks.
  • the multiplexer 2 3 0 1 is for performing such division, and inputs two pixel data groups obtained by thinning out for each pixel, and selects and outputs one of them. .
  • the two pixel data groups (original pixel data groups) have the following relationship: 16 pixels remaining after thinning out 8 pixels, and those thinned out. In other words, the data of the odd-numbered pixels from the head of the block are collected, and the data of the even-numbered pixels are collected.
  • the thinning is performed on the pixel data for 16 pixels read from the 1-line memory 31 to the register.
  • the multiplexer 2301 selects and outputs one of the two original pixel data groups.
  • the multiplexer 2 3 0 2 selects the coefficient storage unit 4 3 and outputs the coefficient read out therefrom. So that the first As in the first embodiment, each coefficient difference value calculation unit 4 2 calculates a difference value between the coefficient stored in the coefficient storage unit 4 3 and the coefficient input from the one-dimensional DCT conversion unit 4 1. To do.
  • the multiplexer 2 3 0 2 selects and outputs the other original pixel data group. At that time, the multiplexer 2 3 0 2 is made to select the coefficient output from each coefficient calculation unit 52. This causes each coefficient difference value calculation unit 42 to calculate a difference value with the coefficient (restored coefficient) obtained from the original pixel data group compressed immediately before.
  • FIG. 25 is a block diagram showing the configuration of the image restoration apparatus according to the third embodiment.
  • the image restoration device 60 that restores (decodes) the compressed data output from the image compression device 30 shown in FIG. 23 will be described in detail with reference to FIG.
  • the image restoration device 60 has a multiplexer 2 5 0 1 inserted between each coefficient calculation unit 7 3 and the coefficient storage unit 7 2, and the multiplexer 2 5 0 1 Is configured to select and output one of the coefficient output from each coefficient calculation unit 73 and the coefficient read from the coefficient storage unit 72.
  • a demultiplexer (D M P X) 2 5 0 2 is inserted between the adder 8 2 and the 1-line memory 6 2.
  • the multiplexer 2 5 0 1 performs selection according to a selection signal output from a control unit (not shown).
  • each coefficient difference value calculation unit 73 receives the difference value input from the coefficient difference value inverse quantization unit 71.
  • the DCT coefficient is calculated by adding from the DCT coefficient value stored in the coefficient storage unit 72.
  • the coefficients restored in this way are output to the one-dimensional DCT inverse transform unit 74, the coefficient storage unit 72, and the multiplexer 25101.
  • the multiplexer 2510 selects the coefficient output from the coefficient calculation unit 73. This causes each coefficient calculation unit 73 to perform calculation using the coefficient restored immediately before.
  • the demultiplexer 2 5 0 2 is used for merging two restored pixel data groups.
  • the merging is performed by storing the pixel data constituting the pixel data group for one pixel at a distance in a register capable of storing pixel data for 16 pixels. After storing the pixel data for 16 pixels in the register, it is output to 1-line memory 62.
  • the same orthogonal transformation is always performed.
  • the fourth embodiment changes the orthogonal transform performed according to the situation.
  • orthogonal transformations for natural image orientation and line drawing (CG image displayed by the navigation device, etc.) orientation can be performed, and orthogonal transformation suitable for the image to be compressed is performed. Regardless of the image type, you can always select A high compression ratio can be maintained.
  • FIG. 26 is a block diagram showing the configuration of the image compression apparatus according to the fourth embodiment. As shown in FIG. 24, two one-dimensional orthogonal transformation units 2 6 0 2 and 2 6 0 3 are arranged so that the original pixel data group is input from the 1-line memory 3 1 and two 1-dimensional One of the coefficients output from the orthogonal transform units 2600 and 2600 is selected by a multiplexer 2600 and output to each coefficient difference value calculation unit 42.
  • two one-dimensional orthogonal inverse transformation units 2600 and 2600 are arranged so that the coefficients output by the coefficient calculation units 52 are input,
  • One of the pixel data groups output from the two-dimensional orthogonal inverse transform units 2 6 0 7 and 2 6 0 8 is selected by the multiplexer 2 6 0 6 and output to the difference value calculation unit 5 4. ing.
  • variable length coding unit 2 6 0 9 for variable length coding the index value of the coefficient difference value output by the coefficient difference value quantization unit 44, and the difference value quantization unit 5 5 The variable-length coding unit 2 6 1 0 for variable-length coding the index value of the difference value between the pixels output from one of them is provided, and one of the compressed data output by them is sent by the multiplexer 2 6 0 5 Select and output.
  • Register 2 6 0 1 is used to hold orthogonal transformation selection signal R, and each multiplexer 2 6 0 4 and 2 6 0 6 has selection signal R held in register 2 6 0 1. Select according to the data.
  • the selection signal R is, for example, a signal input from the device that outputs image data to be compressed, or a signal generated from the signal.
  • the two one-dimensional orthogonal transform units 2 6 0 2 and 2 6 0 3 both perform DST transform as orthogonal transform.
  • the basis functions are different: one performs DST conversion using the basis functions shown in Fig. 27, and the other performs DST conversion using the basis functions shown in Fig. 28.
  • a one-dimensional orthogonal transform unit that performs DST conversion using the basis function shown in Fig. 27.
  • the image data is a line image
  • the multiplexer 2 6 0 4 can select the one-dimensional orthogonal conversion unit that performs DST conversion.
  • Figure The DST transformation by the basis function shown in 27 can be performed as shown in Fig. 17 and the DST transformation by the basis function shown in Fig. 28 can be done as shown in Fig. 29.
  • “ a ” represents 3 Z 5 1/2
  • “b” represents 1 Z 5 1/2 .
  • the data indicating the selection signal R is output directly or indirectly to the multiplexer 2600. As a result, it is inserted into the compressed data (for example, in the header) or added to the compressed data. In this way, the type of orthogonal transform to be selected on the restoration side can be selected. Selection control for the multiplexer 2 6 0 5 is performed according to the situation by a control unit (not shown).
  • FIG. 30 is a block diagram showing the configuration of the image restoration apparatus according to the fourth embodiment.
  • the image restoration device 60 that restores (decodes) the compressed data output from the image compression device 30 shown in FIG. 26 will be described in detail with reference to FIG.
  • the image restoration device 60 has two one-dimensional orthogonal inverse transformation units 3 1 0 3 and 3 1 0 4 arranged therein, and coefficients output from the coefficient calculation units 7 3
  • Each one of the pixel data groups output from the two one-dimensional orthogonal inverse transform units 3 1 0 3 and 3 1 0 4 is selected by the multiplexer 3 1 0 2 and added. Part 8 is output to 2.
  • the register 3 1 0 1 is for holding data indicating a selection signal R inserted into or added to the compressed data.
  • the multiplexer 3 100 selects one of the two one-dimensional orthogonal inverse transform units 3 1 0 3 and 3 1 0 4 according to the data stored in the register 3 1 0 1. As a result, the pixel data group obtained by the orthogonal inverse transform corresponding to the type of orthogonal transform selected at the time of compression is output to the adder 82.
  • the selection signal R is input from the outside in order to select the orthogonal transform to be selected.
  • the fifth embodiment automatically selects the orthogonal transform to be selected.
  • FIG. 31 is a block diagram showing the configuration of the image compression apparatus according to the fifth embodiment.
  • a one-dimensional orthogonal transform unit 3 2 0 capable of switching multipliers (Fig. 17, Fig. 29) instead of two one-dimensional orthogonal transform units 2 6 0 2 and 2 6 0 3. 5 is arranged, and the original pixel data group is input from the 1-line memory 3 1.
  • the coefficients output from the one-dimensional orthogonal transformation unit 320 are directly output to the corresponding coefficient difference value calculation unit 42.
  • a one-dimensional orthogonal inverse transformation unit 3 2 0 7 capable of switching the multiplier is arranged instead of the two one-dimensional orthogonal inverse transformation units 2600 and 2600,
  • the pixel data group to be output is directly input to the difference value calculation unit 54 so that the coefficient output by the coefficient calculation unit 52 is input.
  • Multiplier switching units 3 2 0 4 and 3 2 0 6 are prepared to switch the multipliers, and the multipliers used in the one-dimensional orthogonal transformation unit 3 2 0 5 and the one-dimensional orthogonal inverse transformation unit 3 2 0 7 are switched. I am doing it.
  • the two variable length encoding units 2 6 0 9 and 2 6 1 0 each have a code amount integrator.
  • the image classifier 3 2 0 3 has code amount integrators 3 2 0 1 and 3 Input the integrated value of the code amount from 2 0 2, identify the image type, and store the value (data) indicating the result in register 2 6 0 1.
  • Each multiplier switching unit 3 2 0 4 and 3 2 0 6 switches the multiplier according to the value stored in the register 2 6 0 1.
  • the orthogonal transformation (DST transformation here) and the orthogonal inverse transformation (here DST inverse transformation) using an appropriate multiplier are converted into the one-dimensional orthogonal transformation unit 3 2 0 5 and One-dimensional orthogonal inverse transform unit 3 2 0 7 is performed.
  • the image classifier 3 2 0 3 identifies the type of image as follows.
  • Figure 32 shows the relationship between the amount of code that exists between the image type and the orthogonal transform type.
  • FIG. 32 the vertical axis indicates entropy, "natural image conversion” uses orthogonal (DST) conversion using a natural image multiplier, and "line image conversion” uses a line image multiplier.
  • DST orthogonal
  • Figure 3 2 shows the case where natural images are converted to natural images, natural images are converted to line images, line images are converted to natural images, and line images are converted to line images. The relationship of code amount is shown.
  • the code amount of the high-frequency component changes relatively greatly depending on whether or not orthogonal transformation is performed for the image. Paying attention to this, the image discriminator 3203 performs image discrimination.
  • FIG. 33 is a flowchart of the image identification process.
  • the identification process shows the flow of the process performed by the image classifier 3 203 to identify the image.
  • the identification processing executed by the image classifier 320 will be described in detail.
  • step S1 a setting for starting processing for one line is performed. For example, at the start of decompression of the compressed data, a predetermined value is stored in the register 2 6 0 1 according to the setting. If there is a line that has already been decompressed, the final setting is maintained, and the register 2 6 0 Rewriting the value stored in 1 Not performed.
  • step S2 the low-frequency component and high-frequency component code amount integrators 3 2 0 2 and
  • step S 3 and S 4 the code amount accumulator 3 2 0 2 accumulates and adds the code amount of the compressed data output from the variable length encoding unit 2 6 09.
  • the determination in step S4 is Y e s. Accordingly, steps S5 and S6 are executed next, and the code amount of the compressed data output from the variable-length encoding unit 2 6 1 0 is accumulated and added to the code amount accumulator 3 2 0 1 .
  • step S 6 becomes Y e s, and the process proceeds to step S 7.
  • step S 8 the process proceeds to step S 8 to determine whether or not the current setting is suitable for natural images. If the value for selecting line drawing conversion is stored in register 2 6 0 1, the determination is No and the process proceeds to step S 15. Otherwise, the determination is Y e s and the process proceeds to step S 16.
  • step S 15 it is determined whether or not the value of variable CA is less than threshold value TH 1.
  • the threshold TH 1 is prepared to determine whether or not the compressed original pixel data group is suitable for natural image conversion. As a result, if the compressed original pixel data group is suitable for natural image conversion, the value of the variable CA is less than the threshold TH 1, so it is determined as Yes, and the current setting is made in step S 1 0. After making the decision to hold the process, go to step S12. Otherwise, since the value of the variable CA is equal to or greater than the threshold TH 1, it is determined as No, and step S 1 Change the setting to line drawing with 1 and rewrite the value of register 2 6 0 1, then go to step S 1 2.
  • step S12 it is determined whether or not compression for one line has been completed.
  • the determination is Y e s, and the process proceeds to step S13. Otherwise, the determination is no and the process returns to step S3. At this time, the next original pixel data group is read from the 1-line memory 31.
  • step S13 the compression target is shifted to the next line. At the time of the transition, data in the 1-line memory 3 1 is rewritten.
  • step S 14 it is determined whether or not all lines have been compressed. When the compression of the image data is finished, the judgment is Y e s, and the image identification process is finished here. If this is not the case, that is, if pixel data to be compressed remains, the determination is No and the process returns to step S1. At this time, the value of the register 2 6 0 1 is not rewritten.
  • step S 15 in which the determination in step S 8 is No and the process proceeds, it is determined whether or not the value of the variable CA is less than the threshold value T H 2.
  • the threshold value T H 2 is prepared for determining whether or not the compressed original pixel data group is suitable for line drawing conversion, similar to the threshold value T H 1. As a result, if the compressed original pixel data group matches the line drawing conversion, the value of the variable CA is less than the threshold TH 2, so it is determined as Yes, and the current setting is set in step S 16. After making the decision to keep, go to step S12.
  • step S 1 the value of the variable CA is equal to or greater than the threshold TH 2, so it is determined as No, and the setting is changed to the natural image orientation in step S 17 and the value of register 2 6 0 1 is rewritten. Thereafter, the process proceeds to step S 1 2.
  • FIG. 34 is a block diagram showing the configuration of the image restoration apparatus according to the fifth embodiment.
  • the image restoration device 60 that restores (decodes) the compressed data output from the image compression device 30 shown in FIG. 31 will be described in detail with reference to FIG.
  • the image restoration device 60 has a one-dimensional orthogonal inverse transform that can switch multipliers instead of the two one-dimensional orthogonal inverse transform units 3 1 0 3 and 3 1 0 4.
  • the unit 3 5 0 1 is arranged so that the coefficient output from each coefficient calculation unit 73 is input, and the pixel data group to be output is directly input to the adding unit 82.
  • the multiplier switching unit 3 5 0 2 that switches the multiplier switches the multiplier according to the value stored in the register 3 1 0 1.
  • the value stored in register 2 6 0 1 is output as compressed data each time it is rewritten. Therefore, when the variable length encoding / decoding unit 66 restores the value, the variable length encoding / decoding unit 66 outputs the value to the register 3 1 0 1.

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

 本発明では、画像データ中の連続する複数の画素分の画素データからなる元画素データ群の直交変換を行い、最低周波数側から所定数に制限して、周波数成分を示す係数を出力し、その係数毎に、その係数と前に復元された係数との係数差分値を算出し、その係数差分値を量子化する。その量子化によって得られる量子化値の逆量子化を行い、その逆量子化によって得られた係数差分値と、前に復元された係数とを用いた計算により、所定数の係数を復元して直交逆変換を行い、元画素データ群を復元する。元画素データ群と、復元した元画素データ群との画素差分値を画素毎に算出し、係数差分値の量子化値、及び画素差分値を符号化して圧縮データを出力する。

Description

明 細 書
画像圧縮装置、 画像復元装置、 及びプログラム
技術分野
[0001] 本発明は、 空間 (画素値)領域のデータを空間周波数領域のデータに変換す る直交変換を用いて画像データを圧縮するための技術に関する。
背景技術
[0002] 近年、 自動車では、 複数の監視用カメラの映像を運転席で確認したり、 D VDやカーナビゲーシヨンの映像を後部座席で楽しむといったように、 映像 を多チャンネルで利用するニーズが高くなつている。 チャンネルが多数にな ることに伴う配線の煩雑化を回避するため、 最近では自動車内に L A Nを敷 設し、 その LAN (車載 LAN) を用いて多チャンネルのデータ伝送を行う ことが考えられている。
[0003] その車載 LANの性能要件は、 (1 ) 軽量 (低コスト) 、 (2) 自然画と CG (Computer Graphics) 画像の両方の高画質、 (3) 低遅延、 である。 ( 3) 低遅延は、 安全運転のための情報として車載カメラの映像を伝送するた めに必要となる。 映像 (画像) はデータ量が大きいことから、 低遅延を実現 するためには、 或る程度、 高い圧縮率でデータ圧縮を行うことが必要なのが 実状である。 具体的には 1Z3〜1Z1 0程の圧縮率が必要と考えられる。 それにより 1 Z3〜 1 Z1 0程の圧縮率は性能要件 (4) と云えるものであ る。 このことから以下に、 標準化された代表的な画像 (映像) 圧縮方式の概 要を説明する。
[0004] まず、 MP EG 2 (Moving Picture Experts Group phase 2) では、 1Z 20という圧縮率が得られるため、 上記性能要件 (4) は十分に満たされる 。 しかし、 フレームメモリが必要とされるため、 ハードウェアの規模が大き くなリ、 上記性能要件 (1 ) を満たすことが困難である。 前フレームを参照 する、 及び計算量が大きいといった理由から、 遅延量は数百 m sと大きく、 上記性能要件 (3) の実現は困難である。 また、 この規格では、 自然画につ いては良好な画質が得られるが、 カーナビゲーシヨン等における CG画像に ついてはかすれ等の画質劣化が生じ易い。 このため、 上記性能要件 (2) も 十分に満たさない。
[0005] 静止画像に使用する圧縮法を動画像に使用した M o t i o n- J PEG (M ot i on-Jo i nt Photographic Experts Group) では、 1 / 1 0とし、う圧縮率が 得られ、 高速な処理が可能である。 そのため、 上記性能要件 (4) および ( 3) は満たすことができる。 ハードウェアの規模も上記 MPEG2よりは小 さくなる。 それにより、 上記性能要件 (1 ) を満足させることはより容易で ある。 自然画では良好な画質が得られる。 しかし、 CG画像についてはかす れ等の画質劣化が生じ易いため、 上記性能要件 (2) は十分に満たさない。
[0006] 画素ごとの予測方式である J PEG—LS (Lossless JPEG) では、 低遅延 で、 自然画と CG画像の双方で高画質が得られる。 このため、 上記性能要件 (2) を満たす。 しかし、 圧縮率は 1Z3程度が限度であるため、 上記要件 (4) の実現は困難である。 ハードウェアの規模も大きくなるため、 上記性 能要件 (1 ) も満たさない。
[0007] このように、 標準化された画像圧縮方式は何れも、 車載 LANに要求され る性能要件を一つ以上、 満たさない。 このため、 車載 LANでは何れも不適 切なものとなっている。
一方、 非標準化の画像圧縮方式を採用した従来の画像圧縮装置としては、 以下のようなものがある。
[0008] 図 1は、 従来の第 1の画像圧縮装置の構成を示すプロック図である。
その画像圧縮装置は、 図 1に示すように、 DCT (Discrete Cosine Trans form) 符号化部 1 0と、 予測符号化部 20を備える。 DCT符号化部 1 0は 、 ブロックラインメモリ 1 1、 2次元 DC T変換部 1 2、 量子化制御部 1 3 、 DCT係数量子化部 1 4、 可変長符号化部 75を備える。 他方の予測符号 化部 20は、 2次元 DC T逆変換部 21、 差分算出部 22、 画素差分値量子 化部 23、 可変長符号化部 24、 を備える。
[0009] ブロックラインメモリ 1 1は、 画像データ中の 8ライン分の画素データを 保持することが可能なメモリである。 2次元 DCT変換部 1 2は、 ブロック ラインメモリ 1 1から 8 X 8画素ブロック分の画素データを読み出して、 2 次元 DC T変換を実行する。 それにより、 8 X 8 (=64) 個の DC T係数 が DC T係数量子化部 1 4に出力される。
[0010] D C T係数量子化部 1 4は、 量子化制御部 1 3が設定する量子化テーブル を参照して 64個の DCT係数の量子化を行う。 量子化された DCT係数は 、 可変長符号化部 1 5によりハフマン符号等を用いた可変長符号化が行われ 、 その符号化を行った結果が圧縮データとして出力される。 量子化制御部 1 3は、 2次元 DCT変換部 22が出力する DCT係数を参照して量子化テー ブルを設定する。
[0011] DCT係数量子化部 1 4によって量子化された 64個の DCT係数は、 予 測符号化部 20中の 2次元 DC T逆変換部 21に出力される。 2次元 DCT 逆変換部 21は、 それら 64個の DCT係数を用いて 2次元 DCT逆変換を 行い、 8 X 8画素ブロック分の画素データを差分算出部 22に出力する。
[0012] 差分算出部 22は、 2次元 DCT逆変換部 21が出力する 64 (=8 x 8 ) 個の画素データの他に、 ブロックラインメモリ 1 1から対応する 64個の 画素データを入力し、 画素毎に、 それらの差分値を算出する。 その差分値は 、 量子化誤差に相当するものである。 ブロックラインメモリ 1 1に格納され ている画素データ、 及びその画素データから構成される画像データについて は以降、 便宜的に 「元画像データ」 及び 「元画素データ」 とそれぞれ呼ぶこ とにする。 これは、 以降でも同様である。
[0013] 差分値量子化部 33は、 差分置算出部 32が画素ごとに出力する差分値を 量子化する。 量子化されたそれぞれの画素の差分値は、 可変長符号化部 34 により可変長符号化され、 圧縮データとして出力される。
[0014] 図 1に示す従来の第 1の画像圧縮装置では、 2次元 DC T変換を用いて画 像圧縮を行っている。 このため、 ブロックラインメモリ 1 1として大容量の メモリを採用しなければならず、 各部が画素データ、 或いは係数等の記憶に 必要なメモリ容量も大きくなる。 それにより、 ハードウェアの規模は大きく 、 上記性能要件 (1 ) を満たさない。
[0015] 図 2は、 従来の第 2の画像圧縮装置の構成を示すブロック図である。
その画像圧縮装置は、 図 2に示すように、 1ラインメモリ 31、 1次元 D 〇丁変換部32、 8個の係数差分値算出部 94、 係数記憶部 33、 係数差分 値量子化部 35、 可変長符号化部 36、 逆量子化部 37、 8個の係数算出部 38を備える。
[0016] 1ラインメモリ 31は、 画像データ中の 1ライン分の画素データを保持す ることが可能なメモリである。 1次元 DCT変換部 32は、 1ラインメモリ 31から読み出されたライン上の連続する 8画素分の画素データに対して 1 次元 DC T変換を行い、 8個の DC T係数を出力する。 その DC T係数は、 1個の直流 (DC) 成分 DC、 及び 7個の交流 (AC) 成分 AC 1〜7であ る。 DC成分 DCは係数差分値算出部 34 に出力され、 AC成分 AC 1〜7 のなかで最も低次の AC成分 AC 1は係数差分値算出部 342に出力される。 次に低い A C成分 A C 2は係数差分値算出部 343に出力される。 このような ことから、 「AC」 に付した 「1」 〜 「7」 の数字は DCT係数 (AC成分 ) の空間周波数の高さを表し、 「34」 に添字として付した 「1」 〜 「8」 の数字は入力する D C T係数の空間周波数の高さを表している。 その高さは 、 大きい数字ほど高くなつている。 これは、 量子化係数算出部 38でも同様 である。
[0017] 係数記憶部 33は、 直前の画素データの圧縮処理を行うことで得られた圧 縮データから復元される DCT係数を記憶する。 図中、 その DCT係数は例 えば 「DC, 」 及び 「AC 1, 」 のように 「 」 を付して区別している。 各 係数差分値算出部 34は、 係数記憶部 33に記憶された DC T係数と、 1次 元 DCT変換部 32から入力した DCT係数との間の差分値を算出し、 係数 差分値量子化部 35に出力する。
[0018] 係数差分値量子化部 35は、 各係数差分値算出部 34が算出した各差分値 を量子化し、 可変長符号化部 36に出力する。 それにより、 量子化された差 分値は可変長符号化され、 その符号化後のデータが圧縮データとして可変長 符号化部 36から出力される。
[0019] 量子化された各差分値は、 逆量子化部 37にも出力される。 逆量子化部 3 7は、 各差分値を逆量子化し、 それぞれ対応する係数算出部 38に出力する 。 各係数算出部 38は、 逆量子化部 37から入力した差分値と、 係数記憶部 33に記憶された D C T係数とを加算することにより、 1次元 D C T変換部 32が出力する DC T係数の復元を行う。 そのようにして復元された各 DC T係数は係数記憶部 33に記憶される。 図中、 「' 」 を付した 「DC' 」 及 び 「AC 1 ' 」 等は、 そのようにして復元された DCT係数を表している。
[0020] 図 2に示す従来の第 2の画像圧縮装置では、 1次元 DCT変換を用いてい るので、 2次元 DC T変換を用いる図 1に示す従来の第 1の画像圧縮装置と 比較して、 より軽量に装置を構成することができる。 しかし、 十分な画質が 得られず、 上記性能条件 (2) を満たさない。
特許文献 1 :特開平 6 _ 204885号公報
特許文献 2:特開平 5— 681 7 1号公報
特許文献 3:特開昭 58 - 1 48565号公報
特許文献 4:特開平 1 0— 276432号公報
特許文献 5:特開昭 63 -22727 1号公報
特許文献 6:特開 2005 _ 1 67655号公報
特許文献 7:特開 2005 _ 252428号公報
特許文献 8: USP5, 683068
非特許文献 1 : A. Habibi, "Hybrid Coding of Pictorial Data" , pp.614-6 24, Vol. COM-22, No.5, IEEE Transactions on Communications, 1974.05 非特許文献 2: J. Max, "Quantizing for Mini mum Distortion" , IRE Trans action on Information Theory, Vol. IT - 6, pp.7-12, 1960
非特許文献 3 : Wen-Hsiung Chen, C. Harrison Smith, S. C. Fraick, "A Fa st Computational Algor ithm for the Discrete Cosine Transform" , pp.10 04-1007, IEEE Transactions of Communications, Vol. COM-25, No.9, Sep. 発明の開示
[0021 ] 本発明は、 上記性能条件 (1 ) 〜 (3 ) を満たす、 即ち軽量で、 高画質、 及び低遅延 (高圧縮) を実現できる画像圧縮装置を提供すると共に、 圧縮さ れた画像を復元する画像復元装置を提供することを目的とする。
[0022] 本発明の第 1〜第 6の態様の画像圧縮装置は何れも、 画素毎に画素データ を有する画像データを圧縮することを前提とし、 それぞれ以下のような構成 となっている。
第 1の態様の画像圧縮装置は、 画像データ中の連続する複数の画素分の画 素データからなる元画素データ群の直交変換を行い、 最低周波数側から所定 数に制限して、 周波数成分を示す係数を出力する変換部と、 変換部が出力す る係数毎に、 該係数と前に復元された係数との係数差分値を算出する係数差 分値算出部と、 係数差分値算出部が係数毎に算出する係数差分値を量子化し 、 該量子化によって得られる量子化値を出力する係数差分値量子化部と、 係 数差分値量子化部から係数毎に出力された量子化値の逆量子化を行い、 係数 差分値を出力する逆量子化部と、 逆量子化部が係数毎に出力する係数差分値 と、 前に復元された係数とを用いた計算により、 所定数の係数を復元して出 力する係数復元部と、 係数復元部が出力する所定数の復元された係数を用い た直交逆変換を行い、 元画素データ群を復元する逆変換部と、 元画素データ 群と、 逆変換部が復元した元画素データ群との画素差分値を画素毎に算出す る画素差分値算出部と、 係数差分値量子化部が出力する量子化値、 及び画素 差分値算出部が算出する画素差分値を符号化して圧縮データを出力する符号 化部と、 を具備する。
[0023] 第 2の態様の画像圧縮装置は、 上記第 1の態様における構成に加えて、 画 素差分値算出部が画素毎に算出する画素差分値を量子化し、 該量子化によつ て得られる量子化値を出力する画素差分値量子化部、 を更に具備し、 符号化 部は、 画素差分値量子化部が出力する量子化値を符号化する。
[0024] 本発明の第 1の態様のプログラムは、 上記第 1の態様の画像圧縮装置が有 する構成要素を実現させるための機能を搭載している。 本発明の第 1の態様の画像復元装置は、 上記第 1の態様の画像圧縮装置が 符号化した画像データを復元するものであり、 圧縮データから、 係数差分値 の量子化値、 及び前記画素差分値を復元する第 1の復元部と、 前記第 1の復 元部が復元した量子化値を逆量子化し、 前記係数差分値を出力する逆量子化 部と、 係数差分値と前に復元された係数を用いた計算を行い、 係数を復元す る係数計算部と、 係数計算部が復元した係数を用いて直交逆変換を行い、 画 素データ群を出力する逆変換部と、 第 1の復元部が復元した画素差分値と、 逆変換部が出力する画素データ群とを用いて元画素データ群を復元する第 2 の復元部と、 を具備する。
[0025] 本発明の第 2の態様の画像復元装置は、 上記第 1の態様における構成に加 えて、 画素差分値として該画素差分値の量子化値が符号化されている場合に 、 第 1の復元部が圧縮データから復元する該量子化値を逆量子化し、 該画素 差分値を出力する他の逆量子化部、 を更に具備し、 第 2の復元部は、 画素差 分値の量子化値が符号化されている場合に、 他の逆量子化部が出力する該画 素差分値を用いて元画素データ群を復元する。
[0026] 本発明の第 2の態様のプログラムは、 上記第 1の態様の画像復元装置が有 する構成要素を実現させるための機能を搭載している。
第 3の態様の画像圧縮装置は、 画像を分割するブロック内に存在する複数 の画素分の第 1の画素データ群から、 互いに異なる複数の画素データを間引 くことにより、 複数の第 2の画素データ群を生成するデータ生成部と、 デー タ生成部が生成した第 2の画素データ群毎に直交変換を行い、 最低周波数側 から所定数に制限して、 周波数成分を示す係数を出力する変換部と、 変換部 が出力する係数毎に、 該係数と前に復元された係数との係数差分値を算出す る係数差分値算出部と、 係数差分値算出部が係数毎に算出する係数差分値を 量子化し、 該量子化によって得られる量子化値を出力する係数差分値量子化 部と、 係数差分値量子化部から係数毎に出力された量子化値の逆量子化を行 し、、 係数差分値を出力する逆量子化部と、 逆量子化部が係数毎に出力する係 数差分値と、 前に復元された係数とを用いた計算により、 所定数の係数を復 元して出力する係数復元部と、 係数復元部が出力する所定数の復元された係 数を用いた直交逆変換を行い、 第 2の画素データ群を復元する逆変換部と、 第 2の画素データ群と、 逆変換部が復元した第 2の画素データ群との画素差 分値を画素毎に算出する画素差分値算出部と、 係数差分値量子化部が出力す る量子化値、 及び画素差分値算出部が算出する画素差分値を符号化して圧縮 データを出力する符号化部と、 を具備する。
[0027] 第 4の態様の画像圧縮装置は、 画像を分割するブロック内に存在する複数 の画素分の第 1の画素データ群から、 互いに異なる複数の画素データを間引 くことにより、 複数の第 2の画素データ群を生成するデータ生成部と、 デー タ生成部が生成した第 2の画素データ群毎に直交変換を用いた符号化を行い 、 第 1の画素データ分の圧縮データを出力する符号化部と、 を具備する。
[0028] 第 3の態様のプログラムは、 上記第 3の態様の画像圧縮装置が有する構成 要素を実現させるための機能を搭載している。
第 3の態様の画像復元装置は、 上記第 3の態様の画像圧縮装置によリ符号 化された画像データを復元するものであり、 圧縮データから、 係数差分値の 量子化値、 及び画素差分値を復元する第 1の復元部と、 第 1の復元部が復元 した量子化値を逆量子化し、 係数差分値を出力する逆量子化部と、 係数差分 値と前に復元された係数を用いた計算を行い、 係数を復元する係数計算部と 、 係数計算部が復元した係数を用いて直交逆変換を行い、 画素データ群を出 力する逆変換部と、 第 1の復元部が復元した画素差分値と、 逆変換部が出力 する画素データ群とを用いて第 2の画素データ群を復元する第 2の復元部と 、 第 2の復元部が復元した複数の第 2の画素データ群から第 1の画素データ 群を復元する第 3の復元部と、 を具備する。
[0029] 第 4の態様のプログラムは、 上記第 3の態様の画像復元装置が有する構成 要素を実現させるための機能を搭載している。
第 5の態様の画像圧縮装置は、 画像データ中の連続する複数の画素分の画 素データからなる元画素データ群に対する複種類の直交変換を行うことが可 能な変換部と、 複種類の直交変換のなかの一つを選択する変換選択部と、 変 換選択部により選択された種類の直交変換を変換部が行うことで出力される 周波数成分を示す係数毎に、 該係数と前に復元された係数との係数差分値を 算出する係数差分値算出部と、 係数差分値算出部が係数毎に算出した係数差 分値を量子化し、 該量子化によって得られる量子化値を出力する係数差分値 量子化部と、 係数差分値量子化部が出力する量子化値を符号化して圧縮デー タを出力する符号化部と、 を具備する。
[0030] 第 6の態様の画像圧縮装置は、 上記第 5の態様における構成に加えて、 係 数差分値量子化部から係数毎に出力された量子化値の逆量子化を行い、 係数 差分値を出力する逆量子化部と、 逆量子化部が係数毎に出力する係数差分値 と、 前に復元された係数とを用いた計算により、 変換部が出力した係数を復 元して出力する係数復元部と、 係数復元部が出力する係数を用いて、 変換選 択部による選択に応じた直交逆変換を行い、 元画素データ群を復元する逆変 換部と、 元画素データ群と、 逆変換部が復元した元画素データ群との画素差 分値を画素毎に算出する画素差分値算出部と、 画素差分値算出部が算出する 画素差分値を量子化し、 該量子化によって得られる量子化値を出力する画素 差分値量子化部と、 を更に具備し、 符号化部は、 画素差分値量子化部が出力 する量子化値を符号化して圧縮データを出力する。
[0031] 第 5の態様のプログラムは、 上記第 6の態様の画像圧縮装置が有する構成 要素を実現させるための機能を搭載している。
第 4の態様の画像復元装置は、 上記第 6の態様の画像圧縮装置が符号化し た画像データを復元するものであり、 圧縮データから、 係数差分値の量子化 値、 及び画素差分値を復元する第 1の復元部と、 第 1の復元部が復元した量 子化値を逆量子化し、 係数差分値を出力する逆量子化部と、 係数差分値と前 に復元された係数を用いた計算を行い、 係数を復元する係数計算部と、 係数 計算部が復元した係数を用いて、 該係数を得た直交変換の種類に対応する直 交逆変換を行い、 画素データ群を出力する逆変換部と、
第 1の復元部が復元した画素差分値と、 逆変換部が出力する画素データ群 とを用いて元画素データ群を復元する第 2の復元部と、 を具備する。 [0032] 第 6の態様のプログラムは、 上記第 4の態様の画像復元装置が有する構成 要素を実現させるための機能を搭載している。
本発明では、 画像データ中の連続する複数の画素分の画素データからなる 元画素データ群の直交変換を行い、 最低周波数側から所定数に制限して、 周 波数成分を示す係数を出力し、 その係数毎に、 その係数と前に復元された係 数との係数差分値を算出し、 その係数差分値を量子化し、 その量子化によつ て得られる量子化値の逆量子化を行い、 その逆量子化によって得られた係数 差分値と、 前に復元された係数とを用いた計算により、 所定数の係数を復元 して直交逆変換を行い、 元画素データ群を復元し、 元画素データ群と、 復元 した元画素データ群との画素差分値を画素毎に算出し、 係数差分値の量子化 値、 及び画素差分値を符号化して圧縮データを出力する。
[0033] 直交変換により出力する係数を制限したことにより、 より少ない計算量で 直交変換を行えるようになる。 それにより、 高速な処理、 演算器数 (回路規 模) の低減が可能となる。 元画素データ群 (ブロック) に存在する低周波成 分は係数差分値の量子化値、 高周波成分は画素差分値として符号化される。 そのため、 画像が自然画、 C G画像 (線画) の何れであっても常に高画質を 得ることが可能である。 最終的に差分値、 或いは量子化値を符号化するため に、 高い圧縮率を実現させることができる。 このようなことから、 制約の厳 しい車載 L A Nのデータ伝送等の用途にも快適に用いることができる。
[0034] 本発明では、 画像を分割するプロック内に存在する複数の画素分の第 1の 画素データ群から、 互いに異なる複数の画素データを間引いて複数の第 2の 画素データ群を生成することにより、 第 1の画素データ群の符号化を複数回 に分けて行う。
[0035] 直交変換のための計算量は、 点数 (画素データ数) が大きくなるのに伴い 、 指数関数的に増大する。 このため、 第 1の画像データ群の符号化を複数回 に分けて行うことにより、 符号化のために必要な計算量は低減する。 それに より、 より高速な処理、 回路規模の低減に効果的である。
[0036] 本発明では、 元画素データ群に対する複種類の直交変換を行うことを可能 とし、 その元画素データ群に合った種類の直交変換を行った結果を用いて符 号化を行う。 そのため、 圧縮データのデータ量 (符号量) をより低減させつ つ、 高画質を実現させることができる。
図面の簡単な説明
[図 1 ]従来の第 1の画像圧縮装置の構成を示すブロック図である。
[図 2]従来の第 2の画像圧縮装置の構成を示すブロック図である。
[図 3]本発明の第 1の実施形態による画像圧縮装置の構成を示すブロック図で める。
[図 4]差分値による出現頻度の変化を示す図である。
[図 5]図 4に示す傾向が出現頻度に存在する場合の量子化テーブルの内容を示 す図である。
[図 6]図 5の量子化テーブルによる差分値の量子化を示すグラフである。
[図 7]実際に用いられる量子化テーブルの内容を示す図である。
[図 8]逆量子化テーブルの内容を示す図である。
[図 9]低周波成分のみを符号化する場合の圧縮データの構成を示す図である。
[図 10A]高周波成分を併せて符号化する場合の圧縮データの構成を示す図であ る (その 1 ) 。
[図 10B]高周波成分を併せて符号化する場合の圧縮データの構成を示す図であ る (その 2 ) 。
[図 10C]高周波成分を併せて符号化する場合の圧縮データの構成を示す図であ る (その 3 ) 。
[図 11 ] 1次元 D C T変換部 4 1が D C Tの際に実行するバタフライ演算の一 例を示す図である。
[図 12]第 1の実施形態による画像復元装置の構成を示すブロック図である。
[図 13]画像圧縮装置 3 0、 或いは画像復元装置 6 0を実現できるコンビユー タのハードウエア構成の一例を示す図である。
[図 14]第 2の実施形態による画像圧縮装置の構成を示すブロック図である。
[図 15]予測順位変換部の構成を示す図である。 [図 16] S I a n t変換の基底関数を示す図である。
[図 17] D S Tの高速計算法を示す図である。
[図 18]算出する係数を低次の 3個に制限した場合に D S Tに必要な計算を示 す図である。
[図 19A]乗数の 2の冪乗近似法を示す図である (その 1 ) 。
[図 19B]乗数の 2の冪乗近似法を示す図である (その 2 ) 。
[図 19C]乗数の 2の冪乗近似法を示す図である (その 3 ) 。
[図 19D]乗数の 2の冪乗近似法を示す図である (その 4 ) 。
[図 20]乗数の 2の冪乗近似法が適用される計算箇所を示す図である。
[図 21 ]第 2の実施形態による画像復元装置の構成を示すブロック図である。
[図 22]予測順位逆変換部の構成を示す図である。
[図 23]第 3の実施形態による画像復元装置の構成を示すブロック図である。
[図 24] 1 6点の D C Tの高速計算法を示す図である。
[図 25]第 3の実施形態による画像圧縮装置の構成を示すブロック図である。
[図 26]第 4の実施形態による画像復元装置の構成を示すブロック図である。
[図 27]自然画向けの S I a n t変換の基底関数例を示す図である。
[図 28]線画向けの S I a n t変換の基底関数例を示す図である。
[図 29]線画向けの基底関数を用いた場合に行われるバタフライ演算を示す図 である。
[図 30]第 4の実施形態による画像圧縮装置の構成を示すブロック図である。
[図 31 ]第 5の実施形態による画像復元装置の構成を示すブロック図である。
[図 32]画像の種類と直交変換の種類の間に存在する符号量の関係を示す図で ある。
[図 33]画像識別処理のフローチヤ一卜である。
[図 34]第 5の実施形態による画像圧縮装置の構成を示すブロック図である。 発明を実施するための最良の形態
以下、 本発明の実施の形態について、 図面を参照しながら詳細に説明する ぐ第 1の実施形態 >
図 3は、 本発明の第 1の実施形態による画像圧縮装置の構成を示すブロッ ク図である。
[0039] その画像圧縮装置 30は、 例えば自動車の車載 LANを想定したものであ リ、 図 3に示すように、 1ラインメモリ 31、 1次元 DCT変換部 41、 3 個の係数差分値算出部 42、 係数記憶部 43、 係数差分値量子化部 44、 可 変長符号化部 32、 逆量子化部 51、 3個の係数算出部 52、 1次元 DCT 逆変換部 53、 差分値算出部 54、 差分値量子化部 55、 画素数カウンタ 3 3、 及びブロック境界画素検出部 34、 を備える。
[0040] 1ラインメモリ 31は、 1ライン分の画像データを保持することが可能な メモリである。 1次元 DCT変換部 41は、 1ラインメモリ 31からライン 上連続する所定数の画素分 (ここでは 8画素分) の画素データ群 (以降 「元 画素データ群」 ) を入力し、 1次元 DCT変換を行う。 その変換により、 最 低周波側から 3個の DC T係数、 つまり直流成分 DC、 交流成分 AC 1、 及 び AC 2のみを出力する。 それらの DC T係数は対応する係数差分値算出部 42に入力される。 「AC」 に付した 「1」 及び 「2」 の数字は AC成分の 空間周波数の高さを表し、 「42」 に添字として付した 「1」 〜 「3」 の数 字は入力する DC T係数の空間周波数の高さを表している。 これは、 係数算 出部 52でも同様である。
[0041] 図 1 1は、 1次元 DCT変換部 41が DCTの際に実行するバタフライ演 算の一例を示す図である。
本実施形態では、 DCTの高速計算法として知られている C h e nの方法 (非特許文献 3) を用いて、 DC成分 DC、 A C成分 AC 1及び AC 2を算 出している。 図 1 1において、 小さい丸印は計算の途中で値が得られるノー ドを示している。 また、 X 0〜 7はそれぞれ画素データ (の値) を示し、 y 0〜7はそれぞれ DCT係数を示している。 χ θ' 〜χ 7' はそれぞれ、 対 応するノードで得られた値を示している。
[0042] Ch e nの方法は、 図中のそれぞれのノードで得られる値を用いたバタフ ライ演算を繰り返すことにより、 画素データ X 0〜7から DCT係数 y 0〜 7を得るための方法である。 通常のマ卜リックス演算を行う場合と比較して 、 大幅に演算量 (乗算回数、 及び加算回数) を減らせるという利点を有して いる。 本実施形態では、 予め定めた低次の DC T係数、 つまり DC成分 DC (y 0) 、 AC成分 AC 1 (y 1 ) 及び AC2 (y 2) のみを求めるため、 更に演算量を減らすことができる。 演算量は、 8個の DCT係数を求める場 合の約 75%となっている。
[0043] Ch e nの方法では、 或るノードに設定される値 (変数) は、 そのノード の左隣りに位置し、 線 (リンク) で接続されている 1つ以上のノードで設定 される値を用いた演算によって決定される。 因子 ( 「一」 、 「土 Co s *」 、 或いは 「±S i n *」 。 「*」 はワイルドカードを示すシンポルである) を付したリンクでは、 そのリンクの左端に位置するノードの値にその因子を 乗じた値が右端に位置するノードに渡される。 因子を付していないリンクで は、 左端に位置するノードの値がそのまま右端に位置するノードに渡される 。 それにより、 因子としての 「1」 は省略している。
[0044] ノードが左隣りの複数のノードとリンクされている場合、 左隣りのノード の値、 或いはそれに因子を乗じた値をそれぞれ加算して得られる加算結果が ノードの値とされる。 それにより例えば値 「χ Ο'」 は、 画素データ Γχ Ο」 の値と画素データ 「χ 7」 の値を加算 (=χ Ο + χ 7) することで得られる 。 また、 値 「χ 5'」 は、 画素データ Γχ 2」 の値と画素データ Γχ 5」 の負 の値を加算 (=χ 2+ (- Χ 5) ) することで得られる。 画素データ 「χ 5 」 の負の値を加算するのは、 リンクに因子として 「一」 が存在するからであ る。
[0045] 図 1 1において、 「C」 は Co sの略であり、 「S」 は S i nの略である 。 よって、 例えば、 Γ〇πΖ4」 は、 Co s (πΖ4) を表している。 それ により、 〇πΖ 4を付したリンクでは、 そのリンクの左端のノードの値に C o s (πΖ4) を乗算した値が右端のノードに渡される。
[0046] 係数記憶部 43は、 各計数算出部 52が出力する DC Τ係数を記憶させる メモリである。 図中、 その D C T係数は例えば 「D C ' 」 及び 「A C 1 ' 」 のように 」 を付して区別している。 各係数差分値算出部 4 2は、 係数記 憶部 4 3に記憶された D C T係数と、 1次元 D C T変換部 4 1から入力した D C T係数との間の差分値を算出し、 係数差分値量子化部 4 4に出力する。
[0047] 係数差分値量子化部 4 4は、 各係数差分値算出部 4 2が算出した各差分値 を量子化し、 可変長符号化部 3 2に出力する。 それにより、 量子化された差 分値は可変長符号化され、 その符号化後のデータが圧縮データとして可変長 符号化部 3 6から出力される。 以降、 量子化された値は 「インデックス値」 と呼ぶことにする。
[0048] ここで図 4〜図 7を参照して、 上記量子化について具体的に説明する。
図 4は、 差分値による出現頻度の変化を示す図である。
上記係数記憶部 4 3に記憶させる D C Τ係数は、 直前に処理した元画素デ ータ群から得られたものとしている。 このため、 各係数差分値算出部 4 2が 算出する差分値は、 図 4に示すように、 0が最も出現頻度が高く、 その 0よ リも離れるにつれて出現頻度が低くなる傾向にある。 それにより、 量子化ス テツプサイズは、 その傾向を考慮して設定している。 図 4中の 「代表区間」 は、 それぞれ量子化ステップサイズに相当する。 また、 X 1〜χ 5は、 量子 化によって代表される差分値を表している。
[0049] 図 5は、 図 4に示す傾向が出現頻度に存在する場合の量子化テーブルの内 容を示す図であり、 図 6は、 その量子化テーブルによる差分値の量子化を示 すグラフである。 図 5及び図 6において、 χ 1〜χ 5は、 量子化によって代 表される差分値、 入力差分値は量子化前の差分値、 出力差分値は量子化後の 差分値 (インデックス値) 、 Xは実際の入力差分値をそれぞれ表している。 図 6では、 縦軸に出力差分値、 横軸に入力差分値を取っている。 図 5に示す ような量子化テーブルによって、 入力差分値は図 6に示すように量子化され る。 与えられた出現分布に対する最適な量子化器の設計方法としては、 非特 許文献 2に記載されたものがある。 その設計方法に基づいて設計された量子 化器は、 「M a Xの量子化器」 と呼ばれる。 [0050] 図 7は、 実際に用いられる量子化テーブルの内容を示す図である。
図 3の係数差分値量子化部 4 4は、 図 7に示すような量子化テーブルを参 照して、 各係数差分値量子化部 4 2から入力した差分値を量子化し、 その差 分値に対応するインデックス値を可変長符号化部 3 2、 及び逆量子化部 5 1 にそれぞれ出力する。
[0051 ] 逆量子化部 5 1は、 各インデックス値を逆量子化し、 それぞれ対応する係 数算出部 5 2に出力する。 その逆量子化は、 図 8に示すような逆量子化テー ブルを参照して行い、 インデックス値に対応付けられた差分値を出力する。 各係数算出部 5 2は、 逆量子化部 5 1から入力した差分値と、 係数記憶部 4 3に記憶された D C T係数とを加算することにより、 D C T係数の復元を行 う。 そのようにして復元された各 D C T係数は 1次元 D C T逆変換部 5 3に 出力されると共に、 係数記憶部 4 3に記憶される。 図中、 「' 」 を付した Γ D C 」 及び 「A C 1 ' 」 等は、 そのようにして復元された D C T係数を表 している。
[0052] 1次元 D C T逆変換部 5 3は、 各係数算出部 5 2が算出した D C T係数を 用いて 1次元 D C T逆変換を行い、 8画素分の画素データを差分値算出部 5 4に出力する。 その差分値算出部 5 4は、 1次元0〇丁逆変換部5 3から入 力した画素データ毎に、 その画素データと 1ラインメモリ 3 1から入力した 元画素データ群中の対応する画素データとの間の差分値を算出し、 差分値量 子化部 5 5に出力する。 差分値量子化部 5 5は、 例えば図 7に示すものと同 様の量子化テーブルを参照して、 各差分値を量子化し、 可変長符号化部 3 2 に出力する。 それにより、 可変長符号化部 3 2は、 D C T係数の差分値の他 に、 画素データ間の差分値を可変長符号化し、 圧縮データとして出力する。
[0053] ここで、 可変長符号化部 3 2が出力する圧縮データについて、 図 9、 図 1 0 〜図1 O Cを参照して具体的に説明する。
本実施形態では、 画素データ間の差分値は元画素データ群を構成する左 4 画素分、 及び右 4画素分に分けて极つている。 左右の 4画素分は、 全ての差 分値が 0か否かで扱い方を変えるようにしている。 それにより、 左右の 4画 素の全てが 0、 左 4画素の差分値のみが全て 0、 右 4画素の差分値のみが全 て 0、 左右の 4画素は何れも 0でない、 の 4ケースに分けて符号化を行うよ うにしている。
[0054] 左右の 4画素の全てが 0のケースは、 処理対象とする元画素データ群と、 直前に処理した元画素データ群との間に差がない、 或いは差が小さいことを 意味する。 これは、 低周波成分のみが存在するブロック (8画素) を圧縮処 理する場合に発生するケースである。 このケースでは、 図 9に示すように、 3つの D C T係数の差分値を量子化して得られるィンデックス値の組を示す 符号情報に続けて、 ケース識別用のフラグ情報として 「0」 が付加される。 低周波成分のみが存在するプロックでは係数差分値量子化部 4 4が出力する 差分値のィンデックス値のみが符号化の対象になることから、 図 3に示す 1 次元 D C T変換部 4 1、 各係数差分値算出部 4 2、 係数記憶部 4 3及び係数 差分値量子化部 4 4は、 低周波成分用の圧縮処理部 4 0を構成している。
[0055] 左右の 4画素の全てが 0のケース以外は、 高周波成分が存在するブロック を圧縮処理する場合に発生するケースである。 そのケースでは、 高周波成分 が左右の 4画素の何れに存在するかに応じて、 上記符号情報に以下の情報が 付加される。 高周波成分が存在するブロックでは差分値量子化部 5 5が出力 する差分値のインデックス値が符号化の対象になることから、 図 3に示す逆 量子化部 5 1、 各係数算出部 5 2、 1次元 D C T逆変換部 5 3、 差分値算出 部 5 4及び差分値量子化部 5 5は、 高周波成分用の圧縮処理部 5 0を構成し ている。
[0056] 左 4画素の差分値のみが全て 0のケースでは、 図 1 O Aに示すように、 上 記符号情報に続けて、 「1」 の 2つのフラグ情報、 左 4画素分の差分値 (ィ ンデックス値) の組を示す符号情報、 及び 「0」 のフラグ情報が付加される 。 右 4画素の差分値のみが全て 0のケースでは、 図 1 O Bに示すように、 Γ 1」 「0」 「1」 の 3つのフラグ情報、 及び右 4画素分の差分値 (インデッ クス値) の組を示す符号情報が付加される。 左右の 4画素は何れも 0でない ケースでは、 図 1 O Cに示すように、 「1」 の 2つのフラグ情報、 左 4画素 分の差分値 (インデックス値) の組を示す符号情報、 「1」 のフラグ情報、 及び右 4画素分の差分値 (インデックス値) の組を示す符号情報が付加され る。
[0057] 可変長符号化部 3 2は、 差分値量子化部 5 5から画素データ間の量子化さ れた差分値 (インデックス値) を入力すると、 その差分値が対応するケース を判別し、 その判別結果に応じて、 図 9、 及び図 1 0 〜図1 O Cのうちの 一つに示す構成の圧縮データを生成して出力する。 インデックス値の組を示 す符号情報も可変長符号化によって得られるものとしている。
[0058] 画素数カウンタ 3 3は、 例えば、 1ラインで圧縮処理を行った画素数を力 ゥン卜するものである。 それにより、 例えば 1ライン分の圧縮処理が終了し た場合にキヤリー信号をプロック境界検出部 5 7に出力する。
[0059] ブロック境界検出部 5 7は、 キャリー信号の入力により、 差分値量子化部
5 5に出力する量子化テーブル切替信号を変化させる。 例えばキャリー信号 の入力により、 量子化テーブル切替信号を一時的にアクティブ或いはイナク ティブにして、 量子化に使用する量子化テーブルをステップサイズがょリ大 きいものに一時的に変更させる。 それにより、 圧縮処理の対象とするブロッ ク境界が見えないように量子化を細かくさせる。
[0060] 上述したように本実施形態では、 1次元 D C T変換部 4 1による D C T係 数の算出は低次のものに制限して行い、 算出した D C T係数 (ここでは差分 値) を符号化する。 画素間の差分値は、 必要に応じて符号化する。
[0061 ] 滑らかに画素の描画内容が変化する領域、 つまリ低周波成分のみが存在す るブロックでは、 低次に制限した D C T係数 (ここでは最低周波数側から 3 個の D C T係数) から高精度なデータ復元を行うことができる。 C G画像に 頻繁に現れるエッジがきつい領域では、 その領域内の高周波成分は画素間の 差分値として符号化される。 このため、 自然画、 及び C G画像の双方でも常 に高精度なデータ復元を行うことができる。 また、 そのように低周波成分、 及び高周波成分に帯域を分けた符号化により、 サブバンド符号化と同様に高 圧縮を実現させることができる。 本実施形態では、 D C T係数、 及び画素デ ータは共に差分値を符号化することにより、 更なる高圧縮を実現させている
[0062] 回路規模は、 図 2の従来の画像圧縮装置と同程度で実現できる。 これは、 本実施形態では、 1次元0〇丁逆変換部5 3、 差分算出部 5 4、 及び差分値 量子化部 5 5が追加されているが、 係数差分値算出部、 及び係数算出部の個 数がより少なくなつているからである。
[0063] なお、 本実施形態では、 D C T係数の差分値を符号化しているが、 D C T 係数自体を符号化しても良い。 係数記憶部 4 3に記憶させる D C T係数は、 直前に処理した元画素データ群から得られるものとしているが、 異なるライ ン上の同じ位置の元画素データ群から得られるものとしても良い。 それらの 元画素データ群のなかから状況に応じて選択するようにしても良い。
[0064] 図 1 3は、 上記画像圧縮装置 3 0を実現できるコンピュータのハードゥエ ァ構成の一例を示す図である。 そのコンピュータは、 図 1 3に示すように、 C P U 9 1、 メモリ 9 2、 入力装置 9 3、 出力装置 9 4、 外部記憶装置 9 5 、 媒体駆動装置 9 6、 及びネットワーク接続装置 9 7を有し、 これらがバス 9 8によって互いに接続された構成となっている。 この構成は一例であり、 これに限定されるものではない。
[0065] 上記メモリ 9 2は、 プログラム実行、 データ更新等の際に、 外部記憶装置
9 5 (あるいは可搬型の記録媒体 9 9 ) に記憶されているプログラムあるい はデータを一時的に格納する R A M等のメモリである。 入力装置 9 3は、 例 えば、 キーボード、 マウス等の入力装置と接続されたインターフェース、 或 いはそれらを全て有するものである。 出力装置 9 4は、 例えば表示装置と接 続された表示制御装置、 或いはそれらを有するものである。 外部記憶装置 9 5は、 例えばハードディスク装置である。 記憶媒体駆動装置 9 6は、 光ディ スクゃ光磁気ディスク等の可搬型の記録媒体 9 9にアクセスするものである
[0066] 本実施形態による画像圧縮装置 3 0は、 それに必要な機能を搭載したプロ グラム (以降 「圧縮ソフト」 と呼ぶ) を C P U 9 1に実行させることで実現 される。 その圧縮ソフトが外部記憶装置 9 5に記憶されている場合、 図 3に 示す各部は、 その外部記憶装置 9 5、 C P U 9 1 . メモリ 9 2、 及びバス 9 8によって実現される。 このことから、 画像圧縮装置 3 0はコンピュータに 圧縮ソフトを実行させることで実現させても良い。 その圧縮ソフトは、 記録 媒体 9 9に記録して配布しても良く、 或いはネッ卜ワーク接続装置 9 7によ リ取得できるようにしても良い。 これは他の実施形態でも同様である。
[0067] 次に、 上記画像圧縮装置 3 0により出力される圧縮データを復元する画像 復元装置について詳細に説明する。
図 1 2は、 第 1の実施形態による画像復元装置の構成を示すブロック図で ある。 その画像復元装置 4 0は、 図 1 2に示すように、 可変長符号復号化部 6 1、 係数差分値逆量子化部 7 1、 係数記憶部 7 2、 3つの係数算出部 7 3 、 1次元 D C T逆変換部 7 4、 画素差分値逆量子化部 8 1、 加算部 8 2、 1 ラインメモリ 6 2、 画素数カウンタ 6 3、 及びブロック境界画素検出部 6 4 、 を備える。 係数差分値逆量子化部 7 1、 係数記憶部 7 2、 3つの係数算出 部 7 3、 及び 1次元 D C T逆変換部 7 4は、 低周波成分用の復元処理部 7 0 を構成し、 画素差分値逆量子化部 8 1、 及び加算部 8 2は高周波成分用の復 元処理部 8 0を構成している。
[0068] 可変長符号復号化部 6 1は、 図 3に示す画像圧縮装置 3 0により出力され る圧縮データを復号し、 D C T係数の差分値のインデックス値 (量子化値) を出力する。 その圧縮データが図 1 0 〜図1 O Cの何れかの構成であった 場合には、 復号により画素間の差分値のインデックス値を併せて出力する。
D C T係数の差分値のインデックス値は係数差分値逆量子化部 7 1に出力さ れ、 画素間の差分値のインデックス値は画素差分値逆量子化部 8 1に出力さ れる。
[0069] 係数差分値逆量子化部 7 1は、 図 8に示す逆量子化テーブルを参照して、 インデックス値毎に逆量子化を行い、 そのインデックス値に対応する差分値 をそれぞれ各係数算出部 7 3に出力する。 「7 3」 に添字として付した 「1 」 〜 「3」 の数字は差分値を入力する D C T係数の空間周波数の高さを表し ている。
[0070] 係数記憶部 72は、 直前に算出 (復元) された DCT係数を記憶させるメ モリである。 各係数算出部 73に入力される DC T係数の差分値は、 上述し たように、 直前の元画素データ群を処理することで得られた D C T係数と、 今回の元画素データ群を D C T変換することで得られた D C T係数との差 ( DC成分の場合では、 例えば DC' —DCにより得られた値) である。 この ことから、 各係数算出部 73は、 係数差分値逆量子化部 7 1から入力した差 分値を係数記憶部 72に記憶された D C T係数の値から加算することにより 、 DCT係数を算出する。 そのようにして復元された DC T係数は、 1次元 DCT逆量子化部 74に出力され、 係数記憶部 72に新たに記憶される。 図 中の 「DC' 」 「AC 1 ' 」 「AC2' 」 は、 各係数算出部 73から出力さ れて係数記憶部 72に記憶される DC T係数を表している。
[0071] 1次元 DCT逆変換部 74は、 各係数算出部 73から入力した計 3個の D C T係数を用いて DC T逆変換を行い、 8画素分の画素データを加算部 82 に出力する。 その加算部 82には他に、 画素差分値逆量子化部 81から画素 間の差分値が入力される。 画素差分値逆量子化部 81は、 画像圧縮装置 30 と同様に、 画素数力ゥンタ 63からのキヤリ一信号を入力するプロック境界 画素検出部 64の量子化テーブル切替信号を介した制御によって参照する逆 量子化テーブルを変更する。
[0072] 符号化される画素間の差分値は、 例えば元の画素データの値から DC T逆 変換により復元された画素データの値を減算したものである。 このことから 、 加算部 82は、 1次元 DCT逆変換部 74から入力した各画素データにそ れぞれ、 画素差分値逆量子化部 81から入力した差分値を加算する。 その加 算により、 元画素データ群は復元され、 1ラインメモリ 62に格納される。
[0073] 1ラインメモリ 62は、 1ライン分の画像データを記憶可能なものである 。 このため、 復元した画像データは、 1ライン分、 1ラインメモリ 62に一 旦、 格納してから後段に渡すようにしている。
[0074] 上述したような画像復元装置 60は、 画像圧縮装置 30と同様に、 それに 必要な機能を搭載したプログラム (以降 「復元ソフト」 と呼ぶ) を図 13に 示すようなコンピュータに実行させることで実現させても良い。 その復元ソ フ卜が外部記憶装置 95に記憶されている場合、 図 1 2に示す各部は、 その 外部記憶装置 95、 CPU 91、 メモリ 92、 及びバス 98によって実現さ れる。 その復元ソフトは、 記録媒体 99に記録して配布しても良く、 或いは ネッ卜ワーク接続装置 97により取得できるようにしても良い。 これは他の 実施形態でも同様である。
[0075] なお、 本実施形態では、 圧縮時に 8点の 1次元 DCT変換を行うようにし ているが、 その変換は 8点以外の点数で行っても良い。 8点の DC T変換に より得られる 8つの DC T係数のなかで符号化の対象とするものは 3つとし ているが、 3つ以外の数としても良い。
ぐ第 2の実施形態 >
上記第 1の実施形態では、 空間 (画素値)領域のデータから空間周波数領域 のデータへの変換に 1次元 DC Tを用いている。 これに対し、 第 2の実施形 態は、 その変換に 1次元 DST (Discrete Slant Transform) 変換を用いた ものである。 その DST変換を用いることにより、 第 1の実施形態と比較し て、 より少ない計算量で圧縮を行えるようにしている。
[0076] 第 2の実施形態における画像圧縮装置、 及び画像復元装置の何れの構成も 第 1の実施形態におけるそれとの相違は比較的に少ない。 このことから、 第 1の実施形態と同じ、 或いは基本的に同じものには同一の符号を用いて、 そ の第 1の実施形態から異なる部分についてのみ着目して説明する。 これは、 以降の他の実施形態でも同様である。
[0077] 図 14は、 第 2の実施形態による画像圧縮装置の構成を示すブロック図で ある。 その画像圧縮装置 30は、 図 14に示すように、 図 3に示す 1次元 D CT変換部 41、 及び 1次元 DCT逆変換部 53の代わりとして、 それぞれ 1次元 DST変換部 1401、 及び 1次元 DST逆変換部 1402を備えて いる。 また、 差分値量子化部 55と可変長符号化部 32間に予測順位変換部 1403を配置している。 [0078] 1次元 DS T変換部 1 401は、 1ラインメモリ 31から 8画素分の画素 データ (元画素データ群) を読み出して 1次元 DST変換を行い、 最低周波 数側の 3個の係数のみをそれぞれ対応する係数差分値算出部 42に出力する
[0079] 図 1 6は、 S I a n t変換の基底関数を示す図であり、 図 1 7は、 DST の高速計算法を示す図である。 図 1 6及び図 1 7は共に、 特許文献 8に記載 されたものである。
S I a n t変換の基底関数は直線になり、 乗算回数は DC Tよりも少なく なる。 最低周波数側の 3個の係数のみに限定する場合、 図 1 8に示すように 計算を行えば良い。 それにより、 8個の係数を計算する場合では 26回の加 算、 1 2回の乗算を行う必要があるのに対し、 3個の係数のみを計算する場 合には 1 7回の加算、 6回の乗算を行えば済むようになる。 このようなこと から計算量が大幅に低減する。 その結果、 LS I化する場合には、 搭載すベ き演算器の数はよリ少なくなつて、 回路規模はよリ抑えられるようになる。
[0080] 図 1 8中の 「a 8」 は (48Z63) 1/2、 Γ b 8」 は ( 1 5Z63) 1/2 を表す。 それらの乗数は、 一般的には
a 2N= (3 N2/ (4 N2- 1 ) ) /2
b2N= ( (N2- 1 ) / (4N2- 1 ) ) 1/2
により計算される。 8画素ブロックの場合、 2N = 8となる。
[0081] 本実施形態では、 回路規模を更に抑えられるように、 以下のようにして乗 算を行うのを回避させている。 図 1 9 〜図1 9 D及び図 20を参照して具 体的に説明する。
S I a n t変換では、 図 1 8に示すように、 変換に用いる乗数は 1 Z 51 2 、 3Z51/2、 a 8 (= (48/63) /2) 、 b 8 (= ( 1 5/63) /2 ) の 4種類である。 これらの乗数は、 図 1 9 〜図1 9 Dに示すように、 2 の冪乗の 2桁または 3桁で近似することにより、 被乗数 Vとの乗算はビッ卜 のシフト操作と加算で表すことができる。 つまり、 被乗数 Vと 1Z51 2 (= 0. 4772) の乗算は図 1 9 Aに示すように、 1 Z 51 /2を 0.4375と 近似し、 被乗数 Vの 1ビットシフ卜した値と、 その被乗数 Vの 4ビットシフ 卜した値の補数を加算することで行うことができる。 3 Z 5 1 2との乗算は、 図 1 9 Bに示すように、 その被乗数 Vの 2ビットシフ卜した値と 3ビットシ フ卜した値の加算値に、 被乗数 Vを加算することで行うことができる。 a 8 との乗算は、 図 1 9 Cに示すように、 その被乗数 Vの 3ビットシフトした値 の補数をその被乗数 Vに加算することで行うことができる。 b 8との乗算は 、 図 1 9 Dに示すように、 被乗数 Vの 1ビットシフ卜した値に、 その被乗数 Vの 3ビッ卜シフトした値の補数を加算することで行うことができる。 その ような乗数の 2の冪乗近似を行うことにより、 計算法は図 1 8に示すものか ら図 2 0に示すものに変化する。 図 2 0において、 Γ ( 1 ) 」 〜 Γ ( 4 ) 」 はそれぞれ図 1 9 〜図1 9 Dに示す計算法が適用される箇所を示している
[0082] L S Iに搭載する場合、 乗算器は加算器の約 5倍の面積を必要とするのが 普通である。 このため、 乗算を行うのを回避、 或いはその回数をより少なく して、 必要とする乗算器を減らすことは回路規模をより抑えるのに非常に有 効となっている。 本実施形態では、 そのことに着目し、 乗数の 2の冪乗近似 を行うことにより、 必要とする乗算器数を少なくして回路規模をより抑えら れるようにしている。
[0083] 8画素ブロックを対象にした場合、 D C T変換では 2 6回の加算、 及び 2 0回の乗算を行う必要がある (図 1 1 ) 。 低次の 3個の係数に限定しても、 1 9回の加算、 及び 1 0回の乗算を行う必要がある。 しかし、 D S T変換で は、 2 6回の加算、 及び 1 2回の乗算を行えば良い (図 1 7 ) 。 低次の 3個 の係数に限定すれば、 1 7回の加算、 及び 6回の乗算を行えば良い。 乗数の 2の冪乗近似を採用すれば、 乗算回数は 0となり、 2 5回の加算を行えば良 いようになる。 それにより、 L S I上の回路規模として、 加算器:乗算器 = 1 : 5と見積もれば、 直交変換部が行う変換を D C Tから D S Tに変更する ことにより、 その直交変換部の回路規模を 3 6 %に縮小させることができる 。 これは、 直交変換部が全体に占める割合を 3 0 0/0と見積もると、 全体で 2 0%程度、 回路規模を削減できることを意味する。
[0084] 乗数の 2の冪乗近似を行うことにより、 演算精度は低下する。 しかし、 係 数としては低次のもののみを用いるため、 その演算精度の低下は問題とはな らない。 南力リフォルニァ大学の評価画像 CO U P LE (51 2 X 51 2画 素、 8ビット Z画素) を用いて変換■逆変換による S N R (Signal Noise Ra tio) を確認したところ、 近似不採用では 8個の係数を用いた場合は 63. 4 0 d B、 低次の 3個の係数を用いた場合は 29. 59 d Bであった。 近似採 用では、 8個の係数を用いた場合は 50. 68 d B、 低次の 3個の係数を用 いた場合は 28. 84 d Bであった。
[0085] SNRは、
S N R= 20 I o g^ (255ZRMS)
により計算される。 RMSは Root Mean Squareの略であり、 その RMSは以 下の式で計算される。
[0086] RMS= (2乗誤差の総和 Z総画素数) 1/2
従って、
S N R= 20 I o g10 (255/ (∑ ( X i— y J 2/M) /2) ただし、 X i :原画の画素値、 y i :復元画の画素値、 M:総画素数 高周波成分用の圧縮処理部 50に配置された 1次元 D S T逆変換部 1 40 2は、 各係数算出部 52から入力した計 3個の係数を用いて DST逆変換を 行い、 画素間の差分値を差分値算出部 54に出力する。 それにより、 第 1の 実施形態と同じく、 差分値量子化部 55は差分値の量子化を行い、 インデッ クス値 (量子化番号) を予測順位変換部 1 403に出力する。
[0087] 図 1 5は、 予測順位変換部 1 403の構成を示す図である。 その変換部 1 403は、 図 1 5に示すように、 5個のレジスタ 1 403 a〜e、 予測変換 テーブル ROM 1 403 f 、 及びラインメモリ 1 403 gを備えている。
[0088] 予測順位変換とは、 周囲の参照画素の値からみた注目画素の値の出易さの 順位をサンプル画像で予め求め、 その順位を用いて注目画素の値を予測順位 に変換するものである。 予測変換テーブル ROM 1 403 f には、 参照画素 の値 (差分値のインデックス値) の組み合わせ別に予測順位が格納されてお リ、 レジスタ 1 403 a、 1 403 b. 1 403 d及び 1 403 eにはそれ ぞれ、 注目画素、 その直前に位置する画素、 直上に位置する画素、 その直前 に位置する画素のインデックス値が格納される。 それにより、 注目画素のィ ンデックス値の予測順位を 3個の画素 (参照画素) のインデックス値を参照 して求める構成となっている。 ROM 1 403 f はそれらのインデックス値 を入力して、 その組み合わせに対応付けられた予測順位を出力するようにな つている。
[0089] ROM 1 403 f は、 予測順位に加えて、 注目画素のインデックス値を出 力するようになっている。 レジスタ 1 403 cは ROM 1 403 f から出力 されたデータの保持用であり、 ラインメモリ 1 403 gはレジスタ 1 403 cに保持された最新のインデックス値を 1ライン分、 格納させるためのもの である。 次の画素の予測順位を求める場合、 レジスタ 1 403 aのインデッ クス値はレジスタ 1 403 bに、 レジスタ 1 403 dのインデックス値はレ ジスタ 1 403 eにそれぞれ移される。 レジスタ 1 403 cのインデックス 値はラインメモリ 1 403 gに新たに格納され、 レジスタ 1 403 dにはラ インメモリ 1 403 gから読み出されたインデックス値が保持される。
[0090] ROM 1 403 f に必要な記憶容量は、 3画素参照であれば、 差分値を 3 レベル量子化ならば 256WX 2、 5レベル量子化ならば 4 KWX 3となる 。 この程度の記憶容量は LS I上で実現が容易である。
[0091] 可変長符号化部 32は、 差分値のインデックス値の代わりに、 予測順位の 可変長符号化を行う。 その可変長符号化により生成する圧縮データの構成は 基本的に第 1の実施形態 (図 9及び図 1 OA〜図 1 OC) と同じである。
[0092] 図 2 1は、 第 2の実施形態による画像復元装置の構成を示すブロック図で ある。 次に、 図 1 4に示す画像圧縮装置 30から出力される圧縮データを復 元 (復号) する画像復元装置 60について、 図 2 1を参照して詳細に説明す る。
[0093] その画像復元装置 60は、 図 2 1に示すように、 図 1 2に示す 1次元 DC T逆変換部 74の代わりに 1次元 DS T逆変換部 2 1 0 1を備えている。 ま た、 可変長符号復号部 6 1と画素差分値逆量子化部 8 1の間に予測順位逆変 換部 2 1 02が挿入されている。
[0094] 1次元 DS T逆変換部 2 1 0 1は、 各計数算出部 73により復元された計
3個の係数を用いて DS T逆変換を行い、 それによつて得られる 8画素分の 画素データを加算部 82に出力するものである。
[0095] 予測順位逆変換部 2 1 02は、 可変長符号復号部 6 1から出力された予測 順位に対応する差分値のインデックス値 (量子化番号) に変換するものであ る。 図 22に示すように、 5個のレジスタ 2202 a〜e、 予測逆変換テー ブル ROM2202 f 、 及びラインメモリ 2202 gを備えている。
[0096] その R O M 2202 f には、 参照画素の予測順位の組み合わせ別に差分値 のインデックス値が格納されており、 レジスタ 2202 a、 2202 b. 2 202 d及び 2202 eにはそれぞれ、 注目画素、 その直前に位置する画素 、 直上に位置する画素、 その直前に位置する画素の予測順位が格納される。 それにより、 注目画素のインデックス値を 3個の画素 (参照画素) の予測順 位を参照して求める構成となっている。 ROM2202 f はそれらの予測順 位を入力して、 その組み合わせに対応付けられたインデックス値、 及び注目 画素の予測順位をレジスタ 2202 cに出力するようになっている。
ぐ第 3の実施形態 >
上記第 1及び第 2の実施形態は何れも、 予め定めた大きさの画素ブロック 毎に直交変換を行い、 画像データを圧縮している。 これに対し、 第 3の実施 形態は、 その画素ブロック (元画素データ群) から互いに異なる画素を間引 いて複数の画素データ群を生成し、 その画素データ群毎に直交変換を行い、 画像データを圧縮するようにしたものである。
[0097] 直交変換のための計算量は、 ブロックサイズ (画素数) が大きくなるに伴 い、 指数関数的に増大する。 例えば DCTでは、 8個の画素データでは図 1 1に示すような計算で済むが、 1 6個の画素データでは図 24に示すような 計算を行わなければならなくなる。 第 3の実施形態は、 そのことに着目し、 画素ブロックを複数回に分けて符号化を行うことで全体の計算量を低減させ るようにしたものである。 その計算量の低減により、 回路規模はより抑える ことができ、 圧縮や復元はよリ高速に行えるようになる。
[0098] 図 2 3は、 第 3の実施形態による画像圧縮装置の構成を示すブロック図で ある。 図 2 3に示すように、 1ラインメモリ 3 1と 1次元 D C T変換部 4 1 の間にマルチプレクサ (M P X ) 2 3 0 1が揷入され、 そのマルチプレクサ 2 3 0 1から出力される画素データ群 (元画素データ群) は 1次元 D C T変 換部 4 1の他に、 差分値算出部 5 4に入力するようになっている。 係数記憶 部 4 3から読み出された係数はマルチプレクサ 2 3 0 2を介して各係数差分 値算出部 4 2、 及び各係数算出部 5 2に出力されるようになっている。 その マルチプレクサ 2 3 0 2は、 各係数算出部 5 2から出力されている係数、 及 び係数記憶部 4 3から読み出された係数のうちの一方を選択して出力するよ うになつている。 各マルチプレクサ 2 3 0 1 . 2 3 0 2は、 不図示の制御部 から出力される選択信号に従って選択を行う。
[0099] 第 3の実施形態では、 1 6画素から構成されるブロック毎に圧縮を行うよ うになつている。 D C T変換は、 そのブロックを 8画素のサブブロックに分 割したものと見なす形で行うようにしている。 マルチプレクサ 2 3 0 1は、 そのような分割を行うためのものであり、 1画素毎に間引きして得られる 2 つの画素データ群を入力し、 その一方を選択して出力するようになっている 。 2つの画素データ群 (元画素データ群) は、 1 6画素から 8画素を間引い て残ったもの、 その間引かれたもの、 の関係となっている。 つまり、 ブロッ クの先頭から奇数番目の画素のデータをまとめたもの、 偶数番目の画素のデ ータをまとめたもの、 となっている。 その間引きは、 1ラインメモリ 3 1か らレジスタに読み出された 1 6画素分の画素データを対象に行われる。
[0100] 1 6画素のブロックの圧縮は以下のようにして行われる。
先ず、 マルチプレクサ 2 3 0 1に、 2つの元画素データ群のうちの一方を 選択させて出力させる。 そのとき、 マルチプレクサ 2 3 0 2に係数記憶部 4 3を選択させ、 それから読み出された係数を出力させる。 それにより、 第 1 の実施形態と同様に、 各係数差分値算出部 4 2は、 係数記憶部 4 3に記憶さ れている係数と、 1次元 D C T変換部 4 1から入力した係数との間の差分値 を算出する。
[0101 ] 8画素分の圧縮処理が終了すると、 マルチプレクサ 2 3 0 2に、 他方の元 画素データ群を選択させて出力させる。 そのとき、 マルチプレクサ 2 3 0 2 には、 各係数算出部 5 2から出力されている係数を選択させる。 それにより 、 直前に圧縮した元画素データ群から得られた係数 (復元された係数) との 差分値を各係数差分値算出部 4 2に計算させる。
[0102] そのようにして、 残りの元画素データ群の圧縮を行う際には 1 6画素分の 相関を利用する。 このため、 非常に高い確率で低周波成分のみを符号化 (図 9 ) すれば済むようになる。 それにより、 計算量を低減させつつ、 より高い 圧縮率を実現できるようになる。 特に、 垂直方向の相関が弱まるインターレ ース画像のときに有効である。
[0103] 図 2 5は、 第 3の実施形態による画像復元装置の構成を示すブロック図で ある。 次に、 図 2 3に示す画像圧縮装置 3 0から出力される圧縮データを復 元 (復号) する画像復元装置 6 0について、 図 2 5を参照して詳細に説明す る。
[0104] その画像復元装置 6 0は、 図 2 5に示すように、 各係数算出部 7 3と係数 記憶部 7 2の間にマルチプレクサ 2 5 0 1が揷入され、 そのマルチプレクサ 2 5 0 1は、 各係数算出部 7 3から出力されている係数、 及び係数記憶部 7 2から読み出された係数のうちの一方を選択して出力するようになっている 。 加算部 8 2と 1ラインメモリ 6 2の間にはデマルチプレクサ (D M P X ) 2 5 0 2が揷入されている。 マルチプレクサ 2 5 0 1は、 不図示の制御部か ら出力される選択信号に従って選択を行う。
[0105] 1 6画素のブロックの画素データ群の復元は以下のようにして行われる。
先ず、 マルチプレクサ 2 5 0 1に、 係数記憶部 7 2を選択させ、 それから 読み出された係数を出力させる。 それにより、 第 1の実施形態と同様に、 各 係数差分値算出部 7 3は、 係数差分値逆量子化部 7 1から入力した差分値を 係数記憶部 7 2に記憶された D C T係数の値から加算することにより、 D C T係数を算出する。 そのようにして復元された係数が、 1次元 D C T逆変換 部 7 4、 係数記憶部 7 2、 及びマルチプレクサ 2 5 0 1に出力される。
[0106] 8画素分のデータの復元が終了すると、 マルチプレクサ 2 5 0 1に、 係数 算出部 7 3から出力されている係数を選択させる。 それにより、 直前に復元 した係数を用いた計算を各係数算出部 7 3に行わせる。
[0107] デマルチプレクサ 2 5 0 2は、 2つの復元された画素データ群のマージに 用いられる。 そのマージは、 1 6画素分の画素データを格納可能なレジスタ に、 画素データ群を構成する画素データを 1画素分、 間をあけて格納するこ とで行われる。 そのレジスタに 1 6画素分の画素データを格納した後、 1ラ インメモリ 6 2に出力される。
[0108] 8画素ブロックを対象に D C T変換を行う場合、 低次の 3個の係数に限定 すると、 1 9回の加算、 及び 1 0回の乗算を行う必要がある。 1 6画素プロ ックを対象に D C T変換を行う場合には、 低次の 5個の係数に限定しても、 5 7回の加算、 及び 2 4回の乗算を行う必要がある。 しかし、 1 6画素プロ ックを 2つの 8画素ブロックに分割して D C T変換を行う場合には、 3 8回 の加算、 及び 2 0回の乗算を行えば済むようになる。 このように、 計算量を 大幅に低減させることができる。 係数記憶部については、 1ライン当たりに 必要な (格納させるべき) 係数が 1 Z 2になることから、 より小さな記憶容 量のものを採用できるようになる。 なお、 直交変換については、 D C T以外 のものを採用しても良い。
ぐ第 4の実施形態 >
上記第 1〜第 3の実施形態は何れも、 常に同じ直交変換を行うようになつ ている。 これに対し第 4の実施形態は、 状況に応じて行う直交変換を変更す るようにしたものである。
[0109] 第 4の実施形態では、 自然画向き、 線画 (ナビゲーシヨン装置が表示する C G画像等) 向きの 2種類の直交変換を行えるようにして、 圧縮する対象の 画像に合った直交変換を選択することにより、 画像の種類に係わらず、 常に 高い圧縮率を維持できるようにしている。
[0110] 図 2 6は、 第 4の実施形態による画像圧縮装置の構成を示すブロック図で ある。 図 2 4に示すように、 2つの 1次元直交変換部 2 6 0 2及び 2 6 0 3 を配置し、 1ラインメモリ 3 1から元画素データ群が入力されるようにして 、 2つの 1次元直交変換部 2 6 0 2及び 2 6 0 3からそれぞれ出力される係 数のうちの一方をマルチプレクサ 2 6 0 4で選択して各係数差分値算出部 4 2に出力する構成となっている。 そのため、 圧縮処理部 5 0では、 2つの 1 次元直交逆変換部 2 6 0 7及び 2 6 0 8を配置し、 各係数算出部 5 2が出力 する係数を入力させるようにして、 2つの 1次元直交逆変換部 2 6 0 7及び 2 6 0 8からそれぞれ出力される画素データ群のうちの一方をマルチプレク サ 2 6 0 6で選択して差分値算出部 5 4に出力する構成となっている。 可変 長符号化部としては、 係数差分値量子化部 4 4が出力する係数差分値のイン デックス値を可変長符号化する可変長符号化部 2 6 0 9、 及び差分値量子化 部 5 5が出力する画素間の差分値のインデックス値を可変長符号化する可変 長符号化部 2 6 1 0の 2つを備え、 それらが出力する圧縮データのうちの一 方をマルチプレクサ 2 6 0 5により選択して出力するようになっている。
[0111 ] レジスタ 2 6 0 1は、 直交変換の選択信号 Rの保持用であり、 各マルチプ レクサ 2 6 0 4及び 2 6 0 6は、 そのレジスタ 2 6 0 1に保持された選択信 号 Rのデータに従って選択を行う。 その選択信号 Rは、 例えば圧縮すべき画 像データを出力する装置側から入力する信号、 或いはその信号から生成され るものである。
[0112] 2つの 1次元直交変換部 2 6 0 2及び 2 6 0 3は共に、 直交変換として D S T変換を行うものである。 しかし、 基底関数は異なり、 一方は図 2 7に示 す基底関数によリ D S T変換を行い、 他方は図 2 8に示す基底関数によリ D S T変換を行う。 それにより、 画像データが自然画のものであれば、 図 2 7 に示す基底関数により D S T変換を行う 1次元直交変換部、 画像データが線 画のものであれば、 図 2 8に示す基底関数により D S T変換を行う 1次元直 交変換部をマルチプレクサ 2 6 0 4により選択できるようになつている。 図 2 7に示す基底関数による D S T変換は、 図 1 7に示すように行うことがで き、 図 2 8に示す基底関数による D S T変換は、 図 2 9に示すように行うこ とができる。 図 2 9において、 「a」 は 3 Z 5 1 / 2、 「b」 は 1 Z 5 1 / 2をそ れぞれ表す。
[0113] 選択信号 Rを示すデータは、 マルチプレクサ 2 6 0 5に直接、 或いは間接 的にマルチプレクサ 2 6 0 5に出力される。 それにより、 圧縮データ内 (例 えばヘッダ内) に挿入されるか、 或いは圧縮データに付加される。 そのよう にして、 復元側で選択すべき直交変換の種類を選択できるようにしている。 マルチプレクサ 2 6 0 5に対する選択制御は、 不図示の制御部により状況に 応じて行われる。
[0114] 図 3 0は、 第 4の実施形態による画像復元装置の構成を示すブロック図で ある。 次に、 図 2 6に示す画像圧縮装置 3 0から出力される圧縮データを復 元 (復号) する画像復元装置 6 0について、 図 3 0を参照して詳細に説明す る。
[0115] その画像復元装置 6 0は、 図 3 0に示すように、 2つの 1次元直交逆変換 部 3 1 0 3及び 3 1 0 4を配置し、 各係数算出部 7 3が出力する係数をそれ ぞれ入力させるようにして、 2つの 1次元直交逆変換部 3 1 0 3及び 3 1 0 4からそれぞれ出力される画素データ群のうちの一方をマルチプレクサ 3 1 0 2で選択して加算部 8 2に出力するようになっている。
[0116] レジスタ 3 1 0 1は、 圧縮データ内に挿入、 或いは圧縮データに付加され た選択信号 Rを示すデータの保持用である。 マルチプレクサ 3 1 0 2は、 そ のレジスタ 3 1 0 1に格納されたデータに従って、 2つの 1次元直交逆変換 部 3 1 0 3及び 3 1 0 4のうちの一方を選択する。 それにより、 圧縮時に選 択された直交変換の種類に対応する直交逆変換により得られた画素データ群 を加算部 8 2に出力する。
[0117] なお、 本実施形態では、 直交変換として、 基底関数の異なる 2つの D S T 変換を行うようにしているが、 D S T以外の直交変換を複種類、 行うように しても良い。 種類数は 2つではなく、 3つ以上としても良い。 ぐ第 5の実施形態 >
上記第 4の実施形態では、 選択すべき直交変換を選択するために、 外部か ら選択信号 Rを入力するようになっている。 これに対し第 5の実施形態は、 選択すべき直交変換を自動的に選択するようにしたものである。
[0118] 外部から選択信号 Rを入力する必要性を回避することにより、 画像圧縮を 行わせるうえで必要な制約が減り、 よリ容易に画像圧縮を行わせることがで きるようになる。 また、 画像中の領域毎に選択すべき直交変換を選択するこ とが可能となるから、 より高い圧縮率も実現できるようになる。 ここでは第 4の実施形態から異なる部分にのみ着目して説明を行う。
[0119] 図 3 1は、 第 5の実施形態による画像圧縮装置の構成を示すブロック図で ある。 図 3 1に示すように、 2つの 1次元直交変換部 2 6 0 2及び 2 6 0 3 の代わりに乗数 (図 1 7、 図 2 9 ) の切替えが可能な 1次元直交変換部 3 2 0 5を配置し、 1ラインメモリ 3 1から元画素データ群を入力させるように なっている。 それにより、 1次元直交変換部 3 2 0 5が出力する係数はそれ ぞれ対応する係数差分値算出部 4 2に直接、 出力させる構成となっている。 圧縮処理部 5 0でも、 2つの 1次元直交逆変換部 2 6 0 7及び 2 6 0 8の代 わリに乗数の切替えが可能な 1次元直交逆変換部 3 2 0 7を配置し、 各係数 算出部 5 2が出力する係数を入力させるようにして、 出力する画素データ群 は差分値算出部 5 4に直接、 入力される構成となっている。 乗数の切替えを 行うために乗数切替部 3 2 0 4及び 3 2 0 6を用意し、 それぞれ 1次元直交 変換部 3 2 0 5及び 1次元直交逆変換部 3 2 0 7で用いる乗数を切替えるよ うにしている。
[0120] 2つの可変長符号化部 2 6 0 9及び 2 6 1 0にはそれぞれ、 符号量積算器
3 1 0 1及び 3 2 0 2が接続されている。 それにより、 係数差分値 (低周波 成分) の可変長符号化により得られた圧縮データのデータ量 (符号量) 、 及 び画素の差分値 (高周波成分) の可変長符号化により得られた圧縮データの データ量 (符号量) をそれぞれ符号量積算器 3 2 0 2及び 3 2 0 1で積算す るようにしている。 画像識別器 3 2 0 3は、 各符号量積算器 3 2 0 1及び 3 2 0 2から符号量の積算値を入力し、 画像の種類を識別し、 その結果を示す 値 (データ) をレジスタ 2 6 0 1に格納させる。
[0121 ] 各乗数切替部 3 2 0 4及び 3 2 0 6は、 そのレジスタ 2 6 0 1に格納され た値に従って、 乗数の切替えを行う。 それにより、 画像の種類の識別結果に 応じて、 適切な乗数を用いた直交変換 (ここでは D S T変換) 、 及び直交逆 変換 (ここでは D S T逆変換) を 1次元直交変換部 3 2 0 5及び 1次元直交 逆変換部 3 2 0 7にそれぞれ行わせる。
[0122] 上記画像識別器 3 2 0 3は、 以下のようにして画像の種類を識別する。 図
3 2及び図 3 3を参照して詳細に説明する。
図 3 2は、 画像の種類と直交変換の種類の間に存在する符号量の関係を示 す図である。
[0123] 図 3 2では、 縦軸にエントロピーをとつておリ、 「自然画変換」 は自然画 向きの乗数を用いた直交 (D S T ) 変換、 「線画変換」 は線画向きの乗数を 用いた直交 (D S T ) 変換をそれぞれ表している。 それにより、 図 3 2は、 自然画を自然画変換した場合、 自然画を線画変換した場合、 線画を自然画変 換した場合、 及び線画を線画変換した場合に分けて、 エントロピーの変化に より符号量の関係を示している。
[0124] 図 3 2から明らかなように、 画像はその画像向けの直交変換を行うか否か により、 高周波成分の符号量が比較的に大きく変化する。 このことに着目し 、 画像識別器 3 2 0 3は画像の識別を行っている。
[0125] 図 3 3は、 画像識別処理のフローチャートである。 その識別処理は、 画像 識別器 3 2 0 3が画像を識別するために実行する処理の流れを示したもので ある。 次に図 3 3を参照して、 画像識別器 3 2 0 3が実行する識別処理につ いて詳細に説明する。
[0126] 先ず、 ステップ S 1では、 1ライン分の処理を開始するための設定を行う 。 その設定により、 例えば圧縮データの復元の開始時には予め定められた値 をレジスタ 2 6 0 1に格納し、 既に圧縮データを復元したラインが存在して いれば最終の設定を維持させ、 レジスタ 2 6 0 1に格納する値の書き換えは 行わない。
[0127] ステップ S 2では、 低周波成分、 高周波成分の符号量積算器 3 2 0 2及び
3 2 0 1をそれぞれクリァする。 そのクリァは、 1ライン単位でそのライン にとつて適切な直交変換の種類を認識するためである。 そのクリアを行った 後はステップ S 3に移行する。 図中、 符号量積算器 3 2 0 2及び 3 2 0 1は それぞれ 「符号量積算器 A、 B」 と表記している。
[0128] ステップ S 3及び S 4では、 符号量積算器 3 2 0 2により、 可変長符号化 部 2 6 0 9が出力する圧縮データの符号量を累算加算させる。 その累算加算 が終了すると、 ステップ S 4の判定が Y e sとなる。 それにより、 次にステ ップ S 5及び S 6を実行して、 可変長符号化部 2 6 1 0が出力する圧縮デー タの符号量を符号量積算器 3 2 0 1に累算加算させる。 その累算加算の終了 により、 ステップ S 6の判定が Y e sとなってステップ S 7に移行する。
[0129] ブロック (ライン上に連続する 8画素からなるブロック) 内のパターンの 複雑さによって符号量は変動する。 このことからステップ S 7では、 符号量 積算器 3 2 0 1の値 (累算加算によって得られた積算値) を符号量積算器 3 2 0 2の値で除算し、 その除算結果 (=符号量積算器 3 2 0 1の値 Z符号量 積算器 3 2 0 2の値) を変数 C Aに代入する。 そのようにして正規化した値 を変数 C Aに代入すると、 ステップ S 8に移行して、 現在の設定が自然画向 きか否か判定する。 レジスタ 2 6 0 1に線画変換を選択するための値を格納 していた場合、 判定は N oとなってステップ S 1 5に移行する。 そうでない 場合には、 判定は Y e sとなってステップ S 1 6に移行する。
[0130] ステップ S 1 5では、 変数 C Aの値が閾値 T H 1未満か否か判定する。 そ の閾値 T H 1は、 圧縮した元画素データ群が自然画変換に合ったものか否か 判別するために用意したものである。 それにより、 圧縮した元画素データ群 が自然画変換に合ったものであった場合、 変数 C Aの値は閾値 T H 1未満と なることから、 Y e sと判定され、 ステップ S 1 0で現在の設定を保持させ る決定を行った後、 ステップ S 1 2に移行する。 そうでない場合には、 変数 C Aの値は閾値 T H 1以上となることから、 N oと判定され、 ステップ S 1 1で設定を線画向きに変更し、 レジスタ 2 6 0 1の値を書き換えた後、 その ステップ S 1 2に移行する。
[0131 ] ステップ S 1 2では、 1ライン分の圧縮が終了したか否か判定する。 その 圧縮が終了した場合、 判定は Y e sとなり、 ステップ S 1 3に移行する。 そ うでない場合には、 判定は N oとなって上記ステップ S 3に戻る。 このとき に、 1ラインメモリ 3 1から次の元画素データ群が読み出される。
[0132] ステップ S 1 3では、 圧縮の対象を次のラインに移行させる。 その移行時 に、 1ラインメモリ 3 1のデータの書き換えが行われる。 その次のステップ S 1 4では、 全ラインの圧縮が終了したか否か判定する。 画像データの圧縮 が終了した場合、 判定は Y e sとなり、 ここで画像識別処理を終了する。 そ うでない場合には、 つまり圧縮すべき画素データが残っている場合には、 判 定は N oとなり、 上記ステップ S 1に戻る。 このときには、 レジスタ 2 6 0 1の値の書き換えは行われない。
[0133] 上記ステップ S 8の判定が N oとなって移行するステップ S 1 5では、 変 数 C Aの値が閾値 T H 2未満か否か判定する。 その閾値 T H 2は、 閾値 T H 1と同様に、 圧縮した元画素データ群が線画変換に合ったものか否か判別す るために用意したものである。 それにより、 圧縮した元画素データ群が線画 変換に合つたものであった場合、 変数 C Aの値は閾値 T H 2未満となること から、 Y e sと判定され、 ステップ S 1 6で現在の設定を保持させる決定を 行った後、 上記ステップ S 1 2に移行する。 そうでない場合には、 変数 C A の値は閾値 T H 2以上となることから、 N oと判定され、 ステップ S 1 7で 設定を自然画向きに変更し、 レジスタ 2 6 0 1の値を書き換えた後、 そのス テツプ S 1 2に移行する。
[0134] このようにして本実施形態では、 1ライン毎に符号の積算値をクリアする ことにより、 ブロック内のパターンに合った種類の直交変換に柔軟に変更可 能とさせている。 それにより、 より高い圧縮率が得られるようにしている。
[0135] レジスタ 2 6 0 1に格納された値は、 その書き換えを行う毎に、 マルチプ レクサ 2 6 0 5により選択され、 圧縮データとして出力される。 あるいは、 最初のブロックの値のみ圧縮データとして出力し, 後は 1ブロック遅れて結 果が次のブロックに反映される。 それにより、 常に圧縮時に用いられた直交 変換の種類に対応する直交逆変換を復元側で行えるようにしている。
[0136] 図 3 4は、 第 5の実施形態による画像復元装置の構成を示すブロック図で ある。 次に、 図 3 1に示す画像圧縮装置 3 0から出力される圧縮データを復 元 (復号) する画像復元装置 6 0について、 図 3 4を参照して詳細に説明す る。
[0137] その画像復元装置 6 0は、 図 3 4に示すように、 2つの 1次元直交逆変換 部 3 1 0 3及び 3 1 0 4の代わりに、 乗数を切替え可能な 1次元直交逆変換 部 3 5 0 1を配置し、 各係数算出部 7 3が出力する係数を入力させるように して、 出力する画素データ群は直接、 加算部 8 2に入力する構成となってい る。 その乗数の切替えを行う乗数切替部 3 5 0 2は、 レジスタ 3 1 0 1に格 納された値に従って、 乗数の切替えを行う。 レジスタ 2 6 0 1に格納された 値はその書き換えを行う度に圧縮データとして出力される。 このことから、 可変長符号化復号部 6 6は、 その値を復元した場合、 その値をレジスタ 3 1 0 1に出力するようになっている。
[0138] なお、 本実施形態では、 1次元直交変換部、 及び 1次元直交逆変換部はそ れぞれ 1つのみとしているが、 上記第 4の実施形態と同様に、 異なる変換、 或いは逆変換を行うものを 2つ用意しても良い。

Claims

請求の範囲
[1 ] 画素毎に画素データを有する画像データを圧縮する画像圧縮装置において 前記画像データ中の連続する複数の画素分の画素データからなる元画素デ ータ群の直交変換を行い、 最低周波数側から所定数に制限して、 周波数成分 を示す係数を出力する変換部と、
前記変換部が出力する係数毎に、 該係数と前に復元された係数との係数差 分値を算出する係数差分値算出部と、
前記係数差分値算出部が前記係数毎に算出する係数差分値を量子化し、 該 量子化によって得られる量子化値を出力する係数差分値量子化部と、 前記係数差分値量子化部から前記係数毎に出力された量子化値の逆量子化 を行い、 前記係数差分値を出力する逆量子化部と、
前記逆量子化部が前記係数毎に出力する係数差分値と、 前記前に復元され た係数とを用いた計算によリ、 前記所定数の係数を復元して出力する係数復 元部と、
前記係数復元部が出力する前記所定数の復元された係数を用いた直交逆変 換を行い、 前記元画素データ群を復元する逆変換部と、
前記元画素データ群と、 前記逆変換部が復元した元画素データ群との画素 差分値を前記画素毎に算出する画素差分値算出部と、
前記係数差分値量子化部が出力する前記量子化値、 及び前記画素差分値算 出部が算出する画素差分値を符号化して圧縮データを出力する符号化部と、 を具備することを特徴とする画像圧縮装置。
[2] 前記画素差分値算出部が前記画素毎に算出する画素差分値を量子化し、 該 量子化によって得られる量子化値を出力する画素差分値量子化部、 を更に具 備し、
前記符号化部は、 前記画素差分値量子化部が出力する量子化値を符号化す る、
ことを特徴とする請求項 1記載の画像圧縮装置。 [3] 前記符号化部は、 前記画素差分値量子化部が前記画素毎に出力する量子化 値を複数のグループに分け、 該グループ単位で符号化する、
ことを特徴とする請求項 2記載の画像圧縮装置。
[4] 請求項 1記載の画像圧縮装置によリ符号化された画像データを復元する装 置であって、
前記圧縮データから、 前記係数差分値の量子化値、 及び前記画素差分値を 復元する第 1の復元部と、
前記第 1の復元部が復元した量子化値を逆量子化し、 前記係数差分値を出 力する逆量子化部と、
前記係数差分値と前に復元された係数を用いた計算を行い、 前記係数を復 元する係数計算部と、
前記係数計算部が復元した前記係数を用いて直交逆変換を行い、 画素デー タ群を出力する逆変換部と、
前記第 1の復元部が復元した前記画素差分値と、 前記逆変換部が出力する 画素データ群とを用いて前記元画素データ群を復元する第 2の復元部と、 を具備することを特徴とする画像復元装置。
[5] 前記画素差分値として該画素差分値の量子化値が符号化されている場合に 、 前記第 1の復元部が前記圧縮データから復元する該量子化値を逆量子化し 、 該画素差分値を出力する他の逆量子化部、 を更に具備し、
前記第 2の復元部は、 前記画素差分値の量子化値が符号化されている場合 に、 前記他の逆量子化部が出力する該画素差分値を用いて前記元画素データ 群を復元する、
ことを特徴とする請求項 4記載の画像復元装置。
[6] 請求項 1記載の画像圧縮装置として用いることが可能なコンピュータに、 前記画像データ中の連続する複数の画素分の画素データからなる元画素デ ータ群の直交変換を行い、 最低周波数側から所定数に制限して、 周波数成分 を示す係数を出力する変換機能と、
前記変換機能により出力される係数毎に、 該係数と前に復元された係数と の係数差分値を算出する係数差分値算出機能と、
前記係数差分値算出機能により前記係数毎に算出する係数差分値を量子化 し、 該量子化によって得られる量子化値を出力する係数差分値量子化機能と 前記係数差分値量子化機能により前記係数毎に出力された量子化値の逆量 子化を行い、 前記係数差分値を出力する逆量子化機能と、
前記逆量子化機能によリ前記係数毎に出力する係数差分値と、 前記前に復 元された係数とを用いた計算を行い、 前記所定数の係数を復元して出力する 係数復元機能と、
前記係数復元機能により出力される前記所定数の復元された係数を用いた 直交逆変換を行い、 前記元画素データ群を復元する逆変換機能と、
前記元画素データ群と、 前記逆変換機能により復元した元画素データ群と の画素差分値を前記画素毎に算出する画素差分値算出機能と、
前記係数差分値量子化機能により出力される前記量子化値、 及び前記画素 差分値算出機能によリ算出する画素差分値を符号化して圧縮データを出力す る符号化機能と、
を実現させるためのプログラム。
請求項 4記載の画像復元装置として用いることが可能なコンピュータに、 前記圧縮データから、 前記係数差分値の量子化値、 及び前記画素差分値を 復元する第 1の復元機能と、
前記第 1の復元機能により復元した量子化値を逆量子化し、 前記係数差分 値を出力する逆量子化機能と、
前記係数差分値と係数記憶部に記憶されている過去に復元された係数を用 いた計算を行い、 前記係数を復元する係数計算機能と、
前記係数計算機能により復元した前記係数を用いて直交逆変換を行い、 画 素データ群を出力する逆変換機能と、
前記第 1の復元機能により復元した前記画素差分値と、 前記逆変換機能に よリ出力する画素データ群とを用いて前記元画素データ群を復元する第 2の 復元機能と、
を実現させるためのプログラム。
[8] 画素毎に画素データを有する画像データを圧縮する画像圧縮装置において 画像を分割するブロック内に存在する複数の画素分の第 1の画素データ群 から、 互いに異なる複数の画素データを間引くことにより、 複数の第 2の画 素データ群を生成するデータ生成部と、
前記データ生成部が生成した前記第 2の画素データ群毎に直交変換を行い 、 最低周波数側から所定数に制限して、 周波数成分を示す係数を出力する変 換部と、
前記変換部が出力する係数毎に、 該係数と前に復元された係数との係数差 分値を算出する係数差分値算出部と、
前記係数差分値算出部が前記係数毎に算出する係数差分値を量子化し、 該 量子化によって得られる量子化値を出力する係数差分値量子化部と、 前記係数差分値量子化部から前記係数毎に出力された量子化値の逆量子化 を行い、 前記係数差分値を出力する逆量子化部と、
前記逆量子化部が前記係数毎に出力する係数差分値と、 前記前に復元され た係数とを用いた計算によリ、 前記所定数の係数を復元して出力する係数復 元部と、
前記係数復元部が出力する前記所定数の復元された係数を用いた直交逆変 換を行い、 前記第 2の画素データ群を復元する逆変換部と、
前記第 2の画素データ群と、 前記逆変換部が復元した元画素データ群との 画素差分値を前記画素毎に算出する画素差分値算出部と、
前記係数差分値量子化部が出力する前記量子化値、 及び前記画素差分値算 出部が算出する画素差分値を符号化して圧縮データを出力する符号化部と、 を具備することを特徴とする画像圧縮装置。
[9] 画素毎に画素データを有する画像データを圧縮する画像圧縮装置において 画像を分割するブロック内に存在する複数の画素分の第 1の画素データ群 から、 互いに異なる複数の画素データを間引くことにより、 複数の第 2の画 素データ群を生成するデータ生成部と、
前記データ生成部が生成した前記第 2の画素データ群毎に直交変換を用い た符号化を行い、 前記第 1の画素データ分の圧縮データを出力する符号化部 を具備することを特徴とする画像圧縮装置。
[10] 前記データ生成部は、 前記第 1の画素データ群から前記第 2の画素データ 群を 2つ生成する場合、 連続する 2個の画素を異なる第 2の画素データ群に 割リ当てる形で前記 2つの第 2の画素データ群を生成する、
ことを特徴とする請求項 8、 または 9記載の画像圧縮装置。
[11 ] 請求項 8記載の画像圧縮装置によリ符号化された画像データを復元する装 置であって、
前記圧縮データから、 前記係数差分値の量子化値、 及び前記画素差分値を 復元する第 1の復元部と、
前記第 1の復元部が復元した量子化値を逆量子化し、 前記係数差分値を出 力する逆量子化部と、
前記係数差分値と前に復元された係数を用いた計算を行い、 前記係数を復 元する係数計算部と、
前記係数計算部が復元した前記係数を用いて直交逆変換を行い、 画素デー タ群を出力する逆変換部と、
前記第 1の復元部が復元した前記画素差分値と、 前記逆変換部が出力する 画素データ群とを用いて前記第 2の画素データ群を復元する第 2の復元部と 前記第 2の復元部が復元した複数の前記第 2の画素データ群から前記第 1 の画素データ群を復元する第 3の復元部と、
を具備することを特徴とする画像復元装置。
[12] 請求項 8記載の画像圧縮装置として用いることが可能なコンピュータに、 画像を分割するブロック内に存在する複数の画素分の第 1の画素データ群 から、 互いに異なる複数の画素データを間引くことにより、 複数の第 2の画 素データ群を生成するデータ生成機能と、
前記データ生成機能によリ生成した前記第 2の画素データ群毎に直交変換 を行い、 最低周波数側から所定数に制限して、 周波数成分を示す係数を出力 する変換機能と、
前記変換機能により出力する係数毎に、 該係数と前に復元された係数との 係数差分値を算出する係数差分値算出機能と、
前記係数差分値算出機能により前記係数毎に算出する係数差分値を量子化 し、 該量子化によって得られる量子化値を出力する係数差分値量子化機能と 前記係数差分値量子化機能により前記係数毎に出力された量子化値の逆量 子化を行い、 前記係数差分値を出力する逆量子化機能と、
前記逆量子化機能によリ前記係数毎に出力する係数差分値と、 前記前に復 元された係数とを用いた計算によリ、 前記所定数の係数を復元して出力する 係数復元機能と、
前記係数復元機能によリ出力する前記所定数の復元された係数を用いた直 交逆変換を行い、 前記元画素データ群を復元する逆変換機能と、
前記元画素データ群と、 前記逆変換機能により復元した元画素データ群と の画素差分値を前記画素毎に算出する画素差分値算出機能と、
前記係数差分値量子化機能によリ出力する前記量子化値、 及び前記画素差 分値算出機能が算出する画素差分値を符号化して圧縮データを出力する符号 化機能と、
を実現させるためのプログラム。
請求項 1 1記載の画像復元装置として用いることが可能なコンピュータに 前記圧縮データから、 前記係数差分値の量子化値、 及び前記画素差分値を 復元する第 1の復元機能と、 前記第 1の復元機能により復元した量子化値を逆量子化し、 前記係数差分 値を出力する逆量子化機能と、
前記係数差分値と前に復元された係数を用いた計算を行い、 前記係数を復 元する係数計算機能と、
前記係数計算機能により復元した前記係数を用いて直交逆変換を行い、 画 素データ群を出力する逆変換機能と、
前記第 1の復元機能により復元した前記画素差分値と、 前記逆変換機能に よリ出力される画素データ群とを用いて前記第 2の画素データ群を復元する 第 2の復元機能と、
前記第 2の復元機能によリ復元した複数の前記第 2の画素データ群から前 記第 1の画素データ群を復元する第 3の復元機能と、
を実現させるためのプログラム。
[14] 画素毎に画素データを有する画像データを圧縮する画像圧縮装置において 前記画像データ中の連続する複数の画素分の画素データからなる元画素デ ータ群に対する複種類の直交変換を行うことが可能な変換部と、
前記複種類の直交変換のなかの一つを選択する変換選択部と、 前記変換選択部によリ選択された種類の直交変換を前記変換部が行うこと で出力される周波数成分を示す係数毎に、 該係数と前に復元された係数との 係数差分値を算出する係数差分値算出部と、
前記係数差分値算出部が前記係数毎に算出した係数差分値を量子化し、 該 量子化によって得られる量子化値を出力する係数差分値量子化部と、 前記係数差分値量子化部が出力する前記量子化値を符号化して圧縮データ を出力する符号化部と、
を具備することを特徴とする画像圧縮装置。
[15] 前記変換部は、 前記直交変換を行い、 最低周波数側から所定数に制限して 、 前記係数を出力する、
ことを特徴とする請求項 1 4記載の画像圧縮装置。 [16] 前記係数差分値量子化部から前記係数毎に出力された量子化値の逆量子化 を行い、 前記係数差分値を出力する逆量子化部と、
前記逆量子化部が前記係数毎に出力する係数差分値と、 前記前に復元され た係数とを用いた計算によリ、 前記変換部が出力した係数を復元して出力す る係数復元部と、
前記係数復元部が出力する前記係数を用いて、 前記変換選択部による選択 に応じた直交逆変換を行い、 前記元画素データ群を復元する逆変換部と、 前記元画素データ群と、 前記逆変換部が復元した元画素データ群との画素 差分値を前記画素毎に算出する画素差分値算出部と、
前記画素差分値算出部が算出する画素差分値を量子化し、 該量子化によつ て得られる量子化値を出力する画素差分値量子化部と、 を更に具備し 前記符号化部は、 前記画素差分値量子化部が出力する量子化値を符号化し て前記圧縮データを出力する、
ことを特徴とする請求項 1 4記載の画像圧縮装置。
[17] 前記変換選択部は、 前記符号化部が出力する圧縮データのデータ量を監視 し、 該監視結果に基づいて、 前記複種類の直交変換のなかの一つを選択し、 前記符号化部は、 前記変換選択部による選択結果を示す選択情報を前記圧 縮データとして出力する、
ことを特徴とする請求項 1 4、 または 1 6記載の画像圧縮装置。
[18] 請求項 1 6記載の画像圧縮装置により符号化された画像データを復元する 装置であって、
前記圧縮データから、 前記係数差分値の量子化値、 及び前記画素差分値を 復元する第 1の復元部と、
前記第 1の復元部が復元した量子化値を逆量子化し、 前記係数差分値を出 力する逆量子化部と、
前記係数差分値と前に復元された係数を用いた計算を行い、 前記係数を復 元する係数計算部と、
前記係数計算部が復元した前記係数を用いて、 該係数を得た直交変換の種 類に対応する直交逆変換を行い、 画素データ群を出力する逆変換部と、 前記第 1の復元部が復元した前記画素差分値と、 前記逆変換部が出力する 画素データ群とを用いて前記元画素データ群を復元する第 2の復元部と、 を具備することを特徴とする画像復元装置。
[19] 請求項 1 4記載の画像圧縮装置として用いることが可能なコンピュータに 前記画像データ中の連続する複数の画素分の画素データからなる元画素デ ータ群に対する複種類の直交変換を行うことが可能な変換機能と、
前記複種類の直交変換のなかの一つを選択する変換選択機能と、 前記変換選択機能によリ選択された種類の直交変換を前記変換機能によリ 行うことで出力される周波数成分を示す係数毎に、 該係数と前に復元された 係数との係数差分値を算出する係数差分値算出機能と、
前記係数差分値算出機能により前記係数毎に算出された係数差分値を量子 化し、 該量子化によって得られる量子化値を出力する係数差分値量子化機能 前記係数差分値量子化機能により出力される前記量子化値を符号化して圧 縮データを出力する符号化機能と、
を実現させるためのプログラム。
[20] 請求項 1 8記載の画像復元装置として用いることが可能なコンピュータに 前記圧縮データから、 前記係数差分値の量子化値、 及び前記画素差分値を 復元する第 1の復元機能と、
前記第 1の復元機能により復元した量子化値を逆量子化し、 前記係数差分 値を出力する逆量子化機能と、
前記係数差分値と前に復元された係数を用いた計算を行い、 前記係数を復 元する係数計算機能と、
前記係数計算機能によリ復元した前記係数を用いて、 該係数を得た直交変 換の種類に対応する直交逆変換を行い、 画素データ群を出力する逆変換機能 前記第 1の復元機能により復元した前記画素差分値と、 前記逆変換機能に より出力される画素データ群とを用いて前記元画素データ群を復元する第 2 の復元機能と、
を実現させるためのプログラム。
PCT/JP2007/000406 2006-06-19 2007-04-13 画像圧縮装置、画像復元装置、及びプログラム WO2007148425A1 (ja)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006169015 2006-06-19
JP2006-169015 2006-06-19

Publications (1)

Publication Number Publication Date
WO2007148425A1 true WO2007148425A1 (ja) 2007-12-27

Family

ID=38833172

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2007/000406 WO2007148425A1 (ja) 2006-06-19 2007-04-13 画像圧縮装置、画像復元装置、及びプログラム

Country Status (1)

Country Link
WO (1) WO2007148425A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024052959A1 (ja) * 2022-09-05 2024-03-14 株式会社Fuji 画像符号化装置および画像処理システム並びに部品実装機

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63111791A (ja) * 1986-10-30 1988-05-17 Nec Corp 動画像信号の符号化方法とその符号化装置
JPS6432576A (en) * 1988-07-07 1989-02-02 Nec Corp Decoding method for moving image signal and its decoder
JPH0568171A (ja) * 1991-09-05 1993-03-19 Matsushita Electric Ind Co Ltd 帯域分割型画像符号化装置
JPH0686258A (ja) * 1992-08-31 1994-03-25 Victor Co Of Japan Ltd 直交変換符号化装置及び復号化装置
JP2002209112A (ja) * 2001-01-09 2002-07-26 Kddi Corp 適応的静止画像符号化装置
JP2003092684A (ja) * 2001-09-17 2003-03-28 Canon Inc 画像符号化装置、及び画像符号化方法、並びにプログラム、記憶媒体

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS63111791A (ja) * 1986-10-30 1988-05-17 Nec Corp 動画像信号の符号化方法とその符号化装置
JPS6432576A (en) * 1988-07-07 1989-02-02 Nec Corp Decoding method for moving image signal and its decoder
JPH0568171A (ja) * 1991-09-05 1993-03-19 Matsushita Electric Ind Co Ltd 帯域分割型画像符号化装置
JPH0686258A (ja) * 1992-08-31 1994-03-25 Victor Co Of Japan Ltd 直交変換符号化装置及び復号化装置
JP2002209112A (ja) * 2001-01-09 2002-07-26 Kddi Corp 適応的静止画像符号化装置
JP2003092684A (ja) * 2001-09-17 2003-03-28 Canon Inc 画像符号化装置、及び画像符号化方法、並びにプログラム、記憶媒体

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024052959A1 (ja) * 2022-09-05 2024-03-14 株式会社Fuji 画像符号化装置および画像処理システム並びに部品実装機

Similar Documents

Publication Publication Date Title
US8503806B2 (en) Compression encoder, compression encoding method and program
US6711299B2 (en) Wavelet transformation of dithered quantized/reduced color pixels for color bit depth image compression and decompression
JP3792789B2 (ja) 符号化装置
US6256415B1 (en) Two row buffer image compression (TROBIC)
JP4365957B2 (ja) 画像処理方法及びその装置及び記憶媒体
US20060159357A1 (en) Compression encoder, compression encoding method and program
JPH0485621A (ja) 丸め装置
KR101037421B1 (ko) 화상 데이터 압축 장치, 압축 방법 및 프로그램을 기록한 기록 매체 및 화상 데이터 복원 장치, 복원 방법 및 프로그램을 기록한 기록 매체
US5737448A (en) Method and apparatus for low bit rate image compression
JP3087835B2 (ja) 画像符号化方法および装置ならびに画像復号方法および装置
JP3674158B2 (ja) 画像符号化方法及び画像復号装置
JP4756665B2 (ja) 画像圧縮装置、復元装置、圧縮方法、復元方法及びプログラム
WO2012160626A1 (ja) 画像圧縮装置、画像復元装置、及びプログラム
JP6594966B2 (ja) 向上した予測フィルタを用いてビデオ信号をエンコーディング、デコーディングする方法及び装置
WO2007148425A1 (ja) 画像圧縮装置、画像復元装置、及びプログラム
JP4003628B2 (ja) 画像符号化装置及び方法、並びにプログラム
US8306341B2 (en) Image data compression apparatus and decoding apparatus
JP4806464B2 (ja) 画像圧縮装置、画像圧縮方法、画像復元装置、及びプログラム
JP3032213B2 (ja) 画像符号化装置及び画像復号化装置
JPH1188183A (ja) ウェーブレット変換装置およびその方法並びにウェーブレット逆変換装置およびその方法並びに画像符号化装置およびその方法並びに画像復号化装置およびその方法
JP5412901B2 (ja) 復号化装置、画像処理装置、復号化方法及びプログラム
JP2003264704A (ja) 画像復号化装置、画像復号化プログラム、画像符号化装置、及び画像符号化プログラム
JPH11127439A (ja) 画像符号化装置およびその方法並びに画像復号化装置およびその方法
JPH10336657A (ja) 画像処理装置
Kordik Hardware Implementation of Post-Compression Rate-Distortion Optimization for EBCOT in JPEG2000

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 07737063

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 07737063

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: JP