Колориметрия, печать и препресс: технологии Главная Форум Галерея Контакты Download Статьи
Сражаясь неустанно,
доживём мы, Санчо,
до Золотого века!
 

Форум колористов и полиграфистов

Колориметрия и печать: технологии
 
Текущее время: 19:36, Вт, 02 мар 2021

Часовой пояс: UTC+03:00


Новые
ответы
в темах:



Начать новую тему  Ответить на тему  [ 8 сообщений ] 
Автор Сообщение
СообщениеДобавлено: 1:10, Чт, 12 ноя 2020 
Не в сети
Администратор

Зарегистрирован: 16:58, Ср, 18 авг 2004
Сообщения: 1064
Откуда: Москва
При калибровке мониторов зачастую не совсем верно определяется цвет черной точки (при крайне низких значениях светлоты прибор отдает программе скорее шум, нежели достоверную информацию о спектре суперчерного), и в профиль в результате ошибочно прописываются кривые, которые окрашивают глубокий черный в посторонний оттенок, например в красно-фиолетовый. Кривая, которая отвечает за этот глюк, располагается в частном теге от Apple под названием vcgt или video card gamma tag. Редакторов этой кривой не много, так например basICColor позволяет двинуть кривую, но делает это крайне топорно: двигает весь диапазон 0-25%, когда поправить надо например изгиб в диапазоне 0-10%.
Комментарий к файлу: vcgt до исправления красноватого черного на мониторе и после, визуализация Excel
[ attachment ]
vcgtedit.png [ 20.18 КБ | 565 просмотров ]
Столкнувшись с тем, что ни одна программа не позволяет мне поправить кривую именно так как я хочу - написал простую утилитку, которая распаковывает vcgt в таблицу, таблицу мы удобно редактируем в табличном редакторе, и той же утилиткой запаковываем обратно в vcgt.

Остается решить, как распаковать сам профиль ICC и как запаковать его обратно с отредактированным тегом vcgt.

Для распаковки профиля можно использовать чудесную бесплатную утилиту IccXML. Также ее можно скачать тут со страницы iccMax. Созданный ею файл xml из профиля открываем в любом удобном вам редакторе, я открывал в Adobe Dreamweaver. Находим поиском vcgt, копируем все содержимое этого тега в эдитор https://cielab.xyz/vcgt.php и создаем простую понятную таблицу для редактирования в любом привычном вам табличном редакторе, просто через буфер тянем размеченную табуляторами таблицу копипастом.
Комментарий к файлу: vcgt до правки и после в готовом профиле в отображении программы basICColor
[ attachment ]
vcgt_b1_b2.png [ 44.77 КБ | 565 просмотров ]
Рисуем какие мы хотим кривые в тенях, обратно копипастом тянем в vcgt editor и упаковываем в тег.

По какой-то причине IccXML пока не умеет корректно упаковать в ICC-профиль тег vcgt, с другими профилями хорошо справляется, а с мониторами что-то не дружит. Берем любой HEX-редактор, их полно в сети, я взял первый подвернувшийся Hex Editor Neo, открываем профиль в нем, осваиваемся первый раз минут 10, находим блок данных vcgt, отмечаем себе начало и конец этого блока, подменяем его на свой (удаляем имеющийся и вставляем свой прямо из буфера). Проверяем что нет сдвига (offset) и начало и конец нашего блока vcgt находится на тех же по порядку байтах.

Потом можем тут же в hex-редакторе поправить тег desc, чтобы имя нашего нового профиля в системе отличалось от оригинального и они не конфликтовали друг с другом (имя файла для профиля - это не все, система смотрит имя по тегу desc внутри профиля). Достаточно поменять всего один символ, а вот добавлять или вырезать не стоит символы, все сдвинется в байтах и не будет работать, в профиле каждый байт на своем месте и начало и конец каждого тега прописаны в заголовке профиля.
Комментарий к файлу: иллюстрация отображения кривых vcgt в Argyll для профиля 2 версии: xicclu -g -V monitor.icc Отредактировать vcgt нельзя. Справа Calibration Tester
[ attachment ]
vcgt_argyll_and_ct.png [ 17.49 КБ | 565 просмотров ]
Ну и все собственно, сохраняем профиль в новый файл с именем желательно как прописано в desc чтобы не путаться самому. Проверяем - все работает, кривые в видеокарту грузятся. Для проверки на Mac вообще ничего делать не надо, при выборе профиля в свойствах цвета монитора Mac сам загружает кривые vcgt в видеокарту. Для Windows есть полезная утилитка DisplayProfile от GretagMacbeth, загружающая кривые профиля в видеокарту без перезагрузки компьютера и автоматом назначающая профиль по умолчанию для системы, и дополнение к ней CalibrationTester, показывающая как раз кривые vcgt, загруженные в видеокарту.

