В этом сообщении блога мы поговорим о том, как настроить YOLOv5 и начать работу. Если вы еще не сталкивались с YOLOv5, вот краткая статья о нем, в которой объясняется идея его создания и его эффективность создателями Ultralytics:



Одним из основных преимуществ YOLOv5 перед другими моделями серии YOLO является то, что YOLOv5 написан на PyTorch с нуля. Это делает его полезным для инженеров машинного обучения, поскольку существует активное и обширное сообщество PyTorch, которое нужно поддерживать.

YOLOv5 также намного быстрее, чем все предыдущие версии YOLO. В дополнение к этому , YOLOv5 почти на 90 процентов меньше, чем YOLOv4. Это означает, что YOLOv5 гораздо проще развернуть на встроенных устройствах. Чтобы узнать больше о некоторых преимуществах YOLOv5, обратитесь к вышеуказанному сообщению в блоге.

НАСТРОЙКА YOLOv5

Давайте сразу рассмотрим, как настроить YOLOv5 в вашей системе. Следующее руководство покажет, как вы можете начать настройку YOLOv5 в вашей системе (Windows 10 или Ubuntu 18.04). Эта настройка также может работать для других версий Windows и Ubuntu, но она не тестировалась.

Если вы не заинтересованы в настройке YOLOv5 в своей локальной системе и просто хотите получить доступ к современной рабочей среде с YOLOv5, ознакомьтесь с этим учебным пособием по записной книжке Google Colab, созданным самими Ultralytics:



Начнем с настройки в вашей локальной системе. Если вы используете систему Windows, убедитесь, что у вас установлен git и он указан в вашем пути. А для системы Linux аналогичным образом убедитесь, что у вас установлен git и вы можете использовать команды git из терминала Ubuntu. Теперь перейдите в каталог, в котором вы хотите установить репозиторий YOLOv5, и клонируйте репозиторий Yolov5:

git clone https://github.com/ultralytics/yolov5.git

Это создаст новую папку под названием «yolov5» в текущем каталоге. Теперь смените каталог на yolov5. Теперь убедитесь, что у вас установлена ​​и активирована виртуальная среда. Если она еще не установлена, используйте следующую команду для установки виртуальной среды Python:

sudo apt-get install python3-venv

Теперь для создания виртуальной среды используйте команду:

python3 -m venv <your_environment>

Где «‹your_environment›» - это название среды, которую вы можете изменить по своему вкусу. Я использовал имя «yolov5_environment». Теперь вам нужно активировать среду. Для этого используйте следующую команду:

source your_environment/bin/activate

Итак, вы успешно активировали свою виртуальную среду. Теперь сделать то же самое в системе Windows немного сложно. Я использовал редактор кода Visual Studio и использовал его для создания своей среды python, а затем мне пришлось сделать cd в каталог, в котором я хотел клонировать свой репозиторий yolov5. Чтобы выяснить, как установить виртуальную среду в коде Visual Studio, вы можете использовать следующий учебник:

После того, как вы активировали виртуальную среду в своем VS Code, используйте терминал VS Code, чтобы попасть в каталог yolov5, который вы только что клонировали.

Причина активации виртуальной среды python заключается в том, чтобы предотвратить конфликты зависимостей. Вам могут потребоваться разные версии одной и той же библиотеки, например Numpy, для разных проектов, поэтому вы создаете виртуальные среды для каждого проекта и устанавливаете все необходимые библиотеки для проекта в этой виртуальной среде.

После входа в клонированный репозиторий yolov5, если вы используете операционную систему Windows, отредактируйте файл requirements.txt в папке yolov5 и замените строку «pycocotools» на строка «pycocotools -windows». Для Linux это не нужно. Теперь, чтобы установить зависимости, необходимые для yolov5, просто выполните следующую команду:

pip install -U -r requirements.txt

Эта команда устанавливает все библиотеки, которые присутствуют в текстовом файле «requirements.txt», и это все, что вам нужно для работы с yolov5. Если указанная выше команда выполняется без проблем, вы можете сразу перейти в раздел «ОБНАРУЖЕНИЕ С ИСПОЛЬЗОВАНИЕМ YOLOv5», где мы используем YOLOv5 для обнаружения.

Но при выполнении этой команды вы можете столкнуться с некоторыми проблемами. Если это так, придерживайтесь этого раздела и продолжайте читать, чтобы понять, как решить эту проблему. Вы можете, например, столкнуться с проблемами, потому что ваше оборудование слишком старое или ваша система не может найти библиотеки numpy и cython, которые были установлены при выполнении указанной выше команды, потому что у вас есть несколько версий python, и ваша система не может найти версию python для ваша виртуальная среда, которые необходимы для всех последующих зависимостей. Так что, если это действительно так, повторите попытку и сначала выполните следующие две команды одну за другой, если вы работаете в системе Ubuntu:

pip install numpy==1.17pip install cython

Теперь попробуйте снова запустить команду pip install -U -r requirements.txt. Скорее всего, это должно успешно установить все зависимости, и вы сможете запустить yolov5. Теперь, если указанная выше команда работает успешно, вы можете сразу перейти к «ОБНАРУЖЕНИЕ С ИСПОЛЬЗОВАНИЕМ YOLOv5».
Но если вы снова столкнетесь с проблемой, скорее всего, это связано с какой-то проблемой при установке PyTorch. Отредактируйте файл requirements.txt, удалите строку «torch› = 1.5 » из текстового файла и снова запустите

