Image-based indexing in a network-based marketplace
First Claim
1. A computer system comprising:
- a receiving module configured to receive a listing query related to a network-based marketplace which includes an item listing database, the listing query including a query image;
a processing module configured to process the query image, using one or more processors, to generate a plurality of index sets image fingerprints by performing operations comprising;
dividing the query image into a grid of sub-portions, each sub-portion comprising a respectively corresponding pixel set having multiple image pixels,assigning to each sub-portion an index value based on attribute values of the corresponding pixel set, to generate a grid of index values, andcompiling the plurality of image fingerprints from the grid of index values, each image fingerprint comprising a set of index values corresponding to a respective grid portion selected from the grid of index values, the grid portions for the plurality of image fingerprints being identical in shape, with at least some of the grid portion overlapping;
a comparison module configured, for separately comparing each of the plurality of image fingerprints for the query image to pre-compiled image fingerprints in an index database, each pre-compiled image fingerprint being associated with at least one listing image corresponding to an associated item listing and forming part of a database of listing images, each listing image being associated with multiple pre-compiled image fingerprints in the index database,ranking the listing images according to the number of matching image fingerprints between, on the one hand, the plurality of image fingerprints generated in respect of the query image, and, on the other hand, the image fingerprints associated in the index database with the respective listing images, andbased at least in part on the ranking, identifying at least one image result from the database of listing images; and
a result module configured to provide at least one result item listing, the at least one result item listing being based on a respective result image.
2 Assignments
0 Petitions
Accused Products
Abstract
A method and system to index and search item listings in a network-based publication system, such as a network-based marketplace. For example, a listing query may be received from a user, the listing query including a query image. The query image may then be processed to generate a plurality of index sets. Each index set of the plurality of index sets may correspond to a respective portion of the query image and may comprise a set of index values. Each index value of the set of index values may be indicative of an image attribute, such as light intensity, for a respective sub-portion of the corresponding portion of the query image. At least one result image from a database of listing images may be identified by comparing the plurality of index sets for the query image to pre-compiled index sets in an index database. Each pre-compiled index set may be associated with at least one listing image which, in turn, may be associated with an item listing on a network-based marketplace.
176 Citations
24 Claims
-
1. A computer system comprising:
-
a receiving module configured to receive a listing query related to a network-based marketplace which includes an item listing database, the listing query including a query image; a processing module configured to process the query image, using one or more processors, to generate a plurality of index sets image fingerprints by performing operations comprising; dividing the query image into a grid of sub-portions, each sub-portion comprising a respectively corresponding pixel set having multiple image pixels, assigning to each sub-portion an index value based on attribute values of the corresponding pixel set, to generate a grid of index values, and compiling the plurality of image fingerprints from the grid of index values, each image fingerprint comprising a set of index values corresponding to a respective grid portion selected from the grid of index values, the grid portions for the plurality of image fingerprints being identical in shape, with at least some of the grid portion overlapping; a comparison module configured, for separately comparing each of the plurality of image fingerprints for the query image to pre-compiled image fingerprints in an index database, each pre-compiled image fingerprint being associated with at least one listing image corresponding to an associated item listing and forming part of a database of listing images, each listing image being associated with multiple pre-compiled image fingerprints in the index database, ranking the listing images according to the number of matching image fingerprints between, on the one hand, the plurality of image fingerprints generated in respect of the query image, and, on the other hand, the image fingerprints associated in the index database with the respective listing images, and based at least in part on the ranking, identifying at least one image result from the database of listing images; and a result module configured to provide at least one result item listing, the at least one result item listing being based on a respective result image. - View Dependent Claims (2, 3, 4, 5)
-
-
6. A computer-implemented method comprising:
-
receiving a listing query related to a publication system which includes an item listing database, the listing query including a query image; processing the query image to generate a plurality of image fingerprints, the processing comprising; dividing the query image into a grid of sub-portions, each sub-portion comprising a respectively corresponding pixel set having multiple image pixels, assigning to each sub-portion an index value based on attribute values of the corresponding pixel set, to generate a grid of index values, and compiling the plurality of image fingerprints from the grid of index values, each image fingerprint comprising a set of index values corresponding to a respective grid portion selected from the grid of index values, the grid portions for the plurality of image fingerprints being identical in shape, with at least some of the grid portion overlapping; separately comparing each of the plurality of image fingerprints for the query image to pre-compiled image fingerprints in an index database, each pre-compiled image fingerprint being associated with at least one listing image corresponding to an associated item listing and forming part of a database of listing images, each listing image being associated with multiple pre-compiled image fingerprints in the index database; ranking the listing images according to the number of matching image fingerprints between, on the one hand, the plurality of image fingerprints generated in respect of the query image, and, on the other hand, the image fingerprints associated in the index database with the respective listing images; based at least in part on the ranking, identifying at least one image result from the database of listing images; and providing at least one result item listing, the at least one result item listing being based on a respective result image. - View Dependent Claims (7, 8, 9, 10, 11)
-
-
12. A non-transitory computer-readable medium comprising instruction data in electronic form which, when implemented by one or more machines, cause the one or more machines to perform the following operations:
-
receiving a listing query related to a publication system which includes an item listing database, the listing query including a query image; processing the query image to generate a plurality of image fingerprints, the processing comprising; dividing the query image into a grid of sub-portions, each sub-portion comprising a respectively corresponding pixel set having multiple image pixels, assigning to each sub-portion an index value based on attribute values of the corresponding pixel set, to generate a grid of index values, and compiling the plurality of image fingerprints from the grid of index values, each image fingerprint comprising a set of index values corresponding to a respective grid portion selected from the grid of index values, the grid portions for the plurality of image fingerprints being identical in shape, with at least some of the grid portion overlapping; separately comparing each of the plurality of image fingerprints for the query image to pre-compiled image fingerprints in an index database, each pre-compiled image fingerprint being associated with at least one listing image corresponding to an associated item listing and forming part of a database of listing images, each listing image being associated with multiple pre-compiled image fingerprints in the index database; ranking the listing images according to the number of matching image fingerprints between, on the one hand, the plurality of image fingerprints generated in respect of the query image, and, on the other hand, the image fingerprints associated in the index database with the respective listing images; based at least in part on the ranking, identifying at least one image result from the database of listing images; and providing at least one result item listing, the at least one result item listing being based on a respective result image.
-
-
13. A computer system comprising:
-
means for receiving a listing query related to a network-based publication system which includes an item listing database, the listing query including a query image; means for processing the query image, using one or more processors, to generate a plurality of image fingerprints, the processing comprising; dividing the query image into a grid of sub-portions, each sub-portion comprising a respectively corresponding pixel set having multiple image pixels, assigning to each sub-portion an index value based on attribute values of the corresponding pixel set, to generate a grid of index values, and compiling the plurality of image fingerprints from the grid of index values, each image fingerprint comprising a set of index values corresponding to a respective grid portion selected from the grid of index values, the grid portions for the plurality of image fingerprints being identical in shape, with at least some of the grid portion overlapping; means for separately comparing each of the plurality of image fingerprints for the query image to pre-compiled image fingerprints in an index database, each pre-compiled image fingerprint being associated with at least one listing image corresponding to an associated item listing and forming part of a database of listing images, each listing image being associated with multiple pre-compiled image fingerprints in the index database; means for ranking the listing images according to the number of matching image fingerprints between, on the one hand, the plurality of image fingerprints generated in respect of the query image, and, on the other hand, the image fingerprints associated in the index database with the respective listing images; means for, based at least in part on the ranking, identifying at least one image result from the database of listing images; and means for providing at least one result item listing, the at least one result item listing being based on a respective result image.
-
-
14. A computer system comprising:
-
a receiving module to receive a listing image associated with an item listing on a network-based marketplace; a processing module to process the listing image, using one or more processors, to generate a plurality of image fingerprints, the processing comprising; dividing the listing image into a grid of sub-portions, each sub-portion comprising a plurality of pixels; assigning to each sub-portion an index value based on attribute values of the sub-portion'"'"'s pixels, to generate a grid of index values; and compiling the plurality of image fingerprints from the grid of index values, each image fingerprint of the plurality of image fingerprints corresponding to a respective portion of the listing image, and comprising a set of index values, from the grid of index values and corresponding to respective set of the sub-portions within the corresponding portion of the listing image, wherein each portion of the listing image is a respective one of multiple identically shaped sub-divisions of the listing image, the multiple subdivision including two or more overlapping sub-divisions; and an index database comprising a plurality of separate and unique database entries that are linked with the listing image, the plurality of database entries corresponding to the plurality of image fingerprints. - View Dependent Claims (15, 16, 17, 18, 19, 20)
-
-
21. A computer-implemented method comprising:
receiving a listing image associated with an item listing on a network-based publication system; processing the listing image to generate a plurality of image fingerprints, the processing comprising; dividing the listing image into a grid of sub-portions, each sub-portion comprising a plurality of pixels, assigning to each sub-portion an index value based on attribute values of the sub-portion'"'"'s pixels, to generate a grid of index values, and compiling the plurality of image fingerprints from the grid of index values, each image fingerprint of the plurality of image fingerprints corresponding to a respective portion of the listing image and comprising a set of index values from the grid of index values and corresponding to a respective set of the sub-portions within the corresponding portion of the listing image, wherein each portion of the listing image is a respective one of multiple identically shaped sub-divisions of the listing image, the multiple subdivision including two or more overlapping sub-divisions; and linking a plurality of separate and unique database entries in an index database with the listing image, the plurality of database entries corresponding to the plurality of image fingerprints. - View Dependent Claims (22)
-
23. A non-transitory computer-readable medium comprising instruction data in electronic form which, when implemented by one or more machines, cause the one or more machines to perform the following operations:
-
receiving a listing image associated with an item listing on a network-based publication system; processing the listing image to generate a plurality of image fingerprints, the processing comprising; dividing the listing image into a grid of sub-portions, each sub-portion comprising a plurality of pixels, assigning to each sub-portion an index value based on attribute values of the sub-portion'"'"'s pixels, to generate a grid of index values, and compiling the plurality of image fingerprints from the grid of index values, each image fingerprint of the plurality of image fingerprints corresponding to a respective portion of the listing image and comprising a set of index values from the grid of index values and corresponding to a respective set of the sub-portions within the corresponding portion of the listing image, wherein each portion of the listing image is a respective one of multiple identically shaped sub-divisions of the listing image, the multiple subdivision including two or more overlapping sub-divisions; and linking a plurality of separate and unique database entries in an index database with the listing image, the plurality of database entries corresponding to the plurality of image fingerprints.
-
-
24. A computer system comprising:
-
means for receiving a listing image associated with an item listing on a network-based publication system; means for processing the listing image, using one or more processors, the processing comprising; dividing the listing image into a grid of sub-portions, each sub-portion comprising a plurality of pixels, assigning to each sub-portion an index value based on attribute values of the sub-portion'"'"'s pixels, to generate a grid of index values, and compiling the plurality of image fingerprints from the grid of index values, each image fingerprint of the plurality of image fingerprints corresponding to a respective portion of the listing image and comprising a set of index values from the grid of index values and corresponding to a respective set of the sub-portions within the corresponding portion of the listing image, wherein each portion of the listing image is a respective one of multiple identically shaped sub-divisions of the listing image, the multiple subdivision including two or more overlapping sub-divisions; and means for linking a plurality of separate and unique database entries in an index database with the listing image, the plurality of database entries corresponding to the plurality of image fingerprints.
-
Specification