Skip to content

feat: diagnostic and analysis scripts#100

Open
FIrgolitsch wants to merge 3 commits intopr-a-build-toolingfrom
pr-g-diagnostics-analysis
Open

feat: diagnostic and analysis scripts#100
FIrgolitsch wants to merge 3 commits intopr-a-build-toolingfrom
pr-g-diagnostics-analysis

Conversation

@FIrgolitsch
Copy link
Copy Markdown
Contributor

@FIrgolitsch FIrgolitsch commented Apr 1, 2026

PR #100 — Diagnostic & Analysis Scripts

Collection of per-stage diagnostics and an end-of-pipeline HTML report generator. Two commits: the initial set and a refinement that adds stitch-affine analysis and significantly expands slice-quality assessment and the report generator.

New scripts

  • linum_diagnose_pipeline.py — runs lightweight checks across an entire pipeline output tree (presence of expected files, schema of slice_config.csv, pyramid integrity)
  • linum_diagnose_reconstruction.py — reconstruction-stage diagnostics (shift magnitudes, outlier detection, motor vs. registered drift)
  • linum_generate_pipeline_report.py — HTML report aggregating all diagnostics, interpolation fragments, and slice-quality scores; the final artefact of the Nextflow pipeline
  • linum_assess_slice_quality.py — per-slice quality assessment (SSIM vs. neighbours, edge score, foreground fraction); feeds auto-exclude in PR feat: motor stacking, auto-exclude, refined stitching #98 and interpolation gates in PR feat: slice interpolation for missing sections (z-morph) #87
  • linum_analyze_shifts.py — statistics over pairwise shifts
  • linum_analyze_registration_transforms.py — analysis of registration affine transforms
  • linum_analyze_acquisition_rotation.py — acquisition-rotation analysis
  • linum_analyze_tile_dilation.py — per-tile dilation / deformation analysis
  • linum_aggregate_dilation_analysis.py — aggregates per-tile dilation into per-slice summaries
  • linum_analyze_stitch_affine.py — analyse and visualise the affine transforms produced by refined 3D stitching (scale / shear / rotation per slice)
  • linum_suggest_params.py — parameter suggestion tool based on observed per-stage metrics

Commits

  1. feat: diagnostic and analysis scripts — initial 10 scripts
  2. feat(diag): add stitch-affine analyzer and refine diagnostics — adds linum_analyze_stitch_affine.py, substantially expands linum_assess_slice_quality.py and linum_generate_pipeline_report.py, tightens linum_diagnose_pipeline.py

Dependencies

@FIrgolitsch FIrgolitsch force-pushed the pr-g-diagnostics-analysis branch 3 times, most recently from d66a2b6 to d10b832 Compare April 17, 2026 22:15
@FIrgolitsch FIrgolitsch changed the base branch from main to pr-c-utility-preprocessing April 17, 2026 22:22
@FIrgolitsch FIrgolitsch force-pushed the pr-g-diagnostics-analysis branch from d10b832 to 5583376 Compare April 23, 2026 19:43
@FIrgolitsch FIrgolitsch force-pushed the pr-c-utility-preprocessing branch from cb7cf4c to 68783a7 Compare April 23, 2026 19:43
@FIrgolitsch FIrgolitsch changed the base branch from pr-c-utility-preprocessing to pr-a-build-tooling April 23, 2026 19:57
@FIrgolitsch FIrgolitsch force-pushed the pr-g-diagnostics-analysis branch from 5583376 to 8c75e82 Compare April 23, 2026 21:09
@FIrgolitsch FIrgolitsch force-pushed the pr-a-build-tooling branch 2 times, most recently from 82b44be to ce8e35d Compare April 23, 2026 21:23
@FIrgolitsch FIrgolitsch force-pushed the pr-g-diagnostics-analysis branch from 8c75e82 to 52ebb45 Compare April 23, 2026 21:23
@FIrgolitsch FIrgolitsch force-pushed the pr-g-diagnostics-analysis branch from 52ebb45 to 53772da Compare April 23, 2026 21:28
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant