Class Interpolate
- All Implemented Interfaces:
Serializable,Operation
"NearestNeighbor", "Bilinear" and "Bicubic" (the "Optimal" interpolation
type is currently not supported).
Geotools extension:
The Geotools implementation provides two extensions to OpenGIS specification: First, it accepts also an
Interpolation argument type, for interoperability with Java Advanced Imaging. Second, it accepts also an array of
String or Interpolation objects. When an array is specified, the first
interpolation in the array is applied. If this interpolation returns a NaN value, then the second
interpolation is tried as a fallback. If the second interpolation returns also a NaN value, then the third
one is tried and so on until an interpolation returns a real number or until we reach the end of interpolation list.
This behavior is convenient when processing remote sensing images of geophysics data, for example Sea Surface
Temperature (SST), in which clouds may mask many pixels (i.e. set them to some NaN values). Because
"Bicubic" interpolation needs 4×4 pixels while "Bilinear" interpolation needs only 2x2 pixels,
the "Bilinear" interpolation is less likely to fails because of clouds (NaN values) than the
"Bicubic" one (note: only one NaN value is enough to make an interpolation fails). One can workaround
the problem by trying a bicubic interpolation first, then a linear interpolation if "Bicubic" failed at a
particular location, etc. This behavior can be specified with the following "Type" argument:
new String[]{"Bicubic", "Bilinear", "NearestNeighbor"}
.
Name: "Interpolate"
JAI operator: N/A
Parameters:
| Name | Class | Default value | Minimum value | Maximum value |
|---|---|---|---|---|
"Source" |
GridCoverage2D |
N/A | N/A | N/A |
"Type" |
CharSequence |
"NearestNeighbor" | N/A | N/A |
- Since:
- 2.2
- Author:
- Martin Desruisseaux (IRD)
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final ParameterDescriptor<Object>The parameter descriptor for the interpolation type.Fields inherited from class Operation2D
PRIMARY_SOURCE_INDEX, SOURCE_0Fields inherited from class AbstractOperation
descriptor -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptiondoOperation(ParameterValueGroup parameters, Hints hints) Applies an interpolation to a grid coverage.Methods inherited from class Operation2D
extractSources, getFactoryMethods inherited from class AbstractOperation
equals, getDescription, getDocURL, getName, getNumSources, getParameters, getVendor, getVersion, hashCode, toString
-
Field Details
-
TYPE
The parameter descriptor for the interpolation type.
-
-
Constructor Details
-
Interpolate
public Interpolate()Constructs an"Interpolate"operation.
-
-
Method Details
-
doOperation
Applies an interpolation to a grid coverage. This method is invoked byorg.geotools.coverage.processing.DefaultProcessorfor the"Interpolate"operation.- Specified by:
doOperationin classAbstractOperation- Parameters:
parameters- List of name value pairs for the parameters required for the operation.hints- A set of rendering hints, ornullif none. TheDefaultProcessormay provides hints for the following keys:Hints.COORDINATE_OPERATION_FACTORYandHints.JAI_INSTANCE.- Returns:
- The result as a coverage.
-