Generalized Shrinkage
Authors
This is a joint project between
This project involves a key step (generalized shrinkage) which is part of a larger project with
for anisotropic motion by mean curvature.
Write up by Adam Oberman and Ryo Takei.
Publication
This project has been completed. The resulting publication is
- (with Stan Osher, Ryo Takei, and Richard Tsai) Numerical Methods for Smooth and Crystalline Mean Curvature Flow
Introduction
Here we explain the steps in mean curvature motion by bregman iteration and thresholding. Thresholding with a different HJ equation gives anisotropic motion by mean curvature The main ingredient is the shrinkage step, with an anisotropic norm. There are known formulas for shrinkage for the euclidian and L1 norm, we investigate shrinkage using other norms. (Can do L infinity, get rotated L1) We do polyhedral norms, and use convex analysis to work out the mapping.
Total Variation (TV) Minimization
A basic model in image denoising is the TV minimization with quadratic penalty (or simply TV minimization):
given a norm
, and function
and a parameter λ > 0, compute
For the isotropic case
, this is the Rudin-Osher-Fatemi image denoising model(cite). Esedoglu and Osher (cite) showed that TV minimization with anisotropic γ is more suited for denoising arbitrary convex shapes. For example, a unit square is denoised better using the L1-norm γ(x1,x2) = | x1 | + | x2 | rather than standard (isotropic) L2-norm (See example below).
In general, for TV minimization of a convex shape W containing the origin, γ should be chosen as the Legendre transform, or the dual, of the indicator function of W.
The Split Bregman Algorithm
The Split Bregman Algorithm of Goldstein and Osher (cite) provides a fast way of solving the TV minimization problem. The core of the algorithm is the alternating minimizations:
where μ is a parameter and the
's are the Bregman updates,
.
The first of the two minimizations can be solved efficiently by a few iterations of the Gauss-Seidel method. The second minimization is the anisotropic shrinkage problem for γ. The speed of the algorithm depends heavily on how fast this problem can be solved.
Later, we will consider this problem where γ is a polyhedral norm.
Mean Curvature Flow via TV minimization
The following connection between TV minimization and mean curvature flow was observed by Almgren, Wang and Taylor (cite): given a curve Ck = {x:uk(x) = 0}, compute
where h > 0and SDF(uk) is the signed distance function to the zero level set of uk. Then Ck + 1 = {x:uk + 1(x) = 0} is an approximation to the mean curvature motion of Ck after time h. In general, replacing the first integrand by
gives the anisotropic mean curvature motion. For example, if γ(x1,x2) = | x1 | + | x2 | we get mean curvature motion by square anisotropy.
To conclude, anisotropic mean curvature flow can be generated by solving a sequence of anisotropic TV minimizations (and solving signed distance functions). Furthermore, anisotropic TV minimization reduces to solving anisotropic shrinkage, via the Split Bregman Algorithm. Hence, we focus on the shrinkage problem where γ is anisotropic. In particular, we consider the case where γ is a polyhedral norm.
The basic shrinkage problem
Let x = (x1,x2) be a vector in the plane and let N(x) be a norm. The basic problem is to find the mapping x = x(y)
This involves the minimization of a homogeneous order one function (the norm) and the standard quadratic.
In the case of the L1 norm, we get standard shrinkage. The Euclidean norm is also easily solved. For the L infinity norm, we can obtain the answer by rotation, but it's useful as practice for the general case to work it out, using subdifferentials, i.e. non-smooth convex optimization.
Generalized Shrinkage for polyhedral norms
Let
be a polyhedral norm. Consider the shrinkage problem
.
Denote by
the subdifferential of N(x). Then, by convex analysis, the minimizer x * should satisfy the inclusion
, or equivalently
.
Note that the inclusion defines a unique x * for a given y, but not vice versa.
If N is smooth at x * , we have
for some i, so we simply have
. If N is not smooth at x * , then necessarily
for some i,j. In this case,
. Therefore
. The last inclusion implies that, in a region near the ray
, multiple values of y can shrink to the same minimizer
.
(Note, the reason for the calculation of the subgradient of the norm function is given by Danskin's Theorem
The above analysis gives rise to a formula to compute x * given y and set of normals {n1,n2,...,nk} ordered in a clockwise direction. First consider the following formula: if
, then,
Thus,
if and only if
. Furthermore, if φi < 0 and φi + 1 > 1, then N is smooth at x * with subgradient {ni + 1}, so
. In conclusion, the values of φi characterizes the direction which y should be shrunk, and immediately gives the value of x * .
The Polyhedral Shrinkage Algorithm
Input:
and an ordered set of normals
(assume nk + 1 = n1).
Output: minimizer
of the shrinkage problem.
1. For each i = 1,2,...,k, compute φi defined as above.
2. If for some j,
, then x * = y − (njφj + nj + 1(1 − φj)) / λ.
3. If for some j, φj < 0 and φj + 1 > 1, then
.
The algorithm requires a few operations and comparisons for each i = 1,2,...,k.
Numerical Results for Polyhedral Shrinkage
Surface plots of
and the unit balls of the corresponding N(x) are shown.
Numerical Results for Mean Curvature Flow using Generalized Shrinkage
Numerical results for anisotropic mean curvature flow using the Split Bregman Algorithm and anisotropic shrinkage are shown below.
The anisotropies tested were those used in the previous section, as well as the L1-norm (the square anisotropy) and a triangular anisotropy.
Parameters used were h = 1,μ = 2.
The distance function was computed using a combination of the fast marching method and a few iterations of the discretization of the PDE
.