Преобразуйте информацию о цвете между цветовыми пространствами
Преобразования
visionconversions
Блок Color Space Conversion преобразовывает информацию о цвете между цветовыми пространствами. Используйте параметр Conversion, чтобы задать цветовые пространства, между которыми вы преобразовываете. Вашим выбором является R'G'B' to Y'CbCr
, Y'CbCr to R'G'B'
, R'G'B' to intensity
, R'G'B' to HSV
, HSV to R'G'B'
, sR'G'B' to XYZ
, XYZ to sR'G'B'
, sR'G'B' to L*a*b*
и L*a*b* to sR'G'B'
.
Если входом является uint8
, YCBCR
является uint8
, где Y
находится в области значений [16 235]
, и Cb
и Cr
находятся в области значений [16 240]
.
Если входом является double
, Y
находится в области значений, [16/255 235/255]
и Cb
и Cr
находятся в области значений [16/255 240/255]
.
Порт | Ввод/вывод | Поддерживаемые типы данных | Поддерживаемые комплексные числа |
---|---|---|---|
Введите / Вывод | M N P окрашивают видеосигнал, где P является количеством цветных плоскостей |
| Нет |
R | Матрица, которая представляет одну плоскость видеопотока входа RGB | То же самое как Входной порт | Нет |
G | Матрица, которая представляет одну плоскость видеопотока входа RGB | То же самое как Входной порт | Нет |
B | Матрица, которая представляет одну плоскость видеопотока входа RGB | То же самое как Входной порт | Нет |
Y | Матрица, которая представляет luma фрагмент изображения | То же самое как Входной порт | Нет |
Cb | Матрица, которая представляет один компонент цветности изображения | То же самое как Входной порт | Нет |
Cr | Матрица, которая представляет один компонент цветности изображения | То же самое как Входной порт | Нет |
I | Матрица значений интенсивности | То же самое как Входной порт | Нет |
H | Матрица, которая представляет компонент оттенка изображения |
| Нет |
S | Матрица, которая представляет компонент насыщения изображения | То же самое как порт H | Нет |
V | Матрица, которая представляет значение (яркость) компонент изображения | То же самое как порт H | Нет |
X | Матрица, которая представляет X компонентов изображения | То же самое как порт H | Нет |
Y | Матрица, которая представляет компонент Y изображения | То же самое как порт H | Нет |
Z | Матрица, которая представляет компонент Z изображения | То же самое как порт H | Нет |
L | Матрица, которая представляет фрагмент яркости изображения | То же самое как порт H | Нет |
a | Матрица, которая представляет* компонент изображения | То же самое как порт H | Нет |
b | Матрица, которая представляет b* компонент изображения | То же самое как порт H | Нет |
Тип данных выходного сигнала совпадает с типом данных входного сигнала.
Используйте параметр Image signal, чтобы задать как к вводу и выводу цветной видеосигнал. Если вы выбираете One multidimensional signal
, блок принимает M N видеосигналом цвета P, где P является количеством цветных плоскостей в одном порте. Если вы выбираете Separate color signals
, дополнительные порты появляются на блоке. Каждый порт принимает одну плоскость M на n видеопотока RGB.
Главное обозначение указывает, что сигналы являются исправленной гаммой.
Следующие уравнения задают R'G'B' к преобразованию Y'CbCr и Y'CbCr к R'G'B' преобразование:
Значения в матрицах A
и B
основаны на вашем выборе для параметров Scanning standard и Use conversion specified by.
Матрица | Use conversion specified by = Rec. 601 (SDTV) | Use conversion specified by = Rec. 709 (HDTV) | |
---|---|---|---|
Scanning standard = 1125/60/2:1 | Scanning standard = 1250/50/2:1 | ||
A | |||
B |
Следующее уравнение задает преобразование из R'G'B' цветовое пространство к интенсивности:
R'G'B' к преобразованию HSV задан следующими уравнениями. В этих уравнениях MAX и МИН представляют максимальные и минимальные значения каждого R'G'B' триплет, соответственно. H, S, и V отличаются от 0 до 1, где 1 представляет самое большое насыщение и значение.
HSV к R'G'B' преобразование задан следующими уравнениями:
sR'G'B' к преобразованию XYZ является двухступенчатым процессом. Во-первых, блок преобразовывает исправленный гаммой sR'G'B' значения в линейные sRGB значения с помощью следующих уравнений:
Затем блок преобразовывает sRGB значения в значения XYZ с помощью следующего уравнения:
XYZ к sR'G'B' преобразование является также двухступенчатым процессом. Во-первых, блок преобразовывает значения XYZ в линейные sRGB значения с помощью следующего уравнения:
Затем блок применяет гамма-коррекцию, чтобы получить sR'G'B' значения. Этот процесс описан следующими уравнениями:
Программное обеспечение Computer Vision Toolbox™ использует белую точку D65, которая задана в Рекомендации Купленный 709 ITU-R для этого преобразования. Напротив, преобразование Image Processing Toolbox™ основано на профилях ICC, и оно использует D65 для Брэдфордского преобразования адаптации D50 к белой точке D50. Если вы используете эти два продукта и сравниваете результаты, необходимо объяснить это различие.
Блок Color Space Conversion преобразовывает sR'G'B' значения в L*a*b* значения на двух шагах. Сначала это преобразовывает sR'G'B' в значения XYZ с помощью уравнений, описанных в Преобразовании Между sR'G'B' и Цветовыми пространствами XYZ. Затем это использует следующие уравнения, чтобы преобразовать значения XYZ к L*a*b* значения. Здесь, , , и трехцветные значения ссылочной белой точки, вы задаете использование параметра White point:
Блок преобразовывает L*a*b* значения к sR'G'B' значения на двух шагах также. Блок преобразовывает L*a*b* значения к значениям XYZ с помощью этих уравнений:
Задайте цветовые пространства, между которыми вы преобразовываете. Вашим выбором является R'G'B' to Y'CbCr
, Y'CbCr to R'G'B'
, R'G'B' to intensity
, R'G'B' to HSV
, HSV to R'G'B'
, sR'G'B' to XYZ
, XYZ to sR'G'B'
, sR'G'B' to L*a*b*
и L*a*b* to sR'G'B'
.
Задайте стандарт, чтобы использовать, чтобы преобразовать ваши значения между R'G'B' и цветовыми пространствами Y'CbCr. Вашим выбором является Rec. 601 (SDTV)
или Rec. 709 (HDTV)
. Этот параметр только доступен, если для параметра Conversion вы выбираете R'G'B' to Y'CbCr
или Y'CbCr to R'G'B'
.
Задайте стандарт сканирования, чтобы использовать, чтобы преобразовать ваши значения между R'G'B' и цветовыми пространствами Y'CbCr. Вашим выбором является 1125/60/2:1
или 1250/50/2:1
. Этот параметр только доступен, если для параметра Use conversion specified by вы выбираете Rec. 709 (HDTV)
.
Задайте ссылочную белую точку. Этот параметр видим, если для параметра Conversion вы выбираете sR'G'B' to L*a*b*
или L*a*b* to sR'G'B'
.
Задайте как к вводу и выводу цветной видеосигнал. Если вы выбираете One multidimensional signal
, блок принимает M N видеосигналом цвета P, где P является количеством цветных плоскостей в одном порте. Если вы выбираете Separate color signals
, дополнительные порты появляются на блоке. Каждый порт принимает одну плоскость M на n видеопотока RGB.
[1] Poynton, Чарльз А. Техническое введение в цифровое видео. Нью-Йорк: John Wiley & Sons, 1996.
[2] Рекомендация ITU-R BT.601-5, параметры кодирования Studio цифрового телевидения для стандарта 4:3 и широкий экран 16:9 соотношения сторон.
[3] Рекомендация ITU-R BT.709-5. Значения параметров для стандартов HDTV для производства и международного обмена программы.
[4] Топит, Майкл, Мэтью Андерсон, Сринивасан Чандрэзекэр и Рикардо Мотта, “Стандартный Пробел Цвета по умолчанию для Интернета - sRGB”. 5 ноября 1996.
[5] Berns, Рой С. Принципы Цветной Технологии, 3-й редактор Нью-Йорк: John Wiley & Sons, 2000.
Программное обеспечение Computer Vision Toolbox | |
rgb2hsv | MATLAB |
hsv2rgb | Программное обеспечение MATLAB |
rgb2ycbcr | Программное обеспечение Image Processing Toolbox |
ycbcr2rgb | Программное обеспечение Image Processing Toolbox |
rgb2gray | Программное обеспечение Image Processing Toolbox |
makecform | Программное обеспечение Image Processing Toolbox |
applycform | Программное обеспечение Image Processing Toolbox |