scispace - formally typeset
Search or ask a question
Proceedings ArticleDOI

A Novel Method for Accurate and Efficient Barcode Detection with Morphological Operations

25 Nov 2012-pp 307-314
TL;DR: This goal is to detect automatically, rapidly and accurately the barcode location by the help of extracted features by comparing some published method from the literature and proposing a novel algorithm, that outperforms the others in both accuracy and efficiency in detecting 1D codes.
Abstract: Barcode technology is the pillar of automatic identification, that is used in a wide range of real-time applications with various types of codes. The different types of codes and applications impose special problems, so there is a continuous need for solutions with improved effectiveness. There are several methods for barcode localization, that are well characterized by accuracy and speed. Particularly, high-speed processing places need automatic barcode localization, e.g. conveyor belts, automated production, where missed detections cause loss of profit. In this paper, we mainly deal with segmentation of images with 1D barcode, but also analyze the operation of different methods for 2D barcode images as well. Our goal is to detect automatically, rapidly and accurately the barcode location by the help of extracted features. We compare some published method from the literature, which basically rely on the contrast between the background and the shape that represent the code. We also propose a novel algorithm, that outperforms the others in both accuracy and efficiency in detecting 1D codes.

Summary (2 min read)

Introduction

  • The authors mainly deal with segmentation of images with 1D barcode, but also analyze the operation of different methods for 2D barcode images as well.
  • The code types vary from each other in what black and white bars correspond to a given character.
  • The authors compare the effectiveness of the new method with several approaches from the literature and can show that, in most cases, their algorithm outperforms the others.
  • The authors present four barcode detection algorithms.
  • Nowadays, the quality of digital images are usually very good, although low-quality recordings are also made.

A. Method based on basic morphological operations

  • First, the authors present Tuinstra’s [3] algorithm.
  • This method relies on basic morphological operations.
  • Next, the gradient image is thresholded and pixels having a high gradient value are selected.
  • In their implementation, the structure element was chosen considering the length of the longest bar in the images.
  • So, in this step, probably false positive objects are removed and only barcode regions remain.

B. Method based on image scanning

  • The procedure of Telkin and Coughlan [4] was designed for visually impaired or blind people to facilitate their everyday lives.
  • The procedure is presented in two main phases.
  • The quality of the discrete images obtained from the input device is not ideal, so a preprocessing phase is necessary before the particular barcode localization.
  • Then pixel gradient values are calculated for the entire image using the Sobel operator, thus yielding a kind of edge enhancement in the image.
  • The horizontal scan comes first, wherein those edge pixels are found whose orientation is vertical.

C. Method based on bottom-hat filtering

  • In preprocessing, the method corrects the non-ideal image with simple contrast stretching in order to highlight differences between light and dark areas.
  • In less complex images, after bottom-hat filtering the false areas are less than after gradient calculation.
  • The binary image is eroded using a 5x5 structure element and subtracted from the original binary image.
  • This is followed by the step to determine the orientation, which is performed by directional image openings using a relatively large linear structure element.
  • Using the centroids of the remaining objects lines that are next to each other are found and the potential corner points of the object are computed.

D. The proposed method

  • The authors present their novel method for barcode localization.
  • Instead, the authors use bottom-hat filtering that is also based on intensity differences.
  • A too high threshold value could remove small barcodes from high-resolution images, therefore in this step the authors only remove the smaller false regions.
  • The authors use a square shaped structure element for dilation whose size is defined as S = max(40, width of the widest bar * 3) Nevertheless, this dilation may also thicken and merge unwanted non-barcode locations as well.
  • The proposed algorithm is summarized in Figure 3. III.

A. Test suite, test environment, and implementation

  • The authors generated barcodes digitally with the types shown in Figures 1.
  • Only one base image was chosen for each code type.
  • Test images contained one or three barcodes from each types, respectively, and images were affected by distortions.
  • Figure 4 shows a set of generated test images with various blur and noise level.
  • Evaulation was performed on a computer with Pentium(R) Dual-Core 2.30 GHz CPU.

B. Results and discussion

  • The authors show how effective the implemented algorithms are on images with various characteristics, and compare their running time w.r.t each other.
  • TT is slower than the other algorithms, which can most probably be attributed to the fact that here the image is scanned in four different orientations.
  • Subsequent tables show, how the algorithms behave on images which contain either one or three code pieces of various 1D and 2D barcodes types.
  • In column (c), the segmentation output before the last step is displayed.
  • The authors can state, that for larger images there are considerable execution time differences between the algorithms.

IV. CONCLUSION

  • The authors have presented a novel barcode detection algorithm and compared its performance (in terms of accuracy and speed) with three methods from the literature.
  • The authors concluded that these algorithms do not specialize for individual barcode types, they can efficiently detect various types of 1D and stacked 2D barcodes.
  • For the evaluation, the authors created a test database containing 17280 synthetic images representing various degradations (blur, noise, shear) as well as 100 real images.
  • The authors demonstrated that the algorithms selected from the literature are rather sensitive to noise, while the proposed new method is less sensitive.
  • The proposed method outperforms the other three in detecting 1D codes both in terms of accuracy and speed.

Did you find this useful? Give us your feedback

Figures (12)

Content maybe subject to copyright    Report

A novel method for accurate and efficient barcode
detection with morphological operations
Melinda Katona and L
´
aszl
´
oG.Ny
´
ul
Department of Image Processing and Computer Graphics
University of Szeged
´
Arp
´
ad t
´
er 2, H-6720 Szeged, Hungary
katona.melinda@stud.u-szeged.hu, nyul@inf.u-szeged.hu
Abstract—Barcode technology is the pillar of automatic iden-
tification, that is used in a wide range of real-time applications
with various types of codes. The different types of codes and
applications impose special problems, so there is a continuous
need for solutions with improved effectiveness. There are several
methods for barcode localization, that are well characterized by
accuracy and speed. Particularly, high-speed processing places
need automatic barcode localization, e.g. conveyor belts, auto-
mated production, where missed detections cause loss of profit.
In this paper, we mainly deal with segmentation of images
with 1D barcode, but also analyze the operation of different
methods for 2D barcode images as well. Our goal is to detect
automatically, rapidly and accurately the barcode location by the
help of extracted features. We compare some published method
from the literature, which basically rely on the contrast between
the background and the shape that represent the code. We also
propose a novel algorithm, that outperforms the others in both
accuracy and efficiency in detecting 1D codes.
Index Terms—barcode detection, computer vision, mathemat-
ical morphology, bottom-hat filter
I. INTRODUCTION
Barcode detection is required in a wide range of real-life
applications. Computer vision algorithms vary considerably
and each application has its own requirements for accuracy
and detection speed. Many barcode localization methods have
been developed for automatically segmenting barcode patterns
from images.
The term barcode can be used for various types of visual
codes. In this paper, we deal with classical 1D barcodes and
stacked 2D barcodes segmentation. Barcodes are not human-
readable and traditional devices have been widely adopted
for personal use. The traditional barcode structure is simple:
the variation of different thickness of parallel light and dark
bars represent information. Such codes can be read optically
by a machine. The code types vary from each other in
what black and white bars correspond to a given character.
The most frequent application of barcodes is the trade, e.g.
in goods packing, where it permits fast identification of
goods data such as manufacturer’s country, manufacturer’s
identification number and the product’s item number. The
barcode identification is the most known element of the GS1
system, which is an inseparable part of trading procedures.
The identification number visualized with symbols permit the
use of electronic reading by machines which support and
speed up the information streaming. Barcodes can have fix
Fig. 1. Barcode patterns (from left to right). Top row (1D codes): Code39,
Codabar, Code128, UPC-A; Middle row (1D codes): UPC-E, EAN-13, EAN-
8, I2of5; Bottom row (2D codes): Codablock, PDF417, Data Matrix, QR.
or variable length. In fix length codes, the standard specifies
how many characters are represented in a code, while the
other type may encode an arbitrary number of characters. The
different standard code types have specific features that help
their localization.
Figure 1 shows a set of standard 1D barcode types and some
widely used 2D barcode types. [1]
Barcode localization methods have two objectives, speed
and accuracy. For industrial environment, accuracy is crucial
since undetected (missed) codes may lead to loss of profit.
Processing speed is a secondary desired property of the
detectors. On smartphones, the accuracy is not so critical,
since the device interacts with the user and re-shoting is easily
possible, but a fast (and reasonably accurate) barcode detection
is desirable. Various techniques are used to locate and decode
barcodes from photographs, from the classical line scanning
technique [2], through the widely studied morphological ap-
proaches [3]–[9], and recent studies using wavelets [10].
We propose a novel barcode detection algorithm based on
bottom-hat filtering and other morphological operations, which
guarantee high efficiency. We compare the effectiveness of the
new method with several approaches from the literature and
can show that, in most cases, our algorithm outperforms the
others.
II. M
ETHODS
In this section, we present four barcode detection algo-
rithms. They use different approaches to determine the barcode
location. In the pseudocode we use the notation of [11]. The
2012 Eighth International Conference on Signal Image Technology and Internet Based Systems
978-0-7695-4911-8/12 $26.00 © 2012 IEEE
DOI 10.1109/SITIS.2012.53
307

methods presented in Sections II-A, II-B, and II-C were re-
implemented according to the original papers. Where some
details were not available in the papers, we made our best
effort to fill in the gaps and this is noted in the text. Figure 2
shows intermediate stages of the processing by the four
algorithms.
Nowadays, the quality of digital images are usually very
good, although low-quality recordings are also made. The
reason for lesser quality may be e.g. the capture device, but
the environment may also cause troubles. Subsequently, often
there is a need for correcting (rather improving) the image
quality before starting the particular processing.
A. Method based on basic morphological operations
First, we present Tuinstra’s [3] algorithm. This method
relies on basic morphological operations. Most algorithms
use simple operations in preprocessing, such as quantization,
wherein the input image is converted into another range of
intensity values (e.g. binary). In this case, the authors rely on
that in the barcode region, the intensity difference between the
stripes is high, so a gradient calculation highlights the bars. To
estimate the gradient in the x and y directions, Sobel kernels
are used. Next, the gradient image is thresholded and pixels
having a high gradient value are selected.
The rest of the procedure works on the binary image. The
localization is based on morphological operations. First step
is a hit-or-miss transformation with a line structure element.
Unfortunately, the structure element is not specified in the
article [3]. In our implementation, the structure element was
chosen considering the length of the longest bar in the images.
We used a 10x10 SE which is sufficiently large for the
objective and smaller than the expected bar length in the codes.
In the course of the procedure all objects are removed that
likely do not contain barcode.
After the hit-or-miss transformation, morphological dilation
is performed in order to merge nearby but not necessarily
connected objects to be able to compose a region. The structure
element is square shaped, but in the article its exact size was
not fixed. We used a 10x10 block SE matching the size used
for the previous step. In practice, the image size determines
this parameter. Certainly, dilation fuses some regions that do
not contain barcode, but in a subsequent phase these false
results are eliminated.
The next step is to perform morphological erosion to discard
thin objects from the image. The structure element size is
greater than that used for dilation. We used a 20x20 block
SE. This step removes undesired segments which were fused
by the dilation.
The final operation is a solidity test which compares the
number of pixels turned on in a region to the convex hull
of region. So, in this step, probably false positive objects are
removed and only barcode regions remain.
B. Method based on image scanning
The procedure of Telkin and Coughlan [4] was designed for
visually impaired or blind people to facilitate their everyday
lives. The article gives a complete description from the quality
improvement of the input image to reading the barcode. Here
we just recall the part of barcode localization.
The algorithm is most suitable for the UPC-A barcode type,
but is also suitable for the localization of other 1D codes like
UPC-E, and the EAN standard family of codes. The procedure
is based on scanning the image at different orientations.
The procedure is presented in two main phases. The quality
of the discrete images obtained from the input device is
not ideal, so a preprocessing phase is necessary before the
particular barcode localization. The first step is Gaussian
smoothing to reduce the noise level. Since the original paper
did not specify the σ, we used the same value of σ =0.3
as in our Proposed method. Then pixel gradient values are
calculated for the entire image using the Sobel operator, thus
yielding a kind of edge enhancement in the image.
In the next step the algorithm works with only those pixels
where the gradient value is above a threshold, so a binarization
is done so that pixels having a gradient above the threshold
become white and the others black. We used a threshold value
set to 95% of the maximal gradient value.
The detection phase is next. Firstly, the image is scanned in
four directions (horizontally, vertically, and in direction of the
diagonals (±45
)). The horizontal scan comes first, wherein
those edge pixels are found whose orientation is vertical. The
method looks in the vicinity of each edge pixel for opposite
polarity pixels. If there is a sufficient number of such pixels
in an area, as if they were part of a line segment, this area
will not be removed. Subsequently, vertical scan follows, when
those segments remain which have almost the same beginning
and end so they most likely belong to barcode areas. If there
appears to be more than one such region, then the next section
of operations will filter out the false positive regions.
At the final stage of the detection the entropy value is
calculated for each pixel in the result image describing the
disorder of intensities within a given neighbourhood around
each pixel. It is recalled that the barcode lines are parallel
with each other, so region entropy would be likely low, and
the entropy of false positive segments are expected to be high.
C. Method based on bottom-hat filtering
Next, we describe an algorithm by Juett and Qui [5], that
is based on bottom-hat filtering.
If the input is not a grayscale image, the algorithm will
convert it to that by quantization. In preprocessing, the method
corrects the non-ideal image with simple contrast stretching
in order to highlight differences between light and dark areas.
When we converted the color image to grayscale, the image
intensity range scales into a given interval. The next step
is bottom-hat filtering, when the closing of the stretched
image is subtracted from the original stretched image. [12]
The structure element size depends on the widest bar in the
barcode to be detected. The article specified 25x25 block SE
for images of size 720x480 pixels. In less complex images,
after bottom-hat filtering the false areas are less than after
308

Fig. 2. Intermediate stages of the processing by the four algorithms. Columns: TT, ETJC, JJXQ, and Proposed. First row: original image, last row: final
output.
gradient calculation. The rest of this algorithm works with
binary images, so the next step is the binary conversion.
After this, the contour is defined. The binary image is eroded
using a 5x5 structure element and subtracted from the original
binary image.
This is followed by the step to determine the orientation,
which is performed by directional image openings using
a relatively large linear structure element. These openings
are performed at 16 different orientations, with a step of
11.25
. Selecting one suitable orientation is difficult, because
the barcodes could be in any orientation between 0
and
180
. Thus several orientation is probed which significantly
increases the execution time of the algorithm. The directional
opening images are summarized and a low resolution density
image is calculated. Then, this image is converted back into
binary and each region represents a potentially barcode region.
In the last phase, objects whose area is smaller than a
threshold are eliminated. Using the centroids of the remaining
objects lines that are next to each other are found and the
potential corner points of the object are computed.
309

D. The proposed method
In this section, we present our novel method for barcode
localization. The algorithm is based on morphological oper-
ations. Our aim was to devise an algorithm with sufficiently
high speed and accuracy.
Similarly to the previously described methods [3]–[5], our
algorithm consists of two main phases. In the preprocessing
phase, the input image is converted to grayscale, because
although barcodes may be printed in various colors, the pattern
of dark bars on a light background is equivalent.
To reduce the image noise, we use smoothing with a Gaus-
sian kernel where σ =0.3. Edge enhancement follows, which
in most barcode localization method is done by calculating
gradient values. Instead, we use bottom-hat filtering that is also
based on intensity differences. Although, bottom-hat filtering
is less attractive regarding operation time than other non-
direction edge enhancement operations, its accuracy is higher.
For the further steps of the procedure the grayscale images are
converted to binary, using a standard thresholding technique.
To select the correct threshold value, we considered that the
barcode has positive intensity but not necessarily very high
and set the threshold to 95% of the maxmimal value.
After preprocessing the digital image is suited to finding
segments which contain barcode. The result image so far
contains a lot of false regions. We take advantage of the
structure of the barcode, the fact that it consists of parallel
lines at about same distance. We analyze the entire image
using a horizontal scan whether the white pixels are located
at appropriate distances at the given direction. The maximal
distance parameter depends on the image resolution.
After scanning, there are many small connected components
which satisfy the criteria but are not barcode regions. These
false regions are eliminated in the next step using an area
threshold. We set the threshold to half the size of the largest
component. A too high threshold value could remove small
barcodes from high-resolution images, therefore in this step
we only remove the smaller false regions.
Our observations showed, that for the final detection steps
mostly dense text regions remain along with the supposedly
barcode areas. Since a barcode consists of a sequence of
parallel bars and the bars are located at varying distance from
each other, they do not compose a connected component.
Therefore in this phase we use dilation, to merge these
patterns. We use a square shaped structure element for dilation
whose size is defined as
S = max(40, width of the widest bar * 3)
Nevertheless, this dilation may also thicken and merge
unwanted non-barcode locations as well. To cope with this
problem, we also use the dual operation, i.e. erosion.
Here, the structure element is also square shaped, consistent
with the size of the 1D barcodes. The structure element size
is less than (about 1/3 of) the one used for dilation, that is
matching the width of the widest bar. After erosion, those areas
that possibly contain barcode areas can be found. Of course,
there may still be false-positive objects which are removed
INITIALIZATION:
N = image width
M = image height
f = grayscale image
= morph. closing
min
a
= minimum area
= morph. dilation
Se
2
= dilation struct. el.
i
t
= minimum threshold
Se
1
= bottom-hat struct. el.
max
d
= maximum distance
= morph. erosion
Se
3
= erosion struct. el.
ALGORITHM:
f := (f Se
1
) f
for i
:
=0,...,N do
for j
:
=0,...,M do
if f
i,j
>i
t
then
if f
i,j
<max
d
then
f
i,j
1
else if
thenf
i,j
0 // no edge seen within
specified maximum distance
end if
else if
thenf
i,j
0
end if
end for
end for
f := f Se
2
f := f Se
3
if object area >min
a
then
Record this object as a barcode segment
else
Discard this object
end if
Fig. 3. Pseudocode of the proposed algorithm
in the last step on the basis of their size and proportions.
Similarly to the previous step, objects smaller than half the
size of the largest object are removed.
The proposed algorithm is summarized in Figure 3.
III. E
VALUATION
In this section, we compare the discussed methods’ effec-
tiveness under specific characteristics. We use the following
acronyms for referring to the algorithms: TT (Timothy R.
Tuinstra’s method [3]), ETJC (Ender Telkin
´
es James M.
Coughlan’s method [4]), JJXQ (James Juett
´
es Xiaojun’s
method [5]), and Proposed, for our new proposed algorithm.
A. Test suite, test environment, and implementation
We generated barcodes digitally with the types shown in
Figures 1. Only one base image was chosen for each code
310

