Wäre ein Demosaik-Algorithmus für Schwarz und Weiß nützlich?

Angesichts der Tatsache, dass der Hauptzweck des Demosaikierens darin besteht, die Farbe so genau wie möglich wiederherzustellen, hätte ein „nur Schwarzweiß“-Demosaikalgorithmus einen Vorteil? Das heißt, anstatt zuerst die Farbe wiederherzustellen und dann Schwarzweiß zu konvertieren, ist es vielleicht besser, die RAW-Datei direkt in Schwarzweiß zu konvertieren?

Mich interessiert vor allem die Bildqualität (zB Dynamikumfang und Schärfe). In einem ähnlichen Zusammenhang, welche gängigen Demosaicing-Algorithmen eignen sich am besten für die Schwarz-Weiß-Konvertierung?

Farbe ist ein wesentlicher Faktor eines RAW-Bildes, das mit einem Farb-Bayer-Sensor erstellt wurde. Das Problem bei der Konvertierung in Graustufen besteht darin, dass Sie nur die Luminanz für eine einzelne bestimmte Farbe bei einem bestimmten Pixel haben. Es spielt keine Rolle, ob Sie jedes Pixel nur als Luminanzwert oder als Farbwert behandeln, jedes Pixel stellt nur ungefähr 1/3 der gesamten Luminanz dar, die zum Zeitpunkt der Belichtung auf das Pixel eingefallen ist. "Demosaicing" ist für Graustufenbilder wirklich unnötig, aber um ideale Graustufenbilder zu erhalten, sollten Sie einen Graustufensensor verwenden ... ganz ohne den Bayer!
Welche Demosaicing-Algorithmen sind ideal für die Schwarzweiß-Konvertierung bei Verwendung einer Farbkamera ... Ich würde sagen, die einfachste Form, Ihre Standard-Quad-Interpolation. Viele andere fortschrittlichere Demosaicing-Algorithmen wurden entwickelt, um Farbmoiré und andere farbbezogene Artefakte zu minimieren. Wenn Sie sich nur für Schwarzweiß interessieren, bewahrt die standardmäßige 2x2-Pixel-Interpolation die meisten Details.
@jrista Ich bin mir nicht sicher, warum eine naive Interpolation mehr Details bewahren würde als einer der fortgeschritteneren Algorithmen, die versuchen, zwischen Helligkeits- und Intensitätsänderungen zu unterscheiden. Auf jeden Fall können Farbartefakte auch in Schwarz-Weiß-Bildern auftreten, je nachdem, wie die Konvertierung durchgeführt wird.
Nun, ich schätze, ich stütze das hauptsächlich auf AHDD, das dazu neigt, Details weicher zu machen. Zumindest erzeugt die Implementierung in Lightroom etwas weichere Ergebnisse als der von Canon DPP verwendete Algorithmus, der mit einem einfacheren Demosaicing-Algorithmus sehr klare, scharfe Ergebnisse liefert (obwohl ich denke, nicht so einfach wie Ihr einfaches 2x2.)
"Vergleich von Methoden zur Farbdemosaik" (Olivier Losson, Ludovic Macaire, Yanqin Yang) geht sehr detailliert auf verschiedene Demosaik-Algorithmen ein. Es geht nicht nur darum, die Farbe zu dekodieren, desto bessere Algorithmen berücksichtigen alle umgebenden Informationen, um bei jedem Pixel die besten Ergebnisse zu erzielen. Ich bin nicht davon überzeugt, dass ein dedizierter Graustufen-Decoder es besser machen könnte.
Farbe zählt in Schwarz-Weiß. Kann ich beispielsweise den Rotkanal bei der Konvertierung nicht betonen (was z. B. blauen Himmel dunkler macht, sodass Wolken stärker hervortreten), muss ich bei der Aufnahme einen Rotfilter verwenden. Das blockiert einen Teil des einfallenden Lichts, also muss ich die Belichtung erhöhen, was meine Flexibilität einschränkt. Und wenn ich später feststelle, dass ein Gelbfilter besser gewesen wäre als Rot, kann ich es nicht ändern. Zurück in die alten Zeiten der Filmfotografie...

Antworten (5)

Es gibt keine Möglichkeit, eine RAW-Datei direkt in Schwarzweiß zu konvertieren, ohne zuerst die Farbe wiederherzustellen, es sei denn, Ihr Konverter verwendet nur einen der R-, G-, B-Pixelsätze, um ein Bild zu erzeugen. Dieser Ansatz würde zu einem erheblichen Auflösungsverlust führen.

Um bei der Konvertierung in Schwarzweiß keine Auflösung zu verlieren, müssen Sie alle RG- und B-Pixel verwenden, was implizit bedeutet, dass Farbberechnungen durchgeführt werden müssen. An diesem Punkt können Sie genauso gut einen der erweiterten Farb-Demosaicing-Algorithmen verwenden und dann konvertieren das Ergebnis schwarz auf weiß.

Die Halbierung der Auflösung ohne gewichteten Durchschnitt der Quads durch Extrahieren einer Farbe wäre nicht das erwartete Graustufenbild, da es so wäre, als würde man einen Grün-, Rot- oder Blaufilter auf eine Monochromkamera setzen. Und eine philosophische Frage: Teilen Sie jede Achse durch 2, reduzieren Sie die Mp-Zählung um 4. Ich würde dies als halbe Auflösung bezeichnen. Aber Sie scheinen sqrt (2) pro Achse / 2 Mp count "halbe Auflösung" zu nennen. Welche Definition ist technisch richtig? Wenn die Auflösung die Fähigkeit zur Auflösung ist, dann sind Breite/2 und Höhe/2 die halbe Auflösung in einem 2D-System, in dem Sie die Rotationsinvarianz beibehalten möchten?
Erweiterung meiner Ansicht zur Auflösung Ich denke, dass Mp nicht die Auflösung ist, sondern eine Marketingnummer für Fotografie. Als Bildverarbeitungsingenieur wird eine Auflösung als w x h angegeben.
@MichaelNielsen Welches "erwartete Graustufenbild"? Es gibt viele verschiedene Methoden zum Konvertieren in Graustufen, die Frage hat keinen Ansatz mit gleicher Gewichtung angegeben. Zweitens, wenn Sie einen linearen Detektor hätten und die Anzahl der Abtastungen halbieren würden, würde sich das Auflösungsvermögen, dh die maximal erkennbare Detailmenge, halbieren, Sie würden nicht sagen, dass es um einen Faktor von Wurzel 2 reduziert ist. Daraus ergibt sich dies Wenn Sie ein 2D-Detektorfeld (z. B. einen Bildsensor) haben und die Anzahl der Abtastungen in beide Richtungen halbieren, sodass ein Viertel übrig bleibt, würden Sie sagen, dass die Auflösung um den Faktor 4 reduziert wurde.
Wenn Sie nur die x- oder y-Achse halbieren, haben Sie in jeder Richtung unterschiedliche Auflösungen, wodurch die Fähigkeit zunichte gemacht wird, eine Gesamtauflösung in Bezug auf Mp zu zählen und einen einzelnen Faktor "/ 2-Auflösung" zu berechnen. Ofc. Objektive haben auch nicht die gleiche Auflösung, aber Sensorhersteller sind ziemlich stolz zu verkünden, dass ihre Pixel heutzutage quadratisch und quadratisch sind, was eine gleiche Auflösung in beide Richtungen ergibt, dh eine Auflösung von 640x = 480y. Sehen Sie, wie die Pixelzahl selbst nichts bedeutet. Auflösung 640 ist die GLEICHE Auflösung wie 480.
Um die Relevanz der gleichen quadratischen Auflösung zu erhalten, müssen Sie daher beide Richtungen halbieren, um sie (global) zu halbieren. Andernfalls MÜSSEN Sie sich alle Mühe geben zu sagen, dass Sie eine Dimension halbiert haben. Es kann nicht zu einer einzigen Auflösungsnummer zusammengefasst werden.
Graustufen: Ich habe nicht gleich gewichtet gesagt. Und ich weiß, dass es viele verschiedene Graustufenversionen gibt, aber ich kann darauf wetten, dass R, G oder B nicht zu den vom OP erwarteten gehört. Am wahrscheinlichsten ist die Version 0.11*b+0.59*g+.3*r.
Wenn das Auflösungsvermögen als Anzahl der Linienpaare pro mm entlang einer bestimmten Achse gemessen wird, würde ich eher denken, dass die Verwendung von 1/4 der Pixel eine halbe Auflösung entlang beider Achsen ergeben würde. Natürlich wird bei der Verwendung von RGBG das Auflösungsvermögen jedes Pixels durch die dem Demosaicing innewohnende Interpolation beeinträchtigt.
Versuchen Sie auch, diese Frage zu überprüfen: photo.stackexchange.com/q/23331/4559
@MichaelNielsen Ich denke, Sie haben den Punkt verloren, den ich gemacht habe, es sei denn, Sie möchten die Auflösung verlieren (wie auch immer Sie sich entscheiden, sie zu messen), indem Sie eine reine RG- oder B-Konvertierung vornehmen, dann müssen Sie ein Farbbild erstellen als Zwischenschritt bei der Umwandlung von RAW in Schwarzweiß.
Ich weiß, das war Ihr ursprünglicher Punkt, aber ich mag einfach eine gute Diskussion, und Ihre Alternative zur vollständigen Konvertierung war nicht die einzige, sondern die einfachste mit einigen Problemen, die interessant zu diskutieren waren. ;)

