当前位置: 首页 > article >正文

论文阅读:Auto White-Balance Correction for Mixed-Illuminant Scenes

论文阅读:Auto White-Balance Correction for Mixed-Illuminant Scenes

今天介绍一篇混合光照下的自动白平衡的文章

Abstract

自动白平衡(AWB)是相机 ISP 通路中比较重要的一个模块,主要用于校正环境光照引起的色偏问题,不过常见的 AWB 算法都是基于单光照的假设去做的,然而,实际场景中都是多光源环境,这篇文章提出了一种高效的方法去处理实际场景中的多光源问题,与传统 AWB 方法的一个显著不同点在于,这篇文章不需要对光照进行估计,而是通过对一组预设的白平衡参数,将预设的白平衡参数的权重进行调节,然后加权得到混合光照下的白平衡效果,实验结果说明这种方法相比之前的单光照或者混合光照下的白平衡算法都更有效。

Introduction

自动白平衡是相机 ISP 通路中的一个重要模块,ISP 通过一系列的处理模块,比如去马赛克,降噪,白平衡,tone mapping 等,将 sensor RAW 图处理得到最终的 RGB 图,白平衡处理是 ISP 通路中比较靠前的一个模块,这个模块的作用主要是为了校正环境光照引起的色偏,以模拟人眼的色彩常恒性的特点。

AWB 通常包括两个步骤,第一步是估计环境中的光源;第二步是基于环境中的光源估计,用相应的 AWB 参数进行白平衡处理。第一步是关键,准确的光源估计是白平衡是否校正成功的重要前提,因为第二步基本就是基于光源估计给出 RGB 三个通道的系数,让三个通道分别乘以这三个系数,就完成了白平衡的校正。

之前的很多 AWB 的工作都是基于单光源估计的 AWB 校正方法,这种单光源的假设对于实际场景来说,过于简单。如图一所示,图一展示了一个典型的混合光源场景,一部分是窗外的天空,一部分是室内的场景,如果用单一光源做白平衡校正,总会出现另外一部分场景出现色彩偏差的问题。

在这里插入图片描述

Method

在这里插入图片描述

这篇文章的算法流程如图-2 所示,给定一张去马赛克之后的图,先用一组给定光照下的 AWB 参数进行处理,然后最终 AWB 的图,可以基于这组图的一个线性组合:

I c o r r ↓ = ∑ i W i ⊙ I c i ↓ (1) I_{corr \downarrow} = \sum_{i} W_i \odot I_{c_i \downarrow} \tag{1} Icorr=iWiIci(1)

I c o r r ↓ I_{corr \downarrow} Icorr 是最终校正后的图, W i W_i Wi 是最终融合的权重。

为了构造这样的数据对,文章作者先将一张去马赛克之后的图进行一个固定 AWB(比如日光下) 的处理得到 I i n i t I_{init} Iinit,然后构造一个映射关系,将固定 AWB 下的图映射到对应光照下的图:

I ^ c i = M c i ϕ ( I i n i t ) (2) \hat{I}_{c_i} = M_{c_i} \phi (I_{init}) \tag{2} I^ci=MciϕIinit)(2)

I ^ c i \hat{I}_{c_i} I^ci 是目标 AWB 下的图, ϕ \phi ϕ 表示一个多项式的核函数, M c i M_{c_i} Mci 表示一个映射矩阵,通过类似一个最小二乘的方法,可以得到 M c i M_{c_i} Mci 映射矩阵。

然后,基于这些 I ^ c i \hat{I}_{c_i} I^ci,我们需要进一步去学习融合权重,文章中利用了一个 DNN 模型去学习这个映射权重,为了训练这个映射网络,文章利用了一个公开的数据集,里面包含了大约 65k 的图像样本,每个样本都有一个正确的 AWB 的校正图,这个作为 GT,从这个数据里面,文章作者挑选了大概 9200 张图,然后通过前面介绍的 AWB 处理方法,得到了不同关照下的 AWB 校正图,这些光照包括 2850 Kelvin (K), 3800 K, 5500 K, 6500 K, and 7500 K,分别对应一些典型的色温场景,然后构造了如下的 loss 函数进行训练:

