Smart measurement of microscope images

By extracting and enhancing regions of interest, generating multi-scale datasets, and optimizing active contours, the method addresses the inefficiencies in measuring features in charged particle microscope images, enhancing image processing and metrology automation in semiconductor manufacturing.

JP7735462B2Active Publication Date: 2025-09-08FEI CO
View PDF 6 Cites 0 Cited by

Patent Information

Application Number
JP2024053661
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Priority Date
2018-10-31
Filing Date
2024-03-28
Publication Date
2025-09-08
Estimated Expiration
2039-10-10

AI Technical Summary

Technical Problem

Measuring features in images acquired by charged particle microscopes is difficult and time-consuming due to noisy images, which hampers automated processing and is exacerbated in manufacturing environments where large numbers of samples need to be analyzed, leading to inefficiencies in semiconductor manufacturing.

Method used

The method involves extracting a region of interest, enhancing it with filters, generating a multi-scale dataset, initializing and optimizing active contours to identify boundaries, and performing measurements based on these contours.

Benefits of technology

This approach enables accurate and automated measurement of features, improving efficiency and accuracy in semiconductor manufacturing by enhancing image processing and metrology automation.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007735462000001
    Figure 0007735462000001
  • Figure 0007735462000002
    Figure 0007735462000002
  • Figure 0007735462000003
    Figure 0007735462000003
Patent Text Reader

Abstract

To provide a method for smart measurement of microscopic images that improves image processing and measurement automation using images acquired by a charged particle microscope.SOLUTION: A method 300 for processing an image for automated measurement of a desired feature includes the steps of: extracting a region of interest (ROI) from an image including at least one or more boundaries between different sections; enhancing at least the extracted ROI based on one or more filters; generating a multi-scale dataset of the ROI based on the enhanced ROI; initializing a model of the ROI; optimizing a plurality of active contours within the enhanced ROI based on the model of the ROI and the multi-scale dataset, the optimized plurality of active contours identifying the one or more boundaries within the ROI; and performing measurement in the ROI based on the identified boundaries.SELECTED DRAWING: Figure 3
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The technology disclosed herein relates generally to implementing smart metrology using images, and more particularly to performing smart metrology with images acquired with charged particle microscopes. [Background technology]

[0002] Measuring features in an image is a difficult and time-consuming process, especially for images acquired by charged particle microscopes. Part of the difficult and time-consuming process can be attributed to noisy images that make it difficult for automated image processing algorithms to process and lead to user interaction and multiple steps. This is not an issue when there are only a few images to analyze. However, in manufacturing environments such as the semiconductor industry, where large numbers of samples need to be imaged and analyzed, the process of analysis can become very slow.

[0003] Over the years, improvements in image processing have increased metrology accuracy and efficiency, but these improvements are not sufficient for today's semiconductor manufacturing environment, including node sizes and throughput. Therefore, improvements in image processing and metrology automation are desired across the industry. Summary of the Invention

[0004] Disclosed herein are smart metrology methods and apparatus for processing images for automated measurement of desired features. An exemplary method includes extracting a region of interest from the image, including at least one boundary between different sections, enhancing or sharpening at least the extracted region of interest based on one or more filters, generating a multi-scale dataset of the region of interest based on the enhanced region of interest, initializing a model of the region of interest, optimizing a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, wherein the optimized plurality of active contours identify one or more boundaries within the region of interest, and performing measurements in the region of interest based on the identified boundaries.

[0005] Another embodiment includes a non-transitory computer-readable medium comprising code that, when executed by one or more processors, causes the one or more processors to extract a region of interest from an image, including one or more boundaries between different sections of the region of interest; enhance at least the extracted region of interest based on one or more filters; generate a multi-scale dataset of the region of interest based on the enhanced region of interest; initialize a model of the region of interest, where the initialized model determines at least first and second boundaries of the region of interest; optimize a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, where the optimized plurality of active contours identify one or more boundaries within the region of interest; and perform measurements in the region of interest based on the identified boundaries. [Brief explanation of the drawings]

[0006] The patent or application file contains at least one drawing executed in color. Copies of this patent or patent application publication with color drawing(s) will be provided by the Office upon request and payment of the necessary fee. [Figure 1] 1 is an exemplary image sequence illustrating image processing and resulting measurements according to an embodiment of the present disclosure. [Figure 2] 1 is an exemplary image sequence illustrating image processing according to an embodiment of the present disclosure. [Figure 3] 1 is an exemplary method for processing an image and performing measurements on one or more features in the image, according to an embodiment of the present disclosure. [Figure 4] 1 is a method for optimizing multiple active contours within a ROI according to an embodiment of the present disclosure. [Figure 5] 1 is an exemplary image sequence according to an embodiment of the present disclosure. [Figure 6] 1 is an exemplary method according to one embodiment of the present disclosure. [Figure 7] FIG. 1 is a block diagram illustrating a computer system upon which an embodiment of the present invention may be implemented. [Figure 8] 1 is an exemplary charged particle microscope environment for performing at least a portion of the methods disclosed herein in accordance with embodiments of the present disclosure. DETAILED DESCRIPTION OF THE INVENTION

[0007] Like reference numerals refer to corresponding parts throughout the several views of the drawings.

[0008] Embodiments of the present invention relate to smart metrology in microscopy images. In some examples, images are processed to enhance desired features, and then active contours are optimized to identify boundaries formed at the feature interface. The active contours provide an anchor for performing accurate metrology of the features. However, it should be understood that the methods described herein are generally applicable to a wide range of different AI-enhanced metrology, and are not limited thereto.

[0009] As used in this application and the claims, the singular forms "a," "an," and "the" include the plural forms unless the context clearly dictates otherwise. Furthermore, the term "includes" means "comprises." Furthermore, the term "coupled" does not exclude the presence of intermediate elements between the connected items. Furthermore, in the following description and claims, the terms "including" and "comprising" are used liberally and should therefore be interpreted to mean "including, but not limited to." The term "integrated circuit" refers to a series of electronic components and their interconnections (internal electrical circuitry, collection) patterned on the surface of a microchip. The term "semiconductor device" generally refers to an integrated circuit (IC) that is integrated on a semiconductor wafer, separated from the wafer, or packaged for use on a circuit board. The term "FIB" or "focused ion beam" is used herein to refer to any parallel ion beam, including beams focused by ion optics and focused ion beams.

[0010] The systems, devices, and methods described herein should not be construed as limiting in any way. Rather, the present disclosure is directed to all novel and non-obvious features and aspects of the various disclosed embodiments, alone and in various combinations and subcombinations with one another. The disclosed systems, methods, and devices are not limited to any particular aspect or feature or combination thereof, nor do the disclosed systems, methods, and devices require that any one or more particular advantages exist or problems be solved. While any theory of operation is for ease of explanation, the disclosed systems, methods, and devices are not limited to such theory of operation.

