IP Library Granted Patent US 10,970,884
Granted Patent B1
US 10,970,884 · App. 16/299,030 · Granted Apr 6, 2021

Systems and methods for providing content

Inventors: Hongji Yang (Belmont, CA); Yuji Wang (Sunnyvale, CA); Yuan Liang (Fremont, CA); Dan Zhang (Foster City, CA); Ren Lu (Mountain View, CA); Amber Muck (Emeryville, CA); Ethan Lubka (San Mateo, CA); Yi-Wei Wu (Mountain View, CA); Lingfei He (Menlo Park, CA); Yin Kam Hung (Newark, CA); Michael Thomas Gofron (New York City, NY)
Assignee: Facebook, Inc.
G06T11/001G06K9/4647G06T11/40
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,970,884
App. No.
16/299,030
Granted
Apr 6, 2021
Kind
B1
Abstract

Systems, methods, and non-transitory computer-readable media can obtain a media item. The media item is positioned in a content item. A plurality of histograms are generated based on colors of a first portion and a second portion of the media item. A custom background for the media item in the content item is generated based on the plurality of histograms.

Claims (74)

1. A computer-implemented method comprising:

obtaining, by a computing system, a media item;

generating, by the computing system, a plurality of histograms based on colors of a first portion and a second portion of the media item, the generating further comprising:

sampling, by the computing system, colors included in the first portion of the media item, wherein the first portion corresponds to pixels associated with a top portion of the media item;

generating, by the computing system, a first histogram based on colors sampled from the first portion of the media item;

sampling, by the computing system, colors included in the second portion of the media item, wherein the second portion corresponds to pixels associated with a bottom portion of the media item; and

generating, by the computing system, a second histogram based on colors sampled from the second portion of the media item; and

generating, by the computing system, a custom background for the media item in a content item based on the first histogram and the second histogram.

2. The computer-implemented method of claim 1 , further comprising:

positioning, by the computing system, the media item in the content item such that spatial distances from a top edge of the content item to a top edge of the media item and from a bottom edge of the media item to a bottom edge of the content item are the same.

3. The computer-implemented method of claim 1 , wherein generating the plurality of histograms based on the colors of the first portion and the second portion of the media item comprises:

quantizing, by the computing system, the sampled colors into a discrete number of colors.

4. The computer-implemented method of claim 1 , wherein generating the custom background for the media item based on the plurality of histogram comprises:

identifying, by the computing system, a first color from the first histogram that has a highest color frequency;

identifying, by the computing system, a second color from the second histogram that a highest color frequency; and

generating, by the computing system, the custom background for the media item based on the first color and the second color, wherein the first color is used to fill a spacing between a top edge of the content item to a top edge of the media item and the second color is used to fill a spacing between a bottom edge of the media item to a bottom edge of the content item.

5. The computer-implemented method of claim 1 , wherein generating the custom background for the content item based on the plurality of histogram comprises:

identifying, by the computing system, a first color from the first histogram that has a highest color frequency;

identifying, by the computing system, a second color from the second histogram that a highest color frequency; and

generating, by the computing system, a color gradient based on the first color and the second color, wherein the color gradient is used to fill spacing from a top edge of the content item to a top edge of the media item and from a bottom edge of the media item to a bottom edge of the content item.

6. The computer-implemented method of claim 1 , further comprising:

determining, by the computing system, a plurality of colors for a caption background;

generating, by the computing system, a plurality of color combinations for a caption based on the plurality of colors for the caption background; and

identifying, by the computing system, a color combination for the caption from the plurality of color combinations that has a highest contrast ratio.

7. The computer-implemented method of claim 6 , wherein determining the plurality of colors for the caption background comprises:

identifying, by the computing system, a first set of colors based on the plurality of histograms; and

determining, by the computing system, a second set of colors based on the colors of the first set.

8. The computer-implemented method of claim 7 , wherein determining the second set of colors based on the colors of the first set comprises:

adding, by the computing system, a value to a value component of hue-saturation-value (HSV) corresponding to a first color of the first set; and

subtracting, by the computing system, a value from a value component of HSV corresponding to a second color of the first set.

9. The computer-implemented method of claim 6 , wherein the plurality of color combinations for the caption includes color combinations of the plurality of colors for the caption background and black or white caption text.

10. The computer-implemented method of claim 6 , wherein the highest contrast ratio is determined using the formula: Contrast Ratio=(L1+0.05)/(L2+0.05).

11. A computing system comprising:

at least one processor; and

a memory storing instructions that, when executed by the at least one processor, cause the computing system to perform:

obtaining a media item;

generating a plurality of histograms based on colors of a first portion and a second portion of the media item, the generating further comprising:

sampling colors included in the first portion of the media item, wherein the first portion corresponds to pixels associated with a top portion of the media item;

generating a first histogram based on colors sampled from the first portion of the media item;

sampling colors included in the second portion of the media item, wherein the second portion corresponds to pixels associated with a bottom portion of the media item; and

generating a second histogram based on colors sampled from the second portion of the media item; and

generating a custom background for the media item in a content item based on the first histogram and the second histogram.

12. The computing system of claim 11 , wherein the instructions further cause the computing system to perform:

positioning the media item in the content item such that spatial distances from a top edge of the content item to a top edge of the media item and from a bottom edge of the media item to a bottom edge of the content item are the same.

13. The computing system of claim 11 , wherein generating the plurality of histograms based on the colors of the first portion and the second portion of the media item comprises:

quantizing the sampled colors into a discrete number of colors.

14. The computing system of claim 11 , wherein generating the custom background for the media item based on the plurality of histogram comprises:

identifying a first color from the first histogram that has a highest color frequency;

identifying a second color from the second histogram that a highest color frequency; and

generating the custom background for the media item based on the first color and the second color, wherein the first color is used to fill a spacing between a top edge of the content item to a top edge of the media item and the second color is used to fill a spacing between a bottom edge of the media item to a bottom edge of the content item.

15. The computing system of claim 11 , wherein generating the custom background for the content item based on the plurality of histogram comprises:

identifying a first color from the first histogram that has a highest color frequency;

identifying a second color from the second histogram that a highest color frequency; and

generating a color gradient based on the first color and the second color, wherein the color gradient is used to fill spacing from a top edge of the content item to a top edge of the media item and from a bottom edge of the media item to a bottom edge of the content item.

16. A non-transitory computer-readable storage medium including instructions that, when executed by at least one processor of a computing system, cause the computing system to perform a method comprising:

obtaining a media item;

generating a plurality of histograms based on colors of a first portion and a second portion of the media item, the generating further comprising:

sampling colors included in the first portion of the media item, wherein the first portion corresponds to pixels associated with a top portion of the media item;

generating a first histogram based on colors sampled from the first portion of the media item;

sampling colors included in the second portion of the media item, wherein the second portion corresponds to pixels associated with a bottom portion of the media item; and

generating a second histogram based on colors sampled from the second portion of the media item; and

generating a custom background for the media item in a content item based on the first histogram and the second histogram.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the instructions further cause the computing system to perform:

positioning the media item in the content item such that spatial distances from a top edge of the content item to a top edge of the media item and from a bottom edge of the media item to a bottom edge of the content item are the same.

18. The non-transitory computer-readable storage medium of claim 16 , wherein generating the plurality of histograms based on the colors of the first portion and the second portion of the media item comprises:

quantizing the sampled colors into a discrete number of colors.

19. The non-transitory computer-readable storage medium of claim 16 , wherein generating the custom background for the media item based on the plurality of histogram comprises:

identifying a first color from the first histogram that has a highest color frequency;

identifying a second color from the second histogram that a highest color frequency; and

generating the custom background for the media item based on the first color and the second color, wherein the first color is used to fill a spacing between a top edge of the content item to a top edge of the media item and the second color is used to fill a spacing between a bottom edge of the media item to a bottom edge of the content item.

20. The non-transitory computer-readable storage medium of claim 16 , wherein generating the custom background for the content item based on the plurality of histogram comprises:

identifying a first color from the first histogram that has a highest color frequency;

identifying a second color from the second histogram that a highest color frequency; and

generating a color gradient based on the first color and the second color, wherein the color gradient is used to fill spacing from a top edge of the content item to a top edge of the media item and from a bottom edge of the media item to a bottom edge of the content item.

Assignments (1)
CHANGE OF NAME Recorded Nov 23, 2021
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058235/0635 →
Continuity (1)
Provisional Application 62806334 · Feb 15, 2019
Cited By (3)
US 1,115,847 US 12,314,528 US 12,657,865