Spisu treści:
2025 Autor: John Day | [email protected]. Ostatnio zmodyfikowany: 2025-01-23 15:02
Ai jest jednym z najpiękniejszych zastosowań matematyki. Jest to w zasadzie zestaw operacji na macierzach zoptymalizowanych pod kątem wyników, których szukasz. Na szczęście istnieje mnóstwo narzędzi open source, które pozwalają nam z niego korzystać.
Pomysł wpadłem na ten pomysł dawno temu, kiedy pracowałem nad wodospadem dezaktywowanym przez rzut przechodzących ludzi. Używałem czujników ultradźwiękowych i zbyt późno odkryłem, że nie działają zbyt dobrze, gdy są mokre… To nie było zabawne doświadczenie. Skończyło się na użyciu dużego przycisku, który ludzie naciskali, jeśli chcieli przejść. Wyszło dobrze, bo było gorąco i ludzie uwielbiali się moczyć, ale problem tkwił w mojej głowie… Jak wykrywać ludzi i aktywować reakcję.
Opowiadam tę historię, ponieważ chcę podkreślić, że ta zasada może być wykorzystana w wielu innych zastosowaniach! Podążanie za twarzą zabawką to tylko jedna z nich. W przypadku instalacji interaktywnych możesz zrobić wszystko. Możesz użyć modelu, aby wykryć, czy twarz się uśmiecha. Można było policzyć psy w parku. Możesz zamknąć rolety, gdy ludzie przechodzą obok. Lub… stwórz kontroler dla swojej bazy Nintendo na podstawie swojej pozycji ciała…. Możesz pobrać wiele innych modeli Ai, które robią różne rzeczy.
Istnieje kilka samouczków, jak sprawić, by wnioskowanie Ai działało z raspberry pi. Jestem tutaj, aby nauczyć Cię, jak zintegrować dziurę w samodzielną jednostkę. Jak tylko twój robot się uruchomi, uruchomi niezbędne programy.
Kieszonkowe dzieci
- Robot paralaksowy: Wybrałem tego robota, ponieważ miałem go w pobliżu, ale każdy robot, którym można sterować za pomocą arduino, wykona pracę.
- Raspberry pi: polecam przynajmniej raspberry pi 3B+.
- Intel Neural Stick: Szybkość wnioskowania wzrasta z jednego na sekundę do 8. Naprawdę potrzebujesz go, jeśli chcesz zrobić Ai w Raspberry Pi.
- Power Bank: Najłatwiejszy sposób zarządzania mocą. Działa z raspberry pi 3B+, możesz sprawdzić, czy działa z pi 4.
- Picamera: Lubię używać picamery zamiast USB.
Krok 1: Montaż łazika
Celem samouczka jest głównie oprogramowanie, więc nie chcę zagłębiać się w szczegóły łazika. Działa z tym robotem, ale może działać naprawdę z każdym innym sprzętem. Nie musi być nawet dla łazika, możesz użyć tego do kamery z czujnikiem ruchu.
- Znajdź sobie pojazd kontrolowany przez Arduino.
- Mocno owiń do niego power bank.
- Ciasno zawiń do niego Raspberry Pi.
- Pikamerę przykleić pod niewielkim kątem do góry.
- Połącz wszystko razem.
- Voila!
Krok 2: Raspbian
Używam Raspberry Pi, ale nie ma powodu, aby nie używać innego linuxa… do Ciebie. Mógłbym wypuścić obraz typu plug and play do nagrywania karty SD, przejdę do tego, jeśli zainteresuje się wystarczająca liczba osób.
Zainstaluj Raspbian: Możesz zainstalować Raspbian Buster Lite. Nie będziemy używać pulpitu… Tylko połączenie ssh Secure Shell.
Połącz się ze swoim Pi: Najpierw możesz połączyć się ze swoim raspberry pi za pomocą połączenia Ethernet
Ustaw Wi-Fi: Teraz możesz skonfigurować połączenie bezprzewodowe
Krok 3: OtwórzVino
OpenVino to świetna biblioteka obsługiwana przez firmę Intel. Wykonali świetną robotę przy kompilacji przykładowych modeli i sprawili, że większość frameworków ai jest kompatybilna. Potrzebujesz tej biblioteki do karty Intel Neural Stick.
Instalacja Python3: Musisz zainstalować Pythona 3.
Instalacja OpenVino: Po wykonaniu tej czynności zobaczysz wiersz „[setupvars.sh] zainicjowano środowisko OpenVINO” za każdym razem, gdy połączysz się z raspberry pi.
OpenVino jest rozszerzeniem opencv. Aby to przetestować, możesz uruchomić python3 i zaimportować cv2.
wpisz do powłoki:
Python3
wpisz w Pythonie:
- importuj cv2
- cv2._wersja_
Ostatnia linia powinna zwracać '4.1.2-openvino' lub dowolną wersję openvino. jeśli mówi opencv, twoja instalacja nie zadziałała…
Krok 4: Pobierz kod
Najpierw instalujemy git. Wpisz do powłoki:
sudo apt-get zainstaluj git
Następnie możemy przejść do folderu Dokumenty i pobrać kod:
- cd ~/Dokumenty/
- git klon
Krok 5: FollowMe (Python)
To jest ta część, z którą chcesz się bawić. Zrób, jeśli podążaj za tobą! Niech się ciebie boi! Podążaj za swoim psem! Niech rozpozna wyraz twarzy !! Nękać kota!!! Cokolwiek chcesz.
Znajdziesz cztery główne foldery: Arduino, Deployment, Player i FollowMe:
Arduino: Więcej na ten temat w następnej sekcji
Wdrożenie: Tutaj umieszczam interfejs użytkownika. W tej chwili zakodowałem prosty przycisk start/stop i małą kamerę z kontrolą tylko futrzanej zabawy.
Gracz: Przeznaczony do użytku na komputerze stacjonarnym. Do przeglądania wyników bota!
FollowMe: moduł, który robi prawdziwą zabawę
Więcej szczegółów umieszczę na githubie, żeby mieć tylko jedno miejsce do aktualizacji. To jest miejsce na kod
Krok 6: Pobierz modele
Modele do wnioskowania nie są zawarte w kodzie, ponieważ są dość duże. Ale możesz znaleźć wiele przykładów wykorzystujących model OpenVino Zoo
Możesz skorzystać z narzędzia do pobierania modeli lub bezpośrednio wrzucić ten link. W moim przypadku nie mogłem użyć programu do pobierania modeli z mojej instalacji raspberry pi…
Następnie skopiuj model do folderu o nazwie Models z:
- cd ~/Dokumenty/FollowMe
- Modele mkdir
- Modele cd
- wget
- wget
Zawsze potrzebujesz.xml i.bin.
Możesz pobrać dowolny model… Ale będziesz musiał zmienić kod. Baw się dobrze!
Krok 7: Arduino
Musimy pobrać kod w poprzednim kroku. Jest w nim kod dla arduino!
Kod jest przeznaczony do napędzania dwóch ciągłych serw, jeśli wybierzesz inną konfigurację, musisz zmodyfikować kod.
Zasadniczo robi dwie rzeczy. Komunikuje się z komputerem i uruchamia serwa z wybraną prędkością.
Mógłbym użyć wyjścia Raspberry Pi bezpośrednio do sterowania silnikami… ale arduino działają lepiej (mają prawdziwy generator częstotliwości). Chciałem też maksymalnie odciążyć raspberry pi, aby przyspieszyć wnioskowanie.
Krok 8: GUI
Nic nadzwyczajnego… Jeszcze. Mogę dodać inne rzeczy, takie jak podgląd na żywo lub sterowanie ruchem. Ale w międzyczasie wystarczy proste uruchomienie i zatrzymanie.
Jeśli chcesz go przetestować, musisz go uruchomić z katalogu FollowMe Level, a następnie wywołać go z python3:
- cd ~/Dokumenty/FollowMe
- Wdrożenie python3/FollowMe.py
Następnie możesz uzyskać dostęp do interfejsu w swojej przeglądarce, wpisując:
192.168.0.113:8000
oczywiście z właściwym adresem IP.
Dostępna jest również przeglądarka wideo z elementami sterującymi… ale nie z działającym wnioskowaniem
Wdrożenie python3/StreamVideo.py
Krok 9: Serwis
To właśnie sprawia, że Rover działa sam. Usługa to program działający w tle komputera bez użytkownika. Upewnij się, że WSZYSTKIE TWOJE ŚCIEŻKI są wartościami absolutnymi i że masz odpowiednie prawa, jeśli używasz jakichkolwiek plików, a usługa będzie działać poprawnie.
Aby uruchomić skrypt Pythona jako usługę, musisz odwołać się do skryptu w pliku usługi. Plik usługi znajduje się w kodzie pobranym z git w folderze Deployment. Nazwa to FollowMe.service.
Aby go skopiować, wpisz w powłoce:
sudo cp ~/Documents/FollowMe/Deployment/FollowMe.service /etc/systemd/system/
Gdy po raz pierwszy kopiujesz plik, musisz zaktualizować systemctl… lub ponownie uruchomić komputer:
sudo systemctl demon-reload
A na początek:
sudo systemctl start FollowMe
Możesz także użyć poleceń stop, enable i disable. Ostatnie dwa dotyczą trwałej zmiany stanu.
Małe wyjaśnienie….
Openvino potrzebuje dodatkowych ścieżek w zmiennych systemowych, aby mógł działać. Niestety normalna instalacja nie będzie działać jako usługa. Potrzebujesz więc tego pliku do ustawienia zmiennych.
Zauważ, że moja instalacja dotyczy Pythona 3.7, dlatego istnieje zmienna, którą możesz potrzebować dostosować… Powodzenia!
Ten plik odwołuje się do skryptu Pythona w ścieżce bezwzględnej:
/home/pi/Dokumenty/FollowMe/Wdrażanie/FollowMe.py
Krok 10: To wszystko! Baw się dobrze
Uwagi? zawsze mile widziane
Zalecana:
Stwórz własną przenośną konsolę do gier w stylu retro! który jest również tabletem Win10!: 6 kroków (ze zdjęciami)
Stwórz własną przenośną retro konsolę do gier!……która jest również tabletem Win10!: W tym projekcie pokażę ci, jak stworzyć przenośną retro konsolę do gier, która może być również używana jako tablet z systemem Windows 10. Będzie składał się z 7" HDMI LCD z ekranem dotykowym, LattePanda SBC, płytka zasilająca USB typu C PD i kilka innych
Raspberry Pi NAS, który naprawdę wygląda jak NAS: 13 kroków (ze zdjęciami)
Raspberry Pi NAS, który naprawdę wygląda jak NAS: Dlaczego Raspberry Pi NAS Cóż, szukałem pięknego, ale zajmującego mało miejsca Raspberry Pi NAS z Internetu i nic nie znalazłem. Znalazłem jakiś projekt NAS z Raspberry Pi, który został przyklejony do drewnianej podstawy, ale nie tego chcę. Chcę
ANTYDYSTRAKCJA: uchwyt do smartfona, który pomaga skupić się: 7 kroków (ze zdjęciami)
ANTiDISTRACTION: uchwyt do smartfona, który pomaga Ci się skupić: Nasze urządzenie ANTIDISTRACTION ma na celu przerwanie wszelkich form rozproszenia przez komórki w okresach intensywnego skupienia. Maszyna działa jak stacja ładująca, na której zamontowane jest urządzenie mobilne, aby zapewnić środowisko wolne od zakłóceń
Miecz świetlny UChip - „Niech moc będzie z tobą”: 6 kroków
UChip Lightsaber - „Niech moc będzie z tobą”: Czy kiedykolwiek marzyłeś o byciu Jedi lub Sithem z uniwersum Gwiezdnych Wojen, wymachując potężnym mieczem świetlnym, aby wesprzeć swoją stronę? Jakakolwiek może być odpowiedź, oto ona: Jak zrobić DIY miecz świetlny za pomocą µChipFirst, pozwól, że sprecyzuję, że zamierzam
Animatronic podąża za automatem stracha na wróble i nawiedzeniem: 4 kroki (ze zdjęciami)
Animatronic Podąża za Strachem na Wróble i Automatyką Nawiedzenia: Ten strach na wróble (nazwijmy go Jackiem) wyczuwa cię w różnych częściach podwórka, budzi się i patrzy na ciebie. Gdy się zbliżasz, Jack nosi zęby i chrupie. Jack udaje, że jest statycznym rekwizytem w ciągu dnia i budzi się w nocy (tak jak wszystkie dobre