Package weka.knowledgeflow.steps
Class ImageViewer
- java.lang.Object
-
- weka.knowledgeflow.steps.BaseStep
-
- weka.knowledgeflow.steps.ImageViewer
-
- All Implemented Interfaces:
java.io.Serializable,BaseStepExtender,DataCollector,Step
@KFStep(name="ImageViewer", category="Visualization", toolTipText="View images", iconPath="weka/gui/knowledgeflow/icons/StripChart.gif") public class ImageViewer extends BaseStep implements DataCollector
A step for collecting and viewing image data- Version:
- $Revision: $
- Author:
- Mark Hall (mhall{[at]}pentaho{[dot]}com)
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ImageViewer()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description static java.util.Map<java.lang.String,byte[]>bufferedImageMapToSerializableByteMap(java.util.Map<java.lang.String,java.awt.image.BufferedImage> images)Utility method to convert a map ofBufferedImageto a map of byte arrays (that hold each image as png bytes)static java.util.Map<java.lang.String,java.awt.image.BufferedImage>byteArrayImageMapToBufferedImageMap(java.util.Map<java.lang.String,byte[]> dataMap)Utility method to convert a map ofbyte[]png image data to a map ofBufferedImagejava.util.Map<java.lang.String,java.awt.image.BufferedImage>getImages()Get a map of named images that this step has collectedjava.util.List<java.lang.String>getIncomingConnectionTypes()Get a list of acceptable incoming connections - only StepManager.CON_IMAGE in this casejava.util.Map<java.lang.String,java.lang.String>getInteractiveViewers()Gets a list of classes of viewers that can be popped up in the GUI Knowledge Flow from this step, given that we have received and stored some image data.java.util.List<java.lang.String>getOutgoingConnectionTypes()Get a list of outgoing connections that can be generated given the current state of the step - will produce StepManager.CON_IMAGE data if we have at least one incoming image connection connectionvoidprocessIncoming(Data data)Process incoming image datavoidrestoreData(java.lang.Object data)Restore data for this step.java.lang.ObjectretrieveData()Retrieve the data stored in this step.voidstepInit()Initialize the step.-
Methods inherited from class weka.knowledgeflow.steps.BaseStep
environmentSubstitute, getCustomEditorForStep, getDefaultSettings, getInteractiveViewersImpls, getName, getStepManager, globalInfo, isResourceIntensive, isStopRequested, outputStructureForConnectionType, outputStructureForConnectionType, setName, setStepIsResourceIntensive, setStepManager, setStepMustRunSingleThreaded, start, stepMustRunSingleThreaded, stop
-
-
-
-
Method Detail
-
stepInit
public void stepInit()
Initialize the step. Nothing to do in the case of this step- Specified by:
stepInitin interfaceBaseStepExtender- Specified by:
stepInitin interfaceStep
-
getIncomingConnectionTypes
public java.util.List<java.lang.String> getIncomingConnectionTypes()
Get a list of acceptable incoming connections - only StepManager.CON_IMAGE in this case- Specified by:
getIncomingConnectionTypesin interfaceBaseStepExtender- Specified by:
getIncomingConnectionTypesin interfaceStep- Returns:
- a list of acceptable incoming connections
-
getOutgoingConnectionTypes
public java.util.List<java.lang.String> getOutgoingConnectionTypes()
Get a list of outgoing connections that can be generated given the current state of the step - will produce StepManager.CON_IMAGE data if we have at least one incoming image connection connection- Specified by:
getOutgoingConnectionTypesin interfaceBaseStepExtender- Specified by:
getOutgoingConnectionTypesin interfaceStep- Returns:
- a list of outgoing connections
-
processIncoming
public void processIncoming(Data data) throws WekaException
Process incoming image data- Specified by:
processIncomingin interfaceBaseStepExtender- Specified by:
processIncomingin interfaceStep- Overrides:
processIncomingin classBaseStep- Parameters:
data- the data to process- Throws:
WekaException- if a problem occurs
-
getImages
public java.util.Map<java.lang.String,java.awt.image.BufferedImage> getImages()
Get a map of named images that this step has collected- Returns:
- a map of named images
-
getInteractiveViewers
public java.util.Map<java.lang.String,java.lang.String> getInteractiveViewers()
Gets a list of classes of viewers that can be popped up in the GUI Knowledge Flow from this step, given that we have received and stored some image data.- Specified by:
getInteractiveViewersin interfaceStep- Overrides:
getInteractiveViewersin classBaseStep- Returns:
- a list of viewer classes
-
retrieveData
public java.lang.Object retrieveData()
Retrieve the data stored in this step. This is a map of png image data (as raw bytes), keyed by image name.- Specified by:
retrieveDatain interfaceDataCollector- Returns:
- the data stored in this step
-
restoreData
public void restoreData(java.lang.Object data) throws WekaExceptionRestore data for this step. Argument is expected to be a map of png image data (as raw bytes) keyed by image name- Specified by:
restoreDatain interfaceDataCollector- Parameters:
data- the data to set- Throws:
WekaException- if a problem occurs
-
byteArrayImageMapToBufferedImageMap
public static java.util.Map<java.lang.String,java.awt.image.BufferedImage> byteArrayImageMapToBufferedImageMap(java.util.Map<java.lang.String,byte[]> dataMap) throws java.io.IOExceptionUtility method to convert a map ofbyte[]png image data to a map ofBufferedImage- Parameters:
dataMap- the map containing raw png byte arrays- Returns:
- a map of
BufferedImages - Throws:
java.io.IOException- if a problem occurs
-
bufferedImageMapToSerializableByteMap
public static java.util.Map<java.lang.String,byte[]> bufferedImageMapToSerializableByteMap(java.util.Map<java.lang.String,java.awt.image.BufferedImage> images)
Utility method to convert a map ofBufferedImageto a map of byte arrays (that hold each image as png bytes)- Parameters:
images- the map ofBufferedImages to convert- Returns:
- a map of png byte arrays
-
-