[23] 4K4D: Real-Time 4D View Synthesis at 4K Resolution

paper | proj | code
- 提出一种基于K-Planes的4D point cloud Representation;
- 提出一种Hybrid appearance model,包含image blending model和SH model。其中,image blending model将3D点映射回原图中求得,SH model通过模型预测求得。
- 提出一种可导的深度排序算法,训练时通过Pytorch计算,渲染时通过OpenGL计算,实现GPU支持的快速光栅化。
- 提出一系列减少推理渲染的方法:
- 提前计算点的位置、密度、颜色系数和blending系数等;
- 减少光栅化每个像素所需要的点数;
- 将模型从32-bit float降为16-bit
目录
摘要
方法
Modeling Dynamic Scenes with Point Clouds
Differentiable Depth Peeling
Training
Inference
实验
Datasets and metrics
Comparison Experiments
Ablation Studies
Storage analysis.
Rendering Speed Analysis
摘要
- 现有问题:动态场景中,渲染高分辨率图片很慢;
- 本文:
- 提出基于K-Planes的4D point cloud Representation,支持硬件光栅化,实现快速渲染;
- 提出一种hybrid appearance model,在提高渲染质量的同时,保证渲染效率;
- 设计一种可导的深度排序算法(deep peeling algorithm),实现从RGB视频中快速建模;
- 实验证明,在一张4090 GPU上,可以实现对1080分辨率的400FPS渲染,4K分辨率的80FPS渲染。
方法

Modeling Dynamic Scenes with Point Clouds
- 通过space-carving algorithm从视频中提取粗点云序列;
- 点特征通过K-Planes表达,给定坐标和时间
,可得特征:

- 点特征送入Radius MLP和Density MLP,预测该点的密度
和半径
;
- 该点的颜色通过两个模型计算,分别是离散的image blending model和连续的SH model。
- image blending model是指,给定空间中任意一点,可投影到输入图片上,检索对应RGB值。在本文中,多张图片检索的RGB值,通过网络预测加权系数,加权求和以得到该点的
。由于检索图像与视角无关,本文仅考虑与视角最近的
张图片。image blending model除系数外,可以提前计算。因此,可以在提高视觉质量的同时,不增加过多计算。
- SH model,则是将点特征送入SH MLP,预测得到
。
- 最终,该点颜色由以下公式计算:
- image blending model是指,给定空间中任意一点,可投影到输入图片上,检索对应RGB值。在本文中,多张图片检索的RGB值,通过网络预测加权系数,加权求和以得到该点的
![]()
Differentiable Depth Peeling
- 对于像素
,首先找到距离该点相机视角最近的
个点。
- 用体渲染的方式,通过
个点计算该点颜色。首先计算密度,其中
是将点投影到2D图像上:

- 在训练中,本文基于PyTorch实现
。在推理阶段,本文用OpenGL计算。
- 最终,该像素点颜色:

Training
包含三个损失:
- MSE Loss:

- LPIPS Loss
- Mask 损失:


- 最终训练损失为:
![]()
Inference
通过三个方法加速推理:
- 提前计算点位置,半径,密度,SH系数和color blending系数;
- 将模型从32-bit floats转为16-bits,可以增加20FPS;
- 将渲染时的超参数K从15降低为12,可以在不影响视觉质量的情况下,增加20FPS;
实验
Datasets and metrics
- DNA-Rendering:15 FPS, 10 s, 60 views, 4K/2K相机,训练分辨率为1024 x 1224 / 1125 x 1536
- ENeRF-Outdoor:30 FPS, 1080p相机,训练分辨率为960 x 540
- NHR:训练分辨率为512 x 612 / 384 x 512
- Neural3DV:训练分辨率为1352 x 1224
Comparison Experiments





Ablation Studies


- Ablation study on the 4D embedding. w/o f
- Ablation study on the hybrid appearance model. w/.o
- Ablation study on loss functions.
Storage analysis.

Rendering Speed Analysis

