3D 生成重建012-Magic123早期使用不同SDS相减的探索

news2024/11/18 3:23:37

3D 生成重建012-Magic123早期使用不同SDS相减的探索


文章目录

    • 0论文工作
    • 1论文方法
    • 2效果

0论文工作

Magic123提出了一种两阶段粗到细的方法,用于使用2D和3D先验从野外未曝光图像生成高质量的纹理3D网格。在第一阶段,优化一个神经辐射场,以产生一个粗糙的几何形状。在第二阶段,采用记忆高效的可微网格表示来产生具有视觉吸引力的高分辨率网格线条纹理。在这两个阶段中,三维内容都是通过参考视图监督和由二维和三维扩散先验相结合的新视角来学习的。
这篇论文属于早期尝试使用两种sds优化3d表示的方法,同期使用相近的思路的还有3DStyle-Diffusion,TextureDreamer,Sparse3D等,但尽量尝试找一个理论去解释这种做法的还是这个LucidDreamer的写法更为感人。
虽然从最终的生成效果来看,magic123这种方法很快被很多基于优化或者多视图扩散模型和feed-forwar生成模型的算法超越了,但是这种对sds优化的探索,除了这个相减,就是3dfuse的3d先验知识引入和ProlificDreamer的理论扩展。基本上来说这个三种策略贯穿了所有基于优化的方法。无论是nerf表达,还是instant-ngp还是3d gaussian splatting。
magic123链接

1论文方法

Magic123致力于解决从单张图像生成高质量三维模型的挑战,这是一个长期存在的难题。该论文指出,以往的方法通常难以平衡生成细节的保真度和三维结构的准确性。Magic123通过引入一个新颖的框架来克服这些限制,该框架有效地结合了二维和三维扩散先验。
以下是其核心组件和工作原理的细分:

  1. 现有方法的局限性:
    细节不足: 许多从单张图像生成三维模型的方法难以捕捉精细的纹理和几何细节,导致生成结果缺乏真实感。
    三维结构不准确: 准确推断三维结构需要从二维图像中提取丰富的信息,这对许多现有方法来说是一个挑战,常常导致生成对象出现扭曲或不自然的形状。
  2. Magic123 的解决方案:
    a) 结合2D和3D扩散先验: 这是Magic123的核心创新。该方法不是依赖单一扩散模型,而是利用二维和三维扩散模型分别学习图像和形状的先验知识。
  • 2D扩散先验: 一个二维扩散模型在大量图像数据集上进行训练,学习自然图像的分布,并捕捉丰富的纹理和外观细节。

  • 3D扩散先验: 一个三维扩散模型在三维形状数据集上进行训练,学习三维物体的结构和几何规律。

  • b) 两阶段生成过程: Magic123采用两阶段生成过程,有效地利用学习到的二维和三维先验。

  • 在这里插入图片描述

  • 阶段一:粗略三维生成:

    1. 从输入图像中提取特征。
    2. 利用三维扩散模型,以提取的图像特征和一个随机噪声张量为条件,生成一个粗略的三维模型。这一阶段侧重于建立合理的三维结构。
  • 阶段二:细节优化:

    1. 将粗略三维模型渲染成多个视图图像。
    2. 利用二维扩散模型,以渲染图像、输入图像和随机噪声张量为条件,对粗略模型进行优化,添加纹理细节和提升保真度。
    3. c) 视图一致性损失: 为了确保从不同视角生成一致的细节,Magic123引入了一个视图一致性损失函数。该损失鼓励模型生成在不同视角下都能与输入图像相匹配的三维模型。
  1. Magic123 的优势:
    高质量细节: 通过利用二维扩散先验,Magic123能够生成具有精细纹理和真实感外观的三维模型。
    准确的三维结构: 三维扩散先验的使用有助于生成具有合理几何形状和结构的三维对象。
    高效的训练和生成: 两阶段生成过程和视图一致性损失使得模型能够高效地学习和生成高质量的三维模型。

2效果

在这里插入图片描述

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

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

相关文章

DQL(数据查询)

目录 1. DQL概念 2. DQL - 编写顺序 3. 基础查询 3.1 查询多个字段 3.2 字段设置别名 3.3 去除重复记录 3.4 案例 4. 条件查询 4.1 语法 4.2 条件 4.3 案例: 5. 聚合函数 5.1 常见的聚合函数: 5.2 语法 5.3 案例: 6. 分组查…

微信小程序抓取数据包(Proxifier联动burpsuite)

1、打开bp,确保开启127.0.0.1:8080监听地址。 2、点击setting--proxy,点击impor CA certificate,生成bp的证书。 保存到桌面为1.cer,文件后缀为cer就OK了,前缀任意 3、安装证书,双击打开刚刚生成…

FPGA 第4章 摄像头Bayer转rgb

参考文献 彩色MT9V034摄像头 Bayer转rgb FPGA实现 https://www.cnblogs.com/hqz68/p/10413896.html 文章目录 前言Bayer转rgb算法解析 总结 前言 Bayer格式是相机内部的原始数据, 一般后缀名为.raw。 对于彩色图像,一般是三原色数据,rgb格式。但是摄像头一个像素…

01.爬虫---初识网络爬虫

01.初识网络爬虫 1.什么是网络爬虫2.网络爬虫的类型3.网络爬虫的工作原理4.网络爬虫的应用场景5.网络爬虫的挑战与应对策略6.爬虫的合法性总结 1.什么是网络爬虫 网络爬虫,亦称网络蜘蛛或网络机器人,是一种能够自动地、系统地浏览和收集互联网上信息的程…

解决 SpringBoot 的 Date、LocalDateTime 变成时间戳和数组的问题,创建自定义对象消息转换器

问题描述 SpringBoot 项目,当返回前端的数据类型为 Map 的时候,在 Map 中 put() 时间对象会出现以下问题: 传递的 Date 对象会变成时间戳传递的 LocalDateTime 对象会变成数组 问题复现 编写一个 Controller 方法,返回值为 Ma…

网络安全基础技术扫盲篇 — 名词解释

网络模块基础(网络拓扑图、网络设备、安全设备) 用通俗易懂的话说: 网络拓扑图:它就像一张网络世界的地图,它展现了我们数不清的网站、服务器和设备是如何相互连接的。用简单的话说,它就是给我们指路、告…

企业ov代码签名证书1300

我们在下载一些软件代码时,有时候操作系统会出现未知软件拦截,各个杀毒软件也会因为软件身份不明拦截软件下载。而代码签名证书可以对软件进行数字签名,以验证软件的身份和完整性。这种数字签名机制确保了软件在传输和安装过程中没有被篡改或…

数据结构---优先级队列(堆)

博主主页: 码农派大星. 数据结构专栏:Java数据结构 关注博主带你了解更多数据结构知识 1. 优先级队列 1.1 概念 前面介绍过队列,队列是一种先进先出(FIFO)的数据结构,但有些情况下,操作的数据可能带有优先级,一般出队 列时&am…

Rust 赋能前端 -- 写一个 File 转 Img 的功能

所有耀眼的成绩,都需要苦熬,熬得过,出众;熬不过,出局 大家好,我是柒八九。一个专注于前端开发技术/Rust及AI应用知识分享的Coder 此篇文章所涉及到的技术有 Rustwasm-bindgen/js-sys/web-sysWeb WorkerWebAssemblyWebpack/Vite配置WebAssemblyOffscreenCanvas脚手架生成项…

win11缺少msvcr110dll,msvcp110.dll的解决办法

MSVCP110.dll是一个与Microsoft Visual C 2012 Redistributable Package相关的动态链接库(Dynamic Link Library)文件,主要用于支持使用C编写的Windows应用程序运行时所需的特定功能。当用户尝试运行依赖于这个库的应用程序时,如果…

【网络安全】网络安全协议的重要性

一.网络安全 1.什么是网络安全 网络安全(Cyber Security)是指网络系统的硬件、软件及其系统中的数据受到保护,不因偶然的或者恶意的原因而遭受到破坏、更改、泄露,系统连续可靠正常地运行,网络服务不中断。 2.网络安…

智慧展厅设计的难点有哪些

1、运用先进的展示技术 将全息影像、三维投影、虚拟现实、人机互动等技术做做完美衔接,把展厅的内容展示做到丰富多彩,从而让展厅富有科技感和艺术性。 2、内容要生动有趣 从而更好地吸引参观者。展厅设计师要与客户有良好深入的沟通,搜集与整…

SAP 批量获取BOM中替代料信息(代码分享)

最近用户需要到导出BOM中存在替代料的信息,只要导出替代料的程序,但是使用展开BOM的程序执行后,导致执行时间很长,数量量也非常的大,内存溢出,程序就挂掉了。9万多个物料有BOM,当然不能让用户去导,后面我们写了一段SQL,用内表的方式给用户导出了需要的数据。 同时也找…

10.8k star,超好用的高颜值屏幕录制工具

最近公司需要给新来的同事做一些基础的培训。不过因为时间冲突,没办法现场给大家上课,所以老板让我自己在家把视频课程录制好,还说要让同事们看到我的样子。 这倒是有点费劲了,之前也录制过课程视频,但都是直接用屏幕…

小程序-修改用户头像

1、调用拍照 / 选择图片 // 修改头像 const onAvatarChange () > { // 调用拍照 / 选择图片 uni.chooseMedia({ // 文件个数 count: 1, // 文件类型 mediaType: [image], success: (res) > { console.log(res) // 本地临时文件路径 (本地路径) const { tempFilePath } …

【Tools】SpringBoot工程中,对于时间属性从后端返回到前端的格式问题

Catalog 时间属性格式问题一、需求二、怎么使用 时间属性格式问题 一、需求 对于表中时间字段,后端创建对应的实体类的时间属性需要设定格式(默认的格式不方便阅读),再返回给前端。 二、怎么使用 导入jackson相关的坐标&#x…

PostgreSQL事务基础理解

PostgreSQL事务 事务是数据库管理系统执行过程中的一个逻辑单位,由一个有限的数据库操作序列构成。数据库事务通常包含一个序列对数据库的读和写操作,主要是包含以下两个目的: 为数据库操作序列提供一个从失败中恢复到正常状态的方法&#…

vue 打印、自定义打印、页面打印、隐藏页眉页脚

花了一天时间搞了个打印功能,现则将整体实现过程进行整理分享。先来看看效果图: 1、页面展示为: 2、重组页面打印格式为:这里重组页面的原因是客户要求为一行两列打印 !内容过于多的行则独占一行显示完整。 整体实现&…

isscc2024 short course2 Performance Compute Environment

这部分分为4部分: 概览:LLMs和生成式AI 探讨大语言模型(LLMs)和生成式AI的整体环境,及其对硬件加速器设计的影响。 高性能AI加速器的特定考虑因素 广泛的模型和使用案例支持:需要设计能支持多种模型和应…

python中的线程并行

文章目录 1. 单线程2. 线程池ThreadPoolExecutor 1. 单线程 现在有1154张图片需要顺时针旋转后保存到本地,一般使用循环1154次处理,具体代码如下所示,img_paths中存储1154个图片路径,该代码段耗时约用97ms。 t1time.time() for …