本站提供正體中文版。切換到正體中文本站提供简体中文版。切换到简体中文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این وب‌سایت به فارسی هم در دسترس است.مشاهده به فارسیЦей сайт також доступний українською.Переглянути українськоюEz az oldal magyarul is elérhető.Megtekintés magyarulAcest site este disponibil și în limba română.Vizualizare în românăเว็บไซต์นี้มีเวอร์ชันภาษาไทยดูเป็นภาษาไทย

Kompletní průvodce WBPP: rozhraní, kalibrační master-snímky a proces zpracování

Předzpracování a skládání2021.03Starší poznámky

Tento článek vychází z poznámek z let 2021–2024; některé nástroje či postupy se od té doby změnily, takže to mějte při čtení na paměti. Část rozhraní, možností a chování jednotlivých verzí zmíněných v textu (například verze 2.1.2 a 2.5) odpovídá tehdejšímu stavu. Chyby a známé bugy, na které můžete při spouštění narazit, najdete v samostatném článku „WBPP Troubleshooting“.

WBPP (WeightedBatchPreprocessing) je skript v aplikaci PixInsight, který automaticky odbaví celý řetězec „kalibrace, zarovnání, integrace“ od začátku do konce, a to s ohromující pohodlností. Poslední roky se aktualizuje často, takže jsem postupně sepsal řadu útržkovitých poznámek; v tomto článku jsem je uspořádal do jednoho ucelenějšího výkladu a probírám ho na třech úrovních: základní pojmy, které se s verzemi téměř nemění, aktuální proces zpracování a několik důležitých změn napříč jednotlivými verzemi za ta léta. Ať používáte kteroukoli verzi, nejdřív si pevně osvojte pojmy – pak vás nerozhodí, jak se bude rozhraní měnit.

Základní pojem první: výsledek integrace WBPP je jen náhled

Tohle je přesně to, co chci říct nejdřív, a zároveň to, co lidé nejčastěji přehlížejí.

Sám jsem na to jednou šlápl: po jednom použití Drizzle Integration jsem zjistil, že středy hvězd (v přesycených místech) mi zčernaly. Když jsem to vypátral, ukázalo se, že viníkem byla právě integrace přes WBPP.

WBPP je sice pohodlný, ale postoj vývojářů k obrazu master light, který automaticky vytváří integrací, je naprosto jednoznačný – je to jen pohodlný náhled „dosažitelného výsledku“, který se má po použití zahodit a nemá se brát jako finální výsledek. Níže uvádím výňatek z jejich odpovědi na fóru:

The integrated image generated by WBPP is just a convenience preview of the achievable image, but it should always be deleted/ignored, and the integration should always be done manually with the registered frames. This is the only way to obtain an optimal integrated image with full control over the normalization, pixel rejection and noise reduction tasks.

Vývojáři napůl žertem říkají, že tuhle větu je třeba zopakovat „n+1krát, kde n se už blíží nekonečnu“: master light, který WBPP vytvoří, se nemá používat jako finální výsledek – je to jen náhled, a nejlepšího výsledku lze dosáhnout pouze ruční optimalizací pixel rejection a poměru signálu k šumu (SNR) přes Image Integration.

Můj zvyk je tedy takový: WBPP používám nanejvýš po krok „zarovnání hvězd“ a samotnou integraci nechávám ručně na Image Integration. Formální postup po jednotlivých krocích – kalibrace (svěřená WBPP), zarovnání (Star Alignment), integrace (Image Integration) – sice znamená víc kroků, ale jakmile se něco pokazí, mnohem snáz zjistíte, ve kterém článku řetězu je problém. To je i moje pozdější ustálené přesvědčení. Ta dvě velmi podrobná výuková videa o WBPP od raných japonských nadšenců taky vřele doporučuji, ale je třeba k nim připojit stejné upozornění: výsledek integrace berte jen jako orientační.

Základní pojem druhý: rozlište, které soubory ve složce Master jsou finálním výsledkem

Po kompletním proběhnutí WBPP se ve výchozí složce Master nahromadí hromada souborů a spousta lidí nepozná, který snímek vlastně potřebují. Vysvětlím to tady:

Schéma rozlišení jednotlivých typů výstupních souborů ve složce Master WBPP

  • Snímek v červeném rámečku je hotový master light, který hledáte.
  • Snímek ve žlutém rámečku je referenční (Ref) snímek pro Local Normalization, ne master light – nepleťte si je.
  • Snímky bez rámečku jsou kalibrační master-snímky; patří sem master flat, master bias a master dark.

(Nicméně jak jsem psal v předchozím oddílu, tento „master light“ má stále jen povahu náhledu z WBPP – pokud vám na tom záleží, integraci si stejně musíte udělat znovu sami.)

Aktuální proces zpracování: kompletní sada pro barevnou kameru

WBPP se spouští jedním kliknutím, ale ve skutečnosti za tím stojí dlouhý řetězec automatizovaných procesů, které se provádějí v pořadí. Na příkladu barevné kamery (OSC) vypadá kompletní pořadí zpracování takto:

Snímek obrazovky s kompletním pořadím zpracování celé sady pro barevnou kameru ve WBPP

  1. Calibration File Integration: vytvoření kalibračních master-snímků
  2. Calibration: kalibrace snímků light
  3. Cosmetic Correction: odstranění horkých pixelů nebo vadných řádků
  4. Debayer: debayerizace (rozdělení na RGB)
  5. Measurements: měření snímků light a přiřazení váhy
  6. Reference frame selection: výběr referenčního snímku pro zarovnání
  7. Plate solving reference frames: plate solving (astrometrické řešení) referenčních snímků
  8. Registration: zarovnání hvězd
  9. LN reference generation: vytvoření referenčního snímku pro Local Normalization
  10. Local Normalization: provedení Local Normalization
  11. Integration: integrace snímků light
  12. RGB Combination: opětovné složení tří kanálů RGB

Stručněji řečeno se to dá stlačit do osmi kroků: vytvoření kalibračních snímků → kalibrace snímků → Cosmetic Correction → debayerizace (rozdělení na tři kanály RGB) → zarovnání hvězd → Local Normalization → integrace snímků → sloučení tří kanálů RGB.

Zjednodušená verze procesu předzpracování pro barevnou kameru

Tady stojí za to zmínit dvě věci navíc: rozdělení na RGB slouží k překonání atmosférické disperze (okraje hvězd vypadají, jako by měly na obou stranách jinou barvu), a cenou za to je delší doba zpracování; pokud použijete Drizzle Integration, jeho účelem tady není zvětšit snímek, ale vyhnout se artefaktům, takže má smysl jen při dostatečném počtu snímků s ditherem – obvykle pod 50 snímků ho klidně můžete vynechat. Mimochodem k reálnému pocitu z času: jednou jsem s 360 snímky po 9 megapixelech prošel celou cestu od kalibrace až po Drizzle Integration 1x, a zabralo mi to přes hodinu; s vyšším rozlišením to bude jen „napínavější“.

Snímek obrazovky ze zpracování kompletní sady pro 360 snímků po 9 megapixelech

Kalibrační master-snímky: v čem je WBPP chytrý

WBPP má ve zpracování kalibračních snímků (flat, dark, bias atd.) schované docela dost promyšlených řešení, o kterých stojí za to mluvit v samostatném oddílu.

Kalibrační snímky je nejlepší ve WBPP znovu vytvořit z originálních souborů. Nemálo lidí po kalibraci zjistí problém se snímky light, a hlavní příčinou bývá použití „souborů Master vytvořených jiným softwarem nebo procesem“ (master flat / bias / dark). Nejjistější je hodit originální soubory kalibračních snímků do WBPP a nechat ho vytvořit master znovu.

Malá odchylka v době expozice? Nechte to na Exposure tolerance. Jeden nadšenec se kdysi ve skupině ptal, že pořizuje snímky dark s ovládáním signálu přes Eqmod, a kvůli zpoždění mohl 5sekundový snímek dark ve skutečnosti vyjít v rozmezí 4,980–5,02 s, takže chtěl přejít na snímání přes NINA. WBPP na to ale už dávno myslel: kalibrační snímky v rámci určitého časového rozdílu lze určit jako jednu skupinu, WBPP pro kalibrační snímky ve stejné skupině automaticky provede potřebné zpracování a automaticky je spáruje se snímky light. Právě tahle tolerance je Exposure tolerance.

Nastavení tolerance expozice Exposure tolerance ve WBPP

Snímky pořízené v různé dny vyřešíte najednou přes Grouping Keywords. Po aktualizaci přibyla ve WBPP funkce seskupování, takže i snímky pořízené v různých datech lze najednou hodit dovnitř a zpracovat společně – stačí je v Grouping Keywords roztřídit podle klíčového slova (například data). Třeba u mé sady souborů byl snímek flat každý den jiný a WBPP i tak dokázal automaticky kalibrovat odděleně podle data, takže nebylo potřeba ručně nastavovat snímky light a flat zvlášť pro každé datum – velmi pohodlné.

Automatické seskupení a kalibrace podle data přes Grouping Keywords

Chcete jen kalibrační master-snímky? Bez snímků light to jde taky. Tohle je způsob použití, o kterém spousta lidí neví: bez snímků light hoďte do WBPP snímky dark, bias, flat a flat dark, a on chytře podle správných kroků vytvoří z těchto kalibračních snímků master-snímky a vyexportuje je do zadané složky – ušetří vám to trápení s ručním vytvářením přes různé postupy.

Pouze kalibrační snímky bez snímků light – necháme WBPP vytvořit jen kalibrační master-snímky

Možnosti stránky Light a triky pro zrychlení

Na stránce Light ve WBPP je řada možností, které si uživatel může podle potřeby zaškrtnout. Ve výchozím nastavení není zaškrtnuto nic kromě subframe weighting.

Vysvětlení účelu jednotlivých možností na stránce Light ve WBPP

Když se dá u těchto kroků něco vynechat, vyvstává praktická otázka: kolik času ušetříte, když vypnete nepotřebné zpracování? Vyzkoušel jsem to na reálné sadě dat volně ke stažení ze zahraničí – celkem 372 snímků po 16 megapixelech. Po vyřazení nepotřebného zpracování se celý průběh zrychlil zhruba 7–8× (25 min 03 s oproti 03 min 30 s), zatímco kvalita snímku utrpěla jen mírně – na mém počítači o zhruba 15 %, a po kompresi pro přenos po síti to skoro není vidět. Pro situace, kdy spěcháte nebo chcete jen rychlou orientaci, se tenhle kompromis vyplatí.

Srovnání doby zpracování před a po vypnutí části zpracování

A které kroky zabírají nejvíc času a které je nejúčinnější vypnout, o tom se ještě rozepíšu v článku „WBPP Troubleshooting“.

Změny mezi verzemi: co přibylo později

Do WBPP toho za ta léta přibylo dost; shrnu tu pár důležitých milníků, ať si to můžete snadno porovnat s verzí, kterou máte vy:

Několik věcí od verze 2.1.2. Od téhle verze stojí za pozornost tři body: zaprvé, problémy se snímky light po kalibraci obvykle vznikají smícháním externě vytvořených souborů Master (viz výše); zadruhé, Dark frame optimization se používá hlavně tehdy, když se délka snímku light a dark neshoduje (například 20minutový snímek light spárovaný s 30minutovým snímkem dark), přičemž nejlepší podmínkou je dlouhá expozice a víc snímků, a možnost se zobrazí až po kliknutí na soubor light; zatřetí, uživatelům CCD se používáním postupně objevují defekty, zejména column defect, které se dřív musely odstraňovat pomocí defect map – velmi časově náročné –, a WBPP na to nabízí Linear Pattern Subtraction.

Možnosti související s WBPP 2.1.2 a Linear Pattern Subtraction

Execution Monitor (okno pro sledování průběhu). Po aktualizaci na novější verzi se během běhu WBPP objeví okno WBPP Execution Monitor, které vám řekne, v jakém kroku právě jste a co bylo uděláno; obsah lze i posouvat nahoru a dolů. Ve starých verzích nemohl uživatel dělat nic jiného než zírat na aktuální console a o průběhu neměl vůbec žádnou informaci – musel počkat, až všechno doběhne, nebo až se zastaví na chybě, a teprve pak si stav ověřit přes console.

Okno pro sledování průběhu WBPP Execution Monitor

Funkce Cache (od verze 2.5). Tohle je klíčové vylepšení. Když po proběhnutí celé sady zjistíte chybu nebo výsledek neodpovídá očekávání a upravíte nějaká nastavení, musí se snad celá sada spustit znovu od začátku? Nemusí. Cache ve WBPP vyhodnotí: dokud upravené nastavení neovlivňuje snímek, rovnou použije výsledek z cache z minula; znovu se zpracuje jen ta část snímků, kterou změna skutečně ovlivňuje, takže se doba druhého běhu výrazně zkrátí.

