/ Модель

Характеристики

Размер весов
22,5 МБ
Лицензия
AGPL 3.0
Базовая модель
YOLOv8
Библиотека
ultralytics
Опубликована
29 июл 2025

YOLOV8s-Barcode-Detection

Поиск объектовИзображение → bounding_boxes3 профессии

Дообученная YOLOv8s для обнаружения штрихкодов и QR-кодов на изображениях.

11 186скачиваний за 30 дней10лайковвеса обновлены1 сен 2025

Бенчмарки

Как модель справилась с задачами пользователей ailist и что о ней публикуют открытые лидерборды

Публичные оценки

Из открытых лидербордов. Сравнивайте результаты одного теста при одинаковых условиях — отсутствие оценки не значит, что модель хуже.

В подключённых источниках результатов для этой модели пока нет.

Что умеет модель

Описание составлено по карточке модели и метаданным Hugging Face

Piero2411/YOLOV8s-Barcode-Detection — дообученная разработчиком модель Ultralytics YOLOv8s для обнаружения штрихкодов и QR-кодов на изображениях. Она построена на небольшой версии архитектуры YOLOv8 и обучена на пользовательском наборе из более чем 5 000 изображений с разными типами штрихкодов, включая EAN13 и Code128, и QR-кодами.

Модель предназначена для поиска и локализации штрихкодов и QR-кодов в изображениях, например, в системах автоматизированного сканирования товаров, посылок и доставок. README приводит метрики валидации: precision 0,97545, recall 0,99127 и mAP50 0,98643; эти результаты относятся к обучению и валидации автора и не гарантируют такую же точность на других данных. Число 11,2 млн параметров указано для базовой YOLOv8s, а не подтверждено отдельно для этой версии.

Модель принимает изображения и выдаёт классы и рамки обнаруженных объектов. Для запуска требуется библиотека Ultralytics. Репозиторий распространяется по лицензии AGPL-3.0.

Сценарии применения

  • Поиск штрихкодов на фотографиях товаров
  • Обнаружение QR-кодов на упаковке
  • Локализация кодов на посылках и доставках
  • Автоматический поиск EAN13 и Code128 на изображениях

Ограничения

Метрики README получены на авторском наборе и могут не отражать точность на других изображениях; модель обнаруживает коды, но карточка не описывает декодирование их содержимого. Требует проверки на целевых условиях съёмки.

Для каких профессий подходит3

Разделы каталога профессий, в задачах которых используется эта модель

Все профессии

Карточка модели

README от автора на Hugging Face, как он его опубликовал

Открыть на Hugging Face

This repository hosts a finetuned Ultralytics YOLOv8s model specifically designed for barcode and QR code classification and detection. Building upon the robust and efficient architecture of YOLOv8, this model has been fine-tuned on a comprehensive dataset of over 5,000 images, encompassing various barcode types (EAN13, Code128, etc.) and QR codes.

YOLOv8 is renowned for its speed, accuracy, and ease of use, making it an excellent foundation for specialized object detection tasks like barcode and QR code recognition. This finetuned model aims to provide a reliable and performant solution for applications requiring automated barcode and QR code scanning and identification.

We hope this model proves useful for your projects! For general YOLOv8 documentation, please refer to the Ultralytics Docs. For specific questions or discussions related to this finetuned model, please raise an issue on its Hugging Face model page.

Documentation & Usage

Below is a quickstart guide for installing the necessary dependencies and using this finetuned model.

To use this model, you'll need the ultralytics package, which can be installed via pip. Ensure you have a Python>=3.8 environment with PyTorch>=1.8.

PyPI - Version Downloads PyPI - Python Version

pip install ultralytics

For alternative installation methods or more detailed instructions on setting up your environment, please refer to the Ultralytics Quickstart Guide.

Conda Version Docker Image Version

CLI

You can use this model directly from the Command Line Interface (CLI) using the yolo command. Make sure the YOLOV8s_Barcode_Detection.pt model file is accessible in your current directory or specified with its full path.

yolo predict model=YOLOV8s_Barcode_Detection.pt source='path/to/your/image.jpg'

The yolo command offers various modes and arguments (e.g., imgsz=640). For more details, consult the YOLOv8 CLI Docs.

Python

This model can also be easily integrated into your Python applications. The usage mirrors the standard Ultralytics YOLO API.

from ultralytics import YOLO

# Load your finetuned model
model = YOLO("YOLOV8s_Barcode_Detection.pt")

# Perform object detection on an image
results = model("path/to/image.jpg")

# Optionally, visualize the results
results[0].show()

# You can also export the model to other formats (e.g., ONNX)
# This is useful for deployment in various environments.
# path = model.export(format="onnx") # uncomment to export

For more advanced Python usage, including training, validation, and different prediction modes, refer to the YOLOv8 Python Docs.

Model Details

This specific model, YOLOV8s_Barcode_Detection.pt, is a finetuned instance of the YOLOv8s (small) detection model. It has been specifically trained for barcode and QR code classification and detection.

