视频插帧—— RIFE 和 IFNet 的机制和应用

介绍

最近,数字和模拟技术开始加速融合。我们生活在一个人工智能技术能够显著提高质量的时代,只要模拟材料能够数字化。

例如,讨论中涉及到的纸艺软件,纸龙的移动模型被时间锁定,以大约 3 fps(每秒帧数)的速度创建视频。然而,无论连续拍摄多么细致,视频看起来都很不流畅。不过,利用不断发展的人工智能技术 RIFE(实时中间流估计),现在可以将这种 3 帧/秒的视频转换(插值)为甚至 24 帧/秒的视频。

图 1 延时视频与 RIFE 插值视频的对比

它看起来如何?人工智能技术不仅被用于生成,还被用作插值材料领域的一种新方法。

人工智能技术本身也使用神经网络等工具来提高质量。在这里,RIFE 利用中间流网络 (IFNet) 显著提高了中间帧插值的质量。

本文解释了 RIFE 和 IFNet 的工作原理,并提供了将低帧频视频转换(插值)为高帧频视频的具体示例。

用 RIFE 生成中间帧

本文讨论的 RIFE软件Flowframes是一种用于视频帧插值的实时中间流估计算法。传统方法是对双向帧的光流进行估计、缩放和反转,以近似中间流。然而,这种方法存在引入伪影(误差和失真)的问题。

为了改进性能,RIFE 使用一种名为 IFNet 的神经网络来直接、精细地估计中间流,并高速执行。参考文献[2]中的实验表明,RIFE 在多个基准测试中都达到了很高的性能,比传统方法快 4 到 27 倍。

这些数据将按以下步骤进行处理,生成中间帧。

获取输入帧

图 2 两幅连续画面(延时摄影画面 A 和画面 B)

输入两个连续的帧和以启动程序。

光流计算

两个连续帧之间的运动是通过光流来估算的。这提供了显示每个像素移动情况的矢量信息。图中显示了使用光流估算和可视化的帧前后运动。你可以看到很多矢量,显示前后帧之间的关系。

图 3-1 第 1 至第 2 帧光流的可视化效果

图 3-2 第 2 帧至第 1 帧光流的可视化效果

中间流量估算 (IFNet)

基于光流信息,IFNet 还可用于估算帧与帧之间的中间流,并了解每个像素的移动情况。

框架翘曲

根据估计的流量,每个帧都会向后扭曲,以获得图像和中间位置的图像。

生成融合图

使用融合图,将翘曲帧融合在一起,生成最终的中间帧。这就是以下公式所示的内容。

生成中间帧。

计算扭曲帧。

这种方法通常比其他方法更快,而且可以生成高质量的中间帧。

图 4 生成的中间帧

翘曲的含义

翘曲是指变换图像或视频中的像素。具体来说,它是指通过将像素从原始位置移动到新位置来转换图像或帧。这就像拉动或推动纸张图片以改变其形状一样。

什么是融合地图?

融合地图并不是人工智能的一种,它是人工智能创建的加权地图,是人工智能使用的类似工具的实体,如 IFNet。

融合图的作用是确定像素的融合程度。它提供了权重信息,说明在对每个像素进行扭曲处理后,应从帧(扭曲帧 A 或扭曲帧 B)中提取多少信息。

确定每个像素的权重,例如,一个像素的 70% 来自翘曲帧 A,30% 来自翘曲帧 B。这些权重信息用于融合两个帧并生成中间帧。

融合制图是一种将不同来源的数据融合在一起以创建新图像的方法。

'它将不同来源的数据结合起来,创造出新的图像,这一点与图像生成人工智能**‘**图像到图像’(Image to Image)相似。然而,生成式人工智能本身的作用和意义以及它所创建的工具却完全不同。

IFNet 概览及其运作方式

IFNet 是一个用于直接估算中间流(intermediate flow)的神经网络。该网络用于生成两个连续帧(如帧 A、帧 B)之间的中间帧。

例如,假设 IFNet 接收到连续的输入帧(帧 A 和帧 B)和时间间隔 (t)。然后,IFNet 会估算帧之间的中间流(像素移动)和融合图 (M)。然后,利用估算出的中间流对输入帧进行扭曲(变形),并通过融合图生成中间帧(融合图决定每个像素从哪个帧中获取多少信息)。

课程查找策略

生成过程采用一种称为 “流程到精细”(course-to-fine)的方法,即在低分辨率下粗略估算流量,然后随着分辨率的提高对流量进行细节修改。

