feat(lamni): skip opaque pixels in the smear min-projection
CI for csaxs_bec / test (push) Failing after 2m59s
CI for csaxs_bec / test (push) Failing after 2m59s
With the min-projection, the opaque sample holder rotating through the X-ray eye view blackened every pixel it passed at any angle and shrank the usable field of view. SmearComposite now ignores, per frame, pixels darker than opaque_level (default 0.25) times the frame's 99th-percentile value and takes the minimum over the remaining frames; pixels opaque at every angle fall back to the plain minimum, and opaque_level=0 is the plain minimum. opaque_level is passed through from lamni.xrayeye_rotation_center_calibration_smear_experimental() and stored in the calibration HDF5. The smear capture-rate test now replaces the module's time instead of patching time.time globally, which EPICS CA threads left running by other tests also advanced. Docs: smear opaque_level, LamNI optics in/out incl. central stop, interferometer feedback commands, and moving to the scan centre including the X-ray eye fit. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_0155LWmbktVgWdnRZqtveqQv
This commit is contained in:
1 parent
af83afeed4
commit
1b06729dba
6 files changed
+204
-31
No files matched your search
@@ -39,7 +39,7 @@ Conventions for writing these MyST/Sphinx docs and how changes go live on Read t
|
||||
|
||||
## LamNI smear aid architecture
|
||||
|
||||
Device/ipython-client/GUI widget interfaces for the smear rotation-center calibration aid, and the `bw-generate-cli` regeneration pitfall.
|
||||
Device/ipython-client/GUI widget interfaces for the smear rotation-center calibration aid, the min/max composite with opaque-pixel masking, and the `bw-generate-cli` regeneration pitfall.
|
||||
```
|
||||
|
||||
````
|
||||
Reference in new issue
Block a user