AU744206B2 - Method and apparatus for detecting corner pixels of one or more sub-images within an image - Google Patents

Method and apparatus for detecting corner pixels of one or more sub-images within an image Download PDF

Info

Publication number
AU744206B2
AU744206B2 AU50123/99A AU5012399A AU744206B2 AU 744206 B2 AU744206 B2 AU 744206B2 AU 50123/99 A AU50123/99 A AU 50123/99A AU 5012399 A AU5012399 A AU 5012399A AU 744206 B2 AU744206 B2 AU 744206B2
Authority
AU
Australia
Prior art keywords
pixel
pixels
traversed
currently traversed
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Ceased
Application number
AU50123/99A
Other versions
AU5012399A (en
Inventor
Cameron Bolitho Browne
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from AUPP6215A external-priority patent/AUPP621598A0/en
Application filed by Canon Inc filed Critical Canon Inc
Priority to AU50123/99A priority Critical patent/AU744206B2/en
Publication of AU5012399A publication Critical patent/AU5012399A/en
Application granted granted Critical
Publication of AU744206B2 publication Critical patent/AU744206B2/en
Anticipated expiration legal-status Critical
Ceased legal-status Critical Current

Links

Landscapes

  • Image Analysis (AREA)

Description

S F Ref: 470286
AUSTRALIA
PATENTS ACT 1990 COMPLETE SPECIFICATION FOR A STANDARD PATENT r r r
ORIGINAL
Name and Address of Applicant: Actual Inventor(s): Address for Service: Invention Title: Canon Kabushiki Kaisha 30-2, Shimomaruko 3-chome Ohta-ku Tokyo 146
JAPAN
Cameron Bolitho Browne Spruson Ferguson, Patent Attorneys Level 33 St Martins Tower, 31 Market Street Sydney, New South Wales, 2000, Australia Method and Apparatus for Detecting Corner Pixels of One or More Sub-images within an Image ASSOCIATED PROVISIONAL APPLICATION DETAILS [311 Application No(s) [33] Country PP6215
AU
[32] Application Date 25 September 1998 The following statement is a full description of this invention, including the best method of performing it known to me/us:- 5815 METHOD AND APPARATUS FOR DETECTING CORNER PIXELS OF ONE OR MORE SUB-IMAGES WITHIN AN IMAGE.
Field of Invention The present invention relates to a method and apparatus for detecting comer pixels of one or more sub-images within an image. The invention also relates to a computer program product including a computer readable medium having recorded thereon a computer program for detecting comer pixels of one or more sub-images within an image. The present invention further relates to a method and apparatus for generating a convex hull in a multidimensional space. The present invention still further relates to a computer program product including a computer readable medium having recorded thereon a computer program for generating a convex hull in a multidimensional space.
o*o* Background of Invention 15 The publication "Computer Graphics Principles and Practice" by Foley et al, 2 nd Edition 1990, Addison-Wesley Publishing Company pp 13 describes the use of bitmap images in computer displays. Such bitmap images can include sub-images and at times it is desirable to obtain information on such sub-images. In particular, it can be desirable to detect critical pixels within the image, e.g. comer pixels of a sub-image. This 20 is particularly important for the polygonisation of shapes within the bitmap. For polygonisation of shapes operations, traditional techniques typically utilize convex hull algorithms.
The publication "Algorithms" by Robert Sedgewick, 1988, Addison-Wesley PP 368-369 describes a convex hull method which eliminates superfluous points in determining the convex hull. A convex hull of an image may be designated as the minimal convex boundary that encloses a set of predetermined pixels within the image.
The above mentioned algorithm picks four points on the hull, and discards every point inside the quadrilateral formed by those four points. This greatly reduces the complexity of convex hull generation. When detecting candidate convex hull pixels, interior or acute comers, and pixels on internal contours or holes do not need to be processed, as they cannot possibly lie on the convex hull. However, this method still suffers from the disadvantage that there are many superfluous points in determining the convex hull.
CFP1439AU(OPEN50)470286 [I:\ELEC\CISRA\OPEN\OPEN50\470286.doc Summary of Invention It is an object of the present invention to ameliorate one or more disadvantages of the prior art.
According to one aspect of the present invention there is provided, a method of detecting corner pixels of one or more sub-images within an image, wherein the image comprises a plurality of pixels and each sub-image comprises a plurality of first pixels adjacent to one another, the method comprising the steps of: traversing in a predetermined manner the first pixels on outer boundaries of said sub-images; and (b) determining, for each said traversed first pixel, whether a currently traversed first pixel and its neighbouring first pixels form a convex corner, and if so designating said currently traversed corner pixel as a convex corner pixel.
According to another aspect of the invention there is provided, a method of detecting corner pixels of one or more sub-images within an image, the image comprising a plurality of pixels and each sub-image comprising a plurality of first pixels adjacent to one another, the method comprising the steps of: traversing the first pixels of each sub-image in a predetermined manner; comparing, for each traversed first pixel, the currently traversed first pixel and a plurality of said pixels neighboring said currently traversed first pixel with one or more masks to determine whether or not said currently traversed first pixel and said neighbors form a convex corner.
According to still another aspect of the invention there is provided, a method of generating a convex hull in a multi-dimensional space, wherein said space comprises adjacent discrete points of a first type and discrete points of at least one other type, the method comprising the steps of: locating an unvisited point of said first type on an outer boundary of said plurality of points of said first type and marking the located point as visited; traversing in a predetermined manner the points adjacent to said previously located point; determining whether a currently traversed one of said points is a point of said first type, and if so marking said currently traversed point of said first type as visited; determining whether said currently traversed point of the first type and its neighboring points form a convex corner, and if so marking said current point as a convex corner point; repeating steps to until a point of said first type which has been previously marked as visited is traversed; repeat ing steps to until all points on said boundary have been visited; and generating a convex hull from the convex corner points.
According to still another aspect of the invention there is provided, apparatus for detecting corner pixels of one or more sub-images within an image, wherein the image 470286 -3 comprises a plurality of pixels and each sub-image comprises a plurality of first pixels adjacent to one another, the apparatus comprising: traversal means for traversing in a predetermined manner the first pixels on outer boundaries of said sub-images; and determination means for determining, for each said traversed first pixel, whether a currently traversed first pixel and its neighboring first pixels form a convex corner, and if so designating said currently traversed corner pixel as a convex corner pixel.
According to still another aspect of the invention there is provided, apparatus for detecting corner pixels of one or more sub-images within an image, the image comprising a plurality of pixels and each sub-image comprising a plurality of first pixels adjacent to one another, the apparatus comprising: means for traversing the first pixels of each subimage in a predetermined manner; means for comparing, for each traversed first pixel, the currently traversed first pixel and a plurality of said pixels neighboring said currently traversed first pixel with one or more masks to determine whether or not said currently traversed first pixel and said neighbors form a convex corner.
According to still another aspect of the invention there is provided, apparatus for generating a convex hull in a multi-dimensional space, wherein said space comprises adjacent discrete points of a first type and discrete points of at least one other type, the apparatus comprising: location means for locating an unvisited point of said first type on an outer boundary of said plurality of points of said first type and marking the located point as visited; traversal means for traversing in a predetermined manner the points adjacent to said previously located point; first determination means for determining whether a currently traversed one of said points is a point of said first type, and if so marking said currently traversed point of said first type as visited; second determination means for determining whether said currently traversed point of the first type and its neighboring points form a convex corner, and if so designating said current point as a convex corner point; first repetition means for repeating the operations of the traversal means, first determination means, and second determination means until a point of said first type which has been previously marked as visited is traversed; second repetition means for repeating the operations of the location means, traversal means, first determination means, second determnination means and the first repetition means until all points on said boundary have been visited; and generation means for generating a convex hull from the convex corner points.
yccording to still another aspect of the invention there is provided, a computer program uct comprising a computer readable medium including a computer program for -0 35 de igcorner pixels of one or more sub-images within an image, wherein the image 470286 comprises a plurality of pixels and each sub-image comprises a plurality of first pixels adjacent to one another, the computer program product comprising: traversal means for traversing in a predetermined manner the first pixels on outer boundaries of said subimages; and determination means for determining, for each said traversed first pixel, whether a currently traversed first pixel and its neighboring first pixels form a convex corner, and if so designating said currently traversed corner pixel as a convex corner pixel.
According to still another aspect of the invention there is provided, a computer program product comprising a computer readable medium including a computer program for detecting corner pixels of one or more sub-images within an image, the image comprising a plurality of pixels and each sub-image comprising a plurality of first pixels adjacent to one another, the computer program product comprising: means for traversing the first pixels of each sub-image in a predetermined manner; means for comparing, for each traversed first pixel, the currently traversed first pixel and a plurality of said pixels neighboring said currently traversed first pixel with one or more masks to determine whether or not said currently traversed first pixel and said neighbors form a convex corner.
According to still another aspect of the invention there is provided, a computer program product comprising a computer readable medium including a computer program for generating a convex hull in a multi-dimensional space, wherein said space comprises adjacent discrete points of a first type and discrete points of at least one other type, the computer program product comprising: location means for locating an unvisited point of said first type on an outer boundary of said plurality of points of said first type and marking the located point as visited; traversal means for traversing in a predetermined manner the points adjacent to said previously located point; first determination means for determining whether a currently traversed one of said points is a point of said first type, and if so marking said currently traversed point of said first type as visited; second determination means for determining whether said currently traversed point of the first type and its neighboring points form a convex corner, and if so designating said current point as a convex corner point; first repetition means for repeating the operations of the traversal- means, first determination means, and second determination means until a point of said first type which has been previously marked as visited is traversed; second o0 470286 I 7777 7-77777 repetition means for repeating the operations of the location means, traversal means, first determination means, second determination means and the first repetition means until all points on said boundary have been visited; and generation means for generating a convex hull from the convex corner points.
Brief Description of the Drawings Embodiments of the invention are described with reference to the accompanying drawings, in which: Fig. IlA illustrates the local neighborhood of a pixel; Fig. lB illustrates an on-pixel; Figs. 2A to 2D illustrate various morphological situations for an on-pixel; Figs. 3A to 3D illustrate four masks used to detect convex corner pixels used in the method of Fig. 6; Figs. 4A and 4B illustrate a bitmap and its convex corners; Fig. 5 is a flow diagram describing the method of detecting convex corners oV. within a bitmap in accordance with a preferred embodiment of the invention; Fig. 6 is a flow diagram showing the preferred method for tracing an outline of a sub-image used in the method of Fig. Fig. 6A illustrates a pixel P<xn,yn> and the direction of neighboring pixels; 20 Fig. 7A and 7B illustrates scanline searching in two directions; Fig. 8A and 8B illustrate an example of a bitmap and the order in which its outline is traversed when detecting convex corners according to the method of Fig Figs. 8C and 8D illustrate in more detail the manner of traversal shown in Fig 8B.
Fig. 9A illustrates an example bitmap of a character shape; Fig 9B illustrates the convex comers of the bitmap of Fig. 9A determined in accordance with the method of Fig. Fig. 1 OA illustrates another example of a bitmap of a character shape; Fig lOB illustrates the convex corners of the bitmap of Fig. IOA determnined in accordance with the method of Fig. Fig. 1 I A illustrates an example of a bitmap of a character shape with internal holes; CFP1 439AU(OPEN5O)470286 [I:\ELEC\CISRA\OPEN\OPEN50\470286.doc Fig. 1 IlB illustrates the convex corners of the bitmap of Fig. 1 I A determined in accordance with the method of Fig. Fig. I12A illustrates an example of a bitmap of a character shape with an internal hole; Fig. 12B illustrates the convex corners of the bitmap of Fig. 12A determined in accordance with the method of Fig. 5; and Fig. 13 is a block diagram of a general-purpose computer with which the embodiments can be implemented.
io Detailed Description Where reference is made in any one or more of the drawings to steps and/or features which have the same reference numerals, those steps and/or features are for the purposes of this description the same, unless the contrary intention appears.
Some portions of the detailed descriptions which follow are explicitly or implicitly 15 presented in terms of algorithms and symbolic representations of operations on data within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. The steps are those requiring physical manipulations of physical quantities. Usually, though not 0: 4.necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It has proven convenient at times, principally for reasons of common usage, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.
It should be borne in mind, however, that all of these and similar terms, such as images and pixels, are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless specifically stated otherwise as apparent from the following discussions, it is appreciated that throughout the present invention, discussions utilizing terms such as "traversing" "determining", "comparing", "4marking" or the like, refer to the action and processes of a computer system, or similar electronic computing device, that manipulates and transforms data represented as physical (electronic) quantities within the computer system's registers and memories into other data CFP1 439AU(OPEN5O)470286 (I:\ELEC\CISRA\OPEN\OPEN5047286.doc similarly represented as physical quantities within the computer system memories or registers or other such information storage, transmission or display devices.
The present invention also relates to apparatus for performning the operations herein.
This apparatus may be specially constructed for the required purposes, or it may comprise a general purpose computer selectively activated or reconfigured by a computer program stored in the computer. The algorithms and displays presented herein are not inherently related to any particular computer or other apparatus. Various general purpose machines may be used with programs in accordance with the teachings herein, or it may prove convenient to construct more specialized apparatus to perform the required method steps.
io The structure of a conventional general purpose computer will appear from the description below.
:In addition, the present invention also relates to a computer program product comprising a computer readable medium including a computer program for detecting corner pixels. It also relates to a computer program product comprising a computer readable medium including a computer program for generating a convex hull in a multidiemensional space. The computer readable medium is taken herein to include any transmission medium for transmitting the computer program between a source and a designation. The transmission medium may include storage devices such as magnetic or optical disks, memory chips, or other storage devices suitable for interfacing with a 20 general purpose computer. The transmission medium may also include a hard-wired medium such as exemplified in the Internet system, or wireless medium such as :exemplified in the GSM mobile telephone system. The computer program is not described with reference to any particular programming language and implementation thereof. It will be appreciated that a variety of programming languages and implementations thereof may be used to put the teachings of the invention as described herein into effect.
The principles of the preferred method have general applicability to discrete points in a multidimensional space. However, for ease of explanation, the preferred embodiment is described in terms of binary (black and white) bitmap images. It is not intended that the present invention be limited to these 2-dimensional examples. The method may also have general applicability to multiple colored images or pixel maps if their component pixels can be described such that they belong to distinct states. This can be achieved by standard image processing techniques such as thresholding or color CFP 1439AU(OPEN5O)470286 [I:\ELEC\CISRA\OPEN\OPEN5O\470286.doc S~ reduction/quantisation. For the purposes of the description, the preferred embodiment is described with reference to a number of specific examples of images, where black pixels are described as "on-pixels" and white pixels are described as "off-pixels". It is not intended that the invention be limited to such specific examples of images.
Fig. IA illustrates the 3x3 neighborhood of a given pixel P0 11 in an image. The convention used in the preferred embodiment is that the pixel neighbors of pixel P0 are numbered clockwise from P1 12 to P8 13. Fig 1B illustrates an on-pixel (black) at P0 14 surrounded by off-pixels (white) Figs. 2A to 2D illustrate the concept of a convex corner by way of various morphological situations that may occur for a central on-pixel P0. A corner is a "convex corner" if there is an unbroken run of at least 4 consecutive off-pixels in the set of i :neighboring pixels P1..P8. The set of pixels P1..P8 is described as the "neighborhood of Poll.
oo
PO".
Fig. 2A shows on-pixel P0 20 forming a local corner due to three off-pixels at 15 P1, P2 and P3 23. PO in this case is not a convex comer as there is no run of at least four consecutive off-pixels within the neighborhood of PO, and is in fact the midpoint on the S.line spanning P8 21 and P4 22. Fig. 2B shows an internal corner at P0 formed by the offpixel P2 24. Figs. 2C and 2D show convex corners 25 and 27 formed by consecutive runs S"of four off-pixels in their respective neighborhoods 26 and 28.
Turning now to Figs. 3A to 3D, there is shown a set of four 3x3 masks used to detect whether a given on-pixel is a convex comer. Fig. 3A shows a 3x3 mask with central on-pixel P0 31 and diametrically opposed on-pixels at P1 32 and P5 33 that preclude the presence of a consecutive run of at least 4 off-pixels within the set of neighborhood of P0. It is not relevant to the method whether the remaining neighborhood pixels P2, P3, P4, P6, P7 and P8 34 are on-pixels or off-pixels and they are ignored when evaluating mask 3A. Similarly, Figs. 3B, 3C and 3D show 3x3 masks that preclude the presence of all other possible consecutive runs of at least four off-pixels within the set of neighborhood of P0 in different positions. Any on-pixel, which does not match any of these masks, must contain a consecutive run of at least 4 off-pixels within the neighborhood of P0, and is therefore a convex corner pixel. Pixels that are beyond the boundary are considered off-pixels for the purposes of the preferred method.
Fig. 4A illustrates a binary bitmap 40. On-pixels that are not convex corners are marked with an 41. The remaining on-pixels are convex corners 42. Non convex on- CFP1439AU(OPEN50)470286 [I:\ELEC\CISRA\OPEN\OPEN50\470286.doc -9pixels are removed from the bitmap 40 in Fig. 4B, leaving only the set of convex comers 43.
Turning now to Fig. 5, there is shown a flow diagram of the preferred method for detecting convex comers within a binary bitmap. The preferred method is a general purpose tool and is preferably called by a higher level program when needed. In step 501 of the preferred method, the process commences, and an image or bitmap is read or loaded into memory at step 502. Boolean data is associated with each pixel of the image or bitmap that records whether that pixel: a) has been "used" by a previous traversal, and b) is a convex comer.
Initially all Boolean data is set to FALSE for the entire bitmap.
.Scanline traversal of the bitmap commences at step 503 with the scanline counter set to the first scanline 1.
Horizontal left-to-right traversal of the current scanline commences at step 504 15 with left pixel counter xl set to the leftmost pixel 1.
In decision block 505 a check is made whether the pixel at location P<xl,y> is an on-pixel, and whether it has not been used by a previous traversal. If decision block 505 returns TRUE (Yes), then the Trace routine outlined in Fig. 6 is invoked for pixel P<xl,y> 506. Otherwise processing continues to step 507 and xl is incremented to the next pixel oooo to the right.
In decision block 508 a check is made whether the left pixel counter xl is greater than or equal to the right boundary x max. If decision block 508 returns TRUE (Yes), then processing continues to step 509. Otherwise processing returns to decision block 505 and the new pixel location is examined.
Horizontal right-to-left traversal of the current scanline commences at step 509 with right pixel counter xr being set to the rightmost pixel x max.
In decision block 510 a check is made whether the pixel at location P<xr,y> is an onpixel, and whether it has not been used by a previous traversal. If decision block 510 returns TRUE (Yes), then the Trace routine outlined in Fig. 6 is invoked for pixel P<xl,y> 511. Otherwise processing continues to step 512 and xr is decremented to the next pixel to the left.
In decision block 513 a check is made whether the right pixel counter xr has reached the left boundary xr 1. If decision block 513 returns TRUE (Yes), then CFP1439AU(OPEN50)470286 CI:\ELEC\CISRA\OPEN\OPEN50\470286.doc processing continues to step 514. Otherwise processing returns to decision block 510 and the new pixel location is examined.
In step 514 the scanline counter y is incremented to the next scanline, giving a new current scanline. In decision block 515 a check is made whether the scanline counter y has reached the vertical scanline y y_max. If decision block 515 returns TRUE (Yes), then processing continues to step 516 and the process terminates. Otherwise processing returns to decision block 504 and the next scanline is examined.
Fig. 6 illustrates a flow diagram of the preferred routine for tracing an outline within an image or pixel map and marking convex corners. In step 601 the routine is invoked with the following parameters: a) the location of the starting pixel, and b) the direction d from which the starting pixel was approached.
It is a precondition of this routine that the pixel P<x,y> is an on-pixel. P<x,y> :describes the position of the "current pixel" throughout the routine.
In step 602 P<x,y> is marked as "used", indicating that it has been visited and examined during an outline traversal.
In decision block 603 a check is made whether pixels P1 and P5 relative to P<x,y> are both on-pixels, that is P<x,y> and its neighborhood match the 3x3 mask shown in Fig. 3A. If decision block 603 returns TRUE (Yes), then it has been proven that P<x,y> is not a convex corner, and processing continues at step 608. Otherwise processing continues to step 604 and the next mask is applied.
In decision block 604 a check is made whether pixels P2 and P6 relative to P<x,y> are both on-pixels, that is P<x,y> and its neighborhood match the 3x3 mask shown in Fig. 3D. If decision block 604 returns TRUE (Yes), then it has been proven that P<x,y> is not a convex corner, and processing continues at step 608. Otherwise processing continues to step 605 and the next mask is applied.
In decision block 605 a check is made whether pixels P3 and P7 relative to P<x,y> are both on-pixels, that is P<x,y> and its neighborhood match the 3x3 mask shown in Fig. 3B. If decision block 605 returns TRUE (Yes), then it has been proven that P<x,y> is not a convex corner, and processing continues at step 608. Otherwise processing continues to step 606 and the next mask is applied.
In decision block 606 a check is made whether pixels P4 and P8 relative to P<x,y> are both on-pixels, that is P<x,y> and its neighborhood match the 3x3 mask CFP1439AU(OPEN50)470286 [I:\ELEC\CISRA\OPEN\OPEN5O\470286.doc -11 shown in Fig. 3C. If decision block 606 returns TRUE (Yes), then it has been proven that P<x,y> is not a convex corer, and processing continues at step 608. Otherwise processing continues to step 607.
In step 607 P<x,y> is marked as a convex comer. This step is only reached if it has not been proven that P<x,y> is not a convex corer in any of decision blocks 603, 604, 605 and 606.
In step 608 the next adjacent on-pixel belonging to the current outline is located.
Preferably, the next on-pixel is located in a clockwise traversal manner. This is achieved by examining the previous pixel PP given by direction d. A clockwise sweep is made of the neighborhood of P<x,y> starting with PP until an on-pixel is encountered. This onpixel becomes the next pixel P<xn,yn> in direction dn from The values of x, y, and n are updated to reflect the location of the next pixel in step 609, making a new current pixel P<x,y>.
Fig. 6A shows an example for representing this direction d. The next pixel 15 P<xn,yn> has an associated stored integer value 0, 1...or 7. This integer value represents the direction of the next pixel P<xn,yn> with respect to the previous pixel P<x,y>.
In decision block 610 a check is then made whether the new current pixel P<x,y> is valid and unused. P<x,y> may be invalid if it's location is identical to the previous that is if a new neighbor on the outline could not be found. This may occur in degenerate cases such as single-pixel outlines, or outlines that are not closed. If P<x,y> is found to be "used", this indicates that the outline traversal has returned to the starting point and should be terminated. If decision block 610 returns TRUE (Yes) then processing returns to step 602 and the process is applied to the new current pixel P<x,y>.
Otherwise processing continues to step 611, in which the routine terminates and returns, having marked all on-pixels on this outline as "used" and having visited and detected all convex corers along this outline.
Figs. 7A and 7B illustrate both left-to-right and right-to-left traversals for each scanline used in the preferred method. Scanlines are numbered 70 where ymax 12. Each scanline in Fig. 7A is traversed from left to right, stopping upon reaching the right edge 71 or encountering an unused outline on-pixel 72. In this case the shape 73 intercepts a significant number of scanlines, leaving a significant region that is not traversed 74. This includes the shape 75, which is occluded and is not reached, despite having convex corners.
CFP1439AU(OPEN50)470286 (I:\ELEC\CISRA\OPEN\OPEN50\470286.doc -12- This problem is solved through the use of a matching right-to-left traversal for each scanline as shown in Fig. 7B. The occluded shape is now intercepted during scanline traversal 76 and its convex corners are detected. Some right-to-left traversals intercept the original shape already intercepted by left-to-right traversal (77, 78) but it is not processed a second time as all of its outline pixels will have been marked as "used" and visited during the first traversal. In the preferred method shown in Fig. 5, all the scanlines are first traversed in a left-to-right direction and then all the scanlines are traversed in a right-to-left direction. Alternatively, the traversal of the scanlines can include alternating left-to-right traversals and right-to-left traversals. The preferred i" 10 method can also traverse the scanlines in a vertical direction instead of a horizontal direction or in both a vertical and horizontal direction. There may be regions that are not reached by either scanline traversal 79, but such interior regions cannot possibly contain convex corer points that belong to the convex hull, and are not of interest when identifying candidate pixels for convex hull generation.
15 Fig. 8A shows a bitmap containing a shape 81 with an internal hole 82. Fig. 8B 0 illustrates the process of detecting convex corners within this bitmap shown in Fig. 8A.
Scanline 1 is traversed left-to-right 83 until it encounters an on-pixel 84. This on-pixel is initially "unused" and is chosen as the starting point Po from which this outline is traversed. As Po was approached from the left, the next adjacent on-pixel 85 in the clockwise direction is in the bottom right direction. Following this on-pixel 85 the next traversed pixel 92 is in the horizontal direction.
Figs. 8C and 8D show in more detail how the outline 81 of Fig. 8A is traversed.
Fig. 8C shows that once on-pixel 84 has been traversed, the next on-pixel 85 is selected from the next pixel in a clockwise direction from scanline 83, which is on. Fig. 8D shows that once on-pixel 85 is traversed, the next on-pixel 92 is selected from the next pixel in a clockwise direction from the traversal line 86, which is on.
Returning to Fig 8B, the traversal continues around the outline 81, marking convex corner on-pixels (shown as circled points in Fig. 8B) until either: a) Po 84 is again reached, or b) A "used" (visited) outline pixel is encountered.
In both cases the traversal of this outline terminates.
In Fig. 8B the pixel 87 is traversed twice following the return path from its neighbor at pixel 88. At this point the traversal of the outline terminates. This leaves CFP1439AU(OPEN50)470286 [I:\ELEC\CISRA\OPEN\OPEN50\470286.doc -13pixels 89 and 90 unprocessed. These pixels are processed during the subsequent traversals of scanline 2 (which processes pixel 90) and scanline 3 (which processes pixel 89). The traversal then continues with the traversal of scanlines 4 to 10. The traversal is terminated after the completion of scanline Fig. 9A illustrates an example bitmap 90 and Fig. 9B illustrates the convex corner pixels detected in the bitmap 90 by the preferred method. Internal corners 91 are not detected. In this particular example, a total set of 7,660 on-pixels is reduced by convex hull detection to a convex corner set of 7 on-pixels for subsequent processing by the higher level application, a compression ratio of approximately 1, 100 1.
Fig. 1OA illustrates an example bitmap 100 and Fig. 10OB illustrates the convex corner pixels detected in the bitmap 100 by the preferred method. In this particular **.*example, a total set of 5,982 on-pixels is reduced by convex hull detection to a convex corner set of 25 on-pixels for subsequent processing by the higher level application, a compression ratio of approximately 240 1.
15 Fig. 1 I A illustrates an example bitmap 1 10 with internal holes (1 11, 112), and Fig. 1 l B illustrates the convex corner pixels detected in the bitmap 1 10. The internal holes are not traversed, and internal corners 113 are not detected, reducing the number of superfluous corner pixels that could not possibly lie on the convex hull. In this particular example, a total set of 9,348 on-pixels is reduced by convex hull detection to a convex corner set of 55 on-pixels for subsequent processing by the higher level application, a compression ratio of approximately 170 :1.
Fig. 1 2A illustrates an example bitmap 120, with an internal hole 121, and Fig.
12B illustrates the convex corner pixels detected in the bitmap 120 by the preferred method. The internal holes are not traversed, however some superfluous corner pixels are detected due to the exterior outline migrating to the center of the shape 122. For convex hull detection, the total set of 6,671 on-pixels is reduced to the convex corner set of 99 on-pixels to be examined, a compression ratio of approximately 67 1.
As can be seen, the convex corners detected by the preferred embodiment have the property that the convex hull of all on-pixels can be exactly constructed from the set of convex corners. This greatly reduces the complexity of convex hull generation by dramatically reducing the number of pixels that must be considered. Moreover, reproducibility is guaranteed. After the detection of the convex corners, the convex hull can be generated in any known manner.
CFP1 439AU(OPEN50)470286 [i:\ELEC\CISRA\OPEN\OPEN50\470286.doc 14 As mentioned previously, the method can have applicability to discrete points in a multidimensional space. For example, the method can also be applied to a three dimensional space by applying the method consecutively to a series of two-dimensional slices of the three dimensional space.
Preferred Embodiment of Apparatus(s) The method of detecting corner pixels is preferably practiced using a conventional general-purpose computer, such as the one shown in Fig. 13, wherein the processes described with reference to Figs. 1 to 12 may be implemented as software executing on the computer. In particular, the steps of the method are effected by to: instructions in the software that are carried out by the computer. The software may be divided into two separate parts; one part for carrying out the traversal and corner detecting ~.methods; and another part to manage any user interface necessary for the loading bitmaps.
The software may be stored in a computer readable medium, including the storage devices described below, for example. The software is loaded into the computer from the computer readable medium, and then executed by the computer. A computer readable **:*.medium having such software or computer program recorded on it is a computer program product. The use of the computer program product in the computer preferably effects an advantageous apparatus for detecting corner pixels in accordance with the embodiments of the invention.
toto The computer system 1300 comprises of the computer 1302, a video display 1316, and input devices 1318, 1320. In addition, the computer system 1300 can have any of a number of other output devices including line printers, laser printers, plotters, and other reproduction devices connected to the computer 1302. The computer system 1300 can be connected to one or more other computers via a communication interface using an appropriate communication channel such as a modem communications path, a computer network, or the like. The computer network may include a local area network (LAN), a wide area network (WAN), an Intranet, and/or the Internet.
The computer 1302 itself comprises a central processing unit(s) (simply referred to as a processor hereinafter) 1304, a memory 1306 which may include random access memory (RAM) and read-only memory (ROM), input/output (10) interfaces, a video interface 13 10, and one or more storage devices generally represented by a block 13 12 in Fig. 13. The storage device(s) 1312 can comprise of one or more of the following: a CFPi 439AU(OPEN5O)470286 [I:\ELEC\CISPA\OPEN\OPEN5O\470286.doc floppy disc, a hard disc drive, a magneto-optical disc drive, CD-ROM, magnetic tape or any other of a number of non-volatile storage devices well known to those skilled in the art. Each of the components 1304 to 1312 is typically connected to one or more of the other devices via a bus 1314 that in turn can comprise of data, address, and control buses.
The video interface 1310 is connected to the video display 1316 and provides video signals from the computer 1302 for display on the video display 1316. User input to operate the computer 1302 can be provided by one or more input devices. For example, an operator can use the keyboard 1318 and/or a pointing device such as the mouse 1320 to provide input to the computer 1302.
10 The system 1300 is simply provided for illustrative purposes and other configurations can be employed without departing from the scope and spirit of the invention. Exemplary computers on which the embodiment can be practiced include IBM-PC/ATs or compatibles, one of the Macintosh (TM) family of PCs, Sun Sparcstation or the like. The foregoing is merely exemplary of the types of computers with which the embodiments of the invention may be practiced. Typically, the processes of the embodiments, described hereinafter, are resident as software or a program recorded on a hard disk drive (generally depicted as block 1312 in Fig. 13) as the computer readable medium, and read and controlled using the processor 1304. Intermediate storage of the program and pixel data and any data fetched from the network may be accomplished using the semiconductor memory 1306, possibly in concert with the hard disk drive 1312.
S•In some instances, the program may be supplied to the user encoded on a CD- ROM or a floppy disk (both generally depicted by block 1312), or alternatively could be read by the user from the network via a modem device connected to the computer, for example. Still further, the software can also be loaded into the computer system 1300 from other computer readable medium including magnetic tape, a ROM or integrated circuit, a magneto-optical disk, a radio or infra-red transmission channel between the computer and another device, a computer readable card such as a PCMCIA card, and the Internet and Intranets including email transmissions and information recorded on websites and the like. The foregoing is merely exemplary of relevant computer readable mediums.
Other computer readable mediums may be practiced without departing from the scope and spirit of the invention.
The method of detecting corner pixels may alternatively be implemented in dedicated hardware such as one or more integrated circuits performing the functions or CFP1439AU(OPEN50)470286 [I:\ELEC\CISRA\OPEN\OPEN50\470286.doc -16sub functions of the traversal and/or comer detection. Such dedicated hardware may include graphic processors, digital signal processors, or one or more microprocessors and associated memories. Such dedicated hardware may in turn be connected to the computer system 1300.
Industrial Applicability It is apparent from the above that the embodiment(s) of the invention are applicable to the computer and data processing industries. Particularly, the preferred embodiments may find many applications in computer graphic process(es) where a 10 convex hull is needed. For example, the preferred embodiments(s) may be used in polygonisation of shapes within the bitmap. The process of polygonisation of shapes typically utilizing the preferred convex hull generating process. The preferred convex hull •go• generating process may also be used in halftoning by generating convex hulls over multidimensional colour spaces. The preferred convex hull generating process may also find 15 application in the automatic kerning of adjacent font characters so that the characters can S"be brought together without overlapping concavities. The preferred convex generating process may also find application in detecting collisions between two graphic objects, and intersection and overlapping testing in general. Still further, the preferred convex hull generating process may detect whether a mouse pointer has been placed in an image region. As is apparent from the above, the preferred convex hull generating process is a general tool which has many applications. Notwithstanding the preferred method may also have application in any process where convex and/or concave corners are required to be detected.
The foregoing only describes a small number of embodiments of the present invention, however, modifications and/or changes can be made thereto without departing from the scope and spirit of the invention.
In the context of this specification, the word "comprising" means "including principally but not necessarily solely" or "having" or "including" and not "consisting only of'. Variations of the word comprising, such as "comprise" and "comprises" have corresponding meanings.
CFP1439AU(OPEN50)470286 [I:\ELEC\CISRA\OPEN\OPEN50\470286.doc
W-_
*C 7 1 I X- -Up-~2 Ci~iy~
~F~PI-

Claims (36)

  1. 2. A method as claimed in claim 1, wherein said determining step comprises the sub-step of: comparing the currently traversed first pixel and a plurality of said i pixels neighboring said currently traversed first pixel with one or more masks to determnine whether said currently traversed first pixel and neighboring pixels form a said corner.
  2. 3. A method as claimed in claim 2, wherein said masks comprises a set of four 3x3 masks of pixels, the set comprising a first mask having said first pixels arranged diagonally, a second mask having said first pixels arranged diagonally in an opposite direction to the first mask, a third mask having said first pixels arranged vertically through the center pixel, and a fourth mask having said first pixels arranged horizontally through the center pixel. e
  3. 4. A method as claimed in claim 3, wherein said currently traversed first pixel and said plurality of neighboring pixels form a 3x3 matrix of pixels with the said currently traversed first pixel at the center of the matrix and said comparison sub-step S comprises: comparing said 3x3 pixel matrix with the set of 3x3 pixel masks, and if said first pixels in said masks do not correspond with said first pixels in said 3x3 pixel matrix then; designating the currently traversed first pixel as a convex corner pixel. 0 470286 -18- A method as claimed in claim 1, wherein said traversal step comprises the sub-step of: locating an unvisited first pixel on any one of said outer boundaries; traversing and marking as visited said first pixels along the said any one outer boundary in a first direction commencing at the located first pixel until a said first pixel which has been previously marked as visited is traversed; and (a)(iii) repeating steps to until all said first pixels on all said outer boundaries have been marked as visited. l0 6. A method as claimed in claim 5, wherein said direction is clockwise.
  4. 7. A method as claimed in claim 5, wherein said direction is anti-clockwise. 6* Se A method as claimed in claim 5, wherein said method further comprises 15s repeating said determining step for each said currently traversed first pixel.
  5. 9. A method as claimed in claim 5, wherein the pixels of the image are arranged in ••rows and columns and said locating step comprises the sub-step of: i traversing a row of said pixels until an unvisited first pixel on the said any one outer boundary is located. A method as claimed in claim 9, wherein the row is traversed in a first direction and then in a second direction. *0@0 25 11. A method as claimed in claim 5, wherein the pixels of the image are arranged in rows and columns and said locating step comprises the sub-step of: te traversing a column of said pixels until an unvisited said first pixel on the said any one outer boundary is located.
  6. 12. A method as claimed in claim 11, wherein the column is traversed in a first direction and then in a second direction.
  7. 13. A method as claimed in claim 1, wherein the traversal step comprises the sub- S steps of: 0-o 470286 -19- storing the direction of said currently traversed pixel with respect to said previously traversed first pixel; and traversing the pixels adjacent said next pixel in a clockwise direction from said stored direction.
  8. 14. A method of detecting corner pixels of one or more sub-images within an image, the image comprising a plurality of pixels and each sub-image comprising a plurality of first pixels adjacent to one another, the method comprising the steps of: traversing the first pixels of each sub-image in a predetermined manner; comparing, for each traversed first pixel, the currently traversed first pixel and a plurality of said pixels neighboring said currently traversed first pixel with one or more masks to determine whether or not said currently traversed first pixel and said neighbors form a convex comer. .i 15 15. A method of generating a convex hull in a multi-dimensional space, wherein said space comprises adjacent discrete points of a first type and discrete points of at least one other type, the method comprising the steps of: locating an unvisited point of said first type on an outer boundary of said plurality of points of said first type and marking the located point as visited; traversing in a predetermined manner the points adjacent to said previously located point; determining whether a currently traversed one of said points is a point of said first type, and if so marking said currently traversed point of said first type as visited; S 25 determining whether said currently traversed point of the first type and its neighboring points form a convex comer, and if so marking said current point as a oconvex comer point; repeating steps to until a point of said first type which has been previously marked as visited is traversed; repeating steps to until all points on said boundary have been visited; and generating a convex hull from the convex corner points. ell&/ 470286 20
  9. 16. Apparatus for detecting corner pixels of one or more sub-images within an image, wherein the image comprises a plurality of pixels and each sub-image comprises a plurality of first pixels adjacent to one another, the apparatus comprising: traversal means for traversing in a predetermined manner the first pixels on outer boundaries of said sub-images; and determination means for determining, for each said traversed first pixel, whether a currently traversed first pixel and its neighboring first pixels form a convex corner, and if so designates said currently traversed corner pixel as a convex corner pixel.
  10. 17. Apparatus as claimed in claim 16, wherein said determination means comprises: comparison means for comparing the currently traversed first pixel and a plurality of said pixels neighboring said currently traversed first pixel with one or more masks to determine whether said currently traversed first pixel and neighboring pixels form a said corner. o
  11. 18. Apparatus as claimed in claim 17, wherein said masks comprises a set of four 3x3 masks of pixels, the set comprising a first mask having said first pixels arranged diagonally, a second mask having said first pixels arranged diagonally in an opposite direction to the first mask, a third mask having said first pixels arranged vertically through the center pixel, and a fourth mask having said first pixels arranged horizontally through the center pixel.
  12. 19. Apparatus as claimed in claim 18, wherein said currently traversed first pixel and said plurality of neighboring pixels form a 3x3 matrix of pixels with the said currently o 25 traversed first pixel at the center of the matrix and said comparison means comprises: means for comparing said 3x3 pixel matrix with the set of 3x3 pixel masks, and if said first pixels in said masks do not correspond with said first pixels in said 3x3 pixel matrix then; and means for designating the currently traversed first pixel as a convex corner pixel. Apparatus as claimed in claim 16, wherein said traversal means compnises: means for locating an unvisited first pixel on any one of said outer boundaries; means for traversing and marking said first pixels along the said any one outer RA boundary in a first direction commencing at the located first pixel until a said first pixel 3?-Z7 which has been previously marked as visited is traversed; and 470286 -21- means for repeating the operations of the locating means, traversing and marking means until all said first pixels on all said outer boundaries have been marked as visited.
  13. 21. Apparatus as claimed in claim 20, wherein said direction is clockwise.
  14. 22. Apparatus as claimed in claim 20, wherein said direction is anti-clockwise.
  15. 23. Apparatus as claimed in claim 20, wherein said apparatus fuirther comprises means for repeating the operation of said determination means for each said currently traversed first pixel.
  16. 24. Apparatus as claimed in claim 20, wherein the pixels of the image are arranged 0*in rows and columns and said locating means comprises: means for traversing a row of said pixels until an unvisited first pixel on the said 0 0 0a 0 see 25. Apanpoe autraboundars locted. li 4 hri h o staesdi is ieto 0 00060anthniaseoddrci.
  17. 25.te Apparatus as claimed in claim 2, wherein the o u is traversed in a firstto 0 0 dirctin ad enin a second direction.
  18. 26. Apparatus as claimed in claim 20, wherein the pixversls ofethe impresarage inrosancls a trn sai doctin o meai cmpres:ytaesdpxe ihrsett means for traversing ah col ofacn said nx pixel niniie ai fckist pixeltion them said anyoned ourtriondayi lctd 0 0 408 6 22
  19. 29. Apparatus for detecting corner pixels of one or more sub-images within an image, the image comprising a plurality of pixels and each sub-image comprising a plurality of first pixels adjacent to one another, the apparatus comprising: means for traversing the first pixels of each sub-image in a predetermined manner; means for comparing, for each traversed first pixel, the currently traversed first pixel and a plurality of said pixels neighboring said currently traversed first pixel with one or more masks to determine whether or not said currently traversed first pixel and said neighbors form a convex corner. I0 Apparatus for generating a convex hull in a multi-dimensional space, within said space comprises adjacent discrete points of a first type and discrete points of at least one other type, the apparatus comprising: location means for locating an unvisited point of said first type on an outer i boundary of said plurality of points of said first type and marking the located point as **Sao: visited; 0 gsaid traversal means for traversing in a predetermined manner the points adjacent to sadpreviously located point; first determination means for determining whether a currently traversed one of said points is a point of said first type, and if so marking said currently traversed point of said first type as visited; woos*:second determination means for determining whether said currently traversed point of the first type and its neighboring points from a convex corner, and if so designating said current point as a convex corner point; repetition masfrrepeating the operations of the location mentraversal 0:006: means, first determination means, second determination mea ns and the first repetition means until all points on said boundary have been visited; and generation means for generating a convex hull from the convex corner points.
  20. 31. A computer program product comprising a computer readable medium including a computer program for detecting corner pixels of one or more sub-images within an image, wherein the image comprises a plurality of pixels and each sub-image comprises a plurality of first pixels adjacent to one another, the computer program product (f comprising: 470286 23 0 *0 0 00 00.9 0@ 0 0 *0 *000 .1 traversal means for traversing in a predetermined manner the first pixels on outer boundaries of said sub-images; and determination means for determining, for each said traversed first pixel, whether a currently traversed first pixel and its neighboring first pixels form a convex corner, and if so designating said currently traversed corner pixel as a convex corner pixel.
  21. 32. A computer program product as claimed in claim 3 1, wherein said determination means comprises: comparison means for comparing the currently traversed first pixel and a plurality of said pixels neighboring said currently traversed first pixel with one or more masks to determine whether said currently traversed first pixel and neighboring pixels form a said corner.
  22. 33. A computer program product as claimed in claim 32, wherein said masks comprises a set of four 3x3 masks of pixels, the set comprising a first mask having said first pixels arranged diagonally, a second mask having said first pixels arranged diagonally in an opposite direction to the first mask, a third mask having said first pixels arranged vertically through the center pixel, and a fourth mask having said first pixels arranged horizontally through the center pixel.
  23. 34. A computer program product as claimed in claim 33, wherein said currently traversed first pixel and said plurality of neighboring pixels form a 3x3 matrix of pixels with the said currently traversed first pixel at the center of the matrix and said comparison means comprises: 25 means for comparing said 3x3 pixel matrix with the set of 3x3 pixel masks, and if said first pixels in said masks do not correspond with said first pixels in said 3x3 pixel matrix then; and means for designating the currently traversed first pixel as a conivex corner pixel.
  24. 35. A computer program product as claimed in claim 3 1, wherein said traversal means comprises: means for locating an unvisited first pixel on any one of said outer boundaries; means for traversing and marking said first pixels along the said any one outer boundary in a first direction commencing at the located first pixel until a said first pixel i which has been previously marked as visited is traversed; and 0 S S*S S .55. S. 9 56 @0 S SO *0S S 0 0 S. S e.g S 000555 470286 2' 2' f' 2'2" 24 means for repeating the operations of the locating means, traversing and marking means until all said first pixels on all said outer boundaries have been marked as visited.
  25. 36. A computer program product as claimed in claim 35, wherein said direction is clockwise.
  26. 37. A computer program product as claimed in claim 35, wherein said direction is anti-clockwise.
  27. 38. A computer program product as claimed in claim 35, wherein said computer program product further comprises means for repeating the operation of said determination means for each said currently traversed first pixel.
  28. 39. A computer program product as claimed in claim 35, wherein the pixels of the i image are arranged in rows and columns and said locating means comprises: means for traversing a row of said pixels until an unvisited first pixel on the said any one outer boundary is located.
  29. 40. A computer program product as claimed in claim 39, wherein the row is traversed in a first direction and then in a second direction. 00go: 41. A computer program product as claimed in claim 35, wherein the pixels of the image are arranged in rows and columns and said locating means comprises: means for traversing a column of said pixels until an unvisited said first pixel on o25 the said any one outer boundary is located.
  30. 0042. A computer program product as claimed in claim 41, wherein the colurm is 0, 000 traversed in a first direction and then in a second direction.
  31. 43. A computer program product as claimed in claim 3 1, wherein the traversal means comprises: means for storing the direction of said currently traversed pixel with respect to said previously traversed first pixel; RA/.F& means for traversing the pixels adjacent said next pixel in a clockwise direction 'from said stored direction. 470286
  32. 44. A computer program product comprising a computer readable medium including a computer program for detecting corner pixels of one or more sub-images within an image, the image comprising a plurality of pixels and each sub-image comprising a plurality of first pixels adjacent to one another, the computer program product comprising: means for traversing the first pixels of each sub-image in a predetermined manner; means for comparing, for each traversed first pixel, the currently traversed first pixel and a plurality of said pixels neighboring said currently traversed first pixel with one or more masks to determine whether or not said currently traversed first pixel and said neighbors form a convex corner.
  33. 45. A computer program product comprising a computer readable medium including a computer program for generating a convex hull in a multi-dimensional space, wherein 15s said space comprises adjacent discrete points of a first type and discrete points of at least one other type, the computer program product comprising: location means for locating an unvisited point of said first type on an outer ****•boundary of said plurality of points of said first type and marking the located point as Svisited; traversal means for traversing in a predetermined manner the points adjacent to said previously located point; first determination means for determining whether a currently traversed one of said points is a point of said first type, and if so marking said currently traversed point of said first type as visited; 25 second determination means for determining whether said currently traversed oo. point of the first type and its neighboring points form a convex corner, and if so °designating said current point as a convex corner point; Sofirst repetition means for repeating the operations of the traversal means, first determination means, and second determination means until a point of said first type which has been previously marked as visited is traversed; second repetition means for repeating the operations of the location means, traversal means, first determination means, second determination means and the first repetition means until all points on said boundary have been visited; and generation means for generating a convex hull from the convex corner points. 470286 -26-
  34. 46. A method of detecting corner pixels, the method substantially as described with reference to Figs. 1 to 12B of the accompanying drawings.
  35. 47. Apparatus for detecting corer pixels, the apparatus substantially as described with reference to Figs. 1 to 13 of the accompanying drawings.
  36. 48. A computer program product comprising a computer readable medium including a computer program for detecting corer pixels, the computer program product substantially as described with reference to Figs. 1 to 13 of the accompanying drawings. DATED this Twentieth Day of February, 2001 Canon Kabushiki Kaisha Patent Attorneys for the Applicant SPRUSON FERGUSON S 6 0 4 S S S SS, S S S. r 0 S S\FiiC 470286 -yi l f
AU50123/99A 1998-09-25 1999-09-24 Method and apparatus for detecting corner pixels of one or more sub-images within an image Ceased AU744206B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
AU50123/99A AU744206B2 (en) 1998-09-25 1999-09-24 Method and apparatus for detecting corner pixels of one or more sub-images within an image

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
AUPP6215 1998-09-25
AUPP6215A AUPP621598A0 (en) 1998-09-25 1998-09-25 Method and appratus for detecting corner pixels of a sub-image within an image
AU50123/99A AU744206B2 (en) 1998-09-25 1999-09-24 Method and apparatus for detecting corner pixels of one or more sub-images within an image

Publications (2)

Publication Number Publication Date
AU5012399A AU5012399A (en) 2000-03-30
AU744206B2 true AU744206B2 (en) 2002-02-21

Family

ID=25628767

Family Applications (1)

Application Number Title Priority Date Filing Date
AU50123/99A Ceased AU744206B2 (en) 1998-09-25 1999-09-24 Method and apparatus for detecting corner pixels of one or more sub-images within an image

Country Status (1)

Country Link
AU (1) AU744206B2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5311305A (en) * 1992-06-30 1994-05-10 At&T Bell Laboratories Technique for edge/corner detection/tracking in image frames
US5418862A (en) * 1992-08-10 1995-05-23 United Parcel Service Of America Method and apparatus for detecting artifact corners in two-dimensional images

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5311305A (en) * 1992-06-30 1994-05-10 At&T Bell Laboratories Technique for edge/corner detection/tracking in image frames
US5418862A (en) * 1992-08-10 1995-05-23 United Parcel Service Of America Method and apparatus for detecting artifact corners in two-dimensional images

Also Published As

Publication number Publication date
AU5012399A (en) 2000-03-30

Similar Documents

Publication Publication Date Title
Kong et al. Topological algorithms for digital image processing
US6839466B2 (en) Detecting overlapping images in an automatic image segmentation device with the presence of severe bleeding
US5187753A (en) Method and apparatus for identification and correction of document skew
US6674904B1 (en) Contour tracing and boundary detection for object identification in a digital image
KR950005231B1 (en) Graphic processor
US8249316B2 (en) Component labeling
CN104951726B (en) Method and device for QR Quick Response Code position sensings
US5129014A (en) Image registration
Agkland et al. The edge flag algorithm—a fill method for raster scan displays
EP1081648B1 (en) Method for processing a digital image
JP5854802B2 (en) Image processing apparatus, image processing method, and computer program
US20190347854A1 (en) System and method for processing a graphic object
US20040085559A1 (en) Apparatus for printing using non-overlapping graphic objects
Moganti et al. Segmentation of printed circuit board images into basic patterns
US6963664B2 (en) Segmentation of digital images
AU744206B2 (en) Method and apparatus for detecting corner pixels of one or more sub-images within an image
US20070110318A1 (en) Method and system for generating polygonal boundary definitions for image objects
JP3415700B2 (en) Closed area extraction device
AU742875B2 (en) Method and apparatus for generating a distance image of an original image
Halabi New algorithm-simulation connected components labeling for binary images
Gay Experience in practical implementation of boundary-defined area fill
JPH06348891A (en) Structure analysis method for graphic coexisting document picture
KR100272128B1 (en) Method for filling image area within continuous contour
JPH11232463A (en) Picture recognizing device and method therefor
JP4519272B2 (en) Pattern inspection apparatus and pattern inspection method

Legal Events

Date Code Title Description
FGA Letters patent sealed or granted (standard patent)