IP Library Granted Patent US 10,803,013
Granted Patent B2
US 10,803,013 · App. 15/876,652 · Granted Oct 13, 2020

Efficient similarity detection

Inventors: Gabrielle Burns (Santa Clara, CA); Yuping He (San Jose, CA)
Assignee: SMUGMUG, INC.
G06F16/137G06F16/152G06F16/168G06F16/183G06F16/285G06F16/93H04L67/06H04L67/10H04L67/1097H04L67/42
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,803,013
App. No.
15/876,652
Granted
Oct 13, 2020
Kind
B2
Abstract

A software application platform for uploading a file to a server is disclosed. The server receives a request from a user to upload a file thereto. An upload client extracts file information from the file. The server generates a file signature for the file. The server accesses one or more existing file signatures for each of one or more existing files on the server. The server determines whether any of the one or more existing file signatures are similar to the file signature. Responsive to determining that there is an existing file signature that is similar to the file signature, the server accesses a first hash signature for the existing file. The upload client generates a second hash signature for the file. Responsive to determining that the first hash signature does not equal the second hash signature, the upload client uploads the file to the server.

Claims (86)

1. A method of categorizing similar files, comprising:

receiving a curation request;

accessing one or more files associated with a user account;

identifying each of the one or more uncategorized files not categorized into an gallery;

extracting one or more signatures from a first uncategorized file, comprising:

extracting a file signature and a hash signature corresponding to the file signature from the first uncategorized file, the file signature based on at least the filename, file size, and metadata;

determining whether a signature from the one or more signatures of the first uncategorized file is similar to at least one categorized signature from the one or more files, comprising:

accessing a first categorized file signature from a first file;

comparing the first categorized file signature to the first file signature of the first uncategorized file;

responsive to determining the first categorized file signature is not similar to the first file signature of the first uncategorized file, accessing a first categorized hash signature from the first file; and

comparing the first categorized hash signature to the hash signature of the first uncategorized file;

responsive to determining that at least one categorized signature matches the signature from the first uncategorized file, presenting to a user the uncategorized file corresponding to the signature and the file corresponding to the at least one categorized signature; and

categorizing the uncategorized file in accordance with instructions received from the user.

2. The method of claim 1 , wherein presenting to a user the uncategorized file corresponding to the signature and the file corresponding to the at least one categorized signature, comprises:

presenting to the user a suggested gallery for assignment based on the file corresponding to the at least one categorized signature.

3. The method of claim 1 , further comprising:

receiving another curation request;

accessing another one or more files associated with another user account;

identifying each of the other one or more uncategorized files not categorized into an gallery;

extracting another one or more signatures from a first uncategorized file;

determining whether another signature from the other one or more signatures of the other first uncategorized file is similar to another at least one categorized signature from the other one or more files;

responsive to determining that another at least one categorized signature does not match the other signature from the other first uncategorized file, visually comparing the other first uncategorized file to each of the other one or more files;

responsive to determining that the other first uncategorized file is visually similar to one of the other one or more files, presenting to another user the other uncategorized file corresponding and the other file that is visually similar to the other uncategorized file; and

categorizing the other uncategorized file in accordance with instructions received from the other user.

4. The method of claim 1 , wherein categorizing the uncategorized file in accordance with instructions received from the user, comprises:

assigning the first uncategorized file to a gallery associated with file.

5. The method of claim 1 , wherein categorizing the uncategorized file in accordance with instructions received from the user, comprises:

creating a new gallery and assigning the uncategorized file to the new gallery.

6. A system, comprising:

a processor; and

a memory having instructions stored thereon, which, when executed by the processor, performs an operation for categorizing similar files, the operation, comprising:

receiving a curation request;

accessing one or more files associated with a user account;

identifying each of the one or more uncategorized files not categorized into an gallery;

extracting one or more signatures from a first uncategorized file, comprising:

extracting a file signature and a hash signature corresponding to the file signature from the first uncategorized file, the file signature based on at least the filename, file size, and metadata;

determining whether a signature from the one or more signatures of the first uncategorized file is similar to at least one categorized signature from the one or more files, comprising:

accessing a first categorized file signature from a first file;

comparing the first categorized file signature to the first file signature of the first uncategorized file;

responsive to determining the first categorized file signature is not similar to the first file signature of the first uncategorized file, accessing a first categorized hash signature from the first file; and

comparing the first categorized hash signature to the hash signature of the first uncategorized file;

responsive to determining that at least one categorized signature matches the signature from the first uncategorized file, presenting to a user the uncategorized file corresponding to the signature and the file corresponding to the at least one categorized signature; and

categorizing the uncategorized file in accordance with instructions received from the user.

