Калибровка монитора в linux

Обновлено: 03.07.2024

Многим знакома проблема избыточности холодных цветов монитора.
Так уж получилось, что 2 из 3 моих мониторов (и это ноутбуки) с этой проблемой. И именно от этих мониторов очень сильно болели глаза.

В итоге, я решил, что с этим нужно что-то делать. Так как моники ноутбучные, то на них нет кнопок для настройки, что усложняло задачу. Немного погуглив, я наткнулся на множество советов (включая данный форум) по решению данной проблемы. Почти все они сводились к неким цветовым схемам, которые невозможно создать без калибратора, что меня совсем не устраивало (дорогое удовольствие, от 1500 грн в Украине). Были и предложения по установке утилиты f.lux, этот вариант был отброшен т.к. утилита ослабляла синий и зелёный оттенки (т.е. я снова получил корявую цветопередачу, на сей раз тёплые цвета). Пока случайно не наткнулся на xcalib которая мне и помогла.

xcalib — консольная утилита для регулировки цветопередачи. Может менять гамму, яркость и контрастность как в целом, так и раздельно по каналам.

Т.к. графического интерфейса для нее нет, я решил его сделать и поделиться разработкой с миром. Кому нужно, качайте зеркало 1, зеркало 2.
Программа разработана на FreePascal в Lazarus. В архиве есть исходник.

Кажется nvidia-settings это то, что ты искал.


Калибровка цветопередачи монитора на глаз

невозможна, так как противоречит сути калибровки.

Калибровка потому и аппаратная, что проводится с целью объективного соответствия цветов оригинала и изображения+копии в случае калибровки сквозного цветового канала. Мозг\глаз цвета воспринимает субъективно, потому и используется объективная железка без мозгов.

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

Jameson ★★★★ ( 23.09.16 23:55:14 )
Последнее исправление: Jameson 23.09.16 23:58:06 (всего исправлений: 3)

Постойте, ты написал морду для консольного приложения, которое правит какие-то конфиги в системе? А не лучше посмотреть, что там делать эта прожка на паскале и написать своё с нуля, если так уж хочется?


Спасибо. На линуксе можно мутить NightShift теперь :) Сам на маке на днях ставил чистую ось и создавал теплый белый конфиг для моника - большую часть работы делаю вечером.


избыточности холодных цветов монитора

Gunnar сomputer eyewear.

Кажется у меня не nvidia. Графика от интел в процу

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

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

Пробовал. Результат тот же что и от f.lux. Из синего превращается в красный. Видимо моник на SAMSUNG N-143Plus столь печален что ему нужен индивидуальный подход.

Класс, очки дороже нетбука. Это определённо то что мне нужно.

ты переписал monica?

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

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

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

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

Раз уж тред о коррекции цветопередачи, то напомню о существовании такого открытого аппаратного обеспечения, как ColorHug (от автора colord).

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

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

Contents

Генерация профиля

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

Колориметр или спектрофотометр

Настоятельно рекомендуется использовать колориметр или спектрометрическое устройство для калибровки оборудования, печати принтера и сканера. Для домашнего использования доступно несколько недорогих колориметров. Некоторые из них хорошо или даже лучше поддерживаются в Linux, чем в других операционных системах. Часто рекомендуемыми устройствами являются X-Rite ColorMunki Display, DataColor Spyder5 Express и устройство с открытым исходным кодом ColorHug. Вы можете найти другие поддерживаемые Linux устройства, перечисленные в документации к AgyllCMS.

Argyll CMS

Система управления цветом Argyll - это полный набор инструментов для создания и загрузки профиля в командной строке, перечисленных в разделе argyllcms .

Ознакомьтесь с официальной документацией Argyll CMS, чтобы узнать, как профилировать выбранные устройства.

Калибровка и профилирование монитора с помощью дополнительного калибровочного оборудования

Существует интерфейс GUI для ArgyllCMS, называемый DisplayCal, доступный как displaycal . В большинстве случаев вам подойдут настройки по умолчанию. Это обычный способ калибровки цвета при дневном свете 6500К и гаммой 2,2. Подробнее читайте в документации DispalGui. Многие учебные пособия доступны в сети.

Калибровка сканера

Калибровка принтера

Передача файла

Генерация профиля в системе Windows или macOS является одним из самых простых и наиболее рекомендуемых способов получения ICC профиля для монитора. Поскольку цветовые профили ICC записываются в открытую спецификацию, они совместимы в разных операционных системах. Передача профилей из одной ОС в другую может быть использована в качестве обходного пути из-за отсутствия поддержки определенных спектрофотометров или колориметров в Linux: можно просто создать профиль на другой ОС, а затем использовать его в рабочем процессе Linux. Обратите внимание, что система, на которой создается профиль, должна размещать ту же самую видеокарту и монитор, для которых должен использоваться профиль. После создания профиля ICC или серии профилей в системе Windows скопируйте файл(ы) из пути по умолчанию:

macOS обычно сохраняет сохраненные профили ICC в одном из двух местоположений:

Как только соответствующие .icc/.icm файлы будут скопированы, установите профили устройств в нужную вам систему. Каталоги профилей устройств в Linux:

Примечание: убедитесь, что калиброванные настройки контраста, яркости и RGB на мониторе не изменяются между временем калибровки и загрузкой профиля ICC. Используйте этот метод только в том случае, если вы абсолютно уверены, что ни Linux, ни другая ОС ничего не делают за вашей спиной (в видеодрайверах или утилитах поставщика), которая изменяет сигнал, фактически отправленный на монитор, или способ, которым монитор интерпретирует сигнал. Следите за «Broadcast RGB» или аналогичными настройками. Один конкретный пример, когда профилирование в Windows и Linux дает значительно разные результаты. Это ноутбук Lenovo Ideapad Yoga 2 Pro, потому что эти ОС программируют контроллер плоскопанельного дисплея по-разному.

Gnome Color Manager

В Gnome профиль ICC можно легко создать с помощью gnome-color-manager . В Gnome это доступно через Центр управления и довольно просто использовать. Для использования этой функции вам понадобится колориметрическое устройство.

Инструкция

Убедитесь, что запущен gnome-settings-daemon и запущен:

Найдите Device ID строку вашего монитора. Если это, например xrandr-Lenovo Group Limited , начните калибровать с помощью команды:

LPROF ICC Profiler

LPROF является профилировщиком ICC с графическим интерфейсом пользователя, указанным в lprof AUR в AUR.

Примечание: следующее пошаговое руководство было изменено из статьи Using LPROF to profile monitors.

Калибровка монитора

Контраст/Яркость

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

  1. Установите контраст монитора на максимум или на 100%.
  2. Затем отобразите чистый черный на весь экран, создав небольшое черно-белое изображение PNG (все пиксели имеют RGB = 0, 0, 0) и открыв его в просмотрщике изображений, которое может отображать изображение в полноэкранном режиме без каких-либо элементов управления.
  3. Уменьшите вертикальный размер экрана монитора (не изображение PNG, отображаемое средством просмотрщиком, а все то, что отображается на экране) до 60% до 70% от полной высоты. То, что показано выше и ниже изображения, называется незасканированной областью, и поскольку эта область не получает никакого напряжения, она является самой черной из черных, которую способен отображать ваш монитор.
  4. Найдите регулятор яркости (обычно это солнце, круг с лучами, выступающими из его краев) и опустите значение до тех пор, пока черное изображение не будет соответствовать не сканируемой области.
Цветовая температура

Как мы сказали во введении, установка цветовой температуры должна произойти в полдень. Если у вас есть только фиксированная заводская цветовая температура по умолчанию, вам не нужно ждать солнечного дня. Просто установите его на 6500K.

Поместите монитор так, чтобы вы могли видеть за окном и экраном одновременно. Для этого шага вам также нужно создать белое квадратное изображение (RGB = 255, 255, 255), примерно 10 на 10 сантиметров (4 на 3 дюйма). Используя тот же метод Gwenview, что и яркость/контраст, отобразите белый квадрат на черном фоне.

  1. Во-первых, приготовь глаза, глядя на внешний мир некоторое время. Позвольте им приспособиться к условию просмотра дневного света в течение нескольких минут.
  2. Взгляните на монитор и белый квадрат на несколько секунд (это должно быть недолго, потому что глаза быстро отрегулируются).
  3. Если квадрат кажется желтоватым, вам нужна более высокая цветовая температура, или если у него синеватый оттенок, необходимо понизить температуру.
  4. Держите взгляд, глядя в окно и регулируя температуру белого, пока квадрат не станет чистым белым.

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

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

Запустить lprof. Вам будет представлено довольно большое окно с несколькими вкладками справа.

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

ThinkPads

Загрузка ICC профилей

Профили ICC загружаются либо демоном сеанса, либо специальным загрузчиком ICC. У Gnome и KDE есть демоны, способные загружать профили ICC из colord . Если вы используете colord в сочетании с gnome-settings-daemon или colord-kde , профиль будет загружен автоматически. Если вы не используете ни Gnome, ни KDE, вы можете установить независимый демон, xiccd, который делает то же самое, но не зависит от среды вашего рабочего стола. Не запускайте одновременно два демона, совместимых с ICC (например, gnome-settiongs-daemon и xiccd).

