IP Library Granted Patent US 11,301,676
Granted Patent B2
US 11,301,676 · App. 16/876,767 · Granted Apr 12, 2022

Reducing the search space for recognition of objects in an image based on wireless signals

Inventor: Shaun F. Dubuque (Austin, TX)
Assignee: RetailMeNot, Inc.
G06K9/00536G06K9/00671G06K9/00979G06K9/00986G06K9/3258G06K9/46G06K9/4614G06K9/6227G06K9/6267G06K9/6288G06Q30/0207G06Q30/06H04W4/029
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,301,676
App. No.
16/876,767
Granted
Apr 12, 2022
Kind
B2
Abstract

Provided is a process including: determining that a mobile computing device has crossed a geofence associated with a merchant store; sending, to a remote classifier server, a request for object-recognition classifiers for objects in the merchant store; receiving a set of object-recognition classifiers; receiving with the mobile computing device from user a request to search for offers; capturing an image with a camera of the mobile computing device; receiving one or more wireless beacon identifiers with the mobile computing device; based on the wireless beacon identifiers, selecting a subset of the object-recognition classifiers in the set of object-recognition classifiers; and recognizing an object in the captured image based on the selected subset of the object-recognition classifiers; and requesting, from a remote offer publisher server, offers corresponding to the recognized object; and receiving offers from the remote offer publisher server; and displaying the received offers to the user.

Claims (71)

1. A tangible, non-transitory, machine-readable medium storing instructions that when executed by one or more processors effectuate operations, comprising:

obtaining, with a computer system, both:

a value indicative of a geolocation of a mobile computing device determined based on wireless signals received by the mobile computing device, and

an image captured with a camera of the mobile computing device;

determining, with the computer system, based on at least part of the captured image, the geolocation, and an object classifier, that a corresponding object appears in the captured image and adjusting an output of the classifier based on the value indicative of geolocation of the mobile device;

adjusting the output of the classifier based on an updated value indicative of an updated geolocation of the mobile computing device determined with steps for determining an in-store position of the mobile computing device; and

storing, with the computer system, a result of the determination that the corresponding object appears in the captured image, in memory of the mobile computing device.

2. The medium of claim 1 , wherein:

the value indicative of a geolocation is a geolocation of the mobile computing device;

determining that the corresponding object appears in the captured image is performed before or without sending the captured image via a network to a remote server;

accessing the object classifier comprises:

sending a request to a remote server via a network for object classifiers associated with the geolocation of the mobile computing device; and

receiving responsive object classifiers via the network.

3. The medium of claim 1 , wherein:

the value indicative of the geolocation is an identifier of a merchant having a plurality of stores at a plurality of different geolocations; and

the object classifier is associated with the identifier of the merchant in memory.

4. The medium of claim 1 , wherein:

the value indicative of geolocation is an identifier of a brick-and-mortar merchant facility at a geolocation; and

the object classifier is associated with the identifier of the merchant facility in memory.

5. The medium of claim 1 , wherein:

the value indicative of geolocation is obtained by determining an indoor position of the mobile computing device based on wireless signals other than radio signals received by the mobile computing device.

6. The medium of claim 5 , wherein:

the value indicative of geolocation is obtained by determining an indoor position of the mobile computing device based on a signal encoded in fluctuations of in-store lighting sensed with a light-sensor of the mobile computing device.

7. The medium of claim 5 , wherein:

the value indicative of geolocation is obtained by determining an indoor position of the mobile computing device based on an ultrasonic signal sensed with a microphone of the mobile computing device.

8. The medium of claim 1 , comprising:

presenting data based on the result of the determination in an augmented reality application executing on the mobile computing device.

9. The medium of claim 1 , wherein:

obtaining the value indicative of the geolocation comprises determining, by the mobile computing device, that the mobile computing device is within a geofence having a geofence identifier;

accessing the object classifier comprises:

sending a request via a network for a set of object classifiers associated with the geofence identifier;

receiving the set of object classifiers, including the object classifier and a plurality of other object classifiers, via the network;

storing the sets of object classifiers in memory before capturing the image.

10. The medium of claim 9 , wherein:

determining that the corresponding object appears in the captured image comprises:

applying the object classifier and the plurality of other object classifiers to the captured image; and

determining that other objects corresponding to the plurality of other object classifiers do not appear in the captured image.

11. The medium of claim 1 , wherein the operations comprise:

accessing the object classifier with operations comprising:

receiving a request to classify objects in an image captured with the mobile computing device;

determining an in-store position of the mobile computing device; and

selecting a subset of the set of object classifiers based on the in-store position.

12. The medium of claim 11 , comprising

applying the subset of selected object classifiers to the image captured by the mobile computing device in response to the subset being selected.

13. The medium of claim 1 , wherein:

the object classifier is trained by iteratively:

adjusting weights based on attempted classifications of labeled training images,

error calculation of the attempted classifications, and

determining gradients in the calculated error as a function of the weights, wherein weights are adjusted in a direction the gradients indicate reduces the error.

14. The medium of claim 1 , wherein:

the object classifier is a scale-invariant classifier configured to sub-sample captured images; and

the object classifier is a stage in a cascade of a plurality of classifiers.

15. The medium of claim 14 , wherein:

the cascade includes a neural network and a support vector machine.

16. The medium of claim 1 , wherein:

determining that the corresponding object appears in the captured image comprises steps for obtaining object classifiers associated with a geolocation, merchant, or merchant facility.

17. The medium of claim 1 , the operations comprising:

accessing an offer associated with the corresponding object in response to determining that the corresponding object appears in the classified image; and

causing the offer to be presented to the user with the mobile computing device.

18. The medium of claim 1 , the operations comprising:

obtaining audio sensed with the mobile computing device;

accessing an audio classifier;

determining whether the audio contains a corresponding keyword that the audio classifier is configured to detect; and

executing a routine in response to determining that the received audio contains the keyword.

19. A method, comprising:

obtaining, with a computer system, both:

a value indicative of a geolocation of a mobile computing device determined based on wireless signals received by the mobile computing device, and

an image captured with a camera of the mobile computing device;

determining, with the computer system, based on at least part of the captured image, the geolocation, and an object classifier, that a corresponding object appears in the captured image and adjusting an output of the classifier based on the value indicative of geolocation of the mobile device;

adjusting the output of the classifier based on an updated value indicative of an updated geolocation of the mobile computing device determined with steps for determining an in-store position of the mobile computing device; and

storing, with the computer system, a result of the determination that a corresponding object appears in the captured image, in memory of the mobile computing device.

Assignments (2)
SECURITY INTEREST Recorded Apr 8, 2021
From: EVERYDAY HEALTH, INC.; KEEPITSAFE, INC.; OOKLA, LLC; SPICEWORKS, INC.; THREATTRACK SECURITY, INC.; RETAILMENOT, INC.
To: MUFG UNION BANK, N.A., AS COLLATERAL AGENT
Reel/Frame 056969/0755 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 28, 2020
From: DUBUQUE, SHAUN F.
To: RETAILMENOT, INC.
Reel/Frame 053631/0649 →