Найти в Дзене
AstroFrog

Астрофото - сложение кадров

Любая фотография содержит шум. В этой статье не будут разбираться источники его возникновения, а будет рассказано как можно уменьшить шум определенного типа при помощи технологии стекирования. Появление шума связано со случайными процессами. Это дробовой шум от самого объекта, дробовой шум от фоновой засветки неба, квантовый шум от матрицы, шум электрических цепей и подобное. Все эти шумы являются белым шумом, который характеризуется тем, что постоянная составляющая такого сигнала равна нулю. Рассмотрим пример. Стрелок делает множество выстрелов по мишени. Он всегда пытается попасть в центр мишени, но разные факторы приводят к отклонению. Можно ли по множеству выстрелов определить центр мишени? Оказывается, что разброс выстрелов можно считать белым шумом. А значит, усредненное значение всех отклонений должно стремиться к нулю (центр мишени). Хотим определить X координату мишени? Тогда нужно сложить все X координаты попаданий и разделить их на количество выстрелов. В действительност

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

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

Типичный пример белого шума - шум на экране телевизора при отсутствии сигнала
Типичный пример белого шума - шум на экране телевизора при отсутствии сигнала

Рассмотрим пример. Стрелок делает множество выстрелов по мишени. Он всегда пытается попасть в центр мишени, но разные факторы приводят к отклонению. Можно ли по множеству выстрелов определить центр мишени? Оказывается, что разброс выстрелов можно считать белым шумом. А значит, усредненное значение всех отклонений должно стремиться к нулю (центр мишени). Хотим определить X координату мишени? Тогда нужно сложить все X координаты попаданий и разделить их на количество выстрелов.

Усредненное значение всех попаданий близко к нулю (цент мишени)
Усредненное значение всех попаданий близко к нулю (цент мишени)

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

Для демонстрации процесса возьмем красивую картинку с фруктами. Это будет наш идеальный кадр.

Идеальный кадр (без шума)
Идеальный кадр (без шума)

Но когда мы делаем снимок, в нем сожержится шум. Чтобы имитировать это, возьмем идеальный кадр, сделаем 16 его копий, и к каждой копии в Photoshop применим фильтр Добавить шум с параметром 20%. Ниже один из таких 16-ти кадров.

Один из кадров с шумом
Один из кадров с шумом

А теперь возьмем два таких кадра с шумом и стекируем их. Делается эта процедура в специальном софте для обработки астрофото. Пока не будем обсуждать конкретную программу. Для понимания важен только результат. Ниже изображение, которое является результатом стекирования двух кадров. Шума стало значительно меньше.

Результат стекирования двух кадров
Результат стекирования двух кадров

Теперь стекируем четыре кадра. Еще меньше шума!

Результат стекирования четырех кадров
Результат стекирования четырех кадров

Стекирует восемь кадров.

Результат стекирования восьми кадров
Результат стекирования восьми кадров

Стекируем шестнадцать кадров. В сравнении с одиночным кадром шумов значительно меньше. Конечно, еще далеко от идеального кадра, но мы стекировали лишь шестнадцать кадров.

Результат стекирования шестнадцати кадров
Результат стекирования шестнадцати кадров

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

На одиночном кадре уровень шума 20%. Это означает, что SNR (отношение сигнал/шум) = 100% / 20% = 5. Чем больше стекируется кадров, тем лучше SNR. Зависимость примерно такая:

SNR пропорционален корню квадратному от количества кадров
SNR пропорционален корню квадратному от количества кадров

Т.е. когда мы стекировали шестнадцать кадров, SNR увеличился в 4 раза. На одиночном кадре он был равен 5-ти. На сумме 16-ти кадров он равен 5 * 4 = 20. Неплохо. Но это означает, что для дальнейшего улучшения SNR нам потребуется всё больше и больше кадров. Хотим улучшить SNR еще в два раза? Надо уже 64 кадра. Еще в два раза? Готовим 256 кадров. Чем ближе мы к идеальному кадру, тем больше требуется усилий для дальнейшего улучшения. Получается, что идеального кадра не получить, а можно лишь приблизиться к нему.

К звездам! Ниже результат стекирования кадров с галактикой M82. Сам кадр гораздо больше, но для наглядности выделена только M82. Это канал красного фильтра, потому изображение черно-белое.

Результаты стекирования разного количества кадров с галактикой M82
Результаты стекирования разного количества кадров с галактикой M82

Полный кадр со сведенными каналами и косметической коррекцией.

Галактики Боде (M81, M82)
Галактики Боде (M81, M82)