14-11-2018 Время чтения ~ 4 мин. Обработка астрофото 200
Размер звёзд на астрофото напрямую зависит от состояния атмосферы (турбулентность) и качества оптики (точность фокусировки и юстировки в целом). Чем ярче звезда, тем больше у неё линейный размер (в пикселах) на снимке и в некоторых случаях его можно немного уменьшить. Существует ряд методик, которые позволяют выполнить эту работу. Я расскажу о своём варианте.
Но перед этим я немного остановлюсь на очень распространённой ошибке, когда звезды пытаются уменьшить с помощью фильтров усиления резкости. На самом деле усиление резкости работает только там, где есть хоть какой-то контраст, например по Луне или туманности с множеством мелких деталей. Там же где контраста нет, фильтру резкости не за что «зацепиться» и он показывает нулевую эффективность.
Покажу на примере своей «Гантели» M27. Это 100% масштаб. Это изображение прошло лишь начальный этап обработки, где выставлен баланс белого и немного подтянуты уровни.
Для начала измерим размер какой-то звезды, например в данном примере диаметр желтой звезды 14px (масштаб 400%).
Теперь выделим больший участок и применим к нему фильтр Smart Sharpen, чтобы посмотреть что получится:
Измеряем результат — теже 14px:
Точно также работает и другой фильтр резкости Unsharp Mask:
Вы можете «поиграть» параметрами фильтров, пытаясь получить хоть какой-то вменяемый результат, но скорее всего ничего не получится: такие фильтры просто не предназначены для решения этой задачки. При этом, как нетрудно заметить, данная процедура довольно сильно испортила изображение — появились неприятные артефакты вокруг звёзд, а их яркость (до клиппинга!) стала выше с потерей сглаживания.
На самом деле уменьшение размера звезд выполняется с помощью обычных кривых без каких-либо фильтров. Чтобы понять саму методику, нужно разобраться с тем, что именно нужно сделать.
Первое — у нас есть фон вокруг звезды. Второе — у нас есть яркий диск звезды, который как-бы образует само «ядро». И третье — есть плавная окантовка от диска к фону.
Теперь посмотрим эту же картинку в виде гистограммы, где я отметил эти же точки на кривой:
Уменьшение размера — это в первую очередь уменьшение яркости окантовки так, чтобы она не «загасила» диск, и не осветлила фон. Теперь, если сдвинуть среднюю точку вниз, то она будет затенять окантовку (я скрыл выделение «мурашками» для лучшей видимости).
Как мы видим размер звезды действительно уменьшился, причём достаточно качественно. Если измерить размер, то получится 9px.
Поскольку у нас не было маски, то действие затронуло всё изображение (или выделение). Очевидно, что нужно выделить только яркие звезды и уже к ним применять кривую.
Выделение должно быть «жестким», то есть черно-белым без каких-либо градаций. Если на снимке есть туманность, то нужно будет её убрать из выделения. Делаем копию слоя и применяем к нему Threshold. Уровень нужно подобрать так, чтобы остались только самые яркие звезды.
Теперь берём черную чисть и затираем те звезды, которые на туманности. Для удобства, можно слою сделать непрозрачность 80%.
После этого создаем выделение на основе этого изображения (Ctrl+Click на RGB), переключаемся на основной слой и снимаем видимость слоя с «Threshold». (В принципе он нам больше и не нужен.)
Полученное выделение нужно вначале увеличить так, чтобы оно затронуло окружающий фон. Делается это командой Select - Modify - Expand. Размер вам придется подобрать индивидуально, у меня это 6px. После этого нужно сделать сглаживание: Select - Modify - Feather с размером примерно в 2 раза меньше: у меня это 3px.
То есть у нас получилось выделение, которое «сглаживается» к краю. Теперь применим кривую, как написано выше. При необходимости можно добавить ещё точки (я скрыл выделение, масштаб 200%).
Чтобы лучше рассмотреть, я разместил два изображения до и после обработки (масштаб 200%).
Применять данную методику лучше всего так, чтобы в выделение не попали совсем мелкие звезды, поскольку они уменьшатся в размерах и потеряются. Поэтому лучше вначале обработать самые яркие (большие звезды), после выделить другой «ряд» звезд и т.д.