Convolution Matrix
Tue 01 August 2006 — PHP, ImageMagick
The website of the Bikini Test move to
a new and most powerful server with GD2. Hurray, we can resize our pictures from PHP.
The first essay of resizing this pretty picture (of William White).
turns into a nightmare.
The result isn’t really pretty. So I tried to apply some convolution matrix like : a Gaussian blur or emboss.
A Gaussian blur :
1 3 1
3 27 3
1 3 1
divisor : 43
Emboss :
1 1 -1
1 15 -1
1 -1 -1
divisor : 15
The result can be better but not perfect like flickr can. Bellow the emboss result :
Last try is to call ImageMagick with exec
.
convert input.png -resize widthxheight -quality 90 output.jpg
And the result is really good.
The bad side of this is that the exec
command is allowed everywhere (thanks to Azylog) and that you depend of the imagemagick installation to work. I should be
only an alternative to GD.
And, of course, don’t miss the great William White Saturday the 7th of October 2006.
Le site du Bikini Test a
changé d’hébergeur dernièrement et comme il y a enfin GD2 (la bibliothèque
de manipulation d’image) et bien il est enfin possible de redimensionner via PHP
leurs images.
Une belle image (depuis le site de William White (photo)) redimensionnée et hop, bof bof, le résultat n’est vraiment pas terrible.
Les premiers essais ont été d’appliquer des matrices de convolution sur l’image destination afin de réaliser des effets comme un flou (blur) ou emboss. Le résultat du flou, est peut-être un peu moins sale et celui du emboss donne un peu de relief. C’est peut-être mieux, mais loin des bons résultats que,
par exemple, Flickr fournit.
Ultime solution, non mécontent d’en avoir appris un peu plus sur les matrices de convolution, faire appel
à ImageMagick.
convert input.png -resize widthxheight -quality 90 output.jpg
Avec PHP, il faut passer par la fonction exec
, malheureusement pas autorisée partout (vive Azylog, qui n’est pas pour autant le nouvel hébergeur du site de Bikini Test).
C’est ce par quoi il faut passer pour obtenir un résultat “professionnel” lorsque l’on fait des miniatures
avec PHP. Un peu dommage.
Et venez nombreux le samedi 7 octobre 2006 pour assister au concert de Monsieur William White.
Digg it!,
so del.icio.us,
blogmarks,
reddit.