YUY2 é uma forma comum de transportar vídeo onde a informação de luminância (Y) é armazenada para cada pixel e a informação de croma é compartilhada entre pixels vizinhos usando amostragem 4:2:2. No trabalho prático com módulos de câmera, o ponto importante é que YUY2 não é fortemente comprimido como MJPEG. O host recebe uma grande quantidade de dados de imagem para cada quadro.
A saída não comprimida evita artefatos de compressão JPEG e remove a necessidade de decodificar cada quadro. Isso pode ser útil para visão computacional, análise de imagem ou aplicações onde dados de pixel consistentes são mais importantes do que economizar largura de banda. O host pode processar quadros diretamente após a captura, embora a conversão de cores ainda possa ser necessária.
Como YUY2 envia muito mais dados do que MJPEG comprimido, a largura de banda da interface se torna um limite rapidamente. Um módulo USB 2.0 pode oferecer 1080p a uma taxa de quadros YUY2 modesta, enquanto fornece uma taxa de quadros muito maior em MJPEG. O mesmo princípio se aplica a 4K: vídeo não comprimido pode exceder a taxa de transferência prática da interface.
É por isso que uma tabela de especificações geralmente mostra taxas de quadros máximas diferentes para YUY2 e MJPEG.
A visão humana é geralmente mais sensível a detalhes de brilho do que a detalhes de cor. A amostragem 4:2:2 mantém a informação de luminância na frequência horizontal completa de pixels, enquanto compartilha amostras de croma entre pares de pixels. O resultado reduz o volume de dados de cor em comparação com RGB completo, permanecendo muito menos comprimido do que JPEG.
Artefatos de compressão são uma variável, mas a qualidade da lente, exposição, ruído, processamento ISP e saída do sensor podem dominar a qualidade da imagem. Um quadro YUY2 ruidoso e mal focado pode ser menos útil do que um quadro MJPEG bem exposto. O formato correto depende da tarefa downstream.
É útil quando o host precisa de dados de quadro previsíveis, a combinação de resolução/taxa de quadros se encaixa na largura de banda e os recursos de CPU/GPU podem processar o fluxo. É comum em protótipos de visão computacional, medição, desenvolvimento de algoritmos e sistemas que desejam evitar a decodificação JPEG.
Procure a resolução exata e a taxa de quadros listadas em YUY2, não apenas a resolução máxima do sensor do módulo. Verifique também a versão USB, se o host suporta o modo solicitado e se várias câmeras compartilham o barramento.
Na mesma resolução e taxa de quadros, YUY2 geralmente requer muito mais dados de transporte do que MJPEG porque cada quadro é enviado com pouca ou nenhuma compressão de imagem. É por isso que uma câmera USB pode oferecer uma alta taxa de quadros MJPEG enquanto seu modo YUY2 é muito mais lento. O sensor não mudou; o fardo do transporte mudou.
Se o algoritmo já espera quadros YUV não comprimidos, YUY2 pode remover uma etapa de decodificação e tornar o acesso a pixels previsível. Isso pode ser útil para medição ou prototipagem. A troca é a carga do barramento, portanto, os designers devem verificar se o host tem largura de banda suficiente para a resolução e o número de câmeras desejados.
Geralmente é transportado sem compressão no estilo JPEG, mas usa subamostragem de croma 4:2:2, portanto, não é o mesmo que amostragem RGB completa.
O fluxo não comprimido requer muito mais largura de banda USB por quadro.
Não. Algumas aplicações podem usar MJPEG ou outros formatos de forma eficaz. Escolha com base na largura de banda, latência, processamento e requisitos de imagem.