bartorch.prox.Wavelet

bartorch.prox.Wavelet#

class bartorch.prox.Wavelet(axes, weight, joint_axes=(), *, family='dau2', randshift=True)#

l1 norm of the wavelet transform over axes (pics -R W).

Parameters:
  • axes (int or tuple of int) – Axes to transform, as indices into the image’s shape.

  • weight (float)

  • joint_axes (int or tuple of int, optional) – Axes along which a coefficient is kept or zeroed together.

  • family ({'haar', 'dau2', 'cdf44'}) – Wavelet family (pics --wavelet).

  • randshift (bool) – Cycle-spin the transform by a random shift; pics -n turns it off.

Examples

>>> Wavelet(axes=(-1, -2), weight=0.005)
__init__(axes, weight, joint_axes=(), *, family='dau2', randshift=True)#

Methods

__init__(axes, weight[, joint_axes, family, ...])

apply_transform(x[, image_shape, mode])

This term's transform applied to x, without making an operator of it.

build(shape)

The BART operator for this term over an image of C-order shape.

prox(x[, gamma, image_shape])

prox_{gamma f}(x), the operator BART's solvers call.

prox_shape(image_shape)

The C-order shape this term's proximal operator works on.

rewind(image_shape)

Put this term's own random generator back to where it started.

transform(image_shape)

The operator BART puts in front of this term's proximal operator.

transform_is_identity(image_shape)

Whether that transform is the identity, as BART decides it.

Attributes

axes

count

joint_axes

kind

weight