import cv2
import sys

# Verifica si se han pasado suficientes argumentos
if len(sys.argv) < 3:
    print("Uso: preprocess_image.py <ruta_imagen_original> <ruta_imagen_procesada>")
    sys.exit(1)

# Recibir las rutas de la imagen original y la procesada
image_path = sys.argv[1]
output_path = sys.argv[2]

# Cargar la imagen
image = cv2.imread(image_path)

# Verificar si la imagen fue cargada correctamente
if image is None:
    print(f"Error: No se pudo cargar la imagen en {image_path}")
    sys.exit(1)

# Convertir a escala de grises
gray = cv2.cvtColor(image, cv2.COLOR_BGR2GRAY)

# Aplicar umbral para mejorar el contraste
_, thresh = cv2.threshold(gray, 150, 255, cv2.THRESH_BINARY)

# Guardar la imagen procesada
cv2.imwrite(output_path, thresh)
print(f"Imagen procesada guardada en {output_path}")
