Register
Login
Resources
Docs Blog Datasets Glossary Case Studies Tutorials & Webinars
Product
Data Engine LLMs Platform Enterprise
Pricing Explore
Connect to our Discord channel

track.md 16 KB

You have to be logged in to leave a comment. Sign In
comments description keywords
true Π£Π·Π½Π°ΠΉΡ‚Π΅, ΠΊΠ°ΠΊ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ultralytics YOLO для отслСТивания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠ°Ρ…. Руководства ΠΏΠΎ использованию Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ΠΎΠ² ΠΈ настройкС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Π°. Ultralytics, YOLO, отслСТиваниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠΈ, BoT-SORT, ByteTrack, руководство Π½Π° Python, руководство CLI

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π΅Π½Π½ΠΎΠ΅ отслСТиваниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ultralytics YOLO

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ мноТСствСнного отслСТивания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²

ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² сфСрС Π²ΠΈΠ΄Π΅ΠΎΠ°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠΈ являСтся ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠΉ Π·Π°Π΄Π°Ρ‡Π΅ΠΉ, которая опрСдСляСт Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ мСстополоТСниС ΠΈ класс ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² ΠΊΠ°Π΄Ρ€Π΅, Π½ΠΎ Ρ‚Π°ΠΊΠΆΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½Ρ‹ΠΉ ID для ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ развития Π²ΠΈΠ΄Π΅ΠΎ. ΠŸΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΡ Π±Π΅Π·Π³Ρ€Π°Π½ΠΈΡ‡Π½Ρ‹ β€” ΠΎΡ‚ наблюдСния ΠΈ бСзопасности Π΄ΠΎ Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠΈ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π² спортС.

ΠŸΠΎΡ‡Π΅ΠΌΡƒ стоит Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ Ultralytics YOLO для отслСТивания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²?

Π’Ρ‹Π²ΠΎΠ΄ с Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ΠΎΠ² Ultralytics согласуСтся со стандартным ΠΎΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π½ΠΎ ΠΈΠΌΠ΅Π΅Ρ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ ID ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ². Π­Ρ‚ΠΎ ΡƒΠΏΡ€ΠΎΡ‰Π°Π΅Ρ‚ отслСТиваниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠ°Ρ… ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠ΅ ΠΏΠΎΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅ΠΉ Π°Π½Π°Π»ΠΈΡ‚ΠΈΠΊΠΈ. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ Π²Ρ‹ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ€Π°ΡΡΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ использованиС Ultralytics YOLO для Π²Π°ΡˆΠΈΡ… потрСбностСй Π² отслСТивании ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²:

  • Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ: ΠžΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠΎΠ² Π² Ρ€Π΅ΠΆΠΈΠΌΠ΅ Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠ³ΠΎ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ Π±Π΅Π· ΠΏΠΎΡ‚Π΅Ρ€ΠΈ точности.
  • Π“ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ: ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° мноТСства Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² отслСТивания ΠΈ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΉ.
  • ΠŸΡ€ΠΎΡΡ‚ΠΎΡ‚Π° использования: ΠŸΡ€ΠΎΡΡ‚ΠΎΠΉ Python API ΠΈ CLI-ΠΎΠΏΡ†ΠΈΠΈ для быстрой ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΠΈ ΠΈ развСртывания.
  • ΠΠ°ΡΡ‚Ρ€Π°ΠΈΠ²Π°Π΅ΠΌΠΎΡΡ‚ΡŒ: Π›Π΅Π³ΠΊΠΎΡΡ‚ΡŒ использования с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌΠΈ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½Ρ‹ΠΌΠΈ модСлями YOLO, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π°Ρ ΠΈΠ½Ρ‚Π΅Π³Ρ€Π°Ρ†ΠΈΡŽ Π² спСцифичСскиС для Π΄ΠΎΠΌΠ΅Π½Π° прилоТСния.



Π‘ΠΌΠΎΡ‚Ρ€ΠΈΡ‚Π΅: ΠžΠ±Π½Π°Ρ€ΡƒΠΆΠ΅Π½ΠΈΠ΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ отслСТиваниС с Ultralytics YOLOv8.

