सामग्री पर जाएं

ऑब्जेक्ट डिटेक्शन डेटासेट ओवरview

एक मजबूत और सटीक ऑब्जेक्ट डिटेक्शन मॉडल को प्रशिक्षित करने के लिए एक व्यापक डेटासेट की आवश्यकता होती है। यह मार्गदर्शिका डेटासेट के विभिन्न स्वरूपों का परिचय देती है जो संगत हैं Ultralytics YOLO मॉडल और उनकी संरचना, उपयोग और विभिन्न स्वरूपों के बीच रूपांतरण करने के तरीके में अंतर्दृष्टि प्रदान करता है।

समर्थित डेटासेट प्रारूप

Ultralytics YOLO प्रारूप

वही Ultralytics YOLO प्रारूप एक डेटासेट कॉन्फ़िगरेशन प्रारूप है जो आपको डेटासेट रूट निर्देशिका, प्रशिक्षण/सत्यापन/परीक्षण छवि निर्देशिकाओं के सापेक्ष पथ या *.txt छवि पथ वाली फ़ाइलें, और वर्ग नामों का एक शब्दकोश। यहाँ एक उदाहरण है:

# 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/coco8  # dataset root dir
train: images/train  # train images (relative to 'path') 4 images
val: images/val  # val images (relative to 'path') 4 images
test:  # test images (optional)

# Classes (80 COCO classes)
names:
  0: person
  1: bicycle
  2: car
  # ...
  77: teddy bear
  78: hair drier
  79: toothbrush

इस प्रारूप के लिए लेबल को निर्यात किया जाना चाहिए YOLO एक के साथ प्रारूप *.txt प्रति छवि फ़ाइल। यदि किसी छवि में कोई ऑब्जेक्ट नहीं हैं, तो नहीं *.txt फ़ाइल आवश्यक है। वही *.txt फ़ाइल को प्रति ऑब्जेक्ट एक पंक्ति के साथ स्वरूपित किया जाना चाहिए class x_center y_center width height प्रारूप। बॉक्स निर्देशांक अंदर होना चाहिए सामान्यीकृत XYWH फ़ॉर्मैट (0 से 1 तक). यदि आपके बॉक्स पिक्सेल में हैं, तो आपको विभाजित करना चाहिए x_center और width छवि चौड़ाई द्वारा, और y_center और height छवि ऊंचाई से। कक्षा संख्या शून्य-अनुक्रमित होनी चाहिए (0 से शुरू करें)।

लेबल की गई छवि का उदाहरण

उपरोक्त छवि के अनुरूप लेबल फ़ाइल में 2 व्यक्ति (वर्ग ) शामिल हैं 0) और एक टाई (वर्ग 27):

उदाहरण लेबल फ़ाइल

वापरताना Ultralytics YOLO प्रारूप, अपने प्रशिक्षण और सत्यापन छवियों और लेबल को व्यवस्थित करें जैसा कि नीचे दिए गए उदाहरण में दिखाया गया है।

उदाहरण डेटासेट निर्देशिका संरचना

उपयोग

यहां बताया गया है कि आप अपने मॉडल को प्रशिक्षित करने के लिए इन प्रारूपों का उपयोग कैसे कर सकते हैं:

उदाहरण

from ultralytics import YOLO

# Load a model
model = YOLO('yolov8n.pt')  # load a pretrained model (recommended for training)

# Train the model
results = model.train(data='coco8.yaml', epochs=100, imgsz=640)
# Start training from a pretrained *.pt model
yolo detect train data=coco8.yaml model=yolov8n.pt epochs=100 imgsz=640

समर्थित डेटासेट

यहां समर्थित डेटासेट की सूची और प्रत्येक के लिए एक संक्षिप्त विवरण दिया गया है:

  • Argoverse: स्वायत्त वाहनों से एकत्र किए गए सेंसर डेटा का एक संग्रह। इसमें कार ऑब्जेक्ट्स के लिए 3D ट्रैकिंग एनोटेशन शामिल हैं।
  • COCO: कॉमन ऑब्जेक्ट्स इन कॉन्टेक्स्ट (COCO) 80 ऑब्जेक्ट श्रेणियों के साथ एक बड़े पैमाने पर ऑब्जेक्ट डिटेक्शन, सेगमेंटेशन और कैप्शनिंग डेटासेट है।
  • COCO8: COCO डेटासेट का एक छोटा सबसेट, COCO8 प्रशिक्षित करने के लिए अधिक हल्का और तेज़ है।
  • GlobalWheat2020: ग्लोबल व्हीट चैलेंज 2020 के लिए गेहूं के प्रमुखों की छवियों वाला एक डेटासेट।
  • Objects365: 365 ऑब्जेक्ट श्रेणियों और 600k छवियों के साथ एक बड़े पैमाने पर ऑब्जेक्ट डिटेक्शन डेटासेट, जिसका उद्देश्य ऑब्जेक्ट डिटेक्शन रिसर्च को आगे बढ़ाना है।
  • OpenImagesV7: 1.7M ट्रेन छवियों और 42k सत्यापन छवियों के साथ Google द्वारा एक व्यापक डेटासेट।
  • SKU-110K: एक डेटासेट जिसमें घने पैक वाले खुदरा उत्पादों की छवियां होती हैं, जिसका उद्देश्य खुदरा पर्यावरण वस्तु का पता लगाना है।
  • VisDrone: ड्रोन-आधारित छवियों पर केंद्रित एक डेटासेट, जिसमें कारों, पैदल चलने वालों और साइकिल चालकों जैसी विभिन्न वस्तु श्रेणियां होती हैं।
  • VOC: पास्कल VOC वाहनों, जानवरों और फर्नीचर सहित 20 ऑब्जेक्ट श्रेणियों के साथ एक लोकप्रिय ऑब्जेक्ट डिटेक्शन डेटासेट है।
  • xView: उच्च-रिज़ॉल्यूशन उपग्रह इमेजरी युक्त एक डेटासेट, जिसे ओवरहेड दृश्यों में विभिन्न ऑब्जेक्ट वर्गों का पता लगाने के लिए डिज़ाइन किया गया है।

अपना खुद का डेटासेट जोड़ना

यदि आपके पास अपना डेटासेट है और आप इसका उपयोग प्रशिक्षण पहचान मॉडल के लिए करना चाहते हैं Ultralytics YOLO प्रारूप, सुनिश्चित करें कि यह ऊपर निर्दिष्ट प्रारूप का पालन करता है "Ultralytics YOLO प्रारूप"। अपने एनोटेशन को आवश्यक प्रारूप में कनवर्ट करें और YAML कॉन्फ़िगरेशन फ़ाइल में पथ, कक्षाओं की संख्या और वर्ग के नाम निर्दिष्ट करें।

पोर्ट या कन्वर्ट लेबल प्रारूप

COCO डेटासेट प्रारूप को YOLO प्रारूप

आप आसानी से लोकप्रिय COCO डेटासेट प्रारूप से लेबल को में बदल सकते हैं YOLO निम्न कोड स्निपेट का उपयोग करके स्वरूपित करें:

उदाहरण

from ultralytics.data.converter import convert_coco

convert_coco(labels_dir='path/to/coco/annotations/')

इस रूपांतरण उपकरण का उपयोग COCO डेटासेट या COCO प्रारूप में किसी भी डेटासेट को बदलने के लिए किया जा सकता है Ultralytics YOLO प्रारूप।

दोबारा जांचना याद रखें कि आप जिस डेटासेट का उपयोग करना चाहते हैं वह आपके मॉडल के अनुकूल है और आवश्यक प्रारूप सम्मेलनों का पालन करता है। सफल ऑब्जेक्ट डिटेक्शन मॉडल के प्रशिक्षण के लिए उचित रूप से स्वरूपित डेटासेट महत्वपूर्ण हैं।



2023-11-12 बनाया गया, अपडेट किया गया 2024-01-14
लेखक: ग्लेन-जोचर (6)

टिप्पणियाँ