Matlab toolbox for easy-use spatial light modulator (SLM).
-
Base Class:
SLM.m -
Inheritance Class: defined by yourself according to different types of SLMs
- to inherit the SLM base class, method
disp_imageand user-defined initialization functions should be implemented - For Holoeye SLM, I already implemented
HoloeyeSLM.mfor phase/image display on a second screen - For Meadowlark SLMs, I already implemented
MeadowlarkSLM.mfor PCIe-linked SLM andMeadowlarkHDMISLM.mfor HDMI-linked RGB encoding SLM
- to inherit the SLM base class, method
-
Calibration:
- Before the phase image display, each SLM should be calibrated. I provided a double-hole interference method in
calibration.mand modified the diffractive method inutils/meadowlark_sdk/PCIeDiffractiveTest.m/utils/meadowlarkhdmi_sdk/PCIeDiffractiveTest.m - All calibration methods now need to use an IC Capture camera. I implemented a class
Camera.mfor easy usage
- Before the phase image display, each SLM should be calibrated. I provided a double-hole interference method in
-
allow phase-gray look-up-table (LUT) auto-apply when
slm.LUTis evaluated -
allow blazed-grating auto-apply
-
display phase:
slm.disp_phase(phase_,use_blaze) -
display image:
slm.disp_image(image_,use_blaze)
- image resample for iterative phase extraction:
slm.GS_resample() - GS iteration for phase extraction from the image:
slm.GS()
- blazed grating:
slm.blazedgrating(Tx,Ty,T)( boolean Tx, Ty indicates direction-off/on)
To see how to use each SLM class, take a look at test_slm.m. To see how to use Camera class, take a look at test_cam.m.