На скриншотах кривые vcgt до и после редактирования, графики из Excel (прилагается) и те же графики в исправленном профиле в отображении программы basICColor. Сам поправить нормально не умеет, но тоже показывает, что у нас сейчас в видеокарте за кривые. Бесплатный Argyll SMS кривые vcgt показывает, но не позволяет поправить; профили 4 версии не показывает и не правит, естественно.

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

https://cielab.xyz/vcgt.php • VCGT editor • free, online, open source
Комментарий к файлу: Инструкция по вставке новых данных в профиль в программе winhex
[ attachment ]
winhex_pasting.png [ 71.8 КБ | 565 просмотров ]


Вложения:
Комментарий к файлу: приложению к редактору vcgt - https://cielab.xyz/vcgt.php
Вернуться к началу
СообщениеДобавлено: 13:25, Пт, 27 ноя 2020 
Не в сети
Администратор

Зарегистрирован: 16:58, Ср, 18 авг 2004
Сообщения: 1064
Откуда: Москва
Мой друг Алекс Сикорский подсказал еще один путь, помимо HEX-редактора, как подменить содержимое vcgt тега в профиле.
К этому способу нужна подробная инструкция, ибо без нее сложновато разобраться.
Берем бесплатную программу Calibrilla, начиная с версии 5.0 b 2231, до нее до 27 ноября 2020 программа делала ступеньки в плавных 16-битных кривых vcgt, сейчас это исправлено, старые версии не берем. Скрины сделаны по более старой версии вчера и на них видны ступеньки, они и в файле экспорта - повторяющиеся одинаковые значения соседних тонов на кривой, когда в оригинале профиля этого нет. Теперь исправлено.
Чтобы извлечь кривую из профиля делаем следующее:
Комментарий к файлу: Открываем кнопкой From File нужный нам профиль
[ attachment ]
calibrilla_screen1.png [ 198.81 КБ | 438 просмотров ]
Комментарий к файлу: Кнопкой To File сохраняем кривые в текстовый файл с разметкой табуляторами (прекрасно для перекидывания в Excel через буфер)
[ attachment ]
calibrilla_screen2.png [ 138.42 КБ | 438 просмотров ]
Обратите внимание, что кривые в 16-битном диапазоне от нуля до 65535. Если хотим поработать с обычными десятичными в диапазоне 0-100 - делим значения на 655.35, но это не обязательно. Корректируем как угодно наши кривые и в том же виде сохраняем текстовый файл кривых, поправленных нами.
Комментарий к файлу: Образец по-быстрому поправленных кривых в формате вставки в Calibrilla
Несмотря на то, что я работал с профилем iMac - внутри текстового файла откуда-то появилось имя моего монитора PA246, при этом кривые там точно от iMac, а не от PA246. Этот характерный изгиб в тенях я контролировал в течении всего процесса.
Вот теперь начинается самое интересное! Открываем редактируемый профиль кнопкой From File и сразу жмем жмем To File, выбираем нужный профиль и сразу в строке с именем задаем ему новое имя! Чтобы не переписать существующий профиль. И вот тогда вылезет нужное окно с редактируемым тегом vcgt.
Комментарий к файлу: Сохраняем перед редактирование открытый профиль кнопкой To File и сразу же задаем новое имя ему
[ attachment ]
calibrilla_screen3.png [ 205.37 КБ | 438 просмотров ]
Комментарий к файлу: Появляется окно, в котором выбираем тег vcgt.
[ attachment ]
calibrilla_screen4.png [ 145.36 КБ | 438 просмотров ]
Комментарий к файлу: Кнопкой импорт заносим сюда наши новые кривые из текстового файла
[ attachment ]
calibrilla_screen5.png [ 137.19 КБ | 438 просмотров ]
Комментарий к файлу: Жмем ОК и Save в файле с нашим новым именем и новыми vcgt
[ attachment ]
calibrilla_screen6.png [ 157.45 КБ | 438 просмотров ]
Я проверил - работает. Заметили ступеньки на кривой при чтении ее из профиля и автор поправил, спасибо.
Помимо этого функционала есть еще дополнительный: правой кнопкой по графику - и предлагает 4 типа сглаживания кривых, можно с ними также поэкспериментировать.

