View previous topic :: View next topic |
Author |
Message |
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 10:40 am Post subject: [solved]Programm für Bildsortierung+autom. Bildnummerierung |
|
|
Der Titel ist etwas mißverständlich, es geht um folgendes:
Urlaub -> 5 Leute haben mit ihren Digicams Bilder geschossen -> ich will die Bilder der verschiedenen Kameras irgendwie "mergen", d.h. in einem Ordner zusammenfassen und gleichzeitig sollen die Bilder chronologisch durch den Dateinamen, sprich alphabetisch/alphanumerisch, sortiert werden.
Was ich also im Idealfall suche ist ein Programm, mit dem ich durch Drag&Drop, Hin-und-Herziehen die Reihenfolge der Bilder bestimmen kann und am Ende auf "generate" drücke und das Programm dann nach einem von mir vorgegebenen Muster die Dateien durchnummeriert/benennt.
Wenns so ein Programm gibt, wärs natürlich wahnsinn, ansonsten bin ich auch für andere Lösungen offen . Zur größten Not mach ich es so, dass ich die alten Dateinamen der Bilder in jeweils eine neue Zeile einer Textdatei schreibe (natürlich dann in der richtigen Reihenfolge) und ein Skript drauf anwende.. aber wirklich toll ist das so nicht.
Last edited by monade on Mon Sep 04, 2006 6:13 pm; edited 2 times in total |
|
Back to top |
|
|
Kopernikus Tux's lil' helper
Joined: 16 Jul 2006 Posts: 112 Location: 49N 11E
|
Posted: Mon Sep 04, 2006 10:56 am Post subject: |
|
|
Hallo,
also es gibt ein programm das nennt sich Xnview.
Ich benutze dieses Programm selbst und bin wirklich begeistert davon.
Ich glaube ich habe dich nicht ganz richtig verstanden, aber mit Xnview kann man Bilder automatisch durchnummerieren/ordnen lassen.
Außerdem kann man damit auch noch scripts schreiben (ganz leicht) bei denen man dann die Bilder erstmal alle auf eine gemeinsame größe bringt, sie danach nach der reihenfolge umbenennen und dann vllt. noch einen Weißabgleich vornimmt. Ist ja nur ein Beispiel. Man kann die unterschiedlichsten dinge damit machen.
Xnview ist im Portage, also einfach emerge xnview.
Möglicherweise (kommt auf deine Architektur an) musst du vorher noch deine /etc/portage/package.keywords editieren, da Xnview (zumindest auf Amd64) masked ist.
Aber es läuft prima und ich hatte noch nie einen Fehler oder gar einen Absturz des Programms.
Kannst dir ja auch erstmal ein paar Screenshots von XnView ansehen. (leider unter Windows gemacht)
Hoffe das hilft.
Regards,
Kopernikus
Last edited by Kopernikus on Mon Sep 04, 2006 12:46 pm; edited 1 time in total |
|
Back to top |
|
|
l3u Advocate
Joined: 26 Jan 2005 Posts: 2545 Location: Konradsreuth (Germany)
|
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 12:31 pm Post subject: |
|
|
Hmm, also ich glaube ich hab mich wirklich bisschen wirr ausgedrückt. Mal ganz konkret: Ich habe hier einen Ordner mit Bildern von verschiedenen Digikams:
Code: | #: ls -1 bilderordner/
dsc00109.jpg
dsc00111.jpg
dsc00112.jpg
dsc00113.jpg
dsc00114.jpg
dsc00115.jpg
dsc00116.jpg
nr 007.jpg
nr 008.jpg
nr1 007.jpg
nr1 008.jpg
nr1 015.jpg
nr1 016.jpg
174_7440.jpg
174_7442.jpg
174_7446.jpg
174_7447.jpg
174_7448.jpg
174_7449.jpg
img_4127.jpg
img_4128.jpg
img_4129.jpg
img_4130.jpg
img_4131.jpg
img_4133.jpg
|
In einem 1. Schritt, will ich diese Bilder chronologisch sortieren. Möglichst auf einer graphischen Oberfläche will ich die Bilder durch drag&drop in die richtige Reihenfolge bringen. Also zB 174_7448.jpg einsortieren zwischen dsc00113.jpg und dsc00114.jpg, img_4128.jpg und img_4129.jpg vertauschen usw.
Wenn ich dann die Reihenfolge bestimmt hab, will ich dass die Dateinamen der neuen Reihenfolge entsprechend umbenannt/durchnummeriert werden..(2.Schritt) Alle Klarheiten beseitigt?
Das $Programm, das ich suche/mir wünsche sollte beide Schritte können. |
|
Back to top |
|
|
think4urs11 Bodhisattva
Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
Posted: Mon Sep 04, 2006 2:49 pm Post subject: |
|
|
Stimmen denn wenigstens die Zeitstempel der Dateien?
Also ist 'Datum dsc00113.jpg' < 'Datum 174_7440.jpg' < 'Datum 174_7449'.jpg < 'Datum dsc00114.jpg'? _________________ Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself |
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 3:00 pm Post subject: |
|
|
Leider nein, denn zu allem Überfluss sind auch noch im Nachhinein eingescannte Fotos dabei.. |
|
Back to top |
|
|
think4urs11 Bodhisattva
Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
Posted: Mon Sep 04, 2006 3:55 pm Post subject: |
|
|
sonstige erkennbare Muster?
z.B. alle img_1234 sind vom Tag X, alle dsc1234 vom Tag Y, alle nr123 vom Tag Z?
So ganz ohne per Programm verwertbares Muster wird es schwierig; mit ist es lediglich eine Frage des richtigen rename-Befehls
Oder aber du sortierst es erst manuell in eine entsprechende Ordnerstruktur wobei Ordnername='Datum der Aufnahme' und gibst dann diese vorsortierte Liste (mit noch unterschiedlichen Dateinamen) einem Script das allen Files einheitliche Namen verpaßt. _________________ Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself |
|
Back to top |
|
|
l3u Advocate
Joined: 26 Jan 2005 Posts: 2545 Location: Konradsreuth (Germany)
|
Posted: Mon Sep 04, 2006 4:32 pm Post subject: |
|
|
Okay, also wenn die Zeitstempel noch gestimmt hätten, dann hätte das digicamsync gekonnt (man muß ja die bilder nur mit cp -p auf nen USB-Stick kopieren, um ne Digitalkamera zu "simulieren"). Wenn die Bilder von ner Kamera kommen, dann kannst du noch per Script in den exif-Headern nachschauen, wann sie gemacht wurden und sie entsprechend umbenennen. Aber wenn eingescannte Bilder dabei sind ... woher will man da wissen, wann sie geschossen wurden?! |
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 4:42 pm Post subject: |
|
|
Es geht mir eigentlich auch nicht primär darum sie mit einem Skript chronolgisch anhand des Exif-Timestamps o.ä. umzubennen. Es geht mir primär um ein Programm, mit dem ich Bilder zuerst in eine Reihenfolge bringen kann (ob chronologisch, thematisch was auch immer), und dann, wenn die Reihenfolge bestimmt ist, die Dateinamen entsprechend durchnummerieren kann.
Sowas kann man natürlich nur mit einem GUI-Programm machen (außer man erstellt wie oben gesagt ein eigenes Textfile).
Trotzdem danke schonmal für eure Bemühungen. |
|
Back to top |
|
|
think4urs11 Bodhisattva
Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
Posted: Mon Sep 04, 2006 5:02 pm Post subject: |
|
|
monade wrote: | Es geht mir primär um ein Programm, mit dem ich Bilder zuerst in eine Reihenfolge bringen kann (ob chronologisch, thematisch was auch immer), und dann, wenn die Reihenfolge bestimmt ist, die Dateinamen entsprechend durchnummerieren kann.
Sowas kann man natürlich nur mit einem GUI-Programm machen (außer man erstellt wie oben gesagt ein eigenes Textfile). |
Naja so wie ich das bisher verstehe wirst du um eine manuelle Vorsortierung nicht herumkommen - ob du das nun mit mc machst oder sonst einem Filemanager oder via Kommandozeile ist Geschmackssache. Evtl. ist hier die Kombination Bildbetrachter (mit Thumbnailvorschau)+Kommandozeile auch eine Option.
Woher sollte ein Proggie auch nach Thema sortieren können, soooo doll sind die Bilderkennungsprogramme auch noch nicht. Im besten Fall kannst du da die Landschaftsfotografien Irlands vom pr0n-Kram trennen, anhand der Farben natürlich
Wenn aber erstmal die gewünschte Reihenfolge 'irgendwie' für ein Programm abfragbar vorliegt (eben z.B. die bereits angesprochene Ordnerstruktur) ist das Umbennen in 'Schema X' relativ einfach per Miniscript machbar. _________________ Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself |
|
Back to top |
|
|
l3u Advocate
Joined: 26 Jan 2005 Posts: 2545 Location: Konradsreuth (Germany)
|
Posted: Mon Sep 04, 2006 5:08 pm Post subject: |
|
|
Also chronologisch würde dir folgendes Scriptchen die Dateien (anhand der EXIF-Header) benennen:
Code: | #!/bin/bash
for filename in *; do
gen=`exiftime -tg $filename 2>/dev/null`
if [[ $? == 0 ]]; then
gen=${gen##*: }
gen=${gen//:/-}
gen=${gen/ /--}
else
gen=$filename
fi
if [[ $gen == $filename ]]; then
continue 1
fi
if [ -e "$gen.jpg" ]; then
no="2"
while [ -e "$gen-$no.jpg" ]; do
no=$((no+1))
done
gen="$gen-$no"
fi
newname="$gen.jpg"
mv "$filename" "$newname"
done |
Es werden keine Dateien überschrieben. Sollten zwei Dateien zur selben Sekunde erstellt worden sein, wird eine fortlaufende Nummer angehängt.
Wenn das dann durchgelaufen ist, kann man z. B. sowas machen, um die Dateien mit einer fortlaufenden Nummer zu versehen (braucht man aber im Prinzip dann nicht mehr, da YYYY-MM-DD--HH-MM-SS ohnehin richtig sortiert wird):
Code: | #!/bin/bash
no=1
for filename in *; do
num=`printf %04d $no`
mv "$filename" "$num-$filename"
no=$((no+1))
done |
|
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 5:13 pm Post subject: |
|
|
Grml
Nur das abschließende _Umbenennen_ soll ja automatisiert sein, das "in die gewünschte Reihenfolge bringen" will ich ja eben gerade nicht automatisiert machen sondern per Drag&Drop in einem graphischen Programm. Dieses Programm müsste halt dann die neue Reihenfolge zunächst intern irgendwie zwischen-cachen und dann am Ende die Dateinamen entsprechend durchnummerieren. |
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 5:19 pm Post subject: |
|
|
@Libby: danke für dein Script, werd ich vermutlich irgendwann in anderem Zusammenhang noch brauchen können. Wobei, macht
nicht genau dasselbe
Manpage von jhead wrote: |
-n[format_string]
This option causes files to be renamed using the date information from the Exif header "DateTimeOriginal" field.
|
|
|
Back to top |
|
|
l3u Advocate
Joined: 26 Jan 2005 Posts: 2545 Location: Konradsreuth (Germany)
|
Posted: Mon Sep 04, 2006 5:21 pm Post subject: |
|
|
Da kann ich dir dann auch nicht helfen ;-)
Man könnte natürlich per Perl-FUSE-Modul ein kleines Dateisystem schreiben, das jeder Datei, die reinkommt, eine fortlaufende Nummer verpaßt. Dann müßtest du einfach nur die Dateien in der Reihenfolge, die du haben willst, in den gemounteten Ordner verschieben und hättest deine Reihenfolge. Da es aber erheblich länger dauern würde, so ein Dateisystem zuschreiben, als es gedauert hat, das Script zu schreiben, was die EXIF-Tags ausliest, will ich dir nicht die Freude nehmen, dies selbst zu tun ;-)
Edit:
Blabla. Schon geschriebene Programme verwenden ist was für Weicheier. Sowas schreibt man sich selbst :-P außerdem hab ich jhead bisher noch nicht gekannt ;-) |
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 5:38 pm Post subject: |
|
|
Ich fühle mich missverstanden .
Also, letzter Versuch zur clarification:
Hier ein Screenshot von gqview (Bildbetrachter), mit dem ich gerade ziemlich viele Australien-Bilder geladen hab:
http://helpdesk.bera.rus.uni-stuttgart.de/~rusguggi/gqview.png
Nehmen wir an, die Reihenfolge der Bilder in diesem Australien-Ordner, die durch die Dateinamen vorgegeben ist, passt mir nicht. Was ich nun will, ist _mit dem Mauszeiger_ per Drag&Drop die Reihenfolge in der Bilder-Liste, die links zu sehen ist, zu verändern. Wenn mir dann die Reihenfolge passt, sollen die Dateinamen entsprechend neu durchnummeriert werden. Leider geht das mit gqview nicht, deswegen such ich ein Programm, dass genau jenes kann .
edit: ah, okay Libby, du hast es doch richtig verstanden, tschuldige. Ich will das ganze aber als GUI :p. |
|
Back to top |
|
|
l3u Advocate
Joined: 26 Jan 2005 Posts: 2545 Location: Konradsreuth (Germany)
|
Posted: Mon Sep 04, 2006 5:44 pm Post subject: |
|
|
Und dieses GQView kann das nicht? |
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 5:53 pm Post subject: |
|
|
monade wrote: | Leider geht das mit gqview nicht, deswegen such ich ein Programm, dass genau jenes kann |
:p. Nein, leider nicht. |
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
|
Back to top |
|
|
think4urs11 Bodhisattva
Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
Posted: Mon Sep 04, 2006 6:31 pm Post subject: |
|
|
schade, war ich zu langsam
ich hätte nämliche jetzt gesagt
a) mit gqview nacheinander alle Bilder in der gewünschten Reihenfolge in einen neuen Ordner kopieren
b) ls -rc 'ordner' - gibt die Files in der Reihenfolge aus in der sie in den Ordner kopiert wurden
c) c=1; for i in `ls -rc`; do mv $i bla_$c.jpg; ((c++)); done _________________ Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself
Last edited by think4urs11 on Mon Sep 04, 2006 6:58 pm; edited 1 time in total |
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 6:46 pm Post subject: |
|
|
Trotzdem cooler Tip Think4UrS11. Das Problem dabei in der Realität: unter Garantie werd ich mir dann bei Foto n denken: oh, das hätte doch besser vor Foto n-4 gepasst -> Pech gehabt. |
|
Back to top |
|
|
think4urs11 Bodhisattva
Joined: 25 Jun 2003 Posts: 6659 Location: above the cloud
|
Posted: Mon Sep 04, 2006 6:57 pm Post subject: |
|
|
es gilt das gleiche Prinzip wie beim Bomben entschärfen - erst denken, dann fummeln; nur das du nach einem Fehler wieder von vorne anfangen kannst _________________ Nothing is secure / Security is always a trade-off with usability / Do not assume anything / Trust no-one, nothing / Paranoia is your friend / Think for yourself |
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 7:08 pm Post subject: |
|
|
Wenn mir nach 385 Bilder einfällt, dass ich ein Bild doch irgendwo ganz vorne einsortieren wollte, dann wäre es mir glaub ich lieber eine Bombe wär explodiert |
|
Back to top |
|
|
sirro Veteran
Joined: 20 Jul 2003 Posts: 1472 Location: aachen.nrw.de.eu
|
Posted: Mon Sep 04, 2006 7:33 pm Post subject: |
|
|
monade wrote: | Wenn mir nach 385 Bilder einfällt, dass ich ein Bild doch irgendwo ganz vorne einsortieren wollte, dann wäre es mir glaub ich lieber eine Bombe wär explodiert |
Einzelne Bilder kannst du ja spaeter noch manuell umbenennen (z.B. bla_2_.jpg um es vor bla_2.jpg einzusortieren) und dann wieder alles neu abzaehlen/umbenennen. |
|
Back to top |
|
|
monade Apprentice
Joined: 17 Mar 2005 Posts: 204 Location: Berlin
|
Posted: Mon Sep 04, 2006 7:50 pm Post subject: |
|
|
sirro wrote: | monade wrote: | Wenn mir nach 385 Bilder einfällt, dass ich ein Bild doch irgendwo ganz vorne einsortieren wollte, dann wäre es mir glaub ich lieber eine Bombe wär explodiert |
Einzelne Bilder kannst du ja spaeter noch manuell umbenennen (z.B. bla_2_.jpg um es vor bla_2.jpg einzusortieren) und dann wieder alles neu abzaehlen/umbenennen. |
War jetzt nicht soo ernst gemeint . Schon klar, das es auch mit manuell umbenennen geht, aber für mich ist das hier aber ein klassisches Beispiel für ein Problem, was mit GUI einfach viel unkomplizierter zu bewerkstelligen ist. Mit krename funktioniert das eigentlich sehr ordentlich, auch wenn es nicht optimal ist, da krename keinen eigenen integrierten Bildbetrachter hat. Nur eine Preview-Option, aber auf diesen kleinen Thumbnails erkennt man zu wenig. (Man kann sogar die Thumbnail-Größe einstellen, aber ab der fürs Erkennen relevanten Größe laggt das ganze dann zu sehr/wird unübersichtlich.) |
|
Back to top |
|
|
|