YOLOv8 के साथ ऑब्जेक्ट डिटेक्शन
ultralytics YOLO, model.predict(), bounding boxes, confidence फ़िल्टरिंग और कस्टम प्रशिक्षण।
YOLOv8 के साथ ऑब्जेक्ट डिटेक्शन, CoddyKit पर पाइथन के साथ एआई सीखें का एक निःशुल्क पाठ है। यह 4 में से 4वाँ पाठ है। इस अध्ययन पथ के 3 तक कोई भी पाठ पूरा पढ़ना निःशुल्क है — इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ व्यावहारिक अभ्यास भी उपलब्ध कराता है। यह पाइथन के साथ एआई सीखें सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। पाइथन के साथ एआई सीखें पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
वर्गीकरण बनाम पहचान
चित्र वर्गीकरण बताता है कि उसमें क्या है। वस्तु पहचान इससे आगे जाकर यह पता लगाती है कि प्रत्येक वस्तु कहाँ है और उसके चारों ओर सीमा-आयत तथा लेबल बनाती है। YOLO सबसे लोकप्रिय वास्तविक-समय पहचानकर्ताओं में से एक है।
YOLO क्या है?
YOLO (You Only Look Once) एक ही आगे की गणना में सभी वस्तुओं की पहचान करता है, इसलिए यह वीडियो के लिए पर्याप्त तेज़ है। Ultralytics का YOLOv8 अनुमान और प्रशिक्षण के लिए एक सरल Python एपीआई प्रदान करता है।
pip install ultralyticsपूर्व-प्रशिक्षित मॉडल लोड करना
YOLO आयात करके एक चेकपॉइंट लोड करें। yolov8n.pt नैनो मॉडल है: बहुत छोटा और तेज़। बड़े संस्करण (s, m, l, x) गति के बदले बेहतर सटीकता देते हैं। पहली बार उपयोग करने पर भार अपने-आप डाउनलोड हो जाते हैं।
from ultralytics import YOLO
model = YOLO("yolov8n.pt")अनुमान चलाना
किसी चित्र पथ, URL या सारणी पर model.predict (या केवल model(image)) कॉल करें। यह परिणामों की एक सूची लौटाता है, जिसमें प्रत्येक इनपुट चित्र के लिए एक परिणाम होता है।
results = model.predict("street.jpg", conf=0.5)conf सीमा
conf पैरामीटर किसी पहचान को बनाए रखने के लिए न्यूनतम विश्वास-मान तय करता है। अनिश्चित सीमा-आयत हटाने के लिए इसे बढ़ाएँ, जिससे गलत सकारात्मक परिणाम कम होंगे; अधिक वस्तुएँ पकड़ने के लिए इसे घटाएँ, हालांकि शोर बढ़ सकता है।
results = model.predict("street.jpg", conf=0.25) # more detections
results = model.predict("street.jpg", conf=0.7) # only confident onesसीमा-आयत पढ़ना
हर परिणाम में एक boxes ऑब्जेक्ट होता है। boxes.xyxy सीमा-आयत के कोनों को [x1, y1, x2, y2] के रूप में देता है, जहाँ ये ऊपर-बाएँ और नीचे-दाएँ पिक्सेल निर्देशांक होते हैं।
r = results[0]
print(r.boxes.xyxy) # tensor of [x1, y1, x2, y2] rowsवर्ग और विश्वास-मान
सीमा-आयतों के साथ आपको boxes.cls (वर्ग सूचकांक) और boxes.conf (विश्वास-मान) मिलते हैं। सूचकांकों को नामों में बदलने के लिए model.names का उपयोग करें।
for box in r.boxes:
cls_id = int(box.cls)
conf = float(box.conf)
name = model.names[cls_id]
print(name, round(conf, 2))परिणामों को दृश्य रूप देना
results[0].plot() एक ऐसी टिप्पणी-सहित चित्र-सारणी लौटाता है, जिस पर सीमा-आयत और लेबल बने होते हैं तथा जिसे दिखाने या सहेजने के लिए तुरंत उपयोग किया जा सकता है। यह पहचानों की जल्दी जाँच करने के लिए उपयोगी है।
annotated = results[0].plot()
import cv2
cv2.imwrite("output.jpg", annotated)वीडियो में पहचान करना
कोई वीडियो फ़ाइल या वेबकैम सूचकांक दें और YOLO हर फ़्रेम को संसाधित करेगा। stream=True के साथ यह परिणामों को फ़्रेम-दर-फ़्रेम देता है, जिससे लंबे वीडियो में मेमोरी की खपत कम रहती है।
for result in model.predict("clip.mp4", stream=True):
boxes = result.boxes
# process each frameकस्टम प्रशिक्षण
अपनी वस्तु श्रेणियों की पहचान करने के लिए YAML फ़ाइल में वर्णित लेबल वाले डेटासेट पर प्रशिक्षण दें। डेटा कॉन्फ़िगरेशन, युगों और चित्र के आकार के साथ model.train कॉल करें। YOLO पूर्व-प्रशिक्षित भारों को नए डेटा के अनुसार समायोजित करता है।
model = YOLO("yolov8n.pt")
model.train(
data="my_dataset.yaml",
epochs=50,
imgsz=640
)डेटा YAML
डेटासेट YAML में प्रशिक्षण और सत्यापन वाले चित्र फ़ोल्डर तथा वर्गों के नाम दिए जाते हैं। YOLO को अपेक्षा होती है कि हर चित्र के साथ एक संबंधित लेबल फ़ाइल हो, जिसमें प्रत्येक वस्तु के सामान्यीकृत सीमा-आयत निर्देशांक दिए गए हों।
# my_dataset.yaml
# train: images/train
# val: images/val
# names:
# 0: helmet
# 1: vestत्वरित जाँच
YOLOv8 की अपनी समझ जाँचें।
पुनरावलोकन: YOLOv8 से वस्तु पहचान
आपने YOLO("yolov8n.pt") से पूर्व-प्रशिक्षित पहचानकर्ता लोड किया, model.predict(img, conf=0.5) चलाया और results[0].boxes.xyxy, .cls तथा .conf से पहचानों को पढ़ा। आपने results[0].plot() से परिणामों को दृश्य रूप दिया और डेटा YAML के साथ model.train के माध्यम से कस्टम वर्गों पर मॉडल को नए डेटा के अनुसार समायोजित किया।
एआई शिक्षक के साथ Python सीखें — निःशुल्क
अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।
- पाठ्यक्रम
- 53
- पाठ
- 225
अक्सर पूछे जाने वाले प्रश्न
क्या “YOLOv8 के साथ ऑब्जेक्ट डिटेक्शन” पाठ निःशुल्क है?
हाँ — पाइथन के साथ एआई सीखें अध्ययन पथ के 3 तक कोई भी पाठ, जिसमें “YOLOv8 के साथ ऑब्जेक्ट डिटेक्शन” भी शामिल है, यहाँ वेब पर पूरा पढ़ना निःशुल्क है। इसके बाद CoddyKit PRO हर पाठ अनलॉक करता है, साथ ही अंतर्निर्मित कोड संपादक और चौबीसों घंटे एआई शिक्षक के साथ इंटरैक्टिव अभ्यास भी उपलब्ध कराता है। पाइथन के साथ एआई सीखें पाठ्यक्रम में कुल 4 पाठ शामिल हैं।
“YOLOv8 के साथ ऑब्जेक्ट डिटेक्शन” में मैं क्या सीखूँगा?
ultralytics YOLO, model.predict(), bounding boxes, confidence फ़िल्टरिंग और कस्टम प्रशिक्षण। आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ पाइथन के साथ एआई सीखें का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।
क्या पाइथन के साथ एआई सीखें शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?
पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर पाइथन के साथ एआई सीखें शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 4वाँ पाठ है।
“YOLOv8 के साथ ऑब्जेक्ट डिटेक्शन” पाठ पूरा करने में कितना समय लगता है?
CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।
क्या मैं इस पाइथन के साथ एआई सीखें पाठ में कोड लिख और चला सकता हूँ?
हाँ। हर पाइथन के साथ एआई सीखें पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।
इस पाठ्यक्रम के सभी पाठ
- PyTorch टेंसर और Autograd
- कस्टम डेटासेट और DataLoaders
- PyTorch में CNN बनाना और प्रशिक्षित करना
- YOLOv8 के साथ ऑब्जेक्ट डिटेक्शन