IP Library Granted Patent US 12,340,451
Granted Patent B2
US 12,340,451 · App. 18/412,094 · Granted Jun 24, 2025

Systems and method for dynamic insertion of advertisements

Inventors: Susanto Sen (Karnataka, IN); Radhika Dewan (Haryana, IN); Vikram Makam Gupta (Karnataka, IN)
Assignee: Adeia Guides Inc.
G06T11/60G06T7/60G06T7/70G06T7/90G06T2207/10016G06T2207/10024
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 12,340,451
App. No.
18/412,094
Granted
Jun 24, 2025
Kind
B2
Abstract

Systems and methods are described to detect a location to place an advertisement in a media asset, the method comprising, identifying a plurality of points in a video frame of a media asset, detecting a color associated with each point of the plurality of points, calculating a change in color between each point of the plurality of points, comparing the change in color between each point of the plurality of points with a threshold, identifying, based on the comparing, an area within the frame that constitutes a surface; and selecting an advertisement to be placed on the surface.

Claims (72)

1. A method comprising:

identifying one or more video frames in a video of a media asset;

determining, from the one or more video frames, a plurality of points that constitutes a surface displayed in the one or more video frames of the video;

determining a type associated with the surface;

comparing the type associated with the surface with metadata associated with one or more advertisements;

selecting, based on the type associated with the surface, an advertisement for display in the video; and

inserting the advertisement on the one or more video frames comprising the surface in the video.

2. The method of claim 1 , further comprising generating, based on the inserted advertisement, for display the advertisement overlaying the surface in the video.

3. The method of claim 1 , wherein the plurality of points is within a threshold distance of a first point of the plurality of points.

4. The method of claim 1 , further comprising:

detecting a color value associated with a first point of the plurality of points;

calculating a change in the color value between the first point and each point of the plurality of points; and

determining, based on the calculating, that the plurality of points is within a threshold color value change of the first point.

5. The method of claim 1 , further comprising:

generating a data structure representing the surface displayed in the one or more video frames;

and selecting the advertisement for display in the video based on the data structure.

6. The method of claim 5 , further comprising:

determining that the type associated with the surface is associated with a video object to be displayed on the surface; and

modifying the data structure to display the advertisement with the video object.

7. The method of claim 5 , further comprising:

comparing coordinates of each point of the plurality of points with coordinates of other points with the plurality of points;

determining, based on comparing the coordinates of each point of the plurality of points with the coordinates of other points with the plurality of points, a representation of a boundary of the surface; and

storing coordinates of the representation of the boundary of the surface in the data structure.

8. The method of claim 7 , further comprising:

retrieving a plurality of video frames to be displayed in the video;

comparing colors associated with the coordinates of the representation in the data structure with colors associated with corresponding coordinates within each video frame of the plurality of video frames;

determining first video frames of the plurality of video frames, each of the first video frames having the colors associated with the corresponding coordinates that match the colors associated with the coordinates of the representation in the data structure;

determining second video frames of the plurality of video frames, each of the second video frames having the colors associated with the corresponding coordinates not matching the colors associated with the coordinates of the representation in the data structure;

adding the advertisement to the first video frames; and

refraining from adding the advertisement to the second video frames.

9. The method of claim 1 , wherein the type associated with the surface is determined based on color ranges and shapes for known surfaces.

10. The method of claim 1 , further comprising:

for each video frame of the one or more video frames:

dividing the video frame into a plurality of concentric circular regions having progressively larger radii; and

identifying the plurality of points from one or more points within or on a perimeter of the plurality of concentric circular regions.

11. A system comprising:

display circuitry configured to display a video of a media asset; and

control circuitry configured to:

identify one or more video frames in a video of a media asset;

determine, from the one or more video frames, a plurality of points that constitutes a surface displayed in the one or more video frames of the video;

determine a type associated with the surface;

compare the type associated with the surface with metadata associated with one or more advertisements;

select, based on the type associated with the surface, an advertisement for display in the video; and

insert the advertisement on the one or more video frames comprising the surface in the video.

12. The system of claim 11 , further comprising generating, based on the inserted advertisement, for display the advertisement overlaying the surface in the video.

13. The system of claim 11 , wherein the plurality of points is within a threshold distance of a first point of the plurality of points.

14. The system of claim 11 , wherein the control circuitry is further configured to:

detect a color value associated with a first point of the plurality of points;

calculate a change in the color value between the first point and each point of the plurality of points; and

determine, based on the calculating, that the plurality of points is within a threshold color value change of the first point.

15. The system of claim 11 , wherein the control circuitry is further configured to:

generate a data structure representing the surface displayed in the one or more video frames; and

select the advertisement for display in the video based on the data structure.

16. The system of claim 15 , wherein the control circuitry is further configured to:

determine that the type associated with the surface is associated with a video object to be displayed on the surface; and

modify the data structure to display the advertisement with the video object.

17. The system of claim 15 , wherein the control circuitry is further configured to:

compare coordinates of each point of the plurality of points with coordinates of other points with the plurality of points;

determine, based on comparing the coordinates of each point of the plurality of points with the coordinates of other points with the plurality of points, a representation of a boundary of the surface; and

storing coordinates of the representation of the boundary of the surface in the data structure.

18. The system of claim 17 , wherein the control circuitry is further configured to:

retrieve a plurality of video frames to be displayed in the video;

compare colors associated with the coordinates of the representation in the data structure with colors associated with corresponding coordinates within each video frame of the plurality of video frames;

determine first video frames of the plurality of video frames, each of the first video frames having the colors associated with the corresponding coordinates that match the colors associated with the coordinates of the representation in the data structure;

determine second video frames of the plurality of video frames, each of the second video frames having the colors associated with the corresponding coordinates not matching the colors associated with the coordinates of the representation in the data structure;

add the advertisement to the first video frames; and

refrain from adding the advertisement to the second video frames.

19. The system of claim 11 , wherein the control circuitry is configured to determine the type associated with the surface based on color ranges and shapes for known surfaces.

20. The system of claim 11 , wherein the control circuitry is further configured to:

for each video frame of the one or more video frames:

divide the video frame into a plurality of concentric circular regions having progressively larger radii; and

identify the plurality of points from one or more points within or on a perimeter of the plurality of concentric circular regions.

Assignments (2)
CHANGE OF NAME Recorded Oct 3, 2024
From: ROVI GUIDES, INC.
To: ADEIA GUIDES INC.
Reel/Frame 069112/0430 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 23, 2024
From: SEN, SUSANTO; DEWAN, RADHIKA; GUPTA, VIKRAM MAKAM
To: ROVI GUIDES, INC.
Reel/Frame 066548/0208 →
Continuity (4)
Continuation 18124400 · Mar 21, 2023
Continuation 17234443 · Apr 19, 2021
Continuation 16310887
Related Publication 20240153179A1 · May 9, 2024
References Cited (29)
US 5491517A · Kreitman et al. · 1996 [cited by applicant]
US 6239794B1 · Yuen et al. · 2001 [cited by applicant]
US 6564378B1 · Satterfield et al. · 2003 [cited by applicant]
US 7165098B1 · Boyer et al. · 2007 [cited by applicant]
US 7761892B2 · Ellis et al. · 2010 [cited by applicant]
US 8046801B2 · Ellis et al. · 2011 [cited by applicant]
US 8488190B2 · Tsunematsu · 2013 [cited by applicant]
US 9420353B1 · Gargi et al. · 2016 [cited by applicant]
US 10109092B1 · Hitchings · 2018 [cited by applicant]
US 11010946B2 · Sen et al. · 2021 [cited by applicant]
US 11640686B2 · Sen et al. · 2023 [cited by applicant]
US 11908054B2 · Sen et al. · 2024 [cited by applicant]
US 20020027561A1 · Wu · 2002 [cited by applicant]
US 20020174430A1 · Ellis et al. · 2002 [cited by applicant]
US 20050251827A1 · Ellis et al. · 2005 [cited by applicant]
US 20100091139A1 · Sako et al. · 2010 [cited by applicant]
US 20100153885A1 · Yates · 2010 [cited by applicant]
US 20120076409A1 · Guo · 2012 [cited by examiner]
US 20150078733A1 · Popkiewicz et al. · 2015 [cited by applicant]
US 20150139545A1 · Guntur · 2015 [cited by examiner]
US 20160212455A1 · Manna · 2016 [cited by applicant]
US 20170161545A1 · Champlin et al. · 2017 [cited by applicant]
US 20170278289A1 · Marino et al. · 2017 [cited by applicant]
US 20210264653A1 · Sen et al. · 2021 [cited by applicant]
US 20230237721A1 · Sen et al. · 2023 [cited by applicant]
EP 3236655A1 · 2017 [cited by applicant]
Cheng et al., “Color image segementation based on homogram thresholding and region merging,” Pattern Recognition, 35(2):373-393 (2002). [cited by applicant]
PCT International Search Report, International Application No. PCT/US2017/067983, May 28, 2018 (16 pages). [cited by applicant]
Vantaram, et al., “Survey of Contemporary Trends in Color Image Segmentation,” Journal of Electronic Imaging, 21 (4):40901-1-28 (2012) (29 pages). [cited by applicant]