Spaces:
Running
on
Zero
Running
on
Zero
Update gradio_app.py
Browse files- gradio_app.py +31 -10
gradio_app.py
CHANGED
|
@@ -4,6 +4,7 @@ import shutil
|
|
| 4 |
import time
|
| 5 |
from glob import glob
|
| 6 |
from pathlib import Path
|
|
|
|
| 7 |
|
| 8 |
import gradio as gr
|
| 9 |
import torch
|
|
@@ -56,17 +57,37 @@ def get_example_mv_list():
|
|
| 56 |
return mv_list
|
| 57 |
|
| 58 |
|
| 59 |
-
def gen_save_folder(max_size=60):
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 60 |
os.makedirs(SAVE_DIR, exist_ok=True)
|
| 61 |
-
|
| 62 |
-
|
| 63 |
-
|
| 64 |
-
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 70 |
|
| 71 |
|
| 72 |
def export_mesh(mesh, save_folder, textured=False, type='glb'):
|
|
|
|
| 4 |
import time
|
| 5 |
from glob import glob
|
| 6 |
from pathlib import Path
|
| 7 |
+
import uuid
|
| 8 |
|
| 9 |
import gradio as gr
|
| 10 |
import torch
|
|
|
|
| 57 |
return mv_list
|
| 58 |
|
| 59 |
|
| 60 |
+
# def gen_save_folder(max_size=60):
|
| 61 |
+
# os.makedirs(SAVE_DIR, exist_ok=True)
|
| 62 |
+
# exists = set(int(_) for _ in os.listdir(SAVE_DIR) if _.isdigit())
|
| 63 |
+
# cur_id = min(set(range(max_size)) - exists) if len(exists) < max_size else -1
|
| 64 |
+
# if os.path.exists(f"{SAVE_DIR}/{(cur_id + 1) % max_size}"):
|
| 65 |
+
# shutil.rmtree(f"{SAVE_DIR}/{(cur_id + 1) % max_size}")
|
| 66 |
+
# print(f"remove {SAVE_DIR}/{(cur_id + 1) % max_size} success !!!")
|
| 67 |
+
# save_folder = f"{SAVE_DIR}/{max(0, cur_id)}"
|
| 68 |
+
# os.makedirs(save_folder, exist_ok=True)
|
| 69 |
+
# print(f"mkdir {save_folder} suceess !!!")
|
| 70 |
+
# return save_folder
|
| 71 |
+
|
| 72 |
+
def gen_save_folder(max_size=200):
|
| 73 |
os.makedirs(SAVE_DIR, exist_ok=True)
|
| 74 |
+
|
| 75 |
+
# 获取所有文件夹路径
|
| 76 |
+
dirs = [f for f in Path(SAVE_DIR).iterdir() if f.is_dir()]
|
| 77 |
+
|
| 78 |
+
# 如果文件夹数量超过 max_size,删除创建时间最久的文件夹
|
| 79 |
+
if len(dirs) >= max_size:
|
| 80 |
+
# 按创建时间排序,最久的排在前面
|
| 81 |
+
oldest_dir = min(dirs, key=lambda x: x.stat().st_ctime)
|
| 82 |
+
shutil.rmtree(oldest_dir)
|
| 83 |
+
print(f"Removed the oldest folder: {oldest_dir}")
|
| 84 |
+
|
| 85 |
+
# 生成一个新的 uuid 文件夹名称
|
| 86 |
+
new_folder = os.path.join(SAVE_DIR, str(uuid.uuid4()))
|
| 87 |
+
os.makedirs(new_folder, exist_ok=True)
|
| 88 |
+
print(f"Created new folder: {new_folder}")
|
| 89 |
+
|
| 90 |
+
return new_folder
|
| 91 |
|
| 92 |
|
| 93 |
def export_mesh(mesh, save_folder, textured=False, type='glb'):
|