ΠŸΡ€ΠΈΠΊΠ»Π°Π΄Π½Ρ‹Π΅ примСнСния

Вранспорт Π ΠΈΡ‚Π΅ΠΉΠ» ΠΠΊΠ²Π°ΠΊΡƒΠ»ΡŒΡ‚ΡƒΡ€Π°
ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ транспортных срСдств ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ людСй ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ Ρ€Ρ‹Π±
ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ транспортных срСдств ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ людСй ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ Ρ€Ρ‹Π±

ΠšΠ»ΡŽΡ‡Π΅Π²Ρ‹Π΅ особСнности

Ultralytics YOLO Ρ€Π°ΡΡˆΠΈΡ€ΡΠ΅Ρ‚ свои возмоТности обнаруТСния ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² для обСспСчСния Π½Π°Π΄Π΅ΠΆΠ½ΠΎΠ³ΠΎ ΠΈ ΡƒΠ½ΠΈΠ²Π΅Ρ€ΡΠ°Π»ΡŒΠ½ΠΎΠ³ΠΎ отслСТивания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ²:

  • ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΌ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ: Π‘Π΅Π·ΠΏΡ€Π΅Ρ€Ρ‹Π²Π½ΠΎΠ΅ отслСТиваниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π² Π²ΠΈΠ΄Π΅ΠΎ с высокой частотой ΠΊΠ°Π΄Ρ€ΠΎΠ².
  • ΠŸΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΊΠ° мноТСства Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ΠΎΠ²: Π’Ρ‹Π±ΠΎΡ€ ΠΈΠ· разнообразия установлСнных Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠΎΠ² отслСТивания.
  • НастраиваСмыС ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ΠΎΠ²: Настройка Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ° отслСТивания для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΡƒΡ‚Π΅ΠΌ Ρ€Π΅Π³ΡƒΠ»ΠΈΡ€ΠΎΠ²ΠΊΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹Ρ… ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ².

ДоступныС Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Ρ‹

Ultralytics YOLO ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ отслСТивания. Π˜Ρ… ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ, ΠΏΠ΅Ρ€Π΅Π΄Π°Π² ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ YAML Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€ tracker=tracker_type.yaml:

  • BoT-SORT - Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ botsort.yaml, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€.
  • ByteTrack - Π˜ΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ bytetrack.yaml, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π°ΠΊΡ‚ΠΈΠ²ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ этот Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€.

Π’Ρ€Π΅ΠΊΠ΅Ρ€ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ - BoT-SORT.

ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅

Для запуска Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Π° Π½Π° Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡ‚ΠΎΠΊΠ°Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠΉΡ‚Π΅ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½Ρ‹Π΅ ΠΌΠΎΠ΄Π΅Π»ΠΈ Detect, Segment ΠΈΠ»ΠΈ Pose, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ YOLOv8n, YOLOv8n-seg ΠΈ YOLOv8n-pose.

!!! Example "ΠŸΡ€ΠΈΠΌΠ΅Ρ€"

=== "Python"

    ```python
    from ultralytics import YOLO

    # Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ ΠΈΠ»ΠΈ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ модСль
    model = YOLO('yolov8n.pt')  # Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ модСль Detect
    model = YOLO('yolov8n-seg.pt')  # Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ модСль Segment
    model = YOLO('yolov8n-pose.pt')  # Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΎΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½ΡƒΡŽ модСль Pose
    model = YOLO('path/to/best.pt')  # Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΡƒΡŽ ΠΎΠ±ΡƒΡ‡Π΅Π½Π½ΡƒΡŽ модСль

    # Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ отслСТиваниС с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠΎΠ΄Π΅Π»ΠΈ
    results = model.track(source="https://youtu.be/LNwODJXcvt4", show=True)  # ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ с Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ΠΎΠΌ ΠΏΠΎ ΡƒΠΌΠΎΠ»Ρ‡Π°Π½ΠΈΡŽ
    results = model.track(source="https://youtu.be/LNwODJXcvt4", show=True, tracker="bytetrack.yaml")  # ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ с Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ΠΎΠΌ ByteTrack
    ```

