İçindekiler:

MyPetBot (Sizi Takip Eden Bir Bot): 10 Adım (Resimlerle)
MyPetBot (Sizi Takip Eden Bir Bot): 10 Adım (Resimlerle)

Video: MyPetBot (Sizi Takip Eden Bir Bot): 10 Adım (Resimlerle)

Video: MyPetBot (Sizi Takip Eden Bir Bot): 10 Adım (Resimlerle)
Video: HEMEN SAHİP OLABİLECEĞİNİZ 10 SÜPER GÜÇ! 2024, Temmuz
Anonim
Image
Image
MyPetBot (Sizi Takip Eden Bir Bot)
MyPetBot (Sizi Takip Eden Bir Bot)
MyPetBot (Sizi Takip Eden Bir Bot)
MyPetBot (Sizi Takip Eden Bir Bot)

AI, matematiğin en güzel uygulamalarından biridir. Temel olarak, aradığınız sonuca uyacak şekilde optimize edilmiş bir dizi matris işlemidir. Neyse ki, onu kullanmamıza izin veren tonlarca açık kaynaklı araç var.

Aslında uzun zaman önce, geçen insanlar tarafından devre dışı bırakılan bir şelale üzerinde çalışırken aklıma geldi. Ultrason sensörleri kullanıyordum ve ıslandıklarında pek çalışmadıklarını çok geç keşfettim… Bu eğlenceli bir deneyim değildi. İnsanların geçmek istediklerinde basacakları büyük bir düğme kullandık. Güzel çıktı çünkü hava sıcaktı ve insanlar ıslanmayı severdi ama sorun benim kafamda kaldı… İnsanları nasıl tespit edip bir tepkiyi nasıl harekete geçiririm.

Bu hikayeyi anlatıyorum çünkü bu prensibin tonlarca başka uygulama için kullanılabileceğini belirtmek istiyorum! Yüzünü oyuncakla takip etmek bunlardan sadece biri. Etkileşimli kurulumlar için her türlü şeyi yapabilirsiniz. Bir yüzün gülümseyip gülümsemediğini tespit etmek için bir model kullanabilirsiniz. Bir parktaki köpeklerin sayısını sayabilirsiniz. İnsanlar geçerken panjurlarınızı kapatabilirsiniz. Veya… nintendo tabanınız için vücut pozisyonunuza göre bir kontrolör yapın…. Her türlü işi yapan diğer birçok AI modelini indirebilirsiniz.

Ai çıkarımının ahududu pi ile nasıl çalışacağına dair birkaç öğretici var. Delik entegrasyonunu kendi kendine çalışan bir üniteye nasıl yapacağınızı öğretmek için buradayım. Robotunuz açılır açılmaz gerekli programları başlatacaktır.

Gereçler

  • Paralaks robotu: Bu robotu seçtim çünkü ortalıkta yatıyordu, ancak arduino ile kontrol edilebilen herhangi bir robot işi yapacak.
  • Raspberry pi: En azından ahududu pi 3B+'ı öneririm.
  • Intel Neural Stick: Çıkarım oranı saniyede bir'den 8'e çıkıyor. Bir ahududu pi'de Ai yapmak istiyorsanız gerçekten bir taneye ihtiyacınız var.
  • Güç Bankası: Gücü yönetmenin en kolay yolu. Raspberry pi 3B+ ile çalışır, pi 4 ile çalışıp çalışmadığını kontrol etmek isteyebilirsiniz.
  • Picamera: Usb yerine picamera kullanmayı seviyorum.

Adım 1: Gezici Montajı

Gezici Montajı
Gezici Montajı
Gezici Montajı
Gezici Montajı
Gezici Montajı
Gezici Montajı

Eğitimin amacı esas olarak yazılımla ilgili, bu yüzden gezicinin ayrıntılarına çok fazla girmek istemiyorum. Bu robotla çalışır, ancak gerçekten başka herhangi bir donanımla çalışabilir. Gezici olmak zorunda bile değil, bunu bir hareket sensörlü kamera için kullanabilirsiniz.

  1. Kendinize Arduino kontrollü bir araç bulun.
  2. Bir güç bankasını sıkıca sarın.
  3. Üzerine ahududulu bir pi sarın.
  4. Pikamerayı üste doğru hafif bir açıyla yapıştırın.
  5. Her şeyi birbirine bağlayın.
  6. İşte!

2. Adım: Raspbian

ahududu
ahududu
ahududu
ahududu

Ben bir ahududu pi kullanıyorum, ancak başka bir linux kullanmamak için hiçbir neden yok… size kalmış. Bir sd kartı yakmak için bir tak ve çalıştır görüntüsü yayınlayabilirim, yeterince kişi ilgilenirse ona ulaşırım.

Raspbian'ı kurun: Raspbian Buster Lite'ı kurabilirsiniz. Masaüstünü kullanmayacağız… Sadece ssh Secure Shell bağlantısı.

Pi'nize bağlanın: Öncelikle ahududu pi'nize bir Ethernet bağlantısı ile bağlanabilirsiniz.

Wi-Fi'nizi ayarlayın: Artık kablosuz bağlantınızı yapılandırabilirsiniz

3. Adım: OpenVino

OpenVino
OpenVino

OpenVino, Intel tarafından desteklenen harika bir kitaplıktır. Örnek modelleri derlemede harika bir iş çıkardılar ve yapay zeka çerçevesinin çoğunu uyumlu hale getirdiler. Intel Neural Stick için bu kitaplığa ihtiyacınız var.

Python3 kurulumu: python 3'ü kurmanız gerekiyor.

OpenVino kurulumu: Bu yapıldıktan sonra, ahududu pi'ye her bağlandığınızda "[setupvars.sh] OpenVINO ortamı başlatıldı" satırını göreceksiniz.

OpenVino, opencv'nin bir uzantısıdır. Test etmek için python3'ü başlatabilir ve cv2'yi içe aktarabilirsiniz.

kabuğun içine yazın:

piton3

python'a yazın:

  • cv2'yi içe aktar
  • cv2._versiyon_

Son satır '4.1.2-openvino' veya herhangi bir openvino sürümü döndürmelidir. eğer opencv diyorsa kurulumunuz çalışmadı…

4. Adım: Kodu İndirin

Kodu İndir
Kodu İndir

İlk önce git'i kuruyoruz. Kabuğa yazın:

sudo apt-get kurulum git

Ardından Documents klasörüne gidebilir ve kodu indirebiliriz:

  • cd ~/Belgeler/
  • git klonu

Adım 5: FollowMe (Python)

Beni Takip Et (Python)
Beni Takip Et (Python)

Oynamak istediğin kısım bu. Seni takip edersen yap! Senden korkmasını sağla! Köpeğini takip et! Yüz ifadelerini tanımasını sağlayın !! kedinizi taciz edin!!! İstediğin herhangi bir şey.

Dört ana klasör bulacaksınız: Arduino, Deployment, Player ve FollowMe:

Arduino: Bir sonraki bölümde bununla ilgili daha fazla bilgi

Dağıtım: Burası, kullanıcı arayüzünü koyduğum yer. Şu anda basit bir başlat/durdur düğmesi ve kontrole sahip küçük bir kamera görüntüleyici kodladım.

Oynatıcı: Masaüstü PC'nizde kullanılması amaçlanmıştır. Botun çıktısını incelemek için!

FollowMe: Asıl eğlenceyi yapan modül

Güncellenecek tek bir yer olması için github'a daha fazla ayrıntı koyacağım. Burası kodun yeri

Adım 6: Modelleri İndirin

Çıkarım modelleri oldukça büyük oldukları için koda dahil edilmemiştir. Ancak OpenVino model Zoo kullanarak birçok örnek bulabilirsiniz.

Model indiriciyi kullanabilir veya doğrudan bu bağlantıyı atabilirsiniz. Benim durumumda ahududu pi kurulumumdan model indiriciyi kullanamadım…

