iris_detection.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 Detecção de Íris 2
#
# Este exemplo mostra como encontrar o direcionamento do olhar (detecção de pupila) após encontrar
# os olhos em uma imagem. Este script usa a função find_eyes que determina
# o ponto central da roi que deve conter uma pupila. Ele faz isso basicamente
# encontrando o centro da área mais escura na roi do olho, que é o centro da pupila.
#
# Nota: Este script não detecta um rosto primeiro; use-o com a lente telefoto.

import csi
import time
import image

csi0 = csi.CSI()
csi0.reset()
csi0.contrast(3)
csi0.gainceiling(16)
csi0.framesize(csi.VGA)
# Agrupa/recorta a imagem para 200x100, o que fornece mais detalhes com menos dados para processar
csi0.window((220, 190, 200, 100))
csi0.pixformat(csi.GRAYSCALE)

# Carrega o Haar Cascade
# Por padrão, isso usará todos os estágios; estágios menores são mais rápidos, porém menos precisos.
eyes_cascade = image.HaarCascade("/rom/haarcascade_eye.cascade", stages=24)
print(eyes_cascade)

# Relógio de FPS
clock = time.clock()

while True:
    clock.tick()
    # Captura o snapshot
    img = csi0.snapshot()
    # Encontra os olhos!
    # Nota: Um fator de escala menor reduz mais a imagem e detecta objetos menores.
    # Um limiar mais alto resulta em uma taxa de detecção maior, com mais falsos positivos.
    eyes = img.find_features(eyes_cascade, threshold=0.5, scale=1.5)

    # Encontra a íris
    for e in eyes:
        iris = img.find_eye(roi=e)
        img.draw_rectangle(e)
        img.draw_cross(iris)

    # Imprime o FPS.
    # Nota: O FPS real é maior, transmitir o FB torna mais lento.
    print(clock.fps())

results matching ""

    No results matching ""