Histograma Equalization - neoneper/ClassProg3D1 GitHub Wiki

EQUALIZANDO IMAGENS

Ver Script desta Atividade:

Muitas vezes uma imagem apresenta baixíssimo contraste, isso gera um histograma concentrado. Como os tons de cores são próximos fica realmente difícil enxergar a imagem, podemos redistribuir os tons de cor através de um processo chamado equalização do histograma.

Vamos Equalizar diversas imagens utilizando a biblioteca e ver o resultado final:

Inicializando objeto que me permite trabalhar com convolução, histogramas e efeitos:

     BufferedImageOperation imageOperation = new BufferedImageOperation();

Carregando imagens para equalizar:

     BufferedImage montanha = imageOperation.LoadImage("montanha.jpg");
     BufferedImage car = imageOperation.LoadImage("car.jpg");
     BufferedImage cars = imageOperation.LoadImage("cars.jpg");
     BufferedImage crowd = imageOperation.LoadImage("crowd.jpg");
     BufferedImage university = imageOperation.LoadImage("university.jpg");

Equalizando e gerando novas imagens equalizadas

     BufferedImage out_montanha = imageOperation.Equalize(montanha, BufferedImageEqualizeType.GRAYSCALE);
     BufferedImage out_cars = imageOperation.Equalize(cars, BufferedImageEqualizeType.GRAYSCALE);
     BufferedImage out_car = imageOperation.Equalize(car, BufferedImageEqualizeType.GRAYSCALE);
     BufferedImage out_crowd = imageOperation.Equalize(crowd, BufferedImageEqualizeType.GRAYSCALE);
     BufferedImage out_university = imageOperation.Equalize(university, BufferedImageEqualizeType.GRAYSCALE);

Salvando imagens equalizadas

     imageOperation.SaveImage(out_montanha,"jpg","out_montanha.jpg");
     imageOperation.SaveImage(out_car,"jpg","out_car.jpg");
     imageOperation.SaveImage(out_cars,"jpg","out_cars.jpg");
     imageOperation.SaveImage(out_crowd,"jpg","out_crowd.jpg");
     imageOperation.SaveImage(out_university,"jpg","out_university.jpg");

O Resultado Final é este:

Equalization