type. Test images contained one or three barcodes from each
types, respectively, and images were affected by distortions.
For each base image, we generated all combinations of the
following properties: rotation in every 15
from 0
to 180
,
Gaussian blur filter with 3x3 kernel with 6 different σ, additive
noise from 0% to 50% with a step of 10%, and 15% shear.
In summary, the test set contained images containing either 1
or 3 codes of 10 different barcode types, with 12 orientations,
6 different blur filters, and 6 different rates of additive noise,
and with or without shear, with a total of 17280 images.
Figure 4 shows a set of generated test images with various
blur and noise level. For clarity, shear and rotation are not
illustrated here, which are, of course, applied to individual
codes in the distorted images.
Another 100 images containing barcodes were collected
from real-life examples without any modifications. These
images presented scratches, blur, minor light reflections and
distortions also.
We implemented the methods in MATLAB, with the help
of the Image Processing Toolbox. Evaulation was performed
on a computer with Pentium(R) Dual-Core 2.30 GHz CPU.
B. Results and discussion
In this section, we show how effective the implemented
algorithms are on images with various characteristics, and
compare their running time w.r.t each other. For calculating
accuracy we used the Jaccard the coefficient of similarity,
which measures the overlap of the bounding boxes of the real
and the detected barcode region. J(A, B)=
|A B|
|A B|
, where
A denotes the real barcode and B is the bounding box of the
detected code. This not only measures the success of detection,
but also considers the delination accuracy of the methods.
We can conclude that all four algorithms are capable of
effectively detecting barcodes. The ETJC method is fast,
however, when there are several barcodes in the image and
noise is also present, it loses efficiency. As already mentioned,
we also applied stretching when generating the images. The
efficiency of the algorithms do not seem to depend on the
streching and also seem to be insensitive to rotation as well.
TT is slower than the other algorithms, which can most
probably be attributed to the fact that here the image is scanned
in four different orientations.
JJXQ, the method based on bottom-hat filtering falls off
to the discussed fast algorithms with respect to running time.
The process is slower than the others because in the detection
phase the image is scanned in 16 different orientations. This
brings greater accuracy to the process but at the expense of
more computation.
Our proposed algorithm is also very fast. In most cases,
faster procedures locate barcodes less accurately or not at
all, as if loss of accuracy were the price for the speed gain.
However, in our case, speed is not coupled with a high cost
in accuracy. From the evaluation output we can conclude that
the proposed procedure has the best running efficiency for all
test images, and in many cases it also shows best accuracy.
TABLE I
A
CCURACY OF THE ALGORITHMS FOR VARIOUS COMBINATIONS OF
DISTORTIONS
(BLUR (B), NOISE (N), SHEAR (S)). MEAN VALUES
(EXPRESSED IN PERCENT) FOR ALL IMAGES WITH 1D BARCODES (TOP ),
AND FOR ALL IMAGES WITH 2D CODES (BOTTOM).
BNS TT ETJC JJXQ Proposed
1D
−−− 100.0 100.0 100.0 100.0
+ −− 83.1 79.9 76.8 96.1
++ 84.5 84.5 79.4 96.4
+ 82.1 81.9 75.1 95.9
++ 91.7 83.0 81.1 96.2
+++ 80.8 88.6 83.7 91.2
+ + 90.6 83.5 90.0 97.1
−−+ 82.8 84.0 77.2 96.1
2D
−−− 100.0 100.0 100.0 100.0
+ −− 83.5 98.0 76.9 91.0
++ 88.2 99.8 76.1 92.6
+ 82.4 99.8 76.0 90.0
++ 90.1 98.0 80.2 90.9
+++ 84.3 97.8 74.8 89.9
+ + 88.7 100.0 82.7 96.1
−−+ 87.5 99.9 77.1 91.0
TABLE II
R
UNNING TIME OF THE ALGORITHMS. IN IMAGES WITH 1D (ABOVE),
RESPECTIVELY 2D (BELOW) BARCODE MEAN VALUES (± STANDARD
DEVIATION
)(EXPRESSED IN PERCENT) FOR ALL IMAGES WITH 1D
BARCODES (TOP), AND FOR ALL IMAGES WITH 2D CODES (BOTTOM).
TT ETJC JJXQ Proposed
1 code
1D 0.23±0.13 0.67±0.22 0.81±0.43 0.13±0.10
2D 0.21±0.14 0.77±0.47 0.73±0.44 0.12±0.12
3 codes
1D 0.54±0.35 1.73±0.66 1.86±0.78 0.18±0.09
2D 0.46±0.21 1.70±0.54 1.68±0.71 0.18±0.10
The weakness of the method appears when the images is very
noisy or when there are such image areas which are similar
to a barcode.
We mentioned earlier that the generated test images contain
various amount of added noise and smoothing, and they
contain one or several barcodes. We show the effect of these
properties on the behaviour of each described method. In
Table I the overall accuracy of the algorithms is displayed
with respect to the different distortions. The efficiency of the
methods, i.e. processing time is also an important aspect. Ta-
ble II presents the execution time of the detection methods for
images with 1 or 3 barcodes. Here, one can easily appreciate
the significant differences between the different approaches.
Subsequent tables show, how the algorithms behave on im-
ages which contain either one or three code pieces of various
1D and 2D barcodes types. The structure of barcode types
varies which also has an effect on how well the algorithms
can perform. Accuracy of the detection methods for images
containing a single piece of code for various code types is
presented in Table III. TT, ETJC, and JJXQ has very bad
performance for Code128, however the Proposed algorithm
handles this variable-length code as well as the fixed-length
types. For the 2D codes, ETJC shows exceptionally good
accuracy, but the other three methods also perform well on
these stacked barcodes. As to images with three barcodes,
results are also shown in the bottom part. There is more
311

