Menu

offers several functions for the measurement of specific shapes or features in topographical images.→ →

The global surface curvature parameters are calculated by fitting a quadratic polynomial and finding its main axes. Positive signs of the curvature radii correspond to a concave (cup-like) surface, whereas negative signs to convex (cap-like) surface, mixed signs mean a saddle-like surface.

Beside the parameter table, it is possible to set the line selection on the data to the fitted quadratic surface axes and/or directly read profiles along them. The zero of the abscissa is placed to the intersection of the axes.

Similarly to the background subtraction functions, if a mask is present on the data the module offers to include or exclude the data under mask.

→ →

Form removal as well as measurement of geometrical parameters can be performed by fitting geometrical shapes on the data using the least-squares method. The Fit Shape module is essentially the same for images and XYZ data and it is described in detail in the XYZ data processing part. Only the differences are mentioned here.

Standard masking is supported for images. That is if a mask is present the dialogue offers to use the data under the mask, exclude the data under mask or ignore the mask and use the entire data. Since the excluded pixels can be outliers or image parts not conforming to the chosen shape it it possible to avoid them also in the difference image by disabling Calculate differences for excluded pixels.

→ →

Facet analysis enables to interactively study orientations of facets occurring in the data and mark facets of specific orientations on the image. The top left view displays data with preview of marked facets. The smaller bottom left view, called facet view below, displays the two-dimensional slope distribution.

The centre of facet view always correspond to zero inclination (horizontal facets), slope in x-direction increases towards left and right border and slope in y-direction increases towards top and bottom borders. The exact coordinate system is a bit complex (an area preserving transformation between spherical angles and the planar facet view is used) and it adapts to the range of slopes in the particular data displayed. The range of inclinations is displayed below the facet view.

Points selected on the facet view, i.e. directions in space, are listed in the top right corner as both angles and unit vector components. You can also choose the direction of the selected point by clicking on the image view. The direction is then set to the local facet at that position in the image.

Standard controls allowing manipulation with the entire list or the selected point are below the list. Button Mean normal below.

tries to improve the position of selected point to a local maximum in the facet view. Button creates a mask on the image corresponding to the selected direction and a range of close directions. The directions are simultaneously shown on the facet view. The mean normal of the selected region is displayed asThe bottom right part contains tabs with settings and some advanced operations.

- Facet
Facet plane size controls the size (radius) of plane locally fitted in each point to determine the local inclination. The special value 0 stands for no plane fitting, the local inclination is determined from symmetric x and y derivatives in each point. The choice of neighbourhood size is crucial for meaningful results: it must be smaller than the features one is interested in to avoid their smoothing, on the other hand it has to be large enough to suppress noise present in the image.

Tolerance determines the range of directions for marking. It also determines the search range for refining the the selected direction.

- Rotation
The set of selected directions can be rotated in space using either the shader control or by changing individual angles. The rotation angle around the vertical axis is denoted α and it is applied first. The directions are then rotated by angle ϑ in the direction given by azimuth φ .

The global rotation cannot be mixed with movement of individual points on the facet view. Once you start changing points there, the global rotation is reset and the current positions, whatever they are, become the initial positions. During rotation you can reset it to the starting state using the

button.- Lattice
A set of directions corresponding to low-number Miller indices can be created by choosing the lattice type, its parameters and pressing button

. The absolute lengths of the cell edges are not important for the directions, only their ratios are. Therefore, they can be given in arbitrary units.Together with rotation, this function can be useful for matching the image facets to crystallographic planes.

→ →

Facet measurement allows to interactively select and mark several facets of specific orientations on the image, measure their positions and store the results in a table. The top left view displays data with preview of marked facets. The smaller bottom left view, called facet view below, displays the two-dimensional slope distribution.

The centre of facet view always correspond to zero inclination (horizontal facets), slope in x-direction increases towards left and right border and slope in y-direction increases towards top and bottom borders. The exact coordinate system is a bit complex (an area preserving transformation between spherical angles and the planar facet view is used) and it adapts to the range of slopes in the particular data displayed. The range of inclinations is displayed below the facet view.

