IP Library Granted Patent US 9,811,754
Granted Patent B2
US 9,811,754 · App. 14/641,292 · Granted Nov 7, 2017

Realogram scene analysis of images: shelf and label finding

Inventor: Edward Schwartz (Menlo Park, CA)
Assignee: RICOH CO., LTD.
G06K9/46G06K9/00201G06K9/00771G06K9/18G06K9/342G06K9/52G06K9/6201G06K9/6218G06K9/6267G06Q10/087G06T7/10G06T7/11G06T7/73G06T7/90G06K2009/4666G06K2209/01G06T2207/10004
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 9,811,754
App. No.
14/641,292
Granted
Nov 7, 2017
Kind
B2
Abstract

The techniques include an image recognition system to receive a realogram image including a plurality of organized objects and to detect and identify objects in the realogram image of one or more items on a retail shelf, identify shelf fronts and labels on the shelf fronts, identify empty space under shelves, identify areas where unidentified products may be, and identify areas where products are “out of stock”.

Claims (67)

1. A computer-implemented method for identifying shelves and labels from an image of shelves, the method comprising:

receiving the image of the shelves;

identifying features based on groups of pixels in the image of the shelves;

identifying possible shelf and label locations in the image, based on appearance using the features;

choosing the best shelf and label locations from the possible shelf and label locations in the image using context of the possible shelf and label locations;

generating a shelf model having a first geometric parameter and a first color parameter, the first geometric parameter comprising an estimate of an average thickness of previously detected shelves;

generating a label model having a second geometric parameter and a second color parameter, the second geometric parameter comprising an estimate of a width of a label in the image;

processing the image using the shelf model and the label model to update the possible shelf and label locations in the image based on features and context of the possible shelf and label locations in the image; and

choosing final shelf and label locations in the image using the updated possible shelf and label locations.

2. The computer-implemented method of claim 1 , wherein identifying possible shelf and label locations further comprises determining shelf boundaries using features that correspond to a shelf edge based on gradients between neighboring groups of pixels.

3. The computer-implemented method of claim 1 , wherein identifying possible shelf and label locations further comprises generating one or more label location hypotheses from the image of the shelves.

4. The computer-implemented method of claim 3 , wherein generating the one or more label location hypotheses comprises:

quantizing features in the possible shelf and label locations into color clusters and non-horizontal line clusters;

generating the one or more label location hypotheses based on the color clusters and non-horizontal line clusters;

finding components within the one or more label location hypotheses that match the label model to generate label candidates; and

choosing the best label location hypothesis from the label candidates.

5. The computer-implemented method of claim 4 , further comprising validating the one or more label location hypotheses based on an intersection between the color clusters and the non-horizontal line clusters.

6. The computer-implemented method of claim 3 , wherein generating the one or more label location hypotheses comprises:

detecting text within the best shelf location;

generating a text bounding box for each block of text detected within the best shelf location; and

performing optical character recognition within each text bounding box.

7. The computer-implemented method of claim 3 , wherein the context of the possible shelf and label locations includes one or more from the group of: labels found within the possible shelf and label locations, prices found within the possible shelf and label locations, long horizontal line segments within the possible shelf and label locations, shelf hypotheses based on assuming regular spacing between shelves, and relationship of possible shelf and label locations to other identified objects in the image of the shelves.

8. A system for identifying shelves and labels from an image of shelves, the system comprising:

one or more processors; and

a memory, the memory storing instructions, which when executed cause the one or more processors to:

receive an image of shelves;

identify features based on groups of pixels in the image of the shelves;

identify possible shelf and label locations in the image based on appearance using the features;

choose the best shelf and label locations from the possible shelf and label locations in the image using context of the possible shelf and label locations;

generate a shelf model having a first geometric parameter and a first color parameter, the first geometric parameter comprising an estimate of an average thickness of previously detected shelves;

generate a label model having a second geometric parameter and a second color parameter, the second geometric parameter comprising an estimate of a width of a label in the image;

process the image using the shelf model and the label model to update the possible shelf and label locations in the image based on features and context of the possible shelf and label locations in the image; and

choose final shelf and label locations in the image using the updated possible shelf and label locations.

