Fast barcode search
First Claim
Patent Images
1. A method for locating a barcode in an image, comprising:
- dividing the image into a plurality of tiles;
scanning each of the tiles so as to detect a pattern of stripes associated with the barcode in at least one of the tiles;
analyzing the pattern of stripes so as to determine an angle of orientation of the barcode; and
responsive to the determined angle, defining bounds of the barcode that are aligned with the pattern of the stripes.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for locating a barcode in an image includes dividing the image into a plurality of tiles, and scanning each of the tiles so as to detect a pattern of stripes associated with the barcode in at least one of the tiles. The pattern of stripes is analyzed so as to determine an angle of orientation of the barcode. Responsive to the determined angle, bounds of the barcode are defined in alignment with the pattern of the stripes.
32 Citations
42 Claims
-
1. A method for locating a barcode in an image, comprising:
-
dividing the image into a plurality of tiles;
scanning each of the tiles so as to detect a pattern of stripes associated with the barcode in at least one of the tiles;
analyzing the pattern of stripes so as to determine an angle of orientation of the barcode; and
responsive to the determined angle, defining bounds of the barcode that are aligned with the pattern of the stripes. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for finding a pattern of parallel stripes in an image, which comprises a plurality of pixels having respective pixel values, the method comprising:
-
scanning an area of the image along a selected scan line in a first scan direction so as to locate a first sequence of the pixels on the line having pixel values within a predetermined range;
starting from each of at least some of the pixels in the sequence, scanning in a second scan direction, transverse to the first scan direction, to both sides of the line, so as to reach endpoint pixels defined by the first of the pixels on both sides of the line having pixel values outside the predetermined range;
joining the endpoint pixels on each side of the line to define respective edges of a first one of the stripes;
repeating the steps of scanning the area in the first and second scan directions and of joining the endpoint pixels for at least a second sequence of the pixels on the line having pixel values within the predetermined range, so as to define the respective edges of at least a second one of the stripes; and
comparing the edges of at least the first and second stripes to find the stripe pattern in the image. - View Dependent Claims (11, 12, 13, 14, 16, 17, 18, 19, 20, 21, 22, 23, 24, 26, 27, 28, 29)
-
-
15. Apparatus for locating a barcode in an image, comprising an image processor, which is arranged to divide the image into a plurality of tiles, to scan each of the tiles so as to detect a pattern of stripes associated with the barcode in at least one of the tiles, to analyze the pattern of stripes so as to determine an angle of orientation of the barcode, and responsive to the determined angle, to define bounds of the barcode that are aligned with the pattern of the stripes.
-
25. Apparatus for finding a pattern of parallel stripes in an image, which comprises a plurality of pixels having respective pixel values, the apparatus comprising an image processor, which is arranged to scan an area of the image along a selected scan line in a first scan direction so as to locate a first sequence of the pixels on the line having pixel values within a predetermined range, and starting from each of at least some of the pixels in the sequence, to scan in a second scan direction, transverse to the first scan direction, to both sides of the line, so as to reach endpoint pixels defined by the first of the pixels on both sides of the line having pixel values outside the predetermined range, to join the endpoint pixels on each side of the line to define respective edges of a first one of the stripes, and to repeat the steps of scanning the area in the first and second scan directions and of joining the endpoint pixels for at least a second sequence of the pixels on the line having pixel values within the predetermined range, so as to define the respective edges of at least a second one of the stripes, and to compare the edges of at least the first and second stripes to find the stripe pattern in the image.
- 30. A computer software product for locating a barcode in an image, comprising a computer-readable medium in which program instructions are stored, which instructions, when read by a computer, cause the computer to divide the image into a plurality of tiles, to scan each of the tiles so as to detect a pattern of stripes associated with the barcode in at least one of the tiles, to analyze the pattern of stripes so as to determine an angle of orientation of the barcode, and responsive to the determined angle, to define bounds of the barcode that are aligned with the pattern of the stripes.
-
38. A computer software product for finding a pattern of parallel stripes in an image, which comprises a plurality of pixels having respective pixel values, the product comprising a computer-readable medium in which program instructions are stored, which instructions, when read by a computer, cause the computer to scan an area of the image along a selected scan line in a first scan direction so as to locate a first sequence of the pixels on the line having pixel values within a predetermined range, and starting from each of at least some of the pixels in the sequence, to scan in a second scan direction, transverse to the first scan direction, to both sides of the line, so as to reach endpoint pixels defined by the first of the pixels on both sides of the line having pixel values outside the predetermined range, to join the endpoint pixels on each side of the line to define respective edges of a first one of the stripes, and to repeat the steps of scanning the area in the first and second scan directions and of joining the endpoint pixels for at least a second sequence of the pixels on the line having pixel values within the predetermined range, so as to define the respective edges of at least a second one of the stripes, and to compare the edges of at least the first and second stripes to find the stripe pattern in the image.
Specification