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…...
AI智能体编排平台:从任务自动化到生态协作的架构与实践
1. 项目概述:一个面向AI编排与技能提升的生态协作平台最近在和一些做AI应用开发的朋友聊天,大家普遍有个痛点:现在AI工具和模型太多了,从大语言模型到图像生成,再到各种自动化脚本,每个都很强大,…...
对比直接使用厂商 API 体验 Taotoken 在模型切换上的便利性
🚀 告别海外账号与网络限制!稳定直连全球优质大模型,限时半价接入中。 👉 点击领取海量免费额度 对比直接使用厂商 API 体验 Taotoken 在模型切换上的便利性 在个人开发项目中接入大模型时,开发者通常面临一个选择&am…...
从TPM到机密计算:远程证明技术原理与zap1项目实践指南
1. 项目概述与核心价值最近在整理一些零散的学习笔记时,发现了一个挺有意思的项目,叫Frontier-Compute/zap1-learning-attestation。乍一看这个标题,可能有点让人摸不着头脑,尤其是对于刚接触可信计算或者硬件安全领域的朋友来说。…...
利用OCI免费套餐构建高可用Kubernetes集群实战指南
1. 项目概述:在免费云上构建企业级K8s集群最近在技术社区里,一个名为“nce/oci-free-cloud-k8s”的项目引起了我的注意。这个标题乍一看有点“黑话”的味道,但拆解开来,它指向了一个非常具体且极具吸引力的场景:利用Or…...
Go语言静态站点生成器Zeuxis:极简架构与高性能构建实践
1. 项目概述:一个轻量级、高性能的静态站点生成器最近在折腾个人博客和文档站点,发现市面上的静态站点生成器虽然多,但要么配置复杂、学习曲线陡峭,要么过于臃肿,启动和构建速度慢得让人抓狂。直到我遇到了bnomei/zeux…...
LVGL在无显存TFT屏上的驱动适配:双缓冲与DMA优化实践
1. 项目概述:当TFT屏幕遇上LVGL最近在做一个嵌入式GUI项目,核心任务是把LVGL这个轻量级图形库,适配到一块分辨率不算高但接口比较“个性”的TFT屏幕上。这活儿听起来像是把标准插头插到非标插座上,得自己动手改改线序。LVGL这几年…...
零基础实操:小龙虾 AI OpenClaw 接入 Kimi 详细步骤
前置准备 获取小龙虾open claw一键安装包(www.totom.top)并安装电脑端已成功安装并正常运行OpenClaw客户端,顶部 Gateway 状态保持在线设备网络通畅,可正常访问 Kimi 开放平台拥有可正常登录的 Kimi 月之暗面 Moonshot 账号账号提…...
CircuitPython开发进阶:从库文档解读到内存优化与异步编程实战
1. 从“能用”到“精通”:为什么你需要深入理解CircuitPython库文档刚接触CircuitPython时,我们往往是从复制粘贴示例代码开始的。这没什么问题,快速让一个LED闪烁起来,或者让传感器读出数据,那种即时反馈的成就感是驱…...
AI控制协议标准(ACPS):构建智能体与工具交互的通用语言
1. 项目概述与核心价值最近在开源社区里,一个名为“AI-Control-Protocol-Standard”的项目引起了我的注意。这个由DaibinThink发起的项目,名字听起来就很有分量——“AI控制协议标准”。乍一看,你可能觉得这又是一个关于AI模型如何被调用的技…...
基于WLED分段功能与激光切割的多层智能艺术灯板制作全攻略
1. 项目概述与核心价值如果你和我一样,对那种能随着音乐呼吸、或者能独立变换不同区域色彩的智能灯光装置着迷,那么你一定会喜欢这个项目。它远不止是把LED灯条粘在板子后面那么简单,而是将激光切割的精密工艺、分层的艺术设计,与…...
