Hologram¶
hologram ¶
slm_hologram ¶
slm_hologram(beam, x_grating: int, y_grating: int, method: str = 'bessel1', input_beam: object = None, eps: float = np.finfo(float).eps, max_range: int = 255) -> np.ndarray
Parameters:
| Name | Type | Description | Default |
|---|---|---|---|
x_grating
|
int
|
Carrier grating spatial frequency along x (grid pixels). |
required |
y_grating
|
int
|
Carrier grating spatial frequency along y (grid pixels). |
required |
method
|
str
|
Amplitude/phase encoding scheme used to build the hologram. |
'bessel1'
|
input_beam
|
Beam
|
Reference illumination beam; defaults to self if None. |
None
|
eps
|
float
|
Small value added to avoid division by zero during encoding. |
eps
|
max_range
|
int
|
Output gray-level range (e.g. 255 for an 8-bit SLM lookup table). |
255
|
Returns:
| Type | Description |
|---|---|
ndarray
|
Encoded hologram pattern, shape (Dy, Dx), ready for SLM display. |
Reference
[1] T. Clark, R. Offer, S. Franke-Arnold, A. Arnold, and N. Radwell,
"Comparison of beam generation techniques using a phase only spatial light modulator,"
Opt. Express 24, 6249-6264 (2016).
Source code in structured_optics\hologram.py
8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 | |
dmd_hologram ¶
dmd_hologram(beam, cx: float, cy: float, sign: int = 1, input: object = None) -> np.ndarray
Generate a binary-amplitude DMD hologram.
Parameters
beam : Beam Desired output beam. Its Ex component defines the target amplitude and phase. cx, cy : float Carrier frequencies expressed in DMD pixel units. sign : int Controls the binary hologram orientation. Usually +1 or -1. input : Beam Optional Incident beam illuminating the DMD. If None, the incident beam is assumed to have uniform amplitude and zero phase, reproducing the original behavior.
Returns
H : ndarray Binary DMD hologram.
Reference
[1] Scholes, Stirling, et al. "Structured light with digital micromirror devices: a guide to best practice."
Optical Engineering 59.4 (2020): 041202-041202.
Source code in structured_optics\hologram.py
76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 | |