【论文介绍】

提出了第一个基于物理的单图像无监督学习用于本征图像分解网络USI3D(Unsupervised Single Image Decomposition)

本征图像,是指将一幅图像分解成两个部分——反射图和照射图(或称本色图和高光图),这两幅分解得到图像就是原图像的本征图像。

【题目】:Unsupervised Learning for Intrinsic Image Decomposition From a Single Image
【DOI】:10.1109/cvpr42600.2020.00331
【会议】:2020-CVPR
【作者】:Yunfei Liu(北京航空航天大学), Yu Li(腾讯), Shaodi You(阿姆斯特丹大学), Feng Lu(鹏程实验室)
【Paper】: https://arxiv.org/abs/1911.09930
【Project】: https://liuyunfei.net/publication/cvpr2020_usi3d/external_pages/index.html
【Code】: https://github.com/DreamtaleCore/USI3D
【video】:https://www.youtube.com/watch?v=qGszWVyDF9c

【提出问题】

  1. 监督学习:数据集要么太小,要么离自然图像太远,限制了监督学习的性能。
  2. 传统方法:引入了各种先验来约束反射率和照度,但性能有限。

【解决方案】

自然图像、反射系数和明暗处理都共享相同的内容,这些内容反映了场景中目标对象的性质。自然图像中估计反射率和照度是传递图像风格而保留图像内容。为每个集合收集三个未标记且不相关的样本。然后,应用自动编码器和生成对抗性网络将自然图像转换为所需的风格,同时保留底层内容。

【怎么做】

可视化过程

假设收集未标记的和不相关的样本,学习每个集合的风格。例如,可以通过提供一组未标记的反射率图像来学习反射率的样式,即边缘分布 p(Rj): {Rj∈R};通过提供一组无标记的照度图像来学习照度样式,边缘分布p(Sk): {Sk∈S};通过提供一组未标记的自然图像 p(Ii ): {Ii ∈I} 来学习自然图像的样式,边缘分布 p(Ii )。然后,从边缘分布推断出 Ii 的 R(Ii ), S(Ii )。

图1.以无监督的方式学习本征图像分解

  • 其中真实配对的 R 和 S 在训练数据中不可用。
  • 从 I 、R 和 S 的未标记和不相关的集合中学习分布先验。
  • 通过具有独立性约束和物理一致性约束的内容保持图像转换来执行本征图像分解。

理论过程

I I I 是自然图像域,S是照度域,R是反射域。

图2.域之间的内容保持转换

  1. 内容共享架构:学习一组编码器,这些编码器将每个域的外观编码到域不变潜在空间C
  2. M模块:学习编码器依赖于域的先验空间将外观编码到相应的 z R z_{R} zR​ 和 z S z_{S} zS​。
  3. 自动编码器:将图像样式从编码器(实线箭头)转移到生成器(虚线箭头)。

【创新点】

  1. 提出了第一个基于物理的单图像无监督学习用于本征图像分解。
  2. 采用了三个物理约束:物理一致性约束、域不变内容约束和反射率-照度独立性。
    物理一致约束,如方程:I = R(I) * S(I),
    域不变内容约束,即自然图像及其分解层共享相同的对象、布局和几何结构,
    物理独立约束,即反射R是光照不变的,而照度S是光照可变的。

【网络结构】

内容共享架构

目的:学习一组编码器,这些编码器将每个域的外观编码到域不变潜在空间C

假设1:域的内容不变。物理上,自然的外观,反射率和照度都是给定物体的外观。如图2所示,假设这样的对象属性可以是潜在编码和共享的数量域。根据样式转换术语,将这样的共享属性称为内容,表示为c ∈ C 。此外,假定内容可以从所有三个域编码。

  1. 首先,使用编码器 E I C E_{I}^{C} EIC​ 来提取输入图像 I i I_{i} Ii​ 的内容码 C C C,
  2. 然后,使用 C C C 分别通过生成器 G R G_{R} GR​ 和 G S G_{S} GS​ 生成分解层 R ( I i ) R(I_{i}) R(Ii​) 和 S ( I i ) S(I_{i}) S(Ii​)。
  3. 最后,使用 E R C E_{R}^{C} ERC​ 提取 R ( I i ) R(I_{i}) R(Ii​) 的内容代码 C R ( I i ) C_{R(I_{i})} CR(Ii​)​ , E S C E_{S}^{C} ESC​ 提取 S ( I i ) S(I_{i}) S(Ii​) 的内容代码 C S ( I i ) C_{S(I_{i})} CS(Ii​)​。

