Image processing using adjoining relationships between image parts

Abstract: The present invention carries out a desired image processing while using adjoining relationship between image parts. When each pair of image parts among a plurality of consecutive image parts drawn in a predefined drawing order have a difference in density value that is smaller than a threshold value and are located adjacent to one another, the consecutive image parts are recognized to constitute one combined image part. A desired image processing, such as trapping process, is carried out for the combined image part.

Description: BACKGROUND OF THE INVENTION Field of the Invention The present invention relates to a method of and an apparatus for determining adjoining relationships between a plurality of image parts. The present invention also relates to a method of and an apparatus for processing image data which include parts data representing a plurality of image parts that are drawn in a predefined drawing order while determining adjoining relationships between the plurality of image parts. Description of the Related Art EP 0 216 158 A2 discloses a method and means for analysing and labelling picture elements (pixels) in a raster-scanned image including utilising a fixed pixel labelling priority rule that takes into account near-neighbour frame border pixels that are not included in the currently-viewed portion of the image by substituting the inverse of the value of the current image pixel being labelled in place of undefined border pixels outside the viewed image portion. The method for analysing the connectivity of pixels in a raster-scanned image frame in a sequential manner utilising a predetermined fixed priority rule, comprises the steps of: analysing the connectivity of each component in the image by assessing the colour match of each component with respect to its causal neighbours with a fixed-size window; labelling each analysed component such that the same label is assigned to each component within a maximally connected group of components within the frame, any given component being labelled according to the fixed priority rule in the event that at least two causal neighbours have the same colour match; and in frame boundary fixed size windows having undefined neighbour components, substituting the inverse colour value of the component being labelled in the places of said undefined neighbour components. EP 0 261 447 A2 discloses an apparatus and method for determining connected substructures within a body. The system and method are particularly advantageous for use in medical diagnostic imaging applications. In particular, three dimensional regions exhibiting the same tissue type are similarly labeled. The system and method of the present invention is operable in any situation in which three dimensional signal patterns representing the value of one or more physical properties associated with the substructures within a body at regularly spaced grid locations within the body are presented. A subset of the original data may then be provided to a display processor, particularly one employing gradient normal shading for display of three dimensional images. Even more particularly, the present invention is related to a method and system for determining equivalence classes of objects, the objects typically comprising one or two dimensional connected regions found in a planar slice of data from magnetic resonance imaging or x-ray tomography systems. E.L. Hall et al. "Object location in computed tomography images using global local segmentation" in Computer society conference on pattern recognition and image processing, Chicago, 6-8 August 1979, IEEE, pages 344-352, XP000601581 discloses that object location in computed tomography images is a preliminary step required for many automated measurements which may be useful in many diagnostic procedures. Most object location, image processing techniques are either globally based such as histogram segmentation or locally based such as edge detection. The method described in this paper uses both local and global information for object location. The technique has been applied to the location of suspected tumors in CT lung and brain imager. Sorting and merging steps are required eliminating noise regions but all suspected tumor regions have been located. Measurements such as boundary roughness or density statistics may also be made on the objects and used to further identify suspicious regions for further study by the radiologists. The significance of this technique is that it demonstrates an important additional capability which could be added to the software libraries of most CT systems. US-A-5313570 describes techniques for rendering a structured graphic image that compensate for printing plate misregistration. A boundary map is determined that defines the set of boundaries between adjacent polygon regions. Then a trapping map is defined as a set of strokes having a given width, fill characteristics and offset. The offset in particular has the effect that the colour of the region from which the offset occurs is spread towards the region to which the offset occurs. In the field of prepress processing, one image generally consists of a plurality of image parts. When two image parts are located adjacent to each other, an overlapping area (may also be referred to as 'trapping area' or 'overlaying area') is formed on a boundary between the adjoining image parts, in order to prevent a dropout from being observed on the boundary. In order to generate a trapping area, it is required first to determine which pair of image parts among the plurality of image parts adjoin to each other. The expression image parts adjoining to each other' means that the image parts are in close contact with each other without any clearance on at least part of the boundary between the image parts, or they overlap each other at least partially. Figs. 13A-13C show a known method of determining adjoining relationships between a plurality of image parts. In the conventional process of determining an adjoining relationship between two image parts shown in Fig. 13A, it is first determined whether the circumscribed rectangles of the respective image parts shown by the broken lines in Fig. 13B overlap each other. When the circumscribed rectangles overlap each other, the two image parts may adjoin to each other. It is then determined whether vectors representing the contours of the respective image parts cross each other as shown in Fig. 13C. When the contour vectors cross each other or partially overlap each other, the two image parts are determined to adjoin to each other. It is here assumed that one general image consists of N pieces of image parts and that the contour of each image part consists of 'n' pieces of vectors. The processing time required for determining the overlapping relationships between the respective pairs of circumscribed rectangles of the N image parts is in proportion to the number N of the image parts. The processing time required for determining whether the contour vectors of the two image parts cross each other is in proportion to the second power of the number 'n' of the contour vectors. Namely the total processing time required for extracting all the possible combinations of two image parts from the N image parts and determining whether the contour vectors cross each other for all the possible combinations is expected to be substantially in proportion to n 2 xN 2 . In the conventional method discussed above, as the number N of the image parts or the number n of the vectors constituting the contour vector of each image part increases, the required processing time remarkably increases in proportion to the second power of the increased number. An extremely long time is required for the processing especially when the number N of image parts is as large as tens or hundreds of thousands. Incidentally, in DTP (desktop publishing) applications using a computer system, a group of consecutive figures having a fixed rate of density variation sometimes creates an image area having a substantially continuous gradation in density. This group of consecutive figures is generally referred to as a 'blend', 'blend figure' or 'color step'. Although each figure included in the blend figure represents one individual figure, the group of figures is drawn to generate an image area having a substantially continuous change in density. In some cases, a trapping area is required to be formed on a boundary between a blend figure and another image part. Image data (for example, a page description language such as PostScript (trademark of Adobe Corporation)), however, do not include information showing that the image part is part of the blend figure. In the conventional method, the trapping process is accordingly carried out between each image part included in the blend figure and another image part not included in the blend figure. This undesirably increases the processing time required for creating a trapping area. This problem is not characteristic of the trapping process but is found in a variety of image processing operations with respect to the blend figure. SUMMARY OF THE INVENTION An object of the present invention is thus to provide an improved technique which alleviate the increase in required processing time even when the number of image parts increases remarkably. Another object of the present invention is thus to provide an improved technique which carries out a desired image processing without processing the respective image parts included in a blend figure separately. The above objects are at least partially attained by a method as set out in the appended claims of determining adjoining relationships between a plurality of image parts according to the present invention. The method comprises the steps of: (a) generating bit map images by allocating different pixel values to the plurality of image parts, and filling the inside of the contour of each the image part with the allocated pixel value; and (b) examining pixel values of neighboring pixels in the bit map images, and recognizing adjoining relationship between image parts including the neighboring pixels when the neighboring pixels have different allocated pixel values, wherein two image parts are determined to adjoin to each other if a distance between true boundaries of said two image parts is less than half a resolution of said two image parts. According to the above method, only the processing time for bit-mapping increases as the number of image parts increases. Therefore the increase of the overall processing time is much smaller than that of the conventional method even when the number of image parts increases remarkably. In a preferred embodiment, the pixel values are drawing orders of the plurality of image parts. In another embodiment, the method further comprises the step of: specifying resolution of the bit map images before the step (a); and wherein the generating in the step (a) generates the bit map images with the resolution. According to an aspect of the preset invention, the step (a) comprises the step of successively writing the bit map images into one bit map memory in a drawing order of the plurality of image parts; and the step (b) comprises the step of examining pixel values of neighboring pixels in the bit map images written in the bit map memory. According to another aspect of the present invention, the method comprises the steps of: (a) recognizing consecutive image parts in the drawing order in the plurality of image parts to constitute one combined image part when each pair of image parts among the consecutive image parts adjoins to each other and a difference in density between the pair is smaller than a predetermined threshold value; and (b) carrying out a specific image processing for the combined image part. This method enables a desired image processing to be carried out without separately processing the respective image parts which have been formed to constitute one combined image part. In a preferred embodiment, the step (b) comprises the steps of: creating a trapping area, in which a density value of the combined image part being combined with a density value of another image part adjoining to the combined image part, on a boundary between the combined image part and the another image part; and generating a trapping area part by determining a density value of the trapping area based on a relationship between density values of the consecutive image parts constituting the combined image part and the density value of the another image part. In another embodiment, the step (a) comprises the steps of: (1) generating bit map images by allocating different pixel values to the plurality of image parts and by filling the inside of a contour of each the image part with the allocated pixel value, and writing the bit map images in a bit map memory; (2) examining whether neighboring pixels in the bit map images have different pixel values or not; and (3) recognizing adjoining relationship between image parts including the neighboring pixels when the neighboring pixels have different pixel values. This method enables a trapping area to be created on the boundary between the combined image part and another image part with a relatively short processing time. The present invention is also directed to an apparatus as set out in the appended claims for determining adjoining relationships between a plurality of image parts. The apparatus comprises: bit-mapping means for generating bit map images by allocating different pixel values to the plurality of image parts, and filling the inside of the contour of each the image part with the allocated pixel value; and recognizing means for examining pixel values of neighboring pixels in the bit map images, and recognizing adjoining relationship between image parts including the neighboring pixels when the neighboring pixels have different allocated pixel values, wherein two image parts are determined to adjoin to each other if a distance between true boundaries of said two image parts is less than half a resolution of said two image parts. According to an aspect of the present invention, the apparatus comprises: recognizing means for recognizing consecutive image parts in the drawing order in the plurality of image parts to constitute one combined image part when each pair of image parts among the consecutive image parts adjoins to each other and a difference in density between the pair is smaller than a predetermined threshold value; and processing means for carrying out a specific image processing for the combined image part. The present invention is further directed to a computer readable medium as set out in the appended claims having computer readable program code means embodied therein for determining adjoining relationships between a plurality of image parts. The computer program code means comprises: computer program code means for causing a computer to generate bit map images by allocating different pixel values to the plurality of image parts, and to fill the inside of the contour of each the image part with the allocated pixel value; and computer program code means for causing the computer to examine pixel values of neighboring pixels in the bit map images, and to recognize adjoining relationship between image parts including the neighboring pixels when the neighboring pixels have different allocated pixel values, wherein two image parts are determined to adjoin to each other if a distance between true boundaries of said two image parts is less than half a resolution of said two image parts. According to another aspect of the present invention, the computer program code means comprises: computer program code means for causing a computer to recognize consecutive image parts in the drawing order in the plurality of image parts to constitute one combined image part when each pair of image parts among the consecutive image parts adjoins to each other and a difference in density between the pair is smaller than a predetermined threshold value; and computer program code means for causing the computer to carry out a specific image processing for the combined image part. The present invention is also directed to a computer for operating in accordance with said computer program code as defined in the appended claims. These and other objects, features, aspects and advantages of the present invention will become more apparent from the following detailed description of the preferred embodiments with the accompanying drawings. BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is a block diagram illustrating the structure of an image processing apparatus for processing images embodying the present invention; FIGS. 2A through 2F show general processing steps of the embodiment; FIGS. 3A through 3F show a concrete procedure of the processing executed in the embodiment; FIG. 4 is a flowchart showing a blend recognizing process routine; FIGS. 5A and 5B show a concrete procedure of the trapping process; FIG. 6 is a flowchart showing a routine of extracting adjoining relationships between a plurality of image parts; FIGS. 7A through 7D show a concrete procedure of the adjoining relationship extracting process; Fig. 8 is a flowchart showing details of the processing executed at step S13 in the flowchart of Fig. 6; Figs. 9A and 9B show a concrete procedure of the processing executed at step S23; Fig. 10 shows the resolution of adjoining relationships; Figs. 11a and 11b show a method of dividing a total image into a plurality of areas and bit-mapping the respective divisional areas one by one in the bit map memory 30; Fig. 12 is a flowchart showing another blend recognizing process routine; and Figs. 13A through 13C show a conventional method of determining adjoining relationships between a plurality of image parts. DESCRIPTION OF THE PREFERRED EMBODIMENT A. Structure and Operation of Embodiment one preferable mode for embodying the present invention is described below. Fig. 1 is a block diagram illustrating the structure of an image processing apparatus for processing images, to which one embodiment of the present invention is applied. The image processing apparatus includes a CPU 22, a bus 24 , a ROM 2 6 and a RAM 28 working as main memories, a bit map memory 30, a first I/O interface 34, a display control unit 42, and a second I/O interface 46. A keyboard 36 and a mouse 38 functioning as input means are connected to the first I/O interface 34. A color CRT 44 working as display means connects with the display control unit 42. A magnetic disk 48 working as an external storage device is connected to the second I/O interface 46. RAM 28 stores computer program codes for implementing the functions of bit map drawing means 50, adjoining relationship extracting means 52, blend recognizing means 54, and trapping means 56. In other words, the CPU 22 executes the computer program codes to implement the functions of the respective means. Details of the functions of these means will be described later. The computer program codes (or applications programs) for realizing the functions of the respective means are transmitted from a portable storage medium (carriable storage medium), such as floppy disks or CD-ROMs, to the RAM 28 or the magnetic disk 48, and stored in the RAM 28 when being executed. Fig. 2 shows general processing steps of the embodiment, and Fig. 3 shows a concrete procedure of the processing executed in the embodiment. In this embodiment, image data are in form of a PostScript file as shown in Figs. 2A and 3A. Parts data of seven image parts P1 through P7 are included in a data list of the PostScript file as shown in Figs. 2B and 3B. Each image part is also referred to as 'object'. Referring to Fig. 3B, in the first through the sixth image parts P1 to P6, the density of the C (cyan) separation ranges from 10% to 20%, whereas the densities of the other color separations of Y (yellow), M (magenta), and K (black) are all equal to 0%. The seventh image part P7 has the density of 20% in the Y separation and the density of 0% in the other color separations of M, C, and K. Fig. 3C shows a total image obtained by drawing the seven image parts P1 through P7. The densities of the six image parts P1 to P6 are varied by a common difference of 2% as shown in Fig. 3B. These six image parts P1 to P6 successively adjoin to one another as shown in Fig. 3C. This means that the six image parts P1 to P6 are formed to constitute a blend figure. Note that the data file of the PostScript file does not include information showing that the six image parts P1 to P6 constitute a blend figure. At the step of Fig. 2C, the bit map drawing means 50 and the adjoining relationship extracting means 52 execute a process of extracting image parts adjoining to each other and creates an adjoining relationship list of the image parts. The expression 'image parts adjoining to each other' means that the image parts are in close contact with each other without any clearance on at least part of the boundary between the image parts, or they overlap each other at least partially. In the example of Fig. 3C, the first image part P1 adjoins only to the second image part P2. The seventh image part P7 adjoins to the second through the sixth image parts P2 to P6. The adjoining relationship list shown in Fig. 2C indicates adjoining relationships between these image parts. The numerals in the left column of the adjoining relationship list represent the drawing order of the image parts, whereas the numerals in the right column show the drawing order of the image parts which adjoin to the image part defined by the numeral in the left column. Details of the process of extracting adjoining relationships will be described later. At the step of Fig. 2D, the blend recognizing means 54 carries out a blend recognizing process to recognize that the six image parts P1 through P6 constitute a blend figure. Fig. 4 is a flowchart showing a blend recognizing process routine. When the program enters the routine, the blend recognizing means 54 extracts two consecutive pieces of parts data from the data list at step S1. When it is determined that two pieces of parts data have been extracted successfully at step S2, the program proceeds to step S3, at which the blend recognizing means 54 calculates a difference in density between the image parts expressed by the two pieces of parts data and subsequently determines whether the difference is equal to or less than a predetermined threshold value Th. A value of approximately 3% is, for example, preferable for the threshold value Th. The first two image parts P1 and P2 shown in Fig. 3B have the density difference of 2%, which is smaller than the threshold value Th (=3%). The difference in density is calculated for all the color components Y, M, C, and K. The decision step S3 gives an affirmative answer when the density differences of the color components AY, ΔM, ΔC, and ΔK are all equal to or less than the threshold value Th. Different threshold values Th may be set for the respective color components. When the density differences of the respective color components ΔY, ΔM, ΔC, and ΔK are all equal to or less than the threshold value Th, the program proceeds to step S4 in the flowchart of Fig. 4, at which it is determined whether the two image parts adjoin to each other or not. The determination whether the two image parts adjoin to each other is carried out by referring to the adjoining relationship list (Fig. 2C) obtained in the process of extracting adjoining relationships between the plurality of image parts. For example, the adjoining relationship between the first two image parts P1 and P2 is registered in the adjoining relationship list, and the decision point S4 accordingly gives an affirmative answer. When the affirmative answer is given both at steps S3 and S4, that is, when the difference in density between the two image parts is not greater than the threshold value Th and the two image parts adjoin to each other, it is determined that these two image parts constitute a blend figure (step S5). After the processing of step S5, the program returns to step S1, at which the blend recognizing means 54 updates the parts data by one piece. By way of example, after the processing of steps S1 through S5 has been completed for the first two image parts P1 and P2, another piece of parts data representing the third image part P3 is extracted instead of the parts data representing the first image part P1 at the next cycle of step S1. The processing of step S2 and subsequent steps is then executed for the second and the third image parts P2 and P3. When the processing of steps S1 through S5 in the flowchart of Fig. 4 has been completed for all the possible combinations of the two consecutive image parts, it is recognized that the first six image parts P1 through P6 constitute one blend figure as shown in Fig. 2E and that the seventh image part P7 is an independent image part. A flag showing that the image part is a constituent of a blend figure is added to each parts data of the image parts P1-P6, which are recognized as part of the blend figure. The flag may be replaced by any other type of information as long as it indicates that the image part is a constituent of the blend figure. In the process of recognizing a blend figure, the expression 'a plurality of consecutive image parts adjoining to one another' does not require that an arbitrary pair among the plurality of image parts adjoins to each other but implies that two consecutive image parts adjoin to each other. In this sense, the six consecutive image parts P1 through P6 shown in Fig. 3C adjoin to one another. After the recognition of a blend figure, the trapping means 56 carries out a trapping process of the image (Fig. 2F). As discussed below, the blend figure is processed virtually as one image part in the trapping process. The blend figure is thus hereinafter referred to as either 'combined image part' or 'virtual image part'. Fig. 5 shows a concrete procedure of the trapping process with respect to the combined image part and another image part. In the trapping process, it is first determined whether the combined image part TP of the blend figure shown in Fig. 5A adjoins to another image part P7. When the adjoining relationship list (Fig. 2C) indicates that the image part P7 adjoins to at least one of the image parts P1 through P6 constituting the combined image part TP, it is determined that the image part P7 and the combined image part TP adjoin to each other. In case that the two image parts P7 and TP adjoin to each other, the trapping process is carried out to generate a trapping area RR in the vicinity of a boundary BR between these two image parts P7 and TP (Fig. 5A). The trapping process generally determines the configuration and density of the trapping area in the manner that one image part having a lighter color among the two image parts expands into the area of the other image part having a darker color. In the trapping process of this embodiment, it is assumed that the intensities of the color components increase in the order of Y<M<C<K. (Note that the density values are independent of the intensities of the color components.) The densities of the respective color components Y, M, C, and K are examined for the two image parts P7 and TP which are the target of the trapping process. The area of one image part having a non-zero density of the lowest intensity color component is expanded into the area of the other image part. In this example, the densities of the image part P7 are Y=20% and M=C=K=0%, whereas those of the combined image part TP are C=10% to 20% and Y=M=K=0%. Since the Y component in which the image part P7 has a non-zero density has the lowest intensity, the trapping area RR is formed to extend from the border BR between the two image parts P7 and TP to the outside of the image part P7 (in other words, formed inside the combined image part TP) as shown in Fig. 5A. The trapping area RR can be produced by expanding the contour of the image part P7. After determining the configuration of the trapping area RR, the trapping means 56 determines the densities of the respective color components in the trapping area RR as shown in Fig. 5B. The non-zero densities of the respective color components of the original image part TP originally existing on the location of the trapping area RR are kept unchanged in the trapping area RR, whereas the density of the color component of the lowest intensity in the other image part is newly adopted in the trapping area RR. In the example of Fig. 5B, the trapping area RR consequently includes five areas RR2 through RR6 having different densities. The area RR2 has the densities of C=12% and Y=20% obtained by combining the non-zero density of the original image part P2 (C=12%) with the non-zero density of the image part P7 (Y=20%). The area RR3 has the densities of C=14% and Y=20% obtained by combining the non-zero density of the original image part P3 (C=14%) with the non-zero density of the image part P7 (Y=20%). The other areas RR4 through RR6 also have the densities obtained in this manner. The trapping area RR created in the above manner is handled as one independent image part, and the parts data of the trapping area RR are added to the data list. Generally in the trapping process, the configuration of the trapping area is obtained by executing expansion or contraction of one of the two target image parts. The density values of the trapping area are then determined according to the density values of the two target image parts. There are a variety of known methods for realizing the trapping process other than that discussed above. The variety of methods are also applicable to the trapping process in the present invention. Fig. 3E shows the result of the trapping process obtained by carrying out the blend recognizing process of the embodiment as discussed above. Fig. 3F shows the result without the blend recognizing process. In the latter case without the blend recognizing process, the trapping process is carried out between each of the image parts P1 through P6 constituting the blend figure and the seventh image part P7. The contour of the resulting trapping area may accordingly have undesired unevenness as shown in Fig. 3F. In the former case with the blend recognizing process, on the other hand, the plurality of image parts constituting the blend figure are recognized as one combined image part, so that the resulting trapping area has the smooth contour. In the case with the blend recognizing process, the configuration of the trapping area can be obtained by only one step of contour expansion or contraction. The required processing time is thus significantly shorter than that in the case without the blend recognizing process. B. Process of Extracting Adjoining Relationships between Plurality of Image Parts Fig. 6 is a flowchart showing a routine of extracting adjoining relationships between a plurality of image parts, and Figs. 7A-7D show a concrete procedure of the adjoining relationship extracting process. For the matter of convenience, in this example, it is assumed that a total image consists of four image parts P1 through P4 as shown in Fig. 7A. Parts data of each image part includes contour data representing the contour of each image part and an order of drawing, according to which each image part is to be drawn. A variety of data formats may be applicable to the parts data, such as PostScript. When the page description language is used for the parts data of the respective image parts, the order of arranging the parts data directly corresponds to the order of drawing. Referring to the flowchart of Fig. 6, at step S11, the operator specifies the resolution of bit map images, which is used in the process of bit-mapping each image part, with the keyboard 36 or the mouse 38. The 'resolution of bit map images' represents the width of one pixel in each bit map image. In this embodiment, it is assumed that the resolution is set equal to 0.2 mm. The program then proceeds to step S12, at which the bit map drawing means 50 (Fig. 1) develops bit-map images of the respective image parts and successively writes the resulting bit map images into the bit map memory 30. Figs. 7B and 7C show the details of the bit map drawing process. In accordance with a concrete procedure, the bit map drawing means 50 generates bit map images (Fig. 7B) by allocating different characteristic pixel values to the respective image parts P1 to P4 and filling the inside of the contour of each image part with the allocated characteristic pixel value, and successively writes the resulting bit map images into the bit map memory 30 in a predetermined drawing order. In this embodiment, numerals 1 to 4 representing the drawing order are respectively allocated as the pixel values of the image parts P1 to P4. The total image of Fig. 7C thus obtained is hereinafter referred to as the 'total bit map image ' or simply as the 'bit map image'. Referring back to the flowchart of Fig. 6, at step S13, the adjoining relationship extracting means 52 extracts adjoining relationships between the plurality of image parts and creates an adjoining relationship list of the image parts shown in Fig. 7D. Fig. 8 is a flowchart showing the details of the processing executed at step S13 in the flowchart of Fig. 6. Coordinates (x,y) of a target pixel to be processed are initialized to (0,0) at step S21, and the pixel value of the coordinates (x,y) (that is, the pixel value of the target pixel) is read from the bit map memory 30 at step S22. The coordinates 'x' and 'y' respectively correspond to addresses in the horizontal direction and in the vertical direction in the bit map memory 30. The program then proceeds to step S23, at which it is determined whether the pixel value of an adjoining pixel adjacent to the target pixel is different from the pixel value of the target pixel. Figs. 9A and 9B show a concrete procedure of the processing executed at step S23. Fig. 9B is an enlarged view showing part of the total bit map image shown in Fig. 9A. Each square block in Fig. 9B corresponds to one pixel, and the number in each pixel block represents the pixel number allocated to each pixel. In the drawing of Fig. 9B, the pixel value of the target pixel is enclosed with a circle, whereas the pixel values of the adjoining pixels are enclosed with rhombuses. In this embodiment, the adjoining pixels whose pixel values are checked at step S23 are pixels having the coordinates (x+1,y) and (x,y+1). Namely the adjoining pixels checked at step S23 are pixels located on the right hand side of and immediately below the target pixel. The coordinates (x,y) of the target pixel are varied over the whole coordinate range of the total bit map image. This procedure enables the pixel value of each pixel to be compared with the pixel values of the adjoining pixels located immediately above and below and on the right hand side and left hand side of the pixel. When some pixel value of the adjoining pixels is different from the pixel value of the target pixel, the program proceeds to step S24 in the flowchart of Fig. 8, at which the set of pixel values of the target pixel and the adjoining pixel are registered into the adjoining relationship list. Referring to Fig. 7D, the pixel values of the adjoining pixels adjacent to each pixel are registered in the adjoining relationship list. In the example of Fig. 9B, since the pixel value '2' of the target pixel is different from the pixel value '1' of the adjoining pixel, the value '1' is registered as the pixel value adjoining to the pixel value '2' is registered whereas the value '2' is registered as the pixel value adjoining to the pixel value '1' in the adjoining relationship list of the image parts. Referring back to the flowchart of Fig. 8, at step S25, it is determined whether the processing has been completed for all the pixels included in the total bit map image. When the processing has not yet been completed, the program proceeds to step S26 at which the coordinates (x,y) of the target pixel are updated and then returns to step S22. The repeated execution of steps S22 through S26 completes the adjoining relationship list of the image parts with respect to the total bit map image. As discussed above, in this embodiment, the pixel values allocated to the respective image parts P1 to P4 in the bit map image are identical with the numerals representing the drawing order of the image parts P1 to P4. This feature enables the adjoining relationships between the respective image parts to be determined based on the adjoining relationship list of the image parts (see Fig. 7D) and the parts data of the respective image parts which includes the drawing order. As long as different pixel values are allocated to fill the inside of the contours of the respective image parts (that is, as long as respective pixel values are uniquely related to the respective image parts), the allocated pixel values may be other values which are different from the drawing order of the image parts. In case that the bit map image is generated with the pixel values which are not the drawing order, it would be required to store information which represents the relationship between the respective image parts and the pixel values allocated to the bit map images of the respective image parts. Fig. 10 shows the resolution of adjoining relationships in this embodiment. The 'resolution of adjoining relationships' represents the distance between the image parts for which an adjoining relationship is affirmed. In the drawing of Fig. 10, each square block defined by the solid lines corresponds to one pixel. The one-dot chain line shows a true boundary BR1 of a first image part Q1, and the two-dot chain line a true boundary BR2 of a second image part Q2. The areas specified as Q1 and Q2, which are filled with slant lines, represent the areas of the first image part and the second image part in the respective bit map images. The boundary between the bit map images of these image parts is set on the boundary of the pixels having a specified resolution (or pixel width) Rb. When a distance 'd' between the true boundaries BR1 and BR2 of the two image parts Q1 and Q2 is greater than half the resolution Rb of bit map images as in the example of Fig. 10, there is a one-pixel clearance between the two image parts in their bit map images. It is accordingly determined that the two image parts do not adjoin to each other. When the distance 'd' between the true boundaries BR2 and BR2 is equal to or less than half the resolution Rb of bit map images, the one-bit clearance does not exist between the two image parts in their bit map images. It is accordingly determined that the two image parts adjoin to each other. This means that a resolution Rn of adjoining relationships is half the resolution Rb of bit map images. Since the resolution Rn of adjoining relationships is half the resolution Rb of bit map images, the operator can set the resolution Rb of bit map images according to a desired resolution Rn of adjoining relationships. By way of example, in case that a relatively low resolution of adjoining relationships is allowable (that is, when the resolution Rn can be a relatively large value), a relatively large value (for example, 0.3 mm) is set for the resolution Rb of bit map images. This effectively shortens the processing time required for bit-mapping. In case that a relatively high resolution of adjoining relationships is desirable (that is, when the resolution Rn should be a relatively small value), a relatively small value (for example, 0.1 mm) is set for the resolution Rb of bit map images. There are some cases in which the total bit map image can not be written concurrently into the bit map memory 30 because of the resolution of bit map images or the size of the total image. In such cases, the total image is divided into a plurality of areas R1 through R9 as shown in Fig. 11a. The divisional areas are bit-mapped in the bit map memory 30 one by one and then subjected to the adjoining relationship extracting process shown in the flowchart of Fig. 8. When part of the boundary of the division coincides with adjoining portions of image parts, the simple division of the total image may cause unsuccessful detection of the adjoining relationship between the image parts having the adjoining portions. The division should accordingly be carried out in the manner that divisional areas adjacent to each other have an overlapping area of at least one pixel-width therebetween. Fig. 11b is an enlarged view showing the vicinity of the boundaries of the divisional areas R2, R3, R5, and R6. Each lattice in the drawing represents one pixel. The divisional area R2 has boundaries defined by the broken lines L25 and L23; the divisional area R3 has boundaries defined by the broken lines L36 and L23; the divisional area R5 has the boundaries defined by the broken lines L25 and L56; and the divisional area R6 has the boundaries defined by the broken lines L36 and L56. In this manner, the pixels on the line 'x' or the column 'y' are included in at least two divisional areas adjoining to each other. Division of the total image by setting an overlapping area of at least one pixel-width enables the adjoining image parts to be extracted without failure. In the above embodiment, the total bit map image is generated by filling the inside of the contour of each image part with a specific pixel value and successively writing the resulting bit map images into one bit map memory 30. The adjoining image parts are then extracted by comparing the pixel values of the adjoining pixels with each other in the total bit map image. This method only increases the time required for bit-mapping each image part with an increase in number of image parts. The increase in processing time required for the determination of adjoining relationships is thereby restricted to a significantly lower level than that of the conventional technique, which extracts the adjoining relationships based on the existence of intersection of the contour vectors corresponding to the respective image parts. The preferred embodiment of the present invention may be modified, for example, as follows: (1) In the process of extracting the adjoining image parts, instead of the pixel values of the adjoining pixels which are horizontally or vertically adjoining to the target pixel as shown in Fig. 9, the pixel values of the adjoining pixels which are diagonally, horizontally, or vertically adjoining to the target pixel may be compared with the pixel value of the target pixel. In other words, the pixel values of the eight-neighbor pixels of each target pixel can be examined instead of the pixel values of the four-neighbor pixels of the target pixel. (2) The blend recognizing process routine shown in Fig. 4 may be replaced by another blend recognizing process routine shown in the flowchart of Fig. 12. The latter blend recognizing process routine includes the additional steps to enable a plurality of consecutive image parts, such as characters, which are different from the actual blend figure and have an identical density, not to be recognized as the constituents of the blend figure. In the actual blend figure, however, two consecutive image parts may have an identical density when the number of tone variation steps is great enough. In this processing routine, when three or more image parts have an identical density, these image parts are excluded from the target of recognition as the blend figure. The concrete processing steps are described according to the blend recognizing process routine of Fig. 12. When the program enters the routine, the blend recognizing means 54 extracts three consecutive pieces of parts data from the data list at step S31. When it is determined that three pieces of parts data have been extracted successfully at step S32, the program proceeds to step S33, at which the blend recognizing means 54 determines whether the three pieces of parts data have an identical density. When at least one piece of parts data among the three pieces has a density different from those of the other pieces of parts data, the program proceeds to step S34. It is determined at step S34 whether the difference in density between the first and the second pieces of parts data is equal to or less than a predetermined threshold value Th. When the density difference is not greater than the predetermined threshold value Th, the program proceeds to step S35, at which it is determined whether the difference in density between the second and the third pieces of parts data is equal to or less than the predetermined threshold value Th. When the density difference is not greater than the predetermined threshold value Th, the program goes to step S36. When it is determined that the first piece and the second piece of parts data adjoin to each other and the second piece and the third piece of parts data adjoin to each other at step S36, the program goes to step S37 to recognize the image parts expressed by the three pieces of parts data as constituents of a blend figure. Namely, the image parts that fulfill all the four conditions of determination at steps S33 through S36 are recognized as the constituents of a blend figure, whereas the image parts that do not fulfill any one of the four conditions are not recognized as the constituents of a blend figure.After the blend recognizing process, the program returns to step S31 to update the three consecutive pieces of parts data, that is, specifying the second and the third pieces among the three consecutive pieces of parts data extracted in the previous cycle as the new f irst and the second pieces and a subsequent piece of parts data as the new third piece, and repeats the processing of step S32 and the subsequent steps.This processing routine effectively prevents the image parts that do not constitute a blend figure from being mistakenly recognized as the constituents of the blend figure. (3) Upon condition that two consecutive image parts constituting a blend figure always have different densities, the criterion of determination at step S3 in the blend recognizing process routine of Fig. 4 can be changed to "whether the difference in density is not greater than the predetermined threshold value Th nor equal to zero." Like the blend recognizing process routine shown in the flowchart of Fig. 12, this criterion effectively prevents the image parts that do not constitute a blend figure from being mistakenly recognized as the constituents of the blend figure. Although the present invention has been described and illustrated in detail, it is clearly understood that the same is by way of illustration and example only and is not to be taken by way of limitation, the scope of the present invention being limited only by the terms of the appended claims. The features disclosed in the foregoing description, in the claims and/or in the accompanying drawings may, both separately and in any combination thereof, be material for realising the invention in diverse forms thereof.

