Click here to Skip to main content
Click here to Skip to main content

Smart Replenishing System & Crowd Map App

By , 4 Sep 2013
Rate this:
Please Sign up or sign in to vote.

Please note

This article is an entry in our AppInnovation Contest. Articles in this sub-section are not required to be full articles so care should be taken when voting.


This article is about integrating OpenCV/PerC features with Microsoft Gadgets for making smart digital vision applications.  

Applying For :  Finance Category  - Windows 8 Tablet  


In highly populated cities, usage of self-serv / vending machines are usually high.

(Ex: On a salary day, In India, people would find most of the ATM’s queues filled )

People often make a queue and wait for the service. Examples include :

  • ATM
  • Food & Beverage vending machine
  • Ticket/Token vending machine
  • DVD rental kiosks
  • Etc


On a busy day Vendors/Suppliers find it really difficult to know where to replenish first. 

They operate solely based on the inventory level that is shown on their Remote Inventory tracker Application. This helps in a way but not totally smart.

The vendor would choose to go with C1 (Please refer the PDF) as the inventory level is critically low. As the existence systems suggest replenishment only based on the inventory level. 

Though this is a helpful solution, it may not be the smartest one.  Reasons below:



Smart Replenishing System 

This uses a combination of  OpenCV/Intel  PerC SDKs with Microsoft Windows  tablet tools & Azure to render an intelligent decision making system. 

SRS uses digital vision to identify the number of people occupying the queue. Camera could be mounted on a side/sides of the vending machine (or where ever suitable to track the peoples faces. The camera reads the number of faces available in the queue and updates the information server on cloud with the vending machine ID.

The replenish command could be sent through Windows Tablet Consoles / Phones Controller App Manually.
SRS could also be configured to Auto-respond to replenishment needs. This service takes responsibility to send Replenish commands straight to Agents , bypassing the controller App.

Crowd Map  

While SRS is targeted LOB type applications for Banks, F&B vendors etc,  Crowd Map is a subset App of SRS that helps a common user to locate the nearest "Less crowded" vending machine in his location.  

It removes Agent & Controller App scenario from SRS and rather includes Direct to consumer App. It could be through Classic Windows App or even a Marketplace App. The client of this service (Here Bank is the client for the software vendor) determines the target software platform it wants to choose.  

(Please check the attached PDF to see how this works) 

SDK & Tools   

Face detection module on Vending Machine : 

C++ OpenCV /PerC for Face detection Windows Services for Comunicating with SRS-OpenCV module to collect and report captured data to SRS server. 

Server : Azure for Web Services , DB & Notification. 

Controller & Agent App: Windows RT XAML Framework.  



Keep a running update of any changes or improvements you've made here.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

About the Author

Software Developer (Senior)
India India
Knows a bit of Microsoft technologies. Aiming to conquer them little by little. Let's hope! .

Comments and Discussions

Questionpossible improvement PinprofessionalTerry Kernan21-Jan-14 7:00 
AnswerRe: possible improvement PinprofessionalTinyDevices24-Jan-14 1:27 
QuestionHow's app development going? Will you be submitting on time? PinstaffKevin Priddle22-Oct-13 10:52 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Mobile
Web01 | 2.8.140415.2 | Last Updated 4 Sep 2013
Article Copyright 2013 by TinyDevices
Everything else Copyright © CodeProject, 1999-2014
Terms of Use
Layout: fixed | fluid