У меня почему-то Calibrilla выкинула из оригинального профиля теги типа A2B0 и оставила лишь TRC и vcgt. Причем на скрине видно, что у меня отображаются кривые нужного профиля, и это не системный профиль PA246, и не sRGB, а тот iMac что редактировался, я нигде не выбирал профиль sRGB, тем не менее в итоговом профиле оказалась не нужная мне колористика калиброванного спектрофотометром монитора iMac, а колористика sRGB. Я что-то сделал видимо не так, хотя даже не пытался открывать sRGB - в нем все равно нет vcgt и неоткуда в sRGB vcgt взяться: просто открыл профиль iMac, пересохранил c поправленным именем как на скрине ниже, видел свои vcgt, видел тег vcgt (которого нет в sRGB) - так что даже мыслей не было, что редактирую sRGB, а не свой профиль. Повторил на своем мониторе PA246 то же самое.
Из-за этого операционная система Windows не может опознать профиль как корректный, не хочет его видеть даже при принудительном на него указании, не хочет ставить дефолтным в системе. Поэтому при перезагрузке рабочий профиль системы может сбиваться, раз виндовс отказывается его видеть, даже не смотря на сторонние лоадеры.
Поэтому просто будьте внимательны и не повторяйте моих ошибок, я не могу объяснить, почему они случились, откуда взялась колористика sRGB, и даже пытаться не буду.
Что я предприму: новый усредненный vsgt мне жутко нравится, но переписывать vcgt мне кажется надежнее все же в профиле от штатных программ калибровки монитора типа ProfileMaker или i1Profiler через редактирование данных hex, как описано в первом посте темы.
В любом случае, проверьте результат внимательно. Если в процессе как на четвертом сверху скриншоте инструкции часть тегов куда-то пропали (A2B и B2A исчезли из редактируемого профиля), при этом на всех этапах были явно видны нужные кривые vcgt на графике - значит что-то пошло не так.
Комментарий к файлу: Список тегов профиля монитора до и после редактирования калибриллой тега vcgt. Нижний профиль от Calibrilla операционная система не признает
[ attachment ]
before_and_after_calibrilla.png [ 32.68 КБ | 438 просмотров ]
Поэтому наиболее безопасным на сегодня я вижу редактирование vcgt профиля в hex-редакторе:
Комментарий к файлу: Готовим данные vcgt в эдиторе и копируем их в буфер
[ attachment ]
vcgt_hex_replace1.png [ 239.09 КБ | 438 просмотров ]
Комментарий к файлу: Подменяем содержимое vcgt через winhex перезаписью поверх с нужного байта: Edit/Clipboard Data/Write
[ attachment ]
vcgt_hex_replace2.png [ 270.64 КБ | 438 просмотров ]
Так операционная система видит профиль из списка.


Вернуться к началу
СообщениеДобавлено: 0:06, Вт, 26 янв 2021 
Не в сети

Зарегистрирован: 23:59, Пн, 25 янв 2021
Сообщения: 3
mihas пишет: *
У меня почему-то Calibrilla выкинула из оригинального профиля теги типа A2B0 и оставила лишь TRC и vcgt.
Она не выкинула. Вы просто создали новый шаблонный sRGB-профиль,

Кнопка «Из файла» открывает профиль либо для простого считывания из него тега VCGT и загрузки его в таблицу программы (базовый функционал программы — работа с LUT), либо для его редактирования (дополнительный режим, появившийся недавно). Выбор из этих двух вариантов происходит соответствующей установкой фильтра в окне выбора файла. Поэтому, для того, чтобы реально открыть профиль, установите фильтр соответствующим образом.


Вернуться к началу
СообщениеДобавлено: 17:57, Вт, 26 янв 2021 
Не в сети
Администратор

Зарегистрирован: 16:58, Ср, 18 авг 2004
Сообщения: 1064
Откуда: Москва
Да, все верно! Программа писала в заголовке про мой монитор Асус, в какой-то момент я ей не указал явно еще раз From File взять профиль монитора Асус, и программа молча создала профиль с колористикой sRGB по дефолту, сообщая в заголовке, что работает с Асус, а не с sRGB. Хотя я нигде при открытии не указывал профиль sRGB и в заголовке не было прописано, что программа в режиме шаблона sRGB.
Очень хорошо что такой профиль хоть и с правильными моими vcgt-кривыми, но с неправильной колористикой, операционная система Windows 10 не может поместить в список дефолтных для устройства, я обратил на это внимание - и стал рыть, что не так с профилем от калибриллы.
Наверное, чтобы подобных ошибок не возникало, надо так и писать в заголовке программы, что она в дефолтном режиме sRGB, а не в режиме твоего действующего монитора. А уж когда ты правишь вообще профиль с другого компа типа iMac, а программа все равно сохраняет из него кривые под именем текущего активного девайса Асус прямо внутри файла с таблицей - тут уж вообще понятно, что что-то не так.


