Anything in Any Scene:无缝融入任何场景,实现逼真视频对象插入技术

news2024/11/15 16:41:54

人工智能咨询培训老师叶梓 转载标明出处

现实世界的视频捕获虽然因其真实性而宝贵,但常常受限于长尾分布的问题,即常见场景过度呈现,而关键的罕见场景却鲜有记录。这导致了所谓的"分布外问题",在模拟复杂环境光线、几何形状或达到高度逼真效果方面存在局限。传统的视频收集和编辑方法在解决这些限制时常常是不切实际或成本过高。来自小鹏汽车公司的研究团队提出了"Anything in Any Scene"框架,它能够将任何对象无缝插入现有动态视频中,同时强调物理真实性。

模拟视频帧中的错误估计光照环境、错误的对象放置位置和不真实的纹理风格的例子

框架

“Anything in Any Scene”框架

Figure 2 框架是为了实现逼真的视频对象插入而设计的。这个框架包含几个关键组件,它们协同工作以确保插入的对象在目标视频中既真实又和谐。

资产库构建:首先,需要构建场景视频和对象网格的资产库。这包括使用视觉数据查询引擎来检索相关的视频片段,以及利用Houdini Engine和NeRF技术生成对象的3D网格模型。

对象放置与稳定化:框架中的一个核心部分是确定对象在视频中的正确位置,并确保它在连续帧中稳定存在。这涉及到考虑场景中其他对象的遮挡,并使用光流跟踪来优化对象在视频中的运动轨迹。

光照估计与阴影生成:为了增强现实感,框架需要准确估计场景中的光照条件,并为插入的对象生成逼真的阴影。这包括使用HDR全景图像重建技术和3D图形应用程序来渲染阴影。

风格迁移网络:为了最大化视频输出的逼真度,框架采用了风格迁移网络来细化视频输出。这个网络可以调整插入对象的风格,使其与背景视频的风格一致,从而提高整体的视觉效果。

结果验证:通过人类评分和FID评分对生成的视频进行评估,确保视频的逼真度和质量。

资产库构建

创建和管理一个包含丰富场景视频和对象网格的资产库是实现高质量视频合成的前提。资产库的构建涉及两个核心技术:视觉数据查询引擎的开发以及对象网格的生成。视觉数据查询引擎利用视觉词汇袋方法,通过语义分割和特征提取,快速检索与特定视觉描述符相匹配的视频片段。而对象网格的生成则通过Houdini Engine和基于Neural Radiance Fields (NeRF)的重建技术,生成具有高度逼真物理特性和复杂几何结构的对象模型。这些技术的结合,为视频中的对象插入提供了必要的资源和工具,确保了合成视频的几何真实性、光照真实性和照片级真实性。

对象放置与稳定化

在构建逼真视频对象插入框架中,对象放置和稳定化是确保对象与背景视频无缝融合的关键步骤。首先,对象放置需要确定视频中每一帧的插入位置,这涉及到对场景的深入理解,包括场景中已有对象的位置和潜在的遮挡关系。通过使用语义分割技术,系统能够识别出场景中哪些区域适合放置新对象,从而避免不自然的遮挡现象。

为了实现对象的稳定化,系统采用了光流跟踪技术来分析连续帧之间的像素级运动。通过这种方式,系统能够预测对象在后续帧中的位置,确保对象在视频播放过程中的运动看起来自然流畅。此外,还需要对摄像机的旋转和平移进行优化,以减少由于视角变化导致的投影误差。

在实际操作中,系统首先在参考帧中确定对象的初始位置,通常是将对象放置在世界坐标系的原点,即摄像机的位置。然后,利用摄像机的内参矩阵和每帧的摄像机姿态,将这个位置投影到像素坐标系中。接下来系统会评估场景的语义分割掩模,以确保选择的放置点不会与场景中其他对象发生遮挡。

最后通过优化算法调整摄像机姿态,确保在连续帧中对象的放置点能够与光流跟踪结果相匹配,从而实现对象在视频中的稳定显示。这个过程需要综合考虑多个因素,包括场景的3D结构、摄像机的运动以及对象与场景元素之间的相对位置,以确保最终的视频效果既逼真又连贯。

驾驶场景视频的对象放置示例。第一帧视频、估计的分割掩模以及3D场景中的对象放置位置

光照估计与阴影生成

