[论文阅读] 颜色迁移-Illuminant Aware Gamut-Based
[论文阅读] 颜色迁移-Illuminant Aware Gamut-Based
文章: [Illuminant Aware Gamut-Based Color Transfer], [python代码]
本文目的是提出一种新的颜色迁移算法, 可以感知光源变化的全色域颜色迁移方法.
1-算法原理
图像是由摄像机对光谱场景内容和场景照度的敏感性所产生的综合信号; 场景照明可以对图像的整体RGB值产生显著影响, 引入明显的颜色投射, 可以给图像一个非常不同的外观.
颜色迁移问题与颜色恒定和白平衡问题有相似之处, 因而在处理过程需要考虑场景照明.
本文算法流程如下所示;

主要有4个步骤:
- 白平衡, 计算白点(white point), 每个像素除以白点进行归一化(白点归一化为(1,1,1)), 并将(1,1,1)旋转到(0,0,1), 方便处理
- 亮度匹配
- 3D全色域颜色匹配
- 将将(0,0,1)返回到(1,1,1), 并去除白平衡处理
2-算法核心
总结本文影响颜色迁移算法效果的原因, 主要有2个:
- 场景照明引起的颜色投射偏差
- 处理后的颜色超出了色域范围, 导致颜色迁移出现颜色偏差
本文针对上述问题提出了解决方法, 因而本文的核心为白平衡和全色域匹配.
2.1-白平衡
本文使用的方法是 Improving Color Constancy by Photometric Edge Weighting 文中的方法, 这里没有详细研究, 有兴趣的可以查看原文.
下图所示为白平衡的影响, 没有看懂 ...... , 文中的解释是, 只有正确的白平衡设置,每个斑块的白色斑块直方图收敛于给定的6个相干峰值.

对于本文算法, 使用白点进行归一化后, 从(0,0,0)到(1,1,1)构成的向量可以表示灰色的深浅, 这有2个好处:
- 该向量可以当作是图像的亮度通道, 方便处理
- 实现了源图像和目标/参考图像的亮度的对齐
2.2-3D全色域匹配
文中使用如下公式来进行匹配:
\]
式中, \(I_s\) 是去除均值后的. 这里关键是是求出T. 由于已经去除了均值, 中心已经移到了(0,0,0), 这里T就只涉及到缩放和旋转了, 如下所示:

本文利用凸包的体积进行优化, 即使输出图像的色域在目标图像的色域内, 并尽可能扩大输出图像的色域, 如下所示:

式中, \(CH_s\) 和 \(CH_t\) 分别为源图像和目标图像的凸包, \(V(*)\) 为计算凸包的体积, ⊕表示凸包的并集, T表示对源图像凸包的缩放和旋转, 如下所示为一个示例:

由于式6是一个非凸函数, 需要用蛮力搜索来寻找全局最优, 本文利用Matlab的fminunc优化工具箱中的准牛顿方法获得了一个近似解.
3-算法效果
本文算法, 相比其它算法效果还是不错的, 如下所示:

4-算法复现
从本文算法描述上看, 算法还比较简单, 但从算法实现上看(python代码戳这里)还是挺发杂的:
- 白平衡计算, 这个比较复杂没有细看, 有兴趣可以查看原文 Improving Color Constancy by Photometric Edge Weighting,
- 亮度匹配, 这个相对来说要简单点, 可以查看原文 Gradient-Preserving Color Transfer, 或者 [论文阅读] 颜色迁移-梯度保护颜色迁移_yfor的博客-CSDN博客
- 3D全色域匹配有函数可以直接使用.
下面是使用matlab复现的结果(参考了python代码):


