AdvancedPhotonSource / tike

Repository for ptychography software
http://tike.readthedocs.io
Other
29 stars 15 forks source link

NEW: Implement ePIE for ptychography #173

Closed carterbox closed 2 years ago

carterbox commented 2 years ago

Purpose

Implement the extended ptychographic iterative engine (ePIE) algorithm based on Maiden's 2009 paper.

Approach

Started with the lstsq_grad implementation because they are similar, but changed the update directions and gradients accordingly. There are a few significant differences between the paper and this implementation:

  1. This implementation allows batches of more than one pattern to be processed simultaneously. In this case, the object/probe updates are averaged across all the positions in the batch.
  2. This implementation allows for multi-probe illumination. In this case, the wavefront updates are based on the gradients of the Gaussian noise model as implemented in the other methods. Then the probes are updated in a simultaneous mode i.e. each mode uses the same object patches to compute its own update and the object updates from all probes are averaged.

Pre-Merge Checklists

Submitter

Reviewer