QR Code Symbols for Cell Phones

URL encoded in a QR Code symbolThere seems to be much interest of late in bar codes that are intended to be scanned on cell phones. The 2D symbology, QR Code, is a typical symbology that is used to convey a url (internet address) that a user is directed to when such a symbol is scanned by a cell phone. But, what standards or guidelines exist to help someone who is printing advertisements containing such codes? This article will address this question.

First of all there is an ISO document in the works to address these issues and that will be the “final word” on this topic and finally provide a single point of reference for cell phone designers and printers of advertisements. It will also give guidance on how cell phone (or any LCD screen for that matter) should display, or render, a QR symbol (or other bar code) for it to be readable. These dynamic bar codes are already in use at airport check-in counters, but nobody has any idea of how to produce them and ensure that they can be read at the check in counter. However, this particular article will focus only on guidance for printing QR symbols (generally in advertisements) so they can be read by cell phones.

There are generally two sizes of QR symbols to be considered: those on large billboards or posters, and those on advertisements (in newspapers for example), or in stores such as Best Buy. The basic difference in the distance from which you are expected to see the symbol. Cell phone cameras are good at taking pictures of people, or people’s faces, and not so good at taking close up pictures of small objects. Those on posters are very large, similar to the size of a persons face. Those on advertisements or in store (where they actually have a little more room for a larger symbol) are an inch or two across.

Any digital camera has a limited resolution, or number of pixels composing the image. The original iPhone has a 2 Megapixel camera, which actually means that it has 1600×1200 pixels. To get an image in focus you have to hold the iPhone about 24 inches away from the symbol. (You can get a slightly blurry image if you hold it closer). At 24 inches, you have about 1 pixel for every one hundredth of an inch. In bar code land, that is called 10 mils. Reading a bar code typically requires about 3 pixels per module (but some advanced readers can do better) so lets say that the X dimension should be at least 30 mils. That means that a small QR symbol, which has 21 modules across would be less than three quarters of an inch. This is in fact the smallest QR symbol used in advertisements that I’ve seen.

The 3G iPhone has a 3 Megapixel camera, and it also can focus closer to an object.  I believe that the lack of this “macro” capability was one of the major complaints that people had about the camera in the original iPhone.  Holding this iPhone about 3 inches from a bar code gives about 1 pixel per mil, which is actually very good resolution.  With this iPhone, you can read U.P.C. symbols and also smaller QR Codes.

The fact that different cell phone cameras have such vastly different resolutions and reading capabilities, leaves people catering to this market with a big problem.  No one can be sure what size codes they need to print.  Larger X dimensions will make the symbol much easier to read. Therefore, you will see symbols printed very large, in order to be more certain that a larger segment of the cell phone population will be able to read them.  The value of the upcoming ISO document will be that everyone will have a single reference point to target in their designs.

The QR symbols in Best Buy have 29 modules across (not including the quiet zone) and they are slightly less than 1 inch square.  I believe that the X dimension is 33 mils, which is produced with a 300 dpi printer with 10 dots per module.  Speaking of the quiet zone,  QR Code specifies a four module quiet zone around each of the three finder patterns but I’ve noticed that people are not respecting this quiet zone requirement.  Nonetheless, I think that readers do not require this quiet zone in order to find the QR Code symbol.

If a symbol is meant to be read from much further away, the X dimension has to be correspondingly larger. I’ve seen huge symbols will X dimensions approximating an inch (although I’m sure they were denominated in metric units since I was in Japan at the time!)

Now, as for symbol quality: it should be no challenge to produce QR symbols with huge X dimensions with nearly perfect quality. There should be no problem with “modulation” brought on by bar width growth, such as plagues bar codes of all types of smaller (typical) sizes. Furthermore, even “pixel round off” which occurs when the X dimension is not an integer multiple of the dot pitch of the printer will not be a large percentage of a module width.

However, I predict that the color and texture of the material that the symbol is printed on will play a large role in symbol readability.  This is why verification of symbol quality is important at the production stage of advertisements, and the people involved in the design and production of these (many of whom have not been involved in bar code production before) need to become educated on these issues.  And of course, there is not yet any public standard, such as the ISO one I mentioned above which is in the works, to specify quality requirements which can close the loop on the print quality/reader performance relationship.

In the meantime, I recommend that QR Code symbols that are printed on advertisements, and intended to be read by cell phones, should be printed with a minimum X dimension of 30 mil (.75 mm) and have a minimum print quality grade of 3.0/10/660/45.

In future posts, I hope to address the issues of how to render bar codes on LCD screens and how to read these codes with relatively low resolution cameras typical of cell phones.  Now a trivia question: What does “QR” stand for?

– Glenn Spitz