Version-1.28.0
Release Date : February 2026
Major Features
Add Intensities Single Experiment (AISE) – Major Overhaul
Complete rewrite with a new, workflow-oriented UI
Built-in workflow guide dialog to walk users through the alignment and summation process
Image alignment table (
ImageAlignmentTable) with columns for center, rotation, image difference, and transform status; misaligned rows highlighted in redAuto-detection of misaligned images with configurable distance and image-difference thresholds
Per-image transform flag: apply (or skip) affine correction to individual images before summation
Auto-rotation and auto-center modes; propagate global base correction to subsequent images
Global settings dialog for managing the reference (base) image center and rotation
Blank image support applied during summation; CSV output of per-image intensity statistics
Multiprocessing support for geometry calculations; start/stop toggle on the “Sum Images” button
Center overlay visualization in the image viewer
Add Intensities Multiple Experiments (AIME) – New Module
New window for combining images across multiple experiment directories
Cartesian row-mapping strategy groups images by frame index across experiments
Tab-based experiment management with per-tab table views
Base name input dialog for naming output files
Shared helper functions with AISE for geometry computation and image summation
Workflow guide dialog (shared with AISE) accessible via a “Workflow Guide” button; can be suppressed for future sessions
Equator Window – Refactored
EquatorImagenow accepts anImageDatacontainer instead of raw arrays, consolidating blank/mask application and center/rotation resolutionInpainting option added: fill invalid/masked pixels using pyFAI before processing
QF (Quadrant Fold) checkbox added to the right panel
Process pool now uses
spawncontext to avoid Qt fork-safety issues on LinuxImproved caching mechanism and preprocessing handling
Minimum window size set; various UI cleanups
Architecture
New
SettingsManagerutility: centralized, Qt-free manager forsettings/directory (manual geometry, auto-geometry cache)FileManagerextended withload_from_sources()andload_from_directories()for loading from multiple directories; common parent directory used asdir_pathCache file naming now uses relative paths; cache file version updated
v1.28.0-beta.6 Bug Fixes
X-Ray Viewer – inpainting: image was not redisplayed when inpainting was not applied; fixed to always display the current (possibly inpainted) image on load
X-Ray Viewer – playback: after “Play Current Folder” or “Play Current H5 File” completes, the viewer now returns to the image it started on
Projection Traces – calibration crash: fixed
KeyErrorwhensilverBorradiuskeys are missing from calibration settings duringlambda_sddcalculation
v1.28.0-beta.7 Improvements
AIME (Add Intensities Multiple Experiments): output base name dialog is shown before initializing the sum process pool—lighter path when the user cancels or changes their mind
AIME: default suggested output base name appends
_foldedwhen every selected source filename containsfoldedAIME: “Sum Images by Index” button state is reset correctly if the base name dialog is cancelled or the sum executor cannot be created
Other Improvements
ProjectionTracesGUI,QuadrantFoldingGUI,XRayViewerGUI: early return on invalid HDF5 frame range to prevent crashesProjectionTracesGUI,QuadrantFoldingGUI: folder selection button removed from image navigator (not currently used)ProcessingWorkspace: improved message box parent handling; display updates streamlinedStatus bar enhancements: cursor coordinates and radial distance (r_px) from center displayed in the status bar across all modules
Calibrated q-coordinates:
ProjectionTracesGUIandXRayViewerGUIstatus bar now shows qX, qY, qR (reciprocal-space coordinates) when calibration is available, replacing the deprecatedinverseNmFromCenterfunctionmacOS installer: macOS
.dmgbuilds restored and included in releases;multiprocessing.freeze_support()added for compatibility with frozen apps
.. note:: Version 1.28.0 is a major feature release. This version has been tested on Python 3.10 on Ubuntu 22.04.
Total Changes: ~130 commits since v1.27.5