Raspberry Pi ile yüz tanıma algoritması
Bütün bir bilgisayarı tek bir kredi kartı büyüklüğe sığdıran ve sistemleri birer kutu olarak hazırlayabilmeyi kolay hale getiren ürün Raspberry Pi. Raspberry pi ile bir çok kendin yap (diy) projenizi hayata geçirmek oldukça basit. Örneğin kendi nes oyun konsolunuzu veya kendi tvboxınızı veya mini serverınızı yaratmak mümkün. Bu yazıda raspberry pi ile yüz tanıma algoritmamı paylaşacağım bu algoritmayla yüzleri algılamak veya algılanan yüz sayısını belirlemek oldukça kolay. Python 2.7’de kodu kopyala yapıştır yaparak deneyebilirsiniz.
Başlamadan önce Raspberry Pi üzerinde OpenCV kurmak oldukça güç ve bunu tek satır kodla çözdüğümüz videomuzu aşağıda bulabilirsiniz.
Eğer kurulumu bitirdiyseniz veya halihazırda bilgisayarınızda kuruluysa gelelim yüz tanıma algoritmasına ;
import io
import picamera
import cv2
import numpy
with picamera.PiCamera() as camera:
camera.resolution = (320, 240)
camera.capture(stream, format=’jpeg’)
#Numpy dizisine çevirme
buff = numpy.fromstring(stream.getvalue(), dtype=numpy.uint8)
#OpenCV görüntüsü eldesi
image = cv2.imdecode(buff, 1)
#Fonksiyonun kullanımı
face_cascade=cv2.CascadeClassifier(‘/usr/share/opencv/haarcascades/haarcascade_frontalface_alt.xml’)
#Gri seviyeye Çevirme
gray = cv2.cvtColor(image,cv2.COLOR_BGR2GRAY)
#Fonksiyonun kullanımı
faces = face_cascade.detectMultiScale(gray, 1.1, 5)
print “Found ” + str(len(faces)) + ” face(s)”
#Görünen bütün yüzleri kare içine al
for (x,y,w,h) in faces:
cv2.rectangle(image,(x,y),(x+w,y+h),(255,255,0),2)
#Çıktı resmi kaydı
cv2.imwrite(cikti.jpg’,image)
Şekil 1. Raspberry pi ile kusursuz yüzümün tespiti 😀