YUY2 — это распространенный способ передачи видео, при котором информация о яркости (Y) хранится для каждого пикселя, а информация о цветности (chroma) совместно используется соседними пикселями с использованием дискретизации 4:2:2. При работе с практическими модулями камер важно то, что YUY2 не подвергается сильному сжатию, как MJPEG. Хост получает большой объем данных изображения для каждого кадра.
Несжатый вывод позволяет избежать артефактов сжатия JPEG и устраняет необходимость декодирования каждого кадра. Это может быть полезно для компьютерного зрения, анализа изображений или приложений, где согласованность пиксельных данных важнее экономии пропускной способности. Хост может обрабатывать кадры непосредственно после захвата, хотя преобразование цветов все еще может потребоваться.
Поскольку YUY2 передает гораздо больше данных, чем сжатый MJPEG, пропускная способность интерфейса быстро становится ограничением. Модуль USB 2.0 может предлагать разрешение 1080p при умеренной частоте кадров YUY2, обеспечивая при этом гораздо более высокую частоту кадров в MJPEG. Тот же принцип применяется и к 4K: несжатое видео может превысить практическую пропускную способность интерфейса.
Вот почему таблица спецификаций часто показывает разные максимальные частоты кадров для YUY2 и MJPEG.
Человеческое зрение, как правило, более чувствительно к деталям яркости, чем к деталям цвета. Дискретизация 4:2:2 сохраняет информацию о яркости при полной горизонтальной частоте пикселей, совместно используя образцы цветности по парам пикселей. В результате объем данных цвета уменьшается по сравнению с полным RGB, оставаясь при этом гораздо менее сжатым, чем JPEG.
Артефакты сжатия — это одна из переменных, но качество объектива, экспозиция, шум, обработка ISP и выход сенсора могут доминировать в качестве изображения. Зашумленный, плохо сфокусированный кадр YUY2 может быть менее полезен, чем хорошо экспонированный кадр MJPEG. Правильный формат зависит от последующей задачи.
Он полезен, когда хосту нужны предсказуемые данные кадра, комбинация разрешения/частоты кадров соответствует пропускной способности, а ресурсы ЦП/ГП могут обрабатывать поток. Он часто используется в прототипах машинного зрения, измерениях, разработке алгоритмов и системах, которые хотят избежать декодирования JPEG.
Ищите точное разрешение и частоту кадров, указанные для YUY2, а не только максимальное разрешение сенсора модуля. Также проверьте версию USB, поддерживает ли хост запрошенный режим и совместно ли используют шину несколько камер.
При том же разрешении и частоте кадров YUY2 обычно требует гораздо больше данных для передачи, чем MJPEG, потому что каждый кадр отправляется с минимальным или отсутствующим сжатием изображения. Вот почему USB-камера может предлагать высокую частоту кадров MJPEG, в то время как ее режим YUY2 намного медленнее. Сенсор не изменился; изменилась нагрузка на передачу.
Если алгоритм уже ожидает несжатые кадры YUV, YUY2 может устранить шаг декодирования и сделать доступ к пикселям предсказуемым. Это может быть полезно для измерений или прототипирования. Компромисс заключается в нагрузке на шину, поэтому разработчики должны проверить, имеет ли хост достаточную пропускную способность для желаемого разрешения и количества камер.
Он обычно передается без сжатия в стиле JPEG, но использует субдискретизацию цветности 4:2:2, поэтому он не такой же, как полное сэмплирование RGB.
Несжатый поток требует гораздо большей пропускной способности USB на кадр.
Нет. Некоторые приложения могут эффективно использовать MJPEG или другие форматы. Выбирайте на основе пропускной способности, задержки, обработки и требований к изображению.