Skip to content

Multiple regularizers #263

@hakkelt

Description

@hakkelt

Hi, I wanted to try multiple regularizers, but I couldn't manage to get it to work. I checked the source code, and it seemed to support this feature. I tried with the following (among many other variations, but this seemed to most logical way based on the code):

nx, ny = 10, 10
traj = MRIReco.CartesianTrajectory(Float32, ny, nx)
acq = MRIReco.AcquisitionData(traj, reshape([ones(ComplexF32, nx*ny, 1)], 1, 1, 1))
params = Dict{Symbol,Any}()
params[:reco] = "standard"
params[:reconSize] = (nx, ny)
params[:reg] = [MRIReco.L1Regularization(0.05), MRIReco.TVRegularization(0.2, shape = (nx, ny))]
params[:sparseTrafo] = ["Wavelet", nothing]
reconstruction(acq, params);

I always get this error: AssertionError: reg and regTrafo must have the same length
Does MRIReco support this (assuming ADMM as the algorithm)?

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions