Repository logo

Cimmino simultaneously iterative holographic projection

Published version



Change log


El Guendy, MDV 
Mouthaan, R 
Niculescu, O 


jats:pThe Cimmino algorithm is an iterative algorithm used for solving linear equations (jats:italicAx</jats:italic> = jats:italicb</jats:italic>) and is part of a wider family of algebraic reconstruction algorithms. Despite being used in computed tomography and digital signal processing, we present an approach for using it in holographic projections in the Fraunhofer region. Following the work carried out by our group on Kaczmarz holography, an earlier algebraic linear equation solver, we compare the performance and speed of Cimmino against this algorithm. Three versions of the Cimmino algorithm, Cimmino full, Cimmino eye, and Cimmino FFT, are evaluated and compared to both Kaczmarz and Gerchberg-Saxton. Interestingly, the derivation and simplification of Kaczmarz and Cimmino leads to the input-output algorithm originally derived by Fienup and while the solution is well-known, the link between these algorithms is not and despite being around since the 1930s, it was originally used to solve linear equations and not phase retrieval. While the Cimmino full and Cimmino eye reflect fairly poorly against Cimmino FFT and Kaczmarz in terms of image quality and speed, the Cimmino FFT delivers better results in terms of image quality than all algorithms considered. It is significantly faster than Kaczmarz, being only a few milliseconds slower than Gerchberg-Saxton.</jats:p>



4006 Communications Engineering, 40 Engineering, Bioengineering

Journal Title

OSA Continuum

Conference Name

Journal ISSN


Volume Title


Optica Publishing Group
EPSRC (EP/T008369/1)
EPSRC (2108797)
Engineering and Physical Sciences Research Council (EP/L015455/1)
Is supplemented by: