本站提供正體中文版。切換到正體中文本站提供简体中文版。切换到简体中文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این وب‌سایت به فارسی هم در دسترس است.مشاهده به فارسیTato stránka je k dispozici také v češtině.Zobrazit v češtiněEz az oldal magyarul is elérhető.Megtekintés magyarulAcest site este disponibil și în limba română.Vizualizare în românăเว็บไซต์นี้มีเวอร์ชันภาษาไทยดูเป็นภาษาไทย

Відбракування пікселів при інтеграції: вибір алгоритму та читання Rejection Map

Попередня обробка та стекінг2021.01

«Відбракування» (rejection) при інтеграції — це процес, коли під час накладання кількох кадрів одне на одне автоматично прибираються ті викиди, яким там не місце: сліди супутників, білі плями від космічних променів, залишкові «гарячі пікселі», роздуті гало надто яскравих зір тощо. Правильний вибір алгоритму rejection і вміння читати Rejection Map, який він видає, — ключ до чистої інтеграції. У цій статті розкладено логіку вибору алгоритму rejection, а також те, як саме читати ті дві карти rejection, на які так часто не звертають уваги.

Сімейство алгоритмів rejection

PixInsight під час інтеграції пропонує кілька алгоритмів rejection. В офіційній документації перелічено, для яких сценаріїв підходить кожен алгоритм, і її справді варто прочитати (зауважте, що цей документ опубліковано вже досить давно і він не охоплює алгоритм GESD, доданий пізніше).

Алгоритми rejection, перелічені в офіційній документації 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 і відповідно налаштував параметри — з розширенням (нарощуванням) тьмяного сліду супутника, — мені вдалося відбракувати надзвичайно тьмяний слід; і загалом відношення сигнал/шум (SNR) у GESD вище, ніж у традиційного Sigma Clipping чи Winsorized Sigma Clipping. (Утім, здебільшого з родиною sigma така нерозв’язна проблема не трапляється — це доволі крайній окремий випадок.)

Особлива зброя: Range Clipping

Окрім статистичного відбракування викидів, є ще один «грубий», але зручний прийом — Range Clipping.

Примусове видалення чорних точок, спричинених поганим калібруванням кадрами dark, за допомогою Low Range clipping

Якщо у вас є такі кадри з поганим калібруванням кадрами dark, на яких з’являється багато чорних точок (наприклад, вони є на 10 кадрах і відсутні на 5), звичайним алгоритмам rejection складно прибрати ці чорні точки через відбір викидів. У такому разі під час інтеграції можна скористатися Range Low Clipping, щоб примусово видалити всі чорні точки нижче певного порогу. Це прямий прийом, спрямований на конкретний дефект, який доповнює статистичне відбракування.

Ефект видалення чорних точок за допомогою Low Range clipping

Як читати Rejection Map

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

Сліди супутників, роздуті гало зір і сліди навколоземних об’єктів на карті Rejection High

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

Найпрактичніший спосіб читати цю карту такий: якщо піксель, який ви хотіли відбракувати, з’являється на rejection high, це означає, що його успішно прибрано; якщо він тут не з’являється, але залишається в готовому проінтегрованому зображенні (наприклад, залишковий слід супутника), це означає, що параметрів rejection недостатньо або варто змінити алгоритм.

Кілька частих запитань «чи відбраковувати цей кадр?»

Розібравшись у принципі вище, багато речей, над якими мучаться новачки, отримують чітку відповідь.

Кадр із роздутими зорями — чи варто виключати його з інтеграції? Якщо це не розфокусування, я зазвичай дозволяю йому брати участь в інтеграції.

Ілюстрація роздутих / надто яскравих гало зір і слідів супутників, відбракованих на rejection high

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

Яскравий слід супутника перетинає ціль наскрізь — чи варто вручну видаляти цей кадр? Відповідь знову ж — не потрібно.

Один із 7 кадрів із супутниковим слідом, що перетинає ціль, автоматично відбракований завдяки суворим параметрам Sigma High

Ось як діяти: якщо кадрів мало, скористайтеся алгоритмом із сильнішою здатністю до rejection (наприклад, родиною Sigma Clipping) і встановіть параметр Sigma High трохи суворіше (наприклад, нижче 2.5). В одному прикладі було лише 7 кадрів, і на одному з них слід супутника перетинав ціль; кожен кадр був важливий для SNR, тож, задавши відповідні параметри (а не використовуючи типові налаштування програми), я дозволив процесу інтеграції автоматично виконати відбракування, і успішно відбракований слід з’явився на rejection high. Не марнуйте жоден важко здобутий піксель.

Виняток дефектного стовпця: відбракування тут не рятує

Насамкінець додам ще один виняток, який rejection не врятує, — дефектний стовпець (defect column) матриці CCD.

Усунення дефектного стовпця CCD за допомогою Defect Map, залишок передано відбракуванню

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