~/copiona /degradación digital de un otoño artificial

Degradación digital de un otoño artificial.

degradación-digital-1

Memoria:

Degradar con el software generalmente está vinculado a la compresión y pérdida de calidad. como bien dice hito steyerl en En defensa de la imagen pobre

“La imagen pobre es una copia en movimiento. Su calidad es mala, su resolución deficiente. Se deteriora conforme acelera. Es el fantasma de una imagen, una vista previa, una miniatura, una idea errante, una imagen itinerante distribuida de forma gratuita, exprimida a través de lentas conexiones digitales, comprimida, reproducida, extraída, remezclada, así como copiada y pegada en otros canales de distribución.”

Una imágen de mala calidad es una imagen pobre, despojada del esplendor de la definición, una lumpenproletaria de la sociedad de clases.

pero a partir de esta máxima muy hermosa que escribe hito, estuve pensando en realizar un proceso de degradación digital sobre hojas escaneadas (después de pasar el otoño del 2021 mirando y juntando hojas degradadas de la huerta que habité). En la construcción conceptual, junto a un grupo hermoso en el taller de “línea de fuga” con [julieta marra, francis, julia, danna, delfi, manuel y tone ] jugando con la impresión con la ticketera parecía interesante imprimir las hojas escaneadas.

En la línea de la degradación no me interesaba usar el recurso de la pixelación, sino que parte del concepto era poder emular un poco esta fascinación por los patrones de construcción de hojas que tienen las plantas [1,1,2,3,5,8,13] :D.

Usando el histórico ascii art como inspiración y seleccionando una paleta de caracteres específica es posible hacer un acercamiento. degradar la imagen en síntesis, en pérdida de información pero sin perder resolución. una degradación que intenta simular el proceso natural. imprimir el otoño con hardware, degradar las hojas con software.

ahora lo divertido, cómo se hace todo esto?

Receta [linux]:

Paleta de caractéres:

PALETTE : ▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -

la gema que use es:

gema: https://rubygems.org/gems/image2ascii

instalar con ruby: gem install image2ascii

repo: https://github.com/michaelkofron/image2ascii#image2ascii

dependencias:

$  sudo dnf install ImageMagick
$  sudo dnf install ImageMagick-devel
$  gem install image2ascii
$  gem install imagemagick
$  gem install rmagick
$  gem install raimbow

luego pasar imagen a caractéres ej:

image2ascii $archivo.png -t 30 -g -x '▓ ▒ ░ ┐┌ ┤ │ | - . ~'

con -t podés indicar el % de pantalla que querés que ocupe el resultado de la transformación

con -g utiliza escala de grises (por defecto es a color)

con -x podés indicar los caractéres específicos para usar.

Nombres

impresora: 80 hoja$: h$.png hoja en caractéres: h$-[1,2,3,4,5]

Imprimir desde terminal

pl -d 80 -o fit-to-page $archivo

-o fit-to-page como flag para que la imagen se ajuste al ancho de lo imprimible

Es posible imprimir muchos archivos uno seguido del otro con

lp -d 80 -o fit-to-page h1.png h2.png h3.png

Ejemplos que usé

lp -d 80 -o fit-to-page h1.png h1-1.png h1-2.png h1-3.png h1-4.png h1-5.png 

lp -d 80 -o fit-to-page h2.png h2-1.png h2-2.png h2-3.png h2-4.png h2-5.png

lp -d 80 -o fit-to-page h3.png h3-1.png h3-2.png h3-3.png h3-4.png h3-5.png

lp -d 80 -o fit-to-page h4.png h4-1.png h4-2.png h4-3.png h4-4.png h4-5.png

lp -d 80 -o fit-to-page h5.png h5-1.png h5-2.png h5-3.png h5-4.png h5-5.png

Primer hoja h1

Con lo siguiente lo que hacemos es la conversion de la imagen a caractéres , guardarla en un archivo h.temp.txt y luego enviarla a la impresora.

