Image processing apparatus and method

Abstract: The invention relates to a method for generating a low resolution gray-scale pattern, such as 8 x 8 dots/character representing a high resolution original character image, such as 88 x 88 dots/character. The microprocessor generates a sampling pattern having plural sampling windows arranged in rows and columns, such as 8 x 8 sampling windows, in accordance with a ratio of the low resolution to the high resolution. The size of the sampling pattern with the 8 x 8 sampling windows is equal to the size of the character box or matrix of the original character image. At first, the position of the entire sampling pattern is shifted on the original character image to detect an optimum or calibrated position in X and Y direction at which the total number of black pels on a group of pel lines, eg five pel lines, at a center portion of all rows or all columns is the largest value. Secondly, the position of a selected row(s) and/or column(s) of the sampling pattern at the calibrated position is shifted to the position at which the number of black pels on the five pel lines at the center portion of the selected one row or one column has the largest value.

Description: The invention relates to image processing apparatus and method for generating a grayscale output image from a binary input image. Bi-level, binary or ON/OFF image representation has been used in cathode ray tube display devices, a plasma display devices, a liquid crystal display devices and various printers to display or print dot matrix patterns of characters. In the bi-level representation, a binary value is assigned to each picture element (pel or pixel). Thus, each pel in the matrix has either a first binary value or a second binary value and therefore can represent black or white. However, the bi-level representation in the matrix raises a stair-step appearance along non-vertical and non-horizontal lines. As the resolution of a displayed or printed image becomes low, the stepped edges become larger and increasingly displeasing to the viewer. Display systems utilizing a plurality of gray-scale levels have been developed to provide a more natural display of character. An article "The Display of Characters Using Gray Level Sampling Arrays", John E. Wamock, Communications of the ACM, Vol.14, No.3, 1980, pp.302-307, and the US Patent 4158200, Charles L. Seitz et al., Burroughs Corporation disclose such a system utilizing a plurality of different gray-scale levels or levels of luminance. Fig. 7 shows the concept of the display utilizing the different gray-scale levels. A character pattern of a high resolution, such as 88 x 88 dots/character box is stored in a font memory. It is assumed that the character pattern is displayed on a display device of a resolution of 11 x 11 dots/character. In this case a sampling pattern 21 having 8 x 8 sampling windows is used. To convert the original character pattern of 88 x 88 dots to the character image of 8 x 8 dots, the number of black pels of a portion of the original character image surrounded by one sampling window are counted, and one of eight levels of gray-scale is assigned in accordance with the number of black pels within the sampling window, so that a grayscale pattern 29 is generated. It is used to control the levels of luminance of the display device. For a further example of the prior art see EP-A-0 344 952. Although the display utilizing the grayscale levels solves the stepped edge problem, it raises a new problem when a relatively complicated character, such as the Kanjii character including many horizontal and vertical lines is displayed. Referring to Fig. 14, a Kanji character 51 of high resolution stored in a font memory is shown. In this case a sampling pattern having 16 x 16 sampling windows is used. In the manner as described in the Fig. 7, the grayscale value is assigned to the number of black pels counted in each sampling window to generate a grayscale pattern 52 representing the original Kanji character 51. And, the grayscale pattern 52 is supplied to the display device. It is apparent that a displayed pattern using the grayscale pattern 52 is of poor quality, includes horizontal lines of the same gray levels contacting each other and has inferior readability. Viewed from a first aspect, the present invention provides an image processing apparatus for generating a grayscale output image from a binary input image, the input image being comprised of a plurality of pels each having one of two possible values associated therewith, the apparatus comprising: means for sampling the input image to assign grayscale values to a number of sampling windows, said sampling windows forming a sampling pattern each sampling window corresponding to a plurality of pels of the input image; characterised by means for determining a position, with respect to the binary input image, for the sampling pattern such that the total number of pels having one of the two possible values associated therewith and falling into a predetermined portion of the sampling pattern is maximised, said assignment being made with the sampling pattern at the determined position. The determining means can comprise means for counting said pels having one of the two possible values associated therewith with the sampling pattern at a number of positions with respect to the input image and means for comparing the counted numbers of pels to determine the position at which the counted number is a maximum. The sampling windows can be arranged in rows and columns to form the sampling pattern, the determining means comprising: means for determining, along the column direction, a position for the sampling pattern such that the sum of the number of pels having said one of the values associated therewith falling in a predetermined portion of each row of the sampling pattern is maximised; means for determining, along the row direction, a position for the sampling pattern such that the sum of the number of pels having said one of the values associated therewith falling in a predetermined portion of each column of the sampling pattern is maximised. In a preferred form of the invention the binary input image is an image of a character and the sampling pattern substantially covers the character. In this case an advantageous form of the invention further includes means for detecting rows and/or columns having a greater number of pels having said one of the values associated therewith than the rows and/or colums adjacent thereto; means for determining an optimum position, with respect to the input image, for each said detected row and/or column such that the number of pels having said one of the value associated therewith falling into at least a portion thereof is maximised, the assignment of grayscale values for the sampling windows comprising said detected rows and/or columns being made with said rows and/or columns at their respective optimum positions, the assignment of grayscale values for sampling windows comprising other rows and/or columns being made at said determined position for the sampling pattern. According to another aspect of the invention there is provided a method for generating a grayscale output image from a binary input image, the input image being comprised of a plurality of pels each having one of two possible values associated therewith, by sampling the input image to assign grayscale values to a number of sampling windows, said sampling windows forming a sampling pattern, the method comprising the step of: determining a position, with respect to the binary input image, for the sampling pattern such that the total number of pels having one of two possible values associated therewith falling into at least a portion of the sampling pattern is maximised, said assignment being made with the sampling pattern at the determined position. The present invention thus enables the quality and readability of a grayscale pattern generated from a high-resolution character image to be improved. An embodiment of the invention will now be described, by way of example, with reference to the accompanying drawings, wherein: Fig. 1 is a block diagram showing a method in accordance with the present invention; Fig. 2 shows the original character image stored in the buffer memory; Fig. 3 is a flow chart showing the operation for moving the entire sampling pattern in accordance with the present invention: Figs. 4A, 4B, 5A and 5B show the shift of the sampling pattern in accordance with the present invention; Fig. 6 shows the initial position and the calibrated position of the sampling pattern in accordance with the present invention; Fig. 7 shows the position of the sampling pattern and the gray-scale pattern obtained in the prior technology; Fig. 8 shows the sampling pattern positioned at the calibrated position and the gray-scale pattern obtained in accordance with the present invention; Fig. 9 is a flow chart showing the operation for moving the particularly selected row and/or column of the sampling pattern in accordance with the present invention; Figs. 10 and 11 show the operation for selectively moving the particularly row and/or column of the sampling pattern in accordance with the present invention; Figs. 12 and 13 show the sampling pattern and the gray-scale pattern in accordance with the present invention; Fig. 14 shows the Kanji character pattern and the gray-scale pattern in the prior technology. Referring to Fig. 1, a block diagram of the pattern generating system performing the operation in accordance with the present invention is shown. A font memory 1 stores a set of original character images or patterns of high resolution. It is assumed that the resolution of the original character image is 88 x 88 dots/character box, and the original character image is converted to a gray-scale pattern of 8 x 8 dots/character box or 8 x 8 pels/character box. The pattern generating system can be incorporated in a printer or a display apparatus, and the original character patterns are loaded from a processor to the font memory 1. One of the original character patterns, such as image of character B, of 88 x 88 dots resolution is fetched from the font memory 1 to a buffer memory 2 under the control of the microprocessor 3, as shown in Fig. 2. The size of the buffer memory 2 shown in the Fig. 1 is equal to the size of one original character box. The microprocessor 3 generates a grid-like sampling pattern 21 of 8 x 8 windows, as shown in Fig. 2 based upon the resolution of the original character pattern, i.e. 88 x 88 dots, and the resolution of the gray-scale pattern, i.e. 8 x 8 dots, to be displayed on a display screen. The size of the sampling pattern 21 is equal to the size of one character box. The microprocessor 3 performs the image converting processes of an algorithm shown in Fig. 3. In a step 31 in the Fig. 3, the microprocessor 3 counts the number of black pels in all pel lines in X direction and Y direction of the original character image to generate a histogram 26 in the X direction and a histogram 27 in the Y direction, as shown in the Fig. 2, and stores the histograms 26 and 27 in a histogram buffer memory 4 in the Fig. 1. The operation proceeds to a block 32 in the Fig. 3, wherein the microprocessor 3 positions the sampling pattern 21 at an initial position, at which an upper-left corner 22 of the sampling pattern 21 is positioned at an upper-left corner 23 of the dot matrix or character box of the original character image. Describing the sampling operation in the row or X direction with referring to Fig. 4A which is an enlarged figure of a portion 24 in the Fig. 2, the pel lines 1 through 11 represent the pel lines of the original character image. The microprocessor 3 selects a group of pel lines 4, 5, 6, 7 and 8 for each row of the sampling pattern 21. The pel line 6 is positioned at a center of the width of row, as shown in the Fig. 4A. The microprocessor 3 counts the number of black pels on the group of pel lines 4, 5, 6, 7 and 8 of the original character image of the rows 1 through 8, by referring to the histogram 26 in the histogram buffer memory 4. And, the microprocessor 3 sums up the number of black pels in each row to generate the total number of horizontal black pels of the sampling pattern 21 at the initial position, and stores the total number into a memory position 0 of Y direction of the register 5. In the same manner as that described above, the microprocessor 3 generates the total number of vertical black pels of the sampling pattern 21 at the initial position. More particularly, Fig. 5A shows an enlarged figure of a portion 28 in the Fig. 2. The pel lines 1 through 11 represent the pel lines of the original character image. The microprocessor 3 selects a group of pel lines 4, 5, 6 7 and 8 for each column of the sampling pattern 21. The pel line 6 is positioned at a center of the width of column, as shown in the Fig. 5A. The microprocessor 3 counts the number of black pels on the group of pel lines 4, 5, 6, 7 and 8 of the original character image of the columns 1 through 8, by referring to the histogram 27 in the histogram buffer memory 4. And, the microprocessor 3 sums up the number of black pels in each column to generate the total number of vertical black pels of the sampling pattern 21 at the initial position, and stores the total number into a memory position 0 of X direction of the register 5. The operation proceeds to a block 33 in the Fig. 3, wherein the microprocessor 3 sequentially shifts the sampling pattern 21 from the initial position by ±1 pel line, ±2 pel lines and ±3 pel lines in the X and Y directions, respectively, and counts the total number of black pels at each position, in the same manner as that described in the initial position. Describing the sampling operation in the row or horizontal direction with referring to Fig. 4B, the sampling pattern 21 is upwardly shifted by one pel line. The sampling window 25A in the Fig. 4B shows the upward shift of the sampling pattern 21 by one pel line. The microprocessor 3 selects a group of pel lines 3, 4, 5, 6 and 7 of the original character image for each row of the sampling pattern 21. The microprocessor 3 generates the total number of horizontal black pels of the sampling pattern 21 at the +1 position, and stores the total number into a memory position +1 of Y direction of the register 5. To shift the sampling pattern 21 to the +2, +3, -1, -2 and -3 positions, the microprocessor 3 selects the pel lines 2, 3, 4, 5 and 6 for the +2 position, the pel lines 1, 2, 3, 4 ad 5 for the +3 position, the pel lines 5, 6, 7, 8 and 9 for the -1 position, the pel lines 6, 7, 8, 9 and 10 for the -2 position, and the pel lines 7, 8, 9, 10 and 11 for the -3 position, respectively. And, the microprocessor 3 generates the total number of horizontal black pels of the sampling pattern 21 at each position, and stores them in the respective memory position of Y direction of the register 5. Next the microprocessor 3 sequentially shifts the sampling pattern 21 from the initial position to the ±1, ±2 and ±3 pel lines in the Y direction, as shown in Fig. 5B. To shift the sampling pattern 21 to the above positions, the microprocessor 3 selects the pel lines 5, 6, 7, 8 and 9 for the +1 position, the pel lines 6, 7, 8. 9 and 10 for the +2 position, the pel lines 7, 8, 9, 10 and 11 for the +3 position, the pel lines 3, 4, 5, 6 and 7 for the 1 position, the pel lines 2, 3, 4, 5 and 6 for the -2 position, and the pel lines 1, 2, 3, 4 and 5 for the -3 position, respectively. And, the microprocessor 3 generates the total number of vertical black pels of the sampling pattern 21 at each position, and stores them in the respective memory position of X direction of the register 5. The total number of the black pels, Ts, at respective position is represented by the following formula. P = S + B t x i - B 2t + j wherein; P : Position of one pel line of the original Character image f(p): The number of black pels on one pel line of the original character image W : The number of pel lines in one group located at the center portion of the row or column of the sampling pattern t : The number of dots or pels in X or Y direction of the gray-scale pattern B : The number of dots or pels in X or Y direction of one original character matrix or box S : The shift positions A range of the shift position in the positive direction or the negative direction is represented by the following formula. S < B/3t In the exemplary case, B = 88 and t = 8 S < 3.66 Thus, the +1, +2 and +3 shift positions are selected in the positive direction, and the -1, -2 and -3 shift positions are selected in the negative direction. Next, the microprocessor 3, in a block 34 of the Fig. 3, compares the total number stored in each of the memory positions +3, +2, +1, 0, -1, -2 and -3 of the Y direction of the register 5, identifies one position at which the largest value is stored and selects the identified position as a calibrated position of the sampling pattern 21 in the Y direction. It is assumed that the distance between the initial position and the calibrated position of the sampling pattern in the Y direction is Sy, as shown in Fig. 6. The microprocessor 3 also compares the total number stored in each of the memory positions +3, +2, +1, 0, -1, -2 and -3 of the X direction of the register 5, identifies one position at which the largest value is stored, and selects the identified position as a calibrated position of the sampling pattern 21 in the X direction. It is assumed that the distance between the initial position and the calibrated position of the sampling pattern 21 in the X direction is Sx, as shown in the Fig. 6. Fig. 7 shows a gray-scale pattern 29 generated by prior technology using the sampling pattern 21 positioned at the initial position shown in the Fig. 6 without the calibrating operation. Fig. 8 shows a gray-scale pattern 30 generated by using the sampling pattern 21 positioned at the calibrated position Sx, Sy shown in the Fig. 6 in accordance with the present invention. Comparing the gray-scale pattern 29 with the gray-level pattern 30 by observing two portions 71 and 72 of the character B, the portion 71 is represented, in the gray-scale pattern 29, by the gray-scale value 2 in the column 2 and the gray-scale values 5 and 6 in the column 3, while, in the gray-scale pattern 30, the portion 71 is represented by the gray-scale value 7 in the column 3. And, the portion 72 is represented, in the gray-scale pattern 29, by the gray-scale values 2 and 1 in the column 4 and the gray-scale values 4 and 2 in the column 5, while, in the gray-scale pattern 30, the portion 71 is represented by the gray-scale values 3 and 4 in the row 4. It is apparent that the gray-scale pattern 30 generated in accordance with the present invention is of excellent readability in comparison with the gray-scale pattern 29 in the prior art. The purpose of the operations performed in the blocks 31, 32, 33 and 34 in the Fig. 3 is to entirely shift or move the sampling pattern 21 on the original character image of the high resolution. In the entire shift of the sampling pattern 21, the border lines of the sampling windows which pass, at the initial position, within the black lines of the character are shifted so as to position the major portion of the black line(s) of the character between the border lines of the sampling windows. Referring to the Figs. 7 and 8, a border line 73 passes within the portion 71 which is the vertical line of the character B before the entire shift of the sampling pattern 21, as shown in the Fig. 7, whereby the portion 71 is of inferior readability, as shown by the gray-scale pattern 29. After the entire shift of the sampling pattern 21 in accordance with the present invention, the portion 71 of the character B is positioned between the border lines 73 and 74 of the sampling pattern 21, as shown in the Fig. 8, so that the portion 71 is of excellent readability, as shown by the gray-scale pattern 30. In the operation in the blocks 31 through 34 in the Fig. 3, the position of the entire sampling pattern is shifted on the original character image to detect an optimum or calibrated position in the X and/or Y direction at which the total number of black pels on a group of pel lines at the center portion of each of all rows and/or all columns is the largest value. The characters are roughly categorized into first group of characters, e.g. alphanumeric, including few horizontal and vertical lines and second group of characters, e.g. Japanese Kanji characters, including many horizontal and vertical lines. The entire shift of the sampling pattern 21 performed by the operations in the blocks 31 through 34 in the Fig. 3 improves the readability of the first group of characters, and the readability of the second group of characters, such as Kanji characters, is further improved by the next operation described with referring to Figs. 9 - 13, in addition to the operation in the blocks 31 through 34. To this end, a block 35 in the Fig. 3 determines as to whether the character being processed is the second group of characters, such as Kanji character, or not. In the case of the alphanumeric B described hereinbefore, the answer of the block 35 is NO, and the operation proceeds to a block 36, wherein the microprocessor 3 positions the sampling pattern 21 at the calibrated position Sx, Sy on the original character pattern, as shown in the Fig. 6, counts the number of black pels surrounded by each sampling window of the sampling pattern 21, and assigns one of the different gray-scale levels or values 0 - 7 to the number of black pels of each sampling window, whereby the gray-scale pattern 30 shown in the Fig. 8 representing the original character B is generated. And, the gray-scale pattern 30 is stored in a buffer memory 6 in the Fig. 1, and is supplied to the display apparatus or the printer. The operation shown in the Figs. 9 - 13 shifts position of particularly selected row(s) and/or column(s) in the sampling pattern 21 positioned at the calibrated position Sx, Sy, shown in the Fig. 6. It is assumed that the entire shift of the sampling pattern 21 for Kanji character, as shown in Fig. 10 has been completed by the operation of the blocks 31 through 34 in the Fig. 3, and the sampling pattern 21 in the Fig. 10 has been positioned at the calibrated position Sx, Sy. In this case, the answer of the block 35 in the Fig. 3 is YES, and the operation proceeds to a block 91 in the Fig. 9, wherein the microprocessor 3 selects the calibrated position Sx, Sy of the sampling pattern 21, shown in the Fig. 6. The operation proceeds to a block 92, wherein the microprocessor 3 selects the group of pel lines passing through the center portion of each row and column of the sampling pattern 21, and counts the number of black pels on the five pel lines for each row and column of the sampling pattern 21 at the calibrated position Sx, Sy. The number of black pels detected in each row and column is shown in the Fig. 10. Next, the microprocessor 3 compares the number of black pels in N row with the number of black pels in N-1 row and with the number of black pels in N+1 row respectively, and compares the number of black pels in N column with the number of black pels in N-1 column and with the number of black pels in N+1 column, respectively, to detect the column or row having the number of black pels larger than that of the adjacent ones. It is assumed that the number of black pels outside the sampling pattern 21 is zero. In the exemplary case shown in the Fig. 10, the microprocessor 3 detects the rows 1, 4 and 7 and the columns 2 and 7, as shown by arrows in the Fig. 10. The row 1 has the value 150, i.e. the number of black pels, which is larger than the value zero of an upper adjacent row outside the sampling pattern 21 and the value 60 in the row 2. The row 4 has the value 100 which is larger than the value 60 in the row 3 and the value 60 in the row 5. The row 7 has the value 110 which is larger than the value 60 in the row 6 and the value 30 in the row 8. The column 2 has the value 260 which is larger than the value 0 in the column 1 and the value 70 in the column 3. And, the column 7 has the value 240 which is larger than the value 70 in the column 6 and the value 0 in the column 8. Therefore, the microprocessor 3 selects the columns 2 and 7 and the rows 1, 4 and 7 as candidate row(s) and column(s) to be shifted. The operation proceeds to a block 93 in the Fig. 9, wherein the microprocessor 3 shifts the position of the selected rows 1, 4 and 7 and the columns 2 and 7 selected in the block 92. The microprocessor 3 performs the shift operation by shifting the position of the five pel lines on the original character image from the position 0 passing through the center of column or row to the +1, +2, -1 and -2 positions, and counts the number of black pels on the five pel lines at each shift position. The Fig. 11 shows the sampling windows at columns 2 and 3 in the row 1 of the sampling pattern 21 shown in the Fig. 10. Referring to the column 2 in the Fig. 11, a group of pel lines, i.e. the five pel lines, is initially located at the position 0 and shifted to the positions +1, +2, -1 and -2, respectively, and the number of black pels on the five pel lines in each of the positions +2, +1, 0, -1, -2 are counted, and stored in the register 7 in the Fig. 1. It is apparent from the Fig. 11 that the maximum values for the column 2 are obtained in the shift positions +1 and +2. Between the positions +1 and +2 generating the maximum values, the position +1 nearest to the original position 0 is selected, and stored in the register 7. The same operation as the above operation is performed in the column 7, and the microprocessor 3 finds out that the shift position -2 generates the maximum value, and stores the column 7 and the position -2 in the register 7. The process for the row 1 is described with referring to the Fig. 11, again. It is apparent in the Fig. 11 that the shift position -2 generates the maximum value for the row 1. The position -2 for the row 1 is stored in the register 7. In the same manner as that described above, the microprocessor 3 finds out the maximum value at the positions 0 and -1 for the row 4, and finds out the maximum value at the shift positions -1, 0 and +1 for the row 7. The original position 0 is selected when the original position 0 generates the maximum value, so that the microprocessor 3 stores the position 0 into the memory positions labelled "SHIFT" for the rows 4 and 7 of the register 7, as shown in the Fig. 1. In this manner, the microprocessor 3 shifts a group of pel lines within the row and/or column, which is selected in the block 92, of the sampling pattern 21, counts the number of black pels in each position to determine the shift amounts of the row or column. It is noted that the shift amounts 0 in the rows 4 and 7 represent that these rows 4 and 7 are not shifted. The operation proceeds to a block 94, wherein the microprocessor 3 shifts the row 1, the column 2 and the column 7 in accordance with the shift values in the register 7 in the Fig. 1. More particularly, the microprocessor 3 shifts the row 1 of the sampling pattern 21 by two pel lines in the downward direction, and shifts the adjacent row 2 by one pel line in the downward direction, as shown in the Fig. 12. The microprocessor 3 shifts the column 2 by one pel line in the rightward direction, as shown in the Fig. 12. The microprocessor 3 shifts the column 7 by two pel lines in the leftward direction, and shifts the adjacent columns 6 and 8 in the leftward direction, as shown in the Fig. 12. The purpose of shifting the adjacent row or column in the same direction is to reduce a distortion of the character image. The operation proceeds to a block 95 in the Fig. 9, wherein the microprocessor 3 positions the sampling pattern 21 at the calibrated position Sx, Sy on the original character image decided in the block 34 in the Fig. 3 and shifts the rows and column of the sampling pattern 21, as shown in the Fig. 12, counts the number of black pels surrounded by each sampling window, and assigns one of the different gray-scale levels or values 0 - 7 to the number of black pels of each sampling window, whereby the gray-scale pattern 41 representing the original Kanji character image is generated, as shown in the Fig. 12. And, the gray-scale pattern 41 is stored in the buffer memory 6 in the Fig. 1, and is supplied to the display apparatus or the printer. Fig. 13 shows the gray-scale pattern 42 which is generated by using the sampling pattern 21 which is positioned at the calibrated position Sx, Sy detected in the block 34 in the Fig. 3, without the shift of the particular row(s) and column(s) shown in the Fig. 12. Comparing the gray-scale pattern 41 with the gray-scale pattern 42, it is apparent that the readability of the uppermost horizontal line, the left vertical line and the right vertical line of the Kanji character is remarkably improved. In the operation in the Fig. 9, the position of the selected row(s) and/or column(s) of the sampling pattern at the calibrated position is shifted to the position at which the number of black pels in the selected row and/or column is the largest value. There has been described a method for generating a low resolution gray-scale pattern representing a high resolution original character image in accordance with the present invention comprises steps of: generating a sampling pattern having plural sampling windows arranged in columns and rows, the number of said columns and rows being determined by a ratio of said low resolution to said high resolution; sequentially positioning said sampling pattern at plural positions separated by a predetermined distance along a column direction on said original character image to count, at each position, the total number of black pels of all rows which is a sum of the number of black pels in a predetermined portion of each row of said sampling pattern; comparing the total number of black pels counted in each of said positions to detect a position at which the largest number of black pels is detected; positioning said sampling pattern at said detected position on said original character pattern; and counting the number of black pels in each sampling window of said sampling pattern to assign one of different gray-scale values to each sampling window. In the method of the present invention, a group of pel lines located at a centre portion of said sampling window is used to count the number of black pels in said row. In the method of the present invention, said sampling pattern is sequentially positioned at plural positions separated by one pel line. The method for generating a low resolution gray-scale pattern representing high resolution original character image in accordance with the present invention comprises steps of: generating a sampling pattern having plural sampling windows arranged in columns and rows, the number of said columns and rows being determined by a ratio of said low resolution to said high resolution; sequentially positioning said sampling pattern at plural positions separated by a predetermined distance along a column direction and a row direction on said original character image to count, at each position, the total number of black pels of all rows which is a sum of the number of black pels in a predetermined portion of each row and the total number of black pels of all columns which is a sum of the number of black pels in a predetermined portion of each column of said sampling pattern; comparing the total number of black pels counted at each of said positions to detect a position in a row direction at which the largest total number of black pels of said all columns is detected and a position in a column direction at which the largest total number of black pels of said all rows is detected; positioning said sampling window at said detected position on said original character pattern; and counting the number of black pels in each sampling window of said sampling pattern to assign one of different gray-scale values to each sampling window. The method for generating a low resolution gray-scale pattern representing a high resolution original character image in accordance with the present invention comprises steps of: generating a sampling pattern having plural sampling windows arranged in columns and rows, the number of said columns and rows being determined by a ratio of said low resolution to said high resolution; sequentially positioning said sampling pattern at plural positions separated by a predetermined distance along a column direction and a row direction on said original character image to count, at each position, the total number of black pels of all rows which is a sum of the number of black pels in a predetermined portion of each row and the total number of black pels of all columns which is a sum of the number of black pels in a predetermined portion of each column of said sampling pattern; comparing the total number of black pels counted at each of said positions to detect a position in a row direction at which the largest total number of black pels of said all columns is detected and a position in a column direction at which the largest total number of black pels of said all rows is detected; positioning said sampling window at said detected position on said original character pattern; counting the number of black pels in each row and column of said sampling pattern; comparing the number of black pels in each row to select row including the black pels larger than that of adjacent rows and comparing the number of black pels in each column to select column including the black pels larger than that of adjacent columns; sequentially position said selected row and column at plural positions separated by a predetermined distance along said column direction and said row direction, respectively on said original character image to count the number of black pels in said row and the number of black pels in said column at each position; comparing the number of black pels of said selected row at each position to defect a position in a column direction at which the largest number of black pels is detected and comparing the number of black pels of said selected column at each position to detect a position in a row direction at which the largest number of black pels is detected; shifting the positions of said selected row and column at said detected positions, respectively; and counting the number of black pels in each sampling window of said sampling pattern to assign one of different gray-scale values to each sampling window. The invention thus enables the poor quality or inferior readability of the gray-scale pattern generated from the high resolution original character image to be improved.