Citations
More filters
Patent
17 Oct 2016
TL;DR: In this paper, a store profile generation system includes a mobile base and an image capture assembly mounted on the base, which can be used for generating new product labels for a sale in an appropriate order for a person to match to the appropriate locations in a single pass through the store.
Abstract: A store profile generation system includes a mobile base and an image capture assembly mounted on the base. The assembly includes at least one image capture device for acquiring images of product display units in a retail environment. A control unit acquires the images captured by the at least one image capture device at a sequence of locations of the mobile base in the retail environment. The control unit extracts product-related data from the acquired images and generates a store profile indicating locations of products and their associated tags throughout the retail environment, based on the extracted product-related data. The store profile can be used for generating new product labels for a sale in an appropriate order for a person to match to the appropriate locations in a single pass through the store.

59 citations

Proceedings ArticleDOI
01 Jan 2017
TL;DR: This work describes how to adapt the state-of-theart deep learning-based detector of You Only Look Once (YOLO) for the purpose of detecting barcodes in a fast and reliable way.
Abstract: Barcodes, in their different forms, can be found on almost any packages available in the market. Detecting and then decoding of barcodes have therefore great applications. We describe how to adapt the state-of-theart deep learning-based detector of You Only Look Once (YOLO) for the purpose of detecting barcodes in a fast and reliable way. The detector is capable of detecting both 1D and QR barcodes. The detector achieves state-of-the-art results on the benchmark dataset of Muenster BarcodeDB with a detection rate of 0.991. The developed system can also find the rotation of both the 1D and QR barcodes, which gives the opportunity of rotating the detection accordingly which is shown to benefit the decoding process in a positive way. Both the detection and the rotation prediction shows real-time performance.

53 citations


Cites methods from "A Novel Method for Accurate and Eff..."

  • ...There are several approaches to the problem, some are relying on simple morphology operation like(Katona and Nyúl, 2013) and the improved version(Katona and Nyúl, 2012) by Katona et...

    [...]

  • ...There are several approaches to the problem, some are relying on simple morphology operation like(Katona and Nyúl, 2013) and the improved version(Katona and Nyúl, 2012) by Katona et al....

    [...]

Proceedings ArticleDOI
Clement Creusot1, Asim Munawar1
05 Jan 2015
TL;DR: A real time technique to detect barcodes in the wild from video streams that outperforms the state-of-the-art passive techniques both in accuracy and speed.
Abstract: The linear 1D barcode is the main tagging system for billions of products sold each day. Barcodes have many advantages but require a laser scanner for fast and robust scanning. Solutions exist to read barcodes from cell phones but they assume a carefully framed image within the field of view. This undermines the true potential of barcodes in a wide range of scenarios. In this paper we present a real time technique to detect barcodes in the wild from video streams. Our technique outperforms the state-of-the-art passive techniques both in accuracy and speed. Potential commercial applications enabled by such passive scanning system are also discussed in this paper.

43 citations


Cites background from "A Novel Method for Accurate and Eff..."

  • ...Some of these groups are discussed in detail by Katona et al. [6]....

    [...]

  • ...Katona et al. [6] discuss a morphological operations based technique to detect barcodes....

    [...]

