add keywords for all nodes

This commit is contained in:
2026-04-04 14:58:56 -07:00
parent 69f1d1bebd
commit a0d3b22f18
195 changed files with 437 additions and 198 deletions

View File

@@ -22,8 +22,8 @@ Interactive 3D surface view of a DATA_FIELD. Use the mesh input for geometry and
| Name | Type | Default | Description |
|------|------|---------|-------------|
| colormap | dropdown | auto | Colormap preset applied to the surface; hidden when colormap_map is connected |
| z_scale | FLOAT | 1.0 | Height exaggeration factor (range 0.110.0) |
| resolution | INT | 128 | Downsampling resolution for mesh generation (32512) |
| z_scale | FLOAT | 1.0 | Height exaggeration factor (range 0.1-10.0) |
| resolution | INT | 128 | Downsampling resolution for mesh generation (32-512) |
| make_solid | BOOLEAN | False | When enabled adds a flat base and side walls to close the mesh |
## Notes

View File

@@ -22,5 +22,5 @@ Compute the two-dimensional autocorrelation function with Gwyddion-style mean or
## Notes
- Output is not normalized to [1, 1]; peak value equals the field variance.
- Output is not normalized to [-1, 1]; peak value equals the field variance.
- Plane levelling assumes a linear trend; strongly curved surfaces may not detrend correctly.

View File

@@ -20,7 +20,7 @@ Measure the included angle between two draggable line segments over a DATA_FIELD
| Name | Type | Default | Description |
|------|------|---------|-------------|
| color | STRING (color picker) | #ff9800 | Overlay color for the angle arms and arc |
| stroke_width | FLOAT | 1.35 | Line thickness in display pixels (0.356.0) |
| stroke_width | FLOAT | 1.35 | Line thickness in display pixels (0.35-6.0) |
## Notes

View File

@@ -23,7 +23,7 @@ Attach optional publication-style annotations (scale bar, color-map legend) to a
| colormap | dropdown | auto | Colormap for the legend; hidden when colormap_map is connected |
| show_scale_bar | BOOLEAN | True | Render a physical scale bar |
| show_color_map | BOOLEAN | True | Render a color-map legend with min/mid/max values |
| text_size | FLOAT | 14.0 | Font size in points for annotation labels (696) |
| text_size | FLOAT | 14.0 | Font size in points for annotation labels (6-96) |
## Notes

View File

@@ -19,7 +19,7 @@ Blind tip estimation from a measured SPM image using the Villarrubia algorithm.
| Name | Type | Default | Description |
|------|------|---------|-------------|
| n_pixels | INT | 33 | Tip grid size in pixels (odd values only, 3129) |
| n_pixels | INT | 33 | Tip grid size in pixels (odd values only, 3-129) |
| threshold | FLOAT | 0.0 | Noise floor in metres; increase if the estimated tip is unrealistically sharp |
| method | dropdown | partial | partial: uses local maxima only (faster, needs sharp isolated features); full: uses all points above morphological opening (slower, more robust) |
| use_edges | BOOLEAN | False | When enabled, also uses image edge pixels as refinement candidates |

View File

@@ -18,8 +18,8 @@ Adjust how a DATA_FIELD maps into its colormap without changing the underlying d
| Name | Type | Default | Description |
|------|------|---------|-------------|
| offset | FLOAT | 0.0 | Shift the colormap center in normalized units (1 to 1) |
| scale | FLOAT | 1.0 | Zoom the colormap range (0.054.0); values below 1 stretch contrast |
| offset | FLOAT | 0.0 | Shift the colormap center in normalized units (-1 to 1) |
| scale | FLOAT | 1.0 | Zoom the colormap range (0.05-4.0); values below 1 stretch contrast |
| auto | BUTTON | — | Reset offset to 0 and scale to 1 (full data range) |
## Notes

View File

@@ -19,8 +19,8 @@ Compute 2D cross-correlation between two fields. The correlation peak indicates
| Name | Type | Default | Description |
|------|------|---------|-------------|
| mode | dropdown | same | Output size: full (Na+Nb1), same (same as field_a), or valid (overlapping region only) |
| normalize | BOOLEAN | True | Normalize the result to [1, 1] by dividing by the product of RMS values |
| mode | dropdown | same | Output size: full (Na+Nb-1), same (same as field_a), or valid (overlapping region only) |
| normalize | BOOLEAN | True | Normalize the result to [-1, 1] by dividing by the product of RMS values |
## Notes

View File

@@ -19,13 +19,13 @@ Restore an image via regularised deconvolution. Assumes the image was blurred by
| Name | Type | Default | Description |
|------|------|---------|-------------|
| method | dropdown | wiener | Deconvolution method: wiener or richardson_lucy |
| sigma | FLOAT | 2.0 | Gaussian PSF sigma in pixels (0.150.0) |
| regularisation | FLOAT | 0.01 | Regularisation parameter for Wiener filter (1e-61.0) |
| iterations | INT | 10 | Number of iterations (Richardson-Lucy only, 1200) |
| sigma | FLOAT | 2.0 | Gaussian PSF sigma in pixels (0.1-50.0) |
| regularisation | FLOAT | 0.01 | Regularisation parameter for Wiener filter (1e-6-1.0) |
| iterations | INT | 10 | Number of iterations (Richardson-Lucy only, 1-200) |
## Notes
- **Wiener**: Fast, single-pass frequency-domain filter. The regularisation parameter controls the noise/sharpness tradeoff — smaller values sharpen more but amplify noise.
- **Richardson-Lucy**: Iterative method that preserves positivity. More iterations = sharper result but risk of ringing artifacts.
- The PSF sigma should match the actual blur in the image. If unknown, start with sigma=13 and adjust.
- The PSF sigma should match the actual blur in the image. If unknown, start with sigma=1-3 and adjust.
- For tip-shape deconvolution (non-Gaussian PSF), use Tip Deconvolution instead.

View File

