CAT3D: Create Anything in 3D with Multi-View Diffusion Models 论文解读
24年5月的论文,上一版就是ReconFusion
目录
一、概述
二、相关工作
1、2D先验
2、相机条件下的2D先验
3、多视角先验
4、视频先验
5、前馈方法
三、Method
1、多视角扩散模型
2、新视角生成
3、3D重建
一、概述
该论文提出一种CAT3D方法,实现单视图,稀疏视图,文本提示生成图像创建3D场景。可以利用多视图扩散模型生成大量一致的新视图,并且用作3D重建的输入,通过有效的并行采样策略生成任何视角下三维一致渲染的3D表示。创新在于将欠约束的3D重建问题首次表述为生成问题,提供更多的视角来实现完全约束下的重建。并且可以实现1分钟生成场景和对象级的逼真结果,在多个benchmarks上,相比以往的SOTA快一个数量级。

二、相关工作
1、2D先验
由于3D数据集相对稀缺,很多3D生成研究都集中在利用从2D图像空间学习到的先验知识。例如,预训练的文本到图像模型可以为文本到3D生成提供强大的生成先验。但是,将这些基于图像的先验知识转化为一致的3D模型目前仍需要一个迭代的蒸馏过程。
2、相机条件下的2D先验
为了克服文本到图像模型无法精确控制图像姿态的局限性,一些方法尝试训练或微调具有图像和姿态条件的生成模型。这些模型为给定文本和/或输入图像的情况下对象或场景的外观提供了更强的先验。但是,当存在一定的不确定性时,这些方法仍需要昂贵的3D蒸馏过程来解决不同视图之间的不一致性。
3、多视角先验
对多个视图进行建模可以为部分观察的3D内容提供更强的先验。一些方法尝试微调文本到图像模型,以同时生成多个视图。这种方法捕捉了多视图依赖性,从而在3D提取方面实现了更高的质量和效率。
4、视频先验
视频扩散模型已经展示了生成逼真视频的惊人能力,被认为隐式地推理了3D信息。但是,直接使用现有的视频扩散模型进行3D生成仍然存在挑战,例缺乏精确的相机控制,只能生成平滑和短暂的相机轨迹。一些工作尝试通过微调视频扩散模型来解决这些挑战,但主要集中在3D物体生成,无法处理3D场景、少视角3D重建或物体在上下文中的情况。
5、前馈方法
另一类研究是学习前馈模型,直接从少量视图输入输出3D表示,无需优化过程。这些方法可以高效地生成3D表示(几秒内),但当时质量通常低于基于图像空间先验的方法。cat3d还是一个老论文。
三、Method
这个论文的重点是第一个设计出多视图扩散模型的,所以CAT3D也是一个two-step的模型,先通过相机嵌入的MVLDM来生成多视角图像,再基于多视角图像和相机位姿通过NeRF模型来渲染3D模型。

1、多视角扩散模型
这个多视角扩散模型可以看成给定参考图像,参考位姿,目标位姿,输出目标图像的模型。
模型架构类似LDM,论文中提到这是一个文本生成图像的模型,相比于LDM使用时间t作为嵌入,该模型使用相机姿态作为嵌入,将相机光线图concat到输入图像经VAE得到的潜在特征上。
在下图可以看到输入图像为512*512*3,经过encoder得到64*64*8与相机光线图拼接。
(1)三维自注意力层的使用:在扩散模型中原有的2D自注意力层被膨胀到了3D自注意力层,也就是空间2维加时间1维,其目的是同时输入多张图像作为时间维度,达到了三维的一致性。另外经过这一工作也省去了以往稀疏视图生成中ReconFusion中添加CLIP嵌入和PixelNeRF解码器的需要。
(2)二值掩码:一个二值掩码被连接潜在特征的通道维度上,目的是为了指示输入图像是否被观察到(用于多视角生成)。
(3)FlashAttention:快速训练和采样,并影响对LDM所有权重微调。

