Image Pixalate - neoneper/ClassProg3D1 GitHub Wiki
DEIXANDO A IMAGEM COM PIXELS GRANDES
Inicializando objeto que me permite trabalhar com convolução e efeitos visuais na imagem origem
BufferedImageOperation imageOperation = new BufferedImageOperation();
Carregando imagem para manipulação
BufferedImage inImage = ImageIO.read(new File( "puppy.jpg"));
Criando imagem pixalate
BufferedImage outImage = imageOperation.Pixelate(inImage,7);
Pronto. A Imagem de saída agora já esta em pixels. Observe que que o tamanho do pixel foi setado no parâmetro com o valor 7. Para pixels maiores basta aumentar este valor para o desejado. Também é possivel aidicional combinações de efeitos caso haja necessidade. Abaixo segue a continuação do exemplo, utilizando o efeito de convolução por kernel SHARPEN, para deixar a imagem mais nítida
Aplicando Kernel Sharpen
outImage = imageOperation.Convolve(outImage, BufferedImageOperationType.SHARPEN);
E agora para finalizar nosso exemplo iremos aplicar mais brilho a imagem final. Observe que a escala de Brilho e de todos os membros do HSV dos pixels são trabalhados na escala de -1 a 1, sendo o valor 0 zero, a atual HSV da imagem, ou seja, sem alterações. Para valores maiores ou menores que 0 você vai obter maior ou menor intensidade. No exemplo abaixo modificaremos apenas o Brilho, mas também e possível modificar o HUE e a Saturação.
Aplicando Brilho
outImage = imageOperation.BRIGHTNESS(outImage,0.5f);
Salvando nova Imagem com: Pixalate + Sharpen + Brightness
ImageIO.write(outImage, "jpg",new File("puppy2.jpg"));