JuliaImageRecon / RegularizedLeastSquares.jl

MIT License
20 stars 9 forks source link

Consolidate weighting #58

Closed tknopp closed 6 months ago

tknopp commented 11 months ago

We currently have one inconsistency that Kaczmarz and CGNR support explicit weighting, while the other methods do not. This has historical reasons and has not been addressed so far since MPIReco and MRIReco utilize RegLS in a slightly different way.

In MRIReco we don't use the weighting support of RegLS but instead build up the operator to include the weighting matrix, see: https://github.com/MagneticResonanceImaging/MRIReco.jl/blob/master/src/Reconstruction/IterativeReconstruction.jl#L52

I think this is a good design and we should try to adopt it in MPIReco. But there would need to be some infrastructure before this can be done. In particular the normalization with the trace of the normal operator needs to be made type aware. We also need to double check what type we actually want to feed in there and whether the one MPIReco uses is the correct one (I did not yet have a closer look. It is basically a composite op where the first op is a diagonal op).

Writing this down here because @nHackel and I discussed this yesterday and wanted to summarize the discussion somewhere.