tincri commited on
Commit
f29f56f
·
1 Parent(s): d6f3f26

update imagen con ruido

Browse files
Files changed (1) hide show
  1. app.py +9 -8
app.py CHANGED
@@ -16,23 +16,23 @@ def add_gaussian_noise(image, noise_factor=0.2):
16
  return noisy_image
17
 
18
  def denoise_and_generate(image, num_images):
19
- image = np.array(image) / 255.0
20
- image = tf.image.resize(image, (224, 224)) # Redimensionar la imagen
21
- noisy_image = add_gaussian_noise(np.expand_dims(image, axis=0))
22
 
23
  denoised_image = autoencoder.predict(noisy_image).squeeze()
24
- denoised_image = (denoised_image * 255).astype(np.uint8)
25
 
 
 
26
  # Genera imágenes con el VAE
27
  random_latent_vectors = np.random.normal(size=(num_images, latent_dim))
28
  generated_images = decoder.predict(random_latent_vectors)
29
 
30
  # Prepara las imágenes para devolverlas
31
- outputs = [denoised_image] + [generated_images[i].squeeze() for i in range(num_images)]
32
 
33
  return outputs
34
 
35
-
36
  # Define la interfaz
37
  inputs = [
38
  gr.Image(label="Imagen de Entrada"),
@@ -40,6 +40,7 @@ inputs = [
40
  ]
41
 
42
  outputs = [
 
43
  gr.Image(label="Imagen Reconstruida (DAE)"),
44
  ] + [
45
  gr.Image(label=f"Imagen Generada {i+1} (VAE)") for i in range(2)
@@ -51,9 +52,9 @@ interface = gr.Interface(
51
  inputs=inputs,
52
  outputs=outputs,
53
  title="Interfaz Interactiva para DAE y VAE",
54
- description="Sube una imagen para denoising con DAE y genera imágenes nuevas con VAE."
55
  )
56
 
57
  # Lanza la aplicación
58
  if __name__ == "__main__":
59
- interface.launch(share=True)
 
16
  return noisy_image
17
 
18
  def denoise_and_generate(image, num_images):
19
+ image = np.array(image) / 255.0 # Normaliza la imagen
20
+ noisy_image = add_gaussian_noise(np.expand_dims(image, axis=0)) # Añade ruido
 
21
 
22
  denoised_image = autoencoder.predict(noisy_image).squeeze()
23
+ denoised_image = (denoised_image * 255).astype(np.uint8) # Escala a 0-255
24
 
25
+ noisy_image_display = (noisy_image.squeeze() * 255).astype(np.uint8) # Escala a 0-255 para visualizar
26
+
27
  # Genera imágenes con el VAE
28
  random_latent_vectors = np.random.normal(size=(num_images, latent_dim))
29
  generated_images = decoder.predict(random_latent_vectors)
30
 
31
  # Prepara las imágenes para devolverlas
32
+ outputs = [noisy_image_display, denoised_image] + [generated_images[i].squeeze() for i in range(num_images)]
33
 
34
  return outputs
35
 
 
36
  # Define la interfaz
37
  inputs = [
38
  gr.Image(label="Imagen de Entrada"),
 
40
  ]
41
 
42
  outputs = [
43
+ gr.Image(label="Imagen con Ruido"),
44
  gr.Image(label="Imagen Reconstruida (DAE)"),
45
  ] + [
46
  gr.Image(label=f"Imagen Generada {i+1} (VAE)") for i in range(2)
 
52
  inputs=inputs,
53
  outputs=outputs,
54
  title="Interfaz Interactiva para DAE y VAE",
55
+ description="Sube una imagen para agregar ruido, reconstruir con DAE y generar imágenes nuevas con VAE."
56
  )
57
 
58
  # Lanza la aplicación
59
  if __name__ == "__main__":
60
+ interface.launch(share=True)