IP Library Granted Patent US 11,575,454
Granted Patent B2
US 11,575,454 · App. 17/402,742 · Granted Feb 7, 2023

Automated data-matching based on fingerprints

Inventors: Dyon Anniballi (Wayne, PA); Philippe Generali (Scarsdale, NY)
Assignee: iHeartMedia Management Services, Inc.
H04H60/37H04H60/64H04H60/65H04H2201/90
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 11,575,454
App. No.
17/402,742
Granted
Feb 7, 2023
Kind
B2
Abstract

Automated data-matching includes obtaining first and second stored fingerprints generated from first and second data. The stored fingerprints are divided into frames, and grouped into first blocks and second blocks including an equal number of frames. Each frame included in a current first block is compared to each frame included in a current second block to determine a number of matching frames, and a hamming distance between the current first block and the current second block is determined, based at least in part on the number of matching frames. A determination is made, based at least in part on the hamming distance, whether the current first block and the current second block match.

Claims (94)

1. An automated data-matching method comprising:

obtaining a first stored fingerprint generated from first data;

obtaining a second stored fingerprint generated from second data;

dividing the first stored fingerprint and the second stored fingerprint into frames;

grouping the frames of the first stored fingerprint into first blocks, wherein the first blocks includes a number of frames;

grouping the frames of the second stored fingerprint into second blocks, wherein the second blocks include the same number of frames included in the first blocks;

comparing each frame included in a current first block to each frame included in a current second block to determine a number of matching frames;

determining a hamming distance between the current first block and the current second block based, at least in part, on the number of matching frames; and

determining, based at least in part on the hamming distance, whether the current first block and the current second block match.

2. The automated data-matching method of claim 1 , further comprising:

iteratively performing the following steps until the current first block either matches the current second block or there are insufficient frames of the second stored fingerprint to form a second block:

modifying the current second block by removing a first frame from the current second block and adding an adjacent frame to the current second block;

comparing each frame included in the current first block to each frame included in the current second block to determine the number of matching frames;

determining the hamming distance between the current first block and the current second block based, at least in part, on the number of matching frames; and

determining, based at least in part on the hamming distance, whether the current first block and the current second block match.

3. The automated data-matching method of claim 1 , further comprising:

determining a second hamming distance between a current frame included in the current first block and each frame included in the current second block; and

determining whether two frames match based on the second hamming distance.

4. The automated data-matching method of claim 1 , wherein:

two frames match only if the two frames are identical.

5. The automated data-matching method of claim 1 , further comprising:

generating a hamming distance score representing the hamming distance between the current first block and the current second block modified by applying a weighting factor based on bit differences occurring within particular frames of the current first block and the current second block; and

determining, based at least in part on the hamming distance score, whether the current first block and the current second block match.

6. The automated data-matching method of claim 1 , further comprising:

iteratively performing the following steps until there are insufficient frames of the first stored fingerprint to form a first block:

selecting a subsequent first block to be processed as the current first block;

comparing each frame included in the current first block to each frame included in a current second block to determine a number of matching frames;

determining a hamming distance between the current first block and the current second block based, at least in part, on the number of matching frames; and

determining, based at least in part on the hamming distance, whether the current first block and the current second block match.

7. The automated data-matching method of claim 1 , wherein:

the first stored fingerprint and the second stored fingerprint are continuous fingerprints generated from media broadcasts.

8. An automated data-matching device comprising:

a processor;

memory operably associated with the processor;

a program of instructions configured to be stored in the memory and executed by the processor, the program of instructions comprising:

at least one instruction to obtain a first stored fingerprint generated from first data;

at least one instruction to obtain a second stored fingerprint generated from second data;

at least one instruction to divide the first stored fingerprint and the second stored fingerprint into frames;

at least one instruction to group the frames of the first stored fingerprint into first blocks, wherein the first blocks includes a number of frames;

at least one instruction to group the frames of the second stored fingerprint into second blocks, wherein the second blocks include the same number of frames included in the first blocks;

at least one instruction to compare each frame included in a current first block to each frame included in a current second block to determine a number of matching frames;

at least one instruction to determine a hamming distance between the current first block and the current second block based, at least in part, on the number of matching frames; and

at least one instruction to determine, based at least in part on the hamming distance, whether the current first block and the current second block match.

9. The automated data-matching device of claim 8 , further comprising:

at least one instruction to cause the processor to iteratively perform the following steps until the current first block either matches the current second block or there are insufficient frames of the second stored fingerprint to form a second block:

modifying the current second block by removing a first frame from the current second block and adding an adjacent frame to the current second block;

comparing each frame included in the current first block to each frame included in the current second block to determine the number of matching frames;

determining the hamming distance between the current first block and the current second block based, at least in part, on the number of matching frames; and

determining, based at least in part on the hamming distance, whether the current first block and the current second block match.

10. The automated data-matching device of claim 8 , further comprising:

at least one instruction to determine a second hamming distance between a current frame included in the current first block and each frame included in the current second block; and

at least one instruction to determine whether two frames match based on the second hamming distance.

11. The automated data-matching device of claim 8 , wherein:

two frames match only if the two frames are identical.

12. The automated data-matching device of claim 8 , further comprising:

at least one instruction to generate a hamming distance score representing the hamming distance between the current first block and the current second block modified by applying a weighting factor based on bit differences occurring within particular frames of the current first block and the current second block; and

at least one instruction to determine, based at least in part on the hamming distance score, whether the current first block and the current second block match.

13. The automated data-matching device of claim 8 , further comprising:

at least one instruction to cause the processor to iteratively perform the following steps until there are insufficient frames of the first stored fingerprint to form a first block:

selecting a subsequent first block to be processed as the current first block;

comparing each frame included in the current first block to each frame included in a current second block to determine a number of matching frames;

determining a hamming distance between the current first block and the current second block based, at least in part, on the number of matching frames; and

determining, based at least in part on the hamming distance, whether the current first block and the current second block match.

14. The automated data-matching device of claim 8 , wherein:

the first stored fingerprint and the second stored fingerprint are continuous fingerprints generated from media broadcasts.

15. A non-transitory computer readable medium tangibly embodying a program of instructions to be stored in a memory and executed by a processor, the program of instructions including:

at least one instruction to obtain a first stored fingerprint generated from first data;

at least one instruction to obtain a second stored fingerprint generated from second data;

at least one instruction to divide the first stored fingerprint and the second stored fingerprint into frames;

at least one instruction to group the frames of the first stored fingerprint into first blocks, wherein the first blocks includes a number of frames;

at least one instruction to group the frames of the second stored fingerprint into second blocks, wherein the second blocks include the same number of frames included in the first blocks;

at least one instruction to compare each frame included in a current first block to each frame included in a current second block to determine a number of matching frames;

at least one instruction to determine a hamming distance between the current first block and the current second block based, at least in part, on the number of matching frames; and

at least one instruction to determine, based at least in part on the hamming distance, whether the current first block and the current second block match.

16. The non-transitory computer readable medium of claim 15 , further comprising:

at least one instruction to cause the processor to iteratively perform the following steps until the current first block either matches the current second block or there are insufficient frames of the second stored fingerprint to form a second block:

modifying the current second block by removing a first frame from the current second block and adding an adjacent frame to the current second block;

comparing each frame included in the current first block to each frame included in the current second block to determine the number of matching frames;

determining the hamming distance between the current first block and the current second block based, at least in part, on the number of matching frames; and

determining, based at least in part on the hamming distance, whether the current first block and the current second block match.

17. The non-transitory computer readable medium of claim 15 , further comprising:

at least one instruction to determine a second hamming distance between a current frame included in the current first block and each frame included in the current second block; and

at least one instruction to determine whether two frames match based on the second hamming distance.

18. The non-transitory computer readable medium of claim 15 , wherein:

two frames match only if the two frames are identical.

19. The non-transitory computer readable medium of claim 15 , further comprising:

at least one instruction to generate a hamming distance score representing the hamming distance between the current first block and the current second block modified by applying a weighting factor based on bit differences occurring within particular frames of the current first block and the current second block; and

at least one instruction to determine, based at least in part on the hamming distance score, whether the current first block and the current second block match.

20. The non-transitory computer readable medium of claim 15 , further comprising:

at least one instruction to cause the processor to iteratively perform the following steps until there are insufficient frames of the first stored fingerprint to form a first block:

selecting a subsequent first block to be processed as the current first block;

comparing each frame included in the current first block to each frame included in a current second block to determine a number of matching frames;

determining a hamming distance between the current first block and the current second block based, at least in part, on the number of matching frames; and

determining, based at least in part on the hamming distance, whether the current first block and the current second block match.

Assignments (8)
PATENT SECURITY AGREEMENT Recorded Dec 29, 2024
From: IHEARTMEDIA MANAGEMENT SERVICES, INC.
To: BANK OF AMERICA, N.A.
Reel/Frame 069795/0912 →
PATENT SECURITY AGREEMENT Recorded Dec 28, 2024
From: IHEARTMEDIA MANAGEMENT SERVICES, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 069793/0758 →
PATENT SECURITY AGREEMENT Recorded Dec 28, 2024
From: IHEARTMEDIA MANAGEMENT SERVICES, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 069794/0248 →
PATENT SECURITY AGREEMENT Recorded Dec 27, 2024
From: IHEARTMEDIA MANAGEMENT SERVICES, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 069792/0335 →
PATENT SECURITY AGREEMENT Recorded Dec 23, 2024
From: IHEARTMEDIA MANAGEMENT SERVICES, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 069762/0453 →
PATENT SECURITY AGREEMENT Recorded Dec 22, 2024
From: IHEARTMEDIA MANAGEMENT SERVICES, INC.
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION
Reel/Frame 069752/0941 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 16, 2021
From: ANNIBALLI, DYON; GENERALI, PHILIPPE
To: CLEAR CHANNEL MANAGEMENT SERVICES, INC.
Reel/Frame 057185/0835 →
CHANGE OF NAME Recorded Aug 16, 2021
From: CLEAR CHANNEL MANAGEMENT SERVICES, INC.
To: IHEARTMEDIA MANAGEMENT SERVICES, INC.
Reel/Frame 057186/0979 →
Continuity (6)
Continuation 16711757 · Dec 12, 2019
Continuation 15958767 · Apr 20, 2018
Continuation 15186622 · Jun 20, 2016
Continuation 13897155 · May 17, 2013
Continuation In Part 13221237 · Aug 30, 2011
Related Publication 20210376942A1 · Dec 2, 2021