[0011] Although some operations of the disclosed methods are described in a particular order for convenience, it is to be understood that this method of description encompasses reordering, unless a specific order is required by specific terminology described below. For example, operations described in order may, in some cases, be reordered or performed simultaneously. Moreover, for simplicity, the accompanying figures may not show the various ways in which the disclosed systems, methods, and apparatuses can be used in conjunction with other systems, methods, and apparatuses. Furthermore, the description may use terms such as "produce" and "provide" to describe the disclosed methods. These terms are high-level abstractions of actual operations that are performed. The actual operations corresponding to these terms will vary depending on the particular implementation and will be readily discernible to those skilled in the art.

[0012] The smart metrology techniques disclosed herein enable automated measurement of features within an image. Images are acquired with a charged particle microscope (SEM, TEM, STEM, FIB, etc.) or an optical microscope, to provide some examples. Images typically may include one or more features, such as regions of interest, and it is desirable to determine the size of at least one or more features. Smart metrology may perform measurements based on, for example, multiple image processing algorithms associated with active contours. The active contours can be initialized based on an image-processed image and can be iteratively optimized using one or more scale spaces. For example, an image can be first processed to locate and isolate one or more regions of interest (ROIs). Data characteristic normalization filtering can then be applied to one or more of these ROIs to increase the signal-to-noise ratio (SNR) and / or improve the contrast between feature portions of the image. After improving the SNR and / or contrast of the image, the image can be subjected to one or more image processing algorithms to enhance the sharpness and / or identification and detection of boundaries between feature portions. Boundary identification and detection can be performed with or without transforming the data into a different representation space, such as Cartesian or polar space, as required by the particular image processing algorithm implemented. The data obtained in the previous process is then processed to generate a multi-scale dataset in Gaussian, geometric, nonlinear, and / or adaptive shape scale spaces. The multi-scale dataset is then used to initialize multiple active contours in the image. The active contours are iteratively initialized and optimized at each resolution level at one or more spatial scales, allowing for progressive optimization of the active contours. Once optimized, the active contours identify and locate all boundaries within the ROI.

[0013] The optimized active contours may then form the basis for performing measurements on desired portions or aspects of the feature in the original or enhanced image. The measurements may include geometric analysis of the segmented region of the feature based on the contour therein. Additionally, the measurements may characterize other analytical aspects of the feature analysis, such as with statistical analysis.

[0014] Additionally or alternatively, active contours may be initiated based on a separate imaging mode, such as multimodal analysis. For example, a sample containing features may be analyzed using energy-dispersive X-ray spectroscopy (EDX) to first determine initial boundaries between portions of the feature and use them as a starting point for initializing each active contour. The EDX may be a single line scan of the entire sample, providing at least one point on the feature where a boundary may exist. Some samples may include a round ROI, providing two points at each boundary of the EDX line scan. Of course, a full 2-D EDX scan could also be performed, but this would be less desirable due to the time required.

[0015] FIG. 1 is an exemplary image sequence 100 illustrating image processing and resulting metrology according to an embodiment of the present disclosure. While image sequence 100 can be performed on any image type, it will be described in the context of images obtained by charged particle microscopy. More specifically, the images used to illustrate the disclosed technology are, but are not limited to, those of semiconductor structures. Image processing and metrology can be performed on any desired image content; the oval features of the images in FIG. 1 are merely exemplary and are not limited to the technology disclosed herein. In the case of image sequence 100, the oval regions are vertical memory devices, sometimes referred to as VNAND. These devices include various layers formed in tall vias (e.g., holes formed in material that penetrate one or more epilayers), each of which is formed from a different material to form operational circuit devices. For process control and defect detection, manufacturers of VNAND devices desire to measure the thicknesses of the material layers that form operational devices, which requires high-resolution microscopes such as SEM and / or TEM to detect interfaces, such as the material layers and the boundaries between them.

[0016] The image sequence 100 begins with an original image 102. Image 102 appears to be a dark oval surrounded by lighter colored areas, but in reality, there are several rings, e.g., material layers, within the dark oval, as seen, for example, in images 108 and 110. Image 100 may be a dark field (DF) image or a high-angle annular dark field (HAADF) image, which traditionally has a brighter background than the region of interest (ROI). In the image processing sequence, the goal is to determine the location and / or boundaries of each ring within the ROI and measure the width of one or more rings, e.g., to perform metrology on a VNAND device. To perform the desired metrology, at least the boundaries between them must be identified so that more accurate measurements can be made. However, to perform such measurements, the image may need to be enhanced to more accurately identify the boundaries.

[0017] Typically, the sequence includes a pre-processing segment to enhance the image in terms of signal-to-noise ratio, contrast, regional definition, etc., as well as extraction / identification of one or more ROIs. After pre-processing, or general image enhancement, a multi-scale data set is generated so that active contours can be initialized and optimized. The optimized active contours identify boundaries between various materials in the image. Based on the boundary identification, measurements of desired layers or regions within the image may then be performed, which may be performed automatically.

[0018] To begin image processing, the original image 102 can be analyzed to extract one or more ROIs. Extracting the ROIs provides a rough outer boundary for each ROI, and can specify, for example, an area within the rough outer boundary where image processing can be focused. There are many techniques for ROI extraction, including, for example, binarizing the image to define the outer boundary. Additional techniques are described below. In some embodiments, meta-information of the original image can also be subject to image processing. Meta-information can include information such as data type (e.g., imaging mode), resolution, pixel size, etc.

[0019] After extracting the ROI, at least a portion of the image undergoes further processing to enhance the image of the ROI, as shown in dashed box 106. Typically, enhancing the ROI involves reducing the signal-to-noise ratio, enhancing the contrast and image clarity, and roughly identifying boundaries between different sections / materials. For example, image 108 shows the ROI from the original image (with the background removed) with improved contrast. The enhanced contrast image 108 may then undergo further processing to enhance clarity, as shown in image 110. Image 110 shows the ROI after various filtering operations, such as reactive-diffusion filtering, have been performed.

[0020] Furthermore, the images 110 can be used to generate a multi-scale dataset where the different scales include at least Gaussian, geometric, nonlinear, and adaptive shape scale spaces. The images in each scale space are then subjected to a series of blurring or subsampling to smooth the image. Such processing is performed to construct a potential surface for smoothly deforming the active contours.

[0021] Additionally, a model of the ROI is formed to provide the boundaries of the ROI for further processing. For example, various maps of the ROI can be generated to determine the inner and outer boundaries used to establish the region where further image processing will occur. An example of a map is a distance map of the ROI that determines the center and outer edges of the ROI.

[0022] After one or more ROIs in the original image are enhanced for at least clarity and contrast, multiple active contours are initiated within the enhanced ROI and positioned according to the generated ROI model, which may range from tens to hundreds of active contours. A large number of active contours is used because the number and locations of boundaries, such as material layers, are unknown in advance. Typically, the number of initialized active contours will be greater than the number of boundaries. Image 112 illustrates the initialization of multiple active contours within the ROI, which may be positioned in the original image or an enhanced version of the original image. The active contours are optimized to identify boundaries that match minimum energy locations in the image. Image 114 illustrates optimized active contours, e.g., snakes. Some of the multiple active contours are incorrectly optimized and ultimately removed. For example, the incorrectly optimized active contours may be relaxed to different boundaries within the ROI.

