Spaces:
Sleeping
Sleeping
Merge remote-tracking branch 'origin/main'
Browse files# Conflicts:
# app.py
# density_gk.csv
# density_veytel.csv
.DS_Store
CHANGED
|
Binary files a/.DS_Store and b/.DS_Store differ
|
|
|
app.py
CHANGED
|
@@ -104,6 +104,7 @@ def new__cxr(max_dense_0, max_dense_1, max_dense_2):
|
|
| 104 |
label1.update(visible=False)
|
| 105 |
count = 1
|
| 106 |
image_id = 1
|
|
|
|
| 107 |
csv_content = ""
|
| 108 |
for row in csv_data:
|
| 109 |
csv_content += ",".join(row) + "\n"
|
|
@@ -129,17 +130,13 @@ def new__cxr(max_dense_0, max_dense_1, max_dense_2):
|
|
| 129 |
thresh1 = 50
|
| 130 |
thresh2 = 100
|
| 131 |
thresh3 = 150
|
| 132 |
-
scaled_thresh1 = thresh1 * max_val
|
| 133 |
-
scaled_thresh2 = thresh2 * max_val
|
| 134 |
-
scaled_thresh3 = thresh3 * max_val
|
| 135 |
-
dense_0 = np.where(textured_cxr
|
| 136 |
-
dense_1 = np.where(((textured_cxr
|
| 137 |
-
dense_2 = np.where(((textured_cxr
|
| 138 |
-
dense_3 = np.where(((textured_cxr
|
| 139 |
-
|
| 140 |
-
# Update the progress slider value
|
| 141 |
-
#progress_log.update(value=count)
|
| 142 |
-
|
| 143 |
return cxr, textured_cxr, lung_noised, dense_0, dense_1, dense_2, dense_3, count
|
| 144 |
|
| 145 |
|
|
@@ -210,7 +207,7 @@ with gr.Blocks() as demo:
|
|
| 210 |
dense_2 = np.where(((textured_cxr<scaled_thresh3) & (textured_cxr>=scaled_thresh2)), textured_cxr, 0)
|
| 211 |
dense_3 = np.where(((textured_cxr<255) & (textured_cxr>=scaled_thresh3)), textured_cxr, 0)
|
| 212 |
# open csv in append mode
|
| 213 |
-
with gr.Row():
|
| 214 |
with gr.Column():
|
| 215 |
im1 = gr.Image(cxr, label="Original CXR")
|
| 216 |
with gr.Column():
|
|
@@ -219,9 +216,7 @@ with gr.Blocks() as demo:
|
|
| 219 |
im3 = gr.Image(lung_noised, label="Synthetic CXR")
|
| 220 |
with gr.Column():
|
| 221 |
label1 = gr.Label("Completed! Please close window", visible=False)
|
| 222 |
-
|
| 223 |
-
button1 = gr.Button(value="Save & continue", visible=True)
|
| 224 |
-
|
| 225 |
with gr.Row():
|
| 226 |
with gr.Column():
|
| 227 |
dense0 = gr.Image(dense_0, label="Dense 0")
|
|
@@ -234,25 +229,32 @@ with gr.Blocks() as demo:
|
|
| 234 |
with gr.Row():
|
| 235 |
min_dense_1 = gr.Textbox(value='50', label="Min")
|
| 236 |
max_dense_1 = gr.Slider(0, 255, value=100, step = 1, label="Max")
|
| 237 |
-
max_dense_0.change(set_min_dense_1, inputs=max_dense_0, outputs=[min_dense_1, dense0, dense1])
|
| 238 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 239 |
with gr.Column():
|
| 240 |
dense2 = gr.Image(dense_2, label="Dense 2")
|
| 241 |
with gr.Row():
|
| 242 |
min_dense_2 = gr.Textbox(value='100', label="Min")
|
| 243 |
max_dense_2 = gr.Slider(0, 255, value=150, step = 1, label="Max")
|
| 244 |
-
max_dense_1.change(set_min_dense_2, inputs=max_dense_1, outputs=[min_dense_2, dense1, dense2])
|
| 245 |
|
| 246 |
with gr.Column():
|
| 247 |
dense3 = gr.Image(dense_3, label="Dense 3")
|
| 248 |
with gr.Row():
|
| 249 |
min_dense_3 = gr.Textbox(value='150', label="Min")
|
| 250 |
max_dense_3 = gr.Textbox(value='255', label="Max")
|
| 251 |
-
max_dense_2.change(set_min_dense_3, inputs=max_dense_2, outputs=[min_dense_3, dense2, dense3])
|
| 252 |
|
| 253 |
-
|
| 254 |
-
|
| 255 |
|
|
|
|
|
|
|
| 256 |
if __name__ == "__main__":
|
| 257 |
demo.launch(auth=check_auth)
|
| 258 |
|
|
|
|
| 104 |
label1.update(visible=False)
|
| 105 |
count = 1
|
| 106 |
image_id = 1
|
| 107 |
+
index = 1
|
| 108 |
csv_content = ""
|
| 109 |
for row in csv_data:
|
| 110 |
csv_content += ",".join(row) + "\n"
|
|
|
|
| 130 |
thresh1 = 50
|
| 131 |
thresh2 = 100
|
| 132 |
thresh3 = 150
|
| 133 |
+
scaled_thresh1 = thresh1 * max_val/255
|
| 134 |
+
scaled_thresh2 = thresh2 * max_val/255
|
| 135 |
+
scaled_thresh3 = thresh3 * max_val/255
|
| 136 |
+
dense_0 = np.where(textured_cxr<scaled_thresh1, textured_cxr, 0)
|
| 137 |
+
dense_1 = np.where(((textured_cxr<scaled_thresh2) & (textured_cxr>=scaled_thresh1)), textured_cxr, 0)
|
| 138 |
+
dense_2 = np.where(((textured_cxr<scaled_thresh3) & (textured_cxr>=scaled_thresh2)), textured_cxr, 0)
|
| 139 |
+
dense_3 = np.where(((textured_cxr<255) & (textured_cxr>=scaled_thresh3)), textured_cxr, 0)
|
|
|
|
|
|
|
|
|
|
|
|
|
| 140 |
return cxr, textured_cxr, lung_noised, dense_0, dense_1, dense_2, dense_3, count
|
| 141 |
|
| 142 |
|
|
|
|
| 207 |
dense_2 = np.where(((textured_cxr<scaled_thresh3) & (textured_cxr>=scaled_thresh2)), textured_cxr, 0)
|
| 208 |
dense_3 = np.where(((textured_cxr<255) & (textured_cxr>=scaled_thresh3)), textured_cxr, 0)
|
| 209 |
# open csv in append mode
|
| 210 |
+
with gr.Row():
|
| 211 |
with gr.Column():
|
| 212 |
im1 = gr.Image(cxr, label="Original CXR")
|
| 213 |
with gr.Column():
|
|
|
|
| 216 |
im3 = gr.Image(lung_noised, label="Synthetic CXR")
|
| 217 |
with gr.Column():
|
| 218 |
label1 = gr.Label("Completed! Please close window", visible=False)
|
| 219 |
+
|
|
|
|
|
|
|
| 220 |
with gr.Row():
|
| 221 |
with gr.Column():
|
| 222 |
dense0 = gr.Image(dense_0, label="Dense 0")
|
|
|
|
| 229 |
with gr.Row():
|
| 230 |
min_dense_1 = gr.Textbox(value='50', label="Min")
|
| 231 |
max_dense_1 = gr.Slider(0, 255, value=100, step = 1, label="Max")
|
| 232 |
+
max_dense_0.change(set_min_dense_1, inputs=max_dense_0, outputs=[min_dense_1, dense0, dense1]).then(set_min_dense_1, inputs=max_dense_0, outputs=[min_dense_1, dense0, dense1])
|
| 233 |
|
| 234 |
+
with gr.Column():
|
| 235 |
+
progress_log = gr.Slider(1, 30, value=1, step = 1, label="progress")
|
| 236 |
+
button1 = gr.Button(value="Save & continue", visible=True)
|
| 237 |
+
|
| 238 |
+
with gr.Row():
|
| 239 |
with gr.Column():
|
| 240 |
dense2 = gr.Image(dense_2, label="Dense 2")
|
| 241 |
with gr.Row():
|
| 242 |
min_dense_2 = gr.Textbox(value='100', label="Min")
|
| 243 |
max_dense_2 = gr.Slider(0, 255, value=150, step = 1, label="Max")
|
| 244 |
+
max_dense_1.change(set_min_dense_2, inputs=max_dense_1, outputs=[min_dense_2, dense1, dense2]).then(set_min_dense_2, inputs=max_dense_1, outputs=[min_dense_2, dense1, dense2])
|
| 245 |
|
| 246 |
with gr.Column():
|
| 247 |
dense3 = gr.Image(dense_3, label="Dense 3")
|
| 248 |
with gr.Row():
|
| 249 |
min_dense_3 = gr.Textbox(value='150', label="Min")
|
| 250 |
max_dense_3 = gr.Textbox(value='255', label="Max")
|
| 251 |
+
max_dense_2.change(set_min_dense_3, inputs=max_dense_2, outputs=[min_dense_3, dense2, dense3]).then(set_min_dense_3, inputs=max_dense_2, outputs=[min_dense_3, dense2, dense3])
|
| 252 |
|
| 253 |
+
with gr.Column(): # adding additional for better visualization
|
| 254 |
+
im3_1 = gr.Image(lung_noised, label="Synthetic CXR")
|
| 255 |
|
| 256 |
+
button1.click(new__cxr, inputs = [max_dense_0, max_dense_1, max_dense_2], outputs = [im1, im2, im3, im3_1, dense0, dense1, dense2, dense3, progress_log])
|
| 257 |
+
button1.click(change_vis,outputs=[label1, button1])
|
| 258 |
if __name__ == "__main__":
|
| 259 |
demo.launch(auth=check_auth)
|
| 260 |
|