13.1.6. O visualizador do frame buffer

O visualizador do frame buffer mostra o que a câmera vê – mais precisamente, o que quer que o script em execução tenha deixado por último no frame buffer da câmera. Cada snapshot() coloca ali uma captura nova, e tudo o que o script desenha na imagem depois também está ali, de modo que a prévia mostra o quadro após o processamento do script, anotações incluídas. A IDE consulta a câmera em busca do quadro mais recente pela USB e exibe cada um conforme chega.

O painel do frame buffer mostrando uma imagem ao vivo com um retângulo de seleção sobre um objeto, os botões Record, Zoom, Disable e JPG Mode na barra de título e o histograma abaixo calculando a partir da seleção

O frame buffer com uma região selecionada: a linha de leitura e o histograma abaixo dela calculam apenas a partir dos pixels selecionados.

A prévia tem um custo: comprimir e transmitir cada quadro consome tempo da câmera, então um script geralmente roda mais rápido com a IDE desconectada do que com a prévia ao vivo. Os botões da barra de título do painel gerenciam esse compromisso:

  • Zoom – ajusta a escala da imagem para caber no painel (ativado por padrão). Desativado, a imagem é renderizada a um pixel de tela por pixel de imagem.

  • Disable – interrompe completamente a transmissão de quadros, para o máximo desempenho do lado da câmera. O script continua rodando; a prévia congela no último quadro atrás de um aviso “Frame Buffer Disabled” até você reativá-la. Use-o ao fazer benchmarking, já que o FPS que o script atinge com a prévia desativada é o FPS que ele atingirá de forma autônoma.

  • JPG Mode / RAW Mode – se os quadros são comprimidos em JPEG para a viagem até a IDE ou enviados sem compressão. O modo começa naquele que a câmera conectada prefere – JPG para a maioria. O modo JPG é muito mais rápido; o modo RAW mostra os valores exatos dos pixels ao custo da taxa de quadros. O botão aparece para câmeras rodando firmware recente.

13.1.6.1. Selecionando uma região

Clique e arraste sobre a imagem para selecionar uma região retangular. Enquanto uma seleção existe, o histograma abaixo calcula suas estatísticas apenas a partir dos pixels selecionados, e a linha de leitura acima do histograma informa a posição, o tamanho e a contagem de pixels da seleção – a forma mais rápida de obter uma tupla de ROI para um script ou de medir as estatísticas de cor de um objeto em vez da cena inteira. Clique sem arrastar para obter a posição de um único pixel; clique fora da imagem para limpar a seleção.

13.1.6.2. Salvando o que a câmera vê

Clique com o botão direito na imagem para salvar o quadro exibido em um arquivo de imagem no seu computador. O salvamento respeita a seleção: clique com o botão direito dentro de uma região selecionada e apenas essa região é salva (a entrada do menu mostra “Save Image selection to PC”); clique com o botão direito em qualquer outro lugar e o quadro inteiro é salvo. O que vai para o disco é o quadro exibido no momento em que você clica com o botão direito – para capturar um quadro exato de uma cena em movimento, pare o script primeiro para que a prévia congele nele.