Vysvětlení funkce cache ve WBPP

Reprodukovatelný skript ve složce log. Po spuštění nejnovější verze WBPP zůstane ve složce log podrobný log a skript zpracování. Když tento skript načtete přes Script Editor v PI, zkompilujete a spustíte, objeví se Process Container, který obsahuje všechny ikony procesů z podnabídky Pipeline hlavního okna WBPP, a každou z nich lze v PI otevřít samostatně. To je pro debugování nesmírně praktické – když třeba chcete zjistit, proč se Cosmetic Correction neprovedl správně nebo neměl žádný efekt, můžete odtud otevřít přímo tenhle krok a zkontrolovat, jestli je problém v parametrech, nebo jde o chybu programu. Další využití: kdo se v předzpracování moc nevyzná, může tímto způsobem projít každý proces a parametr WBPP a vzít si to jako vzor pro vlastní ruční zpracování.

Načtení skriptu zpracování WBPP přes Script Editor a reprodukce Process Container

Prvním krokem po otevření WBPP ve skutečnosti není načtení souborů

Nakonec se vrátím k tomu nejzákladnějšímu, ale zároveň nejsnáz zpackanému místu. Prvním krokem po otevření WBPP není spěchat s „načítáním souborů light, dark, flat, bias“.

WBPP je jeden z mála skriptů, který uchovává obsah z posledního použití. Pokud jste ho už dřív používali, všechna nastavení tam pořád zůstávají. Prvním krokem by proto mělo být vymazání seznamu souborů; jestli s ním vymažete i ostatní parametry, záleží na potřebě.

A druhý krok se dá snadno přehlédnout a spousta výukových videí ho ani nezmiňuje – stiskněte Purge Cache. Už jsem zmiňoval výhodu cache (od verze 2.5): když změníte jen část parametrů, WBPP spustí pouze to, co se změnilo, a zbytek použije z cache. Ale naopak, jakmile jste už jednou proběhli a tenhle obsah cache už nepotřebujete, je třeba ho celý vymazat, jinak při zpracování nových souborů může kvůli duplicitnímu obsahu cache dojít k nepředvídatelným chybám.

Po otevření WBPP nejdřív vymažte seznam souborů, pak stiskněte Purge Cache

Přípravné nastavení prostředí pro uživatele Windows

Pokud spouštíte WBPP ve Windows, jsou dvě nastavení prostředí, která je nejlepší vyřešit hned na začátku – ušetří vám to spoustu záhadných chyb později (související chybové zprávy a diagnostiku najdete v „WBPP Troubleshooting“):

Zapněte podporu dlouhých cest. Po jedné aktualizaci WBPP ve Windows často vyskakovalo varování o dlouhé cestě, že nelze vytvořit cestu delší než 256 znaků. Sám jsem kvůli příliš dlouhé cestě měl soubory z WBPP poškozené (protože se nedaly uložit). Řešení je vyhledat na hlavním panelu regedit, otevřít Editor registru, najít odpovídající místo a hodnotu LongPathsEnabled změnit na 1; po restartování aplikace PixInsight se toto varování už neobjeví.

Varování o dlouhé cestě ve Windows a nastavení LongPathsEnabled v regedit

Vyhýbejte se cestám se znaky mimo ASCII (například čínskými). To je i důvod, proč nedoporučuji používat čínské znaky v cestě k souboru. Ve Windows, pokud je výchozím programem pro otevření PI, dvojklik na soubor s cestou obsahující čínské znaky vyvolá chybovou zprávu, kde ty nečitelné znaky jsou právě čínský text. Náhradní řešení je: beze změny cesty prostě soubor přetáhněte myší přímo do PI, a otevře se.

Chyba s nečitelnými znaky při otevření souboru s čínskou cestou v aplikaci PixInsight


Když tohle všechno poskládáte dohromady, celkový obraz WBPP je zhruba jasný: je to výkonný automatizovaný nástroj pro předzpracování, ale musíte pamatovat, že jeho výsledek integrace je jen náhled, umět seskupovat kalibraci, umně využívat cache a vědět, co před začátkem práce vymazat a jaké prostředí nastavit. Když jsou pojmy správně, zbytek je jen otázka zručnosti.