Ion detection series
Bright-spot/single-ion detection and ion-state discrimination: the BrightSpots, SingleIonPresent and IonState analysis processes.
Module overview
| Module | Class | Detection method | Purpose |
|---|---|---|---|
ion_blob | BrightSpots | Threshold segmentation + connected-component counting | Counts the number of ions in each frame |
bright_spots | BrightSpots | skimage blob_dog | Detects bright spots and outputs a position mask and bloblist |
single_ion_present | SingleIonPresent | Counting + multiple Gaussian-fit-parameter criteria | Decides whether a single ion is present |
ion_state | IonState | Multi-image sequences by imgindex | Discriminates the ion product state |
Discrimination workflow
IonState collects the check / survival / hot / shelved image series by imgindex, detects whether an ion is present in each image, and aggregates the results into the product state:
group frames by imgindex (check / survival / hot / shelved)
↓ detect the ion in each frame by blob analysis
aggregate → publish the product-state result
Usage
from quatm.analysis.ion_state import IonState
det = IonState(name="ionstate") # subscribe to the image streams and group by imgindex
det.run()
Each process is started from the Analysis Manager (AnalysisManager), where it is selected with a checkbox; image streams, thresholds, imgindex, etc. are configured in the property tree.