else if (raster.getTransferType() == DataBuffer.TYPE_FLOAT) ps.print(raster.getSampleFloat(i, j, band)); else ps.print(raster.getSample(i, j, band)); if (i < (raster.getMinX() + raster.getWidth() - 1)) { ps.print(" ");
continue; int sample = data.getSample(x, y, 0); sb.append(String.format(" %3d", sample));
/** * Returns the sample value in the specified band of current pixel, rounded toward zero. * This method assumes that {@link #next()} or {@link #moveTo(int,int)} has been invoked. */ @Override public int getSample(final int band) { return currentRaster.getSample(x, y, band); }
/** * {@inheritDoc }. */ @Override public int getSample() { return currentRaster.getSample(x, y, band); }
Raster raster = image.getData(); for (int j = 0; j < w; j++) { for (int k = 0; k < h; k++) { array[j][k] = raster.getSample(j, k, 0); } }
private void assertHasAlpha(RenderedImage ri) { ColorModel cm = ri.getColorModel(); assertTrue(cm.hasAlpha()); int numComponents = cm.getNumComponents(); assertEquals(4, numComponents); // Make sure the topleft pixel is transparent Raster raster = ri.getTile(0, 0); if (cm instanceof ComponentColorModel) { // Get the value of the alpha component assertEquals(0, raster.getSample(0, 0, numComponents - 1)); } else if (cm instanceof IndexColorModel) { int transparentPixel = ((IndexColorModel) cm).getTransparentPixel(); assertEquals(transparentPixel, raster.getSample(0, 0, 0)); } } }
public static double meanValue(BufferedImage image) { final Raster raster = image.getRaster(); return( IntStream.range(0, image.getHeight()) .parallel() .mapToDouble(y -> IntStream.range(0, image.getWidth()) .parallel() .map(x -> raster.getSample(x, y, 0)) .average().getAsDouble()) .average() .getAsDouble() ); }
//access sRGB values (Colors translated from img's ICC profile to sRGB) System.out.println( "pixel 0,0 value (sRGB): " + Integer.toHexString(img.getRGB(0,0)) ); // getRGB() actually means "getSRGB()" //access raw raster data, this will give you the uncorrected gray value //as it is in the image file Raster raster = image.getRaster(); System.out.println( "pixel 0,0 value (RAW gray value): " + Integer.toHexString(raster.getSample(0,0,0)) );
File file = new File("path/to/file"); BufferedImage img = ImageIO.read(file); int width = img.getWidth(); int height = img.getHeight(); int[][] imgArr = new int[width][height]; Raster raster = img.getData(); for (int i = 0; i < width; i++) { for (int j = 0; j < height; j++) { imgArr[i][j] = raster.getSample(i, j, 0); } }
/** * Test transparency is preserved when applying a ChannelSelect (Gray) style to an imageMosaic * with Transparent Footprint setting. */ @Test public void testTransparentFootprintWithChannelSelectGray() throws IOException, NoSuchAuthorityCodeException, FactoryException { File mosaicDirectory = prepareDirectory("footprintCSGray"); GridCoverage2D gc = readCoverage(mosaicDirectory, FootprintBehavior.Transparent, null); GridCoverage2D output = (GridCoverage2D) symbolizeRaster(gc, "graychannel.sld"); RenderedImage ri = output.getRenderedImage(); // Assert the alpha band has been preserved, even with a ChannelSelect SLD in place ColorModel cm = ri.getColorModel(); assertTrue(cm.hasAlpha()); assertEquals(2, cm.getNumComponents()); // Make sure the topleft pixel is transparent Raster rasterPixel = ri.getData(new Rectangle(0, 0, 1, 1)); assertEquals(0, rasterPixel.getSample(0, 0, 1)); disposeCoverage((GridCoverage2D) output); }
public Layer create(BufferedImage img) { Layer layer = create(img.getWidth() * img.getHeight()); int width = 0, height = 0; for (int i = 0; i < layer.size(); i++) { layer.set(i, img.getData().getSample(width++, height, 0)); if (width >= img.getWidth()) { width = 0; height++; } } return layer; }
private static boolean isMasked(final OpImage maskOpImage, final int x, final int y) { if (maskOpImage == null) { return true; } final int tileX = maskOpImage.XToTileX(x); final int tileY = maskOpImage.YToTileY(y); final Raster tile = maskOpImage.getTile(tileX, tileY); return tile.getSample(x, y, 0) != 0; }
private static boolean getSampleBoolean(PlanarImage image, int x, int y) { final int tileX = image.XToTileX(x); final int tileY = image.YToTileY(y); return image.getTile(tileX, tileY).getSample(x, y, 0) != 0; }
@Test public void testItOnLevel0TileNN() throws Exception { Raster data = im0.getData(new Rectangle(1500, 700, 100, 100)); assertEquals(700 * Y_FACTOR + 1500, data.getSample(1500, 700, 0)); assertEquals(700 * Y_FACTOR + 1500 + 99, data.getSample(1500 + 99, 700, 0)); assertEquals((700 + 99) * Y_FACTOR + 1500, data.getSample(1500, 700 + 99, 0)); assertEquals((700 + 99) * Y_FACTOR + 1500 + 99, data.getSample(1500 + 99, 700 + 99, 0)); }
private boolean isPixelValid(RasterDataNode raster, int pixelX, int pixelY, int level) { if (raster.isValidMaskUsed()) { PlanarImage image = ImageManager.getInstance().getValidMaskImage(raster, level); Raster data = getRasterTile(image, pixelX, pixelY); return data.getSample(pixelX, pixelY, 0) != 0; } else { return true; } }
private boolean isPixelValid(RasterDataNode raster, int pixelX, int pixelY, int level) { if (raster.isValidMaskUsed()) { PlanarImage image = ImageManager.getInstance().getValidMaskImage(raster, level); Raster data = getRasterTile(image, pixelX, pixelY); return data.getSample(pixelX, pixelY, 0) != 0; } else { return true; } }
private static int getSample(int pixelX, int pixelY, PlanarImage image) { final int x = image.getMinX() + pixelX; final int y = image.getMinY() + pixelY; final int tileX = image.XToTileX(x); final int tileY = image.YToTileY(y); final Raster data = image.getTile(tileX, tileY); return data.getSample(x, y, 0); }
private void testByte() { final RenderedImage image = createImage(ProductData.TYPE_UINT8, DataBuffer.TYPE_BYTE, new byte[]{12, 23, 34, 45}); assertEquals(12, image.getData().getSample(0, 0, 0)); assertEquals(23, image.getData().getSample(1, 0, 0)); assertEquals(34, image.getData().getSample(0, 1, 0)); assertEquals(45, image.getData().getSample(1, 1, 0)); }
boolean contains(final int x, final int y) { if (combinedMaskImage == null) { return true; } final int tileW = combinedMaskImage.getTileWidth(); final int tileH = combinedMaskImage.getTileHeight(); final int tileX = PlanarImage.XToTileX(x, combinedMaskImage.getTileGridXOffset(), tileW); final int tileY = PlanarImage.YToTileY(y, combinedMaskImage.getTileGridYOffset(), tileH); final Raster tile = combinedMaskImage.getTile(tileX, tileY); return tile.getSample(x, y, 0) != 0; }