1. 论文解释
最近在做数字图像处理作业的课设,其中第二次作业是关于复现论文《Event-based High Dynamic Range Image and Very High Frame Rate Video Generation using Conditional Generative Adversarial Networks》。这篇文章是2018年CVPR上的一篇文章。
看这篇论文的题目,可以非常容易从其中提取出三个关键点:
- EventCamera(事件相机)
- cGAN(条件生成对抗网络)
- HDR (高范围动态图像)
那么这篇文章呢,就是使用cGAN网络,输入为EventCamera数据,输出为HDR图像。
1.1 EventCamera
那么什么是EventCamera呢?我先引用一下网上的一些说法:
与传统相机相比,Event Camera是完全不同的,它不是记录一个场景的,而是记录一个场景的变化。在一个没有物体移动的场景中架设一台Event Camera,它不会显示任何东西。但是一旦Event Camera检测到运动(像素级的光线发生了变化),它就会在每个像素的基础上以非常高的刷新率(毫秒)呈现出来。
这里基本解释了什么是EventCamera,但我们并没有直观的感受。作为一个学计算机四年的人,我更喜欢用输入、输出来解释一个新的事物。EventCamera的输入其实就是我们的自然场景(和普通相机一样),输出则是一个四元组Event:
(像素变化p,像素位置行x,像素位置列y,像素变化时间t)
在了解EventCamera之后,那么我们真正的输入是什么呢?其实是一张图像(channel=3),这张图像可以由两种形式组成:
- 基于时间段:每隔一段时间,我们将在该时间段内的所有Event进行压缩,组成图像(适合Event比较稠密的时候,不然一段时间根本没有像素变化岂不很尴尬,压缩了个寂寞);
- 基于事件数:每攒够一定数目的Event,我们将这些Event组成图像(适合Event比较稀疏的时候);
如下图,左边是基于时间段,右边是基于事件数:
1.2 cGAN
作者虽然讲是使用了cGAN,但实际上使用的是CGAN的变体Pix2Pix。作者这个网络与Pix2Pix一摸一样,生成模型见下图:
显然这个网络是Pix2Pix中的U-Net嘛,一模一样。本质来讲就是在自编码器的编码器和解码器特征图相同的部分来了个相加。
接下来看判别模型:
显然是Pix2Pix中的PatchGAN判别模型嘛,假如大家对PatchGAN判别器不是很了解,可以看我之前的博客:马尔可夫判别器PatchGAN
1.3 HDR
作者在论文中提到的HDR,在这里我其实不是很理解这篇论文和HDR的关系,论文输出的是一个灰度图像(Channel=1)。应该是讲假如说当场有个相机拍摄的图,比起我们恢复后的图,会有一定的不足(比如过度曝光、光源不足等等),我们就没有这些问题。
2. 课堂展示ppt以及github代码
3. 感谢
目前该数据集还未开源,但我们联系论文作者王霖,非常感谢王博士的支持,我们得到了一部分数据集。 但我们不打算将其开源,根据王博士的回信,在年底该数据集会放在他们实验室官网。