• В панели File » Settings... установим
File type в PIC и установим в качестве Working path директорий/путь на диске с доступной емкостью для хранения.
ПРИМЕЧАНИЕ: убедитесь, что ваша рабочая папка находится "близко" к корню диска; то есть иерархия файловой системы не содержит в глубину множество подпапок. Один или два уровня вполне приемлемы, но полдюжины или около того, скорее всего, будет слишком много и приведет к ошибкам.
• Нажмем на иконку
Photo панели (ту, которая похожа на камеру) для открытия диалога
Camera Settings. Установим Binning в 1x1, Digital camera Model в правильный тип Вашей камеры –
CANON (5D/20D/350D) в нашем случае – и RAW interpolation method в
Gradient. Оставим поле Apply под White balance неактивным.
• Нажмем на иконку
Command window панели сразу слева от иконки Photo для вызова окна ввода Команд. Вы будете вводить свои команды в этом окне.
• Выберите в поле меню Select Analysis »
Display data... для отображения окна Вывода.
"Визуализация"
Перед погружением и благодаря частым вопросам моих просвещенных читателей давайте обсудим то, что является одновременно как наиболее запутанным аспектом IRIS так и одной из его наиболее мощных функций: а именно концепцию
Визуализации изображения в IRIS.
Прелесть IRIS в том, что он позволяет Вам
видеть – то есть визуализирует – изображение различными способами, без изменения данных (например уровень яркости) изображения. На минутку задумайтесь об этом, так как это противоречит алгоритму большинства программ по обработке изображений. В Photoshop-е, GIMP-е, Paint-е и многих других похожих программах для того, чтобы например, сделать изображение ярче Вы должны поднять Уровни, Кривые или их эквиваленты и реально изменить данные изображения. В IRIS же, однако, можно произвольно установить Уровень Черного (точка, ниже которой все данные изображения будут отображаться на экране как черные) и Уровень Белого (точка, выше которой все данные изображения будут отображаться на экране белым) отображая или визуализируя на экране значения между этими уровнями Черного и Белого.
По сути это является способом "выделения" интересующего диапазона значений яркости изображения с целью "видеть" изображение одним из удобных способов. Это особенно ценно для "линейных" данных изображения, отснятого DSLR камерами в RAW режиме, которые было бы очень трудно "визуализировать" без предварительного агрессивного растяжения контраста. Что замечательно в IRIS, так это его возможность визуализировать такие данные без применения растяжения контраста. Уровни Белоги и Черного в IRIS устанавливаются при помощи "ползунков визуализации" в окне Threshold. Они также могут быть установлены в определенные значения консольной командой visu.
Эта концепция "визуализации" возможно, по-прежнему смущает Вас. Не стоит волноваться, если это так. С приобретением некоторого опыта использования программы это станет Вашей второй натурой. Важной вещью, которая поможет двинуться дальше является следующее положение, которое я склонен считать Фундаментальной Теоремой Визуализации в IRIS:
Если изображение в IRIS выглядит не таким, каким Вы ожидали его увидеть, то существует прекрасный шанс того, что для того, чтобы изображение стало таким, каким Вы желаете его видеть, потребуется всего лишь простая настройка Порогов Визуализации. Зачастую, но не всегда "приемлемая" визуализация изображения – в частности линейное (нерастянутое) изображении – может быть получено нажатием в окне
Threshold кнопки Auto. Если это не сработало, попробуйте после нажатия кнопки
Auto подвинуть верхний ползунок вправо и/или нижний ползунок влево.
Теперь, когда мы настроили IRIS и понимаем концепцию визуализации, начнем работу …
Создание Master Flat-а
1. Конвертируем RAW Flat Light-ы в формат PIC (CFA). Выберем Digital Photo » Decode RAW files... что, зачастую обескураживая начинающих пользователей IRIS, переведет окно IRIS на задний план интерфейса Windows; то есть позади всех других открытых на экране окон. Это делается для того, чтобы Вы могли вызвать Проводник Windows и перейти к папке, в которой хранятся Ваши RAW кадры. Поступите именно так, затем выберите все Flat Light-ы (в случае 350D это файлы
.CR2; для других типов камер это .NEF, .PEF и т.д.) и перетащите их в окно диалога IRIS - Decode RAW files. Задайте имя последовательности (для flat light-ов я использую
fl) и, наконец, нажмите кнопку ->CFA... IRIS конвертирует все выбранные RAW файлы в файлы формата PIC и каждое изображение станет изображением CFA в градациях серого.
2. Конвертируем RAW Flat Dark-и в формат PIC (CFA). В открытом по-прежнему окне нажмите
Erase list, а затем перетащите в главную область окна свои Flat Darks-и (аналогично, для 350Dфайлы
.CR2; .NEF и пр. для других камер). Задайте для этой последовательности имя, отличное от использованного Вами для Flat Light-ов (для flat dark-ов я использую
fd), а затем нажмите кнопку ->CFA... IRIS конвертирует выбранные RAW файлы в формат PIC. По окончании нажмите кнопку
Done.
3. Создадим
Flat Master Dark. В настоящее время для создания Flat Master Dark-а я использую метод медианного сложения отдельных Flat Dark-ов. Вот простейший способ осуществления этого процесса в командном окне:
>smedian fd N >save flat-master-dark
где N это количество Flat Dark кадров (в моем случае обычно 19).
4. Идентификация горячих пикселей. Для нахождения горячих пикселей применим на flat-master-dark-е команду find_hot. Тонкость заключается в то, чтобы выбрать нужное значение порога, выше которого IRIS будет считать пиксель "горячим". Один из методов, которые у меня работают – это установить порог согласно формуле "Mean + (16 ? Sigma)". Я точно знаю, однако, что эта формула не работает для камеры 300D моего друга, так как создает слишком много таких горячих пикселей. В случае Flat Dark-ов должно быть довольно мало горячих пикселей, которые проявят себя на таких коротких выдержках. Используйте в команде find_hot различные пороги до тех пор, пока не получите что-то около 10-20 горячих пикселей. Для получения статистических данных о загруженном в память изображении используется изумительная по своей пользе команда stat. Примечание: последние версии IRIS выдают результат этой команды в окно Вывода (Output), а не в окно Команд (Command) как это показано в примере ниже.
Вот пример:
>load flat-master-dark
>stat
Mean: 125.0
Median: 125
Sigma: 2.1
Maxi.: 274.0
Mini.: 114.0
>find_hot flat-cosmetic 158.6
Hot pixels number: 3
где flat-cosmetic это название файла, в который IRIS сохранит список горячих пикселей, а заданный порог
(158.6) был вычислен, как Mean + (16 х Sigma); т.е.
125 + (16 х 2.1).
5. Проверка Правильной Экспозиции Flat Light-ов. Это именно то, что Вы должны были сделать во время съемки Flat Light-ов или при проверке Лайтбокса, так как сейчас уже поздно повторять их съемку (скорее всего Вы уже отсоединили камеру или еще как-либо потревожили ее со времени съемки своих Light-ов). В любом случае Вы можете использовать следующие шаги для проверки Flat Light-ов на этапе их съемки. Простейшим способом является вычислить набор статистических данных для всей последовательности Flat Light-ов
(fl, если Вы выполнили приведенные выше шаги 1–4), но на поканальной основе, ибо Ваша камера имеет различную чувствительность к разным цветам и, кроме того, поскольку Лайтбокс или сумеречное небо не являются идеально "белыми". Для выполнения этого введите следующие команды:
>cfa2pic fl flrgb N >stat3 flrgb N
где N это количество Flat Light кадров (в моем случае обычно 19).
Команда stat3 автоматически применит команду stat к каждому кадру последовательности, сохраняя выводимые данные в виде текстового файла
stats.lst, разделенного табуляциями и расположенного в установленной рабочей папке IRIS. Этот файл можно изучить любым текстовым редактором (Wordpad, Notepad и т.д.). Столбцы таковы (слева направо): Номер Цвета/Рисунка, Среднее(Mean), Максимум(Max), Минимум(Min), Сигма(Sigma) и Медиана(Median). Обратите внимание, что для каждого файла имеются три строчки: по одной для красного(red), зеленого(green) и синего(blue), соответственно. В идеале желательно, чтобы значение Медианы для каждого цвета было в районе 2048. Если Вы используете немодифицированный DSLR или используете небесные flat-ы или то и другое, тогда значения медианы для синего и зеленого будут значительно больше медианы красного. В таком случае выберите некоторое "компромиссное" значение выдержки, которое немного пересветит синий и зеленый каналы (например, медиана около 2500) и немного недоэкспонирует зеленый (например, медиана около 1000). В любом случае Вы должны убедиться, что пиксели в центре Flat Light-ов – то есть в самой яркой их области – не пересвечены (насыщены). Для этого загрузите один или несколько своих цветных Flat Light-ов (например, >load flrgb1), настройте пороги визуализации так, чтобы четко видеть самую яркую часть изображения и поводите по ее пикселям курсором мыши. В правом нижнем углу главного окна IRIS отобразит интенсивности красного, зеленого и синего цветов пикселя, находящегося прямо под курсором мышки. Убедитесь, что самая яркая область изображения нигде не приближается к максимальному 12-битному значению 4095. В целом старайтесь, чтобы максимальное значение было меньше, чем около 3000.
6. Калибровка Flat Light-ов на основе Flat Master Dark-а. Самым простым способом сделать это является использование пункта Preprocessing... из меню Digital Photo. Однако данная функция разработана специально для калибровки Ваших "реальных" Light-ов на основе Master Dark-а, Master Flat-а, Master Offset-а и т.д., поэтому нужно обмануть его, создав несколько вспомогательных значений. Для начала нам потребуется создать "вспомогательный flat", так как последнее, что мы хотим сделать – это поделить наши Flat Light-ы на реальный кадр Flat. Также нам потребуется "вспомогательный offset", так как в нашей обработке мы не используем Offset-ы. Самый легкий способ создания таких "вспомогательных" файлов – это загрузить любой из наших существующих файлов (которые уже имеют требуемые ширину и высоту) и затем "заполнить" изображение значением константы. Вот как это делается:
>load fd1
>fill 0
>save dummy-offset
>fill 1
>save dummy-flat
Теперь откроем меню Digital Photo » Preprocessing... и введем следующие параметры: Input generic name (шаблон исходных файлов) =
fl, Offset = dummy-offset, Dark = flat-master-dark (Optimize =
не отмечено), Flat-field = dummy-flat, Cosmetic file = flat-cosmetic, Output generic name (шаблон итоговых файлов)=
fld (flat light с примененным dark), Number = 19 (т.е. количество Flat Light-ов в нашей последовательности). Теперь IRIS вычтет flat-master-dark из каждого выбранного Flat Light-а, а также "исправит" горячие пиксели.
7. Создание Master Flat-а.
Выберите Digital Photo » Make a flat-field... и заполните поля как приведено ниже: Generic name (шаблон имени) =
fld, Offset image = dummy-offset, Normalization value (значение нормализации) =
20000 и Number = 19 (т.е. количество Flat Light-ов в нашей последовательности). IRIS вычтет (вспомогательный) offset из калиброванных Flat Light-ов, нормализует их так, чтобы они были одинаковой интенсивности (яркости), а затем произведет их медианное сложение. Результат останется в памяти, а не на диске. Поэтому не забудьте сохранить его:
>save master-flat
8. (По желанию)
Очистка диска. Если есть желание сберечь дисковое пространство, то на данном этапе Вы можете удалить из рабочей папки IRIS все файлы кроме RAW файлов своей камеры,
master-flat.pic и dummy-offset.pic.
Создание Master Dark-а
1. Конвертируем RAW Darks в формат PIC (CFA). Используйте ту же процедуру, что и в разделе Создание Master Flat-а. Назовите последовательность
d (dark).
2. Создание Master Dark-а. В настоящее время для создания Master Dark-а я использую метод медианного сложения отдельных Dark-ов. Привожу простой способ выполнения этого в командном окне:
>smedian d N >save master-dark
где N количество Dark кадров (в моем случае обычно 9).
3. Идентификация горячих пикселей. Для определения горячих пикселей в Master Dark используем процедуру, описанную в разделе Создание Master Flat-а. Здесь нашей целью является получить порядка нескольких сотен горячих пикселей. Приведенный для 350D алгоритм "Mean + (16
х Sigma)" работает здесь аналогично. Вам потребуется поэкспериментировать. Привожу пример:
>load master-dark
>stat
Mean: 120.3 Median: 119
Sigma: 9.5
Maxi.: 4008.0 Mini.: 91.0
>find_hot cosmetic 272.3
Hot pixels number: 82
где cosmetic – название файла в который IRIS сохранит список горячих пикселей, а порог
(272.3) вычеслен по формуле Mean + (16 х Sigma); т.е.
120.3 + (16 х 9.5).
4. (По желанию)
Очистка диска. Если есть желание сберечь дисковое пространство, то на данном этапе Вы можете удалить из рабочей папки IRIS все файлы кроме RAW файлов своей камеры, а также файлов
master-flat.pic, dummy-offset.pic, master-dark.pic и cosmetic.lst.
Калибровка Light-ов
1. Конвертируем RAW Light-ы в формат PIC (CFA). Используйте ту же процедуру, что и в разделе Создание Master Flat-а. Назовите последовательность
l (light).
2. Калибровка Light-ов на основе Master Flat-а, Master Dark-а и Файла Горячих Пикселей. Вызовем меню Digital Photo » Preprocessing... и введем следующие параметры: Input generic name (шаблон исходных файлов)=
l (это l как в light, а не единица), Offset = dummy-offset, Dark = master-dark (Optimize =
не отмечено), Flat-field = master-flat, Cosmetic file =
cosmetic, Output generic name (шаблон итоговых файлов) =
ldf (light с примененными dark и flat), and Number = N, где N это количество имеющихся в наличии Light кадров. Для каждого Light кадра IRIS вычтет master-dark, разделит на master-flat, исправит горячие пиксели и сохранит результат в новом файле.
Конвертирование CFA в RGB
Введем следующую команду:
>cfa2pic ldf ldfrgb N
где N это количество Light кадров. IRIS интерполирует отсутствующие цветовые данные для конвертирования калиброванных Light-ов – которые пока еще в формате CFA- в полноцветные изображения (RGB).
Регистрация
Для IRIS v4.34 используем следующую автоматическую процедуру для сдвига (преобразования), вращения и, при необходимости, масштабирования калиброванных Light кадров с целью выравнивания их для последующего сложения:
>setspline 1
>coregister2 ldfrgb ldfrgbreg
N
где N количество Light кадров. Это отнимет у Вас некоторое время, поэтому расслабьтесь, откиньтесь на спинку кресла или перекусите бутербродом. Если IRIS не выдал никаких ошибок, то у Вас все получилось и можно переходить к следующему шагу (Обрезке).
Если же по какой-либо причине произошла ошибка попробуйте вместо этого использовать метод "Три совпадающих зоны":
>setspline 1
>coregister4 ldfrgb ldfrgbreg 512
N
Если же и тут произошла какая-либо ошибка, то Вам, возможно, потребуется настроить алгоритм IRIS совпадения звезд путем настройки количества и яркости звезд, которые он использует для синхронизации кадров. Вот соответствующая команда:
>setfindstar sigma
где большее значение sigma говорит IRIS использовать только самые яркие (но не перенасыщенные) звезд, а меньшее значение sigma говорит IRIS использовать более тусклые звезды. По умолчанию sigma имеет значение
7.0. Для снимков с кучей звезд, таких, например, как правильно выдержанные снимки объектов в/около Млечного Пути попробуйте увеличить sigma до значений около
8.0 или 10.0. Для снимков с малым количеством звезд попробуйте уменьшить sigma до значений, близких к
5.0. Эсли это не сработало, то попробуйте изменять sigma в противоположном направлении. В любом случае, выполнив команду setfindstar повторите команды coregister2 или coregister4 как указано выше. Если IRIS выполнил эти команды успешно Вы можете переходить к следующему шагу (Обрезке).
Если и после этого IRIS продолжает испытывать трудности с автоматической регистрацией Вашей последовательности кадров то, в крайнем случае, можно использовать более простой метод регистрации по "одной звезде". Однако, к сожалению, данный метод не может автоматически "повернуть" Ваши калиброванные Light-ы для предотвращения эффекта поворота поля (который, в целом, вызван ошибкой полярного выравнивания). Для этого:
• Загрузим первый кадр из последовательности, например >load ldfrgb1
• При помощи мышки обведем прямоугольником отдельную (но не перенасыщенную!) звезду возле центра изображения. Для определения того, перенасыщена звезда или нет Вам, возможно, придется настроить ползунки визуализации.
• Вызовем меню Processing » Stellar registration... и введем следующие заначения: Input generic name (шаблон исходных файлов) =
ldfrgb, Output generic name (шаблон итоговых файлов)=
ldfrgbreg, Method = One star, Spline resample = (отмечен).
Примечание: более приемлемым, чем описанный выше метод "одной звезды" в качестве "спасательного круга" будет использование команды rregister, которая может осуществлять преобразование (сдвиг) и вращение поля. Для более детального ознакомления можно просмотреть веб-страницу Christian-а. В частности просмотрите раздел Compensate field rotation (Компенсация вращения поля) в
IRIS Tutorial и описание Команды RREGISTER в заметках
v3.54 Release Notes.
Ну а если ничего из приведенного выше не помогло, напишите письмо в Группу Yahoo
Iris_software и Вам постараются помочь.
Обрезка
Обычно к этому моменту мы уже должны быть готовы к сложению наших зарегистри-рованных изображений. Но любимый мною метод сложения – так называемое Kappa-Sigma сложение – требует, чтобы каждое изображение из последовательности было подвергнуто Нормализации так, чтобы уровни фона были одинаковы. Но для того, чтобы Но для того, чтобы Нормализовать каждое из изображений в последовательности нам необходимо обрезать (тут появился технический термин) "мусор" вдоль кромок каждого из изображений. Этот "мусор" есть значения пикселей, которые IRIS вынужден был внести (поскольку они были вне границ оригинального изображения) при операциях сдвига, вращения и масштабирования каждого из изображений на этапе регистрации. На данном этапе нашей задачей является обрезать имеющуюся последовательность до размеров той части, которая является общей для всех зарегистрированных изображений. Вот как это делается:
1. Сделаем простое черновое сложение зарегистрированных изображений:
>add_norm ldfrgbreg N
где N это количество изображений в последовательности.
2. Нейтрализуем фон итога суммирования так, чтобы он не визуализировался. Для этого обведем мышкой на изображении прямоугольную область вблизи центра, которая наиболее точно соответствует фону неба (т.е. избегаем галактик, туманностей, ярких звезд и т.д.). Затем выполним следующую команду:
>black
3. Визуализируем изображение нажатием кнопки
Auto в окне Threshold. Теперь используем ползунки главного окна для перехода к нижнему левому углу изображения. Теперь должно быть предельно ясно, где заканчивается "правильное" изображение и начинается "мусор". "Правильное" изображение будет относительно ярким; т.е. похожим по яркости на подавляющее большинство площади кадра. Тогда как "мусор" будет заметно темнее, возможно даже полностью черным. При помощи мыши щелкните на удобной точке внутри "правильной" области (т.е. на несколько пикселей выше и правее места окончания зоны "мусора"). IRIS очень своевременно сообщит в окне Вывода координаты того места, куда Вы нажали мышкой. Теперь проделайте ту же операцию для верхнего правого угла изображения. Щелкните в подходящем месте "правильной" области (т.е. на несколько пикселей ниже и левее области окончания "мусора"). IRIS снова сообщит Вам координаты в окне Вывода. Теперь, когда нам известны нижняя левая и верхняя правая координаты области, до которой надо обрезать изображения нашей последовательности введем следующую команду:
>window2 ldfrgbreg ldfrgbregcrop
x1 y1 x2 y2 N
где N это количество изображений в последовательности;
{x1, y1} координаты, полученные при нажатии в нижнем левом углу изображения (смотрите окно Вывода), а {x2, y2} это координаты, полученные при нажатии в верхнем правом углу изображения (опять же, смотрите на окно Вывода).
Имейте в виду, что если в последовательности Ваших кадров была проведена коррекция некоторого вращения поля, то Вам может потребоваться щелкать мышкой в "правильной" области суммированного изображения несколько глубже с целью обрезать "мусор" в верхнем левом и нижнем правом углах кадра. Возможно, Вам потребуется немного поэкспериментировать для выбора правильной области обрезки.
Нормализация
Теперь мы нормализуем уровень фона каждого изображения; что, по сути, автоматически установит уровень медианы каждого изображения в ноль. Это имеет два положительных эффекта: во-первых, это увеличит динамический диапазон доступный для (суммированного) результата, а во-вторых, это позволит правильно провести Kappa-Sigma сложение. Делается это так:
>noffset2 ldfrgbregcrop ldfrgbregcropnorm 0
N
где N это количество изображений в последовательности.
Сложение
Существует множество путей "сложения" (т.е. суммирования) отдельных кадров последовательности. Один из них это прямое сложение, которое имеет преимущество в том, что выдает результат с очень высоким соотношением сигнал/шум. Проблема прямого сложения в том, что такие вещи, как космические лучи, имеющие вид (очень) тонких отдельных штрихов, самолеты, треки спутников и другая "ложная" информация проявится в результате сложения. В качестве другой крайности можно обработать все изображения последовательности сложением по Медиане. В то время как оператор Медианы всемогущ в удалении такой "ложной" информации, он имеет недостаток в том, что дает на выходе результат с гораздо более низким соотношением сигнал/шум, нежели суммирование. Было бы здорово, если бы имелся "гибридный" алгоритм, который объединял бы в себе лучшие черты как прямого суммирования, так и медианного сложения! Да, такой имеется.
Этот алгоритм называется Kappa-Sigma сложение и в целом работает так. Представьте положение (x,y) отдельного единичного пикселя изображения. Алгоритм проверяет значение интенсивности этой точки во всех изображениях последовательности, затем вычисляет Среднее (Mean) и Сигму (Sigma) этих значений. Любое отдельное значение, которое удалено от Среднего на произведение некоторой константы на Сигму считается "ложным" и исключается из сложения. Затем алгоритм вычисляет сумму оставшихся значений и масштабирует результат исходя из того, сколько значений было исключено. Такое произведение некоторой константы на Сигму называется Каппа (Kappa).
Резюмируя, скажем, что алгоритм Kappa-Sigma исключает из суммирования все значения, лежащие на удалении Kappa
х Sigma единиц от Mean. Kappa это один из параметров, которые должны быть переданы алгоритму. Другим параметром является количество итераций алгоритма, который я позже опишу детально. В некоторых случаях алгоритм не может отбросить с первого захода всю действительно "ложную" информацию, однако может корректно отбросить ее часть. На этом шаге для отбрасывания данных, которые являются "ложными" может быть запущен следующий проход алгоритма с новыми значениями Mean и Sigma, что повторно обработает оставшиеся данные. Каждый такой проход называется итерацией. Исходя из моего опыта, одной итерации достаточно для автоматического удаления следов от космических лучей, самолетов, спутников, метеоров и даже от случайных "горячих пикселей" которые проскользнули этап калибровки, особенно если Light-ы были сдвинуты во время съемки. (Разве я просил делать дизеринг на этом этапе!?)
Когда применяется приведенная выше теория, последующие в IRIS шаги очень просты. Вот как осуществляется Kappa-Sigma сложение. Мы сохраняем результат в файле stack:
>composit ldfrgbregcropnorm Kappa Iterations Normalize N
>save stack
где Kappa и Iterations описаны выше, Normalize это флаг, требующий от IRIS предотвратить клиппинг (числовое переполнение) результата сложения и N это количество изображений в последовательности. Почти всегда я использую Kappa равным
3, Iterations равными 1 и флаг Normalize равным
1. Если Вы заметите, что следы самолетов и т.д. проскальзывают в итоговый результат, попробуйте снизить Kappa до
2 или увеличить Iterations до 2 или более. Практически во всех случаях нам желательно избежать числового переполнения (клиппинга) итогового результата, что достигается установкой флага Normalize в 1. Однако, возможно вместо этого Вы решите, что будет приемлемым дать насытится ярким звездам, оставляя, таким образом больший доступный динамический диапазон для отображения самых тусклых объектов. В таком случае флаг Normalize может быть установлен в
0.
Суммируя вышесказанное, мое типовое использование этой команды выглядит так:
>composit ldfrgbregcropnorm 3 1 1 N
>save stack
где N это количество изображений в последовательности.
Бросим краткий взгляд на то, что мы так долго делали. Самое лучшее, что мы смогли сделать - это избавиться от эффектов шума и ограничений оптической системы путем калибровки Light-ов на основе Master Dark-а и Master Flat-а. Затем мы конвертировали калиброванные Light-ы, по прежнему в форме CFA изображений в градациях серого, в полноцветные изображения (RGB). После этого мы регистрировали (выровняли) изображения, удалили мусор вокруг краев, нормализовали их и, наконец, сложили. До этого момента для получения наиболее чистого итогового результата сложения наших Light-ов строго в рамках "науки". Теперь пришло время внести немного "искусства" с легким оттенком настоящей "науки", чтобы добиться от финального результата еще и эстетического удовольствия. Это "искусство" описывается в нескольких следующих шагах процесса.
Удаление градиента
Если в Ваших местах имеется какое-либо световое загрязнение, в особенности световое загрязнение в виде неравномерного освещения неба, скорее всего Ваш снимок будет на этом этапе иметь ужасно выглядящий градиент фона. Другой возможной причиной такого уродливого фона является неполное соответствие между Flat-ами и Light-ами. Загрузите в IRIS свой результат сложения (>load stack) и отрегулируйте ползунки в окне
Threshold так, чтобы Вы могли легко видеть фон. Нажатие кнопки
Auto в окне Threshold должно помочь. Также полезно на этом шаге "уменьшить увеличение" так, чтобы видеть все изображение. Если Вам повезло, и фон изображения выглядит равномерным, Вы можете пропустить этот раздел полностью. В противном случае читайте далее.
IRIS имеет мощные алгоритмы удаления фонового градиента, но здесь я опишу только простой механизм, поскольку описание расширенного механизма потребует много страниц текста и примеров. Кроме того, Christian уже описал его на своем
сайте. Даже при простом методе для достижения желаемого результата Вам потребуется немного поэкспериментировать. Повторяйте выполнение приведенных ниже команд до получения максимально однородного фона, настраивая ползунки визуализации и, может быть, уменьшая на каждой итерации масштаб так, чтобы на экране помещалось все изображение (используем кнопку
zoom out панели инструментов):
>load stack
>setsubsky sigma poly_order
>subsky
Обычно для начала я использую sigma = 4 и poly_order = 1 надеясь, что на фоне имеется всего лишь простой "линейный" градиент. В реальности же градиент фона более сложный и, следовательно, для его нейтрализации требуется полином. В таком случае попробуйте установить poly_order в 3, 4 или выше. Также попробуйте изменять параметр sigma вверх и вниз. Извините, но Вам самим придется поиграть с этими настройками до получения желаемого результата. Получив желаемое, не забудьте сохранить изображение на диск:
>save stack-subsky
Баланс белого
Настройте ползунки визуализации для получения приемлемого вида Вашего итогового изображения с удаленным градиентом фона. Найдите на нем большую область неба, максимально свободную от ярких звезд и "объектов" (галактик, туманностей и т.д) и обведите ее прямоугольником при помощи мыши. Теперь выполите такие команды:
>black
>rgbbalance R G B
>save stack-subsky-wb
где R, G и B это коэффициенты, используемые для компенсации различной чувствительности камеры к красному, зеленому и синему цвету соответственно. Для
немодифицированных Canon DSLR я использую такие предложенные Christian значения R =
1.96, G = 1.00 и B = 1.23. Однако мои ощущения говорят, что это дает чуть больше красного и слегка меньше синего цвета. Однако это зависит от личных предпочтений, и Вы всегда сможете оформить их позже в Photoshop-е по своему вкусу. Если Вы обладаете модифицированной Canon DSLR (у которой удален "блокирующий ИК" фильтр), то для Вас более приемлемы будут такие веса RGB компонентов
(1.38, 1.00, 1.23}.
Замечу, что эти R, G и B веса являются масштабирующими факторами на которые будет умножено каждое красное, зеленое и синее значение пикселя, в частности при выполнении команды rgbbalance. Когда любой из этих коэффициентов больше 1.0 (как большинство приведенных выше значений) возникает опасность клиппинга (насыщения) некоторых деталей изображения. Особенно если эти детали очень близки к насыщению. Оказывается, что для баланса цвета важны только относительные веса. Следовательно, Вы можете, по желанию, нормализовать их путем деления всех отдельных весов на больший из них так, что ни один из них не будет больше 1.0 и, следовательно, не возникнет клиппиинг. Для предотвращения клиппинга мы можем, например, поделить (1.38,1.00,1.23} на максимальное из трех весов значение 1.38 и использовать полученный нормализованный набор {1.00,0.72,0.89}.
Теперь на очереди некоторые комментарии относительно команды black. Эта команда определяет внутри выделенной области значения (R,G,B) медиан и затем вычитает эти значения из всего изображения делая, таким образом, значения медиан внутри выделенной области нулевыми {0,0,0}. В этом смысле, команда black удаляет некое “Постоянное смещение” в изображении, оставшееся не удаленным командами noffset2 или subsky. Источник этого смещения это “Небесный Туман”, т.е Световое Загрязнение, которое вносит сильное цветовое влияние. Следовательно, вычисленные командой black значения {R,G,B}могут и обычно бывают разными для разных цветов. Суть в том, что удаление такого “Постоянного смещения” абсолютно необходимо для создания точного цветового баланса.
Растяжение
Я исключительно люблю в IRIS функцию “Hyperbolic Arc Sin (asinh) растяжения”, так как я нахожу, что она обеспечивает более приятный результат, нежели “Digital Development Process (DDP)”, предоставленный в большинстве графических программ. Интересно, что вариант asinh-растяжения используется JPL для обработки фотографий Хаббла. Определение правильных параметров alpha (агрессивность растяжения) и intensity (фактор масштабирования растянутого изображения для предотвращения клиппинга или для увеличения яркости результата) явяется, по большей части, результатом проб и ошибок. Таким образом, я неоднократно повторяю следующие команды до получения желаемого результата:
>load stack-subsky-wb
>asinh alpha intensity >visu 32767 -5000
Часто для начала я пробую alpha = 0.005 и intensity =
30. Для каждого значения alpha Вам потребуется найти такое значение intensity, при котором будет достигнута такая яркость, которая не приведет к клиппингу со значениями интенсивности равными 32767. Что касается параметра alpha, то крохотное его изменение может вызвать гигантский эффект. Так, если 0.005 это примерно средняя величина растяжения, 0.010 будет очень агрессивным растяжением, а 0.001 будет слишком мягким растяжением. Опять же, поиграйте с этими значениями до получения такого результата, при котором будет отображено максимальное количество деталей, но без усиления шума фона до неприемлемых величин. Возможно Вам потребуется увеличить нижнюю границу порога в команде visu с -5000 до -4000 или даже выше. Твори, выдумывай, пробуй! Получив желаемый результат убедитесь, что Вы его сохранили:
>save stack-subsky-wb-asinh
Поздравления! Впервые с момента того, как Вы начали эту Одиссею графической обработки Вы, вероятно, смотрите на изображение, которое выглядит примерно так, как ожидалось Вами! Единственное, что осталось сделать – это финальные штрихи в среде Photoshop-а.
Доводка в Photoshop
К этому моменту IRIS проявил себя как полезный и эффективный солдат. Теперь настало время экспортировать данные в Photoshop для их финальной ретуши. К сожалению IRIS использует "знаковую 16-битную целочисленную арифметику", тогда как Photoshop имеет дело с "беззнаковой 16-битной целочисленной арифметикой ". Засим при переходе к Photoshop-у придется сделать несколько телодвижений, чтобы изображение выглядело "на пять".
Первым шагом будет сохранение в среде IRIS изображения в формате Photoshop:
>savepsd2 stack-subsky-wb-asinh Примечание: использовать
savepsd2, а не savepsd!!
Теперь откройте файл stack-subsky-wb-asinh.psd в Photoshop-е. Возможно он выглядит ужасно, но не стоит расстраиваться! Причина этого в том, что IRIS и Photoshop понимают числовое значение "черного" очень по-разному. Решением этого является простой вызов команды Levels (Уровни) и установка точки черного в 110 или около того. Конечно на данном этапе Вам захочется также поиграть с параметром растяжения и точкой белого. В зависимости от настроек Photoshop иногда команда Auto levels (Авто уровни) автоматически позаботится об этом и выдаст приемлемый результат.
Как только Вы, таким образом, настроили Уровни, изображение должно будет выглядеть очень похоже на то, как оно выглядело в IRIS. В общем-то, оно должно выглядеть почти идентично. На этом шаге я также разворачиваю изображение, если камера установлена "вверх ногами" для соответствия Север вверху (или Север слева в зависимости от ориентации камеры).
Поздравления!!! Теперь Вы похоже становитесь профи астрофотографии. Если все выглядит отлично или даже не очень – уменьшите изображение, конвертируйте в JPG и вышлите мне копию! Кроме того, если Вы имеете замечания или вопросы по поводу данного документа, пожалуйста, присылайте все Ваши комментарии. Мой E-mail таков: solospam на comcast точка net.
Дополнительные оптимизации
Вот несколько моих "хитростей обработки", которые могут быть выполнены выше для дальнейшего улучшения результатов:
• Если Вы обнаружили, что вычитание dark-а приводит к появлению на Ваших кадрах "черных дыр", то создайте "реальный" Master Offset и используйте его для создания своего Master Dark-а. Затем, при калибровке Ваших Light-ов используйте "оптимизированное" вычитание dark-а. Выгодой будет более качественное вычитание dark-а, но, вероятно, за счет остаточного переусиления результата.
• Напишите свою собственную программу для сложения, баланса белого и растяжения изображения на базе арифметики двойной точности плавающего типа. Это даст Вам практически неограниченный динамический диапазон. Или убедите Christian-а в том, что он должен добавить в IRIS эту функцию!
Архивация Ваших результатов
Теперь стоит записать на CD или DVD все свои RAW (.cr2), результат сложения (stack.pic) и финальный результат обработки с полным разрешением и размером – как файл IRIS (.pic) так и файл Photoshop-а (.psd). Если останется место, включите еще файлы Master Flat, Master Dark и Косметический файл.