=== "CLI"

    ```bash
    # Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ отслСТиваниС с Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ модСлями ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΉ интСрфСйс
    yolo track model=yolov8n.pt source="https://youtu.be/LNwODJXcvt4"  # ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ модСль Detect
    yolo track model=yolov8n-seg.pt source="https://youtu.be/LNwODJXcvt4"  # ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ модСль Segment
    yolo track model=yolov8n-pose.pt source="https://youtu.be/LNwODJXcvt4"  # ΠžΡ„ΠΈΡ†ΠΈΠ°Π»ΡŒΠ½Π°Ρ модСль Pose
    yolo track model=path/to/best.pt source="https://youtu.be/LNwODJXcvt4"  # ΠŸΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠ°Ρ обучСнная модСль

    # ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ с использованиСм Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Π° ByteTrack
    yolo track model=path/to/best.pt tracker="bytetrack.yaml"
    ```

Как Π²ΠΈΠ΄Π½ΠΎ ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΡƒΠΊΠ°Π·Π°Π½Π½ΠΎΠ³ΠΎ использования, отслСТиваниС доступно для всСх ΠΌΠΎΠ΄Π΅Π»Π΅ΠΉ Detect, Segment ΠΈ Pose, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… с Π²ΠΈΠ΄Π΅ΠΎ ΠΈΠ»ΠΈ ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹ΠΌΠΈ источниками.

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ

АргумСнты для отслСТивания

ΠšΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΡ отслСТивания ΠΈΠΌΠ΅Π΅Ρ‚ ΠΎΠ±Ρ‰ΠΈΠ΅ свойства с Ρ€Π΅ΠΆΠΈΠΌΠΎΠΌ Predict, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ conf, iou ΠΈ show. Для дальнСйшСй настройки ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ страницС ΠΌΠΎΠ΄Π΅Π»ΠΈ Predict.

!!! Example "ΠŸΡ€ΠΈΠΌΠ΅Ρ€"

=== "Python"

    ```python
    from ultralytics import YOLO

    # НастройтС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ отслСТивания ΠΈ запуститС Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€
    model = YOLO('yolov8n.pt')
    results = model.track(source="https://youtu.be/LNwODJXcvt4", conf=0.3, iou=0.5, show=True)
    ```

=== "CLI"

    ```bash
    # НастройтС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹ отслСТивания ΠΈ запуститС Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΉ интСрфСйс
    yolo track model=yolov8n.pt source="https://youtu.be/LNwODJXcvt4" conf=0.3, iou=0.5 show
    ```

Π’Ρ‹Π±ΠΎΡ€ Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Π°

Ultralytics Ρ‚Π°ΠΊΠΆΠ΅ позволяСт ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΉ Ρ„Π°ΠΉΠ» ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Π°. Для этого просто сдСлайтС копию Ρ„Π°ΠΉΠ»Π° ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, custom_tracker.yaml) ΠΈΠ· ultralytics/cfg/trackers ΠΈ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚Π΅ Π»ΡŽΠ±Ρ‹Π΅ настройки (ΠΊΡ€ΠΎΠΌΠ΅ tracker_type) Π² соотвСтствии с вашими потрСбностями.

!!! Example "ΠŸΡ€ΠΈΠΌΠ΅Ρ€"

=== "Python"

    ```python
    from ultralytics import YOLO

    # Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ модСль ΠΈ запуститС Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ
    model = YOLO('yolov8n.pt')
    results = model.track(source="https://youtu.be/LNwODJXcvt4", tracker='custom_tracker.yaml')
    ```

=== "CLI"

    ```bash
    # Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ модСль ΠΈ запуститС Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ с ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΡΠΊΠΈΠΌ Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΊΠΎΠ½Ρ„ΠΈΠ³ΡƒΡ€Π°Ρ†ΠΈΠΈ, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ ΠΊΠΎΠΌΠ°Π½Π΄Π½Ρ‹ΠΉ интСрфСйс
    yolo track model=yolov8n.pt source="https://youtu.be/LNwODJXcvt4" tracker='custom_tracker.yaml'
    ```

Для ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ списка Π°Ρ€Π³ΡƒΠΌΠ΅Π½Ρ‚ΠΎΠ² отслСТивания ΠΎΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ΡΡŒ ΠΊ страницС ultralytics/cfg/trackers.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π½Π° Python

