IP Library Granted Patent US 10,638,144
Granted Patent B2
US 10,638,144 · App. 15/460,189 · Granted Apr 28, 2020

Content-based transcoder

Inventor: Federico Daniel Larumbe (Mountain View, CA)
Assignee: Facebook, Inc.
H04N19/40G06K9/00744G06K9/6262G06K9/6296H04N19/136G06K9/4642
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,638,144
App. No.
15/460,189
Granted
Apr 28, 2020
Kind
B2
Abstract

The disclosed method for performing content-based transcoding of images may include determining an image, calculating an extraction-feature set based on content of the image, calculating a distance measure based on the extraction-feature set according to an image recognition model, determining an image type for the image based on the distance measure, and storing the image according to the image type. When the image type of the image is a first image type, the disclosed computer-implemented method may generate a transcoded image from the image, store the transcoded image at a content-provider computing system, and refrain from storing the image at the content-provider computing system. Alternatively, when the image type of the image is a second image type, the disclosed computer-implemented method may refrain from generating the transcoded image from the image and store the image at the content-provider computing system. Various other methods, systems, and computer-readable media are also disclosed.

Claims (84)

1. A computer-implemented method, comprising:

identifying, at a content-provider computing system, a transcoding pipeline that is known to degrade, more than a predetermined amount, a perceived quality of image files of a first image type but not image files of a second image type, wherein the transcoding pipeline:

takes inputted image files;

generates transcoded image files from the inputted image files;

stores the transcoded image files at the content-provider computing system; and

refrains from storing the inputted image files at the content-provider computing system;

training an image recognition model to distinguish the image files of the first image type from the image files of the second image type;

receiving, at the content-provider computing system from a client computing system, an image file;

calculating an extraction-feature set based on content of the image file;

before storing the image file at the content-provider computing system, determining if the transcoding pipeline would degrade the perceived quality of the image file more than the predetermined amount by:

calculating a similarity score based on the extraction-feature set according to the image recognition model; and

determining an image type of the image file based on the similarity score, wherein the image type of the image file is one of the first image type or the second image type; and

storing the image file according to the image type by:

when the image type of the image file is the second image type, transcoding the image file with the transcoder pipeline, wherein transcoding the image file with the transcoder pipeline comprises:

generating a transcoded image file from the image file;

storing the transcoded image file at the content-provider computing system; and

refraining from storing the image file at the content-provider computing system; and

when the image type of the image file is the first image type:

refraining from generating the transcoded image file from the image file by bypassing the transcoding pipeline; and

storing the image file at the content-provider computing system.

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

the second file type comprises graphics; and

determining the image type of the image file includes classifying the image file as a graphic in real-time.

3. The computer-implemented method of claim 1 , wherein:

the first file type comprises graphics; and

determining the image type of the image file includes classifying the image file as a graphic in real-time.

4. The computer-implemented method of claim 1 , wherein:

calculating the extraction-feature set includes calculating a size measure, wherein the size measure is for identifying groupings for the content based on a size threshold; and

the similarity score is calculated based on the size measure.

5. The computer-implemented method of claim 1 , wherein:

calculating the extraction-feature set includes calculating a peak measure, wherein the peak measure is for identifying a dominant pattern in the content; and

the similarity score is calculated based on the peak measure.

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

calculating the extraction-feature set includes calculating a continuity measure, wherein the continuity measure is for characterizing absolute differences between values of abutting bins in an image histogram generated based on the content of the image file; and

the similarity score is calculated based on the continuity measure.

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

analyzing the content of the image file according to luminosity values; and

wherein:

the extraction-feature set is calculated based on the luminosity values.

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

analyzing the content of the image file according to color values; and

wherein:

the extraction-feature set is calculated based on the color values.

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

generating an image histogram based on the content of the image file, wherein the image histogram includes bins for grouping portions or values of the content; and

wherein:

the extraction-feature set is calculated based on analyzing the image histogram.

10. The computer-implemented method of claim 1 , wherein:

receiving the image file includes receiving a video file;

determining the image type of the image file includes classifying each frame of the video file; and

further comprising:

identifying a key frame within the video file based on the image type.

11. A non-transitory computer readable data storage memory storing computer-executable instructions that, when executed by a content-provider computing system, cause the content-provider computing system to perform a computer-implemented method, the instructions comprising:

instructions for identifying a transcoding pipeline of the content-provider computing system that is known to degrade, more than a predetermined amount, a perceived quality of image files of a first image type but not image files of a second image type, wherein the transcoding pipeline:

takes inputted image files;

generates transcoded image files from the inputted image files;

stores the transcoded image files at the content-provider computing system; and

refrains from storing the inputted image files at the content-provider computing system;

instruction for training an image recognition model trained to distinguish the image files of the first image type from the image files of the second image type;

instructions for receiving, at the content-provider computing system from a client computing system, an image file;

instructions for calculating an extraction-feature set based on content of the image file;

instructions for determining, before storing the image file at the content-provider computing system, if the transcoding pipeline would degrade the perceived quality of the image file more than the predetermined amount by:

calculating a similarity score based on the extraction-feature set according to the image recognition model; and

determining an image type of the image file based on the similarity score, wherein the image type of the image file is one of the first image type or the second image type; and

instructions for storing the image file according to the image type by:

when the image type of the image file is the second image type, transcoding the image file with the transcoder pipeline, wherein transcoding the image file with the transcoder pipeline comprises:

generating a transcoded image file from the image file;

storing the transcoded image file at the content-provider computing system; and

refraining from storing the image file at the content-provider computing system; and

when the image type of the image file is the first image type:

refraining from generating the transcoded image file from the image file by bypassing the transcoding pipeline; and

storing the image file at the content-provider computing system.

12. The non-transitory computer readable data storage memory of claim 11 , wherein the instructions further comprise:

instructions for generating an image histogram based on the content of the image file, wherein the image histogram includes bins for grouping portions or values of the content; and

wherein:

the instructions for calculating the extraction-feature set includes instructions for calculating a size measure based on the image histogram, wherein the size measure is for identifying the bins based on a size threshold.

13. The non-transitory computer readable data storage memory of claim 11 , wherein the instructions further comprise:

instructions for generating an image histogram based on the content of the image file, wherein the image histogram includes bins for grouping portions or values of the content; and

wherein:

the instructions for calculating the extraction-feature set includes instructions for calculating a peak measure based on the image histogram, wherein the peak measure is for identifying a dominant pattern in the content.

14. The non-transitory computer readable data storage memory of claim 11 , wherein the instructions further comprise:

instructions for generating an image histogram based on the content of the image file, wherein the image histogram includes bins for grouping portions or values of the content; and

wherein:

the instructions for calculating the extraction-feature set includes instructions for calculating a continuity measure based on the image histogram, wherein the continuity measure is for characterizing absolute differences between values of abutting bins in an image histogram generated based on the content of the image file.

Assignments (2)
CHANGE OF NAME Recorded Jan 27, 2022
From: FACEBOOK, INC.
To: META PLATFORMS, INC.
Reel/Frame 058871/0336 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2017
From: LARUMBE, FEDERICO DANIEL
To: FACEBOOK, INC.
Reel/Frame 041658/0461 →
Cited By (1)
US 12,711,352