de.unihalle.informatik.MiToBo.filters.linear.anisotropic
Class OrientedFilter2DBatchAnalyzer

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.filters.linear.anisotropic.OrientedFilter2DBatchAnalyzer
All Implemented Interfaces:
de.unihalle.informatik.Alida.datatypes.ALDConfigurationValidator, de.unihalle.informatik.Alida.operator.events.ALDOperatorExecutionProgressEventListener, EventListener, loci.common.StatusReporter

@ALDAOperator(genericExecutionMode=ALL,
              level=APPLICATION)
public class OrientedFilter2DBatchAnalyzer
extends MTBOperator
implements loci.common.StatusReporter

Base class for applying oriented filters in different orientations.

The operator applies a given oriented filter in different orientations to the given image. Subsequently all filter responses are merged into a final result using the specified mode for joining.

Author:
Birgit Moeller

Nested Class Summary
static class OrientedFilter2DBatchAnalyzer.JoinMode
          Method for joining the results from the various orientations.
 
Nested classes/interfaces inherited from class de.unihalle.informatik.Alida.operator.ALDOperator
de.unihalle.informatik.Alida.operator.ALDOperator.HidingMode
 
Field Summary
protected  int angleSampling
          Angular sampling step size.
protected  MTBImage inputImg
          Input image to process.
protected  OrientedFilter2DBatchAnalyzer.JoinMode jMode
          Mode for joining results from different orientations.
protected  int maxAngle
          Maximal orientation where to end.
protected  int minAngle
          Minimal orientation from where to start.
protected  OrientedFilter2D oFilter
          Oriented filter to apply.
protected  MTBImageDouble responseStack
          Stack with filter responses of all orientations.
protected  MTBImageDouble resultImg
          Result image.
protected  Vector<loci.common.StatusListener> statusListeners
          Vector of installed StatusListeners.
 
Fields inherited from class de.unihalle.informatik.Alida.operator.ALDOperator
completeDAG, name, operatorExecutionEventlistenerList, portHashAccess, verbose, versionProvider
 
Constructor Summary
OrientedFilter2DBatchAnalyzer()
          Default constructor.
 
Method Summary
 void addStatusListener(loci.common.StatusListener statuslistener)
           
 MTBImageDouble getFilterResponseStack()
          Get individual filter responses.
 MTBImageByte getIndexMap()
          Get map of indices of maximal responses.
 MTBImageDouble getResultImage()
          Get result image.
 void notifyListeners(loci.common.StatusEvent e)
           
protected  void operate()
           
protected  Object readResolve()
          Init function for deserialized objects.
 void removeStatusListener(loci.common.StatusListener statuslistener)
           
 void setAngleSampling(int s)
          Set angular sampling interval.
 void setInputImage(MTBImage img)
          Specify the input image.
 void setMaxAngle(int max)
          Specify maximal angle to apply.
 void setMinAngle(int min)
          Specify minimal angle to apply.
 void setOrientedFilter(OrientedFilter2D filter)
          Specify the oriented filter to apply.
 
Methods inherited from class de.unihalle.informatik.Alida.operator.ALDOperator
addOperatorExecutionProgressEventListener, fieldContained, fireOperatorExecutionProgressEvent, getALDPortHashAccessKey, getConstructionMode, getHidingMode, getInInoutNames, getInInoutNames, getInNames, getInOutNames, getMissingRequiredInputs, getName, getNumParameters, getOutInoutNames, getOutNames, getParameter, getParameterDescriptor, getParameterNames, getSupplementalNames, getVerbose, getVersion, handleOperatorExecutionProgressEvent, isConfigured, print, print, print, printInterface, printInterface, readHistory, reinitializeParameterDescriptors, removeOperatorExecutionProgressEventListener, runOp, runOp, runOp, setConstructionMode, setHidingMode, setName, setParameter, setVerbose, toStringVerbose, unconfiguredItems, validate, validateCustom, validateGeneric, writeHistory, writeHistory, writeHistory
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

statusListeners

protected transient Vector<loci.common.StatusListener> statusListeners
Vector of installed StatusListeners.


inputImg

@Parameter(label="Input Image",
           required=true,
           direction=IN,
           mode=STANDARD,
           description="Input image.",
           dataIOOrder=0)
protected transient MTBImage inputImg
Input image to process.


oFilter

@Parameter(label="Oriented Filter",
           required=true,
           direction=IN,
           mode=STANDARD,
           description="Oriented Filter to Apply.",
           dataIOOrder=1)
protected OrientedFilter2D oFilter
Oriented filter to apply.


minAngle

@Parameter(label="Minimal Orientation",
           required=true,
           dataIOOrder=2,
           direction=IN,
           mode=ADVANCED,
           description="Minimal orientation to consider (in degrees).")
protected int minAngle
Minimal orientation from where to start.


maxAngle

@Parameter(label="Maximal Orientation",
           required=true,
           dataIOOrder=3,
           direction=IN,
           mode=ADVANCED,
           description="Maximal orientation to consider (in degrees).")
protected int maxAngle
Maximal orientation where to end.


angleSampling

@Parameter(label="Angular Sampling Steps",
           required=true,
           direction=IN,
           mode=ADVANCED,
           description="Angular sampling step size (in degrees).",
           dataIOOrder=4)
protected int angleSampling
Angular sampling step size.


jMode

@Parameter(label="Join Mode",
           required=true,
           dataIOOrder=5,
           direction=IN,
           mode=ADVANCED,
           description="Mode for joining different orientation responses.")
protected OrientedFilter2DBatchAnalyzer.JoinMode jMode
Mode for joining results from different orientations.


resultImg

@Parameter(label="Result Image",
           dataIOOrder=0,
           direction=OUT,
           description="Result image.")
protected transient MTBImageDouble resultImg
Result image.


responseStack

@Parameter(label="Filter Response Stack",
           dataIOOrder=1,
           direction=OUT,
           description="Filter response stack.")
protected transient MTBImageDouble responseStack
Stack with filter responses of all orientations.

Constructor Detail

OrientedFilter2DBatchAnalyzer

public OrientedFilter2DBatchAnalyzer()
                              throws de.unihalle.informatik.Alida.exceptions.ALDOperatorException
Default constructor.

Throws:
de.unihalle.informatik.Alida.exceptions.ALDOperatorException
Method Detail

readResolve

protected Object readResolve()
Description copied from class: MTBOperator
Init function for deserialized objects.

This function is called on an instance of this class being deserialized from file, prior to handing the instance over to the user. It takes care of a proper initialization of transient member variables as they are not initialized to the default values during deserialization.

Overrides:
readResolve in class MTBOperator
Returns:
Updated deserialized object.

operate

protected 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

setInputImage

public void setInputImage(MTBImage img)
Specify the input image.

Parameters:
img - Image to process.

setOrientedFilter

public void setOrientedFilter(OrientedFilter2D filter)
Specify the oriented filter to apply.

Parameters:
filter - Pre-configured filter object.

setMinAngle

public void setMinAngle(int min)
Specify minimal angle to apply.

Parameters:
min - Value of angle in degrees.

setMaxAngle

public void setMaxAngle(int max)
Specify maximal angle to apply.

Parameters:
max - Maximal value of angle in degrees.

setAngleSampling

public void setAngleSampling(int s)
Set angular sampling interval.

Parameters:
s - Sampling interval in degrees.

getResultImage

public MTBImageDouble getResultImage()
Get result image.

Returns:
Filtered image.

getFilterResponseStack

public MTBImageDouble getFilterResponseStack()
Get individual filter responses.

Returns:
Stack with filter responses.

getIndexMap

public MTBImageByte getIndexMap()
Get map of indices of maximal responses.

Returns:
Index map.

addStatusListener

public void addStatusListener(loci.common.StatusListener statuslistener)
Specified by:
addStatusListener in interface loci.common.StatusReporter

notifyListeners

public void notifyListeners(loci.common.StatusEvent e)
Specified by:
notifyListeners in interface loci.common.StatusReporter

removeStatusListener

public void removeStatusListener(loci.common.StatusListener statuslistener)
Specified by:
removeStatusListener in interface loci.common.StatusReporter


Copyright © 2010–2015 Martin Luther University Halle-Wittenberg. All rights reserved.