На самом деле, для получения точных цветов камеры должны фильтровать по кривым веса XYZ или LMS. Любая другая линейная комбинация фильтров LMS с неотрицательными весами приемлема, если они дают вам лучшее отношение сигнал / шум, чем LMS.
Это фильтры RGB, которые невозможно реализовать, потому что они имеют некоторые отрицательные веса вдоль кривых (длина волны). Если вы попытаетесь реализовать некоторое цветовое пространство RGB непосредственно на датчике (то есть с фильтрами Байера), то вы гарантированно допустите колориметрические ошибки. Вы не можете сделать оптические фильтры с отрицательным усилением.
Наши глаза имеют фильтры LMS (длинные-средние-короткие, примерно эквивалентные красно-зелено-голубым). CIE XYZ являются производными от того, что они просто неотрицательны, и поэтому яркость определяется только Y. Это более удобно для науки о цвете. ACES RGB - еще одно идеальное преобразование, удобное для цифрового кинопроизводства.
Данные в любом другом цветовом пространстве RGB (например, sRGB = Rec.709, Adobe, DCI P3, UHD = Rec.2020) могут быть получены вычислительным путем из XYZ или ACES с помощью матрицы 3x3 в линейном свете. Такая матрица будет иметь до 6 отрицательных коэффициентов, поэтому любые цвета вне гаммы будут давать некоторые отрицательные значения RGB. Они не могут быть обработаны OECF (гамма-функцией), поэтому, если вы не сохраните значения линейного освещения со знаком, их придется устранить с помощью отображения гаммы (или просто отсечения до 0). Цвета в гамме все еще могут быть точными, потому что математика точна.
Чем больше цветовое пространство по отношению к цветовой гамме вашей сцены (большая часть мира не настолько широка), тем меньше у вас проблем с отсечкой гаммы. Для научных целей существуют камеры XYZ, они могут воспроизводить именно то, что видят глаза. Мультиспектральные камеры с более чем 3 основными цветами могут даже видеть больше, чем человеческие глаза могут различить. Они буквально раскрывают невидимое.
Вкратце: датчик XYZ - отличная идея. Я подозреваю, что в режиме RAW это то, что вы должны получить. Преобразование в ограниченное цветовое пространство RGB выполняется во время необработанной обработки, и тогда вы можете потерять некоторую цветовую гамму.
PS: не путайте дизайн камеры с дизайном цветного дисплея. Дисплей XYZ невозможен, для очень широкой гаммы требуется много основных цветов (например, 2 зеленых). Камера с широкой гаммой тривиально проста, но она выдает слабосигнальные сигналы, поэтому могут возникнуть некоторые проблемы с шумом.