Claims: Image processing apparatus for generating a grayscale output image (30) from a binary input image, the input image being comprised of a plurality of pels each having one of two possible values associated therewith, the apparatus comprising: means for sampling the input image to assign grayscale values to a number of sampling windows (25A, 25C), said sampling windows (25A, 25C) forming a sampling pattern (21) each sampling window corresponding to a plurality of pels of the input image; characterised by means for determining a position, with respect to the binary input image, for the sampling pattern (21) such that the total number of pels having one of the two possible values associated therewith and falling into a predetermined portion of the sampling pattern (21) is maximised, said assignment being made with the sampling pattern (21) at the determined position. Image processing apparatus as claimed in claim 1 wherein said determining means comprises means for counting said pels having one of the two possible values associated therewith with the sampling pattern (21) at a number of positions with respect to the input image and means for comparing the counted numbers of pels to determine the position at which the counted number is a maximum. Image processing apparatus as claimed in claim 1 or claim 2 wherein the sampling windows (25A, 25C) are arranged in rows and columns to form the sampling pattern (21), the determining means comprising: means for determining, along the column direction, a position for the sampling pattern (21) such that the sum of the number of pels having said one of the values associated therewith falling in a predetermined portion of each row of the sampling pattern is maximised; means for determining, along the row direction, a position for the sampling pattern such that the sum of the number of pels having said one of the values associated therewith falling in a predetermined portion of each column of the sampling pattern is maximised. Image processing apparatus as claimed in claim 3 wherein said binary input image is an image of a character and wherein said sampling pattern (21) substantially covers said character, the apparatus including; means for detecting rows and/or columns having a greater number of pels having said one of the values associated therewith than the rows and/or columns adjacent thereto; means for determining an optimum position, with respect to the input image, for each said detected row and/or column such that the number of pels having said one of the values associated therewith falling into at least a portion thereof is maximised, the assignment of grayscale values for the sampling windows (25A, 25C) comprising said detected rows and/or columns being made with said rows and/or columns at their respective optimum positions, the assignment of grayscale values for sampling windows (25A, 25C) comprising other rows and/or columns being made at said determined position for the sampling pattern. A method for generating a grayscale output image from a binary input image, the input image being comprised of a plurality of pels each having one of two possible values associated therewith, by sampling the input image to assign grayscale values to a number of sampling windows (25A, 25C), said sampling windows (25A, 25C) forming a sampling pattern (21), the method comprising the step of: determining (32, 33, 34) a position, with respect to the binary input image, for the sampling pattern such that the total number of pels having one of two possible values associated therewith falling into at least a portion of the sampling pattern is maximised, said assignment being made (36) with the sampling pattern at the determined position. A method as claimed in claim 5 for generating a low resolution grayscale pattern representing a high resolution original character image comprising steps of: generating a sampling pattern having plural sampling windows arranged in columns and rows, the number of said columns and rows being determined by a ratio of said low resolution to said high resolution; in which the determining step comprises sequentially positioning (32, 33) said sampling pattern at plural positions separated by a predetermined distance along a column direction and a row direction on said original character image to count, at each position, the total number of black pels of all rows which is a sum of the number of black pels in a predetermined portion of each row and the total number of black pels of all columns which is a sum of the number of black pels in a predetermined portion of each column of said sampling pattern; comparing (34) the total number of black pels counted at each of said positions to detect a position in a row direction at which the largest total number of black pels of said all columns is detected and a position in a column direction at which the largest total number of black pels of all said rows is detected; positioning said sampling window at said detected position on said original character pattern; and counting (36) the number of black pels in each sampling window of said sampling pattern to assign one of different grayscale values to each sampling window. A method as claimed in claim 6, wherein a group of pel lines located at a centre portion of said sampling window is used to count the number of black pels in said row and column. A method as claimed in claim 6 or claim 7, wherein said sampling pattern is sequentially positioned at plural positions separated by one pel line.

Inventors: KOBIYAMA YOSHITAKA, KOBIYAMA, YOSHITAKA
Applicants: IBM, INTERNATIONAL BUSINESS MACHINES CORPORATION
Application year: 1991
Main classification: G09G1
IPC codes: G09G5, G06T11