Unlike the 3D version, which hands you a fixed bleed-through matrix, this 2D model derives the matrix from real spectra: each fluorophore's emission is a Gaussian curve of wavelength, each detector has a fixed bandpass window, and every entry of M is the numerically-integrated overlap of one dye's curve inside one channel's window, normalized so a dye reads 1.0 in its own channel. Raising crosstalk widens the Gaussians — you can watch the curves spill across channel boundaries in the left panel as M's off-diagonal terms grow.
M[i][j] = ∫(channel i window) Gaussian(λ; peak_j, σ_j) dλ
────────────────────────────────────────────
∫(channel j window) Gaussian(λ; peak_j, σ_j) dλ
S = M·x + φ·a + n (same linear mixing model)
Naive: x̂ = M⁻¹ S
AF-corrected: x̂ = M⁻¹ (S − φ·a)
The right panel plots every simulated tissue spot as a point in marker-abundance space (x-axis = marker 1, y-axis = marker 2, blue tint = marker 3): small grey dots are ground truth, coloured dots are the current view mode, and the faint line between them is the recovery error — literally the vector M⁻¹S − x for that spot. A well-conditioned, well-corrected unmix collapses those lines to nothing; a noisy, high-crosstalk, uncorrected one stretches them visibly.
- Crosstalk — widens each fluorophore's emission curve (σ), so more of its light lands inside neighbouring channels' bandpass windows; M's off-diagonal terms and its conditioning index ‖M‖·‖M⁻¹‖ both climb.
- Autofluorescence level — scales a broad background emission curve (peak ≈ 590 nm, very wide σ) that leaks into all three channels; the naive inverse leaves it baked in as false-positive signal, the AF-corrected inverse subtracts a calibrated estimate first.
- Detector noise — Gaussian noise added after mixing; matrix inversion amplifies it by the conditioning index, so a high-crosstalk panel unmixes far worse from the same noise than a clean one.
- RMS error — root-mean-square length of the truth→recovered displacement vectors across all spots and all three markers, in the current view mode.
Real-world relevance: this wavelength-domain view is exactly how a microscope's filter-set spec sheet is read before an experiment — the panel-design step checks how much a candidate dye's emission curve overlaps a neighbouring channel's window before committing to a multiplexed panel.