IP Library Granted Patent US 12,341,846
Granted Patent B2
US 12,341,846 · App. 18/374,735 · Granted Jun 24, 2025

Efficient similarity detection

Inventors: Gabrielle Burns (Santa Clara, CA); Yuping He (San Jose, CA)
Assignee: AWES.ME, INC.
H04L67/10G06F16/137G06F16/152G06F16/168G06F16/183G06F16/285G06F16/93H04L67/01H04L67/06H04L67/1097
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 12,341,846
App. No.
18/374,735
Granted
Jun 24, 2025
Kind
B2
Abstract

Embodiments disclosed herein generally relate to a method for uploading a file to a server. 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 (44)

1. A method for detecting similar files, the method comprising:

storing a plurality of existing file signatures in memory associated with a server, each of the existing file signatures being uniquely mapped to a corresponding media file;

receiving a request sent over a communication network from a user device to the server, the request concerning upload of a file to the server; and

executing instructions stored in memory of the server, wherein the instructions are executed by a processor of the server to:

generate a file signature for the file based on metadata associated with the file, wherein the file signature is different from a hash signature;

compare the generated file signature to one or more of the existing file signatures stored in the memory;

compile a list of one or more potential matches from among the one or more existing file signatures, wherein each of the potential matches is determined to be similar to the generated file signature;

perform a visual similarity analysis between the requested file and one or more media files associated with the potential matches; and

generate a curation suggestion for the requested file based on results of the visual similarity analysis, wherein the curation suggestion includes an upload location for the requested file based on respective locations of the media files associated with the potential matches.

2. The method of claim 1 , wherein the request is a curation request associated with a plurality of files presented for upload, and wherein the requested file is one of the plurality of presented files associated with the curation request.

3. The method of claim 1 , wherein the curation suggestion includes assignment of the requested file to one of a plurality of available web pages.

4. The method of claim 1 , further comprising transmitting an authorization to upload the requested file, wherein the authorization is sent to an upload client at the user device.

5. The method of claim 1 , further comprising identifying the potential matches by determining that each of the potential matches is within a predetermined deviation from the generated file signature.

6. The method of claim 1 , further comprising comparing a hash signature of the requested file to one or more hash signatures of the media files associated with the potential matches.

7. The method of claim 6 , wherein identifying that one of the hash signatures of one of the potential matches is similar to the hash signature of the requested file based on the potential match hash signature being within a predetermined deviation from the hash signature of the requested file.

8. The method of claim 1 , wherein the visual similarity analysis includes analyzing one or more of backdrops, subjects, locations, and pixels.

9. The method of claim 1 , wherein the curation suggestion includes generating a new online media gallery for the requested file.

10. The method of claim 1 , wherein the curation suggestion includes a category for the requested file, and further comprising uploading the file in accordance with the category.

11. A system for detecting similar files, the system comprising:

memory that stores a plurality of existing file signatures, each of the existing file signatures being uniquely mapped to a corresponding media file;

a communication interface that receives a request sent over a communication network from a user device, the request concerning upload of a file; and

a processor that executes instructions stored in memory, wherein the processor executes the instructions to:

generate a file signature for the file based on metadata associated with the file, wherein the file signature is different from a hash signature;

compare the generated file signature to one or more of the existing file signatures stored in the memory;

compile a list of one or more potential matches from among the one or more existing file signatures, wherein each of the potential matches is determined to be similar to the generated file signature;

perform a visual similarity analysis between the requested file and one or more media files associated with the potential matches; and

generate a curation suggestion for the requested file based on results of the visual similarity analysis, wherein the curation suggestion includes an upload location for the requested file based on respective locations of the media files associated with the potential matches.

12. The system of claim 11 , wherein the request is a curation request associated with a plurality of files presented for upload, and wherein the requested file is one of the plurality of presented files associated with the curation request.

13. The system of claim 11 , wherein the curation suggestion includes assignment of the requested file to one of a plurality of available web pages.

14. The system of claim 11 , wherein the communication interface further transmits an authorization to upload the requested file, wherein the authorization is sent to an upload client at the user device.

15. The system of claim 11 , wherein the processor executes further instructions to identify the potential matches by determining that each of the potential matches is within a predetermined deviation from the generated file signature.

16. The system of claim 11 , wherein the processor executes further instructions to compare a hash signature of the requested file to one or more hash signatures of the media files associated with the potential matches.

17. The system of claim 16 , wherein the processor identifies that one of the hash signatures of one of the potential matches is similar to the hash signature of the requested file based on the potential match hash signature being within a predetermined deviation from the hash signature of the requested file.

18. The system of claim 11 , wherein the visual similarity analysis includes analyzing one or more of backdrops, subjects, locations, and pixels.

19. The system of claim 11 , wherein the curation suggestion includes generating a new online media gallery for the requested file.