[0023] The optimized active contour can be used as a reference to measure the thickness of various material layers within the ROI, as shown in image 116.

[0024] FIG. 2 is an exemplary image sequence 200 illustrating image processing according to an embodiment of the present disclosure. Sequence 200 is an exemplary image processing sequence illustrating a different portion of the overall sequence than that shown in image sequence 100. Generally, each step of the process described herein can be performed using one or more image processing algorithms, with the selection of the implemented algorithm being automatically selected based at least on meta-information of the original image. Image sequence 200 begins with original image 202, as shown, which is of a different initial quality than image 102. Furthermore, image 202 may have been acquired using a bright-field (BF) image or a TEM imaging mode that produces an image with a darker background than the ROI. The VNAND structure in image 202 can be processed to extract the ROI, the result of which is shown in image 204. As noted above, extracting the ROI generally establishes the outer boundary of the ROI.

[0025] The extracted ROI of image 204 can then be used as a template to form a distance map on image 202, e.g., to initialize a model of the ROI. The distance map can be used to define boundaries for the initial placement of an active contour, centered on the ROI, as shown in image 212. Furthermore, the model of the ROI, as shown in image 218, is used to establish inner and outer boundaries, as shown by the innermost and outermost dashed lines in image 212. The active contour of image 212 can be placed on an image that has undergone ROI enhancement processing, as shown in box 106 of sequence 100, along with the generation of a multi-scale dataset that provides energy values ​​for regions within the ROI. The active contour can be placed, for example, outside the extracted ROI but at a distance away from the background within the ROI. Furthermore, the model of the ROI, as shown in image 218, is used to establish inner and outer boundaries, as shown by the innermost and outermost dashed lines in image 212.

[0026] After the active contours are placed, they can be optimized based on the multi-scale data set. After the active contours are optimized, measurements can be performed on the layer of VNAND shown in image 202, as shown in box 220.

[0027] FIG. 3 illustrates an exemplary method 300 for processing an image and performing measurements on one or more features within the image, according to an embodiment of the present disclosure. Method 300, at least partially illustrated in FIGS. 1 and 2 , can be performed on images obtained with a charged particle microscope, such as a SEM, TEM, or STEM, to name a few. However, the use of charged particle images is not a limitation of the techniques disclosed herein. Furthermore, method 300 can be performed by imaging tool hardware, one or more servers connected to the imaging tool via a network, a user's desktop workstation, or a combination thereof. Generally, method 300 implements one or more image processing techniques automatically selected from a library of techniques to arrive at an image that can be accurately and autonomously measured, e.g., to perform measurements on one or more features of the image.

[0028] Method 300 may begin at process block 301 with image preprocessing. Generally, the image may be processed to enhance contrast and sharpness before using active contours to identify boundaries within the ROI, leading to measurements of the layers that form those boundaries. Preprocessing may include multiple processes: ROI extraction, contrast / region sharpness enhancement, SNR improvement, or region boundary differentiation or detection. Image enhancement may be performed only within the ROI or across the entire image, and is a non-limiting aspect of the present disclosure. Of course, limiting enhancement to the ROI may improve overall process time and efficiency of method 300.

[0029] Processing block 303, an optional substep of processing block 301, involves extracting a region of interest from the image. The image may be an initially acquired image, such as image 102 or 202, or a cropped portion of the original image. Along with image data for the input image, process 300 also receives meta-information about the input image, including the data type (e.g., imaging mode), pixel size, or other data about the image. The meta-information can be used to assist in automatically determining which image processing techniques to implement in the image processing steps of method 300, such as at least steps 301 and 303. The meta-information attached to the image implements pre-processing filters in processing block 301 to automatically adjust their parameters to the imaging mode of the image. Resolution aids in determining which material layers to accurately segment. For example, if the image resolution is low, a material layer that is only 1 or 2 nanometers thick may not have enough pixels to accurately process it. The pixel size, which is also related to the resolution, may be necessary to normalize the data to a standard pixel size to automate the process and produce measurements in standard MKI units rather than in pixels.

[0030] There are many image processing techniques that can be used to extract the ROI. The following includes a non-exclusive list of techniques that can be implemented, but the techniques used are non-limiting aspects of this disclosure: linear isotropic diffusion, histogram manipulation for contrast enhancement, automatic thresholding, component labeling, problem-specific size and shape criteria, partial representation detection and removal, etc. These are automatically selected and applied. Extracting the ROI provides a rough boundary around which additional image processing or measurements can be performed.

[0031] Processing block 303 may be followed by processing block 305, which includes enhancing at least the ROI within the image. Typically, the enhancement is performed to obtain standardization of data properties and to improve detection of region boundaries within the ROI. Furthermore, this enhancement may improve image contrast, signal-to-noise ratio (SNR), region sharpness, and region boundary identification and detection. Region boundary identification and detection can be performed with or without transforming the data into a different representation space, such as Cartesian or polar space, as may be required by the implemented image filtering techniques.

[0032] In some embodiments, processing block 305 can be divided into two process steps, where contrast or SNR is improved in one step (step A), and improved region definition and region boundary identification and detection are performed in another step (step B). To implement step A, many image manipulation algorithms can be selected, such as histogram manipulation, linear and nonlinear contrast enhancement, data normalization based on local low-frequency data distribution, gamma correction, logarithmic correction, brightness correction, etc. The selected algorithm is automatically applied to at least the image ROI and is selected based on at least meta-information. Note that step A also performs a data property standardization step.

[0033] Similarly, step B includes selecting one or more algorithms from a group of similar algorithms that are automatically implemented based at least on the meta-information. The implemented algorithms can be selected from reaction-diffusion filtering, adaptive isotropic and anisotropic diffusion, median filtering, the Mumford-Shah model based on nonlinear diffusion, background suppression and edge / boundary extraction, coherence-enhancing filtering of object boundaries, and application of amplitude features, textures (e.g., Gabor, Haralick, Laws, LCP, LBP) techniques. In some embodiments, if available, other imaging techniques, such as energy-dispersive X-ray spectroscopy (EDX) or electron energy-loss spectroscopy (EELS), can be used to distinguish region boundaries. A more detailed discussion of the use of other imaging techniques is included below.

[0034] Processing block 301 may be followed by processing block 307, which includes generating a multi-scale dataset of at least the ROI. The multi-scale dataset is generated in one or more of several scale spaces, such as Gaussian scale space, geometric scale space, nonlinear scale space, or adaptive shape scale space. The scale space or spaces used to generate the multi-scale dataset are used to optimize multiple active contours. The active contours are initialized or optimized at each scale level to determine boundaries within the ROI at the original scale level. Thus, the multi-scale dataset serves as the basis for optimizing the active contours and identifying boundaries between sections of the ROI.