9. The system of claim 8 , wherein to identify possible shelf and label locations, the instructions cause the one or more processors to determine shelf boundaries using features that correspond to a shelf edge based on gradients between neighboring groups of pixels.

10. The system of claim 8 , wherein to identify possible shelf and label locations, the instructions cause the one or more processors to generate one or more label location hypotheses from the image of the shelves.

11. The system of claim 10 , wherein to generate the one or more label location hypotheses, the instructions cause the one or more processors to:

quantize features in the possible shelf and label locations into color clusters and non-horizontal line clusters;

generate the one or more label location hypotheses based on the color clusters and non-horizontal line clusters;

find components within the one or more label location hypotheses that match the label model to generate label candidates; and

choose the best label location hypothesis from the label candidates.

12. The system of claim 10 , wherein to generate the one or more label location hypotheses, the instructions cause the one or more processors to:

detect text within the best shelf location;

generate a text bounding box for each block of text detected within the best shelf location; and

perform optical character recognition within each text bounding box.

13. The system of claim 10 , wherein the context of the possible shelf and label locations includes one or more from the group of: labels found within the possible shelf and label locations, prices found within the possible shelf and label locations, long horizontal line segments within the possible shelf and label locations, shelf hypotheses based on assuming regular spacing between shelves, and relationship of possible shelf and label locations to other identified objects in the image of the shelves.

14. A computer program product comprising a non-transitory computer usable medium including a computer readable program, wherein the computer readable program, when executed on a computer causes the computer to:

receive an image of shelves;

identify features based on groups of pixels in the image of the shelves;

identify possible shelf and label locations in the image, based on appearance using the features;

choose the best shelf and label locations from the possible shelf and label locations in the image using context of the possible shelf and label locations;

generate a shelf model having a first geometric parameter and a first color parameter, the first geometric parameter comprising an estimate of an average thickness of previously detected shelves;

generate a label model having a second geometric parameter and a second color parameter, the second geometric parameter comprising an estimate of a width of a label in the image;

process the image using the shelf model and the label model to update the possible shelf and label locations in the image based on features and context of the possible shelf and label locations in the image; and

choose final shelf and label locations in the image using the updated possible shelf and label locations.

15. The computer program product of claim 14 , wherein to identify possible shelf and label locations, the computer readable program causes the computer to determine shelf boundaries using features that correspond to a shelf edge based on gradients between neighboring groups of pixels.

16. The computer program product of claim 14 , wherein to identify possible shelf and label locations, the computer readable program causes the computer to generate one or more label location hypotheses from the image of the shelves.

17. The computer program product of claim 16 , wherein to generate the one or more label location hypotheses, the computer readable program causes the computer to:

quantize features in the possible shelf and label locations into color clusters and non-horizontal line clusters;

generate the one or more label location hypotheses based on the color clusters and non-horizontal line clusters;

find components within the one or more label location hypotheses that match the label model to generate label candidates; and

choose the best label location hypothesis from the label candidates.

18. The computer program product of claim 16 , wherein to generate the one or more label location hypotheses, the computer readable program causes the computer to:

detect text within the best shelf location;

generate a text bounding box for each block of text detected within the best shelf location; and

perform optical character recognition within each text bounding box.

19. The computer program product of claim 17 , wherein the computer readable program further causes the computer to validate the one or more label location hypotheses based on an intersection between the color clusters and the non-horizontal line clusters.

20. The system of claim 11 , wherein the instructions further cause the one or more processors to validate the one or more label location hypotheses based on an intersection between the color clusters and the non-horizontal line clusters.

Assignments (2)
CORRECTIVE ASSIGNMENT TO CORRECT APPLICATION NUMBER 14461292 NUMBER SHOULD BE 14641292 PREVIOUSLY RECORDED AT REEL: 035128 FRAME: 0363. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jan 7, 2016
From: SCHWARTZ, EDWARD
To: RICOH COMPANY, LTD.
Reel/Frame 037459/0584 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 10, 2015
From: SCHWARTZ, EDWARD
To: RICOH COMPANY, LTD.
Reel/Frame 035128/0363 →
Continuity (2)
Provisional Application 62090177 · Dec 10, 2014
Related Publication 20160171429A1 · Jun 16, 2016