Claims: A method of determining adjoining relationships between a plurality of image parts, said method comprising the steps of: (a) generating bit map images by allocating different pixel values to said plurality of image parts, and filling the inside of the contour of each said image part with the allocated pixel value; and (b) examining pixel values of neighbouring pixels in said bit map images, and recognizing adjoining relationships between image parts including said neighbouring pixels when said neighbouring pixels have different allocated pixel values, wherein two image parts are determined to adjoin to each other if a distance between true boundaries of said two image parts is less than half a resolution of said two image parts. A method according to claim 1, wherein said pixel values are drawing orders of said plurality of image parts. A method according to claim 1 or claim 2, further comprising the step of: specifying resolution of said bit map images before staid step (a); and wherein said generating in said step (a) generates said bit map images with said resolution. A method in accordance with any one of the preceding claims, wherein: said step (a) comprises the step of successively writing said bit map images into one bit map memory in a drawing order of said plurality of image parts; and said step (b) comprises the step of examining pixel values of neighbouring pixels in said bit map images written in said bit map memory. A method according to claim 1, wherein said image data comprising parts data representing a plurality of image parts that are drawn in a predefined drawing order, said method comprising the steps of: (a) recognizing consecutive image parts in said drawing order in said plurality of image parts to constitute one combined image part when each pair of image parts among said consecutive image parts adjoins to each other and a difference in density between said pair is smaller than a predetermined threshold value; and (b) carrying out a specific image processing for said combined image part, comprising the steps of: creating a trapping area, in which a density value of said combined image part being combined with a density value of another image part adjoining to said combined image part, on a boundary between said combined image part and said another image part; and generating a trapping area part by determining a density value of said trapping area based on a relationship between density values of said consecutive image parts constituting said combined image part and the density value of said another image part. A method in accordance with claim 5, wherein said step (a) comprises the steps of: (1) generating bit map images by allocating different pixel values to said plurality of image parts and by filling the inside of the contour of each said image part with the allocated pixel value, and writing said bit map images in a bit map memory; (2) examining whether neighbouring pixels in said bit map images have different pixel values or not; and (3) recognizing adjoining relationships between image parts including said neighbouring pixels when said neighbouring pixels have different pixel values. A method in accordance with claim 6, wherein said pixel values are the drawing orders of said plurality of image parts. A method in accordance with claim 6 or claim 7, further comprising the step of: specifying resolution of said bit map images before said step (1); and wherein said generating in said step (1) generates said bit map images with said resolution. An apparatus for determining adjoining relationships between a plurality of image parts, said apparatus comprising: bit mapping means for generating bit map images by allocating different pixel values to said plurality of image parts, and filling the inside of the contour of each said image part with the allocated pixel value; and recognizing means for examining pixel values of neighbouring pixels in said bit map images, and recognizing adjoining relationship between image parts including said neighbouring pixels when said neighbouring pixels have different allocated pixel values, wherein two image parts are determined to adjoin to each other if a distance between true boundaries of said two image parts is less than half a resolution of said two image parts. An apparatus according to claim 9, wherein said pixel values are drawing orders of said plurality of image parts. An apparatus according to claim 9 or claim 10, further comprising: means for specifying resolution of said bit map images; and wherein said bit-mapping means comprises means for generating said bit map images with said resolution. An apparatus in accordance with any one of claims 9 to 11, wherein: said bit-mapping means comprises means for successively writing said bit map images into one bit map memory in a drawing order of said plurality of image parts; and said recognizing means comprises means for examining pixel values of neighbouring pixels in said bit map images written in said bit map memory. An apparatus according to claim 10, wherein said image data comprising parts data representing a plurality of image parts that are drawn in a predefined drawing order, said apparatus comprising: recognizing means for recognizing consecutive image parts in said drawing order in said plurality of image parts to constitute one combined image part when each pair of image parts among said consecutive image parts adjoins to each other and a difference in density between said pair is smaller than a predetermined threshold value; and processing means for carrying out a specific image processing for said combined image part, wherein said processing means comprises: means for creating a trapping area, in which a density value of said combined image part being combined with a density value of another image part adjoining to said combined image part, on a boundary between said combined image part and said another image part; and means for generating a trapping area part by determining a density value of said trapping area based on a relationship between density values of said consecutive image parts constituting said combined image part and the density value of said another image part. An apparatus according to claim 13, wherein said recognizing means comprises: means for generating bit map images by allocating different pixel values to said plurality of image parts and by filling the inside of a contour of each said image part with the allocated pixel value, and writing said bit map images in a bit map memory; means for examining whether neighbouring pixels in said bit map images have different pixel values or not; and means for recognizing adjoining relationship between image parts including said neighbouring pixels when said neighbouring pixels have different pixel values. An apparatus according to claim 14, wherein said pixel values are the drawing orders of said plurality of image parts. An apparatus according to claim 14 or claim 15, further comprising: means for specifying resolution of said bit map images, and wherein said means for generating bit map images comprises means for generating said bit map images with said resolution. A computer readable medium having computer readable program code means embodied therein for determining adjoining relationships between a plurality of image parts, said computer program code means comprising: computer program code means for causing a computer to generate bit map images by allocating different pixel values to said plurality of image parts, and to fill the inside of the contour of each said image part with the allocated pixel value; and computer program code means for causing the computer to examine pixel values of neighbouring pixels in said bit map images, and to recognize adjoining relationship between image parts including said neighbouring pixels when said neighbouring pixels have different allocated pixel values, wherein two image parts are determined to adjoin to each other if a distance between true boundaries of said two image parts is less than half a resolution of said two image parts. A computer readable medium according to claim 17, comprising computer program means for causing the computer to treat said pixel values as drawing orders of said plurality of image parts. A computer readable medium according to claim 17 or claim 18, further comprising: computer program code means for causing the computer to specify the resolution of said bit map images; and wherein said computer program means for generating bit map images comprises means for generating said bit map images with said resolution. A computer readable medium in accordance with any one of claims 17 to 19, wherein: said computer program means for generating bit map images comprises means for successively writing said bit map images into one bit map memory in a drawing order of said plurality of image parts; and said computer program means for examining the pixel values of neighbouring pixels comprises means for examining pixel values of neighbouring pixels in said bit map images written in said bit map memory. A computer readable medium according to claim 17, comprising: compute program code means for causing a computer to recognize consecutive image parts in a predefined drawing order in said plurality of image parts to constitute one combined image part when each pair of image parts among said consecutive image parts adjoins to each other and a difference in density between said pair is smaller than a predetermined threshold value; and computer program code means for causing the computer to carry out a specific image processing for said combined image part. A computer with a computer readable medium according to claims 17 to 21 to determine adjoining relationships between a plurality of image parts, said computer program code comprising computer program code means for causing the computer to generate bit-map images by allocating different pixel values to said plurality of image parts, and to fill the inside of the contour of each said image part with the allocated pixel value and computer program code means for causing the computer o examine pixel values of neighbouring pixels in said bit-map images, and to recognize adjoining relationship between image parts, including said neighbouring pixels when said neighbouring pixels have different pixel values.

Inventors: HATADA KOJI, YOSHINO KIMITOSHI, HATADA, KOJI, YOSHINO, KIMITOSHI, HATADA, KOJI, C/O DAINIPPON SCREEN MFG. CO., LTD., YOSHINO, KIMITOSHI, DAINIPPON SCREEN MFG. CO, LTD.
Applicants: DAINIPPON SCREEN MFG, DAINIPPON SCREEN MFG. CO., LTD.
Application year: 1996
Main classification: G06T11
IPC codes: G06T11