[0035] Processing block 307 may be followed by processing block 309, which includes initializing at least a model of the ROI. Processing block 309 initializes a general model of the ROI to form first and second boundaries of the ROI. Additional processing is primarily performed within the boundaries established by the model. The model can be created based on one or more techniques selected from binary label maps, interactive maps, distance maps, CAD maps, statistical models from data, die-casting, random distribution of geometric shapes, geometric models, etc. The distance map shown in image 218 illustrates an example of an initial model. Note that processing block 309 can be performed in parallel with processing blocks 305 and 307 and does not need to follow processing block 307. Furthermore, the model initialized in processing block 307 may be based on either the original image or the enhanced image.

[0036] Processing block 309 is followed by processing block 311, which includes optimizing a plurality of active contours within the enhanced ROI to identify boundaries of features within the enhanced ROI. The process of optimizing the active contours, or enabling the active contours to be optimized, may begin with the initialization of a first plurality of active contours, where the first plurality is greater than the number remaining after optimization and greater than the boundaries within the ROI. Initializing more active contours than boundaries may be performed due to a lack of a priori knowledge of the number of boundaries within the ROI and / or their locations within the ROI. While the initialized active contours are all optimized, some contours are likely to be connected by optimizing to the same boundary, while others may be removed by incorrect optimization, such as optimizing to different boundaries within the ROI. Thus, the optimized active contours identify and specify boundaries separating various sections / materials within the ROI.

[0037] The process of initializing or optimizing the active contour may be an iterative process performed at and based on each scale level of the multi-scale dataset generated in process block 307. For example, the initial initialization or optimization of the active contour may be performed at the fourth level of scale of the enhanced ROI image, which has 1 / 16 the resolution of the original enhanced ROI image. The active contour that best fits the fourth level of scale image then becomes the initial active contour for the third level of scale image, e.g., the 1 / 8 resolution image that allows for optimization. This process is repeated until the active contour for the original scale image is initialized or optimized, thereby identifying and specifying the desired boundary within the ROI.

[0038] Processing block 311 may be followed by processing block 313, which includes performing metrology on the ROI in the original image based on the optimized active contours. The metrology provides measurements of the widths of different sections based on the distances between the different boundaries, and also provides information about the overall shape of the boundaries. In some embodiments, the metrology may use geometric analysis or contours of the segmented, e.g., identified, sections. After metrology, the resulting data can be used for statistical inference, hypothesis generation, defect detection, process control, time analysis, prediction, and other applications.

[0039] FIG. 4 illustrates a method 400 for optimizing multiple active contours within a region of interest (ROI) according to an embodiment of the present disclosure. Method 400 may be implemented in conjunction with method 300, such as step 311, and may provide one example of step 311. Method 400 may begin at processing block 401, which includes generating a multi-scale dataset of an image. The multi-scale dataset includes datasets at multiple resolution levels, each of a plurality of scale spaces, such as Gaussian, geometric, nonlinear, and adaptive shape scale spaces, to name a few. Of course, other scale spaces may also be implemented. The multi-space dataset is generated from the enhanced image generated by processing block 301 of method 300. Using the enhanced image, boundaries are more clearly defined and are highlighted and smoothed in the multi-scale dataset. Processing block 401 may be followed by processing block 403, which directs completing the remainder of method 400 for each scale space.

[0040] For each scale space, processing block 405 or 407 may be performed for each resolution level, and once all resolution levels of a scale space have been performed, the optimized active contour may be used as the initial active contour for the subsequent scale space. Of course, this is not limiting, and each scale space may start with a new set of active contours.

[0041] Processing block 403 may be followed by processing block 405, which includes initializing a plurality of active contours on the ROI. If this is the initial performance of processing block 403 in scale space, the plurality of active contours are initialized with data from the lowest resolution level. The lowest resolution level may depend on the initial quality of the image, but may be 1 / 16 resolution or lower. However, the lowest level used is a non-limiting aspect of this disclosure. If this is not the lowest level resolution image, the initialized active contours will be optimized active contours from an image at a lower resolution level, such as a previous iteration of processing block 405 or 407.

[0042] The ROI images at different resolutions within each scale space are characterized as blurred by an amount based on the resolution level, with lower resolutions resulting in more blurring. Blurring the boundaries of the enhanced image results in a larger energy band for the active contour, which is then optimized accordingly. Note also that higher-level datasets have less blurring, resulting in a narrower energy band for optimization. Thus, by successively using active contours optimized at lower resolutions, the active contour is optimized to maximum resolution in a stepwise manner.

[0043] Processing block 405 may be followed by processing block 407, which includes optimizing multiple active contours. Optimizing the active contours moves / sets the active contours to the center of the smoothed boundaries provided by each resolution level. As processing blocks 405 and 407 are executed repeatedly, the active contours are optimized with a staircase function, ultimately optimizing to the boundaries of the original resolution image, identifying one or more boundaries within the image.

[0044] Processing block 407 is followed by processing block 409, which determines whether all resolution levels in scale space have been completed. If no, processing blocks 405 and 407 are repeated for the next resolution level image. If yes, method 400 proceeds to processing block 411 to determine whether all scale spaces have been completed. If no, the process returns to processing block 403, and if yes, ends at processing block 413. Completion of method 400 involves locating and identifying all boundaries within the ROI in the enhanced image, which may then be overlaid or associated with regions / boundaries in the original image.

[0045] FIG. 5 is an example image sequence 500 according to an embodiment of the present disclosure. Image sequence 500 illustrates another process that can be used to initialize or optimize active contours for locking metrology. Image 502 includes an original image of VNAND along with two other VNAND portions. Image 522 shows EDX data on the same VNAND shown in image 502. As seen in image 522, the EDX data, which provides a chemical analysis, shows the variations between the materials that make up the different rings of VNAND. This chemical information can be used to determine the number of boundaries within the VNAND and the approximate location of each of those boundaries.

[0046] In some embodiments, EDX data may be provided by a wide area scan such as that shown in image 522. However, such a wide area scan can be replaced by a simpler EDX line scan, which is faster and more efficient. An EDX line scan is performed across the entire VNAND or imaged structure to identify the boundaries of each ring across the diameter of the structure.

[0047] The EDX data for image 522 can then be used to initialize a respective number of active contours at the indicated boundaries and place them on image 522 according to the boundary locations. Once the active contours are located, optimization is permitted. Optimizing the active contours requires more precise identification of the boundary locations. In some embodiments, the boundaries identified by the EDX data are used to position a respective number of active contours for optimization. For example, if the EDX data indicates seven boundaries, seven active contours are initialized, each at the location of one identified boundary. In other embodiments, the enhanced image data is used to generate a multi-scale dataset, which then serves as the basis for initializing and optimizing the active contours. However, in such embodiments, the number and locations of the initialized active contours are based on the boundaries identified by the EDX data.

[0048] As seen in image 514, the optimized active contour may be overlaid on the original image 502 or an enhanced version of image 502 to provide a basis for performing measurements, as shown in block 516.

