ubuntuusers.de

Metapixel

Dieser Artikel wurde für die folgenden Ubuntu-Versionen getestet:

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

Wiki/Icons/terminal.png Metapixel 🇬🇧 ist ein Kommandozeilenprogramm, mit dem man ein Fotomosaik erzeugen kann. Man gibt ein Zielbild vor, das anschließend aus vielen kleinen Bildern zusammengesetzt wird (Beispiele 🇬🇧).

Eine grafische Alternative zu Metapixel ist im Programm nomacs (Abschnitt „Mosaikbild-erstellen“) integriert.

Installation

Metapixel ist in den offiziellen Paketquellen enthalten und lässt sich so bequem installieren [1]:

  • metapixel (universe)

Paketliste zum Kopieren:

sudo apt-get install metapixel 

Oder mit apturl installieren, Link: apt://metapixel

Danach kann die Anwendung durch Aufruf des Programmnamens [2] gestartet werden.

Vorbereitung

Um mit dem Programm sinnvoll zu arbeiten, sollte man eine Vielzahl von Bildern haben. Empfehlenswert sind (mindestens) um die 1000 Bilder. Damit lassen sich schon recht gute Ergebnisse erzielen. Bevor man allerdings loslegen kann, müssen diese Bilder dem Programm erst mal bekannt gemacht werden. Das Programm liest die Bilder ein und speichert ihre Farbwerte für die spätere Verwendung ab.

Ersteinrichtung

Zur Ersteinrichtung muss ein Arbeitsverzeichnis für das Programm angelegt werden. Dort werden dann automatisch die Bilder gespeichert, die zur Mosaikerstellung verwendet werden. Dazu erstellt man im Homeverzeichnis den versteckten Ordner ~/.metapixel/.

Natürlich kann man auch über das Terminal [3] den Ordner anlegen:

mkdir ~/.metapixel 

Nun teilt man dem Programm mit, mit welchen Original-Bildern es arbeiten soll. Dazu gibt man diesen Befehl im Terminal ein:

metapixel-prepare -r pictures_folder .metapixel 

Der Pfad pictures_folder stellt dabei den Quell-Pfad mit den Original-Bildern dar. Diesen sollte man auf jeden Fall anpassen und hier am besten die zu verwendenden Bilder hinein kopieren. Wenn man diesen Befehl aufgerufen hat, dauert es je nach Anzahl der im Ordner enthaltenen Bilder eine Weile. Danach hat metapixel die erforderliche Bild-Bibliothek angelegt und man kann nun mit der wirklichen Erstellung des Photo-Mosaiks beginnen.

Erstellung von Photo-Mosaiken

Metapixel bietet eine Vielzahl von Einstellungsmöglichkeiten. Wer sich eingehender damit befassen möchte, dem sei geraten, sich den Quellcode von der Projektseite ⮷ herunterzuladen und in der "Readme" nachzulesen.

Erst einmal die grundlegende Syntax:

metapixel --metapixel input_file.jpg output_file.jpg -l ~/.metapixel/ --cheat=30 --width=35 --height=35 --metric=wavelet --distance=20 
Übersicht der Parameter
Parameter Bedeutung / Auswirkung
input_file.jpg hier gibt man das Bild an, das als Vorlage für das Endbild dient bzw. das Bild, das man gerne als Mosaik haben möchte.
output_file.jpg die Datei, die als Endprodukt herauskommt.
cheat=30 metapixel legt das Original-Bild nach der Rasterung wieder über das Ergebnis. Mit diesem Parameter kann man angeben, wie stark die Deckkraft der Überlagerung ist. Hier ist ein Wert zwischen 0 und 100 möglich. Bei --cheat=30 ist das Original-Bild zu 30% wieder zu sehen. Mit dieser Standardeinstellung erzielt man eigentlich recht gute Effekte.
width=35 gibt die Breite der kleinen Bildchen an, die das Photomosaik bilden.
height=35 gibt die Höhe der kleinen Bildchen an, die das Photomosaik bilden.
metric=wavelet Metapixel versucht auf zwei verschiedene Arten, die Mini-Bilder an das Originalbild anzupassen. Mögliche Werte sind: "wavelet" und "subpixel"
distance=20 gibt den Abstand an, nach dem sich ein Bild wiederholen darf. "distance=20" beispielsweise bewirkt, dass erst mindestens 20 Bilder Abstand sein müssen, bis das selbe Bildchen wieder verwendet wird. Je höher man diesen Wert setzt, desto genauer wird das Bild - allerdings verliert es an "Qualität", d.h. die einzelnen Bilder tauchen wesentlich häufiger wieder auf. Um dies zu umgehen, sollte man so viele verschiedene Bilder in seine Galerie importieren wie möglich. Hat man nur wenige Bilder zur Verfügung empfiehlt es sich, den Wert niedriger zu setzen, bis hin zu 1.

Weitere Optionen sind der Manpage zu entnehmen.

Bilder skalieren

Wer diesen Befehl mit den richtigen Pfadangaben für Input- und Output-File ausführt, wird feststellen, dass ein Original-Bild von z.B. 600 Pixeln Breite auch nur wieder in ein Bild von 600 Pixeln Breite übersetzt wird. Um dies zu beeinflussen, gibt es den "scale"-Parameter.

Das Beispiel mit 600 Pixel breitem Bild: Übergibt man nun den Parameter "--scale=2", wird die Bildgröße verdoppelt. So wird aus einem 600 x 400 Pixel Bild ein 1200 x 800 Pixel großes Mosaik. Dies ist insbesondere bei sehr kleinen Bildern nützlich.

Methode/Metric

Der Unterschied zwischen metric=wavelet und metric=subpixel lässt sich schwer erklären. Allerdings lieferte in den Tests subpixel bessere Ergebnisse. Wenn man mit dem Ergebnis nicht zufrieden ist, sollte man auf jeden Fall die jeweils andere Methode ausprobieren.

Ein weiterer Parameter ist search; dieser lässt 2 Werte zu:

  • global

  • local

Bei local darf sich ein Mini-Bild im Mosaik wiederholen.

Mit global darf sich ein Mini-Bild im Mosaik nicht wiederholen! Dies setzt natürlich voraus, dass man genügend Mini-Bildchen hat. Möchte man zum Beispiel ein Bild mit den Maßen 500 x 500 Pixel mit 25 x 25 Pixel großen Mini-Bildern erstellen, dann braucht man mindestens 20 x 20 = 400 verschiedene Bilder. Natürlich müssen darunter auch (fast) alle im Original-Bild vertretenen Farben sein. Ansonsten führt dies zum Abbruch der Mosaik-Erstellung.

Beispiel

Beim Testen wurde ein sehr zufriedenstellendes Ergebnis mit folgenden Einstellungen erzielt (600 Pixel breites Original-Bild und ca. 1000 Bilder in der Bibliothek):

metapixel --metapixel originalbild.jpg output.jpg -l ~/.metapixel/ --cheat=40 --width=128 --height=72 --metric=subpixel --distance=3 --scale=15 

  • Pixelize 🇬🇧 - Alternativprogramm mit grafischer Oberfläche, in den offiziellen Paketquellen enthalten

  • Fotowall - grafisches Programm zum Erstellen von Foto-Collagen

  • Grafik Übersichtsseite

Diese Revision wurde am 3. August 2020 07:21 von noisefloor erstellt.
Die folgenden Schlagworte wurden dem Artikel zugewiesen: Multimedia, Grafik