QR code (abbreviated from Quick Response Code) is the trademark for a type of matrix barcode (or two-dimensional bar code) first designed for the automotive industry in Japan. Bar codes are optical machine-readable labels attached to items that record information related to the item. It was initially patented; however, its patent holder has chosen not to exercise those rights.[1] Recently, the QR Code system has become popular outside the automotive industry due to its fast readability and greater storage capacity compared to standard UPC barcodes. The code consists of black modules (square dots) arranged in a square grid on a white background. The information encoded may be made up of four standardized types ("modes") of data (numeric, alphanumeric, byte / binary, Kanji) or, through supported extensions, virtually any type of data.[2]
A QR code is read by an imaging device, such as a camera, and formatted algorithmically by underlying software using Reed-Solomon error correction until the image can be appropriately interpreted. Data is then extracted from patterns present in both horizontal and vertical components of the image. As a variety of industries utilize the QR code today, the applications for use can vary from product tracking, item identification, time tracking, document management and general marketing purposes.[3]
Invention
The QR code was invented in Japan by the
Toyota subsidiary
Denso Wave in 1994 to track vehicles during manufacture. It was designed to allow high-speed component scanning.[SUP]
[4][/SUP] It has since become one of the most popular types of two-dimensional barcodes.[SUP]
[5][/SUP]
Unlike the older one-dimensional barcode that was designed to be mechanically scanned by a narrow beam of light to extract data, the QR code is detected as a 2-dimensional digital image by a semiconductor
image sensor and is then digitally analyzed by a programmed processor. The processor locates the three distinctive squares at the corners of the image, and uses a smaller square near the fourth corner to normalize the image for size, orientation, and angle of viewing. The small dots are then converted to binary numbers and their validity checked with an error-correcting code.