Zooming in on digital coding
Quick response codes - or QR codes as they are more commonly known - seem to be taking over the world.
These little blotchy patches adorn posters, magazines, books, signs and product packaging among other things. Though they were invented well over a decade ago, it is only in the age of the smartphone that they have found a place in the everyday world. They convey dollops of digital information to mobile devices and their users. So how do they work?
QR codes are descendants of the more familiar and humble barcodes that still get scanned at supermarket checkouts. Those barcodes store information in a pattern of vertical stripes. A barcode reader scans a beam of light from side to side detecting the change in reflected light as it goes and interprets this pattern as a series of numbers. Traditional barcodes are simple and effective but they can represent only a few digits.
Two-dimensional (2-D) barcodes make more effective use of the same space by using a grid of black and white cells instead of a single row of stripes. QR codes are the most popular kind of 2-D bar code, at least for everyday applications.
The smallest of QR codes, measuring 21 cells by 21 cells, can represent up to 25 letters and numbers. Larger versions with more cells can represent hundreds or even thousands of characters, equivalent to several printed pages of text. The increased complexity of the code means that the reader must be more complex too. Because it is two-dimensional, a QR code is most easily decoded by capturing an image of it with a camera and using software to extract the payload of meaningful information from the image. Perfect for today's mobile gadgets.
To assist with this not all of the modules are used to represent the payload, but instead are used to help the reader out. Before it can start processing a QR code the reader has to be aware it is even looking at one, and if so where it is in the image and which way up it is. To assist with this, every QR code comes with three alignment symbols in the top left, top right and bottom left corners. Each alignment symbol consists of a pair of concentric squares that produce a very distinctive visual signature that a computer can easily detect regardless of orientation.
Three alignment symbol signatures in an image tell a reader with a fair degree of confidence that it is looking at a QR code and they also tell the reader where three corners of the code are located. From this it infers the location, size and orientation of the code which in turn lets it find the individual modules and decode the information they contain.
The codes can appear wherever printed material can. They become a powerful tool for connecting the real and digital worlds.