IP Library Granted Patent US 11,049,263
Granted Patent B2
US 11,049,263 · App. 16/563,159 · Granted Jun 29, 2021

Person and projected image item tracking system

Inventors: Marius Buibas (San Diego, CA); John Quinn (San Diego, CA); Kaylee Feigum (San Diego, CA); Csaba Petre (San Diego, CA); Michael Brandon Maseda (San Diego, CA); Martin Alan Cseh (San Diego, CA)
Assignee: ACCEL ROBOTICS CORPORATION
G06T7/248G06K9/00201G06K9/00369G06K9/00771G06T7/292
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,049,263
App. No.
16/563,159
Granted
Jun 29, 2021
Kind
B2
Abstract

A projected image item tracking system that analyzes projected camera images to determine items taken from, placed on, or moved on a shelf or other area in an autonomous store. The items and actions performed on them may then be attributed to a shopper near the area. Projected images may be combined to generate a 3D volume difference between the state of the area before and after shopper interaction. The volume difference may be calculated using plane-sweep stereo, or using convolutional neural networks. Because these methods may be computationally intensive, the system may first localize a change volume where items appear to have been displaced, and then generate a volume difference only within that change volume. This optimization results in significant savings in power consumption and in more rapid identification of items. The 3D volume difference may also indicate the quantity of items displaced, for example from a vertical stack.

Claims (118)

1. A person and projected image item tracking system comprising:

a processor coupled to

a sensor configured to generate

an enter signal when a shopper reaches into or towards an item storage area in a store, wherein said item storage area comprises a volume in said store that contains items; and,

an exit signal when said shopper retracts from said item storage area;

a plurality of cameras oriented to view said item storage area; and,

a second plurality of cameras in said store oriented to view shoppers in said store, wherein said shoppers comprise said shopper;

wherein said processor is configured to

obtain a plurality of before images captured by said plurality of cameras, each before image of said plurality of before images corresponding to a camera of said plurality of cameras, wherein said each before image is captured at a time before said enter signal;

obtain a plurality of after images captured by said plurality of cameras, each after image of said plurality of after images corresponding to a camera of said plurality of cameras, wherein said each after image is captured at a time after said exit signal;

project said plurality of before images onto one or more surfaces contained in said volume associated with said item storage area to generate a plurality of projected before images corresponding to each combination of a surface of said one or more surfaces and a camera of said plurality of cameras;

project said plurality of after images onto said one or more surfaces to generate a plurality of projected after images corresponding to said each combination of a surface of said one or more surfaces and a camera of said plurality of cameras;

analyze

said plurality of projected before images, and

said plurality of projected after images, to

identify an item of said items taken from or put into said item storage area between said enter signal and said exit signal;

receive a time sequence of images from each camera of said second plurality of cameras in said store, wherein said time sequence of images from each camera is captured over a time period;

analyze said time sequence of images to

determine a sequence of locations of said shopper in said store during said time period; and

calculate a field of influence volume around each location of said sequence of locations; and,

when said field of influence volume intersects said item storage area at a time between said enter signal and said exit signal,

associate said item with said shopper.

2. The system of claim 1 , wherein said analyze said plurality of projected before images and said plurality of projected after images comprises

calculate a 3D volume difference between

contents of said item storage area at said time before said enter signal and

contents of said item storage area at said time after said exit signal;

when said 3D volume difference indicates that said contents of said item storage area at said time after said exit signal is smaller than said contents of said item storage area at said time before said enter signal,

input at least a portion of one or more of said plurality of projected before images that intersects said 3D volume difference into a classifier;

when said 3D volume difference indicates that said contents of said item storage area at said time after said exit signal is larger than said contents of said item storage area at said time before said enter signal,

input at least a portion of one or more of said plurality of projected after images that intersects said 3D volume difference into said classifier; and,

identify said item of said items taken from or put into said item storage area as an output of said classifier.

3. The system of claim 2 , wherein said classifier comprises a neural network trained to recognize images of said items.

4. The system of claim 2 , wherein said processor is further configured to

calculate a quantity of said item of said items taken from or put into said item storage area based on said 3D volume difference; and,

associate said quantity with said shopper and with said item.

5. The system of claim 4 , wherein said calculate said quantity of said item comprises

obtain a size of said item; and,

compare said 3D volume difference with said size of said item to determine said quantity of said item.

6. The system of claim 2 , wherein said processor is further configured to:

when said 3D volume difference indicates that said contents of said item storage area at said time after said exit signal is smaller than said contents of said item storage area at said time before said enter signal,

associate a take action with said shopper and with said item; and,

when said 3D volume difference indicates that said contents of said item storage area at said time after said exit signal is larger than said contents of said item storage area at said time before said enter signal,

associate a put action with said shopper and with said item.

7. The system of claim 2 , wherein said calculate said 3D volume difference comprises

calculate a before 3D surface of said contents of said item storage area from said plurality of projected before images;

calculate an after 3D surface of said contents of said item storage area from said plurality of projected after images; and,

calculate said 3D volume difference as a volume between said before 3D surface and said after 3D surface.

8. The system of claim 7 , wherein said processor is further configured to

compare said plurality of projected before images with said plurality of projected after images to calculate a change region of each surface of said one or more surfaces;

combine said change region of each surface of said one or more surfaces to calculate a change volume in said item storage area;

calculate said before 3D surface and said after 3D surface only in said change volume.

9. The system of claim 8 , wherein said compare said plurality of projected before images to said plurality of projected after images comprises

calculate an image difference comprising pixels between

each projected before image of said plurality of projected before images, and

a corresponding projected after image of said plurality of projected after images that is associated

with a same camera of said plurality of cameras and

