视频超分:BRCN(Video Super-Resolution via Bidirectional Recurrent Convolutional Networks)

本文主要是介绍视频超分:BRCN(Video Super-Resolution via Bidirectional Recurrent Convolutional Networks),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

在这里插入图片描述
论文:应用双向循环卷积网络的视频超分辨率方法
代码:https://github.com/linan142857/BRCN
文章检索出处:IEEE TPAMI 2017

看点

考虑到RNN可以很好地模拟视频序列的长期时间依赖性,本文提出了一种双向循环卷积网络(BRCN)。主要贡献如下:
1)提出了一种适用于多帧SR的双向循环卷积网络,其中时间依赖性可以通过循环卷积和三维前馈卷积有效地建模。
2)它是一个端到端的框架,不需要前/后处理。我们的卷积可以缩放到任何空间大小和时间步长的视频。
在这里插入图片描述

方法

overview

下图为所提出的网络,包含前向子网络和后向子网络,以对来自先前帧和未来帧的时间依赖性进行建模。前向子网分为输入层、两个隐藏层和输出层。这些特征映射通过两种类型的卷积连接起来。
在这里插入图片描述

3D前向卷积: 由黑色箭头表示的3D前馈卷积不仅连接当前时间步长处的输入层,而且将先前时间步长处的多个相邻层也连接到当前隐藏层。3D前馈卷积的细节如下图所示。其中时间步长为3,用黄、红、黑线表示。通过将先前的输入层视为当前输入层的上下文信息,卷积可以从空间和时间两个维度提取短期快速运动信息。三维前馈卷积的时间步长不应太大,因为快速运动通常发生在局部相邻帧中。
在这里插入图片描述
循环卷积: 由蓝色箭头表示的循环卷积连接两个相邻帧的隐藏层,其中当前隐藏层的推断以上一个时间步的隐藏层为条件。循环卷积的细节如上图蓝线表示。循环卷积的滤波器权值在所有时间步之间共享,因此可以在很长的时间范围内捕获隐藏层之间的重复变换模式。但是与3D前馈卷积不同,2D循环卷积操作在更抽象的隐藏层而不是细节帧,因此更适合于捕捉全局慢动作信息。
第一隐藏层: 当推断前向子网中第i个时间步的第一隐藏层 H 1 , i f H_{1,i}^f H1,if时,考虑两个不同的输入:
1)沿时间轴堆叠的第i帧及其之前 t w 1 t_{w_1} tw1帧,用 [ X ] i f [\mathsf X]_i^f [X]if表示,通过3D前馈卷积连接。请注意,本文的输入帧均提前使用双三次插值上采样处理
2)i-1时刻隐藏层 H 1 , i − 1 f H_{1,i-1}^f H1,i1f通过循环卷积连接
在这里插入图片描述

其中, U 1 f \mathsf U_1^f U1f代表循环卷积的滤波器,大小为 n 1 × s u 1 × s u 1 × n 1 n_1×s_{u_1}×s_{u_1}×n_1 n1×su1×su1×n1 ∗ * 表示二维卷积操作,采用ReLU作为激活函数。 W 1 f \mathsf W_1^f W1f代表3D前向卷积滤波器,大小为 c × s w 1 × s w 1 × n 1 c×s_{w_1}×s_{w_1}×n_1 c×sw1×sw1×n1,时间步长为 t w 1 t_{w_1} tw1 ∗ ^ \hat * ^表示三维卷积操作。
第二隐藏层: 该阶段将获得的特征映射 H 1 , i f H_{1,i}^f H1,if投影到另一个隐藏层,以捕捉视频序列中的非线性结构。除了传统的前向卷积的帧内映射,我们分别考虑了两个使用循环卷积和三维前向卷积的帧间映射。 H 2 , i f H_{2,i}^f H2,if可由下得出:
在这里插入图片描述
其中, W 2 f \mathsf W_2^f W2f的大小为 n 1 × s w 2 × s w 2 × t w 2 × n 2 n_1×s_{w_2}×s_{w_2}×t_{w_2}×n_2 n1×sw2×sw2×tw2×n2 U 2 f \mathsf U_2^f U2f的大小为 n 2 × s u 2 × s u 2 × n 2 n_2×s_{u_2}×s_{u_2}×n_2 n2×su2×su2×n2。需要注意的是,两个隐藏层的推理可以看作是一个表征学习阶段。可以堆叠更多的隐藏层来增加网络的代表性。但是它会极大地增加网络的复杂度。
***输出层:***对低分辨率帧进行超分辨率处理时,其视觉内容不仅与前一时间步的相邻帧有关,而且与后一时间步的相邻帧有关。因此,本文使用两个方向的子网络分别沿时间轴的正反向对这些时间依赖性进行建模。通过在第二个隐藏层中获得的 n 2 n_2 n2维特征图来共同预测高分辨率帧
在这里插入图片描述

实验

训练集和实施细节

网络通过最小化MSE损失函数来进行模型的学习。使用25个YUV格式的视频序列作为训练集(训练集链接)。对于测试集,先使用标准差为2的高斯滤波器对每个原始帧进行平滑处理,再使用双三次方法对帧进行因子降采样处理。

消融实验

