Cómo dividir una imagen en múltiples piezas en Python – Resuelto

Introducción

En este artículo aprenderemos cómo dividir una imagen en múltiples piezas utilizando el lenguaje de programación Python. Este proceso puede ser útil en diversas aplicaciones, como la segmentación de imágenes para análisis de datos o la creación de mosaicos.

Librerías necesarias

Para realizar esta tarea, utilizaremos la librería Python Imaging Library (PIL) que nos permitirá cargar y manipular imágenes. También usaremos la librería NumPy para trabajar con matrices de forma eficiente.

Código de ejemplo

A continuación, se presenta un ejemplo de código en Python que divide una imagen en 4 piezas cuadradas:

from PIL import Image

import numpy as np

# Cargar la imagen

img = Image.open('imagen.jpg')

# Convertir la imagen en un array NumPy

img_array = np.array(img)

# Obtener las dimensiones de la imagen

height, width, _ = img_array.shape

# Dividir la imagen en 4 piezas

pieces = []

for i in range(2):

for j in range(2):

piece = img_array[int(i*height/2):int((i+1)*height/2), int(j*width/2):int((j+1)*width/2)]

pieces.append(piece)

# Guardar las piezas como imágenes

for idx, piece in enumerate(pieces):

piece_img = Image.fromarray(piece)

piece_img.save(f'piece{idx}.jpg')

Este código carga una imagen llamada ‘imagen.jpg’, la divide en 4 piezas cuadradas y guarda cada pieza como una imagen separada.

Conclusiones

Dividir una imagen en múltiples piezas en Python es una tarea sencilla con las herramientas adecuadas. En este artículo hemos utilizado las librerías PIL y NumPy para lograr este objetivo. Este proceso puede ser adaptado y ampliado para dividir imágenes en diferentes formas y tamaños según las necesidades del proyecto.