IP Library Granted Patent US 11,080,549
Granted Patent B1
US 11,080,549 · App. 16/749,702 · Granted Aug 3, 2021

Automated cropping of images using a machine learning predictor

Inventors: Aneesh Vartakavi (Emeryville, CA); Casper Lützhøft Christensen (Emeryville, CA)
Assignee: Gracenote, Inc.
G06K9/4604G06K9/3233G06K9/6221G06K9/6256G06N3/0472G06N3/08
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,080,549
App. No.
16/749,702
Granted
Aug 3, 2021
Kind
B1
Abstract

Example systems and methods may selection of video frames using a machine learning (ML) predictor program are disclosed. The ML predictor program may generate predicted cropping boundaries for any given input image. Training raw images associated with respective sets of training master images indicative of cropping characteristics for the training raw image may be input to the ML predictor, and the ML predictor program trained to predict cropping boundaries for raw image based on expected cropping boundaries associated training master images. At runtime, the trained ML predictor program may be applied to runtime raw images in order to generate respective sets of runtime cropping boundaries corresponding to different cropped versions of the runtime raw image. The runtime raw images may be stored with information indicative of the respective sets of runtime boundaries.

Claims (66)

1. A method comprising:

inputting to a machine learning (ML) predictor program implemented on a computing device a first plurality of training raw images, each respective training raw image of the first plurality being associated with a respective set of training master images, each training master image of a given respective set of training master images indicating respective cropping characteristics defined for the associated respective training raw image, wherein the ML predictor program is configured to generate predicted cropping characteristics for any given input image, and wherein cropping characteristics for any particular input image comprise coordinates of cropping boundaries with respect to the particular input image prior to cropping;

training the ML predictor program to predict cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images;

subsequent to training the ML predictor program with the first plurality of training raw images, applying the trained ML predictor program to a second plurality of runtime raw images in order to generate for each respective runtime raw image of the second plurality a respective set of runtime cropping characteristics, wherein the respective set of runtime cropping characteristics for each respective runtime raw image comprises one or more subsets of cropping coordinates for the respective runtime raw image, and wherein each subset corresponds to a different cropped version of the respective runtime raw image; and

storing, in non-transitory computer-readable memory, the second plurality of runtime raw images together with the respective set of runtime cropping characteristics for each respective runtime raw image of the second plurality.

2. The method of claim 1 , wherein training the ML predictor program to predict the cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images comprises:

for each respective training raw image, generating respective model cropping characteristics according a computational model;

for each respective training raw image, computing respective deviations between the generated respective model cropping characteristics and the expected cropping characteristics represented in the respective set of training master images associated with the respective training raw image; and

adjusting parameters of the computational model to simultaneously minimize all of the computed respective deviations.

3. The method of claim 2 , further comprising applying a weighting function to the cropping characteristics represented in the associated respective set of training master images in order to cause an increased agreement between predicted cropping characteristics and more highly-weighted expected cropping characteristics, compared with the agreement between predicted cropping characteristics and less highly-weighted expected cropping characteristics.

4. The method of claim 1 , wherein the ML predictor program comprises an artificial neural network (ANN),

wherein training the ML predictor program to predict the cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images comprises training the ANN to predict the cropping characteristics for each respective training raw image to within a threshold confidence level,

and wherein applying the trained ML predictor program to the second plurality of runtime raw images in order to generate for each respective runtime raw image of the second plurality the respective set of runtime cropping characteristics comprises applying the trained ANN to the second plurality of runtime raw images to predict the respective set of runtime cropping characteristics for each of the second plurality of runtime raw images.

5. The method of claim 1 , wherein inputting the first plurality of training raw images to the ML predictor program comprises:

retrieving the first plurality of training raw images from a training-image database,

wherein the training-image database comprises the first plurality of training raw images and the associated respective sets of training master images.

6. The method of claim 5 , wherein the associated respective sets of training master images comprise cropping data indicative of the respective cropping characteristics,

and wherein the cropping data are at least one of cropped images, or coordinates defining cropping boundaries with respect to associated respective raw images in uncropped form.

7. The method of claim 1 , wherein the cropping characteristics of each respective set of training master images define one or more rectangular training bounding boxes, each enclosing a respective region of interest (ROI) of the associated training raw image,

and wherein each rectangular training bounding box has a respective fixed aspect ratio specified according to a set of predetermined training aspect ratios.

8. The method of claim 7 , wherein training the ML predictor program to predict the cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images comprises training the ML predictor program to predict one or more computed rectangular bounding boxes that respectively match, to within a threshold confidence level, the one or more rectangular training bounding boxes of the respective set of training master images associated with each respective training raw image,

and wherein applying the trained ML predictor program to the second plurality of runtime raw images in order to generate for each respective runtime raw image of the second plurality the respective set of runtime cropping characteristics comprises applying the trained ML predictor program to the second plurality of runtime raw images to predict for each respective runtime raw image one or more respective runtime rectangular bounding boxes.

9. The method of claim 8 , wherein training the ML predictor program to predict the cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images further comprises training the ML predictor program to predict a confidence level for any given predicted bounding box,

