Commit Graph
2 Commits
Author SHA1 Message Date
leonarski_fandClaude Opus 4.8 fd7e2ae6f9 image_preprocessing: treat the type-max marker as invalid for unsigned pixels
The error/invalid pixel marker (the pixel type's extreme value, e.g. 0xFFFFFFFF for
EIGER uint32) was only mapped to the internal error value for SIGNED types - the check
was gated on std::is_signed<T>. For unsigned EIGER data a 0xFFFFFFFF pixel therefore
fell through to the saturation test and, exceeding the (HDF5) saturation_value, was
silently classified as saturated rather than invalid.

Both are excluded from integration, so results are unchanged where such pixels are also
in the static pixel mask (as in the JUNGFRAU test data - Thau_9 and lyso are bit-for-bit
the same), but the classification/statistics were wrong and a stray 0xFFFFFFFF outside
the static mask would be mis-accounted.

Test the error marker before saturation and drop the is_signed gate in both the CPU and
GPU preprocessors: the HDF5 saturation_value stays the saturation threshold, the pixel
type's maximum is the invalid marker (priority masked > error > saturated).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-07-10 14:17:56 +02:00
leonarski_f c981e1b91c v1.0.0-rc.137 (#46)
Build Packages / build:rpm (rocky8_nocuda) (push) Successful in 10m7s
Build Packages / build:rpm (ubuntu2204_nocuda) (push) Successful in 10m35s
Build Packages / build:rpm (rocky9_nocuda) (push) Successful in 11m8s
Build Packages / build:rpm (ubuntu2404_nocuda) (push) Successful in 9m24s
Build Packages / build:rpm (rocky8_sls9) (push) Successful in 11m29s
Build Packages / build:rpm (rocky8) (push) Successful in 10m27s
Build Packages / build:rpm (rocky9_sls9) (push) Successful in 11m41s
Build Packages / build:rpm (ubuntu2204) (push) Successful in 11m1s
Build Packages / Generate python client (push) Successful in 45s
Build Packages / Unit tests (push) Has been skipped
Build Packages / Create release (push) Has been skipped
Build Packages / build:rpm (rocky9) (push) Successful in 12m48s
Build Packages / Build documentation (push) Successful in 1m3s
Build Packages / build:rpm (ubuntu2404) (push) Successful in 12m10s
Build Packages / XDS test (durin plugin) (push) Successful in 8m59s
Build Packages / XDS test (neggia plugin) (push) Successful in 7m32s
Build Packages / XDS test (JFJoch plugin) (push) Successful in 8m39s
Build Packages / DIALS test (push) Successful in 13m13s
This is an UNSTABLE release. The release has significant modifications and bug fixes, if things go wrong, it is better to revert to 1.0.0-rc.132.

* jfjoch_broker: Better track time for each operation in the processing stack
* jfjoch_broker: Rewrite preprocessing of diffraction images in the non-FPGA workflow to better use GPUs (work in progress)
* jfjoch_broker: Remove ROI calculation in the non-FPGA workflow (work in progress)
* jfjoch_viewer: Toolbar displays image number starting from 1 (instead of 0)

Reviewed-on: #46
2026-04-25 19:59:21 +02:00