Sie benötigen einen Demosaik-Algorithmus, selbst wenn Sie ein Bild in Schwarzweiß konvertieren.

Ein Grund dafür ist ganz einfach - sonst würden Sie überall Subpixel-Artefakte bekommen. Sie müssen sich darüber im Klaren sein, dass das vom Sensor aufgenommene Bild ziemlich unordentlich ist. Schauen wir uns das Beispiel aus Wikipedia an :

demosaikieren

Stellen Sie sich nun vor, wir führen kein Demosaicing durch und konvertieren nur RAW in Graustufen:

Graustufen

Nun... siehst du die schwarzen Löcher? Rote Pixel registrierten nichts im Hintergrund.

Vergleichen wir dies nun mit dem demosaikierten Bild, das in die Grauskala konvertiert wurde (links):

normal gegen kaputt

Sie verlieren im Grunde genommen Details, aber auch viele Artefakte , die das Bild ziemlich unerträglich machen. Durch das Umgehen von Demosaicing von Bildern geht auch viel Kontrast verloren, da die Schwarzweiß-Konvertierung durchgeführt wird. Schließlich könnten die Farbschattierungen, die zwischen den Primärfarben liegen, auf ziemlich unerwartete Weise dargestellt werden, während große Flächen von Rot und Blau in 3/4 leer sein werden.

Ich weiß, dass es sich um eine Vereinfachung handelt, und Sie könnten darauf abzielen, einen Algorithmus zu erstellen, der einfach effizienter bei der RAW-Konvertierung in Schwarzweiß ist, aber mein Punkt ist folgender:

Sie benötigen ein berechnetes Farbbild, um die richtigen Grauschattierungen in Schwarzweißfotos zu erzeugen.

Der beste Weg, Schwarzweißfotografie zu machen, besteht darin, das Farbfilterarray vollständig zu entfernen - wie Leica es in Monochrom getan hat - und nicht die RAW-Konvertierung zu ändern. Andernfalls erhalten Sie entweder Artefakte oder falsche Grauschattierungen oder eine Verringerung der Auflösung oder all dies.

Hinzu kommt, dass die RAW->Bayer->S/W-Konvertierung Ihnen weitaus mehr Optionen zum Verbessern und Bearbeiten von Bildern bietet, und Sie haben eine ziemlich hervorragende Lösung, die nur durch eine dedizierte Sensorkonstruktion gestürzt werden kann. Aus diesem Grund sehen Sie keine dedizierten Schwarzweiß-RAW-Konverter, die nicht irgendwo im Prozess auf Demosaicing zurückgreifen würden.

Bildverarbeitungskameras mit Bayer-Filtern können Graustufenbilder direkt ausgeben, dies geschieht jedoch durch Demosaiken, Konvertieren in YUV und Senden nur des V-Kanals (zumindest die, die ich normalerweise verwende). Wenn sie eine bessere Möglichkeit hätten, diese Farbrekonstruktion zu umgehen, würden sie es meiner Meinung nach tun, da sie ständig die Frameraten erhöhen (die typische Kamera, die ich verwende, läuft zum Beispiel mit 100 FPS).

