| Vorheriges Thema anzeigen :: Nächstes Thema anzeigen |
| Autor |
Nachricht |
brum Gast
|
Verfasst am: 31. März 2011 17:43 Titel: Bilder verkleinern |
|
|
Moderne Digitalkameras sind sehr hochauflösend.
Möchte man nun eine Reihe Fotos von dieser in den "Fotodruckautomat" einlesen, so würde der Vorgang in Originalgröße sehr viel Zeit beanspruchen.
Ähnliche Probleme ergeben sich, möchte man die Bilder per Mail versenden. Die meisten Postfächer sind im Volumina begrenzt.
Für solche Verkleinerung eignet sich sehr gut das Programm ImageMagick mit seiner Kommandozeilenanweisung "convert":
| Code: |
$ mkdir transfer
$ for PIC in $(ls -1 *.JPG); do PIC2=`echo $PIC|cut -d. -f1`; convert $PIC -verbose -filter Gaussian -resize 2048x2048 -density 300x300 transfer/$PIC2.res.jpg; done
DSC00559.JPG=>transfer/DSC00559.res.jpg JPEG 4592x3056=>2048x1363 2048x1363+0+0 8-bit DirectClass 770KB 1.260u 0:01.270
DSC00562.JPG=>transfer/DSC00562.res.jpg JPEG 4592x3056=>2048x1363 2048x1363+0+0 8-bit DirectClass 750KB 1.270u 0:01.280
DSC00563.JPG=>transfer/DSC00563.res.jpg JPEG 4592x3056=>2048x1363 2048x1363+0+0 8-bit DirectClass 766KB 1.290u 0:01.290 |
Alle Bilder mit Endung JPG werden nach der Bearbeitung in das Verzeichnis transfer abgelegt. Die Bilder werden zu einer Auflösung von 300 dpi - das reicht für Kunstdruck - mit einer Pixelszal der längsten Seite von 2048 konvertiert.
Das Ergibt in der Praxis, mit dem Digitalkameraformat eine Bildgröße von 2048x1363 Pixel
Dieser Wert reicht. Mit diesem Werten lassen sich Bilder von 9x13 cm in guter Qualität in Auftrag geben.Die Größe des JPGs liegt im Mittelwert bei 750 kB.
- have a lot of fun - |
|
| |
|
|
brum Gast
|
Verfasst am: 31. März 2011 17:47 Titel: rest |
|
|
Da ging was verloren:
Dieser Wert reicht... für eine Bldgröße von 9x13 in guter Qualität
Die 2 Anweisung ist eine Zeile. |
|
| |
|
|
gast Gast
|
|
| |
|
|
Mr.frosch Gast
|
Verfasst am: 14. Mai 2011 15:05 Titel: |
|
|
genau das was ich gesucht habe, allerdings sind meine Bilder trotzdem noch über 2 MB groß
| Code: | IMGP4044.JPG=>upload/IMGP4044.res.jpg JPEG 4672x3104=>2048x1361 2048x1361+0+0 8-bit DirectClass 2.425MB 1.920u 0:01.219
IMGP4045.JPG=>upload/IMGP4045.res.jpg JPEG 4672x3104=>2048x1361 2048x1361+0+0 8-bit DirectClass 2.425MB 1.930u 0:01.149
|
kann ich da noch irgend etwas anders machen?
LG |
|
| |
|
|
Janka

Anmeldungsdatum: 11.02.2006 Beiträge: 3268
|
Verfasst am: 15. Mai 2011 8:34 Titel: |
|
|
Du kannst den Schalter "-quality 80%" benutzen, um die Kompression zu erhöhen.
Janka _________________ Ich vertonne Spam immer in /dev/dsp statt /dev/null.
Ich mag die Schreie. |
|
| |
|
|
brum Gast
|
Verfasst am: 21. Nov 2011 12:17 Titel: Nachtrag |
|
|
Hallo,
hatte gerade etwas Zeit und ein paar neue Bilder.
Darum habe ich ich den obigen Aufruf in ein Skript gepackt.
Die Bilder liegen im Home-Verzeichnis unter ~/Bilder/4resize/original und in diesem werden die bearbeiteten Biler in einem Ordner "skaliert" abgelegt.
| Code: |
#!/bin/bash
# Alle Bilder innerhalb des Vereichnisses werden verkleinert und in einem neuen Verzeichnis abgelegt.
BILD_HOME=/home/`whoami`/Bilder/4resize/original
cd $BILD_HOME
SKAL_VERZ_HOME=/home/`whoami`/Bilder/4resize/original
SKAL_VERZ_NAME=skaliert
echo -e "\033[1mKonvertiere alle jpg-Bilder des Verzeichnisses `pwd` \n\
zu 300dpi sowie 2048 Pixel Seitenwert und speichere diese im Ordner \033[32;1m$SKAL_VERZ_HOME/$SKAL_VERZ_NAME\033[0m"
echo " "
if [ -d $SKAL_VERZ_NAME ]; then
echo "Verzeichnis $SKAL_VERZ_NAME vorhanden";
else
echo "Verzeichnis $SKAL_VERZ_NAME fehlt";
mkdir $SKAL_VERZ_NAME
if [ -d $SKAL_VERZ_NAME ]; then
echo "Ordner $SKAL_VERZ_NAME erfolgreich erstellt";
else
echo "keine Schreibrechte in `pwd`";
exit 1
fi
fi
echo " "
for PIC in $(ls -1 *.JPG & ls -1 *.jpg);
do PIC2=`echo $PIC|cut -d. -f1`;
convert $PIC -verbose -filter Gaussian -resize 2048x2048 -density 300x300 -quality 80% ./$SKAL_VERZ_NAME/$PIC2.res.jpg;
done
echo " "
echo " "
NB=`ls -1 $SKAL_VERZ_HOME/$SKAL_VERZ_NAME/|grep res|wc -l`
echo "Es wurden folgende $NB Bilder konvertiert:"
echo " "
ls -lh $SKAL_VERZ_HOME/$SKAL_VERZ_NAME/|grep res|cut -d" " -f5,8
echo " "
echo -e "\033[1mFertig, drücke eine Eingabe-Taste zum Beenden...\033[0m"
read -n 1 -s
|
So finde ih dieses immer wieder
Gruß brum |
|
| |
|
|
|
|