IP Library Granted Patent US 11,995,121
Granted Patent B2
US 11,995,121 · App. 18/216,372 · Granted May 28, 2024

Automated image retrieval with image graph

Inventors: Maksims Volkovs (Toronto, CA); Cheng Chang (Toronto, CA); Guangwei Yu (Toronto, CA); Chundi Liu (Toronto, CA)
Assignee: The Toronto-Dominion Bank
G06F16/583G06F16/5866G06F16/9024G06F16/9032G06F16/90348G06V10/751G06V10/764G06V10/84
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,995,121
App. No.
18/216,372
Granted
May 28, 2024
Kind
B2
Abstract

An image retrieval system receives an image for which to identify relevant images from an image repository. Relevant images may be of the same environment or object and features and other characteristics. Images in the repository are represented in an image retrieval graph by a set of image nodes connected by edges to other related image nodes with edge weights representing the similarity of the nodes to each other. Based on the received image, the image traversal system identifies an image in the image retrieval graph and alternatively explores and traverses (also termed “exploits”) the image nodes with the edge weights. In the exploration step, image nodes in an exploration set are evaluated to identify connected nodes that are added to a traversal set of image nodes. In the traversal step, the relevant nodes in the traversal set are added to the exploration set and a query result set.

Claims (31)

1. A computer system for automated image retrieval, the computer system comprising:

a processor configured to execute instructions;

a non-transient computer-readable medium comprising instructions executable by the processor for:

determining similarity scores for a query image for each other image of a set of other images in the set of images, the similarity scores based on similarity of an image descriptor of the query image and an image descriptor of the other image;

connecting, in an image retrieval graph, a set of image nodes, which correspond to a subset of other images selected based on the similarity scores, to a query node corresponding to the query image with connections having an edge weight based on inliers between the connected nodes; and

identifying relevant images to the query image based on traversal of the image retrieval graph from the query node based on edge weights between nodes in the image retrieval graph.

2. The computer system of claim 1 , wherein identifying relevant images to the query image based on traversal of the image retrieval graph comprises traversal of the image retrieval graph with an explore-exploit algorithm.

3. The computer system of claim 1 , wherein the subset of other images are selected based on a ranked number of a k-nearest neighbor (k-NN) algorithm applied to the similarity scores.

4. The computer system of claim 1 , wherein the instructions are further executable for determining the edge weight for a connection between the query node and another node based on an inlier score of a Random Sample Consensus (RANSAC) algorithm applied to the query image with respect to the other image associated with the other node.

5. The computer system of claim 1 , wherein the image descriptor of the query image comprises a global description of the query image.

6. The computer system of claim 1 , wherein the instructions are further executable for determining the image descriptor of the query image by applying the query image to a computer model that outputs a compact vector representation of the query image.

7. The computer system of claim 1 , wherein the image descriptor includes one or more feature descriptors describing portions of the image.

8. The computer system of claim 1 , wherein determining the similarity scores comprises applying a vector similarity function to the image descriptor of the query image and the image descriptor of the other image.

9. A method for automated image retrieval, the method comprising:

determining similarity scores for a query image for each other image of a set of other images in the set of images, the similarity scores based on similarity of an image descriptor of the query image and an image descriptor of the other image;

connecting, in an image retrieval graph, a set of image nodes, which correspond to a subset of other images selected based on the similarity scores, to a query node corresponding to the query image with connections having an edge weight based on inliers between the connected nodes; and

identifying relevant images to the query image based on traversal of the image retrieval graph from the query node based on edge weights between nodes in the image retrieval graph.

10. The method of claim 9 , wherein identifying relevant images to the query image based on traversal of the image retrieval graph comprises traversal of the image retrieval graph with an explore-exploit algorithm.

11. The method of claim 9 , wherein the subset of other images are selected based on a ranked number of a k-nearest neighbor (k-NN) algorithm applied to the similarity scores.

12. The method of claim 9 , further comprising determining the edge weight for a connection between the query node and another node based on an inlier score of a Random Sample Consensus (RANSAC) algorithm applied to the query image with respect to the other image associated with the other node.

13. The method of claim 9 , wherein the image descriptor of the query image comprises a global description of the query image.

14. The method of claim 9 , further comprising determining the image descriptor of the query image by applying the query image to a computer model that outputs a compact vector representation of the query image.

15. The method of claim 9 , wherein the image descriptor includes one or more feature descriptors describing portions of the image.

16. The method of claim 9 , wherein determining the similarity scores comprises applying a vector similarity function to the image descriptor of the query image and the image descriptor of the other image.

17. A non-transitory computer-readable medium containing computer program code executable by a processor for the processor for:

determining similarity scores for a query image for each other image of a set of other images in the set of images, the similarity scores based on similarity of an image descriptor of the query image and an image descriptor of the other image;

connecting, in an image retrieval graph, a set of image nodes, which correspond to a subset of other images selected based on the similarity scores, to a query node corresponding to the query image with connections having an edge weight based on inliers between the connected nodes; and

identifying relevant images to the query image based on traversal of the image retrieval graph from the query node based on edge weights between nodes in the image retrieval graph.

18. The non-transitory computer-readable medium of claim 17 , wherein identifying relevant images to the query image based on traversal of the image retrieval graph comprises traversal of the image retrieval graph with an explore-exploit algorithm.

19. The non-transitory computer-readable medium of claim 17 , wherein the subset of other images are selected based on a ranked number of a k-nearest neighbor (k-NN) algorithm applied to the similarity scores.

20. The non-transitory computer-readable medium of claim 17 , wherein the computer program code is further executable for determining the edge weight for a connection between the query node and another node based on an inlier score of a Random Sample Consensus (RANSAC) algorithm applied to the query image with respect to the other image associated with the other node.

Continuity (4)
Continuation 17848122 · Jun 23, 2022
Continuation 16592006 · Oct 3, 2019
Provisional Application 62770159 · Nov 20, 2018
Related Publication 20230401252A1 · Dec 14, 2023
Cited By (28)
US 12,316,715 US 12,380,158 US 12,399,687 US 12,499,241 US 12,517,812 US 12,536,264 US 12,541,544 US 12,541,894 US 12,566,541 US 12,585,435 US 12,591,559 US 12,592,301 US 12,625,680 US 12,641,178 US 12,645,429 US 12,645,689 US 12,645,838 US 12,646,051 US 12,650,836 US 12,657,566 US 12,670,334 US 12,670,640 US 12,688,620 US 12,693,842 US 12,699,556 US 12,705,398 US 12,711,683 US 12,725,152