YOLO: Обнаружение объектов в реальном времени. Вы только посмотрите один раз (YOLO) - это современная система обнаружения объектов в реальном времени. Это предварительно обученная модель для нескольких обычных объектов, таких как стул, человек, машина, бутылка и т. Д.

Репозиторий github этого проекта можно найти по этому адресу: https://github.com/singh-shreya6/Navigation-Assistant

Мы использовали его для создания помощника по навигации, который сообщает в градусах, насколько далеко влево, вправо или вперед находится объект поиска. Вся система состояла из трех модулей:

  1. Преобразование речи в текст с помощью Google API: пользователь вводит данные в форме речи. Пример: Найдите мне стул, найдите бутылку и т. Д.
  2. Обнаружение объекта: модель YOLO обнаруживает объект в поиске. Мы изменили его, чтобы сообщить нам, в каком градусе слева или справа находится объект.
  3. Преобразование текста в речь: библиотека Python Pyttsx использовалась для передачи вывода в форме речи. Пример: стул найден под углом 21 градус влево, бутылка впереди и т. Д.

Требования:
В первую очередь это модель на основе Python.

Выполнить команду:

python code.py \
- prototxt MobileNetSSD_deploy.prototxt.txt \
- модель MobileNetSSD_deploy.caffemodel

Описание рабочего процесса:

  1. Вся система изначально находится в спящем режиме. Когда вы произносите «Помогите», система активируется.
  2. Затем пользователь может задать свой голосовой запрос в виде «найди мне бутылку, найди постель и т. Д.».
  3. Видеопоток запускается с использованием библиотеки imutils Python.
  4. Модуль обнаружения объекта активируется, где он сопоставляет объект с его набором предопределенных классов. Глубокая нейронная сеть (DNN) используется в качестве модели.
  5. Если объект найден, он образует рамку вокруг объекта. Мы получили координаты коробки. Чтобы понять точку зрения пользователя, мы рассмотрели центр нижней строки окна. Если объект отсутствует в его наборе обучающих данных, система возвращает вывод «объект не найден».
  6. Расчет степени производился по математической формуле: math.degrees (math.atan (abs (centerX-user_x) / abs (centerY-user_y)))
  7. Видеопоток останавливается.
  8. Наконец, вывод текста преобразуется в речь с помощью библиотеки python pyttsx.

Вывод: