de.unihalle.informatik.MiToBo.apps.singleCellTracking2D
Class SingleCellMigrationAnalyzer

java.lang.Object
  extended by de.unihalle.informatik.Alida.operator.ALDOperator
      extended by de.unihalle.informatik.MiToBo.core.operator.MTBOperator
          extended by de.unihalle.informatik.MiToBo.apps.singleCellTracking2D.SingleCellMigrationAnalyzer
All Implemented Interfaces:
de.unihalle.informatik.Alida.datatypes.ALDConfigurationValidator

@ALDAOperator(genericExecutionMode=ALL,
              level=APPLICATION,
              allowBatchMode=false)
public class SingleCellMigrationAnalyzer
extends MTBOperator

Author:
glass

Nested Class Summary
 
Nested classes/interfaces inherited from class de.unihalle.informatik.Alida.operator.ALDOperator
de.unihalle.informatik.Alida.operator.ALDOperator.HidingMode
 
Field Summary
private  java.lang.Boolean analyzeIntensities
           
private  java.lang.Boolean analyzeShapes
           
private  java.lang.Boolean analyzeTrajectories
           
private  java.lang.Double deltaT
           
private  java.lang.Double deltaX
           
private  java.lang.Double deltaY
           
private  java.lang.Double gamma
           
private  MTBImage inImg
           
private  MTBImage labelResult
           
private  java.lang.Double maxAreaChange
           
private  java.lang.Double maxDist
           
private  java.lang.Integer maxIter
           
private  java.lang.Integer medianRadius
           
private  java.lang.Integer minArea
           
private  java.lang.Integer minSeedSize
           
private  java.lang.Integer minTrackLength
           
private  java.lang.Boolean removeBorderObjects
           
private  MTBImage segmentationResult
           
private  java.lang.Boolean showOverlayImage
           
private  java.lang.Boolean showTrajectoryMap
           
private  java.lang.String unitT
           
private  java.lang.String unitXY
           
private  java.lang.Boolean useAutoDistance
           
 
Fields inherited from class de.unihalle.informatik.Alida.operator.ALDOperator
completeDAG, name, portHashAccess, verbose, versionProvider
 
Constructor Summary
SingleCellMigrationAnalyzer()
           
SingleCellMigrationAnalyzer(MTBImage img)
           
 
Method Summary
 void operate()
           
 
Methods inherited from class de.unihalle.informatik.MiToBo.core.operator.MTBOperator
readResolve
 
Methods inherited from class de.unihalle.informatik.Alida.operator.ALDOperator
deserializeFromXmlFile, fieldContained, getALDPortHashAccessKey, getConstructionMode, getInInoutNames, getInInoutNames, getInNames, getInOutNames, getMissingRequiredInputs, getName, getNumParameters, getOutInoutNames, getOutNames, getParameter, getParameterDescriptor, getParameterNames, getSupplementalNames, getVerbose, getVersion, isConfigured, parametersToXmlObject, print, print, print, printInterface, printInterface, readHistory, reinitializeParameterDescriptors, runOp, runOp, runOp, serializeToXmlFile, setConstructionMode, setName, setParameter, setParametersFromXml, setParametersFromXml, setVerbose, toStringVerbose, unconfiguredItems, validate, validateCustom, validateGeneric, writeHistory, writeHistory, writeHistory, writeParametersToXml
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

analyzeIntensities

@Parameter(label="analyze intensities",
           required=false,
           direction=IN,
           supplemental=false,
           description="should the objects\' intensities be analyzed",
           dataIOOrder=7)
private java.lang.Boolean analyzeIntensities

analyzeShapes

@Parameter(label="analyze shapes",
           required=false,
           direction=IN,
           supplemental=false,
           description="should the objects\' shapes be analyzed",
           dataIOOrder=7)
private java.lang.Boolean analyzeShapes

analyzeTrajectories

@Parameter(label="analyze trajectories",
           required=false,
           direction=IN,
           supplemental=false,
           description="should the objects\' trajectories be analyzed",
           dataIOOrder=7)
private java.lang.Boolean analyzeTrajectories

deltaT

@Parameter(label="time between frames",
           required=false,
           direction=IN,
           supplemental=false,
           description="time between frames",
           dataIOOrder=4)
private java.lang.Double deltaT

deltaX

@Parameter(label="pixel length, x-direction",
           required=false,
           direction=IN,
           supplemental=false,
           description="pixel length in x-direction",
           dataIOOrder=1)
private java.lang.Double deltaX

deltaY

@Parameter(label="pixel length, y-direction",
           required=false,
           direction=IN,
           supplemental=false,
           description="pixel length in y-direction",
           dataIOOrder=2)
private java.lang.Double deltaY

gamma

@Parameter(label=" \u03b3",
           required=false,
           direction=IN,
           supplemental=false,
           description="value for \u03b3-correction for emphasizing cells",
           mode=ADVANCED)
private java.lang.Double gamma

inImg

@Parameter(label="input image",
           required=true,
           direction=IN,
           supplemental=false,
           description="input image")
private transient MTBImage inImg

labelResult

@Parameter(label="label result",
           required=true,
           direction=OUT,
           supplemental=true,
           description="resulting label image")
private transient MTBImage labelResult

maxAreaChange

@Parameter(label="maximum area change",
           required=false,
           direction=IN,
           supplemental=false,
           description="maximum change in area (fraction) for two objects to be assigned to each other")
private java.lang.Double maxAreaChange

maxDist

@Parameter(label="maximum distance (pixels)",
           required=false,
           direction=IN,
           supplemental=false,
           description="maximum distance for two objects to be assigned to each other",
           mode=ADVANCED)
private java.lang.Double maxDist

maxIter

@Parameter(label="maximum number of iterations",
           required=false,
           direction=IN,
           supplemental=false,
           description="maximum number of iterations for level set evolution",
           mode=ADVANCED)
private java.lang.Integer maxIter

medianRadius

@Parameter(label="median filter radius",
           required=false,
           direction=IN,
           supplemental=false,
           description="radius of median filter mask")
private java.lang.Integer medianRadius

minArea

@Parameter(label="minimum area (pixels)",
           required=false,
           direction=IN,
           supplemental=false,
           description="minimum area (number of pixels) an object should have")
private java.lang.Integer minArea

minSeedSize

@Parameter(label="minimum seed size",
           required=false,
           direction=IN,
           supplemental=false,
           description="minimum size for seeds to be not discarded",
           mode=ADVANCED)
private java.lang.Integer minSeedSize

minTrackLength

@Parameter(label="minimum track length",
           required=false,
           direction=IN,
           supplemental=false,
           description="minimum track length to be considered",
           dataIOOrder=6)
private java.lang.Integer minTrackLength

removeBorderObjects

@Parameter(label="remove border touching objects",
           required=false,
           direction=IN,
           supplemental=false,
           description="should border touching objects be removed")
private java.lang.Boolean removeBorderObjects

segmentationResult

@Parameter(label="segmentation result",
           required=true,
           direction=OUT,
           supplemental=false,
           description="resulting segmentation image")
private transient MTBImage segmentationResult

showOverlayImage

@Parameter(label="show overlay image",
           required=false,
           direction=IN,
           supplemental=false,
           description="should the extracted trajectories be shown overlayed on the cells",
           dataIOOrder=7)
private java.lang.Boolean showOverlayImage

showTrajectoryMap

@Parameter(label="show trajectory map",
           required=false,
           direction=IN,
           supplemental=false,
           description="should a 2D map of the extracted trajectories be shown",
           dataIOOrder=7)
private java.lang.Boolean showTrajectoryMap

unitT

@Parameter(label="unit time",
           required=false,
           direction=IN,
           supplemental=false,
           description="unit time",
           dataIOOrder=5)
private java.lang.String unitT

unitXY

@Parameter(label="unit x/y",
           required=false,
           direction=IN,
           supplemental=false,
           description="unit x/y",
           dataIOOrder=3)
private java.lang.String unitXY

useAutoDistance

@Parameter(label="determine gating distance automatically",
           required=false,
           direction=IN,
           supplemental=false,
           description="determine gating distance automatically",
           mode=ADVANCED)
private java.lang.Boolean useAutoDistance
Constructor Detail

SingleCellMigrationAnalyzer

public SingleCellMigrationAnalyzer()
                            throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
Throws:
de.unihalle.informatik.Alida.exceptions.ALDOperatorException

SingleCellMigrationAnalyzer

public SingleCellMigrationAnalyzer(MTBImage img)
                            throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
Throws:
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
Method Detail

operate

public void operate()
             throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException,
                    de.unihalle.informatik.Alida.exceptions.ALDProcessingDAGException
Specified by:
operate in class de.unihalle.informatik.Alida.operator.ALDOperator
Throws:
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
de.unihalle.informatik.Alida.exceptions.ALDProcessingDAGException