Package adams.data.image.features
Class Entropy
-
- All Implemented Interfaces:
CleanUpHandler
,Destroyable
,GlobalInfoSupporter
,LoggingLevelHandler
,LoggingSupporter
,OptionHandler
,ShallowCopySupporter<AbstractImageFeatureGenerator>
,SizeOfHandler
,Serializable
,Comparable
public class Entropy extends AbstractBufferedImageFeatureGenerator
Calculates the Shannon entropy of an image.
Original code taken from here:
http://stackoverflow.com/a/22280200
-logging-level <OFF|SEVERE|WARNING|INFO|CONFIG|FINE|FINER|FINEST> (property: loggingLevel) The logging level for outputting errors and debugging output. default: WARNING
-converter <adams.data.featureconverter.AbstractFeatureConverter> (property: converter) The feature converter to use to produce the output data. default: adams.data.featureconverter.SpreadSheet -data-row-type adams.data.spreadsheet.DenseDataRow -spreadsheet-type adams.data.spreadsheet.SpreadSheet
-field <adams.data.report.Field> [-field ...] (property: fields) The fields to add to the output. default:
-notes <adams.core.base.BaseString> [-notes ...] (property: notes) The notes to add as attributes to the generated data, eg 'PROCESS INFORMATION' . default:
-step-size <int> (property: stepSize) The step size to use (ie every n-th column/row). default: 1 minimum: 1
- Version:
- $Revision: 9196 $
- Author:
- fracpete (fracpete at waikato dot ac dot nz), Dale (dale at cs dot waikato dot ac dot nz)
- See Also:
- Serialized Form
-
-
Field Summary
Fields Modifier and Type Field Description protected int
m_StepSize
the step size to use (every n-th column/row).-
Fields inherited from class adams.data.image.AbstractImageFeatureGenerator
m_Converter, m_Fields, m_Notes, m_Prefix
-
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 Entropy()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description protected double
calculateShannonEntropy(BufferedImage img)
Calculates the Shannon entropy.HeaderDefinition
createHeader(BufferedImageContainer img)
Creates the header from a template image.void
defineOptions()
Adds options to the internal list of options.List<Object>[]
generateRows(BufferedImageContainer img)
Performs the actual feature generation.int
getStepSize()
Returns the step size (every n-th column/row).String
globalInfo()
Returns a string describing the object.void
setStepSize(int value)
Sets the step size (every n-th column/row).String
stepSizeTipText()
Returns the tip text for this property.-
Methods inherited from class adams.data.image.AbstractImageFeatureGenerator
checkData, cleanUp, compareTo, converterTipText, destroy, equals, fieldsTipText, generate, getConverter, getDatasetFormat, getFields, getNotes, getPrefix, getRowFormat, notesTipText, postProcessHeader, postProcessRow, postProcessRows, prefixTipText, reset, setConverter, setFields, setNotes, setPrefix, shallowCopy, shallowCopy
-
Methods inherited from class adams.core.option.AbstractOptionHandler
cleanUpOptions, finishInit, getDefaultLoggingLevel, getOptionManager, initialize, loggingLevelTipText, newOptionManager, 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, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface adams.core.logging.LoggingLevelHandler
getLoggingLevel
-
-
-
-
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 classAbstractImageFeatureGenerator<BufferedImageContainer>
-
setStepSize
public void setStepSize(int value)
Sets the step size (every n-th column/row).- Parameters:
value
- the step size
-
getStepSize
public int getStepSize()
Returns the step size (every n-th column/row).- Returns:
- the step size
-
stepSizeTipText
public String stepSizeTipText()
Returns the tip text for this property.- Returns:
- tip text for this property suitable for displaying in the gui
-
createHeader
public HeaderDefinition createHeader(BufferedImageContainer img)
Creates the header from a template image.- Specified by:
createHeader
in classAbstractImageFeatureGenerator<BufferedImageContainer>
- Parameters:
img
- the image to act as a template- Returns:
- the generated header
-
calculateShannonEntropy
protected double calculateShannonEntropy(BufferedImage img)
Calculates the Shannon entropy.- Parameters:
img
- the image to calculate the entropy for- Returns:
- the entropy
-
generateRows
public List<Object>[] generateRows(BufferedImageContainer img)
Performs the actual feature generation.- Specified by:
generateRows
in classAbstractImageFeatureGenerator<BufferedImageContainer>
- Parameters:
img
- the image to process- Returns:
- the generated features
-
-