[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: ImageMagick (war Re: RAM-Abfrage)



Al Bogner <debian@ml05a.pinguin.uni.cc> writes:
> Ich vermute, das ist irgendeine Beschränkung von IMAGEMAGICK. Feinheiten 
> ändern sich in der Syntax immer wieder. Ich verwende zur Zeit "ImageMagick 
> 6.0.6 05/26/05 Q16" und eigentlich sollte man sich nun manche Pipe ersparen 
> können, aber es klappt hier nur so:
> 
> montage -geometry 148x111+3+6 -title "$MYINDEXPRINTHEADER" -tile 4x$PICTURES 
> $INDEXPRINTDESCRIPTIONPC miff:- 2>/dev/null| convert - -unsharp 0x1  miff:- | 
                                                         ^^^^^^^^^^^^

Gibt es einen speziellen Grund, warum Du den unsharp und Montieren
mit den Bildern in voller Auflösung durchführst, wenn sie doch hinterher
als Thumbnails in der Montage landen?

An dieser Stelle würde ich ansetzen: Bilder einzeln skalieren und
unsharp mask anwenden und dann diese konvertierten Bilder montieren.

> convert - -quality 99 +profile "*" -comment "$MYCOMMENT"  "$INDEXPRINTOUTPC"

Das muß wohl in jedem Fall so bleiben.

> Die Variablen werden bei 300 Fotos ziemlich groß. Ein Foto hat ca. 2-5MB als 
> jpg-Datei. Bei der Wandlung nach miff kann 1 Foto dann schon 20-30 MB 
> erreichen. Bei montage geht ein XP 2700 merklich in die Knie, da kann man 
> gerade noch mit der Maus ein bißchen "ruckeln" und ein Mail zum Lesen 
> anklicken.

Wie gesagt: ich sehe keinen speziellen Grund, die Transformationen auf
den voll aufgelösten Bildern durchzuführen, das ist sehr teuer und die
Wandlung in ein endgültiges Bild vernichtet diese große
Informationsmenge ohne echten Gewinn. Ich würde mal folgendes probieren:

Wenn $INDEXPRINTDESCRIPTIONPC die Dateinamen der zu verarbeitenden
Bilder enthält und in /tmp genügend Platz ist würde ich folgendes
probieren:

MYTMPDIR=`mktemp -d tn_mogrifyXXXXXXX` ; \
cp $INDEXPRINTDESCRIPTIONPC $MYTMPDIR ; \
mogrify -size 148x111 -resize 148x111 -format miff -unsharp 0x1 \
$MYTMPDIR/* ; montage -geometry 148x111+3+6 -title \
"$MYINDEXPRINTHEADER" -tile 4x$PICTURES $MYTMPDIR/*.miff miff:- \
| convert - -quality 99 +profile '*' -comment "$MYCOMMENT" \
"$INDEXPRINTOUTPC"

Wenn die Qualität nicht ausreichend ist, könnte es sich lohnen beim
mogrify-Aufruf die doppelte Größe also 296x222 für -size und -resize
anzugeben.

Das sollte den Speicherverbrauch und Zeitaufwand drastisch reduzieren.

Thomas Jahns
-- 
"Computers are good at following instructions,
 but not at reading your mind."
D. E. Knuth, The TeXbook, Addison-Wesley 1984, 1986, 1996, p. 9



Reply to: