Pull to refresh

Comments 85

Количество градаций яркости, различаемое глазом - от 80 до 130. Это вполне укладывается в 7 бит. Это все выяснено еще со времен аналогового ТВ. 8 бит (256 градаций) - с двойным запасом перекрывают этот диапазон. Для чего нужно 10? У людей колбочки в глазах за последние 20 лет так эволюционировали, что стали в 10 раз более избирательны?

В подавляющем большинстве своём изображения эти — шестнадцатибитные. Точнее, в зависимости от используемого детектора они могут быть и меньшей разрядности, скажем 12 или 14 бит, но формально для меня они именно шестнадцатибитные, просто не все старшие биты задействованы.

Если данные 12-битные, но хранятся в 16-битном регистре, это не делает данные 16-разрядными. И в конечном итоге на экран будет смотреть реальный человек с аналоговым глазом с разрешением 80-130 градаций. Дополнительные градации он просто не увидит, они сольются в один уровень. Если речь идет о машинном зрении, то да - там доп градации будут нелишними, но если получатель данных - человек, какой тогда смысл в 10 битах?

Соответственно выполняется несложное преобразование по "ремаппингу" 16 бит в 8. Это делается при помощи линейной (в редких случаях с гаммой) LUT таблицы:

Линейное преобразование решает все проблемы по приведению исходных 12-битных данных к человеческим 8 бит. Непонятно, для чего делать нелинейное и создавать себе проблему на ровном месте?

Другое дело, что общая "освещенность" объекта может меняться. У глаза подстройкой занимается зрачок, у видеокамер - диафрагма, у рентгена - ? Если у рентгена такого механизма нет и учет "общей" освещенности реализован исключительно расширением динамического диапазона до 10-12 бит, то в данном случае единственное верное решение:

Вот так оператор и работает — постоянно крутит ползунки туда-сюда и рассматривает различные области

Потому что никто лучше самого оператора не сможет подогнать свой диапазон восприятия к диапазону выдаваемых ему данных.

В целом вы правы, конечно. Пост был лишь о том, что некоторые мониторы, скажем так, имеют чисто техническую возможность отобразить 10 бит и мне было любопытно заставить его это сделать. На рентгеновских изображениях практической разницы нет, лучше они от этого не становятся.. Более того, программы, сертифицированные для просмотра таких изображений вполне себе "восьмибитные", но это не мешает им удовлетворять стандартам. На самом деле этот эксперимент меня попросили сделать коллеги (часть из них утверждала, что картинка станет лучше), мне с самого начала результат был понятен, но был "спортивный" интерес добиться результата. Ну а на плавных градиентах эффект ступенек при восьмибитном отображении виден на любом мониторе — покрутите хотя бы NEC тест. На десятибитном же мониторе разница в десятибитном окне видна любым невооружённым взглядом — там всё абсолютно "гладко".

Количество градаций яркости, различаемое глазом - от 80 до 130. Это вполне укладывается в 7 бит. Это все выяснено еще со времен аналогового ТВ. 8 бит (256 градаций) - с двойным запасом перекрывают этот диапазон. Для чего нужно 10?

Вот во временах мануалов по ремонту электронно-лучевой телеаппаратуры эти тезисы и остались! Ну сколько можно транслировать это заблуждение? Ну в чём сложность самому проверить это утверждение? Я только на Хабре уже раз 5 выкладывал картинку, где надпись отличается от фона на 1/256 яркостной составляющей и при этом читаема.

А хотите ещё тезисов? Человеческий глаз способен различить до 100 млн. цветовых оттенков. Уж не знаю, достигли современные спектрофотометры таких показателей или человеческий глаз всё ещё остаётся самым совершенным цветочувствительным прибором...

Если данные 12-битные, но хранятся в 16-битном регистре, это не делает данные 16-разрядными.

Очередное умозрительное заблуждение)) Да, информации там не прибавится, но зато это позволяет проводить преобразования и коррекцию без потерь информации. С 8-битными исходниками - любое неосторожное движение ползунком ведёт к "деструктивной коррекции".

Линейное преобразование решает все проблемы по приведению исходных 12-битных данных к человеческим 8 бит. Непонятно, для чего делать нелинейное и создавать себе проблему на ровном месте?

Потому что в цветовых пространствах вывода зависимость не линейная. В частности, гамма-кривые sRGB и Gamma 2.2 отличаются поведением в тенях.

Вот во временах мануалов по ремонту электронно-лучевой телеаппаратуры эти тезисы и остались!

Я понимаю, что чтение специальной литературы - это не ваше, но хотя бы на яндексе то вас не забанили?

Ну в чём сложность самому проверить это утверждение? Я только на Хабре уже раз 5 выкладывал картинку, где надпись отличается от фона на 1/256 яркостной составляющей и при этом читаема.

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

И да, вы 5 раз выкладывали эту картинку, я 5 раз писал вам что ничего не вижу. Вы продолжаете утверждать что картинку видят "ВСЕ", заваливая неугодное мнение минусами.

Человеческий глаз способен различить до 100 млн. цветовых оттенков.

Мы сейчас говорим о ЯРКОСТИ. Не нужно уводить разговор в сторону.

Да, информации там не прибавится, но зато это позволяет проводить преобразования и коррекцию без потерь информации. С 8-битными исходниками - любое неосторожное движение ползунком ведёт к "деструктивной коррекции".

А этой фразой вы сами того не подозревая подтверждаете факт того, что 8 бит достаточно. Изменяя данные с большой избыточностью мы действительно не увидим "потерь" потому что изменения настолько будут настолько малы, что находятся за гранью восприятия.

Потому что в цветовых пространствах вывода зависимость не линейная. В частности, гамма-кривые sRGB и Gamma 2.2 отличаются поведением в тенях.

Еще раз - мы говорим о ЯРКОСТИ. Причем здесь цветовые пространства?

Видите границы между блоками?

А теперь представьте, что у вас HDR дисплей, и разница в яркости между соседними оттенками чисто физически в несколько раз больше.

Вообще разницу в одну градацию разные мониторы по-разному показывают, кто-то лучше в светах, кто.то в тенях, на DELL я границ почти не вижу, а вот на EIZO довольно отчётливо, даже посчитать их количество можно.

Кстати, по поводу яркости - тоже верное замечание. EIZO значительно ярче и при увеличении абсолютной яркости относительная разница между градациями тоже увеличивается. (максимальная яркость, кстати - это важный параметр медицинского монитора, для маммографии, скажем, он должен обеспечивать аж 420 кд/м². Это офигенно ярко).

Вот проверил - DELL у меня установлен на 80%, а EIZO на 50%, но даже так он ярче. Я только что попробовал выкрутить его на максимум, и всё стало ещё заметнее, но работать так постоянно — могут вытечь глаза.

Ага, вот, наконец те данные, которые я искал. Вот вы пишете, что слабо различимая человеческим глазом яркость это 0,1 кд/м².

Смотрите, это калибровочная кривая по медицинскому DICOM стандарту из поста, я отмечу на ней пару реперных точек:

Как видите на уровне серого 128 монитор должен светить на 20 кд/м², а на уровне 192 - примерно на 60 кд/м². То есть при разнице в 64 уровня серого разность интенсивности составит 40 кандел на м². Она ещё и нелинейная к тому же (масштаб-то по y логарифмический) но всё равно в среднем это заметно больше чем 0,1 кд/м² на градацию (40/64). Исходя только из этого факта можно предположить, что разница между соседними градациями должна быть слабо, но различима, по крайней мере на этих яркостях.

И я несколько сомневаюсь, что "слепящая яркость от нити накаливания, которую можно с трудом терпеть" — это 107 кд/м², хотя бы потому, что это несколько ниже типичной яркости монитора, а максимальная, которую RadiForceRX340 может выдать по спекам - вообще 400 кд/м². А лампочки тысячами кандел светят, если верить моему интернету:

107 - очевидно, имелось в виду 10^7. Видимо при копировании текста верхний индекс стал числом, как это часто бывает. И вообще, этот абзац текста не относится к разрешающей способности глаза, а к способности регулировать световой поток с помощью зрачка. Это регулирование - крайне медленное, глазу нужно до нескольких секунд чтобы адаптироваться. И после адаптации к определенному световому диапазону в нем он будет различать 80-130 градаций. После адаптации к другому световому потоку, в нем он также будет одновременно различать только 80-130 градаций. Иными словами - общий диапазон крайне широкий, но в каждый конкретный момент, адаптировавшись, глаз может выхватывать одновременно не более 80-130 градаций. Сводить все это на один график - ошибочно.

Иными словами - общий диапазон крайне широкий, но в каждый конкретный момент, адаптировавшись, глаз может выхватывать одновременно не более 80-130 градаций.

Вот с этим я абсолютно и безусловно согласен, если я выведу на один широкий экран все 256 градаций, то я не могу видеть их одновременно, но я вовсе и не утверждаю, что человек их увидит, все одновременно, а лишь утверждаю, что разница между двумя плашками, отличающимимся на одну градацию серого при восьмибитном представлении (ну вот как картинка с текстом в комментах ниже) - вполне различима (и то не на всех яркостях и при остутствии окружающего контрастного фона). Поэтому когда у нас ограниченный диапазон яркостей, в которых присутствует умеренное количество градаций с чёткими границами между ними - то это может быть вполне заметно, увеличение же числа градаций в четыре раза за счёт десятибитности делает их незаметными, так как мы с минимально перепада, большего чем чем 0.1 кд/м², уходим ниже различимого предела.

Прекращайте даже комментировать на эту тему - вы всё путаете! Полная чехарда... Для начала - осознайте суть такой приписки как "при одновременном сравнении" и употребляйте её к месту ;)

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

Во-первых, с чего вдруг у меня "нет знаний и оборудования"? Очередное вангование?))

Условия для эксперимента вполне одинаковые - sRGB, 8bit, на среднесером фоне (чтобы вы не переживали насчёт адаптации). Разумеется, я не могу гарантировать наличие откалиброванного монитора (или хотя бы с отстроенной гаммой) и подходящих условий просмотра у каждого участника, но сам факт того, что многие опрошенные различают эту 1/256 - уже практический контрдовод к вашему тезису из поисковой выдачи Яндекса с "ответов.мэйлру". Кое-кто (разумеется не все, об этом чуть ниже) получается видит и поболе. Получается лично ко мне этот тезис неприменим, а значит все ваши комментарии на эту тему можно игнорировать? Ведь ваша "избыточность", лично для меня получается "недостаточностью".

И зачем убеждаться в "не смазывала работа зрачка"? Мы-то вроде именно это и хотим зафиксировать)) А то что получается? "Глаз не видит, но работа зрачка делает так что видит"?))

И да, вы 5 раз выкладывали эту картинку, я 5 раз писал вам что ничего не вижу. Вы продолжаете утверждать что картинку видят "ВСЕ", заваливая неугодное мнение минусами.

  1. Приобрести нормальный монитор? (с мобилы кстати, да, возможны казусы)

  2. Хотя бы визуально настроить на нём гамму?

  3. Обратиться к специалисту-офтальмологу?

Я нигде не писал что "ВСЕ". Есть, как минимум, слепые и дальтоники. И в обратку - есть тетрахроматы. Для них всех, кстати, и ваш тезис ложным является))

Мы сейчас говорим о ЯРКОСТИ. Не нужно уводить разговор в сторону.

Я не увожу. Это вы не понимаете сути. Яркость - одна из составляющих любой цветовой модели. Почитайте про HSL что ли - может понятнее станет...

А этой фразой вы сами того не подозревая подтверждаете факт того, что 8 бит достаточно. Изменяя данные с большой избыточностью мы действительно не увидим "потерь" потому что изменения настолько будут настолько малы, что находятся за гранью восприятия.

  1. Почему вы продолжаете использовать "мы"? Пишите "я не увижу", за себя я вам уже всё выше разжевал))

  2. И как вы из моей цитаты сделали вывод что "8 бит достаточно"? Вот серьёзно - мне хочется просто полюбоваться на эту логическую цепочку))

Еще раз - мы говорим о ЯРКОСТИ. Причем здесь цветовые пространства?

Ещё раз объясняю: если из любой цветовой модели или пространства убрать яркостную составляющую - вы ничего не увидите. Чёрный фон. Именно яркостные градации и увеличивают количество отображаемых оттенков (ну по крайней мере в модели RGB - остальные можно привести к ней преобразованиями).

Как же с вами тяжело... А это я ещё Lab и HSL не трогал... А также разницу между "Brightness", "Lightness", "Luminosity"...

А хотите ещё тезисов? Человеческий глаз способен различить до 100 млн. цветовых оттенков.

Кстати, вы и тут соврамши. Ошиблись на 2 порядка.

Пруфы, конечно, уровня "бог".

способность человека распознавать цвета может в течении дня сильно меняться.
например в экстренных случаях(например у военных, спасателей, спортсменов) человеку не нужна богатая палитра цветов, а нужно скорость работы мозга экономия ресурсов и он отсекает почти всю палитру.
то есть всё в большей степени зависит от мозга. а возможности самого глаза как минимум большинство человечества не использует даже 80%.
увеличение битности цветов дисплеев же доступного позволит развивать способности мозга воспринимать цвета.

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

у вас похоже уклон на скорость и соответственно снижение чувствительности к сенсорам. что видно по тому что вы даже не пытаетесь обработать и выносить мнение по большему объему данных а исходите по минимальным.

  1. Написано хорошо, читать приятно

  2. Но претензия к самому материалу. Как отметил человек выше - в чем необходимость в 1024 градациях если человек не различает даже 256? Это А, и Б - у вас на примерах, где якобы лесенка градайия там точно сильно меньше 256 уровней. Такие градации я бы понял взятые с экрана ATARI 130XE в 80-х, у которого только 16 значений яркости (4 бита) и тогда ваши скриншоты с градиентами соответствовали бы. Но у вас на картинках с точками 20 значений яркости и фраза "на некоторых мониторах можно увидеть слабые ступеньки", мне кажется, однозначно говорит о проблеме мониторов с отображением, нежели о проблеме с чем-то еще.

    PS: у нас TFT сколько бит? 18? Там 6 бит на цвет и куча ухищрений чтобы показать то что больше этих 6 бит.

Это А, и Б - у вас на примерах, где якобы лесенка градайия там точно сильно меньше 256 уровней

Ну так, лесенку вы прекрасно увидите, если градиент будет не от 0 до 255, а скажем, от 240 до 255.

PS: у нас TFT сколько бит? 18? Там 6 бит на цвет и куча ухищрений чтобы показать то что больше этих 6 бит.

Где-то 6, где-то 8, а где-то и 10.

Ну так, лесенку вы прекрасно увидите, если градиент будет не от 0 до 255, а скажем, от 240 до 255

поделите эту лесенку еще на 4 секции и она как была так и останется, хотя вы и сделали себе 10 бит.

Не останется, потому что разница между соседними оттенками при 10 битах станет в 4 раза меньше.

200/4=50, не 1-2 пикселя, а 50, лесенка как была так и останется.

в чем необходимость в 1024 градациях если человек не различает даже 256.

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

Профиль по диагонали (зелёной линии) вот такой:

На десятибитном мониторе градаций в четыре раза больше, и тут глаз уже абсолютно ничего не различает, всё абсолютно гладко. Все 256 оттенков человек, возможно и не различает, но в отдельных диапазонах яркостей разница на одну градацию вполне различима (конечно, если там будет одиночный пиксель, то без шансов, а если достаточно большие области, которые двигаются к тому же, то вполне).

В очередной раз выкладываю тут подобную картинку:

Может наконец закроем раз и навсегда тему с "достаточностью 6.5 бит для человека"?

а почему вы решили что вы обязательно должны видеть эту надпись?

В программировании графики очень часто используется приём, когда например черный цвет 0, 0, 0 заменяют на 1, 1, 1 чтобы сделать что-то нужное автору программы. Визуально это не видно (и не должно быть видно). Например подобный приём есть у автора в этой статье.

а почему вы решили что вы обязательно должны видеть эту надпись?

Может быть потому... что я её ВИЖУ?))

Я разбираюсь в "программировании графики" - это тренд сейчас такой у дизайнеров, резануть контраст "чтобы глаза не вытекали". И это должно быть видно - чёрный должен быть чёрным, а не тёмно-серым. Другое дело, что у вас может не быть в поле зрения "опорных цветов" - но с монитором это не прокатит, переключитесь на другую вкладку и "а... так вот что значит ЧЁРНЫЙ", впрочем это уже из несколько другой оперы...

Может быть потому... что я её ВИЖУ?))

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

Как пример, к нам в универ привезли партию в 148 мониторов Samsung, на всех при профиле "Стандартный" в Проводнике и Excel не было видно серых линий разделяющий зоны столбцов и ячеек. Регулировали все мониторы выбирая профиль "Кино".

И это должно быть видно - чёрный должен быть чёрным

Но он будет чёрным только у вас, все остальные жители планеты увидят его серым, так что ваши истерики по этому поводу не более чем пунктик в вашей голове, к реальности он никакого отношения не имеет.

Другое дело - типография, но там мониторы настраивают так, чтобы видеть картинку такой, какой её напечатает печатающее устройство (собственно у меня так монитор и настроен).

Я могу и сейчас настроить свой монитор и я буду видеть эту надпись

Ну-ка? И как вы это сделаете? Контраст поднимите?)) Единственный тут выход - калибровать монитор.

только монитор перестанет быть тем устройством которое полезно при работе с фото

И он тогда как раз станет тем устройством, которое полезно при работе с фото.

Почему вы решили что изменение яркости точки на 1 значение обязательно должно давать контрастную границу?

А какую ещё границу должны давать два дискретных значения?

Но он будет чёрным только у вас, все остальные жители планеты увидят его серым, так что ваши истерики по этому поводу не более чем пунктик в вашей голове, к реальности он никакого отношения не имеет.

Какие ещё истерики? Вы понимаете что я веду речь исключительно о калиброванной аппаратуре? Что вот он физический референс, имеющий прямое отношение к реальности, а не бытовые рассуждения "а у меня монитор вот так показывает". Два откалиброванных монитора покажут одинаковый цвет - собственно в этом и суть калибровки.

Другое дело - типография, но там мониторы настраивают так, чтобы видеть картинку такой, какой её напечатает печатающее устройство (собственно у меня так монитор и настроен).

Опять ошибка)) Нельзя мониторы "настраивать под какой-то девайс". Вот он и врёт у вас по цвету. Монитор должен быть откалиброван, печатающее устройство профилировано. Всё. Чтобы увидеть картинку такой какой она будет на печати - в графических редакторах есть режим экранной цветопробы.

Что-то мне надоело уже на эту тему распинаться...

Ну-ка? И как вы это сделаете? Контраст поднимите?)) Единственный тут выход - калибровать монитор.

А какая разница как?

И он тогда как раз станет тем устройством, которое полезно при работе с фото

Нет. Потому что сейчас он откалиброван под принтер и я вижу картинку примерно такой, как она выйдет после печати, что от устройства и требуется, а то что я не вижу серое на сером в одну градацию яркости к этому никакого отношения не имеет.

А какую ещё границу должны давать два дискретных значения?

Я не вижу вокруг полосатого мира и не вижу полосатость на мониторе.

Какие ещё истерики?

ну вас же парит что 0,0,0 не то же самое что и 1,1,1

Вы понимаете что я веду речь исключительно о калиброванной аппаратуре?

Нет, вы об это не сообщали.

