public static void set(ImageGray img, int x, int y, double value) { if (GrayI.class.isAssignableFrom(img.getClass())) { ((GrayI)img).set(x,y,(int)value); } else if (img instanceof GrayF32) { ((GrayF32) img).set(x, y,(float)value); } else if (img instanceof GrayF64) { ((GrayF64) img).set(x, y, value); } else if (img instanceof GrayS64) { ((GrayS64) img).set(x, y, (long)value); } else { throw new IllegalArgumentException("Unknown or incompatible image type: " + img.getClass().getSimpleName()); } }
@Override public void setOutside(int x, int y, int val) { image.set(colWrap.getIndex(x) , rowWrap.getIndex(y),val); } }
public void set( int x , int y , int value ) { if( image.isInBounds(x,y) ) image.set(x,y,value); setOutside( x , y , value); }
if( x >= minX || y >= minY ) { int val = transform.get(x,y); transform.set( x,y,val * valueRange/max);
output.set(x,y, median );
/** * Computes the derivative of 'orig' along the x and y axes */ public static void process( GrayI orig, GrayI derivX, GrayI derivY) { final int width = orig.getWidth(); final int height = orig.getHeight(); for (int y = 1; y < height - 1; y++) { for (int x = 1; x < width - 1; x++) { int dy = -(orig.get(x - 1, y - 1) + 2 * orig.get(x, y - 1) + orig.get(x + 1, y - 1)); dy += (orig.get(x - 1, y + 1) + 2 * orig.get(x, y + 1) + orig.get(x + 1, y + 1)); int dx = -(orig.get(x - 1, y - 1) + 2 * orig.get(x - 1, y) + orig.get(x - 1, y + 1)); dx += (orig.get(x + 1, y - 1) + 2 * orig.get(x + 1, y) + orig.get(x + 1, y + 1)); derivX.set(x, y, dx); derivY.set(x, y, dy); } } }
output.set(x,y, UtilWavelet.round(trends[y]*f + details[y]*e,ef2,ef));
output.set(x,y, UtilWavelet.round(trends[x]*f + details[x]*e ,ef2,ef));