Raw frame — detected spots overlaid in green
SMLM reconstruction — run localization to reconstruct
Log
Save which window?
Both windows have content — pick which to export.
Localizations
…more info…
- Filtering —
field op value, joined withand/or(e.g.intensity > 1000 and uncertainty < 20); Enter commits a clause, clauses stack cumulatively. Typeresetto clear all of them. Start typing a field name for autocomplete suggestions (↑/↓ to move, Enter/Tab to accept) — covers both the current table's columns and thetempClusteringXY/tempClusteringZfields below. - sigma_xy / sigma_z —
sigma_xyis the fitted PSF width (average of σx/σy for astigmatic 3D).sigma_z, shown for MLE 3D results, is an approximate z-precision: the fit's own uncertainty on σx/σy propagated through the calibration curve's local slope at the found z — not a full joint fit (z isn't a parameter of the pixel-level fit, σx/σy are), but the best estimate available from what the fit reports. Not available for Phasor 3D. - Temporal clustering —
tempClusteringXY < 10(nm) merges the same molecule's detections across consecutive frames into one higher-precision "event" (photon-weighted position, summed intensity, properly combined uncertainty);tempClusteringZ < valueadds the same in z. One threshold per axis (a new value replaces the old). Once active, counts switch from localizations to events and the table gains an nmerged column. A gap frame always breaks the chain for now (planned:tempClusteringMemory). FRC resolution can get coarser after clustering, not finer — counter-intuitive, but FRC measures achieved image resolution, which depends on point density as well as per-point precision; merging improves the latter but sharply reduces the former (far fewer points), and if that density loss outweighs the precision gain, FRC's number gets worse even though individual events really are more precise. Check the uncertainty column's histogram (not FRC) to see the precision improvement in isolation. - Plot histogram of — draws the chosen column's distribution in the raw (left) panel, over whatever rows currently pass the filters above; the crop tool and typed filters affect it the same way.
Track data
webSMLM — how it works
A proof-of-concept single-molecule localization pipeline that runs entirely in your browser. Nothing is uploaded.
This is a deliberately short in-app guide. For the full reference — every button, control, parameter and module, plus the settings/calibration/CSV file formats and the headless API — see the webSMLM documentation on Read the Docs.
Guided workflow
- Get data. Click Load movie/data for a real
.tif/.tiffstack (or a native Nikon.nd2file — the same button also accepts a CSV previously written by Save data), or Simulate movie for a test dataset (open Simulation settings to adjust frames, blink density and photons). - Set detection & fit. Pick a Fit method first — the relevant parameters follow it. Phasor is the speed option (no iteration); Gaussian (LS) and Gaussian (MLE) trade speed for precision, with MLE reporting a proper per-localization CRLB uncertainty and covering spherical, elliptical, 3D-astigmatic and rotated-elliptical (sSMLM) variants — see the Fit method popup and the full docs for when to use which. Adjust Threshold (k·σ_noise) if too many/few spots are boxed in the raw view, and set σ_PSF to match your spot size.
- Localize. The raw view refreshes live with detected ROIs (green boxes) and accepted localizations as the run progresses; the right panel builds the super-resolution image.
- Explore the result. Set Pixel size (nm) (e.g. 100 or 160) — it defines the physical scale for the scale bar and export. Change Magnification/σ_render to re-render instantly (no refit). Scroll or pinch to zoom, drag to pan, double-click/tap to reset.
- Optional extras. Each remaining sidebar section is a self-contained add-on, opened as needed: Gain & offset estimation calibrates real camera photon units; 3D calibration fits an astigmatic width-vs-z curve for 3D localization; Drift correction removes sample drift (AIM); Localization precision reports NeNA/FRC; Spectral SMLM analysis pairs 0th/1st-order localizations from a diffraction grating; Single particle tracking links per-frame localizations into trajectories and estimates diffusion coefficients.
Keyboard hotkeys
Hold Alt (the same key macOS labels Option/⌥) to show numbered hints over the action buttons above — tap a digit to click one. Add Shift and the same digits instead open or close one of the sidebar sections below, scrolling to it and focusing its header so the next Tab press lands straight on its first field.
Acknowledgements
- Koen J. A. Martens contributed the uniform box-filter detection method (Huang et al. 2011), the Real-time update live-preview toggle, the wheel-zoom / ctrl+wheel-scrub raw-panel scroll rework, and sizing the green ROI box from the actual fit radius (PR #4, v0.9.1).
- Koen J. A. Martens also contributed Gain & offset estimation (the PCFO photon-conversion-factor method) and the Simulation settings module's physically-motivated emitter-lifetime and camera forward models (PR #5, v0.10.2).
- Aun Al Atiat contributed the Read the Docs manual build (Sphinx + MyST, splitting
docs/DOCUMENTATION.mdinto a multi-page reference site) (PR #6, v0.11.4). - Hazen Babcock contributed a separable-Fisher-build fast path for the spherical and axis-aligned-elliptical Gaussian MLE fitters — hoisting per-axis erf/exp terms instead of recomputing them per pixel, ~1.7–1.9× faster fitting with bit-identical output (PR #7, v0.11.10).
License & author
webSMLM © 2026 Hohlbein et al., licensed under the
MIT License.
Versions 0.1.0–0.11.2 remain available under their original CC BY 4.0 terms; this
license applies going forward. Bundled decoders retain their own licenses: UTIF.js and pako
are MIT-licensed.