L r = ∥ P c o r r − ∑ i W ^ i ⊙ P c i ∥ F 2 (3) \mathcal{L}_r = \left \| P_{corr} - \sum_{i} \hat{W}_i \odot P_{c_i} \right \|_{F}^{2} \tag{3} Lr= PcorriW^iPci F2(3)

其中, P c o r r P_{corr} Pcorr P c i P_{c_i} Pci 分别表示 GT 图像和输入图像中抽取的图像块,$\hat{W}_i $ 表示最终需要训练学习得到的权重图,为了在最终重建的输出图中,出现色彩空间之外的颜色,文章作者对输出做了一个 cross-channel softmax 的操作。为了保证权重图的平滑性,文章作者还加了一个 TV 平滑项:

L s = ∥ W ^ i ∗ ▽ x ∥ F 2 + ∥ W ^ i ∗ ▽ y ∥ F 2 (4) \mathcal{L}_s = \left \|\hat{W}_i \ast \bigtriangledown_{x} \right \|_{F}^{2} + \left \|\hat{W}_i \ast \bigtriangledown_{y} \right \|_{F}^{2} \tag{4} Ls= W^ix F2+ W^iy F2(4)

最终的损失函数如下所示:

L = L r + L s \mathcal{L} = \mathcal{L}_r + \mathcal{L}_s L=Lr+Ls

推理的时候,文章中先用固定的 AWB 参数生成不同的 AWB 图,然后连接到一起送入网络,为了提升最终的 AWB 校正效果,文章中还试过聚合的策略,将输入的图用了三个不同的尺度,1.0,0.5, 0.25,将这三个不同尺度的输出都上采样到原始大图的大小,然后再取平均,文章还提到用导向滤波的方式进行后处理,可以得到更边缘平滑的权重图,最后的 AWB 校正图如下式所示:

I c o r r = ∑ i W i ↑ ⊙ I c i (1) I_{corr} = \sum_{i} W_{i \uparrow} \odot I_{c_i} \tag{1} Icorr=iWiIci(1)

在这里插入图片描述


http://www.kler.cn/a/133161.html

相关文章:

  • 单元测试、集成测试、系统测试、验收测试、压力测试、性能测试、安全性测试、兼容性测试、回归测试(超详细的分类介绍及教学)
  • 网络基础(4)传输层
  • 基于麒麟服务器操作系统V10版本,部署Nginx服务、MySql服务搭建PHP环境,实现静态网站平台的搭建。
  • [Linux]多线程详解
  • 动力商城-03 Idea集成apifox Mybatis-Plus字段策略
  • 【Docker】Mac安装Docker Desktop导致磁盘剩余空间较少问题如何解决?
  • SpringBoot学习笔记-创建个人中心页面(下)
  • 大数据-之LibrA数据库系统告警处理(ALM-12051 磁盘Inode使用率超过阈值)
  • MongoDB分片集群搭建
  • Axelar、J.P.Morgan Onyx、Apollo 完成概念验证,向跨区块链自动化投资领域探索
  • 手搓哈希表、列表、队列,只为了用C语言快速求解华容道游戏,我不是大佬,只是一个游戏算法爱好者
  • Alien Skin Exposure2024胶片滤镜中文免费版插件
  • C语言的由来与发展历程
  • 微信小程序开发-----发起网络请求携带后端token
  • Error message “error:0308010C:digital envelope routines::unsupported“
  • SpringBoot-过滤器Filter+JWT令牌实现登录验证
  • Vue.js2+Cesium1.103.0 十四、绘制视锥,并可实时调整视锥姿态
  • WPF自定义控件介绍
  • 【作业】操作系统实验一:进程和线程
  • 释放机器人潜力,INDEMIND深耕底层技术
  • JMeter-BeanShell预处理程序和BeanShell后置处理程序的应用
  • 目标检测YOLO系列从入门到精通技术详解100篇-【目标检测】计算机视觉(补充篇)
  • 项目踩坑之面试遇到的问题及解决
  • 自动化网络图软件
  • 企业邮箱认证指南:安全与高效的邮箱认证方法
  • 达梦数据库常用参数查询