CVPR2022 | 港城大微软新算法!让老电影重获新生!效果惊艳!

2023-10-30 16:10

本文主要是介绍CVPR2022 | 港城大微软新算法!让老电影重获新生!效果惊艳!,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

En点击下方“AI算法与图像处理”,一起进步!重磅干货,第一时间送达

大家好,我是 阿潘~

不知道大家小时候有没有看过村里投影到墙壁的胶片电影,那时候的太快乐了。如今大家的条件都好起来,看似荷包鼓了,却买不到太多纯粹的快乐了。

今天跟大家分享一个来自CVPR2022的工作,能够让以前的老电影恢复成高清的画质并且还能够进行上色,效果非常的惊艳!

如果文章对你有帮助,记得“在看+点赞+分享”!

更多CVPR2022工作整理:

https://github.com/DWCTOD/CVPR2022-Papers-with-Code-Demo

https://space.bilibili.com/288489574


主页:http://raywzy.com/Old_Film/

论文:https://arxiv.org/pdf/2203.17276.pdf

标题:Bringing Old Films Back to Life

bf4f1604384530d84bc085009bcf5a7e.png

先看效果:

摘要:

本文提出了一个基于学习的框架,即循环transformer网络 (RTN),以恢复严重退化的旧电影。我们的方法不是执行逐帧恢复,而是基于从相邻帧中学习到的隐藏知识,这些知识包含大量关于遮挡的信息,这有利于恢复每个帧的具有挑战性的伪影,同时确保时间一致性。此外,对比当前帧的表示和隐藏的知识,可以以无监督的方式推断划痕位置,并且这种缺陷定位很好地推广到了现实世界的退化。为了更好地解决混合退化并补偿帧对齐期间的流量估计误差,我们建议利用更具表现力的transformer块进行空间恢复。对合成数据集和真实世界老电影的实验证明了所提出的 RTN 相对于现有解决方案的显着优势。此外,相同的框架可以有效地将颜色从关键帧传播到整个视频,最终产生引人注目的修复电影。

226d6aa0c7e26255c588498ee0f406bf.png

整体框架:

8ebc4fe4676ee8e0b55860b1dc1d2852.png

在这项工作中,我们寻求将整个电影修复任务与我们进行时空修复的单一框架统一起来。关键的见解是,旧电影中的大多数退化,尤其是结构化缺陷,都是随时间变化的,即在一帧中被遮挡的结构化缺陷可能会在连续帧中揭示其内容。因此,我们建议通过利用时空上下文而不是依赖幻觉来修复退化。具体来说,提出了一个双向循环网络(图 2),它聚合了相邻帧之间的场景知识,有效地减少了电影闪烁。循环模块的隐藏状态嵌入了场景内容的表示。对齐后,特定帧的恢复融合了这种隐藏的表示,因为它提供了有关缺陷背后的电影内容的有用知识。这样的循环计划带来了三倍的好处。首先,只要信息在其他帧中保存完好,无论多么严重,都可以完全恢复胶片退化。其次,隐藏知识的显式维护确保了帧的恢复在很长一段时间内是时间一致的。更重要的是,结构化缺陷可以以无监督的方式定位,因为这些区域在当前帧的表示和隐藏状态之间显示出更大的差异。与需要缺陷分割网络的 不同,这种缺陷定位更适用于现实世界的旧薄膜退化

更多细节请参考原文!

推荐阅读

科研人必备新神器,ReadPaper!爱了真好用!

CVPR2021 最具创造力的那些工作成果!或许这就是计算机视觉的魅力!

英伟达又一个GAN!PoE-GAN,AI绘图细节拉满,看完直接沸腾了!

如果文章对你有帮助,记得“在看+点赞+分享”!

这篇关于CVPR2022 | 港城大微软新算法!让老电影重获新生!效果惊艳!的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

SpringBoot实现MD5加盐算法的示例代码

