本站提供正體中文版。切換到正體中文本站提供简体中文版。切换到简体中文This site is available in English.View in Englishこのサイトには日本語版があります。日本語で表示이 사이트는 한국어로도 제공됩니다.한국어로 보기Diese Website ist auch auf Deutsch verfügbar.Auf Deutsch ansehenEste sitio web también está disponible en español.Ver en españolQuesto sito è disponibile anche in italiano.Visualizza in italianoCe site est également disponible en français.Afficher en françaisEste site também está disponível em português.Ver em portuguêsDeze website is ook beschikbaar in het Nederlands.In het Nederlands bekijkenयह वेबसाइट हिन्दी में भी उपलब्ध है।हिन्दी में देखेंهذا الموقع متاح أيضًا باللغة العربية.عرض بالعربيةSitus ini juga tersedia dalam bahasa Indonesia.Lihat dalam bahasa IndonesiaBu site Türkçe olarak da mevcut.Türkçe görüntüleTa strona jest dostępna także po polsku.Wyświetl po polskuTrang web này cũng có phiên bản tiếng Việt.Xem bằng tiếng Việtاین وب‌سایت به فارسی هم در دسترس است.مشاهده به فارسی

Отбраковка при интеграции: выбор алгоритма и чтение Rejection Map

Предобработка и сложение2021.01

«Отбраковка» (rejection) при интеграции — это процесс, в ходе которого при наложении нескольких снимков друг на друга автоматически отбрасываются выбросы, которых там быть не должно, — следы спутников, белые пятна от космических лучей, оставшиеся горячие пиксели, раздутые ореолы вокруг слишком ярких звёзд и так далее. Выбор правильного алгоритма отбраковки и умение читать создаваемую им Rejection Map — ключ к чистой интеграции. В этой статье я излагаю логику выбора алгоритма отбраковки, а также то, как на самом деле следует читать те две карты отбраковки, которые так часто игнорируют.

Семейство алгоритмов отбраковки

PixInsight предлагает несколько алгоритмов отбраковки при интеграции. Официальная документация перечисляет, для каких сценариев подходит каждый алгоритм, и её действительно стоит прочитать (учтите, что этот документ опубликован уже довольно давно и не охватывает алгоритм GESD, добавленный позже).

Алгоритмы отбраковки, перечисленные в официальной документации PixInsight Image Integration

В общих чертах их можно разделить на две категории:

  • Семейство Sigma: отбраковка выбросов на основе стандартного отклонения — например, Sigma Clipping, улучшенная версия Winsorized Sigma Clipping, а также Percentile Clipping. Их принцип и математика относятся к одной и той же системе.
  • GESD Test: основан на Grubbs’s test, его теория и математика полностью отличаются от методов на основе sigma. Это алгоритм, добавленный сравнительно поздно.

GESD против Sigma: кто побеждает при малом числе кадров?

Я действительно проводил такое сравнение. Однажды я взял набор данных всего из 12 кадров и одновременно запустил GESD Test, Winsorized Sigma Clipping и традиционный Sigma Clipping.

Сравнение GESD, Winsorized Sigma и Sigma Clipping (набор данных из 12 кадров)

12 кадров на самом деле не соответствует рекомендованному числу кадров для GESD и Winsorized Sigma, но именно в этом наборе лучший результат неожиданно дал GESD Test. Однако стоит добавить постскриптум: если речь идёт о цветных данных и к тому же недостаточном числе кадров, всё же более подходящим остаётся Winsorized Sigma или Sigma. Так что «всегда лучшего» алгоритма не существует — всё зависит от данных.

GESD против слабых следов спутников

У GESD есть ещё одно практическое преимущество. Раньше, когда я интегрировал данные с помощью семейства sigma, я часто сталкивался со сравнительно слабыми следами спутников, которые никак не удавалось отбраковать: даже при 17 кадрах после интеграции часть следа всё равно оставалась, а такой слабый след не подходит для manual selective rejection (ручной закраски чёрным).

Успешная отбраковка слабого следа спутника после настройки параметров GESD и расширения самого следа

Перейдя на GESD Test, соответствующим образом настроив параметры и расширив (вырастив) слабый след спутника, мне удалось отбраковать чрезвычайно слабый след; и в целом отношение сигнал/шум у GESD выше, чем у традиционного Sigma Clipping или Winsorized Sigma Clipping. (Впрочем, в большинстве случаев с семейством sigma такая неустранимая проблема не возникает — это довольно крайний отдельный случай.)

Особое оружие: Range Clipping

Помимо статистической отбраковки выбросов, есть ещё один «грубый», но удобный приём — Range Clipping.

Принудительное удаление чёрных точек, вызванных плохой калибровкой по дарк-кадрам, с помощью Low Range clipping

Если у вас есть снимки с плохой калибровкой по дарк-кадрам, на которых появилось много чёрных точек (например, они есть на 10 кадрах и отсутствуют на 5), обычным алгоритмам отбраковки трудно убрать эти чёрные точки, выявляя выбросы. В этом случае при интеграции можно использовать Range Low Clipping, чтобы принудительно удалить все чёрные точки ниже определённого порога. Это прямой приём, нацеленный на конкретный дефект, дополняющий статистическую отбраковку.

Эффект удаления чёрных точек с помощью Low Range clipping

Как читать Rejection Map

После интеграции с помощью ImageIntegration или WBPP, помимо готового изображения, создаются ещё две карты отбраковки: одна для направления высокой яркости (rejection high), другая — для направления низкой яркости (rejection low). Большинство людей просто игнорируют обе карты — а это на самом деле впустую тратит очень полезную диагностическую информацию.

Следы спутников, раздутые ореолы звёзд и следы околоземных объектов, появляющиеся на карте Rejection High

Обычно на rejection low смотреть особо не на что; важна rejection high: здесь появляются все помехи, которые вы хотели бы «не видеть в готовом изображении», — следы спутников, ореолы слишком ярких или раздутых звёзд, следы околоземных объектов, а также горячие пиксели и белые пятна от космических лучей (горячие пиксели я обычно убираю ещё до интеграции с помощью Cosmetic Correction, поэтому здесь их немного).

Самый практичный способ читать эту карту таков: если пиксель, который вы хотели отбраковать, появляется на rejection high, значит, он был успешно удалён; если он не появляется здесь, но остаётся в готовом проинтегрированном изображении (например, остаточный след спутника), значит, ваших параметров отбраковки недостаточно или стоит сменить алгоритм.

Несколько частых вопросов вроде «отбраковывать ли этот кадр?»

Разобравшись в изложенном выше принципе, многие новички получают ответы на то, над чем они мучились.

Кадр с раздутыми звёздами — стоит ли исключать его из интеграции? Если только это не расфокусировка, я обычно позволяю ему участвовать в интеграции.

Иллюстрация отбракованных на rejection high раздутых / слишком ярких ореолов звёзд и следов спутников

Посмотрев на rejection high, вы обнаружите, что чрезмерно большие или слишком яркие части этих звёзд уже были удалены отбраковкой и не участвовали в вычислении интеграции; следы искусственных спутников и белые пятна от космических лучей точно так же попадают на rejection high. Такую работу можно спокойно оставить программе.

Яркий след спутника пересекает объект насквозь — стоит ли вручную удалить этот кадр? Ответ снова: не нужно.

Один из 7 кадров с пересекающим объект следом спутника, автоматически отбракованный с помощью строгих параметров Sigma High

Как поступить: если кадров немного, используйте алгоритм с более сильной способностью к отбраковке (например, семейство Sigma Clipping) и установите параметр Sigma High немного строже (например, ниже 2,5). В одном случае у меня было всего 7 кадров, на одном из которых след спутника пересекал объект насквозь; каждый кадр был важен для отношения сигнал/шум, поэтому, задав подходящие параметры (а не используя настройки по умолчанию), я позволил процессу интеграции автоматически выполнить отбраковку, и успешно отбракованный след появился на rejection high. Не тратьте впустую ни один с трудом добытый пиксель.

Исключение: дефектный столбец отбраковка не спасёт

Наконец, добавлю ещё одно исключение, которое отбраковка спасти не может, — дефектный столбец (defect column) ПЗС-матрицы.

Устранение дефектного столбца ПЗС-матрицы с помощью Defect Map, остальное оставлено отбраковке

Дефектный столбец слишком тёмный и к тому же тянется по всей длине; если пытаться убрать его отбраковкой во что бы то ни стало, это стоит слишком многих хороших пикселей, а результат всё равно оказывается плохим. Правильный подход — сначала создать для камеры Defect Map (на примере матрицы 16803 CCD камеры «Latte»: один явный дефектный столбец в центре кадра плюс три менее заметных), загрузить и применить её к лайтам с помощью процесса DefectMap, значительно ослабив влияние дефектного столбца, а затем отдать оставшееся отбраковке при интеграции, чтобы она без труда с ним справилась. Иными словами, отбраковка — это уборщик, выходящий на сцену в конце, а не всемогущая первая линия обороны: дефекты, требующие специализированного инструмента, всё равно нужно сначала обрабатывать правильным инструментом.