Facet plane size controls the size (radius) of plane locally fitted in each point to determine the local inclination. The special value 0 stands for no plane fitting, the local inclination is determined from symmetric x and y derivatives in each point. The choice of neighbourhood size is crucial for meaningful results: it must be smaller than the features one is interested in to avoid their smoothing, on the other hand it has to be large enough to suppress noise present in the image.

Tolerance determines the range of directions for marking. It also determines the search range for refining the the selected direction.

The currently selected point in facet view (facet orientation) is displayed as Selected ϑ and φ . Button Refine tries to improve the position of selected point to a local maximum in the facet view. Button creates a mask on the image corresponding to the selected direction and a range of close directions. If Instant facet marking is enabled facets are marked immediately as the selected point changes (the button is then disabled).

Once you are satisfied with the facet selection press

to add a measurement to the table below. Each row of the table contains- Point index n.
- Number of pixels marked and used for the measurement.
- Tolerance t used in the measurement.
- Mean polar angle ϑ of the facet normal.
- Mean azimuthal angle φ of the facet normal.
- Facet normal as a unit vector (x, y, z)
- Standard deviation of facet normals within the marked set δ.

The mean normals are calculated by simple averaging of the unit normal vectors n, which is appropriate when their spread is relatively small. The standard deviation is calculated in radians as follows

where bar denotes the mean normal.

→ →

Parameters of regular two-dimensional structures can be obtained by analysing data transformed into a form that captures their regularity. The ACF and PSDF are particularly well-suited for this because they exhibit peaks corresponding to the Bravais lattice vectors for the periodic pattern.

Peaks in the two-dimensional ACF correspond to lattice vectors in the
direct space (and their integer multiples and linear combinations).
Peaks in the two-dimensional PSDF correspond to lattice vectors of the
*reciprocal* lattice. The matrices formed by the
lattice vectors in direct and frequency space are transposed inverses
of each other. With a suitable transformation either can be used to
measure the lattice.

The Gwyddion function

can utilise either ACF or PSDF for the measurement. Since regular lattices with large periods correspond to peaks in the ACF image that are far apart but peaks in the PSDF that are close, it is preferable to use the ACF in this case to improve the resolution. Conversely, the PSDF image is more suitable if the lattice periods are small. In the dialogue you can switch freely between direct and frequency space representations and the selected lattice is transformed as necessary.If scan lines contain lots of high-frequency noise the horizontal ACF (middle row in the ACF image) can be also quite noisy. In such case it is better to interpolate it from the surrounding rows by enabling the option Interpolate horizontal ACF.

The button Affine Distortion (this corresponds to choosing Show lattice as Lattice), or only the two vectors can be shown and adjusted (Vectors). Either way, when you choose approximately the peak positions, pressing the button adjusts the positions of the vectors to improve the match with the peaks. Button can be used to restore the vectors to a sane initial state.

attempts to find automatically the lattice for the image. When it does not select the vectors as you would like you can adjust the vectors in the image manually. The selection can be done either in a manner similar toThe lattice vectors are always displayed as direct-space vectors, with components, total lengths and directions. The angle shown as φ is the angle between the two vectors.

The direct lattice vectors a_{1} and
a_{2} are related to the reciprocal lattice
vectors b_{1} and b_{2}
by the following relation:

where R denotes a 90 degree rotation
matrix. The inverse transform is similar. Therefore, the lattice vectors
must always be considered as a pair. Changing for instance
b_{1} in the PSDF image changes both
a_{1} and a_{2}.

Sometimes it is useful to measure a single lattice vector, e.g. in images
of one-dimensional periodic structures. The second vector then gets in
the way. For this there exists a single-vector mode, enabled by
Measure single vector. It hides the
second vectors and ensures a_{1} are
b_{1} are parallel and with mutually reciprocal
lengths, as expected.

→ →

Terrace measurement can be used either to measure steps between plateaus in terrace or amphitheatre-like structures, or calibration by measuring such structures with precisely known step heights – in particular atomic steps on silicon [1].

