Яндекс.Метрика

Чем калибровать монитор

000000

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

(опыты в Linux Mint 20.1)



    Начало работы над системой  было описано здесь.
    После общения с пользователями компьютеров на некоторых форумах, было принято решение отказаться от Octave, полностью перевести интерфейс системы на Python3, а также исключить применение системных программ. Это позволило сделать систему мультиплотформенной.
    Скачать новую версию можно по ссылкам:

Для Windows с исполняемым файлом exe variables.exe.

Для Linux с исполняемым файлом variables запускаемым файлом start с иконкой теста. Дополнительно надо установить xcalib, если не установлена.
  
    Отличие в этих комплектах минимальное. В linux версии применяется вызов загрузчика LUT из состава программы Калибрилла посредством wine. В windows версию дополнительно включён файл xcalib.exe.
    Других отличий в версиях нет. 
Скомпилированные версии не поддерживают темы рабочего стола.

    Работа системы проверялась на Windows 7 и на Linux Mint 20.1.

    Желательно установить DisplayCAL. Как выяснилось недавно, в новые версии linux DisplayCAL перестали включать из-за отсутствии поддержки Python3.
Для Windows программу можно скачать с сайта https://displaycal.net/.
Если не установлен DisplayCAL, просто не будет работать один из режимов загрузки табицы LUT в систему, их в Variables предусмотрено три.
    В обновлённую версию dispwin включён.
    Режим 1-dispwin. Данные для корректировки цветопередачи из подготовленной Variables таблицы  LUT_variables.cal загружаются в систему управления цветом. В результате корректировка применяется ко всем мониторам.

    Режим 2-Калибрилла. Данные для корректировки цветопередачи из подготовленной Variables таблицы 256.txt загружаются в микросхемы видеокарты и действуют на текущий монитор.

    Режим 3-xcalib. Данные для корректировки цветопередачи из подготовленного Variables набора переменных собранных в команду в файле xca.txt передаются видеокарте программой xccalib, и влияют на текущий монитор.

Работа с системой

    Основная идея сохранена. Это визуальная корректировкакривых по трём каналам тонопередачи. Кривые генерируются Variables на основе введённых пользователем коэффициентов.
На основе созданных пользователем кривых создаются таблицы LUT или команда для xcalib.

    Опишем сенс работы с Variables, применив по возможности все функции системы.

    Для запуска системы необходимо запустить исполняемый файл variables.py. Как вариант, и для Linux и для Windows файл можно запустить через окно терминала или окно cmd.exe командой pithon3 <путь к файлу>.
    При первом запуске с некоторой задержкой перед вами откроется окно Variables:

interface1

    Справа от вас тест, который позволит убедиться в правильности цветопередачи в интерфейсе.
Каким либо средством захвата цвета (пипеткой) проверьте самые тёмные поля. Интенсивность цвета в этих полях 7% или 18 единиц по шкале RGB. Никаких примесей цветов цветных полях нет.
Здесь нет никаких ползунков. Все переменные вводятся в свои поля и сохранятся в управляющих файлах. Если необходимо, можно вернуть сохранённые ранее управляющие файлы и продолжить с ними работу, корректируя значения переменных.

    Для настройки гаммы монитора достаточно всего трёх переменных Gr, Gg, Gb. Если необходимо, можно добавлять поправку к этим коэффициентам, меняя переменную Gm.

Формат ввода дробных чисел включает точку. Это необходимо соблюдать, иначе данные не будут сохраняться.

    После ввода необходимых значений нажимаем на кнопку  <To file>. При этом на экране отобразятся созданные вам и кривые.

interface2

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

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

    Для просмотра результата действия этих кривых можно выбрать один из трёх режимов управления загрузчиками и нажать кнопку <To card>.
Если режим не понравился, нажмите <Сброс на default>.
Если всё понравилось или вы посто хотите сохранить результат работы, нажмите <Архивировать данные калибровки>.

    Файлы данных сохранятся в папке в папке arch для оперативного использования (in1.txt, in2.txt, in3.txt), а также в папке backup с пометкой времени создания для возможности использования в будущем (02-22-2021-19-54in1.txt, 02-22-2021-19-54in2.txt, 02-22-2021-19-54in3.txt). Для использования этих файлов необходимо удалить пометку о времени создания и скопировать их в корень каталога Variables2_W или Variables2_L (корневая папка системы).

    Для работы с файлами из корневой папки системы достаточно нажать <From file>. Если требуются файлы из архива, то следует нажать <Взять данные калибровки из архива>. В обоих случаях после получения файлов следует нажать <To file> для загрузки данных в поля переменных.

    График может быть показан ещё в двух вариантах. Если при выводе графикав поле F значение "2", график получится разностным

