Patent Publication Number: US-7710619-B2

Title: Image processing apparatus and method that performs differential scaling on picture regions than on text and line regions to enhance speed while preserving quality

Description:
BACKGROUND 
   1. Technical Field 
   The invention relates to an image processing technique of performing color conversion processing on an input image. 
   2. Related Art 
   Color conversion processing is performed on an image in various situations such as a situation that image processing is performed on a scanned-in image and a resulting processed image is output to a print engine in a copier. Among conventional color conversion methods in copiers, a method, which uses a multi-dimensional look-up table with interpolation, is called “DLUT” (direct look-up table). 
     FIG. 9  illustrates an exemplary color conversion method using a DLUT. In this example, the three-dimensional L*a*b* color space is divided in such a manner that each of the L*, a*, and b* axes is divided into a prescribed number of sections. The space is divided into cubes or rectangular parallelepipeds and their vertexes are called “lattice points.” Color conversion result values are held for the respective vertexes. In the case of a conversion into the CMYK color space, for example, CMYK values are held so as to correspond to the respective lattice points. 
   For interpolation operation, each divisional cube or rectangular parallelepiped is further divided into six tetrahedrons as shown in  FIG. 9 . To which tetrahedron input values (L*, a*, b*) belong are judged on the basis of the input values (L*, a*, b*) themselves, and an interpolation operation is performed by using CMYK values corresponding to the four vertexes (lattice points) of the tetrahedron thus found. In this manner, arbitrary input values (L*, a*, b*) can be converted into CMYK values. 
   SUMMARY 
   According to an aspect of the invention, an image processing apparatus performs color conversion processing on an input image. The image processing apparatus includes a reducing unit, a first color converting unit and an enlarging unit. The reducing unit reduces the input image. The first color converting unit performs color conversion on the image reduced by the reducing unit. The enlarging unit enlarges the image color-converted by the first color converting unit. 

   
     BRIEF DESCRIPTION OF THE DRAWINGS 
     Exemplary embodiments of the invention will be described in detail based on the following figures, wherein: 
       FIG. 1  is a block diagram showing a first exemplary embodiment of the invention; 
       FIG. 2  is an explanatory diagram showing a specific example of the operation of the first exemplary embodiment of the invention; 
       FIG. 3  is a block diagram showing an example of an attribute judgment section; 
       FIG. 4  is a block diagram showing a second exemplary embodiment of the invention; 
       FIG. 5  is a block diagram showing a modification of the second exemplary embodiment of the invention; 
       FIG. 6  is a block diagram showing another modification of the second exemplary embodiment of the invention; 
       FIG. 7  is a block diagram showing a third exemplary embodiment of the invention; 
       FIG. 8  is an explanatory diagram showing a computer program as an implementation of the functions of the image processing apparatus according to the exemplary embodiments of the invention or the image processing method according to the exemplary embodiments of the invention as well as exemplary storage media in which the computer program is stored; and 
       FIG. 9  illustrates an exemplary color conversion method using a DLUT. 
   

   DETAILED DESCRIPTION 
     FIG. 1  is a block diagram showing a first exemplary embodiment of the invention. In  FIG. 1 , reference numeral  1  denotes an input processing section;  2 , a reduction section;  3 , a first color conversion section;  4 , an enlargement section;  5 , an attribute judgment section;  6 , a filtering section;  7 , a second color conversion section;  8 , an output image generation section; and  9 , an output processing section. The input processing section  1  performs, on an input image, various kinds of image processing that should be performed before color conversion processing. The color spaces of the input image and an output image are arbitrary. 
   The reduction section  2  reduces, at a prescribed reduction factor, an image received from the input processing section  1 . If an intended output image size is smaller than the size of an image obtained by reducing the original image at the prescribed reduction factor, the image received from the input processing section  1  may be reduced into an image whose size is the same as the output image size. 
   The first color conversion section  3  performs a color conversion on the reduced image received from the reduction section  2 . If the input image color space and the output image color space are different from each other, the first color conversion section  3  also performs a color space conversion. In this exemplary embodiment, the first color conversion section  3  performs a color conversion on images for which importance is attached to the gradation performance rather than the resolution, such as pictorial images (e.g., photographs). The first color conversion section  3  can perform a highly accurate color conversion using a DLUT, for example. Since the image has been reduced by the reduction section  2 , the number of pixels of the processing subject is much smaller than that of the original image and hence the amount of processing can be made much smaller than in the case where a color conversion is performed without image reduction. 
   The enlargement section  4  enlarges a color-converted image received from the first color conversion section  3 . Basically, the enlargement section  4  enlarges the color-converted image into an image whose size is the same as before the reduction by the reduction section  2 . However, the invention is not limited to such a case. For example, if the output image size is larger than the pre-reduction image size, the enlargement processing may be performed so as to generate an image whose size is the same as the output image size. 
   The attribute judgment section  5  judges attributes of respective regions of the input image and passes judgment results to the output image generation section  8  and the output processing section  9 . The attribute judging method is arbitrary and may be a known method. The attribute judgment section  5  distinguishes between text/line-drawing portions and other portions. 
   The filtering section  6  extracts edges from the input image and performs adaptive filtering on the input image. This is edge emphasis processing for increasing the image quality of the text/line-drawing portions. Also, the filtering section  6  may be omitted. 
   The second color conversion section  7  performs a color conversion on a filtered image received from the filtering section  6 . If the input image color space and the output image color space are different from each other, the second color conversion section  7  also performs a color space conversion. In this exemplary embodiment, the second color conversion section  7  performs a color conversion on images for which importance is attached to the resolution, such as text images and line-drawing images. Although the second color conversion section  7  may also be configured to use a DLUT or the like, the second color conversion section  7  is not required to perform a highly accurate color conversion because the gradation performance is not very important. Therefore, the second color conversion section  7  can employ a color conversion method that is smaller in the amount of calculation than a color conversion method, which is employed by the first color conversion section  3 . The processing speed can be increased by simplifying the processing, for example, decreasing the number of reference data to simplify an interpolation method. Naturally, color conversion methods other than the method using a DLUT, such as a matrix conversion, may be used. 
   The output image generation section  8  generates an output image from an enlarged image received from the enlargement section  4  and/or a color-converted image received form the second color conversion section  7 . Which of the enlarged image received from the enlargement section  4  and the color-converted image received form the second color conversion section  7  should be selected can be determined on the basis of, for example, judgment results of the attribute judgment section  5 , preset processing modes, and/or system resources situations. For example, an output image may be generated in the following manner. The color-converted image received form the second color conversion section  7  is selected for regions that have been judged to be text/line-drawing regions by the attribute judgment section  5  and the enlarged image received from the enlargement section  4  is selected for other regions, and an output image is formed by synthesizing the thus-selected portions. 
   For example, the processing modes may include a document mode and a color mode. An output image may be generated by selecting the color-converted image received form the second color conversion section  7  if the document mode is a text mode and selecting the enlarged image received from the enlargement section  4  if the document mode is a photograph mode. An output image may be generated by selecting the enlarged image received from the enlargement section  4  if the color mode is color and selecting a black-and-white-gradation-converted image received from the second color conversion section  7  or a filtered image produced by the filtering section  6  (no color conversion is performed by the second color conversion section  7 ) if the color mode is black and white. Furthermore, image switching may be made in accordance with a processing speed mode indicating whether importance is attached to the processing speed or the image quality. The enlarged image received from the enlargement section  4  may be selected in a speed priority mode in which importance is attached to the processing speed, and the color-converted image received form the second color conversion section  7  may be selected in an image quality priority mode in which importance is attached to the image quality. Naturally, where another processing mode exists, image switching may be made in a similar manner, that is, either image may be selected depending on whether importance is attached to the gradation performance or the resolution. 
   Still further, the above processing modes and judgment results of the attribute judgment section  5  may be used in combination. One example is such that the enlarged image received from the enlargement section  4  is selected throughout the image in the speed priority mode and either image is selected on a region-by-region basis in accordance with the judgment results of the attribute judgment section  5  in the image quality priority mode. Another example is such that either image is selected on a region-by-region basis in accordance with the judgment results of the attribute judgment section  5  if the document mode is a text/photograph mixture mode and either image is selected throughout the image if the document mode is the text mode or the photograph mode. The judgment results of the attribute judgment section  5  may be combined with other processing modes in similar manners. Conversely, where image switching is performed in accordance with only the processing modes, the attribute judgment section  5  may be omitted. 
   The output processing section  9  performs various kinds of image processing on an image produced by the color conversion processing. This processing may be performed in accordance with the judgment results of the attribute judgment section  5 . 
     FIG. 2  is an explanatory diagram showing a specific example of the operation of the first exemplary embodiment of the invention. A description will be made of a case that an image of  FIG. 2(A)  having a photograph in an upper portion and a text in a lower portion is subjected to both of the processing of the reduction section  2 , the first color conversion section  3 , and the enlargement section  4  and the processing of the filtering section  6  and the second color conversion section  7 . 
   The image of  FIG. 2(A)  is processed by the input processing section  1  and then input to the reduction section  2  and the attribute judgment section  5 . The reduction section  2  reduces the image of  FIG. 2(A)  into a reduced image of  FIG. 2(B) . The first color conversion section  3  performs highly accurate color conversion processing for a picture, on the reduced image. Since the color conversion processing is performed on the reduced image, the color conversion processing can be performed at high speed. Then, the enlargement section  4  enlarges a resulting image so as to restore the original size, whereby a color-converted and enlarged image of  FIG. 2(C)  is obtained. 
   On the other hand, the attribute judgment section  5  judges, for each pixel or each set of plural pixels, an attribute of the image processed by the input processing section  1 . Assume here that as shown in  FIG. 2(D)  the attribute judgment section  5  has judged that the upper photograph portion has a picture attribute and the lower text portion has a text/line-drawing attribute. 
   The filtering section  6  performs the filtering on the image processed by the input processing section  1  to emphasize the edges of the image and then, the second color conversion section  7  performs the color conversion processing for a text/line drawing, on the filtered image. The color conversion processing for a text/line drawing is not required to be highly accurate and hence may be of a type that the amount of processing is small and enables high-speed processing.  FIG. 2(E)  shows a color-converted image generated by the second color conversion section  7 . 
   The output image generation section  8  generates an output image in accordance with the judgment results of the attribute judgment section  5 . Based on the judgment results shown in  FIG. 2(D) , the output image generation section  8  selects the enlarged image of  FIG. 2(C)  for the upper portion of the image and selects the color-converted image of  FIG. 2(E)  generated by the second color conversion section  7  for the lower portion of the image. As a result, the output image generation section  8  generates an output image of  FIG. 2(F) . The output image is processed by the output processing section  9  and then output. 
   As described above, whereas the photograph portion of the output image is lowered in resolution because it has been subjected to the reduction and enlargement, it is color-converted with high accuracy. The text portion is color-converted while the resolution is maintained. 
   In the configuration of  FIG. 1 , further increase in processing speed is possible in the attribute judgment section  5  and the filtering section  6 .  FIG. 3  is a block diagram showing an example of the attribute judgment section  5 . In  FIG. 3 , reference numeral  11  denotes a first edge detection section and reference numeral  12  denotes a second edge detection section. Whereas various attribute judging methods are available, this example employs a simple attribute judging method that uses the edge amount. 
   The first edge detection section  11  detects an edge amount by means of a simple edge detection filter, for example. The first edge detection section  11  produces a judgment result “text attribute” if the edge amount is larger than a first threshold value, produces a judgment result “picture attribute” if the edge amount is smaller than a second threshold value, which is smaller than the first threshold value, and produces a judgment result “attribute unknown” in the other case. The first and second threshold values may be varied in accordance with the attribute judgment result of the preceding pixel. For example, only the first threshold value or both of the first and second threshold values are decreased if a judgment result “text attribute” is produced for the preceding pixel. This increases the probability that a judgment result “text attribute” is also produced for the subject pixel. For example, only the second threshold value or both of the first and second threshold values are increased if a judgment result “picture attribute” is produced for the preceding pixel. This increases the probability that a judgment result “picture attribute” is also produced for the subject pixel. 
   The second edge detection section  12  judges attributes by more detailed processing than the first edge detection section  11 , and can judge attributes by one or a combination of various methods. For example, even where the second edge detection section  12  uses an edge detection filter, it may employ a filter having a lager size than the first edge detection section  11 . An attribute judgment, which uses an edge amount obtained in this case, may be made by comparing the edge amount with another prescribed threshold value. This threshold value may be weighted by using the edge amount obtained in the first edge detection section  11 , more specifically, by the difference between the edge amount and the intermediate value of the first and second threshold values of the first edge detection section  11 . 
   A pixel (or a region consisting of plural pixels) that has been judged to be a text attribute pixel by the first edge detection section  11  or the second edge detection section  12  is subjected to filtering in the filtering section  6 . Edge amounts obtained in the first edge detection section  11  of the attribute judgment section  5  may be used in the filtering. For example, a result of a sum-of-products operation on the edge amounts and edge intensities obtained by an edge emphasis filter may be employed as a filtering result. 
   Also in the filtering section  6 , the filtering may be switched in accordance with the judgment results of the attribute judgment section  5 , in particular, whether a text attribute has been detected in the first edge detection section  11  or the second edge detection section  12 . For example, filtering may be performed by a small-size emphasis filter if a text attribute has been detected in the first edge detection section  11 , and by a large-size emphasis filter if a text attribute has been detected in the second edge detection section  12 . Naturally, the filtering method may be changed. 
   The configuration of the attribute judgment section  5  shown in  FIG. 3 , the modification to the processing of the filtering section  6 , and other features can also be applied to the following exemplary embodiments in similar manners. 
     FIG. 4  is a block diagram showing a second exemplary embodiment of the invention.  FIG. 4  employs the same reference numerals as  FIG. 1  and redundant descriptions will be omitted. In this exemplary embodiment, the attribute judgment section  5  has a function of assigning portions of an image to the reduction section  2  and the filtering section  6  in accordance with judgment results of the attribute judgment section  5 . Portions of an image may be assigned in accordance with processing modes rather than or in combination with image judgment results. The attribute judgment may be performed for each block that includes only one pixel or consists of two or more pixels (in the reduction section  2 ). 
   In the exemplary embodiment of  FIG. 1 , color conversion processing is performed by the first color conversion section  3  and the second color conversion section  7  for regions that will not be selected by the output image generation section  8 . In contrast, in the second exemplary embodiment, color conversion processing is performed by only one of the first color conversion section  3  and the second color conversion section  7 . 
     FIG. 5  is a block diagram showing a modification of the second exemplary embodiment of the invention.  FIG. 5  employs the same reference numerals as  FIG. 4 . This modification is such that the first color conversion section  3  also serves as the second color conversion section  7 . As described above, the total processing speed can be increased by decreasing the number of pixels to be processed by the reduction section  2 . Therefore, the processing speed for the entire image can be increased even if a highly accurate color conversion is performed on text/line-drawing portions that are required to be high in resolution. 
     FIG. 6  is a block diagram showing another modification of the second exemplary embodiment of the invention. This modification is such that data written in PDL (printer description language) are received as input image data. 
   The input processing section  1  interprets input image data that are written in PDL and judges attributes of respective drawing objects. Therefore, in this modification, the input processing section  1  also performs the function of the attribute judgment section  5 . For example, if a PDL-judged attribute is a text attribute, data in that region are input to the filtering section  6  and then subjected to the color conversion processing of the second color conversion section  7 . If a PDL-judged attribute is a picture attribute, data in that region are input to the reduction section  2  and then subjected to the color conversion processing of the first color conversion section  3 . If PDL data include a raster image, the raster image may be subjected to area separation processing and then subjected to color conversion processing for a text or a picture. 
     FIG. 7  is a block diagram is a block diagram showing a third exemplary embodiment of the invention.  FIG. 7  employs the same reference numerals as  FIG. 1 . In this exemplary embodiment, the reduction factor of the reduction section  2  and the enlargement factor of the enlargement section  4  are variable. As the reduction factor of the reduction section  2  is set smaller, the number of pixels to be subjected to the color conversion processing of the first color conversion section  3  decreases and hence the processing speed can be increased. On the other hand, the resolution becomes lower. If the reduction factor is 100%, the same resolution can be obtained as obtained by conventional color conversion processing without reduction. 
   The attribute judgment section  5  produces control information on the basis of attribute judgment results, a given processing mode, etc. and supplies it to the reduction section  2  and the enlargement section  4 . In this exemplary embodiment, the processing of the filtering section  6  is performed for regions that have been judged to be text/line-drawing regions. 
   The reduction section  2  and the enlargement section  4  set a reduction factor and an enlargement factor, respectively, on the basis of the control information supplied from the attribute judgment section  5 . The reduction section  2  performs reduction processing on the image also supplied from the attribute judgment section  5 . The first color conversion section  3  performs color conversion processing on a reduced image or, if the reduction factor is 100%, the non-reduced image. The enlargement section  4  performs enlargement processing on a color-converted image (performs no processing if the enlargement factor is 100%) and outputs a resulting image. 
   Although in this exemplary embodiment the reduction factor of the reduction section  2  and the enlargement factor of the enlargement section  4  are controlled, it is also possible to switch, for example, the reduction method of the reduction section  2  and the enlargement method of the enlargement section  4 . For example, where a relatively high resolution is required, the apparent resolution may be increased by employing an enlargement method suitable to attain a high resolution in the enlargement section  4  after color conversion processing has been performed on a reduced image. 
     FIG. 8  is an explanatory diagram of a computer program as an implementation of the functions of the image processing apparatus according to the invention or the image processing method according to the invention as well as exemplary storage media in which the computer program is stored. In  FIG. 8 , reference numeral  21  denotes a program;  22 , a computer;  31 , a magneto-optical disc;  32 , an optical disc;  33 , a magnetic disk;  34 , a memory;  41 , a magneto-optical disc drive;  42 , an optical disc drive; and  43 , a magnetic disk drive. 
   All or part of the configuration of each of the above-described embodiments and modifications can be realized by the program  21  which can be run by a computer. Where it is realized by the program  21 , the program  21 , data used by the program  21 , and other information can be stored in a computer-readable storage medium. The term “storage medium” means a medium which makes it possible to transmit the description contents of a program to a reading device as a hardware resource of a computer in the form of a signal corresponding to variation states of magnetic, optical, electrical, or like energy that are caused according to the description contents of the program. Examples of the storage medium are the magneto-optical disc  31 , the optical disc  32  (including a CD and a DVD), the magnetic disk  33 , and the memory  34  (including an IC card and a memory card). Naturally, the storage medium is not limited to portable ones. 
   The functions of image processing apparatus according to the invention can be performed or processing can be performed according to the image processing method according to the invention by storing the program  21  in one of those storage media in advance, mounting the storage medium in the magneto-optical disc drive  41 , the optical disc drive  42 , the magnetic disk drive  43 , a memory slot (not shown), or an interface (not shown) of the computer  22 , for example, and causing the computer  22  to read out the program  21 . The functions of image processing apparatus can be performed or processing can be performed according to the image processing method by mounting or incorporating a storage medium in the computer  22  in advance, transferring the program  21  to the computer  22  over a network, for example, and storing the program  21  in the storage medium, and causing the computer  22  to run the program  21 . Naturally, all or part of the functions may be implemented by hardware.