2、新视角生成
(1)相机轨迹问题:在新视角生成过程中,给定的轨迹越能够覆盖整个场景,那么最后重建的效果越良好。
(2)生成大量合成视图:我的理解就是在稀疏视角下一定可以拟合一个轨迹,那么每个参考视图周围的视点的生成和这个参考视图独立分在一个组里,因为靠近的视图肯定更加相近。如果对于单图像情况,就先生成7个锚定视图能够覆盖整个场景的不同位置,之后基于这八张视图以及周围的视点再次分组,补充周围视点的目标视图。这样可以得到全局的一致性以及附近视图的局部相似性。
3、3D重建
在ReconFusion使用的Zip-NeRF的基础上,添加了渲染图像与输入图像之间的光感损失LPIPS,强调两者之间的高级语义相似性,而忽略低水平高频细节的潜在不一致性。
四、实验
稀疏视角输入下的对比。

量化对比。

单视角图像输入下对比。

论文地址:https://arxiv.org/abs/2405.10314
相关文章:
CAT3D: Create Anything in 3D with Multi-View Diffusion Models 论文解读
24年5月的论文,上一版就是ReconFusion 目录 一、概述 二、相关工作 1、2D先验 2、相机条件下的2D先验 3、多视角先验 4、视频先验 5、前馈方法 三、Method 1、多视角扩散模型 2、新视角生成 3、3D重建 一、概述 该论文提出一种CAT3D方法,实现…...
持续学习入门
参考视频(一) 【学无止境:深度连续学习】 背景 更新新的数据时,数据异步输入,会有灾难性遗忘 现有解决策略 (1)引入正则约束(2)设计合适的动态模型架构 ÿ…...
天猫推荐数据集实践
参考自 https://github.com/xufengtt/recom_teach_code,学习记录。 环境配置(maxcomputedataworks) 下载天猫推荐数据集;开启 aliyun 的 maxcompute,dataworks,pai;使用 odpscmd 上传本地数据…...
《Vue3实战教程》33:Vue3路由
如果您有疑问,请观看视频教程《Vue3实战教程》 路由 客户端 vs. 服务端路由 服务端路由指的是服务器根据用户访问的 URL 路径返回不同的响应结果。当我们在一个传统的服务端渲染的 web 应用中点击一个链接时,浏览器会从服务端获得全新的 HTML&…...
【大模型系列】MultiUI(2024.11)
Paper:https://arxiv.org/pdf/2410.13824Github:https://neulab.github.io/MultiUI/Author:Junpeng Liu et al., 卡内基梅隆 核心1: 先基于text-based LLMs获取网页的accessibility tree(辅助功能树,https://200t.w3c…...
「Mac畅玩鸿蒙与硬件52」UI互动应用篇29 - 模拟火车票查询系统
本篇教程将实现一个模拟火车票查询系统,通过输入条件筛选车次信息,并展示动态筛选结果,学习事件处理、状态管理和界面展示的综合开发技巧。 关键词 条件筛选动态数据展示状态管理UI交互查询系统 一、功能说明 模拟火车票查询系统包含以下功…...
Dubbo 核心知识全解析:原理、流程与关键机制
1.说说一次 Dubbo 服务请求流程? Dubbo 是一个分布式服务框架,它简化了基于 SOA(面向服务架构)的应用程序的开发。一次典型的 Dubbo 服务请求流程如下: 服务提供者启动: 服务提供者启动后,会向注册中心注册…...
时间序列预测算法---LSTM
目录 一、前言1.1、深度学习时间序列一般是几维数据?每个维度的名字是什么?通常代表什么含义?1.2、为什么机器学习/深度学习算法无法处理时间序列数据?1.3、RNN(循环神经网络)处理时间序列数据的思路?1.4、RNN存在哪些问题? 二、…...
二十三种设计模式-建造者模式
建造者模式(Builder Pattern)是一种创建型设计模式,它提供了一种分步骤构建复杂对象的方法。这种模式允许你通过相同的创建过程构建不同的表示。建造者模式将一个复杂对象的构建与其表示分离,使得同样的构建过程可以创建不同的对象…...
MarkDown 的 mermaid gantt(甘特图)、mermaid sequenceDiagram (流程图) 语法解析和应用
简简单单 Online zuozuo: 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo 简简单单 Online zuozuo :本心、输入输出、结果 简简单单 Online zuozuo : 文章目录 MarkDown 的 mermaid gantt、mermaid sequenceDiagram 语法解析和应用前言mermaid gan…...
git submodule的使用:将别人的git仓库作为自己的子仓库
git的基本操作在该篇中展示:git的基本操作在日常开发中,我们经常会碰到需要将别人的仓库作为自己的子仓库来进行开发。下面将介绍具体将如何操作。 1、添加Submodule至自己的git仓库 1.1、创建自己的Git仓库 (1)在github中创建自…...
Springboot 下载附件
GetMapping("/download") public void download(RequestParam String fileId, HttpServletResponse response) throws IOException {// 查询文件信息SysFileEntity sysFileEntity fileService.queryFileById(fileId);response.setContentType("application/oct…...
MySQL 延迟复制:确保数据安全与系统稳定的秘诀
MySQL 延迟复制:确保数据安全与系统稳定的秘诀 在 MySQL 主从复制架构中,数据的同步通常是实时的。然而,在一些特定场景下,我们可能不希望从库立刻同步主库的所有更新。特别是在高风险操作或者主库出现故障时,实时复制…...
ELK 使用教程采集系统日志 Elasticsearch、Logstash、Kibana
前言 你知道对于一个系统的上线考察,必备的几样东西是什么吗?其实这也是面试中考察求职者,是否真的做过系统开发和上线的必备问题。包括:服务治理(熔断/限流) (opens new window)、监控 (opens new window)和日志,如果…...
python实现自动登录12306抢票 -- selenium
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 python实现自动登录12306抢票 -- selenium 前言其实网上也出现了很多12306的代码,但是都不是最新的,我也是从网上找别人的帖子,看B站视频&…...
使用Diffusion Models进行图像超分辩重建
Diffusion Models专栏文章汇总:入门与实战 前言:图像超分辨率重建是一个经典CV任务,其实LR(低分辨率)和 HR(高分辨率)图像仅在高频细节上存在差异。通过添加适当的噪声,LR 图像将变得与其 HR 对应图像无法区分。这篇博客介绍一种方式巧妙利用这个规律使用Diffusion Mod…...
吾杯网络安全技能大赛——Misc方向WP
吾杯网络安全技能大赛——Misc方向WP Sign 题目介绍: 浅浅签个到吧 解题过程: 57754375707B64663335376434372D333163622D343261382D616130632D3634333036333464646634617D 直接使用赛博橱子秒了 flag为 WuCup{df357d47-31cb-42a8-aa0c-6430634ddf4a} 原神启动…...
Web安全 - “Referrer Policy“ Security 头值不安全
文章目录 概述原因分析风险说明Referrer-Policy 头配置选项1. 不安全的策略no-referrer-when-downgradeunsafe-url 2. 安全的策略no-referreroriginorigin-when-cross-originsame-originstrict-originstrict-origin-when-cross-origin 推荐配置Nginx 配置示例 在 Nginx 中配置 …...
C#OPC(上)
OPC(OLE for Process Control),用于过程控制的OLE,是一个工业标准,管理这个标准的国际组织是OPC基金会,OPC基金会现有会员以超过220家。遍布全球,包括世界上所有主要的自动化控制系统、仪器仪表及过程控制系统的公司。基于微软的O…...
Imgui + Cmake + OpenGL + GLFW 隐藏控制台窗口
网上一般是VS,如何在属性里面把控制台改为窗口 本文,使用Clion Cmake,实现如何隐藏控制台窗口 环境:OpenGL3 GLFW 添加头文件#include <windows.h>把main函数入口改为int WinMain(HINSTANCE hInstance, HINSTANCE hPrevI…...
VCNL4020 proximity与环境光传感器集成设计指南
1. VCNL4020传感器技术解析:面向嵌入式系统的 proximity 与环境光一体化解决方案VCNL4020 是 Vishay 公司推出的高集成度光学传感芯片,专为资源受限的嵌入式系统设计。其核心价值在于将红外发射器(IRED)、接近检测光电二极管、环境…...
毫米波雷达开发者必看:双级联方案如何用DDMA波形实现300米精准测距?
毫米波雷达双级联方案实战:DDMA波形设计如何突破300米测距极限? 当特斯拉HW4.0的雷达模块在暴雨中依然稳定输出300米外的障碍物坐标时,背后的技术密码正是双级联架构与DDMA波形的完美融合。作为L3级自动驾驶系统的"全天候之眼"&am…...
如何快速打造现代化Windows提示界面:ModernFlyouts终极指南
如何快速打造现代化Windows提示界面:ModernFlyouts终极指南 【免费下载链接】ModernFlyouts A modern Fluent Design replacement for the old Metro themed flyouts present in Windows. 项目地址: https://gitcode.com/gh_mirrors/mo/ModernFlyouts 你是否…...
避开SAP记账第一个坑:F-02凭证录入的5个细节与FS10N对账技巧
SAP财务实操避坑指南:F-02凭证录入的5个关键细节与FS10N高效对账技巧 刚接触SAP FI模块的中级用户,往往在完成基础培训后信心满满地开始独立操作,却在F-02凭证录入时频频踩坑。这些看似简单的字段选择背后,隐藏着财务逻辑与系统设…...
5分钟掌握B站评论区智能成分检测:免费高效的互动神器
5分钟掌握B站评论区智能成分检测:免费高效的互动神器 【免费下载链接】bilibili-comment-checker B站评论区自动标注成分,支持动态和关注识别以及手动输入 UID 识别 项目地址: https://gitcode.com/gh_mirrors/bil/bilibili-comment-checker B站成…...
VCS编译优化-lint实战指南
1. 为什么需要VCS lint静态检查? 刚入行做芯片设计那会儿,我最怕的就是仿真跑着跑着突然崩了,回头查半天发现是代码里有个端口宽度不匹配。这种低级错误浪费的时间,加起来可能都够我写完一个模块了。后来团队里的老司机给我安利了…...
探索marked:高性能Markdown解析的Web开发工具解决方案
探索marked:高性能Markdown解析的Web开发工具解决方案 【免费下载链接】marked A markdown parser and compiler. Built for speed. 项目地址: https://gitcode.com/gh_mirrors/ma/marked 在现代Web开发中,Markdown解析作为内容呈现的关键环节&am…...
MATLAB plot()函数实战:从数据到专业图表的完整工作流
1. 数据准备:从原始数据到可绘图格式 第一次用MATLAB画图时,我直接把Excel表格里的数据复制粘贴进去,结果plot()函数报错让我懵了半天。后来才发现,数据格式转换是绘图的第一步关键操作。假设你手头有一组温度传感器采集的时序数据…...
免费开源甘特图工具GanttProject:从任务混乱到清晰可视化的完整解决方案
免费开源甘特图工具GanttProject:从任务混乱到清晰可视化的完整解决方案 【免费下载链接】ganttproject Official GanttProject repository 项目地址: https://gitcode.com/gh_mirrors/ga/ganttproject 还在为项目管理中的任务混乱、进度模糊而烦恼吗&#x…...
OpenClaw安全指南:gemma-3-12b-it本地化部署的权限管控策略
OpenClaw安全指南:gemma-3-12b-it本地化部署的权限管控策略 1. 为什么需要特别关注OpenClaw的权限管控? 上周我在调试一个自动化文档整理任务时,差点酿成大祸——OpenClaw误将我的工作目录/Documents/ProjectX识别为临时文件夹,…...
