IP Library Granted Patent US 10,296,603
Granted Patent B2
US 10,296,603 · App. 15/675,684 · Granted May 21, 2019

Systems and methods for automatically generating metadata for media documents

Inventors: Carlo Dal Mutto (Sunnyvale, CA); Alvise Memo (Marcon, IT); Duc Nguyen (Alameda, CA); Abbas Rafii (Palo Alto, CA); Jason Trachewsky (Menlo Park, CA)
Assignee: AQUIFI, INC.
G06F17/30271G06F17/3002G06F17/30011G06N3/02
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,296,603
App. No.
15/675,684
Granted
May 21, 2019
Kind
B2
Abstract

According to one embodiment of the present invention, a method for automatically generating metadata for a media document includes: computing a feature vector of the media document using a convolutional neural network; searching a collection of media documents for one or more matching media documents having corresponding feature vectors similar to the feature vector of the media document, each media document of the collection of media documents being associated with metadata; generating metadata for the media document based on the metadata associated with the one or more matching media documents; and displaying the media document in association with the generated metadata.

Claims (76)

1. A method for automatically generating metadata for a media document, the method comprising:

computing a feature vector of the media document using a convolutional neural network, the media document being a three-dimensional (3D) model, the computing the feature vector comprising:

rendering the 3D model from multiple angles to render a plurality of two-dimensional (2D) views of the 3D model;

generating, using one or more convolutional neural networks, a plurality of single view feature vectors, each of the single view feature vectors corresponding to one of the 2D views of the 3D model;

aggregating the plurality of single view feature vectors corresponding to the 2D views to compute a pooled feature vector, the pooled feature vector having a fixed length that is independent of the number of 2D views; and

computing the feature vector from the pooled feature vector having the fixed length using a final stage convolutional neural network;

searching a collection of media documents for one or more matching media documents having corresponding feature vectors similar to the feature vector of the media document, each media document of the collection of media documents being associated with metadata;

generating metadata for the media document based on the metadata associated with the one or more matching media documents, the generated metadata comprising portions of the metadata that appear in at least a threshold number of the one or more matching documents; and

displaying the media document in association with the generated metadata.

2. The method of claim 1 , wherein the collection of media documents comprises a collection of two-dimensional (2D) images,

wherein the computing the feature vector comprises computing one or more feature vectors of the 3D model,

wherein the one or more matching media documents comprise one or more matching 2D images of the collection of 2D images, and

wherein each of the corresponding feature vectors of the matching 2D images is similar to at least one of the one or more feature vectors of the 3D model.

3. The method of claim 1 , further comprising:

capturing the 3D model using a three-dimensional scanner, the three-dimensional scanner comprising:

two or more infrared (IR) cameras; and

one or more IR collimated illuminators.

4. The method of claim 1 , further comprising receiving user input, the user input comprising a validation of one or more of a plurality of fields of the generated metadata.

5. The method of claim 1 , wherein the generated metadata and the metadata associated with each of the media documents each comprise a plurality of fields, and

wherein the generating the metadata comprises:

identifying, for each field of the plurality of fields, data that appears in more than a threshold number of the metadata of the one or more matching media documents, and

adding the identified data to the generated metadata.

6. The method of claim 1 , wherein the generated metadata comprises a class of the media document, and

wherein the method further comprises:

supplying the feature vector of the media document to a classifier to compute classifications of the media document; and

computing the class based on the classifications.

7. The method of claim 1 , further comprising adding the media document and the generated metadata to the collection of media documents.

8. The method of claim 1 , wherein each of the one or more corresponding feature vectors of the one or more matching media documents has a corresponding distance in multi-dimensional space from the feature vector of the media document, and

wherein each corresponding distance is less than a threshold distance.

9. The method of claim 1 , further comprising receiving metadata associated with the media document,

wherein the searching the collection of media document comprises identifying one or more media documents of the collection of media documents having metadata matching at least one of a plurality of fields of the metadata associated with the media document, and

wherein the matching media documents comprise at least one of the identified one or more media documents.

10. The method of claim 1 , wherein the collection of media documents comprises a first set of media documents and a second set of media documents,

wherein an access policy associated with a user permits access to the first set of media documents and denies access to the second set of media documents, and

wherein the searching the collection of media documents is restricted to the first set of media documents.

11. A system for automatically generating metadata for a media document, wherein the media document is a three-dimensional (3D) model, the system comprising:

a processor; and

memory having instructions stored thereon that, when executed by the processor, cause the processor to:

compute a feature vector of the media document using a convolutional neural network, wherein the instructions for computing the feature vector comprise instructions that, when executed by the processor, cause the processor to:

render the 3D model from multiple angles to render a plurality of two-dimensional (2D) views of the 3D model;

generate, using one or more convolutional neural networks, a plurality of single view feature vectors, each of the single view feature vectors corresponding to one of the 2D views of the 3D model;

