Transformaciones Básicas
OpenCV (Open Source Computer Vision Library) es una potente biblioteca de código abierto diseñada para la visión por computadora y el procesamiento de imágenes en tiempo real. Proporciona herramientas para manipular imágenes, detectar objetos e incluso trabajar con modelos de aprendizaje profundo.
Lectura y visualización de una imagen
Antes de realizar transformaciones, primero se debe cargar y mostrar una imagen utilizando OpenCV. La foto ya ha sido importada. Sin embargo, en su computadora local, para leer y mostrar la foto de manera sencilla, debe utilizar:
import cv2
image = cv2.imread('path/to/image.jpg')
cv2.imshow('Image title', image)
Redimensionamiento de una imagen
El redimensionamiento es útil para escalar imágenes hacia arriba o hacia abajo manteniendo la relación de aspecto (parámetros fx y fy),
donde fx y fy definen el factor de escala para el ancho y la altura.
resized_image = cv2.resize(image, fx=0.7, fy=0.5)
También es posible especificar dimensiones exactas de píxeles (parámetro dsize),
donde dsize es la forma de salida (new_y, new_x).
resized = cv2.resize(image, (100, 100))
Rotación de una imagen
Para rotar una imagen por un ángulo específico, se utiliza cv2.getRotationMatrix2D() y cv2.warpAffine().
cv2.getRotationMatrix2D(center, angle, scale)define la matriz de rotación;cv2.warpAffine(image, matrix, output_size)aplica la transformación.
height, width = image.shape[:2]
centre = (width // 2, height // 2)
rotation_matrix = cv2.getRotationMatrix2D(centre, 180, 1)
rotated = cv2.warpAffine(image, rotation_matrix, (width, height))
Recorte de una imagen
El recorte extrae una región específica de una imagen. Se realiza utilizando el corte de NumPy.
La sintaxis image[start_y:end_y, start_x:end_x] selecciona una región de interés.
cropped = image[450:500, 250:350]
Swipe to start coding
Se proporciona una image:
- Redimensionar la imagen a un tamaño de
(100, 100)y almacenarla en la variableresized; - Extraer
heightywidthde la imagen; - Calcular el
centera partir deheightywidth; - Crear la matriz de rotación y almacenarla en la variable
rotation_matrix; - Rotar la imagen 90 grados en sentido horario y almacenarla en la variable
rotated; - Recortar la región X: 250-600 y Y: 100-450 de la imagen y almacenarla en la variable
cropped.
Solución
¡Gracias por tus comentarios!
single
Pregunte a AI
Pregunte a AI
Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla
Can you explain what each OpenCV function does in these examples?
How do I choose the right parameters for resizing or rotating an image?
Can you show more examples of image transformations?
Genial!
Completion tasa mejorada a 3.45
Transformaciones Básicas
Desliza para mostrar el menú
OpenCV (Open Source Computer Vision Library) es una potente biblioteca de código abierto diseñada para la visión por computadora y el procesamiento de imágenes en tiempo real. Proporciona herramientas para manipular imágenes, detectar objetos e incluso trabajar con modelos de aprendizaje profundo.
Lectura y visualización de una imagen
Antes de realizar transformaciones, primero se debe cargar y mostrar una imagen utilizando OpenCV. La foto ya ha sido importada. Sin embargo, en su computadora local, para leer y mostrar la foto de manera sencilla, debe utilizar:
import cv2
image = cv2.imread('path/to/image.jpg')
cv2.imshow('Image title', image)
Redimensionamiento de una imagen
El redimensionamiento es útil para escalar imágenes hacia arriba o hacia abajo manteniendo la relación de aspecto (parámetros fx y fy),
donde fx y fy definen el factor de escala para el ancho y la altura.
resized_image = cv2.resize(image, fx=0.7, fy=0.5)
También es posible especificar dimensiones exactas de píxeles (parámetro dsize),
donde dsize es la forma de salida (new_y, new_x).
resized = cv2.resize(image, (100, 100))
Rotación de una imagen
Para rotar una imagen por un ángulo específico, se utiliza cv2.getRotationMatrix2D() y cv2.warpAffine().
cv2.getRotationMatrix2D(center, angle, scale)define la matriz de rotación;cv2.warpAffine(image, matrix, output_size)aplica la transformación.
height, width = image.shape[:2]
centre = (width // 2, height // 2)
rotation_matrix = cv2.getRotationMatrix2D(centre, 180, 1)
rotated = cv2.warpAffine(image, rotation_matrix, (width, height))
Recorte de una imagen
El recorte extrae una región específica de una imagen. Se realiza utilizando el corte de NumPy.
La sintaxis image[start_y:end_y, start_x:end_x] selecciona una región de interés.
cropped = image[450:500, 250:350]
Swipe to start coding
Se proporciona una image:
- Redimensionar la imagen a un tamaño de
(100, 100)y almacenarla en la variableresized; - Extraer
heightywidthde la imagen; - Calcular el
centera partir deheightywidth; - Crear la matriz de rotación y almacenarla en la variable
rotation_matrix; - Rotar la imagen 90 grados en sentido horario y almacenarla en la variable
rotated; - Recortar la región X: 250-600 y Y: 100-450 de la imagen y almacenarla en la variable
cropped.
Solución
¡Gracias por tus comentarios!
single