[0049] FIG. 6 illustrates an exemplary method 600 according to an embodiment of the present disclosure. The method 600, illustrated at least in part by the image sequence 500, includes an imaging technique different from that used to generate the image to aid in determining the section boundaries and establishing the measurements. While the present disclosure uses EDX as the different technique, other techniques, such as EELS, may also be used. The method 600 may begin at process block 601, which includes acquiring an image of at least an ROI of the sample. The image may be acquired using an SEM, TEM, STEM, or other imaging technique, sometimes referred to as a first imaging technique. In the case of a charged particle microscope, the image may be a grayscale image based on electrons passing through the sample (e.g., TEM or STEM), secondary electrons (e.g., SEM), and / or backscattered electrons (e.g., SEM). Of course, the image may also be acquired from an optical microscope.

[0050] Process block 601 may be followed by process block 603, which includes performing a second imaging technique on at least the ROI. The second imaging technique may be any imaging / analysis technique different from the first imaging technique. In some embodiments, it may be desirable for the second imaging technique to be a chemical analysis tool, such as EDX. Using EDX as an example of a second imaging technique, the EDX data chemically indicates changes in the material. These changes in the material provide an approximation of the boundaries within the ROI. When EDX is used as a second imaging technique, it can be performed as a two-dimensional area scan across the ROI or as a line scan across the ROI.

[0051] Processing block 603 may be followed by processing block 605, which includes initializing a number of active contours within the ROI of an acquired image, the acquired image being acquired using a first imaging technique. In some embodiments, the acquired image is an initially acquired image that has not undergone additional image processing. However, in other embodiments, the active contours may be initialized on an enhanced image that has been imaged using a second imaging technique and processed to improve contrast, SNR, sharpness, etc., so that boundaries are more clearly defined. In yet another embodiment, the active contours may be iteratively and recursively initialized or optimized on a series of resolution-adjusted images in one or more scale spaces, as described above. However, whereas previous methods, such as methods 300 and 400, initialized a larger number of active contours than there were boundaries, in method 600, the second imaging technique provides a larger number of boundaries within the ROI. Therefore, initializing the active contours in method 600 includes initializing the respective number of active contours as there are boundaries identified by the second imaging technique. Furthermore, the active contours initialized in processing block 605 are initialized at positions determined by the second imaging technique data.

[0052] Process block 605 is followed by process block 607, which includes optimizing a plurality of active contours within the ROI to identify boundaries of features within the ROI. Optimization of the active contours may be performed as described above with respect to methods 300 and / or 400, but may also be performed based on the second imaging technology data. Regardless of the optimization process, process block 605 provides identification and location information regarding boundaries within the ROI, which boundaries are interfaces between different materials within the ROI, such as the VNAND of FIG. 5 .

[0053] Process block 607 is followed by process block 609, which includes performing metrology on features within the ROI based on the optimized active contours. The metrology provides measurements of various aspects of the features within the ROI, such as feature dimensions, overall shape of features within the ROI, process control or defect information, or other desired measurement-based information.

[0054] According to one embodiment, the techniques described herein are implemented by one or more special-purpose computing devices. The special-purpose computing device may be hardwired to perform the techniques or may include one or more digital electronic devices, such as application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or network processing units (NPUs), to perform the techniques. The special-purpose computing device may also include one or more general-purpose hardware processors or graphics processing units (GPUs) that are permanently programmed to perform the techniques or that are programmed to perform the techniques according to program instructions in firmware, memory, other storage, or a combination thereof. Such special-purpose computing devices may also implement the techniques using a combination of custom hardwired logic, ASICs, FPGAs, or NPUs, and custom programming. The special-purpose computing device may be a desktop computer system, a portable computer system, a handheld device, a network device, or other device that incorporates hardwired and / or program logic to implement the techniques. In some embodiments, the special-purpose computing device may be part of a charged particle microscope or may be connected to the microscope and other user computing devices.

[0055] For example, Figure 7 is a block diagram illustrating a computer system 700 on which embodiments of the present invention may be implemented. Computer system 700 may be an example of computer hardware included in the charged particle environment shown in Figure 8. Computer system 700 includes at least a bus or other communication mechanism for communicating information and a hardware processor 730 connected to the bus (not shown) for processing information. Hardware processor 730 may be, for example, a general-purpose microprocessor. Computer system 700 may be used to implement the methods and techniques disclosed herein, such as methods 300, 400, and / or 600, and may also be used to acquire images and process the images with one or more filters / algorithms.

[0056] Computer system 700 also includes a main memory 732, such as a random access memory (RAM) or other dynamic storage device coupled to the bus for storing information or instructions executed by processor 730. Main memory 732 may also be used to store temporary variables or other intermediate information during execution of instructions to be executed by processor 730. Such instructions, when stored on a non-transitory storage medium accessible to processor 730, render computer system 700 into a special-purpose machine customized to perform the operations specified in the instructions.

[0057] Computer system 700 may further include a read-only memory (ROM) 734 or other static storage device coupled to bus 740 for storing static information and instructions for processor 730. A storage device 736, such as a magnetic disk or optical disk, is provided and coupled to bus 740 for storing information and instructions.

[0058] Computer system 700 may be connected via a bus to a display, such as a cathode ray tube (CRT), for displaying information to a computer user. Input devices, including alphanumeric and other keys, are connected to the bus for communicating information and command selections to processor 730. Another type of user input device is a cursor control, such as a mouse, trackball, or cursor direction keys, for communicating directional information and command selections to processor 730 and for controlling cursor movement on a display. This input device typically has two degrees of freedom in two axes, i.e., a first axis (e.g., "x") and a second axis (e.g., "y"), that allow the device to specify a position in a plane.

[0059] Computer system 700 may implement the techniques described herein using customized hardwired logic, one or more ASICs or FPGAs, firmware, and / or program logic that, in combination with the computer system, renders computer system 700 a special-purpose machine. According to one embodiment, the techniques described herein are performed by computer system 700 in response to processor 730 executing one or more sequences of one or more instructions contained in main memory 732. Such instructions may be read into main memory 732 from another storage medium, such as storage device 736. Execution of the sequences of instructions contained in main memory 732 causes processor 730 to perform the process steps described herein. In alternative embodiments, hardwired circuitry may be used in place of or in combination with software instructions.

[0060] The term "storage media," as used herein, refers to any non-transitory medium that stores data and / or instructions that cause a machine to operate in a specific manner. Such storage media may include non-volatile media and / or volatile media. Non-volatile media include, for example, optical or magnetic disks, such as storage device 736. Volatile media include dynamic memory, such as main memory 732. Common forms of storage media include, for example, floppy disks, flexible disks, hard disks, solid-state drives, magnetic tape or other magnetic data storage media, CD-ROMs, other optical data storage media, media with patterns of physical holes, RAM, PROM, EPROM, FLASH-EPROM, NVRAM, other memory chips or cartridges, content addressable memories (CAMs), and ternary content addressable memories (TCAMs).

[0061] Storage media are distinct from but may be used in combination with transmission media. Transmission media involves transferring information between storage media. For example, transmission media include coaxial cables, copper wire and fiber optics, including the wires that comprise a bus. Transmission media may also take the form of acoustic or light waves, such as those generated during radio wave or infrared data communications.

