USH1530H - Surface extraction from a three-dimensional data set - Google Patents

Surface extraction from a three-dimensional data set Download PDF

Info

Publication number
USH1530H
USH1530H US08/079,193 US7919393A USH1530H US H1530 H USH1530 H US H1530H US 7919393 A US7919393 A US 7919393A US H1530 H USH1530 H US H1530H
Authority
US
United States
Prior art keywords
data
signal
data value
maximum
representing
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.)
Abandoned
Application number
US08/079,193
Inventor
Ken K. Lee
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.)
Ultrapointe Corp
Original Assignee
Ultrapointe Corp
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 Ultrapointe Corp filed Critical Ultrapointe Corp
Priority to US08/079,193 priority Critical patent/USH1530H/en
Assigned to ULTRAPOINTE CORPORATION reassignment ULTRAPOINTE CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: LEE, KEN K.
Application granted granted Critical
Publication of USH1530H publication Critical patent/USH1530H/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering

Definitions

  • This invention is related to method and apparatus for visually representing a surface that is represented by a three-dimensional set of data.
  • volume in space volume in space
  • volumemetric data three-dimensional data over a volume in space
  • the intensity of reflected light from an object and the object's surroundings yields information regarding properties of that object.
  • the intensity of reflected light from points on or around the surface of an object is a function of the type of material present at the point at which the light is reflected.
  • volumetric data it is desirable to be able to use the volumetric data to ascertain various information regarding the volume of space, i.e., object, being studied.
  • characteristics of the object being imaged that may be of interest are the materials present in various regions of the object or the location of the surface of the object. Consequently, there is a need for methods that use the volumetric data to ascertain the desired information regarding the object.
  • surface image data representing a three-dimensional surface is extracted from a three-dimensional set of data representing characteristics of a volume in space (volumetric data) that encompasses the surface of an object, so that the surface image data can be used to display the surface.
  • the volumetric data can comprise any data set in which comparisons between data can be used to ascertain points on a surface.
  • points on the surface of the object are defined to be the point in the Z-direction at each XY location at which a maximum data value occurs.
  • the volumetric data can be of any type, so long as points on the surface are defined by the location of the maximum data value in the Z-direction at each XY location.
  • the method is equally applicable if the volumetric data is structured such that points on the surface of the object are defined to be the point in the Y-direction at each XZ location at which a maximum data value occurs, or the point in the X-direction at each YZ location at which a maximum data value occurs.
  • each of the pieces of volumetric data represents the intensity of light reflected in a particular direction from a point in space on or near the surface of an object.
  • the light intensity data can represent the intensity of laser light reflected back through an optical path of a confocal laser imaging system after the laser light has been directed toward the surface of an object such as a semiconductor wafer.
  • the surface image data can be used to generate a three-dimensional display of the surface, or portions of the surface data can be used to generate surface profiles or contours. Additionally, the surface image data can be used to generate a surface light intensity map.
  • FIG. 1 is a block diagram illustrating a method according to the invention for extracting surface image data representing a three-dimensional surface from a set of volumetric data so that the surface image data can be used to display the surface.
  • FIG. 2 is a schematic representation of a volumetric data set for use with the invention.
  • FIG. 3A is a view of a display screen including a window showing a three-dimensional surface image obtained by using the method according to the invention and a surface profile obtained by specifying an XZ cut through the surface image data.
  • FIG. 3B is a view of a display screen including windows showing two-dimensional intensity slices obtained by specifying an XY and XZ cut, respectively, through surface image data.
  • FIG. 4 is a block diagram illustrating a method according to another embodiment of the invention for extracting surface image data representing a three-dimensional surface from a set of volumetric data so that the surface image data can be used to display the surface.
  • surface image data representing a three-dimensional surface is extracted from a three-dimensional set of data representing characteristics of a volume in space (volumetric data) that encompasses the surface of an object, so that the surface image data can be used to display the surface.
  • the volumetric data can comprise any data set in which comparisons between data can be used to ascertain points on a surface.
  • each of the pieces of volumetric data represents the intensity of light reflected in a particular direction from a point in space on or near the surface of an object.
  • the light intensity data can represent the intensity of laser light reflected back through an optical path of a confocal laser imaging system after the laser light has been directed toward the surface of an object such as a semiconductor wafer.
  • FIG. 1 is a block diagram illustrating a method according to the invention for extracting surface image data representing a three-dimensional surface from a set of volumetric data so that the surface image data can be used to display the surface.
  • the volumetric data is obtained by any appropriate data acquisition structure using any appropriate method. The method will often depend upon the data acquisition structure and type of surface (e.g., surface of semiconductor wafer) and the type of data (e.g., light intensity).
  • the volumetric data is stored as an array of data in a non-volatile storage medium such as a disk drive, such as is available from Silicon Graphics in Mountain View, Calif. as part no. P3-F252.
  • the volumetric data and the array size data are transferred from the non-volatile storage medium to a structure for processing the data, such as a microprocessor.
  • the data is transferred to the structure for processing by a diskette or other media, or by communication via a link or network such as Ethernet, RS232, etc.
  • the volumetric data and array size data can be transferred to a RAM, then accessed from the RAM by the structure for processing data.
  • the volumetric data can be input to the RAM directly from the data acquisition structure, then transferred to the structure for processing.
  • FIG. 2 is a schematic representation of volumetric data set 200 for use with the invention.
  • Each data block, e.g., data block 204, of volumetric data set 200 represents one piece of data.
  • the size of volumetric data set 200 is defined by dimensions 201, 202 and 203.
  • the dimensions shown in FIG. 2 are merely illustrative; generally, a volumetric data set for use with the invention can have any dimensions.
  • the dimensions 201 and 203 can be 256, 512, or 1024, and the dimension 202 can range from 10 to 128.
  • each dimension 201, 202, 203 of volumetric data set 200 corresponds to a spatial dimension measured along, for instance, an axis of a Cartesian coordinate system, e.g., dimension 201 corresponds to the X-axis dimension of the volume of space for which data is obtained, dimension 203 corresponds to the Y-axis dimension, and dimension 202 corresponds to the Z-axis dimensions.
  • dimension 201 corresponds to the X-axis dimension of the volume of space for which data is obtained
  • dimension 203 corresponds to the Y-axis dimension
  • dimension 202 corresponds to the Z-axis dimensions.
  • each data block, e.g., data block 204, of volumetric data set 200 represents a reflected light intensity at a particular point in space relative to the origin of a Cartesian coordinate system.
  • the X and Y axes of the Cartesian coordinate system define a plane approximately perpendicular to the surface on which the wafer is mounted, and the Z axis corresponds to the height of the data point with respect to the mounting surface.
  • the origin of the Cartesian coordinate system may be defined to be at the center of the surface on which the wafer is mounted.
  • each piece of volumetric data represents the light intensity at a point in space that is defined with respect to the center of the wafer mounting surface.
  • volumetric data set 200 the origin is defined to be at data block 205, though any data block could have been chosen.
  • Each of the remaining data blocks, e.g., data block 204, represents a data point taken at a particular distance from the origin; the exact distance will be a function of the size of the volume for which data is obtained and the number of data blocks, e.g., data points, in volumetric data set 200.
  • points on the surface of the object are defined to be the point in the Z-direction at each XY location at which the maximum data value occurs.
  • the data will be assumed to be light intensity measurements. It is to be understood that the method of the invention is equally applicable when the volumetric data is of another type (i.e., something other than light intensity), so long as points on the surface are defined by the location of the maximum data value in the Z-direction at each XY location.
  • the method of the invention is equally applicable if the volumetric data is structured such that points on the surface of the object are defined to be the point in the Y-direction at each XZ location at which the maximum data value occurs, or the point in the X-direction at each YZ location at which the maximum data value occurs.
  • the first data point in a column (Z-axis) of data is accessed, e.g., data block 205.
  • Each data point is a light intensity.
  • each data point is associated an XYZ location, the exact location being determined as a function of the definition of the origin of the coordinate system associated with the physical volume for which data was obtained, the size of volumetric data set 200, and the size of the physical volume for which data was obtained.
  • each data block e.g., data block 205, in volumetric data set 200: the X, Y and Z coordinates of the location of the data point and the intensity value measured at the location of the data point.
  • the data associated with the first data point in each column will be designated X 0 (X-coordinate location), Y 0 (Y-coordinate location), Z 0 (Z-coordinate location), and I 0 (light intensity value).
  • Data associated with a generic data point will be designated X i , Y i , Z i , and I i .
  • Z max is set equal to Z 0 and the quantity I max is set equal to I 0 (i.e., Z max and I max are "initialized").
  • Z max and I max represent the location of the maximum light intensity in a particular column and the value of the maximum light intensity in the particular column, respectively. It is these values, determined for each column of data in volumetric data set 200, that will be used to create the three-dimensional display of the surface.
  • the next data point in the column is accessed.
  • the data associated with each data point ⁇ i ⁇ is X i (X-coordinate location), Y i (Y-coordinate location), Z i (Z-coordinate location), and I i (light intensity value).
  • the data can be accessed in any order within a column, so long as each data point in the column is accessed once and only once.
  • the light intensity data, I i is compared to I max , as shown by block 105. If I i is greater than I max , then I max is set equal to I i and Z max is set equal to Z i .
  • the columns of data can be analyzed, i.e., the method steps described by blocks 102, 103, 104, 105 and 106 applied, in any order.
  • the first column analyzed need not necessarily be located at a corner edge of volumetric data set 200, but, rather, can be located anywhere within volumetric data set 200.
  • a least squares quadratic curve fit is performed, as described in more detail below.
  • the least-squares curve fit is used to refine the identification of the value of the light intensity maximum, I max and the location of the light intensity maximum, Z max .
  • the new values of I max and Z max determined through the least-squares quadratic curve fit are then stored as I max and Z max .
  • a least-squares quadratic curve fit is not a necessary part of the method according to the invention. Extraction of surface image data from a volumetric data set can be performed without performing a least-squares quadratic curve fit.
  • the least-squares quadratic curve fit is desirable to enhance the accuracy of the surface image representation and to smooth out spurious spikes in the data that may result from, for example, noise attributable to the system which acquired the volumetric data.
  • the least-squares quadratic curve fit is applied to each column of data points using a subset of the data points in each column. After Z max and I max are found for each column, a set of adjacent data points, centered about the data point at which Z max and I max occurred, is used to perform a conventional least-squares quadratic curve fit. Any odd number of data points can be chosen; in alternative embodiments, 7 and 15 data points are chosen. The number of data points chosen to do the curve fit involves a tradeoff. As the number of points increases, the accuracy of the curve fit increases; however, the time to perform the curve fit also increases. The number of data points used in the least-squares quadratic curve fit is pre-specified as part of the method according to the invention; the user can not choose this parameter.
  • Z max and I max can occur for a data point ("maximum data point") near the beginning or end of a column of data such that insufficient actual data points exist on one or the other sides of the maximum data point. For example, if 7 points are used in the least-squares quadratic curve fit, and the maximum data point is at the end of a column, then, while there would be three data points on one side of the maximum data point for use in the curve fit, there would be not be three data points (in fact, there would be no data points) on the other side of the maximum data point for use in the curve fit. In such a case, "dummy" data points are substituted for the missing data points.
  • the value of light intensity for the dummy data points is set equal to the value of light intensity at the last (beginning or end) data point in the column.
  • each dummy data point would be assigned a light intensity value equal to the light intensity value at the maximum data point. The curve fit then proceeds in the normal fashion.
  • each data point in the volumetric data set is represented as an 8-bit quantity.
  • All data calculations e.g., a light intensity maximum modified using the least-squares quadratic curve fit
  • the result of each calculation is, initially, represented as a floating point number, e.g. 32-bit floating point number.
  • the floating point number is converted back to an 8-bit number, thus sacrificing some of the resolution (accuracy) inherent in the floating point representation.
  • representing data as an 8-bit number may not provide adequate resolution for some surfaces, e.g., surfaces that are generally very flat.
  • the data can be stored as a 32-bit floating point number.
  • the result of a calculation e.g., the light intensity maximum resulting from the least-squares quadratic curve fit, as an 8-bit quantity, as would normally be done
  • the result of the calculation can be left as a floating point number, thus increasing the resolution of the light intensity maximums found by the method according to the invention.
  • the surface is displayed, as shown by block 109.
  • the set of maximum light intensity values and the corresponding set of locations of the maximum light intensity values are used to create a three-dimensional image representing the surface of the object.
  • the location of the points on the surface i.e., the shape of the surface, is determined by the stored Z max values.
  • the surface image can be displayed without color (i.e., only the Z max data is used), or the surface can be shaded as a function of the Z max values.
  • the intensity (I max ) data can be used with the Z max data to shade (gray-scale) or false color the points on the surface, each shade or color representing the type of material present at that part of the surface.
  • FIG. 3A is a view of a display screen including window 301 showing a three-dimensional surface image obtained by using the method according to the invention.
  • the surface data can be used to display either surface contours or profiles, i.e., two-dimensional displays viewed perpendicularly to a specified cut through the surface data, e.g., an XY cut, an XZ cut, a YZ cut.
  • window 302 shows a surface profile obtained by specifying an XZ cut through the surface image data.
  • FIG. 3B is a view of a display screen including windows 311 and 312 showing two-dimensional intensity slices obtained by specifying an XY and XZ cut, respectively, through the surface image data.
  • the surface data can be displayed on any conventional computer monitor with graphical capability, preferably a system with high resolution 24-bit color graphics.
  • the user decides whether or not to apply filtering to the surface image display, as shown by block 110.
  • Filtering may be necessary to smooth out spikes that result from noise contamination of the volumetric data. Filtering would likely be desirable, for instance, if there were a large number of spikes in the surface image displayed at block 109.
  • filtering is applied to the surface image data, as shown by block 111, and as explained in more detail below.
  • the surface image is displayed again (block 109). The user again decides whether or not to apply filtering to the surface image display (block 110). The user can choose to perform filtering as often as desired.
  • the effect of filtering is cumulative so that as the amount of filtering increases the image becomes smoother and smoother. Too much filtering may result in creating an erroneous surface image display by smoothing out actual peaks and valleys on the surface. Whenever the user decides not to apply filtering to the surface image display, the method ends and the last displayed image is the surface image produced by the method.
  • the filter used in block 110 is a conventional two-dimensional low-pass or smoothing filter that performs a two dimensional convolution with a 3 by 3 operator. If filtering is selected, then filtering is performed over the entire surface. The filtering is accomplished by applying a 3 by 3 matrix to each data point on the surface. The 3 by 3 matrix used is shown below: ##EQU1## where x is some number greater than 1. The larger x is, the less filtering is accomplished. ⁇ x ⁇ is a parameter that is pre-specified as part of the method according to the invention; the user cannot select this or any other filtering parameter; the user may only choose whether or not to do filtering. The value of ⁇ x ⁇ is determined empirically so that the filter will produce some noticeable smoothing, but not so much that actual peaks and valleys are smoothed out.
  • the 3 by 3 matrix is centered on each point of the surface, in turn. Each value of the matrix multiplies the corresponding light intensity value for the points on the surface surrounding the data point being filtered. The sum of these multiplications is then divided by the sum of the numbers in the filtering array, i.e., 8+x, to arrive at an averaged intensity value that is substituted for the measured intensity value of the data point being filtered. As noted above, each point on the surface is filtered in this way. In order that previously filtered data points do not affect the filtering of subsequent data points, a temporary array is created to hold the filtered values. At the end of filtering, the temporary array replaces the original image data.
  • dummy data points are substituted.
  • the dummy values are set equal to the light intensity value of the nearest adjacent actual data point, and filtering is performed as described above.
  • the three-dimensional data can be successively obtained sets of two-dimensional data that, together, form a three-dimensional data set.
  • Each two-dimensional set of data is of the same size (i.e., the same numbers of rows and columns) and each piece of data in each of the two-dimensional sets of data has a corresponding piece of data in each of the other two-dimensional sets of data.
  • the method according to the invention is modified slightly from the block diagram shown in FIG. 1.
  • FIG. 4 is a block diagram illustrating a method according to another embodiment of the invention for extracting surface image data representing a three-dimensional surface from a set of volumetric data so that the surface image data can be used to display the surface.
  • the method according to this embodiment of the invention is applied to an existing three-dimensional set of data that is stored on a non-volatile storage medium or temporary storage such as a RAM.
  • the volumetric data is obtained by any appropriate method, as described above with respect to FIG. 1, and stored in a three-dimensional array as shown in FIG. 2.
  • the volumetric data being used by methods described with respect to FIGS. 1 and 4 is the same.
  • a two-dimensional set of data (XY data) is accessed.
  • the data associated with each data point in the two-dimensional set of data is designated generally as X ni ,j (X-coordinate location), Y ni ,j (Y-coordinate location), Z ni ,j (Z-coordinate location), and I ni ,j (light intensity value).
  • Z ni ,j is equal to n times the scaling factor.
  • the quantities Z maxij are set equal to Z Oi ,j and the quantities I maxi ,j are set equal to I Oi ,j (i.e., Z maxi ,j and I maxi ,j are "initialized").
  • Z maxi ,j and I maxi ,j represent the locations of the maximum light intensity in each column and the value of the maximum light intensity in each column, respectively, i.e., the values that will be used to create the three-dimensional display of the surface.
  • the light intensity data, I ni ,j, at data points ⁇ n i ,j ⁇ are compared to the I maxi ,j values. If I ni ,j is greater than I maxi ,j, then I maxi ,j is set equal to I ni ,j and Z maxi ,j is set equal to Zn i ,j.
  • the two-dimensional sets of data can be analyzed, i.e., the method steps described by blocks 402, 403, 404, 405 and 406 applied, in any order.
  • the first two-dimensional set of data analyzed need not necessarily be located at the top or bottom of volumetric data set 200, but, rather, can be located anywhere within volumetric data set 200. Further, successive two-dimensional sets of data need not necessarily be adjacent each other in space.
  • a least-squares quadratic curve fit is performed to modify the Z maxi ,j and I maxi ,j values, as shown by block 407.
  • a least-squares quadratic curve fit is performed on each column of data, exactly as with respect to FIG. 1.
  • the newly determined values of I maxi ,j and Z maxi ,j determined through the least-squares quadratic curve fit are then stored as I maxi ,j and Z maxi ,j.
  • the surface is displayed, as shown by block 408.
  • the user decides whether or not to apply filtering to the surface image display, as shown by block 409. If filtering is desired, then filtering is applied to the surface image data, as shown by block 410.
  • the display and filtering are the same as described above with respect to FIG. 1.
  • the surface image is displayed again (block 409).
  • the user again decides whether or not to apply filtering to the surface image display (block 410). As above, the user can choose to perform filtering as often as desired. Whenever the user decides not to apply filtering to the surface image display, the method ends and the last displayed image is the surface image produced by the method.
  • the method according to the invention can be implemented with any appropriate structure.
  • the method according to the invention can generally be implemented by any computer acting together with a compatible data acquisition system.
  • the method according to the invention is implemented on a computer made by Silicon Graphics in Mountain View, Calif. and available as part no. SGI XS24Z, using data obtained by a laser imaging system as described in commonly owned, co-pending U.S. Patent Application entitled “Laser Imaging System for Semiconductor Inspection and Defect Analysis," by Bruce W. Worster, Dale E. Crane, Hans J. Hansen, Christopher R. Fairley and Ken K. Lee, application Ser. No. 08/080,014, filed on Jun. 17, 1993, the pertinent disclosure of which is hereby incorporated by reference, now U.S. Pat. No. 5,479,252.
  • the method can be represented in any suitable computer code.
  • the method is represented in computer code written in the C language.
  • Appendix A is a computer code listing embodying the method according to the invention described with respect to FIG. 4 and is herein incorporated by reference.

Abstract

Surface image data representing a three-dimensional surface is extracted from a three-dimensional set of data representing characteristics of a volume in space (volumetric data) that encompasses the surface of an object, so that the surface image data can be used to display the surface. The volumetric data can comprise any data set in which comparisons between data can be used to ascertain points on a surface. In one embodiment of the invention, each of the pieces of volumetric data represents the intensity of light reflected in a particular direction from a point in space on or near the surface of an object. For example, the light intensity data can represent the intensity of laser light reflected back through an optical path of a laser imaging system after the laser light has been directed toward the surface of an object such as a semiconductor wafer. The surface image data can be used to generate a three-dimensional display of the surface, or portions of the surface image data can be used to generate surface profiles or contours. Additionally, the surface image data can be used to generate a surface light intensity map.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS
This application is related to the commonly owned, co-pending U.S. Patent Application entitled "Laser Imaging System for Semiconductor Inspection and Defect Analysis," by Bruce W. Worster, Dale E. Crane, Hans J. Hansen, Christopher R. Fairley and Ken K. Lee, application Ser. No. 08/080,014, filed on Jun. 17, 1993 and incorporated by reference herein, now U.S. Pat. No. 5,479,252.
BACKGROUND OF THE INVENTION
A portion of the disclosure of this patent document contains material which is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure, as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright rights whatsoever.
1. Field of the Invention
This invention is related to method and apparatus for visually representing a surface that is represented by a three-dimensional set of data.
2. Related Art
In many types of systems, there is a need to ascertain information about one or more physical objects. Consequently, the objects are studied and data regarding the objects is obtained. For instance, three-dimensional data over a volume in space (volumetric data) can be obtained that represents the value of a quantity related to the object. In some light imaging systems, such as, for example, a confocal laser scanning microscopy system, the intensity of reflected light from an object and the object's surroundings yields information regarding properties of that object. For instance, the intensity of reflected light from points on or around the surface of an object is a function of the type of material present at the point at which the light is reflected.
It is desirable to be able to use the volumetric data to ascertain various information regarding the volume of space, i.e., object, being studied. For example, in the light imaging systems, characteristics of the object being imaged that may be of interest are the materials present in various regions of the object or the location of the surface of the object. Consequently, there is a need for methods that use the volumetric data to ascertain the desired information regarding the object.
SUMMARY OF THE INVENTION
According to the invention, surface image data representing a three-dimensional surface is extracted from a three-dimensional set of data representing characteristics of a volume in space (volumetric data) that encompasses the surface of an object, so that the surface image data can be used to display the surface. The volumetric data can comprise any data set in which comparisons between data can be used to ascertain points on a surface.
In one embodiment of the method according to the invention, points on the surface of the object are defined to be the point in the Z-direction at each XY location at which a maximum data value occurs. The volumetric data can be of any type, so long as points on the surface are defined by the location of the maximum data value in the Z-direction at each XY location. The method is equally applicable if the volumetric data is structured such that points on the surface of the object are defined to be the point in the Y-direction at each XZ location at which a maximum data value occurs, or the point in the X-direction at each YZ location at which a maximum data value occurs.
In another embodiment of the invention, each of the pieces of volumetric data represents the intensity of light reflected in a particular direction from a point in space on or near the surface of an object. For example, the light intensity data can represent the intensity of laser light reflected back through an optical path of a confocal laser imaging system after the laser light has been directed toward the surface of an object such as a semiconductor wafer.
The surface image data can be used to generate a three-dimensional display of the surface, or portions of the surface data can be used to generate surface profiles or contours. Additionally, the surface image data can be used to generate a surface light intensity map.
BRIEF DESCRIPTION OF THE DRAWINGS
FIG. 1 is a block diagram illustrating a method according to the invention for extracting surface image data representing a three-dimensional surface from a set of volumetric data so that the surface image data can be used to display the surface.
FIG. 2 is a schematic representation of a volumetric data set for use with the invention.
FIG. 3A is a view of a display screen including a window showing a three-dimensional surface image obtained by using the method according to the invention and a surface profile obtained by specifying an XZ cut through the surface image data.
FIG. 3B is a view of a display screen including windows showing two-dimensional intensity slices obtained by specifying an XY and XZ cut, respectively, through surface image data.
FIG. 4 is a block diagram illustrating a method according to another embodiment of the invention for extracting surface image data representing a three-dimensional surface from a set of volumetric data so that the surface image data can be used to display the surface.
DETAILED DESCRIPTION OF EMBODIMENTS OF THE INVENTION
According to the invention, surface image data representing a three-dimensional surface is extracted from a three-dimensional set of data representing characteristics of a volume in space (volumetric data) that encompasses the surface of an object, so that the surface image data can be used to display the surface. The volumetric data can comprise any data set in which comparisons between data can be used to ascertain points on a surface.
In one embodiment of the invention, each of the pieces of volumetric data represents the intensity of light reflected in a particular direction from a point in space on or near the surface of an object. For example, the light intensity data can represent the intensity of laser light reflected back through an optical path of a confocal laser imaging system after the laser light has been directed toward the surface of an object such as a semiconductor wafer. Such a system is described in commonly owned, co-pending U.S. Patent Application entitled "Laser Imaging System for Semiconductor Inspection and Defect Analysis," by Bruce W. Worster, Dale E. Crane, Hans J. Hansen, Christopher R. Fairley, Ken K. Lee, application Ser. No. 08/080,014, filed on Jun. 17, 1993, the pertinent disclosure of which is hereby incorporated by reference, now U.S. Pat. No. 5,479,252.
FIG. 1 is a block diagram illustrating a method according to the invention for extracting surface image data representing a three-dimensional surface from a set of volumetric data so that the surface image data can be used to display the surface. As shown by block 101 in FIG. 1, the volumetric data is obtained by any appropriate data acquisition structure using any appropriate method. The method will often depend upon the data acquisition structure and type of surface (e.g., surface of semiconductor wafer) and the type of data (e.g., light intensity). In one embodiment, after the volumetric data is obtained, the volumetric data is stored as an array of data in a non-volatile storage medium such as a disk drive, such as is available from Silicon Graphics in Mountain View, Calif. as part no. P3-F252. When the method according to the invention is to be performed, the volumetric data and the array size data are transferred from the non-volatile storage medium to a structure for processing the data, such as a microprocessor. The data is transferred to the structure for processing by a diskette or other media, or by communication via a link or network such as Ethernet, RS232, etc. Alternatively, the volumetric data and array size data can be transferred to a RAM, then accessed from the RAM by the structure for processing data. Or, the volumetric data can be input to the RAM directly from the data acquisition structure, then transferred to the structure for processing.
The volumetric data is stored in a three-dimensional array. FIG. 2 is a schematic representation of volumetric data set 200 for use with the invention. Each data block, e.g., data block 204, of volumetric data set 200 represents one piece of data. The size of volumetric data set 200 is defined by dimensions 201, 202 and 203. The dimensions shown in FIG. 2 are merely illustrative; generally, a volumetric data set for use with the invention can have any dimensions. For instance, the dimensions 201 and 203 can be 256, 512, or 1024, and the dimension 202 can range from 10 to 128.
In one embodiment of the invention, each dimension 201, 202, 203 of volumetric data set 200 corresponds to a spatial dimension measured along, for instance, an axis of a Cartesian coordinate system, e.g., dimension 201 corresponds to the X-axis dimension of the volume of space for which data is obtained, dimension 203 corresponds to the Y-axis dimension, and dimension 202 corresponds to the Z-axis dimensions. For example, where the data represents reflected light intensities from points on or near the surface, each data block, e.g., data block 204, of volumetric data set 200 represents a reflected light intensity at a particular point in space relative to the origin of a Cartesian coordinate system. In the case, for example, where the data represents the intensity of laser light reflected back through an optical path of a laser imaging system after the laser light has been directed toward the surface of an object such as a semiconductor wafer, the X and Y axes of the Cartesian coordinate system define a plane approximately perpendicular to the surface on which the wafer is mounted, and the Z axis corresponds to the height of the data point with respect to the mounting surface. For example, the origin of the Cartesian coordinate system may be defined to be at the center of the surface on which the wafer is mounted. In that case, each piece of volumetric data represents the light intensity at a point in space that is defined with respect to the center of the wafer mounting surface.
In volumetric data set 200, the origin is defined to be at data block 205, though any data block could have been chosen. Each of the remaining data blocks, e.g., data block 204, represents a data point taken at a particular distance from the origin; the exact distance will be a function of the size of the volume for which data is obtained and the number of data blocks, e.g., data points, in volumetric data set 200.
In the embodiment of the method according to the invention shown in FIG. 1, points on the surface of the object are defined to be the point in the Z-direction at each XY location at which the maximum data value occurs. In the remainder of the description, the data will be assumed to be light intensity measurements. It is to be understood that the method of the invention is equally applicable when the volumetric data is of another type (i.e., something other than light intensity), so long as points on the surface are defined by the location of the maximum data value in the Z-direction at each XY location. Further, the method of the invention is equally applicable if the volumetric data is structured such that points on the surface of the object are defined to be the point in the Y-direction at each XZ location at which the maximum data value occurs, or the point in the X-direction at each YZ location at which the maximum data value occurs.
As shown by block 102, after the data, e.g., volumetric data set 200, is obtained, the first data point in a column (Z-axis) of data is accessed, e.g., data block 205. Each data point is a light intensity. Additionally, with each data point is associated an XYZ location, the exact location being determined as a function of the definition of the origin of the coordinate system associated with the physical volume for which data was obtained, the size of volumetric data set 200, and the size of the physical volume for which data was obtained. Thus, four numerical values are associated with and stored for each data block, e.g., data block 205, in volumetric data set 200: the X, Y and Z coordinates of the location of the data point and the intensity value measured at the location of the data point. Herein, the data associated with the first data point in each column will be designated X0 (X-coordinate location), Y0 (Y-coordinate location), Z0 (Z-coordinate location), and I0 (light intensity value). Data associated with a generic data point will be designated Xi, Yi, Zi, and Ii.
As shown by block 103, after the first data point in the column is accessed, the quantity Zmax is set equal to Z0 and the quantity Imax is set equal to I0 (i.e., Zmax and Imax are "initialized"). Zmax and Imax represent the location of the maximum light intensity in a particular column and the value of the maximum light intensity in the particular column, respectively. It is these values, determined for each column of data in volumetric data set 200, that will be used to create the three-dimensional display of the surface.
As shown by block 104, after initializing Zmax and Imax, the next data point in the column is accessed. The data associated with each data point `i` is Xi (X-coordinate location), Yi (Y-coordinate location), Zi (Z-coordinate location), and Ii (light intensity value). Generally, the data can be accessed in any order within a column, so long as each data point in the column is accessed once and only once.
After accessing the data at data point `i`, the light intensity data, Ii, at data point `i` is compared to Imax, as shown by block 105. If Ii is greater than Imax, then Imax is set equal to Ii and Zmax is set equal to Zi.
As shown by block 106, after comparing Ii to Imax, a check is made for whether the last data point in the column of data has been reached. If the last data point in the column has not been reached, then, as shown by block 104, a new data point, i, is accessed and, as shown by block 105, the light intensity, Ii is compared to the currently stored maximum light intensity, Imax. These comparisons continue until each data point in the column of data has been compared to Imax. When all data points have been compared to Imax, a new column of data is analyzed, as described below.
It is to be understood that the columns of data can be analyzed, i.e., the method steps described by blocks 102, 103, 104, 105 and 106 applied, in any order. Thus, the first column analyzed need not necessarily be located at a corner edge of volumetric data set 200, but, rather, can be located anywhere within volumetric data set 200.
If the last data point in a column has been reached, then, as shown by block 107, a least squares quadratic curve fit is performed, as described in more detail below. The least-squares curve fit is used to refine the identification of the value of the light intensity maximum, Imax and the location of the light intensity maximum, Zmax. The new values of Imax and Zmax determined through the least-squares quadratic curve fit are then stored as Imax and Zmax.
It is to be understood that the performance of a least-squares quadratic curve fit, as shown by block 107, is not a necessary part of the method according to the invention. Extraction of surface image data from a volumetric data set can be performed without performing a least-squares quadratic curve fit. However, the least-squares quadratic curve fit is desirable to enhance the accuracy of the surface image representation and to smooth out spurious spikes in the data that may result from, for example, noise attributable to the system which acquired the volumetric data.
The least-squares quadratic curve fit is applied to each column of data points using a subset of the data points in each column. After Zmax and Imax are found for each column, a set of adjacent data points, centered about the data point at which Zmax and Imax occurred, is used to perform a conventional least-squares quadratic curve fit. Any odd number of data points can be chosen; in alternative embodiments, 7 and 15 data points are chosen. The number of data points chosen to do the curve fit involves a tradeoff. As the number of points increases, the accuracy of the curve fit increases; however, the time to perform the curve fit also increases. The number of data points used in the least-squares quadratic curve fit is pre-specified as part of the method according to the invention; the user can not choose this parameter.
In some cases, Zmax and Imax can occur for a data point ("maximum data point") near the beginning or end of a column of data such that insufficient actual data points exist on one or the other sides of the maximum data point. For example, if 7 points are used in the least-squares quadratic curve fit, and the maximum data point is at the end of a column, then, while there would be three data points on one side of the maximum data point for use in the curve fit, there would be not be three data points (in fact, there would be no data points) on the other side of the maximum data point for use in the curve fit. In such a case, "dummy" data points are substituted for the missing data points. The value of light intensity for the dummy data points is set equal to the value of light intensity at the last (beginning or end) data point in the column. In the above example, each dummy data point would be assigned a light intensity value equal to the light intensity value at the maximum data point. The curve fit then proceeds in the normal fashion.
Generally, each data point in the volumetric data set is represented as an 8-bit quantity. All data calculations (e.g., a light intensity maximum modified using the least-squares quadratic curve fit) are floating point calculations. The result of each calculation is, initially, represented as a floating point number, e.g. 32-bit floating point number. In order to save data storage capacity, in one embodiment of the invention, the floating point number is converted back to an 8-bit number, thus sacrificing some of the resolution (accuracy) inherent in the floating point representation. However, representing data as an 8-bit number may not provide adequate resolution for some surfaces, e.g., surfaces that are generally very flat.
In an alternative embodiment of the invention, where more resolution is necessary or desired, the data can be stored as a 32-bit floating point number. Rather than storing the result of a calculation, e.g., the light intensity maximum resulting from the least-squares quadratic curve fit, as an 8-bit quantity, as would normally be done, the result of the calculation can be left as a floating point number, thus increasing the resolution of the light intensity maximums found by the method according to the invention.
After the least-squares quadratic curve fit, as shown by block 108, a check is made for whether the last column of data has been reached or not. If the last column of data has not been reached, then determination of Imax and Zmax for a new column of data begins again. The first data point of the new column is accessed, as shown by block 102, and the method described above is used to determine Imax and Zmax for the new column of data.
If the last column of data has been reached, then the surface is displayed, as shown by block 109. The set of maximum light intensity values and the corresponding set of locations of the maximum light intensity values are used to create a three-dimensional image representing the surface of the object.
The location of the points on the surface, i.e., the shape of the surface, is determined by the stored Zmax values. The surface image can be displayed without color (i.e., only the Zmax data is used), or the surface can be shaded as a function of the Zmax values. The intensity (Imax) data can be used with the Zmax data to shade (gray-scale) or false color the points on the surface, each shade or color representing the type of material present at that part of the surface.
FIG. 3A is a view of a display screen including window 301 showing a three-dimensional surface image obtained by using the method according to the invention.
In addition to display of a three-dimensional surface, the surface data can be used to display either surface contours or profiles, i.e., two-dimensional displays viewed perpendicularly to a specified cut through the surface data, e.g., an XY cut, an XZ cut, a YZ cut. In FIG. 3A, window 302 shows a surface profile obtained by specifying an XZ cut through the surface image data.
Two-dimensional views can also be used to display "intensity slices." FIG. 3B is a view of a display screen including windows 311 and 312 showing two-dimensional intensity slices obtained by specifying an XY and XZ cut, respectively, through the surface image data.
The surface data can be displayed on any conventional computer monitor with graphical capability, preferably a system with high resolution 24-bit color graphics.
After the surface image is displayed, the user, based upon a visual inspection of the displayed surface image, decides whether or not to apply filtering to the surface image display, as shown by block 110. Filtering may be necessary to smooth out spikes that result from noise contamination of the volumetric data. Filtering would likely be desirable, for instance, if there were a large number of spikes in the surface image displayed at block 109. If filtering is desired, then filtering is applied to the surface image data, as shown by block 111, and as explained in more detail below. After filtering, the surface image is displayed again (block 109). The user again decides whether or not to apply filtering to the surface image display (block 110). The user can choose to perform filtering as often as desired. The effect of filtering is cumulative so that as the amount of filtering increases the image becomes smoother and smoother. Too much filtering may result in creating an erroneous surface image display by smoothing out actual peaks and valleys on the surface. Whenever the user decides not to apply filtering to the surface image display, the method ends and the last displayed image is the surface image produced by the method.
The filter used in block 110 is a conventional two-dimensional low-pass or smoothing filter that performs a two dimensional convolution with a 3 by 3 operator. If filtering is selected, then filtering is performed over the entire surface. The filtering is accomplished by applying a 3 by 3 matrix to each data point on the surface. The 3 by 3 matrix used is shown below: ##EQU1## where x is some number greater than 1. The larger x is, the less filtering is accomplished. `x` is a parameter that is pre-specified as part of the method according to the invention; the user cannot select this or any other filtering parameter; the user may only choose whether or not to do filtering. The value of `x` is determined empirically so that the filter will produce some noticeable smoothing, but not so much that actual peaks and valleys are smoothed out.
The 3 by 3 matrix is centered on each point of the surface, in turn. Each value of the matrix multiplies the corresponding light intensity value for the points on the surface surrounding the data point being filtered. The sum of these multiplications is then divided by the sum of the numbers in the filtering array, i.e., 8+x, to arrive at an averaged intensity value that is substituted for the measured intensity value of the data point being filtered. As noted above, each point on the surface is filtered in this way. In order that previously filtered data points do not affect the filtering of subsequent data points, a temporary array is created to hold the filtered values. At the end of filtering, the temporary array replaces the original image data.
At the edges and corners of the display, where actual light intensity values do not exist for use with the filtering matrix, "dummy" data points are substituted. The dummy values are set equal to the light intensity value of the nearest adjacent actual data point, and filtering is performed as described above.
Alternatively, as also noted above, the three-dimensional data can be successively obtained sets of two-dimensional data that, together, form a three-dimensional data set. Each two-dimensional set of data is of the same size (i.e., the same numbers of rows and columns) and each piece of data in each of the two-dimensional sets of data has a corresponding piece of data in each of the other two-dimensional sets of data. In this case, the method according to the invention is modified slightly from the block diagram shown in FIG. 1.
FIG. 4 is a block diagram illustrating a method according to another embodiment of the invention for extracting surface image data representing a three-dimensional surface from a set of volumetric data so that the surface image data can be used to display the surface. As in the embodiment described with respect to FIG. 1, the method according to this embodiment of the invention is applied to an existing three-dimensional set of data that is stored on a non-volatile storage medium or temporary storage such as a RAM.
As shown by block 401, the volumetric data is obtained by any appropriate method, as described above with respect to FIG. 1, and stored in a three-dimensional array as shown in FIG. 2. The volumetric data being used by methods described with respect to FIGS. 1 and 4 is the same.
As shown by block 402, after the data, e.g., volumetric data set 200, is obtained, rather than accessing the first data point in a column, as in FIG. 1, a two-dimensional set of data (XY data) is accessed. Hereafter, the data associated with each data point in the two-dimensional set of data is designated generally as Xni,j (X-coordinate location), Yni,j (Y-coordinate location), Zni,j (Z-coordinate location), and Ini,j (light intensity value). In the simple case where data in the z direction are spaced regularly by a scaling factor, then Zni,j is equal to n times the scaling factor.
As shown by block 403, after the first two-dimensional set of data is accessed, as shown by block 402, the quantities Zmaxij are set equal to ZOi,j and the quantities Imaxi,j are set equal to IOi,j (i.e., Zmaxi,j and Imaxi,j are "initialized"). Zmaxi,j and Imaxi,j represent the locations of the maximum light intensity in each column and the value of the maximum light intensity in each column, respectively, i.e., the values that will be used to create the three-dimensional display of the surface.
As shown by block 404, after initializing Zmaxi,j and Imaxi,j, the next two-dimensional set of data is accessed.
As shown by block 405, after accessing the data at the data points `ni,j `, the light intensity data, Ini,j, at data points `ni,j ` are compared to the Imaxi,j values. If Ini,j is greater than Imaxi,j, then Imaxi,j is set equal to Ini,j and Zmaxi,j is set equal to Zni,j.
As shown by block 406, after comparing Ini,j to Imaxi,j, a check is made for whether the last two-dimensional set of data has been reached. If the last two-dimensional set of data has not been reached, then, as shown by block 404, a new set of data points, ni,j, is accessed and, as shown by block 405, the light intensity values, Ini,j are compared to the currently stored maximum light intensity values, Imaxi,j. These comparisons continue until each two-dimensional set of data has been compared to the Imaxi,j values.
It is to be understood that the two-dimensional sets of data can be analyzed, i.e., the method steps described by blocks 402, 403, 404, 405 and 406 applied, in any order. Thus, the first two-dimensional set of data analyzed need not necessarily be located at the top or bottom of volumetric data set 200, but, rather, can be located anywhere within volumetric data set 200. Further, successive two-dimensional sets of data need not necessarily be adjacent each other in space.
As shown by block 407, when all two-dimensional sets of data have been compared to the Imaxi,j values, a least-squares quadratic curve fit is performed to modify the Zmaxi,j and Imaxi,j values, as shown by block 407. A least-squares quadratic curve fit is performed on each column of data, exactly as with respect to FIG. 1. The newly determined values of Imaxi,j and Zmaxi,j determined through the least-squares quadratic curve fit are then stored as Imaxi,j and Zmaxi,j. As with the method of FIG. 1, it is to be understood that the performance of a least-squares quadratic curve fit, as shown by block 407, is not a necessary part of the method according to the invention, but is desirable to enhance the accuracy of the surface image representation and to smooth out spurious spikes in the data.
After the least-squares quadratic curve fit, the surface is displayed, as shown by block 408. After the surface image is displayed, the user decides whether or not to apply filtering to the surface image display, as shown by block 409. If filtering is desired, then filtering is applied to the surface image data, as shown by block 410. The display and filtering are the same as described above with respect to FIG. 1. After filtering, the surface image is displayed again (block 409). The user again decides whether or not to apply filtering to the surface image display (block 410). As above, the user can choose to perform filtering as often as desired. Whenever the user decides not to apply filtering to the surface image display, the method ends and the last displayed image is the surface image produced by the method.
The method according to the invention can be implemented with any appropriate structure. For example, the method according to the invention can generally be implemented by any computer acting together with a compatible data acquisition system. In one embodiment, the method according to the invention is implemented on a computer made by Silicon Graphics in Mountain View, Calif. and available as part no. SGI XS24Z, using data obtained by a laser imaging system as described in commonly owned, co-pending U.S. Patent Application entitled "Laser Imaging System for Semiconductor Inspection and Defect Analysis," by Bruce W. Worster, Dale E. Crane, Hans J. Hansen, Christopher R. Fairley and Ken K. Lee, application Ser. No. 08/080,014, filed on Jun. 17, 1993, the pertinent disclosure of which is hereby incorporated by reference, now U.S. Pat. No. 5,479,252.
If the method according to the invention is implemented on a computer, the method can be represented in any suitable computer code. In one embodiment according to the invention, the method is represented in computer code written in the C language. Appendix A is a computer code listing embodying the method according to the invention described with respect to FIG. 4 and is herein incorporated by reference.
Various embodiments of the invention have been described. The descriptions are intended to be illustrative, and not limiting. Thus, it will be apparent to one skilled in the art that certain modifications may be made to the invention as described without departing from the scope of the claims set out below. ##SPC1##

