FastZ and StackManager
hSI.hFastZ drives the fast axial actuator; hSI.hStackManager defines what a stack or
volume consists of and counts progress through it.
See also
Volume Imaging and Stack Acquisition for the concepts.
hSI.hFastZ
scanimage.components.FastZ.
Property |
Description |
|---|---|
|
Enable FastZ stacking. |
|
Read-only. True when the active imaging system has a FastZ actuator. |
|
Current FastZ position. This is what drives hCSFocus. |
|
The waveform the actuator follows. |
|
Seconds allowed to ramp from the end of a volume back to its start. |
|
Acquisition delay of the actuator, in seconds. |
|
Adjustment added to the nominal volume period when computing the sawtooth period. |
|
Use FastZ to correct scanner field curvature. |
|
Interpolation used to derive the per-frame z position. |
|
Frames discarded per flyback. |
|
Frames discarded per volume for display purposes. |
|
Logical: discard frames during flyback. |
Method |
Description |
|---|---|
|
Move a FastZ actuator to a position. |
|
Park the actuator. |
|
Commanded position. |
|
Position currently being output. |
|
Position read back from the actuator’s feedback channel. |
|
Drive a test waveform and return the commanded and measured responses. The basis for actuator tuning. |
|
Run the FastZ calibration. |
|
Wrap device objects into the FastZ scanner objects the waveform manager uses. |
hSI.hFastZ.enable = true;
hSI.hFastZ.flybackTime = 10e-3;
[t,desired,commanded,tIn,measured] = hSI.hFastZ.testActuator();
plot(t,commanded,tIn,measured);
hSI.hStackManager
scanimage.components.StackManager.
Defining the stack
Property |
Description |
|---|---|
|
Enable stack acquisition. |
|
|
|
|
|
|
|
|
|
|
|
Z depths per acquisition. |
|
Volumes per acquisition. |
|
Microns between slices. |
|
Frames acquired at each depth, for a slow stack. |
|
Explicit list of z values, for an arbitrary stack. |
|
Interpret |
|
Treat the current z as the center of the stack rather than its start. |
|
Return to the starting z when the stack completes. |
|
Close the shutter between slices of a slow stack. |
|
Bounded stacks: ramp beam power between the start and end power. |
|
|
Derived and status
Property |
Description |
|---|---|
|
What the current configuration will really produce, after all constraints. |
|
Number of FastZ actuators used. |
|
Frame counts per volume. |
|
Bounded-stack bounds, in sample-relative coordinates. |
|
Live counters. |
Methods
Method |
Description |
|---|---|
|
Use the current z as the start of a bounded stack, or clear it. |
|
Use the current z as the end of a bounded stack, or clear it. |
% a 100 um fast volume of 50 slices
hSI.hStackManager.enable = true;
hSI.hStackManager.stackMode = scanimage.types.StackMode.fast;
hSI.hStackManager.stackActuator = scanimage.types.StackActuator.fastZ;
hSI.hStackManager.stackDefinition = scanimage.types.StackDefinition.uniform;
hSI.hStackManager.numSlices = 50;
hSI.hStackManager.stackZStepSize = 2;
hSI.hStackManager.numVolumes = 10;
hSI.startGrab();
% follow progress
hL = most.ErrorHandler.addCatchingListener(hSI.hStackManager,'slicesDone','PostSet', ...
@(varargin)fprintf('slice %d of %d\n', ...
hSI.hStackManager.slicesDone,hSI.hStackManager.actualNumSlices));