阅读前请看<前言>,谢谢!
直方图均衡化,就是让图像的直方图尽量的平均,0-255每个的概率都相等。其公式如下:
这个证明在任何一本图像处理教材上都可以找到。下面提供实现代码:
public void histequalization(){
toGray();
double[] hist = math.Norm(hist());
for (int y = 0; y < h; y++) {
for (int x = 0; x < w; x++) {
this.data[x + y * w] = (int)(math.sum(hist, this.data[x + y * w])*255); //上面公式
}
}
}
结果如下:
原图:
直方图均衡化之后: