今天分享一款本人开发的自适应对比度增强算法,算法只处理亮度通道,基本思路就是综合考量当前点亮度与周围小邻域亮度、小领域亮度与大邻域亮度的对比度,即综合考量多尺度的对比度来确定最终的变换系数,算法不仅可以实现像素点对的对比度提升,还可以实现区域与区域之间的对比度提升。同时,算法对于暗区域的增强相对更弱以抑制噪声放大。算法逐点处理,每个点在不同尺度上的对比度各进行一次非线性变换,然后综合多尺度的变换系数,做最后一次非线性变换。若将这几次非线性计算的复杂度看作O(1),则总的复杂度就是O(N)。作为对比,经典的ACE算法快速实现也需要O(NlogN)的复杂度。算法具体实现细节暂且保密。
测试脚本、数据集及测试结果见链接(其中,AlgorithmCompare.m用于算法对比、批量测试及结果保存,亮度均衡与自适应对比度提升算法的参数都选择得稍稍过火以使结果更突出)(2020/10/23添加说明:目前多尺度的尺度选择已经更改,先前的程序在遇到极端情况时可能出现”削顶“现象,更改尺度选择后该问题已经基本解决):https://pan.baidu.com/s/1bAxNwEk9hdSVh83JaJG_1w
提取码:09mm
下面给出部分测试结果示例(以原图/对比度提升结果的/亮度均衡+对比度提升组合处理结果顺序贴图):
该对比度提升算法还可以用于红外图像,下面给出两个示例:
算法中有一个参数可以控制增强等级。与所有对比度增强算法一样,该算法也会面临噪声放大的问题,不过做了相应的抑制措施,总体来说折中效果还算不错。亮度均衡算法偶尔会引入一定的光晕效应,对比度提升算法将放大这种效应,具体可参见链接中的处理结果。