Published October 30, 2025 | Version v3.9.0
Software Open

SIRF Synergistic Image Reconstruction Framework

  • 1. UK Research & Innovation
  • 2. University College London
  • 3. Physikalisch-Technische Bundesanstalt (PTB)
  • 4. King's College London
  • 5. Dalhousie University (Canada)
  • 6. Commonwealth Scientific and Industrial Research Organisation, and University of Queensland
  • 7. University College London, National Physics Laboratory
  • 8. National Physical Laboratory (UK)
  • 9. University of Bath

Description

Changes

  • Python interface

    • Performance of acquisitions and images data algebra improved, acquisitions algebra running up to 3 times faster and images algebra up to 15 times faster.

    • DataContainer.supports_array_view to test for zero-copy compatibility.

    • ImageData and AcquisitionData have .asarray() in Python via __array_interface__, following the same conventions as NumPy 2.x.

      By default, asarray() provides a "view" if possible (see supports_array_view) and falls back to a deep copy otherwise. Copy can be disabled or forced by setting the copy argument accordingly. (For NumPy 1.x, the copy argument is not supported and the behaviour is the same as the default in NumPy 2.x).<br> Note that with copy=False, modifying the returned NumPy array will modify the original SIRF data as well.

      asarray(copy=True) is equivalent to as_array(). The latter will be removed in a future version.

  • SIRF/STIR

    • ScatterEstimation has extra methods that allow setting masks for the tail-fitting.

    • ImageData has extra method to zoom image using information from a template image, zoom_image_as_template.

    • Error raised in AcquisitionSensitivityModel.[un]normalise methods applied to a read-only object.

    • SIRF interfaces (C++ and Python) for STIR Poisson noise generation utilities provided.

    • Python:

      • allow in-place call of ObjectiveFunction gradient in Python. Added unit test for new functionality in gradient and for the out parameter.
      • ImageData and AcquisitionDataInMemory have supports_array_view==True
  • SIRF/Gadgetron

    • ImageDataView and AcquisitionDataView classes implemented that encapsulate arrays of NumPy views of ISMRMRD_ImageData and ISMRMRD_AcquisitionData objects respectively, significantly accelerating the algebraic operations (up to a factor of about 10 for images).
  • SIRF/Registration

    • Nifty images have supports_array_view==True
  • CI and testing

    • made tests return value handling compatible with a future version of pytest.
    • added algebraic tests for STIR AcquisitionData subsets.

Notes

If you use this software, please cite it using the metadata from this file.

Files

SyneRBI/SIRF-v3.9.0.zip

Files (1.0 MB)

Name Size Download all
md5:eb9e4d2c4417e78d2e12127602ceafc5
1.0 MB Preview Download

Additional details

Related works

Is supplement to
Software: https://github.com/SyneRBI/SIRF/tree/v3.9.0 (URL)

Software