上图为有白平衡结果, 下图为无白平衡结果. 可以看到, 无白平衡结果比有白平衡结果要偏亮一些, 其他倒是没有太大区别, 可能测试图像不多. 这里是否可以去除白平衡提高算法速度!!!
[论文阅读] 颜色迁移-Illuminant Aware Gamut-Based的更多相关文章
- [论文阅读] 颜色迁移-N维pdf迁移
[论文阅读] 颜色迁移-N维pdf迁移 文章: N-Dimensional Probability Density Function Transfer and its Application to C ...
- [论文阅读] 颜色迁移-Correlated Color Space
[论文阅读] 颜色迁移-Correlated Color Space 文章: Color transfer in correlated color space, [paper], [matlab co ...
- [论文阅读] 颜色迁移-Linear Monge-Kantorovitch(MKL)
[论文阅读] 颜色迁移-Linear Monge-Kantorovitch(MKL) 文章: The Linear Monge-Kantorovitch Linear Colour Mapping f ...
- [论文阅读] 颜色迁移-EM概率分割的局部颜色迁移
颜色迁移-EM概率分割的局部颜色迁移 文章: Local Color Transfer via Probabilistic Segmentation by Expectation-Maximizati ...
- [论文阅读笔记] Community aware random walk for network embedding
[论文阅读笔记] Community aware random walk for network embedding 本文结构 解决问题 主要贡献 算法原理 参考文献 (1) 解决问题 先前许多算法都 ...
- 论文阅读笔记 Word Embeddings A Survey
论文阅读笔记 Word Embeddings A Survey 收获 Word Embedding 的定义 dense, distributed, fixed-length word vectors, ...
- 论文阅读笔记六:FCN:Fully Convolutional Networks for Semantic Segmentation(CVPR2015)
今天来看一看一个比较经典的语义分割网络,那就是FCN,全称如题,原英文论文网址:https://people.eecs.berkeley.edu/~jonlong/long_shelhamer_fcn ...
- [论文阅读]阿里DIN深度兴趣网络之总体解读
[论文阅读]阿里DIN深度兴趣网络之总体解读 目录 [论文阅读]阿里DIN深度兴趣网络之总体解读 0x00 摘要 0x01 论文概要 1.1 概括 1.2 文章信息 1.3 核心观点 1.4 名词解释 ...
- [论文阅读]阿里DIEN深度兴趣进化网络之总体解读
[论文阅读]阿里DIEN深度兴趣进化网络之总体解读 目录 [论文阅读]阿里DIEN深度兴趣进化网络之总体解读 0x00 摘要 0x01论文概要 1.1 文章信息 1.2 基本观点 1.2.1 DIN的 ...
- BERT 论文阅读笔记
BERT 论文阅读 BERT: Pre-training of Deep Bidirectional Transformers for Language Understanding 由 @快刀切草莓君 ...
随机推荐
- 【解决办法】配置banner信息时卡死/无反应,以及正确配置
环境: 工具:锐捷EVE模拟器 远程工具:SecureCRT 系统版本:Windows 10 问题描述 描述:在配置登录 banner 提示警告信息时,将 "^" 符号放到了警告信 ...
- 微擎删除分类无法删除解决-select in效率低解决办法
今天朋友微擎后台微网站里的分类要删除,可是怎么删除也不能删除,同样的系统另一套却可以迅速删除. 后来查询到是查询语句的问题,朋友的平台用户量太大,数据太大,用了以下语句,造成效率太低: SELECT ...
- 2022-03-31:有一组 n 个人作为实验对象,从 0 到 n - 1 编号,其中每个人都有不同数目的钱, 以及不同程度的安静值(quietness) 为了方便起见,我们将编号为 x 的人简称为
2022-03-31:有一组 n 个人作为实验对象,从 0 到 n - 1 编号,其中每个人都有不同数目的钱, 以及不同程度的安静值(quietness) 为了方便起见,我们将编号为 x 的人简称为 ...
- Docker入门与实战-Docker镜像的使用
Docker入门与实战 二.Docker镜像的使用 1.获取镜像 命令:docker [image] pull image-name[:tag] 说明: name为镜像仓库名称,严格来说, ...
- group_concat 自定义聚合查询
group_concat
- 7-8 切分表达式——写个tokenizer吧 (20 分)
1.题目描述: [先说点出题背景] 这个题是为低年级同学.学C语言的同学准备的,因为,对这部分同学,这个题目编写起来略有一点复杂.如果是高年级.学过了正则表达式(Regular Expression) ...
- 记一次处理挖矿程序引发的postgres 连接超时
近一段时间内发现自己的服务器总是警告被挖矿,然处理挖矿程序中也引发了许多其他的问题,也从中学到了其他的知识,趁今天未加班梳理一下便于巩固,记录日常 文章目录 一.查找进程 1.使用 ll /proc/ ...
- adb server version (31) doesn't match this client (41); killing...
使用用 adb devices 提示如下错误 C:\Users\Lenovo>adb devices adb server version (31) doesn't match this cli ...
- MAC 打开.bash_profile
1.开启终端(terminal)[左下角启动台(图标)> 其他] 2.进入当前用户目录 $ cd ~ 3.打开profile文件 $ open -e .bash_profile 就会弹出.bas ...
- Linux系统 2023年5月1号
今天正式进入了LINUX基础核心 下载了centos7.4镜像 和vmware12版本,还未安装vmware和centos镜像7.4