flood_fill.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
#
# Flood Fill
#
# Questo esempio mostra come riempire (flood fill) le aree dell'immagine.
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.RGB565) # oppure GRAYSCALE...
csi0.framesize(csi.QVGA) # oppure QQVGA...
csi0.snapshot(time=2000)
clock = time.clock()
while True:
clock.tick()
# seed_threshold controlla la differenza massima consentita tra
# il pixel iniziale e qualsiasi pixel riempito. È importante
# impostare questo valore in modo che il flood fill non riempia l'intera immagine.
# floating_threshold controlla la differenza massima consentita
# tra due pixel qualsiasi. Questo può facilmente riempire l'intera immagine
# anche con una soglia molto bassa.
# flood_fill riempirà i pixel che soddisfano entrambe le soglie.
# È possibile invertire ciò che viene riempito con "invert" e cancellare
# tutto tranne l'area riempita con "clear_background".
img = csi0.snapshot().flood_fill(
(csi0.width() // 2, csi0.height() // 2),
seed_threshold=0.05,
floating_threshold=0.05,
color=(255, 0, 0),
invert=False,
clear_background=False,
)
print(clock.fps())