Если вы не используете какой-либо ICC-capable демон, убедитесь, что вы используете только один загрузчик ICC - либо xcalib, dispwin, dispcalGUI-apply-profiles, либо другие, иначе вы легко получите неконтролируемую среду. (Последний загрузчик установил калибровку, а ранее загруженная калибровка была перезаписана.)

xcalib

    - это легкий загрузчик монитора, который может загружать профиль монитора ICC для совместного использования в десктоп приложениях. xcalib является частью репозитория пользователей Arch (AUR).

Пример Xinitrc

Загружаемый профиль P221W-sRGB.icc в /usr/share/color/icc на монитор host:0 при запуске X сервера

Пример JWM <StartupCommand>

Загружаемый профиль P221W-Native.icc в /usr/local/share/color/icc на монитор host:0 при запуске JWM

dispwin

Пример Xinitrc

Загружаемый профиль 906w-6500K.icc в /home/arch/.color/icc на монитор 0 при запуске X сервера

Пример JWM <StartupCommand>

Загрузить калибровочный файл Argyll 906w-7000K.cal в /usr/local/share/color/icc на монитор 1 при запуске JWM

Вы можете легко использовать один из этих загрузчиков для применения цветового профиля на ранней стадии загрузки при запуске экранного менеджера, например, используя загрузочный скрипт LightDM. Это позволяет загрузить один файл профиля icc. Это не будет работать с загрузкой нескольких файлов профиля при использовании настройки multi monitopr.

На хабре было много обзоров и статей с впечатлениями от перехода на ОС Linux, в которых раскрывались все плюсы и минусы, мнения и решения некоторых проблем при работе с данной ОС. Не оказался исключением и я. О том, как я перешел на Linux Mint и о том, как решал проблему с яркостью подсветки, читайте под катом.

В жизни каждого айтишника порой наступает момент, когда он решает попробовать что-то новое и, собравшись с волей, сделав бэкап всего важного, записывает на болванку или флешку образ с так долго отобранным дистрибутивом (в моем случае я выбрал Linux Mint 17 x64 Cinnamon) Linux. И с ожиданием чуда загружается с нее.

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

Первое впечатление оказалось весьма позитивными, я потихоньку начал осваивать новую для меня ОС. Прочитал руководство, заглянул на тематический форум, начал исследовать систему. На хабре были обзоры этого дистрибутива и у меня было представление о ней. Все компоненты ноутбука заработали с первого раза, wifi, bluetooth, веб-камера, даже USB-модем без установки драйверов сразу же определился системой, и после простых действий по указанию точки доступа заработал в полной мере.

Понравилась идея репозиториев, Менеджер программ с тысячами программ в одном месте. Так я начал осваиваться. Первым делом поставил нужное ПО, чтобы не было скучно; я включил музыку в плейере (кстати, Audacious заменил мне AIMP) и в какой-то момент захотел увеличить громкость. Нажал заветную комбинацию Fn+курсор вправо и задел пальцем клавишу курсор вниз, то есть понижение яркости. На мое удивление, это не оказало никакого эффекта на уровень подсветки. Я попробовал еще раз, индикатор показал изменение, но яркость не поменялась.

Начал гуглить это явление. Из результатов поиска понял, что не у меня одного не меняется яркость и стал искать решение. К слову, конфигурацию ноутбука Lenovo B570e с процессором Core i5 2450m/ 4Gb RAM/ 500Gb HDD/ Intel HD Graphics 3000. Как оказалось, другие модели ноутбуков данного и других производителей также имеют проблему с регулированием яркости подсветки. Первым решением, которое я испробовал, было редактирование файла загрузчика grub. Выполнялось это таким порядком действий:

В терминале набирал команду:

И в открывшемся окне текстового редактора нашел две строчки и привел их в такой вид:

Сохранил произведенные мною изменения и выполнил обновление загрузчика:

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

Вторым методом я испробовал следующую команду в терминале:

Где хх является значение от нуля до 100. На эту команду ноутбук не среагировал никак.

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

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

Вторым решением, которое нашлось на просторах интернета, было следующее.

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

Где 0 - яркость, а /sys/class/backlight/acpi_video1/brightness - путь к файлу, в котором сохраняется текущее значение яркости из параметров системы. После сохранения файла нужно было настроить его права доступа таким образом:

И запускать данный скрипт из терминала:

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

Запустить терминал и выполнить следующую команду:

В результате мы увидим такой вывод команды:

После чего создать конфигурационный файл, если его не существует, следующей командой в терминале:

Открываем только что созданный нами файл для редактирования:

Он должен быть пустым и прописываем в него следующее:

Сохраняем. Перезагружаем. И — вуаля! В результате клавиши управления яркостью подсветки работают, индикатор уровня яркости отображается.

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


О, а кто-нибудь мне объяснит, почему там должен быть сплошной серый цвет? У меня два круга, с радужной раскраской.


О, а кто-нибудь мне объяснит, почему там должен быть сплошной серый цвет?

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

Sadler ★★★ ( 06.12.14 10:25:58 )
Последнее исправление: Sadler 06.12.14 10:29:20 (всего исправлений: 1)


Can it wait for a bit? I’m in the middle of some calibrations.

У меня на студийном профилированном мониторе сплошной серый цвет. У вас либо ЭЛТ, либо не нативное разрешение на ЖК.

На заводе делла мониторы калибруют хорошо. Абсолютно равномерный серый.

Только масштабированием удалось выяснить, что же там может отображаться в ином случае.

Забавный тест. У меня в убунте 14.04 помимо родного ноутбучного ICC профиля есть еще какие-то D60 и прочее, при переключение на них меняется общий цветовой фон и яркость, но равномерность этих типа-серых кругов ни как не меняется, как просвечивали так и просвечивают


У вас либо ЭЛТ, либо не нативное разрешение на ЖК.

Значит нестандартная гамма или WCG-монитор.


У меня сплошной серый, стоит ICC от производителя ноутбука (System76).


У меня круги. Разрешение 1366х768.


А это не может подождать? У меня тут калибровка в самом разгаре.

Там совсем не должно быть видно кругов? У меня еле заметные серые круги, это нормально или нет?



На гейфоне радуга. Лол.


Спасибо, хорошая ссылка - наконец-то откалибровал свой Dell 2312

На imac круги с радугой. Ничего калибровать не собираюсь.

xtraeft ★★☆☆ ( 06.12.14 12:54:29 )
Последнее исправление: xtraeft 06.12.14 12:54:45 (всего исправлений: 1)


мне удалось добиться более равномерного серого в этом тесте

Вы масштабируете страницу. Масштаб должен быть 100% для корректного отображения теста.


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

Увы, у меня не ретина, чтобы проверить эту мысль.

Выше скрин с ретины, мысль неверна.

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

Это называется дизеринг. И нет, чем лучше вы его видите - тем хуже цветопередача вашего монитора.

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


Это называется олигофренинг: брать картинку с радужными кругами, настраивать свой монитор на то, чтобы он их не отображал, после чего заявлять что все те мониторы которые ее отображают правильно — плохие.


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

Картинка с субпиксельными пикселами? Что дальше? картинка которая работает с монитором на молекулярном уровне?

мониторы которые ее отображают правильно — плохие.

Вы не разбираетесь в вопросе и выглядите сейчас ОЧЕНЬ глупо.


никакого серого там нет даже близко

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

но почему этих цветов не должно быть видно, мне не ясно


Вот и что ты сейчас эту ссылку привел? Что она должна доказать? Что мониторы которые неточно передают оттенки — хорошие?


Ясно. А на этом изображении, видно круги?

Что мониторы которые неточно передают оттенки — хорошие?

На мониторах, которые точно передают оттенки, в тесте виден сплошной серый цвет.


Аналогично везде радужные круги. Что-то более-менее приближающееся к равномерному серому только на планшете surface.

Что-то более-менее приближающееся к равномерному серому только на планшете surface.

Значит он имеет наиболее точную цветопередачу из имеющихся устройств. В Microsoft же что-то говорили насчет лучшей цветопередачи их планшета в сравнении с конкурентами.


На мониторах, которые точно передают оттенки, в тесте виден сплошной серый цвет.

Это даже покруче аудиофилии!


Они там есть и образуют субпиксельный дизеринг, который на откалиброванных мониторах должен быть серым. Они становятся видны при масштабировании, потому что нарушается субпиксельная модель. Кстати, при нестандартном порядке пикселей монитора, например BGR вместо стандартного RGB, они будут видны самым лучшим образом даже на идеально откалиброванном мониторе. Может быть у вас такой и у тов. Sadler


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



Если нравится крутить настроечки, можно поставить dispcalgui и сгенерить и применить ICC-профиль им.

Алсо, ждём анонима, который традиционно заявит, что управление цветом должно быть в дровах видеокарт, а мы тут все дураки :)

AP ★★★★★ ( 06.12.14 15:16:18 )
Последнее исправление: AP 06.12.14 15:16:43 (всего исправлений: 1)


И вдогонку тебе вопрос: гном-на-вяленде научился нормально в цветовые профили? Так чтобы с несколькими мониторами и всяким таким.

Читайте также: