Skip to main content

AtlasTrack

PyPI Python License

Register histological brain sections to a reference atlas, and map probe trajectories into atlas coordinates.

This is a desktop app for wet-lab neuroscientists: load histology slide images, place each section in the atlas, register the series automatically, click your probe tracks, and export coordinates or figures.

What it does

Given one or more slide images and a little guidance:

  1. Finds the sections in each slide and merges several slides into one coordinate space.
  2. Places each section at its front-to-back atlas level - by hand in a side-by-side matcher, or automatically with DeepSlice.
  3. Registers every section to the atlas: a regularized 2-D fit (elastix, with a bending-energy penalty and a tissue mask) plus a silhouette pre-align and an outer-contour snap. Damaged sections can be corrected by hand with a box transform or landmark points.
  4. Maps probe tracks you click into atlas coordinates, per shank and per channel; optionally refined from recorded LFP depth features.
  5. Exports per-channel CSV (CCF µm or Paxinos stereotaxic mm), an interactive 3-D HTML page, a HERBS .pkl, or your section series with atlas outlines.

Atlases come from BrainGlobe: Allen CCFv3, CCFv3-BBP Augmented, Chon/Kim Unified (Franklin-Paxinos names), and any other BrainGlobe id. All cover the same volume, so regions can be re-named from a different atlas without re-registering.

TUTORIAL.md walks through one slide start to finish.
MANUAL.md is the reference document.
Both are also available in the app under Help.

Install

From PyPI:

uv pip install "atlastrack[all]"    # recommended  (pip install also works)
atlastrack gui

The base install (atlastrack) is deliberately light. [all] adds three extras, each installable on its own:

Extra Adds Cost
elastix The regularized registration engine - recommended ~150 MB (ITK)
deepslice Automatic front-to-back placement ~1.65 GB (TensorFlow)
ephys The Ephys tab (Open Ephys / SpikeGLX / Intan) SpikeInterface

From source, for development:

git clone https://github.com/vncntprvst/AtlasTrack
cd AtlasTrack
uv pip install -e ".[all,dev]"

Quote the target and use no spaces between extras - zsh and PowerShell treat [...] as a glob, and a space splits the argument.

Commands

atlastrack gui        # the app
atlastrack version
atlastrack gl-info    # diagnose GPU/OpenGL if the window will not open
atlastrack split | register | export      # headless equivalents

histo2ccf still works as an alias for every command.

The window

The centre holds Project (your slide and the atlas overlay) and Help. On the left, the workflow in order: Histology → Atlas → Register → Probes → Ephys. On the right, 3D & Export. Menus: Project, Settings, Help.

Wheel zooms; Ctrl+wheel and Shift+wheel pan.

Layout

src/atlastrack/   io/ atlas/ sectioning/ landmarks/ registration/ probes/ viz/ gui/
tests/            pytest suite

Core packages are headless and unit-tested; only gui/ and viz/napari3d.py import napari/Qt, enforced by an import-linter contract. Coordinates are CCF (AP, ML, DV) in µm throughout. A project is one Pydantic model serialized to <slide>.atlastrack.json, with transform sidecars alongside.

Testing

uv pip install -e ".[all,dev]"
pytest -q          # GUI tests need a display
lint-imports       # the headless-core contract

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

atlastrack-0.7.2.tar.gz (616.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

atlastrack-0.7.2-py3-none-any.whl (428.2 kB view details)

Uploaded Python 3

File details

Details for the file atlastrack-0.7.2.tar.gz.

File metadata

  • Download URL: atlastrack-0.7.2.tar.gz
  • Upload date:
  • Size: 616.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.5

File hashes

Hashes for atlastrack-0.7.2.tar.gz
Algorithm Hash digest
SHA256 708fc9252a1a93e762c919924b7cae15e260e18367393a88c8dde0c3f36387de
MD5 4bef6ac10ca210afda9b4f1dcf772d67
BLAKE2b-256 21c0e0286f239f40f9f946ae533af4712aa0d1d0f5016e6ee9099771380b357a

See more details on using hashes here.

File details

Details for the file atlastrack-0.7.2-py3-none-any.whl.

File metadata

  • Download URL: atlastrack-0.7.2-py3-none-any.whl
  • Upload date:
  • Size: 428.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/7.0.0 CPython/3.13.5

File hashes

Hashes for atlastrack-0.7.2-py3-none-any.whl
Algorithm Hash digest
SHA256 0a6daeaf5c982acac4e22324fd2b84aca8077964f2221ccfdde3a4b715482d47
MD5 78433c8e7082f943f5aba0c700660d55
BLAKE2b-256 94d2a7032181b2a395277dc306fd507ff6f278c710bcf8e22228fa09209a6389

See more details on using hashes here.

Release history Release notifications | RSS feed

0.7.4

2 files

This release

0.7.2 This release

2 files

0.7.1

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page