Wie kann ich ein proprietäres RAW-Bildformat in Adobe DNG konvertieren?

Ich habe ein proprietäres RAW-Kamerabildformat, das von einer Aptina-Kamera stammt.

Das Rohdateiformat ist 16 Bit pro Farbkanal, „GRBG“-Modus mit der Dateierweiterung .raw. Keine Kopfzeilen, nichts, planen Sie einfach rohe Bayer-Proben. Ich möchte dieses Format in DNG konvertieren, da es anscheinend keiner der Rohbild-Decoder (dcraw, gimp, …) unterstützt.

  1. Gibt es ein Tool / einen Konverter, das mit dem Bayer-Rohformat des Aptina-Kamerasensors umgehen kann und es mir ermöglicht, es in das DNG-Format zu konvertieren?

  2. Wenn nicht, möchte ich einen kleinen C-Code schreiben, um es selbst zu konvertieren. Wo finde ich die detaillierte Spezifikation zum DNG-Format, seiner Struktur usw.? Irgendein Dokument, das all dieses DNG-Format erklärt?

Eine andere Alternative, wenn Sie C-Code schreiben, wäre, dcraw zu erweitern, um das einfache Aptina-Rohformat zu unterstützen. Das würde Ihnen die Mühe des Zwischenschritts ersparen, und wenn Sie den Patch wieder in den Upstream einbringen, wird nach einer Weile jedes Programm, das seinen rohen Eingabecode auf dcraw basiert, auch wie von Zauberhand funktionieren.

Antworten (4)

DNG-Dateien basieren auf dem TIFF/EP-Standard ISO 12234-2 (sie sind im Wesentlichen Bitmaps mit zusätzlichen Metadaten). Wenn Sie also mit einer geeigneten TIFF-E/A-Bibliothek beginnen, werden Sie einen Teil des Weges schaffen, aber Sie werden müssen die von DNG geforderten zusätzlichen Daten eingeben, was schwierig sein könnte.

Raw-Konverter müssen mehr als nur die Pixelintensitäten kennen. Andere relevante Informationen umfassen Pixelform und -ausrichtung oder die Eigenschaften der Farbstoffe (nur zu wissen, dass sie GRBG sind, reicht nicht aus, Sie müssen möglicherweise den genauen Farbton (oder genauer gesagt den Frequenzgang) jedes Farbstoffs kennen, um die Farbdarstellung als zu erstellen dies variiert je nach Hersteller). Ich denke, DNGs behandeln dies über ein eingebettetes "Kameraprofil".

bearbeiten:

Es gibt eine Open-Source-Fotoverwaltungsanwendung namens digiKam, die DNG-Dateien schreiben kann, also wäre es am besten, ihre Quelle zu durchsuchen und zu versuchen, die DNG-Codierungsfunktionen herauszureißen.

Aber digikam unterstützt das Öffnen dieser speziellen Rohdatei nicht. Habe das versucht.
Was ich meinte, war, den digiKam-Code zu modifizieren und Ihre eigenen Rohdaten einzufügen, bevor Sie ein DNG schreiben, nicht zu versuchen, Ihre Raws direkt zu laden. Wie auch immer, das war, bevor ich wusste, dass es ein SDK von Adobe gibt, das wird Ihre beste Wahl sein.

Die DNG-Dokumentation ist kostenlos bei Adobe erhältlich und enthält ein SDK, obwohl ich das SDK nicht auf Sprachoptionen überprüft habe, sehr wahrscheinlich so etwas wie C oder C ++, aber heutzutage weiß man nie ... :)

In jedem Fall ist die Spezifikation offen und frei nutzbar.

Das Adobe DNG SDK ist eindeutig der beste Weg!
Ja, ich habe die Spezifikation ein paar Mal gelesen, weil es viele Fehlinformationen über das Format gibt, aber ich habe nicht im SDK herumgestochert, um mir dessen sicher zu sein. Ich mag die Idee auch, glücklicherweise ist meine Kamera eine von denen, die es nativ macht, also war es alles, was ich tun musste, um es aus Interesse zu lesen. :)
Nur neugierig, welche Kameramarke Sie haben, die das DNG-Format unterstützt?
@goldenmean - Ich fotografiere Pentax, sie haben seit der K10D DNG-Unterstützung in der Kamera.

Wenn Sie dazu bereit sind, bietet Aptina eine Dokumentation zu vielen Aspekten der Produkte, die (glaube ich) für Hersteller von Add-Ons gedacht sind. Aber wenn Sie ein NDA unterzeichnen, können Sie Zugang zur Dokumentationsbibliothek erhalten, wo Sie vermutlich lernen können, was Sie brauchen, um selbst Code zu schreiben. Siehe ihre FAQ .

Adobe hat ein kostenloses Dienstprogramm, das etwa 350 verschiedene RAW-Dateiformate in DNG konvertiert.

Link für Windows-Version

Link für Mac-Version

Es kann sich lohnen, es auszuprobieren?