IMAGE PROCESSING METHOD AND IMAGE PROCESSING APPARATUS

Information

  • Patent Application
  • 20070230809
  • Publication Number
    20070230809
  • Date Filed
    March 21, 2007
    17 years ago
  • Date Published
    October 04, 2007
    17 years ago
Abstract
In an image processing method, contour information is extracted on the basis of terminal points and intersections included in a thinned line drawing, the contour information being extracted for each of closed curves and line elements connecting the terminal points and the intersections included in the line drawing, and skeletonized vector data is generated on the basis of the contour information. Start and end terminal points in the skeletonized vector data are determined. Artificial vectors to be inserted between the determined start and end terminal points are generated, and artificial-vector-inserted vector data including the generated artificial vectors is generated. A smoothing process is performed for the artificial-vector-inserted vector data, and then smoothed, non-circumference vector data is generated on the basis of the start and end terminal points. The thinned line drawing is raster-scanned in units of a pixel matrix.
Description

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the invention and, together with the description, serve to explain the principles of the invention.



FIG. 1 is a functional block diagram illustrating an image processing apparatus according to an embodiment of the present invention.



FIGS. 2A to 2E illustrate the manner in which a binary image is processed using outline vectors.



FIGS. 3A to 3F are diagrams illustrating a vector process of a line art image according to an embodiment of the present invention.



FIG. 4 is a diagram illustrating components of an image processing apparatus according to an embodiment.



FIG. 5 is a diagram illustrating the structure of a contour-vector-data extractor according to an embodiment.



FIG. 6 is a diagram illustrating a target pixel and pixels adjacent to the target pixel according to an embodiment.



FIGS. 7A to 7D are diagrams illustrating examples of contour points extracted from terminal points and contour-point information attached to the contour points.



FIGS. 8A to 8D are diagrams illustrating examples of contour points detected at portions other than the terminal points and contour-point information attached to the contour points.



FIG. 9 illustrates a table of the contour-point information according to an embodiment.



FIG. 10 is a diagram illustrating an example of an extraction pattern (case 0) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 11 is a diagram illustrating examples of extraction pattern (case 1) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 12 is a diagram illustrating examples of extraction pattern (case 2) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 13 is a diagram illustrating examples of extraction pattern (case 3) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 14 is a diagram illustrating examples of extraction pattern (case 4) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 15 is a diagram illustrating examples of extraction pattern (case 5) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 16 is a diagram illustrating examples of extraction pattern (case 6) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 17 is a diagram illustrating examples of extraction pattern (case 7) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 18 is a diagram illustrating examples of extraction pattern (case 8) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 19 is a diagram illustrating examples of extraction pattern (case 9) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 20 is a diagram illustrating examples of extraction pattern (case 10) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 21 is a diagram illustrating examples of extraction pattern (case 11) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 22 is a diagram illustrating examples of extraction pattern (case 12) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 23 is a diagram illustrating examples of extraction pattern (case 13) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 24 is a diagram illustrating examples of extraction pattern (case 14) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 25 is a diagram illustrating examples of extraction pattern (case 15) of contour points and contour-point information in accordance with the states of the target pixel and the pixels adjacent to the pixel in the contour-vector-data extraction process.



FIG. 26 is a flowchart illustrating the overall operation of a contour vector data extraction process according to an embodiment.



FIG. 27 is a flowchart of a vector sequence extraction process according to an embodiment.



FIG. 28 is a flowchart of a process performed in the vector sequence extraction process according to an embodiment.



FIG. 29 is a diagram illustrating an example of a data format of contour vector sequences and contour-point information according to an embodiment.



FIG. 30 is a flowchart of a process performed by the skeletonized-vector-data generator according to an embodiment.



FIG. 31 is a diagram illustrating an example of a line element, a contour vector data sequence, contour-point information, and a skeletonized vector sequence.



FIGS. 32A and 32B are diagrams illustrating artificial contour points inserted next to the start and end terminal points.



FIG. 33 is a flowchart illustrating a process performed by an artificial-vector-inserted data generator according to an embodiment.



FIG. 34 is a flowchart illustrating a process of generating artificial vectors to be inserted in series from the end terminal point to the start terminal point according to an embodiment.



FIG. 35 is a diagram illustrating the artificial vectors inserted in series from the end terminal point to the start terminal point.



FIG. 36 is a diagram illustrating the artificial vectors inserted in series from the end terminal point to the start terminal point.



FIGS. 37A and 37B are diagrams illustrating examples of data formats of the artificial-vector-inserted data and the smoothed vector data.


