Hi, ich habe viele Einzelbilder, die ich gerne aneinader fügen würde. Per Hand würde das eine Ewigkeit dauern. Kann man das auch per Konsolenbefehl machen? Die Bilder sind im png Format, insgesammt 330. Alphabetisch bzw nach Nummern sortiert beginnen sie oben links im Gesammtbild, danach kommt das dadrunter, bis zum untersten (10.), danach beginnt die 2. Spalte wieder von oben, usw.. Das Gesammtbild hat 33 Spalten. Bis auf die unterste Zeile und letzte Spalte sind alle Teilbilder gleich groß.
Viele Bilder aneinander heften (mit terminal?)
Antworten |
Anmeldungsdatum: Beiträge: 172 |
|
||
Anmeldungsdatum: Beiträge: 7658 |
ImageMagick? http://imagemagick.org/Usage/montage/#tile |
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 172 |
Danke für den Link. Das schaut schon einmal gut aus, jedoch werden die Bilder da spaltenweise aneinander gefügt und nicht zeilenweise.
Mal schauen, ob es da noch eine option gibt.
"convert -/+ append" hab ich auch noch entdeckt, jedoch hat man da nur eine Spalte oder eine Zeile von allen Bildern. |
||
Anmeldungsdatum: Beiträge: 7658 |
Du kannst statt Bei komplexeren Text-Nummer-Gebilden würde das ansonsten auf ein Version-Sort (sort -V) hinauslaufen. Aber das kann auch ungewünschte Nebeneffekte haben. Am besten ist es, man nimmt immer ein Namensschema, bei dem es in jeder Sortierung passt. Durch führende Nullen bei der Nummer 0001, 0002 hätte man das Problem nicht. Bei Datum müsste man mit Jahr-Monat-Tag arbeiten und nicht andersrum. Usw. |
||
Anmeldungsdatum: Beiträge: 6345 Wohnort: Hamburg |
Ich verstehe nicht ganz was Du erreichen willst. Also bei mehr als 300 Bildern könnte man vermuten, das diese nicht besonders groß sind. Also ich erstelle Übersichtsbilder, so wie man sie in Zeiten der analogen Fotografie bei Aufträgen oft bekommen hat, folgendermaßen mit feh: feh -i -y100 -E100 -W600 <img>*.jpg -o <output>.jpg Möglicherweise ist das auch ein Weg. |
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 172 |
Die Namen habe ich nicht selbst vergeben. Die Nummern sind nicht vollständig sondern in Sprüngen (20,80,140,200,..). Sowohl für Zeilen als auch Spalten. Name ist Zeilennummer-Spaltennummer.png ist also sowas wie "{20:60:620}-{20:60:2000}.png", wobei 20:60:620 von 20 bis 620 in 60iger schritten bedeuten soll. wenn ich *-{1..333}.png mache wirft er mir Fehlermeldungen, dass nicht gefunden wurde. Edit: mit {$(seq 20 60 2000)}, Bekommt man {20 80 140 200 .. Müssten jetzt nur noch die Zahlen einzeln verwendet werden. Jetzt findet er das bild ./{20 nicht |
||
Anmeldungsdatum: Beiträge: 7658 |
Tja, fies. Durch umbenennen Nullen vorsetzen (bei name-ziffer.png): $ rename.ul name- name-0 name-?.png $ rename.ul name- name-0 name-??.png $ rename.ul name- name-0 name-???.png Oder durch Versionssortierung: (Wenn keine Leerzeichen/Sonderzeichen drin sind) echo mach mit $(printf "%s\n" name-*.png | sort -V) irgendwas hier ... Mit Sonderzeichen vielleicht so? printf "%s\0" name-*.png | sort -z -V | xargs -0 echo mal hier was Ansonsten musst du es eben gezielt(er) ausschreiben... |
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 172 |
post gerade erst gesehen nach meinem Dakuan schrieb:
Dies erstellt kleine versionen von einer Menge von großen Bildern und fügt sie dan einander, richtig? Eigentlich wollte ich die Größe erst einmal beibehalten. Die Bilder sind Ausgabe eines Programms, welches ein Gesammtbild in viele kleine Teile aufgeteilt hat (weil es so groß ist). Ich würde trotzdem gern das gesammte haben. Eidt:
umbenannt. Hatte vorhins vertauscht, sie heißen $Spalte-$Zeile.png |
||
Anmeldungsdatum: Beiträge: 6345 Wohnort: Hamburg |
Richtig.
Das hättest Du sagen können. Da ist dann Imagemagick wohl besser geeignet, besonders wenn die Geometrie der Bilder identisch ist. |
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 172 |
Geometrie leider nicht ganz identisch. Die Bilder ganz unten und ganz rechts machen noch Probleme, da die nicht ganz so breit, bzw ganz so hoch sind. montage zentriert sie derzeit noch, statt anzupappen. Ich werd dann eh auch mal testen. Das Bild so dann vielleicht doch etwas groß, ca. 1,5 GigaPixel Bild ☺ Arbeitsspeicher geht beim erstellen auch in die Knie, bisher nur bei einer Teilmenge getestet |
||
Anmeldungsdatum: Beiträge: 7658 |
wenn du nicht wählerisch bist, womit du das Bild anschaust, könntest du es auch mit HTML/CSS aneinanderkleben und im Browser dann die Einzelbilder zusammengesetzt bewundern. (Keine Ahnung wieviele Bilder der Browser dann so mitmacht, die JS-Lösungen blenden die offscreen-tiles ja aus, könnte aber trotzdem klappen.) Von einem Bildzerschnippeler würd ich fast erwarten daß der so ein Feature hat, ne passende Ansichts-Seite mit zu erstellen. |
||
(Themenstarter)
Anmeldungsdatum: Beiträge: 172 |
Es geht! Es stand als vorletztes auf der Seite.. montage ./*.png -mode Concatenate -tile 1x10 -geometry '1x1+0+0<' miff:- | convert - +append montage_columns_2.png Hab jetzt nur noch unten und rechts einen weißen Rand. Aber den kann ich dann ja noch abschneiden. Habs bisher nur auf Teilmenge probiert.
Wie es insgesammt ausschaut weiß ich schon. Jedoch ist dieses Bild nur in einer geringen Auflösung. Ich hätte es gern detailiert. Edit: Das große ist auch fertig gewurden. Warum auch immer ist es jedoch nur ein Graustufenbild. Die Anordnung der Teilbilder ist aber korrekt. Edit2: Das lag wohl daran, dass das erste Teilbild nur schwarz war. Habe da Farbe hinzugefügt und jetzt scheint es zu gehen. Vielen Dank für die Unterstützung frostschutz und Dakuan. Mit feh teste ich es dann vielleicht auch noch einmal. Da könnte ich ja auch die Ausgangsgröße der Bilder angeben. Vielleicht geht feh auch bisschen schneller und Resaurcenschonender. Montage +conver hat zwischenzeitlich 14GB Ram und 20GB Festplatte benötigt. Das Bild ist jedoch nur 43MB groß. Frage mich warum das so teuer war (die teilbilder 2048x2048 mach 4MB * Farben/alpha(=4) = 16 * Anzahl (330) macht "nur" maximal 5280MB. |