Link to this sectionPoz Tahmini#
Poz tahmini, genellikle anahtar noktalar (keypoints) olarak adlandırılan, bir görüntüdeki belirli noktaların konumunu belirlemeyi içeren bir görevdir. Anahtar noktalar eklemler, işaretler veya diğer ayırt edici özellikler gibi nesnenin çeşitli kısımlarını temsil edebilir. Anahtar noktaların konumları genellikle bir dizi 2D [x, y] koordinatı ve isteğe bağlı olarak bir görünürlük bayrağı [x, y, visible] ile temsil edilir.
Bir poz tahmini modelinin çıktısı, görüntüdeki bir nesnenin anahtar noktalarını temsil eden ve genellikle her nokta için güven skorlarıyla birlikte sunulan bir nokta kümesidir. Poz tahmini, bir sahnedeki bir nesnenin belirli kısımlarını ve bunların birbirlerine göre konumlarını belirlemeniz gerektiğinde iyi bir seçimdir.
Watch: How to Run Real-Time Pose Estimation with Ultralytics YOLO26 | Tracking & Keypoints Extraction 🕺
YOLO26 pose modelleri -pose sonekini kullanır; örneğin yolo26n-pose.pt. Bu modeller COCO keypoints veri kümesi üzerinde eğitilmiştir ve çeşitli poz tahmini görevleri için uygundur.
Varsayılan YOLO26 poz modelinde, her biri insan vücudunun farklı bir kısmını temsil eden 17 anahtar nokta bulunur. İşte her dizinin ilgili vücut eklemiyle eşleşmesi:
- Burun
- Sol Göz
- Sağ Göz
- Sol Kulak
- Sağ Kulak
- Sol Omuz
- Sağ Omuz
- Sol Dirsek
- Sağ Dirsek
- Sol Bilek
- Sağ Bilek
- Sol Kalça
- Sağ Kalça
- Sol Diz
- Sağ Diz
- Sol Ayak Bileği
- Sağ Ayak Bileği
Link to this sectionModeller#
Ultralytics YOLO26 önceden eğitilmiş Poz modelleri burada gösterilmektedir. Detect (Tespit), Segment (Segmentasyon) ve Pose (Poz) modelleri COCO veri kümesi üzerinde, Semantic modeller Cityscapes üzerinde ve Classify (Sınıflandırma) modelleri ImageNet veri kümesi üzerinde önceden eğitilmiştir.
Modeller ilk kullanımda en son Ultralytics sürümünden otomatik olarak indirilir.
| Model | boyut (piksel) | mAPpose 50-95(e2e) | mAPpose 50(e2e) | Hız CPU ONNX (ms) | Hız T4 TensorRT10 (ms) | parametreler (M) | FLOPs (B) |
|---|---|---|---|---|---|---|---|
| YOLO26n-pose | 640 | 57.2 | 83.3 | 40.3 ± 0.5 | 1.8 ± 0.0 | 2.9 | 7.5 |
| YOLO26s-pose | 640 | 63.0 | 86.6 | 85.3 ± 0.9 | 2.7 ± 0.0 | 10.4 | 23.9 |
| YOLO26m-pose | 640 | 68.8 | 89.6 | 218.0 ± 1.5 | 5.0 ± 0.1 | 21.5 | 73.1 |
| YOLO26l-pose | 640 | 70.4 | 90.5 | 275.4 ± 2.4 | 6.5 ± 0.1 | 25.9 | 91.3 |
| YOLO26x-pose | 640 | 71.6 | 91.6 | 565.4 ± 3.0 | 12.2 ± 0.2 | 57.6 | 201.7 |
- mAPval değerleri, COCO Keypoints val2017 veri kümesi üzerinde tek model ve tek ölçek içindir.
yolo val pose data=coco-pose.yaml device=0komutuyla yeniden oluşturun - Hız, Amazon EC2 P4d örneği kullanılarak COCO val görüntüleri üzerinde ortalaması alınmıştır.
yolo val pose data=coco-pose.yaml batch=1 device=0|cpukomutuyla yeniden oluşturun - Params (Parametreler) ve FLOPs değerleri, Conv ve BatchNorm katmanlarını birleştiren ve uçtan uca modeller için yardımcı bire-çok tespit başlığını kaldıran
model.fuse()işleminden sonraki birleştirilmiş model içindir. Önceden eğitilmiş kontrol noktaları tam eğitim mimarisini korur ve daha yüksek sayılar gösterebilir.
Link to this sectionEğit (Train)#
COCO8-pose veri kümesi üzerinde bir YOLO26-pose modeli eğitin. COCO8-pose veri kümesi, poz tahmini modellerinizi test etmek ve hata ayıklamak için mükemmel olan küçük bir örnek veri kümesidir.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-pose.yaml") # build a new model from YAML
model = YOLO("yolo26n-pose.pt") # load a pretrained model (recommended for training)
model = YOLO("yolo26n-pose.yaml").load("yolo26n-pose.pt") # build from YAML and transfer weights
# Train the model
results = model.train(data="coco8-pose.yaml", epochs=100, imgsz=640)train moduyla ilgili tüm ayrıntıları Train sayfasında bulabilirsin. Poz modelleri, Ultralytics Platform aracılığıyla bulut GPU'larda da eğitilebilir.
Link to this sectionVeri kümesi biçimi#
YOLO poz veri kümesi formatı, Veri Kümesi Kılavuzu bölümünde ayrıntılı olarak bulunabilir. Mevcut veri kümenizi diğer formatlardan (örneğin COCO vb.) YOLO formatına dönüştürmek için lütfen Ultralytics tarafından sunulan JSON2YOLO aracını kullan. Ultralytics Platform ayrıca kişi, el, yüz ve özel anahtar nokta düzenleri için yerleşik iskelet şablonları ile poz ek açıklamalarını destekler.
Özel poz tahmini görevleri için, hayvan poz tahmini için Tiger-Pose, el takibi için Hand Keypoints veya köpek pozu analizi için Dog-Pose gibi özel veri kümelerini de keşfedebilirsin.
Link to this sectionDoğrula (Val)#
Eğitilmiş YOLO26n-pose modelinin doğruluğunu COCO8-pose veri kümesi üzerinde doğrula. model nesnesi kendi eğitim data değerini ve argümanlarını model nitelikleri olarak koruduğu için herhangi bir argümana gerek yoktur.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-pose.pt") # load an official model
model = YOLO("path/to/best.pt") # load a custom model
# Validate the model
metrics = model.val() # no arguments needed, dataset and settings remembered
metrics.box.map # map50-95
metrics.box.map50 # map50
metrics.box.map75 # map75
metrics.box.maps # a list containing mAP50-95 for each category
metrics.box.image_metrics # per-image metrics dictionary for box with precision, recall, F1, TP, FP, and FN
metrics.pose.map # map50-95(P)
metrics.pose.map50 # map50(P)
metrics.pose.map75 # map75(P)
metrics.pose.maps # a list containing mAP50-95(P) for each category
metrics.pose.image_metrics # per-image metrics dictionary for pose with precision, recall, F1, TP, FP, and FNLink to this sectionTahmin Et (Predict)#
Görüntüler üzerinde tahminler yürütmek için eğitilmiş bir YOLO26n-pose modeli kullan. Tahmin modu, görüntüler, videolar veya gerçek zamanlı akışlar üzerinde çıkarım yapmanı sağlar.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-pose.pt") # load an official model
model = YOLO("path/to/best.pt") # load a custom model
# Predict with the model
results = model("https://ultralytics.com/images/bus.jpg") # predict on an image
# Access the results
for result in results:
xy = result.keypoints.xy # x and y coordinates
xyn = result.keypoints.xyn # normalized
kpts = result.keypoints.data # x, y, visibility (if available)Tüm predict modu ayrıntılarını Tahmin (Predict) sayfasında görebilirsin.
Link to this sectionSonuç Çıktısı#
Poz tahmini, görüntü başına bir Results nesnesi döndürür. Birincil tahmin alanları, poz koordinatları için result.keypoints ve bu anahtar noktaların ait olduğu tespit edilen örnekler için result.boxes alanlarıdır.
| Öznitelik | Tip | Şekil (Shape) | Açıklama |
|---|---|---|---|
result.keypoints | Keypoints | (N) | Anahtar noktalar. |
result.keypoints.data | torch.float32 | (N,K,2/3) | x,y artı isteğe bağlı görünürlük/güvenilirlik. |
result.keypoints.xy | torch.float32 | (N,K,2) | Piksel anahtar noktaları. |
result.keypoints.xyn | torch.float32 | (N,K,2) | Normalleştirilmiş anahtar noktalar. |
result.boxes | Boxes | (N) | Örnek kutuları. |
Her görev için göreve özel Results alanlarını görmek istersen, Göreve Göre Tahmin Sonuçları bölümüne bak.
Link to this sectionDışa Aktar (Export)#
Bir YOLO26n Poz modelini ONNX, CoreML vb. gibi farklı bir formata dışa aktar. Bu, modelini gerçek zamanlı çıkarım için çeşitli platform ve cihazlarda dağıtmanı sağlar.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-pose.pt") # load an official model
model = YOLO("path/to/best.pt") # load a custom-trained model
# Export the model
model.export(format="onnx")Kullanılabilir YOLO26-pose dışa aktarma formatları aşağıdaki tabloda yer almaktadır. format argümanını kullanarak, örneğin format='onnx' veya format='engine' ile herhangi bir formata dışa aktarabilirsin. Dışa aktarılan modeller üzerinde doğrudan tahmin veya doğrulama yapabilirsin; örneğin yolo predict model=yolo26n-pose.onnx. Kullanım örnekleri, dışa aktarma tamamlandıktan sonra modelin için gösterilir.
| Format | format Argümanı | Model | Meta veriler | Argümanlar |
|---|---|---|---|---|
| PyTorch | - | yolo26n-pose.pt | ✅ | - |
| TorchScript | torchscript | yolo26n-pose.torchscript | ✅ | imgsz, half, dynamic, optimize, nms, batch, device |
| ONNX | onnx | yolo26n-pose.onnx | ✅ | imgsz, half, int8, dynamic, simplify, opset, nms, batch, data, fraction, device |
| OpenVINO | openvino | yolo26n-pose_openvino_model/ | ✅ | imgsz, half, dynamic, int8, nms, batch, data, fraction, device |
| TensorRT | engine | yolo26n-pose.engine | ✅ | imgsz, half, dynamic, simplify, workspace, int8, nms, batch, data, fraction, device |
| CoreML | coreml | yolo26n-pose.mlpackage | ✅ | imgsz, dynamic, half, int8, nms, batch, device |
| TF SavedModel | saved_model | yolo26n-pose_saved_model/ | ✅ | imgsz, keras, int8, nms, batch, data, fraction, device |
| TF GraphDef | pb | yolo26n-pose.pb | ❌ | imgsz, batch, device |
| TF Lite | tflite | yolo26n-pose.tflite | ✅ | imgsz, half, int8, nms, batch, data, fraction, device |
| TF Edge TPU | edgetpu | yolo26n-pose_edgetpu.tflite | ✅ | imgsz, int8, data, fraction, device |
| TF.js | tfjs | yolo26n-pose_web_model/ | ✅ | imgsz, half, int8, nms, batch, data, fraction, device |
| PaddlePaddle | paddle | yolo26n-pose_paddle_model/ | ✅ | imgsz, batch, device |
| MNN | mnn | yolo26n-pose.mnn | ✅ | imgsz, batch, int8, half, device |
| NCNN | ncnn | yolo26n-pose_ncnn_model/ | ✅ | imgsz, half, batch, device |
| IMX500 | imx | yolo26n-pose_imx_model/ | ✅ | imgsz, int8, data, fraction, nms, device |
| RKNN | rknn | yolo26n-pose_rknn_model/ | ✅ | imgsz, batch, name, int8, data, fraction, device |
| ExecuTorch | executorch | yolo26n-pose_executorch_model/ | ✅ | imgsz, batch, device |
| Axelera | axelera | yolo26n-pose_axelera_model/ | ✅ | imgsz, batch, int8, data, fraction, device |
| DEEPX | deepx | yolo26n-pose_deepx_model/ | ✅ | imgsz, int8, data, optimize, device |
| Qualcomm QNN | qnn | yolo26n-pose_qnn_model/ | ✅ | imgsz, batch, name, int8, data, fraction, device |
Tüm export ayrıntılarını Export sayfasında bulabilirsin.
Link to this sectionSSS#
Link to this sectionUltralytics YOLO26 ile Poz Tahmini nedir ve nasıl çalışır?#
Pose estimation with Ultralytics YOLO26 involves identifying specific points, known as keypoints, in an image. These keypoints typically represent joints or other important features of the object. The output includes the [x, y] coordinates and confidence scores for each point. YOLO26-pose models are specifically designed for this task and use the -pose suffix, such as yolo26n-pose.pt. These models are pretrained on datasets like COCO keypoints and can be used for various pose estimation tasks. For more information, visit the Pose Estimation Page.
Link to this sectionÖzel bir veri kümesinde YOLO26-pose modelini nasıl eğitebilirim?#
Özel bir veri kümesinde YOLO26-pose modelini eğitmek, bir modeli (bir YAML dosyasıyla tanımlanan yeni bir model veya önceden eğitilmiş bir model) yüklemeyi gerektirir. Ardından belirlediğin veri kümesini ve parametreleri kullanarak eğitim sürecini başlatabilirsin.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-pose.yaml") # build a new model from YAML
model = YOLO("yolo26n-pose.pt") # load a pretrained model (recommended for training)
# Train the model
results = model.train(data="your-dataset.yaml", epochs=100, imgsz=640)Eğitimle ilgili ayrıntılı bilgi için Train Bölümüne bakabilirsin. Ayrıca, özel poz tahmini modellerini eğitmek için kod gerektirmeyen bir yaklaşım olarak Ultralytics Platform kullanabilirsin.
Link to this sectionEğitilmiş bir YOLO26-pose modelini nasıl doğrularım?#
YOLO26-pose modelinin doğrulanması, eğitim sırasında saklanan veri kümesi parametreleri kullanılarak doğruluğunun değerlendirilmesini içerir. İşte bir örnek:
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-pose.pt") # load an official model
model = YOLO("path/to/best.pt") # load a custom model
# Validate the model
metrics = model.val() # no arguments needed, dataset and settings rememberedDaha fazla bilgi için Val Bölümüne bakabilirsin.
Link to this sectionYOLO26-pose modelini diğer formatlara dışa aktarabilir miyim ve nasıl?#
Evet, bir YOLO26-pose modelini ONNX, CoreML, TensorRT ve daha fazlası gibi çeşitli formatlara dışa aktarabilirsin. Bu işlem Python veya Komut Satırı Arayüzü (CLI) kullanılarak yapılabilir.
from ultralytics import YOLO
# Load a model
model = YOLO("yolo26n-pose.pt") # load an official model
model = YOLO("path/to/best.pt") # load a custom-trained model
# Export the model
model.export(format="onnx")Refer to the Export Section for more details. Exported models can be deployed on edge devices for real-time applications like fitness tracking, sports analysis, or robotics.
Link to this sectionMevcut Ultralytics YOLO26-pose modelleri nelerdir ve performans metrikleri nelerdir?#
Ultralytics YOLO26; YOLO26n-pose, YOLO26s-pose, YOLO26m-pose gibi çeşitli önceden eğitilmiş poz modelleri sunar. Bu modeller boyut, doğruluk (mAP) ve hız açısından farklılık gösterir. Örneğin, YOLO26n-pose modeli 57.2 mAPpose50-95 değerine ve 83.3 mAPpose50 değerine ulaşır. Tam liste ve performans ayrıntıları için Modeller Bölümünü ziyaret et.