Диапазон яркости: 16-235 vs 0-255. Черное выглядит серым, а серое - черным...

Видеокамеры, съемка, монтаж видео Vegas pro, кодирование, перекодирование, конвертация, h264, avc, mpeg2, avi и пр. вопросы связанные с фиксацией и сохранением для потомков достижений в движущихся картинках.
Ответить
Аватара пользователя
Valery
Без группы
Без группы
Сообщения: 22262
На борту с: 07.02.2005 10:00
Награды: 5
Репутация: 878
Из: Тридевятое царство

Ахтунг! Диапазон яркости: 16-235 vs 0-255. Черное выглядит серым, а серое - черным...

#1

Сообщение Valery »

Что может быть очевиднее: черный - самый темный из возможных цветов, а белый - самый светлый.
Однако так не считают все аппаратные и программные средства при работе с видео, и в разных системах используются различные значения черного и белого.

Цветовые пространства разных кодеков по-разному интерпретируется различными программами, поэтому решение существует только в пределах какой-нибудь одной платформы, например, в пределах программы видеомонтажа.
В других случаях (программах просмотра - плееры, конвертеры и пр.) возможно придется искать свои настройки.


В итоге просматривая видео 16-235 (правильно закодированный фильм) на компьютере (где уровень яркости 0-255) при неправильном отображении черного и белого имеем бледное и малоконтрастное видео:
   
- пропадают детали в тенях;
- сцены, залитые светом, кажутся пересвеченными с потерей деталей;
- вместо черного цвета видим темно-серый цвет;
- все цвета выцвели.

При просмотре этого же видео на экране ТВ все выглядит правильно и красиво, а видео скачанное их сети на экране ТВ выглядит чрезмерно контрастным, где все вышеперечисленное наоборот - серое становится черным, тени как же приобретают черноту.
С чего бы это так и как с этим бороться?
Для начала надо уяснить, что такое черный и что такое белый в цифровом видео:

В программах компьютерной графики используются такие определения:
- черный означает нулевую яркость которой в цветовом представлении RGB с 8 битами на канал соответствуют значения 0/0/0;
- белый - максимальную яркость, которой соответствуют значения 255/255/255.
Получить изображение темнее черного или светлее белого невозможно. Компьютерная яркостная система охватывает диапазон уровней 0-255.

В цифровом телевидении используется иное определение:
- черный - яркость чуть более 6%, которой в RGB соответствуют цветовые значения 16/16/16;
- белый - яркость чуть выше 92%, т. е. значения RGB 235/235/235 (при 8 битах на каждый цветовой канал).
Эта система описана в спецификации ITU-R BT601 и используется в большинстве устройств цифрового видео - телевидение, видеокамеры, DVD-video и Blu-ray.
Т.е. яркостная система 601 охватывает диапазон 16-235.

При воспроизведении, диапазон разжимает декодер:
- если это диапазон 16-235, то его надо разжать до 0-255 (ТВ, DVD-video, Blu-ray);
- если 0-255 (компьютерное видео), то выводить как есть.


Проблема в несовпадении диапазонов цветовых пространств видеоконтента и дисплея, а также настроек декодера, проигрывателя и драйвера видеокарты - если декодер не растянет сжатый диапазон 16-235 до 0-255, т.к. каждый плеер это делает по своему разумению и надо смотреть его настройки, либо изменять настройки видеокарты:


Что делать при монтаже и кодировании видео?
Для начала надо определиться для чего это видео:
- просмотр на ТВ;
- Youtube или аналогичный сервис интернета.

В процессе монтажа проверять уровни у добавляемого видео и приводить их к одному знаменателю.
- фотографии имеют уровни 0-255;
- видео с фотоаппарата имеет уровни 0-255;
- видео с видеокамеры имеет уровни 16-235 (могут быть пересветы до 255).

Проверить уровни добавленного видео на ТЛ можно взглянув на гистограмму: Ctrl+Alt+2


