![]() |
Suche Programm zur verlustfreien Bearbeitung von Bildern im JPG-Format
Hallo,
ich suche ein Programm zur verlustfreien Bearbeitung von Bildern im JPG-Format. Es gibt zwar eine ganze Menge Programme (XnView, IrfanView, JPEGcrop, Exifer), die Drehung, Spiegelung und Ausschnitt (Crop) beherrschen, bei denen, die ich bisher getestet habe, waren aber immer Unterschiede zum Original zu erkennen (erst nach Spreizung des Histogramms). Liegt das eventuell an meinem Testverfahren? Ich habe in PaintshopPro das Original geöffnet und als 2. Ebene den Ausschnitt darübergelegt (50% transparent, dann Ebenen vereint und das Histogramm gespreizt). Vor der Spreizung gab es bereits 8 Farben (Graustufen) im Bild, statt einheitlich 50%-Grau. Sind das Rundungsfehler? Was ich noch gerne hätte wäre ein Programm, mit dem man JPGs zu einem Bild verbinden kann (nebeneinanderlegen, einfügen etc). Wenn im Raster von 8x8 Pixel gearbeitet wird, müßte das m.W. verlustfrei möglich sein (ohne Neucodierung). |
Habe eben mal überlegt:
Wenn je Grundfarbe (R,G,B) ein Rundungsfehler von 1 Bit zustande kommt, dann können 2^3=8 Kombinationen bzw. Farbtöne entstehen. Diese entstehen auch, wenn ich die Originalebene dupliziere, invertiere und mit 50% Transparenz mit dem Original vereinige. Es liegt also an meiner Methode. Wie kann man 2 Ebenen voneinander direkt subtrahieren ohne über den Umweg der Invertierung (Negativ) zu gehen? |
Hm ... Photoshop Ebenenverrechnungsmodus "Differenz" ist nicht das was Du meinst ?
|
Mit Photoshop hab ich zu wenig Erfahrung, vermutlich wäre es das richtige.
Mal schauen, ob ich das in meinem PaintshopPro finden kann... |
Zitat:
|
Zunächst: "Bearbeiten" ohne Verluste funktioniert bei jpegs nur für ganz bestimmte Operationen: Drehen, Spiegeln, Rotieren um 90°, und Beschneiden.
Im Allgemeinen wird ein Bild vom Programm dekodiert und dargestellt, dann kommt Deine Bearbeitung, und dann wird wieder kodiert. Also muss die Kodierung ein gleiches Ergebnis liefern wie die Dekodierung. Jpeg kodiert in Blöcken von 8x8, 8x16 oder 16x16 Pixeln, also sollte das Ausgangsbild ein Format haben, das einem Vielfachen der Blockgrösse entspricht, z.B. 1600x1200. Ein Bild von sagen wir 1234x567 wird sich nicht verlustfrei bearbeiten lassen! (Ok, jpegtran kann auch damit um, lässt aber einen Rand stehen...) Hier eine Liste von Programmen, die die verlustfreie Bearbeitung beherrschen, vielleicht findest Du da ja was Passendes für Dich. Viele Grüsse vom Bodensee, Michael |
Zitat:
Bei 90°-Drehung, Spiegelung und Crop im Raster 8x8 ist das bei JPG möglich. Bitte kein Hinweis auf RAW! Es geht hier nur um Bilder, die bereits in JPG vorliegen. |
erklärt es mir wenn ich einen Denkfehler habe, aber wenn du Das Bild öffnest, bearbeitest und dann in einem Verlustfreien Format (z.B. Tiff) abspeicherst, hast Du doch gegenüber dem Ausgangsbild sicher keine Verluste oder stehe ich jetzt auf der Leitung ?
|
Dann sicher nicht, aber wenn ich es mit einem "normalen" Programm wieder in JPG speichere, weil es verschiedene Einstellungen bei JPG gibt.
TIFF ist ergibt halt im Normalfall um Faktor 5-20 mal größere Dateien als JPG, und das muß ja nicht unbedingt sein.... |
Zitat:
in IrfanView (4.1) gibt es unter Optionen die Befehle 'verlustfreie Rotation' und 'verlustfreies Freistellen' ... hast du die schonmal ausprobiert :?: Harry |
Zitat:
Zitat:
|
Zitat:
dass du IrfanView aufgelistet hast, habe ich schon gesehen. Nur gibt es dort Standard-Funktionen die verlustbeaftet sind, und eben die genannten Sonder-Funktionen. Wollte nur darauf hinweisen. Harry |
Zitat:
Warum ein Vielfaches von 16 und nicht von 8? Bei einem RGB-JPEG würde tatsächlich ein Vielfaches von 8 genügen. In der Praxis gibt es aber fast nur YUV-JPEGs, wobei die Farb-Differenz-Kanäle meist wesentlich "dünner" sind, d.h. ein 4 MP Bild enthält nur 4 MP im Y-Kanal (Luminanz) und jeweils 1 MP im U- Und V-Kanal. Ein 16x16 Teilquadrat besteht also aus 4 8x8 Blöcken für den Y-Kanal und jeweils einen 8x8 Block für den U- und V-Kanal. |
Bei jedem Speichern eines jpg entstegt Verlust.
Da macht keine Software der Welt etwas dran. Verlustfrei ist z.B. ein .tif Mediengestalterausbildung erste Stunden... :roll: |
Das ist richtig, Joki - im Sinne eines gewöhnlichen Bildbearbeitungsprogrammes. Um ein paar Grade im Uhrzeigersinn kippen, links 13 Pixel abschneiden u.ä. - eigentlich fast alles, was üblich ist.
Und es nicht richtig - im mathematischen Sinne und mit ziemlichen Einschränkungen in den Bearbeitungsmöglichkeiten. Es gibt Bearbeitungen von JPG-Bildern (z.B. um exakt 90° drehen und - wie zuvor schon angemerkt - beschneiden um 8er-Blöcke), die rein mathematisch durchgeführt werden können. Das Ergebnis sind die matrixtransformierten ursprünglichen Bilddaten. Und die lassen sich dann in der Tat verlustlos speichern - nach erfolgter Bearbeitung. Weil nicht neu komprimiert werden muß. LG, Rainer |
Zitat:
|
Drehen habe ich noch nicht getestet, beim Crop gab es wie gesagt Unterschiede, die aber auch durch die Rundungsfehler meiner leider nicht ganz "wasserdichten" Testmethode hervorgerufen werden können.
Die Differenzbildung zweier Ebenen in Paintshop Pro (7) habe ich noch nicht gefunden...:oops: Zitat:
|
Zitat:
Code:
ComponentsConfiguration - YCbCr |
Was für trübe Regentage...
http://www.sonyuserforum.de/forum/showthread.php?t=1466 http://de.wikipedia.org/wiki/JPEG http://upload.wikimedia.org/wikipedi...fessionell.pdf http://www.laser-line.de/news/publis...enformate.html Zitat: Für den Profi-Bereich ist JPEG als Dateiformat wegen der verlustbehafteten Datenreduktion ungeeignet. Statt dessen werden Formate eingesetzt, die verlustfrei komprimieren, ungeachtet des großen Speicherbedarfs. Beispiele sind ➨TIFF, ➨BMP, TGA oder ➨PNG (Vollfarbenmodus). |
Zitat:
Zitat:
LG, Rainer |
Irgendwie redet ihr aneinander vorbei. Joki, natürlich ist ein jpeg verlustbehaftet. Aber das Szenario, um das es hier geht, ist ein anderes: Angenommen, man hat ein jpg und möchte das z.B. nochmal croppen. Also ruft man es auf, macht den Crop und speichert wieder. Dann macht man das erzeugte Bild wieder auf, dreht es um 3° und speichert wieder --- usw. Dadurch werden bei jeder Speicherung zu den ursprünglichen Verlusten neue Verluste hinzugefügt und das Bild wird langsam aber sicher immer schlechter.
Wenn man aber aufpasst, das richtige Programm verwendet, und z.B. das Croppen so macht, dass man die jpeg-Blockgrösse vom Original berüchsichtigt, also z.B. nicht 60 sondern 64 Pixel wegschneidet, dann kann man erreichen, dass sich keine ZUSÄTZLICHEN Verluste einschleichen. |
Hallo Tom,
es gibt kein Programm, mit dem man verlustfrei JPG-Bilder "bearbeiten" (außer drehen und beschneiden) kann, auch nicht Photoshop CS3 extended. Jede richtige Bildbearbeitung wie Tonwertkorrektur, Farbton/Sättigung, Freistellen, Einfügen, Gebrauch von Filtern oder Schärfen bringt im JPG-Format Verluste, die durch die hohe Kompression und 8-Bit bedingt sind. Um verlustfrei zu arbeiten musst man auf Tiff (16-Bit) ausweichen. Dabei kann man Ebenen beibehalten und zu jedem Zeitpunkt auch wieder verlustfrei ändern. |
Zitat:
Weißt du ob ein Aneinanderfügen oder Einfügen im 8x8- oder 16x16-Raster theoretisch möglich ist (für mein (lückenhaftes) Verständnis müßte es). Zitat:
Zitat:
|
Hallo Tom,
ein JPG-Bild ist schon out of Cam mit Verlust behaftet. Jede weitere echte Bearbeitung bringt weitere Verluste. Dieser Tatsache können wir uns nicht verschließen! Das weißt du. Wenn du jedes andere Datei-Format, aus welchen Grund auch immer, ablehnst, wirst du an dieser Stelle nicht weiter kommen. Selbst wenn du sofort so perfekt fotografierst , dass weitere Bearbeitung nicht erforderlich wird, musst du auch ein JPG abspeichern. Damit beißt sich die Katze in den Schwanz. Letztlich kommst du an RAW nicht vorbei, wenn du willst, was du willst, auch wenn du es nicht willst. |
Verlustfreies Bearbeiten von JPG ist unmöglichen (ausser beim verlustfreien Drehen). Bei jeden Landen eines Bildes in ein Programm wird diese dekomprimiert. Beim Speicher des bereits verlustbehafteten Bildes wird die Komprimierung neu berechnet und es kommt wieder zu Verlusten. Wenn man ein JPG bearbeiten muß dann alle Schritte in einem Durchgang machen. Wenn man aber dazwischen speichern muß, weil man vieleicht mehrer Beabeitungsvarianten haben will, dann ist es sinnvoll das JPG vorher in ein TIFF umzuwandeln und erst dann nach endgültiger Bearbeitung wieder in ein JPG speichern. Es ist auch hilfreich JPGs mit möglichst geringer Komprimierung zu erstellen. Also den Fotoaparat auf höchste Qualität einstellen.
|
Zitat:
Zitat:
Es gibt welche, die verstanden haben, was ich will, und einige die es nicht verstanden haben, und deren Aussagen Ihr hier eigentlich nur wiederholt. Danke für Eure Hilfsbereitschaft, es ist ja nicht falsch was Ihr schreibt, aber lest den Thread bitte nochmal aufmerksam von Anfang an durch. Also nochmal, ganz langsam: 1. Die Bilder liegen als JPG vor, daran kann ich nichts ändern. (Hinweise auf RAW oder TIFF sind somit unnötig) 2. Ich will nur drehen (90/180/270°), spiegeln, ausschneiden (eventuell wenn möglich: zusammensetzten oder einsetzen). Sonst Nichts! 3. Ja, das ist mit den o.g. Funktionen bei Einhaltung eines Rasters 8x8 oder 16x16 durchaus ohne jeden Qualitätsverlust möglich. Die üblichen Programme dafür hatte ich ja bereits in der Fragestellung aufgeführt. 4. Mein Prüfverfahren war nicht wasserdicht (wg. Rundungsfehlern) 5. Wer mir jetzt ein Programm nennen kann, welche JPG auch verlustfrei unter den o.g. Bedingungen (Raster) zusammen- oder ineinander einfügen kann, der hat gewonnen und der Thread kann geschlossen werden... ;) Zitat:
|
Hallo Tom,
du kannst JPG verlustfrei in TIFF umwandeln und danch verlustfrei bearbeiten ohne Tonwertspreizung, zusammenfügen, drehen, spiegeln, verzerren usw. so oft du willst. |
Willst Du mich mit Deinen Antworten ärgern? :?
Genau diesen Vorschlag hatten wir doch schon. Meine Antwort darauf auch... :flop: |
Zitat:
Es geht nicht. Ende im Gelände. |
Zitat:
|
Zitat:
Vielmehr als das hier ist "lossless" einfach nicht drin. Zumindest nicht wenn das jpg Format nicht verlassen wird. |
Danke für den Link!
Die dort erwähnte Funktion "Add Margins to your photos (lossless)" läßt mich vermuten, daß es doch geht, Bilder oder Bildteile aneinanderzufügen (auch wenn ich nicht direkt Bilderrahmen gemeint habe). Es erscheint mir auch logisch, wenn ich blockweise codierte JPG-Bilder entlang der Blockgrenzen (aus)schneiden kann, dann müßte man sie auch daran zusammenfügen können. Ich muß zugeben, daß ich mich in Dir getäuscht habe. :oops: Das da Substanz dahinter steckt, war aus Deiner vorletzten Antwort nicht unbedingt zu erkennen, zumal es auch Deine erste in diesem Thread war.:roll: |
Hi,
was ich mich die ganze Zeit schon Frage: Wozu der ganze Krampf? Das man JPGs verlustfrei drehen können will, leuchtet mir ein. Aber dann hört es auf. Wenn ich dann im festgelegten Raster Bilder beschneide oder gar zusammenfüge, dann frage ich mich, warum das dann noch im JPG sein muss. Warum lasse ich die Dinger nicht im Original? Wenn ich das Bild bearbeiten will, dann speichert man Arbeitsstände in einem nicht verlustbehafteten Format (wohl in den meisten Fällen TIFF) ab. Wenn es dann ans Endprodukt geht, dann baue ich das zusammen, manipuliere oder beschneide frei und exportiere doch ohnehin ins Zielformat, was allein wegen des Formatwechsels (Größe, Farbtiefe usw.) ohnehin immer zu Verlusten führt. Viele Grüße Stephan |
Hallo Stephan,
schön, daß Du mein Anliegen als Krampf bezeichnest.:roll: Meine Gründe, warum JPG und nichts anderes, habe ich hier mehrfach erläutert und werde mir deshalb jetzt nicht nochmals wiederholen. Zugegeben, die Funktion ein-/anfügen wird nicht wirklich benötigt, interessiert mich aber, weil ich der Ansicht bin, daß es funktionieren müßte. Die Antwort darauf kann mir aber wahrscheinlich nur jemand geben, der sich genauestens mit der JPEG-Komprimierung und deren mathematische Grundlagen auskennt (potentielle Kandidaten denen ich dieses Wissen zutraue, hatte ich ein paar Posts weiter oben bereits erwähnt). |
Hallo Tom,
... ich lese hier immer mal mit, ohne mich hier einzumischen. Das Problem wird sein, daß es einfach kein Programm geben wird was außer den bekannten Lossless Funktionen wie drehen, spiegeln, beschneiden im 8x8 oder 16x16 Raster abdeckt, da anscheinend auch kein Bedarf besteht. Gerade bei dem Aneinanderfügen müsstest Du ja einzelne Blöcke identifiezieren können, kopieren, und auf dem Zielbild auch wieder so einfügen können, mit der Besonderheit, daß es Lossless behandelt werden muss ... Sowas ist mir noch nicht über den Weg gelaufen, obwohl ich immermal nach neuen Grafikprogrammen und deren jeweiligen Stärken suche und teste. Gruß André |
Zitat:
Viele Grüße Stephan |
Zitat:
alleine wenn man daran denkt wieviel Gehirnschmalz hier schon dafür verwendet wurde:roll: auch der Zeitfaktor ist anscheinend völlig egal??? es ist nicht nur krampfig sondern Kinderkram, denn wenn was dran wäre... hätte längst ein Softwareentwickler was gemacht! Mfg gpo |
Zitat:
Zitat:
Mit dekomprimierten Zwischenstufen bei der Bearbeitung in einer herkömmlichen Bildbearbeitung hätte ich kein Problem, bloß mit der letzten Komprimierung von TIFF zurück in JPEG, was leider mit Qualitätsverlust verbunden ist, da die ursprünglichen Komprimierungs-Parameter der Ursprungsbilder nicht übernommen werden (können?). Ich hatte vor längerer Zeit auch schon mal ein Programm getestet, das angeblich in "Original-JPG-Qualität" abspeichern konnte, aber es handelte sich offenbar nur um eine grob geschätzte Qualitätstufe. |
Zitat:
Jetzt ist das auch noch krampfiger Kinderkram, soso...:flop: Du bist ja für deine kautzige Art bekannt, aber auch Du solltest Dich mit abwertenden Äußerungen mal etwas zusammenreißen...! Der Zeitfaktor ist allein meine Angelegenheit, und deswegen kann Dir das doch völlig wurscht sein. Als Berufsfotograf wird man es natürlich anders sehen. Aber zum Glück bin ich nur "Hobbyknipser". Wenn etwas möglich wäre, muß es schon längst realisiert worden sein... :roll: Das ist ja wohl überhaupt kein Argument. 1. Weiß ich ja nicht ob es das vielleicht nicht doch schon gibt (deswegen frage ich ja danach). 2. Könnte es ja auch sein, daß bisher keiner einen Bedarf gesehen hat und es deswegen noch nicht umgesetzt wurde. Daß verlustfreies Anfügen möglich sein muß, beweist ja wohl die Funktion "Add Margins to your photos (lossless)" von Better JPEG. |
Zitat:
Zitat:
|
Alle Zeitangaben in WEZ +2. Es ist jetzt 18:30 Uhr. |