mdw771 / adorym

Adorym: Automatic Differentiation-based Object Reconstruction with DynaMical Scattering
https://adorym.readthedocs.io/
25 stars 10 forks source link

Future development plans #1

Open uellue opened 3 years ago

uellue commented 3 years ago

Hi @mdw771, first of all congratulations for this project and many thanks for releasing it as Open Source! Using automatic differentiation for inverse problem solving is something we discussed at the Ernst Ruska Centre in Jülich (transmission electron microscopy), and it seems you beat us to it. 😆

It looks like your work might be quite useful for others in the field, including us. Since it is Open Source I just wanted to ask what your plans are for the future and if you would be interested to collaborate on the development. We are working on both off-axis electron holography and ptychography.

Examples for Open Source projects where we are involved are https://github.com/LiberTEM/LiberTEM/ https://github.com/Ptychography-4-0/ptychography and https://iffgit.fz-juelich.de/empyre/empyre/, in case you'd like to know what we do in this area. :-)

CC @sk1p @bangunarya @jan-car @rafaldb

mdw771 commented 3 years ago

Hi @uellue ,

My apologies for the delayed response! For some reason I didn't get any notification for this issue. I'm grateful for your interest in the adorym project and am glad to learn about your wonderful works in imaging!

As for future plans, one of our direction would be to improve the parallelization scheme. The current one called "distributed object" (as described in the paper) divides the object along y (vertical axis) but not x and z. An improved distribution model with 3D splitting of the object (like the one in Petascale XCT) might allow the code to use multiple ranks on HPCs more efficiently, and work more naturally with 2D image reconstructions.

Another potential future objective we are thinking about is to also include the multi-subproblem type of optimization frameworks - such as the alternating direction method of multipliers (ADMM) - as an alternating option, in addition to the current framework which minimizes a single objective function. This might make large problems more scalable, and allow one to insert denoisers/artifact removers into the reconstruction process.

Please feel free to contact me (my email is included in the preprint) if you are interested to chat further!

Ming