20. The system of claim 11 , wherein the curation suggestion includes a category for the requested file, and further comprising uploading the file in accordance with the category.

21. A non-transitory computer-readable storage medium having instructions stored thereon, the instructions executable by a processor, to perform a method of detecting similar files, the method comprising:

storing a plurality of existing file signatures in memory associated with a server, each of the existing file signatures being uniquely mapped to a corresponding media file;

receiving a request sent over a communication network from a user device to the server, the request concerning upload of a file to the server;

generating a file signature for the file based on metadata associated with the file, wherein the file signature is different from a hash signature;

comparing the generated file signature to one or more of the existing file signatures stored in the memory;

compiling a list of one or more potential matches from among the one or more existing file signatures, wherein each of the potential matches is determined to be similar to the generated file signature;

performing a visual similarity analysis between the requested file and one or more media files associated with the potential matches; and

generating a curation suggestion for the requested file based on results of the visual similarity analysis, wherein the curation suggestion includes an upload location for the requested file based on respective locations of the media files associated with the potential matches.

Assignments (3)
SECURITY INTEREST Recorded Jul 30, 2025
From: AWES.ME, INC.
To: AVIDBANK
Reel/Frame 071884/0090 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 2, 2025
From: BURNS, GABRIELLE; HE, YUPING
To: SMUGMUG, INC.
Reel/Frame 069725/0061 →
CHANGE OF NAME Recorded Jan 2, 2025
From: SMUGMUG, INC.
To: AWES.ME, INC.
Reel/Frame 069814/0383 →
Continuity (5)
Continuation 17035195 · Sep 28, 2020
Continuation 15876652 · Jan 22, 2018
Provisional Application 62539963 · Aug 1, 2017
Provisional Application 62457724 · Feb 10, 2017
Related Publication 20240020270A1 · Jan 18, 2024
References Cited (39)
US 6049799A · Mangat · 2000 [cited by examiner]
US 8014634B1 · Chan · 2011 [cited by applicant]
US 8375124B1 · Schwartz · 2013 [cited by examiner]
US 8904120B1 · Killamsetti et al. · 2014 [cited by applicant]
US 9594678B1 · Karr et al. · 2017 [cited by applicant]
US 10803013B2 · Burns et al. · 2020 [cited by applicant]
US 10909304B2 · Fitzpatrick · 2021 [cited by examiner]
US 11868311B2 · Burns et al. · 2024 [cited by applicant]
US 20010037454A1 · Botti et al. · 2001 [cited by applicant]
US 20020032489A1 · Tynan et al. · 2002 [cited by applicant]
US 20030177118A1 · Moon et al. · 2003 [cited by applicant]
US 20040054906A1 · Carro · 2004 [cited by applicant]
US 20080065606A1 · Boys · 2008 [cited by examiner]
US 20090037967A1 · Barkan et al. · 2009 [cited by applicant]
US 20090327277A1 · Sanborn et al. · 2009 [cited by applicant]
US 20100124235A1 · Walsh · 2010 [cited by examiner]
US 20100250480A1 · Cherkasova et al. · 2010 [cited by applicant]
US 20110219300A1 · Jindal et al. · 2011 [cited by applicant]
US 20120054658A1 · Chuat et al. · 2012 [cited by applicant]
US 20130275429A1 · York et al. · 2013 [cited by applicant]
US 20140089273A1 · Borshack et al. · 2014 [cited by applicant]
US 20140270536A1 · Amtrup et al. · 2014 [cited by applicant]
US 20140344739A1 · Yoon · 2014 [cited by applicant]
US 20150036919A1 · Bourdev et al. · 2015 [cited by applicant]
US 20150127607A1 · Savage et al. · 2015 [cited by applicant]
US 20150154229A1 · An · 2015 [cited by examiner]
US 20160134667A1 · Suresh et al. · 2016 [cited by applicant]
US 20160253350A1 · Moulik et al. · 2016 [cited by applicant]
US 20170171294A1 · Kennedy · 2017 [cited by examiner]
US 20170193329A1 · Suman · 2017 [cited by applicant]
US 20180060356A1 · Watanabe · 2018 [cited by examiner]
US 20180232388A1 · Burns et al. · 2018 [cited by applicant]
US 20210011883A1 · Burns et al. · 2021 [cited by applicant]
US 20240020270A1 · Burns et al. · 2024 [cited by applicant]
WO WO2018148120 · 2018 [cited by applicant]
PCT Application No. PCTUS2018016772 International Search Report and Written Opinion dated Jul. 3, 2018; 12 pages. [cited by applicant]
U.S. Appl. No. 15/876,652, Office Action mailed Feb. 7, 2020. [cited by applicant]
U.S. Appl. No. 17/035,195, Office Action mailed Aug. 26, 2022. [cited by applicant]
U.S. Appl. No. 17/035,195, Final Office Action mailed Mar. 20, 2023. [cited by applicant]