ulab.py
# Questo lavoro è concesso in licenza MIT.
# Copyright (c) 2013-2023 OpenMV LLC. Tutti i diritti riservati.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Ulab è un modulo simile a numpy per MicroPython, pensato per semplificare e velocizzare le comuni
# operazioni matematiche sugli array. Questo esempio di base mostra media/deviazione standard su un'immagine.
#
# NOTA: gli ndarray causano facilmente la frammentazione dell'heap. Se si esaurisce la memoria,
# non si può fare molto al riguardo; abbassare la risoluzione potrebbe aiutare.
import csi
import time
from ulab import numpy as np
csi0 = csi.CSI()
csi0.reset() # Resetta e inizializza il sensore.
csi0.pixformat(csi.GRAYSCALE) # Imposta il formato pixel su RGB565 (o GRAYSCALE)
csi0.framesize(csi.QQVGA) # Imposta la dimensione del fotogramma su QVGA (320x240)
clock = time.clock() # Crea un oggetto clock per tracciare gli FPS.
while True:
img = csi0.snapshot() # Scatta una foto e restituisce l'immagine.
a = np.array(img, dtype=np.uint8)
print("mean: %d std:%d" % (np.mean(a), np.std(a)))