Saltar al contenido
ModelPublicadoExterno
Descargar

Yolo26n Indian Fmcg Detection

Fine-tuned YOLO26n on a merged dataset of three Indian grocery sources from Roboflow Universe. Part of the Kirana Detective project — an AI system for small Indian grocery stores to visually count and reconcile...

TipoOtherModelo baseyolo26nVersiónRevision e3dba8d

Fuente del modelo

Tipo
Other
Tamaño del archivo
7,42–11,6 MB
Modelo base
yolo26n
Versión
vRevision e3dba8d
Actualizado
22 sept 2026
Descargas
13
Fuente
Hugging Face

Descripción de la fuente

YOLO26n — Indian FMCG Product Detection

Fine-tuned YOLO26n on a merged dataset of three Indian grocery sources from Roboflow Universe. Part of the Kirana Detective project — an AI system for small Indian grocery stores to visually count and reconcile shelf/counter inventory from photos.

Performance

MetricValue
mAP50 (all classes)0.428
mAP50-95 (all classes)0.302
Total classes1,831
Validation images1,236
Validation instances13,443

Training ran for 100 epochs (60 initial + 40 resumed after restart) on an NVIDIA A10G via Modal.

Training Datasets

DatasetWorkspaceVersionImagesClasses
Indian Grocery Object Detectionagentsk47v1~40010
Grocery ItemsIIT Patnav456,69520
Indian Marketproject-c5ho0v24,6942

All three datasets were downloaded in YOLOv8 format, class IDs remapped to a unified list, and merged before training. The full unified class list (1,831 entries) is in class_names.json.

Files

FileDescription
best.ptPyTorch checkpoint (best mAP50 epoch)
best.onnxONNX export, opset 12 (recommended for inference)
class_names.jsonFull list of 1,831 class names (index = class_id)

How to Use

ONNX Runtime (CPU / any platform)

import json, numpy as np, onnxruntime as ort
from PIL import Image

session     = ort.InferenceSession("best.onnx", providers=["CPUExecutionProvider"])
class_names = json.load(open("class_names.json"))

def preprocess(path, size=640):
    img = Image.open(path).convert("RGB").resize((size, size))
    return (np.array(img, dtype=np.float32) / 255.0).transpose(2, 0, 1)[None]

input_name = session.get_inputs()[0].name
outputs    = session.run(None, {input_name: preprocess("shelf.jpg")})
# outputs[0]: (1, 300, 6) — [x1, y1, x2, y2, confidence, class_id]

Ultralytics (PyTorch)

from ultralytics import YOLO

model   = YOLO("best.pt")
results = model.predict("shelf.jpg", imgsz=640, conf=0.25)
results[0].show()

Training Details

ParameterValue
Base modelYOLO26n
Input size640 × 640
Epochs100 (60 initial + 40 resumed)
Batch size16
Early stopping patience20
Export formatONNX opset 12
HardwareNVIDIA A10G (Modal)

Citation

@misc{kirana-detective-yolo-2026,
  title  = {Kirana Detective: YOLO26n Indian FMCG Product Detector},
  author = {Syed Naazim Hussain},
  year   = {2026},
  url    = {https://huggingface.co/naazimsnh02/yolo26n-indian-fmcg-detection}
}

Fuentes

1 fuente
Hugging FacePrincipalVersión e3dba8d9fe00d147aa9a8dc61a465db1cd5670a6
huggingface.co/build-small-hackathon/yolo26n-indian-fmcg-detection/tree/e3dba8d9fe00d147aa9a8dc61a465db1cd5670a6

Verificado 9 sept

Artefactos del modelo

3 artefactos

best.onnx

onnx · 11,6 MB · SHA-256 ef272308fe50…f0c1 · Hugging Face

Descargar

best.pt

pt · 7,42 MB · SHA-256 f1cac3f26cb9…ec8a · Hugging Face

Descargar

yolo26n_fmcg.onnx

onnx · 11,6 MB · SHA-256 ef272308fe50…f0c1 · Hugging Face

Descargar

Extractos de fuentes

2 extractos

--- license: apache-2.0 base_model: yolo26n language: - en tags: - object-detection - yolo - indian-fmcg - onnx - ultralytics - kirana pipeline_tag: object-detection datasets: - agentsk47/indian-grocery-object-detection-mfsnx - iit-patna-qg1jh/grocery_items-7i2em - project-c5ho0/indian-market-qieug --- # YOLO26n — Indian FMCG Product Detection Fine-tuned [YOLO26n](https://docs.ultralytics.com) on a **merged dataset of three Indian grocery sources** from Roboflow Universe. Part of the **Kirana Detective** project — an AI system for small Indian grocery stores to visually count and reconcile shelf/counter inventory from photos. ## Performance | Metric | Value | |---|---| | mAP50 (all classes) | **0.428** | | mAP50-95 (all classes) | **0.302** | | Total classes | 1,831 | | Validation images | 1,236 | | Validation instances | 13,443 | Training ran for **100 epochs** (60 initial + 40 resumed after restart) on an NVIDIA A10G via Modal. ## Training Datasets | Dataset | Workspace | Version | Images | Classes | |---|---|---|---|---| | [Indian Grocery Object Detection](https://universe.roboflow.com/agentsk47/indian-grocery-object-detection-mfsnx) | agentsk47 | v1 | ~400 | 10 | | [Grocery Items](https://universe.roboflow.com/iit-patna-qg1jh/grocery_items-7i2em) | IIT Patna | v45 | 6,695 | 20 | | [Indian Market](https://universe.roboflow.com/project-c5ho0/indian-market-qieug) | project-c5ho0 | v2 | 4,694 | 2 | All three datasets were downloaded in **YOLOv8 format**, class IDs remapped to a unified list, and merged before training. The full unified class list (1,831 entries) is in `class_names.json`. ## Files | File | Description | |---|---| | `best.pt` | PyTorch checkpoint (best mAP50 epoch) | | `best.onnx` | ONNX export, opset 12 (recommended for inference) | | `class_names.json` | Full list of 1,831 class names (index = class_id) | ## How to Use ### ONNX Runtime (CPU / any platform) ```python import json, numpy as np, onnxruntime as ort from PIL import Image session = ort.InferenceSession("best.onnx", providers=["CPUExecutionProvider"]) class_names = json.load(open("class_names.json")) def preprocess(path, size=640): img = Image.open(path).convert("RGB").resize((size, size)) return (np.array(img, dtype=np.float32) / 255.0).transpose(2, 0, 1)[None] input_name = session.get_inputs()[0].name outputs = session.run(None, {input_name: preproce...

Source context: 13 downloads · 0 likes · Pipeline object-detection · Library ultralytics · Repo build-small-hackathon/yolo26n-indian-fmcg-detection