Retail Store Items Detection using YOLOv5, Roboflow, and Node-RED
Objective
How does a supermarket keep track of the inventory of items? Usually, the data is stored in a database and when a product is bought by a customer, the inventory gets updated.
This blog illustrates a better solution for keeping track of the inventory of items using machine vision. IP cameras can be placed at different locations inside the supermarket, and they can be pointed at the shelves where the items are placed. Then the real-time video feed from these cameras can be sent to an edge device such as the NVIDIA Jetson platform, where it can detect the number of items available on a particular shelf. If a shelf is missing an item, the system can notify the people in charge of inventory and update the status in real-time.
Hardware Overview
The following hardware can be used for this application
Basic Workflow
First, we can use a public dataset such as SKU110K dataset which has images of shelves with items where all the items are labeled as a single class. Then we can upload the dataset into Roboflow, convert it into YOLOv5 format and generate a new dataset. After that, we can use YOLOv5 to train the new dataset. Finally, we can deploy the trained model into a Jetson device using a tool called No-Code Edge AI Vision Tool developed by Seeed Studio, and use an IP camera to detect the number of items available on a shelf.
Software Overview
YOLOv5
YOLO is an abbreviation for the term ‘You Only Look Once’. It is an algorithm that detects and recognizes various objects in an image in real-time. Ultralytics YOLOv5 is the latest version of YOLO and it is now based on the PyTorch framework.
Roboflow
Roboflow is an annotation tool based online. This tool allows you to easily annotate all your images, add further processing to these images and export the labeled dataset into different formats such as YOLOV5 PyTorch, Pascal VOC, and more! Roboflow also has public datasets readily available to users.
No Code Edge AI Vision Tool
No Code Edge AI Vision is a tool developed by Seeed Studio which helps you to get started with AI vision at the edge with no coding experience at all! It uses Node-RED as the interface to load the trained model and view the inference on a web browser!
Demo Showcase
Once the trained model is loaded into the No Code Edge AI Vision tool, the inference can be performed as follows
Do we need to convert yolov5 train model to jetson device format? Or we can use .pt file directly?