The various aspects relate to detection of products in a storage area, for example a shelf in a gondola in a shop, by means of image processing.
Various methods of detecting stock on a shelf in a shop have been disclosed. Some documents disclose use of NFC identifiers. This requires NFC tags on products.
Other documents disclose comparing two images that have been acquired in sequence. If a difference is detected, it is determined stock of products on the shelf has changed. This technology requires storage and comparison of images. Using comparison of images for detecting change in stock requires time to pass between acquisition of two images. This may result in change of ambient parameters, like lighting. This, in turn, may influence the detection process.
It is preferred to provide improved inventory detection.
A first aspect provides a method of detecting an inventory in a storage space. The method comprises acquiring an image comprising image data depicting at least part of the storage space and determining, for at least an area of the image, at least one product inventory area. Next, it is detected whether the image data comprised by the image area has a transition of intensity above a pre-determined threshold within a pre-determined distance. Based on the outcome of the detection, it is determined a product is present in the product inventory area if the transition of intensity within the pre-determined distance is detected.
Using edge detection, no comparison of subsequently acquired images is required, as no detection of any edge—sharp transition of image data—indicates no product is present at a particular location on a shelf—as an example of a storage space. If an edge is detected, a product is determined to be present in the product inventory area, for example a particular location on the shelf. This determination may be executed based on one single image, rather than on two or more consecutively acquired images.
An embodiment of the first aspect further comprises determining, for at least an area of the image, multiple product inventory areas and detecting and determining, for each product inventory area, whether a product is present. Based on the outcome of detecting and determining, an amount of products present in the storage space determined.
This embodiment allows keeping administration of an inventory, based on actual inventory.
In another embodiment of the first, aspect, comprising information indicating an amount of products present in the storage space is provided to a visualisation module for visualising the information.
This embodiment provides convenience to customers as well as shopkeepers, as inventory may be checked at one particular location. This is particularly convenient in case of products being stored on a deep shelf with limited height available.
In a further embodiment, the area of the image for which at least one product inventory area is determined is smaller than the total image. This reduces the amount of data to be processed.
A second aspect provides a device for detecting an inventory in a storage space. The device comprises a shelf providing a storage space, a camera for acquiring an image comprising image data depicting at least part of the storage space; and a processing unit. The processing unit is arranged to determine, for at least an area of the image, at least one product inventory area, detect whether the image data comprised by the image area has a transition of intensity above a pre-determined threshold within a pre-determined distance; and determine a product is present in the product inventory area if the transition of intensity within the pre-determined distance is detected.
A third aspect provides a computer programme product instructions executable by a computer causing the computer to execute the method according to the first aspect.
The various aspects and embodiments thereof will now be discussed in further detail. In the drawings,
The controller 130 is connected to a shelf system 140 via the controller input/output unit 136. The shelf system 140 comprises an upper shelf 144 and a lower shelf 142. At the bottom of the upper shelf 144, a camera 146 is connected. The camera 146 preferably has a wide angle lens, also known as a fisheye lens. The camera 136 is connected to the controller input/output unit 136. Alternatively or additionally, the shelf system 140 may comprise multiple cameras connected to the controller input/output unit 136.
The lower shelf 142 serves as a support for products 180 and in that way, provides a storage space for storing the products 180. In the embodiment shown by
For each line of products 180, an inventory display 160 is provided. The inventory display 160 comprises multiple inventory indicators 162. In this embodiment, the inventory indicators 162 are bar indicators 162. The amount of bars illuminated and/or a colour of the bars may provide an indication of the amount of products 180 in a line. Alternatively or additionally, the inventory display 160 may comprise an alphanumeric display or a full pixel-based graphic display. The inventory displays 160 are connected to the controller 130 and to the controller input/output unit 136 in particular.
In the monitored area 200 and with that, in each image captured by the camera 136, a first product lane 210, a second product lane 210′ and a third product lane 210″ are defined. Each product lane corresponds to line of products 180 as depicted by
For each product inventory area 212, presence of a product 180 may be detected. This will be discussed in further detail in conjunction with a flowchart 300 depicted by
The procedure starts in a terminator 302 and subsequently moves to step 304 in which an image of the monitored area 200 is acquired. The image is a digital image comprising pixel data. For each pixel of the captured image, at least one intensity value is provided. This allows acquiring a monochrome image. Additionally, at least two more intensity values may be acquired, allowing capturing a colour image. In this case, intensity value may relate to intensity of red, green and blue light. Within the monitored area 200, inventory areas 212 are determined in step 306. The actual locations of the inventory areas 212 are preferably defined upfront. These inventory areas 212 are preferably adjustable to allow flexibility with respect to the type of products 180 stored on the lower shelf 142.
The monitored area 200 may be divided in contiguous inventory areas 212, as depicted by
Step 306 is preferably followed by step 308, in which edges are detected in an inventory area 212. Alternatively, step 306 is followed by step 342, which will be discussed later. Edge detection implies image data related to a specific inventory area 212 is assessed to determine whether pixel intensity data changes with a value or with values exceeding a particular threshold, within a particular distance. The change in intensity is determined relatively simply for a monochrome image. For a colour image, the change in intensity may be determined for one, more or all intensity values. The particular distance may be defined in terms of pixels or in terms of actual distance on within the monitored area 200.
Based on the assessment in step 308, a decision is made in step 310 whether an edge is detected in a particular inventory area 212 or not. If an edge is detected in the particular inventory area 212, the process branches to step 312, in which it is determined product presence is detected in the particular inventory area 212. If no edge is detected in the particular inventory area 212, the process branches to step 314, in which it is determined no product presence is detected in the particular inventory area 212. To improve product detection by means of edge detection, the inventory areas 212 are preferably, but not necessarily, defined such that with a particular intended placement of a product 180 at least partially in the inventory area 212, such that within the inventory area 212, at least an edge of the product 180 is provided.
Following either one of the determination steps, the process checks in decision 316 whether all inventory areas 212 in the captured image of the monitored area 200 have been assessed. If this is not the case, the process branches back to step 308, while moving the assessment to a next inventory area 212. If data has been assessed for all inventory areas, the process continues to step 318, which an amount of detected products 180 is determined. This determination is based on the amount of products 180 detected.
In step 320, display data is generated. The display data is generated based on the amount of detected products. If the inventory display 160 comprises the bar indicators 162 and if a particular product lane comprises four inventory areas 212, the display data may be generated as follows: no bar illuminated with no products in the product lane, one bar illuminated with one product in the product lane, two bars illuminated with two products in the product lane and three bars illuminated with three or four products in the product lane. Alternatively, in an embodiment in which colours of the bar indicators 162 may be changed, the display data may be defined as follows: one bar illuminated red with no products in the product lane, two bars illuminated yellow or orange with on product in the product lane and three bars illuminated green with two to four products in the product lane. If the inventory display 160 is an (alpha)numeric display, the display data may indicate the actual number of detected products 180. If the inventory display 160 is a graphical display, many options are available for generating display data for reflecting an amount of products 180 available in a product lane. In case of presenting different colours, also only one bar or other figure may be provided in the inventory display 160. As the amount of products on the lower shelf 142 is usually well visible by a person in front of the lower shelf 142, generation and display of the display data are optional steps.
In step 322, the display data is displayed on the inventory display 160 corresponding to a particular product lane. Subsequently, the process ends in a terminator 324. With multiple product lanes, the procedure 300 may be run again for another product lane.
As indicated, the process may also branch off to step 342, following step 306 in which inventory areas are determined within an image captured from the monitored area 200. In step 342, intensity of at least a part of pixels for a particular inventory area 212 is compared to a reference intensity. Each individual intensity value of each individual pixel may be combined or an average intensity value of multiple pixels may be compared in step 342. If the determined value is above or below the reference intensity, optionally taken into account a relative or absolute margin, preferably pre-defined, presence of a product is detected in the inventory area 212 is detected in in step 346. If the determined value is not above or below the reference intensity, optionally taken into account a relative or absolute margin, preferably pre-defined, no presence of a product is detected in the inventory area 212 is detected in in step 348.
For this type of detection of presence of a product 180 within the monitored area 200, and to a lesser extent for the edge detection of detection of presence of a product 180, proper illumination of products 180 within the monitored area 200 is supportive. Therefore, the amount of light provided by the illumination module 150 may preferably be adapted. In such embodiment, the amount of light provided by the illumination module 150 is preferably dependent on ambient light available within the monitored area 200. The amount of available light may be obtained by means of a light sensor 148. If the amount of light is not sufficient for reliable detection of the presence of products 180, the intensity of light provided by the illumination module 160 may be increased in response to the detection of insufficient light.
Following either one of the determination steps, the process checks in decision 316 whether all inventory areas 212 in the captured image of the monitored area 200 have been assessed. If this is not the case, the process branches back to step 342, while moving the assessment to a next inventory area 212. If data has been assessed for all inventory areas, the process continues to step 318, and continues as discussed above.
Whereas in the embodiments discussed above the lower shelf 142 is only discussed as comprising the illumination module 150 and having the inventory display 160 attached to it, the lower shelf 142 may also serve as an upper shelf for a storage space that may be provided below the lower shelf 142. Likewise, the upper shelf 144 may be provided with one or more illumination modules and inventory displays, upon which the upper shelf 144 may serve as a storage space.
The amount of products 180 determined, per monitored area 200 or per product lane 210, may be stored in the controller storage unit 134. Additionally or alternatively, the data may be sent to the central server 110 via the controller communication unit 138 and the server communication unit 118. This may be sent by means of a wired or wireless connection. In the central server 110, the data may be stored in the server storage unit 114. In the server 110, data from multiple controllers like the controller 130 discussed may be processed. In this way, server 100 may be used for monitoring an inventory of an entire shop. This enables checking the full and actual inventory via the screen 122, enabling navigation by means of the keyboard 124. With this information available, additional products may be ordered in time, such that always an adequate number of products 180 is available on the shelves, not too much and not too few.
Expressions such as “comprise”, “include”, “incorporate”, “contain”, “is” and “have” are to be construed in a non-exclusive manner when interpreting the description and its associated claims, namely construed to allow for other items or components which are not explicitly defined also to be present. Reference to the singular is also to be construed in be a reference to the plural and vice versa. When data is being referred to as audiovisual data, it can represent audio only, video only or still pictures only or a combination thereof, unless specifically indicated otherwise in the description of the embodiments.
In the description above, it will be understood that when an element such as layer, region or substrate is referred to as being “on” or “onto” another element, the element is either directly on the other element, or intervening elements may also be present.
Furthermore, the invention may also be embodied with less components than provided in the embodiments described here, wherein one component carries out multiple functions. Just as well may the invention be embodied using more elements than depicted in the Figures, wherein functions carried out by one component in the embodiment provided are distributed over multiple components.
A person skilled in the art will readily appreciate that various parameters disclosed in the description may be modified and that various embodiments disclosed and/or claimed may be combined without departing from the scope of the invention.
It is stipulated that the reference signs in the claims do not limit the scope of the claims, but are merely inserted to enhance the legibility of the claims.
Number | Date | Country | Kind |
---|---|---|---|
2016099 | Jan 2016 | NL | national |
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/NL2017/050021 | 1/16/2017 | WO | 00 |
Publishing Document | Publishing Date | Country | Kind |
---|---|---|---|
WO2017/123093 | 7/20/2017 | WO | A |
Number | Name | Date | Kind |
---|---|---|---|
7546952 | Knowles | Jun 2009 | B2 |
7841533 | Kotlarsky | Nov 2010 | B2 |
8438084 | Tesler | May 2013 | B1 |
8941645 | Grimaud | Jan 2015 | B2 |
9558405 | Leong | Jan 2017 | B2 |
10013834 | Phillips | Jul 2018 | B2 |
10083243 | Cypher | Sep 2018 | B2 |
10147210 | Desai | Dec 2018 | B1 |
10217307 | Phillips | Feb 2019 | B2 |
10282695 | McNamara | May 2019 | B1 |
10339411 | Hua | Jul 2019 | B1 |
10504073 | Atsmon | Dec 2019 | B2 |
10810540 | Gopal | Oct 2020 | B1 |
11117744 | Medioni | Sep 2021 | B1 |
20090212112 | Li | Aug 2009 | A1 |
20150262116 | Katircioglu | Sep 2015 | A1 |
20160342937 | Kerrick | Nov 2016 | A1 |
Number | Date | Country |
---|---|---|
2838054 | Apr 2015 | EP |
2009027839 | Mar 2009 | WO |
WO-2009027839 | Mar 2009 | WO |
Entry |
---|
Authorized Officer: De Smet, Michael, International Search Report and Written Opinion issued in counterpart PCT application No. PCT/NL2017/050021, dated Feb. 24, 2017. |
Number | Date | Country | |
---|---|---|---|
20210201022 A1 | Jul 2021 | US |