tomaseo2022 commited on
Commit
f508a4a
1 Parent(s): 8ce4034

Create app.py

Browse files
Files changed (1) hide show
  1. app.py +47 -0
app.py ADDED
@@ -0,0 +1,47 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import gradio as gr
2
+ import os
3
+ os.system("pip install opencv-python")
4
+ import cv2
5
+ import numpy as np
6
+
7
+ def image_to_silhouette(image):
8
+ # Convertir imagen a escala de grises
9
+ gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)
10
+
11
+ # Aplicar bordes
12
+ edges = cv2.Canny(gray, 50, 150)
13
+
14
+ # Crear m谩scara con forma de silueta negra
15
+ silhouette = np.zeros_like(image)
16
+ silhouette[:,:,0] = edges
17
+ silhouette[:,:,1] = edges
18
+ silhouette[:,:,2] = edges
19
+
20
+ return silhouette
21
+
22
+ # Crear interfaz de usuario con Gradio
23
+ interface = gr.Interface(fn=image_to_silhouette, inputs="image", outputs="image")
24
+
25
+ # A帽adir cajas de texto y bot贸n
26
+ input_box = interface.inputs["image"]
27
+ output_box = interface.outputs["image"]
28
+ convert_button = gr.Button("Convertir")
29
+
30
+ # Mostrar interfaz
31
+ app = gr.App(title="Silueta", layout=gr.Layout(convert_button))
32
+ display(app)
33
+
34
+ # Funci贸n para manejar el evento de clic del bot贸n
35
+ def on_button_clicked(sender):
36
+ # Obtener imagen de la caja de entrada
37
+ image = input_box.value
38
+
39
+ # Convertir imagen a silueta y mostrar en la caja de salida
40
+ silhouette = image_to_silhouette(image)
41
+ output_box.value = silhouette
42
+
43
+ # Asignar funci贸n al evento de clic del bot贸n
44
+ convert_button.on_click(on_button_clicked)
45
+
46
+ # Lanzar aplicaci贸n de Gradio
47
+ gr.app(app)