Skip to content

Add pipeline diagnostics, registration analysis, and quality reporting scripts#91

Closed
FIrgolitsch wants to merge 1 commit intomainfrom
pr-7-diagnostics-and-analysis
Closed

Add pipeline diagnostics, registration analysis, and quality reporting scripts#91
FIrgolitsch wants to merge 1 commit intomainfrom
pr-7-diagnostics-and-analysis

Conversation

@FIrgolitsch
Copy link
Copy Markdown
Contributor

Summary

A collection of standalone scripts for inspecting, diagnosing, and reporting on any stage of the reconstruction pipeline. None of these scripts are required for the core pipeline — they are investigative and QC tools.

Diagnostics

  • linum_diagnose_pipeline.py (~1200 lines) — checks directory layout, file integrity, and common issues across the full pipeline
  • linum_diagnose_reconstruction.py — targeted reconstruction diagnostics

Quality Assessment

  • linum_assess_slice_quality.py — CPU sharpness/contrast/SNR per slice
  • linum_assess_slice_quality_gpu.py — GPU-accelerated version

Analysis

  • linum_analyze_acquisition_rotation.py — estimates acquisition rotation from metadata
  • linum_analyze_registration_transforms.py — inspects estimated transforms
  • linum_analyze_shifts.py — shift distribution analysis and visualisation
  • linum_analyze_tile_dilation.py / linum_aggregate_dilation_analysis.py — tile dilation and expansion analysis across subjects

Reporting

  • linum_generate_pipeline_report.py (~1700 lines) — generates HTML/JSON quality reports from collected pipeline metrics
  • linum_generate_mosaic_aips.py — batch AIP generation for mosaic directories

Utilities

  • linum_compare_stitching.py — side-by-side stitching quality comparison
  • linum_normalize_z_intensity.py — Z-direction intensity normalisation
  • linum_extract_pyramid_levels.py — extract specific OME-Zarr pyramid levels
  • linum_screenshot_omezarr_annotated.py — annotated screenshot generation
  • linum_aip_png.py — quick-export AIP to PNG
  • linum_clean_raw_data.py — raw data directory cleanup and reorganisation
  • linum_suggest_params.py — automated parameter suggestions from data characteristics

Dependencies

Depends on PR #85 (thread config module) and PR #86 (utils/metrics.py).


Merge order: Merge after PR #85 and PR #86.

Adds pipeline diagnostics (linum_diagnose_pipeline.py,
linum_diagnose_reconstruction.py), HTML/JSON quality report generation
(linum_generate_pipeline_report.py), slice quality assessment
(CPU + GPU), shift and acquisition analysis scripts, tile dilation
analysis, mosaic AIP generation, intensity normalization utilities,
and linum_suggest_params.py for automated parameter recommendation.
@FIrgolitsch
Copy link
Copy Markdown
Contributor Author

Closing in favour of #100 (recreated with squashed commits as part of the PR split plan refresh).

@FIrgolitsch FIrgolitsch closed this Apr 1, 2026
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