pub struct MeasurementStack {
pub frame_metadata: Vec<FrameMetadata>,
pub dark_frame: Option<Vec<f64>>,
pub flat_field: Option<Vec<f64>>,
pub background: Option<Vec<f64>>,
pub masks: Option<Vec<u8>>,
pub preprocessing: PreprocessingConfig,
/* private fields */
}Expand description
An in-memory stack of image-plane intensity measurements.
Fields§
§frame_metadata: Vec<FrameMetadata>§dark_frame: Option<Vec<f64>>§flat_field: Option<Vec<f64>>§background: Option<Vec<f64>>§masks: Option<Vec<u8>>§preprocessing: PreprocessingConfigImplementations§
Source§impl MeasurementStack
impl MeasurementStack
pub fn from_vec( data: Vec<f64>, image_shape: (usize, usize), frame_metadata: Vec<FrameMetadata>, ) -> Result<Self>
pub fn from_frames( frames: &[Vec<f64>], image_shape: (usize, usize), ) -> Result<Self>
Sourcepub fn from_image_files<P: AsRef<Path>>(
paths: &[P],
frame_metadata: Vec<FrameMetadata>,
) -> Result<Self>
pub fn from_image_files<P: AsRef<Path>>( paths: &[P], frame_metadata: Vec<FrameMetadata>, ) -> Result<Self>
Loads an in-memory stack from single-channel PNG or TIFF images while preserving native 8-bit or 16-bit detector counts.
Sourcepub fn from_tiff_stack(
path: impl AsRef<Path>,
frame_metadata: Vec<FrameMetadata>,
) -> Result<Self>
pub fn from_tiff_stack( path: impl AsRef<Path>, frame_metadata: Vec<FrameMetadata>, ) -> Result<Self>
Loads every page of a grayscale 8-bit or 16-bit TIFF as one frame.
Sourcepub fn from_manifest(path: impl AsRef<Path>) -> Result<Self>
pub fn from_manifest(path: impl AsRef<Path>) -> Result<Self>
Loads a JSON manifest. Relative image paths are resolved against the
manifest’s parent directory. Declared preprocessing is configured but is
not applied until Self::apply_preprocessing is called.
pub fn from_manifest_definition( manifest: MeasurementSpec, base_directory: impl AsRef<Path>, ) -> Result<Self>
pub fn frame_count(&self) -> usize
pub fn image_shape(&self) -> (usize, usize)
pub fn frame_len(&self) -> usize
pub fn as_slice(&self) -> &[f64]
pub fn validate(&self) -> Result<()>
pub fn frame(&self, index: usize) -> Result<&[f64]>
pub fn frame_mut(&mut self, index: usize) -> Result<&mut [f64]>
pub fn frame_weight(&self, index: usize) -> Result<f64>
Sourcepub fn frame_mask(&self, index: usize) -> Result<Option<&[u8]>>
pub fn frame_mask(&self, index: usize) -> Result<Option<&[u8]>>
Returns the mask for a frame. Zero-valued mask entries are excluded. A single-frame mask is broadcast to every measurement frame.
pub fn with_dark_frame(self, dark: Vec<f64>) -> Result<Self>
pub fn with_flat_field(self, flat: Vec<f64>) -> Result<Self>
pub fn with_background(self, background: Vec<f64>) -> Result<Self>
pub fn with_masks(self, masks: Vec<u8>) -> Result<Self>
pub fn normalize_exposure(self) -> Self
pub fn clamp_negative(self) -> Self
pub fn apply_preprocessing(self) -> Result<Self>
Trait Implementations§
Source§impl Clone for MeasurementStack
impl Clone for MeasurementStack
Source§fn clone(&self) -> MeasurementStack
fn clone(&self) -> MeasurementStack
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for MeasurementStack
impl Debug for MeasurementStack
Source§impl<'de> Deserialize<'de> for MeasurementStack
impl<'de> Deserialize<'de> for MeasurementStack
Source§fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>where
D: Deserializer<'de>,
Deserialize this value from the given Serde deserializer. Read more
Source§impl MeasurementRead for MeasurementStack
impl MeasurementRead for MeasurementStack
fn frame_count(&self) -> usize
fn image_shape(&self) -> (usize, usize)
fn frame_len(&self) -> usize
fn frame(&self, index: usize) -> Result<impl Deref<Target = [f64]> + '_>
fn frame_weight(&self, index: usize) -> Result<f64>
fn frame_mask(&self, index: usize) -> Result<Option<&[u8]>>
fn frame_metadata(&self) -> &[FrameMetadata]
fn validate(&self) -> Result<()>
Auto Trait Implementations§
impl Freeze for MeasurementStack
impl RefUnwindSafe for MeasurementStack
impl Send for MeasurementStack
impl Sync for MeasurementStack
impl Unpin for MeasurementStack
impl UnsafeUnpin for MeasurementStack
impl UnwindSafe for MeasurementStack
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more