inpainting_mcf — 通过平滑水平线进行修复。MCF:Mean Curvature Flow平均曲率流。
inpainting_mcf(Image, Region : InpaintedImage : Sigma, Theta, Iterations : )
算子 inpainting_mcf extends the image edges that
adjoin the region Region of the input image Image
into the interior of Region and connects their ends by
smoothing the level lines of the gray value function of
Image。
This happens through the application of the mean curvature flow or
intrinsic heat equation
on the gray value function u defined in the region Region
by the input image Image at a time . The discretized equation is solved in Iterations
time steps of length Theta, so that the output image
InpaintedImage contains the gray value function at the time
Iterations * Theta。
A stationary state of the mean curvature flow equation, which is
also the basis of the operator mean_curvature_flow, has the
special property that the level lines of u all have the curvature
0. This means that after sufficiently many iterations there
are only straight edges left inside the computation area of the
output image InpaintedImage. By this, the structure of
objects inside of Region can be simplified, while the
remaining edges are continuously connected to those of the
surrounding image matrix. This allows for a removal of image errors
and unwanted objects in the input image, a so called image
inpainting, which is only weakly visible to a human beholder since
there remain no obvious artifacts or smudges.
To detect the image direction more robustly, in particular on noisy
input data, an additional isotropic smoothing step can precede the
computation of the gray value gradients. The parameter
Sigma determines the magnitude of the smoothing by means of
the standard deviation of a corresponding Gaussian convolution
kernel, as used in the operator isotropic_diffusion for
isotropic image smoothing.
请注意,若使用域缩减后的图像作为输入,滤波器算子可能会返回意外结果。请参阅 滤波器 一章
Image (输入对象) (multichannel-)image(-array) → object (byte / uint2 / real)
输入图像。
Region (输入对象) region → object
Inpainting region.
InpaintedImage (输出对象) image(-array) → object (byte / uint2 / real)
输出图像。
Sigma (输入控制) real → (real)
Smoothing for derivative operator.
默认值: 0.5
建议值: 0.0, 0.1, 0.5, 1.0
限制:
Sigma >= 0
Theta (输入控制) real → (real)
Time step.
默认值: 0.5
建议值: 0.1, 0.2, 0.3, 0.4, 0.5
限制:
0 < Theta <= 0.5
Iterations (输入控制) integer → (integer)
Number of iterations.
默认值: 10
建议值: 1, 5, 10, 20, 50, 100, 500
限制:
Iterations >= 1
harmonic_interpolation,
inpainting_ct,
inpainting_aniso,
inpainting_ced,
inpainting_texture
M. G. Crandall, P. Lions; “Convergent Difference Schemes for
Nonlinear Parabolic Equations and Mean Curvature Motion”;
Numer. Math. 75 pp. 17-41; 1996.
G. Aubert, P. Kornprobst; “Mathematical Problems in Image
Processing”; Applied Mathematical Sciences 147; Springer, New
York; 2002.
基础