1. Sony Vegas при выводе видео уровни не меняет. Если при монтаже ограничены уровни 16-235, то на выходе они такими и останутся, то же самое справедливо и для 0-255.
При монтаже видео в Sony Vegas надо определиться в каком диапазоне монтировать 16-235 или 0-255.

а) если видео монтировать в диапазоне 16-235 на предпросмотр надо добавить преобразование диапазона для предпросмотра - Adjust levels from studio RGB to computer RGB. (Чтобы черное на предпросмотре было черным, а не серым).
При кодировании для просмотра на ТВ ничего не делать, для загрузки на видеохостинг применить плагин Levels с пресетом Studio RGB to Computer RGB.
Для всего проекта поставить на Bus Track (Ctrl+Shift+B) либо на трек Compositing Parent.
[attach=8 width=200]
б) если видео монтировать в диапазоне 0-255 на предпросмотре надо убрать Adjust levels from studio RGB to computer RGB.
При кодировании для просмотра на ТВ надо сжимать до 16-235, например применив штатный плагин Levels с пресетом Computer RGB to Studio RGB.
Для всего проекта поставить на Bus Track (Ctrl+Shift+B) либо на трек Compositing Parent.

2. При кодировании сторонним софтом надо последить цепочку и понять где происходит кодирование и что кодер делает с уровнями. Для этого можно закодировать файл градиента Linear White to Black с уровнями 0-255, и посмотреть на изменение уровней.

MainConcept Reference - если из Sony Vegas через Frameserver видео с уровнями 16-235 передать в MainConcept Reference v2, то на выходе получим 32-229 (еще серее серого), т.е. в данном случае, чтобы получить файл с правильными уровнями надо из Sony Vegas выводить 0-255.

MeGui - в настройках кодека x264 за диапазон отвечают параметры --range pc --range tv

Rhozet Carbon Coder - не меняет уровни, но в нем есть вкладка фильтров и с ее помощью уровни 0-255 можно сжать до 16-235.
601 Correction - Expand Color Space - фильтр расширяет дипазон с 16-235 до 0-255.
601 Correction - Shrink Color Space - фильтр сжимает дипазон RGB видео с 0-255 до 16-235.

Зная, что где как работает можно получить правильный предсказуемый результат с уровнями и качеством - серое будет серым, а не черным и наоборот.


— Видео, распространяемое на дисках и передаваемое в цифровом телевидении имеет формат цветов динамический диапазон 16-235.
— Видео из интернет, особенно доставляемое через проигрыватель Flash и записи игрового процесса, имеют динамический диапазоном 0-255. Некачественные «рипы» с дисков имеют формат YCbCr с диапазоном 0-255.
— Компьютерные мониторы используют цветовое пространство RGB с диапазоном 0-255, телевизоры — RGB с диапазоном 16-235. Некоторые телевизоры (в основном LCD) поддерживают отображение RGB с диапазоном 0-255.

Разные софтовые плееры воспроизводят один и тот же файл совершенно неодинаково:

Остались вопросы - можно задать.
Теги: Видео серое, видео стало блеклое, после кодирования видео пропали цвета
Вложения
16-235---0-255.png
Nvidia.png
levels.jpg
levels-2.jpg
levels-1.jpg
Histogram.png
QT-vs-MPC-HomeCinema.jpg
Adjust-levels-from-studio-RGB-to-computer-RGB.png
Последний раз редактировалось Valery 07.02.2016 08:39, всего редактировалось 1 раз.
По суше: велосипед, Соболь 4х4 самый западный и LR Defender 110.
Отдохнул – отчитайся, лучшее слово – дело.
S
SIMILAR
Эксперт форума
Сообщения: 2019
На борту с: 03.10.2005
Репутация: 219

  Я для тебя подобрал похожие темы, посмотри:

Ответить

Вернуться в «Работа с видео - помощь начинающим»