VoxelOps Documentation — VoxelOps 2.0.0 documentation

# VoxelOps Documentation

Clean, simple neuroimaging pipeline automation for brain banks.

VoxelOps wraps Docker-based neuroimaging tools into clean Python functions that return plain dicts – ready for your database, your logs, and your peace of mind.

    from voxelops import run_qsiprep, QSIPrepInputs

    result = run_qsiprep(
        QSIPrepInputs(bids_dir="/data/bids", participant="01"),
        nprocs=16,
    )

    print(result["duration_human"])   # "1:30:00"
    print(result["command"])          # exact Docker command for reproducibility

## Key Features

- Simple functions – `run_*()` functions that return dicts, no classes or inheritance

- Typed schemas – dataclass inputs, outputs, and defaults for every procedure

- Reproducibility – the exact Docker command is stored in every execution record

- Database-ready – results are plain dicts, trivial to persist anywhere

- Brain bank defaults – define standard parameters once, reuse everywhere

## Available Procedures

Procedure | Purpose | Function | Execution
--- | --- | --- | ---
HeudiConv | DICOM to BIDS conversion | `run_heudiconv()` | Docker
QSIPrep | Diffusion MRI preprocessing | `run_qsiprep()` | Docker
QSIRecon | Diffusion reconstruction & connectivity | `run_qsirecon()` | Docker
QSIParc | Parcellation via `parcellate` | `run_qsiparc()` | Python (direct)

## Installation

    pip install voxelops

Requirements: Python >= 3.8, Docker installed and accessible.

Contents

- Getting Started
  - Installation
  - Running Your First Pipeline (QSIPrep Example)
  - Next Steps
- Existing Workflows
  - DICOM to BIDS Conversion (Heudiconv)
  - Diffusion MRI Preprocessing (QSIPrep)
  - Diffusion Reconstruction & Connectivity (QSIRecon)
  - Parcellation (QSIParc)
- API Reference
  - voxelops package
- Tutorials
  - Current Examples
- Contributing to VoxelOps
  - What is a Runner?
  - Step-by-Step Guide to Adding a New Runner
  - Final Words

# Indices and tables

- Index

- Module Index

- Search Page