longitudinal/scripts
Furen Xiao 2453fb48ba feat(dataset): add row-level exclusion curation for labeled volumes
Introduce src/exclusions.py (rules: total TV > 1e6 mm3, single target
< 100 mm3, non-brain NTUH keys) and scripts/make_tv_slices.py, a
first-stage curation script that classifies every labeled row right
after the source fetch and writes TV-slice QA figures to
data/tv_slices/{inclusion,exclusion}/.

05_build_splits.py re-applies the same rules after split assignment:
kept rows retain their split, excluded subjects still count in the
subject-level shuffle boundaries, and the audit trail is written to
data/manifests/excluded.jsonl. Label stats run in a
ProcessPoolExecutor (32 workers).

Move proc_row into src/common.py and add labeled_source_rows() so the
curation stage and the split builder share one processed-row view.

Document the 143-row exclusion audit and the interim 10-epoch
benchmark results in BENCHMARKING.md; update the README data layout
and script tables.
2026-10-05 16:53:56 +08:00
..
01_build_ntuh_manifest.py feat: refactor path handling and add configuration for external data directories 2026-09-27 10:17:33 +08:00
02_build_m6_dataset.py feat(registration): implement best-of-ANTs registration for CT to T1c alignment and enhance benchmarking scripts 2026-10-04 22:22:11 +08:00
03_scan_lee_t1c.py fix(t1c): exclude TOF MRA and subtraction series 2026-09-27 18:45:09 +08:00
04_reconstruct_lee.py fix(lee): exclude SSFP sequences and enhance T1c exclusion notes 2026-09-27 15:29:02 +08:00
05_build_splits.py feat(dataset): add row-level exclusion curation for labeled volumes 2026-10-05 16:53:56 +08:00
06_pseudo_label.py feat: refactor path handling and add configuration for external data directories 2026-09-27 10:17:33 +08:00
07_train.py feat: initial project structure 2026-09-25 16:00:37 +08:00
08_eval.py feat: initial project structure 2026-09-25 16:00:37 +08:00
09_run_iterative.py feat: refactor path handling and add configuration for external data directories 2026-09-27 10:17:33 +08:00
bench_registration.py Add visual QA script for TV label warping and registration methods 2026-10-04 08:32:56 +08:00
benchmark_pipelines.py feat(registration): implement best-of-ANTs registration for CT to T1c alignment and enhance benchmarking scripts 2026-10-04 22:22:11 +08:00
investigate_synthmorph.py Refactor code structure for improved readability and maintainability 2026-10-02 19:00:07 +08:00
investigate_synthmorph_mm.py Refactor code structure for improved readability and maintainability 2026-10-02 19:00:07 +08:00
make_screenshots.py feat: refactor path handling and add configuration for external data directories 2026-09-27 10:17:33 +08:00
make_tv_slices.py feat(dataset): add row-level exclusion curation for labeled volumes 2026-10-05 16:53:56 +08:00
preprocess.py feat(registration): align CT to T1c and add benchmarking 2026-09-28 16:20:30 +08:00
qa_label_interpolation.py fix(label_qa): resample TV warps to the 0.5 mm T1c grid 2026-10-04 14:59:39 +08:00
scan_procs.py feat: refactor path handling and add configuration for external data directories 2026-09-27 10:17:33 +08:00
test_dataloader.py feat: refactor path handling and add configuration for external data directories 2026-09-27 10:17:33 +08:00