Sony Advertising
Amazon
Forum für die Fotosysteme von Sony und KonicaMinolta
  SonyUserforum - Forum für die Fotosysteme
von Sony und KonicaMinolta
 
Registrieren Rund ums Bild Galerie Objektiv-Datenbank Kalender Forenregeln Nützliches

Startseite » Forenübersicht » Kreativbereich » Nach der Aufnahme » Programm für Wiederherstellung von Sony RAW-Dateien
Antwort
 
Themen-Optionen Ansicht
Alt 21.07.2010, 20:34   #1
JoeJung
 
 
Registriert seit: 08.09.2004
Ort: A-Nebelberg
Beiträge: 1.649
Programm für Wiederherstellung von Sony RAW-Dateien

Hallo,
nach dem ich am Wochenende fast die Bilder auf einer 8 GB-Speicherkarte verloren hätte - ich hatte in cRAW fotografiert und es gibt nur wenige Programme, die ARW-Dateien wiederherstellen können, habe ich mich ein wenig mit der Thematik Wiederherstellung von RAW-Dateien beschäftigt.

Die meisten meiner Bilder konnten wiederhergestellt werden, ein paar fragmentierte Bilder - da hatte ich zwischendurch was auf der Karte gelöscht - aber nicht. Ich bin Programmierer und ich würde gerne versuchen, ein Programm zu schreiben, mit dessen Hilfe auch fragmentierte Bilder wiederhergestellt werden können - nicht vollautomatisch, aber mit gewisser Unterstützung.

Irgendwo am Anfang einer ARW-Datei müsste abgespeichert sein, wie groß sie ist (Camera RAW beschwert sich sofort, wenn die Datei nur um ein Byte zu kurz ist, aber überflüssige Bytes werden ignoriert) und ich müsste wissen, wie ich an diese Information gelange. Weiß jemand, wie ich zu diesen Informationen gelangen könnte bzw. wen ich kontaktieren soll?

Das Programm könnte - zumindest im ersten Schritt - ausschließlich Sony RAW files wiederherstellen. Ich würde das Programm in C# entwickeln ...

Lg. Josef
__________________
JoeJung

Meine Bilder in der FC
JoeJung ist offline   Mit Zitat antworten
Sponsored Links
Alt 21.07.2010, 20:50   #2
konzertpix.de
 
 
Registriert seit: 28.09.2007
Ort: bei Ulm
Beiträge: 5.888
Hallo, Josef,

das ist ja ganz wunderbar, aber eigentlich ist jedes Programm, das FAT-Sektordaten miteinander verknüpfen kann, in der Lage, beliebige Dateien - und damit auch ARW-Dateien - wiederherzustellen.

Hierbei wird einfach eine Tabelle der mit Nutzdaten belegten Sektoren erstellt und nachgesehen, auf welche Sektoren keine Referenzen von anderen Sektoren zu finden sind. Das sind dann Dateianfänge. Und das Ende ist dann dort, wo kein weiterer verknüpfter Sektor mehr notiert ist. Noch einfacher für den Fall, daß die FAT oder die Kopie derselben noch lesbar ist, ist es, der FAT mit ihren Sektoranfängen von Dateien zu folgen. Oder für den Fall, daß einfach nur gelöscht wurde, das Nullbyte (oder war es ein Leerzeichen ?) am Beginn eines Directoryeintrages mit einem Buchstaben oder "_" zu ersetzen. Das macht aber leider kein simples Recoveryprogramm mehr, sondern nur das undelete von MS DOS 6.x.

Mag sein, daß Camera RAW mit ein paar Byte zuviel nicht klarkommt. Andere RAW-Konverter stören sich dagegen nicht daran und damit hat man immer die Möglichkeit, die sektorweise wiederherstellten Dateien zu öffnen.

Recuva ist so eine Software und dazu noch kostenlos. Die kann fast jeden Fehler auf Datenträgern abfangen und greift notfalls eben roh auf das Medium zu, sollte mal sogar die FAT verloren gegangen sein. Klar, daß Recuva als Windows-Programm auch mit NTFS-formatierten Festplatten zurecht kommt, nicht aber mit den HFS(/+/journaled)-Datenträgern eines Macs. Für Befehlszeilen-Fanatiker bietet sich wiederum photorec an, das gibt es für Windows, Mac und Unixen. Und wenn mal doch was am Mac flöten gegangen sein sollte, gäbe es für knapp 100 EUR z.B. StellarPhoenix als schön grafisches Wiederherstellungsprogramm, das ebenfalls bis auf Datenträgerebene roh auf das verlorene Laufwerk zugreifen kann. Oder als Dreingabe zu einigen SanDisk-Speicherkarten ein Rettungsprogramm auf Mini-CD plus Key.

Deine Idee und das Angebot ist lobenswert. Aber ob das Rad noch ein weiteres Mal erfunden werden soll, kannst nur du beurteilen, denn vielleicht hast du ja einen vollkommen anderen Ansatz als deine Vorgänger, der umzusetzen lohnenswert erscheint

LG, Rainer
konzertpix.de ist offline   Mit Zitat antworten
Alt 22.07.2010, 14:04   #3
mad_axe
 
 
Registriert seit: 02.02.2007
Ort: Leipzig
Beiträge: 1.022
Ich schaue heute abend mal in meine Favs, habe schonmal mit den Sony Raw rumgespielt und müsste noch irgendwo den Aufbau haben. Ich hatte mit einem MC dann die Vorschaubilder usw ausgelesen.

Gruß
Micha
__________________
(3D Programm + 2D Monitor)² = Tolle Kamera

http://www.burca.net
mad_axe ist offline   Mit Zitat antworten
Alt 22.07.2010, 14:08   #4
mad_axe
 
 
Registriert seit: 02.02.2007
Ort: Leipzig
Beiträge: 1.022
Zitat:
Zitat von konzertpix.de Beitrag anzeigen
Deine Idee und das Angebot ist lobenswert. Aber ob das Rad noch ein weiteres Mal erfunden werden soll, kannst nur du beurteilen, denn vielleicht hast du ja einen vollkommen anderen Ansatz als deine Vorgänger, der umzusetzen lohnenswert erscheint
Ich denke ja eher er will ein wiederhergestelltes defektes RAW reparieren. Also im Header steht ja die Länge der Rohdaten und wo das Vorschaubild anfängt usw. Man müsste also bei defekten Dateien die Länge anpassen (mit 0 Bytes usw). Dann hätte man zwar "Pixelfehler" aber immer noch besser als gar kein Bild. Bin daran auch interessiert, hatte nach USB Festplattencrash noch RAW dateinen, die ein Programm wieder hergestellt hat. Aber alle lassen sich nicht öffnen, und ich hatte bis jetzt noch keine Zeit mich dem Problem anzunehmen. Beim proggen kann ich mit helfen, C# sollte gehen und ich glaub ich habe da auch noch eine Bilbliothek @home.

Gruß
Micha
__________________
(3D Programm + 2D Monitor)² = Tolle Kamera

http://www.burca.net
mad_axe ist offline   Mit Zitat antworten
Alt 22.07.2010, 14:46   #5
dey
 
 
Registriert seit: 03.09.2009
Ort: Ilvese boi Mannem
Beiträge: 15.272
Zitat:
Zitat von konzertpix.de Beitrag anzeigen
Recuva ist so eine Software und dazu noch kostenlos.
Da du hier Recuva erwähnst noch ein Hinweis. Dieses Programm funktioniert ohne Installation, einfach eine ausführbare Datei. Aber man kann sie meines wissens nach nicht als finale exe runterladen.
Deswegen mein Tip an alle: das Programm zur Datenrettung besorgen und installieren bevor die Daten verschwunden sind. Sonst wird im zuge des Suchen, Probieren und Installieren das zerstört, was ihr retten wollt. Das ist besonders für jene interessant, die wie ich eine SSD haben, da dort die üblichen Rettungs-CDs nicht arbeiten.

bydey
dey ist offline   Mit Zitat antworten
Sponsored Links
Alt 22.07.2010, 18:25   #6
JoeJung

Themenersteller
 
 
Registriert seit: 08.09.2004
Ort: A-Nebelberg
Beiträge: 1.649
Das Programm Recuva hat bei mir leider keine Bilder gefunden. Bei der Karte im Originalzustand, hat Recuva nach ein paar Sekunden aufgehört und nach dem Formatieren der Karte nach ca. 10 Minuten - leider ohne Bilder.

Das Programm exiftool kann die benötigten Informationen auslesen, die müssten also in den EXIF-Daten enthalten sein. Hier mal ein Auszug der relevanten Datein:
Zitat:
Strip Offsets : 622592
Rows Per Strip : 2856
Strip Byte Counts : 12246528
Preview Image Start : 155683
Preview Image Length : 452116
Aus dem Wert von Strip Offsets und Strip Byte Counts lässt sich die Dateigröße berechnen. Ich werde mal versuchen, ob ich mit Hilfe dieser Informationen die 9 oder 10 fragmentierten RAW-Dateien mit Hilfe eines Hex-Editors wiederherstellen kann. Falls das gelingt, wäre mein Denkansatz zumindest einmal richtig.

Jede RAW-Datei hat am Anfang eine Signatur aus 4 Bytes und in diesem Sektor noch zusätzlich den Namen des Kameramodells. So kann der Anfang mit 100prozentiger Sicherheit erkannt werden. Wenn ich jetzt auch noch die Länge der Datei kenne, kann ich prüfen, ob die RAW-Datei vollständig ist oder ob es sich um ein Fragment handelt. Weiters erkenne ich, ob das Fragment vom Anfang oder vom Ende stammt. Mit diesen Informationen könnten sich auch fragmentierte Dateien zumindest von Speicherkarten wiederherstellen lassen.

Lg. Josef
__________________
JoeJung

