Buzzmeister’s Horsehead Nebula DSS stack post-processed in APP

Activity Forums Astrotechniek Methoden en Technieken Buzzmeister’s Horsehead Nebula DSS stack post-processed in APP

Tagged: , ,

Viewing 15 posts - 1 through 15 (of 19 total)
  • Author
    Posts
  • #10054
    Haverkamp
    Participant

    Hoi allen,


    @buzzmeister
    heeft mij gevraagd om een Deep Sky Stacker (DSS) stack van hem te post-processen met Astro Pixel Processor a.k.a. APP.

    Dit draadje laat een complete post-processing zien van de stack, volledig gedaan in APP, geen enkel ander programma heeft de data aangeraakt.

    De stack is een 32bits TIFF bestand gemaakt met DSS vanuit de Sony A6000 data van Rutger Bus van de Horsehead Nebula.

    Ik zal per stap een nieuwe post maken anders wordt deze eerste post erg lang… met heel veel plaatjes ;-)

    Allereerst even een uitleg over de preview mogelijkheden van APP.  APP heeft een DDP stretch filter dat meerdere zaken tegelijk kan doen. Uiteraard kan het de data stretchen met een DDP algoritme. Daarnaast kan het de saturatie verhogen terwijl de achtergrond beschermd wordt, waardoor er geen chromatische ruis ontstaat in de achtergrond. Het contrast kan verhoogd worden waarbij er ook een bescherming plaats vindt om te voorkomen dat sterren sterk opblazen of donkere nevels wel heel donker worden… Als laatste kan het preview filter verscherpen terwijl de sterkernen beschermd blijven en je ook geen ringen om de sterren krijgt door de gauss kernel die wordt gebruikt voor de verscherping. Het verscherpings-principe zit compleet in het DDP filter verwerkt en werkt qua principe ongeveer als een unsharp mask.

    Ook even een uitleg over het histogram dat je zult zien in de screenshots. Het histogram is dynamisch, het toont enkel de data die te zien is. Dus als je inzoomt op de data, toont het histogram alleen de distributie van intensiteiten van de ingezoomde data. Verder kan je het histogram logaritmisch/niet-logaritmisch bekijken en per kleur kanaal of puur de luminositeit ( luminositeit is de integratie over de intensiteiten per golflengte/kanaal).

    Alle screenshots en foto’s die volgen in deze post-processing zullen foto’s zijn waarbij de data nog niet is gestretcht. De foto’s en screenshots laten enkel een stretch zien met het preview filter. Alle bewerking gebeurd op de niet-gestretchte data en de data zal pas op het allerlaatste moment in de workflow gestretcht worden. Dus er vindt in de daadwerkelijke bewerking maar 1 stretch van de data plaats.

    #10056
    Bus
    Participant

    Ik zit op het puntje van mijn stoel ;-)

    #10057
    Haverkamp
    Participant

    Stap 1) Allereerst werpen we een blik op de stack zoals deze uit DSS komt. Dat is de eerste screenshot. Alleen een paar sterren te zien.

    Met APP wordt de stack voor een preview meteen gestretcht om te kijken hoe de stack er in eerste instantie gestretcht uitziet. Dat is de 2de screenshot. Er is nog geen saturatie toegevoegd want het colors+ vinkje staat uit in het preview filter.

    Je ziet dat er geen flats zijn toegepast door het circulaire belichtingsprofiel in de stack en er zullen ongetwijfeld ook wel gradienten in zitten door lichtvervuiling. Zo te zien heeft DSS de achtergrond niet gecalibreerd, aangezien de pieken van de histogrammen per kleurkanaal niet gelijk liggen.

    #10066
    Haverkamp
    Participant

    Stap 2) Dit is meteen een van de belangrijkste stappen in de hele post-processing. We gaan de belichting van de stack in 1 keer helemaal gelijk trekken.

    In dit geval heb ik dit gedaan met de “remove light pollution” tool. Dit is een interactieve tool waarbij je als gebruiker gebieden in de stack moet markeren/croppen, waarvan je denkt dat er alleen hemelachtergrond is. Dus er mag geen neveligheid zitten. De aanwezigheid van sterren in de crops is geen enkel probleem, want door het toepassen van robuuste statistiek worden die volledig genegeerd.

    Aangezien er ook vignettering te zien is door het niet toepassen van flats is de correctie met deze tool theoretisch gezien niet correct. Vignettering moet je multiplicatief corrigeren terwijl lichtvervuiling additief gecorrigeerd dient te worden. Ik kan vignettering echter ook goed corrigeren middels Kang-Weiss modellen, dat zal zeker in een ander draadje aan bod komen.

    De techniek van de module berust op een gedempte 3D Thin Plate Spline waarbij de gebruiker de hoeveelheid demping kan instellen. Het beste model dat wordt gevonden bij de meeste demping zal vrijwel altijd het meest correcte model zijn. Zonder demping kan je de correctie van de niet-gelijke belichting in de opname eigenlijk niet optimaal goed krijgen, vandaar de demping in de model regressie. Bij zorgvuldig toepassen van deze module krijg je de opname in 1 keer volledig gecorrigeerd. Je hoeft niet meerdere keren deze module te laten werken. (iets wat bij andere programma’s over het algemeen wel het geval is geloof ik). Tijdens het plaatsten van de crops kan je het model laten uitrekenen en de correctie laten toepassen. Je krijgt dan als gebruiker feedback over de geplaatste punten. Als punten niet binnen 1 standaard deviatie passen met het model worden ze geel en bij meer dan 2 standaard deviaties worden ze rood. Dat is dan vaak een teken dat zo’n crop niet goed is geplaatst. Die crop kan je dan makkelijk verwijderen. Dus de kleuren van de geplaatste crops geven je als gebruiker directe feedback of je misschien de crops op een andere plek moet/kan plaatsen, zodat je als gebruiker gestuurd wordt richting het vinden van een goed correctie model. Ik zal proberen om hier nog een mooi filmpje van te maken, want beelden maken het een stuk duidelijker lijkt me.

    In de screenshot zie je links wat getallen over het gebruikte model en de bereikte precisie van het model. Er wordt gemodelleerd met een flexibility van 1: dat is maximale demping. Dat betekent dat de correctie erg eenvoudig te doen is over het algemeen. Dit komt ook tot uiting in de fout van het model per kleurkanaal,  de Root Mean Square Error is in de orde van 0,00000001 ten opzichte van de achtergrond waarde. Dat is heel klein! Dat is een 1 millioenste %. Aangezien de noise in de stack bij lange na niet zo laag is, moet dit betekenen dat de modellering alleen gelimiteerd wordt door de ruis die nog aanwezig is. Een betere correctie zal niet kunnen.

    Wat je in de screenshot ook ziet, is dat de achtergrond meteen neutraal wordt getoond. Op basis van de crops en de modellen per kleurkanaal, kan de achtergrond neutraal worden getoond. Als je klaar bent met de correctie wordt deze neutralisatie alleen nog niet toegepast. Dat is de volgende stap.

    #10072
    Haverkamp
    Participant

    Stap 3) hoe ziet nu de stack eruit, in de eerste screenshot zie je nu dat de pieken van de histogrammen nog niet gelijk liggen. Dus de achtergrond is niet grijs/neutraal.

    De achtergrond moet nu dus neutraal worden gemaakt. Met een zelfde soort tool als de “remove light pollution” tool kan je makkelijk de achtergrond nu neutraal maken. Dat zie je in screenshot 2.

    Met zowel de “remove light pollution” tool, als wel de “calibrate background” tool kan je met het preview filter de saturatie lekker omhoog zetten ( 25 ) zodat je goed mogelijke kleurverschillen ziet. Door te schuiven met de sat. threshold slider (saturatie threshold) kan je ook bekijken wat er gebeurd als je de saturatie toepast op de achtergrond. Dit is erg informatief om tot een goede correctie te komen met beide tools.

    #10075
    Haverkamp
    Participant

    Stap 4) Nu de achtergrond neutraal is gemaakt en gelijk getrokken qua belichting kunnen we makkelijker sterker stretchen en gaan we meer details in de opname zien.

    We zien nu goed dat er een paar stack artefacten zichtbaar zijn aan de randen. Dit is een goed moment om deze alvast weg te croppen en verder te werken zonder deze artefacten.

    Naast de screenshot van de gekozen crop, zie je nu ook een JPG van de stretch die je ziet van het gecropte gebied. Je kan met het preview filter altijd tussendoor een afbeelding, al dan niet, met een stretch opslaan als een FITS, uncompressed TIFF, of een JPG ( kwaliteit versus bestandsgrootte is ook in te stellen) met of zonder een ICC profiel erbij in voor correct kleur management. De JPG heeft nu 75% kwaliteit en een sRGB v2.1 ICC profiel in de metadata.  Rechts onder zie je de button “save image” en een checkbox “stretch”. Je kan dus die afbeelding die je ziet opslaan met de ingestelde stretch of compleet zonder de stretch, om bijvoorbeeld de data lineair op te slaan als de ingeladen afbeelding zelf lineair is.

    #10080
    Haverkamp
    Participant

    Stap 5) We gaan nu de kleuren in de achtergrond en de sterren finetunen.

    Ik doe dit nu met de “combine RGB” tool. Dit is een tool om composieten te maken van bijvoorbeeld narrowband data ( een hubble pallet bijvoorbeeld) of om LRGB combinaties te maken. Je kan 6 verschillende lagen aanmaken en vervolgens kan je de achtergrond verschuiven t.o.v. elkaar ( worden standaard al gelijk gezet door de tool door een achtergrond detectie in elke laag), multipliers aanpassen en instellen hoe elke laag bijdraagt aan het rode, groene en/of blauwe kanaal. Binnenkort kan je ook instellen hoe elke laag bijdraagt aan bijvoorbeeld de luminance of saturatie, zodat dit een complete tool wordt voor het maken van composieten.

    In dit geval wordt de gecropte stack ingeladen en de tool splijt de R,G,B lagen in 3 afzonderlijke lagen, die ik vervolgens Red, Green en Blue genoemd heb. Nu kan ik gaan spelen met de achtergrond en ook de kleur ratios van de sterren.

    Ik heb eerst even ingezoomd op een stukje grijze hemelachtergrond om te verifieren dat het echt grijs is. Dit zie je goed aan het histogram van het ingezoomde gebied. (histogram is dynamisch zoals ik eerder schreef, zoom je in, dan past het histogram zich aan).

    Je ziet dat de histogram pieken vrijwel perfect over elkaar heen vallen na een kleine achtergrond correct van het groene kanaal. Bij green, heb ik de bg slider op 1,002 gezet. Dat betekent in feite dat groen 2/1000 ste lager is gezet. Het is handig om in meerdere achtergrond gebieden in de opname deze verificatie te doen zodat je goed ziet of de achtergrond echt neutraal is. De initiele achtergrond correctie is al heel goed, maar hoeft zeker niet perfect te zijn. De dispersie van de kleurkanalen, dat wil zeggen de spreiding van intensiteiten tov de achtergrond waarde, is sterk gerelateerd aan de ruis in de kanalen en dat heeft ook altijd een invloed op de initiele achtergrond calibratie.

    #10085
    Haverkamp
    Participant

    Stap 6) is het verder aanpassen van de multipliers per kanaal om de ster en nevel kleuren naar smaak te krijgen.

    In dit proces wil je de histogrammen goed in de gaten houden en inzoomen op gebieden met veel sterren om de histogrammen te zien van die stergebieden. Er zijn een paar zaken die je kunnen helpen om tot een goede kleur calibratie te komen, dwz een calibratie die jij mooi vindt of die volgens jou “correct” is.

    – Om de sterren als geheel neutraal te maken moeten de histogrammen aan de rechterkant ongeveer een zelfde hoogte hebben/krijgen.

    – de pieken van de histogrammen moeten op ongeveer dezelde plek blijven.

    – en je wilt spelen met de kleur ratios R/G en B/G en proberen ratios te vinden zodat groen niet zichtbaar wordt, maar de boel ook niet te paars wordt. ( Ik schijn vaak een beetje paarse opnames te maken… dat ligt denk ik ook aan wat ik zelf mooi vind en dat is dus niet goed of fout in mijn optiek ).

    Dus na een tijdje spelen met de sliders per kanaal, ben ik tot het volgende resultaat gekomen, screenshot en een JPG als output.

    #10088
    Haverkamp
    Participant

    Stap 7) ik vond het op dit moment tijd om te werken aan de compositie van de afbeelding. Het leek mij mooi om de afbeelding bijna 90 graden tegen de klok in te draaien en dan mooi de horsehead nebula met de ringvorminge nevel daarboven in beeld te hebben.

    Dus ik heb de afbeelding eerst geroteerd. Astro Pixel Processor heeft een batch rotate/resize tool waarbij je alle mogelijke transformaties kan toepassen en kan kiezen uit geschikte resampling algoritmes. Je kan de afbeeldingen tegen de klok in , met de klok mee roteren. Je kan verkleinen en vergroten. Je kan flippen in de x of y richting van de opname. In beide richtingen flippen is hetzelfde als 180 graden draaien. En je kan kiezen uit alle resampling algoritmes die in APP zitten. Voor sterke verkleining krijg je bijvoorbeeld meestal betere resultaten met Catmull-Rom spline interpolatie, en voor dezelfde grootte of groter krijg je over het algemeen de beste resultaten met Lanczos interpolatie, te kiezen tussen Lanczos-3 en Lanczos-4. Door verschillende algoritmes te proberen zie je zelf wat het mooist is op pixelniveau, want je moet wel goed inzoomen om de verschillen duidelijk te zien.

    In APP heb je voor Catmull-Rom Spline en Lanczos interpolatie de keuze uit versies waarbij de algoritmes worden beschermd tegen under & over shooting. Die hebben de toevoeging NUOS ( No Under Over Shoot). Voor het resamplen van een afbeelding in deze tool wil je vrijwel altijd deze NUOS versies gebruiken anders krijg je mogelijk artefacten door under of overshoot. Under shoot kan bijvoorbeeld erg zwarte pixels geven bij de randen van kleine scherpe sterretjes. Met de NUOS algoritmes voorkom je dit ;-) en behoud je tevens de kwaliteit van deze algoritmes.

    Na de rotatie is er opnieuw gecropt om het uiteindelijke beeldveld te krijgen. Zie screenshot 2.

    #10092
    Haverkamp
    Participant

    Stap 8) pixelpeepen op de sterren (met veel saturatie) toont dat de sterren niet helemaal  rond zijn en ook niet vrij zijn van optische aberraties zoals chromatische aberratie en coma. Rutger had ook al duidelijk aangegeven dat de opnames niet perfect gevolgd zijn, met wat ovale sterren tot gevolg. De ovale sterren kan APP op dit moment nog niet corrigeren, maar aan de gekleurde randjes kunnen we zeker wat doen. Er zijn meerdere opties.

    1) Als de opnames sterke chromatische aberratie bevatten kunnen we de kleurkanalen uitlijnen met een speciaal ontwikkelde registratie module tegen chromatische aberratie. Dit registratie model is compleet anders dan degenen die worden gebruikt voor de normale registratie van opnames. Dit model kan zowel longitudinale als wel transversale chromatische aberratie goed bestrijden, ook als deze niet symmetrisch in de opnames zit. Het model is door mijzelf ontwikkeld op basis van recente literatuur over de vormen van chromatische aberratie. Ik heb het geprobeerd op deze stack, maar het levert weinig winst op. De chromatische aberratie is niet groot.

    In getallen:

    afwijking van Rood ten opzicht van Groen is 0.35 pixel en na correctie 0,22 pixel.

    afwijking van Blauw ten opzichte Groen is 0,24 pixel en na correctie 0,15 pixel.

    Er wordt dus wel wat gecorrigeerd, maar deze correctie is echt nauwelijks te zien.

    Ik heb wel een voorbeeld van een opname waarbij er een hele grote en duidelijke correctie plaatsvind. Dus die toon ik tussendoor ter illustratie:

    Dit is een opname van Dominique Dierick van  IC405, AE-auriga ook wel de Flaming Star Nebula gemaakt met een Nikon D810a achter een Skywatcher Esprit 150ED met daartussen een TS 0,79x reducer.

    De CA is in dit geval groter dan 1 pixel en na correctie kleiner dan 0,2 pixel, voor zowel Rood als Blauw t.o.v. Groen. Dat is een correctie die je heel goed ziet.

    Screenshots voor en na correctie:

    #10096
    Haverkamp
    Participant

    Stap 8b) Wat kunnen we meer doen aan de gekleurde sterranden in de opname van Rutger Bus?

    We zien vooral cyan gekleurde sterrandjes in de opnames. Dit kunnen we heel goed corrigeren met de “selective color” tool die in APP zit.

    Deze tool werkt ook probleemloos op lineaire data, in tegenstelling tot selective color tools uit andere programma’s zoals bijvoorbeeld Adobe Photoshop. We hoeven de data dus niet te stretchen om de cyan randjes te corrigeren.

    Screenshots van een sterke zoom op de sterren, voor en na de cyan correctie met de “selective color” tool. Om de verschillen duidelijk te maken is de saturatie flink opgeschroefd. En let op ;-) , de data is dus nog steeds niet gestrecht, de screenshots tonen enkel de stretch preview.

    #10100
    Haverkamp
    Participant

    Stap 9) Met de “selective color” tool heb ik 2 iteraties gedaan om een aantal kleuren wat te veranderen. De screenshots spreken voor zich denk ik, maar ik heb aan bijna alle schuifjes getrokken om wat kleine aanpassingen te doen.

    waaronder:

    – cyan uit rode tinten gehaald

    – groene tinten geneutraliseerd door magenta toe te voegen

    – magenta roder gemaakt ( zie je in de rode nevel )

    Met een selective color kan je op deze manier je opnames flink aanpassen en storende kleuren/randjes verwijderen dan wel sterk corrigeren.

    Deze implementatie in Astro Pixel Processor is speciaal voor astronomie foto’s gemaakt. Dit houdt in dat de selective color een gecorrigeerde schatting van de kleur van een pixel maakt. Als je dit niet doet (bijvoorbeeld de selective color in Adobe Photoshop) dan krijg je veel meer chromatische ruis in de lichtzwakkere delen (gebieden met lagere Signaal tot Ruis verhouding) van je opname die je wilt aanpasssen.

    Screenshots van iteratie 1 en 2:

    #10105
    Haverkamp
    Participant

    Stap 10) de laatste stap, we gaan nu de data stretchen, wat saturatie toevoegen maar niet in de achtergrond, contrast iets verhogen en iets verscherpen terwijl we de sterren beschermen.

    Dit is dus 1 enkele stretch in de post-processing ;-)

    Als laatste 4 JPGS,

    1) alleen DDP stretch

    2) DDP met saturatie

    3) DDP met saturatie en contrast

    4) DDP met saturatie en contrast en lichte verscherping , dit is tevens het eindresultaat ;-) van deze post-processing.

    Heb je ideeen en/of tips? Ik hoor ze graag om mee te nemen in mogelijke verdere ontwikkeling van tools voor post-processing in Astro Pixel Processor.

    Een volgend draadje zal zeer waarschijnlijk uitgebreid ingaan op het daadwerkelijk maken van een stack, dus data calibratie, registratie, normalisatie en het stacken ;-)

    Alle reacties zijn welkom ;-) !

    #10106
    Groenewold
    Participant

    Echt heel mooi alvast! Denk dat mensen wel wat moeite hebben met de terminologie van de verschillende technieken (de algoritmen bijv.). Als in, velen zullen die niet kennen en wat is dan het beste te kiezen. Wellicht is dat nog iets te verduidelijken?

    edit: Hoewel, je schrijft het eigenlijk zelf al, kwestie van proberen. :) Ik denk wel dat het handig zou zijn, in de handleiding van het programma, om wat afbeeldingen te hebben welke duidelijk baat hebben bij de ene of het andere algoritme. Om zo een gevoel te kunnen krijgen waar je op kan letten.

    #10109
    MauriceToet
    Participant

    Fantastisch resultaat! Bedankt voor je uitvoerige uiteenzetting. Het programma gaat zeker in de smaak vallen.

Viewing 15 posts - 1 through 15 (of 19 total)
  • You must be logged in to reply to this topic.
Scroll to Top