İçeriğe geç

SKU-110k Veri Seti

The SKU-110k dataset is a collection of densely packed retail shelf images, designed to support research in object detection tasks. Developed by Eran Goldman et al., the dataset contains over 110,000 unique store keeping unit (SKU) categories with densely packed objects, often looking similar or even identical, positioned in close proximity.



İzle: Ultralytics | Perakende Veri Kümesi kullanılarak SKU-110k Veri Kümesi üzerinde YOLOv10 Nasıl Eğitilir

Veri kümesi örnek görüntüsü

Temel Özellikler

  • SKU-110k, dünyanın dört bir yanından mağaza raflarının görüntülerini içerir ve son teknoloji ürünü nesne dedektörleri için zorluk teşkil eden yoğun şekilde paketlenmiş nesneler içerir.
  • Veri kümesi, 110.000'den fazla benzersiz SKU kategorisi içermekte ve çok çeşitli nesne görünümleri sağlamaktadır.
  • Ek açıklamalar, nesneler için sınırlayıcı kutular ve SKU kategori etiketlerini içerir.

Veri Kümesi Yapısı

SKU-110k veri kümesi üç ana alt küme halinde düzenlenmiştir:

  1. Eğitim seti: Bu alt küme, nesne algılama modellerini eğitmek için kullanılan görüntüleri ve ek açıklamaları içerir.
  2. Doğrulama seti: Bu alt küme, eğitim sırasında model doğrulaması için kullanılan görüntülerden ve ek açıklamalardan oluşur.
  3. Test kümesi: Bu alt küme, eğitilmiş nesne algılama modellerinin nihai değerlendirmesi için tasarlanmıştır.

Uygulamalar

The SKU-110k dataset is widely used for training and evaluating deep learning models in object detection tasks, especially in densely packed scenes such as retail shelf displays. The dataset's diverse set of SKU categories and densely packed object arrangements make it a valuable resource for researchers and practitioners in the field of computer vision.

Veri Kümesi YAML

Veri kümesi yapılandırmasını tanımlamak için bir YAML (Yet Another Markup Language) dosyası kullanılır. Veri kümesinin yolları, sınıfları ve diğer ilgili bilgiler hakkında bilgi içerir. SKU-110K veri kümesi için SKU-110K.yaml dosyası şu adreste tutulur https://github.com/ultralytics/ultralytics/blob/main/ultralytics/cfg/datasets/SKU-110K.yaml.

ultralytics/cfg/datasets/SKU-110K.yaml

# Ultralytics YOLO 🚀, AGPL-3.0 license
# SKU-110K retail items dataset https://github.com/eg4000/SKU110K_CVPR19 by Trax Retail
# Documentation: https://docs.ultralytics.com/datasets/detect/sku-110k/
# Example usage: yolo train data=SKU-110K.yaml
# parent
# ├── ultralytics
# └── datasets
#     └── SKU-110K  ← downloads here (13.6 GB)

# Train/val/test sets as 1) dir: path/to/imgs, 2) file: path/to/imgs.txt, or 3) list: [path/to/imgs1, path/to/imgs2, ..]
path: ../datasets/SKU-110K # dataset root dir
train: train.txt # train images (relative to 'path')  8219 images
val: val.txt # val images (relative to 'path')  588 images
test: test.txt # test images (optional)  2936 images

# Classes
names:
  0: object

