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

convert grafiti.jpg -charcoal 1 grafiti_charcoal_1.jpg
Y con -charcoal 2:

convert grafiti.jpg -charcoal 2 grafiti_charcoal_2.jpg

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

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

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

 

 

Deja una respuesta

Tu dirección de correo electrónico no será publicada.