The image processing has several parts:

- edge detection using the Gaussian step filter,
- segmentation into terraces,
- fitting the image with polynomial background, allowing each terrace to be offset vertically differently,
- estimation of step height and integer levels of individual terraces, and
- fitting the image again, assuming given integer levels.

Some of them are optional. Furthermore, filtering and segmentation is interactive, whereas fitting is only run when button Display menu. At the beginning, the most useful image is usually Marked terraces which shows individual recognised terraces in different colours.

is pressed. Intermediate results can be visualised by choosing the image to display using theParameter Step detection kernel of edge detection is the same as for the Gaussian step filter. The following parameters control segmentation:

- Step detection threshold
Threshold for the edge-detection (as a percentage of maximum value of the filtered image). Too small threshold leads to fragmented terraces as too much of the image is considered edges. Too high threshold leads to merging of terraces which are actually at different heights – this is often best checked using the Marked terraces image.

- Step broadening
Regions recognised as edges are widened by given number of pixels. This helps with separation of terraces which should stay separate. In addition, it excludes regions too close to edges from polynomial fitting.

- Minimum terrace area
After segmentation, only sufficiently large terraces are kept. This option specifies the minimum terrace area, given as a fraction of the entire image area.

Segmentation can be augmented – or replaced – by a user-supplied mask. If the image has a mask, the standard masking options are offered. Here Exclude masked region means excluding it from the detected terraces. This allowing prevention of unwanted terrace merging – for instance by drawing manually small pieces of the boundaries using Mask Editor tool.

If option Do not segment, use only mask is enabled, no filtering is done and the mask is directly used as marked terraces (or their edges, depending on the masking mode). Filtering of terraces by area is still applied.

The total degree of the two-dimensional polynomial to fit is determined by parameter Polynomial degree. The polynomial is constructed in the same manner as in Polynomial levelling with limited total degree, except for the different base heights of each terrace.

The subsequent processing depends on whether Independents heights is enabled. If terrace heights are independent, each detected terrace is allowed to have arbitrary height offset. The module does not attempt to fit the data with one common step height. This is generally not useful with mono atomic steps which should be all of the same height, but can be useful for other types of terrace-like structures. The terrace list still shows estimated integer levels – which may or may not be meaningful in this case.

When heights are not independent, the module estimates the common step height and assigns an integer level to each terrace – this means the height of any terrace differs from any other by an integer multiple of the step height. Using this initial estimate, the polynomial fitting is performed again, leading to the final value of the step height.

The lower part of tab Parameters shows an overview of the fitting results:

- Fitted step height, usually the main result, shown with error obtained from the least-squares method,
- Mean square difference between the data and fit (including only terraces, not edges),
- Terrace discrepancy, the mean square difference between actual average terrace height and its height as a multiple of step height, and
- Number of terraces found, marked and used for the fitting.

Tab Terraces contains a table detailing properties of individual terraces. Each row corresponds to one terrace. The columns are:

- n, terrace index (and colour in Marked terraces image),
- h, average height – actual, not multiple of step height,
- k, integer level (multiple of step height),
- A
_{px}, area in pixels, - Δ, discrepancy, i.e. difference between average height and the assigned multiple of step height, and
- r, residuum, mean square difference between fit and data.

For relatively noisy data, discrepancies can be clearer indicators of correct fit than fit residua.

The resulting step height varies slightly with algorithm parameters. This dependence can be investigated using Survey by performing an automated scan over a range of polynomial degrees and/or step broadenings. All parameters not scanned in the survey are kept at values selected in the Parameters tab.

The survey is executed by pressing Execute and can take a while to finish. When it finishes a file dialogue will appear, allowing to choose the file where the resulting table should be saved.

[1] J. Garnæs, D. Nečas, L. Nielsen, M. Madsen, A. Torras-Rosell, G. Zeng, P. Klapetek, A. Yacoot, Algorithms for using silicon steps for scanning probe microscope evaluation. Metrologia 57 (2020) 064002, doi:10.1088/1681-7575/ab9ad3