Implementation of a Histogram Equalization Algorithm Based on Image Segmentation
-
摘要: 红外原始图像对比度低,动态范围高,而且不同场景信号动态范围不一样,为了得到更好的图像效果,需要对红外图像原始数据进行灰度变换。本文针对全局直方图均衡增强算法的不足,提出了一种基于区域分割的直方图均衡增强方法。通过将图像分割成多个区域,每个区域分别做直方图均衡,然后通过线性插值对图像做像素重构,有效地改善了红外热成像系统的图像质量,对比度和图像细节信息得到很大的增强。该算法易于在FPGA中实现,且取得了较好的效果。Abstract: Original infrared images have a low contrast and high dynamic range, with the dynamic range varying between scenes. To obtain better images, it is necessary to transform the original infrared image data. Aiming to overcome the deficiency of the global histogram equalization algorithm, this study proposes a histogram equalization method based on region segmentation. By dividing the image into several regions, each region is histogram balanced; subsequently, pixels are reconstructed by linear interpolation. This effectively improves the image quality of the infrared thermal imaging system, greatly enhancing the contrast and image detail information. The algorithm is simple to implement in an FPGA and positive results are obtained.
-
Keywords:
- infrared image /
- histogram equalization /
- gray scale transformation /
- FPGA
-
0. 引言
近年来,红外热成像设备应用越来越广泛,对其成像质量要求也越来越高。红外热成像设备的探测器采样位宽一般都是14~16 bit,而且原始的红外图像对比度低、细节模糊、信噪比也比较低[1]。为了能够实时显示,得到更好的图像效果,需要将原始的14~16 bit数据转换成8 bit,并做一些图像增强处理。数据转换的常用方法包括线性变换、传统直方图均衡、平台直方图均衡等[2]。
直方图均衡算法是一种常用的图像灰度变换和增强的方法。根据图像的直方图分布信息来调整图像灰度,使得调整后的图像的直方图分布更均匀,增大图像的灰度级范围,使整体图像的对比度和清晰度更强。由于红外图像自身的特点灰度级较少,使用传统直方图均衡增强后会造成背景噪声的对比度提高,某些细节不能体现出来,对于有些场景会有高灰度区域过亮或者低灰度过暗,对比度不自然的现象。
平台直方图均衡可以通过调节平台值来限制直方图的峰值,从而限制部分噪声,同时保留部分灰度级统计的差异性使图像对比度得到增强,且实时处理下不会出现明显亮度抖动。近年来,又提出许多的改进的直方图算法[3-9],包括自适应直方图均衡化[5-7]、抑制背景的局部直方图均衡[8]、限制对比度自适应直方图均衡化[9]等。但这些算法都是基于全局直方图处理,图像的局部细节得不到提升,本文提出了一种基于区域分割的直方图均衡算法,有效提升了图像的局部细节。
1. 传统直方图均衡
直方图均衡化是一种增强图像对比度的方法,其主要思想是将一幅图像的直方图分布变成近似均匀分布,重新分配图像的像素值,从而增强图像的对比度。
灰度直方图是指图像中每一个灰度级与其出现频数间的统计关系。对于数字图像,由于图像空间坐标和灰度值都已离散化,可以很容易统计出灰度等级的分布状况:
$$ p(k)={n}_{k}/n,k=0,1,2,\cdots ,L-1 $$ 式中:p(k)为第k个灰度级的概率密度;L为该幅图像中的灰度等级数;nk为第k个灰度级中包含的像素数;n为该幅图像中的总像素数。灰度直方图可以看成是一个随机分布密度函数。
直方图的形态分布反映出图像的质量,根据直方图形态的分布可以看出图像亮度过亮或者过暗或者灰度是否太过于集中对比度太弱等。如图 1所示,列出各种直方图的形态分布。
第1幅图中直方图靠近低灰度区域,表明整幅图像亮度偏暗,该图像属于低亮图像。
第2幅图中直方图靠近高灰度区域,表明整幅图像亮度偏亮,该图像属于高亮图像。
第3幅图中直方图灰度分布比较集中,标准差较小,表明整幅图像对比度较低,该图像属于低反差景物图像。
第4幅图中直方图灰度分布比较宽,标准差较大,表明整幅图像对比度高,该图像属于高反差景物图像。
将L级灰度图像变换到M级灰度图像的直方图均衡算法原理如下:
① 统计各灰度级的像素个数nk,k=0, 1, 2, …, L-1;
② 计算原始图像直方图各灰度级的频数,见公式(1);
$$ p(k) = \frac{{{n_k}}}{n},k = 0,1,2, \cdots ,L - 1 $$ (1) 式中:n为原始图像像素总数。
③ 计算累积分布函数F,见公式(2);
$$ F = \sum\nolimits_{l = 0}^k {p(l)} $$ (2) ④ 应用公式(M-1)×F求出变换后的灰度值,见公式(3)。
假设红外原始图像的位宽为14 bit,则原始图像f的灰度级范围为[0, 16383],变换后的灰度图像f′的位宽为8 bit,灰度级范围为[0, 255]。
设原始图像的直方图统计为P(k),k∈(0~16383)。则变换后的图像为:
$$ f' = \sum\nolimits_{l = 0}^{16383} {p(l)} \times 255 $$ (3) 传统直方图算法是有选择地对占有较多像素的灰度进行了增强,扩展了这些灰度的动态范围,对占有较少像素的灰度进行了抑制。占有较多像素点的灰度,均衡后会比前一级出现的灰度亮许多,而占有较少像素点的灰度,均衡后可能和前一级出现的灰度相差很小甚至可能被合并。这也是传统直方图均衡的缺点。
2. 算法设计
本算法将图像分成多块区域,对每个区域进行直方图均衡。再通过双线性插值处理得到最后的图像。
2.1 图像区域分割
将图像分割成m×n个区域;分别统计各个区域的直方图Pi(k), (1≤i≤m×n, k∈(0~16383));
2.2 直方图平台限制
平台直方图均衡是在计算时对权重设置一个上限值,用平台值去限制原直方图。相较于传统直方图均衡算法,平台直方图算法统计完成后需对直方图信息作修正,高平台对背景和噪声进行抑制。设定平台阈值为T,分别对各区域的直方图做平台修正处理,如果某个灰度级的直方图值小于平台阈值T就保持不变,如果大于阈值T则直接将其置为T。设修正后的直方图为PTi(k),则:
$$ {P_{Ti}}(k) = \left\{ {\begin{array}{*{20}{c}} {{P_i}(k),{P_i}(k) \leqslant T} \\ {T,{P_i}(k) > T} \end{array}} \right. $$ (4) 图 2为直方图平台限制示意图。在平台直方图均衡算法中,平台值的选取是一个关键因素。平台值的选取直接影响图像的效果。
2.3 直方图映射
对各个区域的图像分别映射,用g表示映射后的图像,f表示原始14 bit图像:
$$ g = \sum\nolimits_{l = 0}^k {{P_{Ti}}(l) \times 255/{S_i}} $$ (5) 式中:k∈(0~16383);$ {P_{Ti}}(l) $是根据原始图像f计算出得平台直方图,Si为f的累积求和直方图,按上述关系可将f映射到g。
2.4 双线性插值处理
对映射后的图像按区域采用双线性插值[9]变换得到输出图像。如图 3所示,图像分割的区域用A1,A2,A3,A4来表示。
对于第一个模块中,如图 3中的区域1,将重构后像素点(x, y)的灰度值设为G,则G直接沿用映射后像素值:
$$ G=g(x,y) $$ (6) 对于除去顶角图像边沿,即图像上下边沿和左右边沿,如图 3中的区域2,将重构后像素点(x, y)的灰度值分别设为Gtop、Gbottom、Gleft、Gright,区域A1的映射值为gA1(x, y),区域A2的映射值为gA2(x, y),区域A3的映射值为gA3(x, y),区域A4的映射值为gA4(x, y),l1、l2、l3、l4为该点到各区域的距离,则上边沿的灰度为:
$$ {G_{\rm{top}}} = \frac{{{g_{A1}}(x,y) \times {l_1} + {g_{A2}}(x,y) \times {l_2}}}{{{l_1} + {l_2}}} $$ (7) 下边沿的灰度为:
$$ {G_{\rm{bottom}}} = \frac{{{g_{A3}}(x,y) \times {l_1} + {g_{A4}}(x,y) \times {l_2}}}{{{l_1} + {l_2}}} $$ (8) 左边沿的灰度为:
$$ {G_{\rm{left}}} = \frac{{{g_{A1}}(x,y) \times {l_3} + {g_{A3}}(x,y) \times {l_4}}}{{{l_3} + {l_4}}} $$ (9) 右边沿的灰度为:
$$ {G_{\rm{right}}} = \frac{{{g_{A2}}(x,y) \times {l_3} + {g_{A4}}(x,y) \times {l_4}}}{{{l_3} + {l_4}}} $$ (10) 对于中间区域,如图 3中的区域3,将重构后像素点(x, y)的灰度值设为Gm,则该区域的灰度为:
$$ {G_{\rm{m}}} = \frac{{{G_{\rm{top}}} \times {l_4} + {G_{\rm{bottom}}} \times {l_3}}}{{{l_3} + {l_4}}} $$ (11) 3. FPGA实现
3.1 直方图统计模块
本算法的直方图统计模块如图 4所示,采用多个RAM模块,根据输入图像的灰度,分别统计各区域的直方图。根据图像数据输入时序每个像素时钟周期进行累加计算,一幅图像传输完成后就可以完成统计。实时性高。
3.2 直方图映射模块
完成直方图图像统计后,分别计算出各区域灰度映射值存于另一组RAM中,如图 5所示。
3.3 线性插值计算
按照2.4提到的双线性插值算法,根据图像所在的区域分别计算重构后的灰度值,得到最终输出图像。FPGA里图像是按照时序图流水线传输,所以一幅图像传输完成后就可以完成所有像素的重构计算。
4. 结果分析
本算法采用软件仿真得到很好的效果,而且算法简单,结合FPGA的高速、并行处理能力使得本算法已成功应用在红外热成像设备中,提高了红外热像仪的图像质量。
4.1 主观视觉效果对比
主观视觉效果对比如图所示,图 6为复杂场景的图像对比,其中图 6(a)为原始图像,图 6(b)为复杂场景的全局直方图均衡处理算法结果,图 6(c)为复杂场景的本算法的处理结果。图 7为对比度较弱的场景图像对比,图 7(a)为对比度较弱的场景的原始图像,图 7(b)为对比度较弱的场景的全局直方图均衡处理算法,图 7(c)为对比度较弱的场景的本算法的处理结果。图 8为近距离场景图像对比,图 8(a)为近距离场景的原始图像,图 8(b)为近距离场景的全局直方图均衡处理算法,图 8(c)为近距离场景的本算法的处理结果。通过图像对比可以看出本算法的对比度、细节信息以及视觉效果优于传统全局直方图均衡算法。
4.2 图像客观评价
人眼观察是一种有效的图像质量评价标准,但是它是一种主观评价,为了更加客观地评价本算法的效果,采用信息熵[10]和标准差作为定量评价指标。信息熵的表达式如下:
$$ H = - \sum\nolimits_{k = 0}^{L - 1} {p(k){{\log }_2}p(k)} $$ (12) 式中:L是图像的灰度最大值;p(k)为图像灰度值出现的概率。
图像信息熵是一种特征统计形式,它反映了图像中平均信息量的多少。图像信息熵表示图像中灰度分布的聚集特征所包含的信息量。信息熵越大表示图像中含的信息量越多。表 1列出了全局直方图算法和本算法的信息熵对比。
表 1 图像信息熵Table 1. Image information entropyEvaluating indicator Global histogram This algorithm Information entropy of scene 1 7.51 7.55 Information entropy of scene 2 6.53 7.57 Information entropy of scene 3 7.33 7.83 由表 1可以看出,本算法的信息熵值大于传统全局直方图算法,信息量更多。
另一种定量评价指标为标准差δ,其表达式如下:
$$ \delta = \sqrt {\frac{1}{{MN}}{{\sum\nolimits_{y = 1}^M {\sum\nolimits_{x = 1}^N {(f(x,y) - \overline f )} } }^2}} $$ (13) 式中:$ \overline f $指图像f(x, y)的灰度平均值;M和N指图像的行数和列数。
图像标准差反映图像的细节信息,标准差越大,图像的细节信息就越多。
表 2列出了全局直方图算法和本算法的图像标准差的对比。
表 2 图像标准差Table 2. Image standard deviationEvaluating indicator Global histogram This algorithm Standard deviation of scene 1 60.1 66.8 Standard deviation of scene 2 28.7 53.9 Standard deviation of scene 3 43.3 59.1 由表 2可以看出,本算法的标准差值优于传统全局直方图算法,图像细节信息量更多。
5. 结语
本文提出了一种基于区域分割的直方图均衡算法,算法简单,容易在FPGA中实现。通过主观观察处理后的图像和客观评价。本算法有较好的细节表现力和动态范围压缩能力,有效提升了红外图像的清晰度和对比度,得到了更好的图像视觉效果。
-
表 1 图像信息熵
Table 1 Image information entropy
Evaluating indicator Global histogram This algorithm Information entropy of scene 1 7.51 7.55 Information entropy of scene 2 6.53 7.57 Information entropy of scene 3 7.33 7.83 表 2 图像标准差
Table 2 Image standard deviation
Evaluating indicator Global histogram This algorithm Standard deviation of scene 1 60.1 66.8 Standard deviation of scene 2 28.7 53.9 Standard deviation of scene 3 43.3 59.1 -
[1] 张志忠, 康蓉, 郑卫平, 等. 一种基于组合方法的红外图像增强方法[J]. 红外技术, 2009, 31(10): 591-597. DOI: 10.3969/j.issn.1001-8891.2009.10.008 ZHANG Zhizhong, KANG Rong, ZHENG Weiping, et al. An infrared image enhancement method based on a combination of methods[J]. Infrared Technology, 2009, 31(10): 591-597. DOI: 10.3969/j.issn.1001-8891.2009.10.008
[2] 范永杰, 张亚萍, 陈华. 平台直方图均衡算法实现的存储优化方法[J]. 激光与红外, 2013, 43(5): 522-525. DOI: 10.3969/j.issn.1001-5078.2013.05.011 FAN Yongjie, ZHANG Yaping, CHEN Hua. Realizing memory optimization to plateau histogram[J]. Laser & Infrared, 2013, 43(5): 522-525. DOI: 10.3969/j.issn.1001-5078.2013.05.011
[3] 魏新, 马丽华, 李云霞, 等. 基于图像分割和平台直方图均衡的红外图像增强算法[J]. 红外技术, 2012, 34(5): 272-275. DOI: 10.3969/j.issn.1001-8891.2012.05.006 WEI Xin, MA Lihua, LI Yunxia, et al. Infrared image enhancement algorithm based on image segmentation and platform histogram equalization[J]. Infrared Technology, 2012, 34(5): 272-275. DOI: 10.3969/j.issn.1001-8891.2012.05.006
[4] 李牧, 周瑞杰, 田哲嘉. 基于直方图的热红外图像增强方法[J]. 红外技术, 2020, 42(9): 800-885. https://www.cnki.com.cn/Article/CJFDTOTAL-HWJS202009011.htm LI Mu, ZHOU Ruijie, TIAN Zhejia. A thermal infrared image enhancement method based on histogram[J]. Infrared Technology, 2020, 42(9): 880-885. https://www.cnki.com.cn/Article/CJFDTOTAL-HWJS202009011.htm
[5] 赵耀宏, 史泽林, 罗海波, 等. 自适应红外图像直方图均衡增强算法[J]. 光电工程, 2008, 35(3): 97-101. https://www.cnki.com.cn/Article/CJFDTOTAL-GDGC200803024.htm ZHAO Yaohong, SHI Zelin, LUO Haibo, et al. Self-adaptive histogram equalization enhancement algorithm for infrared image[J]. Opto-Electronic Engineering, 2008, 35(3): 97-101. https://www.cnki.com.cn/Article/CJFDTOTAL-GDGC200803024.htm
[6] 张懿, 刘旭, 李海峰. 自适应图像直方图均衡化算法[J]. 浙江大学学报, 2007, 41(4): 630-633. DOI: 10.3785/j.issn.1008-973X.2007.04.021 ZHANG Yi, LIU Xu, LI Haifeng. Adaptive image histogram equalization algorithm[J]. Journal of Zhejiang University: Engineering Science, 2007, 41(4): 630-633. DOI: 10.3785/j.issn.1008-973X.2007.04.021
[7] 贾兆辉, 伊兴国, 孔鹏, 等. 一种基于直方图的自适应红外图像增强算法[J]. 红外技术, 2014, 36(9): 719-722. http://hwjs.nvir.cn/article/id/hwjs201409008 JIA Zhaohui, YI Xingguo, KONG Peng, et al. A self-adaptive enhancement algorithm for infrared images based on histogram[J]. Infrared Technology, 2014, 36(9): 719-722. http://hwjs.nvir.cn/article/id/hwjs201409008
[8] 韦瑞峰, 赵荣普, 徐肖庆, 等. 基于直方图的红外图像细节增强算法研究[J]. 红外技术, 2016, 38(6): 472-475. http://hwjs.nvir.cn/article/id/hwjs201606005 WEI Ruifeng, ZHAO Rongpu, XU Xiaoqig, et al. Infrared image detail enhancement based on histogram[J]. Infrared Technology, 2016, 38(6): 472-475. http://hwjs.nvir.cn/article/id/hwjs201606005
[9] 刘玉婷, 陈峥, 付占方, 等. 基于CLAHE的红外图像增强算法[J]. 激光与红外, 2016, 46(10): 1290-1294. DOI: 10.3969/j.issn.1001-5078.2016.10.023 LIU Yuting, CHEN Zheng, FU Zhanfang, et al. Infrared image enhancement algorithm based on CLAHE[J]. Laser & Infrared, 2016, 46(10): 1290-1294. DOI: 10.3969/j.issn.1001-5078.2016.10.023
[10] 公志强, 刘仁军, 汪利庆, 等. 一种基于红外对比度提升的高动态范围压缩技术[J]. 红外技术, 2021, 43(8): 792-797. http://hwjs.nvir.cn/article/id/f858a5af-05cb-4918-9f2c-f163af6b5bb5 GONG Zhiqiang, LIU Renjun, WANG Liqing, et al. A high dynamic range compression technique based on infrared contrast enhance-ment[J]. Infrared Technology, 2021, 43(8): 792-797. http://hwjs.nvir.cn/article/id/f858a5af-05cb-4918-9f2c-f163af6b5bb5
-
期刊类型引用(4)
1. 吕伽奇,丁帅,庞静珠,许小进. 基于改进LeNet-5网络的堆芯燃料组件编码识别. 东华大学学报(自然科学版). 2024(02): 121-128 . 百度学术
2. 毛羽,郑怀华,李隆,张傲. 基于热红外图像的光伏板热斑检测方法研究. 自动化仪表. 2024(05): 25-29+34 . 百度学术
3. 王晓君,孙梓林,王雁. 基于AMP架构的青霉素结晶与发酵检测系统设计. 仪表技术与传感器. 2024(05): 66-73 . 百度学术
4. 赵兴文. 机器学习在信用贷款评分中的应用. 福建电脑. 2023(02): 31-34 . 百度学术
其他类型引用(15)