[0062] Computer system 700 also includes a communication interface 738 coupled to the bus. The communication interface 738 provides a two-way data communication coupling to a network link (not shown), for example, connected to a local network. As another example, communication interface 738 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. It may also be a wireless link implementation. In such an implementation, communication interface 738 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.

[0063] Computer system 700 can send messages and receive data, including program code, through the network(s), network link, or communication interface 738. In the Internet example, a server might send a requested code for an application program through the Internet, an ISP, a local network, or communication interface 738.

[0064] The received code may be executed by processor 730 as it is received, and / or stored in storage device 736, or other non-volatile storage for later use.

[0065] 8 illustrates an exemplary charged particle microscope environment 800 for performing at least a portion of the methods disclosed herein in accordance with embodiments of the present disclosure. Charged particle microscope (CPM) environment 800 may include a charged particle microscope 850, a network 860, a user station 880, or a server 870. Various components of CPM environment 800 may be co-located with a user location or distributed. Furthermore, some or all of the components may include a computer system, such as computer system 700, for performing the methods disclosed herein. Of course, the CPM environment is merely an exemplary operating environment for implementing the disclosed technology and should not be considered a limitation on implementation of said technology.

[0066] The CPM 850 may be any type of charged particle microscope, such as a TEM, SEM, STEM, dual beam system, or focused ion beam (FIB) system. A dual beam system is a combination of an SEM and an FIB, capable of both imaging or material removal / deposition. Of course, the type of microscope is a non-limiting aspect of this disclosure, and the techniques disclosed herein may also be implemented with images obtained by other forms of microscopy and imaging. The CPM 850 may be used to acquire images of samples and ROIs contained therein for processing with the methods disclosed herein. However, the disclosed methods may also be implemented by the CPM environment 800 with images obtained by other microscopes.

[0067] Network 860 can be any type of network, such as a local area network (LAN), a wide area network (WAN), the Internet, etc. Network 860 may be connected between other components of CPM environment 800 so that data and processing code can be transmitted to the various components to implement the disclosed techniques. For example, a user at user station 880 can receive an image from CPM 850 for processing in accordance with the disclosed techniques. The user can then obtain code from server 870, either directly or via network 860, to perform image processing and measurement. Alternatively, the user can initiate the process by providing an image from CPM 850, either directly or via network 860, to server 870, where the processing and measurement is performed by server 870.

[0068] In some instances, values, procedures, or devices are referred to as "lowest," "best," "minimum," etc. Such expressions are intended to indicate that a selection from among many available functional options is possible, and that such a selection is not necessarily better, smaller, or otherwise preferable than other options. Furthermore, the selected value may be obtained by numerical or other approximation means and may merely be an approximation to a theoretically correct value.

