Class ConvertImageFormat
Object
AnchorBean<Task<NamedChannelsInput, NoSharedState>>
Task<NamedChannelsInput, NoSharedState>
RasterTask<NoSharedState, OutputSequenceIndexed<Stack,String>>
ConvertImageFormat
public class ConvertImageFormat
extends RasterTask<NoSharedState, OutputSequenceIndexed<Stack,String>>
Converts each input-image to an output format, optionally changing the bit depth.
Stacks containing multiple series (i.e. multiple images in a single file) are supported.
If it looks like an RGB image, channels are written as a single RGB image. Otherwise, each channel is written separately.
If only a single stack will be converted, its name is suppressed in the output.
The following outputs are produced:
| Output Name | Default? | Description |
|---|---|---|
| "converted" | yes | An image written in the default output format. |
outputs from Task |
- Author:
- Owen Feehan
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidafterAllJobsAreExecuted(NoSharedState sharedState, InputOutputContext context) NoSharedStatebeforeAnyJobIsExecuted(Outputter outputter, ConcurrencyPlan concurrencyPlan, List<NamedChannelsInput> inputs, ParametersExperiment parameters) protected OutputSequenceIndexed<Stack, String> createSharedStateJob(InputOutputContext context) Sets a new output-sequence for the series.OutputEnabledMutablevoiddoStack(InputBound<NamedChannelsInput, NoSharedState> input, OutputSequenceIndexed<Stack, String> sharedStateJob, int seriesIndex, int numberSeries, InputOutputContext context) Processes one stack from a series.voidendSeries(NoSharedState sharedStateTask, OutputSequenceIndexed<Stack, String> sharedStateJob, InputOutputContext context) Ends processing of a series.To convert as RGB or independently or in another way.ConvertChannelTo<?> Optionally, how to convert from one bit-depth to another (scaling, clamping etc.)booleanbooleanIf true, the series index is not included in the outputted file-names.voidsetChannelConversionStyle(ChannelConvertStyle channelConversionStyle) To convert as RGB or independently or in another way.voidsetChannelConverter(ConvertChannelTo<?> channelConverter) Optionally, how to convert from one bit-depth to another (scaling, clamping etc.)voidsetSuppressSeries(boolean suppressSeries) If true, the series index is not included in the outputted file-names.voidstartSeries(NoSharedState sharedStateTask, OutputSequenceIndexed<Stack, String> sharedStateJob, InputOutputContext context) Starts processing of a series.Methods inherited from class org.anchoranalysis.plugin.image.task.bean.RasterTask
doJobOnInput, inputTypesExpectedMethods inherited from class org.anchoranalysis.experiment.bean.task.Task
executeJob, isInputCompatibleWithMethods inherited from class org.anchoranalysis.bean.AnchorBean
checkMisconfigured, describeBean, describeChildren, duplicateBean, fields, findFieldsOfClass, getBeanName, getLocalPath, localise, toString
-
Constructor Details
-
ConvertImageFormat
public ConvertImageFormat()
-
-
Method Details
-
defaultOutputs
public OutputEnabledMutable defaultOutputs()- Overrides:
defaultOutputsin classTask<NamedChannelsInput, NoSharedState>
-
hasVeryQuickPerInputExecution
public boolean hasVeryQuickPerInputExecution()- Specified by:
hasVeryQuickPerInputExecutionin classTask<NamedChannelsInput, NoSharedState>
-
beforeAnyJobIsExecuted
public NoSharedState beforeAnyJobIsExecuted(Outputter outputter, ConcurrencyPlan concurrencyPlan, List<NamedChannelsInput> inputs, ParametersExperiment parameters) throws ExperimentExecutionException - Specified by:
beforeAnyJobIsExecutedin classTask<NamedChannelsInput, NoSharedState>- Throws:
ExperimentExecutionException
-
doStack
public void doStack(InputBound<NamedChannelsInput, NoSharedState> input, OutputSequenceIndexed<Stack, String> sharedStateJob, int seriesIndex, int numberSeries, InputOutputContext context) throws JobExecutionExceptionDescription copied from class:RasterTaskProcesses one stack from a series.This can be called many times in a job, once for each stack in the series.
It is assumed each job may have only one series.
- Specified by:
doStackin classRasterTask<NoSharedState, OutputSequenceIndexed<Stack,String>> - Parameters:
input- the input-object corresponding to this stack (a set of named-channels)sharedStateJob- shared-state across all stacks in a job (i.e. in all series)seriesIndex- the index of the input that is being currently processed from the seriesnumberSeries- the total number of images in the series (constant for a given task)context- IO context- Throws:
JobExecutionException- if an error occurs during job execution
-
getChannelConversionStyle
To convert as RGB or independently or in another way. -
setChannelConversionStyle
To convert as RGB or independently or in another way. -
isSuppressSeries
public boolean isSuppressSeries()If true, the series index is not included in the outputted file-names.It is always suppressed if only a single series exists.
-
setSuppressSeries
public void setSuppressSeries(boolean suppressSeries) If true, the series index is not included in the outputted file-names.It is always suppressed if only a single series exists.
-
getChannelConverter
public ConvertChannelTo<?> getChannelConverter()Optionally, how to convert from one bit-depth to another (scaling, clamping etc.) -
setChannelConverter
public void setChannelConverter(ConvertChannelTo<?> channelConverter) Optionally, how to convert from one bit-depth to another (scaling, clamping etc.)
-