IP Library Granted Patent US 9,092,526
Granted Patent B1
US 9,092,526 · App. 13/769,293 · Granted Jul 28, 2015

System and method for search with the aid of images associated with product categories

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 9,092,526
App. No.
13/769,293
Granted
Jul 28, 2015
Kind
B1
Abstract

The present application describes performing a user initiated search query comprising receiving user input comprising description details of at least one desired object, retrieving a plurality of objects from a database sharing one or more of the description details of the user input, retrieving an image of the at least one desired object based on one or more of the plurality of objects, generating a contour of the image and comparing the generated contour with other related contours of other images stored in the database, displaying all of the available contours of all of the images that match the generated contour, receiving a selection of one of the available contours from the user and performing the search query based on the user selected contour.

Claims (60)

1. A method of matching an image provided as user input, the method comprising:

receiving an image as user input;

creating a contour of the image via a processor;

retrieving at least one additional contour of at least one additional image stored in a database;

comparing the created contour of the image to the at least one additional contour of the at least one additional image stored in the database;

determining whether the created contour matches the at least one additional contour of the at least one additional image;

setting a rotation angle used to rotate the at least one additional contour;

rotating the at least one additional contour based on the rotation angle;

creating a closeness matching factor representing a numerical measure of differences between the created contour and the at least one additional contour based on the comparison; and

extracting a new contour from the rotated at least one additional contour.

2. The method of claim 1 ,

wherein extracting the new contour from the rotated at least one additional contour is performed based on pixels forming an edge portion of the new image, the extracting being further performed by:

transforming the new contour and the at least one additional contour into binary images; and

resizing the new contour to match a size of the at least one additional contour.

3. The method of claim 2 , further comprising:

calculating a distance transform function of the transformed binary images of the new contour and the at least one additional contour.

4. The method of claim 3 , wherein the distance function is a sum of absolute values of coordinate differences for two pixels, one pixel being part of the new contour and the other pixel being part of the at least one additional contour.

5. The method of claim 3 , wherein the distance function is a maximum of the absolute differences for x and y coordinates for two pixels, one pixel being part of the new contour and the other pixel being part of the at least one additional contour.

6. The method of claim 1 , further comprising:

retrieving a plurality of images from the database that are related to the user's input image;

displaying a plurality of images to the user retrieved from the database if the comparing of the created contour of the image to the at least one additional contour of the at least one additional image stored in the database fails to provide a match.

7. An apparatus configured to match an image provided as user input, the apparatus comprising:

a receiver configured to receive an image as user input; and

a processor configured to

create a contour of the image,

retrieve at least one additional contour of at least one additional image stored in a database,

compare the created contour of the image to the at least one additional contour of the at least one additional image stored in the database,

determine whether the created contour matches the at least one additional contour of the at least one additional image,

set a rotation angle used to rotate the at least one additional contour,

rotate the at least one additional contour based on the rotation angle,

create a closeness matching factor representing a numerical measure of differences between the created contour and the at least one additional contour based on the comparison; and

extract a new contour from the rotated at least one additional contour.

8. The apparatus of claim 7 , wherein

the extraction of the new contour from the rotated at least one additional contour is performed based on pixels forming an edge portion of the new image, the extraction being further performed by:

transforming the new contour and the at least one additional contour into binary images, and

resizing the new contour to match a size of the at least one additional contour.

9. The apparatus of claim 8 , wherein the processor is further configured to calculate a distance transform function of the transformed binary images of the new contour and the at least one additional contour.

10. The apparatus of claim 9 , wherein the distance function is a sum of absolute values of coordinate differences for two pixels, one pixel being part of the new contour and the other pixel being part of the at least one additional contour.

11. The apparatus of claim 9 , wherein the distance function is a maximum of the absolute differences for x and y coordinates for two pixels, one pixel being part of the new contour and the other pixel being part of the at least one additional contour.

12. The apparatus of claim 7 , wherein the processor is further configured to

retrieve a plurality of images from the database that are related to the user's input image, and

display a plurality of images to the user retrieved from the database if the comparing of the created contour of the image to the at least one additional contour of the at least one additional image stored in the database fails to provide a match.

13. A non-transitory computer readable storage medium configured to store instructions that when executed causes a processor to perform matching an image provided as user input, the processor being further configured to perform:

receiving an image as user input;

creating a contour of the image;

retrieving at least one additional contour of at least one additional image stored in a database;

comparing the created contour of the image to the at least one additional contour of the at least one additional image stored in the database;

determining whether the created contour matches the at least one additional contour of the at least one additional image;

setting a rotation angle used to rotate the at least one additional contour;

rotating the at least one additional contour based on the rotation angle;

creating a closeness matching factor representing a numerical measure of differences between the created contour and the at least one additional contour based on the comparison; and

extracting a new contour from the rotated at least one additional contour.

14. The non-transitory computer readable storage medium of claim 13 ,

wherein extracting the new contour from the rotated at least one additional contour is performed based on pixels forming an edge portion of the new image, the extracting being further performed by:

transforming the new contour and the at least one additional contour into binary images; and

resizing the new contour to match a size of the at least one additional contour.

15. The non-transitory computer readable storage medium of claim 14 , further comprising:

calculating a distance transform function of the transformed binary images of the new contour and the at least one additional contour.

16. The non-transitory computer readable storage medium of claim 15 , wherein the distance function is a sum of absolute values of coordinate differences for two pixels, one pixel being part of the new contour and the other pixel being part of the at least one additional contour.

17. The non-transitory computer readable storage medium of claim 16 , wherein the distance function is a maximum of the absolute differences for x and y coordinates for two pixels, one pixel being part of the new contour and the other pixel being part of the at least one additional contour.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE EFFECTIVE DATE OF THE PATENT ASSIGNMENT AGREEMENT DATED NOVEMBER 30, 2021 PREVIOUSLY RECORDED AT REEL: 058426 FRAME: 0791. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 14, 2022
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 058736/0436 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 9, 2021
From: OPEN INVENTION NETWORK LLC
To: INTERNATIONAL BUSINESS MACHINES CORPORATION
Reel/Frame 058426/0791 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 22, 2021
From: KHAFIZOV, FARID; KHAFIZOVA, MARGARITA
To: OPEN INVENTION NETWORK LLC
Reel/Frame 057248/0310 →