视频插值--Video Frame Interpolation via Adaptive Separable Convolution

Video Frame Interpolation via Adaptive Separable Convolution ICCV2017 https://github.com/sniklaus/pytorch-sepconv

本文将视频插帧看作一个局部分离卷积,对输入帧使用一组 1D 核。 这么做可以极大的减少参数量,加快速度。 formulates frame interpolation as local separable convolution over input frames using pairs of 1D kernels.

在CVPR2017那篇文章中 作者使用 一个CNN网络来估计2D 的卷积核, estimate spatially-adaptive convolution kernels for each output pixel and convolve the kernels with the input frames to generate a new frame。这些卷积核同时考虑运动估计和 re-sampling。 对于 large motion,就需要 large kernels。 这样参数量和计算量都上升了。 例如对每个输出像素 CVPR2017 那篇文献输出 两个 41×41 kernels,对于一张 1080p 图像的合成, the output kernels alone will require 26 GB of memory 当我们采用了separable convolution, For a 1080p video frame, using separable kernels that approximate 41 × 41 ones only requires 1.27 GB

3 Video Frame Interpolation 对于视频插帧问题采用 adaptive convolution approach的话可以表示为如下公式:

K1、K2 是一对 2D convolution kernels,P 1 (x,y) and P 2 (x,y) are the patches centered at (x,y) in I1 and I2 To capture large motion, large-size kernels are required,文献【36】使用 used 41 × 41 kernels

it is difficult to estimate them at once for all the pixels of a high-resolution frame simultaneously, due to the large amount of parameters and the limited memory

Our method addresses this problem by estimating a pair of 1D kernels that approximate a 2D kernel our method reduces the number of kernel parameters from n*n to 2n for each kernel.

Loss function 这里我们考虑两类损失函数:第一类是 L1 per-pixel color difference,第二类 L_F loss functions that this work explores is perceptual loss, which has often been found effective in producing visually pleasing images

Visual comparison among frame interpolation methods

Evaluation on the Middlebury benchmark

With a Nvidia Titan X (Pascal), our system is able to interpolate a 1280 × 720 frame in 0.5 seconds as well as a 1920 × 1080 frame in 0.9 seconds. Training our network takes about 20 hours using four Nvidia Titan X (Pascal)

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏目标检测和深度学习

资源 | 用Python和NumPy学习《深度学习》中的线性代数基础

682
来自专栏机器之心

资源 | 用Python和NumPy学习《深度学习》中的线性代数基础

2113
来自专栏IT派

不同的领域、框架,这是一份超全的深度学习模型GitHub集合

深度学习近来是机器学习最流行的子领域,因为针对高维数据拥有强大的建模能力,它在很多不同的任务与领域都绽放了夺目的光彩,例如计算机视觉、自然语言处理与智能体学习等...

733
来自专栏AI研习社

一文带你读懂 OCR

OCR,或光学字符识别,是最早的计算机视觉任务之一,因为在某些方面它不需要用到深度学习。因此,早在2012年深度学习热潮之前,OCR就有了各种不同的应用,有些甚...

532
来自专栏社区的朋友们

深度学习入门实战(一):像Prisma一样算法生成梵高风格画像

现在人工智能是个大热点,而人工智能离不开机器学习,机器学习中深度学习又是比较热门的方向,本系列文章就从实战出发,介绍下如何使用MXnet进行深度学习~

9.2K2
来自专栏机器之心

学界 | 谷歌大脑提出通过多文档摘要方法生成维基百科,可处理较长序列

3147
来自专栏AI研习社

基于 Tensorflow eager 的文本生成,注意力,图像注释的完整代码

我总是发现生成和序列模型令人着迷:他们提出的问题与我们刚开始学习机器学习时常遇到的问题不同。当我第一次开始学习ML时,我学了分类和回归(和大多数人一样)。这些帮...

922
来自专栏机器之心

资源 | CPU实时人脸检测,各种朝向都逃不过

作为 CV 重要的组成部分,人脸检测旨在利用卷积神经网络从人脸图像中抽取足够的信息。然而虽然 CNN 能高效处理图像数据,但大多数情况下它的设计都是针对一般图像...

613
来自专栏新智元

【实战】重现DeepMind星际争霸强化学习算法

【新智元导读】本文主要介绍DeepMind的星际争霸强化学习算法,由于原论文作者没有开源他们的代码,所以我们尝试重现论文中的结果,并且达到了DeepMind基准...

5835
来自专栏云时之间

什么是自编码?

各位小伙伴们,大家好,今天让我们来如何用神经网络来处理非监督的学习,也就是AutoEncoder,自编码。 首先,我们听到自编码,一定会想到,AutoEncod...

34410

扫码关注云+社区