Es posible imprimir de esta forma directamente. lo que sucede es que la ticketera tiene un ancho específico (50mm) donde entran una cantidad especifica de caractéres, entonces la version de 80% contiene muchisimos más caractéres que la version de 3%. lo cual hace que se impriman sin forma. o sin la forma igual a la hoja original. entonces hay forma de escalar la cantidad de caractéres por pulgada a imprimir :D. por eso despues de lp -d 80 esta la flag -d cpi=68 -0 lpi=64 llegar a esto me llevo varios rollos de pruebas :v

80%

image2ascii h1.png -t 80  -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -' > h-temp.txt &&  lp -d 80 -o cpi=68 -o lpi=64 h-temp.txt

50%

image2ascii h1.png -t 50  -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -' > h-temp.txt &&  lp -d 80 -o cpi=48 -o lpi=22 h-temp.txt

30%

image2ascii h1.png -t 30  -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -' > h-temp.txt &&  lp -d 80 -o cpi=27 -o lpi=13.5 h-temp.txt

20%

image2ascii h1.png -t 20  -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | -' > h-temp.txt &&  lp -d 80 -o cpi=18 -o lpi=8 h-temp.txt

10%s

image2ascii h1.png -t 10  -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | .' > h-temp.txt &&  lp -d 80 -o cpi=9 -o lpi=4 h-temp.txt

3% pantalla

image2ascii h4.png -t 3 -x '▓ ▒ ░ ─└ ┼ ┘├ ┐┌ ┤ │ | .' > h-temp.txt && lp -d 80 -o cpi=3 -o lpi=1.5 h-temp.txt

resultado

--------- ┘├---------------------
--------|──└┌--------------------
------- ── ░─--------------------
------ ░──░▓┼ -------------------
-----| └└└─   └┐ ----------------
-----└─ └└─    └░┘|--------------
----├░─  ┼┼ └ ┼┼┼    ------------
---  ─└ ┼  ─ └┼    ┼ ┘ ----------
--│▒░─ ┼ ┼ ─  ┼┼├    ┼ ┌---------
-  ░─└  ┼┼    ┼┘├┘┘┘┘┘┼  |-------
- ▒  └└      ┼┘├├├┘┘  ┼ ─░ ------
-┼ ─  └ ┼ ┼  ─├┘┘├┘  ┼┼┼ └ ├-----
|▒ ─└  ┘┘┘┘ ├ ┘┘┘ ├┘ ┘  ┼  ░ ----
 ░└  ┼ ┼ ┘┘┘┘─├├├├├├ ┘├┼┼ ┼└  ---
┘ ┼┼┼  ┘┘├├┘├ ─ ├┐┘┘┐├├├ ├    |--
┌ └  ┼┘┘├├┐├ ┐ ├┐ ┘┘├├├  ├┘┼ ░├--
 ─  ┼   ├├├  ┘  ┐   ┘├├ ├┘┘┼   --
-|└  └  ┘ ┘┘  ┌ ┐  ┘┘┘  ├├┘  ─  -
---- ┘▒ ┼┘┘┘┘├   ├├├┘├┘├├├ ┼   ┼-
---|┘ ░─└─ └└┼┘└┼├┘├ ┘├├    ┘┼  -
---│ └  └└└ ┼ ┘  ┘┘┘┘├┘├  ┌├  └▒
-- └ └└└ ┼┼┼  ┼   ┼┼┼ ├┘├┘┘┘┼  ▒
--┤   └ └    └  ▒┼ ├┘┘  ├ ┼┼  └▒
--┤░─└└ └ ┼┼ └┼  ├┘┘┘┘ ├┘┘├ ┼┼└▒│
--| ─└└└ └┼┼┼    ┼  ┘ ┘┘┘ ┘└ └└ -
--   └└   ┼ ┼└└  ┘├┘├┘├┘┘   ┼   -
---├     └┼┼┼┼  ▓ ┘  ├┘┼┼┼ ┼  ┼--
---|░─   ┼ ┼┼ └ ▓┘┘┼├├┘   ┘ ─  --
----  ─ ┼┼┼┼ └└┼▓├ ┐┘ ┼ └ ┼└ │---
-----|┘░ ─  └──└  ┘├ ┼  ─└─ ┤----
-------┼└   ┼└└─▒┼    └└ ─░│-----
------- ─└┼ ┼   ░ ┼┼  ──░─|------
-------- ┼└┼┼ ─▒─┘┼ └─░░┌--------
----------  └ ─▓└┼┼ ░░├ ---------
-----------│└░░▓─┼─ ┌ -----------
------------  ░▓─└┐--------------
--------------| ▒|---------------
--------------┐▓└----------------
-------------|   ----------------
------------  ▒ -----------------
------------ ┼ ------------------

