Проучване на подобренията и напредъка на YOLOV8 спрямо неговия Forerunner

Представяне на YOLOV8

YOLOV8, най-новият модерен модел YOLO (You Only Look Once), предлага забележителни възможности за различни задачи за компютърно зрение като откриване на обекти, класификация на изображения и сегментиране на екземпляри. Разработен от Ultralytics, същия екип зад влиятелния модел YOLOV5, YOLOV8 представлява значителен напредък в серията YOLO.

С YOLOV8, Ultralytics въведе няколко подобрения на архитектурата и изживяването на разработчиците, надграждайки основата, положена от своя предшественик. Тези подобрения имат за цел да осигурят превъзходна производителност и да отговорят на развиващите се нужди на общността на компютърното зрение.

Важно е да се отбележи, че YOLOV8 е активно разработен модел. От написването на тази публикация Ultralytics продължава да усъвършенства и добавя нови функции към модела, като същевременно се ангажира активно с общността. Този ангажимент за непрекъснато развитие гарантира, че YOLOV8 получава дългосрочна поддръжка и се възползва от ценна обратна връзка и принос от потребителите.

Ultralytics установи подход на сътрудничество, като работи активно с общността, за да оптимизира модела и да го направи възможно най-добрия. Чрез възприемане на приноса на общността и включване на напредъка в областта на компютърното зрение, YOLOV8 има за цел да разшири границите на откриването на обекти и свързаните с тях задачи, допълнително затвърждавайки позицията си на водещо решение в областта.

Еволюцията на YOLO: От един удар до осем

Серията модели YOLO (You Only Look Once) придоби огромна популярност в света на компютърното зрение. Неговият успех може да се дължи на впечатляващата му точност, като същевременно поддържа компактен размер на модела. Това, което прави YOLO още по-привлекателен, е способността му да се обучава на един GPU, което го прави достъпен за широк кръг от разработчици. Това означава, че може да се внедри на периферен хардуер или в облака на ниска цена.

От създаването си през 2015 г. от Джоузеф Редмънд, YOLO е възприет и подхранван от общността на компютърното зрение. В ранните си версии (1–4) YOLO беше внедрен в C код, използвайки персонализирана рамка за дълбоко обучение, наречена Darknet, разработена от Redmond.

Глен Джохер, създателят на YOLOV8 в Ultralytics, започна с внимателно изучаване на хранилището YOLOV3 в PyTorch, популярна рамка за дълбоко обучение от Facebook. Тъй като обучението в хранилището се подобри, Ultralytics в крайна сметка пусна свой собствен модел, наречен YOLOV5.

YOLOV5 бързо спечели признание като водещото хранилище в световен мащаб, благодарение на своята гъвкава и лесна за използване Python структура. Тази структура позволи на общността да въведе нови подобрения в моделирането и бързо да ги сподели в хранилища, които използват подобни методи на PyTorch.

В допълнение към своя силен основополагащ модел, екипът на YOLOV5 показа ангажимент за насърчаване на здравословна софтуерна екосистема около тяхното създаване. Те активно се занимават с проблеми и непрекъснато подобряват възможностите на хранилището въз основа на обратната връзка и нуждите на общността.

През последните две години няколко модела се разклониха от хранилището на YOLOV5 PyTorch, включително Scaled-YOLOV4, YOLOR и YOLOV7. Освен това в световен мащаб се появиха други модели със собствени реализации, базирани на PyTorch, като YOLOX и YOLOV6. Всяка итерация на модела YOLO носи нови най-съвременни техники, които разширяват границите на точност и ефективност.

През последните месеци Ultralytics се съсредоточи върху обширни изследвания, за да разработи най-новата най-съвременна версия на YOLO, известна като YOLOV8. Тази версия, пусната на 10 януари 2023 г., представлява важен крайъгълен камък в серията YOLO. Той въвежда подобрения, насочени към допълнително подобряване на производителността и разширяване на границите на възможностите за откриване на обекти.

YOLOV8: Най-доброто решение за откриване на обекти

YOLOV8 не е просто подобрение в сравнение с предишните версии на YOLO, а цялостен ремонт, който въвежда нови функции, архитектури и набори от данни. Ето някои от причините, поради които YOLOV8 е най-добрият избор за вашия бъдещ проект за откриване на обекти.

