parent
e8de0e44df
commit
dd3720f880
65
README.md
65
README.md
@ -1,4 +1,4 @@
|
||||
# EmbodiedGen: Towards a Generative 3D World Engine for Embodied Intelligence
|
||||
# *EmbodiedGen*: Towards a Generative 3D World Engine for Embodied Intelligence
|
||||
|
||||
[](https://horizonrobotics.github.io/robot_lab/embodied_gen/index.html)
|
||||
[](https://arxiv.org/abs/2506.10600)
|
||||
@ -8,8 +8,8 @@
|
||||
[](https://huggingface.co/spaces/HorizonRobotics/EmbodiedGen-Texture-Gen)
|
||||
|
||||
|
||||
**EmbodiedGen** is a toolkit to generate diverse and interactive 3D worlds composed of generative 3D assets with plausible physics, leveraging generative AI to address the challenges of generalization in embodied intelligence related research. EmbodiedGen composed of six key modules: `Image-to-3D`, `Text-to-3D`, `Texture Generation`, `Articulated Object Generation`, `Scene Generation` and `Layout Generation`.
|
||||
|
||||
> ***EmbodiedGen*** is a generative engine to create diverse and interactive 3D worlds composed of high-quality 3D assets(mesh & 3DGS) with plausible physics, leveraging generative AI to address the challenges of generalization in embodied intelligence related research.
|
||||
> It composed of six key modules: `Image-to-3D`, `Text-to-3D`, `Texture Generation`, `Articulated Object Generation`, `Scene Generation` and `Layout Generation`.
|
||||
|
||||
<img src="apps/assets/overall.jpg" alt="Overall Framework" width="700"/>
|
||||
|
||||
@ -21,7 +21,7 @@
|
||||
- [🎨 Texture Generation](#texture-generation)
|
||||
- [🌍 3D Scene Generation](#3d-scene-generation)
|
||||
- [⚙️ Articulated Object Generation](#articulated-object-generation)
|
||||
- [🏞️ Layout Generation](#layout-generation)
|
||||
- [🏞️ Layout(Interactive 3D Worlds) Generation](#layout-generation)
|
||||
|
||||
## 🚀 Quick Start
|
||||
|
||||
@ -36,7 +36,7 @@ conda activate embodiedgen
|
||||
bash install.sh
|
||||
```
|
||||
|
||||
### 🟢 Setup GPT Agent
|
||||
### ✅ Setup GPT Agent
|
||||
|
||||
Update the API key in file: `embodied_gen/utils/gpt_config.yaml`.
|
||||
|
||||
@ -50,13 +50,13 @@ You can choose between two backends for the GPT agent:
|
||||
|
||||
<h2 id="image-to-3d">🖼️ Image-to-3D</h2>
|
||||
|
||||
[](https://huggingface.co/spaces/HorizonRobotics/EmbodiedGen-Image-to-3D) Generate physically plausible 3D asset from input image.
|
||||
[](https://huggingface.co/spaces/HorizonRobotics/EmbodiedGen-Image-to-3D) Generate physically plausible 3D asset URDF from single input image, offering high-quality support for digital twin systems.
|
||||
|
||||
<img src="apps/assets/image_to_3d.jpg" alt="Image to 3D" width="900">
|
||||
|
||||
### Service
|
||||
Run the image-to-3D generation service locally. The first run will download required models.
|
||||
|
||||
### ☁️ Service
|
||||
Run the image-to-3D generation service locally.
|
||||
Models downloaded automatically on first run, please be patient.
|
||||
```sh
|
||||
# Run in foreground
|
||||
python apps/image_to_3d.py
|
||||
@ -64,13 +64,12 @@ python apps/image_to_3d.py
|
||||
CUDA_VISIBLE_DEVICES=0 nohup python apps/image_to_3d.py > /dev/null 2>&1 &
|
||||
```
|
||||
|
||||
### API
|
||||
Generate a 3D model from an image using the command-line API.
|
||||
Models will be downloaded automatically, please wait for the first run.
|
||||
### ⚡ API
|
||||
Generate physically plausible 3D assets from image input via the command-line API.
|
||||
```sh
|
||||
python3 embodied_gen/scripts/imageto3d.py \
|
||||
--image_path apps/assets/example_image/sample_04.jpg apps/assets/example_image/sample_19.jpg \
|
||||
--output_root outputs/imageto3d/
|
||||
--output_root outputs/imageto3d
|
||||
|
||||
# See result(.urdf/mesh.obj/mesh.glb/gs.ply) in ${output_root}/sample_xx/result
|
||||
```
|
||||
@ -84,19 +83,21 @@ python3 embodied_gen/scripts/imageto3d.py \
|
||||
|
||||
<img src="apps/assets/text_to_3d.jpg" alt="Text to 3D" width="900">
|
||||
|
||||
### Service
|
||||
Run the text-to-3D generation service locally.
|
||||
### ☁️ Service
|
||||
Deploy the text-to-3D generation service locally.
|
||||
|
||||
Text-to-image based on the Kolors model, supporting Chinese and English prompts.
|
||||
Models downloaded automatically on first run, see `download_kolors_weights`, please be patient.
|
||||
```sh
|
||||
python apps/text_to_3d.py
|
||||
```
|
||||
|
||||
### API
|
||||
Models will be downloaded automatically, see `download_kolors_weights`.
|
||||
### ⚡ API
|
||||
Text-to-image based on the Kolors model.
|
||||
```sh
|
||||
bash embodied_gen/scripts/textto3d.sh \
|
||||
--prompts "small bronze figurine of a lion" "A globe with wooden base and latitude and longitude lines" "橙色电动手钻,有磨损细节" \
|
||||
--output_root outputs/textto3d/
|
||||
--output_root outputs/textto3d
|
||||
```
|
||||
|
||||
---
|
||||
@ -109,15 +110,14 @@ bash embodied_gen/scripts/textto3d.sh \
|
||||
<img src="apps/assets/texture_gen.jpg" alt="Texture Gen" width="900">
|
||||
|
||||
|
||||
### Service
|
||||
### ☁️ Service
|
||||
Run the texture generation service locally.
|
||||
|
||||
Models downloaded automatically on first run, see `download_kolors_weights`, `geo_cond_mv`.
|
||||
```sh
|
||||
python apps/texture_edit.py
|
||||
```
|
||||
|
||||
### API
|
||||
Models will be downloaded automatically, see `download_kolors_weights`, `geo_cond_mv`.
|
||||
### ⚡ API
|
||||
```sh
|
||||
bash embodied_gen/scripts/texture_gen.sh \
|
||||
--mesh_path "apps/assets/example_texture/meshes/robot_text.obj" \
|
||||
@ -147,7 +147,25 @@ bash embodied_gen/scripts/texture_gen.sh \
|
||||
---
|
||||
|
||||
|
||||
<h2 id="layout-generation">🏞️ Layout Generation</h2>
|
||||
<h2 id="layout-generation">🏞️ Layout(Interactive 3D Worlds) Generation</h2>
|
||||
|
||||
### 💬 Generate Layout from task description
|
||||
|
||||
🚧 *Coming Soon*
|
||||
|
||||
<table>
|
||||
<tr>
|
||||
<td><img src="apps/assets/layout1.gif" alt="layout1" width="300"/></td>
|
||||
<td><img src="apps/assets/layout2.gif" alt="layout2" width="300"/></td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td><img src="apps/assets/layout3.gif" alt="layout3" width="300"/></td>
|
||||
<td><img src="apps/assets/layout4.gif" alt="layout4" width="300"/></td>
|
||||
</tr>
|
||||
</table>
|
||||
|
||||
|
||||
### 🖼️ Generate Layout from image
|
||||
|
||||
🚧 *Coming Soon*
|
||||
|
||||
@ -176,7 +194,6 @@ If you use EmbodiedGen in your research or projects, please cite:
|
||||
EmbodiedGen builds upon the following amazing projects and models:
|
||||
🌟 [Trellis](https://github.com/microsoft/TRELLIS) | 🌟 [Hunyuan-Delight](https://huggingface.co/tencent/Hunyuan3D-2/tree/main/hunyuan3d-delight-v2-0) | 🌟 [Segment Anything](https://github.com/facebookresearch/segment-anything) | 🌟 [Rembg](https://github.com/danielgatis/rembg) | 🌟 [RMBG-1.4](https://huggingface.co/briaai/RMBG-1.4) | 🌟 [Stable Diffusion x4](https://huggingface.co/stabilityai/stable-diffusion-x4-upscaler) | 🌟 [Real-ESRGAN](https://github.com/xinntao/Real-ESRGAN) | 🌟 [Kolors](https://github.com/Kwai-Kolors/Kolors) | 🌟 [ChatGLM3](https://github.com/THUDM/ChatGLM3) | 🌟 [Aesthetic Score](http://captions.christoph-schuhmann.de/aesthetic_viz_laion_sac+logos+ava1-l14-linearMSE-en-2.37B.html) | 🌟 [Pano2Room](https://github.com/TrickyGo/Pano2Room) | 🌟 [Diffusion360](https://github.com/ArcherFMY/SD-T2I-360PanoImage) | 🌟 [Kaolin](https://github.com/NVIDIAGameWorks/kaolin) | 🌟 [diffusers](https://github.com/huggingface/diffusers) | 🌟 [gsplat](https://github.com/nerfstudio-project/gsplat) | 🌟 [QWEN2.5VL](https://github.com/QwenLM/Qwen2.5-VL) | 🌟 [GPT4o](https://platform.openai.com/docs/models/gpt-4o)
|
||||
|
||||
|
||||
---
|
||||
|
||||
## ⚖️ License
|
||||
|
||||
BIN
apps/assets/layout1.gif
Normal file
BIN
apps/assets/layout1.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 684 KiB |
BIN
apps/assets/layout2.gif
Normal file
BIN
apps/assets/layout2.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 713 KiB |
BIN
apps/assets/layout3.gif
Normal file
BIN
apps/assets/layout3.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 642 KiB |
BIN
apps/assets/layout4.gif
Normal file
BIN
apps/assets/layout4.gif
Normal file
Binary file not shown.
|
After Width: | Height: | Size: 699 KiB |
Loading…
x
Reference in New Issue
Block a user