public class OrderedDitherDescriptor
extends OperationDescriptorImpl
OperationDescriptor
describing the "OrderedDither" operation.
The "OrderedDither" operation performs color quantization by finding the nearest color to each pixel in a supplied color cube and "shifting" the resulting index value by a pseudo-random amount determined by the values of a supplied dither mask.
The dither mask is supplied as an array of KernelJAI
objects the length of which must equal the number of bands in the image. Each
element of the array is a KernelJAI
object which represents the dither mask matrix for the corresponding band. All
KernelJAI
objects in the array must have the same dimensions and contain floating point values greater than or equal to 0.0 and less
than or equal to 1.0.
For all integral data types, the source image samples are presumed to occupy the full range of the respective types. For floating point data types it is assumed that the data samples have been scaled to the range [0.0, 1.0].
Notice that it is possible to define a ROI
object for reducing the computation area. Also it is possible to define a Range
of
nodata for checking if a Pixel is a NoData one.
Name | Value |
---|---|
GlobalName | OrderedDither |
LocalName | OrderedDither |
Vendor | it.geosolutions.jaiext |
Description | Performs ordered dither color quantization taking into account ROI and NoData. |
DocURL | |
Version | 1.0 |
arg0Desc | Input color cube. |
arg1Desc | Input dither mask. |
arg2Desc | The ROI to be used for reducing calculation area. |
arg3Desc | The Nodata parameter to check. |
arg4Desc | The destination nodata parameter used to substitute the old nodata one. |
Name | Class Type | Default Value |
---|---|---|
colorMap | javax.media.jai.ColorCube | ColorCube.BYTE_496 |
ditherMask | javax.media.jai.KernelJAI[] | KernelJAI.DITHER_MASK_443 |
roi | javax.media.jai.KernelJAI[] | null |
nodata | it.geosolutions.jaiext.range | null |
destNoData | Double | 0d |
Constructor and Description |
---|
OrderedDitherDescriptor()
Constructor.
|
Modifier and Type | Method and Description |
---|---|
static RenderedOp |
create(RenderedImage source0,
ColorCube colorMap,
KernelJAI[] ditherMask,
RenderingHints hints,
ROI roi,
Range nodata,
Double destNoData)
Performs ordered dither color quantization using a specified color cube and dither mask.
|
boolean |
validateArguments(String modeName,
ParameterBlock args,
StringBuffer msg)
Validates the input source and parameters.
|
arePropertiesSupported, getDefaultSourceClass, getDestClass, getDestClass, getInvalidRegion, getName, getNumParameters, getNumSources, getParamClasses, getParamDefaults, getParamDefaultValue, getParameterListDescriptor, getParamMaxValue, getParamMinValue, getParamNames, getPropertyGenerators, getPropertyGenerators, getRenderableDestClass, getRenderableSourceClasses, getResourceBundle, getResources, getSourceClasses, getSourceClasses, getSourceNames, getSupportedModes, isImmediate, isModeSupported, isRenderableSupported, isRenderedSupported, makeDefaultSourceClassList, validateArguments, validateParameters, validateParameters, validateRenderableArguments, validateRenderableSources, validateSources, validateSources
public boolean validateArguments(String modeName, ParameterBlock args, StringBuffer msg)
In addition to the standard checks performed by the superclass method, this method checks that "colorMap" and "ditherMask" are valid for the given source image.
validateArguments
in interface OperationDescriptor
validateArguments
in class OperationDescriptorImpl
public static RenderedOp create(RenderedImage source0, ColorCube colorMap, KernelJAI[] ditherMask, RenderingHints hints, ROI roi, Range nodata, Double destNoData)
Creates a ParameterBlockJAI
from all supplied arguments except hints
and invokes
JAI.create(String,ParameterBlock,RenderingHints)
.
source0
- RenderedImage
source 0.colorMap
- The color cube. May be null
.ditherMask
- The dither mask. May be null
.hints
- The RenderingHints
to use. May be null
.roi
- Optional ROI object used for reducing computationnodata
- Optional Range used for checking NoDatadestNoData
- Value related to the Output NoDataRenderedOp
destination.JAI
,
ParameterBlockJAI
,
RenderedOp
Copyright © 2006–2018 GeoSolutions. All rights reserved.