Abstract:
In an encoder/decoder, a quantizer quantizes input image information, and a coefficient generator generates coefficient information for determining quantization steps of the quantizer. An encoder variable length encodes the quantized image information, and a divider divides the quantized image information into a plurality of blocks. The coefficient information is attached to each of the plurality of blocks for transmission to a decoder.

Description:
BACKGROUND OF THE INVENTION 
     1. Field of the Invention 
     The present invention relates to an encoding/decoding apparatus. Image information is quantized, and then encoded. A decoder then decodes the encoded image information. 
     2. Related Background Art 
     For the purpose of encoding a color image signal, the ADCT (Adaptive Discrete Cosine Transformation) method of encoding is gaining popularity. This method is based on encoding by decomposing the image into its spatial frequency components, and is one of the known orthogonal transformation encoding methods. 
     The ADCT encoding is also adopted by the JPEG (Joint Photographic Expert Group) established as an international standard organization for such encoding methods, and the ADCT is gaining popularity as the orthogonal transformation most suitable for encoding image information. 
     The encoding and decoding by ADCT are in general conducted in the following manner. 
     The transformation of two-dimensional frequency components is executed in a unit block of 8 ×8 pixels, since such transformation for the entire picture requires an excessively long time. 
     The ADCT is conducted for each block to obtain ADCT coefficients in an 8×8 matrix, in which the coefficients at the right side, lower side and lower right area respectively signify the high frequency components in the horizontal, vertical and diagonal directions, and the coefficient at the upper left corner indicates the DC component. 
     Then said ADCT coefficients are quantized, rougher in the higher frequency side and finer in the lower frequency side, with weighting on the quantizing levels for the ADCT coefficients based on the human visual characteristics. 
     Then thus quantized ADCT coefficients are encoded. Since the components are concentrated in the lower frequency side, the encoding is conducted by zigzag scanning between the high and low frequency components. The significant coefficients with non-zero quantized outputs are grouped according to their values, and Haffman encoding is executed on a set of an identification number for the group, an immediately preceding significant coefficient, and a number positioned therebetween and indicating the run length of insignificant coefficients with zero quantized outputs, followed by the addition of a same-length code identifying the value in the group. 
     Since the diagonal high frequency components generally have low probability in an image, the latter portion after zigzag scanning is expected to become all zero in most cases. Consequently, a very high compression rate can be expected in the variable length code obtained in this manner, and an image reproduction with minimal deterioration in image quality can be achieved if a compression rate of several to one is anticipated in average. 
     However, the transmission channel generally has a fixed transmission capacity per unit time, and, if a picture has to be transmitted within a predetermined period as in the case of transmitting a moving image, it is desirable that the obtained code has a fixed number of bits (transfer rate) for a picture or for a unit pixel block. 
     The number of bits per picture is determined by a control coefficient C, which determines the coarseness of quantization. Thus, the control coefficient C is an important parameter for determining the transfer rate of an image and the quality thereof. 
     Various methods have been proposed for determining the control coefficient C. 
     For each frame of image data compressed as explained above, the control coefficient C employed in the quantization of image data is attached, and the inverse quantization is conducted with the control coefficient C at the reproduction of the compressed image data, whereby the image is reproduced through a process exactly inverse to the encoding process. 
     Thus, in the conventional art, the information for control coefficient C for quantization is attached to the image information of each frame. 
     The coefficient information, being an extremely important parameter for determining the quantization characteristics of the image and thus influencing the image quality, may destruct the quantization properties of an image frame and provide a visually unpleasant image if an error is involved in the information, for example in the transmission channel. 
     SUMMARY OF THE INVENTION 
     In consideration of the foregoing, the object of the present invention is to provide an encoding apparatus and a decoding apparatus capable of improving the reliability of image reproduction. 
     According to an embodiment of the present invention, there is provided an encoding apparatus comprising quantization means for quantizing image information; generation means for generating coefficient information for determining the quantizing steps in the quantization means; encoding means for variable length encoding of the data quantized by the quantization means; division means for dividing the image information of a picture into plural blocks; and transmission means for transmitting the obtained codes for each block divided by the division means, with the addition of said coefficient information. 
     Also according to another embodiment of the present invention, there is provided a decoding apparatus for reproducing image information from a data train, transmitted in unit of a data frame including a code which is obtained by quantizing image information and encoding thus quantized image data, and coefficient information relating to the quantizing steps determined for each picture, comprising decoding means for decoding the code; detection means for detecting an error in the coefficient information; and replacement means for replacing information in the data frame with that in another data frame, based on the output of the detection means. 
     Other objects of the present invention, and the advantages thereof, will become fully apparent from the following detailed description which is to be taken in conjunction with the accompanying drawings. 
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS 
     FIG. 1 is a block diagram of an image encoding apparatus constituting a first embodiment of the present invention; 
     FIG. 2 is a block diagram of an image decoding apparatus of the first embodiment of the present invention; 
     FIG. 3 is a diagram showing the format of a transmitted signal in the first and second embodiments of the present invention; 
     FIGS. 4A to 4D are diagrams showing the encoding process in the embodiments of the present invention; 
     FIG. 5 is a graph showing the method of setting a control coefficient for determining an image transfer rate in the embodiments of the present invention; 
     FIG. 6 is a block diagram of an image decoding apparatus constituting a second embodiment of the present invention; 
     FIG. 7 is a block diagram of an image encoding apparatus constituting a third embodiment of the present invention; 
     FIG. 8 is a block diagram of an image decoding apparatus of the third embodiment of the present invention; 
     FIG. 9 is a diagram showing the structure of a frame in the third embodiment of the present invention; and 
     FIG. 10 is a diagram showing the format of transmitted signal in the third embodiment of the present invention. 
    
    
     DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS 
     In the following there will be explained an image transmission system, constituting a first embodiment of the present invention, with reference to FIGS. 1 to 5. 
     Reference is made to FIG. 1, for explaining the configuration and function of an image encoding apparatus of the image transmission system. 
     An analog image signal, applied to an input terminal 1, is subjected to 8-bit digitization by an A/D converter 2. 
     The digitized image signal is provided to a two-dimensional spatial filter (SPF) 3, for eliminating high frequency components that cannot be processed in a DCT (Discrete Cosine Transformation) to be explained later. Thus, the filter 3 alleviates visual block distortion. 
     Subsequently the digital image signal is provided to a block dividing circuit 4, divided therein two-dimensionally into pixel blocks each consisting of 8×8 pixels, and is applied to the subsequent process in the unit of the pixel blocks. 
     The image signal from the block dividing circuit 4 is applied to a DCT circuit 5, which generates an 8×8 data matrix indicating the frequency components. 
     More specifically, a pixel block shown in FIG. 4A and consisting of image data D 11  -D 88  is converted, by the DCT circuit 5, into a data matrix shown in FIG. 4B and consisting of data X 11  -X 88 . 
     The coefficient X 11  indicates the DC component in the horizontal and vertical directions in the pixel block, or, namely, the average value of this 8×8 pixel block. 
     The coefficients X 11  -X 88 , which are generally represented as X ij , indicate components of higher frequency in the vertical direction for a larger value of i, and components of higher frequency in the horizontal direction for a larger value of j. 
     The data matrix generated by the DCT circuit 5 is applied to a frame memory 6 and a coefficient generation circuit 15. 
     A quantization matrix generating circuit 14 generates a quantization matrix W 11  -W 88  (cf. FIG. 4C) indicating the weights of quantization step sizes for the DCT coefficients X 11  -X 88 , and the coefficient generation circuit 15 generates a control coefficient C to be explained later in more detail. 
     The quantization matrix W 11  -W 88  and the control coefficient C are applied to a multiplier 16. 
     The multiplier 16 effects calculations W ij  ×C=Q ij , and the outputs Q 11  -Q 88  are applied to a linear quantization circuit 7 for determining the quantization steps thereof. 
     The linear quantization circuit 7 calculates X ij  /Q ij  to generate outputs G 11  -G 88 . The quantized data G 11  -G 88  are extracted in succession from the DC component, by means of a zigzag scanning circuit 8. 
     More specifically the zigzag scanning circuit 8 provides outputs in the order of G 11 , G 12 , G 21 , G 31 , G 22 , G 13 , G 14 , G 23 , G 32 , G 41 . . . , G 85 , G 86 , G 77 , G 68 , G 78 , G 87  and G 88  to a variable length encoding circuit (VLC) 9. 
     The variable length encoding circuit 9 effects Huffman encoding by calculating a predicted value, for example on the DC component G 11 , among the nearby pixel blocks and encoding the error to the predicted value. 
     However, the transmission channel generally has a fixed transmission capacity per unit time, and it is desirable that the obtained code has a fixed number of bits per each picture or per each pixel block in case a picture is to be transmitted during every predetermined period, as in the case when transmitting a moving image. 
     The number of bits is determined by the control coefficient C generated by the coefficient generation circuit 15. 
     More specifically, if the control coefficient C selected is larger, the probability of G ij=  0 becomes larger, so that the total number of bits NB (transfer rate) of the encoded data decreases. The relationship between the control coefficient C and the total number of bits NB, though variable depending on the image, is a simply decreasing function in any case, and is already known to assume the form of a logarithmic curve as shown in FIG. 4D for average images. 
     Therefore, the coefficient C 0  for obtaining a desired total number of bits NB 0  can be predicted, by effecting the encoding with a coefficient C 1 , determining the total number of bits NB 1  of thus obtained code, and calculating the predicted value of C 0  based on NB 1  and C 1 , utilizing a fact that the logarithmic curve shown in FIG. 4D passes through a point (C 1 , NB 1 ), 
     In the present embodiment, the coefficient C 0  is predicted in the coefficient generation circuit 15, as will be explained in relation to FIG 5. 
     At first certain control coefficients are selected. The data compressions are simultaneously executed, respectively with the coefficients, and the total number of bits per frame is calculated for each coefficient. 
     Then a range of coefficients providing the desired total number of bits is looked for (C 2  and C 3  the case of FIG. 5), and a coefficient C 0  providing the desired total number of bits is determined by linear approximation from the two points of the range. 
     Though a coefficient F 0  determined in this manner is somewhat different from the true coefficient C 0 , it is optimum in that the obtained number of bits never exceeds the desired number of bits since the logarithmic curve is convex downwards. 
     The coefficient F 0  thus determined and the variable length encoded image signal from the VLC 9 (FIG. 1) are applied to a frame multiplexer 10, which attaches the information of the control coefficient F 0  to the image signal. 
     The format of the transmission signal released from the frame multiplexer 10 is shown in FIG. 3. 
     In FIG. 3 there are shown vertical synchronization codes 40 and 43; control coefficient information 41 and 44 of successive frames, containing the information of the coefficient F 0  in the present embodiment; and variable length encoded image information 42 and 45. 
     The transmission signal from the frame multiplexer 10 is error correction encoded in an error correction encoding (ECC) circuit 11, then modulated in a modulation circuit 12 according to the characteristics of the transmission channel, and is provided to an output terminal 13. 
     Now reference is made to FIG. 2, for explaining the configuration and function of an image decoding apparatus of the image transmission system constituting the 1st embodiment. 
     The transmission signal (data train) from the transmission channel is applied to an input terminal 16, and is demodulated in a demodulation circuit 18, and is supplied to an error correction code (ECC) decoding circuit 19. 
     The ECC decoding circuit 19 corrects the code errors in the transmitted data train, according to a predetermined algorithm. 
     Also in case there are generated data for which the error correction identified is impossible, an error flag released for each error correction code word is set at &#34;1&#34;, and the error flag is applied to a coefficient error discrimination circuit 28. 
     The coefficient error discrimination circuit 28 discriminates whether the code word with the error flag &#34;1&#34; contains the coefficient information, and, if such coefficient information is contained, sets a coefficient error signal, released for each frame of the image information, at &#34;1&#34;. The coefficient error signal is applied to an error process circuit 29. 
     The transmission signal, subjected to the error correction in the ECC decoding circuit 19, is applied to a coefficient decoder 20, and is separated therein into the image information and the coefficient information. 
     The coefficient information, separated in the coefficient decoder 20, is applied to the error process circuit 29, which transmits the coefficient information to a multiplier 30 in case the coefficient error signal provided by the coefficient error discrimination circuit 28 is not &#34;1&#34;. 
     The image information separated in the coefficient decoder 20 is applied to an IVLC 21 for variable length decoding. A zigzag scanning circuit 22, a linear inverse quantization circuit 23, an inverse quantization matrix generation circuit 31 and an IDCT (Inverse Discrete Cosine Transformation) circuit 24 effect a process exactly inverse to the process executed by the zigzag scanning circuit 8, the linear quantization circuit 7, the quantization matrix generation circuit 14 and the DCT circuit 5 in the encoding apparatus shown in FIG. 1. 
     The image information subjected to the above-explained process is buffered in a frame memory 25, is then converted into an analog signal in a D/A converter 26, and provided to an output terminal 27, for provision to an image display means such as a monitor unit. 
     On the other hand, in case the coefficient error signal, provided from the coefficient error discrimination circuit 28 to the error process circuit 29, is &#34;1&#34;, the error process circuit 29 decodes the image information by replacing the coefficient information, attached to all the frames, with the coefficient information of the current frame. 
     In the following there will be explained, with reference to FIG. 3, the process in case the coefficient information contains an error. 
     It is assumed that an error is generated in the transmission signal shown in FIG. 3 on the transmission channel and that the ECC decoding circuit 19 shown in FIG. 2 sets the error flag as &#34;1&#34; in a section 1 shown in FIG. 3. The error flag is set at &#34;1&#34; for a code word for which the error correction is not possible, and the error flag is applied to the coefficient error discrimination circuit 28, which discriminates whether the code word with the error flag &#34;1&#34; contains the coefficient information. 
     Since the section 1 contains the coefficient information 44, the coefficient error discrimination circuit 28 supplies the error process circuit 29 with a coefficient error signal &#34;1&#34; for the image information of a frame, corresponding to the coefficient information 44. 
     In response to the coefficient error signal &#34;1&#34; from the coefficient error discrimination circuit 28, the error process circuit 29 disregards the coefficient information 44, and effects the decoding of the image information 45 by supplying the multiplier 30 with the coefficient information 41 used in the decoding of a preceding frame. 
     In the following there will be given a detailed explanation of a second embodiment of the image transmission system. 
     In the second embodiment, the configuration and function of the image encoding apparatus are the same as those in the first embodiment, and will not, therefore, be explained. 
     Now reference is made to FIG. 6 for explaining the configuration and function of an image decoding apparatus in the second embodiment. In FIG. 6, components the same as or equivalent to those in FIG. 2 are represented by the same numbers and will not be explained further in the following description. Also the functions of the apparatus are the same as those in the first embodiment, except for the process in case an error is generated in the coefficient information. Such process will be explained in the following description. 
     In case the coefficient error signal, provided by the coefficient error discrimination circuit 28 to an error process circuit 32, is &#34;1&#34;, the image of the preceding frame is frozen. 
     More specifically, the error process circuit 32 sends a freeze signal to the frame memory 33, which in response to the freeze signal for again releasing the image information of the preceding frame. 
     More specifically, with reference to FIG. 3, in case the coefficient error signal is &#34;1&#34;, the error process circuit 32 sends a freeze signal to the frame memory 33, for disregarding the coefficient information 44 and the image information 45 and for again releasing the image of the preceding frame, namely the image regenerated from the information 42. 
     In response the frame memory 33 again sends the image of the preceding frame to the D/A converter for output from the output terminal 27. 
     In the following there will be given a detailed explanation on a third embodiment of the image transmission system of the present invention, with reference to FIGS. 7 to 10. 
     Reference is made to FIG. 7 for explaining the configuration and function of an image encoding apparatus, constituting the third embodiment of the image transmission system. In FIG. 7, components which are the same as or equivalent to those in FIG. 1 are represented by same numbers and will not be explained further. 
     The third embodiment is the same as the first embodiment, except for the process of attaching the coefficient F 0 , provided by the coefficient generation circuit 15, to the image signal from the VLC 9 by the frame multiplexer 10 (FIG. 1). 
     The attaching of the coefficient F 0  to the image signal is conducted in the following manner. 
     The coefficient F 0  from the coefficient generation circuit 15 and the variable length encoded image signal, from the VLC 9, are applied to a re-synchronization multiplexer 36, which divides a frame into plural areas and attaches information of the coefficient F 0  to the image signal of each of the divided areas. 
     The divided area will hereinafter be called a re-sync block. The relation of re-sync blocks in a frame will be explained in the following description, with reference to FIG. 9. 
     In FIG. 9, if the picture is composed of 1280 pixels in the horizontal direction and 1088 pixels in the vertical direction, and if each pixel is A/D converted to 8 bits, the data amount per picture is: 
     
         1280×1088×8=11,141,120 bits. 
    
     Since each DCT block is composed of 8 pixels in the horizontal and vertical directions with a predetermined amount of image data, a re-sync block is selected as composed of 40 DCT blocks. 
     Consequently a picture is composed of 544 re-sync blocks, which are arranged 4 in the horizontal direction and 136 in the vertical direction. 
     The data amount in each re-sync block is: 
     
         40×8×8×8=20,480 bits. 
    
     The format of the transmission signal released from the re-sync multiplexer 36 is shown in FIG. 10. There are shown a vertical synchronization code 50; re-sync codes 51, 54, 57, 60, 63; coefficient information codes 52, 55, 58, 61, 64 for the coefficient F 0  released from the coefficient generation circuit 15; and variable length encoded image data 53, 56, 59, 62, 65. Except for the above-explained process, the processes of the third embodiment are the same as those of the 1st embodiment. 
     Now reference is made to FIG. 8 for explaining the configuration and function of an image decoding apparatus in the third embodiment, wherein components the same as or equivalent to those in FIG. 2 or 6 are represented by the same numbers. 
     The transmission signal (data train) from the transmission channel is applied to the input terminal 17, demodulated by the demodulation circuit 18 and applied to the ECC decoding circuit 19. 
     The ECC decoding circuit 19 corrects the code errors in the transmitted data train, according to a predetermined algorithm. 
     In case there are generated data for which an error correction is identified as impossible, an error flag released for each error correction code word is set at &#34;1&#34;, and the error flag is applied to a re-sync block error discrimination circuit 34. 
     The re-sync error discrimination circuit 34 discriminates a block containing the coefficient information, of which code words has the error flag &#34;1&#34;, and, if such block containing the coefficient information is present, sets a re-sync block error signal, released for each re-sync block of the image information, at &#34;1&#34;. The re-sync block error signal is provided to a coefficient selector 35. 
     The transmission signal, subjected to the error correction in the ECC decoding circuit 19, is applied to the coefficient decoder 20, and is separated therein into the image information signal and the coefficient information signal. 
     The coefficient information, separated in the coefficient decoder 20, is provided to the coefficient selector 35, which transmits the coefficient information to the multiplier 30 in case the re-sync block error signal &#34;1&#34; is not provided by the re-sync block error discrimination circuit 34. 
     The image information separated in the coefficient decoder 20 is provided to the IVLC 21 for variable length decoding. The zigzag scanning circuit 22, the linear inverse quantization circuit 23, the inverse quantization matrix generation circuit 31 and the IDCT (inverse discrete cosine transformation) circuit 24 effect a process exactly inverse to the process executed by the zigzag scanning circuit 8, the linear quantization circuit 7, the quantization matrix generation circuit 14 and the DCT circuit 5 in the encoding apparatus shown in FIG. 1. 
     The image information subjected to the above-explained process is buffered in the frame memory 33, then converted into an analog signal in the D/A converter 26, and provided from the output terminal 27, for provision to image display means such as a monitor unit. 
     On the other hand, in case the re-sync block error signal &#34;1&#34; is provided to the coefficient selector 35, the selector 35 disregards the coefficient information signal attached to the incorrectible re-sync block, and replaces the information signal with coefficient information attached to a re-sync block preceding or succeeding to the incorrectible re-sync block. 
     Also in case a frame contains three or more incorrectible re-sync blocks, the frame currently processed is disregarded, and a preceding or succeeding frame is frozen. 
     More specifically, the coefficient selector 35 is provided therein with a re-sync block counter, and provides a freeze signal to the frame memory 33 in case the number of error re-sync blocks within a frame exceeds a certain threshold value, and, in response the frame memory 33 does not release the image information of the current frame, but releases image information a preceding or succeeding frame, thereby replacing the image information of the current frame. 
     Now reference is made to FIG. 10 for explaining the process in case the coefficient information, attached to each re-sync block, contains an error. 
     It is assumed that an error is generated, on the transmission channel, in the transmission signal shown in FIG. 10, whereby the ECC decoding circuit 19 shown in FIG. 8 sets the error flag at &#34;1&#34; in a section 1 shown in FIG. 10. 
     The error flag is set at &#34;1&#34; for a code word containing an incorrectible error. The error flag is applied to the re-sync block error discrimination circuit 34, which discriminates whether the code word with the error flag &#34;1&#34; contains the coefficient information. 
     In the section 1, for the image information of the re-sync block corresponding to the coefficient information 58 and 61, a re-sync block error signal &#34;1&#34; is entered into the coefficient selector 35. 
     In response to the re-sync block error signal, the coefficient selector 35 disregards the coefficient information 58 and 61 in the section 1, and provides the multiplier 30 with the coefficient information attached to the preceding re-sync block, for example the coefficient information 55. 
     Also as explained above, the coefficient selector 35 is provided with a re-sync block error counter, and, in case the number of error re-sync blocks exceeds a certain threshold value, the image of the frame is considered unreliable and is replaced by the image of the preceding frame. In the present embodiment, the threshold value is selected as two. 
     More specifically with reference to FIG. 10, if an error flag is set in section 2, the number of error re-sync block is considered as three, since section 2 contains the re-sync information 54, 57, 61. Thus the coefficient selector 35 sends a freeze signal to the frame memory 33, thereby freezing the image of the preceding frame. 
     As explained in detail in the foregoing, in the image signal encoding apparatus and the decoding apparatus of the present invention, if an error is generated, for example on the transmission channel, in the control coefficient information which is an extremely important parameter affecting the image quality, the image reproduction is conducted by disregarding such coefficient information involving error and replacing it with effective coefficient information. It is therefore rendered possible to minimize the influence of the error in the coefficient information, and to improve the reliability of image reproduction. 
     Also the present invention is subject to various modifications within the scope and spirit thereof. 
     For example, in the foregoing embodiments, the coefficient information or the image information is replaced by the previously processed information, but it may naturally be replaced by the subsequent coefficient or image information. 
     In other words, the foregoing description of embodiments has been given for illustrative purposes only and not to be construed as imposing a limitation in any respect. 
     The scope of the invention is, therefore, to be determined solely by the following claims and not limited by the text of the specification and modifications made within a scope equivalent to the scope of the claims fall within the true spirit and scope of the invention.