Bilder-Serie per convert umwandeln

Wizard

Wizard

Tripel-As
Hi!
Ich besitze eine Digitalkamera. Alle Bilder werden beim Übertragen auf den Rechner im pnm-Format gespeichert (jedes Bild ca. 1 mb).
Jetzt möchte ich jedoch Bilder ins jpg-Format umwandeln, wobei die Bildgröße auf ca. 24 kb verkleinert wird. Das geschieht mittels convert.
Mein Problem: Ich habe eine menge Bilder und möchte nicht jedes einzeln umwandeln.
Folgendes habe ich schon versucht:
convert *.pnm *.jpg
Es wurden zwar die jpg-Dateien korrekt erzeugt, die Dateinamen sahen jedoch folgendermaßen aus:
*.jpg.1, *.jpg.2 ...
Ich will, dass der jeweilige Name des schon bestehenden pnm-Bildes bei der Überführung ins jpg-Format übernommen wird. Wie kann das realisiert werden?

MfG
 
Hallo,

ich hab zwei Beispiele angehaengt, ich hoffe es bringt dich weiter, falls nicht frag einfach noch mal nach. Wenn sich die Bilder in verschiedenen Unterverzeichnissen befinden kanst du "find" verwenden.


Alle Bild-Dateien mit der Endung .jpg um 50% verkleinern und als *_klein.jpg abspeichern:

for i in *.jpg
do
convert $i -geometry 50% $(basename $i .jpg)_klein.jpg
done

Alle Jpeg-Bilder im aktuellen Verzeichnis mit der Endung .jpg ins Encapsulated PostScript Format umwnadeln und die Endung in .eps umbenennen:

for i in $(ls *.jpg)
do
convert $i /home/${i%.*}.eps
done
 
Danke, rup!
Ich habe mit Deiner Hilfe folgendes Script schreiben können:

#!/bin/sh
for name in *.pnm
do
convert $name $name.jpg
done

Das ist eins meiner ersten Shell Scripts. Wo kann ich mehr darüber lernen? Bisher hatte ich bloß ein eher dürftiges Tutorial.
 
Zuletzt bearbeitet:
Online find ich die Linuxfibel sehr hilfreich,
http://www.linuxfibel.de

Als Buch hab ich
Linux Unix Shells von Addison Wesley
Shell Programming in 24 hours
und eine 35 Seiten Einfuehrung ist in meinem alten Linux Kofler (4. Auflage)
 
Die Linuxfibel habe ich mir angesehen, ich denke, dass mir das sehr weiterhelfen wird. Nochmals Danke!

Das Script habe ich nochmal überarbeitet, es sieht jetzt so aus:

#!/bin/sh
i=1
for FILE in *.pnm
do
convert $FILE image$i.jpg
rm -f $FILE
i=$((i+1))
done

Die erzeugten jpg-Dateien erhalten Nummern, zusätzlich werden die pnm-Dateien gelöscht.
 
rup schrieb:
Alle Jpeg-Bilder im aktuellen Verzeichnis mit der Endung .jpg ins Encapsulated PostScript Format umwnadeln und die Endung in .eps umbenennen:

for i in $(ls *.jpg)
do
convert $i /home/${i%.*}.eps
done
Das ist GENAU das was ich brauche. Nur wo krieg ich das Programm her?
Ich kompilier es mir auch gerne selbst!
 
Wunderbar. Ich hab's vorgezogen mir die Programme selbst zu kompilieren.
Das Umwandeln in eine eps Datei (brauch ich für LaTeX) hat auch geklappt - also "file" sagt zumindest, dass es eine eps Datei ist.
Nur in meinem PDF wird es nicht dargestellt! :-(
 

Ähnliche Themen

hunderte Bilder bearbeiten...

Zurück
Oben