Една от основните причини, поради които трябва да използвате YOLOV8, е неговата висока степен на точност, измерена от два популярни бенчмарка: COCO и Roboflow 100. COCO е мащабен набор от данни, който съдържа над 200 000 изображения с 80 категории обекти. Той се използва широко за оценка на ефективността на моделите за откриване на обекти на общи сцени. Roboflow 100 е нов набор от данни, който се състои от 100 поднабора изображения от различни области, като медицински, въздушни или спортни. Той е предназначен да тества устойчивостта и обобщението на моделите за откриване на обекти при различни сценарии, специфични за задачата.

YOLOV8 постига впечатляващи резултати и при двата бенчмарка. Например, моделът YOLOV8M — средният модел — постига 50,2% средна средна точност (mAP), когато се измерва на COCO. Това означава, че правилно открива и класифицира средно половината от обектите в изображенията. Това е сравнимо с някои от най-добрите модели в областта, като EfficientDet или CenterNet. Когато се оценява спрямо Roboflow 100, YOLOV8 отбеляза значително по-добър резултат от YOLOV5, своя предшественик. Той превъзхожда YOLOV5 на 75 от 100 подгрупи, показвайки, че може да се справя по-добре с различни и предизвикателни домейни. Ще предоставим повече подробности за анализа на ефективността на YOLOV8 по-късно в статията.

Друга причина, поради която трябва да използвате YOLOV8, са неговите удобни функции за разработчици, които го правят лесен за използване и персонализиране. За разлика от други модели, при които трябва да стартирате множество Python файлове, за да изпълнявате различни задачи, като подготовка на данни, обучение или изводи, YOLOV8 идва с интерфейс на командния ред (CLI), който опростява работния процес. Можете да обучите модел на вашите собствени данни само с една команда или да използвате един от предварително обучените модели, налични за изтегляне. Можете също така да коригирате различни параметри и опции с прости флагове и аргументи. Например, можете да промените размера на модела, броя на епохите, размера на партидата или скоростта на обучение с няколко натискания на клавиши.

В допълнение към CLI, YOLOV8 също така предоставя добре структуриран Python пакет, който ви позволява да осъществявате достъп и да променяте компонентите на модела по-лесно. Можете да импортирате пакета във вашия код и да използвате неговите функции и класове, за да създадете свои собствени персонализирани модели или приложения. Например, можете да използвате класа `Model`, за да дефинирате своя собствена мрежова архитектура, или да използвате класа `Dataset`, за да заредите свой собствен формат на данни. Можете също да използвате класа `Detector`, за да стартирате изводи върху изображения или видеоклипове и да получите резултатите от откриването като обекти на Python.

Последната причина, поради която трябва да използвате YOLOV8, е неговата голяма и нарастваща общност около него. YOLO е един от най-популярните и влиятелни алгоритми за откриване на обекти в компютърното зрение. Той е цитиран над 20 000 пъти в академични статии и е използван в много приложения от реалния свят. Много експерти по компютърно зрение знаят за YOLO и как работи и има много насоки онлайн за използването на YOLO на практика. Въпреки че YOLOV8 е нов към написването на тази статия, вече има много уроци и ръководства онлайн, които могат да ви помогнат да започнете с него. Можете също да намерите много примери и проекти, които използват YOLOV8 в GitHub или други платформи.

Резюме

YOLOV8, най-новият модерен модел от серията YOLO, представлява значителен напредък спрямо своя предшественик. Разработен от Ultralytics, YOLOV8 предлага забележителни възможности за задачи с компютърно зрение, с подобрения на архитектурата и изживяването на разработчиците. Той постига висока точност на популярни бенчмаркове като COCO и Roboflow 100, превъзхождайки YOLOV5 и други модели.

Удобните функции за разработчици, включително удобен за потребителя интерфейс на командния ред (CLI) и добре структуриран пакет Python, го правят лесен за използване и персонализиране. Освен това, YOLOV8 се възползва от голяма и нарастваща общност, с достатъчно онлайн ресурси и налични насоки.

Като цяло, YOLOV8 се очертава като най-доброто решение за откриване на обекти, разширявайки границите на производителността и затвърждавайки позицията си на водещ модел в областта на компютърното зрение.