Skip to content

Octopi 🐙🐙🐙

Object deteCTion Of ProteIns. A deep learning framework for automated 3D particle picking in cryo-electron tomography (cryo-ET).

Octopi


Why OCTOPI?

  • Built for cryo-ET

    3D U-Net models designed specifically for the challenges of tomographic data — missing wedge, low SNR, and anisotropic resolution.

  • Autonomous architecture search

    Bayesian optimization via Optuna finds the best model architecture for your data — no manual hyperparameter tuning required.

  • Storage-agnostic data layer

    Built on CoPick — seamlessly reads tomograms and writes picks from local disk, S3, or any remote store.

  • HPC-ready

    Submit training and architecture search jobs directly to SLURM clusters. Multi-GPU inference included out of the box.


Tutorials

CLI

  • Import Data

    Set up a CoPick project and import your tomograms and initial picks.

    Import data

  • Pick Particles

    Generate initial particle picks using the interactive GUI or existing pick files.

    Pick particles

  • Train Models

    Train a 3D U-Net or run autonomous architecture search with model-explore.

    Train

  • Inference

    Segment tomograms, localize particles, and evaluate against ground truth.

    Run inference

Python API

  • API Overview

    Introduction to driving octopi programmatically from Python.

    Read more

  • Quick Start

    End-to-end particle picking in a Jupyter notebook.

    Get started

  • Training Guide

    Customize training loops, loss functions, and data augmentation via the API.

    Customize

  • Adding New Models

    Register new MONAI architectures in the octopi model registry.

    Extend


Getting Help

Open an issue on our GitHub repository.