pip install -U -r requirements.txt

Команда должна выполняться успешно без ошибок. Теперь все, что вам нужно для установки, - это PyTorch. Для этого сначала перейдите по ссылке:



При прокрутке вниз вы должны попасть в раздел под названием «БЫСТРЫЙ ЛОКАЛЬНЫЙ ЗАПУСК», где приведены соответствующие команды для каждой операционной системы и версий CUDA. Выберите вариант «Стабильный (1.5)» для сборки «PyTorch». У меня не было графического процессора ни в моей системе Linux, ни в моей системе Windows, и поэтому не было установлено «CUDA», и я выбрал для этого параметра значение «Нет» . Если у вас есть графический процессор и вы хотите узнать, поддерживает ли он CUDA, перейдите по этой ссылке:



Если ваш графический процессор не поддерживается, выберите «CUDA» как «Нет».
Я использовал «pip» как «пакет», используемый для установки. Итак, для моей системы Linux и Windows я получил следующую команду:

pip install torch==1.5.0+cpu torchvision==0.6.0+cpu -f https://download.pytorch.org/whl/torch_stable.html

Итак, установка YOLO v5 на вашем компьютере готова к работе. Теперь перейдем к этапу обнаружения и начнем играть с YOLO v5.

ОБНАРУЖЕНИЕ С ИСПОЛЬЗОВАНИЕМ YOLOv5

Чтобы начать играть с Yolov5, вам просто нужно запустить следующую команду справа от вашего терминала после того, как вы попадете в каталог yolov5, который вы клонировали ранее:

python detect.py — source ./inference/images/ — weights yolov5s.pt — conf 0.4

Теперь давайте разберемся, что делает эта команда?

Эта команда просто запускает программу «detect.py» с несколькими аргументами командной строки. Он в основном запускает алгоритм YOLOv5 для всех изображений, присутствующих в папке ./inference/images/, а веса устанавливаются как папка веса yolov5s.pt, расположенная в вашем yolov5. каталог. Вам не нужно явно загружать этот файл в папку yolov5, поскольку команда предназначена для загрузки того же самого при запуске, если это не так, но вы все равно можете столкнуться с проблемой. Если есть какая-либо ошибка, в которой говорится, что «yolov5s.pt» не найден, перейдите по следующей ссылке:



Загрузите файл под названием «yolov5s.pt» и сохраните его в каталоге yolov5 в вашей локальной системе. Вы также можете загрузить этот файл прямо из командной строки в вашей системе Linux, используя команду:

wget — no-check-certificate ‘https://docs.google.com/uc?export=download&id=1R5T6rIyy3lLwgFXNms8whc-387H0tMQO' -O yolov5s.pt

Это должно сохранить файл yolov5s.pt в этой папке диска в файл с именем yolov5s.pt в текущем каталоге, в котором вы находитесь, который должен быть каталогом yolov5. Как только это будет сделано, снова запустите следующую команду:

python detect.py — source ./inference/images/ — weights yolov5s.pt — conf 0.4

Все изображения в папке «/ inference / images /» в каталоге yolov5 обрабатываются алгоритмом YOLOv5, и изображения с нарисованными над ними прямоугольниками сохраняются в папке «/ inference. / output », которая создается после завершения выполнения программы. Этот файл весов был обучен на наборе данных COCO, и все прямоугольники нарисованы, если объект на изображениях совпадает с некоторым классом в наборе данных COCO с достоверностью, большей или равной «conf» аргумент командной строки, который в нашем случае установлен как 0.4. Мы также можем просто запустить команду:

python detect.py

Без лишних параметров. Но это не будет проблемой, поскольку по умолчанию эти аргументы такие же, как те, которые мы установили в команде:

python detect.py — source ./inference/images/ — weights yolov5s.pt — conf 0.4

Если вы хотите изменить показатель достоверности по умолчанию, используемый программой, на 0,25, вы можете сделать это, изменив следующую строку в моей программе «detect.py»:

parser.add_argument(' — conf-thres', type=float, default=0.4, help='object confidence threshold')

to:

parser.add_argument(' — conf-thres', type=float, default=0.25, help='object confidence threshold')

Точно так же, если вы хотите изменить другие параметры программы по умолчанию, вы можете это сделать.

Мы также можем дать одиночное изображение в качестве входных данных в программе. В таком случае программа снова создает новую папку «/ inference / output» в каталоге yolov5 и сохраняет единственное изображение, которое мы дали в качестве входных данных, с соответствующими полями, нарисованными поверх него. Если вы хотите изменить место сохранения выходных изображений или расположение по умолчанию для входных изображений и т. Д., Вы можете перейти в программу «detect.py» и настроить ее в соответствии с вашими потребностями. .

Чтобы дать вам представление о том, что делает программа «detect.py», здесь последовательно представлены входные и выходные данные для входных изображений, находящихся в папке inference / images, дефолт:

Я надеюсь, что вы смогли запустить YOLOv5, и я надеюсь, что вам понравится настраивать программу под свои нужды.