Grocery Dataset Recognition

suraj j unni
2 min readSep 26, 2021

--

This week I have attended an interview for the role ML Engineer. So here is the assignment they have given:

Problem Statement:
● Given a grocery store shelf image, detect all products present in the
shelf image (detection only at product or no-product level)
● The assignment requires you to implement a single shot object
detector with only “one” anchor box per feature-map cell.
● Accuracy of at least 0.7 mAP on the test set.

Dataset:

Grocery Dataset (https://github.com/gulvarol/grocerydataset).

Here, I have Single shot detection algorithm to detect multiple sub images in an image. The reason for preferring it over YOLO is SSD generally gives high precision value.

SSD Architecture

Here the input image is of the format(300,300) and data augmentation is done to images to reduce imbalance error in dataset.

Framework Used:

  1. Numpy
  2. Pandas
  3. Pytorch

Evaluation Metric:

  1. Precision
  2. Recall
  3. mAP

Assumptions:
1)IOU>96.5 is considered to be true positive
2)minimum score to identify box is 0.6 and max overlap is 0.4

One of the question asked related to this was, Does this problem require multiple anchors? Please justify your answer.

No, this model doesn’t require multiple anchors as the dataset contains only one image per space so need to add overhead to the model.

Performance:

{"mAP": "0.9081612229347229", "precision": 0.8959003215434084, "recall": 0.8478508938759984}

Please find the code link here https://drive.google.com/drive/folders/1GKByWDKYsk-2iOcemhtd23roGd9JvU_h?usp=sharing

--

--

suraj j unni
suraj j unni

Written by suraj j unni

Learning to break my barriers.

No responses yet