All Projects → jacopoantonello → mshwfs

jacopoantonello / mshwfs

Licence: other
Modal Shack-Hartmann wavefront sensor toolbox for MATLAB

Programming Languages

matlab
3953 projects

Projects that are alternatives of or similar to mshwfs

wavefront-proxy
Wavefront Proxy Project
Stars: ✭ 45 (+40.63%)
Mutual labels:  wavefront
spring-petclinic-cloud
Fork of the Spring Cloud Microservices project packaged to be deployed on several Cloud platforms: Kubernetes and Cloud Foundry
Stars: ✭ 106 (+231.25%)
Mutual labels:  wavefront
obj2usdz
🦖 obj2usdz, convert .OBJ files to .USDZ on iOS
Stars: ✭ 56 (+75%)
Mutual labels:  wavefront
Tinyobjloader
Tiny but powerful single file wavefront obj loader
Stars: ✭ 2,363 (+7284.38%)
Mutual labels:  wavefront
SwiftObjLoader
A wavefront object format loader in Swift
Stars: ✭ 20 (-37.5%)
Mutual labels:  wavefront
obj-rs
Wavefront obj parser for Rust
Stars: ✭ 57 (+78.13%)
Mutual labels:  wavefront
go-metrics-wavefront
Wavefront plugin for go-metrics
Stars: ✭ 12 (-62.5%)
Mutual labels:  wavefront
microscope
Python library for control of microscope devices, supporting hardware triggers and distribution of devices over the network for performance and flexibility.
Stars: ✭ 35 (+9.38%)
Mutual labels:  adaptive-optics
aotools
A useful set of tools for Adaptive Optics in Python
Stars: ✭ 60 (+87.5%)
Mutual labels:  adaptive-optics

MSHWFS - Modal-Shack-Hartmann-Wavefront-Sensor

DOI

MATLAB toolbox to estimate wavefronts from Shack-Hartmann (SHWFS) images. This toolbox implements the modal-based wavefront reconstruction method described in Section 1.3.2 of [1]. It also contains code to generate and plot Zernike polynomials as defined by Noll [2].

Main Features

  • automatic calibration from a given SHWFS reference image
  • handles an arbitrary arrangement and number of subapertures
  • estimates an arbitrary number of Zernike modes
  • computes the definite integrals of the gradients of the Zernike modes within each subaperture
  • contains an example with real SHWFS images

Requirements

  • MATLAB
  • a SHWFS reference image for calibration

Usage

Calibration

The calibration step is necessary to lay the grids for your particular arrangement of subapertures, select the pupil size, and to enable or disable single subapertures. For this step you should use a reference SHWFS image, i.e., an image taken with a reference beam that is aberration free.

To perform the calibration, open calibration.m,

    >> cd examples/
    >> edit calibration.m

You can run the calibration using the example SHWFS reference image found in examples/data/sh_flat.mat. To use your own SHWFS reference image:

  • adjust the parameters for your lenslet array
  • replace load sh_flat_bg.mat with your background reference image (dark frame).
  • replace load sh_flat.mat with your SHWFS reference image, i.e., an image taken with your SHWFS when no aberration is present
  • run the script adjusting the parameters if necessary. For example, you may want to disable some subapertures. You can do this by zeroing the corresponding pixels in the SHWFS reference image.

Wavefront estimation

Once the calibration is complete, you can estimate the wavefront from an arbitrary SHWFS image. An example is provided in reconstruction.m. To use your own images, just replace load img.mat.

References

[1] J. Antonello, "Optimisation-based wavefront sensorless adaptive optics for microscopy," Ph.D. thesis, Delft University of Technology (2014).

[2] Robert J. Noll, "Zernike polynomials and atmospheric turbulence," J. Opt. Soc. Am. 66, 207-211 (1976).

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].