defekte JPG reparieren

holzfelix

Cadet 4th Year
Registriert
Juli 2018
Beiträge
121
Hoi zusammen,

ich hab diverse defekte JPG.
(ich hab kein Datenverlust ich hab alle noch in ganz und diverse Backups.) Das ist also nicht teil der frage.

Meine Konkrete frage, ist, gibt es gute Tools um defekte jpgs. Zu reparieren. Ich bin jetzt schon länger damit beschäftigt und bin der Meinung, die Datei-Inhalte sind noch alle da.

Die Defekte zeigen sich durch großflächige graue Felder oder durch Artefakte.

z.B. so:
1712242090799.png


oder so:
1712242111257.png


DAnke für euren Input.
 
Nein ... Das macht keinen Sinn .. JPG ist ein VERLUSTBEHAFTES Kompressionsverfahren. Daher sind Informationen, einmal Verloren, auch weg. Hier gibt es keine Redundanz, aus welchem sich die Daten wieder herstellen lassen.
 
Ich bin ja schon bisschen länger damit beschäftigt. Deine Aussagen sind korrekt. Aber ich muss ja nichts wiederherstellen. Sondern Reparieren. Es kommt wohl oft zu falschen Hex werten am beginn der Datei.

Die Dateigrößen sind auch gleich groß wie die ganzen Dateien.
Ergänzung ()

Ich hab beispielsweise dieses tool gefunden:
https://www.jpeg-repair.org/vg-jpeg-repair/

sowas in die richtung suche ich
 
Wenn du das Original hast, dann mach ein Binärdiff der Dateien und schau, wo/wie welche Bits gekippt sind.
Simples Reparieren ist irgendwo zwischen unpraktikabel aufwendig bis unmöglich.
 
  • Gefällt mir
Reaktionen: Fusionator, kartoffelpü und cyberpirate
holzfelix schrieb:
Ich bin ja schon bisschen länger damit beschäftigt. Deine Aussagen sind korrekt. Aber ich muss ja nichts wiederherstellen. Sondern Reparieren. Es kommt wohl oft zu falschen Hex werten am beginn der Datei.
Entweder, Du hast/kennst zum Reparieren die korrekten Daten, oder jedes Tool der Welt müsste diese erraten. Das mag bei wenigen Konstellationen funktionieren, es lässt sich aber nicht immer aus dem Inhalt eines Markers erraten, welcher Typ es ist, wie lang er sein müsste (der nächste Marke kann ja genauso kaputt sein) usw.

Wenn dann noch mehrere Byte kaputt sind, hat das mit BitRot nichts mehr zu tun, da ist am Dateisystem oder dem Ram vom Rechner etwas so grundlegend kaputt (gewesen), dass man eher froh sein kann, wenn man das früh genug erkennt. So ging es mir jedenfalls damals mit einem defekten Ram-Riegel.

Wenn immer die ersten Byte defekt sind, dann tausche sie doch mal bei einer Datei gegen die korreken aus dem Backup aus und Du siehst, ob Deine Theorie bei dieser Datei zutrifft. Einfach einen Hexeditor anwerfen und die Bytes der korrekten Datei in die defekte kopieren.

Kennst Du die defekten Byte, dann kannst Du Dir auch überlegen, wie gut Du sowas korrekt erraten könntest.

tRITON schrieb:
Danach folgen eh die Huffmantables und wenn die Daten hier korrupt sind, kannst Du die auch nicht mehr "gerade" rechnen.
Was allgemein natürlich korrekt ist, mag unter gewissen Voraussetzungen trotzdem möglich sein. Ähnlich wie einige Rettungstools für Actioncam-Aufnahmen, die zu früh abgebrochen wurden (womit u.A. der Header fehlt). Kennt man die Aufnahmedaten (also die Kamereinstellung) war da duzrchaus einiges noch rettbar.

Genauso könnte es hier sein, wenn die defekten JPGs alle aus der selben Kamera stammen. Erwartungsgemäß scheint meine D850 für alle JPGs (mit der selben Kompressionseinstellung der Kamera, ggf. sogar die selbe Firmware-Version) auch die selben Huffman-Tables zu nutzen. Aus Performancegründen wird da lieber etwas Dateigröße mit optimieren Huffman-Tables je Bild verschenkt.
 
Zurück
Oben