超轻量级白平衡算法
领域:其他领域行业:
发布者:李...
推广标签: 提出一种高效轻量化的基于排序学习的相机自动白平衡方法,相关成果已被人工智能顶级期刊TPAMI (IEEE Transactions on Pattern Analysis and Machine Intelligence)接收发表,影响因子为23.6。根据光学成像原理,同一物体表面在不同光照条件下会呈现完全不同的颜色值,如图 1 。为了提高成像系统的稳定性和视觉效果,相机自动白平衡(White Balance, WB)技术旨在将在未知光源下拍摄的照片颜色矫正到标准白光下。相机自动白平衡功能是所有相机图像信号处理器(Image Signal Processors, ISP)几乎不可或缺的部分。近年来,虽然基于深度学习的白平衡算法取得了巨大进步,但是其超大的参数规模、对大规模训练样本的需求、以及对GPU等昂贵计算资源的消耗,使得基于深度学习的算法无法有效的部署到真实的ISP芯片中(低功耗、低计算和存储资源)。为有效解决这些矛盾,研究团队突破性地提出了一种轻量高效的浅层排序学习策略,融合现有的基于统计的简单白平衡算法,实现了只需1/2000的参数(与性能最好的深度神经网络相比)逼近了基于深度学习算法的性能。该方法能够快速部署到手机等低功耗的ISP芯片中。图 1. (A)视觉系统成像过程;(B)(C)同一物体表面在不同光照下的颜色差异。方法介绍图片图 2. 整体框架示意图相机白平衡算法大致可以分为两类:基于统计的方法和基于机器学习的方法。基于统计的方法利用图像的底层的统计特征估计图像成像时的光照颜色。基于统计的方法算法简单高效但稳定性较差。基于机器学习的方法试图通过大量的训练样本学习出一个从图像特征到成像时光照颜色的映射函数。基于机器学习的方法虽然性能和鲁棒性都要优于基于统计的方法,然而这类方法(尤其是基于深度学习的方法)需要大量的训练样本、需要大规模的计算资源、而且模型的尺寸过大,不利于部署在手机或相机上的实际应用。研究团体提出的基于排序学习的白平衡算法旨在利用已有的大量的简单高效的基于统计的方法,构建一个近似深度学习性能的模型。对于给定的一个由图片种基于统计的算法构成的算法集合图片(图片表示某一种算法),虽然没有任何一种算法图片在所有图像上都能取得最优的白平衡效果,但是如果我们能够对每一幅图像选择最符合它特点的基于统计的白平衡算法,就能获得整体上的性能提升。为此,对于每一幅图像,我可以根据算法的性能将中的所有算法进行排序得到一个序列:图片: 图片,从而可以进一步为每一幅图像选择最好的算法图片或者最好的多个算法的结果进行融合。基于这个观察,研究团队将图像白平衡问题转化为一个标签排序问题(如图 2 所示),并提出了一种基于低秩与特征选择的排序算法。该方法的优点有:(1)无需人工定义图像特征,算法那能够自动学习出与排序相关的特征;(2)具有优秀的小样本的学习能力,在有限的样本条件下仍然能够获得较好的性能;(3)参数规模非常小,只需要2000个参数就逼近了具有500万参数的深度学习方法(IGTN)的性能。实验结果为验证所提方法的有效性,该方法在多个数据集上进行了实验验证。为了充分分析所提方法的各项性能,我们还进行了大量的消融实验。1. 性能比较实验如表 1 和表 2 所示,在两个大规模数据集(GEHLER-SHI数据集和NUS数据集)上的实验比较表明,我们提出的算法(RCC和RCC_C)的性能都明显优于所有基于统计学的算法(SM)和基于浅层学习的算法(Shallow LM),逼近(部分略优于)基于深度学习的算法(Deep LM)。表 1 相关算法在GEHLER-SHI数据集上的光照评估误差实验Mean, Median, Trimean, B-25%和W-25%分别表示平均误差、中值误差、三均值误差、最优25%误差、最差25%误差,数值越小代表算法性能越好。表 2 相关算法在NUS数据集上的光照评估误差实验Mean, Median, Trimean, B-25%和W-25%分别表示平均误差、中值误差、三均值误差、最优25%误差、最差25%误差,数值越小代表算法性能越好。2. 小样本实验为了验证所提算法的小样本学习能力,我们逐步调小参数p使得训练样本数逐步减小。根据图 3 的实验结果,我们发现当训练样本越来越少时所有算法的估计误差都在逐步增加,但是我们的算法RCC仍然始终保持在一个低误差水平。即使当训练样本只有10%时,其他算法已经无法正常工作时, RCC算法仍然处在一个可靠的误差范围内。该实验进一步证明了,在小样本条件下所提算法的稳定性。图 3. 小样本实验。(A)(B)在Gehler-Shi数据集上,所提算法的中值和均值误差随着训练样本量占总训练样本p%的变化而变化的情况。(C)(D)在NUS数据集上,所提算法的中值和均值误差随着训练样本量占总训练样本p%的变化而变化的情况。3. 参数规模比较实验为了进一步比较所提RCC算法与深度学习算法的参数大小,我们将其与主流的深度学习方法FC4、IGTN、GLCC进行了比较,如图 3 所示。作为比较大网络结构,GLCC模型是我们的RCC模型参数的23万倍,性能最好的IGTN模型也是RCC的2000倍左右。而在误差方面,在两个数据集上,我们以如此小的参数量所获的误差只比最好的深度学习算法分别高0.28度和0.19度。此外,根据表 3 的实验结果,在使用GPU和不使用GPU的两种条件下,FC4的训练时间分别是RCC的761倍和2381倍。而RCC完全不需要GPU进行模型训练和推理,并且训练时间只有160秒。图 4. 模型复杂度与中值误差比较。(A)Gehler-Shi数据集,(B) NUS数据集表 3 FC4和RCC的运行时间比较(单位:秒)图片4. 可视化实验为了进一步比较算法的直观视觉差异,我们给出了五张图像示例,并利用9种算法对图像进行了白平衡处理,给出了可视化结果,如图 5 我们发现,虽然不同算法在不同的图像上获得较好的白平衡效果,但是我们的算法RCC和RCC_C能够稳定地在所有图像上都能获得不错的光照估计结果和白平衡效果。图 5. 部分光照估计与白平衡结果示例,右下角数值为算法估计的误差。(A)原图,(B) GW算法, (C) MaxRGB算法, (D) GE(0,13,2)算法 (E) GE(1,1,6)算法, (F)GE(2,1,5)算法, (G) SVR算法, (H)CNNM算法, (I) RCC算法, (J)RCC_C算法, (K) 根据真实测量光照校正的结果.总结研究团队从相机白平衡的实际应用问题出发,摒弃不考虑实际资源情况一味追究采用复杂深度学习框架获取性能提升的错误观点,直面相机白平衡的计算资源少、训练样本少、实时性要求高的痛点,提出了一种简单、高效、轻量化的基于排序学习的相机白平衡算法,只使用了1/2000的参数量逼近了基于深度学习的方法的性能,进一步推进了该白平衡技术的实用化发展。 注:根据公开信息整理,如需修改完善请登录个人中心或咨询我们。