Claims (9)

I claim:
1. A method for constructing an image of a surface from a volumetric set of signals representing data value numbers, the volumetric set described by a Cartesian coordinate system having X, Y, and Z axes such that each number has a unique location, the volumetric set comprising at least one linear set of signals representing data value numbers arranged parallel to the Z axis, the method comprising the steps of:
generating, for each linear set of signals, a first signal representing a maximum data value number and a second signal representing a location of the maximum data value number, thereby producing a set of signals representing maximum data value numbers and a set of signals representing maximum-number locations, the step of generating comprising the steps of:
comparing a third signal in the linear set to a fourth signal in the linear set to determine which of the third and fourth signals represents a greater data value number;
storing the one of said third and fourth signals representing the greater data value number as said first signal representing a maximum number for the linear set and storing the location associated with the one of said third and fourth signals representing the greater data value number as said second signal representing a maximum-number location for the linear set; and
for each signal in the linear set other than the third and fourth signals,
comparing the signal to the first signal to
determine which of the signal and the first
signal represents a greater data value number;
storing the one of said signal and said
first signal as the new first signal and storing
the signal representing the one of said signal
and said first signal as said second signal; and
creating the image using the set of signals representing maximum data value numbers and the set of signals representing maximum-number locations.
2. A method as in claim 1, wherein the image is a three-dimensional display of the surface.
3. A method as in claim 1, wherein each of the numbers represents the intensity of light reflected in a particular direction from a point on or near the surface.
4. A method as in claim 3, wherein the reflected light is sensed by a confocal laser imaging system.
5. A method as in claim 3, wherein the surface is the surface of a semiconductor wafer.
6. A method as in claim 1, further comprising, for each linear set, the step of performing a least squares curve fit to obtain a modified maximum data value number for the linear set.
7. A method as in claim 6, wherein each least squares curve fit to obtain a modified maximum data value number is performed using (i) the signal representing the maximum number of the linear set, (ii) a first plurality of actual or dummy numbers adjacent to the location of the signal representing the maximum number and in the linear set, and (iii) a second plurality of actual or dummy numbers adjacent to the location of the maximum data value number and in the linear set.
8. A method as in claim 1, further comprising the step of filtering each of the maximum data value numbers to reduce the effect of noise on the image.
9. A method as in claim 8, wherein the step of filtering further comprises performing a two-dimensional convolution with a 3 by 3 operator.
US08/079,193 1993-06-17 1993-06-17 Surface extraction from a three-dimensional data set Abandoned USH1530H (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US08/079,193 USH1530H (en) 1993-06-17 1993-06-17 Surface extraction from a three-dimensional data set

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US08/079,193 USH1530H (en) 1993-06-17 1993-06-17 Surface extraction from a three-dimensional data set

Publications (1)

Publication Number Publication Date
USH1530H true USH1530H (en) 1996-05-07

Family

ID=22149017

Family Applications (1)

Application Number Title Priority Date Filing Date
US08/079,193 Abandoned USH1530H (en) 1993-06-17 1993-06-17 Surface extraction from a three-dimensional data set

Country Status (1)

Country Link
US (1) USH1530H (en)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5923430A (en) * 1993-06-17 1999-07-13 Ultrapointe Corporation Method for characterizing defects on semiconductor wafers
US5963314A (en) * 1993-06-17 1999-10-05 Ultrapointe Corporation Laser imaging system for inspection and analysis of sub-micron particles
US6148114A (en) * 1996-11-27 2000-11-14 Ultrapointe Corporation Ring dilation and erosion techniques for digital image processing
US6253164B1 (en) * 1997-12-24 2001-06-26 Silicon Graphics, Inc. Curves and surfaces modeling based on a cloud of points
US6320609B1 (en) 1998-07-10 2001-11-20 Nanometrics Incorporated System using a polar coordinate stage and continuous image rotation to compensate for stage rotation
WO2002075423A1 (en) * 2001-03-17 2002-09-26 Carl Zeiss Microelectronic Systems Gmbh Method for evaluating layers of images
US20150043788A1 (en) * 2013-07-22 2015-02-12 Clicrweight, LLC Determining and Validating a Posture of an Animal
US20150064813A1 (en) * 2013-08-29 2015-03-05 International Business Machines Corporation Microprocessor image correction and method for the detection of potential defects

Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4733063A (en) * 1985-12-13 1988-03-22 Hitachi, Ltd. Scanning laser microscope with aperture alignment
US4827125A (en) * 1987-04-29 1989-05-02 The United States Of America As Represented By The Secretary Of The Department Of Health And Human Services Confocal scanning laser microscope having no moving parts
US4863226A (en) * 1987-03-13 1989-09-05 Nederlandse Organisatie Voor Toegepas - Natuurwetenschappelijk Onderzoek Tno Confocal laser scanning microscope
US4907174A (en) * 1988-06-02 1990-03-06 Sun Microsystems, Inc. Z-buffer allocated for window identification
US5034613A (en) * 1989-11-14 1991-07-23 Cornell Research Foundation, Inc. Two-photon laser microscopy
US5035476A (en) * 1990-06-15 1991-07-30 Hamamatsu Photonics K.K. Confocal laser scanning transmission microscope
US5091652A (en) * 1990-01-12 1992-02-25 The Regents Of The University Of California Laser excited confocal microscope fluorescence scanner and method
US5117466A (en) * 1991-04-30 1992-05-26 The United States Of America As Represented By The United States Department Of Energy Integrated fluorescence analysis system
US5122653A (en) * 1989-08-22 1992-06-16 Nikon Corporation Confocal type laser scan microscope with integrated illumination, detection and waveguide system
US5127730A (en) * 1990-08-10 1992-07-07 Regents Of The University Of Minnesota Multi-color laser scanning confocal imaging system
US5153428A (en) * 1990-06-15 1992-10-06 Hamamatsu Photonics K.K. Confocal laser scanning microscope having relay lens and a slit for removing stray light
US5162641A (en) * 1991-02-19 1992-11-10 Phoenix Laser Systems, Inc. System and method for detecting, correcting and measuring depth movement of target tissue in a laser surgical system
USRE34214E (en) * 1984-03-15 1993-04-06 Molecular Dynamics, Inc. Method and apparatus for microphotometering microscope specimens
US5226113A (en) * 1989-10-30 1993-07-06 General Electric Company Method and apparatus for volumetric projection rendering using reverse ray casting
US5309550A (en) * 1988-12-27 1994-05-03 Kabushiki Kaisha Toshiba Method and apparatus for three dimensional display with cross section
US5313567A (en) * 1991-06-13 1994-05-17 At&T Bell Laboratories Arrangement for determining and displaying volumetric data in an imaging system
US5317644A (en) * 1992-06-16 1994-05-31 Mcgill University Method for the enhancement of cell images
US5329352A (en) * 1991-04-12 1994-07-12 Bayer Aktiengesellschaft Spectroscopically correlated light scanning microscopy

Patent Citations (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USRE34214E (en) * 1984-03-15 1993-04-06 Molecular Dynamics, Inc. Method and apparatus for microphotometering microscope specimens
US4733063A (en) * 1985-12-13 1988-03-22 Hitachi, Ltd. Scanning laser microscope with aperture alignment
US4863226A (en) * 1987-03-13 1989-09-05 Nederlandse Organisatie Voor Toegepas - Natuurwetenschappelijk Onderzoek Tno Confocal laser scanning microscope
US4827125A (en) * 1987-04-29 1989-05-02 The United States Of America As Represented By The Secretary Of The Department Of Health And Human Services Confocal scanning laser microscope having no moving parts
US4907174A (en) * 1988-06-02 1990-03-06 Sun Microsystems, Inc. Z-buffer allocated for window identification
US5309550A (en) * 1988-12-27 1994-05-03 Kabushiki Kaisha Toshiba Method and apparatus for three dimensional display with cross section
US5122653A (en) * 1989-08-22 1992-06-16 Nikon Corporation Confocal type laser scan microscope with integrated illumination, detection and waveguide system
US5226113A (en) * 1989-10-30 1993-07-06 General Electric Company Method and apparatus for volumetric projection rendering using reverse ray casting
US5034613A (en) * 1989-11-14 1991-07-23 Cornell Research Foundation, Inc. Two-photon laser microscopy
US5091652A (en) * 1990-01-12 1992-02-25 The Regents Of The University Of California Laser excited confocal microscope fluorescence scanner and method
US5153428A (en) * 1990-06-15 1992-10-06 Hamamatsu Photonics K.K. Confocal laser scanning microscope having relay lens and a slit for removing stray light
US5035476A (en) * 1990-06-15 1991-07-30 Hamamatsu Photonics K.K. Confocal laser scanning transmission microscope
US5127730A (en) * 1990-08-10 1992-07-07 Regents Of The University Of Minnesota Multi-color laser scanning confocal imaging system
US5162641A (en) * 1991-02-19 1992-11-10 Phoenix Laser Systems, Inc. System and method for detecting, correcting and measuring depth movement of target tissue in a laser surgical system
US5329352A (en) * 1991-04-12 1994-07-12 Bayer Aktiengesellschaft Spectroscopically correlated light scanning microscopy
US5117466A (en) * 1991-04-30 1992-05-26 The United States Of America As Represented By The United States Department Of Energy Integrated fluorescence analysis system
US5313567A (en) * 1991-06-13 1994-05-17 At&T Bell Laboratories Arrangement for determining and displaying volumetric data in an imaging system
US5317644A (en) * 1992-06-16 1994-05-31 Mcgill University Method for the enhancement of cell images

Cited By (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030203520A1 (en) * 1993-06-17 2003-10-30 Worster Bruce W. Method for characterizing defects on semiconductor wafers
US5963314A (en) * 1993-06-17 1999-10-05 Ultrapointe Corporation Laser imaging system for inspection and analysis of sub-micron particles
US5923430A (en) * 1993-06-17 1999-07-13 Ultrapointe Corporation Method for characterizing defects on semiconductor wafers
US6288782B1 (en) 1993-06-17 2001-09-11 Ultrapointe Corporation Method for characterizing defects on semiconductor wafers
US20070104357A1 (en) * 1993-06-17 2007-05-10 Kla-Tencor Corporation Method for Characterizing Defects on Semiconductor Wafers
US6661515B2 (en) 1993-06-17 2003-12-09 Kla-Tencor Corporation Method for characterizing defects on semiconductor wafers
US6148114A (en) * 1996-11-27 2000-11-14 Ultrapointe Corporation Ring dilation and erosion techniques for digital image processing
US6253164B1 (en) * 1997-12-24 2001-06-26 Silicon Graphics, Inc. Curves and surfaces modeling based on a cloud of points
US6320609B1 (en) 1998-07-10 2001-11-20 Nanometrics Incorporated System using a polar coordinate stage and continuous image rotation to compensate for stage rotation
WO2002075423A1 (en) * 2001-03-17 2002-09-26 Carl Zeiss Microelectronic Systems Gmbh Method for evaluating layers of images
US20150043788A1 (en) * 2013-07-22 2015-02-12 Clicrweight, LLC Determining and Validating a Posture of an Animal
US20150064813A1 (en) * 2013-08-29 2015-03-05 International Business Machines Corporation Microprocessor image correction and method for the detection of potential defects
US8987010B1 (en) * 2013-08-29 2015-03-24 International Business Machines Corporation Microprocessor image correction and method for the detection of potential defects

Similar Documents

Publication Publication Date Title
Duchaineau et al. ROAMing terrain: Real-time optimally adapting meshes
JP3764478B2 (en) Tessellation system
EP1173749B1 (en) Image editing for preparing a texture analysis
US7079137B2 (en) Method for digitally rendering an object using measured BRDF data
US5905500A (en) Method and apparatus for adaptive nonlinear projective rendering
US6937235B2 (en) Three-dimensional object surface shape modeling apparatus, method and program
US20050068333A1 (en) Image processing apparatus and method of same
Weidner Digital surface models for building extraction
US6891549B2 (en) System and method for edge enhancement of images
US20090153555A1 (en) System and Computer-Implemented Method for Modeling the Three-Dimensional Shape of An Object by Shading of a Two-Dimensional Image of the Object
US20200258300A1 (en) Method and apparatus for generating a 3d reconstruction of an object
US6724383B1 (en) System and computer-implemented method for modeling the three-dimensional shape of an object by shading of a two-dimensional image of the object
US20020071125A1 (en) Method and apparatus for optical measurement of a surface profile of a specimen
USH1530H (en) Surface extraction from a three-dimensional data set
US20040196294A1 (en) Generating texture maps for use in 3D computer graphics
US7379599B1 (en) Model based object recognition method using a texture engine
Balado et al. Multi feature-rich synthetic colour to improve human visual perception of point clouds
JPH08145796A (en) Three dimensional spectrum display device
US6346949B1 (en) Three-dimensional form data processor retaining information on color boundaries of an object when thinning coordinate data
JPH0621982B2 (en) Three-dimensional spectrum display device
JP3228436B2 (en) How to increase the number of interference fringes
US5821942A (en) Ray tracing through an ordered array
Zheng et al. Automatic 3D model reconstruction of the diamond object
Peachey et al. The measurement of wood cell parameters using the distance transform
Böhm et al. From point samples to surfaces-on meshing and alternatives

Legal Events

Date Code Title Description
AS Assignment

Owner name: ULTRAPOINTE CORPORATION, CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:LEE, KEN K.;REEL/FRAME:006612/0276

Effective date: 19930617

STCF Information on status: patent grant

Free format text: PATENTED CASE