不同的循环卷积滤波器大小:
在这里插入图片描述
由此可见,1×1是最优的,不仅PSNR高,需要的时间还短。
网络方向的消融实验:
无向(U):该网络没有循环卷积,其3D前馈卷积的时间步长固定为1,类似于传统的二维卷积。
前向(F):只考虑向前方向上的时间依赖性的前向子网中,通过使用每层滤波器数量的两倍(或四倍)来扩大模型大小。F w/o f是去除三维前馈卷积,F w/o r是去除循环卷积。
向后(B):只在向后方向上考虑时间相关性的向后子网。
双向(F+B):将前向和后向子网结合在一起的双向循环卷积网络。
在这里插入图片描述

量化评估

在这里插入图片描述
这里的Set2其实就是Vid4。

这篇关于视频超分:BRCN(Video Super-Resolution via Bidirectional Recurrent Convolutional Networks)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/654119

相关文章

Java如何获取视频文件的视频时长

《Java如何获取视频文件的视频时长》文章介绍了如何使用Java获取视频文件的视频时长,包括导入maven依赖和代码案例,同时,也讨论了在运行过程中遇到的SLF4J加载问题,并给出了解决方案... 目录Java获取视频文件的视频时长1、导入maven依赖2、代码案例3、SLF4J: Failed to lo

Python实现多路视频多窗口播放功能

《Python实现多路视频多窗口播放功能》这篇文章主要为大家详细介绍了Python实现多路视频多窗口播放功能的相关知识,文中的示例代码讲解详细,有需要的小伙伴可以跟随小编一起学习一下... 目录一、python实现多路视频播放功能二、代码实现三、打包代码实现总结一、python实现多路视频播放功能服务端开

Python实现视频转换为音频的方法详解

《Python实现视频转换为音频的方法详解》这篇文章主要为大家详细Python如何将视频转换为音频并将音频文件保存到特定文件夹下,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录1. python需求的任务2. Python代码的实现3. 代码修改的位置4. 运行结果5. 注意事项

Python视频处理库VidGear使用小结

《Python视频处理库VidGear使用小结》VidGear是一个高性能的Python视频处理库,本文主要介绍了Python视频处理库VidGear使用小结,文中通过示例代码介绍的非常详细,对大家的... 目录一、VidGear的安装二、VidGear的主要功能三、VidGear的使用示例四、VidGea

流媒体平台/视频监控/安防视频汇聚EasyCVR播放暂停后视频画面黑屏是什么原因?

视频智能分析/视频监控/安防监控综合管理系统EasyCVR视频汇聚融合平台,是TSINGSEE青犀视频垂直深耕音视频流媒体技术、AI智能技术领域的杰出成果。该平台以其强大的视频处理、汇聚与融合能力,在构建全栈视频监控系统中展现出了独特的优势。视频监控管理系统EasyCVR平台内置了强大的视频解码、转码、压缩等技术,能够处理多种视频流格式,并以多种格式(RTMP、RTSP、HTTP-FLV、WebS

综合安防管理平台LntonAIServer视频监控汇聚抖动检测算法优势

LntonAIServer视频质量诊断功能中的抖动检测是一个专门针对视频稳定性进行分析的功能。抖动通常是指视频帧之间的不必要运动,这种运动可能是由于摄像机的移动、传输中的错误或编解码问题导致的。抖动检测对于确保视频内容的平滑性和观看体验至关重要。 优势 1. 提高图像质量 - 清晰度提升:减少抖动,提高图像的清晰度和细节表现力,使得监控画面更加真实可信。 - 细节增强:在低光条件下,抖

《x86汇编语言:从实模式到保护模式》视频来了

《x86汇编语言:从实模式到保护模式》视频来了 很多朋友留言,说我的专栏《x86汇编语言:从实模式到保护模式》写得很详细,还有的朋友希望我能写得更细,最好是覆盖全书的所有章节。 毕竟我不是作者,只有作者的解读才是最权威的。 当初我学习这本书的时候,只能靠自己摸索,网上搜不到什么好资源。 如果你正在学这本书或者汇编语言,那你有福气了。 本书作者李忠老师,以此书为蓝本,录制了全套视频。 试

Apple quietly slips WebRTC audio, video into Safari's WebKit spec

转自:http://www.zdnet.com/article/apple-quietly-slips-webrtc-audio-video-into-safaris-webkit-spec/?from=timeline&isappinstalled=0 http://www.zdnet.com/article/apple-quietly-slips-webrtc-audio-video-

SAM2POINT:以zero-shot且快速的方式将任何 3D 视频分割为视频

摘要 我们介绍 SAM2POINT,这是一种采用 Segment Anything Model 2 (SAM 2) 进行零样本和快速 3D 分割的初步探索。 SAM2POINT 将任何 3D 数据解释为一系列多向视频,并利用 SAM 2 进行 3D 空间分割,无需进一步训练或 2D-3D 投影。 我们的框架支持各种提示类型,包括 3D 点、框和掩模,并且可以泛化到不同的场景,例如 3D 对象、室

树莓派5_opencv笔记27:Opencv录制视频(无声音)

今日继续学习树莓派5 8G:(Raspberry Pi,简称RPi或RasPi)  本人所用树莓派5 装载的系统与版本如下:  版本可用命令 (lsb_release -a) 查询: Opencv 与 python 版本如下: 今天就水一篇文章,用树莓派摄像头,Opencv录制一段视频保存在指定目录... 文章提供测试代码讲解,整体代码贴出、测试效果图 目录 阶段一:录制一段