A rich class which contains a 1D scala array of fields and defines some common operators on arrays of fields.
A solver for finding the minimum of a separable convex function f which is minimized with a gradient step followed by a proximal map.
A solver for finding the minimum of a separable convex function f which is minimized with a gradient step followed by a proximal map. The method is outlined in:
Beck, A. and M. Teboulle (2009). "A Fast Iterative Shrinkage-Thresholding Algorithm for Linear Inverse Problems." SIAM J. Img. Sci. 2(1): 183-202.
Implements diffusion with both insulating and Dirichlet boundary constraints using a multigrid algorithm.
A solver for finding the minimum of a separable convex function f which is minimized with a gradient step followed by a proximal map.
A solver for finding the minimum of a separable convex function f which is minimized with a gradient step followed by a proximal map. The method is outlined in:
Beck, A. and M. Teboulle (2009). "A Fast Iterative Shrinkage-Thresholding Algorithm for Linear Inverse Problems." SIAM J. Img. Sci. 2(1): 183-202.
Solver for finding the minimum position of nonlinear, convex scalar function f on the line between bound1 and bound2.
Solver for finding the minimum position of nonlinear, convex scalar function f on the line between bound1 and bound2. Implements the algorithm from: https://en.wikipedia.org/wiki/Golden_section_search
A solver for inverting linear problems of the form A.x = b using the LSQR method outlined in:
A solver for inverting linear problems of the form A.x = b using the LSQR method outlined in:
C. C. Paige and M. A. Saunders, Algorithm 583; LSQR: Sparse linear equations and least-squares problems, TOMS 8(2), 195-209 (1982).
LSQR uses a functional representation of applying the A matrix, op(), in order to optimally perform sparse operations. The algorithm also requires explicit definition of the operator that is adjoint to op(), adj(). operator/adjoint pairs can be debugged with an AdjointTester
b and x0 can be Fields or FieldArrays of any type structure, under the following conditions: 1) op(x0) returns a type structure equivalent to b 2) adj(b) returns a type structure equivalent to x0
Poisson solver as described in "Real-Time Gradient-Domain Painting" by McCann and Pollard (2008).
Poisson solver as described in "Real-Time Gradient-Domain Painting" by McCann and Pollard (2008). This implementation covers only the solver, not differentiation or blending modes. The expected input is a ColorFieldExpr containing the Laplacian of the desired output.
"Integrates" a gradient field to reconstruct an image.
"Integrates" a gradient field to reconstruct an image. See "Fourier analysis of the 2D screened Poisson equation for gradient domain problems," by Bhat, Curless, Cohen and Zitnick, 2008.
Solves the screened Poisson equation in the Fourier domain.
Solves the screened Poisson equation in the Fourier domain. See the paper "Fourier analysis of the 2D screened Poisson equation for gradient domain problems," by Bhat, Curless, Cohen and Zitnick, 2008.
The ISTA shrinkage function sets values below lambda to zero and shrinks values close to lambda with a multiplier < 1