IP Library Granted Patent US 10,552,457
Granted Patent B2
US 10,552,457 · App. 15/876,050 · Granted Feb 4, 2020

System and method for fingerprinting datasets

Inventors: Kevin Vlack (Ballwin, MO); Felix Immanuel Wyss (Zionsville, IN)
G06F16/284G06F16/683G10L19/018G10L25/54H03M7/3059H03M7/3066H03M7/3082H04M3/5158H04M2203/2027
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,552,457
App. No.
15/876,050
Granted
Feb 4, 2020
Kind
B2
Abstract

Systems and methods for the matching of datasets, such as input audio segments, with known datasets in a database are disclosed. In an illustrative embodiment, the use of the presently disclosed systems and methods is described in conjunction with recognizing known network message recordings encountered during an outbound telephone call. The methodologies include creation of a ternary fingerprint bitmap to make the comparison process more efficient. Also disclosed are automated methodologies for creating the database of known datasets from a larger collection of datasets.

Claims (40)

1. A method for matching an audio stream comprising the steps of:

a. generating a collection of ternary acoustic fingerprint bitmaps;

b. subdividing each ternary acoustic fingerprint bitmap into a plurality of segments;

c. obtaining a hash key from each segment; and

d. aggregating obtained hash keys from the ternary acoustic fingerprint bitmaps into a lookup table.

2. The method of claim 1 , wherein said ternary acoustic fingerprint bitmap is generated for an audio object to detect.

3. The method of claim 1 , wherein the generating of step (a) further comprises the step of generating a number of ternary values per frame of audio.

4. The method of claim 1 , wherein the plurality of segments are equal in length.

5. The method of claim 1 , wherein the plurality of segments comprises four equal segments.

6. A method for matching an audio stream comprising the steps of:

a. generating a collection of ternary acoustic fingerprint bitmaps;

b. subdividing each ternary acoustic fingerprint bitmap into a plurality of segments;

c. obtaining a hash key from each segment; and

d. aggregating obtained hash keys from the ternary acoustic fingerprint bitmaps into a lookup table,

wherein the hash key of step (c) is obtained by extracting a number of ternary values from ternary values of a number of frames from each segment.

7. The method of claim 6 , wherein the number of frames of each segment evenly divides the number of ternary values.

8. The method of claim 7 , wherein said number of ternary values is 128.

9. A method for matching an audio stream comprising the steps of:

a. generating a collection of ternary acoustic fingerprint bitmaps;

b. subdividing each ternary acoustic fingerprint bitmap into a plurality of segments;

c. obtaining a hash key from each segment;

d. aggregating obtained hash keys from the ternary acoustic fingerprint bitmaps into a lookup table,

e. generating a number of bit vectors from a number of input audio frames;

f. combining the bit vectors into a binary hash key;

g. comparing the binary hash key from step (f) against all obtained hash keys in the lookup table; and

h. identifying audio fingerprints corresponding to matching hash keys, wherein, if a match is not found, repeating the method from step (e).

10. The method of claim 9 , wherein the binary hash key comprises a number of bits.

11. The method of claim 10 , wherein the number of input audio frames evenly divides the number of bits.

12. The method of claim 11 , wherein the number of bits is 128.

13. The method of claim 9 , wherein said comparing of step (g) is performed by computing a masked Hamming distance.

14. The method of claim 13 , wherein said computing is parallelized and optimized with at least one of: Single-Instruction-Multiple Data Instructions and population count instruction.

15. The method of claim 13 , wherein said hash keys in the lookup table match with a low masked Hamming distance.

16. The method of claim 9 , wherein step (h) further comprises the steps of:

a. performing a first match with a first criteria;

b. identifying fingerprints matching said first criteria as candidate matches;

c. performing a second match on said candidate matches with a second criteria; and

d. declaring candidate matches meeting the second criteria a match.

17. The method of claim 16 , wherein the first criteria and the second criteria are derived from a bit error rate.

18. The method of claim 17 , wherein at least one of: said first criteria comprises a lower number of standard deviations and said second criteria comprises a higher number of standard deviations.

19. The method of claim 18 , wherein at least one of: said lower number is 3 and said higher number is 9.

Assignments (4)
CHANGE OF NAME Recorded Jun 6, 2024
From: GENESYS TELECOMMUNICATIONS LABORATORIES, INC.
To: GENESYS CLOUD SERVICES, INC.
Reel/Frame 067646/0448 →
SECURITY AGREEMENT Recorded Feb 12, 2020
From: GENESYS TELECOMMUNICATIONS LABORATORIES, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 051902/0850 →
MERGER Recorded Jul 1, 2018
From: INTERACTIVE INTELLIGENCE GROUP, INC.
To: GENESYS TELECOMMUNICATIONS LABORATORIES, INC.
Reel/Frame 046463/0839 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 16, 2018
From: VLACK, KEVIN; WYSS, FELIX IMMANUEL
To: INTERACTIVE INTELLIGENCE GROUP, INC.
Reel/Frame 045816/0087 →
Continuity (3)
Division 14169211 · Jan 31, 2014
Continuation 13432838 · Mar 28, 2012
Related Publication 20180144040A1 · May 24, 2018