Mündəricat:
- Addım 1: Bu Layihədə İstifadə Edilən Şeylər
- Addım 2: Avadanlıq Bağlantısı
- Addım 3: Proqramlaşdırma
- Addım 4: Tamamlandı
Video: LTE Pi HAT ilə üz tanıma ağıllı kilidi: 4 addım
2024 Müəllif: John Day | [email protected]. Son dəyişdirildi: 2024-01-30 07:45
Üz tanıma getdikcə daha çox istifadə olunur, ağıllı bir kilid etmək üçün istifadə edə bilərik.
Addım 1: Bu Layihədə İstifadə Edilən Şeylər
Avadanlıq komponentləri
- Raspberry Pi 3 Model B
- Raspberry Pi Kamera Modulu V2
- Grove - Relay
- LTE Cat 1 Pi HAT (Avropa)
- 10.1 düymlük 1200x1980 HDMI IPS LCD Ekranı
Proqram proqramları və onlayn xidmətlər
- WinSCP
- Notepad ++
Addım 2: Avadanlıq Bağlantısı
Bu layihədə pikamera ilə şəkil çəkməyi və içindəki üzləri tanımağı, sonra tanıma nəticəsini ekranda göstərməyi planlaşdırırıq. Üzlər məlumdursa, qapını açın və qapını kimin açdığını SMS ilə göndərin.
Buna görə bir kameranı Raspberry Pi -nin kamera interfeysinə bağlamalısınız və anten və Grove - LTE Pi şapkasına Relay qurmalısınız, sonra HAT -ı Pi -yə qoşmalısınız. Ekran Raspberry Pi -yə HDMI kabeli ilə qoşula bilər, ekranınıza və Pi -yə güc bağlamağı unutmayın.
Addım 3: Proqramlaşdırma
Üz Tanıma
Adam Geitgey və Üz Tanıma layihəsi üçün təşəkkür edirik, Raspberry Pi üzərindəki dünyanın ən sadə üz tanıma kitabxanasından istifadə edə bilərik. Aşağıdakı addımlar, Pi -də üz tanıma qurmağı göstərəcək.
Addım 1. Kamera və GPU yaddaşını konfiqurasiya etmək üçün raspi-config istifadə edin.
sudo raspi-config
İnterfeys Seçimləri - Pikameranı işə salmaq üçün Kamera, sonra Qabaqcıl Seçimlər - GPU yaddaşını qurmaq üçün Yaddaş Bölmə seçimləri 64 olaraq dəyişdirilməlidir. Bitirdikdən sonra Raspberry Pi -ni yenidən başladın.
Addım 2. Lazımi kitabxanaları quraşdırın.
sudo apt-get yeniləməsi
sudo apt-get upgrade sudo apt-get install-essential / cmake / gfortran / git / wget / curl / graphicsmagick / libgraphicsmagick1-dev / libatlas-dev / libavcodec-dev / libavformat-dev / libboost-all-dev / libgtk2. 0-dev / libjpeg-dev / liblapack-dev / libswscale-dev / pkg-config / python3-dev / python3-numpy / python3-picamera / python3-pip / zip sudo apt-get clean
Addım 3. Picamerea dəstəyi düzəldin.
sudo pip3 install -picamera [array] təkmilləşdirin
Addım 4. Dlib və üz tanıma qurun.
sudo pip3 dlib quraşdırın
sudo pip3 face_recognition qurun
Addım 5. Üz tanıma nümunəsini yükləyin və işə salın
git clone-tək filial
cd./face_recognition/examples python3 facerec_on_raspberry_pi.py
XƏBƏRDARLIQ: ImportError: libatlas.so.3 varsa: paylaşılan obyekt faylını aça bilməz: Belə bir fayl və ya qovluq yoxdur, onu düzəltmək üçün aşağıdakı əmri işlədin.
Relay
Üz tanıma hazır olduqda, əlavə xüsusiyyətlər əlavə etməyə davam edə bilərik. Grove - Relay'i LTE Cat 1 Pi HAT -a bağladıq, ancaq I2C portundan çox rəqəmsal port istifadə edir.
Bu Raspberry Pi 3B üçün pin-outdur, lövhənin pin 3 və pin 5-də yerləşən SDA pin və SCL pinini görə bilərik.
Beləliklə, rəqəmsal siqnalı 5-ə bağlayaraq röleyi idarə edə bilərik. Raspberry Pi-də python proqramını işlədin, əgər heç bir şey getmirsə, relaydan Ti-Ta eşidəcəksiniz.
GPO olaraq RPi. GPIO idxal edin
RELAY_PIN = 5 GPIO.setmode (GPIO. BOARD) GPIO.setup (RELAY_PIN, GPIO. OUT) GPIO.output (RELAY_PIN, GPIO. HIGH)
Budur, bir qovluqdan bilinən üzləri yükləyirik, pikamera ilə çəkilən üzləri tanıyırıq, əgər qovluqdakı üz, qapının kilidini açmaq üçün röleyi idarə edirik. Onları bir sinfə bağlaya bilərik, burada load_known_faces () metodu və unlock () metodudur, tamamlanmış proqram bu məqalənin sonunda yüklənə bilər.
def load_known_faces (özünü):
məlum_sifətlər = os.listdir (özünü._ tanınan_faslar_yolu) məlum_sifətlərdəki məlum_sifət üçün: özünü._ bilinən_sifətlər_adı.append (məlum_sifət [0: len (bilinən_fəza) - len ('. jpg')]) bilinən_sifət_face_şəkil_yadım_yüksək_feysləri) özünü._ məlum_sifətləri_kodlaşdırma. əlavəsi (face_recognition.face_encodings (tanınmış_face_image) [0]) qayıt len (özünü._ məlum_faces_encoding) def kilidini açmaq (özünü): əgər özünü._ eşleşmiş say (Doğru)> 0: GPIO. çıxış (özünü._ relay_pin, GPIO. HIGH) çap ('Qapı açıldı') vaxt.yuxu (5) GPIO.çıxış (özünü._ relay_pin, GPIO. LOW) özünü._ reset_recognise_params () True özünü qaytar._ retry_count += 1 çap ('Zəhmət olmasa yenidən cəhd edin… { } '. format (self._ retry_count)) False qaytar
Fövqəladə düşünün, kimin tanıdığını görsək, PIL və matplotlib kitabxanalarının faydalı ola biləcəyini göstərə bilərik, bunların arasında matplotlibin əllə quraşdırılması lazımdır, bu əmri Raspberry Pi terminalınızda işlədin.
sudo pip3 matplotlib quraşdırın
Onları kodunuza daxil edin və kilidini açmaq () metodunu bu kimi dəyişdirin:
img = Image.open ('{}/{}. jpg'.format (özünü._ məlum_fas_yolu, özünü._ bilinən_siflər_adı [0])))
plt.imshow (img) plt.ion () GPIO.output (self._ relay_pin, GPIO. HIGH) print ('Door open') plt.pause (3) plt.close () GPIO.output (self._ relay_pin, GPIO). LOW) özünü._ reset_recognise_params () qayıt True
İndi üz tanınsa, qovluqdakı şəkil ekranda görünəcək.
SMS
Bəzən otağımızda kimin olduğunu bilmək istəyirik və indi LTE Cat 1 Pi HAT üçün bir yer var. SİM kartı ona bağlayın və işləyib -işləməyəcəyini yoxlamaq üçün addımları izləyin.
Addım 1. Raspberry Pi -də UART0 -u aktiv edin
Config.txt faylını redaktə etmək üçün nano istifadə edin
sudo nano /boot/config.txt
altına dtoverlay = pi3-disable-bt əlavə edin və hciuart xidmətini deaktiv edin
sudo systemctl hciuart -ı deaktiv edin
sonra /bootda cmdline.txt konsolu = serial0, 115200 silin
sudo nano /boot/cmdline.txt
Hər şey bitdikdən sonra Raspberry Pi -ni yenidən başlatmalısınız.
Addım 2. Nümunəni yükləyin və işə salın.
Raspberry Pi -də bir terminal açın, bu əmri sətir -sətir yazın.
cd ~
git clone https://github.com/Seeed-Studio/ublox_lara_r2_pi_hat.git cd ublox_lara_r2_pi_hat sudo python setup.py cd test sudo python test01.py qurun
Terminalınızda bu çıxışları görürsünüzsə, LTE Cat 1 Pi HAT yaxşı işləyir.
40 pinli GPIO başlığı aşkar edildi
Oyananda GPIOs 16 və 17 rts cts-də CTS0 və RTS0-un aktiv edilməsi… modul adı: LARA-R211 RSSI: 3
İndi HAT -ın yaxşı işlədiyini bilirdik, ondan SMS göndərmək üçün necə istifadə etmək olar? Bilməniz lazım olan ilk şey, Raspberry Pi -nin UART tərəfindən AT əmrləri göndərməklə HAT ilə əlaqə qurmasıdır. Bu kodu pythonda işlədərək LTE HAT -a AT əmrləri göndərə bilərsiniz
ublox_lara_r2 idxalından *
u = Ublox_lara_r2 () u.initialize () u.reset_power () # Debug masajını bağlayın u.debug = Yanlış u.sendAT ('')
SMS göndərmək üçün AT əmri aşağıdakı kimidir
AT+CMGF = 1
AT+CMGS =
burada _send_sms () metodu var:
def _send_sms (özünü):
əgər özünü._ phonenum == Yox: özünü açan üçün False qaytar._ tanınma_face_names (): əgər özünü._ ublox.sendAT ('AT+CMGF = 1 / r / n'): çap etsən (özünü._ ublox. cavab) özünüsə. _ublox.sendAT ('AT+CMGS = "{}" / r / n'.format (self._ phonenum))): çap. x1a'.format (kilidini açan)): çap (özünü._ ublox. cavab)
DİQQƏT: python3 ilə çox uyğun olmayan python2 tərəfindən yazılmış LTE Cat 1 Pi HAT kitabxanası, üz tanıma ilə istifadə etmək istəyirsinizsə, lütfən, məqalənin sonundakı linkdən yükləyin.
Tövsiyə:
Abellcadabra (Üz Tanıma Qapı Kilidi Sistemi): 9 addım
Abellcadabra (Üz Tanıma Qapı Kilidi Sistemi): Karantin zamanı evin qapısı üçün üz tanıma quraraq vaxtı öldürmək üçün bir yol tapmağa çalışdım. Adını Abellcadabra qoydum - bu, Abracadabra ilə qapının zəngi olan sehrli bir ifadənin birləşməsidir və mən yalnız zəng vururam. LOL
Opencv Üz Tanıma, Təlim və Tanıma: 3 addım
Opencv Üz Tanıma, Təlim və Tanıma: OpenCV, bulanıqlaşdırma, şəkil qarışdırma, görüntünün yaxşılaşdırılması, video keyfiyyətinin artırılması, eşikləmə və s. sübut edir
Üz Tanıma və Tanıma - OpenCV Python və Arduino istifadə edərək Arduino Face ID: 6 Addım
Üz Tanıma və Tanıma | OpenCV Python və Arduino istifadə edərək Arduino Face ID: Üz tanıma AKA üz ID indiki zamanda cib telefonlarında ən əhəmiyyətli xüsusiyyətlərdən biridir. Beləliklə, bir sualım var idi: "Arduino layihəm üçün üz idim ola bilərmi?" və cavab bəli … Səyahətim belə başladı: Addım 1: Bizə giriş
Alexa Səs Tanıma ilə Köhnə Laptopdan Üzən Ağıllı Sehrli Güzgü: 6 addım (şəkillərlə)
Alexa Səs Tanıma ilə Köhnə Laptopdan Üzən Ağıllı Sehrli Güzgü: "Elektronika" kursuna buradan daxil olun: https://www.udemy.com/electronics-in-a-nutshell/?couponCode=TINKERSPARK daha çox layihə və elektronika dərsləri üçün youtube kanalı: https://www.youtube.com/channel/UCelOO
Üz Tanıma+Tanıma: 8 Addım (Şəkillərlə birlikdə)
Üz Algılama+tanıma: Bu, bir kameradan OpenCV ilə üz tanıma və tanıma işlərinin sadə bir nümunəsidir. DİQQƏT: BU PROJƏNİ SENSOR MÜSABİQƏSİ ÜÇÜN YAPDIM VƏ YÜZLƏRİ İZLƏMƏK VƏ TANIŞI YÜZÜNÜN KAMERASINDAN İSTİFADƏ ETDİM