在视频对象插入过程中,光照估计和阴影生成对于实现逼真渲染至关重要。为了确保插入的对象在视觉上与场景融为一体,系统必须准确模拟场景中的光照条件。这包括对天空和环境光照的高动态范围(HDR)图像进行重建,以便捕捉场景中光照的细微差别。

系统使用图像修复网络来推断全景天空图像,填补由于相机视野限制而缺失的部分。通过天空HDR重建网络,将全景天空图像转换成HDR格式,从而更准确地表示太阳和天空的亮度分布。此外,系统还采用LDR到HDR的转换网络,从场景的低动态范围(LDR)侧视图图像中恢复HDR环境图像,这些图像随后被无缝拼接成一个完整的HDR全景环境图像。

原始天空图像、重建的HDR图像及其相关的太阳光照分布图

通过结合HDR天空图像和环境图像,系统能够为插入的对象生成一致且逼真的光照效果。此外,系统还利用估计出的HDR天空图像来渲染对象的阴影,使用3D图形应用程序Vulkan来实现高效的计算和逼真的渲染效果。阴影的准确渲染对于增强对象的三维感和场景的一致性至关重要。

为插入对象生成的阴影的例子

在这个过程中,系统需要考虑光源的位置、强度和颜色,以及它们如何与场景和插入的对象相互作用。通过这种方式,无论场景是户外的自然光照环境还是室内的人工光照条件,系统都能够生成具有高度真实感的光照和阴影效果,使插入的对象在视觉上与背景视频无缝融合。

风格迁移网络

在对象放置和光照阴影生成之后,为了进一步提升视频的逼真度,"Anything in Any Scene" 框架采用了一种风格迁移网络来实现照片级真实感的视频输出。风格迁移技术的目标是调整插入对象的外观,使其与背景视频的风格和视觉特性相匹配,从而减少视觉上的不一致性。

风格迁移网络采用了由粗到细的机制,这涉及到两个网络:一个粗网络和一个细化网络。粗网络首先对前景对象进行初步的风格调整,生成一个大致的预测图像。这个预测提供了一个基础,但可能在细节上还不够精细。随后,细化网络在这个基础上进一步工作,利用扩张卷积层来增强图像的细节,生成最终的精细化结果。

在训练这些网络时,采用了Wasserstein生成对抗网络(WGAN)的损失函数,这有助于生成更加逼真和一致的图像。此外,为了提高训练的稳定性和效果,还引入了梯度惩罚项,这有助于网络更好地学习生成与真实图像分布一致的输出。

风格迁移网络的输入包括前景对象的图像、背景图像以及前景区域的分割掩模。通过这种方式,网络能够专注于前景对象,并有效地将其风格与背景融合。输出的是一个经过风格迁移处理后的图像,其中插入的对象在色彩、纹理和光照上与周围环境和谐统一,从而在视觉上实现了高度的真实感。

通过风格迁移,"Anything in Any Scene" 框架能够有效地解决模拟视频中可能出现的不真实感问题,如光照不一致、颜色偏差等,确保最终的视频输出在视觉上与真实捕获的视频难以区分。这种技术的应用不仅提升了视频数据增强的质量,也为虚拟现实、视频编辑和其他视频中心应用提供了强大的支持。

实验

作者采用了两种评估指标来量化生成模拟视频的质量:

Human Score:通过人类A/B测试来衡量,即测试参与者在比较两种方法结果时,更倾向于哪一种的比例。这提供了一个主观但直接的逼真度评估。

Frechet Inception Distance (FID):这是一种客观的度量,通过比较生成图像与真实图像分布之间的差异来评估生成图像的逼真度和多样性。FID得分越低,表示生成图像与真实图像越相似。

为了验证方法的有效性,作者使用了包括室内外场景视频数据集进行评估:

Outdoor Scene Video:使用了PandaSet数据集,这是一个多模态自动驾驶场景数据集,包含了不同时间和天气条件下的场景。

Indoor Scene Video:使用了ScanNet++数据集,这是一个大规模的室内场景数据集,由3D扫描真实环境创建。

作者对比了不同的风格迁移网络在他们的框架中的效果,包括基于CNN的DoveNet、基于transformer的StyTR2和基于扩散模型的PHDiffusion,以及他们自己提出的方法。实验结果显示,他们提出的风格迁移网络在FID得分上最低,人类评分最高,超越了其他替代方法。

使用PandaSet数据集的不同风格迁移网络对模拟视频帧的定性比较
在PandaSet数据集下,不同渲染条件下模拟视频帧的定性比较

