Sandbox — LSD is in active testing. All systems operational·payments are test-mode (no real charges).
Overview Use Cases News Docs Tool Store Support Community Get LSD
Use cases/ Medical Imaging/ QA-ing an MRI research cohort before analysis
Cohort QA board — 400 studies with pass/fail badges and flagged checks replace with screenshot · 1600 × 900

QA-ing an MRI research cohort before analysis

Point LSD at a cohort of 400 DICOM studies and it indexes every one by subject and sequence. Harmonize the tag soup onto a single schema, validate orientation and spacing, and flag motion artifacts — all previewing across the whole cohort. Deliver a per-study pass/fail table and a clean exclusion list your analysis can read directly.

Intermediate ⏱ 30 min mridicomcohortqaharmonization

The study nobody checked#

Every imaging cohort has the one study acquired sideways, or on the day the scanner sat at 1.5 T instead of 3, or with a subject who couldn't hold still. Find it after analysis and you re-run everything; find it in the published results and you retract. The pipeline here is the screen that runs before a single study reaches the stats, turning a folder of 400 into a table you can defend.

Rules the whole team agrees on once#

The pass/fail lines aren't buried in someone's notebook. Protocol orientation, spacing tolerance, the motion threshold, the list of required sequences — they live on the canvas, argued about once and applied identically to every study. When a reviewer asks why study 214 was excluded, the answer is a row with its failing checks attached, not a memory.

It grows with the cohort#

Cohorts arrive in waves. The next batch of studies drops into the same folder, the canvas picks them up on the next run, and both the QA table and the exclusion list grow to match — no new scripts, no edits. Because every intermediate is cached, re-screening the whole cohort after a rule change costs seconds, and the harmonized metadata is right there to reuse when analysis finally starts.

Step by step

How it's built

  1. #047 · Load 01

    Load the cohort

    Drop the cohort root — 400 studies, mixed scanners and sites — onto the canvas. LSD walks the tree and groups every series into one @load node keyed by study and subject ID, reading tags without decoding pixel data. Four hundred studies index in under a minute, and the preview table lists each one with its sequence, field strength, and acquisition date.

    Cohort tree indexed into a study table with sequence metadata replace with screenshot · 1200 × 750
  2. 02

    Harmonize the metadata

    Add a @shape node to map the messy tag soup onto one schema. Site A writes "T1_MPRAGE", site B writes "t1w" — a lookup table folds both into a canonical sequence name, and units normalize as you watch the preview column settle. The harmonized table caches, so the checks downstream stay instant across all 400 studies.

    Raw tags folded into a canonical schema in the preview replace with screenshot · 1200 × 750
  3. #048 · Shape 03

    Check orientation and spacing

    Chain a validation @shape node that reads orientation, slice spacing, and matrix size off every series. It flags the study that came in sagittal when the protocol says axial, and the one resampled to 2 mm when the cohort standard is 1 mm. Flags paint straight onto the study table as red and amber cells — no slice-by-slice hunting.

    Study table with orientation and spacing violations flagged replace with screenshot · 1200 × 750
  4. #049 · Shape 04

    Flag motion artifacts

    Add a motion-artifact node that scores each volume for ghosting and ringing. Borderline studies surface for a quick look in the viewer; the obviously corrupted ones light up red on their own. Scrub any flagged study and the offending slices are already centered for you.

    Motion scores with corrupted slices centered in the viewer replace with screenshot · 1200 × 750
  5. #050 · Deliver 05

    Build the pass/fail table

    Finish the shaping with a @deliver report node and set the cohort rules — protocol orientation, spacing within tolerance, motion score under threshold, required sequences present. Every study earns a pass/fail badge with its failing checks listed as evidence. The table sorts failures to the top so you see the damage first.

    Per-study pass/fail table with failing checks listed replace with screenshot · 1200 × 750
  6. 06

    Export the exclusion list

    Export two files from the @deliver node — the full per-study QA table as CSV, and a clean exclusion list of the study IDs that failed, ready to feed straight into your analysis script. Re-run when the next batch lands in the folder and both files grow to match, no edits.

    QA table and exclusion-list CSV ready to export replace with screenshot · 1200 × 750
The pipeline

Every step used, at a glance

Load

MRI cohort studies

Index hundreds of DICOM studies across scanners and sites, reading tags without decoding pixels.

DICOM
Shape

Harmonize & check

Map tags onto one schema, then validate orientation, spacing, and motion artifacts per study.

Deliver

Pass/fail QA table

Score every study against the cohort rules and export the table plus a clean exclusion list.

CSV
400 studies
screened in one pipeline run
1 schema
harmonized across every site & scanner
Exclusion list
exported straight into analysis

More use cases