ENH: Upstream ResampleSeries resampling engine from fMRIPrep

Aperta
#294 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
35/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Ferma
Stack tecnologico
python
Ambito
data

Direzione di ricerca

Inizia leggendo fmriprep/interfaces/resampling.py e fmriprep/utils/asynctools.py, concentrandoti su ResampleSeries, resample_image, resample_vol, resample_series e worker. Determina come questi componenti dovrebbero essere condivisi in NiTransforms; il lavoro è completato quando l’interfaccia, le funzioni e l’utilità elencate sono state portate upstream per essere riutilizzate da fMRIPrep, dMRIPrep e NiBabies.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Summary

fMRIPrep contains the core one-shot resampling engine for EPI time series in fmriprep/interfaces/resampling.py. This is the most architecturally significant piece of fMRIPrep code that should be shared across NiPreps.

ResampleSeries interface + resample_image / resample_vol / resample_series functions

The core one-shot resampling engine that combines:

  • Per-volume HMC transform application (VOX2VOX)
  • Fieldmap-based coordinate displacement with PE direction
  • Jacobian intensity correction
  • Async concurrent per-volume resampling

The modality-agnostic core (resample_vol, async infrastructure) can serve as the shared resampling engine for fMRIPrep, dMRIPrep, and NiBabies.

Supporting utility: asynctools.worker (fmriprep/utils/asynctools.py)

Async semaphore-gated worker function for concurrent resampling.

Code to upstream

  • ResampleSeries Nipype interface
  • resample_image, resample_vol, resample_series functions
  • asynctools.worker utility

Rationale

  • dMRIPrep needs essentially identical one-shot resampling (with DWI-specific adaptations)
  • The core resample_vol function is modality-agnostic
  • NiTransforms is the natural home for the reference resampling implementation
  • This would become the shared resampling engine for the entire NiPreps ecosystem

Priority

HIGH — cornerstone of the transform stage, critical for dMRIPrep.

Lingua principale
Python
Stelle
36
Fork
18
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di nipy/nitransforms

Tutte le issue di nipy/nitransforms

Issue simili

Altre issue su Python

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.