add a few more nodes
Some checks failed
Build / Build (Linux) (push) Has been cancelled
Build / Build (macOS) (push) Has been cancelled
Build / Build (Windows) (push) Has been cancelled
Deploy / test (push) Has been cancelled
Deploy / deploy (push) Has been cancelled
Tests / test (push) Has been cancelled
Some checks failed
Build / Build (Linux) (push) Has been cancelled
Build / Build (macOS) (push) Has been cancelled
Build / Build (Windows) (push) Has been cancelled
Deploy / test (push) Has been cancelled
Deploy / deploy (push) Has been cancelled
Tests / test (push) Has been cancelled
This commit is contained in:
98
docs/missing_gwyddion_features.md
Normal file
98
docs/missing_gwyddion_features.md
Normal file
@@ -0,0 +1,98 @@
|
||||
# Missing Gwyddion Features
|
||||
|
||||
Gwyddion 2D image/surface processing features not yet implemented in tono. Excludes force curves, force volume, spectroscopy, volume data, XYZ data, graph operations, and file I/O.
|
||||
|
||||
## Leveling / Background Removal
|
||||
|
||||
- [x] **Arc Revolve** — Subtract cylindrical arc background fitted by revolving an arc under the data
|
||||
- [x] **Sphere Revolve** — Subtract spherical cap background
|
||||
- [x] **Unrotate** — Auto-detect and correct in-plane scan rotation by finding dominant feature directions
|
||||
- [x] **Level Rotate** — Level by physically rotating the data plane rather than subtracting a polynomial
|
||||
- [x] **Zero Mean Value** — Shift all values so the mean is exactly zero (pure offset, no plane fit)
|
||||
- [x] **Zero Maximum Value** — Shift all values so the maximum is exactly zero
|
||||
|
||||
## Filtering / Signal Processing
|
||||
|
||||
- [ ] **2D CWT** — Continuous Wavelet Transform for scale-space analysis
|
||||
- [ ] **XY Denoise** — Denoise by combining two orthogonal scans (forward/backward or horizontal/vertical)
|
||||
- [ ] **Rank Presentation** — Rank transform image for local contrast enhancement
|
||||
- [ ] **Radial Smoothing** — Smooth data in polar coordinates, averaging along radial or angular direction
|
||||
- [ ] **Convolve Two Images** — Convolve two separate data channels together
|
||||
|
||||
## Line Correction / Scan Artifacts
|
||||
|
||||
- [ ] **Step Block Correction** — Correct vertical step offsets between scan lines by block-matching
|
||||
- [ ] **Good Mean Profile** — Compute a high-quality average scan line from repeated scans
|
||||
- [ ] **Align Rows (extended methods)** — Modus and Gaussian-weighted row alignment beyond tono's current set
|
||||
|
||||
## Correction / Restoration
|
||||
|
||||
- [ ] **Fractal Correction** — Fill masked/bad pixels using fractal interpolation (alternative to Laplace)
|
||||
- [ ] **Correlation Averaging** — Average repeated similar structures using autocorrelation alignment
|
||||
- [ ] **Coerce** — Force data to match the histogram distribution of another dataset
|
||||
- [ ] **Periodic Translate** — Translate image data treating the field as periodic (wrap-around shift)
|
||||
- [ ] **Reorder** — Reorder pixel rows/columns (interleaved to sequential, reverse scan, etc.)
|
||||
|
||||
## Statistical Analysis
|
||||
|
||||
- [ ] **Transfer Function Fit** — Fit PSF from a known reference image and a measured blurred image
|
||||
- [ ] **Transfer Function Guess** — Estimate PSF from a single image without a reference
|
||||
- [ ] **Angle Distribution** — Distribution of surface normal angles (distinct from slope distribution)
|
||||
|
||||
## Grain Operations
|
||||
|
||||
- [ ] **Otsu Threshold** — Automated grain/mask threshold using Otsu's method
|
||||
- [ ] **Remove Edge-Touching Grains** — Remove all grains touching the image border from a mask
|
||||
- [ ] **Grain Selection Shapes** — Create geometric selections (bounding boxes, inscribed discs, etc.) from grain masks
|
||||
|
||||
## Mask Operations
|
||||
|
||||
- [ ] **Mask Thin** — Morphological thinning to single-pixel-wide skeletons
|
||||
- [ ] **Mask Distribute** — Copy/distribute a mask to multiple channels simultaneously
|
||||
- [ ] **Mark With** — Create or modify a mask using arithmetic conditions on other channels
|
||||
|
||||
## Basic Operations
|
||||
|
||||
- [ ] **Invert Value** — Flip heights (z to -z)
|
||||
- [ ] **Log Scale Presentation** — Log-scaled presentation layer without modifying source data
|
||||
- [ ] **Limit Range** — Clamp data values to a specified min/max range
|
||||
- [ ] **Square Samples** — Resample so pixels are physically square (equal x/y size)
|
||||
- [ ] **Null Offsets** — Zero out the lateral (XY) origin offsets
|
||||
|
||||
## SPM-Specific Modes
|
||||
|
||||
- [ ] **MFM Field Simulation** — Simulate magnetic stray field above perpendicular media
|
||||
- [ ] **MFM Parallel Media** — Simulate MFM signal for in-plane magnetic media
|
||||
- [ ] **MFM Lift Shift** — Simulate MFM signal change when lift height changes
|
||||
- [ ] **MFM Lift Estimate** — Estimate lift height difference from data blur
|
||||
- [ ] **MFM Force Gradient** — Convert MFM raw data to force gradient units
|
||||
- [ ] **SMM Apply Calibration** — Apply Scanning Microwave Microscopy calibration coefficients
|
||||
|
||||
## Synthetic Surface Generators
|
||||
|
||||
Tono has one generic Synthetic Surface node. Gwyddion has ~20+ specialized generators:
|
||||
|
||||
- [ ] **Fractional Brownian Motion** — fBm rough surfaces with controlled Hurst exponent
|
||||
- [ ] **Spectral Synthesis** — PSD-specified random rough surfaces
|
||||
- [ ] **Lattice** — Crystalline lattice surface with defects
|
||||
- [ ] **Objects** — Randomly placed 3D objects (spheres, pyramids, etc.)
|
||||
- [ ] **Patterns** — Geometric patterns (staircase, gratings, etc.)
|
||||
- [ ] **Waves** — Sinusoidal/wave patterns
|
||||
- [ ] **Noise** — Uncorrelated random noise with configurable distribution
|
||||
- [ ] **Line Noise** — Synthetic scan-line noise/steps/scars for testing
|
||||
- [ ] **Fibres** — Random fibre network surfaces
|
||||
- [ ] **Domain Walls** — Phase-separated domain structures
|
||||
- [ ] **Columnar Growth** — Columnar thin-film growth simulation
|
||||
- [ ] **Ball Deposition** — Random ballistic deposition growth
|
||||
- [ ] **Particle Deposition** — Dynamical particle deposition model
|
||||
- [ ] **Rod Deposition** — Rod-like particle deposition
|
||||
- [ ] **Diffusion** — Diffusion-limited aggregation surfaces
|
||||
- [ ] **Discs** — Random overlapping disc surfaces
|
||||
- [ ] **CPDE / Turing** — Reaction-diffusion / Turing pattern surfaces
|
||||
- [ ] **Sand Dunes** — Aeolian sand transport simulation
|
||||
- [ ] **Annealing Lattice Gas** — Annealed lattice-gas model textures
|
||||
- [ ] **Phase Separation** — Spinodal decomposition textures
|
||||
- [ ] **Pileup** — Piled-up ellipsoids or bars
|
||||
- [ ] **Plateaus** — Stacked random plateau/terrace structures
|
||||
- [ ] **Film Residue** — Residue left after simulated film removal
|
||||
- [ ] **Wetting Front** — Propagating wetting front simulation
|
||||
Reference in New Issue
Block a user