Spaces:
Sleeping
Sleeping
update input image to original
Browse files
README.md
CHANGED
@@ -4,7 +4,7 @@ emoji: 🦀
|
|
4 |
colorFrom: indigo
|
5 |
colorTo: purple
|
6 |
sdk: gradio
|
7 |
-
sdk_version:
|
8 |
app_file: app.py
|
9 |
pinned: false
|
10 |
models:
|
|
|
4 |
colorFrom: indigo
|
5 |
colorTo: purple
|
6 |
sdk: gradio
|
7 |
+
sdk_version: 4.36.0
|
8 |
app_file: app.py
|
9 |
pinned: false
|
10 |
models:
|
app.py
CHANGED
@@ -227,6 +227,7 @@ def preprocess_image(image, output_size=(300, 300)):
|
|
227 |
return image_resized
|
228 |
|
229 |
def update_display(image):
|
|
|
230 |
processed_image = preprocess_image(image)
|
231 |
instruction = "Image ready. Please switch to the 'Specimen Workbench' tab to check out further analysis and outputs."
|
232 |
model_name = "Fossils new"
|
@@ -249,7 +250,7 @@ def update_display(image):
|
|
249 |
# interactive=True,
|
250 |
# info="Choose one method to explain the model"
|
251 |
# )
|
252 |
-
sampling_size =
|
253 |
# gr.Slider(1, 5000, value=2000, label="Sampling Size in Rise",interactive=True,visible=True,
|
254 |
# info="Choose between 1 and 5000")
|
255 |
|
@@ -262,7 +263,7 @@ def update_display(image):
|
|
262 |
# gr.Gallery(label="Closest Images", show_label=False,elem_id="gallery",columns=[5], rows=[1],height='auto', allow_preview=True, preview=None)
|
263 |
diagram= None
|
264 |
# gr.Image(label = 'Bar Chart')
|
265 |
-
return processed_image,processed_image,instruction,model_name,explain_method,sampling_size,top_k,class_predicted,exp_gallery,closest_gallery,diagram
|
266 |
def update_slider_visibility(explain_method):
|
267 |
bool = explain_method=="Rise"
|
268 |
return {sampling_size: gr.Slider(1, 5000, value=2000, label="Sampling Size in Rise", visible=bool, interactive=True)}
|
@@ -288,6 +289,7 @@ with gr.Blocks(theme='sudeepshouche/minimalist') as demo:
|
|
288 |
with gr.Tab("Specimen Workbench"):
|
289 |
with gr.Row():
|
290 |
with gr.Column():
|
|
|
291 |
workbench_image = gr.Image(label="Workbench Image")
|
292 |
classify_image_button = gr.Button("Classify Image")
|
293 |
|
@@ -319,8 +321,8 @@ with gr.Blocks(theme='sudeepshouche/minimalist') as demo:
|
|
319 |
# value="Rise",
|
320 |
# multiselect=False,
|
321 |
# interactive=True,)
|
322 |
-
sampling_size = gr.Slider(1,
|
323 |
-
info="Choose between 1 and
|
324 |
|
325 |
top_k = gr.Slider(10,200,value=50,label="Number of Closest Samples for Distribution Chart",interactive=True,info="Choose between 10 and 200")
|
326 |
explain_method.change(
|
@@ -381,7 +383,7 @@ with gr.Blocks(theme='sudeepshouche/minimalist') as demo:
|
|
381 |
find_closest_btn = gr.Button("Find Closest Images")
|
382 |
|
383 |
#segment_button.click(segment_image, inputs=input_image, outputs=segmented_image)
|
384 |
-
classify_image_button.click(classify_image, inputs=[
|
385 |
# generate_exp.click(exp_image, inputs=[input_image,model_name,explain_method,sampling_size], outputs=[exp1,exp2,exp3,exp4,exp5]) #
|
386 |
with gr.Accordion('Closest Leaves Images'):
|
387 |
gr.Markdown("5 closest leaves")
|
@@ -414,7 +416,7 @@ with gr.Blocks(theme='sudeepshouche/minimalist') as demo:
|
|
414 |
image_caption.append((images[i],"Predicted Class "+str(i)+": "+labels[i]))
|
415 |
return image_caption
|
416 |
|
417 |
-
generate_explanations.click(fn=update_exp_outputs, inputs=[
|
418 |
|
419 |
#find_closest_btn.click(find_closest, inputs=[input_image,model_name], outputs=[label_closest_image_0,label_closest_image_1,label_closest_image_2,label_closest_image_3,label_closest_image_4,closest_image_0,closest_image_1,closest_image_2,closest_image_3,closest_image_4])
|
420 |
def update_closest_outputs(input_image,model_name):
|
@@ -426,15 +428,15 @@ with gr.Blocks(theme='sudeepshouche/minimalist') as demo:
|
|
426 |
image_caption.append((images[i],labels[i]))
|
427 |
return image_caption
|
428 |
|
429 |
-
find_closest_btn.click(fn=update_closest_outputs, inputs=[
|
430 |
#classify_segmented_button.click(classify_image, inputs=[segmented_image,model_name], outputs=class_predicted)
|
431 |
|
432 |
-
generate_diagram.click(generate_diagram_closest, inputs=[
|
433 |
|
434 |
process_button.click(
|
435 |
fn=update_display,
|
436 |
inputs=input_image,
|
437 |
-
outputs=[input_image,workbench_image,instruction_text,model_name,explain_method,sampling_size,top_k,class_predicted,exp_gallery,closest_gallery,diagram]
|
438 |
)
|
439 |
|
440 |
|
|
|
227 |
return image_resized
|
228 |
|
229 |
def update_display(image):
|
230 |
+
original_image = image
|
231 |
processed_image = preprocess_image(image)
|
232 |
instruction = "Image ready. Please switch to the 'Specimen Workbench' tab to check out further analysis and outputs."
|
233 |
model_name = "Fossils new"
|
|
|
250 |
# interactive=True,
|
251 |
# info="Choose one method to explain the model"
|
252 |
# )
|
253 |
+
sampling_size = 5
|
254 |
# gr.Slider(1, 5000, value=2000, label="Sampling Size in Rise",interactive=True,visible=True,
|
255 |
# info="Choose between 1 and 5000")
|
256 |
|
|
|
263 |
# gr.Gallery(label="Closest Images", show_label=False,elem_id="gallery",columns=[5], rows=[1],height='auto', allow_preview=True, preview=None)
|
264 |
diagram= None
|
265 |
# gr.Image(label = 'Bar Chart')
|
266 |
+
return original_image,processed_image,processed_image,instruction,model_name,explain_method,sampling_size,top_k,class_predicted,exp_gallery,closest_gallery,diagram
|
267 |
def update_slider_visibility(explain_method):
|
268 |
bool = explain_method=="Rise"
|
269 |
return {sampling_size: gr.Slider(1, 5000, value=2000, label="Sampling Size in Rise", visible=bool, interactive=True)}
|
|
|
289 |
with gr.Tab("Specimen Workbench"):
|
290 |
with gr.Row():
|
291 |
with gr.Column():
|
292 |
+
original_image = gr.Image(visible = True)
|
293 |
workbench_image = gr.Image(label="Workbench Image")
|
294 |
classify_image_button = gr.Button("Classify Image")
|
295 |
|
|
|
321 |
# value="Rise",
|
322 |
# multiselect=False,
|
323 |
# interactive=True,)
|
324 |
+
sampling_size = gr.Slider(1, 30, value=5, label="Sampling Size in Rise",interactive=True,visible=True,
|
325 |
+
info="Choose between 1 and 30")
|
326 |
|
327 |
top_k = gr.Slider(10,200,value=50,label="Number of Closest Samples for Distribution Chart",interactive=True,info="Choose between 10 and 200")
|
328 |
explain_method.change(
|
|
|
383 |
find_closest_btn = gr.Button("Find Closest Images")
|
384 |
|
385 |
#segment_button.click(segment_image, inputs=input_image, outputs=segmented_image)
|
386 |
+
classify_image_button.click(classify_image, inputs=[original_image,model_name], outputs=class_predicted)
|
387 |
# generate_exp.click(exp_image, inputs=[input_image,model_name,explain_method,sampling_size], outputs=[exp1,exp2,exp3,exp4,exp5]) #
|
388 |
with gr.Accordion('Closest Leaves Images'):
|
389 |
gr.Markdown("5 closest leaves")
|
|
|
416 |
image_caption.append((images[i],"Predicted Class "+str(i)+": "+labels[i]))
|
417 |
return image_caption
|
418 |
|
419 |
+
generate_explanations.click(fn=update_exp_outputs, inputs=[original_image,model_name,explain_method,sampling_size], outputs=[exp_gallery])
|
420 |
|
421 |
#find_closest_btn.click(find_closest, inputs=[input_image,model_name], outputs=[label_closest_image_0,label_closest_image_1,label_closest_image_2,label_closest_image_3,label_closest_image_4,closest_image_0,closest_image_1,closest_image_2,closest_image_3,closest_image_4])
|
422 |
def update_closest_outputs(input_image,model_name):
|
|
|
428 |
image_caption.append((images[i],labels[i]))
|
429 |
return image_caption
|
430 |
|
431 |
+
find_closest_btn.click(fn=update_closest_outputs, inputs=[original_image,model_name], outputs=[closest_gallery])
|
432 |
#classify_segmented_button.click(classify_image, inputs=[segmented_image,model_name], outputs=class_predicted)
|
433 |
|
434 |
+
generate_diagram.click(generate_diagram_closest, inputs=[original_image,model_name,top_k], outputs=diagram)
|
435 |
|
436 |
process_button.click(
|
437 |
fn=update_display,
|
438 |
inputs=input_image,
|
439 |
+
outputs=[original_image,input_image,workbench_image,instruction_text,model_name,explain_method,sampling_size,top_k,class_predicted,exp_gallery,closest_gallery,diagram]
|
440 |
)
|
441 |
|
442 |
|