JuliaImageRecon / RegularizedLeastSquares.jl

MIT License
20 stars 9 forks source link

Allow the use of fully overlapping blocks for LLR #82

Closed SebastianFlassbeck closed 2 months ago

SebastianFlassbeck commented 5 months ago

The option to use fully overlapping blocks for LLR was inaccessible since prox! used non-overlapping blocks as a default. I made a wrapper function that now either calls the overlapping or non-overlapping proximal operator. Merging the two functions in one seemed messy since the overlapping case needs additional allocations which are not needed in the non-overlapping case.

To avoid a lot of repeated code, I changed the implementation of the fully overlapping function to call proxLLRNonOverlapping!. I didn't investigate if this makes a difference in the computation time.

Further, the norm is not implemented for fully overlapping blocks since it seems to only work for 2D patches currently. I remarked as much in the docstring.

Best, Sebastian

nHackel commented 4 months ago

Hello @SebastianFlassbeck, thank you for your contribution! I will merge this with the 0.15 release, which will come with the GPU support PR