Zebrafish embryogenesis, histone-labelled nuclei: 253-timepoint light-sheet timelapse as Gaussian splats (with a lighter 51-timepoint fit)

Read full text
Authors: Merlin Lange, Loic A. Royer
Cited by: 2

Abstract

A whole zebrafish (Danio rerio) embryo imaged through early development on a SiMView-type multi-view light-sheet microscope, with nuclei labelled by a histone H2A variant fusion, fitted to 3D Gaussian splats per timepoint and merged into one streamable dataset for Luxar. Acquisition 253 timepoints; each volume 407 x 2048 x 2048 voxels, multi-view fused and deconvolved. Voxels are anisotropic along the axial direction by a factor of four, and the published splats carry that correction already, so the embryo has its true proportions with no further scaling. Data: Royer lab, Chan Zuckerberg Biohub San Francisco (Zebrahub). What is in this record Two fits of the same acquisition are included. Neither carries substitutive detail levels any more: both hold their full-resolution splats with a progressive (streaming) ladder, so a viewer paints a coarse pass immediately and refines it as the rest arrives. The longer fit is additionally tiled in space, which lets a viewer fetch tiles independently. 51 timepoints, about 1.1 GB, as a single flat node. It holds 121,163,285 splats, roughly 2.38 million per timepoint, with a 4-rung progressive ladder for fast first paint. The substitutive levels the earlier build carried were removed: only the resident timepoint is ever committed, so coarser whole-object levels were never selected and cost 40% of the download for nothing. This is the lighter download and the one the Luxar demo fetches by default. 253 timepoints, the complete acquisition, about 5.9 GB, in 44 spatial tiles, each with its own progressive ladder. It holds 602,580,152 splats, roughly 2.38 million per timepoint. The four substitutive levels an earlier build carried (149.4M, 37.0M and 9.2M splats above the finest) were removed for the same reason as in the shorter fit, taking the download from 9.3 GB to 5.9 GB with the full-resolution content unchanged splat for splat. The shorter fit covers every fifth timepoint of the same acquisition, frames 0, 5, ... 250, so it follows the whole developmental period at one fifth of the temporal sampling. Its time axis is renumbered 0 to 50, while the full fit keeps the acquisition numbering 0 to 252, so frame 7 of the short fit corresponds to frame 35 of the long one. The shorter fit is a strided slice of the longer one rather than an independent fit, so on the frames they share the two agree splat for splat. An earlier pair of independent fits did differ, by about 2.50 million against 2.38 million splats per timepoint at the finest level; slicing also puts the shorter fit's time axis back on a regular grid, which the encoder stores exactly. from luxar.demos import ensure_dataset ensure_dataset("h2afva") # 51 timepoints (default) ensure_dataset("h2afva", variant="253tp") # full timelapse How the splats were produced Splat count was calibrated by Noise2Self blind-spot cross-validation (luxar gsplat cal) rather than picked by eye. That estimate is computed over a five percent mask of held-out voxels and is a guide rather than a verdict: on other datasets in this collection it has disagreed with a direct measurement of the finished fit in both directions, so a calibrated count is worth confirming against the reconstruction itself. Each timepoint was then fitted on a GPU with content-adaptive tiling, which places more splats where the volume carries more structure (luxar gsplat fit), and the merged result was given its per-tile detail ladders (luxar gsplat lod). The density that results at the finest level is about 2.38 million splats per timepoint, listed exactly above. Both files are Luxar gsplat format 3.4. These are lossy representations meant for visualisation and interactive exploration, not a replacement for the source imagery in quantitative work. How to use these files Each file is a .gsplats.zarr.zip archive that the Luxar demo suite fetches on first run and caches under ~/.cache/luxar/ /. To fetch one directly: from luxar.demos import ensure_dataset paths = ensure_dataset("h2afva") # downloads, verifies, returns paths To open one in the viewer without writing code: luxar gsplat view h2afva_51tp.gsplats.zarr.zip luxar demo # browse every demo that uses these files Every file is pinned by SHA-256 in data_manifest.json, and the fetch helper verifies the checksum before use; a mismatched download is quarantined rather than returned. Contents file size elements level of detail h2afva_253tp.gsplats.zarr.zip 5.9 GB 602,580,152 44 parts, progressive ladders h2afva_51tp.gsplats.zarr.zip 1.1 GB 121,163,285 flat, 4 ladder rungs Every figure above was measured from the file this record holds. “Elements” is what a viewer draws at full detail: splats summed over the finest level of each part, or rows for a coordinate table. h2afva_51tp.gsplats.zarr.zip (1.1 GB, cc-by-4.0). Source: h2afva zebrafish histone light-sheet timelapse, 51 of 253 timepoints (Royer lab). Attribution: Royer lab, Chan Zuckerberg Biohub San Francisco. Acquired for Zebrahub: Lange, M. et al. A multimodal zebrafish developmental atlas reveals the state-transition dynamics of late-vertebrate pluripotent axial progenitors. Cell 187, 6742-6759.e17 (2024). CC BY 4.0. h2afva_253tp.gsplats.zarr.zip (5.9 GB, cc-by-4.0). Source: h2afva zebrafish histone light-sheet timelapse, all 253 timepoints (Royer lab). Attribution: Royer lab, Chan Zuckerberg Biohub San Francisco. Acquired for Zebrahub: Lange, M. et al. A multimodal zebrafish developmental atlas reveals the state-transition dynamics of late-vertebrate pluripotent axial progenitors. Cell 187, 6742-6759.e17 (2024). CC BY 4.0.

Publication details

Journal / source
Zenodo (CERN European Organization for Nuclear Research)
Publication date
2 September 2026
Language
EN
Document type
Dataset