应用内容一致性损失来使内容编码器 E I C E_{I}^{C} EIC​、 E R C E_{R}^{C} ERC​ 和 E S C E_{S}^{C} ESC​ 正常工作。 具体来说,使用内容一致性损失 L c n t L^{cnt} Lcnt 来约束输入图像 I i I_{i} Ii​ 及其预测 R ( I i ) R(I_{i}) R(Ii​) 和 S ( I i ) S(I_{i}) S(Ii​) 之间的内容代码。

匹配模块(M 模块)

目的:学习编码器依赖于域的先验空间将外观编码到相应的 z R z_{R} zR​ 和 z S z_{S} zS​。

假设2:反射率和照度独立。物理上,反射率是对照度和方向的不变性,而照度是方差。因此,为了分解反射率和照度这两个成分,假设它们的条件先验是独立的,可以分别学习。反射率的潜在先验表示为zR∈ZR,可以从反射率域和自然像域进行编码。照度的潜在先验表示为zS∈ZS,可以从照度域和自然像域进行编码。图中红色箭头表示的部分。

按照Assumption-2,反射率和照度的先验代码是域变的并且相互独立。设计了Mapping模块(M模块),从 I i I_{i} Ii​ 中推断出先验码 Z R ( I i ) Z_{R(I_{i})} ZR(Ii​)​ 和 Z S ( I i ) Z_{S(I_{i})} ZS(Ii​)​,如图3所示。

  1. 首先,通过编码器 E I p E_{I}^{p} EIp​ 提取自然图像 I i I_{i} Ii​ 的先验 Z I i Z_{I_{i}} ZIi​​,
  2. 然后,设计了一个分解映射 f d c p f_{dcp} fdcp​ 来推断先验 Z R ( I i ) Z_{R(I_{i})} ZR(Ii​)​ 和 Z S ( I i ) Z_{S(I_{i})} ZS(Ii​)​。

为了在反射率先验域 z R z_{R} zR​ 中约束 Z R ( I i ) Z_{R(I_{i})} ZR(Ii​)​,使用 Kullback-Leibler Divergence (KLD) 和从(非配对的数据集) z R z_{R} zR​ 采样的实际先验 Z R j Z_{R_{j}} ZRj​​。 Z S ( I i ) Z_{S(I_{i})} ZS(Ii​)​ 以类似的方式生成和约束。KLD损失的定义:

其中,从M模块中提取先验代码 z ^ \hat{z} z^,从其真实图像中提取其真实先验代码 z z z。

有两个先验域 z R z_{R} zR​ 和 z S z_{S} zS​,因此总KLD损失:

KL距离,是Kullback-Leibler差异(Kullback-Leibler Divergence)的简称,也叫做相对熵(Relative Entropy)。它衡量的是相同事件空间里的两个概率分布的差异情况。并不是一种距离度量方式,其物理意义是:在相同事件空间里,概率分布P(x)对应的每个事件,若用概率分布 Q(x)编码时,平均每个基本事件(符号)编码长度增加了多少比特。我们用D(P||Q)表示KL距离,计算公式如下:

由公式可以知道:

  1. 当P(x)=Q(x)时,D(P||Q)=0,即其相对熵为零。
  2. 当P(x)和Q(x)相似度越高时,KL距离越小
  3. D(P||Q)非负(非负性)
  4. 不满足对称性,即D(P||Q)≠D(Q||P)
  5. 不满足三角不等式

KL距离的几个用途:

  1. 衡量两个概率分布的差异。
  2. 衡量利用概率分布Q 拟合概率分布P 时的能量损耗,也就是说拟合以后丢失了多少的信息。
  3. 衡量两个概率分布的相似度,在运动捕捉里面可以衡量未添加标签的运动与已添加标签的运动,进而进行运动的分类。

参考博客:https://blog.csdn.net/wangshun_410/article/details/84956539

自动编码器

目的:将图像样式从编码器(实线箭头)转移到生成器(虚线箭头)。

假设3:潜在代码编码器是可逆的。这种假设被广泛应用于图像到图像的转换中[12,17]。具体来说,该算法假设一幅图像可以被编码成潜码,潜码可以同时解码成图像。这允许我们在域之间传递样式和内容。特别是,这让我们可以把自然图像转换成反射率和照度。

根据假设3,实现了三个自动编码器 E E E。

图4左边示出了实现用于自然图像流的自动编码器的细节。(用于反射和照度的自动编码器以类似的方式实现)

遵循图像到图像转换方法[12,17],并使用双向重建约束,该双向重建约束能够在图像 I i I_{i} Ii​→隐码 c I i c_{I_{i}} cIi​​→图像 I i ^ \hat{I_{i}} Ii​^​隐码 z I i z_{I_{i}} zIi​​→图像 I i ^ \hat{I_{i}} Ii​^​→隐码 z I i ^ z_{\hat{I_{i}} } zIi​^​​ 两个方向上进行重建。