《SpringBoot实现MD5加盐算法的示例代码》加盐算法是一种用于增强密码安全性的技术,本文主要介绍了SpringBoot实现MD5加盐算法的示例代码,文中通过示例代码介绍的非常详细,对大家的学习... 目录一、什么是加盐算法二、如何实现加盐算法2.1 加盐算法代码实现2.2 注册页面中进行密码加盐2.

Java时间轮调度算法的代码实现

《Java时间轮调度算法的代码实现》时间轮是一种高效的定时调度算法,主要用于管理延时任务或周期性任务,它通过一个环形数组(时间轮)和指针来实现,将大量定时任务分摊到固定的时间槽中,极大地降低了时间复杂... 目录1、简述2、时间轮的原理3. 时间轮的实现步骤3.1 定义时间槽3.2 定义时间轮3.3 使用时

如何通过Golang的container/list实现LRU缓存算法

《如何通过Golang的container/list实现LRU缓存算法》文章介绍了Go语言中container/list包实现的双向链表,并探讨了如何使用链表实现LRU缓存,LRU缓存通过维护一个双向... 目录力扣:146. LRU 缓存主要结构 List 和 Element常用方法1. 初始化链表2.

Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)

《Vue项目的甘特图组件之dhtmlx-gantt使用教程和实现效果展示(推荐)》文章介绍了如何使用dhtmlx-gantt组件来实现公司的甘特图需求,并提供了一个简单的Vue组件示例,文章还分享了一... 目录一、首先 npm 安装插件二、创建一个vue组件三、业务页面内 引用自定义组件:四、dhtmlx

golang字符串匹配算法解读

《golang字符串匹配算法解读》文章介绍了字符串匹配算法的原理,特别是Knuth-Morris-Pratt(KMP)算法,该算法通过构建模式串的前缀表来减少匹配时的不必要的字符比较,从而提高效率,在... 目录简介KMP实现代码总结简介字符串匹配算法主要用于在一个较长的文本串中查找一个较短的字符串(称为

通俗易懂的Java常见限流算法具体实现

《通俗易懂的Java常见限流算法具体实现》:本文主要介绍Java常见限流算法具体实现的相关资料,包括漏桶算法、令牌桶算法、Nginx限流和Redis+Lua限流的实现原理和具体步骤,并比较了它们的... 目录一、漏桶算法1.漏桶算法的思想和原理2.具体实现二、令牌桶算法1.令牌桶算法流程:2.具体实现2.1

前端原生js实现拖拽排课效果实例

《前端原生js实现拖拽排课效果实例》:本文主要介绍如何实现一个简单的课程表拖拽功能,通过HTML、CSS和JavaScript的配合,我们实现了课程项的拖拽、放置和显示功能,文中通过实例代码介绍的... 目录1. 效果展示2. 效果分析2.1 关键点2.2 实现方法3. 代码实现3.1 html部分3.2

Python中的随机森林算法与实战

《Python中的随机森林算法与实战》本文详细介绍了随机森林算法,包括其原理、实现步骤、分类和回归案例,并讨论了其优点和缺点,通过面向对象编程实现了一个简单的随机森林模型,并应用于鸢尾花分类和波士顿房... 目录1、随机森林算法概述2、随机森林的原理3、实现步骤4、分类案例:使用随机森林预测鸢尾花品种4.1

基于Python实现PDF动画翻页效果的阅读器

《基于Python实现PDF动画翻页效果的阅读器》在这篇博客中,我们将深入分析一个基于wxPython实现的PDF阅读器程序,该程序支持加载PDF文件并显示页面内容,同时支持页面切换动画效果,文中有详... 目录全部代码代码结构初始化 UI 界面加载 PDF 文件显示 PDF 页面页面切换动画运行效果总结主

React实现原生APP切换效果

《React实现原生APP切换效果》最近需要使用Hybrid的方式开发一个APP,交互和原生APP相似并且需要IM通信,本文给大家介绍了使用React实现原生APP切换效果,文中通过代码示例讲解的非常... 目录背景需求概览技术栈实现步骤根据 react-router-dom 文档配置好路由添加过渡动画使用