IP Library Granted Patent US 10,558,887
Granted Patent B2
US 10,558,887 · App. 15/831,160 · Granted Feb 11, 2020

Digital image search based on arbitrary image features

Inventors: Shagun Sodhani (Delhi, IN); Nikaash Puri (New Delhi, IN)
Assignee: Adobe Inc.
G06K9/6215G06F16/583G06F16/5838G06K9/623
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,558,887
App. No.
15/831,160
Granted
Feb 11, 2020
Kind
B2
Abstract

In implementations of digital image search based on arbitrary image features, a server computing device maintains an images database of digital images, and includes an image search system that receives a search input as a digital image depicting image features, and receives search criteria of depicted image features in the digital image. The image search system can then determine similar images to the received digital image based on similarity criterion corresponding to the search criteria. A trained image model of the image search system is applied to determine an image feature representation of the received digital image. A feature mask model of the image search system is applied to the image feature representation to determine a masked feature representation of the received digital image. The masked feature representation of the received digital image is compared to a masked feature representation of each respective database image to identify the similar images.

Claims (62)

1. A method for searching stored digital images based on arbitrary image features, the method implemented by at least one computing device of an image search system, the method comprising:

receiving a search input as a digital image depicting image features;

receiving search criteria of one or more depicted image features in the digital image;

determining similar images to the received digital image based on similarity criterion corresponding to the search criteria, the determining comprising:

applying a trained image model to determine an image feature representation of the received digital image;

applying a feature mask model to the image feature representation to determine a masked feature representation of the received digital image based on the image feature representation of the received digital image; and

comparing the masked feature representation of the received digital image to a respective masked feature representation of each stored digital image to identify the similar images to the received digital image based on the similarity criterion.

2. The method as recited in claim 1 , further comprising:

returning the similar images as one or more of the stored digital images having similar representations of the masked feature representation for the received digital image and the masked feature representation of each respective stored digital image.

3. The method as recited in claim 2 , further comprising:

identifying one or more image features depicted in a returned similar image as user feedback of the image features contributing to the identifying the similar images to the received digital image.

4. The method as recited in claim 1 , wherein:

the applying the trained image model of the image search system includes to determine the image feature representation as an image feature vector of the received digital image, the image feature vector representing the depicted image features in the received digital image;

the applying the feature mask model of the image search system to the image feature vector includes to determine the masked feature representation as a masked feature vector for the received digital image, the masked feature vector representing the similarity criterion of the depicted image features in the received digital image; and

the comparing comprises determining a Euclidian distance between the received digital image and each of the stored digital images, the Euclidian distances determined based on a comparison of the masked feature vector for the received digital image to respective masked feature vectors of the stored digital images, and the Euclidian distances identifying the similar images to the received digital image based on the similarity criterion.

5. The method as recited in claim 4 , further comprising:

returning the similar images as one or more of the stored digital images having closest Euclidian distances between the masked feature vector for the received digital image and the respective masked feature vectors of the stored digital images.

6. The method as recited in claim 1 , wherein:

each of the similarity criterion is represented by a similarity criterion mask; and

a combination of two or more similarity criterion masks represent the similarity criterion corresponding to two or more of the search criteria for the depicted image features in the received digital image.

7. The method as recited in claim 6 , further comprising:

composing together one or more similarity criterion masks that each correspond to the search criteria, the composed one or more similarity criterion masks usable for the determining the similar images based on a combination of the similarity criterion.

8. The method as recited in claim 1 , further comprising:

determining that the search criteria does not have a similarity criterion mask corresponding to the similarity criterion in the image search system; and

determining the similarity criterion mask corresponding to the search criteria.

9. The method as recited in claim 1 , further comprising:

determining suggested search criteria for the received digital image based on the image feature representation that represents the depicted image features in the received digital image; and

providing the suggested search criteria to a user for selection as the search criteria and basis for the determining the similar images.

10. A system for searching stored digital images based on arbitrary image features, the system comprising:

means for determining similar images to a received digital image based on similarity criterion corresponding to search criteria, the means for determining comprising:

applying a trained image model to determine an image feature representation of the received digital image;

applying a feature mask model to the image feature representation to determine a masked feature representation of the received digital image based on the image feature representation of the received digital image, the masked feature representation identifying depicted image features in the received digital image; and

means for comparing the masked feature representation of the received digital image to a respective masked feature representation of each stored digital image to identify the similar images to the received digital image based on the similarity criterion.

11. The system as recited in claim 10 , further comprising:

means for returning the similar images as one or more of the stored digital images having similar representations of the masked feature representation for the received digital image and the masked feature representation of each respective stored digital image.

12. A server computing device implemented to search stored digital images based on arbitrary image features, the server computing device comprising:

a memory to maintain an images database of the stored digital images;

a processor system configured to execute an image search system implemented to perform operations comprising to:

receive a search input as a digital image depicting image features;

receive search criteria of one or more depicted image features in the digital image;

determine similar images to the received digital image based on similarity criterion corresponding to the search criteria, the operation to determine the similar images comprising to:

apply a trained image model of the image search system to determine an image feature representation of the received digital image;

apply a feature mask model of the image search system to the image feature representation to determine a masked feature representation of the received digital image; and

compare the masked feature representation of the received digital image to a respective masked feature representation of each stored digital image to identify the similar images to the received digital image based on the similarity criterion.

13. The server computing device as recited in claim 12 , wherein:

the image feature representation is an image feature vector generated by the trained image model and represents the depicted image features in the received digital image; and

the masked feature representation is a masked feature vector generated by the feature mask model and represents the similarity criterion of the depicted image features in the digital image.

14. The server computing device as recited in claim 12 , wherein:

the operation to determine the similar images comprise to determine a Euclidian distance between the received digital image and each of the stored digital images, the Euclidian distances identifying the similar images to the received digital image based on the similarity criterion; and

the Euclidian distances are determined based on a comparison of the masked feature vector for the received digital image to a masked feature vector of each respective stored digital image.

15. The server computing device as recited in claim 14 , wherein the image search system is implemented to return the similar images as one or more of the stored digital images having closest Euclidian distances between the masked feature vector for the received digital image and the masked feature of each respective stored digital image.

16. The server computing device as recited in claim 15 , wherein the image search system is implemented to identify one or more image features depicted in a returned similar image as user feedback of the image features contributing to the determination of the similar image to the received digital image.

17. The server computing device as recited in claim 12 , wherein:

each of the similarity criterion is represented by a similarity criterion mask; and

a combination of two or more similarity criterion masks represent the similarity criterion corresponding to two or more of the search criteria for the depicted image features in the received digital image.

18. The server computing device as recited in claim 12 , wherein the image search system is implemented to compose together one or more similarity criterion masks that each correspond to the search criteria, the composed one or more similarity criterion masks usable to determine the similar images based on a combination of the similarity criterion.

19. The server computing device as recited in claim 12 , wherein the image search system is implemented to:

determine that the search criteria does not have a similarity criterion mask corresponding to the similarity criterion in the image search system; and

apply the feature mask model of the image search system to determine the similarity criterion mask corresponding to the search criteria.

20. The server computing device as recited in claim 12 , wherein the image search system is implemented to:

determine suggested search criteria for the received digital image based on the image feature representation that represents the depicted image features in the received digital image; and

provide the suggested search criteria to a user for selection as the search criteria and basis for the determination of the similar images.

Assignments (2)
CHANGE OF NAME Recorded Jan 21, 2019
From: ADOBE SYSTEMS INCORPORATED
To: ADOBE INC.
Reel/Frame 048103/0226 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 12, 2017
From: SODHANI, SHAGUN; PURI, NIKAASH
To: ADOBE SYSTEMS INCORPORATED
Reel/Frame 044367/0789 →
Continuity (1)
Related Publication 20190171906A1 · Jun 6, 2019