图4右边是生成器 G I G_{I} GI​ 的生成细节。

图像重建损失

给定从数据分布中采样的图像,可以在编码和解码后重建它。

先验的编码重建损失

给定在分解时从潜在分布中采样的先验编码,我们应该能够在解码和编码后对其进行重构。与公式 (3) 不同,公式 (3) 适用于约束两个样本的分布,图像先验编码重建 和 图像重建的约束应相同。这里我们用L1损失来表示 L p r i L^{pri} Lpri。

为了使分解后的固有图像在目标域中与真实图像无法区分,使用 GANs 将生成的图像的分布与目标数据分布进行匹配。对抗性损失的定义:

总对抗性损失

物理损失

I = R ( I ) ∗ S ( I ) I=R(I)*S(I) I=R(I)∗S(I), 意味着图像 I I I 等于其类似的 R ( I ) R(I) R(I) 和 S ( I ) S(I) S(I) 的像素乘积,因此可以使用这种物理损失来规范我们的方法:

其中, I i I_{i} Ii​ 表示原始输入, R ( I i ) R(I_{i}) R(Ii​) 和 S ( I i ) S(I_{i}) S(Ii​) 是非配对数据集上能构成与原图类似的分量。

总体损耗

通过使用 GAN 方案,联合训练编码器 E、解码器 G、映射函数 f 和鉴别器 D,以优化不同损失项的加权和。

【评价指标】

MSE:均方误差,越小越好。

LMSE:最小均方误差,越小越好。

DSSIM:相异结构相似性指数,越小越好。

【数据集 & 实验结果】

ShapeNet intrinsic 数据集

address,paper,

We use 8979 input images, 8978 reflectance images and 8978 shadings to train USI3D , each set is shuffled before training. We use the other 2245 images for evaluation.

用 8979 输入图像、8978 反射图像和 8978 照度图像对 USI3D 进行训练,训练前对每组图像进行洗牌。使用其他 2245 张图像进行评估。洗牌的目的就是为了不配对,做到无监督。

表1:ShapeNet intrinsic 数据集的数值比较。

图 5 是本文在ShapeNet intrinsic 数据集上的一个消融实验对比,并且和 WH18 这个方法做了对比。

MPI-Sintel benchmark

address,paper,

MPI-Sintel 基准[4]是一个合成数据集,包括来自18个场景的 890 幅图像,每幅 50 帧(除了一个包含40幅图像)。我们遵循 FY18[8] 进行数据扩增,生成 8900 个图像 patch。然后,采用双交叉验证得到所有的 890 个检验结果。在训练集中,我们随机选取一半的输入图像作为输入样本,保留文件名的反射率和照度图像分别作为我们的反射率样本和照度样本。

表2:MPI Sintel 数据集的数值比较。

图7是在MPI-Sintel benchmark的实验对比,其中MSCR [28] 和 FY18 [8] 是有监督的方法。

MIT intrinsic dataset

address,

为了测试在真实图像上的性能,使用了 MIT 本征数据集[32]中的 220 幅图像。这个数据只包含 20 个不同的对象,每个对象有 11 张图像。为了与以前的方法进行比较,我们通过[8]的分割使用 10 个对象来微调我们的模型,并使用剩下的对象来评估结果。

表3:麻省理工学院 MIT intrinsic 数据集的数值比较。

图8是在MIT intrinsic dataset的实验对比,其中MSCR [28] 和 FY18 [8] 是有监督的方法。

IIW benchmark + CGIntrinsics Dataset

IIW benchmark : http://opensurfaces.cs.cornell.edu/publications/intrinsic/

CGIntrinsics Dataset: http://www.cs.cornell.edu/projects/cgintrinsics/

IIW 基准[31]包含 5230 幅主要为室内场景的真实图像,并结合人类对图像中稀疏选择的点对之间的相对反射率的判断共 872,161 幅。我们将 IIW 的输入图像分割为训练集 (4184) 和测试集,方法与[8,19]相同。因为 IIW 数据集不包含反射率和照度图像,所以我们使用了渲染数据集 CGIntrinsics[19] 中未配对的反射率和照度。为了进行公平的训练,我们选择了按照图像 ID 排序的前 4000 张连续反射率和后 4000 张照度图像进行训练。训练集的样本如图7所示。


参考博客


最后是一个使用加权人类不同意率 (WHDR) [29] 对 IIW 基准数据集进行数值比较。越低越好。