相关文章:
[23] 4K4D: Real-Time 4D View Synthesis at 4K Resolution
paper | proj | code 提出一种基于K-Planes的4D point cloud Representation;提出一种Hybrid appearance model,包含image blending model和SH model。其中,image blending model将3D点映射回原图中求得,SH model通过模型预测求得…...
MySQL错误之ONLY_FULL_GROUP_BY
报错信息: 翻译: 对该报错的解释 所以,实际上该报错是由于在SQL查询语句中有group by,而这个包含group by的SQL查询写的并不规范导致的,这个ONLY_FULL_GROUP_BY模式开启之后检查就会很严格,如果select列表…...
牛客 HJ106 字符逆序 golang实现
牛客题目算法连接 题目 golang 实现 package mainimport ("fmt""bufio""os" )func main() {str, _ : bufio.NewReader(os.Stdin).ReadString(\n)if len(str) 0 {return } else {newstr:""strLen:len(str)-1for i:strLen;i>0;i-…...
浏览器没收到返回,后端也没报错,php的json_encode问题bug
今天网站遇到个问题,后端返回异常,但是浏览器状态码200,但是看不到结果。经过排查发现,我们在返回结果的时候使用了json_encode返回给前端,结果里面的字符编码异常,导致json_encode异常,但是php…...
C#中的迭代器和分部类
目录 一、迭代器 1.示例源码 2.生成效果: 二、分部类 1.示例源码 2.生成效果 迭代器在集合类中经常使用,而分部类则提供了一种将一个类分成多个类的方法,这对于有大量代码的类非常实用。 一、迭代器 迭代器是可以返回相同类型的值的有…...
Java项目如何打包成Jar(最简单)
最简单的办法,使用Maven插件(idea自带) 1.选择需要打包的mudule,点击idea右侧的maven插件 2.clean操作 3.选择需要的其他mudule,进行install操作(如果有) 4.再次选择需要打包的module&#…...
快速掌握Pyqt5的三种主窗口
PyQt5是一个强大的跨平台GUI框架,它提供了多种不同类型的主窗口类,以满足不同的应用需求。下面是PyQt5中最常见的几种主窗口类型及其创建方式的简介: 1. QMainWindow QMainWindow是用于创建具有菜单栏、工具栏、状态栏和中心窗口部件&#…...
Linux vim操作教程(vim 基操、vim替换和查找、 vim改变文本颜色、判断和循环语句)
vim 基操 vim 是一个强大的文本编辑器,常用于在终端环境下编辑文件。下面是一些常用的 vim 操作: 打开文件:在终端中输入 vim 文件名 来打开一个文件,如果文件不存在,则会创建一个新文件。 模式切换: 按下 i 进入插入模式,在该模式下可以输入和编辑文本。按下 Esc 键返…...
mac添加Chrome插件的方法
如果是.crx的插件 更改后缀crx为zip 后续步骤同下文.zip文件 如果是.zip的插件 使用终端进行解压 注意不要用解压工具解压,一定要用终端,命令行解压 // 进入到“插件名.zip”文件的目录下,输入下面命令: unzip 插件名.zip -…...
智能优化算法 | Matlab实现金豺优化算法(GJO)(内含完整源码)
文章目录 效果一览文章概述源码设计参考资料效果一览 文章概述 智能优化算法 | Matlab实现金豺优化算法(GJO)(内含完整源码) 源码设计 %%clear clc close SearchAgents_no=30; % Number of search agents Max_iteration=1000...
6、信息打点——Web架构篇语言中间件数据库系统源码获取
1、信息搜集搜集哪些东西? 架构信息收集,主要包括:操作系统、开发语言、中间件容器、数据库类型、第三方软件等; web源码信息收集,CMS开源?闭源?售卖?自主研发? 进行web…...
flutter vscode gradle 配置
我这边主要改了如图两个文件,然后把Gradle的问题解决了 参考文章: flutter运行Runt imeException: Timeout of 120000问题-CSDN博客 flutter配置gradle(个人笔记,非教程)_flutter gradle_追寻着星星的方向的博客-CSD…...
tcp和 udp区别
相同点:都是传输层协议 不同点 是否面向连接 tcp:面向连接 三次握手,四次挥手端对端连接全双工通信(允许双端同时收发数据) udp:无连接 无三次握手,四次挥手支持一对一,一对多,多对多 数据传输方式 …...
深度学习之基于Pytorch的昆虫分类识别系统
欢迎大家点赞、收藏、关注、评论啦 ,由于篇幅有限,只展示了部分核心代码。 文章目录 一项目简介系统架构技术亮点 二、功能三、系统四. 总结 一项目简介 # 深度学习基于 Pytorch 的昆虫分类识别系统介绍 深度学习在图像分类领域取得了显著的成就&#…...
mysql字符串转为数字的三种方法、字符串转日期
隐式转换 在MySQL中,使用0运算符可以将一个非数字的值隐式地转换为数字。这在进行数学运算或比较操作时非常有用。 需要注意的是,在使用0进行隐式转换时,MySQL会尽可能将字符串转换为数字。如果字符串不能转换为数字,则会返回0。…...
【科技素养】蓝桥杯STEMA 科技素养组模拟练习试卷5
1、随着对新冠肺炎研究的深入,多个国家都已经开始了针对新冠肺炎病毒的疫苗的开发。以下关于疫苗的描述中,不正确的是 A、灭活疫苗的基本原理是将经过处理的病原体注射进入人体内 B、大规模接种疫苗可以帮助达成“群体免疫“,阻断病毒传播 …...
PTA-6-45 工厂设计模式-运输工具
题目如下: 工厂类用于根据客户提交的需求生产产品(火车、汽车或拖拉机)。火车类有两个子类属性:车次和节数。拖拉机类有1个子类方法耕地,方法只需简单输出“拖拉机在耕地”。为了简化程序设计,所有…...
重新使用hbase前
启动关闭Hadoop和HBase的顺序一定是: 启动Hadoop—>启动HBase—>关闭HBase—>关闭Hadoop 1.挂载共享文件夹到挂载点 sudo mount -t vboxsf virtualmachineShare /mnt/shared2.进入hadoop目录下启动hadoop cd /usr/local/hadoop/ ./sbin/start-all.sh …...
Web 自动化神器 TestCafe(二)—元素定位篇
今天主要给大家介绍一下testcafe这个框架元素定位的方法。 一、CSS 选择器定位 使用 testcafe 对元素进行操作的时候,我们可以直接通过 CSS 选择器指定要操作的元素,比如,点击元素,input 输入文本内容,如下࿱…...
DRF-通用分页器(PageNumberPagination):ListModelMixin可以使用的通用分页器
一、ListModelMixin 和GenericAPIView源码 ListModelMixin 是一个单一功能类,必须配合GenericAPIView(或其子类)来一起使用,才能完成其视图的功能 class ListModelMixin:"""List a queryset."""d…...
docker详细操作--未完待续
docker介绍 docker官网: Docker:加速容器应用程序开发 harbor官网:Harbor - Harbor 中文 使用docker加速器: Docker镜像极速下载服务 - 毫秒镜像 是什么 Docker 是一种开源的容器化平台,用于将应用程序及其依赖项(如库、运行时环…...
Opencv中的addweighted函数
一.addweighted函数作用 addweighted()是OpenCV库中用于图像处理的函数,主要功能是将两个输入图像(尺寸和类型相同)按照指定的权重进行加权叠加(图像融合),并添加一个标量值&#x…...
SpringBoot+uniapp 的 Champion 俱乐部微信小程序设计与实现,论文初版实现
摘要 本论文旨在设计并实现基于 SpringBoot 和 uniapp 的 Champion 俱乐部微信小程序,以满足俱乐部线上活动推广、会员管理、社交互动等需求。通过 SpringBoot 搭建后端服务,提供稳定高效的数据处理与业务逻辑支持;利用 uniapp 实现跨平台前…...
EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...
Java 二维码
Java 二维码 **技术:**谷歌 ZXing 实现 首先添加依赖 <!-- 二维码依赖 --><dependency><groupId>com.google.zxing</groupId><artifactId>core</artifactId><version>3.5.1</version></dependency><de…...
视频行为标注工具BehaviLabel(源码+使用介绍+Windows.Exe版本)
前言: 最近在做行为检测相关的模型,用的是时空图卷积网络(STGCN),但原有kinetic-400数据集数据质量较低,需要进行细粒度的标注,同时粗略搜了下已有开源工具基本都集中于图像分割这块,…...
【Nginx】使用 Nginx+Lua 实现基于 IP 的访问频率限制
使用 NginxLua 实现基于 IP 的访问频率限制 在高并发场景下,限制某个 IP 的访问频率是非常重要的,可以有效防止恶意攻击或错误配置导致的服务宕机。以下是一个详细的实现方案,使用 Nginx 和 Lua 脚本结合 Redis 来实现基于 IP 的访问频率限制…...
Linux nano命令的基本使用
参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时,显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...
代码规范和架构【立芯理论一】(2025.06.08)
1、代码规范的目标 代码简洁精炼、美观,可持续性好高效率高复用,可移植性好高内聚,低耦合没有冗余规范性,代码有规可循,可以看出自己当时的思考过程特殊排版,特殊语法,特殊指令,必须…...
提升移动端网页调试效率:WebDebugX 与常见工具组合实践
在日常移动端开发中,网页调试始终是一个高频但又极具挑战的环节。尤其在面对 iOS 与 Android 的混合技术栈、各种设备差异化行为时,开发者迫切需要一套高效、可靠且跨平台的调试方案。过去,我们或多或少使用过 Chrome DevTools、Remote Debug…...
