etomo.operators.linear.HOTV#

TV and HOTV class

class HOTV(img_shape, order=1, **kwargs)[source]#

Bases: etomo.operators.linear.base.LinearBase

The HOTV computation class for 2D image decomposition

Note

At the moment, assumed that the image is square

_op(data)[source]#

Define the HOTV operator. This method returns the input data convolved with the HOTV filter.

Parameters

data (numpy.ndarray((m', m'))) – input 2D data array.

Returns

coeffs – the variation values.

Return type

numpy.ndarray((2 * m’ * m’))

_adj_op(coeffs)[source]#

Define the HOTV adjoint operator. This method returns the adjoint of HOTV computed image.

Parameters

coeffs (numpy.ndarray((2 * m' * m'))) – the HOTV coefficients.

Returns

data – the reconstructed data.

Return type

numpy.ndarray((m’, m’))

l2norm(*args)[source]#

L2 norm can be computed analytically

class HOTV_3D(img_shape, nb_slices, order=1, **kwargs)[source]#

Bases: etomo.operators.linear.base.LinearBase

The HOTV computation class for 3D image decomposition

Note

At the moment, assumed that the image is square in x-y directions

_op(data)[source]#

Define the HOTV operator. This method returns the input data convolved with the HOTV filter.

Parameters

data (numpy.ndarray((p', m', m'))) – input 3D data array.

Returns

coeffs – the variation values.

Return type

numpy.ndarray((3 * p’ * m’ * m’))

_adj_op(coeffs)[source]#

Define the HOTV adjoint operator. This method returns the adjoint of HOTV computed image.

Parameters

coeffs (numpy.ndarray((3 * p' * m' * m'))) – the HOTV coefficients.

Returns

data – the reconstructed data.

Return type

numpy.ndarray((p’, m’, m’))

l2norm(*args)[source]#

L2 norm can be computed analytically