-
Notifications
You must be signed in to change notification settings - Fork 8
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Use Richardson-Lucy deconvolution from scikit-image
#184
Comments
I looked at the scikit-image routine when I first started to port the IDL version of xrt_deconvolve to python. The results did not match the IDL results closely and appeared worse (noisier). It might be worth looking into it again though. |
Ah ok that is good to know. I haven't ever actually used this implementation as I don't think it existed when I implemented the version that is in Either way, it doesn't seem like there is a need for each package to implement version of RL deconvolution. I wonder if a more general deconvolution function that operates on |
I also recall that Kathy was not happy with some results she got using the aiapy deconvolution routine (on AIA data, of course). I think she said that she created an issue on it. |
I actually just responded with a follow-up to that issue on
I don't think I fully understand this. Could this not be solved by shifting the XRT point spread function by half a pixel? |
As I recall, I did find improved results by shifting the point spread function - actually just cutting off a column and row such that the convolution was done using an image with an odd number of pixels and the central one being the peak of the point spread function. However this is all a bit hazy in my memory so I'd have to look back at what I did. I'll try to do that as soon as I get the chance. |
Description
In the
xrt_deconvolve
function, a custom implementation of Richardonson-Lucy deconvolution is used. However, there is an existing implementation of this algorithm inscikit-image
: https://scikit-image.org/docs/stable/api/skimage.restoration.html#skimage.restoration.richardson_lucy. We should investigate whether this implementation is suitable for our needs and if so, remove the custom implementation and rely on this instead. In this case, there is little cost in adding this package as a dependency as it is a widely used package in the scientific Python community and is also an optional dependency of sunpy already.I've opened a similar issue on
aiapy
as that package also has a custom implementation of RL: https://gitlab.com/LMSAL_HUB/aia_hub/aiapy/-/issues/136.The text was updated successfully, but these errors were encountered: