CurvatureFlowFilter [image]
applies a mean curvature flow filter to image.
CurvatureFlowFilter [image,t]
specifies the amount of curvature flow time t to be applied.
CurvatureFlowFilter [image,t,k]
applies the curvature flow with a modified conductance term parametrized by k.
CurvatureFlowFilter
CurvatureFlowFilter [image]
applies a mean curvature flow filter to image.
CurvatureFlowFilter [image,t]
specifies the amount of curvature flow time t to be applied.
CurvatureFlowFilter [image,t,k]
applies the curvature flow with a modified conductance term parametrized by k.
Details
- Curvature flow filtering is an anisotropic diffusion method used for smoothing images while preserving edges. It effectively spreads the curvature along a contour, thereby rounding corners and reducing the Euclidean length of contours.
- CurvatureFlowFilter implements a Euclidean shortening filter.
- CurvatureFlowFilter works on 2D grayscale or multichannel images, operating on each channel separately.
- The diffusion in a curvature flow filter runs parallel to the image contours. Diffusion perpendicular to the contours is omitted in order to preserve edges.
- The effect of CurvatureFlowFilter does not depend on the overall normalization of the image values.
- The conductance parameter k can take any positive value. The default value k=∞ renders the unmodified curvature flow filter.
- CurvatureFlowFilter [image] is equivalent to CurvatureFlowFilter [image,1,∞].
- CurvatureFlowFilter applies the partial differential equation partial_tf=kappa TemplateBox[{{del , f}}, Abs] with the contour curvature kappa= del . (del f)/(TemplateBox[{{del , f}}, Abs]) to every image channel .
- In CurvatureFlowFilter [image,t], t parametrizes the evolution of the curvature flow and thereby the spatial range of the filter.
- If a parameter k is supplied, the curvature flow partial_tf=TemplateBox[{{del , f}}, Abs]del .c_k(TemplateBox[{{del , f}}, Abs]) (del f)/(TemplateBox[{{del , f}}, Abs]) with a modified conductance term c_k(TemplateBox[{{del , f}}, Abs])=ⅇ^(-|del f|^2/k^2) is used.
Examples
open all close allBasic Examples (1)
Diffusing an angiography image:
Scope (4)
Data (2)
Filtering of grayscale image:
Filtering of multichannel image:
Parameters (2)
Specify the amount of diffusion:
Specify the conductance term:
Applications (6)
Remove salt-and-pepper noise:
Remove Gaussian color noise from an image:
Remove smaller circles from the image:
Use a CurvatureFlowFilter to remove smaller stars from an astronomical image:
Unsharp masking using CurvatureFlowFilter :
Smooth the image before converting it to a vector graphic:
Properties & Relations (1)
CurvatureFlowFilter returns an image of a real type:
Related Guides
History
Text
Wolfram Research (2010), CurvatureFlowFilter, Wolfram Language function, https://reference.wolfram.com/language/ref/CurvatureFlowFilter.html.
CMS
Wolfram Language. 2010. "CurvatureFlowFilter." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/CurvatureFlowFilter.html.
APA
Wolfram Language. (2010). CurvatureFlowFilter. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/CurvatureFlowFilter.html
BibTeX
@misc{reference.wolfram_2025_curvatureflowfilter, author="Wolfram Research", title="{CurvatureFlowFilter}", year="2010", howpublished="\url{https://reference.wolfram.com/language/ref/CurvatureFlowFilter.html}", note=[Accessed: 17-November-2025]}
BibLaTeX
@online{reference.wolfram_2025_curvatureflowfilter, organization={Wolfram Research}, title={CurvatureFlowFilter}, year={2010}, url={https://reference.wolfram.com/language/ref/CurvatureFlowFilter.html}, note=[Accessed: 17-November-2025]}