Bildformate

Aus der Mikrocontroller.net Artikelsammlung, mit Beiträgen verschiedener Autoren (siehe Versionsgeschichte)
Wechseln zu: Navigation, Suche

Das Problem

Will man im Forum eine Antwort auf Fragen erhalten, sollte man es den anderen Forenteilnehmern so leicht wie möglich machen, sich die dazugehörigen Abbildungen anzusehen. Muss man dazu die Dateien aber erst speichern oder gar ein Archiv entpacken und womöglich noch ein externes Programm benutzen, um die Dateien ansehen zu können, wird die Resonanz signifikant geringer sein, als wenn man ein Bild einfach nur hätte anklicken müssen, um es direkt im Browser zu betrachen. Daher wird empfohlen, Bilder direkt anzuhängen. Aber:

Leider kommt es dabei immer wieder vor, daß sich manche Forenteilnehmer "im Format vergreifen". Z.B. werden eigentlich kleine, mit wenig Farben ausgestattete Zeichnungen zu Dateimonstern von 1 MB und mehr aufgebläht, was auch im DSL-Zeitalter einfach nicht sein muss. Es gibt bereits genug Datenmüll und Bandbreitenverschwendung im Internet. Ausserdem ist eine wachsende Anzahl von Leuten mobil per Smartphone/UMTS/GSM/Modem etc. mit deutlich geringerer Bandbreite im Internet unterwegs, an die man auch ein klein wenig denken sollte. Zu guter Letzt gilt aber auch einfach: "Klasse statt Masse".

Vielleicht gar kein Bild?

Manchmal ist es angebracht, überhaupt nichts anzuhängen. Beispielsweise ist das oft der Fall bei Datenblättern: Statt die möglicherweise hundertste Version des Datenblattes heraufzuladen, wäre ein Link deutlich angebrachter. Einerseits sind damit etwaige rechtliche Probleme schnell ausgeräumt, andererseits stolpert ein Leser in einiger Zeit nicht über ein womöglich bereits veraltetes Dokument.

Für einen Leser kann es auch durchaus sinnvoll sein, zu wissen, woher ein Dokument stammt: etwa um weitergehende Recherche zu betreiben. Zumindest eine brauchbare Quellenangabe ist jedoch Pflicht, wenn schon Material von externen Seiten entnommen wird.


Welches Format für welches Bild?

Fotos und Scans: JPG

Fotos sollten im JPG-Format abgespeichert werden. JPG bzw. JPEG (Joint Picture Expert Group) ist ein speziell für Echtfarbgrafiken (True Color) entwickeltes Bildformat. Es ermöglicht die Speicherung von Photos in 24 Bit Farbauflösung bei relativ geringem Speicherverbrauch. So hat z. B. ein Bild einer 2 Megapixel Digitalkamera (1600x1200 Punkte) einen Speicherbedarf von 6 MB ohne Kompression. Mit JPG und mittlerer Kompressionseinstellung sind es nur noch ca. 500 kB. Die Bilder werden dabei jedoch verlustbehaftet komprimiert. Das heißt sowohl Farben als auch Strukturen werden nicht eins zu eins abgespeichert, sondern mittels cleverer Mathematik soweit verarbeitet, dass speicherintensive Details rausfallen. Im Normalfall sieht man das nicht.

Da jedoch 2 Megapixel heute eher zum alten Eisen gehören haben viele Leute Kameras mit 5 Megapixel und mehr. Und da man ja auch auf Qualität bedacht ist, ist meist auch nur eine geringe Kompression der Bilder eingestellt (hohe Qualität, Superfein etc.). Bitte solche Bilder nicht direkt im Forum posten.

Man kann die Bildqualität vor der Aufnahme direkt an der Kamera einstellen. 2 Megapixel reichen völlig. Bei manchen Kameras werden im Menu Namen verwendet wie zum Beispiel "Poster" (nicht geeignet) oder "Abzug, mittel" (geeignet).