IFNet 使用大量图像帧和特权蒸馏(PRD)进行训练。这使得它能够正确识别一定量的未知数据

图 5:航迹到精细图像(低分辨率到高分辨率)

RIFE 和 IFNet 操作与图像到图像对比

每种方法都有不同的技术和方法,也有不同的目标。

RIFE 和 IFNet 合作生成中间帧。其目的之一是提高视频的流畅度,这也是该技术的重点所在。

图像到图像的图像生成人工智能 “专门从事图像转换”。它利用生成对抗网络(GAN)和扩散模型等典型实例,从输入图像生成新图像。该技术通过变换风格和改变属性(物体、人物、情感等)生成各种图像。

RIFE 和 IFNet 中间帧插值与变形技术的对比

主要区别在于方法和精度。

中间帧插值结合了光流(RIFE)和神经网络(IFNet、融合图),可实时生成极其精确和自然的中间帧。

而变形技术则主要利用形状变形来 "平滑 "两帧之间的变化。特征点之间的像素只是通过线性插值形成中间帧。这使得它处理复杂运动的能力受到限制。

图 6:变形示例。

实例

目前,除非图像与前一幅图像重叠约半帧,否则帧插值就会失败。不过,从 20 幅图像中,可以以 41 帧/秒的速度生成一段流畅的 3 秒视频,这是人工智能生成器的一项了不起的能力。

模拟材料被赋予了动态感和生命力,证实了使用生成式人工智能的艺术性。

以上是讨论中的一段话,但这种人工智能技术也不是万能的:对于两帧之间间隔较大的连续图像,插值是不完整的。这是因为物体位置和形状的变化太大,参考点的数量减少,使得光流等运动估计算法无法捕捉到运动。

当涉及旋转或复杂运动时,插值尤其困难。同样的道理也适用于物体在帧与帧之间时隐时现的视频。

不过,现在有一种名为 DAIN(深度感知视频帧插值)的帧插值技术,可以将深度信息考虑在内。未来的发展值得期待。

图 7 运动矢量短且不规则 → 中间帧不完整

总结

我们在本文中谈到了与质量改进相关的人工智能技术,比如那些幕后技术。最后,我们将引用一段话和一个视频示例来说明经过处理的讨论所表明的 “不可改变的想法”。

这些动感十足的纸艺作品是使用原创软件 "Paper Dragon "制作的,经过手工制作、组装、拍照,然后在数字环境中进行插值。作者深信,未来将通过数字-模拟-数字合作创造出新的表现技法。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/408908.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

一元四次方程求解-【附MATLAB代码】

目录 前言 求解方法 MATLAB验证 附:一元四次方程的故事 前言 最近在研究机器人的干涉(碰撞)检测,遇到了一个问题,就是在求椭圆到原点的最短距离时,构建的方程是一个一元四次方程。无论是高中的初等数学…

Flink1.18 同步 MySQL 到 Doris

