Spaces:
Running
Running
Michele Stingo commited on
Commit ·
55365d8
1
Parent(s): e33d658
aggiunta servizio Retina e riorganizzazione albertatura immagini
Browse filesThis view is limited to 50 files because it contains too many changes. See raw diff
- app.py +40 -3
- data/gallery/retinopaty/No_Retinopatia/f1979147aad4.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/f233638e0e90.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/f252046c0fe6.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/f361060eda3e.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/f4874247ede6.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/f531232ecb55.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/f580566e27f5.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/f68690db78d3.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/f71333204618.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fa0c87bd75ce.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fa573163dd8b.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fa6f3d8bb1d5.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fa7fa797c650.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fa9bece586fc.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fa9f1bc03f21.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fb1b8771c70a.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fb767cea406c.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fb88783de055.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fb88d23fc5fe.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fbcbc81cf9be.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fbdc796290d4.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fbfa925506f6.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fc782722a50c.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fc898dfeb24f.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fc8fce67fbf8.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fca1a8738b8a.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fcc32dffd24d.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fce73678f650.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fd079d2e93a2.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fd0a70082e7c.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fd4c946c52bf.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fd87b6b2e664.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fdbc252813b1.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fdc685055659.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fe06dad6851c.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fe0e2dee1834.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fe3b0e50be78.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fe3f62695b2d.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/febfb20dc311.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fed5bb685832.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/fefded6bf135.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/ff03f74667df.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/ff1e940105f9.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/ff4832d55461.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/ff4955e76894.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/ff4cd992667b.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/ff59d44a70a7.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/ff631653374e.png +0 -0
- data/gallery/retinopaty/No_Retinopatia/ffc04fed30e6.png +0 -0
app.py
CHANGED
|
@@ -1,7 +1,9 @@
|
|
| 1 |
import gradio as gr
|
|
|
|
| 2 |
from modules.binary_classification import binary_classification as binary
|
| 3 |
from modules.image_classification import image_classification as image
|
| 4 |
from modules.multilabel_classification import multi_classification as multi
|
|
|
|
| 5 |
import cv2
|
| 6 |
|
| 7 |
def binary_classification(text):
|
|
@@ -20,6 +22,7 @@ def multi_classification(text):
|
|
| 20 |
raise gr.Error('Il testo è obbligatorio!')
|
| 21 |
|
| 22 |
def file_change(file):
|
|
|
|
| 23 |
image = cv2.imread(file)
|
| 24 |
return image
|
| 25 |
|
|
@@ -28,8 +31,16 @@ def image_classification(img):
|
|
| 28 |
return image(img)
|
| 29 |
except:
|
| 30 |
raise gr.Error('L\'immagine è obbligatoria!')
|
| 31 |
-
|
| 32 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 33 |
with gr.Blocks() as demo:
|
| 34 |
gr.Markdown("# NGT AI Platform")
|
| 35 |
with gr.Tab("binary classification"):
|
|
@@ -52,17 +63,43 @@ with gr.Blocks() as demo:
|
|
| 52 |
""")
|
| 53 |
with gr.Row():
|
| 54 |
file_selected = gr.FileExplorer(
|
| 55 |
-
|
| 56 |
file_count='single'
|
| 57 |
)
|
| 58 |
image_input = gr.Image()
|
| 59 |
-
image_output = gr.Label()
|
| 60 |
image_button = gr.Button("Submit")
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 61 |
|
| 62 |
binary_classification_button.click(binary_classification, inputs=binary_classification_input, outputs=binary_classification_output)
|
| 63 |
multi_classification_button.click(multi_classification, inputs=multi_classification_input, outputs=multi_classification_output)
|
| 64 |
image_button.click(image_classification, inputs=image_input, outputs=image_output)
|
|
|
|
| 65 |
|
| 66 |
file_selected.change(file_change, inputs=file_selected, outputs=image_input)
|
|
|
|
|
|
|
| 67 |
|
| 68 |
demo.launch(debug=True, share=True)
|
|
|
|
| 1 |
import gradio as gr
|
| 2 |
+
import tensorflow as tf
|
| 3 |
from modules.binary_classification import binary_classification as binary
|
| 4 |
from modules.image_classification import image_classification as image
|
| 5 |
from modules.multilabel_classification import multi_classification as multi
|
| 6 |
+
from modules.retina import predict_diabetic_retinopathy as retina_detector
|
| 7 |
import cv2
|
| 8 |
|
| 9 |
def binary_classification(text):
|
|
|
|
| 22 |
raise gr.Error('Il testo è obbligatorio!')
|
| 23 |
|
| 24 |
def file_change(file):
|
| 25 |
+
print(file)
|
| 26 |
image = cv2.imread(file)
|
| 27 |
return image
|
| 28 |
|
|
|
|
| 31 |
return image(img)
|
| 32 |
except:
|
| 33 |
raise gr.Error('L\'immagine è obbligatoria!')
|
|
|
|
| 34 |
|
| 35 |
+
def file_change_dr(file):
|
| 36 |
+
return file
|
| 37 |
+
|
| 38 |
+
def retina_classification(retina):
|
| 39 |
+
try:
|
| 40 |
+
return retina_detector(retina)
|
| 41 |
+
except:
|
| 42 |
+
raise gr.Error('L\'immagine è obbligatoria!')
|
| 43 |
+
|
| 44 |
with gr.Blocks() as demo:
|
| 45 |
gr.Markdown("# NGT AI Platform")
|
| 46 |
with gr.Tab("binary classification"):
|
|
|
|
| 63 |
""")
|
| 64 |
with gr.Row():
|
| 65 |
file_selected = gr.FileExplorer(
|
| 66 |
+
root_dir="data/gallery/xray",
|
| 67 |
file_count='single'
|
| 68 |
)
|
| 69 |
image_input = gr.Image()
|
| 70 |
+
image_output = [gr.Label()]
|
| 71 |
image_button = gr.Button("Submit")
|
| 72 |
+
with gr.Tab("Diabetic Retinopathy Detection"):
|
| 73 |
+
gr.Markdown("""
|
| 74 |
+
Questa interfaccia utilizza un modello di deep learning basato su rete neurale convoluzionale, in modo da predirre la presenza o meno di retinopatia diabetica a partire da un'immagine retinica
|
| 75 |
+
""")
|
| 76 |
+
with gr.Row():
|
| 77 |
+
with gr.Column(scale=1):
|
| 78 |
+
file_selected_dr = gr.FileExplorer(
|
| 79 |
+
root_dir="data/gallery/retinopaty",
|
| 80 |
+
file_count='single',
|
| 81 |
+
height=300
|
| 82 |
+
)
|
| 83 |
+
with gr.Column(scale=2):
|
| 84 |
+
with gr.Row():
|
| 85 |
+
image_i = gr.Image(
|
| 86 |
+
show_download_button=False,
|
| 87 |
+
show_share_button=False,
|
| 88 |
+
sources=["upload"]
|
| 89 |
+
)
|
| 90 |
+
with gr.Column():
|
| 91 |
+
image_o = [gr.Label(label="Diagnosi"), gr.Label(label="Probabilità di patologia")]
|
| 92 |
+
image_button_dr = gr.Button("Analizza")
|
| 93 |
+
|
| 94 |
+
|
| 95 |
|
| 96 |
binary_classification_button.click(binary_classification, inputs=binary_classification_input, outputs=binary_classification_output)
|
| 97 |
multi_classification_button.click(multi_classification, inputs=multi_classification_input, outputs=multi_classification_output)
|
| 98 |
image_button.click(image_classification, inputs=image_input, outputs=image_output)
|
| 99 |
+
image_button_dr.click(retina_classification, inputs=image_i, outputs=image_o)
|
| 100 |
|
| 101 |
file_selected.change(file_change, inputs=file_selected, outputs=image_input)
|
| 102 |
+
file_selected_dr.change(file_change_dr, inputs=file_selected_dr, outputs=image_i)
|
| 103 |
+
|
| 104 |
|
| 105 |
demo.launch(debug=True, share=True)
|
data/gallery/retinopaty/No_Retinopatia/f1979147aad4.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/f233638e0e90.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/f252046c0fe6.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/f361060eda3e.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/f4874247ede6.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/f531232ecb55.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/f580566e27f5.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/f68690db78d3.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/f71333204618.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fa0c87bd75ce.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fa573163dd8b.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fa6f3d8bb1d5.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fa7fa797c650.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fa9bece586fc.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fa9f1bc03f21.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fb1b8771c70a.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fb767cea406c.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fb88783de055.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fb88d23fc5fe.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fbcbc81cf9be.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fbdc796290d4.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fbfa925506f6.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fc782722a50c.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fc898dfeb24f.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fc8fce67fbf8.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fca1a8738b8a.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fcc32dffd24d.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fce73678f650.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fd079d2e93a2.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fd0a70082e7c.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fd4c946c52bf.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fd87b6b2e664.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fdbc252813b1.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fdc685055659.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fe06dad6851c.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fe0e2dee1834.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fe3b0e50be78.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fe3f62695b2d.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/febfb20dc311.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fed5bb685832.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/fefded6bf135.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/ff03f74667df.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/ff1e940105f9.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/ff4832d55461.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/ff4955e76894.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/ff4cd992667b.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/ff59d44a70a7.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/ff631653374e.png
ADDED
|
data/gallery/retinopaty/No_Retinopatia/ffc04fed30e6.png
ADDED
|