Wenn es das farbbasierte Demosaiking ignorieren würde, könnte es die Auflösung halbieren und jedes 2x2-Quadrat gewichten, aber wenn Sie die volle Auflösung wollen, ist es besser, den normalen Farb-Desaiking-Algorithmus zu verwenden, der versucht, die Kanten besser zu erhalten. Wenn wir wissen, dass wir Graustufen wollen, bekommen wir von Anfang an einfach eine Monochromkamera und setzen einen Farbfilter auf, wenn wir nach einer bestimmten Farbe suchen, da dieses Setup eine weitaus bessere Bildqualität bietet und die Notwendigkeit für Auflösungs-Oversampling reduziert, was wiederum dies ermöglicht Verwendung eines schnellen Sensors mit niedriger Auflösung und größeren Pixeln, was wiederum ein noch besseres Bild liefert.

Sie haben geschrieben: "Konvertieren in YUV und Senden nur des V-Kanals" Sie meinen sicherlich das Senden des Y-Kanals, da Y der Luminanzkanal ist.

Die Wirkung der Farbfilter über jedem Pixel gut in der Bayer-Ebene ist die gleiche wie beim Aufnehmen von Schwarzweißfilmen mit Farbfiltern über dem Objektiv: Sie ändern das Verhältnis der Graustufen verschiedener Farben in der fotografierten Szene. Um einen genauen Luminanzpegel für alle Farben in der Szene zu erhalten, müssen die Signale von jedem Pixel demosaikiert werden. Wie andere bereits erwähnt haben, würde ein Sensor ohne Bayer-Schicht ein monochromes Bild liefern, das nicht demosaikiert werden muss. Dies sollte zu einer besseren Bildschärfe führen, wenn der Zerstreuungskreis von der Linse gleich oder kleiner als die Breite jedes Pixels ist.

In der Praxis sind mir beim Konvertieren von RAW-Dateien in Monochrom mit Digital Photo Professional (DPP) von Canon mehrere Dinge aufgefallen.

  1. Die Anpassung des Weißabgleichs kann eine Änderung der insgesamt wahrgenommenen Leuchtdichte auf die gleiche Weise bewirken wie die Anpassung des Kontrasts. Als solches kann es zur Feinabstimmung des Kontrasts verwendet werden.
  2. Der Weißabgleich wirkt sich auch auf die relative Leuchtkraft verschiedener Farben in der Szene aus. Dies kann zur Feinabstimmung der Anwendung der Filtereffekte „Orange“, „Gelb“, „Rot“ usw. verwendet werden. Rot scheint davon am stärksten betroffen zu sein und ist bei 2500K viel dunkler als bei 10000K. Überraschend, zumindest für mich, ist, dass Blautöne nicht das Gegenteil zeigen.
  3. Da praktisch kein Chrominanzrauschen in einem Schwarzweißfoto vorhanden ist, kann es auf "0" belassen werden.
  4. Das Unschärfemasken-Werkzeug gibt viel mehr Kontrolle über die Schärfe als der einfachere „Schärfe“-Schieberegler. Besonders wenn Sie ein paar "warme" oder "heiße" Pixel im Bild haben, können Sie die Gesamtschärfe erhöhen, ohne sie hervorzuheben.

Unten sind zwei Versionen derselben Belichtung, aufgenommen mit einer Canon 7D mit einem EF 70-200mm f/2.8L IS II Objektiv und einem Kenco C-AF 2X Teleplus Pro 300 Telekonverter. Das Bild wurde auf 1000 x 1000 Pixel beschnitten. Die erste wurde mit den darunter gezeigten Kameraeinstellungen konvertiert. Die zweite wurde mit den im Screenshot gezeigten Einstellungen bearbeitet. Zusätzlich zum RAW-Tab wurde eine Luminance Noise Reduction-Einstellung von 2 angewendet, ebenso wie ein Chromatic Aberration-Wert von 99.

Mond - unbearbeitet

In Kamerainfo

Mond - bearbeitet

Einstellungen

Ich würde einen solchen Algorithmus vorschlagen (vorausgesetzt, Ihr Ziel ist weiß und hat eine konsistente Farbtemperatur):

  • Demosaic RAW Bayer zu RGB
  • Farbe auf Graustufen herunterrechnen
  • Erstellen Sie eine LUT zwischen rohen Bayer-Werten und Graustufenwerten (dies müsste einmal pro Farbebene RGGB oder RGB durchgeführt werden)
  • Verwenden Sie den LUT-Filter pro Farbe, um den RAW-Bayer ohne Interpixel-Filterung direkt in Graustufen umzuwandeln

Theoretisch würde dies den Ergebnissen eines echten monochromen Sensors nahekommen.