第一篇文献

End-to-End Learning of Representations for Asynchronous Event-Based Data

解决的问题

本文提出了一系列抽象的事件描述,旨在解决将各种各样纷乱的事件描述统一至同一个泛函中,以便于得到网格化的事件描述grid-like以适应深度学习网络输入的要求;同样也提出了相应的数据驱动的事件描述方式。

主要内容

文章指出,网格化的事件描述本质上就是如下式表达的冲激函数网格点列:

S±(x,y,t)=eEf±(x,y,t)δ(xxe,yye)δ(tte)S_{\pm}(x,y,t)=\sum_{e\in E} f_\pm(x,y,t)\delta(x-x_e,y-y_e)\delta(t-t_e)

注意这里的描述方式,并没有将时间轴和空间轴拼合在一起,虽然但是这样也没有什么本质 上的区别,强调了时间和空间的独立性。根据这一描述式,在特定的核函数作用下,可以得到以该方式描述进一步泛化的事件描述式(文章中称为核卷积):

(kS±)(x,y,t)=eEk(xxe,yye,tte)f±(x,y,t)(k*S_\pm)(x,y,t)=\sum_{e\in E} k(x-x_e,y-y_e,t-t_e)f_\pm(x,y,t)

将上式离散化即可得到网格化的事件描述张量,称为事件脉冲张量Event Spike Tensor。核函数可以自由选择,这里完全可以由某一个网络去拟合,因此事件描述可由数据驱动方式产生,原因来自于此。

文章列举了一个例子,即将核函数修改为一个三层全连接层,输入为事件点的时空坐标,而输出则由两个隐层决定。该网络在常规CV任务如物体识别、光流估计中较其他手工设计的描述更优。

内容评价

本文抽象出了所有事件描述的一般特性,目前来看确实其泛化的能力足够强大,提出了设计数据驱动描述方式的一般流程。文章的观点主要集中在两点:一是事件描述一定是网格化的,二是事件描述的核函数是确定的;关于这两点,网格化目前来看为了适配CNN是有必要存在的,而核函数可以不是定常的,即让描述自适应数据,说不定能够更进一步取得好效果。

第二篇文献

Polar Loss for Event-Based Object Detection

解决的问题

本文提出一个观点:在使用事件流完成模式识别等任务时,似乎遗漏了事件极性的作用,是否应该把极性也当作损失函数的一部分,加入至训练框架中呢?

主要内容

本文以物体识别和物体检测为例,说明了使用极性损失的必要性。其加入的损失函数由以下两个部分组成:

L=λLp+(1λ)LTL=\lambda L_p+(1-\lambda)L_T

从左至右分别代表极性损失、正负事件所得事件张量EST的差异(文中中使用的是欧氏距离和余弦距离)以及任务损失(由具体的任务决定,例如分类任务就是交叉熵,识别任务就是识别损失等)。

内容评价

本文提出的方法在两个任务上取得了一定的效果,说明了极性损失的引入确实能够改善模型的性能。但是,文中引入的极性损失我不认可,因为正负事件本身在快速运动状态下产生的事件脉冲张量就必然不是相同的,则无论如何也不可能最小化文中提出的极性损失来实现性能改善。本文的结果可能更多的只是一种偶然(没有做消融实验)。

第三篇文献

Learning Dense and Continuous Optical Flow From an Event Camera

解决的问题

本文提到了两个概念:稠密的光流和连续的光流,其中稠密指的是空间意义上的连续,形成一种类似光流场的分布;连续指的是时间意义上的连续,具体是极其小的时间间隔。本文的目的是从事件流和图像的提示下生成尽量稠密和连续的光流估计,且仅需要一张起始的图像和从这一时刻起的事件流。

主要内容

现行的框架是Unet框架(确实如此,在插帧论文中也提到了这种结构),如下图所示:
基准框架
其中编码器环节可以仅是图像,也可以是图像与事件流各自编码后按连接融合;在解码器环节,是生成的光流反复与跳步连接Skip Connection,并在最后的解码输出中得到最终光流估计。该网络模型能够取得较好的生成效果,但是在信息流的融合上较为粗糙,事件流和图像的特征往往不是同一个维度意义的,直接融合导致信息的错误编码。