一、前言 使用Apache Flink实现数据同步的ETL(抽取、转换、加载)过程通常涉及从源系统(如数据库、消息队列或文件)中抽取数据,进行必要的转换,然后将数据加载到目标系统(如另一个数据库…

【Node】【1】node和nvm安装

安装nvm、node、npm 安装node 18 ,最简单的办法是使用nvm,就不用手动安装了,那么就得先安装nvm。 NVM 是Node Version Manager,用于管理 Node.js 版本。你设备上的不同项目可能使用不同版本的 Node.js。通过 nvm,用户…

HTTP与HTTPS:数据安全性的差异与风险分析

在现代互联网通信中,HTTP(HyperText Transfer Protocol,超文本传输协议)和HTTPS(HyperText Transfer Protocol Secure,超文本传输安全协议)是两种常见的网络协议,它们都在浏览器和服…

Telegram mini app 本地开发配置

前言: 为了能在telegram里本地调试mini app,参考了网上很多方案,踩了不少坑。最后整了一个适合自己的方案,记录一下。 这个方案一定不是最好的,不过是目前适合我上手开发的方案了。 本文章适合需要在 telegram 本地…

拼多多20家店铺登满了怎么办

解决拼多多多店铺管理难题:河鱼浏览器的妙用! 在电商领域,拼多多已经成为许多商家的重要销售渠道。然而,对于同时管理多个拼多多店铺的商家来说,如何高效地运营这些店铺成为了一大挑战。特别是当你的店铺数量达到20家…

简化登录流程,助力应用建立用户体系

随着智能手机和移动应用的普及,用户需要在不同的应用中注册和登录账号,传统的账号注册和登录流程需要用户输入用户名和密码,这不仅繁琐而且容易造成用户流失。 华为账号服务(Account Kit)提供简单、快速、安全的登录功…

docker镜像,ip,端口映射,持久化

docker 镜像的迁移:导出和导入镜像 查看镜像: [rootdocker ~]# docker images REPOSITORY TAG IMAGE ID CREATED SIZE centos latest 5d0da3dc9764 2 years ago 231MB 打包 将镜像打包,找到save,可以将…

【复旦微FM33 MCU 外设开发指南】外设篇1——GPIO

前言 本系列基于复旦微FM33系列单片机的DataSheet编写,旨在提供一些开发指南。 本文章及本系列其他文章将持续更新,本系列其它文章请跳转【复旦微FM33 MCU 外设开发指南】总集篇 本文章最后更新日期:2024/08/25 文章目录 前言GPIO工作时钟…

DevOps入门(上)

1: DevOps概念 DevOps: Development 和 Operations 的组合 DevOps 看作开发(软件工程)、技术运营和质量保障(QA)三者的交集。 突出重视软件开发人员和运维人员的沟通合作,通过自动化流程来使…

私域流量的落脚点与开源 AI 智能名片 2+1 链动商城小程序

摘要:本文探讨了私域流量的重要性及其落脚点,分析了快钱收割思维在私域流量运作中的弊端。同时,引入开源 AI 智能名片 21 链动商城小程序,阐述其在成就人格化 IP 和打造品牌域、通过直播电商规模化变现方面的作用,为企…

[论文笔记]Improving Retrieval Augmented Language Model with Self-Reasoning

引言 今天带来一篇百度提出的关于提升RAG准确率的论文笔记,Improving Retrieval Augmented Language Model with Self-Reasoning。 为了简单,下文中以翻译的口吻记录,比如替换"作者"为"我们"。 检索增强语言模型(Retrie…

PostgreSQL11 | 事务处理与并发控制

PostgreSQL11 | 事务处理与并发控制 本文章代码已在pgsql11.22版本上运行且通过,展示页由pgAdmin8.4版本提供,本文章第一次采用md文档,效果比csdn官方富文本编辑器好用,以后的文章都将采用md文档 事务管理简介 事物是pgsql中的…

跨越语言障碍:2024四款实用在线翻译工具评测!

随着技术的不断进步,各种在线翻译工具层出不穷,帮助我们轻松跨越语言的鸿沟。今天,让我们一起探索几款非常实用的在线翻译工具! 福昕在线翻译 直达链接: https://fanyi.pdf365.cn/ 福昕在线翻译是一款专注于文档翻…

LeetCode 热题 100 回顾

目录 一、哈希部分 1.两数之和 (简单) 2.字母异位词分组 (中等) 3.最长连续序列 (中等) 二、双指针部分 4.移动零 (简单) 5.盛最多水的容器 (中等) 6…

jmeter中导入java方法并使用

1、首先打开idea,在idea中点击File-New-Project ,创建一个项目,项目名为JmtOne 2、项目创建完成后,直接在main函数中定义两个方法,记住该主函数的包名跟类名,后面会用到,在类中定义了两种拆分字符串的方法&…

iLogtail 开源两周年:感恩遇见,畅想未来

早在上世纪 60 年代,早期的计算机(例如 ENIAC 和 IBM 的大型机)在操作过程中会输出一些基本的状态信息和错误报告,这些记录通常通过打印机输出到纸带或纸卡上,用于跟踪操作流程和调试,最早期的日志系统借此…

Matlab基本知识

🌈个人主页:羽晨同学 💫个人格言:“成为自己未来的主人~” %% Matlab基本的小常识 % (1)在每一行的语句后面加上分号(一定要是英文的) a3; a5; % (2)多行注释:选中要注释的若干语句,快捷键CtrlR % a3; %…

MinIO 企业级人工智能存储的数据和驱动器同等重要

为什么会这样?这是因为硬件故障发生在不同的级别。有一些中断会导致整个站点瘫痪。然后,会出现中断,导致集群中的一部分节点瘫痪。但是,在更精细的硬盘驱动器位级别也存在故障,这些故障需要复制本身无法提供的另一种类…

android studio 新建java工程, 安卓新建项目,android studio2024 如何新建java项目

主要解决,新增安卓工程,没有java选项 1. 点击左上角FIle -> New -> 2. 选择 no activity 选项, 然后next 3. langua 就可以选择java 了。name自己定义项目名称,项目存储地址,包名。 配置完成选择finish. 4. fin…