flood_fill.py
# Dieses Werk ist unter der MIT-Lizenz lizenziert.
# Copyright (c) 2013-2023 OpenMV LLC. Alle Rechte vorbehalten.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Flood Fill
#
# Dieses Beispiel zeigt das Flood-Fill von Bereichen im Bild.
import csi
import time
csi0 = csi.CSI()
csi0.reset()
csi0.pixformat(csi.RGB565) # oder GRAYSCALE...
csi0.framesize(csi.QVGA) # oder QQVGA...
csi0.snapshot(time=2000)
clock = time.clock()
while True:
clock.tick()
# seed_threshold steuert die maximal zulässige Differenz zwischen
# dem Ausgangspixel und beliebigen gefüllten Pixeln. Es ist wichtig,
# dies so einzustellen, dass Flood Fill nicht das gesamte Bild füllt.
# floating_threshold steuert die maximal zulässige Differenz
# zwischen zwei beliebigen Pixeln. Dies kann leicht das gesamte Bild füllen,
# selbst bei einem sehr niedrigen Schwellenwert.
# flood_fill füllt Pixel, die beide Schwellenwerte erfüllen.
# Sie können umkehren, was gefüllt wird, mit "invert", und
# alles außer dem gefüllten Bereich mit "clear_background" löschen.
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())