Getting the right Setup for Barcode and DMC reading
This article explains how to read barcodes and DMC codes (Datamatrix codes) with the most cost-effective machine vision camera solution. Additionally, we clarify the difference between Barcodes and DMC codes by discussing the pros and cons. We also provide a formula that helps you to calculate the required resolution, and give practical examples reading barcodes and DMC codes.
Differences between Barcodes and DMC
The best choice for code reading with industrial machine vision cameras is to use DMC codes instead of Barcodes. DMC codes can be read using lower resolution cameras while using the same field of view as Barcodes. Therefore, when reading DMC codes, you can use cheaper cameras. This also means that with DMC codes you can inspect a bigger field of view with the same hardware and price.
DMC code is a matrix of dots, also called a datamatrix. The dot size is specified as module size. For machine vision algorithms, it is easier to read these dots than very thin lines, which barcodes are made of.
The resolution required is determined from the proportion between the field of view area we want to inspect at once (so within one frame / image), and the size of the smallest detail.
DMC codes are also much compacter than Barcodes, so it reduces the required label size. Here an example of a BARCODE and a DMC code label containing the exact same information
How to calculate the required camera resolution for Barcode To calculate the resolution needed to inspect barcode labels, we need to know the width of the thinnest line of the barcode we want to see and the size of the field of view.
To reduce the resolution needed, we can either increase the size of the thinnest line of the barcode or decrease the field of view.
Calculation of the required resolution
To calculate the resolution needed to inspect DMC code labels, we need to know the size of the smallest dot / square (module size) of the datamatrix and the size of the field of view.
To reduce the resolution needed, we can either increase the module size of the DMC code, or decrease the field of view.
Minimum and recommended resolution for code reading
Resolution is key for stable, robust DMC code and barcode reading. In this example we calculate the system setup in 2 scenarios: minimum resolution and recommended resolution.
With minimum resolution we want a minimum of 1.5 pixels per linewidth (barcode) or 1.5 pixel per dot (DMC code). If all parameters are optimal (label quality, light, geometry, etc.) or you take multiple images of the same code. This could work stable.
The recommended resolution is at least 2 pixels per linewidth (barcode) or 2 pixel per dot (DMC). The best solution is 3 pixels. The more pixels per linewidth / dot means that the camera resolution is higher than required. The total setup will be more expensive. However more pixels will also result in easier, faster, better, and more stable reading of the DMC codes and barcodes.
There is a formula for calculating the resolution you can use:
Camera resolution = Field of view / systemresolution
Systemresolution = (Thinnestline or modulesize) / (minimum or recommended resolution per thinnestline or modulesize).
Eg: Which camera do I need to detect a barcode with a thinnestline of 1mm in a field of view of 1000*600mm. We go for the recommended resolution.
Systemresolution = 1mm/2pixels= 0.5 mm/pixel
Horizontal camera resolution = 1000 mm (horizontal FOV) / 0.5mm (systemresolution) = 2000pixels
Vertical camera resolution = 600 mm (vertical FOV) / 0.5mm (systemresolution) = 1200pixels
Our system will need a camera with a resolution of at least 2000*1200 pixels = 2.4MP camera.
If the object is standing still, so rolling shutter camera, we would recommend the 6MP camera for approx. 276euro (including lens). If the object is moving, we recommend the 3MP global shutter camera for approx. 472euro (inclusding lens).
The importance of image processing software in machine vision barcode / DMC label reading
Software choice is crucial in DMC code and barcode reading. It plays a critical role in the systems performance to recognize and read codes. As a general rule, the better the software algorithms, the better codes can be recognized, read and decoded.
The power of adaptive vision software
Adaptive Vision Image processing software In Adaptive Vision you can make a very powerful algorithm for code reading with just 2 tools and 5 minutes of time. One tool for acquiring the image and another tool for detecting the barcode or DMC code.
The tools are very fast and powerful. In all our tests, we achieved far better reading success ratio on difficult images compared to customers that are using open-source code reading algorithms. Especially when there is limited resolution or difficult lighting situation (reflections for example).
Below an example of reading barcodes in Adaptive Vision Studio
Code reading application in practice
As mentioned, reducing the field of view will reduce the required camera resolution. If the field of view is very wide compared to its height, one smart way to setup a system is to capture several images by means of moving the cameras or the products.
For instance, if your field of view where barcodes or DMC are to be detected is 10 x 2 meter, you could move one camera on a trolley and grab 5 pictures of 2x2meters, rather than use 5 cameras
Line scan cameras vs area scan cameras for code reading
Our customers frequently ask what the difference is between Line scan cameras or Area scan cameras to detect barcodes.
With Line scan cameras an image is reconstructed in software line-by-line for inspection, this happens when an object passes under the sensor. Line scan cameras are preferred when using a conveyor belt to move the products below the camera. For line scan cameras it is very important to know when to capture each pixel line, because it depends on the speed of the object that is passing. Often encoders are used. A line scan camera is very expensive, and encoders are needed to make a stable solution.
Area-scan cameras are much cheaper, more flexible, and easier to install. They can read barcodes and DMC codes in very different environments. Therefore > 95% of the applications for barcode or DMC code reading uses an Area scan camera.
If you want a cost-effective code reading solution, we recommend using DMC codes. The datamatrix is readable with a lower resolution camera and low-resolution cameras are cheaper than high resolution cameras. If you do want to read barcodes, or further lower the price of your DMC code reading solution, we recommend using a rolling shutter if possible, since these are cheaper than global shutter cameras.
You can also reduce the resolution needed by either increase the size of the thinnest line / dot or decrease the field of view. The field of view can also be decreased by using multiple cameras covering the total field of view.
Any other questions about barcode or datamatrix code reading?
In case you have any other questions about code reading, make sure to contact us. We are always happy to help you out.
Get notified about knowledge center articles?
Do you find our knowledge center articles helpful? Make sure to follow GeT Cameras on LinkedIn as we will post new articles there as soon as they are released.