Start here
In the interferometer demo , white light made fringes only within a few micrometres of equal
paths. That is the whole idea of optical coherence tomography: put a sample where the second
mirror was, and every layer in it that reflects a little light makes its own burst of fringes
when the reference mirror is at the same distance.
The page opens with one reflecting surface. Drag the reference mirror on the drawing
(or let the motor sweep it, or click on the trace) and watch the burst appear only where the two
distances match. Drag a ◇ on the spectrum to change how broad the light is, and see the
burst narrow as the light broadens.
The four views at the top go one step each: 1 one surface; 2 the mirror scanned
through a layered sample, which reads out how much it reflects at every depth (an A-scan);
3 the beam stepped sideways, A-scan after A-scan, into a cross-section of an eye's retina,
and then into a 3D volume; 4 the way it is done today, with the mirror still and a
spectrometer that measures every depth at once.
1 · Fringes from a layer
1. One surface: fringes only where the paths match
What the page opens with: a broadband infrared source (a superluminescent diode at
$\lambda_0=840$ nm, $\Delta\lambda=50$ nm wide), a beam splitter, the reference mirror on its
rail, and in the other arm one surface of glass that reflects $r=0.2$ of the light's
amplitude, 50 μm beyond the place where the two arms are equal. The motor sweeps the mirror
back and forth. Far from 50 μm the detector sees a steady signal; within a few micrometres of
it, a burst of fringes, one fringe for every 420 nm ($\lambda_0/2$) of mirror travel, about 15
of them within the burst's half height. The burst is 6.23 μm wide at half height, which is the
coherence length
$$\ell_c=\frac{2\ln 2}{\pi}\frac{\lambda_0^2}{\Delta\lambda}=0.44\,\frac{(0.84\ \text{μm})^2}{0.05\ \text{μm}}=6.23\ \text{μm}.$$
It is the same reason white light's fringes stopped a few micrometres from equal paths: every
wavelength in the light makes fringes of its own spacing, and they are in step only where the
paths match. So the burst says where the surface is, to within a few micrometres, however
blurred the light is sideways. Stop the motor (■) and drag the mirror through it slowly; the
magnified view shows each fringe.
2. Broader light, shorter bursts
The same surface in light only 10 nm wide: the burst is 31.1 μm wide, five times longer.
Drag a ◇ on the spectrum (or the bandwidth slider) and watch the burst follow
$\ell_c\propto\lambda_0^2/\Delta\lambda$: 12.45 μm at 25 nm, 6.23 μm at 50, 3.11 μm at 100,
2.08 μm at 150 nm. The burst's envelope is the Fourier transform of the light's spectrum,
which is why a broad spectrum gives a short burst. Narrow the light to a laser's 0.05 nm and
the "burst" is 6.2 mm long: fringes everywhere, and no way to tell where the surface is. At
1300 nm (the button under The light) the same 50 nm gives 14.9 μm, because $\ell_c$ grows as
$\lambda_0^2$: longer wavelengths need broader sources for the same depth resolution.
3. Two surfaces: the plate's optical thickness
Now the surface is the front of a glass plate 100 μm thick, of index $n=1.5$, whose back face
reflects too. The motor sweeps the mirror over both: two bursts, at 40 and 190 μm. They are
not 100 μm apart but 150.00 μm: the light crosses the glass at $c/n$, so the mirror must move
$n t=1.5\times100$ μm, the plate's optical thickness, to match the back face. Change $n$ and the
second burst moves; change $t$ and it moves $n$ times as far. (For a burst it is the group
index that counts; this glass has no dispersion, so the two are the same.) Look at the centre
of each burst in the magnified view: the front face's is a bright fringe (the signal goes up
to 1.48), the back face's a dark one (down to 0.69): light reflected from glass into air has
its amplitude turned over, $r=(1-n)/(1+n)<0$.
4. Glass in one arm only: the burst spreads
Light 150 nm wide ($\ell_c=2.08$ μm) and 2 mm of BK7 glass in the sample arm, with no twin
in the reference arm. Glass delays each colour differently (its dispersion, in the
dispersion demo ); the mirror can be set to make up the average delay, but not the
differences. The colours' fringes no longer line up all at one place, and the burst spreads
to 10.06 μm, 4.84 times wider, its fringes closer together at one end than the other (see the
magnified view). The spread is $\sqrt{1+4\beta^2\sigma_k^4}$, with $\beta=L\,d^2(nk)/dk^2$
the glass's group-velocity dispersion over its length and $\sigma_k$ the spectrum's width in
wavenumber: it grows as the square of the bandwidth. At 50 nm the same glass spreads the burst
only from 6.23 to 7.04 μm, and at 1300 nm hardly at all (14.91 to 14.92 μm): BK7's
group-velocity dispersion is 41 fs²/mm at 840 nm but 2 fs²/mm at 1300 nm. This is why an OCT
with a broad source puts the same glass in both arms, and why an eye's 24 mm of water must be
matched in the reference arm.
2 · The A-scan
5. Scan the mirror through a sample: its A-scan
A microscope cover slip, 170 μm of glass ($n=1.52$), its front 20 μm beyond equal paths.
The motor scans the reference mirror through the whole sample, a new measurement each pass;
the detector's signal shows a burst for each face, and its envelope (taken out of the noisy
signal by a band-pass filter at the fringe frequency) is the A-scan: how strongly the sample
reflects at each depth. The peaks are at 20.00 and 278.39 μm, where the faces are
($20+1.52\times170=278.4$ μm), and as high as the faces reflect: 0.206 and 0.199 (the back
face's light has crossed the front face twice, losing $r^2$ each time). The grey strip under
the A-scan is the same thing as brightness: one column of the pictures in view 3. Try the
three-layer film: its two inner bonds reflect five times less than its faces.
6. How close can two layers be? Closer than ℓ_c, they merge, mostly
Two surfaces in air, each reflecting 0.2, 8 μm apart; the dashed curves are what each would
give alone. Two clear peaks. Lower the gap (type it in steps of 0.05 μm): from about 5.5 μm
down ($0.88\,\ell_c$) the peaks merge into one, which is the depth resolution, about $\ell_c$.
But not everywhere: at some gaps a dip opens between them again, every 0.42 μm ($\lambda_0/2$)
of gap. At 4.00 μm there are two peaks, at 19.11 and 24.94 μm (5.83 μm apart, not 4); at 4.2
and 5.0 μm there is one. The A-scan is the envelope of the sum of the two surfaces' fields,
each burst with its fringes: where the two bursts' fringes are out of step, half a fringe
apart, they cancel between the surfaces and the sum dips (look at the trace above: the
fringes die away in the middle); where they are in step they add into one peak. So two close
layers show as one or two, and in the wrong places, according to their spacing to a tenth of
a wavelength. It is the same interference that makes speckle in tissue (experiment 9).
7. Weak layers in decibels, and the noise floor
A stack like the layers of the retina ($n=1.38$): nine interfaces that each reflect between
1.5% and 7% of the light's amplitude. On a linear scale the weak ones hardly show; in
decibels ($20\log_{10}|r|$, from −23 to −36.5 dB here) all nine stand clear of the noise,
which is at −60 dB. Raise the noise floor: at −45 dB only five of the nine peaks rise clear
of it (four times its typical height), at −40 dB two, at −35 dB one. A real OCT's noise is
mostly shot noise, the graininess of light: with a milliwatt on the eye its floor is near
−100 dB, a part in $10^{10}$ of the light, so it sees layers far weaker than these.
3 · B-scan and volume
8. Step the beam across: a cross-section of the retina
A galvo mirror (a mirror on a motor that turns it) steps the beam across the back of an eye,
and at each step the system measures an A-scan. The A-scans side by side, in grey decibels,
are the B-scan: 512 columns 5.9 μm apart over 3 mm, building from left to right (Step: one
column; Go on; Finish). Compare it with the drawing above it, on the same scale across: the
bright nerve fibre layer at the top, dipping into the foveal pit where the inner layers part,
the dark nuclear layers, the bright line of the pigment epithelium, the choroid below it,
dimmer with depth (the pigment absorbs), and the dark cyst of fluid beside the fovea. Click
either picture for that column's A-scan. The depth axis is the optical depth divided by
$n=1.38$, as the instrument shows it. Each column is what view 2 measured; this one is the
whole point of OCT: a cross-section of living tissue, without cutting it. Unlike the CT
scanner of the tomography demo , which measures sums along lines
and must back-project them, OCT measures each line of the picture directly: there is nothing
to reconstruct.
9. Speckle: the grain in every OCT picture
The tissue's grainy look is not its structure: it is speckle. Each resolution cell holds
many scatterers, wavelengths apart in depth, and their light adds with random phases, so the
sum is bright in some places and dark in others: the interference of experiment 6, between
countless scatterers. The grains are about the beam's width across (8.9 μm) and a coherence
length deep (4.5 μm in the tissue). Press New speckle: the scatterers move, the grains move,
the layers stay. Turn Speckle off: the scatterers add their power instead of their fields,
which is what averaging many independent pictures gives, and the layers are smooth. Averaged
over the picture, the speckle's brightness is the smooth picture's; their ratio fluctuates
from grain to grain with a contrast (its standard deviation over its mean), which the readout
measures in the tissue's bands: 1.31 here, near the 1 of fully developed speckle (each cell
here holds only a few scatterers). Real instruments calm it by averaging B-scans: the next
experiment.
10. Average sixteen B-scans: the grain calms as 1/√N, the layers stay
The same line of the retina measured 16 times, faster (1024 A-scans a second), each B-scan's
brightness averaged with those before it: watch the grain melt away and the layers stay.
Speckle is interference, not noise: the same tissue measured again with nothing moved gives
the same speckle. But a living eye moves between B-scans, and a fraction of a wavelength is
enough: a scatterer's phase $2k_0nz$ turns a whole cycle for every $\lambda_0/2n=0.30$ μm it
moves in depth, so each repeat's speckle is a new pattern with the same mean. Averaging the
intensities of $N$ independent patterns divides their fluctuation by $\sqrt N$: the speckle
contrast is 1.31 in one B-scan, 0.93 after 2, 0.66 after 4, 0.47 after 8 and 0.33 after 16,
on the dashed curve $C_1/\sqrt N$ beside the readout (0.92, 0.65, 0.46, 0.33). The mean
brightness, which the layers are made of, stays where it was. Clinical instruments make
their clean pictures this way: they track the eye and average up to a hundred B-scans of the
same line. Under "More: what moves between repeats", let the beam move instead, along y, out
of the picture's plane: with a step of 0 nothing moves and sixteen B-scans leave the contrast
of one (1.30: only the noise has been averaged). The speckle changes only as much as the beam
moves against its own width, since two A-scans $\delta$ apart share $e^{-2\delta^2/w^2}$ of
their grain: a step of 4.5 μm (half the waist $w_0=8.9$ μm) leaves 0.53 after 16, a step of
9 μm 0.38, and 18 μm 0.33, each on its own expected curve. (Steps across also blur whatever
changes along y; the tissue's own motion does not.)
11. Across and in depth: two resolutions that do not depend on each other
Tiny beads in clear gel, 60 μm apart across and 100 μm in depth, and a tightly focused beam:
NA 0.1, focused at 300 μm. Its waist is $w_0=\lambda_0/(\pi\,\mathrm{NA})=2.7$ μm, and it
stays in focus over only $2z_R=2\pi n w_0^2/\lambda_0=71$ μm. At the focus a bead's image is
3.3 μm wide across ($1.18\,w_0=3.1$ μm); 100 μm above or below it, 9.5 μm; 300 μm below, 26.8 μm:
the beam's width $w(z)$. In depth every bead is 4.7 μm thick, $\ell_c/n$, whatever the NA and
the depth. Now set NA to 0.02: $w_0=13.4$ μm and a depth of focus of 1.78 mm, so every bead is
16 μm wide at every depth, and still 4.7 μm thick. In a microscope a tight focus gives both
fine detail across and a thin slice in depth; in OCT the depth resolution comes from the
light's coherence instead, so a weak lens can be used and the whole depth kept in focus. (In
decibels a spot looks wider than its half height: its faint skirts show.)
12. A tilted plate: OCT measures optical path
A plate of glass 200 μm thick ($n=1.5$, its faces ground so they scatter light back) on a
painted backing, tilted 5°. Its front face runs across the B-scan at 5.00° (fitted to the
brightest point of each column). But the paint behind it appears 300 μm below the front face,
not 200 μm: the instrument measures optical path, $n t$, and shows it as depth assuming air.
Real instruments divide by the tissue's index, as view 3 does for the retina (1.38); where the
index changes, structures below appear displaced. Change the tilt (under More) and the
roughness of the top surface. (A polished face tilted by more than the beam's angle would
send its reflection past the lens and vanish from the picture: OCT sees only light that comes
back.)
13. The second axis: a volume, and the retina in 3D
Step the beam along y too, after every B-scan, and the B-scans stack into a volume: 64 of
them, each 64 A-scans of 256 depths, a million numbers (the red lines on the cube's top are the
B-scans measured so far). It is shown as three slices you can move: a B-scan at one y
(magenta), a cross-section across y at one x (cyan), and the en-face plane at one depth seen
from above (yellow), drawn as planes in the cube. The en-face plane at 212 μm cuts through the
fovea's pit (the dark disc in the middle, the fluid filling it) and through the cyst beside it,
which shows as a dark oval 0.4 mm across; the rings around them are the layers, which curve
with the eye and so cross the flat plane (the readout counts six of them under it, the inner
plexiform under half the A-scans). Click on any slice to move the other two there, and
find the cyst in all three. This is the 3D image: clinics read retinal volumes like this
every day. (The volume steps 47 μm between A-scans, coarser than the B-scan's 5.9 μm: a
finer volume would take 64 times longer.)
14. Follow the layer: a flattened en-face slab, one layer at a time
The same volume, with the en-face slab no longer flat: it follows the pigment epithelium,
11 μm below its top in every A-scan and 12 μm thick, the yellow curve in the two
cross-sections and the bowl in the cube. The retina lines the inside of the eyeball, so it
is curved: in the picture the pigment epithelium rises 48 μm from the middle to the middle of
an edge and 101 μm to a corner, and over the pit the inner layers thin. A flat plane cuts them at a
slant, through several layers, which show as rings, as a flat cut through a dome of onion
does. The slab that follows the layer lies in the pigment epithelium under all 4096
A-scans: the en-face picture is that one layer, even all over. Choose Flat plane: the plane
goes to the slab's mean depth, 400 μm, and lies in three layers, the photoreceptors under 38%
of the A-scans, the pigment epithelium under 32% and the choroid under the rest: rings whose
brightness is the layers', not anything in the tissue. Follow the layer again and set the
slab 18 μm above it (−18): the photoreceptors, under every A-scan, where a flat plane at the
same mean depth crosses four layers. Clinics flatten their volumes this way, to the pigment
epithelium or to Bruch's membrane under it, to look at one layer at a time: where the
photoreceptors are lost, where new vessels grow under the retina. They find the layer in
each A-scan first (segmentation); this page knows where it is. Follow the surface instead,
95 μm below it, and the slab passes through the cyst's middle all round: a dark oval
0.40 × 0.34 mm, in a slab that is mostly the ganglion cells except over the pit.
4 · Fourier domain
15. The mirror still: a fringe in the spectrum for every layer
Fourier-domain OCT leaves the reference mirror at zero path and sends the light coming back
to a grating, which spreads it over a line camera: one pixel per wavelength. One surface,
moved slowly in depth by a stage motor. The camera sees the source's spectrum with fringes
across it: at a depth $d$ the paths differ by $\Delta=2d$, so the two beams are in step at
wavenumbers $k$ that differ by $2\pi/\Delta$. At 25 μm there are 10.6 fringes across the
camera, at 50 μm 21.2, at 100 μm 42.5: the deeper the surface, the finer its fringes. The
Fourier transform of the camera's spectrum turns each fringe frequency into a peak at its
depth: at 50 μm the peak is at 50.00 μm, 0.1995 high (the surface reflects 0.2), on top of
the grey time-domain A-scan of view 2. It is the interferometer demo's Fourier-transform
spectrometer run backwards: there the mirror moved and the transform gave the spectrum; here
the spectrum is measured and the transform gives the depths. Try the cover slip, and click a
▼ to see one face's own fringe in the spectrum: the A-scan's small third peak, at 258.4 μm, is
the two faces' light interfering with each other, at their separation.
16. The mirror image: zero path inside the sample
The three-layer film with its front 60 μm nearer than the reference mirror, so zero path
falls inside it: its layers are at −60, −15, +75 and +142.5 μm. The camera records a real
spectrum, and $\cos(k\Delta)=\cos(-k\Delta)$: a layer 60 μm before zero path makes exactly the
fringes of one 60 μm after it. With both sides shown, the transform is symmetric; on the side
that is kept as the image, the layers appear at 15, 60, 75 and 142.5 μm, two of them mirrored
into places where nothing is. So Fourier-domain systems keep the whole sample on one side of
zero path (and use only half of their depth range); measuring the complex spectrum, with two
phases of the reference, removes the ambiguity. Drag "sample at" up through zero path and
watch the images cross.
17. The depth range: how many pixels, and the fall-off
The cover slip again, now on a camera of only 256 pixels. The camera's pixels are
$\delta k$ apart, and a fringe must have at least two pixels to itself: the deepest fringes it
can follow belong to $z_\text{max}=\pi/(2n\,\delta k)$, here 301 μm of optical path. The back
face, at 318.4 μm, is past it: its fringes are sampled too coarsely and look like those of a
layer at $2z_\text{max}-318.4=283.7$ μm, where it appears, folded back. And it is faint, −27
dB instead of −14: each pixel averages over its own width of spectrum, which washes out fine
fringes (the dashed fall-off curve). Choose 512 pixels: the range doubles to 602 μm, the
face is back at 318.4 μm, at 69% of its height (−17 dB); 1024 pixels: 91%. The range is
$N\lambda_0^2/(12\,\Delta\lambda)$ for $N$ pixels spanning three bandwidths: more pixels, or
narrower light, go deeper.
18. A whole B-scan, one camera frame per column
The retina, measured the Fourier-domain way: 256 A-scans, each one camera frame. At 70,000
frames a second (a typical clinical camera) that is 3.7 ms per B-scan, 270 B-scans a second:
video rate, and the picture follows the sample as the stage motor moves it. A time-domain
system like view 3's measures 400 A-scans a second; a spectrometer collects every depth all
the time, which for the same light and time lowers its noise floor about $N/2$ times (27 dB
for 1024 pixels) or, for the same floor, makes it that much faster. Move the sample: up
through zero path, the retina's mirror image folds in from the top; deeper than 1204 μm, its
bottom folds back from the end of the range; and everything dims with depth, the fall-off of
experiment 17. Choose 512 pixels: the range halves and the choroid folds back over the
retina.
How it works
Lengths and conventions. Lengths are in micrometres, wavenumbers $k=2\pi/\lambda$ in
rad/μm. The reference mirror's position $d$ and a layer's depth are measured from where the
two arms are equal; the light goes there and back, so the paths differ by $\Delta=2d$, and a
layer at geometric depth $z$ in a medium of index $n$ matches the mirror at $d=nz$, its optical
depth. Reflections are amplitudes $r$; in decibels, $20\log_{10}|r|$, which is
$10\log_{10}$ of the reflected power.
The interference integral. With the reference's amplitude 1 and the sample sending
back amplitudes $a_i$ from paths $\Delta_i$, light of spectrum $S(k)$ (of unit area) gives the
detector
$$I(\Delta)=\int S(k)\Big|1+\sum_i a_i e^{ik(\Delta_i-\Delta)}\Big|^2 dk
= I_\text{dc}+2\,\mathrm{Re}\sum_i a_i\,\gamma(\Delta-\Delta_i),\qquad \gamma(\Delta)=\int S(k)\,e^{ik\Delta}dk,$$
where $I_\text{dc}=1+\sum a_i^2+\dots$ does not depend on the mirror. The coherence function
$\gamma$ is the Fourier transform of the spectrum, as in the interferometer demo. For a
Gaussian spectrum of standard deviation $\sigma_k$ (full width $\Delta k=2.355\,\sigma_k$, so
$\Delta k=2\pi\Delta\lambda/\lambda_0^2$), $\gamma(\Delta)=e^{ik_0\Delta}e^{-\sigma_k^2\Delta^2/2}$:
fringes at the centre wavelength under a Gaussian envelope, which falls to half at
$\Delta=\pm2\ln2\,\lambda_0^2/(\pi\Delta\lambda)$, that is at $d=\pm\ell_c/2$. The convention
here: $\ell_c=(2\ln2/\pi)\lambda_0^2/\Delta\lambda$ is the full width at half maximum of the
burst against the mirror's position, and the depth resolution in optical path.
The A-scan is the envelope $\left|\sum_i a_i\gamma(\Delta-\Delta_i)\right|$: the
page band-passes the detector's signal about the fringe frequency (a window as wide as the
spectrum) and takes the magnitude of its analytic signal (by FFT). It is the sum of fields,
not of powers, so layers closer than $\ell_c$ interfere (experiments 6 and 9).
Fourier domain. With the mirror still, the camera's pixel at $k$ sees
$$I(k)=S(k)\Big[1+\sum_i a_i^2+2\sum_i a_i\cos(k\Delta_i)+2\sum_{i
Across. The lens focuses the beam to a waist $w_0=\lambda_0/(\pi\,\mathrm{NA})$, the
Gaussian-beam demo 's $w_0=\lambda f/(\pi w)$, with Rayleigh range $z_R=\pi n w_0^2/\lambda_0$
and width $w(z)=w_0\sqrt{1+((z-z_f)/z_R)^2}$. The fibre that sends the light also collects it,
so a point $\rho$ off the axis is seen with amplitude $e^{-2\rho^2/w^2}$, and a point's image is
$1.18\,w$ wide at half height. Depth and lateral resolution are set by different things:
$\ell_c/n$ by the spectrum, $w_0$ by the lens.
Speckle and averaging (experiments 9 and 10). A resolution cell's field is
$E=\sum_j a_j e^{-2\rho_j^2/w^2}e^{i\phi_j}$ over its scatterers, with phases $\phi_j=2k_0 n z_j$
that differ by many turns from one to the next. Its intensity $I=|E|^2$ fluctuates about its
mean $I_0$ (the speckle-free picture, $\sum_j|a_j|^2e^{-4\rho_j^2/w^2}$ on average) with the
contrast $C=\sigma_I/\langle I\rangle$, measured here as the spread of $I/I_0$ over the bands
of scatterers, at least 8 μm from their edges; 1 for fully developed speckle, more when a cell
holds only a few scatterers. Averaging the intensities of $N$ repeats whose speckle is
correlated $\rho_{jk}$ in pairs leaves
$$C_N=\frac{C_1}{N}\Big(\sum_{j,k}\rho_{jk}\Big)^{1/2},$$
$C_1/\sqrt N$ when they are independent ($\rho_{jk}=\delta_{jk}$) and $C_1$ when they are the
same. Tissue that has moved by more than a fraction of $\lambda_0/2n$ gives an independent
pattern. A beam moved by $\delta$ sees the same scatterers weighted by
$e^{-2\rho^2/w^2}e^{-2(\rho-\delta)^2/w^2}$, whose integral over the cell is $e^{-\delta^2/w^2}$
of the beam's own; the intensities are correlated as its square, $\rho=e^{-2\delta^2/w^2}$
(and so is the count of scatterers in the cell, for any number of them). The speckle grain is
a beam's width across.
Flattening (experiment 14). The en-face slab at depth $s$ below a layer whose optical
depth under the A-scan at $(x, y)$ is $d_L(x,y)$ takes the samples at optical depth
$d_L(x,y)+n s$ in each A-scan (and the $\pm$ half-thickness about it), where the flat plane
takes the same depth everywhere.
Dispersion (experiment 4): glass of length $L$ in one arm adds the phase
$2Lk\,n(k)$; its quadratic part $\beta(k-k_0)^2$, $\beta=L\,d^2(nk)/dk^2$ (N-BK7 from Schott's
Sellmeier formula), turns $\gamma$ into
$q^{-1/2}e^{-\sigma_k^2u^2/2q}e^{ik_0u}$ with $q=1-2i\beta\sigma_k^2$: wider by $|q|$, lower by
$|q|^{-1/2}$, chirped.
What is approximate
The spectrum is Gaussian in wavenumber. The glass of views 1 and 2 has no
dispersion, so its group and phase indices are equal (in BK7 at 840 nm they are 1.525 and
1.510). The A-scans of views 3 and 4 are computed in the envelope domain: each column is the
field of its scatterers (each with the phase of its depth) and the power of its interfaces
(ground, diffuse surfaces, seen across the beam by Gauss–Hermite quadrature), with a noise of
the chosen floor correlated over a coherence length; demodulation is assumed perfect. The
tissue is made up: bands of scatterers (about 40 in every 10 × 10 × 100 μm) with the retina's
thicknesses and its pit roughly right, a cyst of clear fluid, attenuation by $e^{-\int\mu\,dz}$
in amplitude, and one index per band. Real tissue has thousands of scatterers to a resolution
cell, and moving each a fraction of a wavelength makes a new speckle pattern with the same
mean; the page's tissue has only a few, so when it moves between averaged B-scans it is drawn
afresh, its scatterers in new places (moving the few by a fraction of a wavelength would leave
each cell's own count of them behind, a grain no averaging removes). The speckle contrast is
measured against a speckle-free picture of every fourth column, and the averaged B-scans' noise
is new each time. A flattened slab follows its layer where the page knows it to be. The spectrometer's pixels are evenly spaced in $k$
(a real one is resampled to $k$ first) and span three bandwidths; its blur is one pixel. The
Fourier-domain B-scan of experiment 18 folds the power of each column, not its field. The
noise floors are raised far above real ones so that they can be seen.
New in 2026 for BrainFlux.
Source: github.com/gallicchio/brainflux , MIT licence.