kebincontreras commited on
Commit
ceddb8d
·
verified ·
1 Parent(s): e9108e3
Files changed (1) hide show
  1. app.py +69 -0
app.py ADDED
@@ -0,0 +1,69 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+
3
+ def app():
4
+ # Variables para ajustar el tamaño de las imágenes
5
+ image_scaler = 0.55 # Cambia este valor para ajustar el tamaño de las imágenes
6
+ image_width = int(600 * image_scaler) # Ancho de la imagen
7
+ image_height = int(200 * image_scaler) # Alto de la imagen
8
+
9
+ with gr.Blocks(css=f"""
10
+ .fixed-size-image img {{
11
+ width: {image_width}px;
12
+ height: {image_height}px;
13
+ object-fit: cover;
14
+ }}
15
+ .gr-row {{
16
+ display: flex;
17
+ justify-content: left;
18
+ align-items: center;
19
+ }}
20
+ .gr-column {{
21
+ padding: 0 !important;
22
+ margin: 0 !important;
23
+ flex: 0 0 auto !important;
24
+ width: {image_width}px !important;
25
+ }}
26
+ """) as demo:
27
+ gr.Markdown("## High Dynamic Range Modulo Imaging for Robust Object Detection in Autonomous Driving")
28
+
29
+ gr.Markdown("### Authors:")
30
+
31
+ with gr.Row():
32
+ with gr.Column(elem_classes="gr-column"):
33
+ gr.Image("autores.png", show_download_button=False, elem_classes="fixed-size-image")
34
+ gr.Markdown("Kebin Contreras *, Brayan Monrroy ~ and Jorge Bacca ~")
35
+ gr.Markdown("*Department of Physics, Universidad del Cauca, ~Department of Computer Engineer, Universidad Industrial de Santander ")
36
+
37
+
38
+ #with gr.Column():
39
+ #gr.Markdown("*Department of Physics, Universidad del Cauca ")
40
+ #gr.Markdown("~Department of Computer Engineer, Universidad Industrial de Santander ")
41
+
42
+ # Agregar la funcionalidad original de imágenes y controles
43
+ with gr.Row():
44
+ with gr.Column():
45
+ image = gr.Image(type="pil", label="Upload Image")
46
+ model_id = gr.Dropdown(label="Model", choices=["yolov10n", "yolov10s", "yolov10m", "yolov10b", "yolov10l", "yolov10x"], value="yolov10x")
47
+ image_size = gr.Slider(label="Image Size", minimum=320, maximum=1280, step=32, value=640)
48
+ conf_threshold = gr.Slider(label="Confidence Threshold", minimum=0.0, maximum=1.0, step=0.01, value=0.85)
49
+ correction = gr.Slider(label="Correction Factor", minimum=0, maximum=1.0, step=0.1, value=1.0)
50
+ sat_factor = gr.Slider(label="Saturation Factor", minimum=1.0, maximum=5.0, step=0.1, value=2.0)
51
+ kernel_size = gr.Slider(label="Blur Kernel Size", minimum=1, maximum=7, step=1, value=7)
52
+ DO = gr.Radio(label="DO", choices=["1", "2"], value="1")
53
+ t = gr.Slider(label="t", minimum=0.0, maximum=1.0, step=0.1, value=0.5)
54
+ vertical = gr.Radio(label="Vertical", choices=["True", "False"], value="True")
55
+ process_button = gr.Button("Process Image")
56
+
57
+ with gr.Column():
58
+ output_original = gr.Image(label="Original + blur")
59
+ output_clip = gr.Image(label="Clipped ")
60
+ output_wrap = gr.Image(label="Wrapped")
61
+ output_recons = gr.Image(label="Reconstructed")
62
+ metrics_clip = gr.Textbox(label="Metrics for Clipped Image")
63
+ metrics_wrap = gr.Textbox(label="Metrics for Wrapped Image")
64
+ metrics_recons = gr.Textbox(label="Metrics for Reconstructed Image")
65
+
66
+ return demo
67
+
68
+ if __name__ == "__main__":
69
+ app().launch()