Что вот он физический референс, имеющий прямое отношение к реальности

Как наличие суслика в степях Монголии влияет на ваше решение кушать йогурт или смузи сегодня за завтраком? Но суслик же там, он есть, пусть вы го не видите, но он там есть!!! Или вам плевать на суслика? Так почему вы не можете принять то, что мир не требует такого в промышленных масштабах?

Два откалиброванных монитора покажут одинаковый цвет - собственно в этом и суть калибровки.

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

Нельзя мониторы "настраивать под какой-то девайс"

можно, потому что это рабочее место того, кто печатает на конкретном принтере.

Вот он и врёт у вас по цвету

Врёт или не врёт вообще не важно, важно то, что я распечатав серую картинку на бумаге не увижу никакой надписи, то есть в практическом смысле наличие этой надписи для меня индифферентно.

Монитор должен быть откалиброван, печатающее устройство профилировано

Возможно в каком-то идеальном мире это работает, а в быту имеем что имеем. Вы еще забываете что для разной бумаги разные настройки печати и если задуриваться так как хотите вы, то я прокляну эту работу. Поэтому у меня есть калибровка монитора под принтер и в зависимости от типа бумаги я меняю параметры перед печатью самой картинки. Это не журнал "Vogue", поэтому и оборудование простое и требования невысокие.

в графических редакторах есть режим экранной цветопробы

Я не пользуюсь графическими редакторами где есть такая функция и смена бумаги как и смена краски слишком частое явление чтобы под них упорно и дотошно калибровать технику. Погрешность определяется опытным путём и сохраняется в памяти оператора.

Что-то мне надоело уже на эту тему распинаться

Да вас никто и не просил. Главное не ясно какого результата вы хотите добиться.

А какая разница как?

Ну просто интересно - вы же предлагаете, значит наверное у вас есть алгоритм решения)) А то это очень напоминает "да для этого достаточно лишь присобачить вечный двигатель (машину времени и т.п.), а как - детали меня не интересуют"))

Нет. Потому что сейчас он откалиброван под принтер

Извините, возможно буду груб, но очень прямолинеен. Пока вы вот не осознаете то, что я напишу ниже - даже не пытайтесь на тему цветовоспроизведения дискутировать. Категорически нельзя устройства цветовоспроизведения "калибровать друг под друга"!

Во-первых, как вы себе эту процедуру представляете? Вы сознательно хотите запихнуть (и, видимо, как-то запихнули) динамический диапазон монитора в динамический диапазон печатающего устройства (при том что разница в порядки)?.. А главное, какой в этом смысл? Я ещё раз вам повторю (вы, похоже, не читаете мои комментарии) режим "экранной цветопробы" есть в любом приличном графическом редакторе.

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

Я не вижу вокруг полосатого мира

Разумеется. Мир не дискретный)) Дуализм фотона до сих пор находится в статусе аксиоматики. Но, тем не менее, полос вокруг вас навалом - в фотоаппараты специально против этого антиалиасинговый фильтр ставят перед матрицей))

 и не вижу полосатость на мониторе

Ну из того что мы выяснили выше - это как раз и неудивительно))

ну вас же парит что 0,0,0 не то же самое что и 1,1,1

Почему меня должна "парить" какая-то абстрактная оценка? Я просто лишь отмечаю что это априори неверно. Точно так же как 2*2 != 5.

Нет, вы об это не сообщали.

Это подразумевается по дефолту. Иначе вести дискуссии на тему цвета просто бессмысленно.

Как наличие суслика в степях Монголии влияет на ваше решение кушать йогурт или смузи сегодня за завтраком? Но суслик же там, он есть, пусть вы го не видите, но он там есть!!! Или вам плевать на суслика? Так почему вы не можете принять то, что мир не требует такого в промышленных масштабах?

Как "элегантно" вы перешли от раздутой метафоры (я так понимаю, с неким уклоном в сарказм?) к постулату "мир не требует такого в промышленных масштабах"? Ну да, наверное поэтому везде первый совет на тему корректного отображения цвета - откалибровать монитор?))

Это, на самом деле, отнюдь недорогое занятие. Я лично просто взял напрокат на пару дней на Авито. Пооткалибровал всю аппаратуру. Надо бы вот снова повторить...

Тем более вы работаете (ну или пытаетесь) с цветом...

В некоторые дорогие девайсы калибраторы даже встраивают на заводе. А вы "мир не требует в промышленных масштабах"...

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

Именно поэтому их и надо калибровать))

Так что покажут они вам не один цвет, а какие-то цвета в рамках какого-то цветового пространства и даже после калибровки физические отличия будут.

Нет. Вы не понимаете сути процедуры, но спорите... Зачем? У вас приступ графомании?

В этом месте вам и придётся выбрать - какая степень разброса значений неточности лично вами будет принята как "одинаковый цвет".

Просвещайтесь: https://vc.ru/u/297528-tipografiya-bronepoezd/289204-delta-e-kak-opredelit-tochnost-cvetoperedachi-pri-otpechatke-i-rabote-za-monitorom

Дальше уже что-то разбирать бессмысленно...

Категорически нельзя устройства цветовоспроизведения "калибровать друг под друга"!

когда вы их калибруете, вы делаете тоже самое, ибо если A == K == B, то есть мы за точку калибровки берём К, то после калибровки A == B. Если мы сразу сделает A == B эффект будет таким же.

Просвещайтесь

Первое - я знаю про это, второе - в моей жизни я с ним никогда не сталкиваюсь, как не сталкиваюсь ни с калибровкой, дизайном или типографией.

Я ещё раз вам повторю (вы, похоже, не читаете мои комментарии) режим "экранной цветопробы" есть в любом приличном графическом редакторе

Софт который использую я такой функции не имеет, а так как результат меня полностью устраивает, то я не вижу смысла делать как-то иначе.

Я не вижу на картинке никакой надписи.

Тут много факторов, включающих особенности монитора и зрения.

А если так:

(Попробуйте поскроллить экран немного вверх вниз, или яркость монитора чуть покрутите, возможно станет заметнее)

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

ПС: если на первой картинке еще просматривался еле заметный градиент в районе надписи, то на второй вообще ничего.

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

Я бы наоборот сказал, что если вы не видите этого эффекта, то это не значит, что его нет. На самом деле весь мир в подавляющем большинстве работает на восьми битах на канал, и это в общем-то не создаёт никаких неудобств, просто есть возможность получить и 10 на мониторе, мне было интересно с этим поэкспериментировать. Жаль, я не могу показать экран моего монитора — там это видно. Но повода бросать всё и переписывать на 10 бит, конечно же нет. Но если в каком-то очень частном случае это будет слишком заметно, то есть, так сказать резерв для улучшения.

Речь не о том, создает это неудобства или нет, речь идет о том, нужно это или нет. Ок, часть людей градацию 1/256 видят, часть - нет. Вы не сможете это никак использовать. Вам всегда придется ориентироваться на большинство. Вы никогда не будете оформлять постер или баннер, создавать изображение где часть информации одни люди смогут увидеть, а другие нет. За такую работу денег не заплатят, потому что смысл изображения - передать информацию максимальному количеству людей. Аналогично и с мониторами. Они должны выводить информацию так, чтобы любой человек мог ее воспринять. Допустим работает за монитором человек с хорошим зрением, различает 10 бит, делает свою нужную работу. Потом он заболел, на его место пришел другой, который различает только 7 бит. Все, он уже работу делать не сможет, дело встало, так получается? Или нужно специально отбирать людей по разрешающей способности их глаз?

Все, он уже работу делать не сможет, дело встало, так получается? Или нужно специально отбирать людей по разрешающей способности их глаз?

Ну как бы да. Именно так это и работает)) В цветокоры не зовут дальтоников. Равно как и в дирижёры не возьмут человека с отсутствием музыкального слуха.

Кстати, по поводу музыкального слуха - отличная аналогия)) Сходите на какие-нибудь профессиональные музыкальные форумы и посетуйте им, что вы не слышите разницу в полтона, а посему пущай композиторы в качестве минимального музыкального интервала используют только целый тон))

В этом смысле мне даже забавно когда музыкант слушает музыканта, это немного напоминает общение сектантов. Но писать музыку для музыкантов это как-то странно мне кажется. Соответственно нет смысла выдавать в народ полутона. Это же работает и с запахами, вкусами и т.п. Есть шоколад Алёнка, а есть Callebaut, а есть я, для которого это просто невкусная кондитерская фигня.

Вот вы и определитесь, вы картинку делаете для себя и еще десятка дизайнеров или для массы? Когда вы выпускаете в народ постер вы учитываете что его будут читать дальтоники? Или у вас тру постер для тру колористов?

Мы просто говорим тут о вещах, находящихся на грани восприятия. Давайте более строго подойдём к вопросу. Вот выше написали, что человеческий глаз способен различать различие интенсивности в доли кандел на кв. метр, это факт. Если я выставлю R G B на максимум, то белый из офисного монитора будет светить мне примерно 200 кд/м², ну а медицинский так и вообще под 400 кд/м², при этом в нашем распоряжении всего 256 градаций. Соответственно разница в одну градацию по трём каналам даст разницу интенсивности близкую к 1 кд/м², плюс минус. Это видно (хотя и не всем). Если это не беспокоит никак, то и говорить не о чем. Если же это явно видно на хорошем мониторе, то вот есть возможность перейти на 10 бит.

Это как с музыкой. Я люблю хороший звук (но не до такой степени, чтобы греть золотые провода). У меня был приличный комплект, потом я решил заменить усилитель на получше и не услышал практически никакой разницы, но потом заменил акустику и — вот оно, теперь разница между усилками стала очевидна.

Да, и что касается постеров - я лет тридцать назад работал в типографии (для меня термины треппинг, линиатура, углы растра, раздавливание точки и т.д. - вовсе не пустой звук) и тогда проблема полосатых градиентов представляла порой реальную головную боль на качественных постерах, там складывалось много факторов, что иногда уменьшало динамику до такой степени, что заказчик просто не принимал контактную цветопробу. Ну и техника была не чета современной. Боролись аккуратным добавлением шума, либо переходили на многокрасочную печать, и т.д. Но одно важно - надо было понять причину наблюдаемого эффекта и что именно следут подкрутить для улучшения. Когда газеты печатали, никто конечно особо не парился, а вот высококачественную печать все буквально под лупой рассматривали.

Если это не беспокоит никак, то и говорить не о чем

Даже если бы беспокоило есть факт, что это в первую очередь зависит от монитора и в последнюю от моего желания.

Это как с музыкой. Я люблю хороший звук (но не до такой степени, чтобы греть золотые провода). У меня был приличный комплект, потом я решил заменить усилитель на получше и не услышал практически никакой разницы, но потом заменил акустику и — вот оно, теперь разница между усилками стала очевидна.

Я долго общался с меломанами, которые и провода греют и биты в MP3 различают. И переслушал я штук 15-20 разных систем с разной степенью дикости цены. И я видел только то, что звук разный. Не лучше/хуже, а он просто разный. И то что нравится одному может совершенно не нравится другому. Поэтому я в этой музыкальной истерии ничего кроме бешенства не вижу. Поэтому я спокойно слушаю наушниками за 200 рублей MP3 файлы - я не понимаю почему просто разный звук №1 должен у меня вызывать какое-то чувство предпочтения с №2. Я могу слушать оба. Я никогда не пользуюсь эквалайзерами, это не имеет смысла.

тогда проблема полосатых градиентов представляла порой реальную головную боль на качественных постерах, там складывалось много факторов, что иногда уменьшало динамику до такой степени, что заказчик просто не принимал контактную цветопробу

Это проблема печатающего устройства и там всё совсем в других категориях измеряется, а не в битности монитора.

Но одно важно - надо было понять причину наблюдаемого эффекта и что именно следут подкрутить для улучшения

Вы крутили на компе, но для печатающего устройства, а не для созерцания. Видеть всё вы могли как угодно.

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

К нашему разговору это не имеет никакого отношения.

Я честно говоря не очень понимаю суть спора. Речь лишь о том, что некоторые мониторы и графические адаптеры технически способны выводить 10 бит картинку, а не 8. Показана чисто техническая возможность, как этого добиться. Разница на том обрудовании, что есть у меня, — заметна. Если б её вообще не было — я бы честно написал.

Точно также есть возможность цифровать аудио с дискретизацией 44100 Гц/16 бит, а можно ведь и в 96 кГц/24 бит или даже 192кГц. Весь интернет тут же взрывается "это никому не нужно". Ну это-то тут причём, это же просто техническая возможность так сделать.

Давайте оставим вопросы субъективной практической применимости за кадром, каждый ведь может сам попробовать и так и сяк и для себя решить надо ли ему это или же нет.

Дело в том, что при наличии протяжённых градиентов с небольшим перепадом яркостей мы можем получить эффект бандинга (полосатости). На КДПВ я искусственно увеличил контраст с одной стороны и добавил шум с другой, но если вы хотите реально оценить этот эффект, то вот три честные рампы в 20 градаций каждая, разных интенсивностей, начиная с уровней 50, 100 и 150, между шагами я поставил белые метки:

Разница на том обрудовании, что есть у меня, — заметна. Если б её вообще не было — я бы честно написал.

И я вам честно пишу, что если вы эти интервалы уменьшите в 4 раза, то ровным счётом ничего не изменится.

Точно также есть возможность цифровать аудио

Плохой пример, он не соответствует той проблеме которую я озвучил предыдущим абзацем.

Давайте оставим вопросы субъективной практической применимости за кадром, каждый ведь может сам попробовать и так и сяк и для себя решить надо ли ему это или же нет.

Повторю еще раз, у вас на интервале в 500 пикселей 9 градаций, то есть 50 пикселей на цвет, даже если вы сделаете 12, то ступенька останется. То что лично вы её не видите на том мониторе и при тех настройках ровным счётом ничем не отличается от того же эффекта у меня но на 8 битах.

То есть мы говорим о качестве статьи и выводах, а не о субъективных взглядах.

Повторю еще раз, у вас на интервале в 500 пикселей 9 градаций, то есть 50 пикселей на цвет, даже если вы сделаете 12, то ступенька останется. 

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

В реальности на экране вот что будет, если измерять интенсивность свечения пикселей:

Но неужели вы разницы между этими двумя графиками не видите?

Вижу что ступеньки с шагом X превратились в ступеньки с шагом в Y. Но ступеньки как были так и остались.

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

Тогда почему вас не устраивает эта констатация факта и моя претензия к вашей статье?

моя претензия к вашей статье?

Я просто старательно пытаюсь понять суть вашей претензии, и если она оправдана, то с удовольствием поправлю то, что может вводить людей в заблуждение.

Ведь всё что мы сделали - это просто переключились в десять бит, получили на экране чуть больше тысячи оттенков серого (ну или чуть больше миллиарда возможных цветов вместо 16 миллионов, если хотите). То, что ступеньки остаются (разница между соседними градациями), это очевидно, но то, что их высота (относительная яркость) стала вчетверо меньше - это тоже очевидно. Единственная фраза, к которой, вероятно, можно придраться это "эффект полос бандинга, хорошо видимый в восьмибитном окне действительно отсутствует при отображении в 10 бит." Ну давайте я заменю слово "отсутствует" на "визуально значительно уменьшился до состояния неразличимости на данном тестовом мониторе" и добавлю поясняющий график из коммента выше. Или вас что-то ещё смущает?

Ну вообще-то 96/192 вполне нужно, причём исключительно для того, чтобы было проще делать аналоговый фильтр перед АЦП. Больше действительно ни для чего.

Аналогия с аудио немного не верна. Потому-то мы тут и спорим))

Верхний предел частоты слышимого звука давно известен и обсосан со всех сторон. А вот в вопросах визуальной тональной различимости довольно глухо... Ну у xrite был когда-то тест на "цветовой iq"

Аналогия с аудио немного не верна. Потому-то мы тут и спорим))

Верхний предел частоты слышимого звука давно известен и обсосан со всех сторон. 

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

Но если серьёзно, то я как-то предмета спора и не вижу, это же просто чисто технический пост о том, как можно получить десять бит, тут уж проще не бывает и мне кажется всё достаточно очевидно с технической стороны. Ну а уж "надо это или нет или там видно/не видно", мне кажется надо просто оставить в стороне. Эх, жаль у меня монитора понавороченней нет, типа RadiForce GX560, который не просто 10 бит, он 1024 градации из 14 бит палитры (точнее 16369 градаций) выбирает, либо GS520, который 12 бит и в 4096 одновременно отображаемых градаций умеет, да прецизионного измерительного прибора до кучи.

Я закончил эру таких мониторов на Mitsubishi Diamond Pro 22 дюйма, точную модель уже не помню. В соседнем офисе Barco стоял, и у него, кажется своя прприетарная видюха была.

Аналоговых выходов давно не видел, хотя есть переходники и конвертеры, но качество DAC там под вопросом.

C 12 бит, кстати, любопытно - цветные мониторы подключаются по Display Port, примерно как я написал, а вот чёрно-белые используют обычный DVI и берут информацию из цветных каналов. По четыре бита из каждого канала - и вот 4096 оттенков.

Какие ещё махинации?)) Речь о том, что 8 бит на канал - это необходимый минимум(!) для цветовоспроизведения. Безусловно, бывают сюжеты и условия когда 8 бит избыточны, но зачем изначально закладываться под потенциальную деградацию?

В реальной жизни "при просмотре картинок в кинотеатре" вам может и 6 бит будет достаточно, а вот решив поразглядывать 6-битное фото вы с большой долей вероятности увидите постеризацию и "провалы в тенях"...

Если бы вы немного разобрались в теме и почитали специально посвященную этому литературу, то осознали бы что 8 бит на канал - это еще и избыточно. Потому как цветовое разрешение у глаза примерно в 4 раза хуже чем яркостное потому как колбочек в глазу намного меньше чем палочек. Благодаря этому в телевидении, например, яркостную составляющую передают в полосе 6 МГц, а цветовые составляющие в полосах по 1,5 МГц. И получают на выходе нормального качества изображение. Это не деградация, а научный подход к делу, который вы так старательно пытаетесь игнорировать. Когда параметры сигнала и среды передачи выбираются ровно такими какими должны быть "по уму", а не потому что кому то так захотелось и он не может внятно объяснить зачем.

И получают на выходе нормального качества изображение.

Ну не совсем. Цифру тоже кодируют в YUV, и получают компромиссного качества изображение с хорошо заметными артефактами (где цветные линии, например, подпорчены).

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

Ну вот как у вас это получается? "цветовое разрешение у глаза примерно в 4 раза хуже чем яркостное потому как колбочек в глазу намного меньше чем палочек" - а ушей больше чем носов, поэтому человек звуки различает лучше, чем запахи?

"Научный подход" и на тебе "цветовое разрешение примерно в 4 раза хуже"...

"По уму" ребята вот такие обои в своё время сделали:

Hidden text

Где гамму гораздо проще настроить по правой шкале, а не по левой. Именно за счёт того, что человеческий глаз очень чувствителен к изменению цветовой (а не яркостной) составляющей околонейтральных тонов.

Только на эту картинку нужно смотреть в 100% увеличении.

Ну разумеется. Но я её привел просто как иллюстрацию подхода.

Просто тот сайт умер, и макс.разрешение 1920х1080, а у мониторов разрешение подросло.

Да откройте вы Фотошоп, ткните пипеткой в фон (не обязательно на самом деле) и разместите на нём картинку с исходным разрешением.