不同风格迁移网络在“Anything in Any Scene”框架中的实验结果

为了评估框架中每个模块的有效性,作者进行了消融研究,逐个移除框架中的模块(如对象放置、HDR图像重建、阴影生成和风格迁移),然后评估性能变化。结果表明,移除任何一个模块都会降低视频的逼真度,尤其是在人类评分中更为明显。

“Anything in Any Scene”框架中模块消融分析的实验结果

作者还探讨了使用他们的框架生成的合成图像用于数据增强,以改善长尾分布问题。他们在CODA数据集上进行了评估,这是一个包含1500个真实世界驾驶场景和30多个对象类别的数据集。实验结果表明,使用增强数据集训练的模型在所有类别上的平均精度(mAP)有所提高。

使用原始CODA数据集图像与使用我们的“Anything in Any Scene”框架增强的图像训练的YOLOX模型的性能

通过这些详细的实验评估,证明了"Anything in Any Scene"框架不仅能够生成高质量的逼真视频,还能够通过数据增强提高下游任务(如目标检测)的性能。这些实验结果为该框架的有效性和应用潜力提供了有力的证据。

论文链接:https://arxiv.org/abs/2401.17509

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

在Centos上安装MySQL

目录 在Centos上安装MySQL1.确认当前的系统版本2.添加 MySQL Yum 源2.1访问MySQL开发者专区2.2根据当前系统选择对应的发布包2.3补充 3.MySQL的历史发行版本4.安装发布包5.安装MySQL5.1启动MySQL服务器5.2查看服务器状态5.3开机自启动5.4 登入MySQL5.5修改密码 在Centos上安装M…

今日总结,没啥特别学习到的,还是省市县三级,和一些开发的规范和git的冲突解决。(maven clean)

20240718 一、对于省市县三级联动告一段落二、修改开发好的接口三、对于git(每天都有他的问题)的推送和拉取问题 一、对于省市县三级联动告一段落 省市县三级联动,直接前端连接一个组件就可以直接实现,好家伙,白费我时…

【深度学习】inpaint图像中的alpha混合图的边缘处理

比如原图是: 红圈内就是文字水印,经过inpaint后得到图和原图混合,如何处理边界呢,这个代码可以干这事: 越是中心就直接用inpaint图,否则就用原图,这样进行alpha混合。 import numpy as np i…

计算机网络技术期末复习

一. 填空 在采用电信号表达数据的系统中,数据有 数字数据 和 模拟数据 两种。域名系统DNS是一个 分布式数据库 系统。TCP/IP的网络层最重要的协议是 IP互连网协议,它可将多个网络连成一个互连网。 4. 在TCP/IP层次模型的网络层中包括的协议主要有ARP 、…

计算机毕业设计-基于Springboot的养老院管理系统-源码程序文档

项目源码,请关注❥点赞收藏并私信博主,谢谢~ 本系统开发采用技术为JSP、Bootstrap、Ajax、SSM、Java、Tomcat、Maven 此文章为本人亲自指导加编写,禁止任何人抄袭以及各类盈利性传播, 相关的代码部署论文ppt代码讲解答辩指导文件…

【C++】类的默认成员函数--构造,析构,拷贝,重载

文章目录 前言一、类的默认成员函数是什么?二、构造函数1.构造函数概述2.构造函数特点3.构造函数代码示例 三.析构函数1.析构函数概述2.析构函数特点3.析构函数代码示例 四.拷贝构造函数1.拷贝构造函数概述2.拷贝构造函数特点拷贝构造函数代码示例 五. 赋值运算符重…

学习008-01-03 Customize the Application UI and Behavior(自定义应用程序UI和行为)

Customize the Application UI and Behavior(自定义应用程序UI和行为) In XAF, the data model defines the database structure and UI. Changes to your entity classes affect the UI. For example, if you add a new property to an entity class, …

解决PDF文件无法打印的困扰:快速排查与修复指南

在日常工作和学习中,PDF文件因其跨平台兼容性和良好的格式保持特性而广受欢迎。然而,当我们急需打印一份重要的PDF文件时,却遇到了“PDF无法打印”的尴尬情况,这无疑会让人感到焦急。别担心,本文将为你提供一系列快速排…

摄像馆唯美结婚摄影团队网站模版源码 自适应网站源码系统 前后端分离 带完整的安装代码包以及搭建教程

