Fast joint template machining

US10346716B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10346716-B2
Application numberUS-201715706610-A
CountryUS
Kind codeB2
Filing dateSep 15, 2017
Priority dateSep 15, 2017
Publication dateJul 9, 2019
Grant dateJul 9, 2019

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

An efficient method and apparatus for identifying one or more targets in an image is presented. A matching operation is performed that compares the image against multiple templates jointly. The multiple templates are sorted into multiple clusters. The joint template matching operation achieves an improvement in performance by focusing on a subset of the clusters. For each grid location, clusters whose reference templates have low matching scores with the image content of the grid location are bypassed or excluded from the matching operation. This saving in computation load is made possible by the clustering of the templates, which can be performed offline and does not affect the performance of the joint template matching operation.

First claim

Opening claim text (preview).

What is claimed is: 1. A computer-implemented method comprising: receiving an image; receiving a plurality of templates that are sorted into a plurality of clusters of templates, each cluster associated with a reference template, wherein each template of the cluster differs with the reference template of the cluster by less than a radius of the cluster; identifying a plurality of grid locations in the received image; and for each grid location of the image: comparing the reference template of each of the plurality of clusters with the image content of the grid location to produce a matching score for the reference template; selecting one or more clusters based on the matching scores of the reference templates of the plurality of clusters for the grid location; and comparing each template of each selected cluster with the image content of the grid location to determine whether the template matches the image content of the grid location; and reporting information based on the comparison between the plurality of templates and the image content of the plurality of grid locations for each grid location of the image and for each cluster, identifying a best case score and a worst case score for the cluster, wherein the best case score of a cluster is computed by subtracting the cluster's radius from a distance value of the cluster's reference template for the grid location and the best case score of the cluster is computed by adding the cluster's radius with the distance value of the clusters reference template for the grid location. 2. The computer-implemented method of claim 1 , further comprising: for each grid location of the image and for each cluster, identifying a best case score and a worst case score for the cluster based on the matching score of the cluster's reference template for the grid location and the radius of the cluster. 3. The computer-implemented method of claim 2 , wherein selecting one or more clusters based on the matching scores of the reference templates for the grid location comprises identifying a cluster to bypass based on the best case scores and worst case scores of the clusters, respectively, wherein the image content of the grid location is not compared with the templates of the identified cluster. 4. The computer-implemented method of claim 3 , wherein a cluster is identified as a bypass cluster for the grid location when the cluster's best case score is worse than the worst score of another cluster for the grid location. 5. The computer-implemented method of claim 1 , wherein the templates of each cluster are identified for recognizing a same category of targets. 6. The computer-implemented method of claim 1 , further comprising receiving clustering information identifying each cluster, the templates of each cluster, the reference template of each cluster, and the radius of each cluster. 7. A computing device comprising: a communications circuit configured to receive a plurality of templates that are sorted into a plurality of clusters of templates, each cluster associated with a reference template, wherein each template of the cluster differs with the reference template of the cluster by less than a radius of the cluster; a set of processing units; a storage device storing a set of instructions, wherein an execution of the set of instructions by the set of processing units configures the computing device to perform acts, comprising: receiving an image comprising a plurality of, grid locations; for each grid location of the image: comparing the reference template of each of the plurality of clusters with the image content of the grid location to produce a matching score for the reference template; selecting one or more clusters based on the matching scores of the reference templates of the plurality of clusters for the grid location; and comparing each template of each selected cluster with the image content of the grid location to determine whether the template matches the image content of the grid location; and reporting information based on the comparisons between the plurality of templates and the image content of the plurality of grid locations for each grid location of the image and for each cluster, identifying a best case score and a worst case score for the cluster, wherein the best case score of a cluster is computed by subtracting the cluster's radius from a distance value of the cluster's reference template for the grid location and the best case score of the cluster is computed by adding the cluster's radius with the distance value of the clusters reference template for the grid location. 8. The computing device of claim 7 , wherein execution of the set of instructions further configures the computing device to perform acts comprising: for each grid location of the image and for each cluster, identifying a best case score and a worst case score for the cluster based on the matching score of the cluster's reference template for the grid location and the radius of the cluster. 9. The computing device method of claim 8 , wherein selecting one or more clusters based on the matching scores of the reference templates for the grid location comprises identifying a cluster to bypass based on the best case scores and worst case scores of the clusters, wherein the image content of the grid location is not compared with the templates of the identified cluster. 10. The computing device of claim 9 , wherein a cluster is identified as a bypass cluster for the grid location when the cluster's best case score is worse than the worst score of another cluster for the grid location. 11. The computing device of claim 7 , wherein the templates of each cluster are identified for recognizing a same category of targets. 12. The computing device of claim 7 , wherein the communications circuit is further configured to receive clustering information identifying each cluster, the templates of each cluster, the reference template of each cluster, and the radius of each cluster. 13. A computer program product comprising: one or more non-transitory computer-readable storage device and program instructions stored on at least one of the one or more non-transitory storage devices, the program instructions executable by a processor, the program instructions comprising sets of instructions for: receiving an image; receiving a plurality of templates that are sorted into a plurality of clusters of templates, each cluster associated with a reference template, wherein each template of the cluster differs with the reference template of the cluster by less than a radius of the cluster; identifying a plurality of grid locations in the received image; and for each grid location of the image: comparing the reference template of each of the plurality of clusters with the image content of the grid location to produce a matching score for the reference template, selecting one or more clusters based on the matching scores of the reference templates of the plurality of clusters for the grid location; and comparing each template of each selected cluster with the image content of the grid location to determine whether the template matches the image content of the grid location; and reporting information based on the comparison between the plurality of templates and the image content of the plurality of grid locations for each grid location of the image and for each cluster, identifying a best case score and a worst case score for the cluster, wherein the best case score of a cluster is computed by subtracting the cluster's radius from a distance value of the cluster's reference template for the grid location and the best case sc

Assignees

Inventors

Classifications

  • Non-hierarchical techniques, e.g. based on statistics of modelling distributions · CPC title

  • Determining representative reference patterns, e.g. averaging or distorting patterns; Generating dictionaries, e.g. user dictionaries · CPC title

  • Classification techniques · CPC title

  • G06V40/50Primary

    Maintenance of biometric data or enrolment thereof · CPC title

  • Comparing pixel values or logical combinations thereof, or feature values having positional relevance, e.g. template matching · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US10346716B2 cover?
An efficient method and apparatus for identifying one or more targets in an image is presented. A matching operation is performed that compares the image against multiple templates jointly. The multiple templates are sorted into multiple clusters. The joint template matching operation achieves an improvement in performance by focusing on a subset of the clusters. For each grid location, cluster…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06V40/50. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Jul 09 2019 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 1 related publication on this page (citations in our corpus or others sharing the same primary CPC).