Un registro de cómo pasó esto en diferentes lugares

flyer_osmiornica flyer_tranza flyer_fablabbrc flyer_brc

Proceso

degradación-digital-1 degradación-digital-2 degradación-digital-3 degradación-digital-4 degradación-digital-5 degradación-digital-6 degradación-digital-7 degradación-digital-8 degradación-digital-9

Muestra tranza

degradación-digital-10 degradación-digital-11 degradación-digital-12 degradación-digital-13 degradación-digital-14

Muestra brc

degradación-digital-11 degradación-digital-12 degradación-digital-13 degradación-digital-14

Faltan más que @digicronos me tiene que pasar <3

Lo que resolví luego es hacer una exportación en buena resolución (300dpi) de cada una de las imágenes convertidas desde el archivo en .svg a .png para luego poder llamarlas directamente al imprimir. acá van las pruebas

Imágenes de procesos de degradación:

Hoja 1

lp -d 80 h1.png

h1

lp -d 80 h1-1.png

h1

lp -d 80 h1-1.png

h1

lp -d 80 h1-1.png

h1

lp -d 80 h1-1.png

h1

lp -d 80 h1-1.png

h1


hoja 2

lp -d 80 h2.png

h2

lp -d 80 h2-1.png

h2

lp -d 80 h2-1.png

h2

lp -d 80 h2-1.png

h2

lp -d 80 h2-1.png

h2

lp -d 80 h2-1.png

h2

hoja 3

lp -d 80 h3.png

h3

lp -d 80 h3-1.png

h3

lp -d 80 h3-1.png

h3

lp -d 80 h3-1.png

h3

lp -d 80 h3-1.png

h3

lp -d 80 h3-1.png

h3

hoja 4

lp -d 80 h4.png

h4

lp -d 80 h4-1.png

h4

lp -d 80 h4-1.png

h4

lp -d 80 h4-1.png

h4

lp -d 80 h4-1.png

h4

lp -d 80 h4-1.png

h4

hoja 5

lp -d 80 h5.png

h5

lp -d 80 h5-1.png

h5

lp -d 80 h5-1.png

h5

lp -d 80 h5-1.png

h5

lp -d 80 h5-1.png

h5

lp -d 80 h5-1.png

h5

update 18.01.2023

y qué pasa si uso estos caracteres:

╰╯╰╭╭╮╰╰╮╰╰╭╭╭║╮╯╮╭╭═╰╭╮╭╯╰╭╰╰╮╰╰╯╓╭╯╭╮╰┼╭╮╨┐╰╰╓╯╮╯╮╯╯╛╮├╭╮╮╪╰╞╦╯╭╭╒╭╢┼═╰╟╮╭╰╩┘╖╭╰╩╰╭╰╛╨└╧╮╰┘╮╭╭╣╮╜╛╮╟╜═╞╯╕└╵╔╯╷╓╧╵╔╖╧┼╫║║╨┼╧╨┬┬═╣╦╤╝╓╥├╙╠╫╠