ulab.py
# Esta obra está licenciada bajo la licencia MIT.
# Copyright (c) 2013-2023 OpenMV LLC. Todos los derechos reservados.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Ulab es un módulo similar a numpy para micropython, pensado para simplificar y acelerar las
# operaciones matemáticas comunes en arreglos. Este ejemplo básico muestra la media y la desviación estándar de una imagen.
#
# NOTA: los ndarrays hacen que el heap se fragmente fácilmente. Si se queda sin memoria,
# no hay mucho que se pueda hacer al respecto; reducir la resolución podría ayudar.
import csi
import time
from ulab import numpy as np
csi0 = csi.CSI()
csi0.reset() # Restablecer e inicializar el sensor.
csi0.pixformat(csi.GRAYSCALE) # Establecer el formato de píxel a RGB565 (o GRAYSCALE)
csi0.framesize(csi.QQVGA) # Establecer el tamaño de fotograma a QVGA (320x240)
clock = time.clock() # Crear un objeto clock para registrar los FPS.
while True:
img = csi0.snapshot() # Tomar una foto y devolver la imagen.
a = np.array(img, dtype=np.uint8)
print("mean: %d std:%d" % (np.mean(a), np.std(a)))