![]() |
Microscopy Image Browser 2.91
MIB
|
controller class for alignment of datasets More...
Public Member Functions | |
mibAlignmentController (mibModel, varargin) | |
function | closeWindow () |
function | returnBatchOpt (BatchOptOut) |
return structure with Batch Options and possible configurations via the notify syncBatch event Parameters: BatchOptOut: a local structure with Batch Options generated during Continue callback. It may contain more fields than obj.BatchOpt structure | |
function | updateBatchOptFromGUI (hObject) |
function | updateWidgets () |
function | selectButton_Callback () |
— Executes on button press in selectButton. | |
function [ meta , files , pixSize , dimsXYZ ] = | getMetaInfo (dirName) |
function | radioButton_Callback () |
callback for selection of radio buttons: obj.View.handles.dirRadio; .fileRadio; .importRadio in the Second stack panel | |
function | getSearchWindow_Callback () |
callback from getSearchWindow button to define area to be used for alignment | |
function | loadShiftsCheck_Callback () |
— Executes on button press in loadShiftsCheck. | |
function | subwindowEdit_Callback (hObject) |
callback for change of subwindow edit boxes | |
function | continueBtn_Callback (useBatchMode) |
— Executes on button press in continueBtn and does alignment Parameters: useBatchMode: a logical switch indicating that the alignment started in the batch mode | |
function | LandmarkMultiPointAlignment (parameters) |
perform alignment using multiple landmark points | |
function | LandmarkMultiPointColorAlignment (parameters) |
perform alignment of the selected color channel over the other color channels using multiple landmark points | |
function | algorithm_Callback () |
callback on selection of algorithm to use | |
function status = | updateAutomaticOptions () |
update options (obj.automaticOptions) for the automatic alignment using detected features | |
function | previewFeaturesBtn_Callback () |
preview detected features | |
function | AutomaticFeatureBasedAlignment (parameters) |
perform automatic alignment based on detected features | |
function | HDD_BioformatsReader_Callback () |
callback for selection of bio-formats reader for the HDD mode | |
Static Public Member Functions | |
static function idx = | findMatchingPairs (X1, X2) |
find matching pairs for X1 from X2 X1[:, (x,y)] X2[:, (x,y)] | |
static function | ViewListner_Callback2 (obj, src, evnt) |
Public Attributes | |
mibModel | |
handles to the model | |
View | |
handle to the view | |
listener | |
a cell array with handles to listeners | |
files | |
files structure from the getImageMetadata | |
meta | |
meta containers.Map from the getImageMetadata | |
pathstr | |
current path | |
pixSize | |
pixSize structure from the getImageMetadata | |
shiftsX | |
vector with X-shifts or tformMatrix | |
shiftsY | |
vector with Y-shifts or rbMatrix | |
varname | |
variable for import | |
automaticOptions | |
a structure with additional options used during automatic alignment with feature detectors .imgWidthForAnalysis = round(Width/4); % size of the image used to detect features, decrease to make it faster, but compromising the precision .rotationInvariance = true; % Rotation invariance flag, specified a logical scalar; When you set this property to true, the orientation of the feature vectors are not estimated and the feature orientation is set to pi/2. .detectSURFFeatures.MetricThreshold = 1000; % non-negative scalar, strongest feature threshold; to return more blobs, decrease the value of this threshold .detectSURFFeatures.NumOctaves = 3; % scalar, greater than or equal to 1, increase this value to detect larger blobs. Recommended values are between 1 and 4. .detectSURFFeatures.NumScaleLevels = 4; % integer scalar, greater than or equal to 3; Number of scale levels per octave to compute, increase this number to detect more blobs at finer scale increments. Recommended values are between 3 and 6. .detectSIFTFeatures.ContrastThreshold = 0.0133; % Contrast threshold for selecting the strongest features, specified as a non-negative scalar in the range [0,1]. The threshold is used to filter out weak features in low-contrast regions of the image. Increase the contrast threshold to decrease the number of returned features. .detectSIFTFeatures.EdgeThreshold = 10; % Edge threshold, specified as a non-negative scalar greater than or equal to 1. The threshold is used to filter out unstable edge-like features in the image that are susceptible to noise. Increase the edge threshold to decrease the number of features removed by filtering. .detectSIFTFeatures.NumLayersInOctave = 3; % Number of layers in each octave, specified as an integer scalar greater than or equal to 1. The number of octaves is computed automatically from the image resolution. Increase the number of layers in each octave to detect larger features in the image. .detectSIFTFeatures.Sigma = 1.6; % Sigma of the Gaussian, specified as a scalar. The sigma of the Gaussian is applied to the input image at the initial octave. Sigma values are typically in the range [1,2]. Lower the sigma value if the image is blurry. .detectMSERFeatures.ThresholdDelta = 2; % percent numeric value; step size between intensity threshold levels, decrease this value to return more regions. Typical values range from 0.8 to 4. .detectMSERFeatures.RegionAreaRange = [30 14000]; % two-element vector, size of the region in pixels, allows the selection of regions containing pixels between the provided range .detectMSERFeatures.MaxAreaVariation = 0.25; % positive scalar, maximum area variation between extremal regions at varying intensity thresholds; Increasing this value returns a greater number of regions, but they may be less stable. Stable regions are very similar in size over varying intensity thresholds. Typical values range from 0.1 to 1.0. .detectHarrisFeatures.MinQuality = 0.01; % between [0 1], minimum accepted quality of corners, larger values can be used to remove erroneous corners .detectHarrisFeatures.FilterSize = 5; % an odd integer value in the range [3, min(size(I))]; Gaussian filter dimension. .detectBRISKFeatures.MinContrast = 0.2; % a scalar in the range (0 1); Minimum intensity difference between a corner and its surrounding region, Increase this value to reduce the number of detected corners. .detectBRISKFeatures.MinQuality = 0.1; % a scalar value in the range [0,1], Minimum accepted quality of corners, Increase this value to remove erroneous corners. .detectBRISKFeatures.NumOctaves = 4; % an integer scalar, greater than or equal to 0; Number of octaves to implement, Increase this value to detect larger blobs. Recommended values are between 1 and 4. When you set NumOctaves to 0, the function disables multiscale detection .detectFASTFeatures.MinQuality = 0.1; % a scalar value in the range [0,1]; The minimum accepted quality of corners represents a fraction of the maximum corner metric value in the image. Larger values can be used to remove erroneous corners. .detectFASTFeatures.MinContrast = 0.2; % a scalar value in the range (0,1), The minimum intensity represents a fraction of the maximum value of the image class. Increasing the value reduces the number of detected corners. .detectMinEigenFeatures.MinQuality = 0.01; % a scalar value in the range [0,1], The minimum accepted quality of corners represents a fraction of the maximum corner metric value in the image. Larger values can be used to remove erroneous corners .detectMinEigenFeatures.FilterSize = 5; % an odd integer value in the range [3, inf), The Gaussian filter smooths the gradient of the input image. .detectORBFeatures.ScaleFactor = 1.2; % Scale factor for image decomposition, an integer greater than 1. .detectORBFeatures.NumLevels = 8; % Number of decomposition levels, an integer greater than or equal to 1. Increase this value to extract keypoints from the image at more levels of decomposition. .amst.MaximumIterations = 100; % parameters for imregconfig optimizer, Maximum number of iterations .amst.GradientMagnitudeTolerance = 0.0001; % parameters for imregconfig optimizer, Gradient magnitude tolerance .amst.MinimumStepLength = .0001; % parameters for imregconfig optimizer, Tolerance for convergence, with a small value, the optimization takes longer to compute, but it is likely to converge on a more accurate metric value. .amst.MaximumStepLength = 0.0625; % parameters for imregconfig optimizer, Initial step length, whan a large value, the computation time decreases. However, the optimizer might fail to converge .amst.RelaxationFactor = 0.5; % parameters for imregconfig optimizer, Step length reduction factor, defines the rate at which the optimizer reduces step size during convergence .estGeomTransform.MaxNumTrials = 1000; % Maximum number of random trials for finding the inliers, increasing this value improves the robustness of the results at the expense of additional computations. .estGeomTransform.Confidence = 99; % Confidence (0-100) of finding maximum number of inliers, increasing this value improves the robustness of the results at the expense of additional computations. .estGeomTransform.MaxDistance = 1.5; % Maximum distance in pixels, from a point to the projection of its corresponding point | |
BatchOpt | |
a structure compatible with batch operation, see details in the contsructor | |
EVENT | closeEvent |
> Description of events event firing when window is closed | |
![]() | |
addlistener | |
Creates a listener for the specified event and assigns a callback function to execute when the event occurs. | |
notify | |
Broadcast a notice that a specific event is occurring on a specified handle object or array of handle objects. | |
delete | |
Handle object destructor method that is called when the object's lifecycle ends. | |
disp | |
Handle object disp method which is called by the display method. See the MATLAB disp function. | |
display | |
Handle object display method called when MATLAB software interprets an expression returning a handle object that is not terminated by a semicolon. See the MATLAB display function. | |
findobj | |
Finds objects matching the specified conditions from the input array of handle objects. | |
findprop | |
Returns a meta.property objects associated with the specified property name. | |
fields | |
Returns a cell array of string containing the names of public properties. | |
fieldnames | |
Returns a cell array of string containing the names of public properties. See the MATLAB fieldnames function. | |
isvalid | |
Returns a logical array in which elements are true if the corresponding elements in the input array are valid handles. This method is Sealed so you cannot override it in a handle subclass. | |
eq | |
Relational functions example. See details for more information. | |
transpose | |
Transposes the elements of the handle object array. | |
permute | |
Rearranges the dimensions of the handle object array. See the MATLAB permute function. | |
reshape | |
hanges the dimensions of the handle object array to the specified dimensions. See the MATLAB reshape function. | |
sort | |
ort the handle objects in any array in ascending or descending order. | |
controller class for alignment of datasets
mibAlignmentController.mibAlignmentController | ( | mibModel, | |
varargin ) |
References handle.addlistener, mibModel, mibRescaleWidgets(), mibUpdateFontSize(), handle.notify, updateBatchOptCombineFields_Shared(), and updateGUIFromBatchOpt_Shared().
Referenced by continueBtn_Callback(), and LandmarkMultiPointAlignment().
function mibAlignmentController.algorithm_Callback | ( | ) |
callback on selection of algorithm to use
function mibAlignmentController.AutomaticFeatureBasedAlignment | ( | parameters | ) |
perform automatic alignment based on detected features
References max, mibAlignmentDetectFeatures(), mibInputMultiDlg(), min, and handle.notify.
function mibAlignmentController.closeWindow | ( | ) |
References handle.isvalid, and handle.notify.
function mibAlignmentController.continueBtn_Callback | ( | useBatchMode | ) |
— Executes on button press in continueBtn and does alignment Parameters: useBatchMode: a logical switch indicating that the alignment started in the batch mode
References handle.fields, max, mibAlignmentController(), mibCalcShifts(), mibCrossShiftStack(), mibCrossShiftStacks(), mibGetImages(), mibInputMultiDlg(), mibQuestDlg(), mibSubtractRunningAverage(), min, handle.notify, handle.reshape, shiftsX, and shiftsY.
|
static |
References files, meta, mibGetImageMetadata(), handle.notify, and pixSize.
function mibAlignmentController.getSearchWindow_Callback | ( | ) |
callback from getSearchWindow button to define area to be used for alignment
function mibAlignmentController.HDD_BioformatsReader_Callback | ( | ) |
callback for selection of bio-formats reader for the HDD mode
References updateGUIFromBatchOpt_Shared().
function mibAlignmentController.LandmarkMultiPointAlignment | ( | parameters | ) |
perform alignment using multiple landmark points
References max, mibAlignmentController(), min, handle.notify, and handle.reshape.
function mibAlignmentController.LandmarkMultiPointColorAlignment | ( | parameters | ) |
perform alignment of the selected color channel over the other color channels using multiple landmark points
References handle.notify.
function mibAlignmentController.loadShiftsCheck_Callback | ( | ) |
— Executes on button press in loadShiftsCheck.
References mib_uigetfile().
function mibAlignmentController.previewFeaturesBtn_Callback | ( | ) |
preview detected features
References mibAlignmentDetectFeatures(), and mibShowErrorDialog().
function mibAlignmentController.radioButton_Callback | ( | ) |
callback for selection of radio buttons: obj.View.handles.dirRadio; .fileRadio; .importRadio in the Second stack panel
function mibAlignmentController.returnBatchOpt | ( | BatchOptOut | ) |
return structure with Batch Options and possible configurations via the notify syncBatch
event Parameters: BatchOptOut: a local structure with Batch Options generated during Continue callback. It may contain more fields than obj.BatchOpt structure
References handle.notify.
function mibAlignmentController.selectButton_Callback | ( | ) |
— Executes on button press in selectButton.
References mib_uigetfile().
function mibAlignmentController.subwindowEdit_Callback | ( | hObject | ) |
callback for change of subwindow edit boxes
function status = mibAlignmentController.updateAutomaticOptions | ( | ) |
update options (obj.automaticOptions) for the automatic alignment using detected features
status | a switch whether the function was finished to the end or cancelled |
References mibInputMultiDlg().
function mibAlignmentController.updateBatchOptFromGUI | ( | hObject | ) |
function mibAlignmentController.updateWidgets | ( | ) |
References max, handle.notify, and updateGUIFromBatchOpt_Shared().
|
static |
mibAlignmentController.automaticOptions |
a structure with additional options used during automatic alignment with feature detectors .imgWidthForAnalysis = round(Width/4); % size of the image used to detect features, decrease to make it faster, but compromising the precision .rotationInvariance = true; % Rotation invariance flag, specified a logical scalar; When you set this property to true, the orientation of the feature vectors are not estimated and the feature orientation is set to pi/2. .detectSURFFeatures.MetricThreshold = 1000; % non-negative scalar, strongest feature threshold; to return more blobs, decrease the value of this threshold .detectSURFFeatures.NumOctaves = 3; % scalar, greater than or equal to 1, increase this value to detect larger blobs. Recommended values are between 1 and 4. .detectSURFFeatures.NumScaleLevels = 4; % integer scalar, greater than or equal to 3; Number of scale levels per octave to compute, increase this number to detect more blobs at finer scale increments. Recommended values are between 3 and 6. .detectSIFTFeatures.ContrastThreshold = 0.0133; % Contrast threshold for selecting the strongest features, specified as a non-negative scalar in the range [0,1]. The threshold is used to filter out weak features in low-contrast regions of the image. Increase the contrast threshold to decrease the number of returned features. .detectSIFTFeatures.EdgeThreshold = 10; % Edge threshold, specified as a non-negative scalar greater than or equal to 1. The threshold is used to filter out unstable edge-like features in the image that are susceptible to noise. Increase the edge threshold to decrease the number of features removed by filtering. .detectSIFTFeatures.NumLayersInOctave = 3; % Number of layers in each octave, specified as an integer scalar greater than or equal to 1. The number of octaves is computed automatically from the image resolution. Increase the number of layers in each octave to detect larger features in the image. .detectSIFTFeatures.Sigma = 1.6; % Sigma of the Gaussian, specified as a scalar. The sigma of the Gaussian is applied to the input image at the initial octave. Sigma values are typically in the range [1,2]. Lower the sigma value if the image is blurry. .detectMSERFeatures.ThresholdDelta = 2; % percent numeric value; step size between intensity threshold levels, decrease this value to return more regions. Typical values range from 0.8 to 4. .detectMSERFeatures.RegionAreaRange = [30 14000]; % two-element vector, size of the region in pixels, allows the selection of regions containing pixels between the provided range .detectMSERFeatures.MaxAreaVariation = 0.25; % positive scalar, maximum area variation between extremal regions at varying intensity thresholds; Increasing this value returns a greater number of regions, but they may be less stable. Stable regions are very similar in size over varying intensity thresholds. Typical values range from 0.1 to 1.0. .detectHarrisFeatures.MinQuality = 0.01; % between [0 1], minimum accepted quality of corners, larger values can be used to remove erroneous corners .detectHarrisFeatures.FilterSize = 5; % an odd integer value in the range [3, min(size(I))]; Gaussian filter dimension. .detectBRISKFeatures.MinContrast = 0.2; % a scalar in the range (0 1); Minimum intensity difference between a corner and its surrounding region, Increase this value to reduce the number of detected corners. .detectBRISKFeatures.MinQuality = 0.1; % a scalar value in the range [0,1], Minimum accepted quality of corners, Increase this value to remove erroneous corners. .detectBRISKFeatures.NumOctaves = 4; % an integer scalar, greater than or equal to 0; Number of octaves to implement, Increase this value to detect larger blobs. Recommended values are between 1 and 4. When you set NumOctaves to 0, the function disables multiscale detection .detectFASTFeatures.MinQuality = 0.1; % a scalar value in the range [0,1]; The minimum accepted quality of corners represents a fraction of the maximum corner metric value in the image. Larger values can be used to remove erroneous corners. .detectFASTFeatures.MinContrast = 0.2; % a scalar value in the range (0,1), The minimum intensity represents a fraction of the maximum value of the image class. Increasing the value reduces the number of detected corners. .detectMinEigenFeatures.MinQuality = 0.01; % a scalar value in the range [0,1], The minimum accepted quality of corners represents a fraction of the maximum corner metric value in the image. Larger values can be used to remove erroneous corners .detectMinEigenFeatures.FilterSize = 5; % an odd integer value in the range [3, inf), The Gaussian filter smooths the gradient of the input image. .detectORBFeatures.ScaleFactor = 1.2; % Scale factor for image decomposition, an integer greater than 1. .detectORBFeatures.NumLevels = 8; % Number of decomposition levels, an integer greater than or equal to 1. Increase this value to extract keypoints from the image at more levels of decomposition. .amst.MaximumIterations = 100; % parameters for imregconfig optimizer, Maximum number of iterations .amst.GradientMagnitudeTolerance = 0.0001; % parameters for imregconfig optimizer, Gradient magnitude tolerance .amst.MinimumStepLength = .0001; % parameters for imregconfig optimizer, Tolerance for convergence, with a small value, the optimization takes longer to compute, but it is likely to converge on a more accurate metric value. .amst.MaximumStepLength = 0.0625; % parameters for imregconfig optimizer, Initial step length, whan a large value, the computation time decreases. However, the optimizer might fail to converge .amst.RelaxationFactor = 0.5; % parameters for imregconfig optimizer, Step length reduction factor, defines the rate at which the optimizer reduces step size during convergence .estGeomTransform.MaxNumTrials = 1000; % Maximum number of random trials for finding the inliers, increasing this value improves the robustness of the results at the expense of additional computations. .estGeomTransform.Confidence = 99; % Confidence (0-100) of finding maximum number of inliers, increasing this value improves the robustness of the results at the expense of additional computations. .estGeomTransform.MaxDistance = 1.5; % Maximum distance in pixels, from a point to the projection of its corresponding point
mibAlignmentController.BatchOpt |
a structure compatible with batch operation, see details in the contsructor
EVENT mibAlignmentController.closeEvent |
> Description of events event firing when window is closed
mibAlignmentController.files |
files structure from the getImageMetadata
Referenced by getMetaInfo().
mibAlignmentController.listener |
a cell array with handles to listeners
mibAlignmentController.meta |
meta containers.Map from the getImageMetadata
Referenced by getMetaInfo().
mibAlignmentController.mibModel |
handles to the model
Referenced by mibAlignmentController().
mibAlignmentController.pathstr |
current path
mibAlignmentController.pixSize |
pixSize structure from the getImageMetadata
Referenced by getMetaInfo().
mibAlignmentController.shiftsX |
vector with X-shifts or tformMatrix
Referenced by continueBtn_Callback().
mibAlignmentController.shiftsY |
vector with Y-shifts or rbMatrix
Referenced by continueBtn_Callback().
mibAlignmentController.varname |
variable for import
mibAlignmentController.View |
handle to the view