原始题目 | Enhancing Underwater Imagery using Generative Adversarial Networks |
---|---|
中文名称 | 使用 GAN 增强水下图像 |
发表时间 | 2018年1月11日 |
平台 | ICRA 2018 |
来源 | University of Minnesota, Minneapolis MN |
文章链接 | https://arxiv.org/abs/1801.04011 |
开源代码 | 官方:https://github.com/IRVLab/UGAN (tensorflow ) |
摘要
自动水下航行器(Autonomous underwater vehicles (AUVs))依靠各种传感器——声学、惯性和视觉(acoustic, inertial and visual)——进行智能决策。由于其 非侵入性、被动性和高信息量,视觉(non-intrusive, passive nature, and high information content) 是一种有吸引力的传感方式,特别是在较浅的深度。然而,光的 折射和吸收( refraction and absorption)、水中悬浮粒子(suspended particles)、颜色失真(color distortion)等因素会影响视觉数据的质量,导致图像噪声和失真。因此,依赖视觉感知的 AUVs 面临着困难的挑战,因此在视觉驱动的任务中表现不佳。
本文提出了一种使用 GANs 来提高水下视觉场景质量的方法,其目标是 在 自主流程(autonomy pipeline) 中进一步改善视觉驱动行为的输入。此外,我们展示了最近提出的方法如何能够生成用于这种水下图像恢复的数据集。对于任何视觉引导的水下机器人来说,这种改进可以通过强大的视觉感知来提高安全性和可靠性。为此,我们提出了定量和定性的数据,这些数据表明,通过所提出的方法 校正的图像产生了更有视觉吸引力的图像,也为 diver 跟踪算法提供了更高的精度。
5. 结论
提出了一种利用生成对抗网络增强水下彩色图像的方法。展示了使用 CycleGAN 生成配对图像数据集,为所提出的恢复模型提供 训练集。定量和定性的实验结果验证了该方法的有效性,使用 diver 跟踪算法对校正后的潜水员图像序列进行跟踪,结果表明,与未校正的图像序列相比,校正后的 diver 图像序列具有更高的准确性。
未来的工作将专注于从水下物体中创建更大、更多样化的数据集,从而使网络更具泛化性。用粒子和灯光效果等噪声来增强 CycleGAN 生成的数据,可以提高数据集的多样性。还打算研究一些不同的定量性能指标来评估我们的方法。
1. 引言
随着新型平台、传感器和推进机制的出现,水下机器人已经成为自主领域机器人的一个稳步增长的子领域。自主水下航行器通常配备有各种传感器,而视觉感知由于其非侵入、被动和节能的特性,是一个有吸引力的选择。珊瑚礁监测[28]、深海探测[32]和海底测绘[5]是 visually-guided AUVs 和 ROVs (Remotely Operated Vehicles) 广泛使用的一些任务。这些机器人的使用确保了人类不会暴露在水下探索的危险中,因为他们不再需要冒险到深度(这是过去进行此类任务的方式)。尽管水下环境具有使用视觉的优势,但水下环境对视觉感知提出了独特的挑战,因为悬浮粒子的折射、吸收和散射会极大地影响光学。例如,由于红色波长很快被水吸收,图像往往具有绿色或蓝色色调。当越深,这种效果恶化,因为越来越多的红色色调被吸收。这种失真在本质上是极其非线性的,并且受到许多因素的影响,例如光线的数量(阴天与阳光,操作深度),水中粒子的数量,一天中的时间和正在使用的相机。这可能会导致分割、跟踪或分类等任务的困难,因为它们间接或直接使用颜色。
由于颜色和光照开始随着深度的变化而变化,基于视觉的算法需要具有通用性,以便在机器人可能操作的深度范围内工作。由于获取各种水下数据以训练视觉系统的高成本和困难,以及引入的大量噪声,算法可能(并且确实)在这些不同的领域表现不佳。图1 显示了水下环境中可能出现的视觉场景的高变化性。解决这个问题的一个步骤是能够恢复图像,使它们看起来像是在水面上,即 校正颜色并从场景中去除悬浮颗粒。通过进行 多对一(非水下的) 映射 ,即从 水下领域 到 非水下领域(图像在水面上的样子),难以跨多种形式噪声执行的算法 可能只能聚焦一个干净的领域。
![drawing](/i/l/?n=23&i=blog/1564596/202303/1564596-20230304224219993-1755913131.png)
深度神经网络已经被证明是强大的非线性函数逼近器,特别是在视觉[17]领域。通常,这些网络需要大量的数据,要么标记为 ground truth.,要么与 ground truth. 配对。对于灰度图像[33]的自动着色问题,由于任何彩色图像都可以转换为黑白图像,因此现成的训练数据是成对的。然而,水下图像受到颜色或其他现象的扭曲,缺乏 ground truth,这是采用类似方法进行校正的主要障碍。本文提出一种基于 Generative Adversarial Networks, GANs 的水下视觉场景质量提升技术,旨在提升自主水下机器人视觉驱动行为的性能。
我们使用最近提出的 CycleGAN[35] 方法,该方法学习在没有图像对的情况下将图像从任意域 X 转换到另一个任意域 Y,作为生成配对数据集的一种方法。 通过让 X 是一组 未失真的(undistorted) 水下图像,Y 是一组 失真的(distorted) 水下图像,我们可以生成一个看起来在水下的图像,同时保留 ground truth 。
2. 相关工作
虽然最近已经有许多成功的自动着色方法[33,11],但大多数都 专注于将灰度图像转换为彩色的任务。
相当多的方法使用基于物理的技术直接模拟光的折射[15]。
针对水下图像的颜色恢复,[29]的工作采用 马尔可夫随机场的能量最小化公式。
与本文提出的工作最相似的是最近提出的 WaterGAN[20],它使用对抗性方法来生成逼真的水下图像。他们的生成器模型可以分为三个阶段:
- 1)衰减,这说明了光的范围相关衰减。
- 2)散射,模拟由光子向图像传感器散射引起的雾霾效果;
- 3)渐晕,在图像角点上产生阴影效果,这种效果可以由特定的相机镜头引起。
与我们的工作不同的是,他们使用 GAN 来生成水下图像,并严格使用 Euclidean loss 来进行颜色校正,
而我们两者都使用 GAN。此外,它们在 WaterGAN 训练期间需要深度信息,这通常很难获得,特别是在水下自主机器人应用中。本文工作在整个过程中只需要两个独立域(例如 水下 和 陆地 )中的物体的图像。
最近在生成模型,特别是 GANs 方面的工作,在 修复[24]、风格迁移[8]和图像到图像转换 等领域显示了巨大的成功[14,35]。这主要是因为它们能够提供比 欧氏距离 更有意义的损失,而 欧氏距离 已被证明会产生模糊的结果。本文将 估计水下图像真实外观的问题 构建 为 成对图像到图像的转换问题,使用生成对抗网络(GANs)作为生成模型(详细信息请参见第 3.2节)。与[14]的工作非常类似,我们使用来自 两个域的图像对 作为输入和 ground
truth。
3. 方法
受颜色或其他环境影响而失真的水下图像缺乏 ground truth,这是以往彩色化方法所必需的。此外,水下图像中的失真是高度非线性的; 简单的方法,如向图像添加色调,不能捕获所有的依赖关系。本文提出使用 CycleGAN 作为失真模型,以生成用于训练的成对图像。给定一个 无失真的水下图像域 和一个 有失真的水下图像域,CycleGAN 能够进行风格迁移。给定一个 未失真的图像,CycleGAN 将其失真,使其看起来像是来自 失真图像的域。然后 在我们的算法中使用这些对进行图像重建。
无失真的水下图像域: 没有水下那种颜色的图像
失真的水下图像域: CycleGAN 生成的图像
3.1 数据生成
深度、光照条件、相机模型和水下环境中的物理位置都是影响 图像失真量 的因素。在某些条件下,水下图像可能有很小的失真,或者完全没有失真。 设 \(I^C\) 为无失真的水下图像,\(I^D\) 为 有失真的水下图像。我们的目标是学习函数 \(f: I^{D} \rightarrow I^{C}\)。 由于收集水下数据的困难,往往不仅 \(I^D\) 或 \(I^C\) 不存在,而且 二者都不存在。
为了避免图像对不足的问题,我们使用 CycleGAN 从 \(I^{C}\) 生成 \(I^{D}\),它给我们一个 成对的图像数据集。给定两个数据集 X 和 Y,其中 $I^C∈X $和 \(I^D∈Y\), CycleGAN 学习一个映射 \(F: X→Y\)。图2 显示了从CycleGAN 生成的配对样本。从这个配对的数据集中,我们训练一个生成器 G 来学习函数 \(f: I^D→I^C\)。应该注意的是,在 CycleGAN 的训练过程中,它同时学习映射 \(G: Y→X\),这与 \(f\) 类似。在第 4 节中,我们将 CycleGAN 生成的图像与通过我们的方法生成的图像进行比较。
![drawing](/i/l/?n=23&i=blog/1564596/202303/1564596-20230304222828556-1483544676.png)
3.2 对抗网络
在机器学习文献中,生成式对抗网络(GANs)[9] 代表了一类基于博弈论的生成模型,其中 生成器网络与对手竞争。从分类的角度来看,生成器网络 G 产生的实例会主动试图 “欺骗” 鉴别器网络 d。目标是让鉴别器网络能够区分来自 数据集的“真”实例 和生成器网络产生的 “假”实例。在我们的例子中,以图像 \(I^D\) 为条件,生成器被训练生成一个图像来试图欺骗鉴别器,鉴别器被训练来区分 失真和非失真的水下图像。在原始 GAN 公式中,我们的目标是解决 minimax 问题:
标签:Underwater,Imagery,CycleGAN,失真,生成,水下,图像,视觉,图像增强 From: https://www.cnblogs.com/odesey/p/17178273.html