File size: 1,763 Bytes
7c39d15
 
 
 
 
 
 
 
 
9f0fd8e
7c39d15
 
 
37aeb5b
 
 
 
 
 
 
 
 
 
 
5a3e910
 
37aeb5b
 
 
 
04f25a3
0c552a7
37aeb5b
 
 
 
0c552a7
 
37aeb5b
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
import shlex
import subprocess
subprocess.run(
    shlex.split(
        "pip install https://pkgs.dev.azure.com/onnxruntime/2a773b67-e88b-4c7f-9fc0-87d31fea8ef2/_packaging/7fa31e42-5da1-4e84-a664-f2b4129c7d45/pypi/download/onnxruntime-gpu/1.17/onnxruntime_gpu-1.17.0-cp310-cp310-manylinux_2_28_x86_64.whl --force-reinstall --no-deps"
    )
)
subprocess.run(
    shlex.split(
        "mkdir -p /home/user/.cache/torch_extensions/ && cp -r torch_extensions/py310_cu121 /home/user/.cache/torch_extensions/"
    )
)

if __name__ == "__main__":
    import os
    import sys
    sys.path.append(os.curdir)
    import torch
    torch.set_float32_matmul_precision('medium')
    torch.backends.cuda.matmul.allow_tf32 = True
    torch.set_grad_enabled(False)

import fire
import gradio as gr
from gradio_app.gradio_3dgen import create_ui as create_3d_ui
from gradio_app.all_models import model_zoo


_TITLE = '''Unique3D: High-Quality and Efficient 3D Mesh Generation from a Single Image'''
_DESCRIPTION = '''

# [Project page](https://wukailu.github.io/Unique3D/)

* High-fidelity and diverse textured meshes generated by Unique3D from single-view images.

* The demo is still under construction, and more features are expected to be implemented soon.

# NOTE: The Hugging Face demo is still under development and cannot produce any accurate results at the moment.
'''

def launch():
    model_zoo.init_models()
        
    with gr.Blocks(
        title=_TITLE,
        theme=gr.themes.Monochrome(),
    ) as demo:
        with gr.Row():
            with gr.Column(scale=1):
                gr.Markdown('# ' + _TITLE)
        gr.Markdown(_DESCRIPTION)
        create_3d_ui("wkl")

    demo.queue().launch(share=True)
    
if __name__ == '__main__':
    fire.Fire(launch)