and wherein applying the trained ML predictor program to the second plurality of runtime raw images in order to generate for each respective runtime raw image of the second plurality the respective set of runtime cropping characteristics further comprises predicting a confidence level for each of the predicted one or more respective runtime rectangular bounding boxes.

10. The method of claim 1 , further comprising:

recognizing, by the ML predictor program, an exclusion boundary around any particular image; and

excluding, by the ML predictor program, any portion of the any particular image within the exclusion boundary from consideration in computations to predict the cropping characteristics of the any particular image.

11. The method of claim 1 , wherein the second plurality of runtime raw images comprise digital still images of digital streaming media content,

and wherein each cropped version of the respective runtime raw image is configured for display in at least one of promotional communication associated with the streaming media content, or electronic program control of the streaming media content.

12. A system comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the system to carry out operations of a machine learning (ML) predictor program, wherein the operations include:

receiving as input to the ML predictor program a first plurality of training raw images, each respective training raw image of the first plurality being associated with a respective set of training master images, each training master image of a given respective set of training master images indicating respective cropping characteristics defined for the associated respective training raw image, wherein the ML predictor program is configured to generate predicted cropping characteristics for any given input image, and wherein cropping characteristics for any particular input image comprise coordinates of cropping boundaries with respect to the particular input image prior to cropping;

training the ML predictor program to predict cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images;

subsequent to training the ML predictor program with the first plurality of training raw images, applying the trained ML predictor program to a second plurality of runtime raw images input to the trained the ML predictor program in order to generate for each respective runtime raw image of the second plurality a respective set of runtime cropping characteristics, wherein the respective set of runtime cropping characteristics for each respective runtime raw image comprises one or more subsets of cropping coordinates for the respective runtime raw image, and wherein each subset corresponds to a different cropped version of the respective runtime raw image; and

storing, in non-transitory computer-readable memory, the second plurality of runtime raw images together with the respective set of runtime cropping characteristics for each respective runtime raw image of the second plurality.

13. The system of claim 12 , wherein training the ML predictor program to predict the cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images comprises:

for each respective training raw image, generating respective model cropping characteristics according a computational model;

for each respective training raw image, computing respective deviations between the generated respective model cropping characteristics and the expected cropping characteristics represented in the respective set of training master images associated with the respective training raw image; and

adjusting parameters of the computational model to simultaneously minimize all of the computed respective deviations.

14. The system of claim 13 , wherein the operations further include applying a weighting function to the cropping characteristics represented in the associated respective set of training master images in order to cause an increased agreement between predicted cropping characteristics and more highly-weighted expected cropping characteristics, compared with the agreement between predicted cropping characteristics and less highly-weighted expected cropping characteristics.

15. The system of 12 , wherein the ML predictor program comprises an artificial neural network (ANN),

wherein training the ML predictor program to predict the cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images comprises training the ANN to predict the cropping characteristics for each respective training raw image to within a threshold confidence level,

and wherein applying the trained ML predictor program to the second plurality of runtime raw images in order to generate for each respective runtime raw image of the second plurality the respective set of runtime cropping characteristics comprises applying the trained ANN to the second plurality of runtime raw images to predict the respective set of runtime cropping characteristics for each of the second plurality of runtime raw images.

16. The system of claim 12 , wherein receiving as input to the ML predictor program the first plurality of training raw images comprises:

receiving the first plurality of training raw images from a training-image database,

wherein the training-image database comprises the first plurality of training raw images and the associated respective sets of training master images,

wherein the associated respective sets of training master images comprise cropping data indicative of the respective cropping characteristics,

and wherein the cropping data are at least one of cropped images, or coordinates defining cropping boundaries with respect to associated respective raw images in uncropped form.

17. The system of claim 12 , wherein the cropping characteristics of each respective set of training master images define one or more rectangular training bounding boxes, each enclosing a respective region of interest (ROI) of the associated training raw image,

wherein each rectangular training bounding box has a respective fixed aspect ratio set according to a set of predetermined training aspect ratios,

wherein training the ML predictor program to predict the cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images comprises training the ML predictor program to predict one or more computed rectangular bounding boxes that respectively match, to within a threshold confidence level, the one or more rectangular training bounding boxes of the respective set of training master images associated with each respective training raw image,

wherein applying the trained ML predictor program to the second plurality of runtime raw images in order to generate for each respective runtime raw image of the second plurality the respective set of runtime cropping characteristics comprises applying the trained ML predictor program to the second plurality of runtime raw images to predict for each respective runtime raw image one or more respective runtime rectangular bounding boxes and associated ROIs,

wherein training the ML predictor program to predict the cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images further comprises training the ML predictor program to predict a confidence level for any given predicted bounding box,

and wherein applying the trained ML predictor program to the second plurality of runtime raw images in order to generate for each respective runtime raw image of the second plurality the respective set of runtime cropping characteristics further comprises predicting a confidence level for each of the predicted one or more respective runtime rectangular bounding boxes.

18. The system of claim 12 , wherein the operations further include:

recognizing, by the ML predictor program, an exclusion boundary around any particular image; and

excluding, by the ML predictor program, any portion of the any particular image within the exclusion boundary from consideration in computations to predict the cropping characteristics of the any particular image.

19. The system of claim 12 , wherein the second plurality of runtime raw images comprise digital still images associated with digital streaming media content,

wherein each cropped version of the respective runtime raw image is configured for display in at least one of promotional communication associated with the streaming media content, or electronic program control of the streaming media content,

and wherein each respective runtime raw image of the second plurality of runtime raw images corresponds to a respective digital still image of the digital streaming media content is associated with respective metadata relating to the digital streaming media content.

20. A non-transitory computer-readable medium having instructions stored thereon that, when executed by one or more processors of a system, cause the system to carry out operations of a machine learning (ML) predictor program, wherein the operations include:

receiving as input to the ML predictor program a first plurality of training raw images, each respective training raw image of the first plurality being associated with a respective set of training master images, each training master image of a given respective set of training master images indicating respective cropping characteristics defined for the associated respective training raw image, wherein the ML predictor program is configured to generate predicted cropping characteristics for any given input image, and wherein cropping characteristics for any particular input image comprise coordinates of cropping boundaries with respect to the particular input image prior to cropping;

training the ML predictor program to predict cropping characteristics for each respective training raw image based on expected cropping characteristics represented in the associated respective set of training master images;

subsequent to training the ML predictor program with the first plurality of training raw images, applying the trained ML predictor program to a second plurality of runtime raw images input to the trained the ML predictor program in order to generate for each respective runtime raw image of the second plurality a respective set of runtime cropping characteristics, wherein the respective set of runtime cropping characteristics for each respective runtime raw image comprises one or more subsets of cropping coordinates for the respective runtime raw image, and wherein each subset corresponds to a different cropped version of the respective runtime raw image; and

storing, in non-transitory computer-readable memory, the second plurality of runtime raw images together with the respective set of runtime cropping characteristics for each respective runtime raw image of the second plurality.

Assignments (8)
RELEASE (REEL 054066 / FRAME 0064) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063605/0001 →
RELEASE (REEL 053473 / FRAME 0001) Recorded May 11, 2023
From: CITIBANK, N.A.
To: A. C. NIELSEN COMPANY, LLC; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE MEDIA SERVICES, LLC; THE NIELSEN COMPANY (US), LLC; NETRATINGS, LLC
Reel/Frame 063603/0001 →
SECURITY INTEREST Recorded May 8, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: ARES CAPITAL CORPORATION
Reel/Frame 063574/0632 →
SECURITY INTEREST Recorded Apr 28, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: CITIBANK, N.A.
Reel/Frame 063561/0381 →
SECURITY AGREEMENT Recorded Jan 31, 2023
From: GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; GRACENOTE, INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC
To: BANK OF AMERICA, N.A.
Reel/Frame 063560/0547 →
CORRECTIVE ASSIGNMENT TO CORRECT THE PATENTS LISTED ON SCHEDULE 1 RECORDED ON 6-9-2020 PREVIOUSLY RECORDED ON REEL 053473 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE SUPPLEMENTAL IP SECURITY AGREEMENT. Recorded Oct 7, 2020
From: A.C. NIELSEN (ARGENTINA) S.A.; A.C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A
Reel/Frame 054066/0064 →
SUPPLEMENTAL SECURITY AGREEMENT Recorded Jun 9, 2020
From: A. C. NIELSEN COMPANY, LLC; ACN HOLDINGS INC.; ACNIELSEN CORPORATION; ACNIELSEN ERATINGS.COM; AFFINNOVA, INC.; ART HOLDING, L.L.C.; ATHENIAN LEASING CORPORATION; CZT/ACN TRADEMARKS, L.L.C.; EXELATE, INC.; GRACENOTE, INC.; GRACENOTE DIGITAL VENTURES, LLC; GRACENOTE MEDIA SERVICES, LLC; NETRATINGS, LLC; NIELSEN AUDIO, INC.; NIELSEN CONSUMER INSIGHTS, INC.; NIELSEN CONSUMER NEUROSCIENCE, INC.; NIELSEN FINANCE CO.; NIELSEN FINANCE LLC; NIELSEN INTERNATIONAL HOLDINGS, INC.; NIELSEN MOBILE, LLC; NIELSEN UK FINANCE I, LLC; NMR INVESTING I, INC.; TCG DIVESTITURE INC.; TNC (US) HOLDINGS, INC.; THE NIELSEN COMPANY (US), LLC; VIZU CORPORATION; VNU MARKETING INFORMATION, INC.; NMR LICENSING ASSOCIATES, L.P.; NIELSEN HOLDING AND FINANCE B.V.; THE NIELSEN COMPANY B.V.; VNU INTERNATIONAL B.V.
To: CITIBANK, N.A.
Reel/Frame 053473/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 29, 2020
From: VARTAKAVI, ANEESH; CHRISTENSEN, CASPER LUTZHOFT
To: GRACENOTE, INC.
Reel/Frame 051654/0515 →