← Back to Patent Explorer
US5504318A Expired / Lapsed US ⏱️ 0.0 years remaining

Analog waveform decoder using peak locations

Assignee: Symbol Technologies LLC
•
Filing: 1994-02-07
•
Granted: 1996-04-02
•
Expires: 2014-02-07
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract A method for decoding an analog waveform corresponding to a symbol comprises detecting the extrema locations of the waveform, and creating a feature vector from these extrema locations. The feature vector is compared to stored reference arrays corresponding to each symbol from an alphabet of possible symbols using statistical pattern recognition techniques to decode the waveform. The invention also features an analog waveform decoder that has reference storage for holding reference arrays, and a processor that creates and decodes a feature vector for the analog waveform.

Inventors

  • 👤 Eugene B. Joseph
  • 👤 Theodosios Pavlidis

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-10-24 02:57
CPC Classifications
G; G06; G06K; G06K7/00; G06K7/10; G06K7/14; G06K7/1404; G06K7/146; G06K7/1486

Claims Analysis

Total Claims: 74
Claim 1
Independent Claim 82 words
A method for decoding an analog waveform representative of information contained in a symbol, comprising the steps of: storing a group of reference values corresponding to each symbol from an alphabet of possible symbols; processing said analog waveform to find the locations of extrema in said waveform; forming feature values from said extrema locations; decoding said waveform by comparing said feature values to at least two groups of reference values to produce a signal indicative of the information contained in the symbol.
Claim 2
Independent Claim 82 words
A method for decoding an analog waveform representative of information contained in a symbol, comprising the steps of: storing a group of reference values corresponding to each symbol from an alphabet of possible symbols; processing said analog waveform to find the locations of extrema in said waveform; forming feature values from said extrema locations; decoding said waveform by comparing said feature values to at least two groups of reference values to produce a signal indicative of the information contained in the symbol.
Claim 3
Dependent Claim 31 words
The method of claim 1, further comprising determining boundaries of said analog waveform to identify a decodable portion of said waveform, and subsequently processing only said decodable portion of said waveform.
Claim 4
Dependent Claim 55 words
The method of claim 1, further comprising storing a reference array corresponding to each group of reference values representative of information contained in a symbol from an alphabet of possible symbols, and forming a feature array from said extrema locations, wherein said decoding step comprises comparing said feature array to at least two reference arrays.
Claim 5
Dependent Claim 51 words
The method of claim 3, wherein said processing comprises calculating the distances between extrema in said analog waveform and storing said distances as elements in said feature array, wherein elements of each reference array for a symbol correspond to the distances between extrema in the analog waveform representative of the symbol.
Claim 6
Dependent Claim 16 words
The method of claim 4, further comprising normalizing each said reference array and said feature array.
Claim 7
Dependent Claim 22 words
The method of claim 5, wherein said decoding comprises calculating a distance metric from said feature array and one said reference array.
Claim 8
Dependent Claim 36 words
The method of claim 6, wherein said decoding further comprises matching said feature array to a reference array based on how close the feature array is to the reference array in terms of said distance metric.
Claim 9
Dependent Claim 35 words
The method of claim 7, wherein said decoding comprises matching a feature array to two reference arrays if a distance defined by said distance metric to both of said two reference arrays is substantially identical.
Claim 10
Dependent Claim 43 words
The method of claim 7, wherein said decoding comprises matching said feature to either a reference array or labeling said feature array as unclassified, and wherein said distance metric contains a threshold controlling a rate at which feature arrays are labeled as unclassified.
Claim 11
Dependent Claim 52 words
The method of claim 9, wherein said decoding comprises matching said feature array to either one reference array, to two reference arrays, or labeling said feature array as unclassified, and wherein said distance metric contains a second threshold that controls a level of confidence in a match to only one reference array.
Claim 12
Dependent Claim 22 words
The method of claim 3, wherein said step of storing comprises storing at least one said reference array in a training sequence.
Claim 13
Dependent Claim 23 words
The method of claim 3, wherein said step of storing comprises storing at least one said reference array directly from a known symbology.
Claim 14
Dependent Claim 24 words
The method of claim 1, wherein said processing comprises deblurring the analog waveform to produce an estimator function used in finding the extrema locations.
Claim 15
Dependent Claim 30 words
The method of claim 13, wherein said analog waveform is the convolution of a symbol pattern with a second function, and said deblurring is performed by deconvolving said analog waveform.
Claim 16
Dependent Claim 16 words
The method of claim 14, wherein said deblurring comprises a partial deconvolution of said analog waveform.
Claim 17
Dependent Claim 17 words
The method of claim 14, further comprising estimating said second function from said analog waveform before deconvolving.
Claim 18
Dependent Claim 21 words
The method of claim 16, wherein said estimation comprises estimating a standard deviation of said second function from said analog waveform.
Claim 19
Dependent Claim 20 words
The method of claim 13, wherein said processing comprises finding a zero crossing of a derivative of said estimator function.
Claim 20
Dependent Claim 42 words
The method of claim 18, wherein said processing comprises removing noise prior to finding the extrema locations, wherein the noise removal comprises establishing a threshold, and removing all extrema in the derivative of said estimator function with magnitude less than said threshold.
Claim 21
Dependent Claim 23 words
The method of claim 19, further comprising forming a histogram of extrema magnitudes and choosing the threshold at a trough in the histogram.
Claim 22
Dependent Claim 34 words
The method of claim 19, further comprising estimating a standard deviation of noise in the derivative of the estimator function, and choosing a threshold above or equal to said standard deviation of the noise.
Claim 23
Dependent Claim 49 words
The method of claim 21, further comprising estimating a standard deviation of noise in the derivative of the estimator function, and choosing the threshold as the standard deviation if said standard deviation coincides with a trough in said histogram, otherwise choosing a second trough greater than said standard deviation.
Claim 24
Dependent Claim 25 words
The method of claim 21 or 22 wherein said standard deviation is estimated from a root mean square of the derivative of the estimator function.
Claim 25
Dependent Claim 44 words
The method of claim 18, wherein said step of processing includes sampling and interpolating said analog waveform prior to finding said extrema locations, and wherein said processing is repeated if said waveform is unsuccessfully decoded to further smooth the waveform in a second interpolation.
Claim 26
Dependent Claim 19 words
The method of claim 1, wherein said processing comprises finding zero crossings of a derivative of said analog waveform.
Claim 27
Dependent Claim 29 words
The method of claim 25 or 18, wherein said processing further comprises passing said analog waveform through a low pass filter before taking said derivative to further reduce noise.
Claim 28
Dependent Claim 26 words
Claim 26, wherein the cutoff frequency of said low pass filter is chosen as half the inverse of the smallest extrema width in the analog waveform.
Claim 29
Dependent Claim 42 words
The method of claim 25, wherein said processing comprises removing noise prior to finding the extrema locations, wherein the noise removal comprises establishing a threshold, and removing all extrema in the derivative of said analog waveform with magnitude less than said threshold.
Claim 30
Dependent Claim 23 words
The method of claim 28, further comprising forming a histogram of extrema magnitudes and choosing the threshold at a trough in the histogram.
Claim 31
Dependent Claim 49 words
The method of claim 29, further comprising estimating a standard deviation of noise in the derivative of the analog waveform, and choosing the threshold as the standard deviation if said standard deviation coincides with a trough in said histogram, otherwise choosing a second trough greater than said standard deviation.
Claim 32
Dependent Claim 34 words
The method of claim 28, further comprising estimating a standard deviation of noise in the derivative of the analog waveform, and choosing a threshold above or equal to said standard deviation of the noise.
Claim 33
Dependent Claim 25 words
The method of claim 31 or 30 wherein said standard deviation is estimated from a root mean square of the derivative of the analog waveform.
Claim 34
Dependent Claim 17 words
The method of claim 1, wherein said processing comprises removing noise prior to finding the extrema locations.
Claim 35
Dependent Claim 42 words
The method of claim 1, wherein said processing includes sampling and interpolating said analog waveform, prior to finding said extrema locations, and wherein said processing is repeated if said waveform is unsuccessfully decoded to further smooth the waveform in a second interpolation.
Claim 36
Independent Claim 174 words
A method for decoding an analog waveform representative of information contained in a symbol comprising the steps of: storing a reference array corresponding to each symbol from an alphabet of possible symbols, wherein the elements of each reference array for a symbol correspond to the distances between extrema in the analog waveform representative of the symbol; determining boundaries of said analog waveform to identify a decodable portion of said waveform, processing said decodable portion to find locations of extrema in said decodable portion of said waveform, comprising deblurring the analog waveform to find an estimator function, taking a derivative of the estimator function, removing noise from the derivative of the estimator function, finding the extrema locations from the zero crossings of the estimator function; forming a feature array from said extrema locations by calculating the distances between said extrema, assigning said distances to elements of said feature array; and decoding said waveform by comparing said feature array to each said reference array to produce a signal indicative of the information contained in the symbol.
Claim 37
Independent Claim 174 words
A method for decoding an analog waveform representative of information contained in a symbol comprising the steps of: storing a reference array corresponding to each symbol from an alphabet of possible symbols, wherein the elements of each reference array for a symbol correspond to the distances between extrema in the analog waveform representative of the symbol; determining boundaries of said analog waveform to identify a decodable portion of said waveform, processing said decodable portion to find locations of extrema in said decodable portion of said waveform, comprising deblurring the analog waveform to find an estimator function, taking a derivative of the estimator function, removing noise from the derivative of the estimator function, finding the extrema locations from the zero crossings of the estimator function; forming a feature array from said extrema locations by calculating the distances between said extrema, assigning said distances to elements of said feature array; and decoding said waveform by comparing said feature array to each said reference array to produce a signal indicative of the information contained in the symbol.
Claim 38
Dependent Claim 103 words
An analog waveform decoder that operates upon an analog waveform representative of a symbol for decoding information in said symbol, said analog waveform decoder comprising: a memory holding reference values, each group of reference values corresponding to a symbol from an alphabet of possible symbols; a processor for analyzing said analog waveform to find locations of extrema in said waveform, said processor producing feature values for said waveform from said extrema locations, wherein said processor decodes said waveform by comparing said feature values to at least two groups of reference values to produce a signal indicative of the information contained in the symbol.
Claim 39
Dependent Claim 103 words
An analog waveform decoder that operates upon an analog waveform representative of a symbol for decoding information in said symbol, said analog waveform decoder comprising: a memory holding reference values, each group of reference values corresponding to a symbol from an alphabet of possible symbols; a processor for analyzing said analog waveform to find locations of extrema in said waveform, said processor producing feature values for said waveform from said extrema locations, wherein said processor decodes said waveform by comparing said feature values to at least two groups of reference values to produce a signal indicative of the information contained in the symbol.
Claim 40
Dependent Claim 32 words
The decoder of claim 36, wherein said processor determines boundaries of said analog waveform to identify a decodable portion of said waveform, and subsequently analyzes only said decodable portion of said waveform.
Claim 41
Dependent Claim 61 words
The method of claim 36 further comprising a memory holding reference arrays, each reference array corresponding to a group of reference values representative of information contained in a symbol from an alphabet of possible symbols, wherein said processor forms a feature array from said extrema locations and decodes said waveform by comparing said feature array to at least two reference arrays.
Claim 42
Dependent Claim 50 words
The decoder of claim 38 wherein said processor calculates the distances between extrema in said analog waveform and stores said distances as elements in said feature array, wherein elements of each reference array for a symbol correspond to the distances between extrema in the analog waveform representative of the symbol.
Claim 43
Dependent Claim 16 words
The decoder of claim 39, wherein said feature array and each said reference array are normalized.
Claim 44
Dependent Claim 25 words
The decoder of claim 40, wherein said processor decodes said waveform by calculating a distance metric from said feature array and one said reference array.
Claim 45
Dependent Claim 38 words
The decoder of claim 41, wherein said processor decodes said waveform by matching said feature array to a reference array based on how close said feature array is to said reference array in terms of said distance metric.
Claim 46
Dependent Claim 47 words
The decoder of claim 42, wherein said processor matches said feature array to two reference arrays if a distance defined by said distance metric to both of said two reference arrays is substantially identical and said distance is smaller than a distance to any other reference array.
Claim 47
Dependent Claim 43 words
The decoder of claim 42, wherein said processor matches said feature array either to a reference array or labels said feature array as unclassified, and wherein said distance metric contains a threshold controlling a rate at which feature arrays are labeled as unclassified.
Claim 48
Dependent Claim 51 words
The decoder of claim 44, wherein said processor matches said feature array to either one reference array, to two reference arrays, or labels said feature array as unclassified, and wherein said distance metric contains a second threshold that controls a level of confidence in a match to only one reference array.
Claim 49
Dependent Claim 13 words
The decoder of claim 39, wherein said processor partially deconvolves said analog waveform.
Claim 50
Dependent Claim 18 words
The method of claim 46, wherein said processor estimates said second function from said analog waveform before deconvolving.
Claim 51
Dependent Claim 25 words
The decoder of claim 47, wherein said processor estimates said second function by estimating a standard deviation of said second function from said analog waveform.
Claim 52
Dependent Claim 20 words
The decoder of claim 38 wherein said reference storage comprises at least one reference array stored in a training sequence.
Claim 53
Dependent Claim 22 words
The decoder of claim 38 wherein said reference storage comprises at least one said reference array stored directly from a known symbology.
Claim 54
Dependent Claim 23 words
The decoder of claim 36, wherein said processor deblurs the analog waveform to produce an estimator function used in finding the extrema locations.
Claim 55
Dependent Claim 32 words
The decoder of claim 51, wherein said analog waveform is the convolution of a symbol pattern with a second function, and said processor deblurs said analog waveform by deconvolving said analog waveform.
Claim 56
Dependent Claim 23 words
The decoder of claim 51 wherein said processor finds a zero crossing of a derivative of said estimator function to locate said extrema.
Claim 57
Dependent Claim 47 words
The method of claim 53, wherein said processor removes noise from said analog waveform prior to finding the extrema locations, wherein the processor removes the noise by establishing a threshold, and removing all extrema in the derivative of said estimator function with magnitude less than said threshold.
Claim 58
Dependent Claim 24 words
The method of claim 54, wherein said processor forms a histogram of extrema magnitudes and chooses the threshold at a trough in the histogram.
Claim 59
Dependent Claim 35 words
The decoder of claim 54, wherein said processor estimates a standard deviation of noise in the derivative of the estimator function, and chooses a threshold above or equal to said standard deviation of the noise.
Claim 60
Dependent Claim 51 words
The decoder of claim 56, wherein said processor estimates a standard deviation of noise in the derivative of the estimator function, and chooses the threshold as the standard deviation if said standard deviation coincides with a trough in said histogram, and otherwise chooses a second trough greater than said standard deviation.
Claim 61
Dependent Claim 26 words
The decoder of claim 56 or 57 wherein said processor estimates said standard deviation from a root mean square of the derivative of the estimator function.
Claim 62
Dependent Claim 46 words
The decoder of claim 53 wherein processor samples and interpolates said analog waveform prior to finding said extrema locations, and wherein said processor interpolates said waveform a second time to further smooth the waveform before reprocessing if said waveform is unsuccessfully decoded in a first analysis.
Claim 63
Dependent Claim 25 words
The decoder of claim 36, wherein said processor finds zero crossings of a derivative of said analog waveform to locate the extrema of said waveform.
Claim 64
Dependent Claim 40 words
The decoder of claim 60, wherein said processor removes noise from said waveform prior to finding the extrema locations by establishing a threshold, and removing all extrema in the derivative of said analog waveform with magnitude less than said threshold.
Claim 65
Dependent Claim 24 words
The decoder of claim 61, wherein said processor forms a histogram of extrema magnitudes and chooses the threshold at a trough in the histogram.
Claim 66
Dependent Claim 35 words
The decoder of claim 62, wherein said processor estimates a standard deviation of noise in the derivative of the analog waveform, and chooses a threshold above or equal to said standard deviation of the noise.
Claim 67
Dependent Claim 34 words
The decoder of claim 60 or 63, wherein said decoder further comprises a low pass filter that filters said analog waveform before said processor takes said derivative of said waveform to further reduce noise.
Claim 68
Dependent Claim 26 words
The decoder of claim 64, wherein a cutoff frequency of said low pass filter half an inverse of the smallest extrema width in the analog waveform.
Claim 69
Dependent Claim 51 words
The decoder of claim 62, wherein said processor estimates a standard deviation of noise in the derivative of the analog waveform, and chooses the threshold as the standard deviation if said standard deviation coincides with a trough in said histogram, and otherwise chooses a second trough greater than said standard deviation.
Claim 70
Dependent Claim 26 words
The decoder of claim 63 or 66 wherein said processor estimates said standard deviation from a root mean square of the derivative of the analog waveform.
Claim 71
Dependent Claim 19 words
The decoder of claim 36, wherein said processor removes noise from said waveform prior to finding the extrema locations.
Claim 72
Dependent Claim 47 words
The decoder of claim 36, wherein said processor samples and interpolates said analog waveform prior to finding said extrema locations, and wherein said processor interpolates said waveform a second time to further smooth the waveform before reprocessing if said waveform is unsuccessfully decoded in a first analysis.
Claim 73
Dependent Claim 189 words
An analog waveform decoder that operates directly on an analog waveform representative of a symbol, for decoding information in said symbol, said decoder comprising: reference storage for storing a reference array corresponding to each symbol from an alphabet of possible symbols, wherein the elements of each reference array for a symbol correspond to the distances between extrema in the analog waveform representative of the symbol; a processor for determining boundaries of said analog waveform to identify a decodable portion of said waveform, and processing said decodable portion to find locations of extrema in said decodable portion of said waveform, said processing comprising deblurring the analog waveform to find an estimator function, taking a derivative of the estimator function, removing noise from the derivative of the estimator function, finding the extrema locations from the zero crossings of the estimator function; forming a feature array from said extrema locations by calculating the distances between said extrema, assigning said distances to elements of said feature array; and decoding said waveform by comparing said feature array to each said reference array to produce a signal indicative of the information contained in the symbol.
Claim 74
Dependent Claim 189 words
An analog waveform decoder that operates directly on an analog waveform representative of a symbol, for decoding information in said symbol, said decoder comprising: reference storage for storing a reference array corresponding to each symbol from an alphabet of possible symbols, wherein the elements of each reference array for a symbol correspond to the distances between extrema in the analog waveform representative of the symbol; a processor for determining boundaries of said analog waveform to identify a decodable portion of said waveform, and processing said decodable portion to find locations of extrema in said decodable portion of said waveform, said processing comprising deblurring the analog waveform to find an estimator function, taking a derivative of the estimator function, removing noise from the derivative of the estimator function, finding the extrema locations from the zero crossings of the estimator function; forming a feature array from said extrema locations by calculating the distances between said extrema, assigning said distances to elements of said feature array; and decoding said waveform by comparing said feature array to each said reference array to produce a signal indicative of the information contained in the symbol.

References Cited (Backward Citations)

US3354101A Cited
US4251798A Cited
US4360798A Cited
US4808804A Cited
US5059773A Cited
US5073954A Cited
US5128527A Cited
US5010242A Cited
US5140146A Cited
US5196685A Cited

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 1999-04-02 1999-10-02 2000-04-02 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2003-04-02 2003-10-02 2004-04-02 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2007-04-02 2007-10-02 2008-04-02 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag