ImageFilter (Double weight) { return new WeightFilter("Achromatopsia (simulation)", weight) { @Override int toRGB(int srcR, int srcG, int srcB) { double gray = 0.212656 * srcR + 0.715158 * srcG + 0.072186 * srcB; return toRGB(srcR, srcG, srcB, gray, gray, gray); } }; }