smooth grain boundaries with a Huber curvature penalty that preserves sharp corners

Syntax

F = huberFilter(smoothingLength=10, threshold=5*degree)
smoothed = grains.smooth(F)

Description

The penalty is quadratic for small boundary turns and linear for turns above threshold. This reduces small fluctuations while penalising large corners less strongly than curvatureFilter. Reweighted sparse solves minimise the smoothing energy. Fixed network vertices remain fixed; stopping uses tol or the maximum iteration count.

Input

smoothingLength spatial wavelength controlling smoothing, in boundary coordinate units; defaults to four vertex spacings when alpha is omitted
threshold angular transition threshold in radians; default 5*degree
alpha dimensionless regularisation weight, overriding smoothingLength
maxIter maximum reweighting iterations; default 50
tol maximum vertex movement below which iteration stops, in spatial units; default 1e-4

Output

F huberFilter, used by grain and boundary smoothing methods

See also

curvatureFilter, laplaceFilter, taubinFilter, grain2d.smooth

Members

smooth the minimiser of |V - V0|^2 plus alpha times the Huber penalty of the curvature L V, by reweighting the sparse system until nothing moves, the fixed vertices kept

Used on

GrainSmoothingAdvanced

MATLAB’s huberFilter

source

Citing this page. This page is part of the documentation of MTEX, a free and open source MATLAB toolbox for analyzing and modeling crystallographic textures. It was written by The MTEX Developers and is published at https://mtex-toolbox.github.io/huberFilter_py.html. If you use MTEX, or reuse text or figures from this page, in your research, please cite

F. Bachmann, R. Hielscher, H. Schaeben: Texture Analysis with MTEX - Free and Open Source Software Toolbox, Solid State Phenomena 160 (2010), 63-68. 10.4028/www.scientific.net/SSP.160.63

BibTeX
@article{bachmann2010mtex,
  author  = {F. Bachmann and R. Hielscher and H. Schaeben},
  title   = {Texture Analysis with MTEX - Free and Open Source Software Toolbox},
  journal = {Solid State Phenomena},
  volume  = {160},
  pages   = {63-68},
  year    = {2010},
  doi     = {10.4028/www.scientific.net/SSP.160.63},
  url     = {https://doi.org/10.4028/www.scientific.net/SSP.160.63}
}

Other papers describing specific MTEX methods are listed under Publications — please cite the one that best fits your application. The MTEX source code is licensed under the GNU General Public License v2.0; the text and figures of this documentation are licensed under CC BY 4.0, which permits reuse — including by automated systems — provided The MTEX Developers and this page are credited.