CERN / TIGRE

TIGRE: Tomographic Iterative GPU-based Reconstruction Toolbox
BSD 3-Clause "New" or "Revised" License
560 stars 183 forks source link

Add optional parameter to algorithms: Image to compute quality measurements against, per iteration #332

Closed AnderBiguri closed 1 year ago

AnderBiguri commented 2 years ago

As the title says, this would be a parameter that allows the quality measurement parameters to be computed against a known image, rather than change per iteration.

Something like:

[img, qual] = SIRT(proj,geo,angles, 'QualMeas','RMSE','ground_truth',my_image)

wahaj commented 2 years ago

Can I get on this ? Would help me to wrap my head around the project. It seems that the init options argument supports providing an image, do you want to seperate that from opt and make it a separate argument ? % 'Init': Describes diferent initialization techniques. % 'none' : Initializes the image to zeros (default) % 'FDK' : intializes image to FDK reconstrucition % 'multigrid': Initializes image by solving the problem in % small scale and increasing it when relative % convergence is reached. % 'image' : Initialization using a user specified % image. Not recomended unless you really % know what you are doing.

AnderBiguri commented 2 years ago

Hi @wahaj , absolutely, all yours ;)

I think the best way would be to have a separate argument. Mostly because it should be possible to have both, an image to initialize your algorithm with and an image to compare your results to, and those images be different.

I suggest calling this new argument 'ground_truth', or something like that. Happy to get name suggestions! Perhaps we could also throw an warning if the user has not chosen to call the function with several outputs (nargout), so they know the input is being ignored.

AnderBiguri commented 1 year ago

This already exists in MATLAB, only needed in python now. Closing as duplicate of #410