# Download script/URL (optional) ---------------------------------------------------------------------------------------
download: |
  import shutil
  from pathlib import Path

  import numpy as np
  import pandas as pd
  from tqdm import tqdm

  from ultralytics.utils.downloads import download
  from ultralytics.utils.ops import xyxy2xywh

  # Download
  dir = Path(yaml['path'])  # dataset root dir
  parent = Path(dir.parent)  # download dir
  urls = ['http://trax-geometry.s3.amazonaws.com/cvpr_challenge/SKU110K_fixed.tar.gz']
  download(urls, dir=parent)

  # Rename directories
  if dir.exists():
      shutil.rmtree(dir)
  (parent / 'SKU110K_fixed').rename(dir)  # rename dir
  (dir / 'labels').mkdir(parents=True, exist_ok=True)  # create labels dir

  # Convert labels
  names = 'image', 'x1', 'y1', 'x2', 'y2', 'class', 'image_width', 'image_height'  # column names
  for d in 'annotations_train.csv', 'annotations_val.csv', 'annotations_test.csv':
      x = pd.read_csv(dir / 'annotations' / d, names=names).values  # annotations
      images, unique_images = x[:, 0], np.unique(x[:, 0])
      with open((dir / d).with_suffix('.txt').__str__().replace('annotations_', ''), 'w') as f:
          f.writelines(f'./images/{s}\n' for s in unique_images)
      for im in tqdm(unique_images, desc=f'Converting {dir / d}'):
          cls = 0  # single-class dataset
          with open((dir / 'labels' / im).with_suffix('.txt'), 'a') as f:
              for r in x[images == im]:
                  w, h = r[6], r[7]  # image width, height
                  xywh = xyxy2xywh(np.array([[r[1] / w, r[2] / h, r[3] / w, r[4] / h]]))[0]  # instance
                  f.write(f"{cls} {xywh[0]:.5f} {xywh[1]:.5f} {xywh[2]:.5f} {xywh[3]:.5f}\n")  # write label

Kullanım

To train a YOLO11n model on the SKU-110K dataset for 100 epochs with an image size of 640, you can use the following code snippets. For a comprehensive list of available arguments, refer to the model Training page.

Tren Örneği

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="SKU-110K.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=SKU-110K.yaml model=yolo11n.pt epochs=100 imgsz=640

Örnek Veriler ve Açıklamalar

SKU-110k veri kümesi, nesne algılama görevleri için zengin bir bağlam sağlayan, yoğun şekilde paketlenmiş nesneler içeren çeşitli perakende raf görüntüleri içerir. İşte veri kümesinden bazı veri örnekleri ve bunlara karşılık gelen ek açıklamalar:

Veri kümesi örnek görüntüsü

  • Yoğun şekilde paketlenmiş perakende raf görüntüsü: Bu görüntü, bir perakende raf ortamında yoğun şekilde paketlenmiş nesnelerin bir örneğini göstermektedir. Nesneler, sınırlayıcı kutular ve SKU kategori etiketleri ile açıklanmıştır.

Örnek, SKU-110k veri kümesindeki verilerin çeşitliliğini ve karmaşıklığını sergilemekte ve nesne algılama görevleri için yüksek kaliteli verilerin önemini vurgulamaktadır.

Atıflar ve Teşekkür

Araştırma veya geliştirme çalışmalarınızda SKU-110k veri setini kullanıyorsanız, lütfen aşağıdaki makaleye atıfta bulunun:

@inproceedings{goldman2019dense,
 author    = {Eran Goldman and Roei Herzig and Aviv Eisenschtat and Jacob Goldberger and Tal Hassner},
 title     = {Precise Detection in Densely Packed Scenes},
 booktitle = {Proc. Conf. Comput. Vision Pattern Recognition (CVPR)},
 year      = {2019}
}

SKU-110k veri setini bilgisayarla görme araştırma topluluğu için değerli bir kaynak olarak oluşturdukları ve sürdürdükleri için Eran Goldman ve arkadaşlarına teşekkür ederiz. SKU-110k veri kümesi ve yaratıcıları hakkında daha fazla bilgi için SKU-110k veri kümesi GitHub deposunu ziyaret edin.

SSS

SKU-110k veri seti nedir ve nesne tespiti için neden önemlidir?

SKU-110k veri kümesi, nesne algılama görevlerinde araştırmalara yardımcı olmak için tasarlanmış yoğun şekilde paketlenmiş perakende raf görüntülerinden oluşur. Eran Goldman ve arkadaşları tarafından geliştirilen bu veri seti 110.000'den fazla benzersiz SKU kategorisi içermektedir. Önemi, farklı nesne görünümleri ve yakınlıklarıyla son teknoloji nesne dedektörlerini zorlama kabiliyetinde yatmaktadır ve bu da onu bilgisayarla görme alanındaki araştırmacılar ve uygulayıcılar için paha biçilmez bir kaynak haline getirmektedir. SKU-110k Veri Kümesi bölümümüzde veri kümesinin yapısı ve uygulamaları hakkında daha fazla bilgi edinin.

SKU-110k veri kümesini kullanarak bir YOLO11 modelini nasıl eğitebilirim?

SKU-110k veri kümesi üzerinde bir YOLO11 modelini eğitmek kolaydır. İşte 640 görüntü boyutuyla 100 epok için bir YOLO11n modelini eğitmek için bir örnek:

Tren Örneği

from ultralytics import YOLO

# Load a model
model = YOLO("yolo11n.pt")  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data="SKU-110K.yaml", epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=SKU-110K.yaml model=yolo11n.pt epochs=100 imgsz=640

Mevcut argümanların kapsamlı bir listesi için model Eğitim sayfasına bakın.

SKU-110k veri kümesinin ana alt kümeleri nelerdir?

SKU-110k veri kümesi üç ana alt küme halinde düzenlenmiştir:

  1. Eğitim seti: Nesne algılama modellerini eğitmek için kullanılan görüntüleri ve açıklamaları içerir.
  2. Doğrulama seti: Eğitim sırasında model doğrulaması için kullanılan görüntüler ve ek açıklamalardan oluşur.
  3. Test seti: Eğitilmiş nesne algılama modellerinin son değerlendirmesi için tasarlanmıştır.

Daha fazla ayrıntı için Veri Kümesi Yapısı bölümüne bakın.

SKU-110k veri kümesini eğitim için nasıl yapılandırabilirim?

SKU-110k veri kümesi yapılandırması, veri kümesinin yolları, sınıfları ve diğer ilgili bilgilerle ilgili ayrıntıları içeren bir YAML dosyasında tanımlanır. Bu dosya SKU-110K.yaml dosyası şu adreste tutulur SKU-110K.yaml. Örneğin, bu yapılandırmayı kullanarak bir modeli şu örnekte gösterildiği gibi eğitebilirsiniz Kullanım Bölüm.

What are the key features of the SKU-110k dataset in the context of deep learning?

SKU-110k veri kümesi, dünyanın dört bir yanından mağaza raflarının görüntülerini içeriyor ve nesne dedektörleri için önemli zorluklar oluşturan yoğun şekilde paketlenmiş nesneleri sergiliyor:

  • 110.000'den fazla benzersiz SKU kategorisi
  • Çeşitli nesne görünümleri
  • Ek açıklamalar sınırlayıcı kutuları ve SKU kategori etiketlerini içerir

Bu özellikler SKU-110k veri setini nesne algılama görevlerinde derin öğrenme modellerini eğitmek ve değerlendirmek için özellikle değerli kılmaktadır. Daha fazla ayrıntı için Temel Özellikler bölümüne bakın.

Araştırmamda SKU-110k veri setinden nasıl alıntı yapabilirim?

Araştırma veya geliştirme çalışmalarınızda SKU-110k veri setini kullanıyorsanız, lütfen aşağıdaki makaleye atıfta bulunun:

@inproceedings{goldman2019dense,
 author    = {Eran Goldman and Roei Herzig and Aviv Eisenschtat and Jacob Goldberger and Tal Hassner},
 title     = {Precise Detection in Densely Packed Scenes},
 booktitle = {Proc. Conf. Comput. Vision Pattern Recognition (CVPR)},
 year      = {2019}
}

Veri seti hakkında daha fazla bilgi için Alıntılar ve Teşekkür bölümüne bakabilirsiniz.

📅 1 yıl önce oluşturuldu ✏️ 1 ay önce güncellendi

Yorumlar