Image processing method and apparatus

Abstract: Method and apparatus for efficiently encoding image data of a color facsimile or the like are provided. A specific color judgment unit (4) discriminates a specific color portion such as white or blank portion of the image data inputted from an image input unit (1). An orthogonal transforming process (10) is not executed to the blank block, thereby raising an encoding efficiency. A discrimination signal is subjected to a dynamic arithmetical encoding (6), thereby producing code data.

Description: BACKGROUND OF THE INVENTION Field of the Invention The invention relates to image processing method and apparatus having a function to encode or decode a color image at a high efficiency. Related Background Art Hitherto, as methods of encoding a color image, methods whereby an image is divided into a plurality of blocks and subjected to the orthogonal transformation and, thereafter, coefficients are quantized and ecoded are proposed by the same applicant as the present invention in U.S. Patent US-A-4 887 151. In the above conventional methods, however, since the coefficients after completion of the orthogonal transformation are quantized, the high frequency component is lost, a ringing occurs in the edge portion, and a quality of the character portion of an original deteriorates. In the case of encoding at a low bit rate, a block distorion occurs at the boundary between blocks and an outline of a character becomes unsightly. On the other hand, techniques to separately encode a plurality of color character portions and the other portions in order to improve qualities of black characters which are most frequently used and characters of a plurality of colors are known. According to the above techniques, after the character portion and the other portions were separated, a DCT encoding is executed to the other portions. In the DCT encoding, however, an image signal is converted into Y, C b , and C r signals, the Y, C b , and C r signals are respectively DCT encoded, the transformation coefficients are quantized and transformed into one-dimensional series, and the Huffman encoding is executed. Therefore, even in the case of a "white" signal, namely, in the case where all of the input signal values in the block are equal to 255, a data amount of total three bits per block of at least one bit for each of the (Y, C b , C r ) signals is necessary. Since the DC component which is obtained as a result of the orthogonal transformation uses another encoding (DPCM), a data amount of at least one bit per block is further needed, so that a loss of encoding efficiency is large. When a diagram portion of a predetermined color of the input image data is extracted and the extracted diagram portion is encoded separately from the other portions, so long as only the diagram portion is merely eliminated, it is insufficient in terms, of the accuracy of the extracting means or the like and, for instance, there is a case where the high frequency portion of the peripheral portion of the color characters remain. Such a problem also occurs in an image process such as a color converting process or the like other than the encoding process. JP-A-2292959 describes a color picture encoding system in which primary color image signals are converted into Y, I and Q signals. The Y signal is compared with a threshold value and either all of the signals Y, I and Q or only the Y signal are encoded depending on the result of the threshold comparison. JP-A-63299680 describes a method and apparatus for encoding and decoding of a picture signal in which a background region of an output region is first discriminated and then the background region and non-background region are separately encoded. US-A-4366505 describes an information forming apparatus which aims to eliminate redundancy in a black and white, that is binary, image signal by sending a control signal instead of the pixel signals when all of the pixels in a block contain no information, that is the pixels are white. According to one aspect of the present invention, there is provided an image processing apparatus in accordance with claim 1. According to another aspect of the present invention, there is provided an image processing method in accordance with claim 17. Embodiments of the present invention provide an image processing apparatus which can encode or decode an image at a high efficiency. An embodiment of the invention executes the encoding at a high efficiency in the case where an area of blank portions of an original is large. An embodiment of the invention provides an image processing apparatus comprising: dividing means for dividing input image data into a plurality of blocks each of which is composed of a plurality of pixels; discriminating means for discriminating a white block from the divided blocks; encoding means for encoding the divided blocks other than the white block discriminated by the discriminating means by using an orthogonal transformation method. An embodiment of the invention preferably encodes a color reproducibility. An embodiment of the invention provides an image processing apparatus comprising: input means for inputting image data in a pixel unit; first discriminating means for discriminating a color of the input image data in the pixel unit; second discriminating means for discriminating a single color of the input image data in a block unit in which the block is composed of a plurality of pixels; and encoding means for encoding the input image data in accordance with the discrimination results of the first and second discriminating means. Embodiments of the present invention will now be described, by way of example, with reference to the accompanying drawings, in which: Figs. 1A and 1B are block diagrams of an encoding apparatus according to the first embodiment of the invention; Fig. 2 is a diagram for explaining an edge detection; Fig. 3 is a diagram for explaining a binary series transformation; Fig. 4 is a block diagram showing a construction of a binary series transformation unit; Figs. 5A to 5C are diagrams for explaining an elimination of color characters; Fig. 6 is a block diagram showing a construction of a color character elimination unit; Fig. 7 is a block diagram showing a construction of an orthogonal transformation unit; Figs. 8A and 8B are diagrams for explaining a specific color block and an interpolation in a decoding process; Figs. 9A and 9B are block diagrams showing a construction of the second embodiment of the invention; Fig. 10 is a diagram for explaining at which position in a binary signal series the judgment data of the specific color block is inserted; Figs. 11A and 11B are block diagrams showing a construction of the third embodiment of the invention; Figs. 12A and 12B are block diagrams showing a construction of the fourth embodiment of the invention; and Figs. 13A and 13B are block diagrams showing an example in which the invention is applied to an encoding apparatus by only a DCT. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS A preferred embodiment of the invention will be described hereinbelow with reference to the drawings. (First embodiment) Fig. 1 is a diagram showing a whole construction of an image encoding apparatus of the first embodiment of the invention. In Figs. 1A and 1B, reference numeral 1 denotes an image input unit to input an image signal indicative of an original. The image input unit 1 is constructed by an image reader for scanning the original by a CCD line sensor and generating color component signals of R (red), G (green), and B (blue) each consisting of eight bits every pixel. Reference numeral 2 denotes an edge detection unit to detect the portion of the high frequency component of the original image by a method, which will be explained hereinlater. Reference numeral 3 denotes a color detection unit to detect the pixels of a predetermined color component; 4 indicates a specific color judgment circuit to discriminate where all of the pixel values in a block are a specific color (for instance, all white) or not; 5 a color character judgment unit to discriminate the pixels in the edge portion and of a predetermined color component; 6 a first arithmetical encode circuit to encode an output from the specific color judgment circuit 4 by an algorithm for dynamic arithmetical encoding; 7 a binary series transformation unit to transform pixel data indicative of a plurality of colors into a binary series signal suitable for arithmetical encoding; and 8 a second arithmetical encode unit which is constructed in a manner such that when the target pixel to be encoded relates to a block constructed by a specific color on the basis of a signal generated from the specific color judgment circuit 4, no process is performed, and when the target pixel to be encoded is not the specific color, the binary series signal is encoded by the dynamic arithmetical encoding. Reference numeral 9 denotes a color character elimination unit to substitute the data of the pixel which has been determined to be a color character by average value data of the block to which such a pixel belongs. Reference numeral 10 denotes an orthogonal transformation unit for executing the encoding of what is called an ADCT system such that a DCT (Discrete Cosine Transform) is performed every block and a Huffman encoding is further executed. In a manner similar to the case of the second arithmetical encode unit 8, when a target block to be ADCT encoded is a specific color, no process is executed, and only when it is not a specific color, the ADCT encoding is performed. Reference numeral 11 denotes a code data transmission unit for integrating outputs of the first and second arithmetical encode units 6 and 8 and orthogonal transformation unit 10, thereby producing code data to be transmitted. Reference numeral 12 denotes a code data reception unit to separate the received code data into two arithmetical encode series and Huffman encode series. Reference numeral 13 denotes a first inverse arithmetical encode unit for decoding an arithmetical code and generating a signal indicating whether the target block is a block of a specific color or not; 14 a second inverse arithmetical encode unit for decoding an arithmetical code and generating color character data; and 15 an inverse orthogonal transformation unit for executing a Huffman decoding and an inverse orthogonal transformation and for generating multi-value image data. When the target pixel and target block are a specific color, the second inverse arithmetical encode unit 14 and inverse orthogonal transformation unit 15 stop the decoding operations and generate values of the specific color. When they are not a specific color, the units 14 and 15 execute the decoding operations and generate decoded data. Reference numeral 16 denotes a smoothing unit to execute a smoothing process in order to eliminate a block distortion of the decoded image; 17 a synthesis unit for synthesizing the color character and the multi-value image data and for generating image data to be reproduced; and 18 an image output unit to form a visible image from the image data. Each of the above units will now be descrived hereinbelow. (Edge detection unit 2) In the edge detection unit 2, the following arithmetic operations are executed among peripheral pixels A, B, C and D as shown in Fig. 2 for a target pixel X, a distance between two points in an RGB space is calculated, and an edge in the image is detected. That is, now assuming that image data of the target pixel and peripheral pixel are set to (X r , X g , X b ) and (A r , A g , A b ), respectively, it is determined that an edge exists between the pixels X and A when the following relations (1) and (2) are satisfied. S = {(X r - A r ) 2 + (X g - A g ) 2 + (X b - A b ) 2 } 1/2 S > TH 1 (= 100) Similarly, the presence or absence of an edge is also judged with respect to portions between the pixels X and B, between the pixels X and C, and between the pixels X and D. When the edge exists in any one of the portions between the pixel X and the pixels A, B, C and D, it is determined that the target pixel X is an edge. Since the presence or absence of the edge is judged by calculating the distances between the target pixel and the peripheral pixels on the three-dimensional space, for instance, color edges in which the brightnesses are equal and the hues and saturations are different can be also judged. Therefore, the above method is extremely effective to detect color characters in the invention. In addition to the edge judgment of every pixel, a check is also made to see if an edge pixel is included or not in a block of 8 x 8 pixels in which a color character elimination and an orthogonal transformation, which will be explained hereinlater, are executed. A discrimination signal is also generated. The above discrimination can be realized by getting the OR of the discrimination result of every pixel in the block. A method of picking up the peripheral pixels is not limited to the above example but, for instance, eight peripheral pixels can be also taken. For instance, it is also possible to calculate the average value of the image data of pixels A, B, C and D and to execute the foregoing arithmetic operation between the average value and the pixel X. Another well-known method may be also used to detect an edge. (Color detection unit 3) The color detection unit 3 detects a plurality of predetermined limit colors by the following expressions. Now, assuming that the image data of the target pixel X is set to (r, g, b), when r, g, b < th 1 and |r - g|, |g - b|, |b - r| < th 3 are satisfied, it is determined that the target pixel X is K (black). In a manner similar to the above, the color of the target pixel X is detected as follows. X = R (red) when (r > th 2 ) and (g, b < th 1 ) and (|g - b| < th 3 ) X = G (green) when (g > th 2 ) and (r, b < th 1 ) and (|r - b| < th 3 ) X = B (blue) when (b > th 2 ) and (r, g < th 1 ) and (|r - g| < th 3 ) X = Y (yellow) when (r, g > th 2 ) and (b < th 1 ) and (|r - g| < th 3 ) X = M (magenta) when (r, b > th 2 ) and (g < th 1 ) and (|r - b| < th 3 ) X = C (cyan) when (g, b > th 2 ) and (r < th 1 ) and (|g - b| < th 3 ) th 1 , th 2 and th 3 denote predetermined threshold values. For instance, assuming that th 1 = 50, th 2 = 205, and th 3 = 30, it is decided that the detection result is good. The color detection signal is expressed by three bits of (R, G, B). The correspondence relations between each of the detected colors and the values of R, G and B are as shown in Fig. 3. (Specific color judgment unit 4) The specific color judgment unit 4 determines that a block is a specific color block when all of the pixel values in the block coincides with the specific color value. (Color character judgment unit 5) The color character judgment unit 5 determines that the pixels which satisfy either one of the above expressions (3) to (9) by the color detection unit 3 among the pixels in the block which has been decided by the edge detection unit 2 that the pixels corresponding to the edge exist are a color character. (First arithmetical encode unit 6) The arithmetical encode unit 6 encodes a binary signal by an arithmetical encoding as a reversible encoding. A method and a circuit construction for arithmetical encoding are as shown in U.S. Patent Application Serial No. 764,059. (Binary series transformation unit 7) The binary series transformation unit 7 transforms color signals of eight colors which are expressed by a color character discrimination signal of three bits into a binary series signal shown in Fig. 3. Fig. 4 shows a block diagram of the binary series transformation unit 7. Input data 200 to 202 are converted into a signal 212 of maximum seven bits shown in Fig. 3 every pixel by a transformation table 91 which is constructed by an ROM or the like. The signal 212 is supplied to a signal output unit 92. It is also possible to prepare a plurality of ROMs for the transformation table 91 so as to allocate a short bit length to the color in which a frequency of appearance is large, thereby enebling either one of the plurality of ROMs to be selected in accordance with a control signal 300. The signal output unit 92 has a construction of a shift register. The input signals 212 of seven bits are supplied in parallel and are serially generated one bit by one from the MSB. Such signals are a binary series signal D 203. When the binary series signal is set to 1 or seven bits of "0" are generated, the signal output unit 92 finishes the generation of the color signal of one pixel and receives the next input data. The signal output unit 92 generates a signal B t 204 indicating which number of bit of the binary series signal the bit which is at present generated belongs to. By binary series transforming the color character discrimination signal of three bits and encoding as a serial signal of one bit, the signals of three bits having a correlation can be encoded while keeping the color correlation without individually encoding them. Moreover, for instance, when performing the encoding while predicting the target pixel like the arithmetical encoding, the prediction and encoding can be performed as color information without executing the prediction and encoding every color component of R, G and B and the encoding efficiency can be raised. Since each of the color components of R, G and B indicative of the color of each pixel is expressed as one data, by decoding one data upon decoding, the R, G and B signals corresponding to the respective pixels can be obtained in a lump and a color image can be promptly reproduced. (Arithmetical encode unit 8) In the arithmetical encode unit 8, a binary series signal indicative of a few colors is encoded by an arithmetical encoding as a reversible encoding. A method and a circuit construction for arithmetical encoding are as shown in U.S. Patent Application Serial No. 764,059. In the above case, the encoding process is executed to only the data of a non-specific color block and the data of a specific color block is not encoded. (Color character elimination unit 9) The color character elimination unit 9 substitutes the data of the pixels which have been determined to be a color character by the color character judgment unit 5 by using the value corresponding to the data of the other pixels in the block to which those pixels belong. That is, color character data is eliminated as shown in Fig. 5B from the image in which a color character exists as shown in Fig. 5A. In the above case, since the edge which occurs as shown in Fig. 5B is also eliminated by subtracting the color character, the data of the pixels which exist around the color character as shown in Fig. 5C and have the hue similar to that of the pixels of the color character is also subtracted and is substituted by the average value of the other pixel data in the block. In the above case, the size of block which is subjected to the color character eliminating process and the size of block which is subjected to an orthogonal transformation, which will be explained hereinlater, are the same. A construction of the color character elimination unit 9 is shown in Fig. 6. The pixel image data r, g and b each consisting of eight bits are supplied to a color detector 71. The pixels of the color to be eliminated are detected on the basis of the above expressions (3) to (9). At this time, the threshold values are set, for instance, as follows so as to enable the color character peripheral portion to be also detected. th 1 = 120, th 2 = 130, th 3 = 30 As mentioned above, by changing (reducing) the threshold values of the color detection which are set by a threshold value setting circuit 75 and executing the color detection in a range wider than that of the color detection unit 3, the portion of the color which is approximate to the color of the color character can be extracted and the input image data in this portion can be also eliminated. When at least one of detection signals R', G' and B' of the color detector 71 is set to 1, it is decided that the pixels is a pixel in which the color to be eliminated exists. In a subtraction circuit 72, the values of r, g and b of such a pixel are set to 0. In an average value calculation circuit 73, the average value of the data r, g and b in the block of 8 x 8 pixels is calculated. In a displacement unit 74, the average value is substituted as image data of the pixels in which the color has been eliminated and such image data is generated as r', g' and b'. The invention is not limited to the substitution by the average value but it is also possible to substitute by a value whose frequency is highest or to substitute by a central value of the pixels in the block by using a median filter. In order to more accurately extract only the real color portion which corresponds to the pixels around the color character and is approximate to the color character, it is also possible to get the AND of a signal indicative of the OR of the color character discrimination signals R, G and B and output signals of two OR circuits in Fig. 6 and to execute processes in the subtraction circuit 72 and displacement unit 74. (Orthogonal transformation encode unit 10) The orthogonal transformation encode unit 10 executes an encoding of what is called an ADCT system in which a two-dimensional discrete cosine transformation is executed on a block unit basis of 8 x 8 pixels and the resultant transformation coefficients are quantized and, thereafter, they are Huffman encoded. Fig. 7 shows a construction of the orthogonal transformation encode unit 10. In a pre-processing unit 81, signals of eight bits of r', g' and b' are converted into a luminance signal Y and chromaticity signals C r and C b every pixel. In a sub sampling unit 82, average values are calculated from the C r and C b signals every block of 2 x 2 pixels. The above processes are executed by using a characteristic such that the deterioration in chromaticity signal is difficult to be perceived by the human sense of sight as compared with the deterioration of the luminance signal. In an orthogonal transformation unit 83, finally, the encoding of the ADCT system is independently executed with respect to each frame of Y, C r and C b . Such an encoding can be executed by constructing an exclusive arithmetic operating circuit or by a software of a computer. In the sub sampling unit 82, sub samples can be also obtained by merely thinning out the data. The orthogonal transformation encode unit 10 executes the encoding process only when the block to be processed is a non-specific color. When it is the specific color, the encode unit 10 doesn't perform the encoding process. Ordinarily, for the C b and C r data, two blocks are converted into one block by the sub sampling. However, in the case where one of the two blocks is the specific color, the sub sampling is not performed but the C b and C r data of the block of the non-specific color are directly used for the orthogonal transformation. (Encode data transmission unit 11) In the encode data transmission unit 11, the data of the specific color block of the first arithmetical encode unit 6 is first transmitted, the pattern code of the color character of the second arithmetical encode unit 8 is subsequently transmitted, and the code data of Y, C r and C b of the orthogonal transformation encode unit 10 are finally frame-sequentially transmitted. A flag indicating to which component the data belongs is transmitted prior to the transmission of each frame. In the above case, the transmission unit 11 has a memory to compensate a time deviation according to the transmitting order of each data. By encoding the color character pattern by the reversible encoding as mentioned above, a high efficient data compression can be executed while keeping the quality of the color character. On the other hand, when the color character is separated from the original data, by executing a predetermined displacement while also including the peripheral portion of the color character, the orthogonal transformation encoding efficiency can be improved. (Encode data reception unit 12) The encode data reception unit 12 receives the code data from the transmission unit 11 and discriminates whether it is the arithmetical code or the Huffman code of either one of Y, C r and C b on the basis of the flag and generates each data to the inverse arithmetical encode units 13 and 14 and an inverse orthogonal transformation encode unit 15. (First inverse arithmetical encode unit 13, second inverse arithmetical encode unit 14, inverse orthogonal transformation encode unit 15) The first inverse arithmetical encode unit 13, second inverse arithmetical encode unit 14, and inverse orthogonal transformation encode unit 15 decode the data indicative of the specific color block, color character data, and multi-value data of r', g' and b' in accordance with a procedure which is opposite to that for the arithmetical encoding and orthogonal transformation encoding. Since the data which are decoded by the second inverse arithmetical encode unit 14 and inverse orthogonal transformation unit 15 are the data of the portions excluding the specific color block, it is necessary to supplement the specific color block portion and to reconstruct in each unit. For instance, the specific color mentioned here assumes white. The whole image size is set to 8 x 8 pixels and the block size is set to 2 x 2 pixels for simplicity of explanation. It is now assumed that the specific color blocks exist as shown in Fig. 8A. Reference numeral 1 denotes the specific color block and 0 indicates the non-specific color block. The number of data which are decoded by the second inverse arithmetical encode unit 14 corresponds to only the portions of the non-specific color blocks and corresponds to 24 pixels (4 x 6 blocks) here. As shown in Fig. 8B, therefore, the specific color 0 is supplemented to the portions corresponding to the specific color blocks and the decoded data is inserted into the portions (hatched portions in the diagram) corresponding to the non-specific color blocks. The inverse orthogonal transformation encode unit 15 also operates in a manner similar to the above. The decoded multi-value data of r', g' and b' is smoothed at each frame by the smoothing unit 16. The reason why the smoothing process is not performed to the color character data but is executed to only the multi-value data is to prevent the deterioration in resolution of the color character and to reproduce a clear color character. (Synthesis unit 17) The synthesis unit 17 synthesizes the decoded color character data and the multi-value data of r', g' and b'. That is, the results (R x a, G x a, B x a) in which a predetermined coefficient a has been multiplied to the color character data (R, G, B) and the multi-value data (r', g', b') are synthesized. Upon synthesis, a priority is given to the color character data as image data of the pixels in which the color character exists. Due to this, the color character can be clearly reproduced. (Image output unit 18) The image output unit 18 is, for instance, an image output device such as laser beam printer, LED printer, liquid crystal printer, thermal copy transfer printer, dot printer, ink jet printer, or the like or an image display device such as a CRT or the like. The image output unit 18 forms a visible image onto a recording medium in accordance with a reproduction signal. Particularly, the ink jet printer includes what is called a bubble jet printer using a head of the type to emit a liquid droplet by a film boiling using a heat energy. (Second embodiment) Figs. 9A and 9B show embodiments in the cases where parts of the two arithmetical encode units in the first embodiment are modified. Since the component elements designated by reference numerals 1 to 18 are similar to those in Figs. 1A and 1B, their descriptions are omitted. Reference numeral 41 denotes a mixer to mix the color character data and the specific color block discrimination data. For example, the mixer inserts the specific color block discrimination data to the head of the data of each block. An output from the mixer 41 is as shown in Fig. 10. Hatched portions indicate the specific color block discrimination data. By constructing as mentioned above, there is no need to use a plurality of arithmetical encode units. In the arithmetical encode unit 8, the specific color block discrimination data is certainly encoded. However, the other color character data is not encoded in the case of the data of the specific color block as mentioned above but is encoded only in the case of the data of the non-specific color block. Reference numeral 42 in Fig. 9B denotes a memory to store the decoded specific color block discrimination data (Fig. 8A). (Third embodiment) The invention is not limited to the image communicating apparatus such as a color facsimile apparatus or the like but can be also applied to a memory device such as an image file or the like. Figs. 11A and 11B show examples in the cases where the invention is applied to a memory device. In Figs. 11A and 11B, since the component elements which are designated by reference numerals 1 to 18 are similar to those in Figs. 1A and 1B, their descriptions are omitted. Reference numeral 21 denotes an image file comprising a magnetooptic disk, a hard disk, an ROM, an RAM, or the like. The image file 21 can store a plurality of images. When images are stored, the arithmetical code and the Huffman code can be separately stored or they can be also stored in a lump every image. For instance, in the case where only the character portion is used by a display or a hard copy, it is sufficient to decode only the arithmetical code and, in such a case, the processing time can be reduced. (Fourth embodiment) According to the fourth embodiment, in addition to the construction of the first embodiment, a smoothing unit 31 is further added after the image synthesis unit 14 upon decoding. For instance, a smoothing filter of a block of 3 x 3 pixels can be used for smoothing. A coefficient such as to calculate a weighted mean of the target pixel and the peripheral pixel can be also used as a filter coefficient. According to the embodiment, since the smoothing process is also executed after the color character and the multi-value image were synthesized, it is possible to prevent that the boundary between the color character portion and the multi-value image becomes unnatural. The above smoothing process is particularly effective in the case where an original in which characters and a natural image mixedly exist is read by a CCD sensor. Therefore, for instance, in the case of an image such as computer graphics in which characters can be clearly separated, it is not always necessary to perform the smoothing process. It is also possible to provide a circuit to discriminate a feature (character or half-tone) of an image into the smoothing unit 31 and to thereby execute the smoothing process to only the half-tone portion. According to the embodiment of the invention as mentioned above, a block constructed by the specific color (for instance, white) in which an appearance frequency is high in the input image is extracted and the specific color block portion is not encoded, so that the encoding efficiency can be improved. Since the color character portions existing in the input image are simultaneously detected and are simultaneously encoded, a plurality of color characters can be promptly encoded. Moreover, by encoding those portions separately from the gradation image portions, the high efficient encoding can be executed while maintaining a high quality. That is, the non-reversible high efficient encoding is executed to the gradation image and in order to cover the drawback such that the high frequency component is lost by the encoding of the gradation image, the edge portions, particularly, the color character portions are entropy encoded, so that the ringing is prevented and the color character portions can be reproduced at a high quality. On the other hand, in addition to the color character portions, the color portions around the portion of a hue which is almost equal to the hues of the color character portions are also eliminated from the gradation image and are subjected to a predetermined displacement, so that the efficiency of the gradation image is remarkably improved. The image input unit 1 is not limited to the CCD line sensor but may be an interface to generate the processing result of a computer, a still video camera to record still images, a video camera to record moving images, or the like. Especially, as an interface of a computer, for instance, an interpreter of a page describing language such as post script, PCL, or the like is included. The input signal is also not limited to the color components of R, G and B but may be a signal such as (Y, I, Q), (L*, a*, b*), (L*, u*, v*) (Y, M, C), or the like. The color component signals for color detection are also likewise not limited to the foregoing R, G and B signals. The encoding method of the color character is not limited to the binary series transformation or the arithmetical encoding but may be another reversible encoding such as run length encoding, MH, MR, MMR, or the like. The encoding method of a multi-value image is also not limited to the non-reversible encoding such as an ADCT or the like but may be another orthogonal transformation encoding. The kinds and number of color characters to be detected are also not limited to the foregoing examples. The invention is not also limited to the hybrid type of the reversible encoding and the non-reversible encoding as mentioned above but can be also applied to an ordinary encoding apparatus by only the DCT. In such a case, the apparatus is constructed as shown in Fig. 13A or 13B. In Figs. 13A and 13B, since the component elements which are designated by the reference numerals 1 to 18 are similar to those in Figs. 1A and 1B, their descriptions are omitted. Not only the block in the case where all of the pixels in the block are completely white (level 255) but also the block in the case where, for instance, the average value in the block is equal to or higher than a predetermined level (extremely close to white) can be set as a specific color block. On the contrary, in the case of an image in which an area of black portions is large, the block in which all of the pixels in the block are black (level 0) can be also set to a specific color block. On the other hand, blue, red, green, or the like may be also set to a specific color. The invention is not limited to the encoding apparatus but can be also applied to an image processing apparatus, particularly, a copying apparatus which executes a color transforming process and a diagram extracting process, a color image editing apparatus, or the like. Particularly, the output unit on the decoding side is not limited to a hard copy apparatus such as a printer or the like but may be also a soft copying apparatus such as a monitor or the like. According to the invention as mentioned above, an image processing apparatus which can efficiently encode image data can be provided. The present invention is not limited to the foregoing embodiments but many modifications and variations are possible within the scope of the appended claims.

