Archive for the ‘imagemagick’ Category

Batch conversion of images

Friday, December 15th, 2006

For batch image conversion, file renaming, etc, I usually use these kind of one-liners:

$ for i in `ls *.bmp` ; do echo convert $i ${i%.*}.png ;done
convert screendump_01.bmp screendump_01.png
convert screendump_02.bmp screendump_02.png
convert screendump_03.bmp screendump_03.png

When you’re satisfied with the result, have it executed by the shell:

$ for i in `ls *.bmp` ; do echo convert $i ${i%.*}.png ;done | sh

Done!

Thursday, July 21st, 2005

Dus… het webcam sciptje heeft een paar dagen gelopen. Met elke 10 seconden weer een vers plaatje heeft deze grap ruim 53 duizend unieke webcam plaatjes opgeleverd! Ik weet niet precies hoeveel argumenten je in de bash shell kan opgeven, maar een ‘ls *.jpg’ lukt niet meer met zoveel matches. Met een klein scriptje heb ik de bestanden ingedeeld in groepjes van een uur. Met imagemagick kun je, na installeren van de mpeg2encode plugin de serie plaatjes omzetten naar een filmpje:

convert * filmpje.mpeg

Net alle filmpjes zitten bekijken. Leuk om al die bedrijvigheid in de haven te zien, maar helaas geen Ocean Fours weten te spotten. Blijkt dat ik het script op 27 mei om 13:25 gestopt heb, bang dat het m’n computer zou overspoelen gedurende m’n afwezigheid. Ik lees net dat ze die dag om 17:12 vertrokken zijn. Ik neem aan dat er vast mooiere beelden van die gebeurtenis zijn.
Wacht eens even er is nog hoop… er is vast wel ergens een mooie webcam in de haven van Rotterdam! anyone?

Webcam plaatjes NY

Tuesday, May 24th, 2005

Robert Hoeve en bemanning staan op het punt om vanuit New York deze kant op te roeien. Als het goed is kunnen we dat hier live zien via de webcam van de Manhattan Sailing Club, die gericht staat op de North Cove.
North Cove Cam

Ik heb momenteel een scriptje draaien die om de 3 seconden een plaatje binnenhaalt. Helaas geeft de webcam af en toe geen update, waardoor minuten lang telkens hetzelfde plaatje wordt gedownload. Met de volgende regel kun je een serie unieke plaatjes in een directory als animatie bekijken:

md5sum * | \
grep jpg |\
sort |\
awk '{ print $2" " $1 }' |\
uniq -d -f 1 |\
awk '{print $1}' |\
xargs animate -delay 10

Uitleg: 00-02 sorteer checksums van alle jpeg bestanden in de huidige directory; 03 verwissel de kolommen; 04 laat alleen de unieke checksums door (negeer kolom 1); 05 laat alleen kolom 1 zien; 06 animeer de overgebleven bestanden.

Todo: filmpje!

Imagemagick Handleiding

Tuesday, March 29th, 2005

Als je met IM aan de slag gaat is deze site echt een must. Goed gestructureerd en veel voorbeelden.

Screenshots

Sunday, March 27th, 2005

Linux:
Voor het maken van een screenshotje van een applicatievenster inclusief rand:

$ import -frame screenshot.png

Het eerste-de-beste scherm dat je aanklikt wordt opgeslagen in screenshot.png. Zie manpage van import voor meer opties.

Mac OS X: Deze toetscombinaties moet je maar net even weten…. Voor het volledige scherm doe je “Appeltje + Shift + 3″. Voor een selectie “Appeltje + Shift + 4″. In beide gevallen wordt er automatisch een PDFje op je desktop aangemaakt. Ook kun je Appeltje + Shift + 4 + spatie doen. Je muis pijltje verandert in een camera waarmee je een scherm kunt selekteren. Als je klikt wordt er een screenshot van alleen dat scherm gemaakt!

Windows: Hier kun je de “Alt + Print Screen” toetscombinatie gebruiken. Een bitmap-afbeelding van het actieve venster wordt naar het klembord gekopieerd. Plakken kan dan vervolgens in elk programma die iets met plaatjes overweg kan: Paint, Word, Photoshop, etc.
Alleen de PrintScreen-knop indrukken stuurt het gehele scherm naar het klembord.

Screenshotje

Afbeelding van gekleurde rand voorzien

Saturday, March 19th, 2005

Om een afbeelding van een rand te voorzien, zonder de uiteindelijke afmetingen te veranderen, verkleinen we eerst het orgineel:

$ convert -resize 90% myimage.png image.png

Vervolgens maken we een achtergrond met de kleur van de rand:

$ convert -size 100x100 xc:green canvas.png

Nu kan de verkleinde afbeelding op de achtergrond worden geplakt:

$ composite -gravity center image.png canvas.png frame.png

myimage.png
image.png
canvas.png
frame.png

Hoeken afronden

Saturday, March 19th, 2005

Hiertoe hebben we eerst een mask nodig waar de nieuwe, witte, hoekjes in zitten.

$ convert -size 100x100 xc:white -fill black -draw "roundRectangle 2,2 97,97 8,8" +matte mask.png

Het masker kan nu bij het orginele plaatje worden opgeteld:

$ composite -compose Plus mask.png myimage.png rframe.png

image.png
mask.png
rframe.png