Sterncat / opticspy

python optics module
MIT License
458 stars 127 forks source link

[Zernike] Add a function to translate, rotate and scale a zernike pol… #19

Closed otruffer closed 7 years ago

otruffer commented 7 years ago

…ynomial without re-sampling.

I was recently in the need to rotate a zernike polynomial and the python world does not seem to have any open source implementation for translation/rotation of a zernike polynomial. So here you go. It's based on the paper: Linda Lundström and Peter Unsbo, "Transformation of Zernike coefficients: scaled, translated, and rotated wavefronts with circular and elliptical pupils," J. Opt. Soc. Am. A 24, 569-577 (2007)

Note that it is not limited to a 37 order zernike like most of the already existing methods but to an arbitrary order zernike.

I have not found a guideline for contribution, so this is just a wild guess on how to integrate this.

Sterncat commented 7 years ago

thanks a lot for this. These days I am thinking to reorganize the Zernike part. Hope I could find a way to do this.