on_disk_structural_similarity.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 Similaridade Estrutural (SSIM)
#
# Nota: Você precisará de um cartão SD para executar este exemplo.
#
# Este exemplo mostra como usar o algoritmo SSIM na sua OpenMV Cam
# para detectar diferenças entre duas imagens. O algoritmo SSIM compara
# blocos de 8x8 pixels entre duas imagens para determinar uma pontuação
# de similaridade entre as duas imagens.

import csi
import os
import time

# É provável que a imagem tenha mudado se sim.min for menor que este valor.
MIN_TRIGGER_THRESHOLD = -0.4

csi0 = csi.CSI()
csi0.reset()  # Reinicia e inicializa o sensor.
csi0.pixformat(csi.RGB565)  # ou csi.RGB565
csi0.framesize(csi.QVGA)  # ou csi.QQVGA (ou outras)
csi0.snapshot(time=2000)  # Aguarda as novas configurações fazerem efeito.
csi0.auto_whitebal(False)  # Desativa o balanço de branco.
clock = time.clock()  # Rastreia FPS.

if "temp" not in os.listdir():
    os.mkdir("temp")  # Cria um diretório temporário

print("About to save background image...")
csi0.snapshot(time=2000)  # Dá tempo para o usuário se preparar.
csi0.snapshot().save("temp/bg.bmp")
print("Saved background image!")

while True:
    clock.tick()  # Rastreia os milissegundos decorridos entre snapshots().
    img = csi0.snapshot()  # Tira uma foto e retorna a imagem.
    sim = img.get_similarity("temp/bg.bmp")
    change = "- Change -" if sim.min < MIN_TRIGGER_THRESHOLD else "- No Change -"

    print(clock.fps(), change, sim)

results matching ""

    No results matching ""