端到端网络:编解码的开端FlowNet
什么是光流估计?
是利用图像序列中像素在时间域上的变化以及相邻帧之间的相关性来找到上一帧跟当前帧之间存在的对应关系,从而计算出相邻帧之间物体的运动信息的一种方法


网络结构:

输入为两张图像,他们分别是第 t 帧以及第 t+1 帧的图像,它们首先通过一个由卷积层组成的收缩部分,用以提取各自的特征图,但是这样会使图片缩小,因此需要再通过一个扩大层,将其扩展到原图大小,进行光流预测。
收缩部分网络结构:

两张照片叠放训练,提取特征就可以算出光流估计?
两种方法的具体实现
第一种方案:直接将输入的一对图片叠加在一起,让它们通过一系列只有卷积层的网络,我们称之为 FlowNetSimple。
第二种方案:将一对图片分开处理,分别进入卷积层提取各自的特征,然后再对它们的特征进行匹配,寻找它们之间的联系,我们称之为 FlowNetCorr。
上图中黄色箭头所示即为比较两个特征图的操作。我们举例说明,设两个特征图分别为f1和f2,它们都为w*h*c的维度,即宽度为w,高度为h,通道数为c,比如以x1为中心的一块和以x2为中心的一块,它们之间的联系用以下公式计算,假设块长为K= 2k+1,大小为 K*K

这一公式与神经网络的卷积操作是一样的,只不过普通的卷积是与filter(卷积核)进行卷积,而这个是两个块进行卷积,所以它没有可以训练的权重。
计算这两块之间的联系计算复杂度是 c * K * K,而f1上每个块都要与f2上所有块计算联系,f1上有w * h个块(每个像素点都可以做一个块的中心点),f2上也有w * h个块,所有整个计算复杂度是c * K * K * ( w * h) * ( w * h),这里是假设每个块在下一张图上时,可以移动任何位置。但是这样计算复杂度太高了,所以我们可以约束位移范围为d(上下左右移动d),就是每个块只和它附近D: 2d+1的位置块计算联系,而且还可以加上步长。
放大部分网络结构

这里的放大部分主要由逆卷积层(upconvolutional layer)组成,而上卷积层又由逆池化层(unpooling,与pooling操作相反,用来扩大feature map)和一个卷积层组成。
逆卷积:又称转置卷积







我们对 feature maps 执行逆卷积操作(绿色箭头 deconv5),并且把它和之前收缩部分对应的feature map(灰色箭头 conv5_1)以及一个上采样的的光流预测(红色箭头 flow5)链接起来。每一步提升两倍的分辨率,重复四次,预测出来的光流的分辨率依然比输入图片的分辨率要小四倍。论文中说在这个分辨率时再接着进行双线性上采样的 refinement 已经没有显著的提高,所以采用优化方式:the variational approach。
473



被折叠的 条评论
为什么被折叠?