【论文笔记】—本征图像分解—Unsupervised—USI^3^D—2020-CVPR相关推荐

  1. 基于C++的本征图像分解(Intrinsic Image Decomposition)

    利用本征图像分解(Intrinsic Image Decomposition)算法,将图像分解为shading(illumination) image 和 reflectance(albedo) im ...

  2. 本征图像分解:Retinex理论【转载】

    本征图像分解:Retinex理论 鲜橙关注 0.1742019.07.29 00:42:51字数 1,504阅读 2,531 我们通过眼睛观察到或者相机拍摄到的物体颜色主要由两方面因素决定,第一是物体 ...

  3. 论文笔记:SESF-Fuse: an unsupervised deep model for multi-focus image fusion (2021)

    SESF-Fuse: an unsupervised deep model for multi-focus image fusion [引用格式]:Boyuan Ma et al. "SES ...

  4. 论文笔记--网络新闻图像中人脸标注技术的研究-2011

    论文信息: 硕士论文-网络新闻图像中人脸标注技术的研究-2011-哈尔滨工业大学-刘胜宇 文末附人脸标注相关论文下载地址 文章目录 摘要 技术 数据集 实验结果 结论 参考文献(部分) 关于图像标注 ...

  5. 《A Point Set Generation Network for 3D Object Reconstruction from a Single Image》论文笔记_2D图像生成3D点云

    摘要 通过深度神经网络生成3D数据已在研究界引起了越来越多的关注. 现存的大多数作品都采用常规表示法,例如体积网格或图像收集: 但是,这些表示法掩盖了3D形状在几何变换下的自然不变性,并且还遭受许多其 ...

  6. 论文笔记 Feature Selective Anchor-Free Module for Single-Shot Object Detection - CVPR 2019

    2019 FSAF Feature Selective Anchor-Free Module for Single-Shot Object Detection Chenchen Zhu, Yihui ...

  7. Unsupervised Monocular Depth Estimation With Left-Right Consistency 论文笔记

    文 | 陈十三 公众号首发 | 一只在路上的哈士奇 公众号ID | super_Mrchen 关注可了解更多.问题或建议,请公众号留言 0x00 补充知识 1.视差:左右双目图像中,两个匹配块中心像素 ...

  8. [论文笔记] DETR 论文笔记

    DETR 论文笔记 End-to-End Object Detection with Transformers(ECCV 2020) 摘要 引言 相关工作 集合预测 DETR 模型 集合预测损失(Ob ...

  9. enet分割_[论文笔记] 图像语义分割——ENet(ICLR 2017)

    [论文笔记] 图像语义分割--ENet(ICLR 2017) bluestyle • 2019 年 05 月 03 日 介绍 Motivation: 移动应用上的实时像素级语义分割是一个重要的问题,然 ...

最新文章

  1. mysql-mybatis 8.0版本配置====解决could not create connection to database server.
  2. 部署Configuration Manager主站点以及辅助站点
  3. 微信小程序教学第三章第四节(含视频):小程序中级实战教程:下拉更新、分享、阅读标识...
  4. js立即调用的函数表达式
  5. 安装Mysql与nginx结合的小型服务
  6. Java IO流之普通文件流和随机读写流区别
  7. strcpy和strncpy
  8. 搞不明白老板想要看哪种报表,熬夜做到两点也是白费28
  9. linux系统下如何查找文件(根据文件属性或者根据文件内容)
  10. APISpace 手机号码归属地和运营商查询API
  11. 动软DBUtility类库DbHelperSQLP实现多数据库连接
  12. 博士后到底值不值得做?!
  13. Launcher中动态加载APK出现java.lang.SecurityException异常的解决方法(二)
  14. img和文字都居中对齐
  15. Boost Log : Trivial logging
  16. 简介响应状态码1xx、2xx、5xx
  17. 玲珑oj 1129 ST
  18. mysql5.7修改密码
  19. android开花动画,放下手机,听花开的声音 -- 花儿 の Time #Android #iPhone
  20. SpringBoot与ElasticSearch、ActiveMQ、RocketMQ的整合及多环境配置、响应式框架WebFlux、服务器端主动推送SSE技术、生产环境部署、Actuator监控平台

热门文章

  1. Linux运维-day44-综合架构-playbook剧本的变量、条件语句及循环语句
  2. qq撤回的消息怎么找回 python_Python实现微信中找回好友、群聊用户撤回的消息功能示例...
  3. [数论] 约数个数定理与约数和定理
  4. OEM、ODM 分别是什么意思?
  5. 网站建设(一)PHP深入学习
  6. 业余LaTeX学习笔记(一)-引言
  7. mac新版迅雷,如何取消开机启动?
  8. 如何解决医院网站商务通无轨迹来源路径的问题
  9. HTML语言中 blur()方法,HTML DOM blur() 方法
  10. 表的字段和聚合函数连在一起查询需要使用select