Claims: An image processing apparatus comprising: means (1) for inputting multi-level image data representing an image; means for dividing the multi-level image data into a plurality of blocks each comprising a plurality of pixels; characterised by means (4) for discriminating whether the pixels within a block of pixels are of substantially the same predetermined color; and encoding means (10) for encoding, using an orthogonal transform, the multi-level image data of blocks which have not been discriminated by the discriminating means as having pixels of substantially the same predetermined color. An apparatus according to claim 1, wherein said predetermined color is white. An apparatus according to claim 1 or 2, further comprising second encoding means (6) for encoding data indicative of the position of a block composed of pixels of the predetermined color. An apparatus according to claim 1, 2 or 3, further comprising extracting means (2) for extracting an edge portion from input image data. An apparatus according to any one of the preceding claims, further comprising judging means (5) for judging whether input image data includes a color character portion. An apparatus according to claim 5, further comprising means (41) for synthesising data indicative of a block of pixels of the predetermined color and data from the judging means (5). An apparatus according to any one of the preceding claims, wherein the encoding means is adapted to carry out a discrete cosine orthogonal transformation. An apparatus according to any one of the preceding claims, comprising color character elimination means (9) adapted to replace the data of a pixel determined to be a color character with data representing the average of the data of the pixels of the block, the highest frequency value of the block or a median or central value of the pixels of the block. An apparatus according to any one of the preceding claims, further comprising means (11) for transmitting image data from the encoding means (10,6,8). An apparatus according to any one of the preceding claims, wherein the inputting means (1) comprises a CCD sensor. An apparatus according to any one of the preceding claims, wherein the dividing means is adapted to divide input image data into N x N blocks where N is a natural number. An apparatus for decoding image data transmitted by an apparatus in accordance with claim 9, comprising means (12) for receiving encoded image data and separating the encoded image data into multi-level image data encoded by the orthogonal transform encoding means (10) and data indicative of a block of pixels of substantially the same predetermined color; means (15) for performing an inverse orthogonal transform on the orthogonal transform encoded image data; means (14) for performing an inverse arithmetical encoding; and means (17) for synthesising the outputs of the inverse encoding means (15,14). An apparatus according to claim 12, further comprising means (16,31) for smoothing inverse encoded image data. An apparatus according to claim 12 or 13, further comprising means (18) for outputting an inverse encoded image. An apparatus according to claim 14, wherein the outputting means (18) comprises a printer, for example a laser or ink jet printer. An image file carrying an image encoded using apparatus in accordance with any one of claims 1 to 9. An method of processing an image comprising: inputting multi-level image data representing an image; dividing the multi-level image data into a plurality of blocks each comprising a plurality of pixels; discriminating whether the pixels within a block of pixels are ot substantially the same predetermined color; and encoding, using an orthogonal transform, the multi-level image data of blocks which have not been discriminated by the discriminating means as having pixels of substantially the same predetermined color. A method according to claim 17, further comprising encoding data indicative of a block of pixels of the predetermined color. A method according to claim 17 or 18, further comprising extracting an edge portion from input image data. A method according to any one of claims 17 to 19, further comprising judging whether input image data includes a color character portion. A method according to claim 20, further comprising synthesising data indicative of a block of pixels of the predetermined color and color character portion data. A method according to any one of claims 17 to 21, further comprising substituting the data of a pixel determined to be a color character or artifact with a value related to data representing the average of the data of the pixels of the same block, the highest frequency value or tne block or a median or central value of the pixels of the block. A method according to any one of claims 17 to 22, further comprising transmitting encoded image data. A method of decoding image data transmitted by a method in accordance with claim 22, comprising receiving encoded image data and separating the encoded image data into multi-level image data encoded by orthogonal transform encoding and encoded data indicative of a block of pixels of substantially the same predetermined color, performing an inverse orthogonal transform on the orthogonal transform encoded image data, performing an inverse arithmetical encoding on the data indicative of a block of pixels of substantially the same predetermined color and synthesising the decoded image data. A method according to claim 24, further comprising smoothing decoded image data. A method according to claim 24 or 25, further comprising outputting a decoded image to output means.

Inventors: KATAYAMA AKIHIRO, YASUDA YASUHIKO, KATAYAMA, AKIHIRO, YASUDA, YASUHIKO, KATAYAMA, AKIHIRO, C/O CANON KABUSHIKI KAISHA
Applicants: CANON KK, CANON KABUSHIKI KAISHA
Application year: 1991
Main classification: H04N1
IPC codes: H04N11, H04N1, G06T9, H04N7