[0069] [Appendix 1] extracting a region of interest from the image, the region of interest including one or more boundaries between different sections of the region of interest; enhancing at least the extracted region of interest based on one or more filters; generating a multi-scale data set of the region of interest based on the enhanced region of interest; initializing a model of the region of interest, the initialized model determining at least a first boundary and a second boundary of the region of interest; optimizing a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, the optimized plurality of active contours identifying the one or more boundaries within the region of interest; and and performing measurements on the region of interest based on the identified boundary. [Appendix 2] optimizing a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, initializing a first plurality of active contours within the first and second boundaries of the initialized model, the first plurality of active contours having more active contours than boundaries within the region of interest; and and optimizing the first plurality of active contours to the plurality of active contours to identify one or more boundaries within the region of interest. [Appendix 3] optimizing a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, 2. The method of claim 1, comprising optimizing the active contours within the enhanced region of interest for each image resolution level in each scale space of one or more scale spaces. [Appendix 4] 4. The method of claim 3, wherein the one or more scale spaces are selected from a Gaussian scale space, a geometric scale space, a nonlinear scale space, and an adaptive scale space. [Appendix 5] generating a multi-scale dataset of the region of interest based on the enhanced region of interest, 2. The method of claim 1, comprising generating multiple image resolution levels of the enhanced region of interest using one or more scale spaces selected from a Gaussian scale space, a geometric scale space, a nonlinear scale space, and an adaptive scale space. [Appendix 6] initializing a model of the region of interest, the initialized model determining at least a first boundary and a second boundary of the region of interest; 2. The method of claim 1, comprising initializing the model of the region of interest based on one or more image maps selected from a binary label map, an interactive map, a distance map, a CAD map, a statistical model from the data, a die cast, a random distribution of geometric shapes, or a geometric model. [Appendix 7] 2. The method of claim 1, wherein the step of initializing the model of the region of interest is based on an original image or the enhanced region of interest. [Appendix 8] enhancing at least the extracted region of interest based on one or more filters, improving the contrast of at least the region of interest in the image; and 2. The method of claim 1, further comprising: improving the signal-to-noise ratio of at least the region of interest in the image. [Appendix 9] improving the contrast and the signal to noise ratio by 9. The method of claim 8, comprising automatically selecting and applying one or more filters selected from histogram manipulation, linear or non-linear contrast enhancement, locality-based data normalization, low-frequency data variance, gamma correction, log correction, or luminance correction. [Appendix 10] enhancing at least the extracted region of interest based on one or more filters, improving the definition of the region of interest; 2. The method of claim 1, further comprising distinguishing and detecting the one or more boundaries within the region of interest. [Appendix 11] improving the definition of the region of interest and distinguishing and detecting the one or more boundaries within the region of interest, 11. The method of claim 10, comprising automatically selecting and applying one or more filters selected from reaction-diffusion filtering, adaptive isotropic and anisotropic diffusion filtering, median filtering, Mumford-Shah model based nonlinear diffusion filtering of nonlinear diffusion, background suppression and edge / boundary extraction, and coherence-enhancing filtering at object boundaries. [Appendix 12] improving the definition of the region of interest and distinguishing and detecting the one or more boundaries within the region of interest, 11. The method of claim 10, comprising automatically selecting and applying one or more amplitude or texture-based filters selected from Gabor, Haralick, Laws, LCP, or LBP. [Appendix 13] improving the definition of the region of interest and distinguishing and detecting the one or more boundaries within the region of interest, 11. The method of claim 10, comprising applying an analysis technique to the region of interest, the analysis technique being selected from either an energy dispersive X-ray analysis technique or an electron energy loss spectroscopy technique, to determine the number and location of the one or more boundaries. [Appendix 14] 2. The method of claim 1, wherein the one or more filters are automatically selected and applied based on image metadata, the image metadata including at least data type, resolution, or pixel size. [Appendix 15] performing measurements on the region of interest based on the identified boundary; 2. The method of claim 1, comprising automatically performing a geometric analysis of the different sections bounded by the one or more boundaries. [Appendix 16] 1. A non-transitory computer readable medium (CRM) comprising code that, when executed on one or more processors, causes the one or more processors to: extracting a region of interest from the image, the region including one or more boundaries between different sections of the region of interest; enhancing at least the extracted region of interest based on one or more filters; generating a multi-scale data set of the region of interest based on the enhanced region of interest; initializing a model of the region of interest, the initialized model determining at least a first boundary and a second boundary of the region of interest; optimizing a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, the optimized plurality of active contours identifying the one or more boundaries within the region of interest; and A non-transitory computer-readable medium for causing measurements to be performed in the region of interest based on the identified boundary. [Appendix 17] The code, which, when executed, causes the one or more processors to optimize a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, when executed, causes the one or more processors to: initializing a first plurality of active contours within the first boundary and second boundary of the initialized model, the first plurality of active contours having more active contours than boundaries within the region of interest; and 17. The computer-readable medium of claim 16, further comprising code for causing the first plurality of active contours to be optimized to the plurality of active contours to enable identifying the one or more boundaries within the region of interest. [Appendix 18] Code that, when executed, causes the one or more processors to optimize a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, when executed, causes the one or more processors to: 17. The computer-readable medium of claim 16, further comprising code for optimizing the active contours within the enhanced region of interest for each image resolution level in each scale space of one or more scale spaces. [Appendix 19] 19. The computer-readable medium of claim 18, wherein the one or more scale spaces are selected from a Gaussian scale space, a geometric scale space, a nonlinear scale space, or an adaptive scale space. [Appendix 20] code that, when executed, causes the one or more processors to generate a multi-scale dataset of the region of interest based on the enhanced region of interest, 17. The computer-readable medium of claim 16, further comprising code that, when executed, causes the one or more processors to generate multiple image resolution levels of the enhanced region of interest using one or more scale spaces selected from a Gaussian scale space, a geometric scale space, a nonlinear scale space, and an adaptive spatial scale. [Appendix 21] Code that, when executed, causes the one or more processors to initialize a model of the region of interest, the initialized model determining at least a first boundary and a second boundary of the region of interest, the code, when executed, causing the one or more processors to: 17. The computer-readable medium of claim 16, further comprising code to execute: initializing the model of the region of interest based on one or more image maps selected from a binary label map, an interactive map, a distance map, a CAD map, a statistical model from data, a die-cast, a random distribution of geometric shapes, or a geometric model. [Appendix 22] 17. The computer-readable medium of claim 16, wherein the initialized model of the region of interest is based on the original image or the enhanced region of interest. [Appendix 23] The code, which when executed causes the one or more processors to enhance at least the extracted region of interest based on one or more filters, may include, when executed, causing the one or more processors to: improving the contrast of at least the region of interest in the image; and 17. The computer-readable medium of claim 16, further comprising code for causing: improving a signal-to-noise ratio of at least the region of interest in the image. [Appendix 24] The code that, when executed, causes the one or more processors to improve the contrast and the signal-to-noise ratio may include causing the one or more processors, when executed, to: 24. The computer-readable medium of claim 23, further comprising code for automatically selecting and applying the one or more filters selected from histogram manipulation, linear and non-linear contrast enhancement, locality-based data normalization, low-frequency data variance, gamma correction, log correction, or luminance correction. [Appendix 25] The code, which when executed causes the one or more processors to enhance at least the extracted region of interest based on one or more filters, may include, when executed, causing the one or more processors to: improving the definition of the region of interest; and 17. The computer-readable medium of claim 16, further comprising code to cause the computer to distinguish and detect the one or more boundaries of the region of interest. [Appendix 26] The code, which when executed causes the one or more processors to improve definition of the region of interest and to distinguish and detect the one or more boundaries within the region of interest, may include code, which when executed causes the one or more processors to: 26. The computer-readable medium of claim 25, further comprising code for automatically selecting and applying one or more filters selected from reaction-diffusion filtering, adaptive isotropic and anisotropic diffusion filtering, median filtering, a Mumford-Shah model based on nonlinear diffusion filtering, background suppression and edge / boundary extraction, and coherence-enhancing filtering at object boundaries. [Appendix 27] The code, which when executed causes the one or more processors to improve definition of the region of interest and to distinguish and detect the one or more boundaries within the region of interest, may include code, which when executed causes the one or more processors to: 26. The computer-readable medium of claim 25, further comprising code for automatically selecting and applying one or more amplitude or texture-based filters selected from Gabor, Haralick, Laws, LCP, or LBP. [Appendix 28] The code, which when executed causes the one or more processors to improve definition of the region of interest and to distinguish and detect the one or more boundaries within the region of interest, may include code, which when executed causes the one or more processors to: 26. The computer-readable medium of claim 25, further comprising code for causing the computer to apply an analysis technique selected from either an energy dispersive X-ray analysis technique or an electron energy loss spectroscopy technique to the region of interest to determine the number and location of the one or more boundaries. [Appendix 29] 17. The computer-readable medium of claim 16, wherein the one or more filters are automatically selected and applied based on image metadata, the image metadata including at least data type, resolution, and pixel size. [Appendix 30] The code, which when executed causes the one or more processors to perform measurements in the region of interest based on the identified boundary, may include causing the one or more processors, when executed, to: 17. The computer-readable medium of claim 16, further comprising code for causing the computer to automatically perform a geometric analysis of the various sections bounded by the one or more boundaries.

Claims

1. extracting a region of interest from the image, the region of interest including one or more boundaries between different sections of the region of interest; enhancing at least the extracted region of interest based on one or more filters; generating a multi-scale dataset of the region of interest based on the enhanced region of interest, the multi-scale dataset comprising generating multiple image resolution levels of the enhanced region of interest using multiple scale spaces selected from a Gaussian scale space, a geometric scale space, a non-linear scale space, and an adaptive scale space; initializing a model of the region of interest, the initialized model determining at least a first boundary and a second boundary of the region of interest; optimizing a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, the optimized plurality of active contours identifying the one or more boundaries within the region of interest; and and performing measurements on the region of interest based on the identified boundary.

2. optimizing a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, initializing a first plurality of active contours within the first and second boundaries of the initialized model, the first plurality of active contours having more active contours than boundaries within the region of interest; and and optimizing the first plurality of active contours to the plurality of active contours to identify one or more boundaries within the region of interest.

3. optimizing a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, The method of claim 1 , comprising optimizing the plurality of active contours within the enhanced region of interest for each image resolution level in each of the plurality of scale spaces.

4. initializing a model of the region of interest, the initialized model determining at least a first boundary and a second boundary of the region of interest; 10. The method of claim 1, comprising initializing the model of the region of interest based on one or more image maps selected from a binary label map, an interactive map, a distance map, a CAD map, a statistical model from the multi-scale dataset, a die cast, a random distribution of geometric shapes, or a geometric model.

5. The method of claim 1 , wherein initializing the model of the region of interest is based on an original image or the enhanced region of interest.

6. enhancing at least the extracted region of interest based on one or more filters, improving the contrast of at least the region of interest in the image; and and improving the signal-to-noise ratio of at least the region of interest in the image.

