CA2108915C - A system and method for automatic optical inspection - Google Patents

A system and method for automatic optical inspection

Info

Publication number
CA2108915C
CA2108915C CA002108915A CA2108915A CA2108915C CA 2108915 C CA2108915 C CA 2108915C CA 002108915 A CA002108915 A CA 002108915A CA 2108915 A CA2108915 A CA 2108915A CA 2108915 C CA2108915 C CA 2108915C
Authority
CA
Canada
Prior art keywords
wire
pixel
color element
pixels
element values
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.)
Expired - Fee Related
Application number
CA002108915A
Other languages
French (fr)
Other versions
CA2108915A1 (en
Inventor
Edward P. Luke
Damien W. P. Creavin
Robert R. Reetz
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.)
Advanced Interconnection Technology Inc
Original Assignee
Advanced Interconnection Technology 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
Application filed by Advanced Interconnection Technology Inc filed Critical Advanced Interconnection Technology Inc
Publication of CA2108915A1 publication Critical patent/CA2108915A1/en
Application granted granted Critical
Publication of CA2108915C publication Critical patent/CA2108915C/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/0002Inspection of images, e.g. flaw detection
    • G06T7/0004Industrial image inspection
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01RMEASURING ELECTRIC VARIABLES; MEASURING MAGNETIC VARIABLES
    • G01R31/00Arrangements for testing electric properties; Arrangements for locating electric faults; Arrangements for electrical testing characterised by what is being tested not provided for elsewhere
    • G01R31/28Testing of electronic circuits, e.g. by signal tracer
    • G01R31/302Contactless testing
    • G01R31/308Contactless testing using non-ionising electromagnetic radiation, e.g. optical radiation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10016Video; Image sequence
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/10Image acquisition modality
    • G06T2207/10024Color image
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/30Subject of image; Context of image processing
    • G06T2207/30108Industrial image inspection
    • G06T2207/30141Printed circuit board [PCB]

Abstract

An optical inspection system for inspecting faults on circuit boards like printed circuit boards and wire scribed circuit boards is disclosed. A video camera for receiving desired images of hole sites on a wire circuit board is provided. The camera converts each image to electrical video signals. A frame grabber converts electrical video signals to a plurality of pixels and stores information representing color element values contained in each of the pixels. A panel feature detector receives the color element values of the pixel that has to be analyzed and provides a wire indication when the color element value of the pixel corresponds to the wire feature. A
fault detector circuit receives the wire indication from the panel feature detector corresponding to predetermined pixels associated with the hole site for determining faults on the circuit board.

Description

2~.0~~:~.

j8 ~ System axadl t~iethod for ~.utomatic optical Inspection .9 ;.:
~0 This invention relates to an automatic optical e2 inspection system,. and, more particularly, to an optical inspection system for inspecting faults in high density and ha.gh volume discrete wiring panels or wire scribed circuit boards.
Backcdround of the Invention Tn recent times, the electronics industry has moved towards more compact integrated circuit packages with surface-mounted terminal. The density of wiring patterns hare '.'.:;v2 tremendously increased within the recent past. Therefore, many -3 circuit board applications today utilize discrete wiring ..:-'4' technology which inoludes insulated wires crossing over each s~5 other. Consequently, signal paths can run in x, Y, and non-axial directions on the same substrate.
Accordingly, insulated.wire is scribed into an :,3 insulating substrate by-feeding a continuous strand of wire onto the surface of the substrate while simultaneously afgixing the ') wire and cutting it at predetermined interconnection points.
~.L Thus, a wire image of a predetermined interconnect pattern results, which includes discrete or discontinuous wire pieces ~~.p8~~.~~
1 afilxed to the substrate. A wire scribed circuit board is 2 described in U.S. Patent No. 3,674,914.
Tnterconnection points exist at the ends of wires and ;'4 at certain intermediate points along wires in the form of metal '5 plated holes which provide conductive paths to the terminals of external components.
Pfhe locations and the sizes of the holes are '8 predetermined and replicable for each wire scribe board.
''9 Generally, it is preferred to first apply the insulated, ':0 preformed conductor wires to the board surface along a pre-'1 programmed path and to then drill or lace the board at hole-2 sites which are those locations at which terminals are to be .3 located. Plating material may then enter the holes, connecting 4 the wire terminations to external pads.
Once a discrete wiring board has been scribed, it is '.6 necessary to insect the board for any.wiring errors.
Conventionally, a human operator may inspect the board visually.
However, for a typical board there is a multitude of wires, which renders visual inspection highly inefficient and error_ prone. The problem is critical at interconnection sites. Since L the scribed wires at drilling points are stripped for later COnneCt1011S, any SCr7.bl.ng error may cause a °°shOrt°' Or an °°open°°
3 at an l.nterCOnneGt7.On Sl.te.
1-lutomatic optical inspection systems have been quite useful in detecting faults compared to visual inspection by human operators. Conventionally, automatic optical inspection machines have been implemented based on two fundamental methods.

2~.0~~1 .1 The first znethod is the design approach. Thismethod rule scans a board in search of minimum designrule violationshi h a w c re detectable within ~the span of small window. Minimum a very ~;,.,4trace width and latio trace separation vio ns, as well as minuscule defects like scratches targets of design rule are the ~~':check.

~'.'7 The second method is the reference comparison ,.;:.
approach. The reference method compares the test board, pixel ":
by pixel to a representation of a "gol.den board" stored in a 0 memory.
,; ...
A prevalent automatic optical inspection architecture ":..
e:2 includes panel illumination with incoherent light, and image detention with a monochrome charge coupled device (CCD) array.
_:'4 For such systems, inspection of artwork and hole sites is provided by back-lighting, and inspection of conductor against substrate is accaiaplished.~by top-lighting. Tn back-lighting, the illumination; and detection hardware are located on opposite sides of the article under inspection. Tn top-lighting, the =''1 detection hardware and illumination emitter are located on the '' ~ ~ same side.
Automatic optical inspection with top-lighting is based on illuminating the board and detecting different intensities of reflected light. Thus, conductor and substrate may be recognized by the amount of their reflected light. For example, bright shiny copper can be easily differentiated from dull dark substrate.

29.~8J~.
1 r3owever, inspection of copper oxide is not as easy. A
':' 2 difficult inspection task is detection of faults at solder 3 sites. Difficulties arise because salder has an irregularly r' 4 shaped three dimensional surface and is very shiny. These ~5 qualities cause it to reflect light in an irregular manner.
s' 6 Inspection of discrete wiring boards lhas proven to be very A.:
~. 7 difficult as well. Like solder, wire has a curved three ''8 dimensional surface which reflects light irregularly. The way 9 the wire was scribed, whether adhesive has oozed over it, :Lp whether it has suffered any abrasion and the existence of nearby .1 crossovers, are all determinants as to the manner in which~ft '.2 reflects light. Furthermore, a discrete wiring panel prior to encapsulation is strewn with topographic features other than ~4 wire. Bumps, scratches, troughs and ridges in the soft shiny ''S substrate can result in bright reflections which act as wire .6 impostors to con~entional_.-automatic optical inspection systems.
For ex~anple, when viewing a discrete wiring board :8 illuminated from the top, the distribution of wire and substrate 'v'~:9 brightness fall into two broad overlapping domains. In the region of.overlap, analysis based solely on light intensity is ''1 subject to potential, confusion as to the type of material _.Z present. Consideration of spatial structure can help to reduce '.;~ ambiguity, but it is computationally expensive, and often still not decisive. Thus, it becomes necessary to treat marginal decisions conservatively, to err in favor of rejecting good points on a panel rather than authorizing bad points. Such .4 ~10~3J1.~i '' 1 rea ~.tion criteria are a further disadvantage with conventional ~= 2 automatic inspection systems.
The tas~C of differentiating wire from substrate 4 becomes even more difficult when the c;olor of the scribed wire is similar to the color of the substrate. In this event, the <'::6 wire and substrate brightness can overlap substantially, causing many false rejections.
Thus, there is a need to inspect highly dense circuit boards with high ~fflalency and reliability, without the 0 disadvawtages described hereinabove.
.;: 1 . .
;2 Summary of the Invention v:4 ''S Therefore, it is an object of the present invention to :6 provide a reliable system for automatic optical inspection of ;7 circuit boards generally.
It is ~:lso an object of the present invention to provide a system; and a method for automatic optical inspection of discrete wire circuit boards including printed circuit '~.'L . subcomponents of discrete wire circuit boards.
..It is a still further object of the present invention 3 to provide a color based automatic optical inspection system for <:E inspecting circuit boards including printed circuit boards and :''discrete ware circuit boards.
It is also an object of the present invention to provide a color based automatic optical inspection system with t .. - 5 -~:10~~.~
t: 1 the .~bi:l.ity to distinguish substrate and wires havirug similar :2 colors.
Another object of the present invention is to provide 4 an automatic optical inspection system capable of measuring '~: 5 panel stretch and shrinkage as indicated by shifts in the Sy.
!'s6 position of registration coupons.
,;.
~ It is also a further object of the present invention ,.8 to provide an automatic optical inspe<aion system capable~of compensating for any errors arising from incorrectly aligning a .~ circuit board on the inspection X-Y table.
_; , ,...
~:~1 Accordingly, a video camera is disposed above the' ~,,.2 wiring board that needs to be inspected. The video camera ;:;:
%.<'3 receives images of the board and sends the information to an :.:
z';>:4 analyzer which conducts the analysis portion of the system. The i.r5 system uses all color information received from the video ~~::6 camera, and works directly. with °'Red°°, "Green°°, °'Blue°° (RGB) ,;;.:
Y;7 lookup tables. ~n another embodiment of the present invention, ~'%:8 the image data in. RGB format is converted to image data in '°Hue"
°4Saturation" °'Intensity°' (HSI) format. The'system then uses the hue component of the FIST data but ignores the saturation and '.,L intensity components, in order to produce the highest.possible processing speed. In another embodiment of the present invention, instead of lookup tables, neural network technology ~,r;;:
operating directly on RGB data may be used to differentiate ,,,...
K\:.,.
i between wire and substrate.

2~0~~:1G~
1 'fhe system establishes three dimen~oional lookup table 2 representing RGB space. A large fraction of all RGB values 3 belonging exclusively to wire features then address set bits in 4 the wire lookup table. All RGB values which could belong to a substrate feature must address a zero bit in the wire lookup table. Conversely, a large fraction of all RGB values belonging exclusively to substrate features would then address set bits in 8 the substrate lookup table.
The system is first operated in a training mode to 'i0 sample wire and substrate areas:and therefore set up the , 11 corresponding wire lookup and substrate lookup table. Each time lz a sample is made, the areas which the system has been trained to L~ associate with substrate turn green, and the areas which the v'L4 system has been trained to associate with wire turns bright red.
During actual inspection, interconnection sites are .'-6 checked for openy and~short.conditions. A reference file contains information describing the correct wiring at each '''-'.8 interconnection site, including the hole type, and the angle of ':'9 entry and departure of each wire. If an inspected interconnection site appears inconsistent with the reference ''~. file, a fault is deemed detected.
Other obaects and many attendant advantages of the ':3.present invention will become apparent as the invention is more fully described.
_ ~ _ ~a.o~o~
1 Br f Description of the Drawing Figure 1 illustrates one embodiment, of the present invention for automatic optical. inspection of circuit boards.
Figure 2 illustrates an example of a discrete wiring panel to be inspected in accordance with the present invention.
Figure 3 illustrates a functional block diagram of an 8 embodiment of the present invention.
Figures 4A and ~B represent an example of a three '~ZO dimensional RGB space for wire and substrate, respectively.
:'11 Figure 5 illustrates the structure of wire and substrate lookup tables according to one embodiment of 'the.' ~8 present invention.
Figure 6 represents an image with a small open°~circuit ''-5 reticle and a large short circuit reticle imposed on a hole ;''.6 site:
Figurey~7 illustrates an example of pixel/bin map g0.
'8 Figures. 8A and 8B illustrate diagrams of the processed histogram provided by the processed histogram memory.
Figure 9 illustrates a flow chart of operations of cluster analyzer 210.
Figures l0A-10B illustrate a job file which contains '3 pertinent information about all the hole sites to'~be inspected on a panel.
Figure lOC illustrates an example of entry and exit '.:S points at a hole site.
_ g _ ~10~91i 1 Figure 11 illustrates a panel feature detector 2 according to one embodiment of the present invention.
Figure 1~12.P. illustrates another panel feature detectar 4 according to one embodiment of the present invention.
Figures. 12B and 12C illustrate hue threshold parameters T1 and T2.
Figures 13A-13F illustrate some examples of good and 8 defective wire crossings at mole sites.
LO Detailed Descrix~tion of the Drawincrs -' L 1 , .L3 Figure 1 illustrates an embadiment of the present.
::.4. invention for automatic optical inspection of circuit boards.
~5 Computer 10 controls the operation of the system.
'v.fi Computer 10 may be an inexpensive personal computer with '~7 preferably a 16 bit or 32 bit microprocessor.
%, ~V
~'~8 A frame grabber'12 is connected,to the computer. The ~.9 frame grabber may occupy one slot in the computer backplane.
Frame grabber 12, may be one of the readily commerically ~1. available components.
2 Frame grabber 12 is coupled to an RGB video camera 14.
''v-3 The video camera is disposed above a moveable X-Y table 16. The ::4 X-Y table can be moved along the X and Y axes. On top of the 5 table 16, a discrete wiring panel Z8 is disposed for inspection.
A light illuminator 20 provides incident light on the '~ discrete wiring panel 18. A motion controller 22 is connected ':3 to the inpu~./output port of computer 10 and X-Y table 1~.
_ g 210~~~.~
1 An RGB video monitor 24 is connected to frame grabber 2 12 and provides a visual image of the discrete wiring panel site 3 viewed by RGB video camera 14. RGB video camera 14 includes a 4 plurality of charge coupled device arrays receiving reflected light from the discrete wiring panel 18. Frame grabber 12 6 receives images from the RGB video camera 14 in RGB format.
. 7 Therefore, each element in the image is represented by distinct 8 red, green and blue components, Frame gabber 12 converts analog signals representing LO the image viewed by the RGB video camera into a digital two , :.1 dimensional array" The size of the digital two dimensional' --2 array in the frame grabber is 512 x 480 pixels in U.S. and 512 x .3 512 pixels in Europe, There is also a fixed correspondence ::.4 between positions on the photoreceptor chip of the RIB video :.5 camera 14 and the two dimensional array of frame grabber 12.
Therefore, everyypixel location in the two dimensional digital ''.7 array of frame gabber 12 corresponds 'to a unique position in r'v8 the image detected Day the RGB camera.
Thus, the data provided by frame grabber 12 is readily 0 available for the oomputer~s use in a convenient format.
Motion controller 22 receives instructions from .2 computer 10 to move the X-Y table lE to a desired location.
3 Thus, all points on the discrete wiring~panel 18 may be r4 inspected by RGB video camera 24.
Figure 2 illustrates an example of a discrete wiring panel to be inspected in accordance with the present invention.

21U~U1;~
1 A . .urality of scribed wires 28 are disposed on the panel.
2 Wires pass through or end at interconnection sites 30. As 3 illustrated, some of the interconnection sites have no wires 4 crossing through them. Such sites may be drilled later to provide through holes used for power .and ground terminations or for mechanical purposes. Interconnection sites 30 are hole ~7 sites that will be drilled in a later stage of discrete wiring :..:8 panel .manufacturing.
'~ Each hoJ.e site on the discrete wiring panel has a eLO predetermined location and a corresponding predetermined .1 diameter.
,>, Each discrete wiring panel 18 has four registration v.3 coupons 29, one at each corner of the panel. Panels of <''.4 different sizes have coupons in different nominal positions, the ,5 coordinates of which are stored in a file accessible to computer ::6 10. The registration coupons pravide reference points so that :7 the exact.locations of predeteranined hole sites may be found on ;:8 each panel with accuracy..
In order to enable the system to distinguish between a :<;0 wire and,a substrate, a training procedure must first be ::1 initiated. The system inspection capabilities hinge on a three ~'2 dimensional lookup table 34 of figure 1 which represents RGB
.-:3 space.
''''~ . Accordingly, figure 3 illustrates a functional block "-5 diagram of an embodiment of the present invention. As described 11 ~

I:>
h.
G
t ~~.UH~~. i ~ 1 ab. a and illustrated by figure 1, frame grabber 12 receives 2 image information from RGB camera 14.
Microprocessor 10 is coupled to a console monitor 50 :; ::.
4 and a keyboard 52. Thus, an interface between an operator v5 inspecting a board and the system may be provided by utilizing r: 6 the keyboard and a menu displayed .on monitor 50. Microprocessor also monitors and controls an analyzer 40. As it will be ~'. 8 appreciated by those skilled in the art, analyzer 40 may be y:,:..::
t;9 implemented either in hardware or software.
Analyzer 40 includes various subsystems for i''.1 determining the status of wires at hole sites 30.
4v: -3 Panel Feature Detector ':-:4 Yi:..:
One subsystem of analyzer 40 is a panel feature 'v'".7 detector 80. The panel feature detector is capable of r:8 determining whether a pixel.provided by frame grabber 12 ,:.
~,,9 corresponds to awire or substrate of panel 18 under inspection.
0 Panel feature detector,80 includes a wire lookup,table 82, a ~~1 substrate lookup table 84 and an inhibitor 86. Both wire lookup 2 table 82. and substrate lookup table 84 are addressed by a large V.
~;3 fraction of the Red (''R°' ) , Green ( "G°° ) , and Blue ( °'B°' ) values of 4 pixels provided by frame grabber 12.
Thus, look-up tables 82 and,84 are a representation of r5 a three dimensional "R'° oeG°~ e°B~° space.
Figures 4A and 4B represent an example of a three '.:.3 dimensional RGB space 150 and 152 for wire and substrate, 2~~I~J~.;~
1 rep :actively. Thus, the wire bit distribution x.54 .in figure 4A
2 represents points in RGB space which correspond to wire feature, .3 and the substrate~bit distribution 156 in figure 4B represents 4 points in RGB space which correspond to substrate features.
Therefore, all the RGB values that belong to a substrate feature will address a zero bit in the wire RGB space 150 and all the <' 7 RGB values that, belong to a wire feataare address a zero bit in $ the substrate RGB space 152.
Accordin 1 g y, every combination of RGB values would .'0 refer to a spot in the wire or substrate RGB space. The ware 1 and substrate lookup tables could then be addressed by an "R"
.2 and a "G" and a "B" value and the corresponding data can be set ;'3 to "1°' or "0" depending on whether the RGB value belongs to wire o~ substrate. However, a "1" or a "0" may occupy eight bits in :''5 a conventional computer or microprocessor environment. In one .'6 embodiment of th~;presentwinvention, the wire and substrate lookup tables have been set up such that a °'1" or a "0°' value :'3 may occupy one bit anly.
Figure 5 illustrates the structure of wire and substrate.lookup tables 82 and 84 according to one embodiment of the present invention. Each dimension of the table '': corresponding to Red, Green or Blue colors has a resolution of 6 bits, for a total table size of 26214 bits. This translates into 32768 bytes. since the raw data available from frame grabber 12 is provided at eight bits per RGB component, this . represent a four-fold compression in each dimension. Six bits 210~i~J~.~.i 1 p~ dimension, however, has proven 'to be a satisfactory balance 2 between dynamic range and memory conservation.
'7v 3 .Cable 160 in figure 5 corresponds to tables 82 or 84 e:4 of figure 3. Every consecutive 8 bytes span the limits of the blue axis. Each byte contains eight bits, subdividing the blue '°- 6 axis into a total of 64 discrete increments. The green axis r:. 7 also has 64 increments. Adjacent increments along the green rv 8 axis correspond to addresses eight bytes apart in the lookup =9 table. The red axis also has 64 increments. Adjacent ,;,~''LO , increments along the red axis correspond to addresses 512 bytes s -.
,...._1 apart ~8 * 64 = 512) in the lookup table.
-2 Oonsequently, once an RGB value is provided by frame ~'..3 grabber 12, the R and G and B components may be fused into one :: , r.4 18 bit binary number. The sax most significant bits correspond :,.5 to a Red value and the second six most significant bits ;:
-.6 correspond to a green value. The six least significant bits ..
~'7 correspond to a flue value. Thereafter the three least 8 significant bits,aorrespond to Blue value are then stripped and .' ~',9 the remaining 15 bits provide a byte address. Each bit in the °.0 addressed byte may further be addressed by the three least significant bits which were stripped. Therefore, any bit in the ;2 lookup table can be addressed and set to «1°' or o°ooo=
raccordingly.
pr.~
"'3 For example, assuming that a wire feature has R=O G=O and B=27 .4 or X011,011), the bit corresponding to location 162 in table 160 t5 would be set to '~1'~ if table 160 was a wire lookup table. The 5 three most significant bits of Blue value contribute to a byte ,..::, -° 14 ,',,: , ',:- v. . ,. ~ ..; . .
210~~:~J
1 ac, .ess, and the three least significant bits of Blue value, 2 point to a bit location in that byte.
It is then possible to fill up the tables 82 and 84 by 4 setting appropriate bits to a "1" corresponding to an RGB value derived from wire or substrate.
Inhibitor 86 in figure 3 monitors RGB values that have 7 a set bit in bath the wire and substrate lookup table and sets the corresponding bit in the wire lookup table 82 back to zero.
9 Thus, any RGB values that are in both the wire and substrate LO lookup tables 82 and 84 are interpreted as substrate. , -1 In a preferred embodiment of the present invention, .2 frame grabber 12 in figure 3 provides data on a row by row basis '...3 to pixel row buffer 88. The pixel row buffer retains :4 information of all pixels contained in a row and provides this ::.5 information to panel feature detector 80 on a pixel by pixel 'e.s basis. y , Therefore, the input of panel feature detector 80 is ~::8 an RGB value corresponding to a pixel in a row of pixels '.9 provided by pixel row buffer 88, and the output of panel feature '0 detector.80 is a bit at line 83 provided by the wire lookup ;2 table 82 indicating whether the pixel corresponds to a wire or 2 Slot .
,:4 Pixel Retrieve Controller Figure 3 illustrates pixel retrieve controller ~1.
>7- The pixel retrieve controller includes an open/short scan table ~~.U~~J~.~~
1 9~ and a keepout scan table 98. The outputs from open/short 2 scan table 96 and keepout scan table 98 are both coupled to a 3 pixel row transfer controller 94 and a pixel row scan controller 4 92.
The data stored in the openfshort scan table 96 is 6 based on the system°s short and open detection criteria at hole 7 sites and the data stored in the keepout scan table 98 is based 8 on the criteria that some hole sites should remain without any 9 wire crossings.
:.10 It can be appreciated by those skilled in the art that ::-L1. the frame grabber 12 may store the image of a hole site 30.'of ~:L2 figure 2. The data stared in tables 96 and 98 is eacplained more ~3 in detail in conjunction with figure 6.
Figure 6 represents a hole site image 162, with a !5 small open-circuit reticle 164 and a large short circuit reticle :e_6 166 which is an annular ring imposed on the hole site image. Tt '-7 can be appreciated by those skilled in the art that the short .8 circuit reticle and the open circuit reticle may be actually ..9 . displayed on the video monitor at the location of a hole site.
.'~0 Short circuit detection is based on three geometric rules. The ~.'1 rules are applied to the short circuit annular ring 166 which :2 has an inner diameter slightly larger than the diameter of holes ~-3 at inspection sites. The geometric rules are: (a) wires always 4 cross the ring orthogonally; (b) the arc length of any wire '5 crossing is bound by an upper limit; and (c) the ring may be '6 crossed no more than a predetermined number of times. Tn a 1. p, erred embodiment the number of allowed crossings is limited 2 to two.
3 The apep circuit detection ring 164 is substantially a s ~:: 4 circular region at the center of a hole site being inspected.
f:
~:. 5 Open circuit detection discovers a violation when insufficient ,..
wire is found within the open circuit detection ring 164.
y.
~,;..
The inner diameter of the short circuit reticle 166 .8 can change for each new hole size. The width of the short circuit reticle 1~6 varies slightly depending on the inner s,,LO diameter of the short circuit reticle 166.
The open/shart scan table stores for. each row the <'..z number of pixels from a verticle diameter 165 to the outer and (:i:~.3 inner circles formed by short circuit reticle 166. The -:~4 open/short scan table also stores for each row the number of :.5 pixels from the verticle diameter to the circle formed by open circuit reticle ~,N64, ., Thus, for example, for a scan line 168, the open/short 8 scan table stores the number of pixels from the center of the '':9 ring to the outer circle of the short detection annular ring, and the number of pixels from the center of the ring to the 1 inner circle of the short detection annular ring and the number of pixels from the center of the rang ~to the diameter of the 3 open detection ring 164. The number of open/short scan lines depends on the inner diameter of the short detection annular ring. Generally, the larger the annular ring, the open/short ~~o~~~.~
1 sG ~ lines are farther apart in order to keep the number of scan 2 lines from getting too large.
Figure 6B illustrates an example of the contents '4 stored in the open/short scan table 96 of figure 3. Thus, for :5 one particular hole site, fox each op~en/short scan line number, ::6 there are three corresponding distance parameters in pixel :..:
units, For example, for scan line 168, which is the center-most _8 scan line, during inspection the outer bound of short detection '~~~9 reticle is 180 piacels, the inner bound of short detection '>~0reticle 170 pixelsand the bound of detectionreticl~
is open is y::rl50 pixels. Similarly,for scan line numberthree which'is (3) :'.2three scan lines awayfrom center-most line, outer scan the -',.3 bound of short detection reticle is 172 pixels, the inner bound ~.4 of short detection reticle is 160 pixels and the bound of open detection reticle is 42 pixels. Table 96 contains only the open/short scan line numbers that are required to be analyzed.
1d ;7 There may be more than one open/short scan table for a system ":8 with hole diameters of various sizes, since the scan line parameters for each hole site are likely to be different.
..The open/short scan line information is provided to pixel row soap controller 92 and pixel'row transfer controller 94. Pixel row transfer controller 94 receives the parameaters of the next scan line to be analyzed from open/short scan table 96. Pixel row transfer controller 94 then sends the correct n~ber of pixels in the desired scan line to pixel row buffer so '~,'10891~i 1 t t the desired scan line can be retrieved :from frame grabber 2 12.
Pixel mow scan controller 92 receives the pixel 4 boundary information of the short and open circuit reticles from open/short scan table 96 and based on that inforruation, sends a 6 control signal to pixel row buffer 88. Consequently, pixel row 7 buffer 88 sends the corresponding pixel information to wire 8 lookup table 82 on a pixel by pixel basis. The control 9 information provided by pixel row scan controller 92 is basically the address of next pixel to be analyzed in a 11 particular row and column number. The row number being the-scan r'22 line number and the column number being the number of the pixel :'23 to be analyzed in that. row.
Pixel row scan controller 92 also provides the pixel >;::
-15 row and column number to a pixel/bin map 90. The operation of 'w16 pixel/bin map 90y is explained in more detail in conjunction with ,.'l7 figure 6A. It can be appreciated by those skilled in the art ;,'68 that the addresses of pixels in the open and short circuit reticles may be stored individually and subsequently colon informat3.on corresponding to the pixels can be sent to panel ':',1 feature detector 80 based on the addresses of individual 2 pertinent pixels without resort to pixel row buffer ~8.
As illustrated in figure 6A, the short circuit reticle ":4 is divided into many sections or bins a70. According to one 5 embodiment of the invention, the short circuit reticle is 6 divided into 256 bins. ~aoh bin 170 has an assigned bin number.

~~.0~~~.
:~.:. 1 T1. p:ixel/bin map 90 of figure 3 stores the assigned bin number Ffi .
2 of each corresponding, pixel in the short circuit reticl.e 166.
,.
Figure 7 illustrates an example of pixel/bin map 90.
a::::
''. 4 Accordingly, for each t a of hole site :., yp , particular open/short ,:;,y 5 reticle dimensions are utilized by the system. Once the .. 6 appropriate open/short reticle infoxmation is loaded in the ;:7 open/short scan table 96, the data in pixel/bin map 90 will be M"- : , :8 set also. It can be appreciated by referring to figure 6A~tha~t l, n ~..: 9 the pixels contained a.n each scan line may fall into more than ,,,LO one bin in the short reticle 166. As the soap lines move yt1 further away from the center-most.scan line 168, the numbex of 1.2 , bins corresponding to the pixels on the same scan line ~',':~3 increases.
-~'~4 Figure 6A illustrates one example for determining the y ~.5 ban number assigned to pixels 172 and 174. Accordingly, the '~'~,"-6 loan line number~oorresponding to span line 169 and the column '.7 number corresponding to pixel 172 is derived as the X and Y
,s':~. coordinates of pixel 172. Based on that information, angle 81 s 9 'oorresponding to pixel -172, is measured by caloulating the arc ~t0~ tangent (y/x). Similarly, angle ~' corresponding to pixel 3_74 ~~1 is measured. The corresponding bin number is determined as w ~;,2 follows:
20 -°

h, . <, , ' . .
Hin number = _8X256 The bin~number is scaled to eight bit numbers and is 6 stored as bytes X1, X2, . . ., X~ in pixel/bin map 90 of gigure 7 7.
8 It can be appreciated by those skilled in the art that the memory arrangement for open/short reticles and pixel/bin ;'~ L~ conversion may be performed in variou:~ ways. For example, the :'>°11 open/short scan table 96 can store parameters corresponding to , ':'.L2 every scan line present in frame grabber 12 of figure 3. , ''L3 Similarly, pixel/bin map 90 may contain bin numbers assigned to each pixel in every scan line. In that event, when certain scan :''-5 lines are skipped during analysis of only the pertinent scan -6 lines associated with a particular hole type, then a pointer table indicates the location in pixel/bin map where each new scan line begins~r Shorts Detector ' As illustrated in figure 3, the bin number assigned to ~':3 each pixel to be analyzed is sent to short detector 100.
short detector 100 includes a bin histogram memory '5 102. Bin histogram memory 102 also receives a signal from wire lookup table 82 on line 83. Thus, for each pixel to be .7 analyzed, bin histogram memory receives the bin number assigned 3 to that pixel from pixel/bin map 90 and receives a signal ~-ndicating whether that pixel represents a wire or not from wire _ 21 -~1~~J:~~~
1 ~ ~acup table 82. Thus, aFter analyzing a7.1 the pixels of a hole 2 site, a bin histogram of wire class pixels is formed in bin i,;,..
5' 3 histogram memory~102. Far each wire crossing a ho:Le site, there s: >.
~~::
is going to be a peak over a few adjacent corresponding bins in a.
~', 5 the bin histogram memory. A violation may thus be detected when the majority of pixels in the bin histogram cannot be attributed f., :.7 to at most two peaks .
~ 8 It can be a ppreciated by those skilled in the art that the important dada in bin histogram memory 102 may be obscured 4;~' .
g10 due to various system noise. Thus, the data in the bin ~:>:
x:;;':11 histogram ariemory 102 may be further processed to alleviate. 'the ;,::
hr':.12 effects of system noise.
''''13 Accordingly, a digital filter 104 receives bin ~,'' ~'~'s 14 histogram data from bin histogram memory 100. To a first x;-','15 approximation, the wire class pixels associated with a wire v;.16 crossing at the,~hort detection reticle form-a triangular x.;17 distribution asa function of angular position.
'18 Digital filter 1.04 is a moving window averaging filter F:
':19, and its general response is defined by equation (1) below:
.'''2 0 ,,21 (~) ~v22 r.23 Ilk= ~ Sk.,.i-wa-s '~" ~a S -I- S
k-!-+w/1+1 k ',~:24 z=~ i=1 x'25 j~
;:-2 6 .. - 2 2 -1 k re S is 'the input signal; R is the output response of filter 2 104; W is the window width and D is a divisor. According to one 3 embodiment of the~present invention digital falter 104 is 4 defined as equation (2):
:. 7 ~~+i.3 + ~ Sk.i +3 '; 1o i-1 i-1 11 ~

14 ' .:15 The output of filter 104 is then provided to a processed ''16 histogram memory 10& which will contain a smoothened version of '.17 the histogram formed in bin histogram memory 102.
~rx8 Tn order to detect the center of each wire crossing, '19 the data contained in processed histogram memory 106 is provided v:'20 to a digital filter 107. The center of each wire crossing is ~21 necessary information for determining. whether multiple wire ',22- crossings have occurred too, close together,. violating design 23'. rules, and whether actual crossing positions deviate ':'24 su~ficieratly from expected crossing positions to violate ~-:~5 reference rules. A wire crossing center is considered to be the location wherein the wire class pixel density after smoothing 1:7 reaches a maximum.
Sometimes, howevere wire crossings create double-:9 cusped peaks. In such cases, the peak center could be ~~.O~;JIa 1 ids '~ified as either one of the cusps, rather than the small '2 valley in between. Digital filter 107 is designed to prevent 3 this type of error.
digital filter 107 is a peak enhancement filter. Its ;'S response is proportional to signal amplitude, and favors 'r6 triangular peaks. The general response of filter 107 is defined ~;7 by equation (3) as follows:
(3) w/2 w/2 Rk= da I X Sk*;.wa~W' ~ i X Sk.~+wa+1 'f' (w/2 'f' I) S~
i-1 i=1 %:9 where S is the input signal provided by memory 106, R is the output response and 6~1 is the window width.
<z Accorda.ng to one~embodiment of the present invention, ''2 filter parameters defined by equation (4) are as follows:
.> : (4) _7 ~~~Ir; . Rk= ~ 1 X Sk+i-8 + ~ 1 X ..~k.~*B 'i- 8 X Sk I=1 1=I.
the coefficients for 'this filter are:
lr 2r 3,'. 4, 5, 6, 7, 8, 7, 6, 5, 4, 3r 2, 1.

t, . ;.. ' ~'- .
' ' .
' ~~ r 'r ' '~
'~

. .
. ..
.
.
., ~

~ . "'. ,: ..:, 2~.~18~~.
1 Figures. 8A and 8B illustrate diag:rarns of the a ;, 2 processed histogram provided by processed histogram memory 1.06.
3 The output of digital filter 107 is coupled to a f 4 cluster identifier 108. The cluster identifier determines the if.:..
bin numbers corresponding to the centers of the two highest 6 distributions assumed to be wire cro~asing.
7 Accordingly, the cluster identifier 108 provides the 8 bin numbers corresponding to the center of each of the two-peaks 9 248 and 250 of Figs. 8A and 8B to clutster analyzer 110. Cluster ,~';10 analyzer 110 also receives data from processed histogram anemory k':'11 106.
'lz Figure 9 illustrates a~flow chart of operations of ~;>13 cluster analyzer 110. Accordingly, at step 220 cluster analyzer ..:.
E,.., x;;;,'.14 , 110 planes a triangle 242 at curve 240 having the largest peak r in the processed histogram received from the processed histogram -16 memory 106. Thereafter, at step 202, the triangle 242 with a x;::.:17: height ~'Fi1°e is s;et to 1.5 ties the peak height ~'p1o'. At step ~.:LB 204, the triangle. base is set to 2 times the window parameter.
~'L9 , 'The window parameter is used to control the size of the triangle ~~>.0 242 base-and the filter 107 windows. A default value of 15 °''.1 (bins' has been found to be most appropriate to date.
't2 Consequently, at step 206 the area A1 of curve 240 confined ;3 within triangle,242 is measured by counting the wire-pixels in ;4 that area.
;-'S At step 208, cluster analyzer 11o places a triangle 246 at curve 244 having the second largest peak in the processed 21.D~'D:~
1 hi ogram received from 'the processed lzistogram memory 106.
2 Thereafter, at step 210, a triangle 246 with a height H2 is .;.3 placed over curve 244, spaced at least one window width apart 4 from 'the location 248 of the first peak. Height H2 of triangle 246 is set to 1.5 times the peak height P2.
::
At step 212, the area A2 of curve 244 confined within ~'7' triangle 246 is measured by counting t:he wire-pixels in that '' 8 area.
At step..214, cluster analyzer 110 measures the total .:LO area A3 of the entire processed histogram 239 by counting all t:, 'L1 the pixels in all of the histogram bins.
's=:L2 At step 216, the ratio of pixels in area A1 and area L3 A2 aver the total number of pixels in area A3 is determined.
=4 At decision step 22~, the cluster analyzer 110 '~5 determines whether tha ratio measured at step 216 is equal to or ?6 larger than 0.9.a Tf not,.th.e cluster analyzer goes to step 222 v'.7 and sets an °°ERRoR" flag. If, however, the ratio measured at ~~18 step 216 is equal.to or larger than 0.9, the system goes to '.9 , decision step 224, since the majority of the.pixel countsvin the .'~'~ bin histogram memory has been attributed to at most two peaks.
.'1 At decision step 2'24, cluster analyzer 110 determines >2 the distance between the first peak H1 and second peak H2 and ;:3 converts that distance to a degree angle. If the degree angle 4 between two peaks is more than a threshold, the system goes to 'S step 228 t~ set a ~°~O~D°' flag. In one embodiment of the ..6 invention, the threshold is 22° ~f not, the system goes to ~~~L9~,~~
i,' 1 st y 22f~ to set an "ERROR" ~lag. Also, the -k:wo peak positions 5.
~..., 2 are compared with reference positions and if the discrepancy is h2=' , 3 too great, the system generates an error. In a preferred ~,,,,;4 embodiment 45° is an appropriate good/bad threshold.
y ;- 6 O en Detector ~
.' ' 8 k'igure 3 illustrates open deteotor 120. Open detector ~'~' 120 determines whether an open circuit will at a hole 9 occur site =r10 when the hole is actually drilled. Open detector120 includes a ~~'L1wire pixel counter 7.22. The wire pixel counterceives wire re L2 pixel counts from wire lookup table 82 on linewire piicel 83.

~'L3 counter 122 receives pixel counts associated wire pixels with L4 present in open c~.rcuiy reticle 164 of figure 6A.

Therefore the pixel row scan controller 92 and pixel row transfer controller 94 receive from open/short scan table 96 .7 the pixel numbers' present.:on a scan line and confined within the '.8 open circuit ret~cle 164. Thus, the pixels to be analyzed are ;:,.9 transferred to pixel row buffer 88. Once a pixel being analyzed 0 is attributed to wire, the wire pixel counter 122 increases one :'1~ count. Ia can be appreciated by those skilled in the art that ~',2 the pixels for opens detection quay be derived from a single row transfer which serves opera and short detection.
After completion of all scan lines having pixels within the open circuit reticle, the wire pixel count is sent ~o a comparator 124.- Comparator 124 receives a threshold reference from threshold reference memory 128 and compares the number of :, " , -J ~ ' ' ., , ' '.
~... ~
~
~
~~~
~

~,.. , ..
. ;~..; , ... . . :. -, .. .. w . J' "
., ~
, .., ' ~~~sf~,.:
2 ~ 0~J.1.
~~,,, 1 wi. _-pixel counts to threshold reference. IF the number of f~ 2 wire-pixel counts is below the threshold reference, the ;'::; 3 comparator sends an "ERROR" flag to opens counter 126.

ICeeu Out Detector .6 Figure 3 also illustrates keepout detector 130.
~t:',.8 Keepout detector 130 determines whether there are any illegal -9 wire crossings at an unwired hole site. Similar to open ~rLO detector 120, keepout detector 130 includes a wire pixel counter r- 1 132, providing the ware pixel count of a keepout reticle to a '~!2 comparator 134. Comparator 134 then compares the wire pixel, a>.
.3 count provided by wire pixel counter 132 with a threshold ~':,:4 reference stored in threshold reference memory 138. If the ''..5 wire-pixel count ~.s above the threshold reference, the A:.6 comparator sends an °'ERROR" flag to keepout counter 136.
~;::;7 ICee out detector 130 receives wire p , pixel count ~;8 triggers from wire lookup table 82 on line 83. The location of E'.~9 pixels to be analyzed for keepout detection are stored and r ..:
~,~Q, . provided by keepout scan table 98. Keepout scan table 98.
's',:
provides. the scan line number and the number of pixels on each ',:2 scan line in keep out reticle. The information is then utilized 3 by pixel row transfer control 94 and pixel row scan control 92 :'~-4 to send appropriate pixels to wire lookup tablel82, and '5 consequently, wire pixel counts to wire pixel counter 132:

Z Re _stration Controller.

3 Figure 3 also illustrates the registration controller 4 62. Each panel for inspection has four registration coupons one on each corner of the panel. Each position on the panel 18 which needs to be inspected is addressed by X and Y coordinates.
7 Thus, if the panel on the X-Y table 16 is not aligned 8 accurately, the system would not be able to determine a desired '9 position on the panel. Furthermore, due to various reasons, panel 18 may become distorted to an extent that even if it is 'L1 aligned precisely on X-Y table, due to distortions, the system .12 would be unable to determine a desired position on the panel.
r13 The registration controller according to an embodiment of the :.L4 present invention compensates for such misalignment or distortions. To measure the alignment error and dimensional l6 distortion of a panel, the registration controller determines :':7 the position of the four registration coupons. Figure 2 :8 illustrates registration coupons 29 on panel 18. Accordingly, :''.9 eaeh registration coupon has three vertical and horizontal wires.
''~. Registration controller 62 in figure 3 includes a row '.'.'2 . profile buffer 64 and a column profile buffer 66, each receiving ,3 wire-pixel counts from wire lookup table 82 on line 83, Each 'r'~4 element of the row profile buffer provides the sum of wire ~,.'5 pixels found in a particular row of an image. Each element of '6 the column profile buffer provides the sum of wire pixels found .7 in a particular column of an image. The information from row ,, , .
~~.0~~1~
~~> 1 ~. 'file buffer 64 arid column profile buffer 66 is provided to a ~. 2 cluster. identifier 68. Cluster identifier 68 locates all 3, clusters corresponding to wires in the row and column profile.
4 If three clusters were found in each buffer, the information derived in cluster identifier 68 is then provided to 6 cluster analyzer 70. At cluster analyzer 70, the center of the 7 three clusters in the row profile and the center of the three 8 clusters in the column profile are determined. Thus, the y, y 9 coordinates of the center of each registration coupon can be ~,.lo obtained.
K.::?. , The x, y coordinates of the center of each W
x''12 registration coupon is then sent to a compensator 72.
y',:'..13 Compensator 72 compares the actual x, y coordinates of ..,.
,. , i,<14 registration coupons with the reference x, y coordinates of 5~;:~.
~:'.15 registration coupons of an ideal panel. Thereafter, the ;, ,,.
f'='.;16 compensator 72 provides the offset value of x, y coordinates for 17 the panel under inspection, corresponding to where the x.,;18 registration coupons an the panel are and where they should be.
:,.
x:-.19. The offset value includes a translation and a rotation.
. An x, y transformer 58 is coupled to compensator 72.
~1 The x,y transformer provides a transformation matrix between the '~?2 ideal positions of hole sites to be inspected and actual ~~?3 position of those hole sites on the panel.
:;:> 34 >,:..., _ 30 - ' 2~.0~~:~
1 Jc File Figures, and 10A-10B also illustrate a job File 54 4 which contains pertinent information on all the hole sites to be inspected on a panel. B'he first~field H of job file 54 6 designates a hole code 250 based on the size of the hole.
7 Hole code 250 is a pointer to another record 280 of 8 figure 10B having six fields, 266-276. The six fields, 266-276, 9 designate the reticle sizes associated with each hole aode~. The ;10 first three fields, 266-270, contain reticle information used ::ll during automatic inspection. The first three fields reticles :22 define an open circuit reticle 266, short circuit reticle 268, r~13 and keepout reticle 270. The remaining three f9.elds are the v.:14.. reticles used during defect, review, and are chosen in accordance :..15 with accept/reject criteria used during defect review.
The remaining fields of the job file include fields :'.::'17 252 and 254 which represent the x, y coordinates of each hole ;':18 site to be inspected. Fields 256 and 258 represent the entry :;:19 and exit vectors of each wire crossing a hole site.
Figure 10C illustrates an example of entry and exit vectors at a hole site. Accordingly, each hole site is divided ..?2 into a few sections. Thus, for example, wire 282 in figure 10C
'':::3 enters the hole site along vector 1, Ventry=1, arid exits the ':4 hole site along vector 6, Vexit=6.
'~5 The remaining three fields, 260-264, of figure 10A
;6 provide the defect status information for the inspected holes.
w',7 Accordingly, field 26~ is set when a violation after keepowt - 31 - , 2~.~~~1~
1 rE .cle scan 1s encauntered. Similarly, fields 262 and 264 are ~,..', 2 set when vio:l.ations after short/open reticle scan are ~y..: 3 encountered.
~' 4 As mentioned before, mation system controlJ.er 22 of ~' 5 figures 3 and 1 provides motion control for X-Y table 16.
6 l~Iotion system controller 22 receives compensated X, Y
~~ 7 coordinates from X-Y transformer 58 of figure 3. It can be 8 appreciated by those skilled in 'the art that whenever a desired . 9 hole site needs to be inspected, the X, Y coordinates in fields 252 and 254 of job file 54 are provided to XY transformer 58 so :1,1 that the actual hole site location on the panel is obtained:' ''L3 Neural Network Feature Detector 'LS According to another embodiment of the present vl6 invention panel feature detector 80 is substituted by another .:7 panel feature de~eotor based on a neural network.
-8 Figurell illustrates a panel feature detector 300.
'.9 Accordingly, panel feature detector 300 receives RGB information ,'0 . from frame grabber 12 of figure 3 as explained before. The ~1 output of. node 302 indicates whether the RGB values of a pixel ~'r2 correspond to a wire or not.
~~'~3 . Panel feature detector 300 is a two hidden-layer fully ~~'4 connected feed forward neural network. The input. layer contains :5 three nodes 304, 306 and 308 with linear transfer functions.
Nodes 304, 306 and 308 distribute incoming RGB data to the rest r--7 of the network. The following layers, including nodes 310-320 210~~1 ' a. , nodes 322-332, have connections l which do not appear as ::

Y inputs or outputs to the real world, are thus called hidden 2 and 4..
3 layers. All layers with the exceptian of the input layer, have 4 sigmoidal transfer functions. Sigmoidaltransfer functions, ;, '~. also known as ''squashing functions", a large input domain, map ~' 6 typicall ne ative to y g positive infinity, into a small output 1., ~' : range which can be used in panel featuredetector 300 as 8 follows a ~~:

..
i., ~:r:lo f(7~: 1 ~<.:
i::;11 _( F: ',' 12 's:;:. 1 -I- a ~' r 13 .-14 ,: 15 Tn general, a squashing function must be continuous, s;:..
.>:
'~'16 monotonic and differentiable at all paints. In a continuous-...
x,:17 valued artificial neural net implementation with output values t..
18 ranging from O.O~~to 1.0, output values less than 0.5 are x;:,,,:19 normally taken to represent one state such as "false", whereas x;20 output values greater than 0.5 are taken to represewt a r21, complimentary state such a "true". The farther from 0.5 an :22 output value is, the greater its strength. It is generally x'23 desirable to treat a region centered at 0.5'and ranging from 0.4 ':24 to 0.6, for example, as a buffer zone between "true°° and ~:''..z5 "false°' n n '',:: , corresponding to a no Conclusion state .,.
';'"Z6 ACCOrdingly, tine state of node 302 in figure 11 ..: .
,'?.Z 7 indicates wire ~aresenae and ah~~r,r~_P _ Fnri-5,armnro o~,..h ...-,a.~ 4 ..
F~. .., _ 33 _ , 2:L08~~.;
1 p. ~1 feature detector 300 has a connection to every node in 2 following layers.
3 Figure \11B illustrates a single node which could be 4 any of the nodes illustrated in figure 11A. Each node receives input from nodes in the prior layers.
Weighting elements 340-350 govern the influence of 7 each prior node on the subject node 352.
8 Each node adds up the weighted node values received 9 from prior nodes.as follows:
;10 11 ' 12 _j~
13 A= Wo + ~i Ii x Wi ,,,.14 i _ 1 .:
.,.
..; 25 s:;16 ;::;18 '.19 wherein A is called activation of a node, Ii is the node value ,f:;20 received from other nodes. and Wi is the weighting factor v:-21 providing the extent of influence of the prior nodes on the v;'22 subject node. , ~23.~ The activation A for each node K is then squashed by :24 the "squashing function" as follows:
2 s ~(~~; ~
2 7 ~,~
': ;2 8 j -~. a :30 Tn order to train the neural network of fig. 11A a 31 back prapagation method may be implemented. Accordingly wire x;.32 pattern may be provided to panel feature detector 300. Far a _ 34 _ ~~:f~8~).
~'' 1 r fable response it is desired that the output of node 302 be I:
~' 2 0.9 for wire pixels and 0.1 for substrate pixels.
~' 3 However during the training mode for example the A..:
output of node 302 when initially exposed to wire pixels may be ,,...
r: 5 less than 0.9. Consee~zently an error is generated which is a ;: 6 value between the desired 0.9 output and the actual output of node 302.
5,:::.
~,.'; 8 Thereafter the input weights to nodes 322-332 and 310-f:.:, w' 9 320 and 302 are manipulated such that the value of the output at ,':;10 node 302 gets closer to 0.9. The neural net is also exposed to ~:;'?11 substrate pixels. The weights of all the nodes in the netiaork r....
~'v 12 may be manipulated so that the value of the output in node 302 ;;<
ic::, x'::,13 gets closer to 0.1, for all substrate pixels. The neural k ' 14 ' network is exposed to many new wire and substrate pixels and ~~'15 adjusted as necessary until all new pixels are consistently 16 classified correctly. ., ~''~:' 17 Once tie neural network is trained the system will be J:...
~:r:.18 . ready for inspection mode.
zt can be appreciated by those skilled in the art that ~.w20 the neural network need not be im plemented as a fully connected ','.,21 network. Accordingly, a partially connected netw~rk wherein ~;22 some of the weighing elements have a zero value may be ''''23 implemented as well. A zero weighing element''causes a node :,24 connection to vanish.

