पोज निर्धारण
पोज निर्धारण एक कार्य है जिसमें एक छवि में विशेष बिंदुओं के स्थान की पहचान करना शामिल होता है, जिसे आमतौर पर कीपॉइंट्स के रूप में कहा जाता है। कीपॉइंट्स विभिन्न अंगों, भूमिकाओं या अन्य विशिष्ट सुविधाओं आदि के रूप में वस्तु के विभिन्न हिस्सों को प्रतिष्ठित कर सकते हैं। कीपॉइंट्स के स्थान आमतौर पर 2D [x, y]
या 3D [x, y, दिखाई देने वाला]
कोआर्डिनेट के सेट के रूप में प्रदर्शित होते हैं।
पोज निर्धारण मॉडल की उत्पादन एक छवि में वस्तु के कीपॉइंट्स को प्रतिष्ठित करने वाले कुछ बिंदुओं का सेट होती है, आमतौर पर हर बिंदु के लिए विश्वसनीयता स्कोर के साथ। पोज निर्धारण उचित विकल्प है जब आपको स्टीन में एक वस्तु के विशेष हिस्सों की पहचान करनी होती है और विभिन्न हिस्सों के लिए उनके स्थान की पहचान करनी होती है।
देखें: Ultralytics YOLOv8 के साथ पोज निर्धारण।
युक्ति
YOLOv8 pose मॉडल में -pose
सफिक्स का उपयोग किया जाता है, जैसे yolov8n-pose.pt
। ये मॉडल COCO कीपॉइंट डेटासेट पर प्रशिक्षित होते हैं और विभिन्न पोज निर्धारण कार्यों के लिए उपयुक्त होते हैं।
मॉडल्स
YOLOv8 पूर्वानुमानित पोज मॉडलस यहाँ दिखाए जाते हैं। पहचानें, अंश और पोज मॉडल मुख्यतः COCO डेटासेट पर प्रशिक्षित हैं, जबकि क्लासिफाई मॉडल्स को ImageNet डेटासेट पर प्रशिक्षित किया जाता है।
पूर्वानुमानित मॉडल Models
को Ultralytics के नवीनतम रिलीज़ से स्वचालित रूप से डाउनलोड करेंगे।
मॉडल | आकार (तत्व) |
mAPपोज 50-95 |
mAPपोज 50 |
ह्वेग CPU ONNX (ms) |
ह्वेग A100 TensorRT (ms) |
पैराम्स (M) |
FLOPs (B) |
---|---|---|---|---|---|---|---|
YOLOv8n-pose | 640 | 50.4 | 80.1 | 131.8 | 1.18 | 3.3 | 9.2 |
YOLOv8s-pose | 640 | 60.0 | 86.2 | 233.2 | 1.42 | 11.6 | 30.2 |
YOLOv8m-pose | 640 | 65.0 | 88.8 | 456.3 | 2.00 | 26.4 | 81.0 |
YOLOv8l-pose | 640 | 67.6 | 90.0 | 784.5 | 2.59 | 44.4 | 168.6 |
YOLOv8x-pose | 640 | 69.2 | 90.2 | 1607.1 | 3.73 | 69.4 | 263.2 |
YOLOv8x-pose-p6 | 1280 | 71.6 | 91.2 | 4088.7 | 10.04 | 99.1 | 1066.4 |
- mAPval मान एकल मॉडल एकल स्केल पर COCO कीपॉइंट val2017 डेटासेट पर है।
yolo val pose data=coco-pose.yaml device=0
के द्वारा पुनरोत्पादित करें - Speed Amazon EC2 P4d इन्स्टेंस का उपयोग करते हुए COCO val छवियों पर औसतित गणना।
yolo val pose data=coco8-pose.yaml batch=1 device=0|cpu
के द्वारा पुनरार्चन करें
ट्रेन
COCO128-pose डेटासेट पर YOLOv8-pose मॉडल को प्रशिक्षित करें।
उदाहरण
from ultralytics import YOLO
# एक मॉडल लोड करें
model = YOLO('yolov8n-pose.yaml') # YAML से एक नया मॉडल बनाएँ
model = YOLO('yolov8n-pose.pt') # पूर्वानुमानित मॉडल लोड करें (प्रशिक्षण के लिए सिफारिश किया जाता है)
model = YOLO('yolov8n-pose.yaml').load('yolov8n-pose.pt') # YAML से बनाएँ और वजन स्थानांतरित करें
# मॉडल को प्रशिक्षित करें
results = model.train(data='coco8-pose.yaml', epochs=100, imgsz=640)
# YAML से नया मॉडल बनाएँ और पूर्वानुमानित वजन स्थानांतरित करना शुरू करें
yolo pose train data=coco8-pose.yaml model=yolov8n-pose.yaml epochs=100 imgsz=640
# पूर्वानुमानित *.pt मॉडल से प्रशिक्षण शुरू करें
yolo pose train data=coco8-pose.yaml model=yolov8n-pose.pt epochs=100 imgsz=640
# YAML से नया मॉडल बनाएँ, पूर्वानुमानित वजनों को स्थानांतरित करें और प्रशिक्षण शुरू करें
yolo pose train data=coco8-pose.yaml model=yolov8n-pose.yaml pretrained=yolov8n-pose.pt epochs=100 imgsz=640
डेटासेट प्रारूप
YOLO पोज डेटासेट प्रारूप को विस्तार से डेटासेट गाइड में दिया गया है। अपनी मौजूदा डेटासेट को अन्य प्रारूपों (जैसे कि COCO आदि) से YOLO प्रारूप में रूपांतरित करने के लिए कृपया JSON2YOLO उपकरण का उपयोग करें।
मान्यता प्राप्त करें
COCO128-pose डेटासेट पर प्रशिक्षित YOLOv8n-pose मॉडल की सटीकता को मान्यता प्राप्त करें। model
के रूप में कोई आर्ग्युमेंट पारित करने की आवश्यकता नहीं है प्रशिक्षण data
और सेटिंग्स को मॉडल खिताबों के रूप में रखता है।
उदाहरण
from ultralytics import YOLO
# एक मॉडल लोड करें
model = YOLO('yolov8n-pose.pt') # रिपोर्टेड मॉडल लोड करें
model = YOLO('path/to/best.pt') # एक कस्टम मॉडल लोड करें
# मॉडल की सटीकता मान्यता प्राप्त करें
metrics = model.val() # कोई आर्ग्युमेंट आवश्यक नहीं है, डेटासेट और सेटिंग्स याद रखा जाता है
metrics.box.map # map50-95
metrics.box.map50 # map50
metrics.box.map75 # map75
metrics.box.maps # प्रत्येक श्रेणी के map50-95 सूची में है
पूर्वानुमान लगाएं
प्रशिक्षित YOLOv8n-pose मॉडल के साथ छवियों पर पूर्वानुमान चलाएं।
उदाहरण
एक्सपोर्ट
YOLOv8n पोज मॉडल को ONNX, CoreML जैसे अन्य प्रारूप में निर्यात करें।
उदाहरण
निर्यात के लिए उपलब्ध YOLOv8-pose निर्यात प्रारूप नीचे करें दिए गए हैं। आप निर्यात किए गए मॉडल पर सीधा पूर्वानुमान या मान्यता कर सकते हैं, उदाहरण के लिए yolo predict model=yolov8n-pose.onnx
। निर्यात पूरा होने के बाद अपने मॉडल के उपयोग के उदाहरण दिखाए गए हैं।
प्रारूप | format आर्ग्युमेंट |
मॉडल | मेटाडेटा | आर्ग्युमेंट। |
---|---|---|---|---|
PyTorch | - | yolov8n-pose.pt |
✅ | - |
TorchScript | torchscript |
yolov8n-pose.torchscript |
✅ | imgsz , optimize |
ONNX | onnx |
yolov8n-pose.onnx |
✅ | imgsz , half , dynamic , simplify , opset |
OpenVINO | openvino |
yolov8n-pose_openvino_model/ |
✅ | imgsz , half |
TensorRT | engine |
yolov8n-pose.engine |
✅ | imgsz , half , dynamic , simplify , workspace |
CoreML | coreml |
yolov8n-pose.mlpackage |
✅ | imgsz , half , int8 , nms |
TF SavedModel | saved_model |
yolov8n-pose_saved_model/ |
✅ | imgsz , keras |
TF GraphDef | pb |
yolov8n-pose.pb |
❌ | imgsz |
TF Lite | tflite |
yolov8n-pose.tflite |
✅ | imgsz , half , int8 |
TF Edge TPU | edgetpu |
yolov8n-pose_edgetpu.tflite |
✅ | imgsz |
TF.js | tfjs |
yolov8n-pose_web_model/ |
✅ | imgsz |
PaddlePaddle | paddle |
yolov8n-pose_paddle_model/ |
✅ | imgsz |
ncnn | ncnn |
yolov8n-pose_ncnn_model/ |
✅ | imgsz , half |
निर्यात विवरण के लिए निर्यात पृष्ठ देखें।