Patent
13 Jun 2014
TL;DR: In this article, an image processing method and system for recognizing barcodes and/or product labels is presented. But the method uses a multifaceted detection process that includes both image enhancement of a candidate barcode region and other product label information associated with a candidate region to identify a product label, where the candidate region includes a nonreadable barcode.
Abstract: This disclosure provides an image processing method and system for recognizing barcodes and/or product labels. According to an exemplary embodiment, the method uses a multifaceted detection process that includes both image enhancement of a candidate barcode region and other product label information associated with a candidate barcode region to identify a product label, where the candidate barcode region includes a nonreadable barcode. According to one exemplary application, a store profile is generated based on the identifications of the product labels which are associated with a location of a product within a store.

37 citations

Book ChapterDOI
27 May 2013
TL;DR: A new algorithm variant is proposed, that outperforms in both accuracy and efficiency other detectors found in the literature using similar ideas, and also improves on the detection performance in detecting 2D codes compared to the previous algorithm.
Abstract: Barcode technology is essential in automatic identification, and is used in a wide range of real-time applications. Different code types and applications impose special problems, so there is a continuous need for solutions with improved performance. Several methods exist for code localization, that are well characterized by accuracy and speed. Particularly, high-speed processing places need reliable automatic barcode localization, e.g. conveyor belts and automated production, where missed detections cause loss of profit. Our goal is to detect automatically, rapidly and accurately the barcode location with the help of extracted image features. We propose a new algorithm variant, that outperforms in both accuracy and efficiency other detectors found in the literature using similar ideas, and also improves on the detection performance in detecting 2D codes compared to our previous algorithm.

36 citations


