WO1997035434A1 - Encoder, decoder, their methods, and image processor - Google Patents
Encoder, decoder, their methods, and image processor Download PDFInfo
- Publication number
- WO1997035434A1 WO1997035434A1 PCT/JP1997/000768 JP9700768W WO9735434A1 WO 1997035434 A1 WO1997035434 A1 WO 1997035434A1 JP 9700768 W JP9700768 W JP 9700768W WO 9735434 A1 WO9735434 A1 WO 9735434A1
- Authority
- WO
- WIPO (PCT)
- Prior art keywords
- value
- pixel
- decoding
- encoding
- prediction error
- Prior art date
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N1/00—Scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission; Details thereof
- H04N1/41—Bandwidth or redundancy reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/10—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/30—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
Definitions
- the present invention relates to an encoding device and an encoding device for encoding or decoding image information created or used by a facsimile device, a scanner device, a computer or a digital camera, and a method thereof.
- the present invention relates to an encoding device and a decoding device that include two types of encoding systems and two types of decoding systems, and that efficiently encode and decode image information by switching between the two types of systems.
- the present invention relates to an encoding method and a decoding method for efficiently encoding and decoding image information.
- the present invention also relates to an image processing device including the encoding device or the decoding device according to the present invention.
- the present invention also relates to an image processing device that executes the encoding method or the decoding method according to the present invention.
- FIG. 66 is a block diagram showing a conventional encoding device.
- reference numeral 901 designates a pixel to be coded (hereinafter, referred to as a coded pixel or simply a pixel), inputs and accumulates the value, and outputs the value of the coded pixel.
- This is a pixel memory that stores accumulated and coded pixels and outputs the value of a pixel near the coded pixel as the value of a reference pixel.
- Reference numeral 907 denotes a predictor that calculates a predicted value of an encoded pixel by referring to a value of a reference pixel.
- Reference numeral 931 denotes a prediction error calculator for calculating a prediction error by subtracting the prediction value of the predictor 907 from the value of the coded pixel.
- Reference numeral 908 denotes an encoder that encodes a prediction error value between the value of the coded pixel and the prediction value of the predictor 907, and outputs a codeword.
- Reference numeral 910 denotes a code buffer which inputs a codeword output from the encoder 908 and outputs the codeword as a series of codes in the input order.
- the predictor 907 calculates a predicted value from one or more reference pixel values.
- the calculation method may be a predetermined prediction function or a table reference.
- the encoder 908 calculates a prediction error obtained by calculating a prediction value calculated from the value of the coded pixel (in the case of an 8-bit pixel, 125 to 155; here, 0 exists. ) Is encoded using one type of codeword table determined in advance.
- one codeword is assigned to a binary symbol sequence having one or a plurality of binary symbols.
- MPS More Probable Symbol, dominant symbol
- LPS Less Probable Symbol, inferior symbol
- the code word is determined and the code word is output.
- the number of consecutive MPSs is determined by the number of MPs inside (or outside) the encoder.
- the counter is counted by a counter (not shown), the MPS value is stored in an MPS memory (not shown), and the state number (described later) of the binary symbol sequence is stored in a state number memory (not shown).
- code orders it is possible to take an arbitrary natural number, in this specification, also the to be limited to 2 n (2 1 1 power). If the number of consecutive occurrences of the MPS becomes equal to the code order 2 ", a 1-bit codeword" 0 "is assigned to the MPS. If the LPS appears before the order equals, the number of consecutive occurrences of the MPS from the output of the codeword immediately before it to the appearance of the LPS is represented by an n-bit binary number.
- a (n + 1) -bit codeword is added to the PS by adding a 1-bit "1" to distinguish it from the MPS-only codeword "0" at the beginning of the binary.
- the unit of a binary symbol sequence to which a code word is assigned is hereinafter referred to as a message.
- the MPS counter is reset.
- the code output is a series of sequences, while the code is decoded. In this case, the code input to the decoder is decomposed into codewords, a binary symbol sequence is restored for each decoder, and pixels are reproduced.
- the code order is determined according to the appearance probability of one of the binary symbols (0 or 1) estimated from data on the binary symbol sequence in the past. By switching to an appropriate value, even better coding efficiency can be realized.
- a first example of the state transition method for determining the code order is shown below.
- each encoder or decoder When the encoder or decoder encodes or decodes a binary symbol sequence, the binary symbol sequence is in one of the 16 states shown in Fig. 68, and each binary symbol sequence is The code order is determined according to the state of the column. The initial value of the state number in the encoder or decoder is 0. Also, At the start of the encoding or decoding process, each encoder or decoder
- the MPS counter shall be reset.
- the encoder or decoder performs a state transition when the codeword is determined during the encoding or decoding process. If the number of consecutive occurrences of the MPS in the binary symbol sequence is not equal to the code order, the state number is increased by one. If LPS appears before the number of consecutive occurrences of MPS becomes equal to the code order, the state number is decreased by one. However, if the number of consecutive occurrences of the MPS becomes equal to the code order in state number 15 or the LPS appears in the state number 0, the encoder or decoder does not change the state. The state number is left as it is.
- the number N (0), N (1) of binary symbols 0 and 1 appearing in a binary symbol sequence is in the same range on the transmitting and receiving sides (for example, one line)
- the method of determining the code order is disclosed in, for example, Japanese Patent Publication No. 59-27501 (corresponding to US Pat. No. 4,191,974).
- the calculation method is 2 ⁇ + 1 ⁇ (1)> ⁇ (0) ⁇ 2 ⁇ ⁇
- the code order 2 ⁇ which is the state transition destination of the binary symbol sequence, is set to be equal to or less than the default maximum value and equal to or greater than the default minimum value.
- the following properties are known for the encoding method in Fig. 67. That is, assume that a binary information source in which the appearance probabilities of the two symbols “0” and “1” are ⁇ and 1 ⁇ ( ⁇ 1 / 2), respectively, is encoded by the method shown in FIG. 67. ⁇ , which minimizes the maximum code length in each order when the appearance of the binary symbol to be encoded is arbitrary, satisfies the following equation.
- the conventional encoding apparatus and decoding apparatus perform, for example, switching between two encoding modes, that is, mode A and mode B, or a decoding mode based on a predetermined condition determination for the value of the reference pixel.
- the mode switching is performed in accordance with the method shown as “Run-length coding for each start pattern” in the IEICE General Conference, 2010, 1982. As shown in FIG.
- X is a coded pixel to be coded or decoded or a decoded pixel (hereinafter simply referred to as a pixel)
- FIG. 70 is a diagram showing the configuration of the image compression circuit and the image decompression circuit.
- the image compression circuit includes a system that performs lossless compression and a system that performs irreversible compression.
- Irreversible image compression is a process that reduces the quality (reproducibility) of the reproduced image and increases the image compression ratio instead.
- reversible image compression is a process in which the image compression ratio is compared with the above-mentioned irreversible image compression, and instead, the quality (reproducibility) of the reproduced image is not degraded.
- Reference numeral 951 denotes a DCT operation circuit that performs a two-dimensional discrete cosine transform (DCT) operation on an input image to divide the image into two-dimensional spatial frequency components.
- Reference numeral 952 denotes a quantization circuit for quantizing DCT coefficients
- reference numeral 953 denotes an end-port encoder for Huffman coding the quantized DCT coefficients. Irreversible image compression is performed by the DCT operation circuit 951, the quantization circuit 952, and the central aperture encoder 953.
- Reference numeral 954 denotes a predictor, which predicts data of a certain pixel by using data one pixel before.
- Reference numeral 955 denotes an entropy encoder, which performs Huffman coding on a difference between a pixel and a pixel predicted by a predictor 954.
- SW 1 is a switch for selecting whether to perform irreversible compression operation, which performs a lossless compression operation.A lossy compression operation is selected on the a side, and a lossy compression operation is selected on the b side.
- the image decompression circuit is composed of a system that performs a reversible decompression operation and a system that performs an irreversible decompression operation.
- E down Tropi chromatography decoder 9 56 and the decoder 9 5 7 reversibly E compressed data down tropicity over encoder 9 55, decrypted with the predictor 9 54 and reverse operation.
- the entropy decoder 958 and the inverse quantization circuit 959, and the inverse DCT operation circuit 960 are the DCT operation circuit 951, Quantizing circuit 9 5 2, decodes the compressed data in E down tropicity over the encoder 9 5 3 and reverse operation.
- SW 2 is a switch for selecting whether to perform a reversible or irreversible decompression operation.A reversible decompression operation is selected on the a side, and an irreversible decompression operation on the b side. Is selected.
- the encoding device shown as Conventional Example 1 encodes a prediction error using one type of codeword table determined in advance.
- the statistical properties of image information vary greatly within the screen.In other words, when a certain part of the screen is easy to predict, but in some part a large prediction error frequently occurs, a situation may occur.
- encoding efficiency is not improved because encoding is performed using one type of codeword table despite the fact that the statistical properties of image information fluctuate within a screen. There was a problem.
- the coding method shown as Conventional Example 2 is a method in which the code order is dynamically changed according to the appearance probability of MPS, and coding is performed by switching a plurality of codeword tables. Therefore, when the statistical properties of the image information within the screen fluctuate greatly, the encoding method improves the encoding efficiency as compared with the encoding apparatus described in the first conventional example.
- the image compression circuit (encoding device) and image decompression circuit (decoding device) of Conventional Example 4 have a configuration as shown in FIG.
- the irreversible image compression and image expansion are realized by the conversion circuit and the entropy encoder.
- reversible image compression and image decompression are realized by a predictor and entropy encoder.
- the two types, the reversible image compression circuit and the irreversible image compression circuit are used according to the situation. In imaging devices, it is most required that the quality (reproducibility) of reproduced images be kept high without increasing the image compression ratio.
- the present invention has been made to solve the above-described problems, and has an object to provide an encoding device and a decoding device that efficiently encode and decode image information.
- the present invention provides an encoding method and an encoding method for efficiently encoding and decoding image information by actively switching between different types of encoding methods and different types of decoding methods to perform encoding and decoding.
- the purpose is to provide a decryption method.
- the present invention can make the apparatus compact and simple even when encoding and decoding are efficiently performed by actively switching between different types of encoding methods and different types of decoding methods.
- Encoding device and decoding device The purpose is to provide.
- Another object of the present invention is to provide an image processing device including the encoding device and the decoding device.
- Another object of the present invention is to provide an image processing device that executes the encoding method and the decoding method.
- An object of the present invention is to provide an image processing apparatus that can obtain a higher compression ratio than conventional reversible image compression even when performing reversible image compression. Disclosure of the invention
- An encoding device inputs and accumulates a pixel having any value within a predetermined range as an encoded pixel, outputs a value of the encoded pixel to be encoded, and outputs a value in the vicinity of the encoded pixel.
- Mode determination for selecting one of a specific coding mode and other coding modes for a coded pixel based on the value of a reference pixel from a plurality of predefined coding modes Vessels
- a first encoding unit that predicts the value of the coded pixel, determines whether the prediction is correct or not, encodes the value of the coded pixel based on the determination result, and outputs a codeword;
- a second encoding unit that predicts and encodes the value of an encoding pixel and outputs a codeword without determining whether the prediction is correct or not,
- An encoding control unit for selectively operating the first and second encoding units based on one of the specific encoding mode selected by the mode determiner and the other encoding mode
- the first encoding unit predicts an encoded pixel based on a value taken by a reference pixel.
- An l-th predictor for calculating a value is an l-th predictor for calculating a value
- a first prediction error calculator that calculates an error between the value of the encoded pixel and the prediction value calculated by the first predictor as a prediction error
- a determining unit that determines whether the prediction error calculated by the first prediction error calculator is a specific value, and outputs a determination result
- a first encoder that inputs the determination result output from the determiner, encodes the encoded pixel to be encoded in the selected specific encoding mode, and outputs a codeword
- a second encoder that encodes the prediction error and outputs the corresponding codeword
- a second predictor configured to calculate a predicted value of the coded pixel based on a value taken by the reference pixel
- a second prediction error calculator that calculates an error between the value of the encoded pixel and the prediction value calculated by the second predictor as a prediction error
- the prediction is performed regardless of whether the prediction error calculated by the second prediction error calculator is the specific value or not.
- a third encoder that encodes the error and outputs the corresponding codeword
- the first encoder is a first probability estimator that inputs the determination result output from the determiner as a binary symbol sequence and estimates the appearance probability of one of the binary symbols among the binary symbols. And a first codeword allocator that encodes a sequence of binary symbols,
- the second encoder is a first error / symbol converter that inputs a prediction error and converts the prediction error into a binary symbol sequence, or one of a binary symbol and a binary symbol sequence
- a second probability estimator for estimating the probability of appearance of the binary symbols of the following, and a second codeword allocator for encoding the binary symbol sequence
- the third encoder inputs a prediction error and converts the prediction error into a binary symbol sequence. And a third probability estimator for estimating the probability of appearance of the binary symbol and a third codeword allocator for encoding the binary symbol sequence.
- the encoding control unit determines a codeword by at least one of the first encoder, the second encoder, and the third encoder, and determines a codeword by the remaining encoders.
- a codeword transmission order controller that changes the output order of codewords when is not determined.
- At least one of the first error / nosymbol converter and the second error / symbol converter includes the first error / symbol converter and the second error / symbol converter.
- the comparison value is generated in order from the value that is likely to appear as the value of the prediction error input to the error symbol converter, and one of the first error Z symbol converter and the second error Z symbol converter is generated. And sequentially comparing the prediction error with the input prediction error, and generating and outputting a binary symbol sequence based on the number of comparisons until the prediction error matches one of the generated comparison values.
- the mode determiner further selects the coding mode of the coded pixel based on the coding mode of the coded pixel preceding the coded pixel.
- At least the first codeword allocation is performed.
- One of the transmitter, the second codeword allocator, and the third codeword allocator is estimated by the corresponding first, second, and third probability estimators, respectively. It is characterized in that the interpretation of which of the binary symbols is the dominant symbol is changed based on the change in the probability estimation of one of the binary symbols.
- the present invention is characterized in that the first predictor of the first encoder and the second predictor of the second encoder are integrated into a common predictor.
- An encoding apparatus wherein at least any two of the first encoder, the second encoder, and the third encoder are integrated to form a common encoder.
- At least one of the first codeword allocator, the second codeword allocator, and the third codeword allocator determines whether or not the binary symbol is a dominant symbol. Based on the information and the estimated appearance probability of the dominant symbol, expand the binary symbol assumed from the estimated appearance probability of the dominant symbol from the Huffman code set systematically created for the expanded information source of the binary symbol It is characterized by performing binary information source coding that is realized by selecting the code that is optimal for the situation of the information source.
- a decoding device stores a decoded pixel having any value within a predetermined range, and outputs a value of a decoded pixel near a decoded pixel to be decoded as a value of a reference pixel.
- a mode determiner that selects one of a specific decoding mode and another decoding mode for a decoded pixel based on a value taken by a reference pixel from a plurality of predefined decoding modes.
- a first decoding unit that inputs a codeword, predicts a value of a decoded pixel, determines whether the prediction is correct, and decodes the codeword into a value of the decoded pixel based on the determination result;
- a second decoding unit that inputs the codeword, predicts the value of the decoded pixel, and decodes the codeword into the value of the decoded pixel without determining whether the prediction is correct or not, and the mode determiner selects the A decoding control unit for selectively operating the first and second decoding units based on one of a specific decoding mode and another decoding mode;
- the first decoding unit calculates a predicted value of the decoded pixel based on a value taken by the reference pixel;
- a first decoder for decoding a corresponding codeword into a determination result indicating whether or not a prediction error is a predetermined value, for a decoded pixel to be decoded in the selected specific decoding mode
- a second decoding unit For a decoded pixel that is decoded in the selected specific decoding mode and has a prediction error that is not the predetermined value, a second decoding unit that decodes a corresponding codeword into the prediction error.
- a second predictor configured to calculate a predicted value of the decoded pixel based on a value taken by the reference pixel
- a third decoder for decoding a corresponding codeword into a prediction error for a decoded pixel decoded in a mode other than the selected specific decoding mode, regardless of whether the prediction error is the predetermined value or not.
- a second decoded pixel calculator that calculates It is characterized by having.
- the first decoder inputs the codeword and decodes it into a binary symbol sequence, and estimates the appearance probability of either one of the binary symbols. And a first probability estimator that outputs one of the binary symbol sequences as a determination result.
- the second decoder receives a codeword and decodes it into a sequence of binary symbols, and receives a binary symbol and receives one of the binary symbols.
- a second probability estimator for estimating an occurrence probability, and a first symbol / error converter for inputting a binary symbol sequence and converting the binary symbol sequence into a prediction error,
- the third decoder receives a codeword and decodes it into a binary symbol sequence, and a third symbol reconstructor that receives a binary symbol and outputs one of the binary symbols. It is characterized by comprising a third probability estimator for estimating an appearance probability, and a second symbol Z error converter for inputting a binary symbol sequence and converting the binary symbol sequence into a prediction error.
- the decoding control unit is configured to perform at least one of the first, second, and third decoding before all the binary symbol sequences decoded by any one of the third decoder are used.
- the decoder When the decoder outputs a binary symbol sequence, the decoder includes a binary symbol usage order controller that changes the use order of the decoded binary symbols.
- At least one of the first symbol / error converter and the second symbol / error converter is based on the input binary symbol value and the number of input binary symbols. It is characterized by converting a value symbol sequence into a prediction error.
- the mode determiner further selects a decoding mode of the decoded pixel based on a decoding mode of a decoded pixel preceding the decoded pixel.
- the decoding device according to the present invention is configured such that at least one of the first symbol reconstructor, the second symbol reconstructor, and the third symbol reconstructor is a corresponding first probability estimator, It is characterized in that the interpretation of which of the binary symbols is the dominant symbol is changed based on the probability estimation change of the binary symbol estimated by the probability estimator and the third probability estimator, respectively.
- the first predictor of the first decoding unit and the second predictor of the second decoding unit are integrated into a common predictor.
- a decoding device is characterized in that at least any two of the first decoder, the second decoder, and the third decoder are integrated into a common decoder. At least one of the first symbol reconstructor, the second symbol reconstructor, and the third symbol reconstructor has information on which of the binary symbols is the dominant symbol and the estimated appearance probability of the dominant symbol. From the Huffman code set systematically created for the binary symbol extended information source based on the above, the optimal code for the situation of the binary symbol extended information source assumed from the estimated appearance probability of the dominant symbol is determined. It is characterized by performing binary information source decoding realized by selection.
- a pixel having a value within a predetermined range is input and accumulated as an encoded pixel, a value of the encoded pixel to be encoded is output, and a pixel in the vicinity of the encoded pixel is output.
- the first main encoding step includes: a first prediction step of calculating a predicted value of an encoded pixel based on a value taken by a reference pixel;
- a second encoding step for encoding the error and outputting the corresponding codeword
- the second main encoding step includes: a second prediction step of calculating a predicted value of the encoded pixel based on a value taken by the reference pixel;
- the prediction error calculated by the second prediction error calculation step for the coded pixel to be coded in a mode other than the selected specific coding mode is the predetermined error.
- the first probability of estimating the appearance probability of one of the binary symbols among the binary symbols by inputting the determination result output from the determination step as a binary symbol sequence is used.
- the second encoding step includes a first error symbol conversion step of inputting a prediction error and converting the prediction error into a binary symbol sequence, and a binary symbol sequence of inputting a binary symbol sequence.
- the third encoding step is one of a second error Z symbol conversion step of inputting a prediction error and converting the prediction error into a binary symbol sequence, and a binary symbol sequence of inputting a binary symbol sequence.
- At least one of the first, second, and third codeword allocation steps is estimated by the corresponding first, second, and third probability estimation steps, respectively.
- the method is characterized in that it includes a step of changing the interpretation of which of the binary symbols is the dominant symbol based on the estimated probability change of the binary symbol.
- At least one of the first, second, and third codeword allocating steps includes information indicating which of the binary symbols is the dominant symbol and the estimated appearance of the dominant symbol. From the Huffman code set systematically created for the extended information source of the binary symbol based on the probability, the extended information of the binary symbol assumed from the estimated appearance probability of the dominant symbol It is characterized by performing binary information source coding realized by selecting the code that is optimal for the source situation.
- the decoding method accumulates decoded pixels having any value within a predetermined range, and outputs the value of a decoded pixel near a decoded pixel to be decoded as a value of a reference pixel. Output process,
- the first main decoding step includes: a first prediction step of calculating a predicted value of a decoded pixel based on a value taken by a reference pixel;
- a second decoding unit For a decoded pixel that is decoded in the selected specific decoding mode and has a prediction error that is not the predetermined value, a second decoding unit that decodes a corresponding codeword into the prediction error.
- the predicted value of the decoded pixel calculated in the first prediction step A first decoded pixel calculating step of calculating the value of the decoded pixel from the result and the prediction error obtained in the second decoding step;
- the second main decoding step includes a second prediction step of calculating a predicted value of the decoded pixel based on a value taken by the reference pixel;
- a third decoding for decoding a corresponding codeword into the prediction error regardless of whether the prediction error is the predetermined value or not.
- a second calculating unit that calculates a decoded pixel value to be decoded in a mode other than the specific decoding mode selected from the predicted value of the decoded pixel calculated in the second prediction step and the prediction error decoded in the third decoding step. And a decoded pixel calculation step.
- the first decoding step includes: a first symbol restoring step of inputting a codeword and decoding it into a binary symbol sequence; and a first symbol estimation step of estimating an appearance probability of one of the binary symbols among the binary symbols.
- the probability estimation process of (1) and outputs one of the binary symbol sequences as the judgment result,
- the second decoding step includes a second symbol restoring step of inputting a codeword and decoding it into a binary symbol sequence, and a second probability estimating step of inputting a binary symbol and estimating a probability of appearance of the binary symbol. And a first symbol error conversion step of inputting a binary symbol string and converting the binary symbol string into a prediction error.
- the third decoding step includes inputting a codeword and decoding the codeword into a binary symbol string.
- a second symbol error conversion step for conversion is
- At least one of the first, second, and third symbol restoration steps is estimated by the corresponding first, second, and third probability estimation steps, respectively.
- At least one of the first, second, and third symbol restoration steps includes information indicating which of the binary symbols is the dominant symbol, the estimated appearance probability of the dominant symbol, and From the Huffman code set systematically created for the binary symbol extended information source based on, the code that is optimal for the situation of the binary symbol extended information source assumed from the estimated appearance probability of the dominant symbol is It is characterized by performing binary information source decoding realized by selection.
- the encoding device is provided on a semiconductor chip, and the encoding device is provided on a circuit board.
- an image processing apparatus which inputs an image signal composed of a plurality of pixels, encodes the pixel of the image signal with an encoding device, and outputs the encoded image signal to a next processing device,
- the encoding device
- a pixel having any value within a predetermined range is input and accumulated as a coded pixel, the value of the coded pixel to be coded is output, and the value of a coded pixel in the vicinity of the coded pixel is referred to A pixel memory output as a pixel value;
- Deciding device A first encoding unit that predicts the value of an encoded pixel, determines whether the prediction is correct, and encodes the value of the encoded pixel based on the determination result and outputs a codeword; and predicts the value of the encoded pixel.
- a second encoding unit that encodes the value of the encoded pixel and outputs a codeword without determining whether the prediction is correct or not,
- An encoding control unit for selectively operating the first and second encoding units based on one of the specific encoding mode selected by the mode determiner and the other encoding mode;
- the image processing apparatus is an electronic computer.
- the image processing apparatus is a scanner.
- the image processing apparatus is a facsimile machine.
- the image processing device is a display device.
- the image processing device is a storage device.
- the decoding device is provided on a semiconductor chip.
- the decoding device is provided on a circuit board.
- an image processing apparatus receives an encoded image signal, decodes a pixel of the image signal with a decoding apparatus, and outputs the decoded signal to a next processing apparatus.
- the decoding device includes
- a pixel memory that stores decoded pixels having any value within a predetermined range and outputs the value of a decoded pixel near the decoded pixel to be decoded as a reference pixel value;
- a mode determiner that selects one of a specific decoding mode and another decoding mode for a decoded pixel based on a value taken by a reference pixel from a plurality of predefined decoding modes.
- a first decoding unit that inputs a codeword, predicts a value of a decoded pixel, determines whether the prediction is correct, and decodes the codeword into a value of the decoded pixel based on the determination result;
- a second decoding unit that inputs the codeword, predicts the value of the decoded pixel, and decodes the codeword into the value of the decoded pixel without determining whether the prediction is correct or not;
- a decoding control unit for selectively operating the first and second decoding units based on one of the selected specific decoding mode and another decoding mode;
- the image processing apparatus is an electronic computer.
- the image processing apparatus is a scanner.
- the image processing device is a facsimile device.
- the image processing apparatus is a printer.
- the image processing device is a display device.
- the image processing device is a storage device.
- An encoding device inputs and accumulates a pixel having any value within a predetermined range as an encoded pixel, outputs a value of the encoded pixel to be encoded, and outputs a value in the vicinity of the encoded pixel.
- a pixel memory for outputting a coded pixel value as a reference pixel value;
- An encoding unit that predicts the value of the coded pixel, determines whether the prediction is correct, and codes the value of the coded pixel based on the determination result to output a codeword;
- An encoding control unit that operates the encoding unit based on whether or not the prediction determined by the encoding unit is correct
- a coding unit configured to calculate a predicted value of the coded pixel based on a value of the reference pixel;
- a prediction error calculator that calculates an error between the value of the encoded pixel and the prediction value calculated by the predictor as a prediction error;
- a determining unit that determines whether the prediction error calculated by the prediction error calculator is a specific value, and outputs a determination result
- a first encoder that inputs and encodes the determination result output from the determiner and outputs a codeword
- a second encoder that encodes the prediction error for a coding pixel whose prediction error calculated by the prediction error calculator is not the specific value and outputs a corresponding codeword
- a decoding device accumulates decoded pixels having any value within a predetermined range, and outputs a value of a decoded pixel near a decoded pixel to be decoded as a value of a reference pixel.
- a decoding unit that inputs a codeword, predicts the value of a decoded pixel, determines whether the prediction is correct, and decodes the codeword into a decoded pixel value based on the determination result;
- a decoding control unit that operates the decoding unit based on whether or not the prediction determined by the decoding unit is correct
- a decoding unit configured to calculate a predicted value of the decoded pixel based on a value of the reference pixel
- a second decoder For a decoded pixel whose prediction error is not the predetermined value, a second decoder that decodes a corresponding codeword into the prediction error,
- An image processing apparatus includes: an imaging unit configured to capture an image including a plurality of pixels;
- a pixel having any value within a predetermined range is input and stored as a coded pixel.
- a pixel memory that outputs the value of the coded pixel to be coded and outputs the value of the coded pixel in the vicinity of the coded pixel as the value of the reference pixel; and A mode determiner for selecting one of a specific coding mode and another coding mode for a coded pixel based on a value taken by a reference pixel from a coding mode;
- a first encoding unit that predicts the value of an encoded pixel, determines whether the prediction is correct, and encodes the value of the encoded pixel based on the determination result and outputs a codeword; and predicts the value of the encoded pixel.
- a second encoding unit that encodes the value of the encoded pixel and outputs a codeword without determining whether the prediction is correct or not,
- An encoding control unit for selectively operating the first and second encoding units based on one of the specific encoding mode selected by the mode determiner and the other encoding mode;
- An image processing apparatus includes: an imaging unit configured to capture an image including a plurality of pixels; An image compression circuit for compressing a captured image;
- the image decompression circuit includes:
- a pixel memory that stores decoded pixels having any value within a predetermined range and outputs the value of a decoded pixel near the decoded pixel to be decoded as a reference pixel value;
- a first decoding unit that inputs a codeword, predicts a value of a decoded pixel, determines whether the prediction is correct, and decodes the codeword into a value of the decoded pixel based on the determination result;
- a second decoding unit that inputs the codeword, predicts the value of the decoded pixel, and decodes the codeword into the value of the decoded pixel without determining whether the prediction is correct or not, and the mode determiner selects the A decoding control unit for selectively operating the first and second decoding units based on one of a specific decoding mode and another decoding mode;
- the image compression circuit includes a plurality of the encoding devices, and inputs the luminance signal Y and the color difference signals U and V to the plurality of encoding devices in parallel to perform encoding.
- the image compression circuit is characterized in that it has a plurality of the encoding devices, and inputs the color signals R, G, and B to the plurality of encoding devices in parallel and encodes them.
- the image compression circuit includes one encoding device, and serially inputs a luminance signal Y and color difference signals U and V to the encoding device in units of blocks to perform encoding.
- the image compression circuit includes one encoding device, and serially inputs the color signals R, G, and B to the encoding device in units of blocks, and encodes the signals.
- the image decompression circuit includes a plurality of the decoding devices, and inputs the encoded luminance signal Y and chrominance signals U and V to the plurality of decoding devices in parallel to perform encoding.
- the image decompression circuit includes a plurality of the decoding devices, and inputs the coded color signals R, G, and B to the plurality of decoding devices in parallel and decodes them.
- the image decompression circuit has one decoding device, and is characterized by serially inputting the encoded luminance signal ⁇ and chrominance signals u, V to the decoding device in units of blocks to decode.
- the image decompression circuit includes one decoding device, and serially inputs the encoded color signals R, G, and B to the decoding device in block units to decode.
- FIG. 1 is a perspective view showing an image processing apparatus of the present invention.
- FIG. 2 is a perspective view showing an application example of the image processing apparatus of the present invention.
- FIG. 3 is a diagram showing the state and code order of the binary symbol sequence to be encoded according to the present invention.
- FIG. 4 is a block diagram showing a configuration example of the encoding device according to the first embodiment of the present invention.
- FIG. 5 is a block diagram showing a configuration example of the first encoder of the present invention.
- FIG. 6 is a block diagram showing a configuration example of the second encoder according to the present invention.
- FIG. 7 is a block diagram showing a configuration example of the third encoder according to the present invention.
- FIG. 8 is a diagram showing an example of conversion from a prediction error to a binary symbol performed by the second encoder of the present invention.
- FIG. 9 is a diagram showing an example of conversion from a prediction error to a binary symbol performed by the third encoder of the present invention.
- FIG. 10 is a flowchart showing the flow of the encoding process of the present invention.
- FIG. 11 is a diagram showing specific examples of various conditions when the coded pixel of the present invention is coded.
- FIG. 12 is a diagram showing the encoding operation of the present invention.
- FIG. 13 is a block diagram showing a configuration example of the decoding device according to the first embodiment of the present invention.
- FIG. 14 is a block diagram showing a configuration example of the first decoder of the present invention.
- FIG. 15 is a block diagram showing a configuration example of the second decoder of the present invention.
- FIG. 17 is a block diagram illustrating a configuration example of a third decoder according to the present invention.
- FIG. 17 is a block diagram illustrating a configuration example of an encoding device according to Embodiment 2 of the present invention.
- FIG. 18 is a flowchart showing the flow of the encoding process of the present invention.
- FIG. 19 is a diagram showing the encoding operation of the present invention.
- FIG. 20 shows the coding control after the codeword is determined by the third encoder of the present invention. It is a flowchart which shows the flow of the control processing which a control part performs.
- FIG. 21 is a flowchart showing the flow of control processing performed by the coding control unit after the codeword is determined by the first encoder of the present invention.
- FIG. 22 is a flowchart showing the flow of control processing performed by the encoding control unit after the codeword is determined by the occurrence of LPS in the binary symbol sequence in the first encoder of the present invention. .
- FIG. 23 is a diagram showing the encoding operation of the present invention.
- FIG. 24 is a flowchart showing the flow of the pixel prefetch operation of the present invention.
- FIG. 25 is a block diagram showing a configuration example of a decoding device according to the second embodiment of the present invention.
- FIG. 26 is a block diagram illustrating a configuration example of an encoding device according to Embodiment 3 of the present invention.
- FIG. 27 is a block diagram showing a configuration example of the encoder 5a according to the third embodiment of the present invention.
- FIG. 28 is a block diagram showing a configuration example of the encoder 6a according to the third embodiment of the present invention.
- FIG. 29 is a block diagram showing a configuration example of the encoder 8a according to the third embodiment of the present invention.
- FIG. 30 is a diagram showing a flowchart and a truth table showing a flow of an operation by the probability estimator according to the third embodiment of the present invention.
- FIG. 31 is a diagram showing an encoding operation when the interpretation of MPS and LPS of the present invention is inverted.
- FIG. 32 is a block diagram showing a configuration example of a decoding device according to the third embodiment of the present invention.
- FIG. 33 shows a configuration example of a decoder 45a according to Embodiment 3 of the present invention.
- FIG. 34 is a block diagram illustrating a configuration example of the decoder 46 a according to the third embodiment of the present invention.
- FIG. 35 is a block diagram showing a configuration example of a decoder 48a according to the third embodiment of the present invention.
- FIG. 36 is a block diagram illustrating a configuration example of an encoding device according to Embodiment 4 of the present invention.
- FIG. 37 is a block diagram showing a configuration example of a decoding device according to Embodiment 4 of the present invention.
- FIG. 38 is a diagram illustrating a case where a plurality of MPS counters exist in a part of the encoder according to the present invention.
- FIG. 39 is a block diagram illustrating a configuration example of an encoding device according to Embodiment 5 of the present invention.
- FIG. 40 is a block diagram showing a configuration example of a decoding device corresponding to the coding device shown in FIG. 39 of the present invention.
- FIG. 41 is a block diagram showing another configuration example of the encoding device according to the fifth embodiment of the present invention.
- FIG. 42 is a block diagram showing a configuration example of the encoder 5b shown in FIG.
- FIG. 43 is a block diagram showing a configuration example of a decoding device corresponding to the encoding device shown in FIG. 41 according to the present invention.
- FIG. 44 is a block diagram illustrating a configuration example of a decoder 45b used in the decoding device illustrated in FIG.
- FIG. 45 is a block diagram showing another configuration example of the encoding device according to the fifth embodiment of the present invention.
- Fig. 46 shows the configuration of the encoder 6b used in the encoder shown in Fig. 45. It is a block diagram showing an example.
- FIG. 47 is a block diagram illustrating a configuration example of a decoding device corresponding to the encoding device illustrated in FIG. 45.
- FIG. 48 is a block diagram illustrating a configuration example of the decoder 46 b used in the decoding device illustrated in FIG. 47.
- FIG. 49 is a block diagram showing another configuration example of the encoding device according to the fifth embodiment of the present invention.
- FIG. 50 is a block diagram showing a configuration example of an encoder 5c used in the encoding device shown in FIG.
- FIG. 51 is a block diagram showing a configuration example of an encoding device according to Embodiment 6 of the present invention.
- FIG. 52 is a block diagram showing a configuration example of a decoding device according to the sixth embodiment of the present invention.
- FIG. 53 is a diagram showing a configuration example of an image processing device according to the seventh embodiment of the present invention.
- FIG. 54 is a diagram showing a sequence for recording a still image by the image processing device according to the seventh embodiment of the present invention.
- FIG. 55 is a diagram showing the configuration of the image compression circuit 318 of the present invention.
- FIG. 56 is a diagram showing a configuration of the image decompression circuit 320 of the present invention.
- FIG. 57 is a diagram showing another configuration of the image compression circuit 318 of the present invention.
- FIG. 58 is a diagram showing another configuration of the image decompression circuit 320 of the present invention.
- FIG. 11 is a diagram showing another configuration of the image processing apparatus of the present invention.
- FIG. 60 is a diagram showing another configuration of the image processing apparatus of the present invention.
- FIG. 61 is a diagram showing the image processing apparatus of the present invention and a computer 700. is there.
- 6 2, 6 3 is a diagram showing another configuration of the image compression circuit 3 1 8 of the present invention is a diagram showing another configuration of the image compression circuit 3 1 8 of the present invention 0
- FIG. 64 is a diagram showing another configuration of the image compression circuit 3 18 of the present invention.
- FIG. 65 is a diagram showing another configuration of the image compression circuit 3 18 of the present invention.
- FIG. 11 is a block diagram showing a configuration example of a conventional encoding device.
- FIG. 67 is a diagram illustrating a conventional encoding and decoding method.
- FIG. 68 is a diagram illustrating a conventional state transition method for determining a code order.
- FIG. 69 is a diagram illustrating encoded pixels or decoded pixels and reference pixels.
- FIG. 70 is a diagram showing the configuration of a conventional image compression circuit and image expansion circuit.
- FIG. 1 is a perspective view showing a configuration example of an image processing device provided with an encoding device according to the present invention.
- the image processing device provided with the decoding device according to the present invention also has the same configuration as the image processing device shown in FIG.
- the image processing apparatus 60 includes a display unit 61, a keyboard 62, a mouse 63, a mouse pad 64, a system unit 65, and a compact disk unit 100. I have.
- the image processing apparatus is, for example, as shown in FIG.
- the encoded image information is input from the disk device 100 and decoded, and the decoded image information is transferred to the system unit 65 and displayed on the display unit 61.
- the image processing apparatus of the present invention encodes image information displayed on the display unit 61 and outputs the encoded information to the compact disk device 100. It also encodes image information and transmits the image information via a line (not shown).
- the configuration of the image processing apparatus according to the present invention is not limited to the personal computer or workstation configuration shown in FIG. 1, and may be of any configuration using other components. good.
- a video player may be used as an input device, or image data from a network may be input instead of image information.
- the input data may be in analog format or digital format.
- the image processing apparatus of the present invention may exist as an independent apparatus as shown in FIG. 1, but as shown in FIG. 2, a printer 66 ⁇ scanner 68 or a facsimile apparatus Peripheral devices such as a display device (for example, a display unit 61) and a storage device (for example, a compact disk device 100) may be used. That is, the image processing device of the present invention refers to an electronic device including any of the encoding device or the decoding device described below, or an electronic device that executes any of the encoding method or the decoding method described below. Shall mean.
- the encoding device or the decoding device of the present invention may exist in an independent housing, or may be used as a part of a system board such as a television camera, a measuring machine or a computer, a circuit board, or as a semiconductor chip. It does not matter if it exists.
- the devices shown in FIG. 2 are connected by a local area network, and It may be of a type that transmits encoded information.
- the information may be in a format that transmits and receives coded information using a wide area network such as ISDN (Integrated Service Digital Digital Network).
- ISDN Integrated Service Digital Digital Network
- the encoder in the encoding device according to the present embodiment or the decoder in the decoding device uses the encoding or decoding method described with reference to FIG. 67. That is, in this embodiment, based on the information as to which of the binary symbols is the dominant symbol and the estimated appearance probability of the dominant symbol, the expanded information source of the binary symbol (binary symbol sequence) is shown in FIG. Binary realized by selecting the most suitable code for the situation of the extended information source of the binary symbol assumed from the estimated appearance probability of the dominant symbol from the systematically created Huffman code set Information source coding or decoding shall be performed. Further, as shown in FIG. 3, it is assumed that each code order is set for the state of 32. Based on the state transition rule shown in Fig. 3, the state and the code order are set independently for each of a plurality of encoders or decoders described below, and the binary symbol is set. It shall be encoded or decoded.
- FIG. 4 shows a configuration example of the encoding apparatus 400 according to Embodiment 1 of the present invention.
- reference numeral 1 denotes an input of a value of an encoded pixel to be encoded and stored, and an output of the value of the encoded pixel.
- This is a pixel memory that outputs the value of a pixel in the vicinity of an encoded pixel as a value of a reference pixel.
- Reference numeral 2 denotes a mode determiner that determines a mode A or a mode B based on the values of the one or more reference pixels and outputs a mode identification signal CM. The mode determination method for Mode A and Mode B will be described later.
- Reference numeral 3 denotes a first predictor that calculates a predicted value of an encoded pixel using a value of a reference pixel in mode A.
- Reference numeral 30 denotes a first prediction error calculator that calculates a prediction error by subtracting the prediction value of the predictor 3 from the value of the coded pixel.
- a zero determiner that determines whether the value of the prediction error is 0 or other than 0 is shown as an example. However, it is determined whether the value of the prediction error is 0 or other than 0. Instead, for example, it may be a determiner that determines whether the value of the prediction error is 1 or other than 1, or whether it is other than 13 or 3 or the like.
- Reference numeral 5 denotes a first encoder for encoding the binary symbols output from the zero determiner 4 in mode A.
- Reference numeral 7 denotes a second predictor that calculates the predicted value of the coded pixel using the value of the reference pixel in mode B.
- Reference numeral 31 denotes a second prediction error calculator that calculates a prediction error by subtracting the prediction value of the predictor 7 from the value of the coded pixel.
- Reference numeral 8 denotes a third encoder that encodes a prediction error value between the value of the encoded pixel and the prediction value of the predictor 7 in mode B.
- Reference numeral 9 denotes a code switch for appropriately selecting code words output from the first encoder 5, the second encoder 6, and the third encoder 8, and outputting an appropriate code word.
- Reference numeral 10 denotes a code buffer which outputs code words selected and output by the code switch 9 as a series of codes in the input order.
- 1 1 is a pixel memory 1, a first encoder 5, a second encoder 6, a third encoder 8, a code switch 9, a code, based on the mode identification signal CM and the control signals C1 to C6.
- An encoding control unit that controls the buffer 10.
- 101 is a first encoder 5 that encodes a binary symbol indicating whether or not the prediction error between the value of the coded pixel and the estimated prediction value is 0 in mode A; , A second encoder 6 that encodes a prediction error when it is not 0.
- the 102 is the second encoding in mode B, including the third encoder 8 that encodes the prediction error regardless of whether the error between the coded pixel value and the estimated prediction value is 0 or not. Department.
- FIGS. 5, 6, and 7 are diagrams showing examples of the internal configuration of each of the first encoder 5, the second encoder 6, and the third encoder 8.
- FIG. 5 is diagrams showing examples of the internal configuration of each of the first encoder 5, the second encoder 6, and the third encoder 8.
- the first encoder 5, the second encoder 6, and the third encoder 8 receive a binary symbol sequence and receive the superiority over the binary symbol.
- Probability estimators 25, 26, and 28 for estimating the appearance probability of the symbol (MPS) are provided, respectively. Further, the first encoder 5, the second encoder 6, and the third encoder 8 receive the binary symbol sequence and the estimated appearance probability estimated by the probability estimator, and And a first codeword allocator 15, a second codeword allocator 16, and a third codeword allocator 18, which output codewords by encoding.
- First probability estimation The unit 25, the second probability estimator 26, and the third probability estimator 28 determine the code order shown in FIG. 3 and use the code order as a codeword assigner 15, 15, 16 or 18 Output to That is, the probability estimator improves the coding efficiency by switching the code order to an appropriate value according to the appearance probability of the MPS estimated from the data on the past binary symbol sequence.
- the first example shows each of the states of 32 when the number of consecutive occurrences of the MPS becomes equal to the code order from any of the states of 32 shown in FIG.
- This is a state transition method that raises the state number by one and lowers the state number by one when the LPS appears before the number of consecutive occurrences of the MPS becomes equal to the code order.
- the second example is to count the number N (0), N (1) of binary symbols 0 and 1 appearing in a binary symbol sequence, and calculate the code order from the counting result by a calculation formula. Is determined.
- the probability estimator may estimate the probability using a method other than the first example or the second example described above.
- the second encoder 6 and the third encoder 8 are a first error symbol converter 36 that converts a prediction error into a binary symbol, and a second error symbol converter. It has 3 8.
- the error symbol converter 36 performs the conversion shown in FIG.
- the error / symbol converter 38 performs the conversion shown in FIG. Conversion performed by the error Roh symbol converter 3 6, 3 8, by keeping stored in advance a table as shown in FIGS. 8 and 9, the conversion to binary symbol from the prediction error by searching the table It is possible to do so.
- the correspondence shown in FIGS. 8 and 9 may be realized using an algorithm described below.
- the error symbol converter 36 generates “ ⁇ 1” as the first comparison value. Since the value of the prediction error input to the error symbol converter 36 does not match the value of the comparison value, "0" is output as a binary symbol. Next, the error Z symbol converter 36 generates “+1” as a second comparison value. Since the prediction error value "1 2" and the comparison value "+1” do not match, the binary symbol "0” is output again. The error symbol converter 36 then generates a comparison value of “1 2”. This time, since the value of the prediction error matches the comparison value, a binary symbol "1” is generated and the conversion is completed. Therefore, when the prediction error “1 2” is input, a binary symbol sequence “001” is output.
- FIG. 10 is a diagram showing a flow of a mode determination operation of the mode determination device 2 and an encoding operation performed based on the determination mode determination result.
- Mode A encoding The encoding operation in mode A will be described.
- the zero determiner 4 subtracts a prediction value output from the predictor 3 (for example, the value of the pixel immediately before the reference pixel) from the value of the coded pixel to obtain a prediction error of 0 ( If the prediction matches, the binary symbol "0" is output, and if it is other than 0 (prediction mismatch), the binary symbol "1" is output.
- a prediction value output from the predictor 3 for example, the value of the pixel immediately before the reference pixel
- the 5 performs encoding with the output value “0” of the zero determiner 4 as MPS and “1” as LPS.
- the coding process when the output of the zero determiner 4 is "0" (the prediction error is 0) and when the output is "1" (the prediction error is other than 0) are as follows.
- the first encoder 5 has an MPS counter (not shown) in the probability estimator 25.
- the MPS counter has a binary symbol "0" indicating a prediction error of 0, that is, successive occurrences of MPS. Count the number. Only when the number of consecutive occurrences of the MPS (the value of the MPS counter) input to the first encoder 5 reaches the code order, the code word (1 bit “0”) is determined (see FIG. 67). ). The codeword is not determined until the number of consecutive occurrences of MPS reaches the code order.
- the first encoder 5 combines the binary symbol "1" indicating that the prediction error is other than 0, that is, the LPS with the number of MPSs before the LPS to which no codeword has been assigned yet. Encode. By continuous number of occurrences of the LPS previous MP S (the value of the MP S counter), when the code order 2 n, code words having a code word length of n + 1 bits is determined (see FIG. 6 7).
- the second encoder 6 subsequently calculates a prediction error (8-bit Z pixel) obtained by subtracting the predicted value output from the predictor 3 from the value of the encoded pixel.
- the feature of this embodiment is that, even when the prediction error is encoded in the second encoder 6, the same encoding scheme as that shown in FIG. 67 is used as in the first encoder 5. is there. That is, when the first encoder 5 encodes a binary symbol sequence and when the second encoder 6 encodes a binary symbol sequence, both the encoding methods shown in FIG. 67 are adopted. This is a major feature.
- the predictor 7 calculates a predicted value from the values of one or more reference pixels.
- the calculation method may be a predetermined prediction function or a table reference.
- the third encoder 8 calculates a prediction error obtained by subtracting the predicted value calculated from the value of the coded pixel (in the case of 8 bits / pixel: —255 to 5255; Is converted to the binary symbol sequence shown in FIG. 9 and then encoded in the same manner as the second encoder 6. That is, based on the encoding scheme shown in FIG. 67, a codeword is generated from a binary symbol sequence. Since all of the binary symbol sequences shown in FIG. 9 end with LPS, third encoder 8 can determine a codeword for all of the binary symbol sequences shown in FIG.
- the values of the prediction error that are more likely to occur are sequentially generated and compared with the prediction error.If one of these values matches the prediction error, 1 is determined. In the case of 0, the prediction error is converted to a binary symbol.
- the error / symbol converters 36 and 38 convert the prediction errors into binary symbols and output them to the probability estimators 26 and 28, as described above.
- the probabilities estimators 26 and 28 perform code generation based on the input binary symbols.
- the code order is determined to be changed, and the determined code order is output to the codeword assigners 16 and 18, respectively. In this case, the two order examples described above can be applied to the code order determination method.
- the coding performed by the codeword allocators 16 and 18 is exactly the same as the coding performed by the codeword allocator 15. That is, encoding is performed by the encoding method shown in FIG.
- the encoding control unit 11 stores the value of the coded pixel in the pixel memory 1, and stores the value of the coded pixel from the pixel memory 1 and one of the neighboring pixels.
- the above reference pixel values are output, and the first encoder 5, the second encoder 6, and the third encoder 8 are appropriately operated by the mode identification signal CM output from the mode determiner 2.
- the first encoder 5, the second encoder 6, and the third encoder 8 notify the encoding control unit 11 of the output preparation state of the codeword, and the encoding control unit 11 Determines the first encoder 5 or the second encoder 6 or the third encoder 8 to output the codeword, and determines the codeword using the code switch 9 and the code buffer 10.
- a code is output in which the codeword is a series of sequences.
- the code buffer 10 receives the required codeword lengths directly from the first encoder 5, the second encoder 6, and the third encoder 8, or the encoding control unit 11 The required codeword lengths are indirectly notified via, so that the code is composed of the codewords.
- FIG. This will be specifically described.
- FIG. 11 is a diagram illustrating the states of the input coded pixels and the reference pixels, the output of the zero determiner, and the value of the prediction error.
- Pixel X as shown in Figure 11. These states of the reference pixels in the vicinity when to X 6 is input is as described in the reference pixels of Figure 1 1. Also, the output of the zero determiner indicates whether or not the prediction was incorrect for each coded pixel. The prediction error indicates the value of the prediction error when the prediction is incorrect.
- mode S is set in S11 as the initial mode of the encoding mode of the apparatus.
- pixel X Is entered.
- S14 it is determined that the mode is A, and in S15, the pixel X is detected.
- the output of the zero determiner is checked. As shown in Figure 11, pixel X. Since the output of the zero determiner of is 0, the operation proceeds to S18.
- pixel X Is encoded in the mode A by the first encoder 5.
- pixel X 2 are input.
- the mode # is also encoded for the pixel # 2 via S14, S15, and S18.
- the pixel Xs is input.
- the encoding mode of the pixel # 3 is determined to be Mode # 4, and the operation proceeds to S15.
- the pixel # 5 is input in S12.
- the coding mode of the pixel chi 5 is a mode beta, in S 1 6, shape of the reference pixels of the pixel Xs
- pixel Xs is encoded in mode A. At this point, the code word of the pixel X 5 output from the first encoder 5 is not fixed.
- the pixel ⁇ is input.
- the encoding mode of the pixel ⁇ is mode ⁇
- the output of the zero determiner is determined to be 1.
- the pixel chi beta in S 1 7 is an encoding mode Alpha.
- the code word of the pixel ⁇ 5 output from the first encoder 5 is determined at the position of ⁇ 4 as shown in FIG. .
- the second encoder 6 encodes the error of the pixel chi beta.
- the prediction error of ⁇ shown in Fig. 11 is “— 2”. Therefore, as shown in FIG. 8, the binary symbol “00 1” for the prediction error “ ⁇ 2” is encoded.
- ⁇ by LPS has appeared Te location odor 5, the code word of the pixel chi beta output from the second encoder 6 is determined at the position of P 5.
- the determined codewords shown in FIG. 12 are obtained by the probability estimators 25, 26, and 28 in the first encoder 5, the second encoder 6, and the third encoder 8 as shown in FIG.
- the first encoder 5, the second encoder 6, and the third encoder 8 all encode in the fourth code order.
- the first encoder 5, the second encoder 6, and the third encoder 8 independently determine the code order and operate independently.
- the output code is the code buffer 1
- the data is temporarily stored in a memory or the like (not shown) in FIG. 0 or directly from the code buffer 10, the data is transmitted in an analog or digital manner by a wireless or wired communication line. Also, it is fixedly stored in a storage medium (card, tape, disk, RAM, ROM, etc., which records magnetically or optically).
- LPS is always output when the encoding mode is switched from mode A to mode B. That is, in the first embodiment, when the encoding mode is switched from mode A to mode B, the first encoder 5 and the second encoder 6 always determine the code word. Also, when the encoding mode switches from mode B to mode A, LPS is always output, so in this first embodiment, when switching from mode B to mode A, the third mode is always used.
- the codeword is determined by the encoder 8.
- the switching is performed by the encoding control unit 11 controlling each unit in the encoding device 400 using the mode identification signal CM and the control signals C1 to C6.
- FIG. 13 is a block diagram illustrating a configuration example of the decoding device 500 according to Embodiment 1 of the present invention.
- 4 1 is one or more accumulated and decoded pixels prior to decoding, outputs the value of the pixel near the decoded pixel as the value of the reference pixel, and accumulates the value of the decoded pixel It is a pixel memory.
- Reference numeral 42 denotes a mode A or a mode B for the decoded pixel based on the value of the one or more reference pixels, similarly to the mode determiner 2 in the encoding device 400 described above. , A mode discriminator that outputs a mode identification signal CM.
- 4 5 is the code word in mode A, the prediction error of which is other than 0 or 0 (for example, if the discriminator judges other than 1 or 1 or 1 or 3 or 3 other than 1 or 1 other than 3 and the same below)
- This is the first decoder that decodes into binary symbols that indicate
- Reference numeral 46 denotes a second decoder that decodes a codeword into a prediction error when the prediction error is other than 0 in mode A.
- Reference numeral 48 denotes a third decoder that decodes a codeword into a prediction error between a value of a decoded pixel and a prediction value of the predictor 7 for the decoded pixel in mode B.
- Reference numeral 40 denotes a code buffer for decomposing an input code into codewords and outputting the codeword.
- Reference numeral 43 denotes a pixel memory 41, a first decoder 45, a second decoder 46, and a third decoder 48 based on the mode identification signal CM and the control signals C11 to C16.
- the pixel switch 12 (described later) is a decoding control unit that controls the code buffer 40.
- Reference numeral 12 denotes a pixel switch that selects and outputs an appropriate decoded pixel value among the decoded pixels output from the decoded pixel calculators 3 2 and 3 3 and the predictor 3.
- 3 2 and 3 3 are the decoded pixels from the predicted value of the decoded pixel and the decoded prediction error.
- the predictor 3 and the predictor 7 are the same as those of the encoding device 400 described above.
- 20 1 is a first decoder 45 that decodes the codeword into a binary symbol indicating whether or not the prediction error between the value of the decoded pixel and the estimated prediction value is 0; And a second decoder 46 for decoding a word into a prediction error.
- Reference numeral 202 denotes a second decoder including a third decoder 48 for decoding a codeword into a prediction error regardless of whether the error between the decoded pixel value and the estimated prediction value is 0 or not. Department.
- FIGS. 14, 15, and 16 are block diagrams showing examples of the internal configuration of the first decoder 45, the second decoder 46, and the third decoder 48.
- the second decoder 46 and the third decoder 48 are a first symbol // error converter 86 for converting a binary symbol sequence into a prediction error, and a second symbol Z error converter 8 Has eight.
- the first decoder 45, the second decoder 46, and the third decoder 48 obtain a codeword output by the code buffer 40 by dividing the code into codewords.
- the first decoder 45 or the second decoder 46 or the third decoder 48 is decoding with the code order 2 ", the first decoder 45 and the second decoder 46 Alternatively, the third decoder 48 determines the codeword length from the value of the first bit of the unacquired codeword as follows.
- the codeword length is 1, and the length is A message with only 2n binary symbol "0" is restored. If the first bit of the code is 1, the codeword length is n + 1 bits, and the first decoder 45, the second decoder 46, or the third decoder 48 sets the first bit of the codeword.
- the binary value indicated by the remaining n sign bits excluding is the number of consecutive occurrences (k) of the binary symbol "0", and the message of length k + 1 "0
- the first decoder 45 converts a codeword as an input and outputs a binary symbol sequence (here, equivalent to a message). Each output of the first decoder 45 corresponds to one pixel to be decoded in mode A. If the output value is "0", the prediction error for the decoded pixel is 0; Is non-zero. When the prediction error is 0, the prediction value becomes the value of the decoded pixel as it is. When the prediction error is other than 0, the second decoder 46 decodes the prediction error.
- the second decoder 46 and the third decoder 48 each convert the codeword into one or more messages by using the codeword as an input, and binarize the one or more messages. Synthesize into a symbol string.
- the second decoder 46 performs decoding on pixels having a prediction error other than 0 in mode A, and converts the binary symbol sequence shown in FIG. 8 (showing a case where there is no 0 in the prediction error) into the prediction error. Is converted back to and output.
- the third decoder 48 inversely converts the binary symbol sequence shown in FIG. 9 (showing a case where the prediction error is 0) into a prediction error for the pixel decoded in the mode B, and outputs the result. I do.
- the value of the decoded pixel is a value obtained by adding the output (predicted error) of the second decoder 46 to the output (predicted value) of the predictor 3.
- the mode switching in the decoding processing is performed based on the state of the reference pixel output from the pixel memory 41 and the output value of the first decoder 45, 2 can be realized by using the same judgment method as that of the mode judgment device 2 shown in FIG.
- the decoding control unit 43 outputs the value of one or more reference pixels from the pixel memory 41, and outputs the mode identification signal CM which is the output of the mode determination unit 42.
- the third decoder 48 is selectively operated. In the process, the first decoder 45, the second decoder 46, and the third decoder 48 notify the decoding control unit 43 of the input of the codeword, and the code buffer 40 directly By being notified of each codeword length or indirectly being notified of each codeword length via the decoding control unit 43, the code is divided into codewords and output.
- the decoding control unit 43 determines a suitable decoder to perform decoding among the first decoder 45, the second decoder 46, and the third decoder 48, and determines whether the pixel switch 1 The value of the decoded pixel is stored in the pixel memory 41 by 2.
- FIG. 17 is a block diagram illustrating a configuration example of an encoding device 400 according to Embodiment 2 of the present invention. However, it differs from FIG. 4 shown in the first embodiment in that the output from zero discriminator 4 is not input to mode discriminator 2. The operation of the encoding device 400 of the present embodiment will be described.
- mode B encoding is performed in mode B (S 7).
- the output value from the zero determiner 4 is not referred to.
- the operation of the mode A encoding and the operation of the mode B encoding are the same as in the first embodiment, and the description thereof will be omitted. You.
- the codeword when the coding mode is switched from mode A to mode B, the codeword is always determined by the first encoder 5, but in the second embodiment, Since the encoding mode determination condition is different from that of the first embodiment, the first encoder 5 does not always determine the codeword.
- FIG. 19 shows a pixel X according to the second embodiment of the present invention.
- the example shown in FIG. 19 shows the state of encoding when the encoded pixel shown in FIG. 11 is input to the encoding device 400 of this embodiment.
- code words are assumed to be output from the first encoder 5, the second encoder 6, and the third encoder 8, which perform encoding with a code order of 4. I do.
- FIG. 19 shows a pixel X according to the second embodiment of the present invention.
- code words are assumed to be output from the first encoder 5, the second encoder 6, and the third encoder 8, which perform encoding with a code order of 4. I do.
- FIG. 20 is a flowchart showing a control processing flow performed by the encoding control unit 11 after the code word is determined (S 20) by the third encoder 8.
- FIG. 21 is a flowchart illustrating a control processing flow performed by the encoding control unit 11 after the codeword is determined (S30) in the first encoder 5.
- the codeword transmission order control is required in the present embodiment before the codeword is determined by the first encoder 5 (in other words, the first encoder 5 When the value of the internal MPS counter is 1 or more (S in Fig. 20)
- the third encoder 8 generates a codeword.
- the codeword generated by the third encoder 8 is temporarily stored in the code buffer 10 (S24 in FIG. 20).
- the codeword is determined by the first encoder 5 in the following two cases.
- the codeword is determined at the positions of P1 and P2 by the third encoder 8, but the codeword output from the first encoder 5 is determined at the position of P3. I do. Therefore, the codeword of the third encoder 8 determined at the positions of P1 and P2 is temporarily stored in the code buffer 10 and the code output from the first encoder 5 at the position of P3.
- the codeword determined in P3 is output first, and the codeword determined in the positions of P1 and P2 temporarily stored in the code buffer 10 is output later. And P Finally, the codeword of the second encoder 6 determined at the position 4 is output.
- the output order of the codewords shown in FIG. 19 is the codeword of the first encoder 5 determined at the position of P3, and the second code determined at the position of P4.
- the code word of the encoder 6, the code word of the third encoder 8 determined at the position of P1, and the code word of the third encoder 8 determined at the position of P2 are output in this order.
- the maximum capacity MAX of the code buffer 10 must be determined on the transmitting and receiving sides.
- FIG. 23 is a diagram showing an operation when the maximum capacity MAX of the code buffer 10 is specified.
- X In mode A, X. Encodes the pixels to X 2, when switched to the beta remain mode undetermined and 1 code word [rho in mode beta, [rho 2, to confirm one after another at the position of the - - - code
- the temporarily stored code words from the third encoder 8 are sequentially stored in the code buffer 10.
- the maximum capacity MAX of the code buffer 10 occupied by the temporarily stored codewords is determined, and when the amount of temporarily stored codewords reaches the maximum capacity MAX,
- the temporarily stored code word is output to increase the free space of the code buffer 10.
- the dummy binary symbol "0" is replaced by the number of codewords required to determine the codeword by mode A. Is added to the binary symbol whose code word is undetermined. Since the case shown in Fig. 23 shows the case where the code order is the fourth order, only one dummy binary symbol "0" is added. Thus, the codeword output from first encoder 5 is determined. Until the codeword of the first encoder 5 is determined, the required number of dummy binary symbols “0” are added to the binary symbols whose codeword is undetermined.
- the codeword determined by the third encoder 8 temporarily stored in the code buffer 10 is determined. It is output and the empty area can be reclaimed in the code buffer 10. By performing such processing, it is possible to prevent the code buffer 10 from overflowing due to the code word determined by the temporarily stored third encoder 8.
- the maximum capacity MAX of the code buffer of the decoding device 500 is set to the maximum value of the coding device 400.
- FIG. 23 shows a case where a dummy binary symbol “0” is added to a binary symbol whose codeword is undetermined to determine the codeword output from the first encoder 5.
- the codeword output from the first encoder 5 may be determined by adding only one dummy binary symbol “1”. However, when a dummy binary symbol “1” is added, a codeword for a prediction error in the second encoder 6 is not generated.
- FIG. 24 is a flowchart showing a control processing flow of the encoding control unit 11 started by setting the mode B (S50).
- the value of the MPS counter inside the first encoder 5 becomes 0 in S52. It is checked whether it is. If the value of the MPS counter is 0, the codeword output from the first encoder 5 has already been determined, and there is no need for a prefetch operation. If the value of the MPS counter inside the first encoder 5 is other than 0, it indicates that the codeword output from the first encoder 5 is not determined, and is shown in S53 to S56. Perform a prefetch operation.
- the mode ⁇ after pixel X 2 without move to encoding in the mode one de beta, pixel Xs, and prefetching the value of Kaibeta first The codeword in the encoder 5 is determined (S55). After that, the mode # encoding is performed on the pixels # 3 and # 4 that have not been encoded (S57). However, when performing a pre-read operation, pixels are pre-read for the value of the pixel to be coded later, and then pixels that have not been coded are coded for pre-read operation of the pixel. Line memory is required. The maximum value of the line memory must be determined in advance on the transmitting and receiving sides. The reason is the same as the case shown in Fig. 23.
- the code word of the first encoder 5 may not be determined continuously. Therefore, the line memory that stores pixels If the maximum value is determined in advance and exceeds the maximum value, a dummy binary symbol "0" is added to the binary symbol whose code word is undetermined, and the code word output from the first encoder 5 is output. Confirm. As described above, a codeword output from the first encoder 5 may be determined by adding a dummy binary symbol “1”.
- FIG. 25 is different from FIG. 13 shown in the first embodiment in that the first decoder The difference is that the output from 45 is not input to the mode determiner 42.
- First decoder 45 shown in FIG. 25 performs the same decoding operation as first decoder 45 shown in FIG. 13 according to the first embodiment. That is, in mode A, a binary symbol whose prediction error indicates a value other than 0 is decoded. Then, the result is transmitted to the decoding control section 43 using the control signal C13.
- the decoding control unit 43 operates the second decoder 46 based on information indicating whether the prediction error from the first decoder 45 is zero or other than zero. In the following description, an operation that is different from the first embodiment of the present invention will be particularly described.
- the input codeword is converted into a binary symbol sequence (message), and the pixel value is reproduced using these.
- the decoding mode is changed to mode A. May switch to mode B. Again taking the case of Figure 19 as an example, X.
- the decoding control unit 43 outputs the unused binary symbols, if any, remaining in the first decoder 45, and outputs the unused binary symbols. If not, obtain a new codeword, convert it to a binary symbol sequence, and instruct the decoder to decode the binary symbol.
- decoding apparatus 500 differs from Embodiment 1 only in that it is necessary to control the order in which the decoded binary symbols are used, and other operations are the same as in Embodiment 1, Here, the description is omitted.
- the encoding mode can be determined for each pixel only based on the state of the reference pixel.
- the code word may not be determined, but by performing the above-described control, the decoding device 5 0 0 allows pixel decoding from codeword consistently
- the decoder switches from the third decoder 48 to the first decoder 45, the binary symbol shown in FIG. 9 is encoded as shown in FIG. 67 as described in the first embodiment.
- the codeword is always determined, so that it is not necessary to control the order in which the codewords are transmitted and to control the prefetching.
- FIG. 26 shows a configuration example of an encoding apparatus 400 according to Embodiment 3 of the present invention. However, FIG. 26 differs from FIG. 17 shown in Embodiment 2 in the configuration of the encoder.
- FIGS. 27, 28, and 29 are block diagrams respectively showing configuration examples of first encoder 5a, second encoder 6a, and third encoder 8a in this embodiment.
- FIG. 27 is block diagrams respectively showing configuration examples of first encoder 5a, second encoder 6a, and third encoder 8a in this embodiment.
- the first encoder 5a, the second encoder 6a, and the third encoder 8a include exclusive OR circuits 95, 96, 98, respectively.
- the exclusive OR circuits 95, 96, and 98 receive the binary symbol X and the MPS (Y) output from the probability estimators 25a, 26a, and 28a.
- the operation shown in the truth table is performed, and the exclusive OR signal Z is output to the probability estimator.
- MP S (Y) means the value of the binary symbol that the probability estimator interprets as MPS at the time of encoding, ie, “0”, “1”.
- the encoding mode determination in the present embodiment is performed by the same method as in the second embodiment.
- the pixel is coded in mode A, and the condition must not be satisfied. If so, encode the pixel in mode B.
- Embodiment 3 is different from Embodiment 2 in that the interpretation of MPS / LPS is switched during the state transition during encoding by the encoding method shown in FIG. 67.
- the first encoder 5 interprets MPS as “0” (binary symbol indicating prediction match), and the second encoder 6 and the third encoder 8 S was interpreted as "0" as defined in Figs.
- the third embodiment as shown in the flow of FIG. In the case where an LPS (prediction mismatch) occurs (S72), the interpretations of the MPS and the LPS are replaced thereafter (S72).
- state S Inverting the interpretation of MPS and LPS when the prediction is incorrect in the above means that the assumption that MPS should have a higher probability of occurrence is broken, and that the state of LPS has a higher probability of occurrence. If it has occurred Because I think.
- state S again. Then, the MPS and LPS are interpreted and encoded until LPS occurs.
- the exclusive OR circuits 95, 96, 98 receive the binary symbol X and the MPS (Y) output from the probability estimators 25a, 26a, 28a, and generate an exclusive OR signal ⁇ Is output. That is, if the binary symbol X and MPS match, an exclusive OR signal Z representing the binary symbol "0" is output.
- the method of controlling the codeword transmission order differs from the method described in the second embodiment.
- the codeword transmission order can be controlled if the presence or absence of the codeword determination is known only when the encoding is performed by switching from the first encoder 5 to the third encoder 8.
- the codeword is not necessarily located at the codeword completion position shown in FIG. Is not completed.
- FIG. 31 is a diagram illustrating a state of encoding when the interpretation of MPS and LPS is changed.
- encoders 5a and 6a interpret MPS as "0", LPS as "1", and encoder 8a interpret MPS as "1".
- LPS is interpreted as "0".
- the binary symbol X is converted to an exclusive OR signal Z by the exclusive OR circuit. Therefore, the encoders 5a, 6a, and 8a must input and encode a plurality of exclusive OR signals Z as a binary symbol sequence.
- the binary symbol X as shown in FIGS. 8 and 9, a binary symbol sequence always terminated with LPS is formed, but the exclusive OR signal Z is obtained by inverting the binary symbol X. Therefore, in some cases, the binary symbols shown in FIGS. 8 and 9 are inverted, and the codeword cannot be determined by each encoder when the coding mode is switched. Therefore, regardless of which encoder the encoder switches to another encoder, the encoding control unit 11 determines the code word in the encoder before switching to the other encoder. You need to know if it is.
- the coding control unit 11 determines that the other encoder (the MPS counter value is not determined) for which the codeword is not determined. Check if there is one or more encoders), and if not, instruct the code buffer 10 to output the determined codeword as it is. If there is an encoder whose codeword has not been determined, the codeword determined by encoder 8a is temporarily stored in code buffer 10 and output after another codeword is determined by another encoder. . As shown in Fig. 31, at the position of P1, the codeword to be output from the encoder 5a has not been determined yet, so that the codeword to be output from the encoder 5a has been determined at P2.
- FIGS. 33, 34, and 35 are block diagrams showing examples of the internal configuration of the decoders 45a, 46a, and 48a, respectively.
- the decoding device 500 converts the input codeword into a binary symbol sequence (message), and reproduces the value of the corresponding pixel using the binary symbols.
- binary symbols decoded by another decoder may be used before a plurality of binary symbols decoded from one codeword are used up by one decoder.
- the decoding control unit 43 outputs the unused binary symbol if it remains in the decoder switched from another decoder, and acquires a new codeword if there is no unused binary symbol. And instructs the decoder to decode the binary symbol.
- the decoding apparatus differs from the second embodiment only in the control of the order in which the decoded binary symbols are used, and the other operations are the same as in the second embodiment. .
- FIG. 36 is a block diagram illustrating a configuration example of an encoding device 400 according to Embodiment 4 of the present invention.
- the encoders 5a, 6a, and 8a are encoders having the same configuration as those shown in FIGS. 27, 28, and 29, respectively.
- Embodiment 4 is different from Embodiment 1 in that the interpretation of MPS and LPS is switched during the state transition in the encoding by the encoding method shown in FIG. 67.
- the first encoder 5 interprets the MPS as “0” (binary symbol indicating prediction match), and the second encoder 6 and the third encoder 8 interpret the MPS as It is interpreted as "0" defined in Figs.
- the state S is set at the time of the state transition. If an LPS occurs in this case, the interpretation of the MPS and the LPS will be replaced thereafter.
- the rules for state transition are performed in the same manner as in the first, second, and third embodiments. As described above, a change in the interpretation of the MPS LPS can be easily realized by comparing N (0) and N (1) even when the state transition is performed by the 0-1 counting method.
- the method of controlling the codeword transmission order is the same as that of the third embodiment. That is, in the second embodiment, only when the encoder is switched from the first encoder 5 to the third encoder 8, if the presence or absence of a codeword is known, the codeword transmission order can be controlled. In the fourth embodiment, the codeword is not always completed at the codeword completion positions of P1 to P4 shown in FIG. If it is switched to another encoder, the encoding control unit needs to know whether or not the codeword used in the encoder used before switching has been determined. A configuration example of the decoding device 500 will be described with reference to FIG.
- the decoders 45a, 46a and 48a have the same configuration as the decoders shown in FIGS. 33, 34 and 35, respectively.
- the decoding device 500 converts the input codeword into a binary symbol sequence (message), and reproduces the pixel value using the binary symbols.
- binary symbols decoded by another decoder may be used before a plurality of binary symbols decoded from one codeword are used up by one decoder.
- the decoding controller outputs an unused binary symbol if it remains in the decoder switched from another decoder, and if there is no unused binary symbol, acquires a new codeword. Instructs the decoder to decode the value symbol.
- decoding apparatus 500 In decoding apparatus 500 according to the present embodiment, only the control of the order in which the decoded binary symbols are used is different from that of the third embodiment, and the other operations are the same as those of the third embodiment.
- the encoder may have a plurality of MPS counters, state number memories, and MPS memories.
- FIG. 39 is a block diagram illustrating another configuration example of the encoding device 400 of the present embodiment.
- the predictor 3 and the predictor 7 described above calculate the predicted value of the coded pixel using the same prediction method
- FIG. 40 is a block diagram showing a configuration example of a decoding device 500 corresponding to the encoding device 400 shown in FIG.
- FIG. 41 is a block diagram showing another configuration example of encoding apparatus 400 of the present embodiment.
- FIG. 42 is a block diagram showing an example of the internal configuration of the encoder 5b shown in FIG.
- a feature of the encoding device 400 shown in FIG. 41 is that the first encoder 5 and the second encoder 6 are unified into one encoder 5b.
- the configuration of the encoder 5b is as shown in FIG.
- the encoder 5b is provided with a switch 85, and the zero determiner 4 and the probability estimator 2 are provided by the control signal C2.
- the error signal symbol converter 36 is controlled by the control signal C 3. Connect the probability estimator 25.
- the first encoder 5 and the second encoder 6 encode binary symbols using the same encoding method only with different inputs.
- the configuration of the encoder 400 can be simplified.
- FIG. 43 is a block diagram showing a decoding device 500 corresponding to the encoding device 400 shown in FIG.
- FIG. 44 is a block diagram showing the internal configuration of the decoder 45 b used in the decoding device 500 shown in FIG.
- a combination of the first decoder 45 and the second decoder 46 described in the above embodiment is a decoder 45b shown in FIG.
- FIG. 45 is a block diagram showing another configuration example of encoding apparatus 400 of the present embodiment.
- FIG. 46 is a block diagram illustrating a configuration example of the encoder 6b of the encoding device 400 illustrated in FIG.
- FIG. 47 is a diagram illustrating a decoding device 500 corresponding to the encoding device 400 illustrated in FIG.
- FIG. 48 is a diagram illustrating a configuration example of the decoder 46 b of the decoding device 500 illustrated in FIG. 47.
- a feature of the encoding device 400 shown in FIG. 45 is that the second encoder 6 and the third encoder 8 are combined into an encoder 6b.
- the difference between the second encoder 6, the third encoder 8, and the encoder 6 b described in the above-described embodiment is the correspondence between the prediction error and the binary symbol shown in FIGS. 8 and 9.
- the encoder 6b operates otherwise identically. Therefore, as shown in FIG. 46, the error Z symbol converter 3 in the encoder 6 b
- the second encoder An encoder 6b obtained by integrating the sixth encoder 6 and the third encoder 8 can be configured. Also in the case of the decoder 46 b shown in FIG. 48, the second decoder 4 shown in FIG. 13 or FIG. 25 is switched by switching the symbol error converters 86 and 88 by the switch 85. A decoder 46 b obtained by integrating the sixth and third decoders 48 can be configured.
- FIG. 49 is a block diagram illustrating another configuration example of an encoding device 400 according to the present embodiment.
- FIG. 50 is a block diagram showing an encoder 5c obtained by integrating the first encoder 5, the second encoder 6, and the third encoder 8 described in the above embodiment.
- the switch 85 switches the output of the zero determiner and the output of the error symbol converters 36 and 38, thereby providing the encoder 5c with the above-described first encoder 5, second encoder 6, It is possible to combine the functions of the third encoder 8.
- the first decoder 45, the second decoder 46, and the third decoder 48 also have the same structure as the encoder 5c. It can be configured as one decoder.
- FIG. 51 is a block diagram illustrating another configuration example of an encoding device 400 according to the present embodiment.
- the encoding device 400 shown in FIG. 51 is obtained by removing the mode determiner 2 and the second encoding unit 102 from the encoding device 400 shown in FIG.
- the determination result output from the zero determiner 4 to the mode determiner 2 is input to the encoding control unit 11 in FIG.
- the encoding control unit 11 operates the first encoder 5 and the second encoder 6 using the control signals C2 and C3 based on the determination result of the zero determiner 4. Further, the encoding control unit 11 operates the code switch 9 using the control signal C 5, and the first encoder 5 and the second encoder Select and output an appropriate codeword from the codewords output from 6.
- FIG. 52 is a block diagram showing another configuration example of the decoding device 500 according to the present embodiment.
- the decoding device 500 shown in FIG. 52 is obtained by removing the mode decision unit 42 and the second decoding unit 202 from the decoding device 500 shown in FIG.
- the first decoder 45 decodes the codeword into a decision result represented by a binary symbol indicating whether or not the prediction error is 0, and the decision result is input to the decoding control unit 43.
- the decoding control unit 43 controls the pixel switch 12 with the control signal C12 based on the input determination result.
- the encoding apparatus 400 shown in FIG. 51 is characterized in that it determines whether the prediction is correct or not, and encodes the encoded pixel based on the determination result.
- the decoding apparatus 500 shown in FIG. 52 is characterized in that it determines whether or not the value of a decoded pixel is predicted, and decodes a codeword into a decoded pixel based on the determination result. In this way, when the prediction probability is high, the prediction or success is determined, and the encoding or decoding is performed in units of a message consisting of one or more binary symbols indicating the prediction success or failure. As compared with the case where the prediction error is always encoded or decoded, more efficient encoding or decoding can be performed.
- the predictors 3 and 7 calculate the predicted value of the coded pixel from the value taken by the reference pixel.
- the mode identification signal CM is transmitted from the mode determiner to the predictor 3. And 7 to calculate the predicted value based on the mode identification signal CM and the value taken by the reference pixel.
- the reference pixels are three pixels a, b, and c, but the number of reference pixels may be one or more.
- the first, second, and third encoders and the first, second, and third decoders all use the encoding method shown in FIG. 67 will be described.
- the encoding and decoding may be performed without using the encoding method shown in FIG. 67.
- the case where the image information is encoded or decoded has been described.
- the audio information, the optical information, and other information are encoded or decoded
- the above-described embodiment is also applicable. It can be realized in form.
- efficient coding can be performed.
- the audio information or optical information has information extracted from the same background as the image signal or information extracted from a certain background. It can be regarded as image information in this specification, and can perform efficient encoding.
- FIG. 53 shows an image pickup apparatus (digital power supply) according to an embodiment of the image processing apparatus of the present invention.
- FIG. 3 is a diagram illustrating a configuration example of a digital camera 600 that records a still image on a memory card.
- reference numeral 325 denotes an imaging unit that captures an image composed of a plurality of pixels
- reference numeral 311 denotes a solid-state imaging device used as a sensor that converts an optical image into an electric signal
- reference numeral 312 denotes a solid-state imaging device 311.
- Lens for forming an optical image on the solid-state image sensor 3 1 3 is a diaphragm for adjusting the amount of light incident on the solid-state image sensor 3 1 1 1, 3 1 4 is a shutter for adjusting the exposure time of the solid-state image sensor 3 1 1 Is an AD (Ana1ogtoDigita1) conversion circuit that converts the output of the solid-state imaging device 311 into a digital signal, and 316 is a signal of one frame of the solid-state imaging device 311 that is converted into a digital signal.
- AD Ana1ogtoDigita1
- Memory card composed of semiconductor memory to record data 320 is an image decompression circuit that decompresses encoded image data read from the memory card 319
- 321 is an extended luminance A reproduction signal processing circuit (or display circuit) for displaying the signal Y and the color difference signals U and V on the monitor 324.
- Reference numeral 3222 denotes a system controller for controlling the operation of the solid-state imaging device 311.
- Reference numeral 3223 denotes a trigger switch for starting photographing.
- FIG. 54 is a diagram showing a sequence for recording a still image by the digital camera 600 in FIG.
- trigger switch 3 23 When trigger switch 3 23 is turned on at time T 0, a series of still image recording sequences described below is started. First, between time TO and T1 Then, the transfer of the electric charge stored in the solid-state imaging device 311 is performed. Next, a photometric operation is performed by a photometric device (not shown), and an appropriate exposure time and an appropriate exposure stop are set. Next, from time T2 to T3, the shutter 3-14 is opened, and the solid-state imaging device 311 is exposed. Next, when the shutter 3114 is closed at time T3, the exposure signal charges are read out from the solid-state imaging device 311. The signal read from the solid-state imaging device 311 is converted into a digital signal by the AD conversion circuit 315, and the signal for one frame is temporarily stored in the frame memory 316.
- the signal once stored in the frame memory 316 is read from time T4 to time T5, and the recording signal processing circuit 317
- a luminance signal Y and color difference signals U and V are obtained by calculation from data of several pixels adjacent to the solid-state imaging device 311.
- the luminance signal Y and the color difference signals U and V are coded data compressed by the image compression circuit 318 and recorded on the memory card 319.
- FIG. 55 is a diagram showing a configuration of the image compression circuit 318.
- the image compression circuit 318 includes three encoding devices 400.
- the encoding device 400 the encoding device described in the first to sixth embodiments can be used.
- the encoding device 400 shown in FIG. 4 can be used.
- the encoding device 400 inputs the luminance signal Y and the color difference signals U and V from the recording signal processing circuit 317 in parallel.
- Each encoding device 400 performs encoding using the encoding method described above.
- the encoded result is output to the memory card 319, stored, and input to the encoding device 400.
- the luminance signal Y is a luminance signal Y for one frame, that is, ⁇ 1, ⁇ ⁇ 2, ⁇ , ⁇ , as shown in FIG.
- the luminance signal ⁇ is input and encoded.
- the color difference signals U and V are coded by each coding device 40 °.
- FIG. 56 is a diagram showing the configuration of the image decompression circuit 320.
- the image decompression circuit 320 is provided with three decoding devices 500.
- the decoding device 500 the decoding device described in the first to sixth embodiments can be used.
- the decoding device 500 shown in FIG. 13 can be used.
- the image decompression circuit 320 receives in parallel the codes of the luminance signal Y and the color difference signals U and V from the memory card 319, decodes them in the respective decoding devices 500, and reproduces the reproduced signal. Output to
- FIG. 57 is a diagram illustrating another example of the image compression circuit 318.
- the image compression circuit 318 shown in FIG. 57 includes one encoding device 400.
- the encoding device 400 serially inputs the luminance signal Y and the color difference signals U and V from the recording signal processing circuit 317 for each frame. That is, a luminance signal ⁇ ⁇ for one frame consisting of Y 1, ⁇ 2,..., ⁇ ⁇ is input, and then a color difference signal for one frame consisting of U l, U 2,.
- FIG. 57 only one encoding device 400 is required, and the configuration of the image compression circuit 318 is simplified.
- FIG. 58 is a diagram showing another configuration of the image decompression circuit 320.
- the image decompression circuit 320 is provided with one decoding device 500.
- the image decompression circuit 320 inputs a code coded in frame units from the memory card 319 serially, decodes the luminance signal Y and the color difference signals U and V in frame units, 2 Output to 1.
- encoding or decoding is performed in frame units, but not limited to frame units, but encoding or decoding is performed in block units of a certain size. But it doesn't matter. Alternatively, encoding or decoding may be performed in units of a plurality of lines.
- FIG. 59 is a diagram showing another configuration of the digital camera 600.
- FIG. 59 differs from FIG. 53 in that an image is displayed on the monitor 324 via the frame memory 316.
- FIG. 60 is a diagram showing another configuration of the digital camera 600.
- FIG. 60 differs from FIG. 53 in that the memory card 319 does not exist in the case of FIG. 60, and the image compression circuit 318 and the image expansion circuit 320 are arranged before and after the frame memory 316. Is a point.
- FIG. 61 is a diagram showing another configuration of the digital camera 600 and the configuration of the computer 700.
- the feature of the configuration shown in FIG. 61 is that the image compression circuit 318 of the digital camera 600 performs compression processing and the computer 700 performs decompression processing.
- the digital camera 600 only the compression processing is performed, and the compressed data is stored in the memory card 319.
- the memory card 319 is attached to the computer 700 offline.
- the code stored in the memory card 3 19 is read out by the CPU (Centra 1 Processing Unit) 70 1 and the image decompression program 70 3 stored in the RAM (R andom Access Memory) 70 2 And perform decompression processing. Thereafter, desired image processing is performed by the image processing program 704, and display printing and the like can be performed.
- FIGS. 62 and 63 show the case where the signals input to the image compression circuit 318 are the color signals R, G and B.
- the signals input to the image compression circuit 318 are the color signals R, G1, G2, and B.
- the color signal can be decoded with the same configuration as that shown in FIGS. 62 to 65.
- the case where codes are stored using the memory card 319 is shown, but other secondary storage devices such as a flexible disk, a fixed disk, and a flash memory are used in addition to the memory card 319. You may do so.
- the code may be transferred to the outside by a communication device or a cable without storing the code in the storage device.
- the present invention provides an efficient encoding device and decoding device and their methods.
- an encoding system corresponding to a plurality of encoding modes is provided, and image information is efficiently encoded or decoded by an encoding system corresponding to the encoding mode.
- image information can be appropriately encoded and decoded correctly even when the code is not determined.
- the present invention can appropriately encode and decode correctly even when the interpretation of MPS and LPS is changed.
- an encoding device, a decoding device, or an image processing device can be compactly configured.
- a higher compression ratio can be obtained than the conventional image compression ratio, a high-quality image can be stored in a storage medium with a small capacity.
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Image Processing (AREA)
Abstract
Description
Claims
Priority Applications (8)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020007006530A KR100338198B1 (en) | 1996-03-19 | 1997-03-12 | Encoder, decoder, their methods, and image processor |
US08/952,723 US6188793B1 (en) | 1996-03-19 | 1997-03-12 | Encoding apparatus, decoding apparatus, encoding method and decoding method |
AU19395/97A AU697471B2 (en) | 1996-03-19 | 1997-03-12 | Encoding and decoding apparatus and method, and picture processing apparatus |
JP53334897A JP3228943B2 (en) | 1996-03-19 | 1997-03-12 | Encoding device and decoding device, their methods and image processing device |
CA 2221288 CA2221288C (en) | 1996-03-19 | 1997-03-12 | Encoding apparatus, decoding apparatus, encoding method, decoding method, and picture processing apparatus |
DK97907276.6T DK0827342T3 (en) | 1996-03-19 | 1997-03-12 | Predictive coding of images |
EP97907276A EP0827342B1 (en) | 1996-03-19 | 1997-03-12 | Predictive coding of images |
US09/458,061 US6636641B1 (en) | 1996-03-19 | 1999-12-10 | Encoding apparatus, decoding apparatus, encoding method and decoding method |
Applications Claiming Priority (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP8/63117 | 1996-03-19 | ||
JP6311796 | 1996-03-19 | ||
JPPCT/JP96/03568 | 1996-12-05 | ||
PCT/JP1996/003568 WO1997035422A1 (en) | 1996-03-19 | 1996-12-05 | Encoder, decoder and methods used therefor |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US08/952,723 A-371-Of-International US6188793B1 (en) | 1996-03-19 | 1997-03-12 | Encoding apparatus, decoding apparatus, encoding method and decoding method |
US09/458,061 Division US6636641B1 (en) | 1996-03-19 | 1999-12-10 | Encoding apparatus, decoding apparatus, encoding method and decoding method |
Publications (1)
Publication Number | Publication Date |
---|---|
WO1997035434A1 true WO1997035434A1 (en) | 1997-09-25 |
Family
ID=26404202
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
PCT/JP1997/000768 WO1997035434A1 (en) | 1996-03-19 | 1997-03-12 | Encoder, decoder, their methods, and image processor |
Country Status (5)
Country | Link |
---|---|
EP (1) | EP0827342B1 (en) |
JP (1) | JP3228943B2 (en) |
AU (1) | AU697471B2 (en) |
CA (1) | CA2221288C (en) |
WO (1) | WO1997035434A1 (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8358861B2 (en) | 2008-06-27 | 2013-01-22 | Fujitsu Limited | Image compression device and image decompression device |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4191974A (en) | 1977-02-08 | 1980-03-04 | Mitsubishi Denki Kabushiki Kaisha | Facsimile encoding communication system |
JPS5927501A (en) | 1982-08-04 | 1984-02-14 | シャープ株式会社 | Moisture sensitive resistance element and method of producing same |
JPH01251403A (en) | 1988-03-31 | 1989-10-06 | Toshiba Corp | Magnetic head and manufacture of same |
JPH0564007A (en) * | 1991-08-28 | 1993-03-12 | Ricoh Co Ltd | Method and device for encoding and decoding |
JPH0567978A (en) * | 1991-04-25 | 1993-03-19 | Mitsubishi Electric Corp | Coder/decoder |
JPH06164940A (en) * | 1992-11-19 | 1994-06-10 | Mitsubishi Electric Corp | Encoder |
JPH06181523A (en) * | 1992-12-14 | 1994-06-28 | Ricoh Co Ltd | Encoding device and decoding device of predictive coding system |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS6165573A (en) * | 1984-09-06 | 1986-04-04 | Fujitsu Ltd | Picture signal coding system |
JPS62108663A (en) * | 1985-11-06 | 1987-05-19 | Fujitsu Ltd | Entropy recording system |
US4939583A (en) * | 1987-09-07 | 1990-07-03 | Hitachi, Ltd. | Entropy-coding system |
JP2754970B2 (en) * | 1991-09-06 | 1998-05-20 | 日本電気株式会社 | Data Synchronization Method for Mobile Satellite Communication System |
-
1997
- 1997-03-12 JP JP53334897A patent/JP3228943B2/en not_active Expired - Lifetime
- 1997-03-12 AU AU19395/97A patent/AU697471B2/en not_active Expired
- 1997-03-12 EP EP97907276A patent/EP0827342B1/en not_active Expired - Lifetime
- 1997-03-12 WO PCT/JP1997/000768 patent/WO1997035434A1/en active IP Right Grant
- 1997-03-12 CA CA 2221288 patent/CA2221288C/en not_active Expired - Lifetime
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4191974A (en) | 1977-02-08 | 1980-03-04 | Mitsubishi Denki Kabushiki Kaisha | Facsimile encoding communication system |
JPS5927501A (en) | 1982-08-04 | 1984-02-14 | シャープ株式会社 | Moisture sensitive resistance element and method of producing same |
JPH01251403A (en) | 1988-03-31 | 1989-10-06 | Toshiba Corp | Magnetic head and manufacture of same |
JPH0567978A (en) * | 1991-04-25 | 1993-03-19 | Mitsubishi Electric Corp | Coder/decoder |
JPH0564007A (en) * | 1991-08-28 | 1993-03-12 | Ricoh Co Ltd | Method and device for encoding and decoding |
JPH06164940A (en) * | 1992-11-19 | 1994-06-10 | Mitsubishi Electric Corp | Encoder |
JPH06181523A (en) * | 1992-12-14 | 1994-06-28 | Ricoh Co Ltd | Encoding device and decoding device of predictive coding system |
Non-Patent Citations (1)
Title |
---|
See also references of EP0827342A4 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8358861B2 (en) | 2008-06-27 | 2013-01-22 | Fujitsu Limited | Image compression device and image decompression device |
Also Published As
Publication number | Publication date |
---|---|
CA2221288C (en) | 2001-02-27 |
EP0827342B1 (en) | 2013-02-27 |
EP0827342A4 (en) | 2000-10-04 |
AU1939597A (en) | 1997-10-10 |
AU697471B2 (en) | 1998-10-08 |
EP0827342A1 (en) | 1998-03-04 |
JP3228943B2 (en) | 2001-11-12 |
CA2221288A1 (en) | 1997-09-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP4865757B2 (en) | Apparatus, image processing system, camera module, and image processing circuit for image processing using a limited number of bits | |
US6696993B2 (en) | Variable length coding | |
ES2328916T3 (en) | TRANSFORMATION COEFFICIENTS OF CODING IN CODERS AND / OR IMAGE / VIDEO DECODERS. | |
TWI685245B (en) | Data encoding and decoding | |
RU2324302C1 (en) | Method for encoding flags in layer using interlayer correlation, method and device for decoding encoded flags | |
TWI696381B (en) | Entropy coding techniques for display stream compression (dsc) of non-4:4:4 chroma sub-sampling | |
US20050015248A1 (en) | Variable length coding method and variable length decoding method | |
JP4491349B2 (en) | Intra-coding method and apparatus for video data | |
JPS6226633B2 (en) | ||
KR100338198B1 (en) | Encoder, decoder, their methods, and image processor | |
CN117915092A (en) | Data encoding and decoding method, data encoding and decoding apparatus, and storage medium | |
US6744925B2 (en) | Encoding apparatus, decoding apparatus, encoding method, and decoding method | |
JP2017192078A (en) | Picture encoder and control method thereof | |
JP2020527303A (en) | Bit plane coding | |
US6636641B1 (en) | Encoding apparatus, decoding apparatus, encoding method and decoding method | |
US6631161B1 (en) | Method and system for compressing motion image information | |
WO1997035434A1 (en) | Encoder, decoder, their methods, and image processor | |
JP3218226B2 (en) | Encoding device and decoding device, their methods and image processing device | |
CA2320580C (en) | Encoding apparatus, decoding apparatus, encoding method, decoding method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
WWE | Wipo information: entry into national phase |
Ref document number: 97190213.5 Country of ref document: CN |
|
AK | Designated states |
Kind code of ref document: A1 Designated state(s): AU CA CN JP KR US |
|
AL | Designated countries for regional patents |
Kind code of ref document: A1 Designated state(s): AT BE CH DE DK ES FI FR GB GR IE IT LU MC NL PT SE |
|
ENP | Entry into the national phase |
Ref document number: 2221288 Country of ref document: CA Ref document number: 2221288 Country of ref document: CA Kind code of ref document: A |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1997907276 Country of ref document: EP |
|
WWE | Wipo information: entry into national phase |
Ref document number: 1019970708253 Country of ref document: KR |
|
WWE | Wipo information: entry into national phase |
Ref document number: 08952723 Country of ref document: US |
|
121 | Ep: the epo has been informed by wipo that ep was designated in this application | ||
CFP | Corrected version of a pamphlet front page |
Free format text: TITLE IN JAPANESE LANGUAGE CORRECTED |
|
WWP | Wipo information: published in national office |
Ref document number: 1997907276 Country of ref document: EP |
|
ENP | Entry into the national phase |
Ref document number: 2000 2000706530 Country of ref document: KR Kind code of ref document: A |
|
WWG | Wipo information: grant in national office |
Ref document number: 1019970708253 Country of ref document: KR |