IP Library Granted Patent US 11,417,082
Granted Patent B2
US 11,417,082 · App. 16/623,323 · Granted Aug 16, 2022

Image processing system

Inventors: Rui Zheng (Jersey City, NJ); Jugal Sheth (Jersey City, NJ); Huang Tang (Madison, WI); Thomas Balestri (Greenlawn, NY); Suren Kumar (Madison, WI); Anders Jonas Marcus Grimfelt (Brooklyn, NY)
Assignee: Markable, Inc.
G06V10/443G06N3/08G06Q30/0643G06V10/25G06V10/56
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,417,082
App. No.
16/623,323
Granted
Aug 16, 2022
Kind
B2
Abstract

An image processing system identifies objects within images or video segments. To identify an object within an image, the system identifies one or more regions of an image that contain an object. In some examples, a tracklet is used to track an object though a plurality of image frames within a video segment allowing more than one image frame to be used in object detection, and thereby increasing detection accuracy. Various embodiments utilize a deep learning based object detection framework and similar object search framework that models the correlations present between various object categories. The system determines a category for each object detected using a hierarchical tree of categories to learn the visual similarities between various object categories. The hierarchical tree is estimated by analyzing the errors of an object detector which does not use any correlation between the object categories.

Claims (70)

1. A computer-implemented method, comprising:

acquiring an image;

determining a set of regions of interest in the image, wherein the set of regions of interest contains a set of objects;

determining a set of potential categories for each object in the set of objects based on a hierarchical tree of object categories;

identifying, from the set of potential categories for each object in the set of objects, a category for each object in the set of objects;

updating the hierarchical tree of object categories by estimating a category hierarchy using an analysis of detection errors generated due to visual similarity between the identified categories;

extracting features of the set of objects from a database;

identifying a set of items having features that match the extracted features of the set of objects; and

providing the identified set of items to a user.

2. The computer-implemented method of claim L wherein identifying the set of items is accomplished by at least:

determining a set of attributes for the object; and

determining that attributes of the item match the set of attributes.

3. The computer-implemented method of claim 2 , wherein:

the set of attributes is determined using a convolutional neural network; and

less prevalent attributes in the set of attributes are given more weight than higher-frequency attributes.

4. The computer-implemented method of claim 1 , wherein an item in the set of items is an article of clothing, a piece of jewelry, a bag, or a set of eyeglasses.

5. The computer-implemented method of claim 1 , wherein:

an item in the set of items is identified by the user by the user providing an image of the item; and

the computer-implemented method further comprises identifying the item from the image.

6. The computer-implemented method of claim 1 , wherein the set of items is identified by identifying items that have attributes that match the attributes of the set of objects.

7. A computer system, comprising:

a processor; and

memory storing instructions that, when executed by the processor, cause the computer system to:

present a set of images on a display, each image in the set of images showing a representation of a set of objects;

acquire information indicating a selection of a particular image of the set of images;

determine a set of potential categories for each object in the set of objects in the particular image based on a hierarchical tree of object categories;

identify, from the set of potential categories for each object in the set of objects in the particular image, a category;

update the hierarchical tree of object categories using an analysis of detection errors;

identify, based at least in part on the category of each object in the set of objects, a set of attributes for each object in the set of objects in the particular image;

identify, based on the set of attributes, one or more items that match at least one object in the set of objects in the particular image; and

present the one or more items on the display.

8. The computer system of claim 7 , wherein the instructions further cause the computer system to:

acquire, from a user, an indication that identifies a particular item; and

determine the set of images by identifying look images that include a representation of an article that matches the particular item.

9. The computer system of claim 7 , wherein:

the computer system is a cell phone that includes a camera; and

the set of images includes an image acquired by the computer system using the camera.

10. The computer system of claim 7 , wherein:

the instructions further cause the computer system to acquire a look record for each image of the set of images; and

each look record describes an associated set of objects for the look record and a set of attributes for each article in the associated set of objects.

11. The computer system of claim 7 , wherein the instructions further cause the computer system to:

present an image of the set of images on a display; and

in response to a user swiping the display, presenting a different image of the set of images on the display.

12. The computer system of claim 7 , wherein the set of attributes includes a color, a texture, and a pattern.

13. The computer system of claim 7 , wherein the instructions further cause the computer system to:

acquire a video segment that includes image frames;

identify an article across a plurality of the image frames using a tracklet; and

identify attributes of the article using the tracklet.

14. The computer system of claim 7 , wherein the instructions further cause the computer system to identify an item that matches an article by instructions to:

determine an item category for the article; and

search items in the item category for items with attributes matching attributes of the article.

15. The computer system of claim 7 , wherein the set of images is determined by instructions to:

acquire information that identifies a particular person; and

add, to the set of images, images of the particular person.

16. A non-transitory computer-readable storage medium storing instructions that, as a result of being executed by a processor of a computing system cause the computing system to:

receive a request that identifies an image;

identify an object represented in the image;

determine a set of potential categories for the object in the image based on a hierarchical tree of object categories;

identify, from the set of potential categories for the object in the image, a category;

update the hierarchical tree of object categories using an analysis of detection errors;

identify, based at least in part on the category of the object, a set of characteristics for the object in the image; and

identify one or more similar objects from a database of objects based at least in part on the set of characteristics.

17. The non-transitory computer-readable storage medium of claim 16 , wherein the instructions include a script that is downloaded into a memory of a browser running on a client computer system.

18. The non-transitory computer-readable storage medium of claim 16 , wherein the object is identified by instructions to:

identify a region of the image containing an article;

determine a category of the article;

determine that the category of the article matches the category of the object; and

determine that a threshold number of attributes of the articles match attributes of the object.

19. The non-transitory computer-readable storage medium of claim 16 , further comprising instructions that, as a result of being executed by the processor of the computing system cause the computing system to present the one or more similar objects to a user via a display on a web browser.

20. The non-transitory computer-readable storage medium of claim 19 , further comprising instructions that, as a result of being executed by the processor of the computing system cause the computing system to provide a selectable link that enables the user to purchase at least one of the one or more similar objects.

Continuity (6)
Provisional Application 62645727 · Mar 20, 2018
Provisional Application 62639938 · Mar 7, 2018
Provisional Application 62639944 · Mar 7, 2018
Provisional Application 62561637 · Sep 21, 2017
Provisional Application 62521284 · Jun 16, 2017
Related Publication 20210142097A1 · May 13, 2021
Cited By (3)
US 12,361,285 US 12,462,550 US 12,561,969