SEM Automation for Small Script Development and Evaluation

SEM Automation Workflows

Scripts are small, programmed software tools that can allow a scanning electron microscope (SEM) operator to work in a more efficient manner. Previous articles have covered the areas of image acquisition and analysis with the Phenom Programming Interface (PPI), and this article will explore how the physical properties gathered in those previously outlined stages can be used in the evaluation step.

In general, SEM workflows always entail identical stages (Figure 1). The four stages that can be subjected to automation using PPI are:

  • Image acquisition
  • Analysis
  • Evaluation
  • Reporting

In the image acquisition stage, images are automatically created using PPI and the Phenom SEM. In the analysis step, the physical properties are mined from the image. In the evaluation stage, the images are assessed based on these physical properties. The last automated step is to communicate the results to the operator.

Scanning Electron Microscopy workflow

Figure 1: Scanning Electron Microscopy workflow

Image Evaluation

In the evaluation step, the physical quantities are analyzed and assigned to categories. This can be achieved by:

  • Counting particles based on their morphology
  • Determining the coverage on a sample
  • Base actions on physical properties of the sample

Within this article, action will be based on the physical properties in an image to assess where the center of the copper aluminum stub is located.

To achieve this, it will be presumed that the copper insert is perfectly round. The script will begin at a location pstart located in the copper part of the stub. From this point, it will travel in both positive and negative x and y directions to locate a set of four edges points of the copper insert. These points will be (Pleft, Pright, Ptop and Pbottom). As a result of the circular symmetry of the stub, the mathematical average of the x positions (Pleft, Pright) of  and the y-position of (Ptop, Pbottom) will yield the center Pcenter 08 of the stub. Figure 2 illustrates all points.

Definitions of the locations on the stub.

Figure 2: Definitions of the locations on the stub.

To locate the edges, the stage is relocated. In each stage, the image is segmented. When less than half of the image is made up of the copper contingent, the edge is located. The precise position of the edge point is then set as the center of mass of the region that is neither copper nor aluminum.

Code snippet 1 demonstrates a case in point of how this can be achieved. To begin with, the stage is returned to its initial starting point with the Phenom.MoveTo method. This position is recovered back from the Phenom using the phenom.GetStageModeAndPosition command. Following this, the step size is determined. A step of 250 µm is selected, which equals half the image field width. Four vectors are defined in all directions to locate the four edges. These vectors are pooled into an iterable list, to be able to repeat over them in the for loop.

Within the for loop, the stage is initially moved to a preliminary guess of the position of the center. Next, a while loop is begun, in which the stage travels to one direction with the step size. At each step the image is segmented and checks are performed to determine if the area of copper is less than 50%. If the copper area is smaller than 50%, the edge has been located and the center location of the edge is defined using ndimage.measurements.center_of_mass method.

Definitions of the locations on the stub

Figure 3: Definitions of the locations on the stub

Pixels are used to express the subsequent center of mass, and are converted to metric units using the metadata that can be found in the Phenom acquisition objects. The data detailing centers of masses is stored in a list, and from this list, the Pleft, Pright, Ptop and Pbottom locations can be defined. From the set of locations, it is simple to calculate the arithmetic averages, and the stage is relocated to its new, better center location.

Code to find and to move to the center of the stub

Code snippet 1: Code to find and to move to the center of the stub

Figure 4 shows the initial guess of the location of the center on the left-hand side and the improved center location on the right-hand side. Repeating this process a number of times could improve the center location even further, as symmetry will improve towards the center of the stub.

Definitions of the locations on the stub

Figure 4: Definitions of the locations on the stub

In code snippet 2, the complete code is illustrated, including code from previously articles referred to in this piece.

Complete code

Complete code

Complete code

Code snippet 2: Complete code

This information has been sourced, reviewed and adapted from materials provided by Phenom-World BV.

For more information on this source, please visit Phenom-World BV.

Ask A Question

Do you have a question you'd like to ask regarding this article?

Leave your feedback