分享

python+opencv图像处理(十八)

 pythonjava学习 2021-04-06

自适应直方图均衡

之前介绍的直方图均衡的方法是针对整幅图像来说的,也即是全局的直方图均衡化。全局的直方图均衡化会存在一些问题,比如因过度爆光而使得局部细节模糊等,如下图所示,左图是源图,右图是直方图均衡化后的图,从图中可以看出,经过全局直方图均衡化后,图片中雕塑头像的局部细节丢失。

(实验原图来源于网络https://blog.csdn.net/jingbo18/article/details/81707181

本篇介绍的是自适应直方图均衡化。
自适应直方图均衡化是将原图像分成若干个小区域默认为8*8),然后分别对这些小区域进行直方图均衡化,最后将均衡化的小区域拼接起来。
1、cv2.createCLAHA函数
可以使用opencv自带的createCLAHA函数实现自适应直方图均衡化。
cv2.createCLAHA(clipLimit=8.0, titleGridSize=(8, 8)) 
参数说明:clipLimit颜色对比度的阈值titleGridSize进行像素均衡化的网格大小
使用本函数后均衡化的结果如下图所示,与全局直方图均衡化相比,人脸的眼睛、鼻子等细节明显要清晰很多。

其完整代码如下:
其直方图如下:

从上图可以看出,使用自适应直方图均衡方法后的直方图与原图像的直方图大致结构类似,不过局部更均衡。

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多