Analysis and processing of SPM data
Introduction
⚫Gwyddion is a free software developed by two
researchers from the Czech Metrology
Institute (http://www.cmi.cz), dedicated to the
analysis and the processing of SPM data
⚫Website : http://gwyddion.net
⚫Main developers:
‒ David Nečas (Yeti)
‒ Petr Klapetek
⚫Current stable version (April 2012) : 2.27
⚫Available languages: Czech, English, French,
German, Italian, Russian, Spanish
Introduction
⚫Gwyddion is available for the following
operating systems:
‒ Linux
‒ Windows
‒ Mac OS X
‒ FreeBSD
⚫The latest beta binaries are updated daily for
Windows and for Ubuntu-based distributions
via a PPA: ppa:gwyddion-spm/gwyddion-svn
⚫Sources are also updated daily
Development
⚫Developers are always ready and open to add
new features :
‒ New processing module
‒ Import of unsupported formats (if you provide
enough documentation and example files)
‒ You should suscribe to the user list for that:
➤ https://lists.sourceforge.net/lists/listinfo/gwyddion-users
⚫Of course, you can also participate by creating
new processing or import modules
File formats
⚫ One of the main goals of Gwyddion is to allow the import
of as much formats as possible
‒ More than 90 file formats are currently supported
‒ Unsupported text and binary files can be manually
imported
⚫ Several exported formats are available
‒ Gwyddion native: saves all channels, curves, spectra
‒ Gwyddion simple field : single-channel format
‒ ISO 28600:2011
‒ Some SPM formats
‒ Usual image formats : BMP, PNG, JPEG...
‒ ASCII text file
Interface
⚫Gwyddion is very intuitive and simple
to use
⚫The main window comprises:
‒ Menus to access all functions
‒ Display buttons (zoom, 3D view)
‒ Basic processing functions (levelling,
artifact correction...)
‒ Graph fitting functions
‒ Data analysis tools
Data display
⚫Gwyddion can display
data using various
color gradients
‒ Right click on the scale
will display the
gradients list
⚫The available
channels in a given file
can be managed with
the data browser
3D display
⚫3 display modes are
avaible:
‒ Gradient: uses the
same gradients as in
the 2D view
‒ Lighting: uses a more
or less diffusing
texture
‒ Overlay: uses a
gradient or an image
over a texture
Color scale
⚫Several color ranges
are available:
‒ Full range
‒ Partial range,
manually defined
‒ Automatic range with
outliers exclusion
‒ Non-linear range
Basic operations: set minimum to zero
⚫Modifies the
height range so
that the
minimum value
equals zero
Basic operations: scale change
⚫Allows to resize an
image, using various
interpolation types
Basic operations: rotation
⚫The image can
be rotated using
an arbitrary angle
Basic operations: unrotate
⚫The image
orientation can
be corrected
taking into
account the
symmetries
present in the
data
Basic operations: tilt removal
⚫Tilt can be
removed in two
ways:
‒ Subtracting
the average
plane
‒ Using facet
(plane zone)
analysis
Basic operations: step correction
⚫Median line
correction is
directly avaible
⚫Other methods
are available in
the Data
Process →
Correct Data
menu
Basic operations: artifact correction
⚫Linear artifacts
can be easily
removed
⚫One can also
mark them using
Correct Data →
Mark scars
Basic operations: grain marking
⚫Local defects
(grains) can be
marked based
on:
‒ Relative height
‒ Curvature
‒ Slope
Basic operations: watershed marking
⚫Watershed allows
marking of grains
or other areas on
more complex
surfaces
Basic operations: grain removal
⚫Inverse function of
grain marking
⚫One can remove
marked areas
based on relative
height or area
Basic operations: grain distributions
⚫Provides
statistical data of
the marked areas:
‒ Height
‒ Surface
‒ Volume
‒ ...
Basic operations: shadow
⚫Creates a
shadow effect
on the data
Basic operations: background removal
⚫Background
can be
removed
based on a
polynomial
⚫This feature
allows an easy
removal of tilt
and curvature
of the data
Basic operations: data removal
⚫Interpolates data
under the mask
⚫Useful to remove
hot spots or
artifacts present
on an image
Tools: height and zero setting
⚫Simple tool that
displays the height
at a given point on
the image
⚫The « Set Zero »
button allows to
define the zero level
of the image
Tools: distances
⚫Displays the
distance and height
difference between
two points
Tools: profiles
⚫One can display as
much profiles as
desired
⚫Shift key allows to
orient the lines
every 15°
⚫The « Apply »
button exports the
profiles to a new
window
Tools: point spectroscopy
⚫This tools displays
the spectra present
in the data
⚫The position of
each spectrum is
given on the data
window
Tools: statistics
⚫Statistical data
can be computed
on all or a part of
the data
⚫Two buttons allow
to copy and save
the data
Tools: distributions
⚫Various types of
distributions can
be computed:
‒ Height distribution
‒ Auto-correlation
‒ PSD
‒ ...
Tools: row/column statistics
⚫Computes basic
data for each line
or column:
‒ Minimum
‒ Maximum
‒ Mean
‒ RMS
‒ ...
Tools: roughness
⚫Provides roughness
data according ISO
4287 standard
⚫The analysis is
done along a linear
selection
⚫The cut-off
parameter adjusts
the separation
between waviness
and roughness
Tools: 3-point levelling
⚫This tool allows to
define the points to
put at the same
level
⚫An area can be
defined to get rid
of the noise
Tools: path levelling
⚫This tool is
similar to the line
correction, but
here one can
define the zones
to correct using
linear selections
Tools: polynomial levelling
⚫Another method
to correct the
steps between
lines, using a
polynomial with
an adjustable
order
Tools: crop
⚫Extracts a part of
an image
Tools: mask editor
⚫The mask can have
different goals:
‒ Mark specific details
(grains, facets)
‒ Mark defects (scan
artifacts, hot pixels)
‒ Mark the « no data »
points used by some
file formats
Tools: grain measuring
⚫Displays grain
characteristics
⚫Just select the
desired marked
area to get its
position, surface,
volume...
Tools: grain removal
⚫This tool removes
the mask and/or the
underlying data
Tools: defect removal
⚫Local correction of
the data using
various interpolation
algorithms
Tools: filtering
⚫This tool provides
some classical
filters:
‒ Gaussian
‒ Median
‒…
⚫The filter can be
applied on a
selected area
Tools: selections
⚫This tool displays the
selections (points,
lines, rectangular
areas) used by the
other tools
⚫The « Distribute »
button applies the
selections to the
other channels or
files
Curve fitting: step and edge
⚫The critical
dimension tool can
compute the width
and/or the height of
a step or an edge
profile
Curve fitting: functions
⚫Profiles can be
fitted using various
functions:
‒ Gaussian
‒ Lorentzian
‒ Exponential
‒ Polynomial
‒ ...
Other features: FFT filtering
⚫Correct Data → 2D FFT
Filtering
⚫This tool displays the FT and
the result of the filtering
Other features: presentations
⚫A presentation is a
layer applied over the
data, giving a better
rendering of some
details in the image:
‒ Edge detection
‒ Logarithmic scale
‒ ...
Other features: surface synthesis
⚫Warning: this set of features can be fatal to
your productivity...
⚫Different synthesis types are available:
‒ Noise
‒ Linear noise
‒ Pattern: ridges, steps, holes
‒ Objects: spheres, pyramids, gaussians...
‒ Particles
‒ Spectral: PSD-based random surface
⚫Various options are available for each type
Other features: surface synthesis
⚫Objects
‒ One can modify the
aspect ratio and the
orientation of the
objects
⚫Spectral
‒ The power multiplier
generates a fractal
surface
And much more...
⚫Gwyddion has a lot of features, just try them !