Barcode technology is an integral part of every industry. It has effectively replaced the method of manual entry. The usage of barcodes have become inevitable due to its accuracy, speed and reliability. Barcoding is the crucial requirement for any automation process. It has successfully replaced the traditional method of data entry enabling the automatic identification and collection of data which is termed as Auto ID or AIDC (Automatic Identification and Data Collection).In this post, we will try to understand what is Barcode Number System, its various types, structure, how it works, its application, advantage & disadvantage.

What is Barcode

Barcode is a visual pattern of numbers and parallel lines of different width readable by a machine. It is used to recognize a particular product that procures the data requirements of any system.

Traditionally all barcodes look alike and they are linear. They have white and black parallel lines which are evenly spaced and of varying width. These are 1D codes.

The latest barcodes that were developed are called matrix codes or 2D codes. These codes are made up of two dimensional shapes and patterns.

1 Introduction to Barcodes

Fig. 1 – Introduction to Barcodes

Types of Barcodes

Based on the encoding type (data storage), Barcodes are categorized as:

  • One Dimensional(Linear) Barcodes (1-D)
  • Two Dimensional Barcodes (2-D)

2 Types of Barcodes

Fig. 2- Types of Barcode

One Dimensional (Linear) Barcode

It is the most commonly found Barcode. The data is organized horizontally from left to right in such barcodes. A barcode reader can read these codes.

Code 128, UPC, Code 39 are the examples of one-dimensional (linear) code. Data storage is limited and it is stretched horizontally if more information has to be stored.

3 Types of One Dimensional Linear Barcodes

Fig. 3 – Types of One Dimensional Linear Barcodes

Two Dimensional Barcode

These are more complex codes than linear codes as the data is stored vertically and horizontally which makes them to hold more information in a less space.

Unlike linear codes, the 2-D codes requires image scanner to read them. Globally, the smart phones are inbuilt with this type of scanner or the user can install. Squares, dots, rectangles, hexagons and other geometrical patterns are used to encode data.

4 Types of 2D Barcode

Fig. 4 – Types of 2D Barcode

QR (Quick Response) code is the most common 2D code used universally. QR codes can typically store a contact information, e-mail address, website address, geo location, network address etc.

The other types of 2-D codes are Data matrix, Aztec, PDF417 and Maxicode.

Structure of Different Barcodes

Both 1D and 2D barcode has different structure. For ease of understanding, we have discussed them separately in succeeding paragraphs.

Structure of 1D Barcode (UPC)

UPC represents Universal Product Code. As the name suggests, this coding is identical across the globe. UPC represents Global Trade Identification Number called as GTIN-12.

The number 12 indicates the 12 digit codes that varies from product to product. It is used to track trade items of retail industry.

5 Structure of UPC Barcode

Fig. 5 – Structure of UPC Barcode

The first six to nine digits in a UPC code indicates “Company Prefix”. This number determines a particular company and it remains same on all of its products. The latter set of digits are the “Product Numbers”.

These numbers point to specific items which are assigned by the company. The last character is called the “Modulo Check Digit” which is calculated using a mathematical operation based on the former digits of a code.

Structure of 2D Barcode (QR Code)

A QR code basically contains modules which are black and white in colour and are square patterned. Apart from the modules they also contain error detection patterns, format information, timing patterns and position detection patterns.

6 Structure of QR code

Fig. 6 – Structure of a QR code

The position detection patterns are aligned at the three corners of a QR code which determines the accurate position of the QR code. The format information consists of mask numbers and error correction codes which follow Reed-Solomon code algorithm.

The timing pattern is nothing but the black and white modules arranged alternately to determine the coordinates. This helps in recovering the information even if the QR code is damaged or half captured by the scanner. It has a blank space or a margin on all the sides of the code which is called the “Quiet zone”.

7 How Barcode Works

Fig. 7 – How Barcode Works

How Barcode Reader Reads Barcodes – Working Principle

Barcode reading methodology for 1D barcode and 2d Barcode is as follows:

How Barcode Reader Reads 1D Barcodes

When the laser light from the barcode reader falls on the barcode, which is a set of black and white parallel lines, the light is reflected by the white lines and the black lines do not reflect the light. This generates an analog signal with varying voltage.

8 How Barcode Reader Reads 1D Barcode

Fig. 8 – How Barcode Reader Reads 1D Barcodes

This signal is converted to digital signal by the converter. The digital signal is then fed to the decoder which interprets the signal i.e. the black lines are assigned ‘1’ and white lines ‘0’. Subsequently the signal is validated and gets converted in to ASCII text format.

How Image Scanner Reads 2D Barcodes

Taking a standard QR code in to consideration, the scanning is implemented by a mobile phone camera and QR code scanning application.

Initially the QR reader application is kept open and the phones camera is set at the designated area inside the code. The QR code scanning takes place and decoding procedure includes image binarization, QR code extraction, resampling and error correction.

9 How Barcode Reader Reads 2D Barcodes

Fig. 9 – How Barcode Reader Reads 2D Barcodes

Binarization is a process which recognizes black and white modules in a QR code images. Then QR code extraction is done by using algorithms that uses position detection patterns accurately to spot the QR code position.

Once the position is located the image is restored and resampled using perspective transformation and finally we get the corrected data using Reed-Solomon error correction algorithm.

Applications of Barcode

The applications of Barcodes are as follows:

  • The barcodes are widely used in inventory and warehousing management thus reducing manual data entry errors and processing time.
  • Essentially all the consumer goods which involves pricing and description of the product have adopted the usage of barcodes.
  • Health care systems have benefited from barcodes ensuring patient safety and also achieved traceability of products (like blood samples, drugs) to patients.
  • The entertainment industry handles the ticketing process with the use of barcodes.
  • Last but not the least, Library management would have been impossible without barcodes.

Advantages of Barcode

  • The main advantages of Barcode are as follows:
  • Large amount of data can be encoded in 2-D barcodes.
  • A wide data range can be embedded into 2-D barcodes such as numeric, binary, text and Unicode data.
  • 2-D barcodes are encased with error correction formula which helps in data retrieval even if it is damaged up to 20%.

Disadvantages of Barcode

The disadvantages of Barcodes are as follows:

  • To store large amounts of data in a linear code the length of the barcode has to be increased.
  • Linear barcodes once damaged cannot be scanned with accuracy.
  • The linear barcode scanning requires optical line of sight.
  • Barcodes scanning device is a pre-requisite for linear barcodes scanning process.
  • Complex algorithms must be designed for 2-D barcodes which makes it more complicated than 1-D barcodes.
Author: Laxmi Ashrit, BE  (Electronics & Communication)
Work Experience includes HP and RelQ Software as Tech Support Executive and Testing Engineer


Also Read:
Read Only Memory (ROM) – Working, Types, Applications, Advantages & Disadvantages
Thyristor – Working, VI Characteristics, Types, Applications, Advantage & Disadvantage
Big Data – Categories, Attributes, Applications & Hadoop