mode_filter.py
# Este trabalho está licenciado sob a licença MIT.
# Copyright (c) 2013-2023 OpenMV LLC. Todos os direitos reservados.
# https://github.com/openmv/openmv/blob/master/LICENSE
#
# Exemplo de Filtro de Moda
#
# Este exemplo demonstra a filtragem por moda. A filtragem por moda é uma operação
# altamente não linear que substitui cada pixel pela moda da vizinhança NxN
# de pixels ao seu redor. Evite usar o filtro de moda em imagens RGB565. Isso
# causará artefatos nas bordas da imagem...
import csi
import time
csi0 = csi.CSI()
csi0.reset() # Inicializa o sensor da câmera.
csi0.pixformat(csi.GRAYSCALE) # ou csi.RGB565
csi0.framesize(csi.QQVGA) # ou csi.QVGA (ou outras)
csi0.snapshot(time=2000) # Aguarda as novas configurações fazerem efeito.
clock = time.clock() # Rastreia FPS.
while True:
clock.tick() # Rastreia os milissegundos decorridos entre snapshots().
img = csi0.snapshot() # Tira uma foto e retorna a imagem.
# O único argumento do filtro de mediana é o tamanho do kernel, que pode ser
# 0, 1 ou 2 para um kernel 1x1, 3x3 ou 5x5, respectivamente.
img.mode(1)
print(clock.fps()) # Nota: Sua OpenMV Cam roda cerca de metade da velocidade enquanto
# conectada ao seu computador. O FPS deve aumentar após a desconexão.