Fast error-correcting of embedded interaction codes
First Claim
Patent Images
1. A method, preformed by a computer having a memory and a processor, of determining a position of a bit s in a pattern formed from a binary sequence array m of order n, comprising:
- capturing an image of a portion of the pattern such that the captured image includes at least n bits b of the array m;
with a processor, solving for r where b=rM,
σ
x (mt)_is the xth_cyclic shift of mt, and M is a subset of {circumflex over (M)} by;
(a) randomly selecting n bits b(0) from the set of bits b so as to leave remaining bits b(0),(b) determining a number of different bits d(0) where d(0) is the number of different bits between ([b(0)]t,[ b(0)]t) and [r(0)]t(M(0), M(0)),(c) if the number of different bits d(0) is not zero, changing J bits of the n bits b(0) with J bits of b(0) to obtain n bits b(1) from the set of bits b so as to leave remaining bits b(1) and bits b(1) are different from bits b(0),(d) updating r according to the following formula;
[r(1)]t=[r(0)]t+[e(0)]tEl−
n[PRJ(0)]−
1Ekt[M(0)]−
1,(e) determining a number of different bits d(1) where d(1)=HammingWeight([e(0)]t+EjP(0))+J,(f) repeating (a)˜
(d) an estimated number of times in order to ensure a high probability of successful decoding, and(g) outputting r that corresponds to the smallest value of d; and
with a processor, employing a discrete logarithm technique to obtain the location of s in r.
2 Assignments
0 Petitions
Accused Products
Abstract
A fast decoding technique for decoding a position of a bit in a pattern provided on a media surface that can generate large amounts of solution candidates quickly by switching or flipping bits and utilizing a recursion scheme. The fast decoding technique may be employed to simultaneously decode multiple dimensions of a pattern on the media surface.
315 Citations
20 Claims
-
1. A method, preformed by a computer having a memory and a processor, of determining a position of a bit s in a pattern formed from a binary sequence array m of order n, comprising:
-
capturing an image of a portion of the pattern such that the captured image includes at least n bits b of the array m; with a processor, solving for r where b=rM,
σ
x (mt)_is the xth_cyclic shift of mt, and M is a subset of {circumflex over (M)} by;(a) randomly selecting n bits b(0) from the set of bits b so as to leave remaining bits b (0),(b) determining a number of different bits d(0) where d(0) is the number of different bits between ([b(0)]t,[ b (0)]t) and [r(0)]t(M(0),M (0)),(c) if the number of different bits d(0) is not zero, changing J bits of the n bits b(0) with J bits of b (0) to obtain n bits b(1) from the set of bits b so as to leave remaining bitsb (1) and bits b(1) are different from bits b(0),(d) updating r according to the following formula;
[r(1)]t=[r(0)]t+[e(0)]tEl−
n[PRJ (0)]−
1Ekt[M(0)]−
1,(e) determining a number of different bits d(1) where d(1)=HammingWeight([e(0)]t+EjP(0))+J, (f) repeating (a)˜
(d) an estimated number of times in order to ensure a high probability of successful decoding, and(g) outputting r that corresponds to the smallest value of d; and with a processor, employing a discrete logarithm technique to obtain the location of s in r. - View Dependent Claims (2, 3, 4, 5, 6)
employing a discrete logarithm technique to obtain the location of s in r.
-
-
3. The method of claim 1, where the n bits of b(0) are selected by Gaussian elimination.
-
4. The method of claim 1, wherein the position of the bit s in the array corresponds to a geometric position of the bit s on a writing media.
-
5. The method of claim 1, further comprising:
-
determining a position of bits s in an array having a first dimension and a second dimension; and determining a cyclical shift between the bits s so as to identify the cyclical shift between the first dimension and the second dimension.
-
-
6. The method of claim 1, further comprising:
solving multiple-dimension arrays simultaneously.
-
7. A computer-readable storage medium containing instructions that, when executed by a computer having a memory and a processor, cause the computer to perform a method for determining a position of a bit s in a pattern formed from a binary sequence array m of order n, the method comprising:
-
capturing an image of a portion of the pattern, the image including bits b of the array m ; solving for r where b =rM,
σ
x (mt) is the xth cyclic shift of mt , and M is a subset ofM , at least in part by;(a) randomly selecting bits b(0) from the set of bits b so as to leave remaining bits b (0),(b) determining a number of different bits, d(0), ([b(0)]t,[ b (0)]t) and [r(0)]t(M(0),M (0)),(c) if the number of different bits d(0) is not zero, changing J bits of b(0) with J bits of b (0) to obtain b(1), wherein bits b(1) are different from bits b(0),(d) updating r according to the following formula;
[r(1)]t=[r(0)]t[e(0)]tEl−
n[PRJ (0)]−
1Ekt[M(0)]−
1,(e) determining a number of different bits d(1) , where d(1)=HammingWeight([e(0)]t+EJP(0))+J, and (f) outputting r corresponding to the smallest value of d; and employing a discrete logarithm technique to obtain the location of s in the output r. - View Dependent Claims (8, 9, 10, 11, 12, 13)
-
-
14. A computing device having a memory and a processor for determining a position of a bit s in a pattern formed from a binary sequence array m of order n, comprising:
-
a component that captures an image of a portion of the pattern, the captured image including bits b of the array m ; and a component that. with a processor, solves for r where b=rM,
σ
x(mt) is the xth cyclic shift of mt , and M is a subset of {circumflex over (M)} by;selecting bits b(0) from bits b leaving bits b (0) ,determining a number of different bits, d(0), between ([b(0)]t,[ b (0)]t) and [r(0)]t(M(0),M (0)) ,updating r according to the following formula;
[r(1)]t=[r(0)]t[e(0)]tEl−
n[PRJ (0)]−
1Ekt[M(0)]−
1,determining a number of different bits d(1) where d(1)=HammingWeight([e(0)]t+EJP(0))+J, and outputting r that corresponds to the smallest value of d. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
Specification