Lázár József: Bevezetés a PixInsight használatába
Ezen dokumentum nem kíván sem a gyártó által nyújtott dokumentumok, sem a YouTube csatornákon keresztül elérhető oktató anyagok konkurenciája lenni. Legfontosabb célként azt tűzi ki maga elé, hogy olvasóját a lehető legrövidebb idő alatt megismertesse a PixInsight (a továbbiakban PI) használatával, illetve a későbbiekben – akár itinerként is használva – megkönnyítse a képfeldolgozási munkafolyamatot.
Sokszor hallani, hogy a legtöbb fotóst az riasztja vissza a PI használatától, hogy a szoftver megismerése hosszú időt vesz igénybe és a használata bonyolult. Ez csak részben igaz. Az egyes dialógusok valóban rengeteg paraméterrel rendelkeznek, de a 80-20-as szabály itt is érvényes, vagyis az esetek nagy részében a paraméterek kb. 80%-ához hozzá sem kell nyúlnunk. A maradék 20% viszont valóban gyakorlatot és kitartást igényel.
A leírás a PixInsight 1.8.8-6 verzióhoz készült.
Kezdjünk is bele.
A felület testreszabása
A PI egy jól átgondolt és jól szabható felülettel rendelkezik. Ahhoz, hogy gyorsan és egyszerűen tudjunk vele dolgozni célszerű azt a mi ízlésünkre alakítani. Először nézzük meg milyen elemekből áll a felhasználói felület és azok hogyan viselkednek.
A legfontosabb elem maga a képeket, ikonokat, dialógusokat megjelenítő ablak. A PI úgy próbál viselkedni, mintha maga lenne az operációs rendszer, és annak felhasználói felülete. Ez azt jelenti, hogy a képfeldolgozás során a PI felületét semmiért sem kell elhagynunk. Ahhoz, hogy bőven legyen helyünk a képeinket és a dialógusokat megjeleníteni, azokat akár különböző rendező elvek szerint külön-külön is megjeleníteni, a PI is alkalmazza - a Linux ismeretekkel rendelkezőknek jól ismert - virtuális képernyő fogalmát. A virtuális képernyő úgy viselkedik, mintha több fizikai képernyőnk lenne, amin egymástól függetlenül tudunk képeket, ikonokat, dialógusokat megjeleníteni. Így akár szétválaszthatjuk az előfeldolgozást a véglegestől, vagy egy mozaik esetén az egyes részképek feldolgozását.
A hab a tortán, hogy az összes képernyő teljes tartalmát (egy projektet) bármikor el is menthetjük és persze vissza is tölthetjük. Így egy projekt aktuális feldolgozási állapota (beleértve a bennük található képeket és az azokon végzett műveleteket) egyetlen kattintással menthető (File → Save project…).
A következő elem az ablak szélei mentén felugró ablak, amely alapértelmezésben zárt állapotban van, viszont ha fölé húzzuk az egeret felnyílik (vagy a PI maga nyitja ki azokat). A Process Console ablak például minden műveletnél megnyílik és a program futásának lépéseit/eredményeit mutatja. Ez egy fontos ablak, viszont idegesítő, hogy mindig a bal felső részt – ahol általában a képeink vannak – kitakarja. Ezért ezt a felugró ablakot célszerű a jobb alsó sarokba tenni, ahol nem zavar senkit.
A PI további nagyon hasznos tulajdonsága, hogy az egyes, általa Process-eknek hívott és dialógusok formájában megjelenő al-programok nem csak a menürendszeren keresztül érhetők el, hanem azok az egyes virtuális ablakok felületére is „dobhatók”. Ez hasonlóan viselkedik, mint pl. a Windows parancsikon rendszere, tehát ha ezekre duplán kattintunk azok kinyílnak és végrehajthatóvá válnak. Célszerű tehát az általunk használt processzeket egyszer a virtuális ablak felületére „dobálni” (pl. a jobb oldalon lévő függőleges vonal jobb oldalára).
Én még a használat sorrendjébe is szoktam őket rendezni, így nem kell állandóan bóklásznom a menükben, hanem csak az ablak megfelelő ikonjára kattintva gyorsan elérem őket. Természetesen az ikonok is elmenthetők és visszatölthetők (jobb egérgomb a virtuális ablakban, majd Process Icons → Save Process Icons…).
A képfeldolgozás során használt programok dialógusokon keresztül „kommunikálnak” velünk. A dialógusok a működésükhöz szükséges paramétereket tartalmazzák „ömlesztve” vagy logikailag egy-egy egységbe rendezve. Az egyes egységek a dialóguson belül a dupla felfelé vagy lefelé mutató ikonra kattintva nyithatók vagy zárhatók (a jobb átláthatóság érdekében). A dialógusok – amíg aktívak – mindig az utoljára megadott paramétereket tartalmazzák. Mindig ügyeljünk rá, hogy az egymástól független képek feldolgozásához azokat alaphelyzetbe (Reset) hozzuk a jobb alsó sarokban található ikonra kattintva. Ahogy azt már korábban is említettem, egyes programok rengeteg paramétert igényelnek, viszont ezek jelentős részét sohasem kell megváltoztatni, mivel az alapértelmezésbeli érték tökéletes. A dialógus-ablakok alsó és felső szélein további vezérlő ikonok találhatók. Ezek jelentését majd ott ismertetem ahol szükség lesz rájuk, a többit működését esetleg mindenki saját maga kísérletezze ki.
Miután a felületet megismertük és a kezünk alá szabtuk, hozzákezdhetünk az érdemi munkához.
Alapfogalmak, illetve a feldolgozás folyamata
Mielőtt elvesznénk a feldolgozás részleteiben, tisztázzunk néhány alapfogalmat, illetve nézzük át a kalibrálás folyamatát.
- Light-kép (objektum kép) – a képalkotó távcsőhöz rögzített fényképezőgéppel (CCD szenzorral), az objektumról készült felvétel.
- Dark-kép – az objektumképpel megegyező ISO értékkel, expozíciós idővel, azonos hőmérsékleten készült kép. Készítésekor az optikai út teljesen zárt (sötét) kell, hogy legyen.
- Bias-kép – az objektum képpel megegyező ISO értékkel és azonos hőmérsékleten készült kép. A képkészítéskor az optikai út teljesen zárt (sötét) kell, hogy legyen, az expozíciós idő a kamera által megengedett legrövidebb érték. A Dark-képek és a Bias-képek a kamera különböző zajforrásait hivatottak kiküszöbölni.
- Flat-field kép – egyenletesen megvilágított háttérről (naplemente előtti égbolt vagy „fénydoboz”) készült felvétel, amelyet a képalkotó távcső optikai út hibáinak, a vignettálódás (sötétedés a kép szélein) hatásainak, valamint a képalkotó chip nem egyenlő érzékenységéből eredő hibák kiszűrésére használunk. Ezt a képet a kamera legalacsonyabb ISO értékével kell készíteni.
- Flat-dark-kép – a Flat-field képpel megegyező ISO értékkel, expozíciós idővel és hőmérsékleten készült sötét kép.
- CFA (Color Filter Array) – a képalkotó chip érzékelői (pixelek) előtt elhelyezett színszűrő mátrix, amely lehetővé teszi, hogy a fényképezőgép egyetlen expozíció segítségével színes képet tudjon készíteni. Ez azt is jelenti, hogy az érzékelő egy-egy pixele csak egy adott színt rögzít. A színes felvétel a szomszédos pixelek értékeivel történő interpolálás után alakul csak ki. A szűrők tömbjét nevezzük CFA-nak, amely a chip bal felső sarkától indulóan a következőképpen néz ki:
A fenti mátrix jól szemlélteti, mi is kerül a RAW fájlban rögzítésre, nevezetesen az egyes pixelekben kiolvasott intenzitás értékek. A RAW fájlon még elvégeznek egy veszteségmentes tömörítést is, de csak azért, hogy több kép férjen el egy flash kártyán. Mikor egy ilyen RAW képet megnyitunk, egy szürkeárnyalatos képet kapunk. Ha ekkor be-zoomolunk a képbe és a megjelenítés értékeit is megfelelően vesszük fel, a szűrők által okozott hatás jól láthatóvá válik.
Mivel mi alapvetően színes képet szeretnénk látni, minden egyes pixelben meg kell határoznunk a hiányzó színek intenzitás-értékeit. Ehhez a PI több algoritmust is a rendelkezésünkre bocsát.
A kalibrálás folyamata
Most tekintsük át röviden, hogy az egyes felvételek milyen információkat (és hibákat) hordoznak, és abból hogyan tudjuk a számunkra fontos adatot (pl. egy galaxist) kihámozni.
A digitális kamerák CCD vagy CMOS chip-je nagy hűséggel és linearitással gyűjti a tárgyakról érkező fényt. Sajnos ez az információ a chip hőmérsékletével, a kiolvasó elektronika hibáival, valamint több, más forrásból eredő zajjal is terhelt. A Dark és Bias képek hivatottak ezen hibák értékének és karakterének meghatározására. A képet ezen felül még a távcső optikai út hibái, a chip pixeleinek „egyenetlen” érzékenysége, por és egyéb szennyeződések is terhelik. Ezen hibák kiszűrésére készítjük a Flat-field képeket.
A fentiek tükrében a kép, amelyet készítünk, az alábbi képlettel fejezhető ki:
ahol a „Jel” a fényképezni kívánt objektumot reprezentálja, míg a Light, amit valójában lefényképeztünk. Ebből következően:
Tudunk kell, hogy a Flat képek is a Light-okhoz hasonló hibákkal terheltek, tehát:
Ha mindezt a (2)-es egyenletbe helyettesítjük, akkor az alábbi általános képlethez jutunk:
A képletben a Dark a kamera sötét-áram zaját reprezentálja, amely a hőmérséklettel, ISO értékkel és az expozíciós idő hosszával áll összefüggésben. Azt is tudnunk kell, hogy minden felvétel, amit a kamerával készítünk, tartalmazza a Bias képet is, ebben a Dark sem képez kivételt, tehát a Dark’-ot definiálhatjuk így is: Dark' = Dark + Bias, valamint ehhez hasonlóan: Flat Dark' = Flat Dark + Bias. Ezekkel „egyszerűsítve” képletünket, a végleges formula az alábbi lesz:
Ez utóbbi képlet azt is megmondja számunkra, hogy egy objektum fényképezésekor milyen egyéb képeket kell elkészítenünk ahhoz, hogy a felmerülő zajokat a minimálisra tudjuk csökkenteni. A „vizuálisan” gondolkodók számára mellékelek egy képet is a folyamatról.
Miután minden light képet kalibráltunk kezdhetjük meg azok összeadását (sztekkelését). Nagyon fontos itt megjegyezni, hogy a kalibrálás és a sztekkelés során mindig az eredeti nyers képeket kell használni, azokon normalizálást, hisztogram transzformációt vagy bármi olyan műveletet végrehajtani, ami véglegesen megváltoztatja a pixelek intenzitását TILOS! Ezt a szakaszt hívjuk lineáris szakasznak, ekkor a képek még az eredeti pixel-intenzitásokat tartalmazzák. A feldolgozás végén, a részletek kiemelése miatt már többször is műveleteket végzünk a pixelekkel, ekkor válik a kép nem-lineárissá. Tudományos célra (pl. fotometria, spektroszkópia) ezen utóbbi képek már nem alkalmasak!
A sztekkelés folyamata
A sztekkelés során az összes (már kalibrált, de még lineáris) képünket „összeadjuk”, hogy ezzel növeljük a jel/zaj viszonyt. Mivel az egyes képek készítése között a látómezőnk elmozdulhatott, vagy akarattal mozgattuk el (bolygatás), vagy például több képből készült mozaikot készítettünk, azokat egyszerűen összeadni nem tudjuk. Mivel a csillagok az egyes képeken véletlenszerű pixel-eltolással lesznek leképezve, így minden képen először csillagkeresést kell végeznünk az x-y irányú eltolások, az esetleges elforgatások (vagy az esetlegesen más optikával készült felvételek között fellépő más-más méretarányok) meghatározására. A képek ezután már egymásra transzformálhatóvá válnak.
A sztekkelés folyamata attól függ, hogy színes, vagy monokróm képsorozatot készítettünk. Színes képek esetén a feladat egyszerű, vesszük az összes képet és az egymáshoz illesztés után összeadjuk azokat. Monokróm képek esetén a folyamat kicsit bonyolultabb, mivel ilyenkor az illesztést (és sztekkelést) először – egyenként – az összes színcsatornára el kell végezzük. Miután ezzel végeztünk az egyes csatornákkal ugyanezt az illesztést ismételten el kell végezzük. Az RGB (és egyéb) csatornák összeadása csak ezután lehetséges.
Képátviteli függvény, hisztogram transzformáció
A fent említett lineáris, nem-lineáris fogalmakat szeretném itt most kibontani. Azt már mindenki tapasztalta, hogy a detektorról lejövő nyers kép általában olyan intenzitás-eloszlást tartalmaz, ami közvetlen megjelenítéskor vagy teljesen sötét képet eredményez, vagy ha látszódnak is a legfényesebb területek, a közbenső tónusok teljesen láthatatlanok maradnak. Egy 16 bites kép 65536 szürke árnyalatot tartalmaz(hat). Az emberi szem pedig csak kb. 30 szürke árnyalatot képes elkülöníteni (a rosszul beállított monitorokról nem is beszélve). Mivel az általunk fényképezett objektumok intenzitásai a 65536 tartománynak csak nagyon kis részét foglalják el, ezért ha a teljes dinamika-tartományt lineárisan jelenítjük meg, a számunkra fontos információ annyira „összenyomódik”, hogy a szemünk számára láthatatlan marad. Ezért úgy kell alakítanunk a megjelenítést, hogy ez a „belső” intenzitás-tartomány legyen széthúzva az általunk látható tartományra. Ezt valamilyen képátviteli függvénnyel, a képhez tartozó hisztogram módosításával szokták a számítástechnikában elérni. A PixInsight-ban ezt a ScreenTransferFunction (STF) funkció végzi. Nagyon fontos tudni, hogy az STF, miközben a képet számunkra látható formában megjeleníti, annak tartalmához nem nyúl! Amennyiben a kép megjelenítését egy STF transzformáció végezte el, a kép bal margóján egy zöld csíkocska jelenik meg.
A feldolgozás végén mindenképpen ki fogunk lépni a lineáris szakaszból, mivel minket csak az objektum dinamikája érdekel. Ehhez általában a HistogramTransformation (HT) programot fogjuk használni és azt legtöbbször az STF aktuálisan beállított értékeivel szoktuk elvégezni. Szerencsére a két program teljesen hasonló paraméterek alapján dolgozik, ezért az STF aktuális értékeit bármikor beállíthatjuk a HT programban is. Ehhez egyszerűen húzzuk át az STF-et a HT kontroll sorára.
Ekkor a képünk végérvényesen nem-lineárissá válik.
Itiner
Előfeldolgozás, kalibráció |
|||
Szakasz | Feladat | Program | Megjegyzés |
Lineáris
|
Master bias előállítása |
ImageIntegration
|
Az egyes bias képek sztekkelése, valamint egy zajmentes master superbias előállítása. A bias képekkel kapcsolatban az alábbiakat érdemes megjegyezni: az összes kép, amit a kameránkkal készítettünk tartalmazza a bias-t. Ha kivonjuk a dark-ot a light-ból, és a flat-dark-ot (amelyek expozíciós ideje megegyezik a flat idejével) a flat-ből, akkor a bias-t mindkettőből kivontuk és nincs szükségünk különálló bias képekre. Ha azonban a dark-okat skálázni akarnánk (tehát a flat-ekhez nincs különálló dark-unk), akkor mindenképpen szükség van bias képekre is. A PI SuperBias funkciója eltünteti a véletlenszerű zajt és csak a fix zajmintát hagyja meg, ezáltal több zajt képes a képekből kivonni. |
Master dark előállítása |
ImageCalibration
ImageIntegration |
A sötét képek kalibrálása a master superbias-szal. | |
Master flat előállítása |
ImageCalibration
ImageIntegration |
Az egyes flat képek kalibrálása a master superbias-szal és a master dark flat-tel. Lehetőség szerint leskálázott master dark-ot ne használjuk, mindig készítsünk a flat-ekhez dedikált dark-okat. | |
Light képek kalibrálása |
ImageCalibration CosmeticCorrection |
Master bias, dark, flat alkalmazása a nyers képekre, hot/cold pixelek kivonása. | |
Debayer |
Debayer |
DSLR vagy OSC kamera használata esetén a light képek Debayer-elése. | |
A legjobb light képek kiválogatása |
SubframeSelector |
A képek metrikus adatai alapján súlyok számítása a sztekkeléshez. |
Illesztés, sztekkelés | |||
Szakasz | Feladat | Program | Megjegyzés |
Lineáris |
A light képek regisztrálása |
StarAlignment |
|
Háttérzaj csökkentése |
LocalNormalization |
A jobb jel/zaj viszony és finomabb átmenetek érdekében. | |
Sztekkelés |
ImageIntegration
DrizzleIntegration |
||
Monokróm képek esetén a fenti lépéseket minden egyes színcsatornára egyenként el kell végezni. |
A fentiek lépéseket a PI BatchPreprocess funkciójával is el lehet végezni, de a lépések jobb megértése érdekében célszerűnek láttam a feladatot lépésről-lépésre megismertetni.
Monokróm képek illesztése, sztekkelése |
|||
Szakasz | Feladat | Program | Megjegyzés |
Lineáris | A színcsatornák képeinek regisztrálása | StarAlignment | |
„Kilógó” szélek levágása |
DynamicCrop |
||
Háttér-gradiensek kivonása |
DynamicBackgroundExtraction |
||
LinearFit |
A különböző szűrők használata és a változó égboltviszonyok miatt a háttér átlagfényessége változik. Ezt egy lineáris függvénnyel modellezzük és a hisztogramokat „egységes formára” hozatjuk. | ||
R, G, B sztekkelés |
ChannelCombination |
||
BackgroundNeutralization |
|||
Szín-kalibráció |
ColorCalibration |
vagy PhotometricColorCalibration | |
Color-cast eltüntetése |
SCNR |
A DSLR képeken esetleg megjelenő zöldes szín eltávolítása. |
Utófeldolgozás |
|||
Szakasz | Feladat | Program | Megjegyzés |
Nem-lineáris |
L csatorna hozzáadása |
LRGBCombination | |
Zajcsökkentés |
MultiscaleLinearTransform TGVDenoise |
||
Csillagok méretének csökkentése |
HDRMultiscaleTransform MorphologicalTransformation |
||
További utófeldolgozási feladatok |
A feldolgozás során használt könyvtárak
A feldolgozás során képeink különböző változásokon esnek át, így célszerű azokat egymástól elkülönítve tartani. Nem szerencsés az sem, ha az eredeti képeket a keveredés miatt véletlenül felülírjuk vagy kitöröljük. Én az alábbiakat javaslom, és a későbbiekben is ezekre fogok hivatkozni:
- Lights: a nyers képek tárolóhelye
- Masters: az egyes master képek (flat, dark, bias) tárolóhelye
- Calibrated: az ImageCalibration és CosmeticCorrection utáni képek tárolóhelye
- Approved: a SubframeSelector utáni, jóváhagyott képek tárolóhelye
- Registered: StarAlignment, LocalNormalization utáni képek tárolóhelye
- Final: ImageIntegration, DrizzleIntegrate utáni képek tárolóhelye
A Calibrated, Approved, Registered könyvtárak a munka végén kitörölhetők, mivel csak a képek közbenső állapotait tartalmazzák. A többit célszerű megtartani és esetleg felhő-tárhelyre (pl. Dropbox), külső adathordozóra archiválni.
Gyors képszűrés
Erre a feladatra szinte mindenki a Blink programot használja. Tökéletes és gyors eszköz a már ránézésre is hibás képek kiszűrésére. Használata egyszerű, nem igényel magyarázatot. Én minden olyan képet, amely ovális csillagokat, durva mesterséges hold csíkokat, vagy (pl. felhők miatti) erős jel/zaj viszony csökkenést mutat, ki szoktam venni a feldolgozásból. Mivel a mesterséges hold csíkokat a feldolgozás során más módszerrel is el tudjuk tüntetni, egy kisebb „szennyezettség” miatt egy jó képet azért ne dobjunk ki.
A light képek kalibrálása, hot és cold pixelek korrigálása
Ebben a lépésben a light képeket fogjuk a már elkészült master-ekkel kalibrálni, valamint megpróbáljuk a még megmaradt hot és cold pixeleket eltüntetni.
- Indítsuk el az ImageCalibration programot és állítsuk alaphelyzetbe (Reset gomb).
- Adjuk hozzá a light képeket: kattintsunk a Add Files gombra, majd válasszuk ki a megfelelő fájlokat a Lights mappából.
- Amennyiben a képek színes CCD (OSC) vagy DSLR kamerával készültek, engedélyezzük az Enable CFA opciót. Monokróm CCD esetén hagyjuk ezt az opciót kikapcsolt állapotban.
- Színes CCD (OSC) vagy DSLR kamera esetén válasszuk ki a kameránknak megfelelő CFA mosaic pattern-t (Canon DSLR esetén ez RGGB).
- Állítsuk be a kimeneti könyvtárat: kattintsunk az Output directory gombra, majd válasszuk ki a Calibrated mappát.
- Válasszuk ki a Master Bias, Master Dark és Master Flat füleket és töltsük be a hozzájuk tartozó képeket a Masters könyvtárból.
- Egyik Calibrate opció se legyen kiválasztva, mivel mind a master dark, mind pedig a master flat képek már kalibrálva lettek. A master superbias pedig nem igényel kalibrálást.
- A Master Dark alatt válasszuk ki az Optimize opciót, hogy a PI biztosan „illessze” a master dark-ot az egyes light képekhez. Ezt inkább csak hűtetlen kamera esetén használjuk (ahol a detektor hőmérséklete változik).
- Ha a Separate CFA flat scaling factors ki van választva, és a master flat egy CFA kép, az R, G, B CFA komponensekre külön-külön skálázott flat kerül kiszámításra.
- Nyomjuk meg az Apply Global gombot.
A light képek kalibrálása után próbáljuk meg a még megmaradt hot és cold pixeleket eltüntetni.
- Indítsuk el a CosmeticCorrection programot.
- Adjuk hozzá a kalibrált light képeket: kattintsunk a Add Files gombra, majd válasszuk ki a megfelelő fájlokat.
- Állítsuk be a kimeneti könyvtárat: kattintsunk az Output directory gombra, majd válasszuk ki a Calibrated mappát.
- Amennyiben a képek színes CCD (OSC) vagy DSLR kamerával készültek, engedélyezzük a CFA opciót. A képek debayer-ezésére majd csak később kerül sor, azt követően ezt a opciót már többet nem kell használnunk. Monokróm CCD esetén hagyjuk ezt az opciót kikapcsolt állapotban.
- Ha van master dark képünk, jelöljük ki a Use Master Dark opciót és adjuk meg annak elérési útvonalát.
- Mivel nekünk van master dark képünk, nem kell engedélyeznünk a Use Auto detect opciót. Arról mindenkit lebeszélek, hogy ne készítsen dark képeket és ezzel az opcióval próbálkozzon. A zaj csökkentésének egyik legfontosabb eleme a dark kép!
A munka felgyorsítása érdekében most ki kell jelölnünk egy „előnézeti” ablakot egy olyan terület körül, ahol jól látható mennyiségű hot pixel található (fehér pixelek, amik egyértelműen nem csillagok). Mindjárt tegyük az előnézetet aktívvá, hogy a későbbiek során csak azt lássuk.
- Kattintsunk a Real-Time Preview gombra. Ennek hatására azonnal láthatjuk a program által előállított végeredményt, és mivel azt csak az előnézeti képen végezzük, a feldolgozási idő nagyon rövid lesz.
- Válasszuk ki az Enable-t a Hot Pixels Threshold alatt, majd csökkentsük a Sigma értékét a csúszka segítségével (vagy írjuk be a kívánt értéket közvetlenül a mezőbe). Miközben ezt tesszük, nézzük hogyan tűnnek el a hot pixelek. Vigyázzunk, mert a Sigma érték csökkentésével értékes adatok (tehát nem csak a hot pixelek) is eltűnnek a képről. További hot pixelek tüntethetőek el a Qty értékének növelésével is.
- Ezt követőn járjunk el hasonlóképpen a cold pixelek ellenőrzésével is (Cold Pixels Threshold), bár erre az esetek többségében nincs szükség.
Érdekes, hogy a hot pixeleket a master dark használata sem tudja mindig megszüntetni. Ez esetben kapcsoljuk be a Use Auto detect opciót és nézzük meg, hogy a Hot Sigma csúszka változtatása milyen hatással van a hot pixelekre. A alacsonyabb értékek agresszívabban tüntetik el a pixeleket, ezért 1.0 alá ne igen vigyük az értékét. Az előzőek analógiájára csökkenthetjük a cold pixelek számát is (Cold Sigma).
A Use Defect list opcióval megadhatjuk, hogy a képen hol találhatók hibás oszlopok vagy sorok. Erre egy jó master super bias és master dark esetén a legtöbb esetben nem lesz szükségünk.
Amennyiben elégedettek vagyunk az eredménnyel, bezárhatjuk a használt képet és az előnézetet is. A még mindig megnyitott CosmeticCorrection program Apply Global gombjára kattintva hajtsuk végre a korrekciót az összes képen.
Ha képek OSC vagy DSLR kamerával készültek a következő lépésben Debayer-elni kell őket.
- Indítsuk el a Debayer programot.
- Válasszuk ki a kameránknak megfelelő Bayer/mosaic pattern-t (Canon DSLR esetén ez RGGB).
- Adjuk hozzá az előzőekben kalibrált és korrigált light képeket az Add Files gomb segítségével.
- Jelöljük ki kimeneti könyvtárnak a Calibrated mappát az Output directory gomb segítségével.
- Majd nyomjuk meg az Apply Global gombot.
Amennyiben a képek monokróm CCD-vel készültek, a fent leírt teljes műveletsort minden egyes színcsatornára (külön-külön) végre kell hajtanunk (természetesen a Debayer művelet kivételével).
A legjobb light képek kiválogatása, súlyok hozzárendelése
A SubframeSelector program képeink minőségét olyan adatok alapján képes mérni, mint pl. az átlagos csillagméret (FWHM – Full-Width Half-Maximum), ovalitás, zaj, jel-zaj viszony (SNR Signal-to-Noise Ratio). Ezzel lehetővé válik, hogy ne csak „érzelmi” alapon döntsünk egy kép jóságáról. További lehetőség, hogy a program ezen adatok alapján egy súlyt rendeljen a képhez, amelyet a sztekkelésnél figyelembe tudunk majd venni.
- Indítsuk el a SubframeSelector programot.
- A Routine-t először állítsuk Measure Subframe-re.
- Adjuk hozzá a light képeket az Add Files gomb segítségével.
- Nyissuk meg a System Parameters fület.
- Adjuk meg a Subframe Scale-t, ívmásodperc / pixel értékben. Ha még nem ismert, számítsuk ki az alábbi képlettel:
-
- Adjuk meg a Camera gain értékét elektron / ADU dimenzióban.
- Adjuk meg a Camera resolution (bit-depth) értékét. Ez a A/D konverter bitmélysége, ami CCD kamerák vagy RAW képek esetén 16 bit [0, 65535].
- A Scale unit-ra Arcseconds (arcsec)-ot adjunk meg, mert ilyenkor az FWHM érték nem pixelben, hanem ívmásodpercben értendő.
- Nyissuk meg a Star Detector Parameters fület.
- Az alapértelmezett értékek általában jól működnek, de a Structure layers-t visszavehetjük 4-re, míg a Noise layers-t felvihetjük 2-re. Ez biztosítja, hogy a program a nagyobb csillagokat és az első két réteget (az elsőben főként a kis-léptékű zaj a domináns) nem veszi figyelembe.
- Ha több csillagot szeretnénk megtaláltatni, kismértékben növeljük a Sensitivity csúszka értékét.
- Nyomjuk meg az Apply Global gombot. A Process Console ablak megnyílik és képenként mutatja a megtalált csillagok számát. Ellenőrizzük, hogy a mérésbe bevont csillagok száma képenként több száz vagy több ezer legyen. Amennyiben nem ez történne, állítsuk vissza a Structure layers és Noise layers 5-re, illetve 0-ra és/vagy növeljük a Sensitivity értékét.
Folytassuk most az egyes képek súlyainak meghatározásával. A súlynak ideális esetben három fontos tényezőt kell figyelembe vennie: FWHM, ovalitás és SNR.
- Az Expressions ablak Weighting részébe másoljuk be az alábbi képletet:
-
- Az FWHM és az Eccentricity értékek negatív számok (minél nagyobbak, annál rosszabb az expozíció) ez az oka a fenti képletben az 1-FWHM és 1- Eccentricity kifejezéseknek. Az SNR pozitív mennyiség (minél nagyobb, annál jobb) ezért ez csak simán szerepel a képletben.
- Térjünk vissza a SubframeSelector program fő ablakába és az Output directory gomb segítségével válasszuk ki az Approved mappát kimeneti könyvtárként.
- A Routine-t állítsuk Output Subframes-re.
- Fontos, hogy a Keyword paramétert kitöltsük (alapértelmezésben az értéke SSWEIGHT). Ez lesz majd annak a FITS kulcsszónak a neve, amibe a PI a számított súlyt írja. Az alapértelmezett érték számunkra tökéletesen megfelel.
- Nyomjuk meg az Apply Global gombot.
Fontos, hogy mielőtt a programból kilépnénk megjegyezzük, hogy melyik volt a legnagyobb súllyal megjelölt kép. Ezt később már nehéz lesz kitalálni, viszont a következőkben, mint referencia képre hivatkozni fogunk.
A light képek regisztrálása
Első lépésként azt kell eldöntenünk, hogy melyik kép lesz a regisztráció referencia képe. A PI az összes többi képet ehhez fogja igazítani. A regisztrált képek mérete is a referencia kép méretével lesz megegyező! Referenciának azt a legmagasabb optimalizált súllyal (SSWEIGHT) rendelkező képet kell választani, amit az előző előző lépésben megjegyeztünk.
- Indítsuk el a StarAlignment programot.
- Válasszuk a File típust a legördülő menüből, majd válasszuk ki a referencia képet a Reference image végén található lefelé nyíl ikon megnyomásával.
- Working mode-ként válasszuk a Register/Match Images opciót.
- Mivel a későbbiekben alkalmazni fogjuk a Drizzle algoritmust, jelöljük ki a Generate drizzle data opciót.
- Az Add Files gombbal adjuk hozzá a képeinket (a referencia képet is hozzá kell adni!).
- Az Output directory gomb segítségével válasszuk ki az Registered mappát kimeneti könyvtárként.
- Az Interpolation fülön válasszuk ki a Lanczos módszert Pixel interpolation-ként.
- Nyomjuk meg az Apply Global gombot.
Az, hogy mennyi csillagot talál az algoritmus nagyban múlik azon is, hogy eleve mennyi csillag van a képen és, hogy azok mennyire kerekek. Ha a regisztráció elsőre nem jön létre azért még van esélyünk 1-2 paraméter állítgatásával.
Az első, hogy a RANSAC tolarance értékét megemeljük a Star Matching fül alatt. Alapértéke 2.0, de megpróbálhatjuk egészen 6-ig vagy 8-ig megemelni. E mellett megemelhetjük a RANSAC iterations értékét is mondjuk 3000-re. Ezen értékekkel a PI sokkal „gondosabban” keresi a csillagokat. Ahhoz hogy a PI-t arra kényszerítsük, hogy halványabb csillagokat is megtaláljon a Star Detection fülön a Log(sensitivity) értékét kell csökkentenünk. Ez egy logaritmikus érték, tehát az alacsonyabb értékek növelik az érzékenységet, így akár a legalacsonyabb -2.00 vagy -3.00 értékek is jó eredményre vezethetnek. De megemelhetjük a Detection scales értékét is akár 6-ra, hogy több csillagot találjon az algoritmus.
Normalizálás
Amennyiben képeink felhős vagy fátylas égbolton készültek a LocalNormalization program használatával a sztekkelt végeredmény kép „tisztábbnak”, a háttér kevésbé zajosnak, míg a jel-zaj viszony erősebbnek fog látszódni.
- Indítsuk el a LocalNormalization programot.
- Válasszuk a File típust a legördülő menüből, majd válasszuk ki a referencia képet a Reference image végén található lefelé nyíl ikon megnyomásával.
- Az Add Files gomb megnyomásával hozzáadjuk az összes light képünket.
- Az Output directory gomb segítségével válasszuk ki az Registered mappát kimeneti könyvtárként.
- A többi paraméter úgy jó, ahogy van. Az egyetlen, ami a végső minőséget befolyásolhatja az a Scale paraméter (a dialógus tetején). Ez határozza meg a normalizálás mértékét. A javasolt értéke 64 és 256 között mozog, tehát a megadott 128 az esetek többségében szintén jól működik.
- Nyomjuk meg az Apply Global gombot.
A light képek sztekkelése
- Indítsuk el az ImageIntegration programot és állítsuk alaphelyzetbe (Reset gomb).
- Az Add Files segítségével hozzáadjuk az összes sztekkelésre váró light képet.
- Mivel később a drizzle algoritmust fogjuk használni, szükségünk lesz frissített drizzle adatokra. Ezért adjuk most hozzá az eddig rendelkezésre álló drizzle fájlokat a Registered mappából az Add Drizzle Files gomb segítségével. A képek előtt megjelenő <d> azt jelzi, hogy az egyes light képekhez sikeresen hozzáadtuk a drizzle adatokat.
- Most adjuk hozzá a normalizálási adatokat is az Add L.Norm. Files gomb segítségével. A képek előtt megjelenő <n> azt jelzi, hogy az egyes light képekhez sikeresen hozzáadtuk a normalizálási adatokat.
- Válasszuk ki az Average-et a Combination módok közül.
- Válasszuk ki a Local Normalization-t a Normalization módok közül (ha nem lennének normalizációs adataink, akkor itt az Additive with scaling módot kellene kiválasztanunk).
- Válasszuk ki a FITS keyword-öt a Weights módok közül.
- Ha mégsem szeretnénk optimalizált súlyokkal dolgozni válasszuk a Noise evaluation módot.
- Weight keyword-ként írjuk be az SSWEIGHT-et (mivel korábban ezt adtuk meg a SubframeSelector programban).
- Válasszuk ki az Evaluate noise opciót.
- Győződjünk meg arról, hogy a Generate drizzle data opció ki van választva (ezzel frissíttetjük a drizzle adatokat a következő lépéshez).
- A Pixel Rejection (1) fül alatt a Rejection algorithm-nek az alábbiak szerint válasszunk módot:
- a képek száma < 10: Averaged Sigma Clipping
- a képek száma > 10, de < 20: Winsorized Sigma Clipping
- a képek száma > 20: Linear Fit Clipping
- A Normalization módok közül válasszuk a Adaptive normalization-t.
- Válasszuk ki a Clip low pixel és Clip high pixel opciókat, viszont a Clip low range és Clip high range opciók kiválasztása nem fontos.
- A Pixel Rejection (2) fül alatti Sigma low értékét csak akkor kell változtatni, ha olyan sötét hibák maradtak a képen (pl. dead pixelek), amiket korábban nem kezeltünk. A Sigma high értékeket pedig akkor, ha a sztekkelés után még mindig maradnak mesterséges hold vagy kozmikus sugár nyomok.
- Nyomjuk meg az Apply Global gombot.
A sztekkelés eredménye automatikusan megjelenik egy új ablakban. Auto-stretch-eljük (az STF segítségével), nagyítsunk bele és alaposan nézzük meg részleteiben is az eredményt. Ha továbbra is látunk mesterséges hold vagy kozmikus sugár nyomokat a Sigma low és Sigma high értékeit is változtatnunk kell. Ehhez előbb zárjuk be az előző sztekkelés eredményképét és térjünk vissza az ImageIntegration programhoz. Ha az alapértelmezett 4.00 és 2.00 nem működött, csökkentsük a Sigma low és Sigma high értékeit először 3.00-ra és 2.00-ra. Ha még mindig vannak maradványok, csökkentsük tovább 2.75-re és 1.75-re. Ez egy egyszerű iteráció. Minden beállítás után sztekkeljük újra a képeket (a dialógus egyéb értékeihez ne nyúljunk), majd ellenőrizzük az végeredményt.
Ha elégedettek vagyunk az eredménnyel, egyszerűen zárjuk be az összes keletkezett képet és az ImageIntegration ablakot is. Ez furcsának tűnik, de mi a képeket drizzle algoritmussal szeretnénk sztekkelni! Mivel az ImageIntegration program minden futási alkalommal frissítette a drizzle adat-fájlokat, semmi sem veszik el ha azt egyszerűen bezárjuk.
Színes képek esetén a sztekkelése ezen a ponton befejeződött. Amennyibe a képek monokróm CCD-vel készültek, a fent leírt műveletet minden egyes színcsatornára (külön-külön) végre kell hajtanunk.
Drizzle alkalmazása a light képre
A drizzle sztekkelés lényege, hogy a képet a program felskálázza (pl. 2-szeresére vagy akár 3-szorosára) annak érdekében, hogy a pixelek közötti interpoláció finomabb átmeneteket produkáljon. Erre főként akkor van szükség, ha az egyes képek között enyhe forgás is bekövetkezett (mivel az egyes pixelek négyzet alakúak). Az eredménykép szürke-átmenetei finomabbak lesznek és kevésbé pixelesek. A másik indok a drizzle-re a nyers képek alul-mintavételezettsége lehet (tehát, ha nem felelnek meg a Nyquist kritériumnak).
- Indítsuk el az DrizzleIntegration programot.
- Az Add Files segítségével töltsük be az összes drizzle adatfájlt.
- A legfontosabb paraméter a Scale. Ez mondja meg, hogy a végeredmény hányszorosa lesz a bemenő képméretnek. A 2 azt jelenti, hogy egy 1000 x 1000 pixeles kép 2000 x 2000 -re lesz felskálázva és az interpolációnak köszönhetően sokkal „simábbnak” fog látszani. Mozaikok esetén igencsak lelassítja a feldolgozást. Ehhez persze elegendő RAM is szükséges a feldolgozó számítógépbe.
- Most adjuk hozzá a normalizációs adatfájlokat az Add L.Norm. Files gomb segítségével.
- Az Enable adaptive normalization opció mindenképpen legyen kiválasztva. A sikeres hozzáadásról a listában a nevek előtt megjelenő <n> szimbólum értesít.
- Nyomjuk meg az Apply Global gombot.
A program futása után megjelenő képet már elmenthetjük, mint a sztekkelés „hivatalos” eredményét.
A fekete élek körbevágása
A körbevágáshoz használt program a használt képen egy munkamenetet nyit, ami azt jelenti, hogy addig más képen nem használható, amíg az adott képen nem fejeztük be a munkát. A körbevágást mindig a legtöbb fekete széllel rendelkező képen végezzük.
- Indítsuk el az DynamicCrop programot.
- Nyomjuk meg a Reset gombot, ami elindítja az éppen kiválasztott képen a munkát.
- Fogjuk meg a fehér kiemelt „doboz” egyes oldalait és húzzuk (lenyomott egérgombbal) a kép közepe felé. Ha elrontottunk volna valamit vagy „elvesztünk”, nyomjuk meg ismét a Reset gombot.
- Amint készen vagyunk, „húzzuk” a programot (aktuális paramétereivel) az asztal felületére. Ezzel egy processz ikont készítettünk, amit bármely képre „rádobhatunk”. A program az adott paraméterekkel végrehajtja feladatát azon a képen, amire rádobtuk. Tegyük most mi is ezt az összes képünkre (pl. L, R, G, B képeinkre).
- Töröljük le a parancsikont a felületről.
A háttér kivonása
Ebben a lépésben mintavételi pontokat helyezünk el a képen (annak csak hátteret tartalmazó részein), ami alapján egy háttérmodellt számíttatunk a programmal, majd azt kivonjuk a képből. A mintavételi pontok elhelyezését azon a képen végezzük, amin a legjobban el tudjuk különíteni a hátteret a ködösségtől vagy a fényes csillagmezőktől. Az így felvett ponthalmazt fogjuk majd alkalmazni az összes többi képen is. Minden képet minimalizáljunk a felületen, csak a fentieknek megfelelő maradjon maximalizálva.
- Indítsuk el a DynamicBackgroundExtraction programot.
- Nyomjuk meg a Reset gombot.
- Generáltassunk a programmal automatikusan pontokat, amiket azután majd ellenőrzünk. Ehhez nyissuk meg a Sample Generation fület és növeljük meg a Default sample radius értékét 10 és 20 közöttire.
- A Samples per row értékét 15 és 20 közöttire.
- Nyomjuk meg a Generate gombot.
- Ha túl kevés pontot kapnánk növeljük meg a Tolarance értékét a Model Parameters (1) fülön. Értéke normál esetben 0.5 kell legyen, de olyan képeknél, ahol a háttér túl világos, sok területre nem rak a program mintavételi pontot. Csak akkor növeljük meg az értékét, ha a kézzel felvett pontokat a program nem fogadja el és piros négyzetet rajzol, holott mi tudjuk, hogy ez 100%-osan háttér. Értékével felmehetünk akár 2.00-ig is, de fölé már nem érdemes.
- Ezután zoomoljuk be és egyenként nézzük végig az összes kijelölt területet. Azokat, amit ködösség vagy csak akár csak egy csillag fölé helyezett a program, fogjuk meg és mozgassuk csak hátteret tartalmazó rész fölé vagy töröljük ki.
- Ha elégedettek vagyunk a pontok számával és helyzetével a Target Image Correction fül Correction menüjéből válasszuk ki a Subtraction módot.
- Ezután csináljunk a dialógusból processz ikont, azáltal, hogy azt az asztalra „húzzuk”.
- Alkalmazzuk a processz ikont az összes képre.
- A háttérmodell képeket megnézhetjük, de utána nyugodtan zárjuk be őket. Ha egyáltalán nem kívánjuk azokat legeneráltatni, válasszuk ki a Discard background model opciót a végrehajtás előtt.
- Az eredményképet mindenképpen mentsük le.