Могу это даже для вас сделать - какое разрешение надо?))

UPD: Чуть не забыл - там другая проблема в Винде может всплыть (не помню в каких версиях)... Она обои в lossless формате дублирует в жпег (на котором, понятное дело, всё расползается) и юзает именно этот файл. Как же у меня с этого подгорело, когда в первый раз столкнулся - это что? Забота о дисковом пространстве пользователя? Как бы ему пару мегабайт сэкономить (причём на подобных синтетических изображениях именно png даст выигрыш в размере) и испортить изображение? Но тоже решаемо.

UPD2: Была ещё такая софтина как CLTest (её как раз на принципе реалколорских обоев сделали) - там градиенты на весь экран раскрыть можно (правда других элементов нет) - можно с неё скриншот сделать:

Hidden text
ПКМ-> "Открыть в новой вкладке"->"Сохранить как..."
ПКМ-> "Открыть в новой вкладке"->"Сохранить как..."

Я умею открывать картинки в 100% увеличении. Но мелко будет. Как и если рамочку вокруг сделать. Ну и Colormunki у меня есть, чтобы без костылей обходиться.

Так это же не для настройки)) У меня до сих пор стоят - просто можно сразу чекнуть, что "цвет брешет" - профиль не подгрузился, какая-то софтина своими настройками перебивает и т.п.

важно здесь другое - я например совсем не понимаю что я тут должен настраивать?

Вот на этой увидел надпись (с iPhone 15 pro max, у которого очень хороший экран).

А я вижу вполне отчётливо. "Привет, я 8 - битная надпись". Дольше что?

Ну разве что только то, что вы видите перепад яркости ровно в одну градацию серого (это видят не все и не везде). И это минимально возможный перепад яркости на восьмибитном мониторе. На десятибитном же мониторе минимально возможный перепад яркости в одну градацию будет в четыре раза меньше, соответственно вы эту надпись уже не увидите (а чтобы увидели, разница должна быть в четыре градации).

И это минимально возможный перепад яркости на восьмибитном мониторе.

Ну на самом деле нет. Я-то дёрнул сразу все три канала, а мог бы только один - это ещё сложнее различимо (но лично я различаю, хотя и "сложнее" - дискуссионный вопрос, человеческий взгляд чувствительнее к цветовым модуляциям, чем к яркостным...).

Ну и насчёт 10 бит - неизвестно как оно... Скажем так, 8 бит - явно недостаточно для "передачи без потерь". Когда начнётся "избыточно" - надо тестить...

Я-то дёрнул сразу все три канала, а мог бы только один

Да, такой способ искусственного увеличения числа "градаций" при наличии лишь 8 бит на канал тоже существует, это когда мы строим LUT, отступая от серого на плюс минус одно значение по одному каналу в промежутках между "чистым" серым. Я как-то давно делал тест, получалась весьма различимая радуга, но на хорошем мониторе я это не тестил, возможно на досуге сделаю ещё один подход к снаряду.

На самом деле вы очень актуальную проблематику подняли. Сколько я в своё время с этими градиентами намучался... Весь прикол в том, что проблемы в основном с "естественными градиентами", а не синтетическими. Поскольку серьёзно увлекался фотографией, периодически вставал задача вписывания "тонкого градиента" (обычно на небе такие вещи постоянно проступают) в узкий цветовой охват фотобумаги. Хотя, порой и на мониторах могло вылезти (особенно если цветовые пространства не совпадают). И тут обычно или дизеринг, либо шаманство с режимами наложения, масками, размытием и т.п.

Верно глаголете) Похожие проблемы встречаю весьма часто при обработке карточек с плавными градиентами. Так что- не одной медициной тема ограничивается. Причём, даже если камера поддерживает 10бит и выше, не факт, что ПО для обработки РАВ его поддерживает, увы.

я её увижу не от битности монитора, а от настроек монитора.

Дальше можете поменять его на монитор, умеющий отображать более чем 130 градаций яркости.

Смотрите, пример из теста

ERROR: 10 bit video is either not supported, or not currently enabled on this video card.

то увидите, что отличие там ровно на один уровень

...

На десятибитном мониторе градаций в четыре раза больше, и тут глаз уже абсолютно ничего не различает, всё абсолютно гладко

я прекрасно понимаю о чем речь, но у меня на экране 1920 точек, а на кубике, который еще меньше экрана по размерам, у вас 9 (ДЕВЯТЬ) ступенек на расстоянии в 500 пикселей, то есть на один цвет приходится ~50 пикселей. Увеличив битность до 10, вы получите 12 пикселей на ступеньку, что очевидно же, не избавит вас от проблемы.

Градиент в целом плохой пример, так как он "ровный" только на ширине ступени в 1 пиксел (ну или если пиксели мелкие очень, то может на 2-3). И это видно например на демосцене 80-90-х.

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

PS: у меня монитор PVA, на нём я не вижу ступеньки, для меня это ровный градиент, ниже фото с монитора, надеюсь понятно почему фото а не скриншот ;)

Если что полоски это сетка матрицы, а зона под 85 темнее потому что у меня там подсветка подсела. но в целом видно что ступенек нет совсем. Если что этот монитор используется для фотографий и со своей задачей замечательно справляется, после TN и IPS он буквально бомбический по цветности.

ERROR: 10 bit video is either not supported, or not currently enabled on this video card.

Тогда могу лишь посоветовать поиграть с моими примерами — я не проверяю, что конфигурация неподдерживаемая, они должны запускаться.

Увеличив битность до 10, вы получите 12 пикселей на ступеньку, что очевидно же, не избавит вас от проблемы.

Частично избавит в том смысле, что и перепад яркости ведь вчетверо уменьшится. Если у меня для градации 93 яркость монитора, скажем, 10 кд/м², а 94 отличается, предположим на 1 кд/м²- и будет 11 (я это очень грубо и из головы, не меряя), то при 10 бит это разлетится на четыре ступеньки 372...376, и разница между отдельными ступеньками будет уже не одна кандела на кв.метр, а лишь четверть — такого отличия яркостей я точно не увижу.

Ну и насколько сильно этот эффект проявляется - это и от монитора зависит - тут много параметров - линейность, размер точки и форма отдельных пикселей, которые как бы "дизеринг" добавляют и т.д. Я этот эффект на EIZO вижу даже чуть хуже чем на DELL. Но вижу. Я и на вашей фотографии их вижу, если немного поскроллить вверх/вниз.

Я и на вашей фотографии их вижу, если немного поскроллить вверх/вниз.

