OpenCV直方图均衡化,上文介绍了一种增强图像对比度的方法,即通过伸展直方图,使它布满可用强度值的全部范围。这方法确实可以简单有效地提高图像质量,但很多时候,图像的视觉缺陷并不因为它使用的强度值范围太窄,而是因为部分强度值的使用频率远高于其他强度值。
计算图像直方图显示的直方图就是此类现象的一个很好的例子——中等灰度的强度值非常多,而较暗和较亮的像素值则非常稀少。因此,均衡对所有像素强度值的使用频率可以作为提高图像质量的一种手段。这正是直方图均衡化这一概念背后的思想,也就是让图像的直方图尽可能地平稳。
如何实现
OpenCV提供了一个易用的函数,用于直方图均衡化处理。这个函数的调用方式为:
cv::equalizeHist(image, result);
对图像应用该函数后,得到的结果如下所示:
均衡化后图像的直方图如下所示:
当然,因为查找表是针对整幅图像的多对一的转换过程,所以直方图是不能做到完全平稳的。但是可以看出,直方图的整体分布情况已经比原来均衡多了。
酷客网相关文章:
评论前必须登录!
注册