Class EvaluatePrediction
- java.lang.Object
-
- adams.core.logging.LoggingObject
-
- adams.core.logging.CustomLoggingLevelObject
-
- adams.core.option.AbstractOptionHandler
-
- adams.data.imagesegmentation.operation.AbstractImageSegmentationContainerOperation
-
- adams.data.imagesegmentation.operation.EvaluatePrediction
-
- All Implemented Interfaces:
Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,QuickInfoSupporter
,SizeOfHandler
,Serializable
public class EvaluatePrediction extends AbstractImageSegmentationContainerOperation
Evaluates a prediction (first container) against the annotation (second container) and outputs a spreadsheet with the results.- Author:
- FracPete (fracpete at waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description static String
KEY_ADDITIONAL
the key for additional count.static String
KEY_ANNOTATION
the key for annotation count.static String
KEY_MISSED
the key for missed count.static String
KEY_OVERLAP
the key for overlap count.protected boolean
m_AddMisclassification
whether to add misclassification information.-
Fields inherited from class adams.core.option.AbstractOptionHandler
m_OptionManager
-
Fields inherited from class adams.core.logging.LoggingObject
m_Logger, m_LoggingIsEnabled, m_LoggingLevel
-
-
Constructor Summary
Constructors Constructor Description EvaluatePrediction()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
addMisclassificationTipText()
Returns the tip text for this property.protected com.github.fracpete.javautils.struct.Struct2<Integer,Double>
calcMisclassified(int[] predPixels, int[] annoOtherPixels)
Calculates the misclassification count/percentage.protected Map<String,Integer>
compare(int[] predPixels, int[] annoPixels)
Compares the two pixel arrays.void
defineOptions()
Adds options to the internal list of options.protected Object
doProcess(ImageSegmentationContainer[] containers)
Performs the actual processing of the containers.Class
generates()
The type of data that is generated.boolean
getAddMisclassification()
Returns whether to add the misclassification information.String
getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.String
globalInfo()
Returns a string describing the object.int
maxNumContainersRequired()
Returns the maximum number of containers that are required for the operation.int
minNumContainersRequired()
Returns the minimum number of containers that are required for the operation.void
setAddMisclassification(boolean value)
Sets whether to add the misclassification information.-
Methods inherited from class adams.data.imagesegmentation.operation.AbstractImageSegmentationContainerOperation
check, checkSameDimensions, checkSameDimensions, process
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, destroy, finishInit, getDefaultLoggingLevel, getOptionManager, initialize, loggingLevelTipText, newOptionManager, reset, setLoggingLevel, toCommandLine, toString
-
Methods inherited from class adams.core.logging.LoggingObject
configureLogger, getLogger, getLoggingLevel, initializeLogging, isLoggingEnabled, sizeOf
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel
-
-
-
-
Field Detail
-
KEY_ANNOTATION
public static final String KEY_ANNOTATION
the key for annotation count.- See Also:
- Constant Field Values
-
KEY_MISSED
public static final String KEY_MISSED
the key for missed count.- See Also:
- Constant Field Values
-
KEY_OVERLAP
public static final String KEY_OVERLAP
the key for overlap count.- See Also:
- Constant Field Values
-
KEY_ADDITIONAL
public static final String KEY_ADDITIONAL
the key for additional count.- See Also:
- Constant Field Values
-
m_AddMisclassification
protected boolean m_AddMisclassification
whether to add misclassification information.
-
-
Method Detail
-
globalInfo
public String globalInfo()
Returns a string describing the object.- Specified by:
globalInfo
in interfaceGlobalInfoSupporter
- Specified by:
globalInfo
in classAbstractOptionHandler
- Returns:
- a description suitable for displaying in the gui
-
defineOptions
public void defineOptions()
Adds options to the internal list of options.- Specified by:
defineOptions
in interfaceOptionHandler
- Overrides:
defineOptions
in classAbstractOptionHandler
-
setAddMisclassification
public void setAddMisclassification(boolean value)
Sets whether to add the misclassification information.- Parameters:
value
- true if to add
-
getAddMisclassification
public boolean getAddMisclassification()
Returns whether to add the misclassification information.- Returns:
- true if to add
-
addMisclassificationTipText
public String addMisclassificationTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the GUI or for listing the options.
-
getQuickInfo
public String getQuickInfo()
Returns a quick info about the actor, which will be displayed in the GUI.- Specified by:
getQuickInfo
in interfaceQuickInfoSupporter
- Overrides:
getQuickInfo
in classAbstractImageSegmentationContainerOperation
- Returns:
- null if no info available, otherwise short string
-
minNumContainersRequired
public int minNumContainersRequired()
Returns the minimum number of containers that are required for the operation.- Specified by:
minNumContainersRequired
in classAbstractImageSegmentationContainerOperation
- Returns:
- the number of containers that are required, <= 0 means no lower limit
-
maxNumContainersRequired
public int maxNumContainersRequired()
Returns the maximum number of containers that are required for the operation.- Specified by:
maxNumContainersRequired
in classAbstractImageSegmentationContainerOperation
- Returns:
- the number of containers that are required, <= 0 means no upper limit
-
generates
public Class generates()
The type of data that is generated.- Specified by:
generates
in classAbstractImageSegmentationContainerOperation
- Returns:
- the class
-
compare
protected Map<String,Integer> compare(int[] predPixels, int[] annoPixels)
Compares the two pixel arrays.- Parameters:
predPixels
- the prediction pixelsannoPixels
- the annotation pixels- Returns:
- the statistics
-
calcMisclassified
protected com.github.fracpete.javautils.struct.Struct2<Integer,Double> calcMisclassified(int[] predPixels, int[] annoOtherPixels)
Calculates the misclassification count/percentage. Percentage is calculated as: miscl_pixel_count / total_pixel_count_other_label- Parameters:
predPixels
- the prediction pixelsannoOtherPixels
- the annotation pixels from another layer- Returns:
- the misclassified pixel count and percentage
-
doProcess
protected Object doProcess(ImageSegmentationContainer[] containers)
Performs the actual processing of the containers.- Specified by:
doProcess
in classAbstractImageSegmentationContainerOperation
- Parameters:
containers
- the containers to process- Returns:
- the generated data
-
-