it.geosolutions.jaiext.stats
Class SimpleStatsOpImage

java.lang.Object
  extended by javax.media.jai.PlanarImage
      extended by javax.media.jai.OpImage
          extended by it.geosolutions.jaiext.stats.StatisticsOpImage
              extended by it.geosolutions.jaiext.stats.SimpleStatsOpImage
All Implemented Interfaces:
RenderedImage, javax.media.jai.ImageJAI, javax.media.jai.PropertyChangeEmitter, javax.media.jai.PropertySource, javax.media.jai.WritablePropertySource

public class SimpleStatsOpImage
extends StatisticsOpImage

The SimpleStatsOpImage class performs various simple statistics operations on an image. The statistical operation are indicated by the Statistics.StatsType class. A simple operation is an operation which not stores the pixel values into an array but only updates every time its statistical parameters. These operations can be calculated together by adding entries in the definition array "statsTypes". A ROI object passed to the constructor is taken into account by counting only the samples inside of it; an eventual No Data Range is considered by counting only values that are not No Data. The statistical calculation is performed by calling the getProperty() method. The statistics are calculated for every image tile and then the partial results are accumulated and passed to the getProperty() method. For avoiding unnecessary calculations the statistics can be calculated only the first time; but if the user needs to re-calculate the statistics, they can be cleared with the clearStatistic() method and then returned by calling again the getProperty() method.


Field Summary
 
Fields inherited from class it.geosolutions.jaiext.stats.StatisticsOpImage
bands, bandsNumber, booleanLookupTable, caseA, caseB, caseC, firstTime, hasNoData, hasROI, noData, ROI_EXTENDER, roiBounds, roiIter, selectedBands, srcROIImage, statNum, stats, statsTypes, useROIAccessor, xPeriod, yPeriod
 
Fields inherited from class javax.media.jai.OpImage
cache, cobbleSources, OP_COMPUTE_BOUND, OP_IO_BOUND, OP_NETWORK_BOUND, tileCacheMetric, tileRecycler
 
Fields inherited from class javax.media.jai.PlanarImage
colorModel, eventManager, height, minX, minY, properties, sampleModel, tileFactory, tileGridXOffset, tileGridYOffset, tileHeight, tileWidth, width
 
Constructor Summary
SimpleStatsOpImage(RenderedImage source, javax.media.jai.ImageLayout layout, Map configuration, int xPeriod, int yPeriod, javax.media.jai.ROI roi, Range noData, boolean useROIAccessor, int[] bands, Statistics.StatsType[] statsTypes)
           
 
Method Summary
 Raster computeTile(int tileX, int tileY)
          Returns a tile for reading.
 
Methods inherited from class it.geosolutions.jaiext.stats.StatisticsOpImage
byteLoop, clearStatistic, dispose, doubleLoop, floatLoop, getProperty, getPropertyNames, getTiles, intLoop, mapDestRect, mapSourceRect, shortLoop, ushortLoop
 
Methods inherited from class javax.media.jai.OpImage
addTileToCache, cancelTiles, computeRect, computeRect, computesUniqueTiles, createTile, getExpandedNumBands, getFormatTags, getOperationComputeType, getTile, getTileCache, getTileCacheMetric, getTileDependencies, getTileFromCache, getTileRecycler, getTiles, hasExtender, mapDestPoint, mapSourcePoint, prefetchTiles, queueTiles, recycleTile, setTileCache, vectorize, vectorize, vectorize
 
Methods inherited from class javax.media.jai.PlanarImage
addPropertyChangeListener, addPropertyChangeListener, addSink, addSink, addSource, addTileComputationListener, copyData, copyData, copyExtendedData, createColorModel, createSnapshot, createWritableRaster, finalize, getAsBufferedImage, getAsBufferedImage, getBounds, getColorModel, getData, getData, getDefaultColorModel, getExtendedData, getGraphics, getHeight, getImageID, getMaxTileX, getMaxTileY, getMaxX, getMaxY, getMinTileX, getMinTileY, getMinX, getMinY, getNumBands, getNumSources, getNumXTiles, getNumYTiles, getProperties, getPropertyClass, getPropertyNames, getSampleModel, getSinks, getSource, getSourceImage, getSourceObject, getSources, getSplits, getTileComputationListeners, getTileFactory, getTileGridXOffset, getTileGridYOffset, getTileHeight, getTileIndices, getTileRect, getTileWidth, getWidth, overlapsMultipleTiles, removeProperty, removePropertyChangeListener, removePropertyChangeListener, removeSink, removeSink, removeSinks, removeSource, removeSources, removeTileComputationListener, setImageLayout, setProperties, setProperty, setSource, setSources, tileXToX, tileXToX, tileYToY, tileYToY, toString, wrapRenderedImage, XToTileX, XToTileX, YToTileY, YToTileY
 
Methods inherited from class java.lang.Object
clone, equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 

Constructor Detail

SimpleStatsOpImage

public SimpleStatsOpImage(RenderedImage source,
                          javax.media.jai.ImageLayout layout,
                          Map configuration,
                          int xPeriod,
                          int yPeriod,
                          javax.media.jai.ROI roi,
                          Range noData,
                          boolean useROIAccessor,
                          int[] bands,
                          Statistics.StatsType[] statsTypes)
Method Detail

computeTile

public Raster computeTile(int tileX,
                          int tileY)
Returns a tile for reading.

Overrides:
computeTile in class javax.media.jai.OpImage
Parameters:
tileX - The X index of the tile.
tileY - The Y index of the tile.
Returns:
The tile as a Raster.


Copyright © 2006–2014 GeoSolutions. All rights reserved.