Π¦ΠΈΠΊΠ» сохранСния слСдов

Π’ΠΎΡ‚ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ скрипта Python, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‰ΠΈΠΉ OpenCV (cv2) ΠΈ YOLOv8 для выполнСния отслСТивания ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² Π½Π° ΠΊΠ°Π΄Ρ€Π°Ρ… Π²ΠΈΠ΄Π΅ΠΎ. Π’ этом сцСнарии прСдполагаСтся, Ρ‡Ρ‚ΠΎ Π²Ρ‹ ΡƒΠΆΠ΅ установили Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡ‹Π΅ ΠΏΠ°ΠΊΠ΅Ρ‚Ρ‹ (opencv-python ΠΈ ultralytics). АргумСнт persist=True ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Ρƒ, Ρ‡Ρ‚ΠΎ Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΈΠ»ΠΈ ΠΊΠ°Π΄Ρ€ являСтся ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΌ Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ ΠΎΠΆΠΈΠ΄Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ слСды с ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π³ΠΎ изобраТСния Π±ΡƒΠ΄ΡƒΡ‚ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π² Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΌ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ.

!!! Example "Π¦ΠΈΠΊΠ» с ΠΏΠΎΡ‚ΠΎΠΊΠΎΠ²Ρ‹ΠΌ отслСТиваниСм for-loop"

```python
import cv2
from ultralytics import YOLO

# Π—Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚Π΅ модСль YOLOv8
model = YOLO('yolov8n.pt')

# ΠžΡ‚ΠΊΡ€ΠΎΠΉΡ‚Π΅ Π²ΠΈΠ΄Π΅ΠΎΡ„Π°ΠΉΠ»
video_path = "path/to/video.mp4"
cap = cv2.VideoCapture(video_path)

# Π¦ΠΈΠΊΠ» ΠΏΠΎ ΠΊΠ°Π΄Ρ€Π°ΠΌ Π²ΠΈΠ΄Π΅ΠΎ
while cap.isOpened():
    # Π§Ρ‚Π΅Π½ΠΈΠ΅ ΠΊΠ°Π΄Ρ€Π° ΠΈΠ· Π²ΠΈΠ΄Π΅ΠΎ
    success, frame = cap.read()

    if success:
        # Π’Ρ‹ΠΏΠΎΠ»Π½ΠΈΡ‚Π΅ отслСТиваниС YOLOv8 для ΠΊΠ°Π΄Ρ€Π°, сохраняя слСды ΠΌΠ΅ΠΆΠ΄Ρƒ ΠΊΠ°Π΄Ρ€Π°ΠΌΠΈ
        results = model.track(frame, persist=True)

        # Π’ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΡƒΠΉΡ‚Π΅ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ Π½Π° ΠΊΠ°Π΄Ρ€Π΅
        annotated_frame = results[0].plot()

        # ΠŸΠΎΠΊΠ°ΠΆΠΈΡ‚Π΅ Π°Π½Π½ΠΎΡ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ ΠΊΠ°Π΄Ρ€
        cv2.imshow("ΠžΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Π½ΠΈΠ΅ YOLOv8", annotated_frame)

        # ΠŸΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ», Ссли Π½Π°ΠΆΠ°Ρ‚Π° клавиша 'q'
        if cv2.waitKey(1) & 0xFF == ord("q"):
            break
    else:
        # ΠŸΡ€Π΅Ρ€Π²Π°Ρ‚ΡŒ Ρ†ΠΈΠΊΠ», Ссли достигнут ΠΊΠΎΠ½Π΅Ρ† Π²ΠΈΠ΄Π΅ΠΎ
        break

# ΠžΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚Π΅ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ Π·Π°Ρ…Π²Π°Ρ‚Π° Π²ΠΈΠ΄Π΅ΠΎ ΠΈ Π·Π°ΠΊΡ€ΠΎΠΉΡ‚Π΅ ΠΎΠΊΠ½ΠΎ отобраТСния
cap.release()
cv2.destroyAllWindows()
```

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅ Π½Π° ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ с model(frame) Π½Π° model.track(frame), ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ позволяСт Π²ΠΊΠ»ΡŽΡ‡ΠΈΡ‚ΡŒ отслСТиваниС ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² вмСсто простого обнаруТСния. Π­Ρ‚ΠΎΡ‚ ΠΈΠ·ΠΌΠ΅Π½Π΅Π½Π½Ρ‹ΠΉ скрипт Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€ Π½Π° ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΊΠ°Π΄Ρ€Π΅ Π²ΠΈΠ΄Π΅ΠΎ, Π²ΠΈΠ·ΡƒΠ°Π»ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ Ρ€Π΅Π·ΡƒΠ»ΡŒΡ‚Π°Ρ‚Ρ‹ ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ°Ρ‚ΡŒ ΠΈΡ… Π² ΠΎΠΊΠ½Π΅. Π¦ΠΈΠΊΠ» ΠΌΠΎΠΆΠ½ΠΎ Π·Π°Π²Π΅Ρ€ΡˆΠΈΡ‚ΡŒ Π½Π°ΠΆΠ°Ρ‚ΠΈΠ΅ΠΌ 'q'.