Вернуться к началу
СообщениеДобавлено: 21:44, Вт, 26 янв 2021 
Не в сети

Зарегистрирован: 23:59, Пн, 25 янв 2021
Сообщения: 3
mihas пишет: *
Наверное, чтобы подобных ошибок не возникало, надо так и писать в заголовке программы, что она в дефолтном режиме sRGB, а не в режиме твоего действующего монитора. А уж когда ты правишь вообще профиль с другого компа типа iMac, а программа все равно сохраняет из него кривые под именем текущего активного девайса Асус прямо внутри файла с таблицей - тут уж вообще понятно, что что-то не так.
Если честно, не очень понимаю. Программа в основном окне отображает текущую видеокарту и текущий монитор, да. Но когда ты открываешь и правишь посторонний профиль, то при сохранении его тега vcgt в текстовый файл, туда никакие имена активных девайсов не вписываются, только имена файла профиля и его описание. А вот если сохранение идёт не из открытого профиля, а непосредственно из LUT, то есть, из главного окна программы, вот тогда имена карты и монитора, естественно, в текстовый файл записываются.


Вернуться к началу
СообщениеДобавлено: 16:25, Ср, 27 янв 2021 
Не в сети
Администратор

Зарегистрирован: 16:58, Ср, 18 авг 2004
Сообщения: 1064
Откуда: Москва
Да все верно. При экспорте кривых vcgt например из профиля iMac в заголовок текстовой экспортированной таблицы вписывается не iMac, а текущий монитор типа Асус у меня. То есть на всех этапах происходит путанница, с каким именно профилем мы работаем: экспортировали кривую из iMac - в описании этой кривой откуда-то взялся Asus. И так во всем. Тут еще есть что поисправлять помимо исправленных ступенек на кривой.


Вернуться к началу
СообщениеДобавлено: 19:57, Ср, 27 янв 2021 
Не в сети

Зарегистрирован: 23:59, Пн, 25 янв 2021
Сообщения: 3
mihas пишет: *
Да все верно. При экспорте кривых vcgt например из профиля iMac в заголовок текстовой экспортированной таблицы вписывается не iMac, а текущий монитор типа Асус у меня. То есть на всех этапах происходит путанница, с каким именно профилем мы работаем: экспортировали кривую из iMac - в описании этой кривой откуда-то взялся Asus. И так во всем. Тут еще есть что поисправлять помимо исправленных ступенек на кривой.
Ну вот версия 5.1, сборка 2516 — не воспроизводится. В файл пишется имя файла профиля. Ранее, может, и были какие-то сборки с глюком. У вас какая сборка?


Вернуться к началу
СообщениеДобавлено: 20:13, Чт, 28 янв 2021 
Не в сети
Администратор

Зарегистрирован: 16:58, Ср, 18 авг 2004
Сообщения: 1064
Откуда: Москва
2237, но пользовался и более старой. Обновлюсь как понадобится снова воспользоваться.
Я пишу немного авторам чего не так мне кажется, они исправляют, думаю со временем все станет круто.
На момент написания инструкции во втором посте более надежным было на мой взгляд заменить исправленный тег vcgt в hex-редакторе, слишком много глюков было в калибрилле. Так что я просто терпеливо жду, все конструкторы профилей - это то что мне нужно, когда программы по созданию профилей что-то не могут или где-то ошибаются - пользуюсь конструкторами, и калибрилла в их ряду для монитора - вещь полезная.


Вернуться к началу
Показать сообщения за:  Поле сортировки  
Начать новую тему  Ответить на тему  [ 8 сообщений ] 

Часовой пояс: UTC+03:00


Кто сейчас на конференции

Сейчас этот форум просматривают: Google [Bot] и 2 гостя


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Перейти: 

cron
© CIELab.XYZ
Создано на основе phpBB® Forum Software © phpBB Limited
Конференция запущена 18 августа 2004 года | Защищено от спама системой stopforumspam
Всего посещений - 7875578 | Всего за день - 1817 | Уникальных сегодня - 319, вчера - 378, позавчера - 272