On-the-Fly Cryo-Electron Tomography Automation
A Python-based graphical interface for automating cryo-electron tomography (cryo-ET) data acquisition and processing workflows. Developed at Harvard Medical School to streamline multi-stage refinement pipelines for structural biology research.
Cryo-ET generates nanometer-resolution 3D reconstructions of biological specimens but requires complex multi-stage refinement including drift correction, motion correction, and tilt-series alignment. This GUI automates key steps in the workflow:
- Microscope configuration — Set acquisition parameters
- Motion correction — Automated drift correction for tilt series
- Tilt-series alignment — Integration with IMOD/AreTomo
- Particle picking — crYOLO integration for automated detection
- RELION preprocessing — Prepare data for subtomogram averaging
- Real-time monitoring of data acquisition
- Automated pipeline execution with configurable parameters
- Integration with standard cryo-ET software (RELION, crYOLO, IMOD)
- Batch processing for high-throughput data collection
- Logging and progress tracking
- Python ≥ 3.8
- RELION (for subtomogram averaging)
- IMOD or AreTomo (for alignment)
git clone https://github.com/abdullah-al-bashit/OTF_tomography.git
cd OTF_tomography
# Install Python dependencies
pip install numpy scipy tkinter
# Ensure external tools are in PATH
which relion_refine # RELION
which cryolo_predict.py # crYOLOpython OTF-tomo.py| Module | Description |
|---|---|
OTF-tomo.py |
Main GUI application |
backend_master.py |
Pipeline orchestration and job management |
alignment.py |
Tilt-series alignment routines |
prep_functions.py |
Data preprocessing utilities |
run_cryolo.py |
crYOLO particle picking integration |
rln_helpers.py |
RELION helper functions |
transfer_data.py |
Data transfer and organization |
check_run_pipeline.py |
Pipeline status monitoring |
Configure paths and parameters in the GUI or edit the configuration section in backend_master.py:
# Example configuration
DATA_DIR = "/path/to/raw/data"
OUTPUT_DIR = "/path/to/processed"
RELION_PATH = "/software/relion/bin"OTF_tomography/
├── OTF-tomo.py # Main GUI application
├── OTF-tomo.png # GUI screenshot
├── backend_master.py # Pipeline orchestration
├── alignment.py # Alignment routines
├── prep_functions.py # Preprocessing utilities
├── run_cryolo.py # crYOLO integration
├── rln_helpers.py # RELION helpers
├── transfer_data.py # Data transfer
├── check_run_pipeline.py # Pipeline monitoring
├── test.py # Test suite
├── program_commands.log # Command logging
└── README.md
This tool has been used for cryo-ET data collection and structure determination by researchers at:
- Boston Children's Hospital
- Dana-Farber Cancer Institute
- Massachusetts General Hospital
- Harvard Medical School
Abdullah Al Bashit, PhD
Developed as a Visiting Researcher at Harvard Medical School
This project is licensed under the MIT License - see LICENSE for details.
- Harvard Medical School Cryo-ET Facility
- Boston-area structural biology community