БодСйствиС Π² Π½ΠΎΠ²Ρ‹Ρ… Ρ‚Ρ€Π΅ΠΊΠ΅Ρ€Π°Ρ…

Π’Ρ‹ ΡΠ²Π»ΡΠ΅Ρ‚Π΅ΡΡŒ профСссионалом Π² мноТСствСнном отслСТивании ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ ΡƒΡΠΏΠ΅ΡˆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Π»ΠΈ ΠΈΠ»ΠΈ Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π»ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌ отслСТивания с Ultralytics YOLO? ΠœΡ‹ ΠΏΡ€ΠΈΠ³Π»Π°ΡˆΠ°Π΅ΠΌ вас внСсти свой Π²ΠΊΠ»Π°Π΄ Π² наш Ρ€Π°Π·Π΄Π΅Π» Trackers Π½Π° ultralytics/cfg/trackers! Π’Π°ΡˆΠΈ Ρ€Π΅Π°Π»ΡŒΠ½Ρ‹Π΅ прилоТСния ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ бСсцСнными для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ, Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π½Π°Π΄ Π·Π°Π΄Π°Ρ‡Π°ΠΌΠΈ отслСТивания.

Внося свой Π²ΠΊΠ»Π°Π΄ Π² этот Ρ€Π°Π·Π΄Π΅Π», Π²Ρ‹ ΠΏΠΎΠΌΠΎΠ³Π°Π΅Ρ‚Π΅ Ρ€Π°ΡΡˆΠΈΡ€ΠΈΡ‚ΡŒ спСктр доступных Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΉ для отслСТивания Π² Ρ€Π°ΠΌΠΊΠ°Ρ… Ρ„Ρ€Π΅ΠΉΠΌΠ²ΠΎΡ€ΠΊΠ° Ultralytics YOLO, добавляя Π΅Ρ‰Π΅ ΠΎΠ΄ΠΈΠ½ ΡƒΡ€ΠΎΠ²Π΅Π½ΡŒ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ ΠΈ полСзности для сообщСства.

Π§Ρ‚ΠΎΠ±Ρ‹ Π½Π°Ρ‡Π°Ρ‚ΡŒ свой Π²ΠΊΠ»Π°Π΄, поТалуйста, ΠΎΠ·Π½Π°ΠΊΠΎΠΌΡŒΡ‚Π΅ΡΡŒ с нашим Руководством для участников для получСния ΠΏΠΎΠ»Π½ΠΎΠΉ инструкции ΠΏΠΎ ΠΎΡ‚ΠΏΡ€Π°Π²ΠΊΠ΅ Pull Request (PR) πŸ› οΈ. ΠœΡ‹ Π² ΠΏΡ€Π΅Π΄Π²ΠΊΡƒΡˆΠ΅Π½ΠΈΠΈ ΡƒΠ²ΠΈΠ΄Π΅Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π²Ρ‹ принСсСтС Π½Π° стол!

ВмСстС Π΄Π°Π²Π°ΠΉΡ‚Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΠΌ возмоТности отслСТивания экосистСмы Ultralytics YOLO πŸ™!

Tip!

Press p or to see the previous file or, n or to see the next file

Comments

Loading...