Batch now generates zip
Browse files
app.py
CHANGED
@@ -12,6 +12,7 @@ import torch.nn.functional as F
|
|
12 |
import matplotlib.pyplot as plt
|
13 |
import warnings
|
14 |
import tempfile
|
|
|
15 |
|
16 |
warnings.filterwarnings("ignore")
|
17 |
|
@@ -152,8 +153,13 @@ def bw_single(image_file):
|
|
152 |
def batch(image_files):
|
153 |
output = []
|
154 |
for idx, file in enumerate(image_files):
|
155 |
-
|
156 |
-
|
|
|
|
|
|
|
|
|
|
|
157 |
|
158 |
with gr.Blocks() as iface:
|
159 |
gr.Markdown("# Remove Background")
|
@@ -177,6 +183,8 @@ with gr.Blocks() as iface:
|
|
177 |
images = gr.File(file_count="multiple", file_types=["image"])
|
178 |
with gr.Column():
|
179 |
gallery = gr.Gallery()
|
|
|
|
|
180 |
with gr.Row():
|
181 |
with gr.Column():
|
182 |
batch_removebg = gr.Button("Batch Process")
|
@@ -184,7 +192,7 @@ with gr.Blocks() as iface:
|
|
184 |
batch_clear = gr.Button("Clear")
|
185 |
#Events
|
186 |
single_removebg.click(inference, inputs=image, outputs=image_output)
|
187 |
-
batch_removebg.click(batch, inputs=images, outputs=gallery)
|
188 |
single_clear.click(lambda: None, None, image, queue=False)
|
189 |
batch_clear.click(lambda: None, None, images, queue=False)
|
190 |
|
|
|
12 |
import matplotlib.pyplot as plt
|
13 |
import warnings
|
14 |
import tempfile
|
15 |
+
from zipfile import ZipFile
|
16 |
|
17 |
warnings.filterwarnings("ignore")
|
18 |
|
|
|
153 |
def batch(image_files):
|
154 |
output = []
|
155 |
for idx, file in enumerate(image_files):
|
156 |
+
file = inference(file.name)
|
157 |
+
output.append(file)
|
158 |
+
|
159 |
+
with ZipFile("tmp.zip", "w") as zipObj:
|
160 |
+
for idx, file in enumerate(output):
|
161 |
+
zipObj.write(file, file.split("/")[-1])
|
162 |
+
return output,"tmp.zip"
|
163 |
|
164 |
with gr.Blocks() as iface:
|
165 |
gr.Markdown("# Remove Background")
|
|
|
183 |
images = gr.File(file_count="multiple", file_types=["image"])
|
184 |
with gr.Column():
|
185 |
gallery = gr.Gallery()
|
186 |
+
file_list = gr.Files(interactive=False)
|
187 |
+
|
188 |
with gr.Row():
|
189 |
with gr.Column():
|
190 |
batch_removebg = gr.Button("Batch Process")
|
|
|
192 |
batch_clear = gr.Button("Clear")
|
193 |
#Events
|
194 |
single_removebg.click(inference, inputs=image, outputs=image_output)
|
195 |
+
batch_removebg.click(batch, inputs=images, outputs=[gallery,file_list])
|
196 |
single_clear.click(lambda: None, None, image, queue=False)
|
197 |
batch_clear.click(lambda: None, None, images, queue=False)
|
198 |
|