iterative Sense + Tikonov regularisation
Closed this issue · 1 comments
ckolbPTB commented
supersedes #6
Design suggestion for IterativeSENSE reconstruction algorithm
class iterativeSENSE(Reconstruction):
acquisition_model: LinearOperator
initial_value: None | IData
n_max_iterations: int
dcf: DcfOperator | None
Design suggestion for IterativeSENSEWithTikonov reconstruction algorithm
class iterativeSENSEWithTikonov(Reconstruction):
acquisition_model: LinearOperator
initial_value: None | IData
n_max_iterations: int
dcf: DcfOperator | None
regularisation_image: None | IData
regularisation_weight: float
If regularisation_weight == 0 or regularisation_image is None this defaults to iterativeSENSE
Open questions:
- Should we have an additional l2_regularised_least_squares optimizer which solves the more general problem
||Ax - y||_2^2 + lambda||Tx - xreg||_2^2
or are we happy to use cg directly - In order to be able to write
A^H A + lambda
as an operator do we need an additional unity operator or can this already be achieved with our current operator classes - Would it make sense to have an (Linear)AcquisitionModel Operator which includes the functionality of "from_kdata", "recalculate_csm", "recalculate_fourier_op"... which is currently in
DirectReconstruction
.DirectReconstruction
could then also getacquisition_model
as input.
ckolbPTB commented
Suggestion: AcquisitionModel
is constructed in forward
otherwise difficult to handle update of csm, fourier_op...
noise should also be an input