Преобразование между цветовыми форматами YUV и RGB включает в себя ряд математических операций;
Формула преобразования из формата кодирования цвета YUV в формат RGB зависит от конкретного формата субдискретизации YUV:
Формула преобразования из формата YUV444 в формат RGB выглядит следующим образом:
Компонент значения цветности UV вычитается на 128, поскольку оба компонента смещены от центрального значения (256/2 = 128). При расчете необходимо сначала вычесть это смещение, а затем преобразовать его в правильное в пределах диапазона;
Вычисленная выше разрядность цвета составляет 8 бит, что составляет 1 байт, диапазон значений: 0 ~ 255, имеется 256 значений, а смещение 128 является средним значением этого значения;
Если рассчитанная компонента RGB меньше 0, то она принимает значение 0;
Если рассчитанный компонент RGB больше 255, примите 255;
Если ошибка декодирования YUV приводит к тому, что значения трех компонентов равны 0, то при окончательном расчете будут получены следующие три значения компонентов RGB;
Если вычисленный компонент RGB меньше 0, он принимает значение 0, поэтому оба компонента R и B равны 0, и только компонент G равен 135,45984, а на экране отображается зеленый цвет;
Формула преобразования из формата RGB в формат YUV444 выглядит следующим образом:
После расчета компонента UV добавляется смещение промежуточного значения. Обычно это промежуточное значение равно 128, половине от 256, чтобы гарантировать, что значение UV находится в соответствующем диапазоне.
Вычисленная выше разрядность цвета составляет 8 бит, что составляет 1 байт, диапазон значений: 0 ~ 255, имеется 256 значений, а смещение 128 является средним значением этого значения;
Стандарты радио и телевидения: стандарт BT601, стандарт BT709, стандарт BT2020;
В FFmpeg этот диапазон называется «диапазоном MPEG».
Этот типстандартныйда существовать ТВ-сигнал серединаиспользоватьиз ;
вычислитьмашинастандартный : существовать FFmpeg середина, Этот диапазон называется " JPEG объем " ;
Этот тип стандартный дасуществовать вычислитьмашина серединаиспользоватьиз ;
В реальном использовании , RGB и YUV преобразование формата кодирования , Оба вызова реализации интерфейса , нравиться FFmpeg из swscale Библиотека , или libyuv Библиотека ;