P
USRE38559EExpiredUtilityPatentIndex 51

Automatic visual inspection system

Assignee: ORBOTECH LTDPriority: Dec 20, 1984Filed: Jun 30, 2000Granted: Jul 27, 2004
Est. expiryDec 20, 2004(expired)· nominal 20-yr term from priority
Inventors:CASPI AMIRAMSMILANSKY ZEEVLAPIDOT ZVI
G06T 3/403G06T 7/0004G06T 7/12G06T 2207/30141
51
PatentIndex Score
1
Cited by
70
References
37
Claims

Abstract

A binary map of an object having edges is produced by first producing a digital grey scale image of the object with a given resolution, and processing the grey scale image to produce a binary map of the object at a resolution greater than said given resolution. Processing of the grey scale image includes the step of converting the 2-dimensional digital grey scale image with a filter function related to the second derivative of a Gaussian function forming a 2-dimensional convolved image having signed values. The location of an edge in the object is achieved by finding zero crossings between adjacent oppositely signed values. Preferably, the zero crossings are achieved by an interpolation process that produces a binary bit map of the object at a resolution greater than the resolution of the grey scale image. The nature of the Gaussian function whose second derivative is used in the convolution with the grey scale image, namely its standard deviation, is empirically selected in accordance with system noise and the pattern of the traces on the printed circuit board such that the resulting bit map conforms as closely as desired to the lines on the printed circuit board. The convolution can be performed with a difference-of-two Gaussians, one positive and one negative. It may be achieved by carrying out a one-dimensional convolution of successive lines of the grey scale image to form a one-dimensional convolved image, and then carrying out an orthogonal one-dimensional convolution of successive lines of the one-dimensional convolved image to form a two-dimensional convolved image. Each one-dimensional convolved image may be formed by multiple convolutions with a boxcar function.

Claims