Vorteilhaft ist es, wenn Bauelemente oder Baugruppen vor einem einfarbigen Hintergrund (bei dunklen Objekten, ideralerweise weißes Blatt Papier) fotografiert werden. Dies verbessert zum Einen die Erkennbarkeit, außerdem trägt der Hintergrund dann nur noch unwesentlich zur Dateigröße bei. Ungünstig sind kontrast/detailreiche Hintergründe (Stoff, Holz, Rechnungen/Steuererklärungen oder viele Möbeloberflächen).

Mit ein paar wenigen Handgriffen kann man die Bilder netztauglich machen. Wer sich keine Spezialsoftware zur Bildbearbeitung herunterladen möchte, kann das auch mit dem vorinstallierten Microsoft Windows Paint machen:

  • Das Bild in Paint öffnen. (Rechtsklick -> Bearbeiten)
  • Mit Strg + A das ganze Bild markieren.
  • Mit dem Mauszeiger das Bild soweit nach links oben schieben, bis der interessante Teil in der Ecke links oben ist. Die Auswahl mit "ESC" beenden.
  • Mit den Scrollleisten im Bild nach rechts unten fahren. In der unteren rechten Ecke befindet sich ein kleines blaues Kästchen. Dieses Kästchen mit dem Mauszeiger nach links oben schieben, bis der uninteressante Bildteil rechts unten entfernt ist.
  • Das komplette Bild lässt sich verkleinern indem man im Menu auf "Bild" -> "Strecken/Zerren" und bei "Horizontal" und "Vertikal" 50% eingibt und auf "OK" klickt.
  • Bild speichern und hochladen.

Alternativ kann man auch ein normales, kostenloses Bildbearbeitungsprogramm wie z. B. Irfanview oder GIMP herunterladen.

  • Kompression erhöhen, einstellbar in den Speicheroptionen für JPG; 30% ist ein guter Kompromiss aus Qualität und Kompression
  • Bildauschnitt auf das Wesentliche konzentrieren; ein kleiner IC der nur 1/10 der Bildfläche einnimmt, ist etwas "verloren"
  • Auflösung reduzieren; niemand braucht 4000x3000 für die Art der hier geposteten Bilder; 1600x1200 oder weniger ist oft ausreichend
  • JPEG-Bilder können mit Irfanview verlustfrei um 90 Grad gedreht werden. (Taste Shift-J). So können die Leser auch Beschriftungen lesen ohne selber rotieren zu müssen.
  • Beim Fotografieren von ICs und Leiterplatten den Macromodus verwenden (meist ein Blumensymbol), damit werden kleine, nahe Objekte scharf abgebildet.
  • Auf die Bildschärfe achten, völlig verwaschene Schatten nützen niemanden etwas
  • Platinen kann man sehr gut mit einem Scanner abbilden
Mikroskop org.png
Mikroskop washed.jpg
Mikroskop washed 64.jpg
.png 386KB (Original .tiff 901kB) gedreht, Kontrast+, Zuschnitt, geschärft .jpg 68kB 16 Farben 43kB

Verwackelte/Unscharfe Fotos

Viele Fotos sind unscharf oder verwackelt, was besonders der Fehlersuche nicht zuträglich ist. Dabei ist es sehr einfach, scharfe und erkennbare Fotos zu erstellen:

  • Mehr Licht! Schreibtischleuchte einschalten oder einfach nach draußen gehen. Dadurch kann die Kamera eine kürzere Verschlusszeit verwenden (weniger Verwackelungsgefahr) und die Bildempfindlichkeit verringern (weniger Rauschen).
  • Schärfewarnung beachten! Die meisten Kameras zeigen an, wenn sie nicht richtig fokussieren können oder die Belichtungszeit zu lang ist. In den allermeisten Fällen kann man ihnen dabei auch trauen. Große Brennweite ("viel Zoom") und geringe Entfernung beißen sich in optischen Systemen - weniger ist oft mehr!
  • Für Makroaufnahmen (Nahaufnahme mit viel Details) muss meist der Macromodus aktiviert werden (oft ein Blumensymbol)

