ColorModel mapCM = mapRed.getColorModel();
// ensure map isn't pre-multiplied.
GraphicsUtil.coerceData((WritableRaster)mapRas, mapCM, false);
DisplacementMapOp op
= new DisplacementMapOp(xChannelSelector,
yChannelSelector,
scaleX, scaleY,
mapRas);
WritableRaster destRas = op.filter(displacedRas, null);
destRas = destRas.createWritableTranslatedChild(0,0);
BufferedImage destBI = new BufferedImage(disCM, destRas,
disCM.isAlphaPremultiplied(),
null);