Generation

generate functionWed, 18 Dec 2024

creame un programa donde pueda importar una foto con filtros

Aquí te muestro un ejemplo de cómo crear un programa en Python que permite importar una foto y aplicarle diferentes filtros utilizando la biblioteca OpenCV. **Requisitos previos** * Instalar OpenCV utilizando pip: `pip install opencv-python` * Instalar numpy utilizando pip: `pip install numpy` **Código** ```python import cv2 import numpy as np # Función para aplicar un filtro a la imagen def aplicar_filtro(imagen, filtro): if filtro == 'gris': return cv2.cvtColor(imagen, cv2.COLOR_BGR2GRAY) elif filtro == 'negativo': return cv2.bitwise_not(imagen) elif filtro == 'blanco y negro': return cv2.cvtColor(imagen, cv2.COLOR_BGR2GRAY) elif filtro == 'sepia': return cv2.convertScaleAbs(imagen, alpha=1.5, beta=0) elif filtro == 'negativo invertido': return cv2.bitwise_not(imagen) elif filtro == 'blanco y negro invertido': return cv2.bitwise_not(cv2.cvtColor(imagen, cv2.COLOR_BGR2GRAY)) else: return imagen # Función para abrir la imagen def abrir_imagen(): return cv2.imread('imagen.jpg') # Función para mostrar la imagen def mostrar_imagen(imagen): cv2.imshow('Imagen', imagen) cv2.waitKey(0) cv2.destroyAllWindows() # Función principal def main(): # Abrir la imagen imagen = abrir_imagen() # Mostrar la imagen original print("Imagen original:") mostrar_imagen(imagen) # Aplicar filtros filtros = ['gris', 'negativo', 'blanco y negro', 'sepia', 'negativo invertido', 'blanco y negro invertido'] for filtro in filtros: imagen_filtrada = aplicar_filtro(imagen, filtro) print(f"Filtro: {filtro}") mostrar_imagen(imagen_filtrada) if __name__ == '__main__': main() ``` **Explicación** * La función `aplicar_filtro` recibe una imagen y un filtro como parámetros, y devuelve la imagen con el filtro aplicado. * La función `abrir_imagen` abre la imagen utilizando OpenCV. * La función `mostrar_imagen` muestra la imagen utilizando OpenCV. * La función `main` es la función principal del programa, que abre la imagen, muestra la imagen original, aplica los filtros y muestra las imágenes filtradas. **Ejemplo de uso** * Guarda el código en un archivo llamado `filtro.py`. * Crea un archivo llamado `imagen.jpg` en la misma carpeta que el archivo `filtro.py`. * Ejecuta el programa utilizando Python: `python filtro.py`. * La imagen original se mostrará en la ventana de OpenCV. * Los filtros se aplicarán a la imagen original y se mostrarán en la ventana de OpenCV. Recuerda que debes tener OpenCV y numpy instalados en tu sistema para ejecutar este programa.

Questions about programming?Chat with your personal AI assistant