aggregate the plurality of single view feature vectors to compute a pooled feature vector the pooled feature vector having a fixed length that is independent of the number of 2D views; and

compute the feature vector from the pooled feature vector using a final stage convolutional neural network;

search a collection of media documents for one or more matching media documents having corresponding feature vectors similar to the feature vector of the media document, each media document of the collection of media documents being associated with metadata;

generate metadata for the media document based on the metadata associated with the one or more matching media documents, the generated metadata comprising portions of the metadata that appear in at least a threshold number of the one or more matching documents; and

display the media document in association with the generated metadata.

12. The system of claim 11 , wherein the collection of media documents comprises a collection of two-dimensional (2D) images,

wherein the instructions for computing the feature vector comprise instructions that, when executed by the processor, cause the processor to compute one or more feature vectors of the 3D model,

wherein the one or more matching media documents comprise one or more matching 2D images of the collection of 2D images, and

wherein each of the corresponding feature vectors of the matching 2D images is similar to at least one of the one or more feature vectors of the 3D model.

13. The system of claim 11 , further comprising a three-dimensional scanner comprising:

two or more infrared (IR) cameras; and

one or more IR collimated illuminators,

wherein the memory further stores instructions that, when executed by the processor, cause the processor to capture the 3D model using the three-dimensional scanner.

14. The system of claim 11 , wherein the memory further stores instructions that, when executed by the processor, cause the processor to receive user input, the user input comprising a validation of one or more of a plurality of fields of the generated metadata.

15. The system of claim 11 , wherein the generated metadata and the metadata associated with each of the media documents each comprise a plurality of fields, and

wherein the instructions for generating the metadata comprise instructions that, when executed by the processor, cause the processor to:

identify, for each field of the plurality of fields, data that appears in more than a threshold number of the metadata of the one or more matching media documents, and

add the identified data to the generated metadata.

16. The system of claim 11 , wherein the generated metadata comprises a class of the media document, and

wherein the memory further stores instructions that, when executed by the processor, cause the processor to:

supply the feature vector of the media document to a classifier to compute classifications of the media document; and

compute the class based on the classifications.

17. The system of claim 11 , wherein the memory further stores instructions that, when executed by the processor, cause the processor to add the media document and the generated metadata to the collection of media documents.

18. The system of claim 11 , wherein each of the one or more corresponding feature vectors of the one or more matching media documents has a corresponding distance in multi-dimensional space from the feature vector of the media document, and

wherein each corresponding distance is less than a threshold distance.

19. The system of claim 11 , wherein the memory further stores instructions that, when executed by the processor, cause the processor to receive metadata associated with the media document,

wherein the instructions for searching the collection of media document comprise instructions that, when executed by the processor, cause the processor to identify one or more media documents of the collection of media documents having metadata matching at least one of a plurality of fields of the metadata associated with the media document, and

wherein the matching media documents comprise at least one of the identified one or more media documents.

20. The system of claim 11 , wherein the collection of media documents comprises a first set of media documents and a second set of media documents,

wherein an access policy associated with a user permits access to the first set of media documents and denies access to the second set of media documents, and

wherein the searching the collection of media documents is restricted to the first set of media documents.

21. The method of claim 1 , wherein the threshold number is specified as a count of matching documents containing a portion of the metadata.

22. The method of claim 1 , wherein the threshold number is specified as a percentage of the one or more matching documents.

23. The system of claim 11 , wherein the threshold number is specified as a count of matching documents containing a portion of the metadata.

24. The system of claim 11 , wherein the threshold number is specified as a percentage of the one or more matching documents.

Assignments (7)
SECURITY INTEREST Recorded May 15, 2025
From: PACKSIZE LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 071282/0082 →
SECURITY INTEREST Recorded Aug 21, 2024
From: PACKSIZE LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 068730/0393 →
RELEASE OF SECURITY INTEREST Recorded Dec 9, 2021
From: COMERICA BANK
To: AQUIFI, INC.
Reel/Frame 058353/0680 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 30, 2021
From: PACKSIZE INTERNATIONAL, LLC
To: PACKSIZE LLC
Reel/Frame 058287/0582 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 18, 2021
From: AQUIFI, INC.
To: PACKSIZE INTERNATIONAL, LLC
Reel/Frame 058189/0976 →
SECURITY INTEREST Recorded Aug 20, 2019
From: AQUIFI, INC.
To: COMERICA BANK
Reel/Frame 050111/0671 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 23, 2017
From: DAL MUTTO, CARLO; MEMO, ALVISE; NGUYEN, DUC; RAFII, ABBAS; TRACHEWSKY, JASON
To: AQUIFI, INC.
Reel/Frame 043370/0891 →
Continuity (2)
Provisional Application 62374598 · Aug 12, 2016
Related Publication 20180046649A1 · Feb 15, 2018