Разностный график


    Если при выводе графикав поле F значение "3", график получится в логарифмическом масштабе. Этот вид графика позволяет как под микроскопом рассмотреть начальную часть кривых.
Микроскоп


    При просмотре результата работы можно нажать кнопку <Показать тест>. При этом в окне интерфейса будет показан тест на гамму.

    Вернёмся к интерфейсу. Выберите необходимые данные (из файла в корне <From file> или из архива<Взять данные калибровки из архива>). Значения переменных отобразятся в полях интерфейса.

    Во время подбора наилучшей формы гривых иногд полезно воспользоваться возможность изменять кривые на коротких участках.
Установите в поле F значение "1", Для одной из переменных Y, например, Y6g установите значение "5". Нажмите <To file>. Посмотрите на график.
Y6

    На зелёной кривой и на кривой среднего значения появился горб. Результат будет заметен и тесте гаммы.
    Если вы применили несколько таких корректировок, то для исключения артефактов в тонопередаче есть смысл сгладить все горбы. Для этого подберите параметры вспомогательной кривой так, чтобы она шла по усреднённым значениям.

magenta

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

    Обратите внимание на получившиеся значения переменных.

D

    Значение Dm получилось отрицательным. Для этой кривой это не страшно. Но отрицательные значения параметров D   для других переменных не желательны. При создании таблиц LUT_variables.cal и 256.txt Variables сама скорректирует отрицательные значения. Но для xcalib это недопустимо.Чтобы исключить появление отрицательных D можно заранее перед началом калибровки установить Dall в значение окло "0.3". При дальнейшей работе отрицательные значения основных переменных не появятся в результирующих данных.

Дополнительные замечания по калибровке

После настройки гаммы есть смысл адаптировать зрение к освещению, лучше всего к свету солнечного дня в окне, и подобрать значения контраста для кривых (Cr, Cg, Cb) таким образом, чтобы поле графика выглядело белым.
Впоследствии, меняя значение tk и Gt (в редких случаях), скорректировать настройку под цветовую температуру другого освещения. tk меняет именно цветовую температуру, Gt меняет долю зелёного в цвете. Значения этих переменных могут изменяться в пределах "-500" - "+500". Знак "плюс" указывать не обязательно.
Эти параметры не влияют на гамму.
Слишком высокое значение контраста может навредить передаче цвета в высоких значениях. Для того чтобы не превысить допустимого предела, воспользуйтесь тестом
Контраст

Во всех полях теста должны хорошо различаться внутренние вложенные друг в друга квадраты.
Для оценки результата работы можно применять и другие тесты, часть из которых лежат в папке in_cool, а другие можно скачать в интернете или создать самостоятельно.

Профиль монитора

    То что было сделано, это таблицы или команды для корректировки цветопередачи. Эти команды можно выполнять с помощью интерфейса или с помощью других загрузчиков.
В корне лежит загрузчик из комплекта Калибриллы. Можно в отдельный исполняемый файл поместить команду из корневой папки "LUTLoader.exe 256.txt".
Для Linux при этом надо "wine LUTLoader.exe 256.txt"
    Чтобы файл данных не изменялся, поместите LUTLoader.exe и 256.txt в отдельный каталог, из которого система будет запускать эту настройку.
Можно также использовать команду из файла xca.txt.
Но можно записать таблицу в профиль монитора с помощью программы Каклибрилла. Тогда при наличии установленной системы управления цветом можно установить этот профиль, и он будет загружаться системой.
    Вообще говоря, профиль с таблицей или без есть смысл использовать в системе. В нём производитель монитора указал цветовой охват и некоторые другие параметры, которые важны для правильной цветопередачи. Посредством DispCal и спектрофотометра профиль может быть создан самостоятельно.
    Надо сказать, что Variables может быть основой для создания системы профилирования с помощью спектрофотометра. Для этого потребуется сам спектрофотометр и ещё один программный модуль на Python. Возможно, что автор Variables когда-нибудь доберётся до исполнения этой задачи. Но вряд ли это будет скоро. Для его задачь Variables вполне достаточно.
   
    Продолжение темы здесь.

   О профилях монитора здесь.



Полезные ссылки:

1. Сайт программы Калибрилла

2. Об управлении цветом в Linux (с описанием правильного подключения принтера)

3. Сайт системы DisplayCal.

4. Сайт программы AgrillCMS.

5. Описание dispwin

6. Сайт программы xcalib

000000

Вопросы принимаются по Email:
tx-mm@mail.ru 


Фотокружок