Оглавление:
- Шаг 1. Обновите Raspberry Pi
- Шаг 2: установите TensorFlow
- Шаг 3: Установите OpenCV
- Шаг 4: Установите Protobuf
- Шаг 5: Настройте структуру каталогов TensorFlow
- Шаг 6: обнаружение объекта
- Шаг 7. Проблемы и спасибо
Видео: Обнаружение объектов Raspberry Pi: 7 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:50
В этом руководстве представлены пошаговые инструкции по настройке API обнаружения объектов TensorFlow на Raspberry Pi. Выполнив действия, описанные в этом руководстве, вы сможете использовать Raspberry Pi для обнаружения объектов в реальном времени с веб-камеры Picamera или USB. Ручное машинное обучение не требуется, поскольку оно используется в онлайн-базе данных для обнаружения объектов. Вы можете обнаружить большинство объектов, которые обычно используются во всем мире.
Пожалуйста, обратитесь к моему изображению выше, мы использовали мышь, яблоко и ножницы и отлично обнаружили объект.
В руководстве выполняются следующие шаги:
Обновите Raspberry Pi
Установить TensorFlow Установить OpenCV
Скомпилируйте и установите Protobuf
Настроить структуру каталогов TensorFlow
Обнаруживать объекты
Шаг 1. Обновите Raspberry Pi
Ваш Raspberry Pi нуждается в обновлении
Шаг 1:
Введите командный терминал, sudo apt-get update
А затем введите
sudo apt-get dist-upgrade
Это может занять много времени, зависит от вашего Интернета и Raspberry Pi
Это все, что вам нужно, вы завершили обновление Raspberry pi
Шаг 2: установите TensorFlow
Теперь мы собираемся установить Tensorflow.
Введите следующую команду, pip3 установить TensorFlow
TensorFlow также требуется пакет LibAtlas, введите следующую команду
sudo apt-get install libatlas-base-dev
И также введите следующую команду:
sudo pip3 установить подушку lxml jupyter matplotlib cythonsudo apt-get install python-tk
На этом мы закончили установку Tensorflow.
Шаг 3: Установите OpenCV
Сейчас мы работаем над установкой библиотеки OpenCV, потому что в примерах обнаружения объектов TensorFlow для отображения изображений используется библиотека matplotlib, но я предпочитаю практиковать OpenCV, поскольку с ней легче работать и с ней меньше ошибок. Итак, нам нужно установить OpenCV. Сейчас OpenCV не поддерживает RPI, поэтому мы собираемся установить более старую версию Verision.
Сейчас мы работаем над установкой нескольких зависимостей, которые необходимо установить через apt-get.
sudo apt-get install libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get install libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get установить libxvidcore-dev libx264-dev
sudo apt-get install qt4-dev-tools libatlas-base-dev
Наконец, теперь мы можем установить OpenCV, набрав, pip3 установить opencv-python == 3.4.6.27
Вот и все, мы установили OpenCV
Шаг 4: Установите Protobuf
API обнаружения объектов TensorFlow использует Protobuf, пакет, который соответствует формату данных буфера протокола Google. Вам нужно скомпилировать из исходников, теперь вы можете легко установить.
sudo apt-get установить protobuf-compiler
Как только это будет сделано, запустите protoc --version. Вы должны получить ответ libprotoc 3.6.1 или аналогичный.
Шаг 5: Настройте структуру каталогов TensorFlow
Мы установили все пакеты, мы хотим создать каталог для TensorFlow. Из домашнего каталога создайте каталог с именем «tensorflow1», Введите следующее, mkdir tensorflow1cd tensorflow1
Теперь загрузите TensorFlow, набрав, git clone - глубина 1
Мы хотим изменить переменную среды PYTHONPATH, чтобы она указывала на некоторые каталоги внутри репозитория TensorFlow. Нам нужно, чтобы PYTHONPATH устанавливался каждый раз. Нам нужно настроить файл.bashrc. Мы должны открыть его, набрав
sudo nano ~ /.bashrc
В конце файла в последней строке добавьте команду, как на верхнем изображении, отмеченном красным цветом.
экспорт PYTHONPATH = $ PYTHONPATH: / home / pi / tensorflow1 / models / research: / home / pi / tensorflow1 / models / research / slim
Теперь сохраните и выйдите. Нам нужно использовать Protoc для компиляции файлов буфера протокола (.proto), используемых API обнаружения объектов. Файлы.proto находятся в / research / object_detection / protos, мы хотим выполнить команду из каталога / research. Введите следующую команду
cd / home / pi / tensorflow1 / models / researchprotoc object_detection / protos / *. proto --python_out =.
Эта команда изменяет все файлы "name".proto на файлы "name_pb2".py.
cd / home / pi / tensorflow1 / модели / исследования / определение_объекта
Нам нужно скачать модель SSD_Lite из зоопарка моделей TensorFlowdetection. Для этого мы хотим использовать SSDLite-MobileNet, которая является самой быстрой моделью, существующей для RPI.
Google бесконечно выпускает модели с повышенной скоростью и производительностью, поэтому почаще проверяйте, есть ли какие-нибудь улучшенные модели.
Введите следующую команду, чтобы загрузить модель SSDLite-MobileNet.
wget
tar -xzvf ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz
Теперь мы можем попрактиковаться в моделях Object_Detction!
Мы почти закончили!
Шаг 6: обнаружение объекта
Теперь все настроено для обнаружения исполняемого объекта на Pi!
Object_detection_picamera.py обнаруживает объекты в реальном времени с веб-камеры Picamera или USB.
Если вы используете Picamera, измените конфигурацию Raspberry Pi в меню, как на изображении выше, отмеченном красным цветом.
Введите следующую команду, чтобы загрузить файл Object_detection_picamera.py в каталог object_detection.
wget https://raw.githubusercontent.com/EdjeElectronics/ TensorFlow-Object-Detection-on-the-Raspberry-Pi / master / Object_detection_picamera.py
python3 Object_detection_picamera.py
Введите следующую команду для USB-камеры
python3 Object_detection_picamera.py --usbcam
Выполняется одна команда, через 1 минуту открывается новое окно, в котором начнется обнаружение объектов !!!
Шаг 7. Проблемы и спасибо
пожалуйста, дай мне знать, если возникнут какие-либо вопросы
Почта: [email protected]
Спасибо, Ритик
Рекомендуемые:
Обнаружение объектов с помощью Sipeed MaiX Board (Kendryte K210): 6 шагов
Обнаружение объектов с помощью досок Sipeed MaiX (Kendryte K210): в продолжение моей предыдущей статьи о распознавании изображений с помощью досок Sipeed MaiX Boards я решил написать еще один учебник, посвященный обнаружению объектов. Недавно появилось интересное оборудование с чипом Kendryte K210, в том числе S
ОБНАРУЖЕНИЕ ОБЪЕКТОВ МАЛИНЫ PI Pi НЕСКОЛЬКИМИ КАМЕРАМИ: 3 шага
ОБНАРУЖЕНИЕ ОБЪЕКТОВ МАЛИНЫ ПИ ПИ НЕСКОЛЬКИМИ КАМЕРАМИ: Я буду держать вступление кратким, так как само название подсказывает, какова основная цель инструкции. В этой пошаговой инструкции я объясню вам, как подключить несколько камер, например 1-пи-камеру и хотя бы одну USB-камеру, или 2 USB-камеры
Обнаружение объектов с помощью Dragonboard 410c или 820c с использованием OpenCV и Tensorflow .: 4 шага
Обнаружение объектов W / Dragonboard 410c или 820c с использованием OpenCV и Tensorflow. В этой инструкции описывается, как установить OpenCV, Tensorflow и фреймворки машинного обучения для Python 3.5 для запуска приложения Object Detection
Обнаружение объектов во время вождения радиоуправляемой машины: 9 шагов
Обнаружение объектов во время вождения радиоуправляемого автомобиля: этот проект посвящен использованию ультразвуковых датчиков на автомобиле для обнаружения препятствий
Обнаружение визуальных объектов с помощью камеры (TfCD): 15 шагов (с изображениями)
Обнаружение визуальных объектов с помощью камеры (TfCD): когнитивные сервисы, которые могут распознавать эмоции, лица людей или простые объекты, в настоящее время все еще находятся на ранней стадии разработки, но с машинным обучением эта технология все больше развивается. Мы можем ожидать увидеть больше этой магии в