IP Library Granted Patent US 11,335,094
Granted Patent B2
US 11,335,094 · App. 16/539,430 · Granted May 17, 2022

Detecting fake videos

Inventors: Maxwell Christian Horton (Seattle, WA); Ali Farhadi (Seattle, WA)
Assignee: Apple Inc.
G06V20/46G06K9/6256G06N20/00G06T7/13G06T7/44G06V20/49
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,335,094
App. No.
16/539,430
Granted
May 17, 2022
Kind
B2
Abstract

In one embodiment, a method includes accessing a plurality of verified videos depicting one or more subjects, generating, based on the verified videos, a plurality of verified-video feature values corresponding to the subjects, generating, using one or more video transformations based on the verified videos, a plurality of fake videos, generating, based on the fake videos, a plurality of fake-video feature values, training a machine-learning model to determine whether a specified video is a genuine video, wherein the machine-learning model is trained based on the verified-video feature values and the fake-video feature values. The machine-learning model may be trained to classify the specified video in a genuine-video class or a fake-video class, and the machine-learning model maybe trained based on an association between a genuine-video class and the verified-video feature values and an association between a fake-video class and the fake-video feature values.

Claims (52)

1. A method comprising:

by one or more computing devices, accessing a plurality of verified videos depicting one or more subjects;

by the one or more computing devices, generating, based on the verified videos, a plurality of verified-video feature values corresponding to the subjects;

by the one or more computing devices, generating, by applying one or more pre-determined video transformations to each of the plurality of verified videos, a plurality of fake videos;

by the one or more computing devices, generating, based on the fake videos, a plurality of fake-video feature values; and

by the one or more computing devices, training, using the plurality of verified-video feature values and the plurality of fake-video feature values a machine-learning model to determine whether a specified video is a genuine video, wherein the machine-learning model is trained to distinguish between the plurality of verified-video feature values and the plurality of fake-video feature values.

2. The method of claim 1 , wherein the machine-learning model is trained to classify the specified video in a genuine-video class or a fake-video class, and the machine-learning model is trained based on an association between a genuine-video class and the verified-video feature values and an association between a fake-video class and the fake-video feature values, the verified-video feature values comprising a verified-video histogram, and the fake-video feature values comprising a fake-video histogram.

3. The method of claim 1 , wherein the plurality of verified-video feature values and the plurality of fake-video feature values each comprise one or more of: a color feature, a texture feature, an edge feature, a shape feature, or an image quality feature.

4. The method of claim 3 , wherein the color feature comprises one or more of HSL (hue, saturation, lightness), HSV (hue, saturation, value), dominant color, color gradient, or color frequency histogram.

5. The method of claim 3 , wherein the texture feature comprises one or more of a coarseness, contrast, directionality, line-likeness, regularity, roughness, or Grey Level Co-occurrence Matrix (GLCM).

6. The method of claim 3 , wherein the edge feature comprises an edge histogram based on spatial distribution of edges.

7. The method of claim 3 , wherein the shape feature comprises a region-based shape feature based on pixel distribution in an object or region, a contour-based shape feature based on contours of an object, or one or more Hu-Moment shape features.

8. The method of claim 3 , wherein the image quality feature comprises one or more of distortion, contrast, or brightness.

9. The method of claim 1 , further comprising:

by the one or more computing devices, determining a plurality of verified-video computed values of a verified-video histogram, wherein each verified-video computed value is computed as a function of one or more of the verified-video feature values; and

by the one or more computing devices, determining a plurality of fake-video computed values, of a fake-video histogram wherein each fake-video computed value is computed as a function of one or more of the fake-video feature values,

wherein the machine-learning model is trained to distinguish between the verified-video computed values and the fake-video computed values.

10. The method of claim 1 , wherein the verified-video feature values comprise verified-video feature vectors, and the fake-video feature values comprise fake-video feature vectors, the method further comprising:

by the one or more computing devices, determining a plurality of verified-video distances, wherein each verified-video distance is based on a distance between a pair of the verified-video feature vectors; and

by the one or more computing devices, determining a plurality of fake-video distances, wherein each fake-video distance is based on a distance between a pair of the fake-video feature vectors,

wherein the machine-learning model is trained to distinguish between the verified-video distances and the fake-video distances.

11. The method of claim 1 , wherein the verified-video feature values comprise verified-video feature vectors, and the fake-video feature values comprise fake-video feature vectors, the method further comprising:

by the one or more computing devices, determining a plurality of verified-video distances, wherein each verified-video distance is based on a distance between a pair of the verified-video feature vectors;

by the one or more computing devices, generating a verified-video histogram of the verified-video distances;

by the one or more computing devices, determining a plurality of fake-video distances, wherein each fake-video distance is based on a distance between a pair of the fake-video feature vectors; and

by the one or more computing devices, generating a fake-video histogram of the fake-video distances,

wherein the machine-learning model is trained to distinguish between the verified-video histograms and the fake-video histograms.

12. The method of claim 9 , wherein the machine-learning model is trained based on:

an association between the verified-video computed values of the verified-video histogram and a genuine-video class, and

an association between the fake-video computed values of the fake-video histogram and a fake-video class.

13. The method of claim 1 , wherein each of the verified videos is less than a threshold length.

14. The method of claim 1 , wherein at least a portion of each of the one or more subjects in the verified videos moves at greater than a minimum threshold rate of speed.

15. The method of claim 1 , wherein the one or more video transformations include image resizing, overlaying of rectangular border that enclosing faces, stopping motion, or a combination thereof.

16. The method of claim 1 , wherein the one or more video transformations degrade a quality of the verified videos and comprise one or more of addition of noise, blurring, resolution reduction, color distortion, image compression, or affine transformations.

17. The method of claim 1 , wherein the verified videos are live videos captured in real-time.

18. One or more computer-readable non-transitory storage media embodying software that is operable when executed to:

access verified videos depicting one or more subjects;

generate, based on the verified videos, a plurality of verified-video feature values corresponding to the subjects;

generate, using one or more video transformations based on the verified videos, a plurality of fake videos;

generate, based on the fake videos, a plurality of fake-video feature values; and

train, using the plurality of verified-video feature values and the plurality of fake-video feature values, a machine-learning model to determine whether a specified video is a genuine video, wherein the machine-learning model is trained to distinguish between the plurality of verified-video feature values and the plurality of fake-video feature values.

19. A system comprising:

one or more processors;

an input device;

an output device; and

one or more computer-readable non-transitory storage media coupled to one or more of the processors and comprising instructions operable when executed by one or more of the processors to cause the system to:

access verified videos depicting one or more subjects;

generate, based on the verified videos, a plurality of verified-video feature values corresponding to the subjects;

generate, by applying one or more pre-determined video transformations to each of the verified videos, a plurality of fake videos;

generate, based on the fake videos, a plurality of fake-video feature values; and

train a machine-learning model to determine whether a specified video is a genuine video, wherein the machine-learning model is trained based on the verified-video feature values and the fake-video feature values.

20. The system of claim 19 , wherein the plurality of verified-video feature values and the plurality of fake-video feature values each comprise one or more of: a color feature, a texture feature, an edge feature, a shape feature, or an image quality feature.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 14, 2021
From: XNOR.AI, INC.
To: APPLE INC.
Reel/Frame 058390/0589 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2019
From: HORTON, MAXWELL CHRISTIAN
To: XNOR.AI, INC.
Reel/Frame 050048/0089 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 14, 2019
From: FARHADI, ALI
To: XNOR.AI, INC.
Reel/Frame 050055/0051 →
Continuity (1)
Related Publication 20210049366A1 · Feb 18, 2021