RawDigger 0.9.15 (RC1): удобное профилирование камер

Граждане фотографы!

В очередной раз предлагаю потестировать Release Candidate свежего RawDigger:

В версии 0.9.14 в RawDigger была добавлена удобная работа с цветовыми шкалами, но результат этой работы выводился в виде усредненных RAW-значений: в диапазоне значений камеры, без баланса белого, без гамма-коррекции. Как следствие, для нормального использования в программах профилирования эти данные приходилось предварительно обрабатывать в Excel или подобных программах: накладывать ББ, масштабировать, гамма-корректировать.

Версия 0.9.15 исправляет этот недостаток, теперь можно получить CGATS-файлы, пригодные для прямого скармливания в Profile Maker, Argyll и подобные программы.

Кроме этого, 0.9.15 умеет корректировать неравномерность освещения мишени.

Подробности:

1. Мишень при съемке следует располагать на какой-то ровной матовой поверхности. Идеальна большая серая карта (или стальная пластина, равномерно покрашенная серой краской), я в своих экспериментах использовал просто лист белого матового пенокартона.

Как-то так:

2. Кроме снимка мишени - потребуется и снимок этой ровной поверхности. С той же позицией камеры, с тем же освещением, с той же диафрагмой (чтобы и виньетирование объектива тоже скомпенсировать), да и выдержку тоже можно оставить:

3. Грузим снимок цветовой шкалы в RawDigger и натягиваем на цветовую мишень Selection Grid (подробности описаны в мануале):

Жмем в управлении Grid-ом кнопку Selection to Samples, появится табличка с замерами. Она нам пока не нужна...

4. Переходим теперь к снимку ровного поля не трогая Selection Grid (File-Open или просто переход к следующему/предыдущему файлу):

5. В таблице самплов (которая обновится при загрузке файла с ровным полем) жмем Save Samples и выбираем формат Flat Field Data:

По нажатию кнопки Save у нас сохранится таблица коррекции неравномерности поля. В ней содержатся длинные цифири от 1.0000 до чуть меньше:
RawDigger FlatField Data
4	24	channels/samples
Filename: IMG_0083.CR2	Frame: 1
Sample_Id	Sample_Name	R	G	B	G2
1	A1	0.967360	0.964297	0.960413	0.965807
2	A2	0.956440	0.954405	0.952269	0.955992
3	A3	0.948958	0.947742	0.945119	0.949574
4	A4	0.938201	0.937867	0.937006	0.939611
5	B1	0.972980	0.974254	0.973038	0.974874
6	B2	0.965116	0.966096	0.965530	0.966992
....
Эти цифры - в линейной шкале, самый яркий патч - 1.0, остальные - чуть меньше. В моей таблице - патч A4 примерно на 6.2% темнее, чем самый яркий (самый яркий у меня F1 - я его не привожу для экономии места, но там все 4 канала - 1.0).

6. Теперь возвращаем снимок с цветной шкалой (Selection Grid остается на том же месте - и продолжает точно попадать в нужные места) и опять жмем Save Samples в табличке замеров.

Но теперь мы выбираем формат CGATS и пользуемся всеми тремя новыми фишками:

  • Галка Flat Field Normalization - выбираем (с помощью кнопки [...]) файл .FFD, который мы сохранили на предыдущем шаге, когда было открыто ровное поле.
  • Галка White Balance - выбираем ту клетку сетки, которая серая (для Color Checker - C4 или D4)
  • Галка Data Scaling and Gamma - ставим нужную нам гамму (обычно 2.2) и нужное максимальное значение в файле (242..250 обычно хорошо работают)
Жмякаем Save - и получаем CGATS-файл, годный для построения профиля:
CREATED	"03/06/2013"  # Time: 17:29
INSTRUMENTATION	"RawDigger"
MEASUREMENT_SOURCE	"Filename=IMG_0082.CR2 Frame=1"
MEASUREMENT_SOURCE	"CameraMake=Canon CameraModel=EOS5DMarkII ISO=200 Shutter=1/8 Aperture=f/8.0 BlackLevel=1023 Channels=RGBG"
MEASUREMENT_SOURCE	"FlatFieldFile=I:/D30/cc24/IMG_0083_CR2.ffd FlatFieldChannelAverage=no WhiteBalanceSample=C4 Gamma=2.20 MaxValue=242.00"
NUMBER_OF_FIELDS	8
KEYWORD	"STDEV_R"
KEYWORD	"STDEV_G"
KEYWORD	"STDEV_B"
KEYWORD "SAMPLE_NAME"
BEGIN_DATA_FORMAT
SAMPLE_ID	SAMPLE_NAME	RGB_R	RGB_G	RGB_B	STDEV_R	STDEV_G	STDEV_B
END_DATA_FORMAT
NUMBER_OF_SETS	24
BEGIN_DATA
1	A1	104.89	87.44	78.02	5.35	3.59	5.11
2	A2	178.90	122.84	78.51	4.78	3.33	5.16
3	A3	67.02	85.37	129.58	6.79	3.69	4.38
4	A4	242.00	240.21	235.16	4.94	3.64	4.44
5	B1	171.76	145.70	136.21	4.66	3.15	4.29
6	B2	87.04	105.30	149.08	5.64	3.34	4.11
7	B3	111.91	133.32	98.98	5.07	3.14	4.55
8	B4	202.71	202.50	201.06	4.98	3.42	4.16
9	C1	108.20	123.47	143.34	5.13	3.15	4.20
10	C2	157.11	100.07	97.38	4.61	3.34	4.50
11	C3	138.73	79.96	68.20	4.74	3.57	5.48
12	C4	157.38	157.38	157.38	4.71	3.18	4.21
13	D1	99.33	101.13	79.36	5.31	3.35	5.01
14	D2	82.84	73.66	93.39	5.69	3.64	4.73
15	D3	211.96	181.74	102.57	4.59	3.17	4.54
16	D4	119.31	118.83	119.32	5.02	3.26	4.38
17	E1	128.53	133.04	158.22	5.05	3.41	4.21
18	E2	166.94	170.40	112.41	4.49	3.06	4.47
19	E3	152.86	109.12	134.22	4.75	3.28	4.15
20	E4	87.79	88.14	88.79	5.64	3.46	4.75
21	F1	144.68	177.61	172.33	4.76	3.47	4.33
22	F2	193.47	150.80	87.54	4.71	3.24	4.69
23	F3	95.29	134.95	158.05	5.57	3.37	4.42
24	F4	57.91	57.55	56.99	7.47	4.20	5.97
END_DATA

Comments

И куда потом этот профиль? :)
Ясно, что он должен быть входным профилем конвертера -- но кто поддерживает?

RPP - поддерживает.
C1 - полагаю тоже (но надо проверять)

С С1 как-то плохо у меня получалось с внешним профилем. А Адоба всё сама делает... Причём сомнительно.

RPP тоже умеет само

Но компенсация неравномерности реально помогает. А этого RPP не умеет, адоб - тоже.

Если получилось плохо - хотелось бы посмотреть снимки поля и мишени

Я пробовал без компенсации ещё, довольно давно. Я попробую с RawDigger ещё раз на выходных.

Rawtherapee, Iridient Rawdeveloper, Bibble - тьфу AfterShot Pro, PhotoNinja,...

Я слов-то таких не знаю! :) В отличие от RPP и C1. Не, вру, RawTherapee знаю. Ужоснах.
А что, этим кто-то пользуется всерьёз? Ну на Линуксе ладно, а вот те, у кого выбор есть?

А можно совсем-совсем в двух словах что за профиль мы получили на выходе и куда его надо засовывать, чтобы получить наблюдаемый результат?

В результате Вы получите CGATS с данными Input Device для системы профилирования. Для получения профиля по этим данным нужно рассчитать сам профиль. Для Argyll это делается 2 командами

txt2ti3 -v -i CGATS_From_RD.txt Orig_Digital_ColorChecker_SG.txt Data4ProfileCalculation

colprof  -v -A "CameraMake" -M "CameraModel" -D "Profile Description" -C "Your Copyright" -y -qu -aG -nc -O ProfileName.icc Data4ProfileCalculation

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

О, спасибо большое.

Из конверторов - RPP (без вопросов) и C1 (с некоторыми вопросами: есть мнение, что матричные профили C1 не любит).

Но. Так как RawDigger позволяет дешево офигачивать любые прямоугольные мишени, можно взять мишень в которой побольше патчей (ColorChecker SG, к примеру), построить табличный профиль - и его C1 наверное лучше сжует.

С матричными профилями в C1 не будет работать встроенная коррекция профилей.