本文使用的事件描述是一种扩展体素栅格,将栅格值修改为平滑后的时间取值,提出的框架如下图所示:
DCEIFlow光流估计框架
其中的图像和事件特征提取器都是卷积网络,在特征提取器的基础上,作者增加了一个语义提取器以增加光流估计解码输出的信息量。主要的创新点在于:

  1. 特征融合通道:如下图所示,对各自特征图使用一次卷积后连接再卷积,保证了融合特征通道具有学习能力,并在后续融合输出后增加一次特征图的相似性检验(使用光流估计的结尾图,即事件流最后一个时间戳对应的图像生成特征图),保证了经该融合通道融合得到的特征与真实图像特征高度一致。
    特征融合通道
  2. 残差连接的光流估计更新器,该更新器使用卷积GRU网络作为核心部件,使用残差光流计算估计光流,最后通过8次双线性上采样完成光流估计输出。
  3. 训练方法:双向训练事件-图像流训练,所谓的双向是指通过1时刻图像和1-2时刻的事件流完成正向光流估计,然后使用2时刻的图像和2-1时刻的事件流完成反向光流估计,并与正反向参考真值对比,两个方向的损失作为总计损失。

内容评价

本文提出的框架在事件、图像特征融合以及训练方法上有所创新,取得了更好的光流估计效果。本人对光流估计领域不甚了解,认为该框架仍然继承了Unet的跳步连接特点,保证信息从前向后逐渐增加。有两点疑问:

  1. 网络设计中的查找表存在的意义是什么?给人一种感觉:在深度学习的框架里面使用了手工标注的某一层网络?
  2. 网络连接过于复杂且没有数学基础,并不认为是一个优良的网络设计。

第四篇文献

Taming Transformers for High-Resolution Image Synthesis

解决的问题

本文本质上还是去做了高分辨率图像的合成,在解决路径中,作者提出了一种较为创新的方式,使用变形器外加离散化的码表,通过GAN网络完成对低分辨率图像的分辨率提升;通过单层的注意力块,本文同样地能够实现语义信息的嵌入。

作者号称将CNN与变形器完成了高效整合。

主要内容

本文至少有以下两个创新点,重点在于码表,即隐空间量化:

  1. 码表Codebook的使用:码表起到的作用是量化quantization,将图像的特征空间量化为量化向量,不是连续取值的,即为标题中的VQ(Vector Qantization)。使用码表的好处-
    在于:连续值化为量化值,起到了embedding的作用,可以方便使用变形器查找图像各部分的相关性。

码表是怎么来的?

这个问题真的比较抽象,我在原谅和参考的文献中找了半天也没有找到,最后在参考文献中找到了一句类似于这样的描述:We define a latent embedding space eRK×De\in\mathbb{R}^{K\times D} where K is the size of the discrete latent space (i.e., a K-way categorical)。似乎是这个码表不是提前定义的就是一个已知的东西,不需要学习。(引用自文献Neural Discrete Representation Learning
相比于直接将图像分块后输入至变形器的操作(例如ViT),本文在隐空间中的操作更有意义,类似于LDM一样的作用。
2. GAN和变形器的使用:相比于原始的参考文献(使用的是VAE),GAN在生成式任务中明显具有优势,本文生成的图像细节上具有更高的分辨率。而变形器的使用将增强了模型对序列信息的理解,也提供了与嵌入信息交互的接口,因此本文的模型可以完成诸如姿态控制图像生成、语义图像合成和结构图像合成的任务。

本文的工作框架如下图所示:
文章主要工作框架

内容评价

本文继承自VQVAE论文的关键创新:即隐空间量化,在原始论文单用量化的基础上,增加了一个变形器,将量化后的隐变量视为嵌入信息,从此增强了对图像整体相关性的把握能力,然后对变形器输出作解码可得到高分辨图像。在隐空间中对变量直接离散后使用变形器是本文最大的创新点,因此其确实值得一个CVPR,当然本文也存在一点问题:

  1. 首先是码表的量化处理比较随意,完全不知道是怎么来的,看完另一篇文献,大概感觉码表是来自于四舍五入这种正儿八经的量化函数;
  2. 而且该量化操作前后不可导,两篇文献均没有解决这个可导性问题,仅仅作了一个简单的梯度直接传递,忽略量化层的存在,在数学上站不住脚;
    这两个地方,完全是可以创新的。

第五篇文献

DeepCache: Accelerating Diffusion Models for Free

解决的问题

本文以空间换时间,解决了扩散模型在训练和推理的过程用时较长 ,生成图像速度太慢的问题,但是相应地,引起了图像质量的下降和网络存储空间占用率的上升。

主要内容

本文对扩散模型的前向推理过程作缓存处理,整体的结构示意图如下:
缓存框架结构示意图
本质上改进的是扩散模型中Backbone部分的Unet解码器,而且是解码器的下层解码输出,如图中的U2U_2的输出,在xt+1x_{t+1}时刻的训练中,将该输出缓存在内存中,保证在下一次逆过程xtx_t训练时,U2U_2解码器不需要再次计算该输出,而是直接只计算一次D1D_1编码器,就可以输出,从而后续的几个编码器和解码器通通被跳过,完成了计算时间的较大缩减。

缓存的前提:前后时刻的解码输出具有高度的相似性

文章通过实验,验证了在一般的扩散模型训练过程中,相邻的时间步骤中相同位置处的图像具有80%以上的相似性,原则上可以使用同位替换。

但是我没有找到文章所谓的相似性度量指标

内容评价

本文在扩散模型所用的Unet算法的推理环节增加缓存机制,能够较大程度地减少扩散训练、推理过程中逆过程的计算时间(2.1×2.1 \times),实现了以空间换时间的目标;但是,本文在以下两个方向还有问题:

  1. 相似性的度量指标,我并没找到本文说明的相似度(80%)是哪一个指标算出来的,唯一接近的也就是 一个热力图的可视化结果, 看起来也并不是很相似啊。
  2. 本文的适用性比较堪忧,要求颇多,必须要图像相似度较高才能使用,因此如果扩散模型中不含有解码-编码环节,则根本不会产生类似的图像,本文的优化算法也就派不上用场。此外,相似度的使用,将导致了对缓存后下级编码器解码器无法训练,因此只能用于推理环节,而推理环节的时间成本,估计并不如训练环节那么显著。

难怪本文说使用一块2080还不是Ti就能做。

第六篇文献

MaxViT: Multi-axis Vision Transformer

解决的问题

本文提出的是对自注意力机制的改进方式,旨在增强注意力机制对全局信息的把握程度,而不引入增加时间成本的操作(例如滑动窗口或者平移块法)。

主要内容

串联式的多轴注意力机制是本文的主要创新点,该结构如下图所示:
串联式的多轴注意力机制
主要分为两个组成块:Block注意力机制和Grid注意力机制,示意图如下图所示:
两种注意力机制机理

  1. Block注意力机制:将输入图像IRH×W×CI\in\mathbb{R}^{H\times W\times C}按空间维度分为内部邻接的块BRHP×WPB\in\mathbb{R}^{\frac{H}{P}\times\frac{W}{P}},其中分块后的总体为IBRHP×WP×P2×CI_B\in\mathbb{R}^{\frac{H}{P}\times\frac{W}{P}\times P^2\times C}
  2. Grid注意力机制:将输入图像按空间维度分为小棋盘格IGRG2×HG×WG×CI_G\in\mathbb{R}^{G^2\times \frac{H}{G}\times\frac{W}{G}\times C},在单个棋盘格单元内取对应位置处的小格作为同一个格块GRG2G\in\mathbb{R}^{G^2},共计HG×WG\frac{H}{G}\times\frac{W}{G}个,然后完成注意力机制的前馈网络计算。

在实际使用过程中论文取定P=G=7P=G=7。在搭建多轴注意力块MaxViT Block时,文章还引用了论文MobileNetV2: Inverted Residuals and Linear Bottlenecks的倒置残差瓶颈块网络。

内容评价

本文提出的多轴注意力机制在多个下游任务中取得了SOTA结果,其在分块上的创新确实增强了注意力机制对全局信息的把握能力,关于本文的创新点,让我想起了从全连接层向卷积神经网络转化的LeNet,本文的棋盘格划分:

是否可以是不规则的,甚至是自适应的?

即将注意力机制的划分方式作为一种可以学习的参数,完成对注意力机制的进一步改进,这里面似乎是有可以做的东西的。

第七篇文献

LDMVFI: Video Frame Interpolation with Latent Diffusion Models

解决的问题

本文是将我的想法照进现实的一篇文献,即扩散模型在生成式任务中如此优异,为什么不把它用来进行视频 的插帧呢?视频插帧作为典型的非线性问题,常规的两帧补充或者光流估计等均不能达到较好的遮挡效果插帧,本文就这一问题作了详细 的解答,并取得了很好的效果。

主要内容

文章充分结合了现有的网络框架模型VQ、MaxViT
,总体的处理流程如下图所示:
文章总体处理流程
图像经编码器计算隐空间后正向扩散,然后在逆过程中使用去噪Unet网络和跳步连接方式对隐空间变量去噪,直到逆过程结束后使用解码器完成插帧图像的输出。

框架的核心组成部件便是自编码器结构,该结构 的框架图如下所示:
自编码器结构

  1. 其中的编码器环节共计有三个并行处理的编码器单元,每个单元的参数都是共享的,编码器结构则是在基本的VAE框架的最后一层输出中增加了一个多轴注意力块MaxViT Block,以增强对隐空间的全局信息把握。
  2. 隐空间采用量化取值VQ,增强了隐空间的泛化能力。
  3. 一个关键的创新点:跳步连接,本文的跳步连接首先是对两个编码器并联的跳步连接,所谓的“特征图堆叠”pyramids,并使用一次MaxViT变体基于多轴注意力机制的交叉注意力机制MaxCA将堆叠特征图与解码输出融合;此外,本文没有对噪声图像进行跳步连接,这是非常有益的一次尝试,噪声图像并会提供太多有意义的信息,因此将其跳步舍去,有助于增强去噪的能力。(当然也不好说,因为文章没有做消融实验)
  4. 另一个创新点:解码器的最终输出并不是严格意义上的插帧图像,而是四个头的注意力结果,然后使用四个头的注意力值去取原始图的对应位置,经仿射变换后得到最终的插帧图像输出。(U1S1这个操作比较迷,被作者称为弹性卷积deformable convolution

本文的消融实验应该再做得更详细一点,只做了VQ块、下采样系数的消融,但是文章里面的疑点太多了,最应该做都没做到。

当然也完全可能是我太讲究了

内容评价

本文是第一个将扩散模型应用至常规的计算机视觉领域的实践,不完全充分地说明了扩散模型的巨大潜力,本文对我最大的参考莫过于对embedding的理解,所谓的文生图、图生图乃至ControlNet都是修改了语义嵌入的接口输入,因此得到了不同的图像生成能力。

所以事件流也必然能够作为新的语义嵌入接口,提供高质量的插帧输入。

对于本文,目前有多个方面存在问题,可以用于后续的改进:

  1. 实验中只测试了22个全高清的480fps视频,每个视频的帧率都是30Hz,并将其插帧至60Hz,这与文章提出的三个编码器环节是相匹配的,但是如果插帧倍率不是×2\times 2,则直接将前后帧和去噪帧输入,按当前的框架方法,怎么能够得到前后时间关系上的不同帧呢?

这个问题相当严重!

  1. 噪声隐空间的跳步被舍去,似乎增强了图像生成的质量,如果所插帧的倍率不再是2倍时,仍然选择舍去该跳步,是否会导致插帧图像的质量下降?
  2. 是否可以在本文中使用DeepCache思路,减少推理时间成本?

第八篇文献

脉冲连续摄影原理与超高速高动态成像验证

脉冲视觉研究进展

解决的问题

本文是一个综述,来自北京大学的黄铁军教授本人,确实非常厉害。主要讲述了一种新型的视觉器件——脉冲相机spike camera的原理、研发以及使用过程,有点点类似于事件相机的圣经Event-Based Vision在事件相机领域的地位的感觉,看完该文章可以快速地入门脉冲相机。黄教授称脉冲相机为“象机”或摄象机**vform camera(太搞笑了),称脉冲相机得到的脉冲数据流视象vform,太抽象了。

主要内容

脉冲连续摄影原理

该原理是脉冲相机的成像原理,相当于在CCD成像器件对光电子积分的过程中,每次达到一个电压阈值,即完成一次脉冲输出,输出的异步脉冲流构成了脉冲相机的总体输出。

类似于事件相机,该脉冲流也是在时间维度有着高度离散化且信息无损的时间分辨率,但是不同于事件相机的是,脉冲的绝对值有着显著的物理意义,脉冲强度与脉冲宽度的乘积是脉冲相机电压累积阈值常数。由此自然引出了最简无损脉冲编码

最简无损脉冲编码

在光电流相对稳定的阶段中,产生的脉冲流也基本是恒定的,没有必要将这些恒定不变的脉冲流一五一十的输出,因此完全只需要输出脉冲强度产生变化时刻的脉冲即可,由此脉冲流得到极大的稀疏化,从而节省了存储空间和传输带宽。如下图所示:
脉冲序列调制原理

脉冲连续成像

脉冲流阵列与事件流一样,在空间上异步,任取其中任意一个时间戳,即可得到该时刻的光电子流强度微元图(即图像微元),如将时间戳截取为一定长度的时间间隔,即可得到脉冲连续成像结果(类似于图像)。

因此脉冲相机的脉宽读出速度是其时间分辨率的主要制约项,该项主要体现在对超强光的成像上,超强光成像的脉冲宽度极窄;而器件的噪声水平主要体现在暗光的成像,即暗电流累积 产生的脉冲。

芯片研制与器件原型

该文章进一步说明使用标准CMOS工艺和常规器件研制的脉冲成像芯片,该芯片在空间分辨率上完成了对事件相机的超越(可达1000×10001000\times 1000的高分辨率脉冲流,工作脉冲主频可达40kHz40kHz,在时间分辨率上不弱于事件相机。

内容评价

本文是开山鼻祖的作品,高山仰止,崇敬之情溢于言表,充分说明了中国人也可以自己研制具有优良性能的独立视觉器件(政治站位极高),但是从学术的角度上,也需要泼一盆冷水:脉冲相机确实是参光电子流的当前最完整记录,能够充分体现场景动态过程。但是,光电子流往往受到场景影响,容易产生高强度光照或者极暗光照,相机在极端条件下的工作性能可能并不如想象中那么优良。

第九篇文献

Unifying Motion Deblurring and Frame Interpolation with Events

解决的问题

本文为解决高速摄像过程中产生的动态模糊,引入事件相机对模糊进行补偿,同时解决了常规去模糊的处理手段中插帧与去模糊自相矛盾的问题,取得了较好的去模糊效果。

主要内容

本文从事件相机重建强度图像的角度入手,首先推导得到了关于事件流预处理的手工设计核函数,如下式:

P(Ef,tr)={S(Ef,tr)if tr>fR(Ef,tr)if trf\mathcal{P}(\mathcal{E}_{|f,t_r|})=\begin{cases} \mathcal{S}(\mathcal{E}_{|f,t_r|}) & \text{if } t_r>f\\ \mathcal{R}(\mathcal{E}_{|f,t_r|}) & \text{if } t_r\le f\\ \end{cases}

式中的P\mathcal{P}指代事件流预处理算子,S\mathcal{S}R\mathcal{R}分别指代在事件流时间戳trt_r划分于待插入图像(文中称为隐图像)时刻ff前和后的处理算子。预处理得到的事件流经事件二重积分LDI得到强度图像后,使用一次加权得到粗插帧图像E(f,T)w1LDI[P(Ef,ts)]+w2LDI[P(Ef,ts+T)]E(f,T)\approx w_1 \mathrm{LDI}[\mathcal{P}(\mathcal{E}_{|f,t_s|})]+w_2\mathrm{LDI}[\mathcal{P}(\mathcal{E}_{|f,t_s+T|})],然后与模糊图像完成一次信号融合后,经自监督学习框架可得到精炼后的插帧图像。数据工作流如下图所示:
数据工作流示意图
其中,LDI块是经过自监督学习的算子,能够从事件流中得到强度图像描述。其中的自监督学习通过优化模糊图像与模糊图像的差异、事件重构图像与事件重构图像的差异,不同时间帧处的差异,以及精炼图像的差异三个损失函数得到总体输出。

实验结果表明,该方法能够保留更多的模糊图像细节。

内容评价

本文没有通过监督学习的方式就完成了较高质量的模糊图像插帧与重建,在算法设计上相当精巧,手工设计的预处理核函数也具有相当好的处理效果,算法上参数数量较少,充分说明了不是万物都需要深度学习的。

这也应该是本文可以进一步改进的地方,在没有监督学习的算法内部,其泛化能力将相对较差;此外,插帧算法仍然依靠了手工设计的处理核,算法核 函数在原理上也没有创新,只是将事件流完成一次重建,本质上依靠的还是事件相机 的时间高分辨率,不能够产生自适应能力。

第十篇文献

Video Frame Interpolation via Deformable Separable Convolution

解决的问题

本文提出了一个较为简单的算子,用于实现了对前后帧图像的插帧,对卷积运算的进行扩展,实现了卷积核卷积位置偏置和卷积模板的参数学习,从而实现了对光流估计模型的扩展。

本文的重点在于弹性可分离卷积算子的设计

主要内容

本文是在可分离卷积的基础上,进一步增加了卷积核偏置量和模板量的参数学习能力,提出的卷积算子称为弹性可分离算子Deformable Separable ConvolutionDSconv

弹性可分离算子

算子部分算法的实现如下图所示:
弹性可分离卷积示意图
对于某个卷积核K(x,y)K(x,y),传统方法的卷积是平移原始图像的像素中心P(x,y)P(x,y),将卷积核的每一个像素和以像素中心扩展的与卷积核相同大小的图像块完成对应点乘积并求和。

本文提出的方法中,卷积核的每一个像素对应的图像像素块将产生一个偏置\Delt P(x,y),同时以每个像素块为中心的卷积计算将产生一个相同大小的调制因子Δmj\Delta m_{j}。该过程可以使用以下公式表示:

P(x,y;Pj)=P(x,y;pj+Δpj)ΔmjI(x,y)=x,yK(x,y)P(x,y;Pj)\begin{aligned} P'(x,y;P_j)&=P(x,y;p_j+\Delta p_j)\cdot\Delta m_j\\ I(x,y)&=\sum_{x,y}K(x,y)P'(x,y;P_j) \end{aligned}

其中第一式表示,对当前待卷积的位置,产生一个独有的偏置,使用基于像素灰度的插值算法求出偏置后不位于整数位置处的像素,同时每个像素灰度各自乘以一个调制因子。第二式表示卷积的一般表示式。算子进一步给出了对卷积核、卷积偏置量和调制因子的反向传播梯度计算公式,可以构建Torch算子完成该算法的应用与融合。

图像插帧

本文在提出DSconv算子的基础上,使用了极为简单的编码解码器网络,在输出端构建三个估计器完成对DSconv的估计与计算,然后直接使用待插帧前后两帧图像与DSconv算子各自完成一次计算,并使用简单的算术加法即可得到插帧结果,整 体的网络模型如下图所示:
插帧网络模型
在DSconv算子的选取上,文章为了进一步减少计算量,将卷积核取为两个一维卷积核的乘积,从而将参数减少为原始参数的13\frac{1}{3}

文章对网络的训练使用的损失函数是两项正则,第一项是插帧图像与真实图像逐像素位置上的像素灰度RMSE;第二项是插帧结果与真实图像在一阶导处的强度对应L1损失。消融实验结果表明,偏置量、调制因子和卷积核本身的学习性都对最终插帧结果的影响不可忽略。

内容评价

本文的算法,使用了极为简单的弹性可分离算子,就完成复杂的插帧算法实现,其性能不亚于复杂网络的性能,在本质算法上具有更好的设计。该文章的后续研究文章Multiple Video Frame Interpolation via Enhanced Deformable Separable Convolution发表于PAMI,进一步阐明了本文提出的弹性可分离卷积算子是对光流估计、一般卷积的扩展,前者都是DSconv的一种特殊形式,因此兼备了光流和卷积的优良特性又不致于陷入光流的不足中。

本文提出的弹性算子解释了我在第六篇文献中提出的对注意力机制核 划分不规则 的构想,本文的构想也是对卷积核划分和卷积计算的一种扩展设计,简单的设计就可以实现优良的性能。本文的不足之处没尚未想到(唯一可能是对卷积计算完成后的偏置Δb\Delta b未考虑到,这个问题在PAMI论文中已经得到解决)。

第十一篇文献

Masked Autoencoders Are Scalable Vision Learners

解决的问题

本文是何恺明团队的成果,可谓是简单实用,颇得恺明之精髓。本文讨论了Transformer对序列信息的理解能力,提出其甚至在高达75%的遮盖情况下,仍然能够得到较好的图像复原,整体模型没有过度设计浮夸的技巧。

主要内容

本文的主要模型框架如下图所示:
MAE主要模型框架
其中使用了ViT的原理,对图像均匀分块后排列,已经被遮盖的图像不参与位置编码,将未遮盖 的图像增加位置编码,通过一个普通的vanillaTransformer即可完成对图像的重构。训练过程的损失函数使用简单的MSE函数,不考虑遮盖部分的损失。

预训练

本文在实际的训练 和部署过程中,使用遮盖后的图像可以较大程度地减少输入向量的数据量,能够方便Transformer在预训练的自监督阶段快速地完成训练和收敛,方便后续的微调监督训练。在实际的部署中,Transformer模型在图像不遮盖的情况下,线性探测linear probing能力有所上升,而增加遮盖 将会导致该能力的下降。

线性探测能力是在不引入编码器的情况下,仅使用编码输出模块,并在输出后增加一个线性全连接层,完成简单的分类任务,用于考察预训练模型在描述提取能力水平。

微调

本文提出了部分微调算法,原因是线性探测能力与微调结果极大程度上不具有相关性,线性探测能力测试忽略了非线性特征,因此不能完全反映深度网络的真实能力。

局部微调在原理上是冻结模型的前面层,仅调整模型最后几层(与解码相关的)

微调结果表明,微调非线性注意力头更能够增强模型在指标集上的表现,因此线性可分能力不是唯一度量描述能力的指标。

内容评价

本文在模型原理上并未创新,而是在预训练算法和线性探测指标的构想与设计思想上有所创新,提出的局部微调和预训练方法能够以更少的资源预训练更大的模型,并准确地反映大模型在描述提出能力上的真实水平。

第十二篇文献

Learning Spatial-Temporal Implicit Neural Representations for Event-Guided Video Super-Resolution

Transformer for Single Image Super-Resolution

解决的问题

本文解决的是使用事件流完成视频的高分辨率重制,不同于常见的生成式模型,本文的框架不包含一个完整的编码-解码器框架,而是单独地使用了一个隐式的描述方式,将图像和事件流融合为一个神经元描述。

主要内容

文章的网络模型框架如下图所示:
STF网络模型框架
其中输入图像和事件流批次经过一个相同的结构换卷积特征提取环节,特征作一次连接后输入至高分辨Transformer中,由文章Transformer for Single Image Super-Resolution提出。得到时空融合的特征张量fSTFf_\mathrm{STF}

同时,在并行的一路分支中,使用相同时间段处的事件流片段,将其经二维采样后通过卷积风格编码,得到时域特征FsF_s,而时空特征张量经过一次三线性插值后减少一个维度,与时域特征直接相加后解码产生高分视频图像输出。

与单独高分辨率Transformer原文相比,本文引入的事件流信息,为高分辨率图像与图像之间的关系提供先验,因此在高分过程中能够增强被遮挡物体的不足信息。

内容评价

对于本文的关注重点在于他的事件流和图像流融合方式,本文采用的是硬连接+注意力机制(由Transformer充当)的方式。注意力机制的引入一定程度上增加了网络对全局信息的把握,实际上本文连接的特征还只能是比较浅层的特征,尚未达到深层,因此或许引入一个编码器,使深层隐空间直接融合,实现更好的效果。

不过深层隐空间的引入也会增加网络的参数数量,增加欠拟合性,有必要设计一个类似于VQ或者瓶颈层的网络存在限制参数数量。

第十三篇文献

Progressive Spatio-temporal Alignment for Efficient Event-based Motion Estimation

解决的问题

本文解决的是实际上是传统机器视觉领域的常见问题,即相机自运动估计ego-motion,但是在事件相机领域,由于相机与物体之间必须产生相对位移才会有事件流输出,如何区分事件是由场景还是物体产生,是本文解决的一个主要问题。

主要内容

解决事件相机的自运动标定,实际上仍然需要传统图像处理的知识,本文选用的就是事件曲面这一描述方式,设计了自适应的事件曲面生成方式,在特定的相机模型假设条件(中心旋转、透视投影和六轴自由运动)下,能够实现对该模型运动参数(即使用扭曲函数warp量化)的标定。

自适应曲面

  1. 将整个事件流按数量划分为均匀NbN_b的间隔块;
  2. 根据先验选定第一块的扭曲函数;
  3. 计算下一块在当前块的扭曲函数前提下的重叠率,当该重叠度超过上一块时,合并这两块(即使用同一个扭曲函数描述其运动);
  4. 否则,终止当前计算并输出当前的扭曲函数,然后使用新的参数计算新的扭曲函数。
    重复以上步骤直到所有的事件都处理完毕。

标定损失函数

由于选取了扭曲函数作为待标定的项,因此损失函数由扭曲值定义。这里,当仅以某一批次中的最小时间戳定义时间曲面时,即为:

Ib(x)=min{tk1kNe,xk=x}\mathcal{I}_b(x)=\min\{t_k|1\le k\le N_e,\quad x_k'=x\}

损失函数为:

\mathcal{L}(\boldsymbol{\theta})=\sum_{e_k\in\ksi_s}\mathcal{I}_b[\mathcal{W}_b(x_k,t_k;\boldsymbol{\theta})]

当然作者也定义了另一种双向的时间曲面,在使用最小值定义曲面(前向时间曲面)以外,还使用一次最大值(后向时间曲面),并将其损失函数修改为最小值时间曲面扭曲结果与最大值扭曲结果之

迭代主程序

对于每一个确定相同扭曲函数的事件间隔块,计算其双向时间曲面。然后在时间曲面中随机采样sNesN_e个事件点,使用这些事件点完成对扭曲函数参数的优化,经TT次迭代后得到本个间隔块内的最优参数输出。

内容评价

本文使用纯事件流的方式,完成了对事件相机的自运动估计,能够相当自由地完成对扭曲函数的估计。本文的特点在于提出了自适用时间曲面的方法和随机采样优化的算法(有点SGD的感觉,但是不是SGD),正如其所言,具有轻量和可解释的优点。

但是本文方法的缺点是,时间曲面毕竟还是手工设计的描述方法,自适应算法在一定程度上能够增强标定的泛化能力,但是仍然对运动模型的限制太多,应用场景仍然受到限制。改进思路是,进一步设计迭代算法,使其对间隔块的划分上,更加灵活,增加其划分的适应性。