Mindhue Studio

Printmaking, conceptual and installation art

Let’s Get UltraMeta: Tweeting a Compressed QR

My success in compressing 1-bit black and white images (as Holly Golightly) through the Twitter data pipe got me thinking about 1-bit images in general use, and it’s not surprising that I thought of QR codes. QR codes are nothing but 1-bit bitmaps that can be interpreted by your smartphone through image analysis. I still don’t think they’re very useful, but that’s okay.

Most QRs are too large for the compression systems I’ve been using, but the URLs produced by the link-shortening utility on Twitter itself will just fit within the Twitter data packet. This post now has the shortlink http://t.co/Mwd0jCHy, which turns into this QR code:

This particular image is 216 x 216 pixels, but it can be easily reduced to 25 x 25 by resizing it and trimming the white borders:

25 x 25 1-bit pixels can be split into 5 groups of 5, which gives us 5-bit compression, or 32 encodings. I like to think of this as “duotridecimal” encoding, and I merely extend the hexidecimal encoding from 0-F to 0-V. It’s not as much compression as the 6-bit version I used on Audrey and Teddy, but it’s easier for the human operator to work with. Suitably encoded, the bitmap now looks like this:

VOFJV
G8221
N8MAT
NALIT
N8H2T
GA021
VQLBV
02S00
C94J8
G73JB
5CNVD
UL9FO
0QNR1
A3UQ3
OTLHT
5JQV0
UQFVI
028OL
VOIAP
G83OG
N8NVP
N8QHU
NB84J
GAU7G
G0000

Which turns into this Twitter stream:

VOFJVG8221N8MATNALITN8H2TGA021VQLBV02S00C94J8G73JB5CNVDUL9FO0QNR1A3UQ3
OTLHT5JQV0UQFVI028OLVOIAPG83OGN8NVPN8QHUNB84JGAU7GG0000 5b1 25x25 QR

The encoded image is only 125 characters, which means I have 15 characters to indicate the encoding scheme! W00t! “5b1” would mean “5bit-encoded 1-bit B&W image”, “25×25” gives the final dimensions, and “QR” would indicate what the image is to be used for.

I find this highly amusing, and I’m quite entertained. ; )