210~~.~
1 Hue, Based Feature Detector 3 A still,further embodiment of the present invention is 4 provided by substituting panel feature detector 80 of fig. 3, with panel feature detection 350. of figure 12A.
6 Panel feature detector 350 receives RGB information 7 from frame grabber 12 of fig. 3. The panel feature detector 350 8 includes an RGB to HSI converter 352 urhich receives the RGB
9 values corresponding to each pixel being analyzed and converts the RGB value into hue, saturation, and intensity values.
~., :11 Like RGB, an HS7C (hue, saturation, intensity .
':'_'=12 description of a color image uses three components. By using ,'13 HSI components it is possible to utilize only one component, x;':.1.4 especially hue to detect the features of a panel.
For HSI applications frame grabber 12 may be a <':,..16 commercially available device that converts RGB components to ;:'17 HSI components like "HSI COLOR FRAME GRABBER°', manufactured by '~-:~18 DATA TRANSLATION, part number DT-2871.
The H com onent from HS
P I converter 352 is then.
provided to threshold adjuster 354. During training mode %31. threshold adjuster 354 sets upper and lower limit parameters T1 v;2 and T2 within which a.hue value represents a wire-pixel.
'~~3 Figures. 12B and 12C illustrate hue threshold ,4 parameters T1 356 and T2 358. Thus for hue values with the xange of T1 through T2 in fig. 12B a wire-pixel is attributed.
In the HSI domain, hue is expressed as an angle <~'7 between 0 and 360 degrees. Hue is derived by summing the . - 36 -2~10~9:~
1 c~ .:ributions of a Red vector at 0 degrees, a Green vector at 2. 120 degrees, and a Blue vector at 240 degrees.
Fig. 12B :illustrates the hue thresholds T1 and T2 in 4 reference to the Red, Green and Blue vectors. Thus the location of and distance between T1 and T2 can be adjusted until a 6 reliable threshold for determining the features of the panel is 7 found.

.;10 Operation ;:11 ''12 The operation of the system according to the present ''13 invention includes two separate modes. The first mode is that 'x.14 of training the system so that it can differentiate features an °>'~15 the panel. Specifically, during training mode it is possible to '16 teach the system~to differentiate wires from substrate.
"~:w17 As illustrated in Figs..lA and 3, a discrete wiring ~;':v18 panel 28 is placed on the X-Y table 16 for training the system.
y :19 It is assumed that at this'point the system is not capable of ::20 differentiating wire features on panel 18 from the substrate.
':'22 Console monitor 50 provides a menu of options for the operator's ~'v:,22' use. Once the discrete wiring panel 18 is placed on the X-Y
~:=23 table 16, the operator may conduct a manual coupon registration.
'v;24 Microprocessor 10 initializes X-Y transformer 58 with zero ~5 offset values. Therefore, actual X-Y values are provided to ':?6 motion system 22 to move x-Y table 16 until a registration coupon appears under RGB camera 14.
'v'8~ Meanwhile the operator may visually trace the movement ':9 of the X-Y table on video monitor 24.

1 Fx~.~. 213 illustrates a registration coupon 29 that can 2 be seen on the video monitor 29. A cross-hair 900 is 3 superimposed on the image shown on the video monitor. The ':- cross-hair 400 corresponds to the pewter of the camera lens to ::.:.

'' aid the operator in aligning the registration c oupon.

Accordingly X-~Y table Z6 is moved until. tlae center of ~~ cross hair 400 falls on the center of registration coupon 29.

t, .., 8 once the operator determines that a registration coupon is~

aligned, the X,Y .coordinates of the center of the re is ~ g trataon ':10 cou on ma the P y n be stored by pressing a button on keyboard ~2 of :11 Fig. 3. This operation is repeated until X, Y coordinates of -'12 all four registration coupons have been determined. The X-Y

''~.3coordinates are then provided to compensator 72 of Fi g.
so '14 that the actual position of registration coupons can be compared ~.5 with their reference positions stored in panel file 55. A

~...,,~.6separate panel fyle 5a.is.used to describe the coupon i7 arrangements forall the various panel types. Compensator 72 ~:18 then provides the proper translation matrix to X, Y transformer .;::

~r'1958.

..Onoe the panel has been manually registered, the ''~'?1operator may begin the training mode, by pressing another button :;..;.

~?:2 on the keyboaxd 52. Microprocessor ~.0 then superim os p es an r,:':8training rectangle 402 on the image retrieved b ' RGB

y ,;: camera 14.

The dimension of the training rectangle 402 may be provided :;5 algorithmically or by a training rectangle table 93. According to one embodiment of the present invention the length and width 38 _ (:;
((.:
I:.
F, '.

~~10~~~.~
1 0. :he training rectangle is 2 x 2 mils, which encloses a 'ten 2 by ten pixel area. 'training rectangle 402 can be superimposed 3 over any desired portion of frame grabber 12. Video manitor 24 4 displays the image of rectangle 402 moving over displayed image.
The operator then moves the training rectangle 402 5 such that it encloses a piece of a substrate scene. When this is accomplished, the operator instrucas the system to sample i:he RGB values within this training rectangle 402.
Upon receiving "sample" instruction, microprocessor 10 provides a signal to frame grabber 12 to freeze the image being <.11 retrieved by RGB Camera 14. Training rectangle table 93 '12 provides the information necessary to retrieve the pixels ::~.3 enclosed in the training rectangle area to pixel row buffer 88.
,Z~4 Since the RGB values retrieved correspond to a substrate region, :;L5 only the bits in the substrate look-up table associated with the RGB values will ~~e set.to~'!1". Since the digitized video signals contain a significant amount of noise, it is advantageous to sample the pixels within the rectangle a number of t~mes~ In'one embodiment of the present invention, each time 'Q the operator initiates data sampling, all pixels in the :1 rectangle are sampled twenty times. This produces two thousand .v.~-2 samples per operator action. As a result, the relevant regions of the look-upvtable 84 corresponding to the substrate will fill '4 with ''ones" ciuickly. The operator continues to take samples of more substrate scenes. Each tune sampling is complete, the i..
areas of the displayed image now known to be substrate according .. - 39 -1 t~ .:he substrate look-up table become artificial:J.y tinted green.
2 ~.Phis provides the operator with feedback as to how well. the 3 training is progressing. During sampling of the substrate, the 4 operator attempts to capture as many variations as possible.
Every nuance of substrate which is captured is then guaranteed 6 not to be mistaken as wire after training. It is also desirable "7 that the light intensity and focus be varied during training.
8 This incorporates light and focus variations into panel feature 9 detector 80.
Thereafter, the operator starts placing scenes of ,mire '11 in the training rectangle 402 and instructs the system to sample '12 and store the data in the wire look-up table. Again the :13 operator should conduct the training under fluctuating 7.ight and ,:14 focus conditions. Reatures extraneous to wire are prevented ::15 from being incorporated into the wire look-up table 82 by .':-16 keeping them out~of the training rectangle 402. This time all ':17 areas of the image on the video monitor 24 with RGB values x':_;18 corresponding to wire look-up table 82, become tinted ~~rt9 artificially red each time sampling is complete and all areas ''=?0 corresponding to substrate get tinted green again as well.
Inhibitor 86 of Rig. 3 compares the RGB values in both ':2 look-up tables 84 and 82. In the event that an RGB value has 'w:3 set a bit in both substrate look-up table 84 and wire look-up :';4 table 82, the bit in the ware look-up table is set back ts~ zero.
.';5 Accordingly, the RGg value will be interpreted as substrate and .:'6 the pixel corresponding to the RG8 value becomes tinted green.

2.~0~~.~
'' 1 T.he recognition accuracy in the end is a funct9.on of 2 the divers ity of scene characteristics to which the system has ' 3 been exposed during training. To increase the efficiency of 4 training, 'the operator has the ability to dilate the substrate nook-up table 84 and wire look-up table 82. Under dilation, any 6 bits with value "one°' force 'their immediate neighbors in all three dimensions to become °'one°° as well. This has the effect 8 of forcing generalisation. Image regions which by virtue of ,.;:
lack of artificial tinting are observed to be undefined or dotted with noise, quickly change to a defined state under .
X11 dilation. Finally, when all regions of additional novel images :' 12 are strongly and correctly classified, training is complete.
y:13 The operator instructs the system to store the 32k byte wire a-: ".
:14 look-up fable 82 onto RGB file 60 which in one embodiment is a .15 computer disk.
'16 Figs. ~~.2A-12~ illustrate the.training operation of the '17 system when panel feature detector 350 of fig. 12A is z8 substituted for the panel feature detector 80 in fig. 3.
X19_ Accordingly, thresholds 356 and 358 may.be'determined and set by utilizing,video monitor 24 of figs. 1 and 3. The circular ;21 representation of the RGB vectors of fig. 12B can be represented r22 by a linear hue spectrum 360 in fig. 12c. ~Chus hue values v~3. corresponding to RGB vectors can be represented by a number ";~4 between 0 to 255 on hue spectrum 360.
A white bar 362 is superimposed on the image shown on '6 video monitor 24. The operator can move the white bar 362 side X .}

2:~ 089:x.
1 t ~ide along the hue spectrum 350. The operator can also i', 2 shorten or enlarge ~t:he white bar. Thus, the thresholds T~ and 3 Tz on the hue spectrum may be defined.
y:
4 Consequently all pixel elements having hue values within the boundary defined by white bar 362 are associated with 6 wire and pixel elements having hue values outside the boundary defined by white bar~~62 are associated with substrate features.
8 The training of the neural network feature detector is similarly conducted as explained above.
1~ Once the system is trained, it is capable of , 11 inspecting similar wire scribed circuit panels. Accordingly, x''12 the operator places a circuit panel 18 to be inspected on X, Y
r~13 table 16. I~ticroprocessor 10 retrieves the coordinates of ;14 registration coupons one at a time from the panel file. The :25 coordinates of the registration coupon are then provided to XY
'16 table 16 so thaty°the table:is moved such that the vicinity of 'L7 the registrationcoupon is placed under RGB camera 14. Once a .18, registration coupon is encountered by the RGB camera, coupon '-9 , registration 62 is invoked to locate the center of the ''0 registration coupon. The coordinates of the located center thus :.1 become the actual coordinates which are compared with reference 2 coordinates. Accordingly the motion controller 22 moves the XY
3 table 16 in both X and Y coordinates so that row profile buffer .4 64 and column profile buffer 66 can receive wire pixel counts ''5 corresponding to three horizontal and vertical lines of the raga-strat~.on coupon. Registration 62 finally derives the ~:~~~~~~~i 1 c ters o:~ the couponsand provides the information fo.r the ~I.'2 transformation matrixin X Y transformer 58.
>..

~::3 Thereafter, inspection of the hole sites begins 't::... by ,.
, 4 retrieving the coordinates of each hole site to be i nspected ~''S from job file 54. coordinatPC of nanh h~~,., The ... _ __ _ ., fed to X Y transformer 5s so that the actual hole site on a particular panel being inspected can be located.
Once a hole site is positioned under the RGB camera '.:::
~,9 open/short scan table 96 and keepout scan table 98 provide '...: .
~' 10 corresponding data so that the appropriate pixels for analysis ~ 11 are retrieved and sent to panel feature detector 8 0. Thereafter ~.2 short detector 100 determines whether the wire crossings on the r~;13 hole site boundary are violating any rules explained before.
,: , c::; .
::.
~:r;,14 Specifically, short detector 100 determines the number of wire E.C.:
g,;;;15, crossings over the hole site boundary and the locations of entry s . ,;16 and exit.
Similarly, apen detector 120 determines whether the wire is placed accurately enough that a substantial part of it x;;,;:19 is within the open reticle.
~~r,:,:ZO For hole sites where no wire crossings are allowed, C~a.
L::,t ~~'21 the keepout detector determines whether any wire has illegally ~~~2 entered the hole site. The system then analyzes all the hole "'~~3 sites on the wiring panel 18 one at a time~:~ Job Bile 54 ,~<, preferably is formed such that the distances travelled in ,, ~5 visiting all the points is minimized by applying a point order optimization phase. The optimization is done on a per hole-c ss basis. When traversing the points in an optimized a' inspection job file, all poiwts within a given hole class are s encountered together. This is because computational overhead i s involved when the inspection system adjusts for a new hole code.

~: As explained before, every time a new hole code is t o be utilized pixel/bin map 90 lass to be initialized which c involves computational overhead. The hole code changes that are ~:- required during inspection are therefore intentionally minimized h during optimization.
, .

.: :
.

ss~1flEvery time a defect is determined, the information ;;:;.:

~\.1~.corresponding to the hole site is stored in a d f t e ec file 56.

:I2 Once all the hole sites have been inspected 'the s st , y em goes to review mode, wherein the operator can visually inspect all hole '''~.4sites having apparent defects.

i The locations of defective hole sites are retrieved ;
~

f'16 from defect filew56 for manual inspection. The operator then ~:i7 determines whether errors flagged by the system are significant ~,18 or not and whether they can be easily corrected. Thus the task ':~9 of inspecting many hole sites becomes increasingly reliabl , e and a' o simple.

Figures 13A-13F illustrate some exam les f i p o w re '.;2 crossings at hole sites. Accordir3gly, figure a3A illust t ra es a '3 defective wire termination, since wire 282 does not end 4 sufficiently within the open circuit reticle 1.64. Therefore, it is likely that when the hole site is drilled, an open circuit ..6 occurs for lack of connection between wire 282 and the _ 44 ~~~~~~.a 1 c iuc~tive plating to enter the drilled hole site. Conversely, ~; 2 figure x3D illustrates a proper wire termination having k'v 3 sufficient mass within 'the open circuit reticle 1G~. Similarly, :figures 13B and 13E illustrate a defective wire inflection and a ~' 5 desired wire inflection. Figure 13C illustrates a defective c. 6 hole site which can lead to a possible short circuit occurrence f.
,..
when the hole is drilled. In the example illustrated by figure ::.
F:y:8 13C, the short circuit detection will detect mnrA than, ~-~~~ ~..,; r~
crossings due to illegal wire 283 crossing the hole site.
a:v'-.
'~%.:10 Figure 13F illustrates the desired situation for wire crossings.
a ;, . , ~'' Zl It can be appreciated by those skilled in the art'that ;'3.2 the system according to the present invention may be easily y;.
:;13 modified to perform inspection of printed C~Y'CU71-_ ht~arr7r ~~:;.14 Consequently, the system may be trained to differentiate between a,>
~~;:.15, the conductor traces on the printed circuit board and the x:16 substrate over w~icYa the conductor traces are disposed. The ~f,1:7 system of the present invention is particularly advantageous in ,;18 situations where the light intensity reflected from the ,.
~,~19, conductor trace and the substrate are very similar.
~ X20 Conventi~nal black and white ima~ina systems as mPnt; nn~.~ har-~,ro become ineffective when the light intensity reflected from the .v °52 conductor trace is similar to the light intensity reflected from :;
i.3 the substrate.
Accordingly, far printed circuit board inspection, ~s::5 appropriate design rules commonly known in the art- ma,~ h ~:'6 implemented such that conductor traces comply with certain .:;

2.~089~
1 m., ..mum design requirements. For example, threshold tolerances :, ,';~ 2 may be sat for the width of conductors or the gap between two i:~:,, 3 conductors below which the printed circuit board would not be .<:::
'- 4 acceptable.
As illustrated and described above, the invention can 6 be implemented by various embodiments. The invention in its 7 broader aspects is therefore, not limited to the specific 8 embodiments herein shown and described but departures may be 9 made therefrom within the scope of the accompanying claims 1G without departing from the principles of the invention and , 11 without sacrificing its chief advantages. '

Claims (40)

1. An optical inspection system for detecting faults at potential hole sites of a wire scribed circuit board having a plurality of wires scribed on a substrate, comprising:
a video camera for receiving images of desired hole sites on said wire scribed circuit board, said video camera converting each image to electrical video signals;
an image storage memory for storing color element values indicative of the chromaticity of a plurality of pixels derived from said electrical video signals;
a panel feature detector receiving said color element values of a pixel to be analyzed from said image storage memory, providing a wire indication when said color element values of said pixel correspond to a wire feature;
a pixel retrieve controller providing command signals to said image storage memory to transmit to said panel feature detector color element values corresponding to predetermined pixels associated with a hole site to be analyzed; and an open detector circuit receiving said wire indication from said panel feature detector corresponding to said predetermined pixels associated with said hole site, said open detector determining whether an open circuit could occur when said hole site is drilled;
wherein said pixel retrieve controller further comprises an open scan table associated with a hole site having a plurality of corresponding scan lines said open scan table for each said scan line storing boundary values for an open circuit region, where said boundary values are used to derive said command signals.
2. The system according to claim 1 further comprising:
a keepout detector circuit receiving said wire indication from said panel feature detector corresponding to said predetermined pixels associated with said hole site, said keepout detector circuit determining whether no wire is crossing said hole site.
3. The system according to claim 2 wherein said pixel retrieve controller further comprises:
a keepout scan table associated with a hole site having a plurality of corresponding scan lines said keepout scan table for each said scan line storing:
the number of pixels from said vertical diameter crossing through said hole site to the circle formed by a keepout reticle.
4. The system according to claim 2 wherein said predetermined pixels correspond to a keepout reticle superimposed on said hole site and said keepout detector further comprises:
a wire pixel counter; and a comparator for determining whether the number of wire pixels detected in said keepout reticle are less than a predetermined threshold.
5. The system according to claim 1 wherein said image storage memory comprises a frame grabber providing data on a scan line basis to a pixel row buffer, said pixel row buffer retaining information of all pixels contained in a scan line and providing said information to paid panel feature detector on a pixel by pixel basis.
6. The system according to claim 1 wherein said boundary values include the number of pixels from said vertical diameter crossing through said hole site to a circle formed by said open circuit region.
7. The system according to claim 1 wherein said predetermined pixels correspond to said open circuit region superimposed on said hole site and said open detector circuit further comprises:
a wire pixel counter; and a comparator for determining whether the number of wire pixels detected in said open circuit region is above a predetermined threshold.
8. The system according to claim 1 wherein said panel feature detector further comprises:
a wire look up table representing a three dimensional RGB space, said wire look up table addressed by a number corresponding to the magnitude of said color element values of a pixel provided by said image storage memory, wherein said wire indication is provided when said magnitudes of said color element values correspond to a wire feature.
9. The system according to claim 1 wherein said panel feature detector further comprises:
an RGB to hue extractor receiving the RGB values corresponding to each pixel being analyzed and providing a hue component corresponding to said pixel being analyzed;
and a threshold adjuster having a first and a second hue parameter defining a range of hue values such that said pixel being analyzed is attributed to a wire pixel when the value of said hue component corresponding to said pixel being analyzed is within said range of hue values.
10. The system according to claim 1 wherein said panel feature detector further comprises:
a neural network having an input layer containing three nodes with linear transfer functions for distributing incoming RGB data corresponding to a pixel to be analyzed to the rest of said neural network;
a plurality of hidden layers containing a plurality of nodes, each node having connections to predetermined nodes in following layers;
an output node providing said wire indication indicating whether said pixel to be analyzed is a wire pixel or a substrate pixel;
11. The system according to claim 10 wherein said neural network is a two hidden layer fully connected feed forward network.
12. An optical inspection system for detecting faults at potential hole sites of a wire scribed circuit board having a plurality of wires scribed on a substrate, comprising:
a video camera for receiving images of desired hole sites on said wire scribed circuit board, said video camera converting each image to electrical video signals;
an image storage memory for storing color element values indicative of a chromaticity of a plurality of pixels derived from said electrical video signals;
a panel feature detector receiving said color element values of a pixel to be analyzed from said image storage memory, providing a wire indication when said color element values of said pixel correspond to a wire feature;
a pixel retrieve controller providing command signals to said image storage memory to transmit to said panel feature detector color element values corresponding to predetermined pixels associated with a hole site to be analyzed; and a short detector circuit receiving said wire indication from said panel feature detector corresponding to said predetermined pixels associated with said hole site, said short detector circuit determining whether a short circuit could occur when said hole site is drilled;
wherein said pixel retrieve controller further comprises a short scan table associated with a hole site having a plurality of corresponding scan lines said short scan table for each said scan line storing boundary values for a short circuit region, where said boundary values are used to derive said command signals.
13. The system according to claim 12 wherein said stored boundary values include the number of pixels from a vertical diameter crossing through said hole site to the outer and inner circles formed by said short circuit region.
14. The system according to claim 12 wherein said panel feature detector further comprises:

a wire look up table representing a three dimensional RGB space, said wire look up table addressed by a number corresponding to the magnitude of said color element values of a pixel provided by said image storage memory, wherein said wire indication is provided when said magnitudes of said color element values correspond to a wire feature.
15. An optical inspection system for detecting faults at potential hole sites of a wire scribed circuit board having a plurality of wires scribed on a substrate, comprising:
a video camera for receiving images of desired hole sites on said wire scribed circuit board, said video camera converting each image to electrical video signals;
an image storage memory for storing color element values indicative of a chromaticity of a plurality of pixels derived from said electrical video signals;
a panel feature detector receiving said color element values of a pixel to be analyzed from said image storage memory, providing a wire indication when said color element values of said pixel correspond to a wire feature;
a pixel retrieve controller providing command signals to said image storage memory to transmit to said panel feature detector color element values corresponding to predetermined pixels associated with a hole site to be analyzed; and a short detector circuit receiving said wire indication from said panel feature detector corresponding to said predetermined pixels associated with said hole site, said short detector circuit determining whether a short circuit could occur when said hole site is drilled;
wherein said predetermined pixels correspond to an annular short circuit region superimposed on said hole site and said short detector circuit further comprises:
a bin histogram having a plurality of bins dividing said annular short circuit region into equal parts, each bin having a corresponding bin number, said bin histogram storing the number of detected wire pixels associated with each bin number;

a digital filter for processing data stored in said bin histogram for identifying the peak occurrences of said detected wire pixels; and an analyzer for determining whether the ratio of the number of wire pixels detected in the highest two peak occurrences over the total number of pixels in said bin histogram is above a predetermined threshold.
16. An optical inspection system for detecting faults at hole sites of a wire scribed circuit board having a plurality of wires scribed on a substrate, comprising;
a video camera for receiving images of desired hole sites on said wire scribed circuit board, said video camera converting each image to electrical video signals;
an image storage memory for storing color element values indicative of the chromaticity of a plurality of pixels derived from said electrical video signals;
a panel feature detector receiving said color element values of a pixel to be analyzed from said image storage memory, providing a wire indication when said color element values of said pixel correspond to a wire feature;
a pixel retrieve controller providing command signals to said image storage memory to transmit to said panel feature detector color element values corresponding to predetermined pixels associated with a hole site to be analyzed;
a fault detector circuit receiving said wire indication from said panel feature detector corresponding to said predetermined pixels associated with said hole site, said fault detector determining whether a fault is present at said hole site; and a registration analyzer that aligns said wire scribed circuit board with respect to a desired location comprising:
a row profile buffer receiving said wire pixel indication from said panel feature detector;
a column profile buffer receiving said wire pixel indication from said panel feature detector;

a cluster identifier for recognizing significant wire pixel peak occurrences in said row and column profile buffers;
a cluster analyzer for determining the x-y coordinates of the center of said wire pixel peak occurrences corresponding to data in said row profile buffer and said column profile buffer; and a compensator for comparing the desired location of said center and actual location of said center determined by said cluster analyzer and computing a transformation matrix so that errors arising from an improper alignment of said wire scribed circuit board can be compensated.
17. An optical inspection system for detecting faults at hole sites of a wire scribed circuit board having a plurality of wires scribed on a substrate, comprising;
a video camera for receiving images of desired hole sites on said wire scribed circuit board, said video camera converting each image to electrical video signals;
an image storage memory for storing color element values indicative of the chromaticity of a plurality of pixels derived from said electrical video signals;
a panel feature detector receiving said color element values of a pixel to be analyzed from said image storage memory, providing a wire indication when said color element values of said pixel correspond to a wire feature;
a pixel retrieve controller providing command signals to said image storage memory to transmit to said panel feature detector color element values corresponding to predetermined pixels associated with a hole site to be analyzed;
a fault detector circuit receiving said wire indication from said panel feature detector corresponding to said predetermined pixels associated with said hole site, said fault detector determining whether a fault is present at said hole site; and wherein said panel feature detector further comprises:

a wire look up table representing a three dimensional RGB space said wire look up table addressed by a number corresponding to the magnitude of color element values of a pixel provided by said image storage memory, where the data corresponding to said address is set to "1" when said color element values of said pixel correspond to a wire pixel, where the data has been stored during a previous training mode;
a substrate look up table representing a three dimensional RGB space addressed by a number corresponding to the magnitude of color element values of a pixel provided by said image storage memory, where the data corresponding to said address is set to "1" when said color element values of said pixel correspond to a substrate pixel, where the data has been stored during a previous training mode; and an inhibitor for setting an addressed bit in said wire look up table back to zero whenever the same color element values of a pixel have set an addressed bit in both wire and substrate lookup tables to "1".
18. The system according to claim 17 further comprising a dilator locating set bits in said wire and substrate look up table with a value "one" and setting immediate neighbors of said set bits in all three dimensions of said RGB space corresponding to said wire and substrate look up tables with a value "1".
19. An optical inspection system for differentiating wires from substrate in a wire scribed circuit board having a plurality of wires scribed on said substrate, comprising:
a video camera for receiving desired images on said wire scribed circuit board, said video camera converting each image to electrical video signals;
conversion means for converting said electrical video signals into a plurality of scan lines having a plurality of pixels;

a memory means for storing information representing RGB
color element values contained in each of said pixels of said image;
means for sampling regions on said wire scribed circuit board during a training mode;
a wire look up table for representing points in RGB
space corresponding to wire features and a substrate look up table for representing points in RGB space corresponding to substrate features, where the contents of said wire look up table are determined from samples of wire regions obtained by said sampling means, and the contents of said substrate look up table are determined from samples of substrate regions obtained by said sampling means.
20. The system according to claim 19, wherein each of said tables have a plurality of bytes and said wire look up table and said substrate look up table are addressed by a combination of binary values representing each component of said RGB color element values, wherein the least three significant bits of said address point to a bit location in one of said bytes and the remaining most significant bits of said address point to a byte location.
21. The system according to claim 20 wherein all RGB values that belong to wire features will address a "one" bit in said wire look up table and all RGB values that belong to a substrate feature will address a "one" bit in said substrate look up table.
22. The system according to claim 21 wherein an addressed bit in said wire look up table is set back to "zero"
whenever the same RGB values corresponding to a pixel have set an addressed bit in said substrate look up table to "one".
23. A method for detecting faults at hole sites of a plurality of wire scribed circuit boards each having a plurality of wires scribed on a substrate, comprising the steps of:
receiving desired images from each wire scribed circuit board;
converting each one of said desired images to a plurality of pixels;
deriving color element values indicative of chromaticity corresponding to each pixel of said desired images;
displaying said desired images from said wire scribed circuit board;
providing a training mode for a sample wire scribed circuit board by, sampling wire regions of said circuit board for retrieving color element values associated with wire;
sampling substrate regions of said circuit board for retrieving color element values associated with substrate;
tinting, to a first color, all pixels in said displayed image having color element values corresponding to said retrieved color element values associated with wire; and tinting, to a second color, all pixels in said displayed image having color element values corresponding to said retrieved color element values associated with substrate.
24. The method according to claim 23 further comprising the steps of:
providing an inspection mode for each one of said plurality of wire scribed circuit boards by, retrieving color element values corresponding to predetermined pixels associated with a hole site to be analyzed and providing a wire indication when said color element values correspond to said retrieved color element values associated with wire;

analyzing said wire indication corresponding to said predetermined pixels to determine whether a fault could occur when said hole site is drilled.
25. The method according to claim 23 further comprising the steps of:
setting appropriate locations in a wire look up table addressed by color element values associated with wire to a "1" denoting wire indication;
setting appropriate locations in a substrate look up table addressed by color element values associated with substrate to a "1" denoting substrate indication; and inhibiting an addressed bit in said wire look up table back to zero whenever the same color element values of a pixel have set an addressed bit in both wire and substrate look up tables to "1".
26. A method for detecting faults at hole sites of a plurality of wire scribed circuit boards each having a plurality of wires scribed on a substrate, comprising the steps of:
receiving desired images from each wire scribed circuit board;
converting each one of said desired images to a plurality of pixels;
deriving hue values corresponding to each pixel of said desired images;
displaying said desired images from said wire scribed circuit board;
providing a training mode for a sample wire scribed circuit board by, setting two hue thresholds so that all pixels in said displayed image having hue values in a range between said two hue thresholds are associated with wire pixels and all other pixels are associated with substrate pixels.
27. An optical inspection system for detecting faults at desired inspection sites of a printed circuit board having a plurality of conductor traces disposed on a substrate, comprising;
a video camera for receiving images of said desired inspection sites on said printed circuit board, said video camera converting each image to electrical video signals;
an image storage memory for storing information representing color element values indicative of the chromaticity of a plurality of pixels derived from said electrical video signals;
a panel feature detector receiving said color element values of a pixel to be analyzed from said image storage memory, providing a conductor trace indication when said color element values of said pixel correspond to a conductor trace;
a pixel retrieve controller providing command signals to said image storage memory to transmit to said panel feature detector color element values corresponding to predetermined pixels associated with said desired inspection site to be analyzed;
a fault detector circuit receiving said conductor trace indication from said panel feature detector corresponding to said predetermined pixels associated with said desired inspection site, said fault detector determining whether a fault is present at said desired inspection site; and wherein said panel feature detector is provided with a training mode where conductor trace regions are sampled for establishing color element values associated with conductor trace and substrate regions are sampled for establishing color element values associated with substrate.
28. The system according to claim 27 wherein said fault detector determines the gap between two conductor traces and compares said gap with a predetermined threshold value.
29. The system according to claim 28 wherein said fault detector further determines the width of a conductor trace to be inspected and compares said width with a predetermined threshold value.
30. The system according to claim 29 wherein said image storage memory comprises a frame grabber providing data on a scan line basis to a pixel row buffer, said pixel row buffer retaining information of all pixels contained in a scan line and providing said information to said panel feature detector on a pixel by pixel basis.
31. The system according to claim 27 further comprising a registration analyzer comprising:
a row profile buffer receiving said conductor trace pixel indication from said panel feature detector;
a column profile buffer receiving said conductor trace pixel indication from said panel feature detector;
a cluster identifier for recognizing significant conductor trace pixel peak occurrences in said row and column profile buffers;
a cluster analyzer for determining the x-y coordinates of the center of said conductor trace pixel peak occurrences corresponding to data in said row profile buffer and said column profile buffer; and a compensator for comparing the desired location of said center and actual location of said center determined by said cluster analyzer and computing a transformation matrix so that misalignment errors or said printed circuit board can be compensated.
32. The system according to claim 27 wherein said panel feature detector further comprises:

a conductor trace look up table representing a three dimensional RGB space said conductor trace look up table addressed by a number corresponding to the magnitude of color element values of a pixel provided by said image storage memory, the data corresponding to said address set to "1" when during said training mode said color element values of said pixel correspond to a conductor trace pixel;
a substrate look up table representing a three dimensional RGB space addressed by a number corresponding to the magnitudes of color element values of a pixel provided by said image storage memory, the data corresponding to said address set to "1" during said training mode when said color element values of said pixel correspond to a substrate pixel; and an inhibitor for setting an addressed bit in said wire look up table back to zero whenever the same color element values of a pixel have set an addressed bit in both wire and substrate lookup tables to "1".
33. The system according to claim 27 further comprising a dilator locating set bits in said conductor trace and substrate look up table with a value "one" and setting immediate neighbors of said set bits in all three dimensions of said RGB space corresponding to said conductor and substrate look up tables value "1".
34. An optical inspection system for detecting faults at desired inspection sites of a printed circuit board having a plurality of conductor traces disposed on a substrate, comprising;
a video camera for receiving images of said desired inspection sites on said printed circuit board, said video camera converting each image to electrical video signals;
an image storage memory for storing information representing color element values indicative of the chromaticity of a plurality of pixels derived from said electrical video signals;

a panel feature detector receiving said color element values of a pixel to be analyzed from said image storage memory, providing a conductor trace indication when said color element values of said pixel correspond to a conductor trace;
a pixel retrieve controller providing command signals to said image storage memory to transmit to said panel feature detector color element values corresponding to predetermined pixels associated with said desired inspection site to be analyzed;
a fault detector circuit receiving said conductor trace indication from said panel feature detector corresponding to said predetermined pixels associated with said desired inspection site, said fault detector determining whether a fault is present at said desired inspection site; and wherein said panel feature detector further comprises:
an RGB to hue extractor receiving the RGB values corresponding to each pixel being analyzed and providing a hue component corresponding to said pixel being analyzed;
and a threshold adjuster having a first and a second hue parameter defining a range of hue values such that said pixel being analyzed is attributed to a trace pixel when the value of said hue component corresponding to said pixel being analyzed is within said range of hue values.
35. The system according to claim 27 wherein said panel feature detector further comprises:
a neural network having an input layer containing three nodes with linear transfer functions for distributing incoming RGB data corresponding to a pixel to be analyzed to the rest of said neural network;
a plurality of hidden layers containing a plurality of nodes, each node having connections to predetermined nodes in following layers;
an output node indicating whether said pixel to be analyzed is a conductor trace pixel or a substrate pixel.
36. The system according to claim 35 wherein said neural network is two hidden layer fully connected feed forward network.
37. A method for detecting shorts at potential hole sites of a wire scribed circuit board having a plurality of wires scribed on a substrate, comprising the steps of;
receiving desired images from said wire scribed circuit board;
converting said desired images to a plurality of pixels;
retrieving from said plurality of pixels those pixels located within boundaries of an annular short circuit reticle superimposed on a hole site;
analyzing said retrieved pixels so as to provide wire indications indicating whether said pixels correspond to wires scribed on said substrate;
dividing said annular short circuit reticle into equal parts each said equal part encompassing a plurality of said retrieved pixels and associated with a bin;
assigning to each bin a bin value indicative of the number of said wire indications occurring within said bin's associated equal part; and processing said bin values to identify clusters for determining whether a short circuit could occur when said hole site is drilled.
38. The method according to claim 37 wherein said converting step includes associating color element values to said plurality of pixels and said analyzing step retrieves said color element values so as to provide wire indications when said color element values correspond to wires scribed on said substrate.
39. The method according to claim 37 wherein said step of retrieving pixels further includes the step of deriving boundary parameters for said annular short circuit reticle from a short scan table associated with a hole site.
40. The method according to claim 37 wherein said step of determining a short circuit further comprises the steps of:
providing a histogram of said bin values;
processing said histogram for identifying the peak occurrences of said wire indications; and determining whether the ratio of the number of wire indications detected in the highest two peak occurrences to the total number of wire indications in said histogram exceeds a predetermined threshold.
CA002108915A 1992-10-22 1993-10-21 A system and method for automatic optical inspection Expired - Fee Related CA2108915C (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US96470592A 1992-10-22 1992-10-22
US964,705 1992-10-22

Publications (2)

Publication Number Publication Date
CA2108915A1 CA2108915A1 (en) 1994-04-23
CA2108915C true CA2108915C (en) 1999-07-13

Family

ID=25508874

Family Applications (1)

Application Number Title Priority Date Filing Date
CA002108915A Expired - Fee Related CA2108915C (en) 1992-10-22 1993-10-21 A system and method for automatic optical inspection

Country Status (5)

Country Link
US (1) US5483603A (en)
EP (1) EP0594146B1 (en)
JP (1) JP2824552B2 (en)
CA (1) CA2108915C (en)
DE (1) DE69331433T2 (en)

Families Citing this family (73)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE38716E1 (en) 1984-12-20 2005-03-22 Orbotech, Ltd. Automatic visual inspection system
USRE38559E1 (en) 1984-12-20 2004-07-27 Orbotech Ltd Automatic visual inspection system
JPH08185952A (en) * 1995-01-05 1996-07-16 Sumitomo Wiring Syst Ltd Method for inspecting connecting state of wire
IL112513A (en) * 1995-02-01 1999-05-09 Ald Advanced Logistics Dev Ltd System and method for failure reporting and collection
US5751910A (en) * 1995-05-22 1998-05-12 Eastman Kodak Company Neural network solder paste inspection system
IE80676B1 (en) * 1996-08-02 1998-11-18 M V Research Limited A measurement system
WO1998010241A1 (en) * 1996-09-05 1998-03-12 Wea Manufacturing, Inc. Color printer scanner
US6201613B1 (en) * 1998-07-22 2001-03-13 Xerox Corporation Automatic image enhancement of halftone and continuous tone images
EP1105716B1 (en) * 1998-08-18 2005-10-26 Orbotech Ltd. Inspection of printed circuit boards using color
US6883714B2 (en) * 1998-12-14 2005-04-26 Stratos Lightwave, Inc. Methods of optical filament scribing of circuit patterns with planar and non-planar portions
ATE272305T1 (en) * 1998-12-14 2004-08-15 Advanced Interconnection Tech IMPROVED METHOD FOR LAYING A WIRE CONDUCTOR ON PLANE AND NON-FLAT SURFACES, IMPROVED PLATE CONNECTION CARDS WITH WIRES LAYED THEREIN AND CHIP CARD PRODUCED BY THIS METHOD
IL131284A (en) 1999-08-05 2003-05-29 Orbotech Ltd Illumination for inspecting surfaces of articles
JP4052498B2 (en) 1999-10-29 2008-02-27 株式会社リコー Coordinate input apparatus and method
JP2001184161A (en) 1999-12-27 2001-07-06 Ricoh Co Ltd Method and device for inputting information, writing input device, method for managing written data, method for controlling display, portable electronic writing device, and recording medium
CA2296143A1 (en) 2000-01-18 2001-07-18 9071 9410 Quebec Inc. Optical inspection system
US6675120B2 (en) * 2000-06-27 2004-01-06 Photon Dynamics, Inc. Color optical inspection system
US6803906B1 (en) * 2000-07-05 2004-10-12 Smart Technologies, Inc. Passive touch system and method of detecting user input
ATE345525T1 (en) * 2000-07-05 2006-12-15 Smart Technologies Inc CAMERA BASED TOUCH SYSTEM
AU2000270373A1 (en) 2000-09-10 2002-03-22 Orbotech Ltd. Reduction of false alarms in pcb inspection
US7058204B2 (en) * 2000-10-03 2006-06-06 Gesturetek, Inc. Multiple camera control system
US7231080B2 (en) * 2001-02-13 2007-06-12 Orbotech Ltd. Multiple optical input inspection system
JP3965288B2 (en) * 2001-10-11 2007-08-29 富士機械製造株式会社 Substrate work result inspection device
US6954197B2 (en) * 2002-11-15 2005-10-11 Smart Technologies Inc. Size/scale and orientation determination of a pointer in a camera-based touch system
US8456447B2 (en) 2003-02-14 2013-06-04 Next Holdings Limited Touch screen signal processing
US7629967B2 (en) 2003-02-14 2009-12-08 Next Holdings Limited Touch screen signal processing
US8508508B2 (en) * 2003-02-14 2013-08-13 Next Holdings Limited Touch screen signal processing with single-point calibration
US7532206B2 (en) 2003-03-11 2009-05-12 Smart Technologies Ulc System and method for differentiating between pointers used to contact touch surface
US7411575B2 (en) * 2003-09-16 2008-08-12 Smart Technologies Ulc Gesture recognition method and touch system incorporating the same
US7274356B2 (en) 2003-10-09 2007-09-25 Smart Technologies Inc. Apparatus for determining the location of a pointer within a region of interest
US20050097483A1 (en) * 2003-11-05 2005-05-05 Hsin-Pang Lu Verifier and method for unknown spacing rule checking
US7355593B2 (en) 2004-01-02 2008-04-08 Smart Technologies, Inc. Pointer tracking across multiple overlapping coordinate input sub-regions defining a generally contiguous input region
US7232986B2 (en) * 2004-02-17 2007-06-19 Smart Technologies Inc. Apparatus for detecting a pointer within a region of interest
US7460110B2 (en) * 2004-04-29 2008-12-02 Smart Technologies Ulc Dual mode touch system
US7492357B2 (en) 2004-05-05 2009-02-17 Smart Technologies Ulc Apparatus and method for detecting a pointer relative to a touch surface
US7538759B2 (en) 2004-05-07 2009-05-26 Next Holdings Limited Touch panel display system with illumination and detection provided from a single edge
US8120596B2 (en) 2004-05-21 2012-02-21 Smart Technologies Ulc Tiled touch system
US7769226B2 (en) * 2005-01-26 2010-08-03 Semiconductor Energy Laboratory Co., Ltd. Pattern inspection method and apparatus
US20070165007A1 (en) * 2006-01-13 2007-07-19 Gerald Morrison Interactive input system
US20070205994A1 (en) * 2006-03-02 2007-09-06 Taco Van Ieperen Touch system and method for interacting with the same
US7574035B2 (en) * 2006-04-07 2009-08-11 United Technologies Corporation System and method for inspection of hole location on turbine airfoils
US9442607B2 (en) 2006-12-04 2016-09-13 Smart Technologies Inc. Interactive input system and method
EP2135155B1 (en) * 2007-04-11 2013-09-18 Next Holdings, Inc. Touch screen system with hover and click input methods
US8094137B2 (en) 2007-07-23 2012-01-10 Smart Technologies Ulc System and method of detecting contact on a display
US8432377B2 (en) * 2007-08-30 2013-04-30 Next Holdings Limited Optical touchscreen with improved illumination
WO2009029764A1 (en) * 2007-08-30 2009-03-05 Next Holdings, Inc. Low profile touch panel systems
US20090207144A1 (en) * 2008-01-07 2009-08-20 Next Holdings Limited Position Sensing System With Edge Positioning Enhancement
US20090213093A1 (en) * 2008-01-07 2009-08-27 Next Holdings Limited Optical position sensor using retroreflection
US8405636B2 (en) * 2008-01-07 2013-03-26 Next Holdings Limited Optical position sensing system and optical position sensor assembly
US20090278816A1 (en) * 2008-05-06 2009-11-12 Next Holdings Limited Systems and Methods For Resolving Multitouch Scenarios Using Software Filters
US20090278794A1 (en) * 2008-05-09 2009-11-12 Smart Technologies Ulc Interactive Input System With Controlled Lighting
US8902193B2 (en) * 2008-05-09 2014-12-02 Smart Technologies Ulc Interactive input system and bezel therefor
US20090277697A1 (en) * 2008-05-09 2009-11-12 Smart Technologies Ulc Interactive Input System And Pen Tool Therefor
US20100079385A1 (en) * 2008-09-29 2010-04-01 Smart Technologies Ulc Method for calibrating an interactive input system and interactive input system executing the calibration method
KR20110066198A (en) * 2008-10-02 2011-06-16 넥스트 홀딩즈 리미티드 Stereo optical sensors for resolving multi-touch in a touch detection system
JP5320967B2 (en) * 2008-10-14 2013-10-23 日立化成株式会社 Wiring inspection apparatus and wiring inspection method
US8339378B2 (en) * 2008-11-05 2012-12-25 Smart Technologies Ulc Interactive input system with multi-angle reflector
US20100229090A1 (en) * 2009-03-05 2010-09-09 Next Holdings Limited Systems and Methods for Interacting With Touch Displays Using Single-Touch and Multi-Touch Gestures
US8692768B2 (en) 2009-07-10 2014-04-08 Smart Technologies Ulc Interactive input system
US20110095977A1 (en) * 2009-10-23 2011-04-28 Smart Technologies Ulc Interactive input system incorporating multi-angle reflecting structure
WO2011066343A2 (en) * 2009-11-24 2011-06-03 Next Holdings Limited Methods and apparatus for gesture recognition mode control
US20110199387A1 (en) * 2009-11-24 2011-08-18 John David Newton Activating Features on an Imaging Device Based on Manipulations
EP2507692A2 (en) * 2009-12-04 2012-10-10 Next Holdings Limited Imaging methods and systems for position detection
US20110193969A1 (en) * 2010-02-09 2011-08-11 Qisda Corporation Object-detecting system and method by use of non-coincident fields of light
US20110234542A1 (en) * 2010-03-26 2011-09-29 Paul Marson Methods and Systems Utilizing Multiple Wavelengths for Position Detection
CN103185560A (en) * 2011-12-29 2013-07-03 鸿富锦精密工业(深圳)有限公司 System and method for detecting circuit width of printed circuit board (PCB)
US20130265411A1 (en) * 2012-04-09 2013-10-10 The Department Of Electrical Engineering, National Chang-Hua University Of Education System and method for inspecting scraped surface of a workpiece
KR20150001094A (en) * 2013-06-26 2015-01-06 삼성디스플레이 주식회사 Method of substrate inspection
CN105810134A (en) * 2016-04-04 2016-07-27 合肥博雷电子信息技术有限公司 Field test device of LED display screen
DE102018204184A1 (en) 2018-03-19 2019-09-19 Leoni Kabel Gmbh Method for monitoring a supply system of a robot
KR102078133B1 (en) * 2018-06-25 2020-02-17 주식회사 수아랩 Method for detecting anomaly of data
CN113118474B (en) * 2021-03-31 2022-05-03 常州大谷液压器材有限公司 Detection-free flange step hole machining method
CN113052829B (en) * 2021-04-07 2022-06-28 深圳市磐锋精密技术有限公司 Mainboard AOI detection method based on Internet of things
CN113375568B (en) * 2021-05-12 2023-03-31 苏州阿普奇物联网科技有限公司 Metal wiredrawing polishing defect detection method based on laser scanning

Family Cites Families (24)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4661984A (en) * 1977-06-03 1987-04-28 Bentley William A Line inspection system
GB2124362A (en) * 1982-07-22 1984-02-15 Marconi Co Ltd Printed circuit board inspection
GB8320016D0 (en) * 1983-07-25 1983-08-24 Lloyd Doyle Ltd Apparatus for inspecting printed wiring boards
US4578810A (en) * 1983-08-08 1986-03-25 Itek Corporation System for printed circuit board defect detection
JPS60263807A (en) * 1984-06-12 1985-12-27 Dainippon Screen Mfg Co Ltd Instument for inspecting pattern defect of printed wiring board
EP0194148A3 (en) * 1985-03-06 1988-05-04 Lockwood Graders (U.K.) Limited Method and apparatus for detecting coloured regions, and method and apparatus for sorting articles thereby
DE3587582D1 (en) * 1985-03-14 1993-10-21 Beltronics Inc Device and method for automatically inspecting objects and for identifying or recognizing known and unknown parts thereof, including errors and the like.
JPS61213612A (en) * 1985-03-19 1986-09-22 Hitachi Ltd Inspecting instrument for pattern of printed board
US4776022A (en) * 1985-04-09 1988-10-04 Aoi Systems, Inc. System for printed circuit board defect detection
DE3540100A1 (en) * 1985-11-12 1987-06-11 Mania Gmbh METHOD FOR THE OPTICAL INSPECTION OF CIRCUIT BOARDS
JPS62180250A (en) * 1986-02-05 1987-08-07 Omron Tateisi Electronics Co Inspecting method for component package substrate
JPS62247478A (en) * 1986-04-21 1987-10-28 Hitachi Ltd Pattern inspection instrument
EP0246145B1 (en) * 1986-05-10 1993-07-28 Fujitsu Limited Pattern inspection system
IL78943A (en) * 1986-05-27 1990-09-17 Ibm Israel Method and apparatus for automated optical inspection of printed circuits
US4783826A (en) * 1986-08-18 1988-11-08 The Gerber Scientific Company, Inc. Pattern inspection system
JP2603947B2 (en) * 1986-09-26 1997-04-23 オリンパス光学工業株式会社 Apparatus for detecting corresponding areas between primary color images
ATE109278T1 (en) * 1986-10-03 1994-08-15 Omron Tateisi Electronics Co DEVICE FOR INVESTIGATION OF AN ELECTRONIC DEVICE IN FIXED ASSEMBLY.
US4928169A (en) * 1987-08-03 1990-05-22 Vexcel Corp. Mensuration frame grabbing apparatus
US4991223A (en) * 1988-06-30 1991-02-05 American Innovision, Inc. Apparatus and method for recognizing image features using color elements
JPH02140886A (en) * 1988-11-21 1990-05-30 Omron Tateisi Electron Co Picture preprocessing device
US5027417A (en) * 1989-03-31 1991-06-25 Dainippon Screen Mfg. Co., Ltd. Method of and apparatus for inspecting conductive pattern on printed board
DE69030869T2 (en) * 1989-12-29 1997-10-16 Canon Kk Image processing method for evaluating objects and device for quality inspection to carry out the method
US5204912A (en) * 1990-02-26 1993-04-20 Gerber Systems Corporation Defect verification and marking system for use with printed circuit boards
US5083087A (en) * 1990-07-17 1992-01-21 Advanced Interconnection Technology, Inc. Broken wire detector for wire scribing machines

Also Published As

Publication number Publication date
DE69331433T2 (en) 2002-10-02
JP2824552B2 (en) 1998-11-11
DE69331433D1 (en) 2002-02-14
CA2108915A1 (en) 1994-04-23
EP0594146A2 (en) 1994-04-27
EP0594146A3 (en) 1994-12-07
EP0594146B1 (en) 2002-01-09
JPH0777496A (en) 1995-03-20
US5483603A (en) 1996-01-09

Similar Documents

Publication Publication Date Title
CA2108915C (en) A system and method for automatic optical inspection
EP0390110B1 (en) Method of and apparatus for inspecting conductive pattern on printed board
CN108802046B (en) Optical detection device and detection method for defects of hybrid integrated circuit assembly
US7239740B1 (en) Image processing apparatus and method, medium storing program for image processing, and inspection apparatus
CN110119680A (en) A kind of electrical cabinet wiring automatic errordetecting system based on image recognition
CN106017328B (en) A kind of polymorphic type line width measuring method and device
CN116309518A (en) PCB (printed circuit board) detection method and system based on computer vision
JP3442163B2 (en) Positioning method and apparatus
JPH0833293B2 (en) Solder shape inspection method
US6636632B2 (en) Image processor and image processing method
US5150422A (en) Method of and apparatus for inspecting conductive pattern on printed board
CN116465908A (en) Optical detection method for printed circuit board production
US5144681A (en) Method of and apparatus for inspecting conductive pattern on printed board
JPS61243303A (en) Visual inspection system for mounted substrate
JP2969011B2 (en) Appearance inspection device for soldering condition
US6088109A (en) System for detecting the presence of deposited metals on soldering points of an integrated circuit board substrate
JP3363103B2 (en) Appearance inspection device
EP0407685B1 (en) Method for inspection of solder joints by x-ray fluoroscopic image and apparatus therefor
JPS59150433A (en) Wire inspection apparatus
JP3385916B2 (en) Wire detection method in wire bonding
JPH08110216A (en) Objective face recognition processor for appearance inspecting apparatus
JP3480642B2 (en) Pattern inspection method
JPH0933225A (en) Apparatus and method for inspection of soldered appearance
JPH09282457A (en) Screen display method of pattern inspection device
Teoh et al. Real-time image processing using transputers

Legal Events

Date Code Title Description
EEER Examination request
MKLA Lapsed