Hoe stacken echt werkt (en waarom meer frames niet altijd beter is)
Stacken is niet het middelen van foto's. Het is een signaal-ruisargument met specifieke manieren om te mislukken - en frames toevoegen houdt op een gegeven moment op met helpen.
Vraag waarom we astrofoto’s stacken en je krijgt meestal “om ruis te verminderen”. Dat is waar en bijna nutteloos, want het vertelt je niet hoeveel frames je nodig hebt, waarom jouw stack van 200 er slechter uitziet dan andermans stack van 60, of waarom nog een uur toevoegen soms helemaal niets verandert.
Het echte argument is kort, en als je het eenmaal hebt, beantwoorden de meeste stackbeslissingen zichzelf.
Signaal telt op. Ruis niet.
Richt je telescoop op een nevel en maak een belichting. Elke pixel ontvangt een aantal fotonen van de hemel. Dat aantal ligt niet vast - fotonen komen willekeurig aan, en het aantal varieert van belichting tot belichting met ruwweg zijn eigen vierkantswortel. Vang 100 fotonen en de variatie tussen frames is ongeveer 10. Vang er 10.000 en het is ongeveer 100.
Stack nu N frames. Het signaal - het echte aantal fotonen van het object - telt lineair op: N keer zoveel. De ruis is willekeurig en heft zichzelf deels op, en groeit alleen als de vierkantswortel van N.
De verhouding signaal tot ruis verbetert dus met √N.
Die ene relatie verklaart het meeste van wat je waarneemt:
- 4 frames is twee keer zo goed als 1.
- 16 frames is twee keer zo goed als 4.
- 64 frames is twee keer zo goed als 16.
Elke verdubbeling van kwaliteit kost vier keer zoveel frames. Daarom is het verschil tussen 10 en 40 frames dramatisch en het verschil tussen 200 en 260 onzichtbaar. Je doet niets verkeerd als de tweede je teleurstelt - je hebt 30 % meer frames toegevoegd voor 14 % verbetering, en 14 % zit onder wat het oog betrouwbaar opmerkt.
Wil je een zichtbare stap omhoog vanaf een stack van 200 frames, dan heb je er ongeveer 800 nodig.
En daarom bepaalt uitleesruis je sub-lengte
Er is een tweede ruisbron die zich niet zo gedraagt. Elke keer dat de sensor wordt uitgelezen, voegt de elektronica een vaste straf toe. Die hangt niet af van de belichtingstijd - een frame van 5 seconden en een frame van 500 seconden betalen hem elk precies één keer.
Een gegeven totale integratietijd draagt dus uitleesruis in verhouding tot in hoeveel frames je hem opdeelt. Negentig minuten als 540 subs van tien seconden betalen de straf 540 keer. Dezelfde negentig minuten als 18 subs van vijf minuten betalen hem 18 keer.
Dit is het hele argument voor langere sub-belichtingen, en het is waarom een gegidste opstelling op zwakke objecten wegloopt van een slimme telescoop, zelfs bij identieke totale tijd. Het is niet dat de gegidste opstelling meer licht verzamelt. Hij leest de sensor dertig keer minder vaak uit.
De tegendruk is dat lange subs goede volging nodig hebben, en een frame van 300 seconden met strepen is niets waard. De juiste sub-lengte is de langste die je montering betrouwbaar levert - een mechanische vraag, geen bewerkingsvraag.
Uitlijning is waar stacks werkelijk verloren gaan
Het √N-argument gaat ervan uit dat elk frame hetzelfde signaal aan dezelfde pixel bijdraagt. Dat vereist dat de frames op elkaar liggen, en dit is waar de meeste teleurstellende stacks werkelijk mislukken.
Frames bewegen tussen belichtingen. Drift van de montering, refractie nabij de horizon, doorbuiging, en - op elke azimutale montering, dus elke slimme telescoop - veldrotatie. In een uur kunnen frames van het begin en het einde tientallen graden ten opzichte van elkaar gedraaid zijn.
Uitlijning die alleen verschuiving aankan, redt het niet. Erger is hoe het mislukt: niet met een foutmelding, maar met een stack waarin alles licht uitgesmeerd is. Het lijkt op slechte scherpstelling of slechte seeing, en mensen jagen een seizoen lang op het verkeerde probleem.
Goede registratie werkt vanuit de sterren zelf. Bouw driehoeken uit de helderste sterren in elk frame en beschrijf ze met zijdeverhoudingen - grootheden die verschuiving, rotatie en schaal overleven. Overeenkomende driehoeken stemmen over welke ster met welke correspondeert, een robuuste fit gooit tegenstrijdige stemmen weg, en een verfijningsronde trekt het resultaat naar subpixel-nauwkeurigheid.
Dat laatste is belangrijk. Subpixel-nauwkeurigheid is geen luxe; een consistente fout van een halve pixel over je stack kost je hetzelfde detail dat je bij iets slechtere seeing had verloren.
Afkeuring: het deel dat weghaalt wat middelen niet kan
Middelen behandelt willekeurige ruis. Het behandelt niet wat niet willekeurig is: satellieten, vliegtuigen, kosmische straling, koplampen van een auto die door het veld zwaaien.
Middel 100 frames waarvan er één een satellietspoor heeft en het spoor is er nog steeds op 1 % sterkte - zwak, maar zichtbaar tegen een donkere hemel, en het overleeft het strekken.
Afkeuring haalt het weg door per pixel over de stack te kijken en waarden weg te gooien die er niet thuishoren. De methoden verschillen in wat “niet thuishoren” betekent, en de keuze is niet willekeurig:
Sigma clipping neemt gemiddelde en standaardafwijking per pixel en laat waarden voorbij een drempel vallen. Het werkt goed en is om goede redenen de standaard - maar het gaat ervan uit dat elk frame dezelfde verdeling bemonstert.
Gewinsoriseerde sigma clipping trekt uitschieters naar de kern toe in plaats van ze te verwijderen. Veiliger bij ondiepe stacks, waar een standaardafwijking schatten uit acht monsters en dan waarden weggooien vaak echt signaal verwijdert.
Linear-fit clipping beantwoordt een andere vraag. Het sorteert de waarden van elke pixel over de stack en past er een lijn doorheen. Een gelijkmatige spreiding - het soort dat veranderende transparantie in de loop van de nacht oplevert - wordt door dat model verwacht en kost niets, terwijl een satellietspoor nog steeds één waarde ver van de lijn is.
Dat onderscheid is belangrijker dan het klinkt. Als er hoge bewolking binnenkomt, of je object naar de lichtkoepel zakt, verschillen de frames echt. De spreiding is echte data, geen ruis. Sigma clipping ziet frames aan de uiteinden van het bereik als uitschieters en begint ze weg te gooien - en die aan de donkere kant zijn meestal de helderste frames van de sessie. Je verliest je beste data aan een methode die aannam dat ze fout waren.
Het signaal om op te letten is hoeveel je hemelniveau per frame verloopt. Is het stabiel, dan is sigma clipping juist. Beweegt het meer dan een paar procent, dan dient een lineaire fit je beter. Akastroid meet dit en schakelt automatisch om boven ongeveer 8 % drift - een beslissing die geen astronomiekennis vereist om goed te zijn, en behoorlijk wat om hem met de hand goed te nemen.
Ondiepe stacks vragen een andere behandeling
Met acht frames kun je geen verdeling schatten. Elke afkeurmethode werkt met te weinig monsters, en agressieve clipping verwijdert echt signaal terwijl ze beweert uitschieters te verwijderen.
Onder ongeveer acht frames is gewoon middelen of een mediaan meestal de eerlijke keuze. Tussen acht en vijftien: winsoriseren. Daarboven wordt echte clipping veilig.
De faalwijze hier is subtiel: agressieve afkeuring op een ondiepe stack levert een beeld op dat er schoon uitziet en stilletjes zwak detail mist. Het ziet er niet kapot uit. Het ziet er een beetje leeg uit, en niets op het scherm vertelt je waarom.
Wanneer meer frames echt niet meer helpen
Drie gevallen waarin het volgende uur je niets oplevert:
Je bent beperkt door uitleesruis. Bij zeer korte subs wordt de ruisvloer bepaald door het uitlezen, niet door hemelfotonen. Stacken helpt nog, maar je vecht tegen een vaste kostenpost die meer frames niet weghalen. Langere subs wel.
Je bent hemelbeperkt op een zwak object. Onder heldere hemels domineert de achtergrond, en de zwakke buitengebieden van je object komen er misschien gewoon nooit bovenuit. De signaal-ruisverhouding verbetert nog steeds als √N - maar √N van “nauwelijks detecteerbaar” is nog steeds nauwelijks detecteerbaar. Donkerdere hemels of smalbandfilters veranderen dit; meer tijd niet.
Je uitlijning is de limiet. Als registratie fouten van een halve pixel achterlaat, voegt meer frames toevoegen meer licht verkeerd geregistreerde data toe. De stack wordt gladder en niet scherper. Dit is het waard om te controleren voordat je de hemel de schuld geeft.
Een werkbaar antwoord
- Sub-lengte: de langste die je montering betrouwbaar volgt. Dit domineert uitleesruis, en uitleesruis domineert zwakke objecten.
- Aantal frames: denk in factoren van vier. Wil je een zichtbare verbetering, plan dan om te verviervoudigen, niet om er wat bij te doen.
- Registratie: moet rotatie aankunnen. Niet onderhandelbaar op elke azimutale montering.
- Afkeuring: pas het aan op de diepte van je stack en de stabiliteit van je nacht.
- Ken je limiet: uitleesruis, hemelhelderheid of uitlijning. Frames toevoegen helpt alleen bij de eerste twee, en alleen langzaam.
Niets hiervan vereist begrip van wiskunde voorbij √N. Maar het verklaart wel waarom de stack waar je niet blij mee bent, niet blij maakt - en dat is meestal nuttiger om te weten dan nog een schuifregelaar.
Lees het Engelse origineel · Ook in het Deutsch · Español · Français · Italiano · 日本語 · Português (Brasil) · 繁體中文
Probeer het op je eigen data
Akastroid doet alles uit deze gids automatisch, en vertelt je wat het gedaan heeft.
Akastroid downloaden - gratis