Дома на ТВ Haier 43" который у меня висит вместо монитора при скролле я боковым зрением на фото вижу переходы, а при прямом взгляде не вижу, возможно запоздалость матрицы показывает такое хорошо в движении.

Частично избавит в том смысле, что и перепад яркости ведь вчетверо уменьшится. Если у меня для градации 93 яркость монитора, скажем, 10 кд/м², а 94 отличается, предположим на 1 кд/м²- и будет 11 (я это очень грубо и из головы, не меряя), то при 10 бит это разлетится на четыре ступеньки 372...376, и разница между отдельными ступеньками будет уже не одна кандела на кв.метр, а лишь четверть — такого отличия яркостей я точно не увижу.

Ну получается вопрос скорее в мониторе.

а лишь четверть — такого отличия яркостей я точно не увижу.

Уверены?)) Человеческий глаз вообще-то способен регистрировать отдельные фотоны.

Уже не уверен, надо сделать тест с текстом, отличным на одну градацию и пробежать в динамике по всему диапазону, выкрутив яркость на максимум. Но на градиентах я пока на 10 бит ступенек ещё не видел, как бы не старался.

Градиент ещё может "гулять" и по насыщенности, и по оттенку. Особенно если упирается в край цветового диапазона (но тут как раз глаз не сильно чувствителен).

 выкрутив яркость на максимум.

Ну у вас тогда в светах чувствительность просядет. В целом, в физиологии (и зрения, и слуха...), чувствительность выше как раз посерёдке диапазона.

UPD: Попробуйте на "среднесером цветном градиенте" - от розово-серого к зелёно-серому. Чтобы не насыщенные цвета были - к таким изменениям глаз чувствительнее всего.

Забыл добавить - не трогайте яркость на мониторе. Она должна быть той, под которую калибратор строил профиль. Иначе у вас цветовое тело монитора другое получается, в том числе и дельтаЕ.

Я себе, помню, просто цветовую температуру поднял на 1500К - у меня объём sRGB изменился со 122% до 130%. И соответственно всё пересчиталось...

Прекрасно вижу ступеньки на вашей фотографии.

значит у вас так настроен монитор, у меня там нет ступенек на двух мониторах и на телефоне, которым делал это фото

Так - это как? Фотоаппарат не передаёт, но глазом внизу чётко видно все квадраты.

Так - это как?

очевидно таким образом что вы видите эти переходы.

Фотоаппарат не передаёт, но глазом внизу чётко видно все квадраты

не понимаю на что я должен смотреть?

Кхм, а что именно так можно?
int attribsDesired[] = {

WGL_DRAW_TO_WINDOW_ARB, 1,

WGL_ACCELERATION_ARB, WGL_FULL_ACCELERATION_ARB,

WGL_RED_BITS_ARB, 10,

WGL_GREEN_BITS_ARB, 10,

WGL_BLUE_BITS_ARB, 10,

WGL_ALPHA_BITS_ARB, 2,

WGL_DOUBLE_BUFFER_ARB, 1,

0,0 }

В смысле просто указывая большую битность цвета. Я такое делал то отталкивался от пепера нвидии и там было немного иначе...
const int pAttribsHDR[] = {

WGL_DRAW_TO_WINDOW_ARB, GL_TRUE,

WGL_SUPPORT_OPENGL_ARB, GL_TRUE,

WGL_DOUBLE_BUFFER_ARB, GL_TRUE,

WGL_PIXEL_TYPE_ARB, WGL_TYPE_RGBA_FLOAT_ARB, // пиксел формат должен быть флоат

WGL_ACCELERATION_ARB, WGL_FULL_ACCELERATION_ARB,

WGL_RED_BITS_ARB, 16, WGL_GREEN_BITS_ARB, 16,

WGL_BLUE_BITS_ARB, 16,

WGL_ALPHA_BITS_ARB, 16,

WGL_DEPTH_BITS_ARB, 24,

WGL_STENCIL_BITS_ARB, 8,

WGL_SAMPLE_BUFFERS_ARB, samples ? GL_TRUE : GL_FALSE,

WGL_SAMPLES_ARB, samples,

0 };

И да нужна вин10 минимум.

нвидия выпускала несколько доков с разными вариантами включения этого режима, я вроде последнгюю версию нашёл. Я напрямую установить WGL_*_BITS_ARB не могу, потому эти дефайны в GLFW вообще неопределены, но внутри в библиотеке оно устанавливается где-то в wgl_context.c.

Возможно устанавливая их в максимум в 16 OpenGL при отображении сам выбирает максимально допустимую для данного железа битность.

Если я вот так поставлю, то оно тоже работает:

glfwWindowHint(GLFW_RED_BITS, 16);
glfwWindowHint(GLFW_GREEN_BITS, 16);
glfwWindowHint(GLFW_BLUE_BITS, 16);
glfwWindowHint(GLFW_ALPHA_BITS, 16);

Пиксел формат флоат быть в общем-то не обязан (хотя и float тоже работает, я когда не мог добиться результата, то думал, что дело в этом)

Понятно. Просто у себя проверить будет сложно, я давно все на фбо переписал. Вот что нашел по glfw
https://github.com/glfw/glfw/issues/1907
glfwWindowHint(GLFW_FLOAT_PIXEL_TYPE, GLFW_TRUE);

Подскажите пожалуйста, вроде тот же OpenGL поддерживает цвета в float, что позволяет оперировать цветами, не привязываясь к настройкам видеокарты и монитора ?

Да, конечно.Там, где я рисую геометрические фигуры в OpenGL, я и пользуюсь float, задавая цвет от 0 до 1.0f. С изображением тоже самое - можно в принципе нормировать его на диапазон 0...1, поместить его в float массив и работать с ним как float, надо только вот тут поправить:

glTexImage2D(GL_TEXTURE_2D, 0, GL_RGB10, ImageWidth, ImageHeight, 0, GL_RGB, GL_FLOAT, pixels);

Это всего лишь представление данных, к настройкам видеокарты или монитора оно нас никак не привязывает, эти настройки управляют лишь тем как картинка будет рендериться (ну или "ремаппиться") на мониторе. Что float что 16 бит на мониторе будет ровно тоже самое.

рендер в фбо с флоат текстурой и последуюшим тонмапом и выводом на обычный монитор

рендер в фбо с флоат текстурой и последуюшим тонмапом и выводом на обычный монитор

За кусочек рабочего кода моя благодарность вам не будет иметь границ в пределах разумного.

С кусочком сложно так как это часть игрового движка. В личку лучше напишите я кину ссылку на svn с пояснениями, что у меня там и как

Sign up to leave a comment.

Articles