with a same surface of said one or more surfaces; and,

for each surface of said one or more surfaces, combine the image difference associated with each camera of said plurality of cameras and associated with said each surface to form said change region of said each surface.

10. The system of claim 8 , wherein said combine the image difference associated with each camera of said plurality of cameras and associated with said each surface comprises

weight each pixel of said pixels in said image difference based on a distance between a point in said each surface corresponding to said pixel and a location of said each camera, to form a weighted image difference;

calculate an average weighted image difference for said each surface as an average of said weighted image difference corresponding to said each camera; and,

calculate said change region of said each surface based on said average weighted image difference.

11. The system of claim 8 , wherein said calculate said image difference comprises

calculate an absolute value of a difference between a pixel value of said each projected before image and a corresponding pixel value of said corresponding projected after image.

12. The system of claim 8 , wherein said calculate said image difference comprises

input said each projected before image and said corresponding projected after image into a neural network trained to identify image differences between pairs of images.

13. The system of claim 1 , wherein

said second plurality of cameras in said store comprise a plurality of ceiling cameras mounted on a ceiling of said store;

said analyze said time sequence of images comprises

project said time sequence of images from each ceiling camera onto a plane parallel to a floor of said store, to form a time sequence of projected images corresponding to each ceiling camera;

analyze said time sequence of projected images corresponding to each ceiling camera to determine said sequence of locations of said shopper in said store during said time period; and

calculate said field of influence volume around each location of said sequence of locations.

14. The system of claim 13 , wherein said each ceiling camera of said plurality of ceiling cameras is a fisheye camera.

15. The system of claim 13 , wherein said determine said sequence of locations of said shopper in said store during said time period comprises

for each time in said time sequence of projected images corresponding to each ceiling camera,

subtract a store background image from each projected image of said projected images captured at said each time to form a corresponding plurality of masks at said each time;

combine said plurality of masks at said each time to form a combined mask; and,

identify a location of said shopper at said each time as a high intensity location in said combined mask.

16. The system of claim 13 , wherein said determine said sequence of locations of said shopper in said store during said time period comprises

for each time in said time sequence of projected images corresponding to each ceiling camera,

input said projected images captured at said each time into a machine learning system that outputs an intensity map, wherein

said intensity map comprises a likelihood at each location that said shopper is at said location.

17. The system of claim 16 , wherein said determine said sequence of locations of said shopper in said store during said time period further comprises

input into said machine learning system a position map corresponding to each ceiling camera of said plurality of ceiling cameras, wherein a value of said position map at a location is a function of a distance between said location on said plane and said each ceiling camera.

18. The system of claim 1 , further comprising

a modular shelf comprising

said plurality of cameras oriented to view said item storage area;

a right-facing camera mounted on or proximal to a left edge of said modular shelf;

a left-facing camera mounted on or proximal to a right edge of said modular shelf;

a shelf processor; and,

a network switch;

wherein said processor comprises a network of computing devices, said computing devices comprising

a store processor; and,

said shelf processor.

19. The system of claim 18 , wherein

said sensor comprises said right-facing camera and said left-facing camera; and,

said processor is further configured to

analyze images from said right-facing camera and said left-facing camera to detect when said shopper reaches into or towards said item storage area, and to generate said enter signal; and,

analyze images from said right-facing camera and said left-facing camera to detect when said shopper retracts from said item storage area, and to generate said exit signal.

20. The system of claim 18 , wherein

said shelf processor comprises or is coupled to a memory; and,

said shelf processor is configured to

receive images from said plurality of cameras and store said images in said memory;

when said shelf processor receives or generates said enter signal, retrieve said plurality of before images from said memory.

21. The system of claim 20 , wherein said shelf processor is further configured to

when said shelf processor receives or generates said enter signal, transmit said plurality of before images from said memory to said store processor; and,

when said shelf processor receives or generates said exit signal, receive said plurality of after images from said plurality of cameras or obtain said plurality of after images from said memory and transmit said plurality of after images to said store processor.

22. The system of claim 1 , wherein said analyze said plurality of projected before images and said plurality of projected after images comprises

input at least a portion of said plurality of projected before images and at least a portion of said plurality of projected after images into a neural network trained to output said item of said items taken from or put into said item storage area between said enter signal and said exit signal.

23. The system of claim 22 , wherein said neural network is further trained to output an action that indicates whether said item of said items is taken from or is put into said item storage area between said enter signal and said exit signal.

24. The system of claim 23 , wherein said neural network comprises

a feature extraction layer, wherein

said feature extraction layer applied to each of said at least a portion of said plurality of projected before images outputs before image features; and

said feature extraction layer applied to each of said at least a portion of said plurality of projected after images outputs after image features;

a differencing layer applied to said before image features and said after image features associated with each camera of said plurality of cameras, wherein said differencing layer outputs feature differences associated with said each camera;

one or more convolutional layers applied to said feature differences associated with each camera of said plurality of cameras;

an item classifier layer applied to an output of said one or more convolutional layers; and,

an action classifier layer applied to said output of said one or more convolutional layers.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 6, 2019
From: BUIBAS, MARIUS; QUINN, JOHN; FEIGUM, KAYLEE; PETRE, CSABA; MASEDA, MICHAEL BRANDON; CSEH, MARTIN ALAN
To: ACCEL ROBOTICS CORPORATION
Reel/Frame 050295/0394 →
Continuity (5)
Continuation 16404667 · May 6, 2019
Continuation In Part 16254776 · Jan 23, 2019
Continuation In Part 16138278 · Sep 21, 2018
Continuation In Part 16036754 · Jul 16, 2018
Related Publication 20200020113A1 · Jan 16, 2020