Stretching der Bilder

Die Bilder werden als Pixelwerte gespeichert, die von der Kamera kommen und einer quasi-linearen Gesetzmäßigkeit folgen. Das bedeutet, dass für Bereiche des Himmels, die keine sichtbaren Merkmale aufweisen, der Pixelwert nahe bei Null liegt, während er für helle Objekte wie Sterne je nach Belichtung und Verstärkung nahe bei einem Maximalwert liegt. Wenn ein Nebel eine Oberflächenhelligkeit hat, die halb so groß ist wie die eines Sterns, hat er Pixelwerte, die halb so groß sind wie die des Sterns, und so weiter. Dies ist der so genannte lineare Pixelmodus.

Das menschliche Auge sieht Photonen nicht auf die gleiche Weise. Es verstärkt dunkle Bereiche, so dass ein Objekt, das vielleicht ein Zehntel so hell ist wie ein anderes, nur halb so hell erscheint. In der Astronomie werden Bilder in der Regel mit einer ähnlichen Pixelwert-Skalierung angezeigt (siehe Anzeigemodi in der grafischen Benutzeroberfläche).

Es handelt sich jedoch nur um einen Anzeigetrick, bei dem eine Bildschirmübertragungsfunktion verwendet wird, um die Pixelwerte des unveränderten Bildes in besser aussehende Bilder umzuwandeln.

Beim Stretching geht es darum, etwas Ähnliches zu tun, indem die Pixelwerte von Bildern geändert werden, anstatt nur ihre Darstellung zu verändern. Siril verfügt über drei Hauptwerkzeuge, um dies zu erreichen.

Asinh-Transformation

Die asinh-Transformation (inverser hyperbolischer Sinus) verändert die Pixelwerte des Bildes in ähnlicher Weise wie die asinh-Pixelskalierungsfunktion, die durch die Schieberegler für niedrige und hohe Werte parametrisiert wird. Hier sind die Parameter der Streckungsfaktor und der Schwarzpunktwert.

Asinh für ein monochromes Bild

Dialogbox der Asinh-Transformation

Bei monochromen Bildern werden die Pixelwerte nach der folgenden Funktion geändert:

\[\text{Pixel} = \frac{(\text{Original} - \text{Schwarzpunkt})\times\text{Asinh}(\text{Original}\times\text{Streckung})}{\text{Original}\times\text{Asinh}(\text{Streckung})}\]

Für Farbbilder lautet die Funktion:

\[\text{pixel} = \frac{(\text{original} - \text{blackpoint})\times\text{asinh}(\text{rgb}\_\text{original}\times\text{stretch})}{\text{rgb}\_\text{original}\times\text{asinh}(\text{stretch})}\]

wobei rgb_original unter Verwendung der Pixelwerte der drei Kanäle berechnet wird.

A clipping mode can also be set.

Theorie

Da rgb_original ein Durchschnitt der drei Kanäle ist, sind ein oder zwei Kanalwerte größer als rgb_original und können daher abgeschnitten werden. Dies kann zu Farbartefakten führen, wenn helle, farbintensive Bereiche gestreckt werden. Um dieses Problem zu vermeiden, wurde von den Autoren des ursprünglichen GHSastro-Tools der RGB-Blend-Clipping-Algorithmus entwickelt: Die gleichen Algorithmen sind in der Siril-Implementierung verfügbar, und dies ist der Standard-Clipping-Modus für Streckungen, die eine Clipping-Behandlung erfordern. Die Werte \((r, g, b)\) werden zunächst auf der Grundlage des Luminanzwertes rgb_original gestreckt, um \((r', g', b')\) zu erhalten. Dann werden die ursprünglichen Werte \((r, g, b)\) unabhängig voneinander gestreckt, um \((r'‚, g‘', b'')\) zu erhalten. Schließlich wird der größte Wert von \(k\) so identifiziert, dass

\(k \times r' + ( 1 - k ) \times r'' ≤ 1\);

\(k \times g' + ( 1 - k ) \times g'' ≤ 1\);

und

\(k \times b' + ( 1 - k ) \times b'' ≤ 1\)

Dann werden die transformierten Werte wie folgt berechnet

\(( k \times r' + ( 1 - k ) \times r'', k \times g' + ( 1 - k ) \times g'', k \times b' + ( 1 - k ) \times b'')\)

Dieser Algorithmus zum Beschneiden von RGB-Überblendungen wird auch für die weiter unten beschriebenen Generalisierten Hyperbolischen Streckungstransformationen verwendet.

Es stehen weitere Optionen für den Clipping-Algorithmus zur Verfügung:

  • Clip - this clipping mode just allows any colour components that clip to clip, but restricts them to values in the range 0.0 to 1.0. This may suffer from coloured artefacts such as fringes around nearly-saturated stars, but it is extremely quick to calculate.

  • Rescale - this clipping mode checks the R, G and B components of each pixel and if any are > 1.0 it rescales the pixel so that no components are clipped. This method is prone to artefacts and is mainly included for feature equivalence with the GHSastro plugin. It is quick to compute.

  • Global Rescale - this clipping mode behaves similarly to Rescale except that the scaling is computed globally instead of per-pixel. This avoids the kind of artefacts that Rescale can produce, but has a bigger impact on overall image brightness. This is faster than RGB blending to compute but slower than Clip or Rescale.

Wenn die Option „Human-weighted Luminance“ (Menschlich gewichtete Leuchtdichte) nicht aktiviert ist, entspricht rgb_original dem Mittelwert der drei Pixelwerte. Wenn diese Option aktiviert ist, ändert sich die Gewichtung auf 0,2126 für den Rotwert, 0,7152 für den Grünwert und 0,0722 für den Blauwert, wodurch Ergebnisse erzielt werden, die der menschlichen Farbwahrnehmung näher kommen.

Siril Kommandozeile

asinh [-human] stretch { [offset] [-clipmode=] }
Streckt das Bild, um schwache Objekte mithilfe einer hyperbolischen Arcussinus-Transformation anzuzeigen. Das obligatorische Argument stretch, normalerweise zwischen 1 und 1000, gibt die Stärke der Streckung an. Der Schwarzpunkt kann verschoben werden, indem ein optionales Argument offset im normalisierten Pixelwert von [0, 1] angegeben wird. Schließlich ermöglicht die Option -human die Verwendung der Lichtempfindlichkeit des menschlichen Auges zur Berechnung der Leuchtdichte, die zur Berechnung des Streckungswerts für jedes Pixel verwendet wird, anstelle des einfachen Mittelwerts der Kanalpixelwerte. Diese Streckungsmethode bewahrt die Helligkeit des L*a*b*-Farbraums. Der Clip-Modus kann mit dem Argument -clipmode= eingestellt werden: Werte clip, rescale, rgbblend oder globalrescale werden akzeptiert und der Standardwert ist rgbblend.

Transformation Mitteltonübertragungsfunktion (MTF)

MTF ist eines der leistungsfähigsten Werkzeuge zum Strecken des Bildes. Sie kann leicht automatisiert werden, und deshalb wird sie auch in der automatisch gestreckten Ansicht verwendet.

MTF eines monochromes Bildes

Dialogbox der Histogramm-Transformation

Das Werkzeug wird in Form eines Histogramms mit 3 Schiebereglern (in Form von Dreiecken unter dem Histogramm) dargestellt, die wir bewegen müssen, um das Bild zu verändern. Das Dreieck auf der linken Seite steht für den Schattenpunkt, das Dreieck auf der rechten Seite für die Lichter und das Dreieck in der Mitte für die Mitteltonbalance. Die Werte dieser Schieberegler werden unterhalb des Histogramms auf der linken Seite angezeigt und können direkt von Hand verändert werden. Auf der anderen Seite steht der Prozentsatz der Pixel, die durch die Transformation abgeschnitten werden: Es ist wichtig, nicht zu viele Pixel abzuschneiden. Wenn nur der Parameter für die Mitteltöne geändert wird, kann kein Pixel abgeschnitten werden.

Theorie

Die neuen Pixelwerte werden dann mit dieser Funktion berechnet:

(1)\[\begin{split}\text{MTF}(x_p) = \frac{(m - 1)x_p}{(2m - 1)x_p - m}. \\\end{split}\]
  • Für \(x_p=0\), \(\text{MTF} = 0\),

  • Für \(x_p=m\), \(\text{MTF} = 0.5\),

  • Für \(x_p=1\), \(\text{MTF} = 1\),

wobei \(x_p\) der Pixelwert ist wie folgt

(2)\[x_p=\frac{\text{original}-\text{shadows}}{\text{highlights}-\text{shadows}}.\]

Bemerkung

Es wird im Allgemeinen nicht empfohlen, den Wert der Lichter zu ändern, da diese sonst gesättigt werden und Informationen verloren gehen.

Die Symbolleiste enthält viele Schaltflächen, die sich auf die Darstellung des Histogramms auswirken. Sie können wählen, ob das Eingabehistogramm, das Ausgabehistogramm, die Übertragungskurve und das Raster angezeigt werden sollen. Mit der Schaltfläche auto-stretch-button können Sie dieselbe Transformation wie beim Autostretch-Algorithmus anwenden. Es ist selten ratsam, diese Schaltfläche unverändert zu verwenden. In der Regel sind Anpassungen erforderlich, um Informationsverluste zu vermeiden.

Tipp

When the auto-stretch-button button is pressed, the sliders and lo, mid and hi entries will become temporarily inactive. You have to apply the autostretch with the Apply button and the controls will reactivate. You can then apply adjustments as a second follow-up stretch. This behaviour avoids problems where the monitor ICC profile is different to the image ICC profile.

Am oberen Rand des Histogramms kann auch die logarithmische Ansicht ausgewählt werden, wie in der Abbildung gezeigt. Diese Einstellung kann wie unter hier beschrieben als Standard festgelegt werden. Schließlich steht eine Vergrößerung in X-Richtung zur Verfügung. Dies ist sehr nützlich, wenn sich das gesamte Signal auf der linken Seite des Histogramms konzentriert.

Tipp

If a ROI is set, the MTF histogram preview will not update to show the impact of the stretch on the ROI. This is because that behaviour could be misleading: if the ROI is not typical of the image overall, adjusting the ROI histogram to a suitable level would result in a badly adjusted histogram for the overall image and potentially a burned-out or excessively dark look to the result. When in ROI mode the stretch parameters should be adjusted by eye. If it is desired to check the histogram for the stretch as applied to the image as a whole, the ROI should be cleared.

Siril Kommandozeile

mtf low mid high [channels]
Wendet die Mittelton-Übertragungsfunktion auf das aktuell geladene Bild an.

Es werden drei Parameter benötigt: low, midtones und high, wobei der Parameter für die Mitteltonbalance eine nichtlineare Histogrammstreckung im Bereich [0,1] definiert. Für eine automatische Ermittlung der Parameter siehe AUTOSTRETCH.
Optional kann der Parameter [channels] verwendet werden, um die Kanäle anzugeben, auf die die Streckung angewendet werden soll: dies können R, G, B, RG, RB oder GB sein. Die Standardeinstellung ist alle Kanäle

Verweise: autostretch

Bemerkung

mtf ist auch eine Funktion, die in dem Werkzeug PixelMath verwendet werden kann.

Siril Kommandozeile

autostretch [-linked] [shadowsclip [targetbg]]
Streckt das aktuell geladene Bild mit unterschiedlichen Parametern für jeden Kanal (nicht verknüpft), sofern nicht -linked übergeben wird. Argumente sind optional, shadowclip ist der Schatten-Beschneidungspunkt, gemessen in Sigma-Einheiten von der Spitze des Haupthistogramms (Der Defaultwert ist -2,8), targetbg ist der Ziel-Hintergrundwert, der dem Bild seine endgültige Helligkeit gibt. Bereich [0, 1], Defaultwert ist 0,25. Die Defaultwerde werden in der Auto-Stretch-Funktion der grafischen Benutzeroberfläche benutzt.

Verwenden Sie nach der Farbkalibrierung nicht die nicht verknüpfte Version, da sie den Weißabgleich verändert

Anwendung der Transformation auf die Sequenz

Diese Transformation kann leicht auf eine Sequenz angewendet werden. Sie müssen nur die Transformation für das geladene Bild (mit einer bereits geladenen Sequenz) definieren, dann die Schaltfläche Auf Sequenz anwenden aktivieren und das Ausgabepräfix der neuen Sequenz (standardmäßig mtf_) definieren, oder den folgenden Befehl verwenden:

Siril Kommandozeile

seqmtf sequencename low mid high [channels] [-prefix=]
Derselbe Befehl wie MTF, aber für die Sequenz sequencename.

Der Name der Ausgabesequenz beginnt mit dem Präfix "mtf_", sofern mit der Option -prefix= nichts anderes angegeben wurde

Verweis: mtf

Verallgemeinerte hyperbolische Streckungstransformationen (Generalised Hyperbolic Stretch/GHS)

Dies ist das leistungsfähigste und modernste Werkzeug von Siril, aber auch das am schwierigsten zu erlernende. Eine sehr ausführliche Anleitung für dieses Tool in Siril wurde von den Autoren dieses Algorithmus geschrieben: https://siril.org/tutorials/ghs. Wir werden hier nur die grundlegende Funktionsweise dieses Tools zusammenfassen.

GHS für ein monochromes Bild

Dialogbox für die Allgemeine Hyperbolische Streckung

Einfach ausgedrückt, kann das GHS den Kontrast eines Helligkeitsbereichs in einem Bild verbessern. Wenn man zum Beispiel die Details im mittleren bis hohen Helligkeitsbereich eines Nebels (der im Allgemeinen in einem Astrobild sehr schwach ist) besser sehen möchte, kann man nur diesen Bereich für die Streckung auswählen. Es ist sehr gut geeignet, den Kontrast von Hauptobjekten zu verbessern, ohne dass die Sterne zu groß werden. Das Werkzeug basiert auf einer iterativen Anwendung, d. h. es werden nacheinander alle Helligkeitsbereiche des Bildes durch kleine Eingriffe gestreckt.

Um dies zu erreichen, stützt sich das Werkzeug in hohem Maße auf die Anzeige und Interaktion von Histogrammen für jeden Farbkanal. Die Transformationsfunktion, die die Form einer Hyperbel oder eines "S" hat, kann durch Verschieben ihres Zentrums (Parameter SP - Symmetriepunkt), durch Abflachen eines ihrer Enden (mit Schatten-Schutzpunkt (SP) und Lichter-Schutzpunkt (HP)) und natürlich durch ihre Verdrehung (Faktoren D und b für die lokale Dehnung) verändert werden. Die Manipulation dieser Parameter an einem kleinen Bild (für die Geschwindigkeit) mit einem SP-Wert von 0,5 wird Ihnen helfen, ihre Wirkung zu verstehen.

Bei jeder Iteration gibt es zwei Hauptoperationen: die Auswahl des zu ändernden Helligkeitsbereichs und die eigentliche Änderung des Bereichs. Die Auswahl des Bereichs ist recht einfach, es geht darum, einen repräsentativen Wert (SP) zu finden und die Breite des Bereichs (b) zu definieren. Die Einstellung von SP kann auf drei Arten erfolgen:

  • Auswahl eines Bereichs mit ähnlicher Helligkeit im Bild und Klicken auf die Schaltfläche "Pipette"

  • Anklicken des Histogramms mit der linken Maustaste (es ist möglich, das Histogramm mit Hilfe der Schaltfläche + oben links zu vergrößern)

  • mit dem Cursor oder den zugehörigen Plus- und Minus-Tasten oder der direkten Eingabe eines Wertes.

Die Breite des Bereichs hängt von der lokalen Dehnung ab. Ein hoher Wert von b ergibt einen kleinen Bereich und erhöht den Kontrast in einem kleinen Helligkeitsbereich des Bildes.

Die Änderung des Histogramms, nachdem der Ort der Änderung festgelegt wurde, ist ein komplexerer Vorgang. Ein von den Autoren des Algorithmus vorgegebenes Ziel ist es, die logarithmische Ansicht des Histogramms (aktiviert durch Ankreuzen des Kästchens) so nah wie möglich an eine abfallende Linie heranzuführen. Zu diesem Zweck müssen Unebenheiten beseitigt und Täler aufgefüllt werden. Im Folgenden finden Sie eine kurze Übersicht über die zu verwendenden Werte, je nachdem, was erreicht werden soll:

  • Anfängliche Streckung von linear: SP leicht links vom Hauptpeak einstellen, b Wert von 6 und höher moderieren, D leicht erhöhen, nur um das Hauptobjekt zu sehen. Dehnen Sie zu diesem Zeitpunkt nicht zu sehr, wie es ein Autostretch tun würde, sonst würden die Sterne zu groß werden (<https://siril.org/tutorials/ghs/#performing-initial-stretches-using-ghs>`_).

  • Verbesserung des Kontrasts eines Bereichs oder Auffüllen eines Tals: Stellen Sie SP auf die Mitte des Tals im Histogramm ein, stellen Sie b so hoch ein, wie der Bereich oder das Tal schmal ist, verringern Sie HP, um die Sterne nicht aufzublähen, erhöhen Sie D langsam, bis die Verbesserung sichtbar wird.

  • Verringerung des Kontrasts eines Bereichs oder Abflachung eines Spitzenwerts: Die Verringerung eines Spitzenwerts ist nicht einfach zu bewerkstelligen, erfolgt aber als Nebeneffekt der Auffüllung von Tälern. So wird beispielsweise durch das Erzeugen einer Spitze oder das Auffüllen eines Tals der Bereich links von SP verringert. Eine andere Möglichkeit ist die Verwendung der inversen Transformation aus dem Kombinationsfeld Typ der Streckung, ein hoher LP-Wert und HP bei 1.

  • Kurve nach links verschieben, wodurch das Bild dunkler wird: Wenn wir das gesamte Histogramm strecken, verschiebt sich die Spitze oft nach rechts, wodurch der Hintergrund zu hell wird. Es gibt eine einfache Möglichkeit, alles nach links zu verschieben: Wählen Sie im Kombinationsfeld Typ der Streckung den letzten Eintrag, Lineare Streckung (Schwarzpunkt-Verschiebung). Jetzt muss nur noch ein Cursor bewegt werden, der bestimmt, wie weit er verschoben wird - oder Sie klicken im Histogramm auf den gewünschten Schwarzpunkt links neben dem Berg.

Tipp

If a ROI is set, the GHT histogram preview will not update to show the impact of the stretch on the ROI. This is because that behaviour could be misleading: if the ROI is not typical of the image overall, adjusting the ROI histogram to a suitable level would result in a badly adjusted histogram for the overall image and potentially a burned-out or excessively dark look to the result. When in ROI mode the stretch parameters should be adjusted by eye. If it is desired to check the histogram for the stretch as applied to the image as a whole, the ROI should be cleared.

Einige Operationen sind auch bei Farbbildern üblich, da wir oft eine ähnliche Kurvenform für die drei Kanäle haben wollen. Wir können jeden Kanal unabhängig bearbeiten, indem wir sie mit den drei farbigen Kreisen unter der Histogrammansicht abwählen:

GHS für ein Farbbild

Die generalisierte hyperbolische Streckung für ein Farbbild

  • Verschieben der Spitze nach rechts: eine einfache Streckung mit einem SP-Wert links von der Spitze wird dies im Allgemeinen bewirken, daher sollte dies als Teil einer Streckung erfolgen.

  • Einen Berg strecken: um einen Kanal etwas mehr zu strecken und ihm mehr Bedeutung im Endergebnis zu geben, ohne die Position des Peaks zu sehr zu verändern, stellen Sie SP in der Nähe der Spitze oder leicht rechts davon ein, stellen Sie b ein, je nachdem, wie der Beitrag im gesamten Kanal gewünscht wird, zwischen einem negativen Wert, wenn die Auswirkung bis zu den Sternen zu spüren sein soll (um ihre Farbe zu ändern) und einem hohen Wert, wenn dies nur für einen Nebel gilt, erhöhen Sie D, um die Zielbreite der Spitze zu erhalten, und versetzen Sie dann den Berg nach links, indem Sie HP erhöhen.

  • Alle Kanäle zusammen verschieben: Es gibt eine alternative Streckung der Luminanzzuordnung, siehe das Kombinationsfeld Farbstreckungsmodell oben rechts im GHS-Fenster. Wenn Sie einen der beiden Luminanz-Streckungswerte verwenden, wird die Luminanz gestreckt und die Farben darauf neu angewendet, anstatt die drei Kanäle direkt zu strecken. Mit den Luminanzmodi können die Farben im Bild besser erhalten werden. Diese Modi verwenden denselben RGB-Überblendungsmodus, der oben beschrieben wurde, um Artefakte beim Beschneiden der Farbkanäle zu vermeiden.

  • Bildsättigung neu abbilden: Die GHS-Transformationen können auf den Sättigungskanal des Bildes angewendet werden, indem die Option Sättigung aus dem Kombinationsfeld Farbdehnungsmodell ausgewählt wird. Wenn dieser Modus ausgewählt ist, werden die Histogramme der Sättigung vor und nach der Streckung gelb angezeigt. Alle GHS-Optionen sind verfügbar und dieser Modus ermöglicht eine sehr gezielte Anpassung des Sättigungskanals. Eine einfache Methode, um die Sättigung in relativ ungesättigten Regionen zu erhöhen und gleichzeitig eine Übersättigung zu vermeiden, ist die Verwendung einer Inversen verallgemeinerten hyperbolischen Transformation, bei der SP auf etwa 0,5 eingestellt ist und HP so weit heruntergefahren wird, dass das obere Ende des Sättigungshistogramms abgeflacht wird.

In order to control partially-clipped highlights, the GHS tool makes available the same range of clipping modes as the asinh stretch. Details can be found here.

Anwendung von GHS auf den Sättigungskanal, um einen "Mineralischen Mond" zu erzeugen

Das obige Bild zeigt, wie die Anwendung des GHS-Werkzeugs auf den Sättigungskanal eine einfache Möglichkeit bietet, die Sättigung in einem Bild mit geringer Sättigung stark zu verstärken und gleichzeitig die Kontrolle über das obere Ende des Sättigungshistogramms zu behalten, das hier verwendet wurde, um ein "Mineralische Mond"-Bild zu erstellen, das die unterschiedliche mineralische Zusammensetzung der verschiedenen Regionen der Mondoberfläche hervorhebt.

Siril Kommandozeile

ght -D= [-B=] [-LP=] [-SP=] [-HP=] [-clipmode=] [-human | -even | -independent | -sat] [channels]
Verallgemeinerte hyperbolische Streckung (Generalized Hyperbolic Stretch) auf der Grundlage der Arbeit des Teams von ghsastro.co.uk.

Das Argument -D= bestimmt die Stärke der Streckung, die zwischen 0 und 10 liegt. Dies ist das einzige obligatorische Argument. Mit den folgenden optionalen Argumenten kann die Streckung weiter angepasst werden:
B bestimmt die Intensität der Streckung in der Nähe des Symmetriepunktes, zwischen -5 und 15;
LP definiert einen schattenerhaltenden Bereich zwischen 0 und SP, in dem die Streckung linear erfolgt und die Schattendetails erhalten bleiben;
SP definiert den Symmetriepunkt der Streckung, der zwischen 0 und 1 liegt und an dem die Streckung am stärksten ist;
HP definiert einen Bereich zwischen HP und 1, in dem die Streckung linear erfolgt, wodurch die Details der Glanzlichter erhalten bleiben und eine Aufblähung der Sterne verhindert wird.
Wenn B, LP und SP weggelassen werden, ist der Standardwert 0,0 und bei HP ist der Standardwert 1,0.
Ein optionales Argument (entweder -human, -even oder -independent), kann übergeben werden, um entweder menschlich-gewichtete oder gleichmäßig gewichtete Luminanz oder unabhängige Farbkanäle für Farbstreckungen auszuwählen. Das Argument wird bei Monobildern ignoriert. lternativ gibt das Argument -sat an, dass die Streckung anhand der Bildsättigung erfolgt - das Bild muss farbig sein und alle Kanäle müssen ausgewählt sein, damit dies funktioniert.
Optional kann der Parameter [channels] verwendet werden, um die Kanäle anzugeben, auf die die Streckung angewendet werden soll: Dies können R, G, B, RG, RB oder GB sein. Der Standardwert sind alle Kanäle. Der Clip-Modus kann mit dem Argument -clipmode= eingestellt werden: Werte wie clip, rescale, rgbblend oder globalrescale werden akzeptiert und der Standardwert ist rgbblend.

Siril Kommandozeile

invght -D= [-B=] [-LP=] [-SP=] [-HP=] [-clipmode=] [-human | -even | -independent | -sat] [channels]
Kehrt eine generalisierte hyperbolische Streckung um. Es bietet die umgekehrte Transformation von GHT. Wenn es mit denselben Parametern versehen wird, macht es einen GHT-Befehl rückgängig und kehrt möglicherweise zu einem linearen Bild zurück. Es kann für Negativbilder auch auf die identische Weise wie GHT funktionieren

Verweise: ght

Siril Kommandozeile

modasinh -D= [-LP=] [-SP=] [-HP=] [-clipmode=] [-human | -even | -independent | -sat] [channels]
Modifizierte ArcSinH-Streckung auf der Grundlage der Arbeit des Teams von ghsastro.co.uk.

Das Argument -D= bestimmt die Stärke der Streckung, die zwischen 0 und 10 liegt. Dies ist das einzige obligatorische Argument. Mit den folgenden optionalen Argumenten kann die Streckung weiter angepasst werden:
LP definiert einen schattenerhaltenden Bereich zwischen 0 und SP, in dem die Streckung linear erfolgt und die Schattendetails erhalten bleiben;
SP definiert den Symmetriepunkt der Streckung, der zwischen 0 und 1 liegt und an dem die Streckung am stärksten ist;
HP definiert einen Bereich zwischen HP und 1, in dem die Streckung linear erfolgt, wodurch die Details der Glanzlichter erhalten bleiben und eine Aufblähung der Sterne verhindert wird.
Ohne diese Angabe haben LP und SP den Standardwert 0,0 und HP den Standardwert 1,0.
Ein optionales Argument (entweder -human, -even oder -independent), kann übergeben werden, um entweder menschlich-gewichtete oder gleichmäßig gewichtete Luminanz oder unabhängige Farbkanäle für Farbstreckungen auszuwählen. Das Argument wird bei Monobildern ignoriert. lternativ gibt das Argument -sat an, dass die Streckung anhand der Bildsättigung erfolgt - das Bild muss farbig sein und alle Kanäle müssen ausgewählt sein, damit dies funktioniert.
Optional kann der Parameter [channels] verwendet werden, um die Kanäle anzugeben, auf die die Streckung angewendet werden soll: Dies können R, G, B, RG, RB oder GB sein. Der Standardwert sind alle Kanäle. Der Clip-Modus kann mit dem Argument -clipmode= eingestellt werden: Werte wie clip, rescale, rgbblend oder globalrescale werden akzeptiert und der Standardwert ist rgbblend.

Siril Kommandozeile

invmodasinh -D= [-LP=] [-SP=] [-HP=] [-clipmode=] [-human | -even | -independent | -sat] [channels]
Kehrt eine modifizierte Arcsinh-Streckung um. Es bietet die umgekehrte Transformation von MODASINH. Wenn es mit denselben Parametern versehen wird, macht es einen MODASINH-Befehl rückgängig und kehrt möglicherweise zu einem linearen Bild zurück. Es kann auch bei Negativbildern auf die gleiche Weise wie MODASINH funktionieren

Verweise: modasinh

Siril Kommandozeile

linstretch -BP= [-sat] [-clipmode=] [channels] [-clipmode=]
Streckt das Bild linear auf einen neuen Schwarzpunkt BP.
Optional kann der Parameter [channels] verwendet werden, um die Kanäle anzugeben, auf die die Streckung angewendet werden soll: dies können R, G, B, RG, RB oder GB sein. Die Standardeinstellung ist alle Kanäle
Optional kann der Parameter -sat verwendet werden, um die lineare Streckung auf den Bildsättigungskanal anzuwenden. Dieses Argument funktioniert nur, wenn alle Kanäle ausgewählt sind. Der Clip-Modus kann mit dem Argument -clipmode= eingestellt werden: Werte clip, rescale, rgbblend oder globalrescale werden akzeptiert und der Standardwert ist rgbblend

Anwendung der Transformation auf die Sequenz

Diese Transformation kann leicht auf eine Sequenz angewendet werden. Sie müssen nur die Transformation auf das geladene Bild (mit einer bereits geladenen Sequenz) definieren, dann die Schaltfläche Auf Sequenz anwenden aktivieren und das Ausgabepräfix der neuen Sequenz definieren (standardmäßig stretch_). Alle Befehle haben auch eine Form der Sequenzverarbeitung. Jeder Sequenzstreckungsbefehl beginnt mit seq und das erste Argument muss der Sequenzname sein, aber ansonsten sind sie gleich.

Siril Kommandozeile

seqght sequence -D= [-B=] [-LP=] [-SP=] [-HP=] [-clipmode=] [-human | -even | -independent | -sat] [channels] [-prefix=]
Gleicher Befehl wie GHT, aber eine Sequenz muss als erstes Argument angegeben werden. Zusätzlich kann das optionale Argument -prefix= verwendet werden, um ein benutzerdefiniertes Präfix zu setzen

Verweise: ght

Siril Kommandozeile

seqinvght sequence -D= [-B=] [-LP=] [-SP=] [-HP=] [-clipmode=] [-human | -even | -independent | -sat] [channels] [-prefix=]
Gleicher Befehl wie INVGHT, aber eine Sequenz muss als erstes Argument angegeben werden. Zusätzlich kann das optionale Argument -prefix= verwendet werden, um ein benutzerdefiniertes Präfix zu setzen

Verweise: invght

Siril Kommandozeile

seqmodasinh sequence -D= [-LP=] [-SP=] [-HP=] [-clipmode=] [-human | -even | -independent | -sat] [channels] [-prefix=]
Gleicher Befehl wie MODASINH, aber eine Sequenz muss als erstes Argument angegeben werden. Zusätzlich kann das optionale Argument -prefix= verwendet werden, um ein benutzerdefiniertes Präfix zu setzen

Verweise: modasinh

Siril Kommandozeile

seqinvmodasinh sequence -D= [-LP=] [-SP=] [-HP=] [-clipmode=] [-human | -even | -independent | -sat] [channels] [-prefix=]
Gleicher Befehl wie INVMODASINH, aber eine Sequenz muss als erstes Argument angegeben werden. Zusätzlich kann das optionale Argument -prefix= verwendet werden, um ein benutzerdefiniertes Präfix zu setzen

Verweise: invmodasinh

Siril Kommandozeile

seqlinstretch sequence -BP= [channels] [-sat] [-prefix=]
Gleicher Befehl wie LINSTRETCH, aber eine Sequenz muss als erstes Argument angegeben werden. Zusätzlich kann das optionale Argument -prefix= verwendet werden, um ein benutzerdefiniertes Präfix zu setzen

Verweise: linstretch

Kurventransformation

Curves Transformation is a highly versatile tool used to adjust the contrast and brightness of an image by modifying the pixel values according to a custom-defined curve. This allows for precise control over the image's stretch.

The curve is defined by a series of points, each of which can be moved to adjust the curve. The curve is interpolated between these points, and the pixel values are transformed based on it. This allows for a wide range of transformations to be applied to the image, from simple linear stretches to complex non-linear adjustments.

Kurven auf einem Farbbild

Dialogbox der Kurven-Transformation

There are two interpolation algorithms available in the Curves Transformation dialog: linear and cubic spline.

Theorie

  • Linear interpolation is a simple interpolation that connects the points with straight lines. For each pair of points, the slope of the line connecting the points is calculated:

    (3)\[\begin{split}\text{slope} = \frac{y_2 - y_1}{x_2 - x_1}. \\\end{split}\]

    The pixel values are then transformed by evaluating the line at the original pixel value:

(4)\[\text{pixel} = \text{slope} \times (\text{original} - x_1) + y_1.\]
  • Cubic spline curves are more complex curves that are defined by a series of control points. For pixel value \(x\) between two control points \(x_i\) and \(x_{i+1}\), the curve is defined by the following equation:

(5)\[S_i(x) = a_i + b_i (x - x_i) + c_i (x - x_i)^2 + d_i (x - x_i)^3\]

For \(x_i < x < x_{i+1}\), the coefficients \(a_i, b_i, c_i\), and \(d_i\) are calculated by solving a system of equations derived from the conditions of continuity and smoothness at each internal point. These conditions are:

  • The spline must be continuous at each internal point,

  • The first derivative of the spline must be continuous at each internal point,

  • The second derivative of the spline must be continuous at each internal point

  • Since Curves Transformation uses natural cubic splines, the second derivative at both endpoints is 0.

Warnung

Curves Transformation is only available as a GUI tool and cannot be used from the command line.

Curves Transformationcan display the histogram of the image in two modes: linear and logarithmic. You can swap between these modes by clicking the Logarithmic scale checkbox at the top of the histogram. Logarithmic scale is useful for images with a wide dynamic range, as it allows you to see the histogram in the shadows and highlights more clearly.

Tipp

If a ROI is set, the histogram preview will not update to show the impact of the stretch on the ROI. This is because that behaviour could be misleading: if the ROI is not typical of the image overall, adjusting the ROI histogram to a suitable level would result in a badly adjusted histogram for the overall image and potentially a burned-out or excessively dark look to the result. When in ROI mode the stretch parameters should be adjusted by eye. If it is desired to check the histogram for the stretch as applied to the image as a whole, the ROI should be cleared.

Some common uses of the Curves Transformation tool include:

  • "S" curve: This curve is used to increase the contrast of an image. By increasing the slope of the curve in the middle of the histogram, the contrast is increased.

    S-Kurven Beispiel

    An example of an "S" curve

  • BP & WP adjustments: The black point (BP) and white point (WP) of an image can be adjusted by moving the first and last control points of the curve. This allows for the shadows and highlights of the image to be adjusted independently.

    BP & WP adjustments

    An example of adjusting the black point and white point of an image

  • Targeted adjustments: By adding control points at specific locations in the histogram, targeted adjustments can be made to the image. For example, the shadows can be darkened without affecting other parts of the image.

    Targeted adjustments

    An example of a targeted adjustment to an image

Tipp

The Curves Transformation tool is best used on an image that has already been stretched to some extent. This allows for more precise control over the image's contrast and brightness.

Diese Transformation kann leicht auf eine Sequenz angewendet werden. Sie müssen lediglich die Transformation für das aktuell geladene Bild definieren (mit einer bereits geladenen Sequenz), dann die Schaltfläche Apply to sequence aktivieren und das Ausgabepräfix der neuen Sequenz angeben (standardmäßig curve_).