Cites methods from "A Novel Method for Accurate and Eff..."

  • ...Coughlan’s method [4]), JJXQ (James Juett és Xiaojun’s method [5]), MKLN (our previous method [10]), and Proposed (Prop....

    [...]

  • ...It also improves on the detection accuracy of our previous algorithm [10] for 2D stacked barcodes....

    [...]

  • ...The presented algorithm is a modified version of our previously published method [10], and is summarized in Figure 3....

    [...]

References
More filters
01 Jan 2006
TL;DR: This work has developed a freely available EAN-13 bar code recognition and information system that is both lightweight and fast enough for the use on camera equipped mobile phones, thus significantly lowering the barrier for large-scale, realworld testing of novel information and interaction applications based on ''connected'' physical objects.
Abstract: Automatic identification technology such as RFID promises to connect physical objects with virtual representations or even computational capabilities. However, even though RFID tags are continuously falling in price, their widespread use on consumer items is still several years away, rendering large-scale experiments with such an ''internet of things'' difficult. Much more ubiquitous are printed bar codes, yet so far their recognition required either specialized scanner equipment or custom-tailored bar codes an equally significant deployment hurdle. We have developed a freely available EAN-13 bar code recognition and information system that is both lightweight and fast enough for the use on camera equipped mobile phones, thus significantly lowering the barrier for large-scale, realworld testing of novel information and interaction applications based on ''connected'' physical objects. This demo presents our main contribution: A toolkit, consisting of a J2ME client for the barcode recognition on camera phones and a corresponding Java based server for linking the recognized product code to free and commercial databases on the internet, as well as two simple prototypical services (applications) based on this toolkit. With these tools, researchers can quickly develop fullfledged information and interaction applications based on EAN-13 product codes, and deploy them with a simple download to potentially large user bases in a much more effective manner than with the previously necessary special scanning equipment. We hope that this ''low tech'' version of bridging the gap will allow the community to quickly develop and try out more realistic and widespread applications, and thus gain real-world experiences for better jump-starting the future internet of things, today.

85 citations

Proceedings ArticleDOI
01 Dec 2008
TL;DR: An algorithm for the recognition of 1D barcodes using camera phones, which is highly robust regarding the the typical image distortions, is presented and yields a very good resolution dependent performance on the database.
Abstract: In this paper we present an algorithm for the recognition of 1D barcodes using camera phones, which is highly robust regarding the the typical image distortions. We have created a database of barcode images, which covers typical distortions, such as inhomogeneous illumination, reflections, or blurriness due to camera movement. We present results from experiments with over 1,000 images from this database using a Matlab implementation of our algorithm, as well as experiments on the go, where a Symbian C++ implementation running on a camera phone is used to recognize barcodes in daily life situations. The proposed algorithm shows a close to 100% accuracy in real life situations and yields a very good resolution dependent performance on our database, ranging from 90.5% (640 × 480) up to 99.2% (2592 × 1944). The database is freely available for other researchers.

66 citations


"A Novel Method for Accurate and Eff..." refers methods in this paper

  • ...Various techniques are used to locate and decode barcodes from photographs, from the classical line scanning technique [2], through the widely studied morphological approaches [3]–[9], and recent studies using wavelets [10]....

    [...]

Proceedings ArticleDOI
06 Dec 2005
TL;DR: A vision-based technique to locate and decode EAN-13 barcodes from images captured by digital cameras to enable electronic devices with cameras such as mobile phones and personal digital assistants (PDAs) to act as a barcode reader.
Abstract: In this paper, we propose a vision-based technique to locate and decode EAN-13 barcodes from images captured by digital cameras The ultimate aim of our approach is to enable electronic devices with cameras such as mobile phones and personal digital assistants (PDAs) to act as a barcode reader

63 citations

Journal ArticleDOI
01 Mar 2011
TL;DR: Experimental results indicate that the proposed approach can locate multiple and omnidirectional barcodes, even with a complex background and minor distortion.
Abstract: Barcodes have been extensively adopted in daily life, such as in merchandise labels, inventory control, storage/retrieval systems and inspection. Computer-vision-based barcode recognition can definitely facilitate barcode reading, especially for multiple barcodes and free orientation and in complex scenarios. This work, presents an automatic barcode detection and recognition algorithm for multiple and rotation invariant barcode decoding. The proposed system comprises three stages. First, the barcode is extracted by coarse-to-fine segmentation in four steps: background small clutter reduction, candidate barcode segmentation, barcode verification and barcode rotation and regularization. To enhance the barcode region, thin and small background noise clusters are eliminated using Max–Min Differencing. The approach combines several image-processing schemes, namely Gaussian smoothing filtering, connected component analysis, orientation homogeneity, moment analysis and iterative thresholding. The second stage decodes the barcode by scanning multiple traversal lines, thus preventing decoding errors due to minor barcode defects. Finally, the proposed system is implemented and optimized on a DM6437 DSP EVM board. Experimental results indicate that the proposed approach can locate multiple and omnidirectional barcodes, even with a complex background and minor distortion. The recognition rates for 10,395 lottery barcodes and 388 merchandise barcodes are 99.74 and 90.7%, respectively. The proposed system is promising and has been successfully adopted in commercial applications of lottery reading and verification of winning numbers.

44 citations


"A Novel Method for Accurate and Eff..." refers methods in this paper

  • ...Various techniques are used to locate and decode barcodes from photographs, from the classical line scanning technique [2], through the widely studied morphological approaches [3]–[9], and recent studies using wavelets [10]....

    [...]

Proceedings ArticleDOI
07 Dec 2009
TL;DR: A computer vision algorithm is proposed that processes several frames of video per second to detect barcodes from a distance of several inches and thereby guides a blind user holding a webcam or other portable camera to locate and home in on a barcode.
Abstract: Most camera-based systems for finding and reading barcodes are designed to be used by sighted users (e.g. the Red Laser iPhone app), and assume the user carefully centers the barcode in the image before the barcode is read. Blind individuals could benefit greatly from such systems to identify packaged goods (such as canned goods in a supermarket), but unfortunately in their current form these systems are completely inaccessible because of their reliance on visual feedback from the user. To remedy this problem, we propose a computer vision algorithm that processes several frames of video per second to detect barcodes from a distance of several inches; the algorithm issues directional information with audio feedback (e.g. “left,” “right”) and thereby guides a blind user holding a webcam or other portable camera to locate and home in on a barcode. Once the barcode is detected at sufficiently close range, a barcode reading algorithm previously developed by the authors scans and reads aloud the barcode and the corresponding product information. We demonstrate encouraging experimental results of our proposed system implemented on a desktop computer with a webcam held by a blindfolded user; ultimately the system will be ported to a camera phone for use by visually impaired users.

42 citations


"A Novel Method for Accurate and Eff..." refers methods in this paper

  • ...The procedure of Telkin and Coughlan [4] was designed for visually impaired or blind people to facilitate their everyday lives....

    [...]

  • ...The procedure of Telkin and Coughlan [4] was designed for visually impaired or blind people to facilitate their everyday lives....

    [...]

  • ...We use the following acronyms for referring to the algorithms: TT (Timothy R. Tuinstra’s method [3]), ETJC (Ender Telkin és James M. Coughlan’s method [4]), JJXQ (James Juett és Xiaojun’s method [5]), and Proposed, for our new proposed algorithm....

    [...]

  • ...Coughlan’s method [4]), JJXQ (James Juett és Xiaojun’s method [5]), and Proposed, for our new proposed algorithm....

    [...]

Frequently Asked Questions (1)
Q1. What are the contributions mentioned in the paper "A novel method for accurate and efficient barcode detection with morphological operations" ?

In this paper, the authors mainly deal with segmentation of images with 1D barcode, but also analyze the operation of different methods for 2D barcode images as well. The authors compare some published method from the literature, which basically rely on the contrast between the background and the shape that represent the code. The authors also propose a novel algorithm, that outperforms the others in both accuracy and efficiency in detecting 1D codes.