[23] T^3Bench: Benchmarking Current Progress in Text-to-3D Generation

- 3D生成蓬勃发展,主流方法通过事例比较和用户调查来评价方法好坏,缺少客观比较指标;
- 本文提出
Bench,首次综合比较了不同生成方法;
- 具体来说,本文设计了质量评估(Quality Assessment)和对齐评估(Alignment Assessment),前者评价生成物体的质量,后者评价生成物体与文本的对齐程度;
- 针对质量评估,本文提出一种多视角ImageReward的评估方法。具体来说,本文以3D物体为中心,构建二阶二十面体(level-2 icosahedron),以多面体顶点为相机位置渲染161张图片。考虑到顶部和底部不适合评价3D模型,本文提出一种regional convolution mechanism,基于图建模多面体顶点对应分数,并平滑局部区域分数。
- 针对对齐评估,本文提出一种3D Caption + GPT4的评估方法。具体来说,本文以3D物体为中心,构建零阶二十面体,渲染12张图片。用BLIP描述每张图片,并用GPT-4融合这些描述,得到物体的3D描述。本文设计Prompt让GPT-4评价3D Caption和给定文本的匹配程度。
- 最终,作者通过与真实用户评分进行相关性检验,验证了所提评估方法的有效性。
Method

Prompt Design
- 本文设计了三组提示词,包括:单个物体(single object),具有环境描述的单个物体(Single object with surroundings)和多个物体(Multiple objects)。
- 首先用GPT-4生成候选提示词,人工筛选掉专有名词和地名。随后,用ROUGE-L去除相似的提示词。最终,得到N个不同的提示词。
Unified 3D Representation
- 考虑到应用便捷性,本文选择Mesh作为评估3D表征。
- 有两种方法将NeRF转换为Mesh:DMTet和Marching Cube,本文选择性能较好的那个进行评估。
Evaluation Metrics
Quality Assessment
- Mesh Normalization. 将3D场景缩放至[-1, 1]之间。
- Multi-Focal Capturing. 设计了5种不同的focla lengths,选择文本-图片匹配分数最高的作为该点分数。
- Multi-View Capturing. 以物体为中心,构建二阶二十面体(level-2 icosahedron),以多面体顶点为相机位置渲染161张图片。
- Scoring and Regional Convolution. 将二十面体视作图,顶点为渲染图片评价分数。通过下列工作递归求得区域均值。其中,
是第
点的相邻点。递归三次后,取最高分作为3D生成物体的最终评价分数。

Alignment Assessment
- 本文以3D物体为中心,构建零阶二十面体,渲染12张图片。
- 用BLIP描述每张图片,并用GPT-4融合这些描述,得到物体的3D Caption。本文设计Prompt让GPT-4评价3D Caption和给定文本的匹配程度。
- 考虑到BLIP描述中会引入额外的细节,会导致与给定文本不匹配,分数降低。因此,本文设计了特定的prompt,让GPT-4仅考虑:给定文本中的特征,是否存在于3D Caption中。以下为测试样例:
Prompt: You are an assessment expert responsible for prompt-prediction pairs. Your task is to score the prediction according to the following requirements:
1. Evaluate the recall, or how well the prediction covers the information in the prompt. If the prediction contains information that does not appear in the prompt, it should not be considered as bad.
2. If the prediction contains correct information about color or features in the prompt, you should also consider raising your score.
3. Assign a score between 1 and 5, with 5 being the highest. Do not provide a complete answer; give the score in the format: 3
Prompt: A photographer is capturing a beautiful butterfly with his camera
Prediction: A man photographing a butterfly near a tree and map, surrounded by plants
Answer: 4
Experiments
Metric Evaluation
- 本文首先让评估专家,对6种3D生成方法的30%生成结果进行打分,得到1080个分数。
- 本文用Spearman's
,Kendall's
和Pearon's
相关性系数进行评估。

Benchmarking Results
- Experimental Setup. 本文为3组提示词,每组生成100个提示词,得到最终300个提示词。基于ThreeStudio测试了DreamFusion,Magic3D,LatentNeRF,Fantasia3D,SJC和ProlificDreamer。渲染图片分辨率为512 x 512。对SJC,Magic3D和Fantasia3D使用DMTet提取Mesh,其他方法使用Marching Cube algorithm。

- Comparison of different methods. 1)Dreamfusion:生成纹理较差,不能生成较复杂的几何;2)Magic3D和LatentNeRF:受益于coarse-to-refine策略,但是对环境和多物体生成效果较差;3)SJC:场景中噪声较多,较难提取高质量3D mesh;4)Fantasia3D:对复杂场景较难生成准确几何;5)ProfilifcDreamer:VSD引入了大量不想管信息或几何噪声,随着目标数量增加,导致评价指标下降。
2D Guidance Analysis
- 本文用相同的提示词生成图像,并计算图像分数和3D物体分数的Spearman相关性系数。
- 实验发现,所有相关性都较弱。1)在text-to-3D中生成效果较好的方法,相关性系数更高;2)在Single Object比Single Object with Surroundings好,进一步优于Multiple Objects。本文认为,SD在多数时间可以生成合理的2D图像,却无法生成合理的3D物体,这说明现有2D引导词不适用于text-to-3D方法。text-to-3D的瓶颈在于2D guidance的view consistency,而不是SD本身的生成能力。

Multi-view Inconsistency Analysis
- 当前评分可以较好反应多脸问题(Janus Problem)

More Results of Test Prompts