Ardından modeli aşağıdakilerle Modeller adlı bir klasöre kopyalayın:

  • cd ~/Belgeler/Beni Takip Et
  • mkdir Modelleri
  • cd Modelleri
  • wget
  • wget

Her zaman.xml ve.bin'e ihtiyacınız vardır.

Dilediğiniz modeli indirebilirsiniz… Ama kodu değiştirmeniz gerekecek. İyi eğlenceler!

Adım 7: Arduino

Arduino
Arduino

Bir önceki adımdaki kodu indirmemiz gerekiyor. Arduino'nun kodu içinde!

Kod, iki sürekli servo sürmek içindir, farklı bir konfigürasyon seçtiyseniz, kodu değiştirmeniz gerekir.

Temelde iki şey yapar. Bilgisayar ile haberleşir ve seçilen hızda servoları çalıştırır.

Motorları kontrol etmek için ahududu pi'nin çıktısını doğrudan kullanabilirim… ama arduinolar daha iyi çalışır (gerçek bir frekans jeneratörü vardır). Ayrıca, çıkarımı daha hızlı yapmak için ahududu pi'yi mümkün olduğunca boşaltmak istedim.

Adım 8: GUI

GUI
GUI
GUI
GUI

Süslü bir şey yok… Henüz. Canlı görüntü veya hareket kontrolleri gibi başka şeyler ekleyebilirim. Ancak bu arada, basit bir başlama ve durma hile yapacaktır.

Test etmek istiyorsanız, FollowMe Level dizininden başlatmanız ve ardından python3'ten aramanız gerekir:

  • cd ~/Belgeler/Beni Takip Et
  • python3 Dağıtımı/FollowMe.py

Ardından, tarayıcınızdaki arayüze şunu yazarak erişebilirsiniz:

192.168.0.113:8000

tabii ki doğru IP adresiyle.

Kontrollere sahip bir video görüntüleyici de var… ancak çalışma çıkarımına sahip değil

python3 Dağıtımı/StreamVideo.py

Adım 9: Servis

Rover'ın kendi kendine çalışmasını sağlayan şey budur. Hizmet, kullanıcı olmadan bilgisayarın arka planında çalışan bir programdır. TÜM YOLLARINIZIN mutlak olduğundan ve herhangi bir dosya kullanıyorsanız doğru haklara sahip olduğunuzdan ve hizmetin iyi çalışacağından emin olun.

Bir python betiğini hizmet olarak çalıştırmak için, bir hizmet dosyasındaki betiği referans almanız gerekir. Hizmet dosyası, Dağıtım klasöründe git'ten indirilen koddadır. Adı FollowMe.service.

Kopyalamak için kabuğa aşağıdakini yazın:

sudo cp ~/Documents/FollowMe/Deployment/FollowMe.service /etc/systemd/system/

Dosyayı ilk kopyaladığınızda systemctl'yi güncellemeniz veya yeniden başlatmanız gerekir:

sudo systemctl arka plan programı yeniden yükleme

Ve başlamak için:

sudo systemctl FollowMe'yi başlat

Durdur, etkinleştir ve devre dışı bırak komutlarını da kullanabilirsiniz. Son ikisi kalıcı bir hal değişikliği içindir.

Küçük Açıklama….

Openvino'nun çalışması için sistem değişkenlerinde bazı ekstra yollara ihtiyacı var. Ne yazık ki normal kurulum bir hizmet olarak çalışmayacaktır. Yani değişkenleri ayarlamak için bu dosyaya ihtiyacınız var.

Kurulumumun python 3.7 için olduğuna dikkat edin, bu nedenle ayarlamanız gerekebilecek bir değişken var… İyi şanslar!

Bu dosya, mutlak yolda python betiğine başvurur:

/home/pi/Documents/FollowMe/Deployment/FollowMe.py

Adım 10: İşte Bu! İyi eğlenceler

Yorumlar? her zaman bekleriz

Önerilen: