Emular el dibujo a carboncillo con el operador -charcoal de ImageMagick
Con el operador -charcoal de ImageMagick podemos emular el dibujo a lápiz o a carboncillo de una imagen. Cuanto más bajo sea el valor, más fino será el trazo, por lo que si queremos simular un dibujo a lápiz, usaremos un valor de 1 ó 2 y si queremos que parezca que el dibujo lo hemos hecho con un carboncillo más graso, subiremos el valor de -charcoal.
Vamos a partir de esta imagen:
Y vamos a simular el dibujo a lápiz con -charcoal 1:
convert grafiti.jpg -charcoal 1 grafiti_charcoal_1.jpg
Y con -charcoal 2:
convert grafiti.jpg -charcoal 2 grafiti_charcoal_2.jpg
Como vemos, deja la imagen muy clara, y perfila los contornos en negro. Si queremos que esos contornos sean más gruesos, como si lo hubiéramos dibujado con un lápiz graso, vamos a usar un valor de -charcoal 5:
convert grafiti.jpg -charcoal 5 grafiti_charcoal_5.jpg
Si subimos más el valor, cada vez perderemos más nitidez, oscureciéndose cada vez más la imagen, pero sigue viéndose bien la imagen:
convert grafiti.jpg -charcoal 10 grafiti_charcoal_10.jpg
Al ser contornos en blanco y negro, podemos usar estas imágenes como máscaras.
También podemos usar charcoal para generar una animación. Por ejemplo, para hacer un gif a partir de una imagen:
#!/bin/bash for x in 1 do for i in {1..10} do for z in 1 2 3 do convert grafiti.jpg -charcoal $i png:- done done for i in {20..100..10} do for z in 1 2 3 do convert grafiti.jpg -charcoal $i png:- done done for i in {90..10..-10} do for z in 1 2 3 do convert grafiti.jpg -charcoal $i png:- done done for i in {9..1..-1} do for z in 1 2 3 do convert grafiti.jpg -charcoal $i png:- done done done | ffmpeg -f image2pipe -i - ${1%%.*}_charcoal.gif