@ALDAOperator(genericExecutionMode=ALL, level=APPLICATION, allowBatchMode=false, shortDescription="Analyzes 2D fluorescence microscope images of neurons.") public class NeuronAnalyzer2D extends MTBOperator
The Neuron Analyzer 2D application offers advanced functionality to analyze 2D fluorescence microscope images of neurons. Features: - neuron boundary detection based on active contours - identification of structural neuron parts, like soma, neurites, growth cones - morphology analysis, e.g., neurite length, average neurite width, number of branch and end points, growth cone size and shape roundness, ... - extraction of molecular profiles from the given molecules, like labeled proteins, along the neurites from soma to growth cones - detection of molecular particles, for example FISH data, along the neurites from soma to growth cones - intermediate and final results are automatically saved - tabular presentation of result data
NeuriteDetector2D
,
NeuriteMolProfExtractor2D
,
NeuriteParticleDetector2D
Modifier and Type | Field and Description |
---|---|
(package private) static de.unihalle.informatik.Alida.datatypes.ALDDirectoryString |
currentInput
Get initial directory from environment configuration.
|
private MTBTableModel |
detectionResultTable |
protected Boolean |
extractParticles |
protected Boolean |
extractProfiles |
private Integer[] |
moleculeChannels |
private String[] |
molecules |
private NeuriteDetector2D |
neuriteDetector
Define analyzer parameters.
|
private String |
outpath
Directory of output results.
|
private NeuriteParticleDetector2D |
particleDetector |
private org.rosuda.JRI.Rengine |
rEngine
JRI R engine to run R as a single thread.
|
Constructor and Description |
---|
NeuronAnalyzer2D()
Standard constructor.
|
NeuronAnalyzer2D(NeuriteDetector2D _neuriteDetector,
Boolean _extractProfiles,
String[] _molecules,
Integer[] _moleculeChannels,
Boolean _extractParticles,
NeuriteParticleDetector2D _particleDetector,
Boolean _verbose)
Constructor.
|
Modifier and Type | Method and Description |
---|---|
private boolean |
callNeuriteSrcipt(org.rosuda.JRI.Rengine re,
String sourceFile,
String[] scriptArgs)
Call a specified R script for neurite calculations.
|
private void |
extractMolProf(MTBImage moleculeImage,
MTBNeurite2DSet neuriteSet,
String imagePath,
String outPath)
Extraction of molecular profiles along the detected neurites.
|
private MTBRegion2DSet |
extractParticles(MTBImage particleImage,
MTBNeurite2DSet neuriteSet)
Extraction of molecular particles along the detected neurites.
|
MTBTableModel |
getDetectionResultTable()
Get the result table of the detected neurites.
|
String |
getDocumentation() |
Integer[] |
getMoleculeChannles()
Get molecule channels, used for molecular profile extraction.
|
String[] |
getMolecules()
Get names of molecules for each image channel.
|
NeuriteDetector2D |
getNeuriteDetector()
Get current neurite detector.
|
private void |
init()
Initialization method.
|
protected void |
operate() |
void |
validateCustom()
Custom validation of some input parameters.
|
readResolve
addOperatorExecutionProgressEventListener, addParameter, addParameter, addParameterUnconditioned, fieldContained, fireOperatorExecutionProgressEvent, getALDPortHashAccessKey, getConstructionMode, 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, validateGeneric, writeHistory, writeHistory, writeHistory
static de.unihalle.informatik.Alida.datatypes.ALDDirectoryString currentInput
@Parameter(label="Neurite Detector", direction=IN, required=true, description="Detector to use for neurite detection.", mode=STANDARD, dataIOOrder=0) private NeuriteDetector2D neuriteDetector
@Parameter(label="Extract Profiles", direction=IN, required=true, description="Flag to use molecular profile extraction.", mode=STANDARD, dataIOOrder=1) protected Boolean extractProfiles
@Parameter(label="Define Molecules", direction=IN, required=true, description="Names of molecules stained in each image channel.", mode=STANDARD, dataIOOrder=2) private String[] molecules
@Parameter(label="Profile Molecule Channels", direction=IN, required=true, description="Channels of molecules for profile extraction.", mode=STANDARD, dataIOOrder=3) private Integer[] moleculeChannels
@Parameter(label="Extract Particles", direction=IN, required=true, description="Flag to use molecular particle extraction.", mode=STANDARD, dataIOOrder=4) protected Boolean extractParticles
@Parameter(label="Particle Detector", direction=IN, required=true, description="Detector to use for molecular particle detection.", mode=STANDARD, dataIOOrder=5) private NeuriteParticleDetector2D particleDetector
@Parameter(label="Detection Result Table", direction=OUT, required=true, description="Table of detection results.") private transient MTBTableModel detectionResultTable
private transient org.rosuda.JRI.Rengine rEngine
private transient String outpath
public NeuronAnalyzer2D() throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
public NeuronAnalyzer2D(NeuriteDetector2D _neuriteDetector, Boolean _extractProfiles, String[] _molecules, Integer[] _moleculeChannels, Boolean _extractParticles, NeuriteParticleDetector2D _particleDetector, Boolean _verbose) throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
_detector
- detector to use for neurite detection_extractProfiles
- flag to use molecular profile extraction_molecules
- names of molecules to analyze for each image channel_moleculeChannels
- channles including molecule stains_extractParticles
- flag to use molecular particle extraction_particleDetector
- detector for molecular particles_verbose
- flag for standard console outputsde.unihalle.informatik.Alida.exceptions.ALDOperatorException
public void validateCustom() throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
validateCustom
in class de.unihalle.informatik.Alida.operator.ALDOperator
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
public String[] getMolecules()
public Integer[] getMoleculeChannles()
public MTBTableModel getDetectionResultTable()
public NeuriteDetector2D getNeuriteDetector()
private void init()
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 extractMolProf(MTBImage moleculeImage, MTBNeurite2DSet neuriteSet, String imagePath, String outPath)
private MTBRegion2DSet extractParticles(MTBImage particleImage, MTBNeurite2DSet neuriteSet)
private boolean callNeuriteSrcipt(org.rosuda.JRI.Rengine re, String sourceFile, String[] scriptArgs)
re
- current R engine (thread)sourceFile
- neurite calculation R script filescriptArg
- input directory path for the R script and other argumentspublic String getDocumentation()
getDocumentation
in class de.unihalle.informatik.Alida.operator.ALDOperator
Copyright © 2010–2020 Martin Luther University Halle-Wittenberg, Institute of Computer Science, Pattern Recognition and Bioinformatics. All rights reserved.