Claims
  • 1. A method comprising: extracting contour information based on terminal points and intersections included in a thinned line drawing, the contour information being extracted for each of closed curves and line elements connecting the terminal points and the intersections included in the line drawing; andgenerating skeletonized vector data based on the extracted contour information.
  • 2. The method according to claim 1, wherein the extracted contour information includes contour vector data for each of the closed curves and the line elements and contour-point information indicating portions of the contour vector data that correspond to the terminal points and the intersections in the line drawing.
  • 3. The method according to claim 2, wherein the contour-point information includes orientations of contour vectors ending at contour points included in the contour vector data and orientations of contour vectors starting at the contour points included in the contour vector data.
  • 4. The method according to claim 1, wherein positions included in the contour information are shifted in units of a half pixel to generate the skeletonized vector data.
  • 5. The method according to claim 1, wherein an image including the thinned line drawing is raster-scanned in units of a pixel matrix including a target pixel and pixels surrounding the target pixel, and the contour information is extracted based on a pixel value of the target pixel and pixel values of the pixels surrounding the pixel matrix.
  • 6. The method according to claim 5, wherein the pixel matrix is a 3-pixel-by-3-pixel matrix.
  • 7. The method according to claim 5, wherein a pattern that matches the pixel values of the target pixel and the pixels surrounding the target pixel is selected from predetermined patterns, and the contour information is extracted based on a vector sequence set for the selected pattern.
  • 8. The method according to claim 1, further comprising: determining a start terminal point and an end terminal point in the skeletonized vector data based on the information regarding the terminal points and the intersections in the line drawing, generating artificial vectors to be inserted between the determined start and end terminal points, and generating artificial-vector-inserted vector data including the generated artificial vectors.
  • 9. The method according to claim 8, wherein, if it is determined that there is no start terminal point or end terminal point in the skeletonized vector data based on of the information regarding the terminal points and the intersections in the line drawing, information representing a closed loop is attached to the vector data.
  • 10. The method according to claim 8, further comprising: performing a smoothing process for the artificial-vector-inserted vector data; andgenerating smoothed, non-circumference vector data based on smoothed vector data obtained in the smoothing process and the start and end terminal points.
  • 11. An apparatus comprising: an extracting unit configured to extract contour information based on terminal points and intersections included in a thinned line drawing, the contour information being extracted for each of closed curves and line elements connecting the terminal points and the intersections included in the line drawing; anda skeletonizing unit configured to generate skeletonized vector data based on the contour information extracted by the extracting unit.
  • 12. The apparatus according to claim 11, wherein the contour information extracted by the extracting unit includes contour vector data for each of the closed curves and the line elements and contour-point information indicating portions of the contour vector data that correspond to the terminal points and the intersections in the line drawing.
  • 13. The apparatus according to claim 12, wherein the contour-point information includes orientations of contour vectors ending at contour points included in the contour vector data and orientations of contour vectors starting at the contour points included in the contour vector data.
  • 14. The apparatus according to claim 11, wherein the skeletonizing unit shifts positions included in the contour information in units of a half pixel to generate the skeletonized vector data.
  • 15. The apparatus according to claim 11, wherein the extracting unit raster scans an image including the thinned line drawing in units of a pixel matrix including a target pixel and pixels surrounding the target pixel, and the contour information is extracted based on a pixel value of the target pixel and pixel values of the pixels surrounding the pixel matrix.
  • 16. The apparatus according to claim 15, wherein the pixel matrix is a 3-pixel-by-3-pixel matrix.
  • 17. The apparatus according to claim 15, wherein the extracting unit selects a pattern that matches the pixel values of the target pixel and the pixels surrounding the target pixel from predetermined patterns, and extracts the contour information on the basis of a vector sequence set for the selected pattern.
  • 18. The apparatus according to claim 11, further comprising: an artificial-vector-inserted data generator configured to determine a start terminal point and an end terminal point in the skeletonized vector data based on the information regarding the terminal points and the intersections in the line drawing, generate artificial vectors to be inserted between the determined start and end terminal points, and generate artificial-vector-inserted vector data including the generated artificial vectors.
  • 19. The apparatus according to claim 18, wherein if it is determined that there is no start terminal point or end terminal point in the skeletonized vector data based on the information regarding the terminal points and the intersections in the line drawing, the artificial-vector-inserted data generator attaches information representing a closed loop to the vector data.
  • 20. The apparatus according to claim 18, further comprising: a smoothing unit of performing a smoothing process for the artificial-vector-inserted vector data; anda non-circumference vector data generator configured to generate smoothed, non-circumference vector data based on smoothed vector data obtained by the smoothing unit and the start and end terminal points.
  • 21. A computer-readable storage medium storing instructions which, when executed by an apparatus, causes the apparatus to perform operations comprising: extracting contour information based on terminal points and intersections included in a thinned line drawing, the contour information being extracted for each of closed curves and line elements connecting the terminal points and the intersections included in the line drawing; andgenerating skeletonized vector data based on the extracted contour information.
Priority Claims (3)
Number Date Country Kind
2006-100377 Mar 2006 JP national
2006-100380 Mar 2006 JP national
2006-100381 Mar 2006 JP national