Оффтопик: а чем бы ты сейчас обрабатывал сканы слайда? Я всё сканю на Nikon 9000 в NEF (но ясно, что там не баер), а дальше фотошопом (ACR'ом), но результат мне нравится очень не. В смысле, если в случае цифрофото особых претензий к Adobe у меня всё же нет (если не сравнивать с результатами RPP, а вот так, без сравнения), то к обработке сканов слайдов есть вопросы даже без сравнения.

Ну так можно сканировать VueScan-ом в DNG, а дальше RPP.....

А VueScan научился нормально ICE'у? Тому, что с инфракрасным каналом?
Я его пробовал когда у меня была Minolta 5400 Elite под узкую плёнку -- это был страх и ужас даже по сравнению с родным софтом, не говоря о SilverScan. Но это было давно.

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

Только вуесканом и сканировал, остальное все (и никоновский софт и Silverfast) - совсем же ужасное.

SilverFast ужасен, а никоновский софт простой и эффективный -- вставил холдер с 3-мя кадрами, ткнул в batch scan, 15 минут куришь. Но я попробую VueScan, спасибо.

Правда вот RPP упирается всё в тот же мак. На моём Q9550 в VMWare MacOS X работает с непередаваемой неторопливостью :(

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

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

А будет ли когда-нибудь RawDigger под Linux, FreeBSD ?

Нет.

Есть еще замечательная библиотека для обработки очень больших изображений с поддержкой многопоточности, лицензия LGPL http://www.vips.ecs.soton.ac.uk/index.php?title=VIPS

Ну там написано "It is good with large images (шmages larger than the amount of RAM you have available)"

Большинство RAW успешно живут в гигабайте, а которые не живут - это от задников ценой в $40k, подозреваю что 4Gb (800 рублей) хозяину такого задника по карману. И они ему понадобятся в любом случае при обработке.

>Большинство RAW успешно живут в гигабайте
Речь не только о RAW. Мне кажется, отличной идеей было бы использовать подобное ПО для получения фотопанорам с очень высоким разрешением. Если есть много RAW снимков, можно было бы их вставить, отрегулировать в них разные уровни (для единообразия) и сшить в одну мегабольшую картинку

Панорамы - не моя тема.

Но опять же - сшивка панорам в небольшой памяти - это сильно на любителя развлечение. Время то не казенное.

Не совсем разбираюсь, но какие мишени поддерживаются, для QPcard 203 book что нужно будет?

И про команды не совсем понял
где и куда их вводить, и есть ли в них переменная?

""""""
txt2ti3 -v -i CGATS_From_RD.txt Orig_Digital_ColorChecker_SG.txt Data4ProfileCalculation

colprof -v -A "CameraMake" -M "CameraModel" -D "Profile Description" -C "Your Copyright" -y -qu -aG -nc -O ProfileName.icc Data4ProfileCalculation
""""""

Команды - это вызов утилит от Argyll (т.е. отдельный софт, к RawDigger отношения не имеет). В командной строке и вводить.

А мишени - любые прямоугольные. Для QPCard 2003 нужно в диалоге Selection Grid поставить правильное количество Rows/Columns.

А как быть, если формат "SAMPLE_ID SAMPLE_NAME RGBg_R RGBg_G RGBg_B RGBg_g" Argyll не берёт?
"C:\Users\e1>txt2ti3 -v -i D600NEF ColorChecker.cie
Single source file, assumed dev/cie/spectral
txt2ti3: Error - Read: Can't read dev file 'D600NEF'. Unknown format or corrupte
d file ?"

Включите усреднение зеленого. Будет просто RGB

ага, спасибо, сам уже нашёл, но до сих пор не берёт Argyll v1.5.1 и всё.. Странно.

Во-первых, 1.5.X - использовать нельзя, там куча ошибок. Используйте 1.4. Линки должны быть типа http://www.argyllcms.com/Argyll_V1.4.0_win32_exe.zip Во-вторых, последовательность команд Ваших покажите, и сам CGATS тоже.

ну не замечал разницы с 1.4, последние несколько недель довольно активно копаюсь с 1.5, вроде всё ок, только вот как раз scanin бывает даёт code 03 без дальнейших коментариев, а "документация" Argyll, типично несколько строчек текста, потому без кавычек документацией и не назвать.
-------------------------------------
CREATED "04/21/2013" # Time: 22:31
INSTRUMENTATION "RawDigger"
MEASUREMENT_SOURCE "Filename=D600hVFAI00100.NEF Frame=1"
MEASUREMENT_SOURCE "CameraMake=NIKON CameraModel=D600 ISO=100 Shutter=1/50 Aperture=f/5.6 BlackLevel=0 Channels=RGBG"
MEASUREMENT_SOURCE "WhiteBalanceSample=C4 Gamma=1.80 MaxValue=242.00"
NUMBER_OF_FIELDS 5
KEYWORD "SAMPLE_NAME"
BEGIN_DATA_FORMAT
SAMPLE_ID SAMPLE_NAME RGB_R RGB_G RGB_B
END_DATA_FORMAT
NUMBER_OF_SETS 24
BEGIN_DATA
1 A1 85.29 67.07 58.37
2 A2 171.91 105.62 60.56
3 A3 54.95 71.41 112.89
4 A4 242.00 239.68 238.97
5 B1 160.46 127.69 113.96
6 B2 79.36 95.80 142.24
7 B3 85.63 111.38 79.41
8 B4 189.65 188.67 189.37
9 C1 93.41 109.34 130.55
10 C2 145.89 81.92 78.58
11 C3 122.51 60.59 50.91
12 C4 144.46 144.46 144.46
13 D1 73.13 77.47 56.86
14 D2 69.27 60.62 78.61
15 D3 200.00 163.38 80.46
16 D4 100.59 99.65 99.32
17 E1 119.50 121.84 149.16
18 E2 140.54 145.52 87.00
19 E3 145.50 94.51 119.09
20 E4 66.39 66.54 66.86
21 F1 125.43 163.88 159.35
22 F2 177.87 129.80 65.50
23 F3 79.56 119.32 145.93
24 F4 40.19 39.79 40.24
END_DATA
------------------------------------------
Команда собсно только одна - C:\Users\e1>txt2ti3 -v9 -i D600NEF.txt ColorChecker.cie

В Вашем случае, наверно, нужны 3 файла
device data
reference data
output ti3

Argyll 1.4.0 всё то же. Да тоже без разницы output.ti3 есть/нет, ошибка именно по поводу тхт файла:"txt2ti3: Error - Read: Can't read dev file 'D600NEF.txt'. Unknown format or corrupted file ?"

короче, проблема решается добавлением рекомендованного Argyll'ом хеадера, вбитого вместо вашего, иначе не читает

http://www.argyllcms.com/doc/SG_header.txt

Почему LAB, если в файле - RGB? Почему IT8.7?

Argyll cвежих версий хочет первой строчкой CGATS.17

я только это из их хеадера взял:
"IT8.7/2
ORIGINATOR "Graeme Gill"
DESCRIPTOR "Header to prepend to X-Rite digital_colorchecker_sg_l_a_b.txt file"
CREATED "June 26, 2012"
"
А вообще, появилсь другая ошибка, которую я в полусне не заметил(у меня уже заполночь)
"C:\Users\e1>txt2ti3 -v9 -i D600NEF.txt ColorChecker.cie out.ti3
Two source files, assumed dev + cie/spectral or dev/cie + spectral
Seems to be an RGB device
Read device values
Found spectral values
Found CIE values
Device max found = 242.000000, scale by 100/255
txt2ti3: Error - Patch label mismatch to CIE values, patch 0, 'A1' != 'A01'
"
То есть проблема не решена.

'A1' != 'A01' - не подготовлен cie. Его надо править, или выкидывать вообще label (Sample ID) из обоих файлов.

Там существенно с версиями, которые Вы используете, указать в первой строке тип, например
CGATS.17

Получится
CGATS.17
CREATED "04/21/2013" # Time: 22:31
INSTRUMENTATION "RawDigger"
MEASUREMENT_SOURCE "Filename=D600hVFAI00100.NEF Frame=1"
MEASUREMENT_SOURCE "CameraMake=NIKON CameraModel=D600 ISO=100 Shutter=1/50 Aperture=f/5.6 BlackLevel=0 Channels=RGBG"
MEASUREMENT_SOURCE "WhiteBalanceSample=C4 Gamma=1.80 MaxValue=242.00"
NUMBER_OF_FIELDS 5
KEYWORD "SAMPLE_NAME"
BEGIN_DATA_FORMAT
SAMPLE_ID SAMPLE_NAME RGB_R RGB_G RGB_B
END_DATA_FORMAT
NUMBER_OF_SETS 24
BEGIN_DATA

Кроме того, следите за поворотом.

так точно, строка CGATS.17 решает проблему, только ещё все патчи пришлось переименовать, А1->A01 etc. Для СС24 ещё куда ни шло, но для больших таргетов, может статься работисто..

Мне переименовывать не понадобилось. С поворотом - разобрались?

ну у меня cie файл(он из Argyll\ref) был с А01, хочешь не хочешь, а переименовать пришлось. Это всё к тому, что неплохо бы добавить в новую бету, в настройки экспорта CGATS, вариант счёта патчей с незначащими нулями тоже, как и строку CGATS.17 за которую отдельное спасибо (ну откуда бы я про неё узнал, как если не отсюда, или из бессистемного копания всего подряд в http://blog.gmane.org/gmane.comp.graphics.argyllcms не по С коду же смотреть, что делает Aryll, в конце концов). Хочется же просто и быстро увидеть результат, а не "наслаждаться" процессом.
[off] Вообще, иногда приходит мысль в голову, а не получу-ли я гораздо больше гибкости и возможностей, если потрачу столько же времени в матлабе-всемогущем (постоянно натыкаюсь в поиске, как на готовые библиотеки, так и просто на куски кода по данным преобразованиям), вместо поиска примеров и крупиц полезной инфы об утилитах Argyll? Я блин, простой любитель, у меня нет времени на это, а в матлабе знаком симулинк например и вообще, на него времени не так жаль. [/off]
PS: о каком вы повороте говорите? Ежели о соответствии ID патчей, то всё ок теперь. Если о поровоте самой картинки, то она практически идеально позиционирована, это рофайл с имиджресорс, хотя подозреваю, свет у них вероятно "дырявый", такие картинки http://www.imaging-resource.com/PRODS/D3X/ZD3XhMULTI0100_colorerror.png чисто статистически дают повод задуматься на счёт странной корреляции dE для патчей 8,9,13,15 у всех всех камер, причём видно, что 2008-2009 - это одни условия съёмки, а 2010-2012 чуть другие. Как вы считаете, стоило бы надеяться на device data с такого источника?
Приношу извинения за многословность, вероятно неуместную ;)

Да, про нумерацию вы правы - и стоит добавить. Добавим.
Старые версии Argyll на CGATS.17 забивали, для новых - да, тоже стоит добавить.

послушайте, а что если сказав А, сказать и Б? В вашем же диггере спрашивать путь к cie файлу, чтобы решить все возможные нестыковки, раз уж Argyll этому не обучен? А выводить ti3, а то и вообще стартануть и диггера colprof? Почему бы нет, ведь есть же GUI под Agryll с такой же бесплатной лицензией?

Становиться GUI к Argyll - не задача RawDigger (равно как нет ни малейшего желания парсить все варианты описания мишени).

lexa, это снова я, челом бью - как на счёт чтения .tif? Можно было бы вообще без калор менеджмента, или с галочкой использовать/нет встроенный профайл. А то у меня навязчивая идея, всобачить в LUT ICC, какую нибудь доп. обработку(типа цветового контраста, или тени_цветнее/света_наоборот, тонинг и прочий "фотошоп") и тут ваш RD так удачно читает мишени. Обидно, что только с истинных рофайлов..

Работы ведутся. Будут не байеровские файлы.
- full-color DNG и прочие sRAW сначала (и скоро)
- затем фовеон
- а затем и tiff/png

С учетом наличия присутствия лета, tiff-png быстро не ждите.

ха, так мне вроде и DNG сойдёт? Я ж могу с Rawtherapee сохранить tif с гаммой 1 и без ICC камеры, открыть фотошопом, накинуть обработку, зеркальную искомой и сохранив как DNG, открыть в RD, для устойчивого чтения патчей? Или то будет уже не правильный DNG? Пробовал я сохранить tif открытый в Capture NX 2, как NEF, однако RD его не читает.

Вот полноцветные NEF-ы (что из Capture NX, что из Nikon Scan) - какие-то для меня загадочные, как их читать мне неведомо.

Да, мишени из tiff читает (читал) colorlab

в смысле та маленькая софтинка (LOGO), может? Странно, поискал в их мануале "tif", ничего не нашёл про ридинг патчей с него. Открывать она tif, открыла, но ни грида(как у вас),ни диалога ехпортного не вижу. Ну всё равно спасибо, пороюсь ещё в ней.
PS: С Argyll у меня лажа при чтении патчей, видать потому что Rawtherapee сохраняет tif for calibration с G=1, т.е. он люто тёмный. Вот Сapture One в такой ситуации, сохраняет с нормальной гаммой TIF и Argyll scanin проскакивает на ура.

LOGO ColorLab: откройте tiff/jpeg, Filter -> Layout & Format -> Spot Colors

вауу, заработало! Спасибо большое, отцы, еслиб не вы, даже не знаю.. :))

офф, сорри за тест попытку, просто почему-то мой пой пост про TMS с китая, распознан как спам. Чем это я так осокоромился, любопытно? ;)

"У нас работают роботы и мы ни за что не отвечаем" (C) саппорт Яндекса ~10 лет назад.

Вот и у меня работает 3rd-party сервис, mollom.com, я им как-то, частично, доволен.

Кого достал спам - регистрируйте тут аккаунт и пишите мимо фильтра.