grayscale_bilateral_filter.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
#
# Beispiel für Bilateral-Filter (Graustufen)
#
# Dieses Beispiel demonstriert die Verwendung des Bilateralfilters auf Graustufenbildern.
import csi
import time
csi0 = csi.CSI()
csi0.reset() # Kamerasensor initialisieren.
csi0.pixformat(csi.GRAYSCALE) # oder csi.RGB565
csi0.framesize(csi.QQVGA) # oder csi.QVGA (oder andere)
csi0.snapshot(time=2000) # Neue Einstellungen wirksam werden lassen.
clock = time.clock() # Verfolgt die FPS.
while True:
clock.tick() # Erfasst die vergangenen Millisekunden zwischen den Aufrufen von snapshots().
img = csi0.snapshot() # Nimmt ein Bild auf und gibt es zurück.
# color_sigma steuert, wie nahe Pixel farblich beieinander liegen müssen, um
# zusammen verwischt zu werden. Ein kleinerer Wert bedeutet, dass sie näher beieinander liegen müssen.
# Ein größerer Wert ist weniger streng.
# space_sigma steuert, wie nahe Pixel räumlich beieinander liegen müssen, um
# zusammen verwischt zu werden. Ein kleinerer Wert bedeutet, dass sie näher beieinander liegen müssen.
# Ein größerer Wert ist weniger streng.
# Den Kernel auf jedes Pixel des Bildes anwenden.
img.bilateral(3, color_sigma=0.1, space_sigma=1)
# Beachten Sie, dass der bilaterale Filter Bildfehler verursachen kann, wenn Sie
# color_sigma/space_sigma zu aggressiv eingestellt. Erhöhen Sie die Sigma-Werte, bis
# die Artefakte verschwinden, falls Sie welche sehen.
print(clock.fps()) # Hinweis: Ihre OpenMV Cam läuft etwa halb so schnell, während
# sie mit Ihrem Computer verbunden ist. Die FPS sollten sich erhöhen, sobald die Verbindung getrennt wird.