1. 引言
图像作为一种重要的信息媒介,已广泛应用于社会各个领域。基于计算机的自动图像识别技术在安防监控、智能驾驶、医疗影像分析、智能制造等多个行业发挥着关键作用,显著提升了相关领域的工作效能。其中,人工智能技术凭借其强大的数据处理能力,能够高效完成海量图像信息的处理与分析任务。近年来,深度学习技术在视觉识别领域取得了突破性进展,特别是卷积神经网络的多层结构设计,使系统识别精度和鲁棒性得到显著提升。然而,现有技术在处理多源异构数据、适应动态环境变化以及应对计算资源约束等方面仍面临挑战。当前研究热点主要集中在数据预处理优化、特征自动学习机制以及新型网络结构设计等方面,旨在提高算法的通用性和实际应用价值。可以预见,随着异构计算架构的不断完善和算法的持续优化,智能视觉分析技术将拓展至更广泛的应用场景,为各行业的数字化和智能化发展提供有力支撑。图像增强是计算机视觉和图像处理领域的基础技术,在医疗影像、自动驾驶、工业检测等多个领域具有广泛应用。OpenCV作为开源的计算机视觉库,提供了丰富的图像增强算法实现。本文将从传统方法和深度学习方法两个维度,系统梳理国内外基于OpenCV的图像增强技术研究现状,分析各类方法的原理、优缺点及典型应用场景,并探讨未来发展趋势。国内学者提出了多种基于OpenCV的混合增强方法,如非局部均值滤波与算子变换结合,局部统计自适应增强等,这些方法计算效率高,适合嵌入式设备和实时系统。国内在医学影像增强[1]和遥感图像处理[2]领域的研究较为活跃。许多工作结合传统OpenCV算法和现代深度学习技术,如使用Retinex [3]算法增强低照度医学图像,或利用小波变换与CNN [4]结合处理遥感图像,这些研究通常针对特定应用场景优化,在保持通用性的同时提高专业领域的性能。
交大溥渊团队的异构搜索空间增强策略[5]探索了规则方法与学习方法的最优组合,BPAM [6]框架提出了像素自适应的非线性颜色映射新范式,这些工作具有较强的理论创新性。DarkIR [7]首次将频域特征建模引入低光图像恢复,HiLLIE [8]开创了人类在环的低光增强训练框架,代表了国际前沿的研究方向。
2. 图像增强的常见方法
对于图像的对比度方面的增强方法,分为线性方法和非线性方法1。
2.1. 线性处理方法
2.1.1. 灰度反转(Gray Inversion)
灰度反转能够将图像中的灰度值进行反转,将暗的部分变亮,亮的部分变暗。如图1。
Figure 1. Inverted grayscale image
图1. 灰度反转图像图
2.1.2. 对比度拉伸
对比度拉伸是一种简单而有效的图像增强技术,用于拓展图像的灰度动态范围,从而提高图像的对比度,达到图像增强的效果。其原理如下:
假设图像原始的灰度范围为[a, b],目标灰度范围为[c, d],则公式为:
其中
是原始图像的像素值,
是经过对比度拉伸后的新图像的像素值。效果如图2。
Figure 2. Contrast-stretched image
图2. 对比度拉伸图
可以看到对于亮度均衡的图片进行对比度拉伸的处理方法,效果并不明显。
2.1.3. 对比度和亮度增强(α和β变换)
。
其中:
是增强后的像素值。α在此是控制对比度的作用(α > 1增强,α < 1减弱);β控制亮度(正值偏亮,负值偏暗)。图3为实验效果。
Figure 3. α-transform enhanced graph
图3. α变换增强图
可以看到,使用α和β变换后,对比度增强更明显,明暗差异更加明显。同时亮度调整可以整体提高或压暗图像。
2.2. 非线性处理方法
Gamma转换
公式如下:
,
是输出图像的像素值,
是输入图像的像素值(通常归一化到[0, 1]区间),c是常数,用于保持输出范围适合显示(例如[0, 255]),γ是伽马值,控制图像的亮度和对比度调整。0 < γ < 1使图像的暗部变亮,适合处理偏暗的图像。γ > 1使图像的亮部变,适合处理过曝光的图像。实验效果如图4。
Figure 4. Gamma conversion diagram
图4. Gamma转换图
3. 直方图均衡化
直方图均衡化是一种经典的图像增强技术,通过重新分配像素灰度值来扩展图像的动态范围,从而增强对比度。它特别适用于整体偏暗或偏亮的低对比度图像。
3.1. 数学原理
计算累计分布函数(CDF):
。
3.2. 对于单通道直方图的直方图均衡化(图5)
使用单通道直方图均衡化处理得到的直方图效果见图5。
Figure 5. Single-channel histogram
图5. 单通道直方图
3.3. 自适应直方图均衡化(CLAHE)
CLAHE (Contrast Limited Adaptive Histogram Equalization)是OpenCV中最常用的图像增强算法之一[5],相比传统直方图均衡化,它在改善图像对比度的同时能有效抑制噪声放大。生成的均衡直方图见图6。
Figure 6. CLAHE histogram
图6. CLAHE直方图
根据得出的曲线可以看出,clahe方法的曲线波动与其他两条曲线相比,最为平缓。处理后的图片效果见图7。
Figure 7. The image after CLAHE processing
图7. 经过CLAHE处理后图
对比直方图均衡化和自适应直方图均衡化(CLAHE)得出如下结论:见表1。
Table 1. Comparison between global equalization and CLAHE
表1. 全局均衡化和CLAHE的比较
方法 |
优点 |
缺点 |
适用场景 |
全局均衡化 |
计算快,适合整体低对比度图像 |
放大噪声,局部过曝 |
灰度均匀的图像 |
CLAHE |
保留细节,抑制噪声 |
计算量较大 |
复杂光照/医学影像 |
4. 单一传统方法目前存在的局限性
单一传统方法存在一个不可忽视的局限性,即处理复杂图像场景的能力有限。当图片存在低光照情况且伴有噪声时或光照程度不均匀对比度较低时,仅采用一种传统方法很难进行有效处理。
例如,在低光照情况下,若仅使用单一的对比度增强方法,只能单纯提高图片亮度,却无法对图片进行优化。而仅使用CLAHE等图片优化方法时,虽能抑制图片噪声,但由于图片本身光照不均,可能会过度抑制噪声[9],从而无法达到预期的优化效果。
为了克服这些限制,通常需要结合多种图像处理技术。例如,可以先使用一种算法来改善光照条件,然后再应用另一种算法来减少噪声。通过这种多步骤的方法,可以更全面地处理图像,从而达到更佳的视觉效果。此外,采用机器学习和深度学习技术[10],可以训练模型来自动识别和处理图像中的复杂场景,这为图像处理领域带来了新的可能性。然而,这些高级技术的实现通常需要大量的数据和计算资源,因此在实际应用中需要权衡其利弊。
5. 将传统方法结合,形成更加高效的混合方法
5.1. 将Gamma转换与CLAHE结合
gamma_image = gamma_transformation (image, gamma = 0.5),此实验将gamma数值设置为0.5,进行gamma转换,之后对gamma转换后的图像使用CLAHE。同时与只进行Gamma转换和CLAHE处理方法的实验结果进行比对。图8为混合处理后的直方图对比效果
左侧为只进行CLAHE处理方法的灰度图像直方图,右侧为先进行Gamma转换,再进行CLAHE处理的灰度图像直方图,可以明显观察到,先进行Gamma转换后再使用CLAHE的处理方法得出的直方图曲线更加的平缓,证明其处理效果要更加优秀。之后再进行两种处理方法的图片结果对比见图9,图10。
Figure 8. The histogram after Gamma conversion combined with CLAHE and the original single histogram
图8. Gamma转换与CLAHE结合后的直方图与原始单一直方图
Figure 9. The mixed processed image
图9. 混合处理后的图像
Figure 10. A single-processed image
图10. 单一处理后的图像
5.2. 进行边缘检测对比
边缘检测主要包括以下四个步骤:
1) 图像滤波
边缘检测算法主要是基于图像亮度的一阶和二阶导数,但是导数的计算对噪声很敏感,因此必须使用滤波器来改善与噪声有关的边缘检测器的性能。
2) 图形增强
增强边缘的基础是确定图像各点邻域强度的变化值。增强算法可以将邻域强度值有显著变化的点突出显示。
3) 图像检测
在图像中有许多点的梯度幅值比较大,而这些点在特定的应用领域中并不都是边缘,应该用某些方法来确定那些是边缘点。最简单的边缘检测判据是梯度幅值阈值判据。
4) 图像定位
如果某一应用场合要求确定边缘位置,则边缘的位置可以在子像素分辨率上来估计,边缘的方位也可以被估计出来。
对两组图像分别进行使用sobel算子和scharr算子进行边缘检测来进行对比,其中Sobel算子是一种经典的边缘检测算法,用于计算图像的一阶梯度,从而突出显示灰度变化剧烈的区域(如物体的边缘)。它基于卷积运算,分别计算水平方向(Gx)和垂直方向(Gy)的梯度,再结合两者得到最终的边缘强度。Scharr算子是Sobel算子的改进版本,旨在提供更精确的梯度计算,特别是在对角线方向的边缘检测上表现更好。它通过优化卷积核的权重,减少了梯度计算的误差,适用于需要高精度边缘定位的场景。图11与图12为最终结果对比。
Figure 11. Perform edge detection on images processed by the combination of Gamma and CLAHE
图11. 进行Gamma与CLAHE结合处理后的图片边缘检测
Figure 12. Image edge detection that only performs a single processing
图12. 只进行单一处理的图片边缘检测
实验总结与结论:我们通过实验,对三组实验数据进行了对比。从直方图反馈的曲线能够得出,经过gamma转换和CLAHE混合处理的图片,其在直方图中的曲线相较于仅进行CLAHE处理的图片曲线更为平缓,处理效果也更为理想。
直接观察处理后的原始图像可以发现,经过混合处理的图像比单一CLAHE处理后的图像更贴合实际情况。
在进行边缘检测处理后,经过gamma转换和CLAHE混合处理的图片,在基础的Sobel算子和Scharr算子边缘检测中,边缘明显比单一处理的图片更加清晰。之后再分别进行Abs绝对值边缘检测,综合处理后的图像轮廓与内部区域亮暗对比分明、分隔显著,而单一处理后的图像则出现了整体过度曝光、边缘部分区域模糊不清等问题。
因此,通过上述实验可知,gamma转换与CLAHE综合处理法对图片的增强处理效果优于CLAHE单一处理效果。
6. 总结与展望
对于传统图像增强方法来说,单一增强方法的效果十分有限。不过,我们可以对现有的方法进行组合。针对光照程度不同、明暗差异各异的图像,可选用多种传统图像增强方法进行搭配,从而有针对性地对同一类图像进行增强处理。
然而,若想更高效地进行图像增强处理,则需采用基于深度学习的增强方法,如自适应参数预测网络(BPAM)、生成对抗网络(GAN)增强方法等。基于深度学习的图像增强方法或许能带来更优的处理效果,当然,这还需通过进一步的实验对比检测来验证。
为了实现更高级别的图像增强,研究人员正在探索深度学习技术的潜力。深度学习方法,如卷积神经网络(CNNs),已被证明在图像识别和分类任务中表现出色,它们同样在图像增强领域展现出巨大潜力。通过训练深度神经网络,可以学习到从原始图像到增强图像的复杂映射关系,从而实现更加自然和逼真的增强效果。
此外,深度学习模型的自适应能力使其能够处理各种图像退化问题,包括但不限于低光照、噪声干扰和模糊。这些模型通过大量数据学习,能够自动调整参数,以适应不同的图像增强需求。尽管如此,深度学习方法也面临着挑战,如需要大量标记数据进行训练,以及计算资源的高需求。
未来的研究可能会集中在减少对大量标记数据的依赖,以及开发更高效的算法来降低计算成本。同时,研究者们也在努力提高模型的泛化能力,确保增强算法不仅在特定数据集上表现良好,而且在现实世界的各种图像处理任务中都能保持高效和准确。通过这些努力,我们可以期待深度学习在图像增强领域带来革命性的进步。
NOTES
1影像原图来自于文献胖墩会武术。图像处理相关技术分享[EB/OL]。CSDN博客,2024。https://blog.csdn.net/shinuone/article/details/143208972,2025-3-18,后续图片根据原图修改。