Friday, April 19, 2013

Using Colors in QR Codes, Part II

One of the most famous quotes from the action/science fiction movie The Matrix:

"This is a sparring program, similar to the programmed reality of the Matrix. It has the same basic rules, rules like gravity. What you must learn is that these rules are no different than the rules of a computer system. Some of them can be bent. Others can be broken. "

The same applies to enhancing QR Code, there is a clear set of rules that are part of the ISO/IEC 18004 QR Code documentation. These rules describe exactly how the QR code should be set-up. On the other hand, if limits of rules are not testes, bended or broken, progress and invention would halt.

The usage of color in QR Codes can result in unwanted behavior. Since color usage is not endorsed (read K.2.2 Symbol Contrast in the ISO/IEC 18004 specification), the way colorful QR codes are handled by a QR reader app can differ.


Here is a nice example of a (non?) working QR Code, depending on the reader used. for this example I started with a nice black/white QR Code. and changed both the white and the black to a nice color pattern.
The next step was to check/modify each element of the QR Code to check if the equivalent gray value was in the 0-25% of in the75-100% range of a gray scale to enhance the light/dark contrast to 'acceptable' levels.

The scan results of this code with multiple readers on various pads and phones was not constant. why? Because the QR code standard doesn't include multicolored images. Since there is no standard of going from this colorful pattern to black and white, various methods can result in different results.

Method 1: Threshold

Using a graphic drawing program, and just applying the threshold function gives me the following result. It is clear that this picture is beyond scanning valid QR Code
Method 2: Gray Scale and Threshold 

Using the same program, but now in a two step approach to change the color to black and white, the first step a convert to gray scale, followed by a threshold function gives this second result.

Does this mean not to use colors in QR Codes? well, maybe..... If a QR code needs to be made for a commercial campaign, there is no way to know what reader app each individual uses on there mobile phone.
And your custom QR Code should not be a piece of useless art.

Besides that the QR Code needs to be appealing, going to a mobile friendly website when an URL is used, it should actually work!!

If you require a (colorful) Custom QR Code, with branding or other visual effects, don't hesitate to contact me or visit my website, together we can work on a solution that will still use the original rules as its guide.

No comments:

Post a Comment