相关文章:
[23] T^3Bench: Benchmarking Current Progress in Text-to-3D Generation
3D生成蓬勃发展,主流方法通过事例比较和用户调查来评价方法好坏,缺少客观比较指标;本文提出Bench,首次综合比较了不同生成方法;具体来说,本文设计了质量评估(Quality Assessment)和对…...
linux系统如何定时关机
立刻关机 poweroff 10分钟后自动关机 shutdown -h 10 如果希望终止上面执行的10分钟关机,则执行: shutdown -c 希望在22:00关闭计算机 shutdown -h 22:00...
构建高性能物联网数据平台:EMQX和CnosDB的完整教程
CnosDB 是一款高性能、高压缩率、高易用性的开源分布式时序数据库。主要应用场景为物联网、工业互联网、车联网和IT运维。所有代码均已在GitHub开源。本文将介绍如何使用EMQX 这一MQTT 服务器 CnosDB 构建物联网数据平台,实现物联网数据的实时流处理。 前言 在物联…...
【vim 学习系列文章 11 -- vim filetype | execute | runtimepath 详细介绍】
文章目录 filetype plugin indent on 什么功能?vim runtimepath 详细介绍vim 中 execute 命令详细介绍execute pathogen#infect() 详细介绍 filetype plugin indent on 什么功能? 在网上我们经常可以看到vimrc配置中有 filetype plugin indent on 这个配…...
[备忘]WindowsLinux上查看端口被什么进程占用|端口占用
Windows上 查看端口占用: netstat -aon|findstr <端口号> 通过进程ID查询进程信息 tasklist | findstr <上一步查出来的进程号> 图例: Linux 上 查看端口占用: netstat -tuln | grep <端口号> lsof -i:<端口号&…...
函数的扩展
文章目录 函数的扩展1.函数参数的默认值1.1 基本用法-- 参数变量是默认声明的,所以不能用 let或const 再次声明-- 使用参数默认值时,函数不能有同名参数1.2 与解构赋值默认值结合使用☆☆☆ 函数参数的默认值生效以后,参数解构赋值依然会进行…...
Cypress安装使用
node.js 安装使用Cypress总是会看见node.js,那就先看看node.js是什么。JavaScript以前运行需要在浏览器中(浏览器内置解释器),通过node.js框架内置v8引擎(也就是可以执行js脚本所需的工具),这样…...
怎么把图片改成jpg格式?
怎么把图片改成jpg格式?大家都知道,随着计算机被发明到现在已经存在了很多年,在这么多的的技术发展过程中,也形成了种类非常多的图片文件格式,例如平时我们能接触到的图片格式有jpg、png、gif、bmp、heic、tiff、jfif、…...
[一带一路金砖 2023 CTF]Crypto
题1 题目描述: from Crypto.Util.number import * from flag import flag import gmpy2 assert(len(flag)38) flag bytes_to_long(flag)p getPrime(512) q getPrime(512)e 304 enc pow(flag,e,p*q) print(p) print(q) print(enc) #9794998439882070838464987…...
FPGA【Verilog语法】
关键字: and always assign begin buf bufif0 bufif1 case casex casez cmos deassign default defparam disable edge else end endcase endfunction endprimitive endmodule endspecify endtable …...
Flume 整合 Kafka
1.背景 先说一下,为什么要使用 Flume + Kafka? 以实时流处理项目为例,由于采集的数据量可能存在峰值和峰谷,假设是一个电商项目,那么峰值通常出现在秒杀时,这时如果直接将 Flume 聚合后的数据输入到 Storm 等分布式计算框架中,可能就会超过集群的处理能力,这时采用 Kaf…...
VUE:侧边弹出栏组件,组件中有树状图,搜索框可筛选树状图节点,可收缩
作者:CSDN @ _乐多_ 本文记录了一个侧边弹出栏组件代码。代码即插即用。 弹出栏中有树状图,搜索框,可收缩。 其中,搜索框可筛选树状图节点。点击右侧小按钮可以收缩弹出框,点击X号也可以收缩弹出框。 文章目录 一、组件代码代码依赖element-plus库。且需要下载几个svg图…...
如何使用pytorch定义一个多层感知神经网络模型——拓展到所有模型知识
# 导入必要的库 import torch import torch.nn as nn import torch.optim as optim from torch.utils.data import DataLoader, random_split import torchvision.transforms as transforms import torchvision.datasets as datasets# 定义MLP模型 class MLP(nn.Module):def __…...
为什么引入SVG文件,给它定义属性不生效原理分析
背景: 我使用antd 的Icon组件引入SVG图片,但给svg图片定义styles样式时,不生效,为什么呢? 我们平时用antd组件库的 < ArrowRightOutlined style{{color: red }}>时为什么会生效呢,但我图一这样定义就…...
Integer包装类常用方法和属性
包装类 什么是包装类Integer包装类常用方法和属性 什么是包装类 Java 包装类是指为了方便处理基本数据类型而提供的对应的引用类型。Java 提供了八个基本数据类型(boolean、byte、short、int、long、float、double、char),每个基本数据类型对…...
基于Spring boot轻松实现一个多数据源框架
Spring Boot 提供了 Data JPA 的包,允许你使用类似 ORM 的接口连接到 RDMS。它很容易使用和实现,只需要在 pom.xml 中添加一个条目(如果使用的是 Maven,Gradle 则是在 build.gradle 文件中)。 <dependencies>&l…...
vue前端实现打印功能并约束纸张大小---调用浏览器打印功能打印页面部分元素并固定纸张大小
需求是打印指定div实现小票打印功能。调用浏览器的自带打印功能只能实现打印可视区域,所以这里采用截图新窗口打开打印去实现此需求。 1.安装html2canvas库实现截图功能 npm install html2canvas --save2.在需要进行截图和打印的组件中,引入html2canvas…...
音乐播放器蜂鸣器ROM存储歌曲verilog,代码/视频
名称:音乐播放器蜂鸣器ROM存储歌曲 软件:Quartus 语言:Verilog 代码功能: 设计音乐播放器,要求至少包含2首歌曲,使用按键切换歌曲,使用开发板的蜂鸣器播放音乐,使用Quartus内的RO…...
Arduino Nano 引脚复用分析
近期开发的项目为气体传感器采集仪,综合需求,选取NANO作为主控,附属设备有 oled、旋转编码器、H桥板、蠕动泵、开关、航插等,主要是用现有接口怎么合理配置实现功能。 不管stm32 还是 Arduino 都要看清引脚图 D2 D3 引脚是两个外…...
Go 函数多返回值错误处理与error 类型介绍
Go 函数多返回值错误处理与error 类型介绍 文章目录 Go 函数多返回值错误处理与error 类型介绍一、error 类型与错误值构造1.1 Error 接口介绍1.2 构造错误值的方法1.2.1 使用errors包1.2.2 自定义错误类型 二、error 类型的好处2.1 第一点:统一了错误类型2.2 第二点…...
Linux应用开发之网络套接字编程(实例篇)
服务端与客户端单连接 服务端代码 #include <sys/socket.h> #include <sys/types.h> #include <netinet/in.h> #include <stdio.h> #include <stdlib.h> #include <string.h> #include <arpa/inet.h> #include <pthread.h> …...
突破不可导策略的训练难题:零阶优化与强化学习的深度嵌合
强化学习(Reinforcement Learning, RL)是工业领域智能控制的重要方法。它的基本原理是将最优控制问题建模为马尔可夫决策过程,然后使用强化学习的Actor-Critic机制(中文译作“知行互动”机制),逐步迭代求解…...
大数据零基础学习day1之环境准备和大数据初步理解
学习大数据会使用到多台Linux服务器。 一、环境准备 1、VMware 基于VMware构建Linux虚拟机 是大数据从业者或者IT从业者的必备技能之一也是成本低廉的方案 所以VMware虚拟机方案是必须要学习的。 (1)设置网关 打开VMware虚拟机,点击编辑…...
【大模型RAG】Docker 一键部署 Milvus 完整攻略
本文概要 Milvus 2.5 Stand-alone 版可通过 Docker 在几分钟内完成安装;只需暴露 19530(gRPC)与 9091(HTTP/WebUI)两个端口,即可让本地电脑通过 PyMilvus 或浏览器访问远程 Linux 服务器上的 Milvus。下面…...
Auto-Coder使用GPT-4o完成:在用TabPFN这个模型构建一个预测未来3天涨跌的分类任务
通过akshare库,获取股票数据,并生成TabPFN这个模型 可以识别、处理的格式,写一个完整的预处理示例,并构建一个预测未来 3 天股价涨跌的分类任务 用TabPFN这个模型构建一个预测未来 3 天股价涨跌的分类任务,进行预测并输…...
对WWDC 2025 Keynote 内容的预测
借助我们以往对苹果公司发展路径的深入研究经验,以及大语言模型的分析能力,我们系统梳理了多年来苹果 WWDC 主题演讲的规律。在 WWDC 2025 即将揭幕之际,我们让 ChatGPT 对今年的 Keynote 内容进行了一个初步预测,聊作存档。等到明…...
Frozen-Flask :将 Flask 应用“冻结”为静态文件
Frozen-Flask 是一个用于将 Flask 应用“冻结”为静态文件的 Python 扩展。它的核心用途是:将一个 Flask Web 应用生成成纯静态 HTML 文件,从而可以部署到静态网站托管服务上,如 GitHub Pages、Netlify 或任何支持静态文件的网站服务器。 &am…...
今日学习:Spring线程池|并发修改异常|链路丢失|登录续期|VIP过期策略|数值类缓存
文章目录 优雅版线程池ThreadPoolTaskExecutor和ThreadPoolTaskExecutor的装饰器并发修改异常并发修改异常简介实现机制设计原因及意义 使用线程池造成的链路丢失问题线程池导致的链路丢失问题发生原因 常见解决方法更好的解决方法设计精妙之处 登录续期登录续期常见实现方式特…...
《C++ 模板》
目录 函数模板 类模板 非类型模板参数 模板特化 函数模板特化 类模板的特化 模板,就像一个模具,里面可以将不同类型的材料做成一个形状,其分为函数模板和类模板。 函数模板 函数模板可以简化函数重载的代码。格式:templa…...
NXP S32K146 T-Box 携手 SD NAND(贴片式TF卡):驱动汽车智能革新的黄金组合
在汽车智能化的汹涌浪潮中,车辆不再仅仅是传统的交通工具,而是逐步演变为高度智能的移动终端。这一转变的核心支撑,来自于车内关键技术的深度融合与协同创新。车载远程信息处理盒(T-Box)方案:NXP S32K146 与…...
