Skip to content

v0.2.0

Choose a tag to compare

@astewartau astewartau released this 12 Mar 04:39
· 2 commits to main since this release

New Features

  • dicompare match CLI command — Find the best-matching schemas for input DICOM data. Searches a library of bundled or user-provided schemas and ranks each input acquisition by compliance score, mirroring the web interface's "Find best matches" workflow.
    • dicompare match /path/to/dicoms --library
    • dicompare match /path/to/dicoms --schemas /path/to/schemas/
    • Supports --top N to control how many matches to display and --report to save results as JSON.
  • Bundled schema library — Schemas are now packaged with dicompare and can be accessed via --library in the CLI or programmatically via load_all_bundled_schemas(), list_bundled_schemas(), etc. Includes: ABCD, HCP, UK Biobank, QSM Consensus Guidelines, ASL Clinical Guidelines, MS CMSC Guidelines, MY-RADS Myeloma, Generic Spine, and UMMS Ping.
  • --verbose / -v flag for dicompare check — By default, only failures and warnings are shown. Use --verbose to include passing checks.
  • Acquisition mapping confidence — The dicompare check command now displays a mapping table with cost scores and confidence levels (exact/high/medium/low), and shows unmapped reference acquisitions.
  • DiffusionGradientOrientation field — Added support for extracting diffusion gradient orientation data from DICOM headers.
  • Series-file mapping in web UI — The web interface now provides a seriesFileMapping linking series names to their source DICOM file paths.

Improvements

  • Redesigned check CLI output — Compliance results are grouped by acquisition with per-group summaries. Status labels ([PASS], [FAIL], [WARN], [N/A]) replace raw log output. Expected vs actual values are shown inline for failures.
  • CLI output uses print() instead of logging — User-facing output now goes to stdout (pipeable/redirectable) without INFO: prefixes. Logging is reserved for warnings and errors.
  • Improved QSM echo-time validation errors — Error messages now report the actual TE value and computed limits.
  • map_to_json_reference supports return_costs — Callers can now retrieve the assignment cost matrix alongside the mapping.

Cleanup

  • Removed dead code
  • Removed legacy schemas/ top-level directory (schemas moved into the package at dicompare/schemas/).
  • Removed unused test files