Product Recognition in a Retail App — Is Real-Time Needed?

Petr Michal
DataSentics
Published in
4 min readMay 4, 2021
Real-time product recognition

Product detection and recognition play an important role in shelf management, out-of-stock monitoring, and planogram compliance, which is vital for FCMG producers and retailers. The methods can be based e.g. on computer vision and AI in general or on IoT devices, for example, sensors placed on shelves. Many of the available applications provide real-time (or near real-time) processing and results.

But there lies an important question we should ask ourselves: do we really need a real-time application? Before replying positively without hesitation, let’s think about real-time application’s positive and negative aspects.

Firstly and most importantly, real-time application provides you the results immediately. You know what is happening at this moment in every store, e.g. thanks to sensors which send data every second. Use can integrate this data into your current monitoring, so in a moment when the shelf gets almost empty, a notification to an appropriate worker is sent and the shelf is refilled.

Photo by Mick Haupt on Unsplash

In the context of AI applications, when the merchandiser refills the shelf and takes a photo, you immediately receive the results with a shelf description from his photo processed by AI. Then you can react and give him or her feedback so he or she can make an adjustment. Or, in an ideal situation, the taken photo is processed automatically without your intervention and the merchandiser gets feedback, takes another photo according to the application’s suggestion and the final results are stored.

So yes, the real-time application enables immediate effects and offers an incoming photo check for the user.

Example of the report based on real-time application

Now, let’s speak about the possible drawbacks of a real-time application. In such an AI application, the input (e.g. photo) has to be processed very quickly. This often means processing the input within the device, which brings several possible issues.

Generally, handheld devices do not have such resources as are available in the cloud or on servers and they have limited battery capacity. This means one has to use simpler and faster models when running on a device. Such models provide real-time processing but on the other hand, it is usually compensated by lower model accuracy compared to a larger model run in a cloud.
Another possibility is processing photos real-time in the cloud/server, but this case is closer to the cloud/server processing case. The user has to be connected to the internet and the speed of such a solution largely depends on the connection quality.

Photo by Praveen kumar Mathivanan on Unsplash

Also, the real-time response is often not required despite the intuition. Many FMCG producers are satisfied with the weekly or semi-weekly shop checks for many product categories, therefore they can concentrate on developing other aspects.

But most importantly, the development of real-time processing within the device is quite time and money consuming if one does not have any useful technology available. This time could be spent on developing other and probably more important parts of the solution, e.g. the model itself or final reports, so the entire solution is more useful.

Photo by Tingey Injury Law Firm on Unsplash

Lastly, a real-time application is a bit of a showoff. They are cool from the fact they are real-time, which often seems quite impressive for people and it plays an important role in presenting such applications. Next time you see a demo of a real-time application, forget about this ‘real-time factor’ and concentrate on other key aspects of the solution.

--

--