Görme Engelliler İçin Yeni Yüz Tanıma Akıllı Gözlükleri

Çalışma Videosu

Raspberry PI ile , Bu projede, görme engelli bir kişinin önündeki kişiyi tanımasına ve önündeki engelleri öğrenmesine yardımcı olabilecek akıllı bir gözlük camı prototipi yapacağız . 
Bu yüz tanıma ve mesafe algılama özellikleri ile etkin olacaktır.


Malzeme Listesi

Malzeme Listesi

Ayrıca bir kulaklığa ihtiyacınız olacak, ancak çoğumuz olduğu için yukarıdaki listede bahsetmedim .

Önkoşul kurulumu 
Önce, RPi SSH veya Terminal’i açın ve gerekli kitaplıkları ve modülleri yükleyin. 
Ardından espeak modülünü ve ardından Python için espeak kütüphanesini kurun. 
Kurulum için aşağıdaki pasajı takip edin (Bkz. Şekil 1,2).

Şekil 1. espeak’in kurulumu
Şekil 2. espthon için espeak kurulumu

Şimdi ‘opencv’, ‘numpy’, ‘dlib’ kütüphanesini kurun. 
Yükleme için belleği değiştirmeniz gerekebilir . 
İnternette bulunan opencv ve dlib kurulum talimatlarını takip edin .

Bundan sonra 
terminalde aşağıdaki komutu kullanarak python 3 için yüz tanıma kütüphanesini kurun .

‘pip3 yüz tanıma kurulum’

Gerekli kütüphanemizi kurduğumuzda, kodlamaya başlayalım.


Kod;

Bu proje için Python3’te, biri önündeki diğeri engellerin yüz tanıma mesafesini anlatan iki farklı kod yapacağız . İlk kod engellerin mesafesini ölçer ve kullanıcıyı ses çıkışını kullanarak uyarır. Dokunsal geri bildirim için bir titreşim motoru da ekleyebiliriz . 
Kod 1: Kodlamayı başlatmak için Python3 IDE’yi açın. Burada iki modüle ihtiyacımız var – zaman ve espeak. Her iki modülü de kod olarak içe aktarırız. Bundan sonra GPIO’yu içe aktardığımız ve mesafe algılayıcı pimlerini ayarlayacağımız bir mesafe işlevi yarattık .

 Ardından mesafeyi sürekli kontrol eden bir süre döngüsü oluşturduk . Bu döngü sırasında , kullanıcı ile engel arasındaki mesafeyi kontrol etmek için bir if koşulu da ekledik . Nesneye yakın bir nesne algılarsakullanıcı, sesli ve dokunsal geribildirim vererek kişiyi otomatik olarak bilgilendirir.

 (Bakınız şekil 3, 4).

Şekil 3. Python kod mesafe sensörü
Şekil 4. Python Kodu engel tespiti.

Kod 2: Bu, kullanıcının önündeki kişiyi tanımaktır (bilinen veya bilinmeyen). Burada bu kodda 3 modülü içe aktaracağız: yüz tanıma, cv2 ve numpy. Biz bilinen yüzleri ve isimleri farklı diziler oluşturmak zorunda. Bu üyenin yüz tanıma için resim dosyası adını yazmalıyız (Bkz. Şekil 5,6). 

Şekil 5. Python kodu yüz tanıma
Şekil 6

Kodun bir sonraki bölümünde, kamera videosundaki yüzü bilinen yüz dizisiyle eşleştirmeye çalışacağız. Eğer yüz eşleşirse, kod aşağıdaki resimdeki ‘espeak.synth ()’ sözdizimini kullanarak bu kişinin adını çağırmak için espeak synthesizer’ı çalıştırır (Bkz. Şekil 7).

Şekil 7

Not: – Çıktı dilini Türkçe olarak değiştirebilir ve sesi farklı modlara getirebilirsiniz; örneğin kodlama yapan satırları kodda açıklayarak, Wisher mod, Erkek sesi ve kadın sesi. (Bkz. Şekil 8).

Şekil 8. Espeak Farklı Dil ve Ses

Hepsi tamamlandıktan sonra, kodu yüz tanıma klasörüne kaydedin.

Kodu indir


Bağlantılar;

Kodu oluşturduğumuzdan beri, şimdi tüm bileşenleri bağlamanın zamanı geldi. 

Kamera şeridini kamera modülüne yerleştirin ve ultrasonik sensör tellerini aşağıda gösterildiği gibi lehimleyin.

Raspberry Pi Ultrasonik sensör
5V pinVCC
GND GND
BCM Pin 27 TRIG
BCM PIN 22 ECHO

Bağlantıdan sonra, tüm sensörleri ve bileşenleri aşağıdaki resimdeki gibi ayarlayın.

Şekil 9
Şekil 10

Test

Şimdi Raspberry Pi’ye pil veya güç bankası kullanarak güç verin. Ardından Pi masaüstü penceresini uzak masaüstünde veya VNC’de açın (Pi’de VNC ve uzak masaüstünü nasıl etkinleştireceğinizi bilmiyorsanız, çevrimiçi talimatları izleyin.) Sonra distance.py ve facerecogination.py kodunu çalıştırın ve kullanıma hazırsınız. Herhangi bir bilinen veya bilinmeyen kişi kullanıcının önüne geldiğinde (görsel olarak meydan okuyan kişi), yüzü algılar ve bunları söyler. Kullanıcı duvar veya başka bir nesne gibi herhangi bir engelle yaklaşırsa, kazadan kaçınmak için cihaz bu konuda uyaracaktır.      


Not: – cv2, dlib ve yüz tanıma kütüphanesinin kurulumu sırasında Raspberry Pi’nin hafızasını değiştirmeniz gerekebilir. Kütüphanenin kurulumu sırasında herhangi bir hata veya sorunla karşılaşırsanız, bu python kütüphanesinin çevrimiçi rehberine bakın.

Bu makale buradan çevrilmiştir.