Цвет, гамма и белый канал
На светодиодах картинка бледная, грязная и дрожит внизу. Гамма 1,8–2,4, порог зажигания, белый канал из минимума RGB, разные партии лент и тестовый набор.
Красивая на мониторе картинка на светодиодах часто бледная, грязная и мерцает внизу шкалы, и причины известны.
Файлы и мониторы работают в sRGB, где значения нелинейны к яркости, а диод светит примерно пропорционально скважности ШИМ, то есть линейно. Значение напрямую из картинки пересвечивает середину: полутон с монитора на ленте почти полная яркость. Перед выводом ставят гамму:
out = (in) ^ 2.2
Или Lookup CHOP с кривой под конкретную ленту; показатель подбирают
глазами, обычно 1,8–2,4. Многие контроллеры умеют гамму сами — тогда её
делают в одном месте, а не дважды.
Восьмибитный диод внизу идёт ступеньками, а у многих контроллеров ещё
и порог зажигания: 1–3 либо не светят, либо светят неровно и дрожат.
Помогают гамма, которая отдаёт низу больше градаций, 16-битный вывод, если
контроллер умеет, и честный ноль ниже порога — например, Expression CHOP
с me.inputVal if me.inputVal > 0.02 else 0, лучше ноль, чем дрожащая
искра.
| Белый канал RGBW | Как |
|---|---|
| Не трогать | W = 0, проще всего, яркость теряется |
| Минимум из RGB | W = min(R,G,B), из RGB вычесть — чистые цвета на RGB |
| Своя логика | Белым управляют отдельно |
Белый диод ярче и чище суммы RGB, но у него своя температура. Стандарт — минимум из RGB, только оттенок белого почти наверняка не совпадёт с суммой RGB, и на переходах это видно; коэффициент подбирают на железе.
Два отрезка с одной маркировкой дают заметно разный белый, и на объекте «одна секция желтее». Коррекция — свой множитель на линию в таблице раскладки.
Насыщенный цвет на диодах выглядит ярче и дешевле, чем на экране: насыщенность чуть снижают против монитора, чистым синим большие площади не заливают — он читается провалом, — и смотрят в темноте, а не при рабочем свете. Тестовый набор в проекте: полный белый покажет расхождение секций, серый 50 % — гамму, чистые R, G, B — порядок компонент, линейный клин от 0 до 255 — порог и ступени внизу.
Картинка для светодиодов — не уменьшенная картинка экрана. Крупные формы, сильный контраст, мало мелочи; тоньше двух пикселей — значит, мерцание.
Нашли в статье ошибку, устаревшее или непонятное место?