7. improving the contrast and the signal to noise ratio by 7. The method of claim 6, further comprising automatically selecting and applying one or more filters selected from histogram manipulation, linear or non-linear contrast enhancement, locality-based data normalization, low-frequency data variance, gamma correction, log correction, or luminance correction.

8. enhancing at least the extracted region of interest based on one or more filters, improving the definition of the region of interest; and c) distinguishing and detecting the one or more boundaries within the region of interest.

9. improving the definition of the region of interest and distinguishing and detecting the one or more boundaries within the region of interest, 9. The method of claim 8, comprising automatically selecting and applying one or more filters selected from reaction-diffusion filtering, adaptive isotropic and anisotropic diffusion filtering, median filtering, Mumford-Shah model based nonlinear diffusion filtering of nonlinear diffusion, background suppression and edge / boundary extraction, and coherence-enhancing filtering at object boundaries.

10. improving the definition of the region of interest and distinguishing and detecting the one or more boundaries within the region of interest, 9. The method of claim 8, comprising automatically selecting and applying one or more amplitude or texture-based filters selected from Gabor, Haralick, Laws, LCP, or LBP.

11. improving the definition of the region of interest and distinguishing and detecting the one or more boundaries within the region of interest, 9. The method of claim 8, further comprising applying an analysis technique selected from either an energy dispersive X-ray analysis technique or an electron energy loss spectroscopy technique to the region of interest to determine the number and location of the one or more boundaries.

12. The method of claim 1 , wherein the one or more filters are automatically selected and applied based on image metadata, the image metadata including at least data type, resolution, or pixel size.

13. performing measurements on the region of interest based on the identified boundary; The method of claim 1 , further comprising automatically performing a geometric analysis of the different sections bounded by the one or more boundaries.

14. 1. A non-transitory computer readable medium (CRM) comprising code that, when executed on one or more processors, causes the one or more processors to: extracting a region of interest from the image, the region of interest including one or more boundaries between different sections of the region of interest; enhancing at least the extracted region of interest based on one or more filters; generating a multi-scale data set of the region of interest based on the enhanced region of interest, generating a plurality of image resolution levels of the enhanced region of interest using a plurality of scale spaces selected from a Gaussian scale space, a geometric scale space, a nonlinear scale space, and an adaptive scale space; initializing a model of the region of interest, the initialized model determining at least a first boundary and a second boundary of the region of interest; optimizing a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, the optimized plurality of active contours identifying the one or more boundaries within the region of interest; and A non-transitory computer-readable medium for causing measurements to be performed in the region of interest based on the identified boundary.

15. The code, which, when executed, causes the one or more processors to optimize a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, when executed, causes the one or more processors to: initializing a first plurality of active contours within the first boundary and second boundary of the initialized model, the first plurality of active contours having more active contours than boundaries within the region of interest; and 15. The computer-readable medium of claim 14, further comprising code for causing the first plurality of active contours to be optimized to the plurality of active contours to enable identifying the one or more boundaries within the region of interest.

16. Code that, when executed, causes the one or more processors to optimize a plurality of active contours within the enhanced region of interest based on the model of the region of interest and further based on the multi-scale dataset, when executed, causes the one or more processors to: The computer-readable medium of claim 14 , further comprising code for optimizing the plurality of active contours within the enhanced region of interest for each image resolution level in each scale space of the plurality of scale spaces.

17. Code that, when executed, causes the one or more processors to initialize a model of the region of interest, the initialized model determining at least a first boundary and a second boundary of the region of interest, the code, when executed, causing the one or more processors to:

15. The computer-readable medium of claim 14, further comprising code to execute: initializing the model of the region of interest based on one or more image maps selected from a binary label map, an interactive map, a distance map, a CAD map, a statistical model from data, a die cast, a random distribution of geometric shapes, or a geometric model.

18. The computer-readable medium of claim 14 , wherein the initialized model of the region of interest is based on the original image or the enhanced region of interest.

19. The code, which when executed causes the one or more processors to enhance at least the extracted region of interest based on one or more filters, may include, when executed, causing the one or more processors to: improving the contrast of at least the region of interest in the image; and The computer readable medium of claim 14 , further comprising code to cause the computer to perform: improving a signal-to-noise ratio of at least the region of interest in the image.

20. The code that, when executed, causes the one or more processors to improve the contrast and the signal-to-noise ratio may include causing the one or more processors, when executed, to:

20. The computer-readable medium of claim 19, further comprising code to automatically select and apply the one or more filters selected from histogram manipulation, linear and non-linear contrast enhancement, locality-based data normalization, low-frequency data variance, gamma correction, log correction, or luminance correction.

21. The code, which when executed causes the one or more processors to enhance at least the extracted region of interest based on one or more filters, may include, when executed, causing the one or more processors to: improving the definition of the region of interest; and The computer readable medium of claim 14 , further comprising code to cause the computer to differentiate and detect the one or more boundaries of the region of interest.

22. The code, which when executed causes the one or more processors to improve definition of the region of interest and to distinguish and detect the one or more boundaries within the region of interest, may include code, which when executed causes the one or more processors to:

22. The computer-readable medium of claim 21, further comprising code for automatically selecting and applying one or more filters selected from reactive-diffusion filtering, adaptive isotropic and anisotropic diffusion filtering, median filtering, a Mumford-Shah model based nonlinear diffusion filtering, background suppression and edge / boundary extraction, and coherence-enhancing filtering at object boundaries.

23. The code, which when executed causes the one or more processors to improve definition of the region of interest and to distinguish and detect the one or more boundaries within the region of interest, may include code, which when executed causes the one or more processors to:

22. The computer-readable medium of claim 21, further comprising code to automatically select and apply one or more amplitude or texture-based filters selected from Gabor, Haralick, Laws, LCP, or LBP.

24. The code, which when executed causes the one or more processors to improve definition of the region of interest and to distinguish and detect the one or more boundaries within the region of interest, may include code, which when executed causes the one or more processors to:

22. The computer readable medium of claim 21, further comprising code to cause execution of applying an analysis technique selected from either an energy dispersive x-ray analysis technique or an electron energy loss spectroscopy technique to the region of interest to determine the number and location of the one or more boundaries.

25. 15. The computer-readable medium of claim 14, wherein the one or more filters are automatically selected and applied based on image metadata, the image metadata including at least data type, resolution, and pixel size.

26. The code, which when executed causes the one or more processors to perform measurements in the region of interest based on the identified boundary, may include causing the one or more processors, when executed, to: The computer readable medium of claim 14 , further comprising code to cause the computer to automatically perform a geometric analysis of the various sections bounded by the one or more boundaries.

Citation Information

Patent Citations

  • Automatic method and system for segmenting medical images

    JP1997508814A

  • Ultrasonic diagnostic apparatus and image processor

    JP2002224116A

  • Program and image processing method for suppressing grainy noise, and processing module for suppressing granularity to implement this method

    JP2006302023A

  • Pattern measurement apparatus, pattern measurement method and pattern measurement program

    JP2013242216A

  • Multiple image metrology

    JP2014182123A