Wie kann ich mit einem Linux-Befehl ein JPEG-Bild in ein RAW-Bild konvertieren?

Wie kann ich mit einem Linux-Befehl ein JPEG-Bild in ein RAW-Bild konvertieren?

Ich habe eine Reihe von JPEG-Bildern aufgenommen mitCanon Powershotin JPEG. Wie kann ich sie in RAW-Bilder konvertieren/umwandeln?

Nicht mit einem grafischen Tool, sondern über die Kommandozeile!

NB: Verwenden Sie Rohbilder, um sie in der Astrofoto-Anwendung Siril zu stapeln (https://siril.org/fr/)

Antwort1

Original-RAW-Bilder können nicht wiederhergestellt werden.

Die Auswahl von JPEG statt RAW spart Platz, geht aber auf Kosten der Qualität.
Dieser Vorgang ist irreversibel und verlustbehaftet.
Einfach ausgedrückt bedeutet dies, dass Sie nicht mehr zurückgehen können.

Leider können Sie beim nächsten Mal vor der Aufnahme nur das RAW-Format statt JPEG auswählen.

Notiz:Technisch könnten Sie einen Weg finden, das aktuelle JPG-Bild in das RAW-Format umzuwandeln, aber es wird nicht dasselbe RAW-Bild sein, das Sie möglicherweise hätten, wenn Sie es direkt im RAW-Format aufgenommen und gespeichert hätten.


Suche imCanon SupportSie können lesen

Die Kamera kann Bilder im JPEG- und RAW-Format aufnehmen.

JPEG-
Bilder werden in der Kamera für optimale Bildqualität verarbeitet und komprimiert, um die Dateigröße zu reduzieren.Der Komprimierungsprozess ist irreversibel und Bilder können nicht in ihren ursprünglichen, unbearbeiteten Zustand zurückversetzt werden.Durch die Bildverarbeitung kann es auch zu einem gewissen Verlust der Bildqualität kommen.

RAW „Raw“-Daten (unbearbeitet), die praktisch ohne Qualitätsverlust durch die Bildverarbeitung der Kamera aufgezeichnet werden. Die Daten können in diesem Zustand nicht zum Betrachten auf einem Computer oder zum Drucken verwendet werden. Sie müssen die Bilder zuerst auf der Kamera verarbeiten oder mit der Software (Digital Photo Professional) in JPEG- oder TIFF-Dateien konvertieren. Bilder können mit minimalem Qualitätsverlust angepasst werden.

Antwort2

"Raw" ist kein gut definiertes Format. Wikipedia Raw-Bildformathabe ich 43 RAW-Formate gezählt, jeweils abhängig vom Kameramodell.

Eines der besten Bildpakete ist BildMagick, verfügbar als Paket unter Linux oder als Download, unterstützt einige RAW-Formate. Verwenden Sie die Befehle magickoder convert.

Die Qualität des Ergebnisses wäre jedoch sehr schlecht. Bei JPEG handelt es sich um verarbeitete Bilddaten, bei RAW hingegen nicht. Normalerweise haben RAW-Dateien 12-14 Bit pro Pixel, was bis zu 16384 Werte bedeutet. JPEG kann nur 256 Luminanzwerte pro RGB-Kanal haben. Das bedeutet, dass JPEG viel weniger Daten enthält als eine entsprechende RAW-Datei. Es gibt also keine gute Möglichkeit, JPEG in RAW umzuwandeln.

Antwort3

Schwierigkeiten und Möglichkeiten beim Versuch, JPEG in das RAW-Format zu konvertieren.

Es ist nicht immer möglich, eine JPEG-Datei in die ursprüngliche RAW-Datei zu konvertieren.
Hinweis: Ich spreche vom ursprünglichen oder spezifischen RAW-Format, da es sich nicht um einen Standard handelt: RAW-Formate sind voneinander unterschiedliche Serviceformate, die vom Hersteller verwendet werden, um den Inhalt des CCD schnell im Puffer und gegebenenfalls auf dem Speichergerät zu speichern.

Grenzen.Möglicherweise können Sie es in ein gültiges RAW-Format umwandeln, aber das bedeutet nicht, dass die in der neuen RAW-Datei gespeicherten Einzelwerte dieselben sind, die Sie hätten, wenn Sie die Aufnahme direkt im RAW-Format gespeichert hätten.

Gelegenheit.Es ist nicht gesagt, dass das Endergebnis besser ist, wenn Sie ein JPEG-Bild in das RAW-Format konvertieren und es dann für die Verarbeitung verwenden, als wenn Sie direkt mit dem bereits vorhandenen JPEG beginnen. Tatsächlich wenden Sie einen Filter (Algorithmus) an, der ein Format in ein anderes umwandelt und weitere Änderungen vornehmen kann.

Schwierigkeiten.Wenn man jedoch einmal weiß,das spezifische RAW-FormatSie können einen Weg finden,formal convertdas Bild in Ihr RAW-Format. Dies erfordert nicht unerheblichen Programmieraufwand, angefangen bei der Modellierung der inversen Transformation bis hin zur Kodierung des Algorithmus in der bevorzugten Sprache.

Vorhandene Programme.Das convertProgramm aus demBildmagickPaket unter Linux (oder anderen Betriebssystemen) kann keine Formate direkt in das Canon RAW-Format konvertieren,es kann nur lesen(R) sie ... Es kann also das Gegenteil von dem tun, was der OP sucht: RAW in was auch immer konvertieren.

convert -list format | grep Canon
      CR2  DNG       r--   Canon Digital Camera Raw Image Format
      CRW  DNG       r--   Canon Digital Camera Raw Image Format

Aber Imagemagick ist sogar einSkripterstellung/Programmiersprache. Sobald Sie Zugriff auf die einzelnen Pixelwerte haben, können Sie diese nach Belieben speichern ... programmieren. Sie müssen jedoch die Spezifikationen des gewünschten Formats kennen.

Da es sich außerdem um ein Open-Source-Programm handelt, können Sie im Code die Routinen sehen, die zur Konvertierung verwendet werdenvon RAWin was auch immer und sehen Sie, ob Sie in der Lage sind,umkehrenihnen.

Zur Irreversibilität der Konvertierung von RAW in JPEG.

Dies geschieht aus vielen Gründen. Unter ihnen:

  • Einige Formate sind verlustbehaftet, JPEG ist normalerweise eines davon. Sie sparen Speicherplatz auf Kosten von Artefakten und einer allgemeinen Änderung der Originalwerte für einzelne Pixel.

  • Im klassischen JPEG-Format gibt es nur 8 Bit für Farben (das sind 256 Schattierungen). Bei einem CCD-Sensor sind die Zähler normalerweise 12 oder 14 Bit (das sind 4096 und 16384 Schattierungen).
    Wenn Sie sich Ihr Bild als Histogramm vorstellen, werden Sie in einem einzigen Bin (Spalte) des JPEG-Bilds die Werte mitteln, die in 16 und 64 Bins in den 12- und 14-Bit-Zählern enthalten sind. Wie können Sie einzelne Bin-Werte aus dem Durchschnitt wiederherstellen?

  • Auch wenn Ihr JPEG im aktuellen 12-14-16-Bit-Format vorliegt (JPEG_XT), kennen Sie den Algorithmus nicht, der für diese Transformation in der Kamera verwendet wird.
    (Vereinfacht ausgedrückt kann der Sensor eine nichtlineare Effizienzkurve aufweisen. Der Hersteller kann dies berücksichtigen, indem er die Zahl vom RAW-Format in eine lineare umwandelt.SchattenEbene im JPEG-, TIFF-, ...-Format.)

  • Die Geometrie des CCD unterscheidet sich von der Geometrie eines Bildes. Grob gesagt haben wir in den Bildern ein Pixel mit 3 oder 4 Werten relativ zum exakt gleichen geometrischen Quadrat. Alle Quadrate sind benachbart.

    Im CCD hingegen haben wir geometrisch getrennte Sensoren, die für unterschiedliche Wellenlängen empfindlich sind, was wiederum grob für die Werte R, G und B gilt. Diese Sensoren können dieselbe Oberfläche haben oder auch nicht, und sie haben sicherlich eine unterschiedliche Effizienz, die sich unter anderem je nach Anzahl der Zählungen pro Sekunde ändert.

    Wie diese RGB-Sensorsequenzen ausgerichtet und voneinander beabstandet sind, hängt vom Design des CCD ab. Sie können einige Beispiele sehen fürFarbfilter-Arrayim Internet.

    Bildbeschreibung hier eingeben Bild vonWikipedia

    Bildbeschreibung hier eingeben Bild vonEphotozin

    Wie sich die Zählwerte der Rotsensoren beispielsweise in einen Bildwert eines Pixels R umsetzen lassen, hängt von ihrer geometrischen Position und dem gewählten Algorithmus ab, der ggf. auch die Werte benachbarter Sensoren berücksichtigt, sei es von solchen, die für die gleiche Wellenlänge empfindlich sind, oder von solchen, die für andere Wellenlängen empfindlich sind.

    All diese Dinge sind kaum umkehrbar.

Antwort4

Wie andere bereits angemerkt haben, gibt es bei der Konvertierung von JPG keine Möglichkeit, die üblichen Vorteile des RAW-Formats zu nutzen.

Bei Canon Powershot ist es jedoch möglich, eine benutzerdefinierte Firmware von CHDKProjekt, das die Aufnahme von RAW-Bildern ermöglicht. Bei vorhandenen Bildern hilft das natürlich nicht.

verwandte Informationen