Spaces:
Runtime error
Runtime error
update normalize_multiimages
Browse files
app.py
CHANGED
|
@@ -62,13 +62,19 @@ def preprocess_images(images: List[Tuple[Image.Image, str]]) -> List[Image.Image
|
|
| 62 |
return processed_images
|
| 63 |
|
| 64 |
def preprocess_upload_images(file_list: List[Any]) -> List[Tuple[Image.Image, str]]:
|
| 65 |
-
|
| 66 |
-
|
| 67 |
-
|
| 68 |
-
|
| 69 |
-
|
| 70 |
-
|
| 71 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 72 |
return images
|
| 73 |
|
| 74 |
|
|
@@ -173,7 +179,6 @@ def image_to_3d(
|
|
| 173 |
os.makedirs(user_dir, exist_ok=True)
|
| 174 |
is_multiimage = is_multiimage.lower() == "true"
|
| 175 |
|
| 176 |
-
multiimages = normalize_multiimages(multiimages)
|
| 177 |
|
| 178 |
# Run pipeline depending on mode
|
| 179 |
if not is_multiimage:
|
|
@@ -192,7 +197,11 @@ def image_to_3d(
|
|
| 192 |
},
|
| 193 |
)
|
| 194 |
else:
|
|
|
|
|
|
|
|
|
|
| 195 |
pil_images = [img for img, _ in multiimages]
|
|
|
|
| 196 |
outputs = pipeline.run_multi_image(
|
| 197 |
pil_images,
|
| 198 |
seed=seed,
|
|
@@ -531,7 +540,7 @@ with gr.Blocks(delete_cache=(600, 600)) as demo:
|
|
| 531 |
# outputs=[multiimage_prompt],
|
| 532 |
# )
|
| 533 |
multiimage_prompt.upload(
|
| 534 |
-
fn=
|
| 535 |
inputs=[multiimage_prompt],
|
| 536 |
outputs=[multiimage_combined],
|
| 537 |
)
|
|
|
|
| 62 |
return processed_images
|
| 63 |
|
| 64 |
def preprocess_upload_images(file_list: List[Any]) -> List[Tuple[Image.Image, str]]:
|
| 65 |
+
images = []
|
| 66 |
+
for f in file_list:
|
| 67 |
+
if isinstance(f, dict):
|
| 68 |
+
path = f.get("path") or f.get("name")
|
| 69 |
+
filename = os.path.basename(path)
|
| 70 |
+
else: # UploadedFile / FileData
|
| 71 |
+
path = f.name
|
| 72 |
+
filename = os.path.basename(path)
|
| 73 |
+
|
| 74 |
+
img = Image.open(path).convert("RGBA").resize(
|
| 75 |
+
(518, 518), Image.Resampling.LANCZOS
|
| 76 |
+
)
|
| 77 |
+
images.append((img, filename))
|
| 78 |
return images
|
| 79 |
|
| 80 |
|
|
|
|
| 179 |
os.makedirs(user_dir, exist_ok=True)
|
| 180 |
is_multiimage = is_multiimage.lower() == "true"
|
| 181 |
|
|
|
|
| 182 |
|
| 183 |
# Run pipeline depending on mode
|
| 184 |
if not is_multiimage:
|
|
|
|
| 197 |
},
|
| 198 |
)
|
| 199 |
else:
|
| 200 |
+
multiimages = normalize_multiimages(multiimages)
|
| 201 |
+
if is_multiimage and len(multiimages) == 0:
|
| 202 |
+
raise gr.Error("Multiple Images mode need at least 1 pic,please upload then click Generate。")
|
| 203 |
pil_images = [img for img, _ in multiimages]
|
| 204 |
+
assert all(isinstance(im, Image.Image) for im in pil_imgs),
|
| 205 |
outputs = pipeline.run_multi_image(
|
| 206 |
pil_images,
|
| 207 |
seed=seed,
|
|
|
|
| 540 |
# outputs=[multiimage_prompt],
|
| 541 |
# )
|
| 542 |
multiimage_prompt.upload(
|
| 543 |
+
fn=lambda imgs: imgs,
|
| 544 |
inputs=[multiimage_prompt],
|
| 545 |
outputs=[multiimage_combined],
|
| 546 |
)
|