@@ -19,7 +19,7 @@ Transform pixel values so their distribution matches a target shape (uniform, Ga
| Name | Type | Default | Description |
|------|------|---------|-------------|
| distribution | dropdown | uniform | Target distribution shape: uniform, gaussian, or levels |
| n_levels | INT | 4 | Number of discrete output levels (21000); visible only for levels mode |
| n_levels | INT | 4 | Number of discrete output levels (2-1000); visible only for levels mode |
| processing | dropdown | field | Processing scope: field (entire array at once) or rows (line-by-line) |
## Notes

View File

@@ -18,7 +18,7 @@ Paint a binary mask directly over an image preview. Pen size controls newly draw
| Name | Type | Default | Description |
|------|------|---------|-------------|
| pen_size | INT | 12 | Brush diameter in pixels for newly drawn strokes (1128) |
| pen_size | INT | 12 | Brush diameter in pixels for newly drawn strokes (1-128) |
| invert | BOOLEAN | False | When enabled, swaps painted and unpainted regions |
| clear_mask | BUTTON | — | Clears all painted strokes |

View File

@@ -19,7 +19,7 @@ Detect edges using Sobel, Prewitt, Laplacian, or Laplacian-of-Gaussian (LoG) ope
| Name | Type | Default | Description |
|------|------|---------|-------------|
| method | dropdown | sobel | Edge detection operator: sobel, prewitt, laplacian, or log (Laplacian of Gaussian) |
| sigma | FLOAT | 1.0 | Gaussian smoothing sigma used only for the LoG operator (0.110.0) |
| sigma | FLOAT | 1.0 | Gaussian smoothing sigma used only for the LoG operator (0.1-10.0) |
## Notes

View File

@@ -1,6 +1,6 @@
# Entropy
Compute the Shannon entropy of the height or slope distribution. H = Σ p·ln(p). Equivalent to Gwyddion entropy.c.
Compute the Shannon entropy of the height or slope distribution. H = -Σ p·ln(p). Equivalent to Gwyddion entropy.c.
## Inputs
@@ -20,7 +20,7 @@ Compute the Shannon entropy of the height or slope distribution. H = −Σ p·ln
| Name | Type | Default | Description |
|------|------|---------|-------------|
| mode | dropdown | height values | Compute entropy of height values or slope magnitude |
| n_bins | INT | 256 | Number of histogram bins for probability estimation (161024) |
| n_bins | INT | 256 | Number of histogram bins for probability estimation (16-1024) |
## Notes

View File

@@ -18,10 +18,10 @@ Add configurable borders around a DATA_FIELD using various padding methods. Usef
| Name | Type | Default | Description |
|------|------|---------|-------------|
| left | INT | 0 | Number of pixels to add on the left edge (01024) |
| right | INT | 0 | Number of pixels to add on the right edge (01024) |
| top | INT | 0 | Number of pixels to add on the top edge (01024) |
| bottom | INT | 0 | Number of pixels to add on the bottom edge (01024) |
| left | INT | 0 | Number of pixels to add on the left edge (0-1024) |
| right | INT | 0 | Number of pixels to add on the right edge (0-1024) |
| top | INT | 0 | Number of pixels to add on the top edge (0-1024) |
| bottom | INT | 0 | Number of pixels to add on the bottom edge (0-1024) |
| method | dropdown | mirror | Padding method: mean (fill with field mean), edge (replicate border pixels), mirror (reflect across edge), periodic (tile the field), or zero (fill with zeros) |
## Notes

View File

@@ -19,9 +19,9 @@ Frequency-domain filtering of a line profile or 2D data field using a Butterwort
| Name | Type | Default | Description |
|------|------|---------|-------------|
| filter_type | dropdown | lowpass | Filter mode: lowpass, highpass, bandpass, or notch (band-reject) |
| cutoff | FLOAT | 0.1 | Lower cutoff frequency as a fraction of Nyquist (0.0011.0) |
| cutoff_high | FLOAT | 0.4 | Upper cutoff for bandpass/notch modes (0.0011.0) |
| order | INT | 2 | Butterworth filter order; higher values give steeper roll-off (110) |
| cutoff | FLOAT | 0.1 | Lower cutoff frequency as a fraction of Nyquist (0.001-1.0) |
| cutoff_high | FLOAT | 0.4 | Upper cutoff for bandpass/notch modes (0.001-1.0) |
| order | INT | 2 | Butterworth filter order; higher values give steeper roll-off (1-10) |
## Notes

View File

@@ -18,12 +18,12 @@ Compute the facet orientation distribution of a surface. Outputs a 2D histogram
| Name | Type | Default | Description |
|------|------|---------|-------------|
| n_bins | INT | 180 | Number of azimuthal bins; theta bins = n_bins/4 (30720) |
| kernel_size | INT | 3 | Sobel gradient kernel size in pixels (39, odd) |
| n_bins | INT | 180 | Number of azimuthal bins; theta bins = n_bins/4 (30-720) |
| kernel_size | INT | 3 | Sobel gradient kernel size in pixels (3-9, odd) |
## Notes
- The output is a normalised probability density — it sums to 1.0.
- X-axis: azimuthal angle phi (0360°). Y-axis: inclination theta (0° = flat, max = steepest facet).
- X-axis: azimuthal angle phi (0-360°). Y-axis: inclination theta (0° = flat, max = steepest facet).
- A flat surface produces a single bright spot near theta=0. A surface with distinct facets shows multiple peaks.
- Larger kernel_size smooths the gradient estimate, reducing noise sensitivity.

View File

@@ -20,11 +20,11 @@ Detect edges or corners in a surface using Canny edge detection or Harris corner
| Name | Type | Default | Description |
|------|------|---------|-------------|
| method | dropdown | canny | Detection method: canny (edges) or harris (corners) |
| sigma | FLOAT | 1.0 | Gaussian smoothing sigma in pixels (0.120.0) |
| low_threshold | FLOAT | 0.1 | Canny low hysteresis threshold (01) |
| high_threshold | FLOAT | 0.2 | Canny high hysteresis threshold (01) |
| harris_k | FLOAT | 0.05 | Harris detector sensitivity parameter (0.010.5) |
| min_distance | INT | 5 | Minimum distance between detected corners in pixels (1100) |
| sigma | FLOAT | 1.0 | Gaussian smoothing sigma in pixels (0.1-20.0) |
| low_threshold | FLOAT | 0.1 | Canny low hysteresis threshold (0-1) |
| high_threshold | FLOAT | 0.2 | Canny high hysteresis threshold (0-1) |
| harris_k | FLOAT | 0.05 | Harris detector sensitivity parameter (0.01-0.5) |
| min_distance | INT | 5 | Minimum distance between detected corners in pixels (1-100) |
## Notes

View File

@@ -18,11 +18,11 @@ Level the flat base of a surface that has raised features (particles, grains). U
| Name | Type | Default | Description |
|------|------|---------|-------------|
| threshold_percentile | FLOAT | 30.0 | Height percentile below which pixels are considered base (580) |
| poly_degree | INT | 2 | Polynomial degree for base fit: 0 = constant, 1 = plane, 2 = quadratic (05) |
| threshold_percentile | FLOAT | 30.0 | Height percentile below which pixels are considered base (5-80) |
| poly_degree | INT | 2 | Polynomial degree for base fit: 0 = constant, 1 = plane, 2 = quadratic (0-5) |
## Notes
- Set the threshold percentile so that it includes most of the base but excludes the features. For sparse particles on a flat substrate, 2040% typically works well.
- poly_degree=1 is equivalent to plane leveling on the base only. Use 23 for curved substrates.
- Set the threshold percentile so that it includes most of the base but excludes the features. For sparse particles on a flat substrate, 20-40% typically works well.
- poly_degree=1 is equivalent to plane leveling on the base only. Use 2-3 for curved substrates.
- If the features dominate the surface (>50% coverage), this node may not give good results — consider Median Background instead.

View File

@@ -19,7 +19,7 @@ Fill masked regions using fractal interpolation. Matches the spectral characteri
| Name | Type | Default | Description |
|------|------|---------|-------------|
| iterations | INT | 200 | Number of boundary relaxation iterations (105000) |
| iterations | INT | 200 | Number of boundary relaxation iterations (10-5000) |
## Notes

View File

@@ -19,7 +19,7 @@ Separate a DATA_FIELD into low-frequency and high-frequency components using an
| Name | Type | Default | Description |
|------|------|---------|-------------|
| cutoff | FLOAT | 0.1 | Cutoff frequency as a fraction of Nyquist (0.0010.5) |
| cutoff | FLOAT | 0.1 | Cutoff frequency as a fraction of Nyquist (0.001-0.5) |
## Notes

View File

@@ -18,7 +18,7 @@ Apply a Gaussian blur to a DATA_FIELD. Equivalent to gwy_data_field_filter_gauss
| Name | Type | Default | Description |
|------|------|---------|-------------|
| sigma | FLOAT | 1.0 | Standard deviation of the Gaussian kernel in pixels (0.0150.0) |
| sigma | FLOAT | 1.0 | Standard deviation of the Gaussian kernel in pixels (0.01-50.0) |
## Notes

View File

@@ -19,7 +19,7 @@ Label connected grain regions in a binary mask and compute per-grain statistics:
| Name | Type | Default | Description |
|------|------|---------|-------------|
| min_size | INT | 10 | Minimum grain area in pixels; smaller connected regions are ignored (1100000) |
| min_size | INT | 10 | Minimum grain area in pixels; smaller connected regions are ignored (1-100000) |
## Notes

View File

@@ -22,7 +22,7 @@ Correlate grain properties between two fields using a shared grain mask. Reports
|------|------|---------|-------------|
| property_a | dropdown | mean_height | Property to compute from field_a: area, mean_height, max_height, or volume |
| property_b | dropdown | max_height | Property to compute from field_b: area, mean_height, max_height, or volume |
| min_size | INT | 10 | Minimum grain area in pixels; smaller grains are excluded (1100000) |
| min_size | INT | 10 | Minimum grain area in pixels; smaller grains are excluded (1-100000) |
## Notes

View File

@@ -20,8 +20,8 @@ Compute a histogram distribution of a grain property from a labeled mask. Suppor
| Name | Type | Default | Description |
|------|------|---------|-------------|
| property | dropdown | area | Grain property to plot: area, equiv_diameter, mean_height, max_height, volume, boundary_length |
| n_bins | INT | 30 | Number of histogram bins (5200) |
| min_size | INT | 10 | Minimum grain size in pixels to include (1100000) |
| n_bins | INT | 30 | Number of histogram bins (5-200) |
| min_size | INT | 10 | Minimum grain size in pixels to include (1-100000) |
## Notes

View File

@@ -19,7 +19,7 @@ Detect grain boundaries from a binary grain mask. Outputs a mask of pixels at gr
| Name | Type | Default | Description |
|------|------|---------|-------------|
| width | INT | 1 | Boundary thickness in pixels; values greater than 1 dilate the edge outward (110) |
| width | INT | 1 | Boundary thickness in pixels; values greater than 1 dilate the edge outward (1-10) |
## Notes

View File

@@ -1,6 +1,6 @@
# Grain Mark
Mark grains by thresholding height, slope magnitude, or curvature. Thresholds are relative (01) to the data range. Small regions below min_size pixels are removed. Equivalent to Gwyddion's grain_mark.c module.
Mark grains by thresholding height, slope magnitude, or curvature. Thresholds are relative (0-1) to the data range. Small regions below min_size pixels are removed. Equivalent to Gwyddion's grain_mark.c module.
## Inputs
@@ -19,9 +19,9 @@ Mark grains by thresholding height, slope magnitude, or curvature. Thresholds ar
| Name | Type | Default | Description |
|------|------|---------|-------------|
| criterion | dropdown | height | What to threshold: height, slope, or curvature |
| threshold_low | FLOAT | 0.3 | Lower bound of the normalized threshold range (01) |
| threshold_high | FLOAT | 1.0 | Upper bound of the normalized threshold range (01) |
| min_size | INT | 10 | Minimum grain size in pixels; smaller regions are removed (1100000) |
| threshold_low | FLOAT | 0.3 | Lower bound of the normalized threshold range (0-1) |
| threshold_high | FLOAT | 1.0 | Upper bound of the normalized threshold range (0-1) |
| min_size | INT | 10 | Minimum grain size in pixels; smaller regions are removed (1-100000) |
| inverted | BOOLEAN | False | Invert the mask to mark valleys instead of peaks |
## Notes

View File

@@ -19,7 +19,7 @@ Compute aggregate statistics for all grains in a mask: count, density, coverage
| Name | Type | Default | Description |
|------|------|---------|-------------|
| min_size | INT | 10 | Minimum grain size in pixels to include (1100000) |
| min_size | INT | 10 | Minimum grain size in pixels to include (1-100000) |
## Notes

View File

@@ -19,7 +19,7 @@ Compute the height distribution histogram (DH). Use log scale to reveal small pe
| Name | Type | Default | Description |
|------|------|---------|-------------|
| n_bins | INT | 256 | Number of histogram bins (101000) |
| n_bins | INT | 256 | Number of histogram bins (10-1000) |
| y_scale | dropdown | linear | Y-axis scale: linear or log |
## Notes

View File

@@ -20,8 +20,8 @@ Detect lines or circles in images using the Hough transform. Returns an accumula
| Name | Type | Default | Description |
|------|------|---------|-------------|
| mode | dropdown | lines | Detection mode: lines or circles |
| n_peaks | INT | 3 | Number of strongest features to report (150) |
| threshold | FLOAT | 1.0 | Minimum accumulator value relative to peak (0.110.0) |
| n_peaks | INT | 3 | Number of strongest features to report (1-50) |
| threshold | FLOAT | 1.0 | Minimum accumulator value relative to peak (0.1-10.0) |
| min_radius | INT | 10 | Minimum circle radius in pixels (circles mode only) |
| max_radius | INT | 30 | Maximum circle radius in pixels (circles mode only) |

View File

@@ -18,7 +18,7 @@ Edge-preserving smoothing using Kuwahara's minimum-variance quadrant method. Unl
| Name | Type | Default | Description |
|------|------|---------|-------------|
| iterations | INT | 1 | Number of times the 5×5 Kuwahara pass is applied (120) |
| iterations | INT | 1 | Number of times the 5×5 Kuwahara pass is applied (1-20) |
## Notes

View File

@@ -19,11 +19,11 @@ Fill masked (missing) regions by solving the Laplace equation with Dirichlet bou
| Name | Type | Default | Description |
|------|------|---------|-------------|
| iterations | INT | 500 | Number of Jacobi relaxation iterations; more iterations = smoother result (1010000) |
| iterations | INT | 500 | Number of Jacobi relaxation iterations; more iterations = smoother result (10-10000) |
## Notes
- Laplace interpolation produces the smoothest possible fill — it minimizes the integral of the squared gradient within the masked region.
- For small holes (<50 px diameter), 200500 iterations is usually sufficient. Larger holes may need 1000+.
- For small holes (<50 px diameter), 200-500 iterations is usually sufficient. Larger holes may need 1000+.
- Use a Draw Mask or Threshold Mask node to create the mask input.
- For surfaces with texture, consider Fractal Interpolation instead, which preserves surface roughness characteristics.

View File

@@ -20,14 +20,14 @@ Simulate lateral (friction) force signals from topography data, modeling how the
| Name | Type | Default | Description |
|------|------|---------|-------------|
| direction | dropdown | forward | Scan direction to compute: forward, reverse, or both. When set to forward or reverse, both outputs carry the same single-direction result |
| friction_coefficient | FLOAT | 0.3 | Coulomb friction coefficient between tip and sample (0.010.0) |
| adhesion | FLOAT | 1e-9 | Tip-sample adhesion force in Newtons (0.01e-6) |
| load | FLOAT | 10e-9 | Applied normal load on the cantilever in Newtons (1e-121e-6) |
| friction_coefficient | FLOAT | 0.3 | Coulomb friction coefficient between tip and sample (0.0-10.0) |
| adhesion | FLOAT | 1e-9 | Tip-sample adhesion force in Newtons (0.0-1e-6) |
| load | FLOAT | 10e-9 | Applied normal load on the cantilever in Newtons (1e-12-1e-6) |
## Notes
- The lateral force is computed from a contact-mechanics model where the measured torsion signal depends on the local surface tilt angle. The x-gradient of the topography gives the slope, and the resulting lateral force combines the gravitational component along the slope with the friction force (proportional to the normal component of load plus adhesion): F_lateral = (F_load sin(theta) + mu (F_load cos(theta) + F_adhesion)) / (cos(theta) - mu sin(theta)).
- Forward and reverse scans produce different lateral force signals because friction opposes the scan direction. The forward scan (+x) adds the friction contribution to the slope component, while the reverse scan (-x) subtracts it, producing the characteristic "friction loop" seen in LFM experiments.
- Typical friction coefficients for common AFM sample materials: mica ~0.10.3, silicon ~0.20.5, polymers ~0.30.8, metals ~0.30.6. Use lower values for atomically smooth or lubricated surfaces.
- Typical friction coefficients for common AFM sample materials: mica ~0.1-0.3, silicon ~0.2-0.5, polymers ~0.3-0.8, metals ~0.3-0.6. Use lower values for atomically smooth or lubricated surfaces.
- Output values represent the lateral force on the cantilever tip in Newtons. To convert to photodetector voltage, divide by the lateral sensitivity of the optical lever system.
- This node is the equivalent of Gwyddion's `latsim.c` lateral force simulation and uses the same contact-mechanics formulation for topography-induced friction artifacts.

View File

@@ -26,4 +26,4 @@ Detect and measure periodic lattice structures from ACF or FFT peak positions. R
- ACF method finds the strongest off-center peaks in the 2D autocorrelation. Works well for real-space periodic structures.
- FFT method finds peaks in the power spectrum. Better for weak periodicity or noisy data.
- Reports up to two lattice vectors (a, b), their magnitudes, and the angle between them.
- For best results, the field should contain at least 34 complete periods in each direction.
- For best results, the field should contain at least 3-4 complete periods in each direction.

View File

@@ -24,8 +24,8 @@ Correct scan-line mismatches using Gwyddion-derived row alignment methods. Suppo
| method | dropdown | median | Alignment method: median, median_diff, trimmed_mean, trimmed_diff, polynomial, or step |
| direction | dropdown | horizontal | Direction of scan lines to correct: horizontal or vertical |
| masking | dropdown | ignore | How to use the mask: ignore, include (correct using masked rows only), or exclude |
| trim_fraction | FLOAT | 0.05 | Fraction of extreme values to trim; visible only for trimmed_mean and trimmed_diff methods (00.5) |
| polynomial_degree | INT | 1 | Polynomial degree for the polynomial method (05); visible only for polynomial method |
| trim_fraction | FLOAT | 0.05 | Fraction of extreme values to trim; visible only for trimmed_mean and trimmed_diff methods (0-0.5) |
| polynomial_degree | INT | 1 | Polynomial degree for the polynomial method (0-5); visible only for polynomial method |
## Notes

View File

@@ -18,8 +18,8 @@ Expand the local dynamic range at each pixel to reveal fine surface features tha
| Name | Type | Default | Description |
|------|------|---------|-------------|
| kernel_size | INT | 10 | Size of the local neighbourhood window in pixels (2100) |
| weight | FLOAT | 0.5 | Blend weight between original and full-contrast output (0 = original, 1 = full local contrast; 01) |
| kernel_size | INT | 10 | Size of the local neighbourhood window in pixels (2-100) |
| weight | FLOAT | 0.5 | Blend weight between original and full-contrast output (0 = original, 1 = full local contrast; 0-1) |
## Notes

View File

@@ -18,8 +18,8 @@ Compute the power spectral density function in log-polar coordinates. The x-axis
| Name | Type | Default | Description |
|------|------|---------|-------------|
| n_phi | INT | 180 | Number of azimuthal angle bins (36720) |
| n_r | INT | 100 | Number of radial (log-frequency) bins (20500) |
| n_phi | INT | 180 | Number of azimuthal angle bins (36-720) |
| n_r | INT | 100 | Number of radial (log-frequency) bins (20-500) |
## Notes

View File

@@ -21,12 +21,12 @@ Classify surface features using logistic regression on engineered height-derived
| Name | Type | Default | Description |
|------|------|---------|-------------|
| use_gaussians | BOOLEAN | True | Include Gaussian blur features at multiple scales |
| n_gaussians | INT | 4 | Number of Gaussian scales (110). Only shown when use_gaussians is True |
| n_gaussians | INT | 4 | Number of Gaussian scales (1-10). Only shown when use_gaussians is True |
| use_sobel | BOOLEAN | True | Include Sobel gradient features (horizontal and vertical) |
| use_laplacian | BOOLEAN | True | Include Laplacian (sum of second differences) feature |
| regularization | FLOAT | 1.0 | L2 regularization strength lambda (0.010.0) |
| max_iter | INT | 500 | Maximum gradient descent iterations (105000) |
| seed | INT | 42 | Random seed for reproducibility (0999999) |
| regularization | FLOAT | 1.0 | L2 regularization strength lambda (0.0-10.0) |
| max_iter | INT | 500 | Maximum gradient descent iterations (10-5000) |
| seed | INT | 42 | Random seed for reproducibility (0-999999) |
## Notes

View File

@@ -20,7 +20,7 @@ Draw simple vector shapes (lines, rectangles, circles, arrows) over a DATA_FIELD
|------|------|---------|-------------|
| shape | dropdown | arrow | Shape type to draw next: line, rectangle, circle, or arrow |
| stroke_color | STRING (color picker) | #ff0000 | Color for newly drawn shapes |
| stroke_width | INT | 3 | Line thickness in display pixels for newly drawn shapes (164) |
| stroke_width | INT | 3 | Line thickness in display pixels for newly drawn shapes (1-64) |
| clear_shapes | BUTTON | — | Remove all drawn shapes |
## Notes

View File

@@ -20,7 +20,7 @@ Apply morphological operations to a binary mask. Dilate expands regions, erode s
| Name | Type | Default | Description |
|------|------|---------|-------------|
| operation | dropdown | dilate | Morphological operation: dilate, erode, open, or close |
| radius | INT | 1 | Structuring element radius in pixels (150) |
| radius | INT | 1 | Structuring element radius in pixels (1-50) |
| shape | dropdown | disk | Structuring element shape: disk or square |
## Notes

View File

@@ -18,7 +18,7 @@ Extract background using a local median filter and subtract it. The radius contr
| Name | Type | Default | Description |
|------|------|---------|-------------|
| radius | INT | 20 | Half-size of the median filter window in pixels; the full window is (2×radius+1)² (2500) |
| radius | INT | 20 | Half-size of the median filter window in pixels; the full window is (2×radius+1)² (2-500) |
| output | dropdown | subtracted | Output mode: subtracted (original minus background) or background (extracted background) |
## Notes

View File

@@ -18,7 +18,7 @@ Apply a median filter to a DATA_FIELD. Equivalent to gwy_data_field_filter_media
| Name | Type | Default | Description |
|------|------|---------|-------------|
| size | INT | 3 | Kernel size (side length) in pixels; odd values only (121) |
| size | INT | 3 | Kernel size (side length) in pixels; odd values only (1-21) |
## Notes

View File

@@ -19,7 +19,7 @@ Extract and compare line profiles from two fields along a chosen row or column.
| Name | Type | Default | Description |
|------|------|---------|-------------|
| row | INT | -1 | Row (horizontal) or column (vertical) index to extract; -1 uses the centre row/column (-110000) |
| row | INT | -1 | Row (horizontal) or column (vertical) index to extract; -1 uses the centre row/column (-1-10000) |
| direction | dropdown | horizontal | Profile direction: horizontal (extract a row) or vertical (extract a column) |
| mode | dropdown | overlay | Combination mode: overlay (field_a profile only), mean (average of both), or difference (field_a minus field_b) |

View File

@@ -18,7 +18,7 @@ Create a mask marking pixels that deviate more than N standard deviations from t
| Name | Type | Default | Description |
|------|------|---------|-------------|
| sigma_threshold | FLOAT | 3.0 | Number of standard deviations beyond which a pixel is an outlier (1.010.0) |
| sigma_threshold | FLOAT | 3.0 | Number of standard deviations beyond which a pixel is an outlier (1.0-10.0) |
| mode | dropdown | both | Which outliers to flag: both (high and low), high only, or low only |
## Notes

View File

@@ -18,14 +18,14 @@ Fix perspective distortion in a DATA_FIELD via a projective (homography) transfo
| Name | Type | Default | Description |
|------|------|---------|-------------|
| top_left_x | FLOAT | 0.0 | Horizontal offset of the top-left corner as a fraction of image width (-0.50.5) |
| top_left_y | FLOAT | 0.0 | Vertical offset of the top-left corner as a fraction of image height (-0.50.5) |
| top_right_x | FLOAT | 0.0 | Horizontal offset of the top-right corner as a fraction of image width (-0.50.5) |
| top_right_y | FLOAT | 0.0 | Vertical offset of the top-right corner as a fraction of image height (-0.50.5) |
| bottom_left_x | FLOAT | 0.0 | Horizontal offset of the bottom-left corner as a fraction of image width (-0.50.5) |
| bottom_left_y | FLOAT | 0.0 | Vertical offset of the bottom-left corner as a fraction of image height (-0.50.5) |
| bottom_right_x | FLOAT | 0.0 | Horizontal offset of the bottom-right corner as a fraction of image width (-0.50.5) |
| bottom_right_y | FLOAT | 0.0 | Vertical offset of the bottom-right corner as a fraction of image height (-0.50.5) |
| top_left_x | FLOAT | 0.0 | Horizontal offset of the top-left corner as a fraction of image width (-0.5-0.5) |
| top_left_y | FLOAT | 0.0 | Vertical offset of the top-left corner as a fraction of image height (-0.5-0.5) |
| top_right_x | FLOAT | 0.0 | Horizontal offset of the top-right corner as a fraction of image width (-0.5-0.5) |
| top_right_y | FLOAT | 0.0 | Vertical offset of the top-right corner as a fraction of image height (-0.5-0.5) |
| bottom_left_x | FLOAT | 0.0 | Horizontal offset of the bottom-left corner as a fraction of image width (-0.5-0.5) |
| bottom_left_y | FLOAT | 0.0 | Vertical offset of the bottom-left corner as a fraction of image height (-0.5-0.5) |
| bottom_right_x | FLOAT | 0.0 | Horizontal offset of the bottom-right corner as a fraction of image width (-0.5-0.5) |
| bottom_right_y | FLOAT | 0.0 | Vertical offset of the bottom-right corner as a fraction of image height (-0.5-0.5) |
## Notes

View File

@@ -18,7 +18,7 @@ Downsample a DATA_FIELD by grouping pixels into NxN blocks and reducing each blo
| Name | Type | Default | Description |
|------|------|---------|-------------|
| bin_size | INT | 2 | Side length of the square binning block in pixels (264) |
| bin_size | INT | 2 | Side length of the square binning block in pixels (2-64) |
| method | dropdown | mean | Reduction method per block: mean (average), sum (total), or median (middle value) |
## Notes

View File

@@ -19,7 +19,7 @@ Classify pixels into discrete classes based on height, slope, and/or curvature u
| Name | Type | Default | Description |
|------|------|---------|-------------|
| n_classes | INT | 3 | Number of output classes (210) |
| n_classes | INT | 3 | Number of output classes (2-10) |
| feature | dropdown | height | Feature used for classification: height, slope, curvature, height_slope, or all |
| method | dropdown | otsu | Thresholding method: otsu, equal_range, or quantile |

View File

@@ -18,16 +18,16 @@ Correct nonlinear scanner distortions by applying polynomial coordinate warping
| Name | Type | Default | Description |
|------|------|---------|-------------|
| k1_x | FLOAT | 0.0 | Linear distortion coefficient for the x axis (-1.01.0) |
| k2_x | FLOAT | 0.0 | Quadratic distortion coefficient for the x axis (-1.01.0) |
| k3_x | FLOAT | 0.0 | Cubic distortion coefficient for the x axis (-1.01.0) |
| k1_y | FLOAT | 0.0 | Linear distortion coefficient for the y axis (-1.01.0) |
| k2_y | FLOAT | 0.0 | Quadratic distortion coefficient for the y axis (-1.01.0) |
| k3_y | FLOAT | 0.0 | Cubic distortion coefficient for the y axis (-1.01.0) |
| k1_x | FLOAT | 0.0 | Linear distortion coefficient for the x axis (-1.0-1.0) |
| k2_x | FLOAT | 0.0 | Quadratic distortion coefficient for the x axis (-1.0-1.0) |
| k3_x | FLOAT | 0.0 | Cubic distortion coefficient for the x axis (-1.0-1.0) |
| k1_y | FLOAT | 0.0 | Linear distortion coefficient for the y axis (-1.0-1.0) |
| k2_y | FLOAT | 0.0 | Quadratic distortion coefficient for the y axis (-1.0-1.0) |
| k3_y | FLOAT | 0.0 | Cubic distortion coefficient for the y axis (-1.0-1.0) |
## Notes
- k1 controls linear stretching/compression, k2 controls barrel/pincushion-like quadratic distortion, and k3 controls cubic (S-shaped) distortion.
- Coefficients for x and y are independent, allowing correction of anisotropic scanner nonlinearities.
- Small values (0.010.1) are typical for real scanner corrections; large values produce extreme warping.
- Small values (0.01-0.1) are typical for real scanner corrections; large values produce extreme warping.
- Set all coefficients to 0.0 to pass the field through unchanged.

View File

@@ -19,8 +19,8 @@ Fit and subtract a polynomial background of given degree in x and y. Equivalent
| Name | Type | Default | Description |
|------|------|---------|-------------|
| degree_x | INT | 2 | Polynomial degree in the x direction (05) |
| degree_y | INT | 2 | Polynomial degree in the y direction (05) |
| degree_x | INT | 2 | Polynomial degree in the x direction (0-5) |
| degree_y | INT | 2 | Polynomial degree in the y direction (0-5) |
## Notes

View File

@@ -20,7 +20,7 @@ Compute the azimuthally averaged radial profile from a centre point. The output
|------|------|---------|-------------|
| cx | FLOAT | 0.5 | Centre x position as a fraction of field width (0 = left, 1 = right) |
| cy | FLOAT | 0.5 | Centre y position as a fraction of field height (0 = top, 1 = bottom) |
| n_bins | INT | 128 | Number of radial bins (44096) |
| n_bins | INT | 128 | Number of radial bins (4-4096) |
## Notes

View File

@@ -18,9 +18,9 @@ Apply a general rank-order (morphological) filter to a DATA_FIELD. Selects the k
| Name | Type | Default | Description |
|------|------|---------|-------------|
| radius | INT | 3 | Radius of the circular filter window in pixels (150) |
| radius | INT | 3 | Radius of the circular filter window in pixels (1-50) |
| operation | dropdown | median | Filter operation: erosion (local minimum), dilation (local maximum), median (50th percentile), or percentile (custom rank) |
| percentile | FLOAT | 50.0 | Custom percentile rank, used only when operation is percentile (0.0100.0) |
| percentile | FLOAT | 50.0 | Custom percentile rank, used only when operation is percentile (0.0-100.0) |
## Notes

View File

@@ -18,8 +18,8 @@ Resample a DATA_FIELD to a new pixel resolution while preserving physical dimens
| Name | Type | Default | Description |
|------|------|---------|-------------|
| width | INT | 256 | Output pixel width (216384) |
| height | INT | 256 | Output pixel height (216384) |
| width | INT | 256 | Output pixel width (2-16384) |
| height | INT | 256 | Output pixel height (2-16384) |
| interpolation | dropdown | linear | Interpolation method: linear, cubic, or nearest |
## Notes

View File

@@ -18,7 +18,7 @@ Rotate a DATA_FIELD counterclockwise by an angle in degrees. Optionally expand t
| Name | Type | Default | Description |
|------|------|---------|-------------|
| angle | FLOAT | 90.0 | Rotation angle in degrees, counterclockwise (360 to 360) |
| angle | FLOAT | 90.0 | Rotation angle in degrees, counterclockwise (-360 to 360) |
| interpolation | dropdown | bilinear | Interpolation method for resampling: bilinear, nearest, or bicubic |
| expand_canvas | BOOLEAN | True | When True, canvas is expanded to contain the full rotated image; when False, canvas is clipped to original size |

View File

@@ -20,10 +20,10 @@ Detect and remove horizontal scan scars using Gwyddion-derived scar marking thre
| Name | Type | Default | Description |
|------|------|---------|-------------|
| scar_type | dropdown | both | Which scar polarity to detect: both, positive (bright), or negative (dark) |
| threshold_high | FLOAT | 0.666 | High threshold relative to local RMS for strong scar detection (02) |
| threshold_low | FLOAT | 0.25 | Low threshold for extending already-detected scars (02) |
| min_length | INT | 16 | Minimum horizontal run length in pixels to classify as a scar (14096) |
| max_width | INT | 4 | Maximum vertical width in pixels for a scar candidate (132) |
| threshold_high | FLOAT | 0.666 | High threshold relative to local RMS for strong scar detection (0-2) |
| threshold_low | FLOAT | 0.25 | Low threshold for extending already-detected scars (0-2) |
| min_length | INT | 16 | Minimum horizontal run length in pixels to classify as a scar (1-4096) |
| max_width | INT | 4 | Maximum vertical width in pixels for a scar candidate (1-32) |
## Notes

View File

@@ -18,9 +18,9 @@ Render a DATA_FIELD as a directional hillshade image using Lambertian reflectanc
| Name | Type | Default | Description |
|------|------|---------|-------------|
| azimuth | FLOAT | 0.0 | Light direction in degrees: 0 = north, 90 = east, 180 = south, 270 = west (0360) |
| elevation | FLOAT | 45.0 | Light elevation angle above the horizon in degrees (090) |
| blend | FLOAT | 0.5 | Blend factor between original data and shading: 0.0 = original data only, 1.0 = shading only (0.01.0) |
| azimuth | FLOAT | 0.0 | Light direction in degrees: 0 = north, 90 = east, 180 = south, 270 = west (0-360) |
| elevation | FLOAT | 45.0 | Light elevation angle above the horizon in degrees (0-90) |
| blend | FLOAT | 0.5 | Blend factor between original data and shading: 0.0 = original data only, 1.0 = shading only (0.0-1.0) |
## Notes

View File

@@ -18,8 +18,8 @@ Compute the angular slope distribution of a DATA_FIELD surface. Equivalent to Gw
| Name | Type | Default | Description |
|------|------|---------|-------------|
| distribution | dropdown | theta | Distribution type: theta (inclination angle, probability density in 1/deg), phi (azimuthal direction, weighted by slope², 0360°), or gradient (slope magnitude, probability density in 1/(z/xy)) |
| n_bins | INT | 90 | Number of histogram bins (101000) |
| distribution | dropdown | theta | Distribution type: theta (inclination angle, probability density in 1/deg), phi (azimuthal direction, weighted by slope², 0-360°), or gradient (slope magnitude, probability density in 1/(z/xy)) |
| n_bins | INT | 90 | Number of histogram bins (10-1000) |
## Notes

View File

@@ -20,7 +20,7 @@ Fill defect pixels (hot pixels, dropouts, scan artifacts) by interpolation. The
| Name | Type | Default | Description |
|------|------|---------|-------------|
| method | dropdown | laplace | Inpainting method: laplace (smooth Laplace equation solution), mean (local mean), or zero |
| max_iter | INT | 100 | Maximum number of iterations for the Laplace solver (12000) |
| max_iter | INT | 100 | Maximum number of iterations for the Laplace solver (1-2000) |
## Notes

View File

@@ -18,10 +18,10 @@ Extract a cross-section along an arbitrary curved path defined by control points
| Name | Type | Default | Description |
|------|------|---------|-------------|
| points_x | STRING | "0.25, 0.5, 0.75" | Comma-separated fractional x-coordinates of control points (0.01.0) |
| points_y | STRING | "0.5, 0.3, 0.5" | Comma-separated fractional y-coordinates of control points (0.01.0) |
| thickness | INT | 1 | Width of the sampled strip perpendicular to the path, in pixels (1100) |
| n_samples | INT | 256 | Number of sample points along the path (102048) |
| points_x | STRING | "0.25, 0.5, 0.75" | Comma-separated fractional x-coordinates of control points (0.0-1.0) |
| points_y | STRING | "0.5, 0.3, 0.5" | Comma-separated fractional y-coordinates of control points (0.0-1.0) |
| thickness | INT | 1 | Width of the sampled strip perpendicular to the path, in pixels (1-100) |
| n_samples | INT | 256 | Number of sample points along the path (10-2048) |
## Notes

View File

@@ -20,7 +20,7 @@ Find a template pattern within a larger data field using normalised cross-correl
| Name | Type | Default | Description |
|------|------|---------|-------------|
| threshold | FLOAT | 0.8 | Minimum correlation score to mark as a detection (0.01.0) |
| threshold | FLOAT | 0.8 | Minimum correlation score to mark as a detection (0.0-1.0) |
## Notes

View File

@@ -19,9 +19,9 @@ Segment a surface into flat terraces separated by atomic steps, fit a polynomial
| Name | Type | Default | Description |
|------|------|---------|-------------|
| n_terraces | INT | 0 | Number of terraces to fit; 0 = auto-detect from histogram peaks (050) |
| broadening | FLOAT | 1.0 | Smoothing factor for terrace detection; larger values merge noisy pixels (0.120.0) |
| poly_degree | INT | 0 | Polynomial degree per terrace: 0 = constant (flat), 1 = linear, 2 = quadratic, 3 = cubic (03) |
| n_terraces | INT | 0 | Number of terraces to fit; 0 = auto-detect from histogram peaks (0-50) |
| broadening | FLOAT | 1.0 | Smoothing factor for terrace detection; larger values merge noisy pixels (0.1-20.0) |
| poly_degree | INT | 0 | Polynomial degree per terrace: 0 = constant (flat), 1 = linear, 2 = quadratic, 3 = cubic (0-3) |
| output | dropdown | residual | Output mode: residual (original minus fit), fitted (fit surface), or labels (terrace assignment map) |
## Notes

View File

@@ -19,8 +19,8 @@ Create a binary mask by thresholding data. Otsu automatically finds the optimal
| Name | Type | Default | Description |
|------|------|---------|-------------|
| method | dropdown | absolute | Thresholding method: absolute (raw data value), relative (fraction of minmax range), or otsu (automatic Otsu threshold) |
| threshold | FLOAT | 0.0 | Threshold value; for absolute: raw z value; for relative: fraction 01; ignored for otsu (socket-only input) |
| method | dropdown | absolute | Thresholding method: absolute (raw data value), relative (fraction of min-max range), or otsu (automatic Otsu threshold) |
| threshold | FLOAT | 0.0 | Threshold value; for absolute: raw z value; for relative: fraction 0-1; ignored for otsu (socket-only input) |
| direction | dropdown | above | Which pixels to select: above or below the threshold |
## Notes

View File

@@ -20,8 +20,8 @@ Generate a synthetic AFM tip model DATA_FIELD. The input field sets the pixel si
|------|------|---------|-------------|
| shape | dropdown | parabola | Tip geometry: parabola (paraboloid with apex radius R), cone (sphere-capped cone), or sphere (ball-on-stick) |
| radius | FLOAT | 10 nm | Apex radius of curvature in metres (1e-10 to 1e-6) |
| half_angle | FLOAT | 20.0 | Half-cone angle from the tip axis in degrees for the cone shape (189°) |
| n_pixels | INT | 65 | Side length of the square tip grid in pixels (odd values only, 3511) |
| half_angle | FLOAT | 20.0 | Half-cone angle from the tip axis in degrees for the cone shape (1-89°) |
| n_pixels | INT | 65 | Side length of the square tip grid in pixels (odd values only, 3-511) |
## Notes

View File

@@ -18,12 +18,12 @@ Apply a local trimmed-mean filter to a DATA_FIELD. Within each circular window,
| Name | Type | Default | Description |
|------|------|---------|-------------|
| radius | INT | 3 | Radius of the circular filter window in pixels (150) |
| trim_fraction | FLOAT | 0.1 | Fraction of values to exclude from each end of the sorted window (0.00.49) |
| radius | INT | 3 | Radius of the circular filter window in pixels (1-50) |
| trim_fraction | FLOAT | 0.1 | Fraction of values to exclude from each end of the sorted window (0.0-0.49) |
## Notes
- A trim_fraction of 0.0 gives a plain local mean (no trimming). A trim_fraction approaching 0.5 converges to the local median.
- Typical values of 0.050.2 effectively suppress outlier spikes while preserving smooth features better than a median filter.
- Typical values of 0.05-0.2 effectively suppress outlier spikes while preserving smooth features better than a median filter.
- The filter uses a circular (disc-shaped) kernel; the actual window diameter is 2*radius + 1 pixels.
- More computationally expensive than a Gaussian filter due to the sorting step within each window.

View File

@@ -20,11 +20,11 @@ Segment a height field into grains using the two-stage Gwyddion watershed workfl
| Name | Type | Default | Description |
|------|------|---------|-------------|
| invert_height | BOOLEAN | False | When True, detects valleys instead of hills (inverts the height field) |
| locate_steps | INT | 10 | Number of drop steps in the seed location stage (1200) |
| locate_threshold | INT | 10 | Minimum drop threshold for seed acceptance (0100000) |
| locate_drop_size | FLOAT | 0.1 | Relative drop size for seed location stage (0.00011.0) |
| watershed_steps | INT | 20 | Number of steps in the watershed growth stage (12000) |
| watershed_drop_size | FLOAT | 0.1 | Relative drop size for watershed growth stage (0.00011.0) |
| locate_steps | INT | 10 | Number of drop steps in the seed location stage (1-200) |
| locate_threshold | INT | 10 | Minimum drop threshold for seed acceptance (0-100000) |
| locate_drop_size | FLOAT | 0.1 | Relative drop size for seed location stage (0.0001-1.0) |
| watershed_steps | INT | 20 | Number of steps in the watershed growth stage (1-2000) |
| watershed_drop_size | FLOAT | 0.1 | Relative drop size for watershed growth stage (0.0001-1.0) |
| combine_mode | dropdown | replace | How to combine with an existing mask: replace (ignore existing), union (OR), or intersection (AND) |
## Notes

View File

@@ -20,7 +20,7 @@ Denoise a DATA_FIELD using wavelet coefficient thresholding. BayesShrink adapts
|------|------|---------|-------------|
| wavelet | dropdown | db4 | Wavelet family: db1 (Haar), db2, db4, db8, sym4, coif1, or bior1.3 |
| method | dropdown | BayesShrink | Threshold estimation method: BayesShrink (per sub-band adaptive) or VisuShrink (global universal) |
| sigma | FLOAT | 0.0 | Noise level estimate in data units; 0 = automatic estimation (01.0) |
| sigma | FLOAT | 0.0 | Noise level estimate in data units; 0 = automatic estimation (0-1.0) |
| mode | dropdown | soft | Thresholding mode: soft (smooth shrinkage) or hard (zero below threshold) |
## Notes

View File

@@ -18,8 +18,8 @@ Detect edges by finding zero crossings of the Laplacian of Gaussian (LoG). Sigma
| Name | Type | Default | Description |
|------|------|---------|-------------|
| sigma | FLOAT | 2.0 | Gaussian smoothing scale for the LoG operator (0.520.0) |
| threshold | FLOAT | 0.0 | Minimum edge strength as a fraction of the maximum LoG contrast; filters weak edges (0.01.0) |
| sigma | FLOAT | 2.0 | Gaussian smoothing scale for the LoG operator (0.5-20.0) |
| threshold | FLOAT | 0.0 | Minimum edge strength as a fraction of the maximum LoG contrast; filters weak edges (0.0-1.0) |
## Notes