Tool zum Berechnen des Signal zu Rausch Verhältnis

  • Moin,
    ich habe die letzte Woche einiges an Theorie zum Signal zu Rausch Verhältnis gelesen und versucht das alles in einem einfachen Online Tool umzusetzen. Ich habe hier den Fokus auf einer einfachen Bedienung gelegt. Auch jemand, der nicht so sehr in der Theorie steckt, sollte es bedienen können.


    http://drbacke.de/2016/03/07/test/


    Ihr müsst folgende Daten eingeben:
    Kamera (bisher habe ich 8 Kameras zur Auswahl)
    Sensortemperatur
    Helligkeit des zu beobachtenden Objekts
    Teleskopöffnung
    Lichtverschmutzungsgrad (Stadt, Kleinstadt usw.)
    CLS Filter in Benutzung?
    Dark und Bias verwendet?


    Mehr wird nicht benötigt. Ihr bekommt dann einige Diagramme ausgegeben: Das Signal zu Rausch Verhältnis und auch die einzelnen Rauschterme.


    Das Tool ist dazu gedacht, eine Idee davon zu bekommen, welche Belichtungszeit und auch ISO sinnvoll ist. Zudem kann man ausprobieren, was ein größeres Teleskop ausmacht oder eine andere Kamera. Spannend ist auch der Vergleich zwischen Nikon und Canon Kameras, die sich bei den ISO Zahlen völlig anders verhalten. Bei Nikon sind kleine ISO Zahlen meist von Vorteil, bei Canon eher höhere.
    Schaut es euch einfach mal an und berichtet mir. Für Vorschläge und Anregungen bin ich natürlich offen.
    PS. Es war extrem viel Arbeit, also bei Kritik: Bitte konstruktiv bleiben.
    Falls ihr eure Kamera auch gerne dabei haben möchtet, schreibt mich an.

  • Hallo Andreas,


    habe kurz mal in der Mittagspause mit dem Tool gespielt.
    Setzt man den Haken bei Background/Bias vernessert sich das S/N, insbesondere der Wert des thermischen Rauschens, und zwar erheblich.
    Normalerweise fügt die Bildkalibration (Bias, Background und Flat) zusätzliches Rauschen ein, dass man durch Mittelbildung und Verwendung von Masterflats allenfalls minimieren kann. Verbessern kann man das S/N der Rohdaten durch Untergrundabzug jedenfalls nicht.
    Die Kalibration kann nur das "fixed pattern" entfernen, aber das ist ja ohnehin durch die verwendeten Formeln nicht erfasst (und das ist gut so)
    Da jeder unterschiedlich viel Zeit in die Kalibrationsaufnahmen steckt, würde ich diesen Punkt eher aus der Berechnung weglassen.


    Viele Grüße
    Norbert

  • Moin Norbert,
    ja das stimmt, die Modellierung vom Bias/Dark ist zugegeben auch totaler Quatsch.
    Ich habe dort einfach nur ReadNoise und Thermal Noise reduziert und das ist sicherlich nicht das Richtige, bzw. alles andere als allgemein gültig.
    Werde ich später entfernen.
    Allerdings werden die Rauschterme schon kleiner, wenn man Bias und Darks benutzt. Bei Flats ist das nicht der Fall, sonder sogar eher im Gegenteil.


    Beim CLS Filter wird das eigentliche Signal auch nicht reduziert. Leider habe ich da gar keine Ahnung, wie viel weniger Signal durchkommt. Daher wird die Einschätzung auch etwas zu positiv ausfallen.

  • Andreas,


    das tut mir jetzt echt leid, aber ich glaube Du must nochmal nachrechnen. Bei Dir steigt das thermische Rauschen bei längeren Belichtungszeiten immer an (obwohl Du konstante Temperatur annimmst).
    Der Dunkelstrom verhält sich nicht anders, als Hintergrund und Signal, er steigt mit der Zeit an, und rauscht mit der Wurzel. Die Zerlegung kann da nicht die Wurzelkurve zeigen. Der Theorie nach, und nur die steckst Du ja in die Betrachtung rein, kann bei festem ISO das S/N auch nicht zu längeren Zeiten abfallen. Das Optimum für kürzeste Zeiten bei der ungekühlten Ha Aufnahme kann nicht stimmen !


    In deiner Theorie hast Du beim thermischen Rauschen in deinem Beispiel auch nur einen belichtungszeitunabhängigen Wert eingesetzt.
    Ich denke, da gibt es ein Verständnisproblem.
    Es ist natürlich gefährlich, mit PI Skripten den Dunkelstrom zu messen, weil die Canon DSLRs eine interne Offsetkorrektur macht, so dass die Null- Linie konstant bleibt, und der Dunkelstrom sich nur durch höheres Rauschen bemerkbar macht. Wenn man eine CCD hat, stellt sich das Problem so nicht. Bei DSLRs sind raw Daten leider nicht unverrechnet.


    Viele Grüße
    Norbert

  • Also im s/n sollte das definitiv stimmen. Die einzelnen rauschterme berechne ich unabhängig davon, mag sein das dort noch ein dreher drin ist. Ich schaue morgen nochmal rein. Das thermische Rauschen ist bei mir nicht Belichtungsunabhängig. Temperatur und Zeit gehen ein. Steht aber auch dabei.
    Ich denke, dass ich deinen Denkfehler aber verstehe und werde dich morgen gerne aufklären und dir die Formeln erklären. Jetzt erstmal schlafen :)
    Viele Grüße

  • Moin Norbert, dann legen wir mal los:


    Also das gesamte S/N sieht ja wie in folgender Formel aus, wobei n die Anzahl der Bilder ist und N ein Rauschterm als Varianz:
    n*S / Wurzel(n)*Wurzel(N_Signal + N_Background + N_thermisch + N_ReadNoise)


    Nun kann man die Bildanzahl ja in die Wurzel ziehen:
    n*S / Wurzel(n*N_Signal + n*N_Background + n*N_thermisch + n*N_ReadNoise)


    Ok bisher sieht ja alles relativ einfach aus, warum aber ändert sich dann das thermische Rauschen über der Einzelbelichtungszeit?


    Ganz einfach, nehmen wir zuerst mal das Rauschen für das Signal: N_Signal und auch für N_Background gilt:
    N_signal = Varianz_Signal = Standardabweichung_Signal^2 = Signal
    Außerdem ist das Signal linear Abhängig von der Zeit:
    S = I*t*A*QE / Pixel = Varianz_Signal
    Habe ich nun mehrere Bilder n bei verschiedenen Belichtungszeiten, dann bleibt das Signal gleich, zumindest solange die Gesamtbelichtungszeit sich nicht ändert. Egal wieviele Bilder ich nehme, Hauptsache die Gesamtbelichtungszeit bleibt gleich.


    Ok was passiert beim thermischen Rauschen?
    Wir haben eine temperaturabhängige Darknoise Funktion, diese gibt uns die Standardabweichung in Abhängigkeit der Zeit und auch der Temperatur an. Aber es ist die Standardabweichung!! (nicht die Varianz), thermisches Rauschen folgt eben nicht der Poisson Verteilung ! Ich denke hier liegt dein Denkfehler. Man kann leider nicht alles mit der Poisson Verteilung simulieren, schön wärs ^^
    Naja, also schauen wir uns dann mal die Formel für die Varianz des thermischen Rauschens an DN = Darknoise in Abhängigkeit der Temperatur T und t ist die Zeit:
    Var_therm = (DN(T)*t)^2 = N_thermisch
    Ok setzen wir das wieder in unsere S/N Formel ein:
    n*S / Wurzel(n*N_Signal + n*N_Background + n*(DN(T)*t)^2 + n*N_ReadNoise)


    Durch das Quadrat ist also die Varianz des thermischen Rauschens quadratisch abhängig von der Zeit, aber nur linear von der Anzahl der Bilder.
    Daher der Verlauf.

  • Hallo Andreas,


    <blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">Zitat:<hr height="1" noshade id="quote">Var_therm = (DN(T)*t)^2 = N_thermisch<hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">
    Au backe, wo hast Du das denn her ? Das Quadrat ist einfach falsch !


    Schau mal bei den CCD Herstellern rein, zB. hier:
    https://www.uni-muenster.de/im…kodak___noise_sources.pdf
    Bei fast jedem Chip- und jedem Kamerahersteller findest Du ähnliche Beschreibungen.


    Für die Statistik der Erzeugung der CCD/CMOS Dunkelelektronen wird überall in der Literatur die gleiche Beziehung "Sigma=Wurzel(Anzahl)" verwendet.


    Im Übrigen ist es ein Leichtes, das mit einer gekühlten und halbwegs stabilisierten CCD nachzumessen.
    Die Angabe der Kamerahersteller für den Dunkelstrom in e/pix/sec würde auch keinen Sinn ergeben !


    Ich glaube nicht, dass ich hier einen Denkfehler mache, ich sehe hier einen Recherche Fehler deinerseits.


    Viele Grüße
    Norbert

  • Moin Norbert,
    also der Unterschied liegt darin, dass meine Darknoise Funktion dir die Standardabweichung pro Zeit und pro Pixel wiedergibt. In vielen anderen Fällen, wird die Varianz (also der quadrierte Wert) zurückgegeben.
    Daher kommt das Quadrat bei mir zustande und in meinen Augen ist das auch immer noch sinnvoll. Der Rauschterm muss als Varianz eingetragen werden, ansonsten darf man die nicht addieren.


    Dennoch hätte ich vom Verständnis auch gedacht, dass das thermische Rauschen nur von der Gesamtbelichtungszeit und Temperatur abhängt. Ich werde nochmal weiter lesen, leider hilft das Paper von dir nicht weiter, da dort nicht beschrieben ist ob die Varianz oder Standardabweichung verwenden. Naja und da ist noch so einiges nicht beschrieben, was man für diese Diskussion aber benötigt ^^

  • Moin Norbert,
    ich habe jetzt nochmal alles in Ruhe überprüft.



    Der Fehler lag woanders, ich habe ja selbst schon geschrieben:
    <blockquote id="quote"><font size="1" face="Verdana, Arial, Helvetica" id="quote">Zitat:<hr height="1" noshade id="quote">N_therm steigt linear mit der <b>Gesamtbelichtungszeit</b> <hr height="1" noshade id="quote"></blockquote id="quote"></font id="quote">


    Dann sollte man sich auch im Programm daran halten ^^ Ich war etwas faul und hab die Bilderanzahl einfach an den gesamten Rauschterm multipliziert. Dabei gehört die Gesamtbelichtungzeit in die Dark Noise Funktion und die Bildanzahl dann nicht mehr. Die Bilderanzahl sollte nur im Read Noise direkt auftauchen. So passt es dann t = Gesambelichtungszeit):
    S(t) / Wurzel(N_Signal(t) + N_Background(t) + (DN(T)*t)^2 + n*N_ReadNoise)


    Das wars dann auch schon.



    Ich habe auch alle Beispiele upgedatet. Prinzipiell hat sich aber an den meisten Aussagen nicht viel geändert, da das Thermische Rauschen nur einen kleinen Einfluss hat (naja die Nikons sehen jetzt netter aus). Bei H-Alpha+lichtschwachen Objekt bringt die Kühlung immer noch immens viel, da das thermische Rauschen dann dominiert.

  • Ich schon wieder...[:)], diesmal ohne Gemecker,dafür mit was ganz anderem:
    Die Graphen verhalten sich vollkommen plausibel, suggerieren aber dem Betrachter, dass die hohe Isozahl meist förderlich oder zumindest nicht schädlich ist.
    Der Hinweis auf die fehlende Dynamik wird im Text genannt, aber vielleicht könnte man das ja auch graphisch darstellen.


    Wenn man zum Beispiel 900 sek bei ISO100 belichtet, und es mit dem "Ausbrennen" gerade losgeht, dann dürfte man bei ISO200 ja nur halb so lang belichten usw. d.h. die entsprechende Kurve müsste dann einfach aufhören, so dass man dieses maximal erreichbare S/N der verschiedenen ISO Settings vergleichen kann. Dann "gewinnt" nämlich auch mal die kleinere Isozahl, vor allem bei den neuen Nikons.
    Die Intensitätsinformation ist ja eigentlich schon vorhanden, ebenso wie die Kapazitätsinfo der Kamera.


    Vielleicht vereinfacht es die Handhabung, wenn man eine eigene Maximalbelichtung/ISO Einstellung eingibt (die kennen die meisten aus Erfahrung, also zB "3 Minuten bis ISO400), bei der das Bild zu hell wird. Dann könnte man die Ausgabe des S/N auf den für jede ISO Zahl erreichbaren Wertebereich einschränken.


    Viele Grüße
    Norbert

  • Moin Norbert,
    guter Tipp. Ich bin gerade dabei das umzusetzen. Ist mit dem Chart leider nicht so ganz einfach, du kannst es dir ja mal anschauen.
    Die Linien habe ich an der Stelle unterbrochen, ansonsten sieht das sehr durcheinander aus.
    An den "Full-Well Stellen" steht immer ein Marker mit Full dabei und zeigt an, bei wie viel ISO und Belichtung das passiert ist. Eigentlich macht es ja keinen Sinn mehr darüber hinaus zu belichten.
    Bisher klappt es nur bei der 1200D, die anderen Daten muss ich noch einpflegen.
    Die einzelnen Rauschterme habe ich momentan entfernt, da ich das Chartsystem komplett umgestellt habe und noch keine Zeit hatte den Rest umzusetzen.
    Du kannst ja mal reinschauen und mir sagen, ob das so passt oder nicht. Da habe ich keine Erfahrung.


    Viele Grüße
    Andreas

  • Hallo Andreas,
    ich habe mir dein SNR-Berechnungstool angeschaut und habe ein paar Bemerkungen dazu. Prinzipiell ist es ok., aber die Berechnung der ankommenden Photonen und somit des Signals ist nicht korrekt. In deiner pdf und der Berechnung gehst du davon aus, dass die Photonen des Objekts (Stern) sich gleichmäßig auf alle Pixel des Sensors verteilen. Dies ist aber nicht so. Die ankommenden Photonen des Sterns werden auf einige wenige Pixel (in Abhängigkeit vom Sampling und dem Seeing) fokussiert. Sagen wir mal das Seeing beträgt 3", dann ist der Spot bei 3000mm Brennweite etwa 44um im Durchmesser. Bei 5um Pixelgröße, teilen sich in erster Näherung etwa 61 Pixel die ankommende Intensität. Als Hausnummer sollte die Grenzgröße mit SN3 dann bei etwa 16mag liegen. Außerdem ist die Quanteneffizienz nicht so einfach abzuschätzen, da die bei sensorgen.info angegebenen QE von 50% die Bayer-Farbmaske nicht adäquat einschließt. Jeder farbige Subpixel detektiert ja jeweils nur 2xRot, 1xGrün und 1xBlau, sodass die sich ergebende Quanteneffizienz des farbigen "Über"Pixels wahrscheinlich eher bei 15-20% liegt.
    Gruß Tino

  • Moin Tino,
    also es freut es mich sehr, dass meine Arbeit für dich "prinzipiell Ok" ist ... Es war sogar sehr viel Arbeit möchte ich hinzufügen ;)


    Zum Thema: Die Berechnungen beziehen sich auf einen Pixel und bei diesem Pixel gehe ich davon aus, dass er vollständig vom Signal getroffen wird. Du hast aber Recht, dass das Gesamtsignal durch alle Pixel geteilt wird, also gehe ich von einer gleichmäßigen Verteilung aus und rechne diese runter auf einen Pixel. Vorher gab es die Möglichkeit einen prozentualen Flächenanteil auf dem Sensor einzugeben. Ich habe mich mit Norbert allerdings auf diese Ein-Pixel Formulierung geeinigt, da sie so deutlich einfacher ist und am grundlegenden Verhalten des Tools nicht viel ändert. Spannend wäre es natürlich, wenn man genauere Daten zum Objekt selbst hätte, also wie viele Pixel nimmt das Objekt tatsächlich auf dem Sensor ein. Das ist aber mit wenig Eingaben aber nicht mehr zu machen, höchstens über ein prozentuales Flächenmaß, dieses ist aber wieder relativ ungenau. Ich kann es optional aber gerne einbauen, wenn es das ist was du meintest.


    Falls du einen besseren Wert für die QE hast, dann nehme ich diesen gerne und trage ihn ein. Ansonsten bleibe ich erstmal bei den Werten von sensorgen.




    <b>Nachtrag:</b>
    Ich habe mir das nochmal in Ruhe angeschaut und im Prinzip könnte man einfach die scheinbare Objektgröße als Winkelmaß angeben. Die bekommt man ja eigentlich überall her, dann bräuchte ich ja nur noch die Brennweite und könnte mir so die Größe auf dem Sensor bestimmen. Ich werde das heute oder morgen einbauen.

  • Hallo Zusammen,


    ich denke, man muss den Anspruch an ein solches Tool etwas beschränken. Dafür sind zu viele Unbekannte im Spiel. Trotzdem sollte man das relative Verhalten bei Ändern der Aufnahmeparamter des eigenen Setups, oder bei Verwendung einer anderen Kamera ablesen können. Ein Tool, dass mir exakte Vorgaben für die DSLR Einstellung macht, müsste ja noch viel mehr berücksichtigen, einschließlich individueller Kameraeigenschaften und des verwendeten Workflows.
    Insofern beantwortet das Tool schon mal einige Fragen, die ja immer wieder gestellt werden: Was bringt die Änderung der Zerlegung in Teilaufnahmen, was bringt die ISO Zahl und ist das S/N überhaupt in einem brauchbaren Bereich.


    Die kritischste Stelle ist meines Erachtens die Abschätzung der absoluten Hintergrundhelligkeit, und indirekt die Dynamik des Bildes
    (also wieviel Platz lasse ich nach oben für Sterne oder hellere Objektbereiche). Dadurch ändert sich ja der Bereich, an dem ich die Sättigung für die ISO Werte berücksichtigen muss.
    Kreativer Input wäre da willkommen.

    Jetzt muss man einfach mal einen Schritt nach dem andern machen.


    Ein zweiter sinnvoller Nebeneffekt wäre, dass man ja endlich mal eine Kameradatenbank anlegt, bei der auch der Dunkelstrom erfasst wird. Sensorgen lässt den einfach weg, obwohl er sich bei manchen Kameras um Faktoren unterscheidet.


    Viele Grüße
    Norbert


    PS: Andreas, es gibt je nach Parametern unterschiedliche Skalen und Skalenbeschriftungen (mal Einzelbelichtungszeit und manchmal Elektronen/s auf der x-Achse), da ist noch irgendwas durcheinander.

  • Hallo Andreas,
    bitte nicht falsch verstehen. Mit "Prinzipiell ok" meinte ich, dass die qualitative Form ber Kurven schon simmt, auch die Aufbereitung in Form deines Berechnungstools. Trotzdem ist es wichtig, dass das SN möglichst der Realität entspricht, sodass man beispielweise abschätzen kann, wie lange man für ein "Zielobjekt" belichten müsste. Vielleicht könnte man die erwartete Spotgröße in Bogensekunden angeben und dann die Anzahl der beleuchteten Pixel ausrechnen und anschließend die Intensität, welche auf den Pixeln landet. Hier wäre auch zu sehen, dass das SN sehr stark davon abhängt, wie groß der Spot eigentlich ist und wie groß die Pixel im Verhältnis dazu sind. Dies ist natürlich hauptsächlich für Sterne (Punktquellen) notwendig. Bei flächigen Objekten wird ja im Gegensatz dazu die Flächenhelligkeit (mag/")verwendet, welche sich natürlich einfacher in die auftreffende Intensität pro Pixel umrechnen lässt. Ist zwar auch wichtig, aber das SN lässt sich im realen Bild viel besser an einer Punktquelle kontrollieren.
    Gruß Tino

  • (==&gt;)Tino:
    Ich habe das jetzt umgesetzt, man kann die Größe des Objekts in Bogenminuten eingeben. War einfacher als gedacht, ich habe mir das schwieriger vorgestellt ^^ Theoretisch könnte man das sogar noch an die Simbad Datenbank koppeln, aber ich glaube das ist mir zuviel Arbeit. Die Winkelausdehnung findet man ja sogar in Wikipedia für die meisten Objekte.
    Das Rauschen für den Himmelshintergrund habe ich allerdings immer noch durch die Gesamte Pixelanzahl geteilt, da sich daran durch die Objektgröße nichts ändern sollte? Also pro Pixel.


    (==&gt;)Nobbi: Da gebe ich dir Recht, es werden ja extrem viele andere Dinge nicht berücksichtigt, deswegen sollte man das Tool natürlich immer mit einer gewissen Vorsicht genießen. Ich denke es eignet sich eher dazu, die ersten Einstellungsparameter zumindest mal grob einzugrenzen.
    Das mit den Beschriftungen sehe ich irgendwie nicht, bei welchen Parametern ist das passiert, könntest du das nochmal genauer beschreiben? Den Dark Current für die bisher vorhandenen Modelle habe ich ja bereits von Clarkvision bekommen, leider sind es nicht unbedingt die gängigsten Modell. Deswegen wäre da ein paar mehr Kameras wirklich eine tolle Sache.


    (==&gt;)all: Seid so nett und überprüft die Werte mal kurz auf Plausibilität, langsam wird es nämlich etwas unübersichtlich.
    Besonders der Himmelshintergrund, wie gesagt den habe ich mehr oder weniger selbst abgeschätzt.
    Was mir ebenfalls noch fehlt, ist sowas wie ein "Teleskopwirkungsgrad". Im Prinzip kommt ja nicht wirklich soviel Licht bis an den Sensor, wie ich annehme. Es geht ja jede Menge vorher verloren, das wird bisher gar nicht berücksichtigt. Das würde die Full Well Grenze natürlich deutlich verschieben. Ich weiß aber nicht, ob man hier noch allgemeine/einfache Aussagen treffen kann.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!