Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-13 06:58
Ten przewodnik zawiera instrukcje krok po kroku, jak skonfigurować interfejs API wykrywania obiektów TensorFlow na Raspberry Pi. Wykonując czynności opisane w tym przewodniku, będziesz mógł używać swojego Raspberry Pi do wykrywania obiektów na żywo z kamery internetowej Picamera lub USB. Ręczne uczenie maszynowe nie jest wymagane, ponieważ jest używane w internetowej bazie danych do wykrywania obiektów. Możesz wykryć większość obiektów, które są powszechnie używane na całym świecie.
Proszę odnieść się do mojego powyższego zdjęcia, użyliśmy myszy, jabłka i nożyczek i idealnie wykryliśmy obiekt.
Przewodnik poprowadzi Cię przez następujące kroki:
Zaktualizuj Raspberry Pi
Zainstaluj TensorFlowZainstaluj OpenCV
Skompiluj i zainstaluj Protobuf
Skonfiguruj strukturę katalogów TensorFlow
Wykrywaj obiekty
Krok 1: Zaktualizuj Raspberry Pi
Twoje Raspberry Pi wymaga aktualizacji
Krok 1:
Wpisz w terminalu poleceń, aktualizacja sudo apt-get
A potem wpisz
sudo apt-get dist-upgrade
To może zająć dużo czasu, zależy od twojego Internetu i Raspberry pi
To wszystko, czego potrzebujesz, zakończyłeś aktualizację swojego Raspberry pi
Krok 2: Zainstaluj TensorFlow
Teraz zainstalujemy Tensorflow.
Wpisz następujące polecenie, pip3 zainstaluj TensorFlow
TensorFlow potrzebuje również pakietu LibAtlas, wpisz następujące polecenie
sudo apt-get zainstaluj libatlas-base-dev
I wpisz również następujące polecenie, sudo pip3 install pillow lxml jupyter matplotlib cythonsudo apt-get install python-tk
Teraz zakończyliśmy instalację Tensorflow.
Krok 3: Zainstaluj OpenCV
Teraz pracujemy nad zainstalowaniem biblioteki OpenCV, ponieważ przykłady wykrywania obiektów TensorFlow używają matplotlib do pokazywania obrazów, ale wolę ćwiczyć OpenCV, ponieważ jest to łatwiejsze w pracy i mniej błędów. Więc musimy zainstalować OpenCV. Teraz OpenCV nie obsługuje RPI, więc zamierzamy zainstalować starszą wersję.
Teraz pracujemy nad zainstalowaniem kilku zależności, które należy zainstalować za pomocą apt-get
sudo apt-get zainstaluj libjpeg-dev libtiff5-dev libjasper-dev libpng12-dev
sudo apt-get zainstaluj libavcodec-dev libavformat-dev libswscale-dev libv4l-dev
sudo apt-get zainstaluj libxvidcore-dev libx264-dev
sudo apt-get zainstaluj qt4-dev-tools libatlas-base-dev
Wreszcie, teraz możemy zainstalować OpenCV, wpisując, pip3 zainstaluj opencv-python==3.4.6.27
To wszystko, teraz zainstalowaliśmy OpenCV
Krok 4: Zainstaluj Protobuf
Interfejs API wykrywania obiektów TensorFlow korzysta z Protobuf, pakietu, który jest wyposażony w format danych Protocol Buffer firmy Google. Musisz skompilować ze źródeł, teraz możesz łatwo zainstalować.
sudo apt-get zainstaluj protobuf-kompilator
Po zakończeniu uruchom protoc --version. Powinieneś otrzymać odpowiedź libprotoc 3.6.1 lub podobnego.
Krok 5: Skonfiguruj strukturę katalogów TensorFlow
Zainstalowaliśmy wszystkie pakiety, chcemy ustawić katalog dla TensorFlow. Z katalogu domowego utwórz nazwę katalogu o nazwie „tensorflow1”, Wpisz następujące, mkdir tensorflow1cd tensorflow1
Teraz pobierz TensorFlow, wpisując, git clone --depth 1
Chcemy zmodyfikować zmienną środowiskową PYTHONPATH, aby kierować do niektórych katalogów w repozytorium TensorFlow. Za każdym razem musimy ustawić PYTHONPATH. Musimy dostosować plik.bashrc. Musimy go otworzyć, wpisując
sudo nano ~/.bashrc
Na końcu pliku, w ostatniej linii dodaj polecenie, tak jak na górnym obrazku, który jest zaznaczony na czerwonym polu.
eksportuj PYTHONPATH=$PYTHONPATH:/home/pi/tensorflow1/models/research:/home/pi/tensorflow1/models/research/slim
Teraz zapisz i wyjdź. Musimy użyć Protoc do skompilowania plików Protocol Buffer(.proto) używanych przez Object Detection API. Pliki.proto znajdują się w /research/object_detection/protos, chcemy wykonać polecenie z katalogu /research. Wpisz następujące polecenie
cd /home/pi/tensorflow1/models/researchprotoc object_detection/protos/*.proto --python_out=.
To polecenie zmienia wszystkie pliki "name".proto na pliki "name_pb2".py.
cd /home/pi/tensorflow1/models/badania/wykrywanie_obiektu
Musimy pobrać model SSD_Lite z zoo modeli TensorFlowdetection. W tym celu chcemy użyć SSDLite-MobileNet, który jest najszybszym modelem istniejącym dla RPI.
Google nieustannie wypuszcza modele o zwiększonej szybkości i wydajności, więc często sprawdzaj, czy są jakieś ulepszone modele.
Wpisz następujące polecenie, aby pobrać model SSDLite-MobileNet.
wget
tar -xzvf ssdlite_mobilenet_v2_coco_2018_05_09.tar.gz
Teraz możemy przećwiczyć modele Object_Detction!
Już prawie skończyliśmy!
Krok 6: Wykryj obiekt
Teraz wszystko jest skonfigurowane do wykrywania obiektów wykonawczych na Pi!
Object_detection_picamera.py wykrywa obiekty na żywo z kamery internetowej Picamera lub USB.
Jeśli używasz Picamery, zmień konfigurację Raspberry Pi w menu jak na powyższym obrazku, zaznaczonym czerwonym kolorem.
Wpisz następujące polecenie, aby pobrać plik Object_detection_picamera.py do katalogu 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
Wpisz następujące polecenie dla kamery USB
python3 Object_detection_picamera.py --usbcam
Czyjaś komenda jest wykonywana, po 1 minucie otworzy się nowe okno, które rozpocznie wykrywanie obiektów!!!
Krok 7: Problemy i dziękuję
Daj mi znać, jeśli masz jakieś pytania
E-mail: [email protected]
Dziękuję Ci, Rithik