Exemplarisch hier zwei Fotos:

Bild A wurde ohne zusätzliches Licht fotografiert, die Kamera hat ISO400 und 1/3s Belichtungszeit gewählt. Hier konnte nicht einmal der Bildstabilisator die Aufnahme retten: Die Bezeichnungen der Bauteile und der Bestückungsdruck können nicht mehr gelesen werden. Trotzdem ist die Aufnahme 2,9 MB groß hochgeladen worden (Aus Rücksicht zum Server ist die Aufnahme auf 50% reduziert und somit nur noch 340 KB groß, was aber die Bildschärfe nicht besser macht)

Für Bild B wurde lediglich eine Schreibtischleuchte eingeschaltet - die Kamera konnte mit 1/60s und ISO200 aufnehmen. Ergebnis: Weniger Bildrauschen und kein Verwackeln! Auf den wesentlichen Teil beschnitten ist die Aufnahme nur noch 55kB groß, wobei sogar die Lasergravur auf dem Quarz links unten deutlich lesbar ist.

Technische Zeichnungen: SVG oder PNG

Zu technischen Zeichnungen gehören

  • Schaltpläne
  • Layouts
  • Mechanische Zeichungen
  • Screenshot

Wesentliche Merkmale dieser Zeichungen sind

  • relativ wenig Farben
  • feine Strukturen (Linien, Leiterbahnen)

Werden solche Zeichnungen nun als JPG gespeichert kommt es zu sogenannten Kompressionsartefakten (verwaschene Kanten, "Pickel" in gleichmässigen Flächen, unscharfe Texte). Der Kompressionsalgorithmus von JPG ist darauf spezialisiert kleine Details "wegzuwischen", um Speicher zu sparen. Das ist aber gerade hier kontraproduktiv! Technische Zeichnungen brauchen Details! Außerdem wird das Bild bei JPG immer mit 24 Bit Farbtiefe verarbeitet. Das ist Platzverschwendung, die meisten technischen Zeichnungen kommen mit 16 oder 256 Farben bequem aus. Allerdings gilt auch hier: PNG-Dateien müssen nicht mehrere MB groß sein. Ggf. Komprimierung anpassen um kleine Dateien zu erhalten.

Deshalb speichert man technische Zeichnungen sinnvollerweise nur im PNG-Format (Portable Network Graphic). PNG ist die Weiterentwicklung von GIF (Graphic Interchange Format), welches ursprünglich von der Firma Compuserve als erstes Format für Netzwerkgrafiken entwickelt wurde. PNG komprimiert Bilder verlustfrei, d.h. das Bild wird 1:1 in Struktur und Farbe gespeichert. GIF kann dagegen nur 256 Farben speichern, die Struktur bleibt aber auch 1:1 erhalten. Für animierte GIFs gibt es bis jetzt keine verbreitete Alternative. Obwohl der Patentschutz von GIF mittlerweile abgelaufen ist, sollte man GIF nicht mehr verwenden, weil

  • PNG beliebige Farbtiefen von 1..24 Bit unterstützt (GIF nur 8 Bit)
  • die Kompression von PNG geringfügig besser ist als GIF

Den Unterschied zwischen verlustfreier Kompression mit PNG und verlustbehafteter Kompression mit JPEG sieht man hier, wobei zwecks Demonstraktion die JPEG-Kompression extrem stark gewählt wurde. Beide Bilder sind ungefähr gleich groß vom Speicherbedarf.

Eine Anmerkung zu Screenshots: Häufig ist auf dem Rechner ein Subpixel-Rendering (vertikale Kantenglättung) namens ClearType oder CoolType aktiviert. Das führt dazu, dass:

  • Screenshots unnötig groß werden (lassen sich schlechter komprimieren)
  • auf nicht kompatiblen Monitoren, etwa Beamern, beim Betrachter Farbsäume und Unschärfen zeigen
  • beim Vergrößern und Verkleinen lustige (oder unverständliche) Effekte aufweisen

Wer also einen guten Screenshot machen möchte, sollte vorher das Subpixel-Rendering ausschalten.

Bei Fenstern mit runden Ecken oder Semitransparenz ist es sinnvoll, dieses vorher vor einen weißen Hintergrund zu setzen (etwa einem Web-Browser mit der URL about:blank). Screenshotprogramme, die dafür Alpha-Transparenz benutzen, sind nicht bekannt.

Windows ab Vista bringt zum Erstellen von Screenshots das Snipping Tool mit. Damit kann man auch ohne ein Bildbearbeitungsprogramm zu bemühen Fotos von einzelnen Fenstern oder Bildschirm-Ausschnitten machen.

Universalformat PDF

Das Format PDF wurde vor langer Zeit von der Firma Adobe entwickelt und hat sich schon lange als de-facto-Standard etabliert. Es ist auf allen gängigen Betriebssystemen lesbar. Es ist relativ kompakt (kleine Dateigrößen) und kann sowohl JPG, PNG als auch vektorbasierte Grafiken enthalten. Viele Programme bieten sowohl direkt einen Export als PDF an, oder man kann mittels Software ein PDF "drucken", sprich anstatt eines echten Druckers, welcher Papier ausspuckt, wird eine PDF-Datei erzeugt.

PDF generieren

Gerade die Einbindung von Bildern und Grafiken erfordert etwas Feingefühl mit dem PDF-Generatorprogramm. Viele Generatoren sind so voreingestellt, jede Rastergrafik per JPG zu komprimieren, wodurch eine – womöglich sogar als unkomprimierte 1-bpp-Bitmap recht kleine – Grafikdatei zu einem verwaschenen (JPG-Artefakte) Monster regelrecht explodieren (Dateigröße) kann.

Am besten fährt man, wenn man ausschließlich Vektorgrafiken beim Erstellen verwendet. Dann bleibt auch das Ergebnis gestochen scharf (insbesondere beim Vergrößern und Ausdrucken) und dennoch klein (Dateigröße). Außerdem bleiben Textanmerkungen in der Grafik durchsuchbar, sofern der Text nicht vektorisiert wurde.

Export mit CAD-Programmen

Eagle

Das weit verbreitete Schaltplan- und Layoutprogramm EAGLE bietet direkt die Möglichkeit, Schaltpläne und Layouts als PNG-Bild zu exportieren (Menu File->Export->Image). Aber bitte nicht die Auflösung zu hoch einstellen! Die Voreinstellung von 150 dpi ist meist optimal für Schaltpläne. Layouts sind manchmal in 300dpi sinnvoll. Vorsicht! Es gibt einen kleinen Bug. Wenn man in der erscheinenden Dateiauswahlbox auf *.png umstellt, muss man auch einen Dateinamen mit .png Endung hinschreiben, sonst springt Eagle wieder zurück auf BMP Format! Der Export über die Zwischenablage ermöglicht die bequeme Nachbearbeitung mit dem Lieblings-Grafikprogramm, etwa dem Abschneiden überflüssiger Rahmen oder der Reduktion der Farbtiefe.

Ab Version 5 kann Eagle auch als PDF-Datei exportieren (man findet diese Option allerdings nicht im Datei->Exportieren...-Menü, sondern unter Datei->Drucken). Das hat den Vorteil, dass eine echte Vektorgrafik exportiert wird. Somit kann man beliebig zoomen, und die Datei ist sehr klein.

Von Enthusiasten geschriebene Programme

Als ULP (User Language Program) gibt es Export-Programme für die Vektorformate EPS, SVG, CGM, WMF und EMF, mit unterschiedlicher Wiedergabetreue. Diese eignen sich insbesondere für die Weiterverwendung in Office-Programmen.

Für eine realitätsnahe Leiterplattenansicht gibt es Eagle3D als ziemlich umfangreiches ULP. Zum Rendern der entstehenden Zwischendatei wird Povray benötigt.

Formate, die man meiden sollte

Nie wieder BMP!

Das Format BMP sollte man gänzlich meiden! Es ist ein unkomprimiertes oder RLE-komprimiertes Format und die Dateien sind riesig! BMP-Dateien werden von der Forensoftware serverseitig automatisch nach PNG konvertiert!

TIFF

Dieses Format teilt sich in etliche Unterformate, die meist nicht von allen Programmen unterstützt werden. Insbesondere ist die Unterstützung bei Webbrowsern sehr schlecht. TIFF-Dateien (Endung meist .TIF) können je nach Unterformat sehr groß werden.

Proprietäre Formate

Formate, die nicht ohne Zusatzsoftware betrachtet werden können. Dazu gehören z. B. Schaltpläne/Layouts im Eagle-Format (.sch/.brd) oder Schaltpläne im LTSpice-Format (.asc).

Mehrere Dateien zusammenfassen

Weder PNG, noch GIF, noch JPG kann man sinnvoll mit ZIP, RAR und welchem Packer auch immer weiter verkleinern, denn all diese Formate sind schon komprimiert! Einzig dann, wenn man mehrere Bilder hochladen und den Thread übersichtlich halten möchte, kann der Einsatz eines Packprogramms sinnvoll sein, um einfach mehrere Dateien zu einem Archiv zusammenzufassen. Dabei sollte man nur das ZIP-Format verwenden. Diese lassen sich unter so gut wie allen aktuellen Betriebssystemen mit Bordmitteln öffnen. RAR und andere Formate mögen zwar vielleicht ein paar Prozente kleiner packen, aber es ist nervig, wenn man sich erst noch ein Programm zum Auspacken suchen muss.

Software

Um Ausreden wie "Ich hab aber keine Software, um Bilder zu bearbeiten/verkleinern/verbessern" für nichtig zu erklären, hier noch einmal verschiedene Programme:

Bildbearbeitung

  • Irfanview (kostenlos)
  • GIMP (kostenlos)
  • Paint.NET (kostenlos)
  • Paint (bei Windows in allen Versionen mitgeliefert)

Screenshots

  • Die Taste "Druck" auf der Tastatur. Anschließend im Bildbearbeitungsprogramm strg+v
  • SnagIt
  • Snipping Tool (bei Windows seit Vista mitgeliefert)
  • Shutter (Linuxalternative zu Snipping Tool)
  • scrot (Linux Kommandozeile): Mit
    scrot -s [file]
    kann man mit der Maus den passenden Ausschnitt wählen, das spart meist die Nachbearbeitung. scrot kann auch ein Panorama von mehreren Monitoren erzeugen.
  • Unix/X11: “import” aus der ImageMagick-Suite; einfach aufrufen als
    import /tmp/screenshot.png
    Wichtig ist, dass das abzubildende Fenster vollständig dargestellt ist; ggf. starten mit
    sleep 5; import /tmp/screenshot.png
    Dann hat man anschließend 5 Sekunden Zeit, das auszuwählende Fenster richtig „in Position“ zu bringen
  • Gimp: im „Datei“-Menü gibt es unter „Erstellen“ eine Screenshot-Funktion

Zusammenfassung

  • Photos, Scans : JPG mit ca. 40% bis 70% Kompression
  • Technische Zeichnungen und Screenshots : PNG
  • PDF ist universell für nahezu alles geeignet (aber auch hier sollten eingebettete Bilder in einem geeigneten Format sein!)
  • Mehrere Dateien zusammenfassen: ZIP
  • Bildoptimierung bei freiesmagazin.de.
  • Produktfotografie-Ratgeber E-Book von Eberhard Schuy