许久没更新,发一个low-level的经典算法:直方图均衡化。
刚接触图像处理时对于直方图均衡化达到的图像处理效果感到惊讶,但是这仅仅是图像处理中一个最入门的图像优化方法。
直方图均衡化原理通俗的讲就是为一张在灰度空间(一般0-255)不均匀分布的图片定义一个灰度映射关系,使其能够在灰度空间内均匀分布。
看下图:
看图的左边,灰度直方图的分布在做均衡化处理后显然均衡了很多。
直方图均衡化一般采用累计分布函数,为灰度区间内的每个灰度值寻找新的灰度映射关系:
(也就是说将原图中的各个原始灰度值用其对应的新灰度值替代)
其中,n是图像中像素的总和,是当前灰度级的像素个数,L是图像中可能的灰度级总数(0-255)。
再无耻借用一下别人的例子:
假设一张图片的灰度值:
利用以上的累计分布函数统计该图的灰度直方图概率分布:
则得到处理后的图片:
是不是很简单?