@ALDAOperator(genericExecutionMode=ALL, level=APPLICATION) public class MultiChannelParticleAnalyzer2D extends MTBOperator
This operator allows to configure a particle detector for each channel of the image separately. If a proper nucleus channel is given that one is skipped. The first detector in the vector of detectors is applied to the first non-nucleus channel, the second to the second, etc. It is important that for all channels to be processed detectors are provided.
Modifier and Type | Class and Description |
---|---|
static class |
MultiChannelParticleAnalyzer2D.ResultImageMode
Display mode of the result image.
|
Modifier and Type | Field and Description |
---|---|
private MTBImageByte |
excludeMask
Optional mask to exclude particles in certain regions.
|
private int |
height
Height of the processed image.
|
private MTBImage |
inImg
Multi-channel input image to be processed.
|
private SegResultEnums.MeasureUnit |
measureUnits
Units for measurements.
|
private ParticleDetector |
particleDetector_1 |
private ParticleDetector |
particleDetector_2 |
private ParticleDetector |
particleDetector_3 |
private ParticleDetector |
particleDetector_4 |
private ParticleDetector |
particleDetector_5 |
private SegResult_ParticlesMultiChannel |
resultData
Vector of result data objects.
|
private MultiChannelParticleAnalyzer2D.ResultImageMode |
resultDisplayMode
Mode of how to display result image.
|
private MTBImageRGB |
resultImg
Stack with result overlays corresponding to channels.
|
private int |
stackSize
Number of channels in image.
|
private int |
width
Width of the processed image.
|
Constructor and Description |
---|
MultiChannelParticleAnalyzer2D()
Empty constructor.
|
MultiChannelParticleAnalyzer2D(MTBImage image,
Vector<ParticleDetector> pOps)
Default constructor.
|
Modifier and Type | Method and Description |
---|---|
Vector<ParticleDetector> |
getDetectors()
Get a reference to configured detectors' vector.
|
SegResult_ParticlesMultiChannel |
getResultDataArray()
Returns extracted result data.
|
MTBImageRGB |
getResultImage()
Returns result image, i.e. the segmentation mask.
|
protected void |
operate() |
private void |
prepareResultImage()
Prepare visualization of result data by overlay on input image.
|
private MTBImageRGB |
prepareResultImageStack(Vector<MTBImage> imgvec)
Initialize result image stack.
|
void |
setInputImage(MTBImage img)
Specify input image.
|
void |
setMeasureUnits(SegResultEnums.MeasureUnit mu)
Specify units in which to measure areas.
|
void |
setNucleiMask(MTBImageByte mask)
Specify nuclei mask.
|
readResolve
addOperatorExecutionProgressEventListener, addParameter, addParameter, addParameterUnconditioned, fieldContained, fireOperatorExecutionProgressEvent, getALDPortHashAccessKey, getConstructionMode, getDocumentation, getHidingMode, getInactiveParameterNames, getInInoutNames, getInInoutNames, getInNames, getInOutNames, getMissingRequiredInputs, getName, getNumParameters, getOutInoutNames, getOutNames, getParameter, getParameterDescriptor, getParameterDescriptorUnconditioned, getParameterNames, getParameterUnconditioned, getSupplementalNames, getVerbose, getVersion, handleOperatorExecutionProgressEvent, hasInOutParameters, hasParameter, isAnnotatedParameter, isConfigured, print, print, print, printInterface, printInterface, readHistory, reinitializeParameterDescriptors, removeOperatorExecutionProgressEventListener, removeParameter, runOp, runOp, runOp, setConstructionMode, setConstructionMode, setConstructionMode, setHidingMode, setName, setParameter, setParameterUnconditioned, setVerbose, toStringVerbose, unconfiguredItems, validate, validateCustom, validateGeneric, writeHistory, writeHistory, writeHistory
@Parameter(label="Input image", required=true, mode=STANDARD, direction=IN, description="Input image.", dataIOOrder=-20) private transient MTBImage inImg
@Parameter(label="Result statistics", direction=OUT, description="Result data.") private transient SegResult_ParticlesMultiChannel resultData
@Parameter(label="Particle detector channel 1", required=false, direction=IN, dataIOOrder=-15, mode=STANDARD, description="Particle detector operator(s) for channels.") private ParticleDetector particleDetector_1
@Parameter(label="Particle detector channel 2", required=false, direction=IN, dataIOOrder=-14, mode=STANDARD, description="Particle detector operator(s) for channels.") private ParticleDetector particleDetector_2
@Parameter(label="Particle detector channel 3", required=false, direction=IN, dataIOOrder=-13, mode=STANDARD, description="Particle detector operator(s) for channels.") private ParticleDetector particleDetector_3
@Parameter(label="Particle detector channel 4", required=false, direction=IN, dataIOOrder=-12, mode=STANDARD, description="Particle detector operator(s) for channels.") private ParticleDetector particleDetector_4
@Parameter(label="Particle detector channel 5", required=false, direction=IN, dataIOOrder=-11, mode=STANDARD, description="Particle detector operator(s) for channels.") private ParticleDetector particleDetector_5
@Parameter(label="Region exclude mask", direction=IN, mode=ADVANCED, required=false, description="Region exclude mask.") private transient MTBImageByte excludeMask
Particles in exclude regions are ignored if mask is non-null.
@Parameter(label="Measure units", required=false, dataIOOrder=20, mode=ADVANCED, direction=IN, description="Units for area measurements.") private SegResultEnums.MeasureUnit measureUnits
@Parameter(label="Result image", direction=OUT, description="Result image", supplemental=true) private transient MTBImageRGB resultImg
@Parameter(label="Result image display mode", required=false, mode=ADVANCED, direction=IN, supplemental=true, description="Mode how result image is displayed.") private MultiChannelParticleAnalyzer2D.ResultImageMode resultDisplayMode
private transient int height
private transient int width
private transient int stackSize
public MultiChannelParticleAnalyzer2D() throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
public MultiChannelParticleAnalyzer2D(MTBImage image, Vector<ParticleDetector> pOps) throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
image
- Image to be processed.pOps
- List of detectors.de.unihalle.informatik.Alida.exceptions.ALDOperatorException
public void setInputImage(MTBImage img)
public void setNucleiMask(MTBImageByte mask)
public void setMeasureUnits(SegResultEnums.MeasureUnit mu)
public SegResult_ParticlesMultiChannel getResultDataArray()
public Vector<ParticleDetector> getDetectors()
public MTBImageRGB getResultImage()
protected void operate() throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException, de.unihalle.informatik.Alida.exceptions.ALDProcessingDAGException
operate
in class de.unihalle.informatik.Alida.operator.ALDOperator
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
de.unihalle.informatik.Alida.exceptions.ALDProcessingDAGException
private void prepareResultImage()
private MTBImageRGB prepareResultImageStack(Vector<MTBImage> imgvec)
Transfers result images to a multi-channel RGB image.
Copyright © 2010–2020 Martin Luther University Halle-Wittenberg, Institute of Computer Science, Pattern Recognition and Bioinformatics. All rights reserved.