1. Início rápido

OpenMV Cam

Bem-vindo – estamos animados em apresentar a você a OpenMV Cam, uma câmera pequena e programável que roda Python diretamente no dispositivo. Escreva algumas linhas de código, pressione executar e a câmera começa a enxergar: detectando rostos, rastreando cores, lendo tags, seguindo linhas – sem um PC no circuito e sem uma configuração pesada para enfrentar antes.

Este guia de início rápido vai deixá-lo funcionando em poucos minutos: você instalará a IDE, conectará sua câmera e executará um detector de rostos ao vivo como seu primeiro script.

1.1. Instale o OpenMV IDE

O OpenMV IDE é o aplicativo de desktop para escrever scripts, executá-los na câmera e acompanhar os resultados ao vivo. Baixe-o para Windows, macOS ou Linux aqui e então instale-o:

  • Windows – execute o instalador. Ele instala a IDE junto com os drivers USB da câmera; siga as instruções padrão.

  • macOS – abra o .dmg e arraste o OpenMV IDE para a pasta Aplicativos.

  • Linux – execute chmod +x openmv-ide-*.run && ./openmv-ide-*.run e siga as instruções do instalador.

Nota

Para configurações automatizadas ou sem interface gráfica, os instaladores também rodam a partir da linha de comando com flags de instalação silenciosa. Consulte o README do openmv-ide para os comandos exatos por plataforma.

1.2. Conecte sua câmera

Conecte a câmera ao seu computador com um cabo de dados USB. Aguarde sua unidade ser montada e o LED azul começar a piscar, então clique no botão de conexão – o ícone de plugue na parte inferior da barra de ferramentas.

Na primeira vez que você conectar, a IDE compara o firmware da câmera com a versão que ela traz embutida e se oferece para atualizá-lo. Aceite a solicitação para gravar o firmware mais recente; isso leva alguns segundos, e a IDE se reconecta sozinha quando termina.

Se a câmera não aparecer, ou se você quiser os detalhes do que a conexão e a atualização fazem, consulte Conectando uma câmera e Atualizações e recuperação de firmware.

Nota

Travado em alguma coisa? Publique nos fóruns da OpenMV – a comunidade e a equipe da OpenMV ficam felizes em ajudar.

1.3. Execute seu primeiro script

Sua OpenMV Cam vem com o detector de rostos BlazeFace do MediaPipe do Google na flash. Cole este script no editor:

import csi
import time
import ml
from ml.postprocessing.mediapipe import BlazeFace

# Set up the camera sensor.
csi0 = csi.CSI()
csi0.reset()                # Initialize the sensor to a known state.
csi0.pixformat(csi.RGB565)  # Capture 16-bit colour.
csi0.framesize(csi.QVGA)    # Set a small, fast frame size.

# BlazeFace was trained on square images, so crop to a centred
# square the size of the sensor's height.
side = csi0.height()
csi0.window((side, side))

# Load the built-in face detector. The post-processor turns the
# network's raw output into a list of detections; threshold sets how
# confident a detection must be to count.
model = ml.Model("/rom/blazeface_front_128.tflite",
                 postprocess=BlazeFace(threshold=0.4))

clock = time.clock()        # For measuring the frame rate.
while True:
    clock.tick()
    img = csi0.snapshot()   # Capture one frame.

    # predict() runs the network and returns one
    # ((x, y, w, h), score, keypoints) tuple per detected face.
    for rect, score, keypoints in model.predict([img]):
        # Draw the box around the face...
        ml.utils.draw_predictions(img, [rect], ("face",),
                                  ((0, 0, 255),), format=None)
        # ...and mark the six landmarks: eyes, nose, mouth, ears.
        ml.utils.draw_keypoints(img, keypoints, color=(255, 0, 0))

    print(clock.fps(), "fps")

Pressione o botão verde Run e aponte a câmera para um rosto. O visualizador de frame buffer desenha uma caixa ao redor de cada rosto e marca os olhos, o nariz, a boca e as orelhas, enquanto o terminal serial imprime a taxa de quadros.

Este script – e um para quase todos os recursos que a câmera tem – também está embutido na IDE em File → Examples, filtrado para a placa que você conectou. Abra um, pressione executar e comece a explorar o que a câmera pode fazer.

1.4. Para onde ir em seguida

Por onde você começa depende do que você já sabe. O tutorial tem três pontos de partida – novo no Python, novo em hardware ou pronto para visão de máquina – então escolha o que se encaixa em você. As referências e o guia da IDE estão aqui sempre que você precisar deles.