Dataset

The model was finetuned on a custom dataset comprising over 5,000 images. This dataset includes a wide variety of barcode types such as EAN13, Code128, and many more, alongside various QR code instances, ensuring robustness across different real-world scenarios.

Training Parameters

The training process leveraged a pre-trained yolov8s.pt checkpoint and was conducted with the following key parameters:

# Base model used for finetuning
model = YOLO('yolov8s.pt') 

# Training parameters
results = model.train(
    data='dataset/data_autosplit.yaml', # Path to the custom dataset
    epochs=30,           # Number of training epochs
    patience=10,         # Early stopping patience
    batch=16,            # Batch size (adjust based on GPU memory)
    imgsz=640,           # Image size for training
    name='yolov8_large_dataset_v1', # Run name

    # Augmentation parameters
    degrees=180,         # Random rotation (0-180 degrees)
    translate=0.1,       # Image translation (0-1)
    scale=0.5,           # Image scaling (0-1)
    shear=10,            # Image shearing (degrees)
    perspective=0.001,   # Image perspective (0-0.001)
    fliplr=0.5,          # Horizontal flip (probability)
    flipud=0.5,          # Vertical flip (probability)
    cutmix=0.2,          # CutMix augmentation (probability)
)

The combination of a robust base model, a diverse custom dataset, and carefully selected training parameters aims to provide high accuracy and generalization for barcode and QR code detection across various real-world scenarios.

While the table below provides a general overview of the YOLOv8s base model's performance on the COCO dataset, which serves as a reference for its architectural capabilities. Please note that the performance metrics for YOLOV8s_Barcode_Detection.pt will differ, reflecting its specialized training on barcode and QR code data.

See Detection Docs for usage examples with these models trained on COCO, which include 80 pre-trained classes.

Modelsize(pixels)mAPval50-95SpeedCPU ONNX(ms)SpeedA100 TensorRT(ms)params(M)FLOPs(B)
YOLOv8s64044.9128.41.2011.228.6
  • mAPval values are for single-model single-scale on COCO val2017 dataset. Reproduce by yolo val detect data=coco.yaml device=0
  • Speed averaged over COCO val images using an Amazon EC2 P4d instance. Reproduce by yolo val detect data=coco.yaml batch=1 device=0|cpu

Performance and Results

Below are the key performance metrics and visualizations from the training and validation of the YOLOV8s_Barcode_Detection.pt model.

Key Metrics from Training (Last Epoch)

MetricValue
metrics/precision(B)0.97545
metrics/recall(B)0.99127
metrics/mAP50(B)0.98643
metrics/mAP50-95(B)0.77643
val/box_loss0.988
val/cls_loss0.43007
val/dfl_loss1.11172

These metrics demonstrate the model's high precision and recall, especially at an IoU threshold of 0.5 (mAP50), indicating excellent performance in detecting both barcode and QR code instances.

Visual Results

Here are various plots generated during the training process, providing deeper insights into the model's performance and behavior:

Plot TypeDescriptionImage
F1-Confidence CurveThis curve shows the F1 score across different confidence thresholds for both barcode and QR code classes, as well as the overall F1 score. The peak F1 of 0.98 is achieved at a confidence of 0.553.
Precision-Confidence CurveThis plot illustrates how precision changes with varying confidence thresholds. A high precision of 1.00 is achieved at a confidence of 0.928.
Precision-Recall CurveThe Precision-Recall curve highlights the trade-off between precision and recall. The model achieved an impressive overall mAP@0.5 of 0.986, with individual class scores of 0.979 for barcode and 0.992 for qrcode.
Recall-Confidence CurveThis curve shows the recall performance at different confidence thresholds.
Confusion Matrix (Normalized)The normalized confusion matrix shows the proportion of true positives, false positives, and false negatives for each class, normalized by the true class count.
Confusion Matrix (Absolute Counts)The absolute confusion matrix shows the raw counts of true positives, false positives, and false negatives for each class.
Dataset DistributionThis plot provides insights into the distribution of instances within the dataset, including class counts, bounding box shapes, and centroid locations.
Training & Validation CurvesThese plots track the training and validation losses (box, classification, DFL) and performance metrics (precision, recall, mAP) across all epochs, demonstrating the model's learning progression.

Example Prediction Batches

Visual examples of the model's predictions on validation images, showing detected bounding boxes and class labels (before and after confidence thresholding for clarity).

License

Ultralytics offers two licensing options to accommodate diverse use cases:

  • AGPL-3.0 License: This OSI-approved open-source license is ideal for students and enthusiasts, promoting open collaboration and knowledge sharing. See the LICENSE file for more details. –––

Как запустить

На своей GPU в ailist. Цена — по текущим предложениям провайдеров

GPU в ailist

Универсальный рантайм · ultralytics

Нельзя запустить

Модели Ultralytics YOLO требуют отдельного рантайма.

Ревизия весов
59098fa

0 моделей