Method and apparatus for wave analysis and event recognition
First Claim
1. A computer implemented method for determining a similarity between discrete portions of a continuous stream of wave data and a predetermined set of frequency ratios, the method comprising the steps of:
- (a) generating a spectral time strip for a discrete portion of the continuous stream of wave data, the spectral time strip including at least a first partial and a second partial;
(b) determining a first frequency position for a prevalent amplitude peak of the first partial;
(c) determining a second frequency position for a prevalent amplitude peak of the second partial;
(d) determining a first frequency ratio according to the expression ##EQU1## (e) comparing the first frequency ratio with at least one frequency ratio from the predetermined set of frequency ratios to obtain a similarity score; and
(f) generating a signal according to a predetermined scale that is indicative of the degree of similarity between the discrete portion of the continuous stream of wave data and at least one frequency ratio from the predetermined set of frequency ratios.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and apparatus for acquiring, recording, synchronizing, analyzing, and interpreting continuous wave data. A process for isolating separate events from wave data composed of multiple events and for determining the identification and characteristics of an event'"'"'s wave source, its frequency components, amplitude, duration, and timing. A procedure for defining the parameters of the source wave and for adapting these parameters to the analysis requirements (e.g., correct frequency, amplitude, and timing divisions). A procedure for verifying interpretation results, for correcting interpretation errors, and for retaining successful results. Products of the processes, such as databases and recordings, can be made.
194 Citations
61 Claims
-
1. A computer implemented method for determining a similarity between discrete portions of a continuous stream of wave data and a predetermined set of frequency ratios, the method comprising the steps of:
-
(a) generating a spectral time strip for a discrete portion of the continuous stream of wave data, the spectral time strip including at least a first partial and a second partial; (b) determining a first frequency position for a prevalent amplitude peak of the first partial; (c) determining a second frequency position for a prevalent amplitude peak of the second partial; (d) determining a first frequency ratio according to the expression ##EQU1## (e) comparing the first frequency ratio with at least one frequency ratio from the predetermined set of frequency ratios to obtain a similarity score; and (f) generating a signal according to a predetermined scale that is indicative of the degree of similarity between the discrete portion of the continuous stream of wave data and at least one frequency ratio from the predetermined set of frequency ratios. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 60, 61)
-
-
11. A computer implemented method for determining a similarity between predetermined wave data and discrete portions of a continuous stream of wave data, the method comprising the steps of:
-
(a) inputting as a first input predetermined spectral wave data, the predetermined spectral wave data further including a plurality of time strips, with each time strip including at least a first partial and a second partial; (b) generating a frequency ratio between the first partial and the second partial for each time strip of the predetermined spectral wave data according to the expression ##EQU2## (c) storing the frequency ratios for each time strip of the predetermined spectral wave data; (d) inputting as a second input a continuous stream of wave data; (e) generating from the second input spectral wave data that includes a plurality of time strips, with each time strip further including at least a third partial and a fourth partial, with the third partial being time related to the first partial, and the fourth partial being time related to the second partial; (f) generating a frequency ratio between the third partial and the fourth partial for each time strip of the spectral wave data according to the expression ##EQU3## (g) comparing each frequency ratio of spectral wave data associated with the second input with the stored frequency ratio of a predetermined time strip of the predetermined spectral wave data to obtain a similarity score for each time strip; and (h) generating a signal for each time strip according to a predetermined scale that is indicative of the degree of similarity between the continuous stream of wave data and the predetermined spectral wave data. - View Dependent Claims (12, 13)
-
-
14. A computer implemented method for determining the similarity between predetermined wave data and discrete portions of a continuous stream of wave data, the method comprising the steps of:
-
(a) inputting as a first input predetermined first spectral wave data, the spectral wave data further including a first plurality of time strips, with each time strip including at least a first partial; (b) inputting as a second input the continuous stream of wave data; (c) generating from the second input second spectral wave data that includes a second plurality of time strips, with each time strip including at least a second partial; (d) comparing an amplitude for each of the plurality of time strips of the first partial with an amplitude for each of the plurality of time related time strips of the second partial; (e) subtracting the amplitudes of the time strips of the second partial from the amplitudes of the time strips of the first partial, respectively, for each comparison at step (d) to obtain an amplitude difference for each of the respective time strips; (f) summing each amplitude difference to obtain a total difference to determine if said difference is less than a predetermined value to indicate similarity; and (g) generating a signal indicative of the degree of similarity between the discrete portions of the continuous stream of wave data and the predetermined wave data based on the total difference determined at step (f). - View Dependent Claims (15, 16, 17)
-
-
18. A computer implemented method for determining a start time of a new event in a continuous stream of wave data, the method comprising the steps of:
-
(a) inputting first spectral wave data that defines a predetermined event occurring at a first predetermined time location; (b) determining for the first spectral wave data a first frequency-distribution width and a first frequency-distribution width form at the first predetermined time location; (c) generating second spectral wave data for discrete portions of the continuous stream of wave data; (d) determining for the second spectral wave data a plurality of frequency-distribution widths and a plurality of frequency-distribution width forms at a plurality of time locations; (e) comparing the first frequency-distribution width/first frequency-distribution width form determined at step (b) with each of the plurality of frequency-distribution widths/frequency-distribution width forms determined at step (d) to determine whether the continuous stream of wave data includes a new event as defined by the first frequency-distribution width/first frequency-distribution width form; and (f) generating a signal representative of whether the continuous stream of wave data includes a new event as defined by the first frequency-distribution width/first frequency-distribution width form. - View Dependent Claims (19, 20, 21)
-
-
22. A computer implemented method for generating a spectral time strip from a continuous stream of wave data, the wave data including frequency, amplitude, and time information, the method comprising the steps of:
-
(a) inputting as a first input the continuous stream of wave data; (b) inputting as a second input a frequency scale that includes a plurality of frequency scale points; (c) selecting from the continuous stream of wave data a time strip of a predetermined time interval; (d) Fast Fourier transforming the time strip to produce a Fast Fourier Transform ("FFT") time strip that includes a plurality of amplitude values at a plurality of FFT frequency points; (e) selecting a frequency scale point from the frequency scale; (f) determining a series of FFT frequency points on the FFT time strip that includes the frequency scale point selected at step (e); (g) interpolating, using a polynomial interpolation, a curve from the FFT frequency points determined at step (f); (h) determining from the curve interpolated at step (g) an amplitude value at the frequency scale point selected at step (e); (i) storing the amplitude value determined at step (h) and frequency scale point selected at step (e) as an amplitude - frequency pair; (j) repeating steps (e) to (i) for each of the plurality of frequency scale points; and (k) generating a spectral time strip based on the stored amplitude - frequency pairs. - View Dependent Claims (23, 24, 25)
-
-
26. A computer implemented method for generating a spectral time strip from a continuous stream of wave data, the wave data including frequency, amplitude, and time information, the method comprising the steps of:
-
(a) inputting as a first input the continuous stream of wave data; (b) inputting as a second input a frequency scale that includes a plurality of frequency scale points; (c) selecting from the continuous stream of wave data a time strip of a predetermined time interval; (d) Fast Fourier transforming the time strip to produce a Fast Fourier Transform ("FFT") time strip that includes a plurality of amplitude values at a plurality of FFT frequency points; (e) selecting a frequency scale point from the frequency scale; (f) determining a frequency range of frequency points for the frequency scale point selected at step (e), with the frequency scale point being located in the frequency range; (g) searching the frequency range of frequency points for a highest amplitude value of the plurality of amplitude vales of the FFT frequency points within the frequency range; (h) storing the highest amplitude value found at step (g) and frequency scale point selected at step (e) as an amplitude - frequency pair; (i) repeating steps (e) to (h) for each of the plurality frequency scale points of the frequency scale; and (j) generating a spectral time strip from the stored amplitude - frequency pairs. - View Dependent Claims (27, 28)
-
-
29. A computer implemented method for generating a spectral time strip from a continuous stream of wave data, the wave data including frequency, amplitude, and time information, the method comprising the steps of:
-
(a) inputting as a first input the continuous stream of wave data; (b) inputting as a second input a frequency scale that includes a plurality of frequency scale points; (c) selecting from the continuous stream of wave data a time strip of a predetermined time interval; (d) Fast Fourier transforming the time strip to produce a Fast Fourier Transform ("FFT") time strip that includes a plurality of amplitude values at a plurality of FFT frequency points; (e) selecting a frequency scale point from the frequency scale; (f) performing steps (g) and (h) if the selected frequency scale point is at or above a first predetermined frequency, and performing steps (i), (j), (k), and (l), if the selected frequency scale point is below a second predetermined frequency; (g) determining a frequency amplitude in the FFT time strip in a frequency range that includes the frequency scale point selected at step (e); (h) storing the highest amplitude determined a step (g) and frequency scale point selected at step (e) as an amplitude - frequency pair and then performing step (m); (i) determining a series of FFT frequency points on the FFT time strip that includes the frequency scale point selected at step (e); (j) interpolating, using a polynomial interpolation, a curve from the FFT frequency points determined at step (i); (k) determining from the curve interpolated at step (j) an amplitude value at the frequency scale point selected at step (e); (l) storing the amplitude value determined at step (j) and frequency scale point selected at step (e) as an amplitude - frequency pair; (m) repeating steps (e) to (l) for each of the plurality of frequency scale points of the frequency scale; and (n) generating a spectral time strip from the amplitude - frequency pairs stored at steps (h) or (l). - View Dependent Claims (30, 31, 32, 33)
-
-
34. A computer implemented method for generating a spectral time strip from a continuous stream of wave data, the wave data including frequency, amplitude, and time information, the method comprising the steps of:
-
(a) inputting as a first input the continuous stream of wave data; (b) inputting as a second input a frequency scale that includes a plurality of frequency scale points; (c) selecting from the continuous stream of wave data a plurality of time strips having independent time intervals; (d) Fast Fourier transforming the plurality of time strips to produce N Fast Fourier Transform ("FFT") time strips an each of the N FFT time strips includes a plurality of amplitude values at a plurality of FFT frequency points; (e) selecting one of the N FFT time strips produced at step (d); (f) selecting a frequency scale point from the frequency scale; (g) determining a series of FFT frequency points on the FFT time strip selected at step (e) that includes the frequency scale point selected at step (f); (h) interpolating, using a polynomial interpolation, a curve for the FFT time strip selected at step (e) from the FFT frequency points determined at step (g); (i) determining from the curve interpolated at step (h) an amplitude value at the frequency scale point selected at step (f); (j) storing the amplitude value determined at step (i) and frequency scale point selected at step (f) as an amplitude - frequency pair; (k) repeating steps (f) to (j) for each of the plurality of frequency scale points; (l) generating a spectral time strip based on the stored amplitude - frequency pairs for the FFT time strip selected at step (e); (m) repeating steps (e) and (l) for each of the N FFT time strips; and (n) combining the spectral time strips generated at step (l) to produce a resulting spectral time strip. - View Dependent Claims (35, 36, 37, 38, 39)
-
-
40. A computer implemented method for generating a spectral time strip from a continuous stream of wave data, the wave data including frequency, amplitude, and time information, the method comprising the steps of:
-
(a) inputting as a first input the continuous stream of wave data; (b) inputting as a second input a frequency scale that includes a plurality of frequency scale points; (c) selecting from the continuous stream of wave data a plurality of time strips having independent time intervals; (d) Fast Fourier transforming the plurality of time strips to produce N Fast Fourier Transform ("FFT") time strips an each of the N FFT time strips includes a plurality of amplitude values at a plurality of FFT frequency points; (e) selecting one of the N FFT time strips produced at step (d); (f) selecting a frequency scale point from the frequency scale; (g) determining a frequency range of frequency points for the frequency scale point selected at a step (f), with the frequency scale point being located in the frequency range; (h) searching the frequency range of frequency points for a highest amplitude value of the plurality of amplitude values of the FFT frequency points of the FFT time strip selected at step (e); (i) storing the highest amplitude value found at step (h) and frequency scale point selected at step (f) as an amplitude - frequency pair; (j) repeating steps (f) to (i) for each of the plurality frequency scale points of the frequency scale; (k) generating a spectral time strip from the stored amplitude - frequency pairs for the FFT time strip selected at step (e); (l) repeating steps (e) and (j) for each of the N FFT time strips; and (m) combining the spectral time strips generated at step (k) to produce a resulting spectral time strip. - View Dependent Claims (41, 42, 43, 44)
-
-
45. A computer implemented method for determining a similarity between a predetermined frequency drift envelope and a frequency drift envelope for a continuous stream of wave data, the method comprising the steps of:
-
(a) generating a spectral time strip for a discrete portion of the continuous stream of wave data, the spectral time strip including at least one partial; (b) scanning the spectral time strip within a predetermined frequency range for an amplitude peak that is most prevalent; (c) determining a frequency position for the most prevalent amplitude peak; (d) determining a frequency envelope for the amplitude peaks with a frequency envelope including the prevalent amplitude peak; (e) determining a relative drift between the prevalent amplitude peak and each of the amplitude peaks in the envelope; (f) determining a drift center based on an average of the plurality of relative drifts determined at step (e); (g) comparing the drift center determined at step (f) with the drift center of the predetermined drift envelope to obtain a similarity score; and (h) generating a signal according to a predetermined scale that is indicative of the degree of similarity between the predetermined frequency drift envelope and the frequency drift envelope for the continuous stream of wave data. - View Dependent Claims (46, 47)
-
-
48. A computer implemented method for determining a similarity between predetermined wave data and discrete portions of a continuous stream of wave data, the method comprising the steps of:
-
(a) inputting as a first input predetermined spectral wave data, the predetermined spectral wave data further including a plurality of time strips, with each time strip including at least a first partial and a second partial; (b) generating a first signal that includes first distortion information for each time strip of the predetermined spectral wave data; (c) storing the first distortion information for each time strip of the predetermined spectral wave data; (d) inputting as a second input a continuous stream of wave data; (e) generating from the second input spectral wave data that includes a plurality of time strips, with each time strip further including at least a third partial and a fourth partial; (f) generating a second signal that includes second distortion information for each time strip of the spectral wave data; (g) comparing the second distortion information with the stored first distortion information to obtain a similarity score for each time strip; and (h) generating signals according to a predetermined scale that are indicative of the degree of similarity between the predetermined spectral wave data and the continuous stream of wave data. - View Dependent Claims (49, 50, 51, 52, 53, 54, 55)
-
-
56. An apparatus for determining a similarity between predetermined wave data and discrete portions of a continuous stream of wave data, the apparatus comprising:
-
(a) storage device for storing a predetermined set of frequency ratios; (b) input device that receives discrete portions of the continuous stream of wave data; (c) first generator coupled to the output of the input device for generating a spectral time strip with the spectral time strip including at least a first and a second partial; (d) a processor for determining a first frequency position for a prevalent amplitude peak of the first partial, a second frequency position for a prevalent amplitude peak of a second partial, and generating a first frequency ratio according to the expression ##EQU4## (e) comparator for comparing the first frequency ratio with at least one stored frequency ratio to obtain a similarity score.
-
-
57. An apparatus for determining a similarity between predetermined wave data and discrete portions of a continuous stream of wave data, the apparatus comprising:
-
(a) input device for receiving as the first input predetermined spectral wave data, the predetermined spectral wave data further including a plurality of time strips, with each time strip including at least a first partial and a second partial, and as a second input the continuous stream of wave data; (b) first generator coupled to the output of the input device for generating a frequency ratio between the first and second partials for each time strip of the predetermined spectral wave data according to the expression ##EQU5## (c) storage device for storing the frequency ratios for each time strip of the predetermined spectral wave data; (d) second generator coupled to the output of the input device for generating from the second input spectral wave data a plurality of time strips, with each time strip further including at least a third partial and a fourth partial; (e) third generator coupled to the output of the second generator for generating a frequency ratio between the third partial and the fourth partial for each time strip of the spectral wave data according to the expression ##EQU6## (f) comparator for comparing each frequency ratio of spectral wave data associated with the second input with the stored frequency ratio of a predetermined time strip of the predetermined spectral wave data to obtain a similarity score for each time strip.
-
-
58. An apparatus for generating a spectral time strip form a continuous stream of wave data, the wave data including frequency, amplitude, and time information, the apparatus comprising:
-
(a) input device for receiving as a first input the continuous stream of wave data and as a second input a frequency scale that includes a plurality of frequency scale points; (b) processor for selecting from the continuous stream of wave data a time strip having a predetermined time interval, Fast Fourier transforming the time strip to produce a Fast Fourier Transform ("FFT") time strip that includes a plurality of amplitude values at a plurality of FFT frequency points, selecting a frequency scale point from the frequency scale, and if the selected frequency scale point is at or above a first predetermined frequency, determining a highest amplitude in the FFT time strip in a frequency range that includes the selected frequency scale point, and if the selected frequency scale point is below a second predetermined frequency, determining a series of FFT frequency points on the FFT time strip that includes the selected frequency scale point, interpolating, using a polynomial interpolation, a curve from the determined FFT frequency points, and determining from the interpolated curve an amplitude value at the selected frequency scale point; (c) storage device for storing the highest amplitude and frequency scale point based on at least one Fast Fourier transformed time strip as a first amplitude - frequency pair and storing the amplitude value and scale point based on at least one interpolated curve as a second amplitude - frequency pair; and (d) generator for generating a spectral time strip from a stored first or second amplitude - frequency pair.
-
-
59. An apparatus for determining a similarity between predetermined wave data stored in a memory device and discrete portions of a continuous stream of wave data, the apparatus comprising:
-
(a) input device to receive as input a continuous stream of wave data; (b) converter coupled to the output of the input device for generating a spectral time strip from the continuous stream of wave data using polynomial interpolation; (c) extractor for extracting from the spectral time strip a plurality of identifying characteristics; (d) storage device for storing predetermined wave data; and (e) comparator coupled to the output of the extractor and the storage device for comparing the plurality of identifying characteristics extracted by extractor with the stored predetermined wave data to obtain a similarity score.
-
Specification