Tabla de contenido
En esta sección, trabajarás con una imagen de un avión en fondo homogéneo para realizar un análisis estructurado en OpenCV en Python.
Si tu imagen esta en web.p cambia a .jpg utilizando pyhton y openCV desde Vscode
import cv2
# Cargar la imagen en formato WEBP
imagen = cv2.imread("airplane.webp")
# Guardar la imagen en formato JPG con calidad 95
cv2.imwrite("airplane.jpg", imagen, [cv2.IMWRITE_JPEG_QUALITY, 95])
print("Conversión completada: imagen.webp → imagen_convertida.jpg")
0️⃣ Carga y visualización de la imagen
Primero, cargamos la imagen en escala de grises utilizando OpenCV. Es importante verificar que la imagen se haya cargado correctamente antes de continuar con el procesamiento.
import cv2
import numpy as np
import matplotlib.pyplot as plt
# Cargar la imagen en escala de grises
img_path = 'imagen.jpg'
img_gray = cv2.imread(img_path, cv2.IMREAD_GRAYSCALE)
# Verificar si la imagen se cargó correctamente
if img_gray is None:
print("Error: No se pudo cargar la imagen. Verifica la ruta del archivo.")
else:
# Mostrar la imagen en escala de grises
plt.imshow(img_gray, cmap='gray')
plt.title('Imagen en escala de grises')
plt.axis('off') # Ocultar los ejes para una visualización más limpia
plt.show()
1️⃣ Obtener información de la imagen
Antes de realizar cualquier tipo de procesamiento, es fundamental conocer algunas características de la imagen, como sus dimensiones y los valores de intensidad de gris.
# Obtener dimensiones de la imagen y valores de intensidad
img_gray_shape = img_gray.shape # Dimensiones de la imagen (alto, ancho)
img_gray_min = img_gray.min() # Valor mínimo de gris en la imagen
img_gray_max = img_gray.max() # Valor máximo de gris en la imagen
# Imprimir la información obtenida
print(f'Dimensiones de la imagen: {img_gray_shape}')
print(f'Valor mínimo de gris: {img_gray_min}')
print(f'Valor máximo de gris: {img_gray_max}')
El preprocesamiento es una etapa crucial en el análisis de imágenes. En este caso, aplicaremos un filtro de suavizado (filtro Gaussiano) para reducir el ruido antes de la segmentación.