Talaan ng mga Nilalaman:
- Hakbang 1: Mga Bagay na Ginamit sa Project na Ito
- Hakbang 2: Koneksyon sa Hardware
- Hakbang 3: Programming ng Software
- Hakbang 4: Tapos Na
Video: Pagkilala sa Mukha ng Smart Lock Sa LTE Pi HAT: 4 na Hakbang
2024 May -akda: John Day | [email protected]. Huling binago: 2024-01-30 13:12
Ang pagkilala sa mukha ay nagiging mas at mas malawak na ginagamit, maaari natin itong magamit upang makagawa ng isang matalinong lock.
Hakbang 1: Mga Bagay na Ginamit sa Project na Ito
Mga bahagi ng hardware
- Raspberry Pi 3 Model B
- Raspberry Pi Camera Module V2
- Grove - Relay
- LTE Cat 1 Pi HAT (Europa)
- 10.1 pulgada 1200x1980 HDMI IPS LCD Display
Mga software app at serbisyong online
- WinSCP
- Notepad ++
Hakbang 2: Koneksyon sa Hardware
Sa proyektong ito, plano naming kumuha ng litrato na may picamera at kilalanin ang mga mukha sa kanila, pagkatapos ay ipakita ang resulta ng pagkilala sa screen. Kung kilala ang mga mukha, buksan ang pinto, at ipadala kung sino ang nagbukas ng pinto sa tinukoy na numero ng telepono sa pamamagitan ng SMS.
Kaya kailangan mong ikonekta ang isang camera sa interface ng camera ng Raspberry Pi, at i-install ang antena at Grove - Relay sa sumbrero ng LTE Pi, pagkatapos isaksak ang HAT sa iyong Pi. Ang screen ay maaaring konektado sa Raspberry Pi sa pamamagitan ng isang HDMI cable, huwag kalimutang ikonekta ang lakas sa iyong screen at Pi.
Hakbang 3: Programming ng Software
Pagkilala sa Mukha
Salamat sa Adam Geitgey at sa kanyang proyekto sa Pagkilala sa Mukha, maaari naming magamit ang pinakasimpleng library ng pagkilala sa mukha sa mundo sa Raspberry Pi. Ipapakita sa iyo ng mga sumusunod na hakbang kung paano mag-set up ng pagkilala sa mukha sa Pi.
Hakbang 1. Gumamit ng raspi-config upang i-configure ang memorya ng camera at GPU.
sudo raspi-config
Pagpili ng Mga Pagpipilian sa Interface - Camera upang paganahin ang picamera, pagkatapos ay piliin ang Advanced na Mga Pagpipilian - Memory Split upang maitakda ang memorya ng GPU, dapat itong mapalitan sa 64. Pagkatapos matapos, i-reboot ang iyong Raspberry Pi.
Hakbang 2. I-install ang mga kinakailangang aklatan.
sudo apt-get update
sudo apt-get upgrade sudo apt-get install build-important / 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
Hakbang 3. Gumawa ng sumusuporta sa picamerea sa array.
sudo pip3 install - i-upgrade ang picamera [array]
Hakbang 4. I-install ang dlib at pagkilala sa mukha.
sudo pip3 i-install ang dlib
sudo pip3 i-install ang face_recognition
Hakbang 5. Mag-download at magpatakbo ng halimbawa ng pagkilala sa mukha
git clone --single-branch
cd./face_recognition/examples python3 facerec_on_raspberry_pi.py
PAUNAWA: Kung nakuha mo ang ImportError: libatlas.so.3: hindi mabubuksan ang nakabahaging file ng object: Walang ganoong file o direktoryo, patakbuhin ang sumusunod na utos upang ayusin ito.
Relay
Kapag handa na ang pagkilala sa mukha, maaari naming magpatuloy na magdagdag ng mga karagdagang tampok. Ikinonekta namin ang Grove - Relay sa LTE Cat 1 Pi HAT, ngunit gumagamit ito ng digital port kaysa sa I2C port.
Ito ay pin-out para sa Raspberry Pi 3B, maaari naming makita ang SDA pin at SCL pin na matatagpuan sa board 3 pin at 5.
Kaya maaari naming makontrol ang relay ng mga output digital signal upang i-pin ang 5. Patakbuhin ang pagsunod sa programa ng sawa sa iyong Raspberry Pi, kung walang mali, maririnig mo ang isang Ti-Ta mula sa relay.
i-import ang RPi. GPIO bilang GPIO
RELAY_PIN = 5 GPIO.setmode (GPIO. BOARD) GPIO.setup (RELAY_PIN, GPIO. OUT) GPIO.output (RELAY_PIN, GPIO. HIGH)
Kaya narito ang ideya, naglo-load kami ng mga kilalang mukha mula sa isang folder, kinikilala ang mga mukha na nakunan ng picamera, kung ang mukha sa folder, kontrolin ang relay upang ma-unlock ang pinto. Maaari naming i-package ang mga ito sa isang klase, narito ang load_known_faces () na pamamaraan at pag-unlock () na pamamaraan, ang nakumpletong programa ay maaaring ma-download sa pagtatapos ng artikulong ito.
def load_known_faces (sarili):
kilala_faces = os.listdir (self._ kilala_faces_path) para sa kilala_face sa mga kilala_faces: sarili._ kilala_faces_name.append (kilala_face [0: len (kilala_face) - len ('. jpg')]) kilala_face_image = face_recognition.load_image_file (sarili._ kilala_faces_) self._ kilala_faces_encoding.append (face_recognition.face_encodings (kilala_face_image) [0]) ibalik len (sarili._ kilala_faces_encoding) def unlock (sarili): kung sarili._ na tugma. account (Totoo)> 0: GPIO.output (sarili._ relay_pin, GPIO. HIGH) naka-print ('Bumukas ang pinto') oras. Natutulog (5) GPIO.output (sarili._ relay_pin, GPIO. LOW) sarili._ reset_recognise_params () ibalik ang Tunay na sarili._ subukang muli_count + = 1 print ('Pakisubukang muli… { } 'format. (sarili._ muling subukang_count)) ibalik ang Mali
Mag-isip nang transendente, maaari naming ipakita ang larawan kung sino ang kinikilala, ang mga aklatan na PIL at matplotlib ay maaaring maging kapaki-pakinabang, kasama ng mga ito, ang matplotlib ay kailangang mai-install nang manu-mano, patakbuhin ang utos na ito sa terminal ng iyong Raspberry Pi.
sudo pip3 i-install ang matplotlib
I-import ang mga ito sa iyong code, at baguhin kung i-block sa i-unlock () ang paraan na tulad nito:
img = Image.open ('{} / {}. jpg'.format (sarili._ kilala_faces_path, sarili._ kilala_faces_name [0]))
plt.imshow (img) plt.ion () GPIO.output (sarili._ relay_pin, GPIO. HIGH) print ('Bumukas ang Pinto') plt.pause (3) plt.close () GPIO.output (self._ relay_pin, GPIO. LOW) sarili._ reset_recognise_params () ibalik ang Totoo
Ngayon, kung nakilala ang isang mukha, ang larawan sa folder ay ipapakita sa screen.
SMS
Minsan nais naming malaman kung sino ang nasa aming silid, at ngayon mayroong isang lugar para sa LTE Cat 1 Pi HAT. I-plug dito ang isang SIM card, at sundin ang mga hakbang upang masubukan kung gagana ito o hindi.
Hakbang 1. Paganahin ang UART0 sa Raspberry Pi
Gumamit ng nano upang mai-edit ang config.txt sa / boot
sudo nano /boot/config.txt
idagdag ang dtoverlay = pi3-disable-bt sa ilalim nito, at huwag paganahin ang serbisyo ng hciuart
sudo systemctl huwag paganahin ang hciuart
pagkatapos tanggalin ang console = serial0, 115200 sa cmdline.txt sa / boot
sudo nano /boot/cmdline.txt
Matapos ang lahat ay tapos na, dapat mong i-reboot ang iyong Raspberry Pi.
Hakbang 2. Mag-download ng halimbawa at patakbuhin ito.
Magbukas ng isang terminal sa iyong Raspberry Pi, i-type ang mga utos dito sa linya sa pamamagitan ng linya.
cd ~
git clone https://github.com/Seeed-Studio/ublox_lara_r2_pi_hat.git cd ublox_lara_r2_pi_hat sudo python setup.py install cd test sudo python test01.py
Kung nakikita mo ang mga output na ito sa iyong terminal, gumagana nang maayos ang LTE Cat 1 Pi HAT.
Nakita ang header ng 40-pin GPIO
Ang pagpapagana ng CTS0 at RTS0 sa GPIO 16 at 17 rts cts sa paggising… pangalan ng module: LARA-R211 RSSI: 3
Ngayon alam naming gumagana nang maayos ang HAT, kung paano ito magagamit upang magpadala ng SMS? Ang unang bagay na kailangan mong malaman ay ang Raspberry Pi makipag-usap sa HAT sa pamamagitan ng ipadala ang mga utos ng UART. Maaari kang magpadala ng mga utos AT sa LTE HAT sa pamamagitan ng pagpapatakbo ng code na ito sa sawa
mula sa ublox_lara_r2 import *
u = Ublox_lara_r2 () u.initialize () u.reset_power () # Close debug massage u.debug = False u.sendAT ( )
Ang utos ng AT para sa pagpapadala ng SMS ay ang mga sumusunod
SA + CMGF = 1
SA + CMGS =
kaya narito ang _send_sms () na pamamaraan:
def _send_sms (sarili):
kung sarili._ phonenum == Wala: ibalik ang Mali para sa unlocker sa sarili._ pagkilala_face_names (): kung sarili._ ublox.sendAT ('AT + CMGF = 1 / r / n'): i-print (sarili._ ublox.response) kung sarili. _ublox.sendAT ('AT + CMGS = "{}" / r / n'.format (self._ phonenum)): print (self._ ublox.response) kung sarili._ ublox.sendAT (' {} ipasok ang silid. / x1a'.format (unlocker)): print (sarili._ ublox.response)
PAUNAWA: Ang aklatan ng LTE Cat 1 Pi HAT na sinulat ni python2, na hindi masyadong katugma sa python3, kung nais mong gamitin ito sa pagkilala sa mukha, mangyaring i-download ito mula sa link mula sa dulo ng artikulong ito.
Inirerekumendang:
Mirror sa Pagkilala sa Mukha Na May Lihim na Kompartimento: 15 Hakbang (na may Mga Larawan)
Mukha ng Pagkilala sa Salamin Sa Lihim na Kompartimento: Palagi akong naintriga ng mga malikhaing lihim na kompartamento na ginamit sa mga kwento, pelikula, at iba pa. Kaya, nang makita ko ang Lihim na Kompartamento ng Paligsahan nagpasya akong mag-eksperimento sa ideya mismo at gumawa ng isang ordinaryong salamin na naghahanap ng isang
PAG-ALARMA NG PAGKILALA NG PAGKILALA: 7 Mga Hakbang
PAG-ALARMA NG PAGKILALA NG PAGKILALA: Kumusta, mga kaibigan sa tutorial na ipapakita ko sa iyo kung paano gumawa ng alarma sa pagtuklas ng paggalaw. ang pangunahing bahagi ng proyektong ito ay ang sensor ng PIR
Lock ng Pinto ng Pagkilala sa Mukha: 8 Hakbang
Facial Recognition Door Lock: Mga isang buwan sa paggawa, ipinapakita ko ang lock ng pintuan ng pagkilala sa mukha! Sinubukan kong gawin itong malinis hangga't makakaya ko, ngunit magagawa ko lamang ito nang higit sa isang 13 taong gulang. Ang lock ng pintuan ng pagkilala sa mukha na ito ay pinamamahalaan ng isang Raspberry Pi 4, na may isang espesyal na portable batt
Pagtuklas ng Opencv sa Mukha, Pagsasanay at Pagkilala: 3 Mga Hakbang
Ang Opencv Face Detection, Training and Recognition: Ang OpenCV ay isang open source computer vision library na napakapopular para sa pagsasagawa ng mga pangunahing gawain sa pagproseso ng imahe tulad ng pag-blur, pagsasama ng imahe, pagpapahusay ng imahe pati na rin ang kalidad ng video, threshold atbp Bilang karagdagan sa pagproseso ng imahe, ito ay
Pagkilala sa Mukha + pagkilala: 8 Mga Hakbang (na may Mga Larawan)
Pagkilala sa Mukha + ng pagkilala: Ito ay isang simpleng halimbawa ng pagpapatakbo ng pagtuklas ng mukha at pagkilala sa OpenCV mula sa isang camera. TANDAAN: GINAWA KO ANG PROYEKTO NA ITO PARA SA SENSOR CONTEST AT GINAMIT KO ANG CAMERA BILANG SENSOR UPANG TRACK AND Recognition FACES. Kaya, Ang aming Layunin Sa sesyon na ito, 1. I-install ang Anaconda