系统概述 摄像馆唯美结婚摄影团队网站模版源码,是一款集美观性、功能性与易用性于一体的网站解决方案。该系统采用最新的前端技术栈,如HTML5、CSS3、JavaScript等,结合响应式设计理念,确保网站能够在不同尺寸的设备上&#xff08…

在 Apifox 中如何高效批量添加接口请求 Body 参数?

在使用 Apifox 进行 API 设计时,你可能会遇到需要添加大量请求参数的情况。想象一下,如果一个接口需要几十甚至上百个参数,若要在接口的「修改文档」里一个个手动添加这些参数,那未免也太麻烦了,耗时且易出错。这时候&…

Python实现人脸识别

直接上代码: import face_recognition import time from PIL import Image, ImageDraw def faceRecognition(fileName): # 加载图片image face_recognition.load_image_file(fileName)# 人脸定位beginTime time.time()face_locations face_recognition.face_lo…

Python酷库之旅-第三方库Pandas(024)

目录 一、用法精讲 61、pandas.to_numeric函数 61-1、语法 61-2、参数 61-3、功能 61-4、返回值 61-5、说明 61-6、用法 61-6-1、数据准备 61-6-2、代码示例 61-6-3、结果输出 62、pandas.to_datetime函数 62-1、语法 62-2、参数 62-3、功能 62-4、返回值 62-…

为ppt中的文字配色

文字的颜色来源于ppt不可删去的图像的颜色 从各类搜索网站中搜索ppt如何配色,有如下几点: 1.可以使用对比色,表示强调。 2.可以使用近似色,使得和谐统一。 3.最好一张ppt中,使用的颜色不超过三种主要颜色。 但我想强调…

hot100 | 十四、贪心

1-leetcode121. 买卖股票的最佳时机 注意&#xff1a; Labuladong的套路太厉害了&#xff0c;分析的很清晰状态转移方程 public int maxProfit(int[] prices) {int n prices.length;int[][] dp new int[n][2];for (int i 0; i < n; i) {if (i-1 -1){// base casedp[…

【C语言】结构体,枚举,联合超详解!!!

目录 结构体 结构体声明 结构体成员的访问 结构体自引用 结构体变量定义&#xff0c;初始化&#xff0c;传参 结构体内存对齐 位段 枚举 联合(共用体) 结构体 结构体声明 1. 概念 1. 结构体是一些值的集合&#xff0c;这些值称为成员变量。 2. 结构体的每个成员可…

基于SpringBoot+Vue的广场舞团系统(带1w+文档)

基于SpringBootVue的广场舞团系统(带1w文档) 基于SpringBootVue的广场舞团系统(带1w文档) 广场舞团&#xff0c;为用户随时随地查看广场舞团信息提供了便捷的方法&#xff0c;更重要的是大大的简化了管理员管理广场舞团信息的方式方法&#xff0c;更提供了其他想要了解广场舞团…

Java强软弱虚引用的特点以及应用场景(面试重点)

强&#xff1a;即使OOM也不回收软&#xff1a;内存溢出前回收弱&#xff1a;只要垃圾收集就死虚&#xff1a;对垃圾收集没关系&#xff0c;只有得到通知&#xff08;插眼&#xff0c;也操作不了对象、只能看到它还活着&#xff09; 一、软引用 代码示例&#xff1a; public cl…

快手开源LivePortrait,实现表情姿态极速迁移,GitHub 6.5K Star

近日&#xff0c;快手可灵大模型团队开源了名为LivePortrait的可控人像视频生成框架&#xff0c;能够准确、实时地将驱动视频的表情、姿态迁移到静态或动态人像视频上&#xff0c;生成极具表现力的视频结果。如下动图所示&#xff1a; 来自网友测试LivePortrait 来自网友测试Li…

【Linux】Linux进程揭秘:从理论到实践的深度探索之旅

目录 前言&#xff1a;操作系统简介 概念 设计目的 理解 进程&#xff1a;程序的执行之魂 进程和程序的联系与区别 描述进程-PCB 进程的标识符 进程状态 状态转换 僵尸进程 孤儿进程 前言&#xff1a;操作系统简介 概念 操作系统&#xff08;英语&#xff1a;Opera…

PyTorch高级特性与性能优化

PyTorch高级特性与性能优化 引言&#xff1a; 在深度学习项目中&#xff0c;使用正确的工具和优化策略对于实现高效和有效的模型训练至关重要。PyTorch&#xff0c;作为一个流行的深度学习框架&#xff0c;提供了一系列的高级特性和性能优化方法&#xff0c;以帮助开发者充分利…