[gelöst] imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Du hast Probleme mit Deinem eMail-Programm, Webbrowser oder Textprogramm? Dein Lieblingsprogramm streikt?
Antworten
Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

[gelöst] imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von MartinV » 01.11.2018 17:39:47

Ich will eine ganze Menge Bilder zu einer Art Tabelle zusammenfügen.
Nach einem Beispiel von imagemagick funktioniert es gut:

Code: Alles auswählen

 
 convert \( font_1.gif font_2.gif font_3.gif +append \) \
         \( font_4.gif font_5.gif font_6.gif +append \) \
         \( font_7.gif font_8.gif font_9.gif +append \) \
         -append   append_array.gif
Ich bekomme ein zusammengesetztes großes Bild, bei dem alle Einzelbilder da sitzen, wo ich sie haben will.

Was mir fehlt: Zu jedem Einzelbild brauche ich den Dateinamen (oder anderen Text). Separat unter das Bild geschrieben wäre schön, aber auch stumpf hineinschreiben ist ok.

Ich habe schon verschiedene zusammengesuchte Vorschläge ausprobiert, aber erfolglos.
Mit dem ähnlichen Befehl montage bekomme ich Bildunterschriften, kann die Bilder aber nicht nach Wunsch anordnen.

Hat ein anwesender Bildzauberer einen Rat für mich?
Zuletzt geändert von MartinV am 01.11.2018 20:46:49, insgesamt 1-mal geändert.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von eggy » 01.11.2018 18:30:55

Dann bau doch im ersten Schritt mit montage die Bildunterschriften dran, und dann, wenn die alle fertig sind, zusammenkleben per convert.
Du kannst die Ergebnisse auch "ins Ram" schreiben lassen statt auf die Platte und dann gleich weiterverwenden, Beispiel dazu findet man auch in der Doku, lohnt aber den Aufwand hier wohl nicht.

Ich bau Bildübersichten übrigens mit Python/Latex. Hab dazu nen Script was aus ner Textdatei die Beschreibungen liest und dann entsprechend ne Vorlage für pdflatex zusamenbaut und daraus nen PDF erzeugt, Bilder + Beschreibungen + relevanter Teil der Exifdaten.

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von Meillo » 01.11.2018 18:39:37

Warum kannst du die bei montage(1) nicht wie gewuenscht anordnen?

Funktioniert ``-tile 3x3'' nicht?
Use ed once in a while!

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von MartinV » 01.11.2018 18:49:15

Meillo hat geschrieben: ↑ zum Beitrag ↑
01.11.2018 18:39:37
Warum kannst du die bei montage(1) nicht wie gewuenscht anordnen?

Funktioniert ``-tile 3x3'' nicht?
Das funktioniert zwar, aber die Bilder landen an eher zufälligen Positionen. Mir ist es wichtig, die Bilder in einer bestimmten Anordnung zu haben.

Hintergrund: Ich erzeuge mit Debianenfuse Bilder, die aus vielen Makrofotos zu einem gesamtscharfen Bild zusammengerechnet werden.
enfuse hat eine Menge Einstellmöglichkeiten, die ich noch erkunde. Derzeit lasse ich in stundenlangen Berechnungen mit verschiedensten Parameterkombinationen hunderte Bilder zusammenrechnen. Diese Bilder will ich in einer sauber nach Optionen sortierten Tabelle vergleichen, um so die besten Kombinationen von Parametern herauszufinden.
eggy hat geschrieben: ↑ zum Beitrag ↑
01.11.2018 18:30:55
Dann bau doch im ersten Schritt mit montage die Bildunterschriften dran, und dann, wenn die alle fertig sind, zusammenkleben per convert.
Ok, in zwei Schritten zu arbeiten ist auch eine Möglichkeit. Ich dachte nur, es müßte doch direkt im convert/Tabelle-Befehl möglich sein.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von eggy » 01.11.2018 19:05:59

Gehen tuts garantiert, die Frage ist, wieviel Zeit man darein versenken will
http://www.imagemagick.org/Usage/layers/#layer_prog

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von MartinV » 01.11.2018 20:46:24

ok, ich mache es jetzt in zwei Schritten, erst ein Schwung Einzelbilder mit Unterschrift, dann erst daraus die Tabelle.

Ich wüde ja gern ein Ergebnis hochladen, aber die Forensoftware erlaubt nur kleine Bilder und nichts in der Größe einer Bildertabelle. :roll:
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: [gelöst] imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von eggy » 01.11.2018 21:04:03

Wie groß ist das Ergebnis denn?
Aber wenns nur darum geht "wie" es aussieht, und es nicht weiter wichtig ist, was es genau ist: convert hat nen netten kleinen resize Parameter, oder mit etwas mehr foo das da http://www.imagemagick.org/Usage/thumbnails/#creation

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: [gelöst] imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von MartinV » 01.11.2018 21:26:07

Die Bildertabelle ist 4608x16384 Pixel groß. Verkleinern ist nicht sinnvoll, da die 192 Einzelbilder sonst zu klein und undeutlich werden.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von Meillo » 01.11.2018 22:13:35

MartinV hat geschrieben: ↑ zum Beitrag ↑
01.11.2018 18:49:15
Meillo hat geschrieben: ↑ zum Beitrag ↑
01.11.2018 18:39:37
Warum kannst du die bei montage(1) nicht wie gewuenscht anordnen?

Funktioniert ``-tile 3x3'' nicht?
Das funktioniert zwar, aber die Bilder landen an eher zufälligen Positionen. Mir ist es wichtig, die Bilder in einer bestimmten Anordnung zu haben.
Kannst du das konkretisieren (``eher zufaellige Positionen'')? Ich tue mir schwer nachzuvollziehen, was du damit meinst. Die werden da doch auch reihenweise eingefuegt.

Ich wuerde gerne verstehen, was du meinst.
Use ed once in a while!

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: [gelöst] imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von MartinV » 01.11.2018 22:30:29

Die Positionen sind natürlich nicht ganz zufällig, sondern werden aus der Reihenfolge der Dateinamen und der Anzahl der Spalten bestimmt. Insofern habe ich das Wort etwas unglücklich gewählt.

Was ich eigentlich meine: Jedes Einzelbild wurde mit einem bestimmten Satz an Parametern erzeugt, die z.B. einen Wertebereich von 0.1...0.9 durchlaufen.
Nun will ich z.B. alle Ergebnisse zu einem Parameter in einer Zeile haben.
In der nächsten Zeile sollen alle Ergebnisse zu diesem Parameter plus einem zweiten gezeigt werden.
Durch diese geordnete Darstellung kann ich gut sehen, wie sich ein Bildergebnis stufenweise verändert.

Bei convert kann ich durch die Struktur des Befehls gut vorgeben, wo welches Einzelbild landen soll.

Bei montage hängt die Position ganz von Dateinamen und Spaltenbreite ab. Mit geschickter Namensvergabe und Spaltenbreite kann ich das gewünschte Ergebnis auch irgendwie erzielen. Das ist aber nur indirekt und mir zu umständlich.
Könnte ich montage einfacher sagen, wo ich welches Bild haben will, wäre es auch geeignet. Vielleicht probiere ich es auch noch einmal aus.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: [gelöst] imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von Meillo » 01.11.2018 22:55:26

MartinV hat geschrieben: ↑ zum Beitrag ↑
01.11.2018 22:30:29
Bei montage hängt die Position ganz von Dateinamen und Spaltenbreite ab. Mit geschickter Namensvergabe und Spaltenbreite kann ich das gewünschte Ergebnis auch irgendwie erzielen. Das ist aber nur indirekt und mir zu umständlich.
Danke fuer die Erklaerungen. Ich verstehe es leider immer noch nicht ganz. Meinst du, dass du im Vorfeld nicht wissen musst, wieviele Spalten du haben willst? Denn wenn das bekannt ist, kannst du es doch genau gleich machen.

Dein Befehl mit convert:

Code: Alles auswählen

convert \( font_1.gif font_2.gif font_3.gif +append \) \
        \( font_4.gif font_5.gif font_6.gif +append \) \
        \( font_7.gif font_8.gif font_9.gif +append \) \
        -append   append_array.gif
Mit mogrify:

Code: Alles auswählen

montage font_1.gif font_2.gif font_3.gif \
        font_4.gif font_5.gif font_6.gif \
        font_7.gif font_8.gif font_9.gif \
        -tile 3x3 append_array.gif
Use ed once in a while!

Benutzeravatar
MartinV
Beiträge: 788
Registriert: 31.07.2015 19:38:52
Wohnort: Hyperion
Kontaktdaten:

Re: [gelöst] imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von MartinV » 03.11.2018 13:45:33

@meillo: Danke für Deine Hartnäckigkeit! Mit klarer Vorgabe der Reihenfolge der Dateinamen und der Angabe der Spalten ordnet auch montage die Bilder so an, wie ich es brauche. Ich nehme es jetzt anstelle von convert.

Hier ein Ausschnitt einer mit montage erzeugten Bildertabelle:
1931
Schnitt durch einen Becherling-Pilz.Jedes Bild wurde aus 42 Einzelaufnahmen mit Debianenfuse zusammengerechnet. Je nach Parametersatz sind die Ergebnisse etwas unterschiedlich.
Die Vernunft kann einem schon leidtun. Sie verliert eigentlich immer.

Benutzeravatar
Meillo
Moderator
Beiträge: 8813
Registriert: 21.06.2005 14:55:06
Wohnort: Balmora
Kontaktdaten:

Re: [gelöst] imagemagick: convert: Bildtabelle mit Bildnamen erzeugen

Beitrag von Meillo » 06.11.2018 22:04:56

MartinV hat geschrieben: ↑ zum Beitrag ↑
03.11.2018 13:45:33
@meillo: Danke für Deine Hartnäckigkeit!
Dabei war ich schon kurz davor, einzusehen, dass bloss ich es nicht kapiere. ;-)
Use ed once in a while!

Antworten