exact text as granted — not AI-modified
What is claimed is:  
     
       1. A process for producing a binary map of an object having a surface each elemental area of which has one or the other of two properties, said process comprising: 
       a) scanning said surface to obtain data representative of a grey scale image of said surface with a given spatial resolution;  
       b) processing said data representative of said grey scale image to produce data representative of a map of said object having signed values that identify adjacent elemental areas of said surface having different properties, said map having the same spatial resolution as said grey scale image; and  
       c) converting said data representative of a map of said object having signed values to a binary map of said surface with a spatial resolution higher than the spatial resolution of said grey scale image.  
     
     
       2. A process according to  claim 1  wherein data representative of the properties of said surface are obtained during the scanning of said surface, and are utilized during process of converting said data representative of a map said object to said binary map. 
     
     
       3. A process according to  claim 2  wherein processing: 
       data includes convolving with a filter function that approximates the second derivative of a Gaussian function.  
     
     
       4. A process according to  claim 2  wherein said data representative of the properties of said surface are obtained by comparing the data representative of a grey scale image of said surface with a calibration function. 
     
     
       5. A process according to  claim 4  wherein the calibration function is independent of the location of elemental areas said surface. 
     
     
       6. A process according to  claim 4  wherein the calibration function is a fixed threshold. 
     
     
       7. A process according to  claim 4  wherein the calibration function is a variable threshold. 
     
     
       8. A process according to  claim 4  wherein the calibration function is dependent on the grey scale levels of the grey scale image. 
     
     
       9. A process according to  claim 8  wherein the data representative of the properties of said surface involve a comparison of the grey level of a pixel in the grey scale image with the grey levels of adjacent neighboring pixels said grey scale image. 
     
     
       10. A process according to  claim 8  wherein a plurality adjacent neighboring pixels to each pixel are involved said comparison. 
     
     
       11. A process according to  claim 10  wherein said comparison is achieved by determining the maximum difference between the grey scale level of the particular pixel and the grey scale levels of neighboring pixels, and averaging the grey scale levels of the particular pixel and the neighboring pixel that produces the maximum difference. 
     
     
       12. A process according to  claim 4  wherein said calibration function is obtained by an off-line calibration process. 
     
     
       13. A process according to claim i  1 wherein the process of converting data to said binary map includes assigning states to those binary map pixels whose states are capable of being classified unambiguously, including those binary map pixels that are homologous to elemental areas of said surface identified in step (b) of  claim 1 , and assigning states to the remainder of the binary map pixels according to pre-set rules. 
     
     
       14. A process according to  claim 13  including computing an ordered pair of numbers for each pixel in the grey scale image, and assigning a tentative state to each pixel in accordance with a threshold function obtained by an off-line calibration process. 
     
     
       15. A process for producing a binary map of an object having a surface each elemental area of which has one or the other of two properties, said processing comprising: 
       a) scanning said surface to obtain data representative of a grey scale image of said surface with a given resolution;  
       b) convolving said data representative of said grey scale image to produce a convolution map of said object having signed values;  
       c) producing from said data representative of said grey scale image, a binary gradient-enable map for identifying pairs of contour pixels which are pixels homologous to elemental areas of said surface having different properties, and a binary adjacency map for identifying pixels whose neighboring pixels have a grey level gradient exceeding a threshold; and  
       using said gradient-enable map and said adjacency map to create a binary of said surface with said given resolution; and  
       e) interpolating said binary map to form a binary map of said object with a resolution higher than the resolution of said grey scale image.  
     
     
       16. A process for off-line production of a threshold function comprising: 
       a) scanning an object having a surface each elemental area of which has one or the other of two properties to obtain data representative of a grey scale image of said surface;  
       b) processing said grey scale image to obtain data representative of a binary image in which pixels homologous to elemental areas of said surface at which transitions of said properties occur have a given state and the remaining pixels have the opposite state;  
       c) convolving said data representative of said grey scale image to produce a convolution score image in which the value of each pixel is dependent on the value of its eight neighbors as determined by a look-up table;  
       d) identify contours in said convolution score image;  
       e) classify each contour as being good, bad, or unsure;  
       f) calculate for each pixel in the grey scale image, an ordered pair of numbers;  
       g) plot the ordered pair of numbers for each contour pixel that in not classified as being unsure;  
       h) compute a threshold function from the plotted ordered pairs of numbers as a function that minimizes both the number of points associated with pixels from good contours that are below the threshold function, and the number of points associated with pixels from bad contours that are above the threshold function.  
     
     
       17. A process for analyzing a surface, comprising: 
       
         developing a first collection of data elements, each data element in said first collection of data elements representing optical characteristics of one of a plurality of areas of a surface to be analyzed;  
       
         modifying at least some of said data elements in said first collection of data elements in accordance with optical characteristics of areas adjacent, in at least two non - parallel directions, to the area represented by the data element being modified; and    
       
         processing at least some of said modified data elements to provide a second collection of data elements each data element in said second collection representing a spatial location within one of said plurality of areas of said surface. 
       
     
     
       18. The invention of  claim 17 , wherein developing said first collection of data elements further comprises: 
       
         creating a grey scale bitmap of said surface. 
       
     
     
       19. The invention of  claim 17 , wherein modifying some of said data elements in said first collection further comprises: 
       
         applying a filter function to said some of said data elements in said first collection. 
       
     
     
       20. The invention of  claim 17 , wherein processing at least some of said modified data elements further comprises: 
       
         interpolating between said modified data elements to locate said boundaries. 
       
     
     
       21. The invention of  claim 17 , wherein processing said modified data elements further comprises: 
       
         developing a plurality of binary data elements for each of some of said data elements. 
       
     
     
       22. The invention of  claim 17 , wherein processing said modified data elements further comprises: 
       
         developing a bitmap of said surface, each element of said bitmap representing one of said spatial locations. 
       
     
     
       23. A method for automated optical inspection of an electrical circuit, comprising: 
       
         forming a digital grey scale image of an electrical circuit, said grey scale image having a given grey scale image spatial resolution;  
       
       
         determining locations of edges within pixels in said digital grey scale image;  
       
       
         producing a digital map of said electrical circuit with reference to said edges, said digital map having a digital map spatial resolution which is greater than said given grey scale spatial resolution; and  
       
       
         analyzing the digital map to detect defects in said electrical circuit. 
       
     
     
       24. A method for inspecting an electrical circuit according to  claim 23  wherein forming a digital grey scale image comprises a acquiring measured grey scale data for a plurality of elemental areas on said electrical circuit and applying said measured grey scale data to grey scale image pixels. 
     
     
       25. A method for inspecting an electrical circuit according to  claim 24  wherein said determining locations of edges comprises determining a sub- grey scale image pixel location of at least part of an edge.   
     
     
       26. A method for inspecting an electrical circuit according to  claim 25  wherein said producing a digital map includes providing digital map elements that are smaller than said grey scale image pixels. 
     
     
       27. A method for inspecting an electrical circuit according to  claim 26  wherein said digital map elements are binary image pixels. 
     
     
       28. A method for inspecting a patterned surface, comprising: 
       
         forming a digital grey scale image of the patterned surface, said digital grey scale image having a given grey scale image spatial resolution;  
       
       
         determining locations of edges within pixels in said digital grey scale image;  
       
       
         producing a digital map of said electrical circuit with reference to said edges, said digital map having a digital map spatial resolution which is greater than said given grey scale image spatial resolution; and  
       
       
         analyzing the digital map to detect defects in the patterned surface. 
       
     
     
       29. A method for inspecting a patterned surface according to  claim 28  wherein forming a digital grey scale image comprises acquiring measured grey data for a plurality of elemental areas on said electrical circuit and applying said measured grey data to grey scale image pixels. 
     
     
       30. A method for inspecting a patterned surface according to  claim 29  wherein said determining locations of edges comprises determining a sub- grey scale image pixel location of at least part of an edge.   
     
     
       31. A method for inspecting a patterned surface according to  claim 30  wherein said producing a digital map includes providing digital map elements that are smaller than said grey scale image pixels. 
     
     
       32. A method for inspecting a patterned surface according to  claim 31  wherein said digital map elements are binary image pixels. 
     
     
       33. A process for analyzing a patterned surface, comprising: 
       
         developing a first collection of data elements, each data element therein representing one of a plurality of areas of said surface; and  
       
         processing at least some data elements in said first collection in accordance with an optical characteristic of areas adjacent, in at least two non - parallel directions, to the area represented by a data element being processed to provide a second collection of data elements, each data element in said second collection representing a spatial location within one of said plurality of areas of said surface.   
     
     
       34. A process for analyzing a patterned surface according to  claim 33  wherein said patterned surface is a surface of an electrical circuit substrate. 
     
     
       35. A process for manufacturing an electrical circuit substrate, comprising: 
       
         depositing at least one conductive member on a surface of an electrical circuit substrate;  
       
       
         developing a first collection of data elements, each data element therein representing one of a plurality of areas of said surface;  
       
         modifying at least some of said data elements in said first collection of data elements in accordance with optical characteristics of areas adjacent, in at least two non - parallel directions, to the area represented by the data element being modified;    
       
         processing at least some of said modified data elements to provide a second collection of data elements each data element in said second collection representing a spatial location within one of said plurality of areas of said surface;  
       
       
         analyzing said second collection of data elements to detect defects in said electrical circuit substrate. 
       
     
     
       36. A process for manufacturing an electrical circuit substrate, comprising: 
       
         depositing at least one conductive member on a surface of an electrical circuit substrate;  
       
       
         forming a digital grey scale image of said electrical circuit substrate, said digital grey scale image having a given grey scale image spatial resolution;  
       
       
         determining locations of edges within pixels in said digital grey scale image;  
       
       
         producing a digital map of said electrical circuit substrate with reference to said edges, said digital map having a digital map spatial resolution which is greater than said given grey scale spatial resolution; and  
       
       
         analyzing said digital map to detect defects in said electrical circuit substrate. 
       
     
     
       37. A process for manufacturing an electrical circuit substrate, comprising: 
       
         depositing at least one conductive member on a surface of an electrical circuit substrate;  
       
       
         developing a first collection of data elements, each data element wherein representing one of a plurality of areas of said surface;  
       
         processing at least some data elements in said first collection in accordance with an optical characteristic of areas adjacent, in at least two non - parallel directions, to the area represented by a data element being processed to provide a second collection of data elements, each data element in said second collection representing a spatial location within one of said plurality of areas of said surface; and    
       
         analyzing said second collection of data elements to detect defects in said electrical circuit substrate.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.