Embedded interaction code recognition
First Claim
1. A method in a computer system for identifying a location of an embedded interaction code (EIC) symbol on a surface, the method comprising using a computer to carry out the steps of:
- capturing an image of the surface containing a portion of an EIC pattern having a plurality of grid cells formed by a plurality of grid lines, each grid line having a plurality of data dot positions and orientation dot positions;
for each of a plurality of grid cells within the captured image,for each grid line portion associated with the grid cell,determining a graylevel for each of a plurality of data dot positions, anddetermining positions of black data dots by comparing the determined graylevels of the data dot positions;
for each of a plurality of orientations of the grid cells, determining the number of black data dots at orientation dot positions;
determining a correct orientation for the EIC pattern and which grid cells correspond to EIC symbols based on which rotated position of the grid cells contains the fewest number of black dots at orientation dot positions;
orienting the EIC pattern based on the determined correct orientation for the EIC pattern;
identifying an EIC symbol in the EIC pattern with the corrected orientation, the EIC symbol having an associated grid cell with edges; and
extracting bits from at least one edge of the grid cell associated with the identified EIC symbol based on the position of a black data dot on the at least one edgewherein the extracted bits are used to determine the position of the identified EIC symbol relative to the surface.
2 Assignments
0 Petitions
Accused Products
Abstract
In accordance with embodiments of the invention, embedded interaction code (EIC) symbols are recognized. EIC dots are generated based on effective EIC symbols, which have been generated by processing an image containing the EIC symbols, by obtaining graylevels of selected positions of the EIC-symbols. Rotated EIC dots are generated based on the EIC dots by determining which grid cells correspond to the EIC symbols and by determining which direction is a correct orientation of the EIC symbols. A homography matrix is updated with orientation information based on the EIC dots. EIC bits are extracted from the rotated EIC dots based on graylevels of selected positions of the rotated EIC dots.
282 Citations
20 Claims
-
1. A method in a computer system for identifying a location of an embedded interaction code (EIC) symbol on a surface, the method comprising using a computer to carry out the steps of:
-
capturing an image of the surface containing a portion of an EIC pattern having a plurality of grid cells formed by a plurality of grid lines, each grid line having a plurality of data dot positions and orientation dot positions; for each of a plurality of grid cells within the captured image, for each grid line portion associated with the grid cell, determining a graylevel for each of a plurality of data dot positions, and determining positions of black data dots by comparing the determined graylevels of the data dot positions; for each of a plurality of orientations of the grid cells, determining the number of black data dots at orientation dot positions; determining a correct orientation for the EIC pattern and which grid cells correspond to EIC symbols based on which rotated position of the grid cells contains the fewest number of black dots at orientation dot positions; orienting the EIC pattern based on the determined correct orientation for the EIC pattern; identifying an EIC symbol in the EIC pattern with the corrected orientation, the EIC symbol having an associated grid cell with edges; and extracting bits from at least one edge of the grid cell associated with the identified EIC symbol based on the position of a black data dot on the at least one edge wherein the extracted bits are used to determine the position of the identified EIC symbol relative to the surface. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computer-readable storage medium containing instructions for executing a method for identifying a location of an embedded interaction code (EIC) symbol on a surface, the method comprising:
-
capturing an image of the surface containing a portion of an EIC symbol array having a plurality of grid cells formed by a plurality of grid lines, each grid line having a plurality of data dot positions and orientation dot positions; for each of a plurality of grid cells within the captured image, determining a graylevel for each of a plurality of data dot positions located on each grid line portion associated with the grid cell, and determining positions of black data dots by comparing the determined graylevels of the data dot positions; for each of a plurality of orientations of the grid cells, determining the number of black data dots at orientation dot positions; determining a correct orientation for the EIC symbol array and which grid cells correspond to EIC symbols based on which rotated position of the grid cells contains the fewest number of black dots at orientation dot positions; orienting the EIC symbol array based on the determined correct orientation for the EIC symbol array; identifying an EIC symbol in the EIC pattern with the corrected orientation, the EIC symbol having an associated grid cell; extracting bits from at least one edge of the grid cell associated with the identified EIC symbol based on the position of a black data dot on the at least one edge; and determining the position of the identified EIC symbol relative to the surface based at least in part on the extracted bits. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A system for identifying a location of an embedded interaction code (EIC) symbol on a surface, the system comprising:
-
a component that captures an image of the surface containing a portion of an EIC symbol array having a plurality of grid cells formed by a plurality of grid lines, each grid line having a plurality of data dot positions and orientation dot positions; a component that, for each of a plurality of grid cells within the captured image, determines a graylevel for each of a plurality of data dot positions located on each grid line portion associated with the grid cell, and determines positions of black data dots by comparing the determined graylevels of the data dot positions; a component that, for each of a plurality of orientations of the grid cells, determines the number of black data dots at orientation dot positions; a component that determines a correct orientation for the EIC symbol array and which grid cells correspond to EIC symbols based on which rotated position of the grid cells contains the fewest number of black dots at orientation dot positions; a component that orients the EIC symbol array based on the determined correct orientation for the EIC symbol array; a component that identifies an EIC symbol in the EIC pattern with the corrected orientation, the EIC symbol having an associated grid cell; a component that extracts bits from at least one edge of the grid cell associated with the identified EIC symbol based on the position of a black data dot on the at least one edge; and a component that determines the position of the identified EIC symbol relative to the surface based at least in part on the extracted bits. - View Dependent Claims (16, 17, 18, 19, 20)
-
Specification