Desenfoque en movimiento con -motion-blur de ImageMagick
En este artículo vamos a ver cómo realizar desenfoques en movimiento con el operador -motion-blur de ImageMagick, que se puede aplicar tanto con convert como con mogrify.
El operador -motion-blur trabaja con tres parámetros:
- radio
- sigma
- ángulo
Para que se vea claro, vamos a crear una imagen con mucho contraste:
convert -size 400x45 xc:White -bordercolor Black -border 200 base_motion_blur.jpg
Modificando el radio
Si sólo modificamos el radio, pero no indicamos el desplazamiento del sigma, da igual lo alto que sea el valor aplicado, no notaremos diferencia:
convert base_motion_blur.jpg -motion-blur 50 motion_blur_50.jpg
Modificando radio y sigma
Si modificamos radio y sigma, sin indicar el ángulo, toma como valor del ángulo 0, es decir, hace un desplazamiento horizontal de los píxeles:
convert base_motion_blur.jpg -motion-blur 50x50 motion_blur_50_50.jpg
Es equivalente a:
convert base_motion_blur.jpg -motion-blur 50x50+0 motion_blur_50_50_0.jpg
Modificando radio, sigma y ángulo
Ya hemos visto que para indicar radio, sigma y ángulo tenemos que hacerlo con el siguiente formato:
-motion-blur $radiox$sigma+$angulo
Y, como podemos intuir, 0 es equivalente a 180 pero con un efecto espejo. Con 0 los píxeles se proyectan hacia la izquierda mientras que con 180, se proyectan hacia la derecha:
convert base_motion_blur.jpg -motion-blur 50x50+180 motion_blur_50_50_180.jpg
Partiendo de esta premisa, sólo tenemos que aplicar el ángulo que más nos interese para cada imagen.
45 grados
convert base_motion_blur.jpg -motion-blur 50x50+45 motion_blur_50_50_45.jpg
90 grados
convert base_motion_blur.jpg -motion-blur 50x50+90 motion_blur_50_50_90.jpg
270 grados
convert base_motion_blur.jpg -motion-blur 50x50+270 motion_blur_50_50_270.jpg