10528613

Method and Apparatus for Performing a Parallel Search Operation

PublishedJanuary 7, 2020
Assigneenot available in USPTO data we have
Technical Abstract

Patent Claims
33 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A method for improving efficiency of an image search, the method comprising: receiving, by a first processor, one or more images; sending, by the first processor, a query to a plurality of memory modules, wherein the query is for a search of memory for a matching image to the one or more images; performing, by a processor-in-memory (PIM)of each respective memory module from the plurality of memory modules, a search of images stored in a memory of the respective memory module, in response to the query received; sending, by the PIM of each respective memory model, the matching image obtained from the search to the first processor; and performing, by the first processor, a comparison of the matching image received from each of the plurality of memory modules to the one or more images, wherein the PIM of each respective memory module is configured to perform the search of images by: processing a global descriptor of the one or more images to obtain one or more similarity measurements; and comparing local descriptors of one or more images whose similarity measurements are above a threshold to the images stored in the memory of the respective memory module to obtain the matching images, wherein the images stored in each respective memory module of the plurality of memory modules are different.

2

2. The method of claim 1 , further comprising uploading and classifying the images stored in the memory of the at least one memory module.

3

3. The method of claim 2 wherein the images are stored on the plurality of memory modules based on the classifying.

4

4. The method of claim 2 wherein the images are stored on a same memory module when the images have a same classification.

5

5. The method of claim 1 wherein the search of images performed by the at least one memory module includes performing a global descriptor computation, a local descriptor computation, and a verification determination.

6

6. The method of claim 1 wherein the comparison of the comparison includes ranking the matching images received from the at least one memory module.

7

7. The method of claim 6 , further comprising constructing, by the first processor, a final rank of the matching images received from multiple memory modules.

8

8. A processor for improving efficiency of an image search, the processor comprising: circuitry configured to send a query for a matching image to a plurality of memory modules, wherein the query includes one or more search images to be matched; circuitry configured to receive search results from the plurality of memory modules, wherein the search results are received in response to the query; and circuitry configured to perform a comparison of the search results received from the plurality of memory modules, wherein the search results are generated by a processor in memory (PIM) of each of the plurality of memory modules performing a search of a respective memory module, wherein the search includes: processing a global descriptor of the one or more search images to obtain one or more similarity measurements; and comparing local descriptors of one or more search images whose similarity measurements are above a threshold to images stored in the memory of the respective memory module to obtain the matching image, wherein the images stored in each respective memory module of the plurality of memory modules are different.

9

9. The processor of claim 8 , further comprising circuitry configured to upload and classify the images stored in the memory of the plurality of memory modules.

10

10. The processor of claim 8 , further comprising circuitry configured to rank the search results received from the plurality of memory modules.

11

11. The processor of claim 10 , further comprising circuitry configured to construct a final rank of the search results.

12

12. A system for improving efficiency of an image search, the system comprising: a plurality of memory modules, where each of the plurality of memory modules includes a memory and a processor-in-memory (PIM); a processor that is communicatively coupled to the plurality of memory modules, wherein the processor comprises: circuitry configured to receive one or more search images; circuitry configured to send a query to the plurality of memory modules, wherein the query includes the one or more search images; circuitry configured to receive search results from the plurality of memory modules; and circuitry configured to perform a comparison of the search results received from the plurality of memory modules; and wherein the PIM of each respective memory module is configured to perform the search by: processing a global descriptor of the one or more search images to obtain one or more similarity measurements; and comparing local descriptors of one or more search images whose similarity measurements are above a threshold to images stored in the respective memory module to obtain the search results, wherein the images stored in each respective memory module of the plurality of memory modules are different.

13

13. The system of claim 12 , wherein the processor further comprises circuitry configured to upload and classify the images stored in the memory of the plurality of memory modules.

14

14. The system of claim 13 wherein the images are stored on the plurality of memory modules based on a classification of the images stored in the memory of the plurality of memory modules.

15

15. The system of claim 13 wherein the images stored on a same memory module when the images have a same classification .

16

16. The system of claim 12 wherein the search of images performed by the at least one memory module includes performing a global descriptor computation, a local descriptor computation, and a verification determination.

17

17. The system of claim 12 , wherein the processor further comprises circuitry configured to rank the search results received from the plurality of memory modules.

18

18. The system of claim 17 , wherein the processor further comprises circuitry configured to construct a final rank of the search results received from the plurality of memory modules.

19

19. A method implemented for improving efficiency of an image search that is in a processor-in-memory (PIM) system having a first processor and a plurality of memory modules, the method comprising: uploading and classifying one or more images by their image data; partitioning and storing the images on the plurality of memory modules based upon the classification of the image data; receiving one or more query images by the first processor; sending, by the first processor, a query to the plurality of memory modules, wherein the query includes the one or more query images; performing, by a PIM of each respective memory module of the plurality of memory modules, a search of images stored in a memory of the respective memory module, wherein the search of images is performed in response to the query; sending, by each memory module of the plurality of memory modules, search results to the first processor; and performing, by the first processor, a comparison of the search results from the plurality of memory modules, wherein the search of images comprises: processing a global descriptor of the one or more query images to obtain one or more similarity measurements; and comparing local descriptors of one or more query images whose similarity measurements are above a threshold to images stored in the respective memory module to obtain the search results.

20

20. The method of claim 19 wherein the images are stored on a same memory module when the images have a same classification.

21

21. The method of claim 19 wherein the images from a same class are distributed among the plurality of memory modules.

22

22. The method of claim 21 wherein the images from the same class are distributed among adjacent memory modules.

23

23. The method of claim 19 wherein the search of images performed by the plurality of memory modules includes performing a global descriptor computation, a local descriptor computation, and a verification determination.

24

24. The method of claim 23 wherein the computing of the global descriptor includes comparing the one or more query images to the images stored in the plurality of memory modules categorized as being in a same class as the one or more query images.

25

25. The method of claim 24 , further comprising computing the similarity measurement and comparing the similarity measurement to a threshold.

26

26. The method of claim 25 wherein if the similarity measurement exceeds the threshold, the local descriptor is computed.

27

27. A non-transitory computer-readable medium having instructions recorded thereon that, when executed by a computing device, cause the computing device to perform operations to improve efficiency of an image search, the operations comprising: receiving one or more query images; sending a query to a plurality of memory modules, wherein the query includes the one or more query images; performing, by a processor in memory (PIM) of each of the plurality memory modules, a search of images stored in a respective memory of a respective memory module, wherein the search is performed in response to the query; performing a comparison of search received results received from the plurality of memory modules, wherein the search of images is performed by each PIM of the plurality of memory modules: processing a global descriptor of the one or more query images to obtain one or more similarity measurements; and comparing local descriptors of one or more query images whose similarity measurements are above a threshold to images stored in the memory of the respective memory module to obtain the search results.

28

28. The non-transitory computer-readable medium of claim 27 , further comprising uploading and classifying the images stored in the plurality memory modules.

29

29. The non-transitory computer-readable medium of claim 28 wherein the images from a same class are stored on the plurality of memory modules.

30

30. The non-transitory computer-readable medium of claim 28 wherein the images from a same class are stored on a same memory module.

31

31. The non-transitory computer-readable medium of claim 27 wherein the search of images includes performing a global descriptor computation, a local descriptor computation, and a verification determination.

32

32. The non-transitory computer-readable medium of claim 27 wherein the comparison includes ranking the search results received from the plurality of memory modules.

33

33. The non-transitory computer-readable medium of claim 32 , further comprising constructing a final rank of the search results.

Patent Metadata

Filing Date

Unknown

Publication Date

January 7, 2020

Inventors

Dong Ping Zhang

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “METHOD AND APPARATUS FOR PERFORMING A PARALLEL SEARCH OPERATION” (10528613). https://patentable.app/patents/10528613

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.