7. The system of claim 6 , wherein presenting to a user the uncategorized file corresponding to the signature and the file corresponding to the at least one categorized signature, comprises:

presenting to the user a suggested gallery for assignment based on the file corresponding to the at least one categorized signature.

8. The system of claim 6 , further comprising:

receiving another curation request;

accessing another one or more files associated with another user account;

identifying each of the other one or more uncategorized files not categorized into an gallery;

extracting another one or more signatures from a first uncategorized file;

determining whether another signature from the other one or more signatures of the other first uncategorized file is similar to another at least one categorized signature from the other one or more files;

responsive to determining that another at least one categorized signature does not match the other signature from the other first uncategorized file, visually comparing the other first uncategorized file to each of the other one or more files;

responsive to determining that the other first uncategorized file is visually similar to one of the other one or more files, presenting to another user the other uncategorized file corresponding and the other file that is visually similar to the other uncategorized file; and

categorizing the other uncategorized file in accordance with instructions received from the other user.

9. The system of claim 6 , wherein categorizing the uncategorized file in accordance with instructions received from the user, comprises:

assigning the first uncategorized file to an gallery associated with file.

10. The system of claim 6 , wherein categorizing the uncategorized file in accordance with instructions received from the user, comprises:

creating a new gallery and assigning the uncategorized file to the new gallery.

11. A non-transitory computer readable medium having instructions stored thereon, which, when executed by a processor, cause the processor to perform a method of categorizing similar files, comprising:

receiving a curation request;

accessing one or more files associated with a user account;

identifying each of the one or more uncategorized files not categorized into an gallery;

extracting one or more signatures from a first uncategorized file, comprising:

extracting a file signature and a hash signature corresponding to the file signature from the first uncategorized file, the file signature based on at least the filename, file size, and metadata;

determining whether a signature from the one or more signatures of the first uncategorized file is similar to at least one categorized signature from the one or more files, comprising:

accessing a first categorized file signature from a first file;

comparing the first categorized file signature to the first file signature of the first uncategorized file;

responsive to determining the first categorized file signature is not similar to the first file signature of the first uncategorized file, accessing a first categorized hash signature from the first file; and

comparing the first categorized hash signature to the hash signature of the first uncategorized file;

responsive to determining that at least one categorized signature matches the signature from the first uncategorized file, presenting to a user the uncategorized file corresponding to the signature and the file corresponding to the at least one categorized signature; and

categorizing the uncategorized file in accordance with instructions received from the user.

12. The non-transitory computer readable medium of claim 11 , wherein presenting to a user the uncategorized file corresponding to the signature and the file corresponding to the at least one categorized signature, comprises:

presenting to the user a suggested gallery for assignment based on the file corresponding to the at least one categorized signature.

13. The non-transitory computer readable medium of claim 11 , further comprising:

receiving another curation request;

accessing another one or more files associated with another user account;

identifying each of the other one or more uncategorized files not categorized into an gallery;

extracting another one or more signatures from a first uncategorized file;

determining whether another signature from the other one or more signatures of the other first uncategorized file is similar to another at least one categorized signature from the other one or more files;

responsive to determining that another at least one categorized signature does not match the other signature from the other first uncategorized file, visually comparing the other first uncategorized file to each of the other one or more files;

responsive to determining that the other first uncategorized file is visually similar to one of the other one or more files, presenting to another user the other uncategorized file corresponding and the other file that is visually similar to the other uncategorized file; and

categorizing the other uncategorized file in accordance with instructions received from the other user.

14. The non-transitory computer readable medium of claim 11 , wherein categorizing the uncategorized file in accordance with instructions received from the user, comprises:

assigning the first uncategorized file to an gallery associated with file.

15. The non-transitory computer readable medium of claim 11 , wherein categorizing the uncategorized file in accordance with instructions received from the user, comprises:

creating a new gallery and assigning the uncategorized file to the new gallery.

Assignments (3)
SECURITY INTEREST Recorded Jul 30, 2025
From: AWES.ME, INC.
To: AVIDBANK
Reel/Frame 071884/0090 →
CHANGE OF NAME Recorded Mar 30, 2022
From: SMUGMUG, INC.
To: AWES.ME, INC.
Reel/Frame 059554/0609 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 25, 2019
From: BURNS, GABRIELLE; HE, YUPING
To: SMUGMUG, INC.
Reel/Frame 050487/0014 →
Continuity (3)
Provisional Application 62539963 · Aug 1, 2017
Provisional Application 62457724 · Feb 10, 2017
Related Publication 20180232388A1 · Aug 16, 2018
Cited By (2)
US 12,341,846 US 12,493,402