Meine Bilder in der FC
JoeJung ist offline   Mit Zitat antworten
Alt 22.07.2010, 19:13   #7
averel
 
 
Registriert seit: 07.05.2009
Ort: Hessen
Beiträge: 610
Das Problem haben wir schon besprochen. Guck mal den Link da hab ich meine Geschichte erzählt, vielleicht hilft dir auch.

Edit: Sorry war bissel deneben mit meiner Antwort Aber du kannst den Quellcode vom Testdisk angucken, vielleicht bringt dich ein Stück weiter.
__________________
Gruß verel

Geändert von averel (22.07.2010 um 19:19 Uhr)
averel ist offline   Mit Zitat antworten
Alt 22.07.2010, 22:01   #8
Moritz F.
 
 
Registriert seit: 08.10.2006
Ort: Hamburg
Beiträge: 428
Hi,
ich stelle grade 900GB von meiner externen Festplatte wieder her. Mit demselben Programm, wie ich auch schon mehrfach meine Speicherkarten wiederhergestellt habe. Heißt GetDataBack und kommt von Runtime.
Man kann das Programm kostenlos testen und wenn es funktioniert muss man nicht alles nochmal machen, sondern kann auch in der Testversion seinen Fortschritt speichern und dann das Programm kaufen. Es kostet zwar $79, ist aber wirklich eine Empfehlung wert. Wenn nichts zu klappen scheint, einfach mal ausprobieren. Liest auch wirklich ALLE Dateiformate.
Viel Erfolg, LG
Moritz
Moritz F. ist offline   Mit Zitat antworten
Alt 24.07.2010, 20:47   #9
JoeJung

Themenersteller
 
 
Registriert seit: 08.09.2004
Ort: A-Nebelberg
Beiträge: 1.649
Ich habe jetzt mit den Informationen aus dem Programm exiftool und einem primitiven Hexeditor 9 von 11 ursprünglich fragmentierten Bildern noch manuell wiederherstellen können. Bei den restlichen beiden gibt es anscheinend irgend eine interne Fragmentierung, die ich einfach nicht knacken kann.

Ich schreib hier mal ein paar Werte auf, die mir weitergeholfen haben, vielleicht braucht sie ja noch wer:
Der RAW-Bereich in einem cRAW-File der Alpha 700 ist immer 12246528 Bytes lang. Die Gesamtlänge der Datei hängt somit ausschließlich von der Größe der Vorschaudatei ab. Diese beginnt immer am Offset 155683. Die Länge der Vorschaudatei läßt sich problemlos mit dem exiftool auslesen. Das Offset + der Länge ergibt den Start des RAW-Bereichs. Dabei muss man noch berücksichtigen, dass dieser Anfang immer ein Vielfaches von 32k sein muss. Mit diesen Informationen lässt sich die Größe der Datei berechnen (auch dabei muss berücksichtigt werden, dass die Gesamtgröße ein Vielfaches der Größe einer Zuordnungseinheit auf der Speicherkarte sein muss). So bekommt man einen Überblick, welche Dateien wie viel zu lange bzw. zu kurz sind und zusammen mit dem Aufnahmedatum, lässt sich ermitteln, welche Blöcke noch wie verschoben werden müssen.

Ich werde in Zukunft keine Bilder mehr mit der Kamera löschen (oder zumindest nur mehr ganz am Ende). So entsteht auf der Karte keine Fragmentierung und die Bilder können im Falle eines Falles einfacher wiederhergestellt werden.

Lg. Josef
__________________
JoeJung

Meine Bilder in der FC
JoeJung ist offline   Mit Zitat antworten
Alt 27.07.2010, 06:35   #10
Rainer Zufall
 
 
Registriert seit: 17.04.2009
Ort: Darmstadt
Beiträge: 35
die ARW-Dateien haben als interne Datenstruktur eine TIFF-Struktur ( wie eigentlich fast alle RAW-Dateien ). Daher gibt es auch keine absolute Längenangabe. Wenn du dir einen kleinen TIFF-Parser programmierst wirst du schnell erkennen wo es in deinen Dateien klemmt, bzw. wie eine heile Datei aussehen sollte. Da die Info-Kette nahezu immer gleich sein sollte kannst du in den FAT-Datenblöcken nach den fehlenden IDF-Einträgen suchen und so versuchen die Datei wieder zusammen zubringen.

Das mit den weniger Bytes macht Sinn: wenn die interne verlinkte Info-Kette unterbrochen wird oder einige Offsets nicht mehr in der Datei sind fällt das sofort auf, zusätzliche Bytes die nicht adressiert werden sind ziemlich egal.

Tip: es gibt den Raw-Konverter dcraw als Quelltext, dort kannst du ja mal nachsehen wie eine Datei eingelesen wird, nur Vorsicht: der Quelltext ist ziemlich caotischer Spaghetti-Code :-(
Rainer Zufall ist offline   Mit Zitat antworten
Sponsored Links
Antwort
Startseite » Forenübersicht » Kreativbereich » Nach der Aufnahme » Programm für Wiederherstellung von Sony RAW-Dateien


Forenregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +1. Es ist jetzt 21:46 Uhr.