GithubHelp home page GithubHelp logo

thu-lyj-lab / t3bench Goto Github PK

View Code? Open in Web Editor NEW
1.1K 1.0 7.0 11.91 MB

T3Bench: Benchmarking Current Progress in Text-to-3D Generation

Home Page: https://t3bench.com/

Python 100.00%
3d text-to-3d diffusion nerf

t3bench's Introduction

๐Ÿ“ƒ Paper โ€ข ๐ŸŒ Project Page

T3Bench: Benchmarking Current Progress in Text-to-3D Generation

T3Bench is the first comprehensive text-to-3D benchmark containing diverse text prompts of three increasing complexity levels that are specially designed for 3D generation (300 prompts in total). To assess both the subjective quality and the text alignment, we propose two automatic metrics based on multi-view images produced by the 3D contents. The quality metric combines multi-view text-image scores and regional convolution to detect quality and view inconsistency. The alignment metric uses multi-view captioning and Large Language Model (LLM) evaluation to measure text-3D consistency. Both metrics closely correlate with different dimensions of human judgments, providing a paradigm for efficiently evaluating text-to-3D models.

๐Ÿ”ฅ Updates

[2023/10/24] We have released mesh results of all prompt sets and methods! Please check here to download.

Evaluate on T3Bench

Environment Setup

We adopt the implementation of ThreeStudio to test the current text-to-3D methods. Please first follow the instructions of ThreeStudio to setup the generation environment.

Then install the following packages used for evaluation:

pip install -r requirements.txt

Note that we use a slightly modified version of ThreeStudio to ensure efficient generation.

Evaluation

Run Text-to-3D and Extract Mesh
# YOUR_GROUP: Choose the prompt set to test, including [single, surr, multi]
# YOUR_METHOD: We now support latentnerf, magic3d, fantasia3d, dreamfusion, sjc, and prolificdreamer.
python run_t3.py --group YOUR_GROUP --gpu YOUR_GPU --method YOUR_METHOD
python run_mesh.py --group YOUR_GROUP --gpu YOUR_GPU --method YOUR_METHOD
Quality Evaluation
python run_eval_quality.py --group YOUR_GROUP --gpu YOUR_GPU --method YOUR_METHOD
Alignment Evaluation
# First get the 3D prompt of the text-to-3D result
python run_caption.py --group YOUR_GROUP --gpu YOUR_GPU --method YOUR_METHOD
# then run the LLM Evaluation
python run_eval_alignment.py --group YOUR_GROUP --gpu YOUR_GPU --method YOUR_METHOD

Citation

@misc{he2023t3bench,
      title={T$^3$Bench: Benchmarking Current Progress in Text-to-3D Generation}, 
      author={Yuze He and Yushi Bai and Matthieu Lin and Wang Zhao and Yubin Hu and Jenny Sheng and Ran Yi and Juanzi Li and Yong-Jin Liu},
      year={2023},
      eprint={2310.02977},
      archivePrefix={arXiv},
      primaryClass={cs.CV}
}

Acknowledgement

This project could not be possible without the open-source works from ThreeStudio, Cap3D, Stable-DreamFusion, ImageReward, LAVIS. We sincerely thank them all.

t3bench's People

Contributors

bys0318 avatar hyz317 avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar

t3bench's Issues

Question regarding the alignment scores

If I get an average alignment score 3,
then the normalized score is 3/5x100 = 60
or (3-1)/4x100 = 50 ?
Currently based on your paper sec 4.2, I assume the second calculation is correct.
Is that right?

Submit results on t3bench

Hello, thank you for providing a comprehensive benchmark for 3D generation. I am the author of GaussianDreamer and I would like to know how to submit our results on T3bench. Here are our results.

Single Obj. ** Single w/ Surr.** Multi Obj. Average
54.0 48.6 34.5 45.7

Question regarding text prompts

Hello! Thanks for your interesting work. I have a question regarding the text prompts you release in this benchmark.
I am wondering if you are providing triplets of the increasingly descriptive text prompts for every object. or if every text prompt is referring to a random object.

For example:

  • single object : "A red fire hydrant"
  • single object with surroundings: "A red fire hydrant on a sidewalk"
  • multiple objects: "A red fire hydrant is on a sidewalk close to a large tree".

Generation time

Hello, this is a wonderful job. I would like to know the generation time of these methods (ProlificDreamer, SJC, Fantasia3D, LatentNeRF, Magic3D, Dreamfusion) in the paper?

There's a conflict in requirements.txt

When using pip install for requirement.txt, salesforce-lavis, and image-reward are in conflict when sharing the transformer. They have different requirements for the version of the transformer.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.