BerryBase
  • Shop
  • Raspberry Pi
  • Projekte
    • Alle
    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
    Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5

    Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Arduino Projekte-Ideen für den Sommer

    Arduino Projekte-Ideen für den Sommer

    DIY-Projekte für die Rasenpflege: Raspberry Pi Mähroboter und Sprinkler

    DIY-Projekte für die Rasenpflege: Raspberry Pi Mähroboter und Sprinkler

    Smart Home mit Shelly, JSON und Node Red: Leitfaden zur Installation und Programmierung

    Smart Home mit Shelly, JSON und Node Red: Leitfaden zur Installation und Programmierung

    Sprachassistenten mit Picovoice’s On-Device LLM-Technologie erstellen

    Sprachassistenten mit Picovoice’s On-Device LLM-Technologie erstellen

    Raspberry Pi Projekte für den Frühling

    Raspberry Pi Projekte für den Frühling

    Arduino GIGA R1 Display S

    Integration von ChatGPT mit Arduino GIGA R1 – Leitfaden

    Poetry Camera

    Poetry Camera mit Raspberry Pi Zero 2 W und Pi Camera Modul

    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
  • Themen
    • Alle
    • Arduino
    • ESP
    • Hausautomation
    • IoT
    • Raspberry Pi
    • Robotik
    • Sensoren & Aktoren
    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    ESP32 Debuggen mit Espressif ESP-Prog und PlatformIO – Anleitung

    ESP32 Debuggen mit Espressif ESP-Prog und PlatformIO – Anleitung

    Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden

    Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden

    Arduino

    Ist Arduino-Programmierung schwer zu lernen? – Ein Leitfaden für Anfänger

    Objekterkennung mit Raspberry Pi 5 und Hailo AI Kit: Sicherheitshelm-Erkennung

    Objekterkennung mit Raspberry Pi 5 und Hailo AI Kit: Sicherheitshelm-Erkennung

    Pineboards HatDrive! Nano: Revolutionäre Speicherlösung für Raspberry Pi 5

    PiNEBOARDS HatDrive! NANO: Der ultimative Vergleich mit dem Raspberry Pi M.2 HAT+

    Datenschutzkonforme Smart Home Sicherheit für Airbnb mit Aqara

    Datenschutzkonforme Smart Home Sicherheit für Airbnb mit Aqara

    Arduino Plug and Make Kit: Dein idealer Einstieg in die Welt des IoT

    Arduino Plug and Make Kit: Dein idealer Einstieg in die Welt des IoT

    • Raspberry Pi
    • Arduino
    • ESP
    • Sensoren & Aktoren
    • IoT
    • Hausautomation
  • Kaufberatung
    • Alle
    • Produkte
    • Reviews
    • Top 10 Listen
    • Unboxing
    Fischertechnik Maker Kits – Neuheiten für die DIY- und Maker-Szene

    Fischertechnik Maker Kits – Neuheiten für die DIY- und Maker-Szene

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    PiNEBOARDS HATs im Test: Erweiterungsmöglichkeiten für den Raspberry Pi 5

    PiNEBOARDS HATs im Test: Erweiterungsmöglichkeiten für den Raspberry Pi 5

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    DisplayPort vs. HDMI: Welches Kabel passt zu dir?

    DisplayPort vs. HDMI: Welches Kabel passt zu dir?

    Raspberry Pi 5 Anschluss

    Raspberry Pi 5: Neue 2GB-Variante für nur 55 Euro veröffentlicht

    Einführung: Nutze das Raspberry Pi 5 und AI Kit für leistungsstarke KI-Projekte

    Einführung: Nutze das Raspberry Pi 5 und AI Kit für leistungsstarke KI-Projekte

    Pineboards HatDrive! Nano: Revolutionäre Speicherlösung für Raspberry Pi 5

    PiNEBOARDS HatDrive! NANO: Der ultimative Vergleich mit dem Raspberry Pi M.2 HAT+

    • Produkte
  • How To
    • Alle
    • Guides
    • Software / Programmierung
    • Wissensdatenbank
    Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten

    Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Scratch 3.0 – Spielerisch Programmieren lernen

    Scratch 3.0 – Spielerisch Programmieren lernen

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    ESP32 Debuggen mit Espressif ESP-Prog und PlatformIO – Anleitung

    ESP32 Debuggen mit Espressif ESP-Prog und PlatformIO – Anleitung

    Vaultwarden als Passwort-Safe mit Docker und Portainer installieren

    Vaultwarden als Passwort-Safe mit Docker und Portainer installieren

    Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden

    Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden

    Widerstand Farbcode: Einfache Erklärung, Tabelle und Beispiele

    Widerstand Farbcode: Einfache Erklärung, Tabelle und Beispiele

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    • Guides
    • Wissensdatenbank
    • Software / Programmierung
  • News
Keine Ergebnisse
Alle Ergebnisse anzeigen
  • Shop
  • Raspberry Pi
  • Projekte
    • Alle
    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
    Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5

    Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Arduino Projekte-Ideen für den Sommer

    Arduino Projekte-Ideen für den Sommer

    DIY-Projekte für die Rasenpflege: Raspberry Pi Mähroboter und Sprinkler

    DIY-Projekte für die Rasenpflege: Raspberry Pi Mähroboter und Sprinkler

    Smart Home mit Shelly, JSON und Node Red: Leitfaden zur Installation und Programmierung

    Smart Home mit Shelly, JSON und Node Red: Leitfaden zur Installation und Programmierung

    Sprachassistenten mit Picovoice’s On-Device LLM-Technologie erstellen

    Sprachassistenten mit Picovoice’s On-Device LLM-Technologie erstellen

    Raspberry Pi Projekte für den Frühling

    Raspberry Pi Projekte für den Frühling

    Arduino GIGA R1 Display S

    Integration von ChatGPT mit Arduino GIGA R1 – Leitfaden

    Poetry Camera

    Poetry Camera mit Raspberry Pi Zero 2 W und Pi Camera Modul

    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
  • Themen
    • Alle
    • Arduino
    • ESP
    • Hausautomation
    • IoT
    • Raspberry Pi
    • Robotik
    • Sensoren & Aktoren
    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    ESP32 Debuggen mit Espressif ESP-Prog und PlatformIO – Anleitung

    ESP32 Debuggen mit Espressif ESP-Prog und PlatformIO – Anleitung

    Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden

    Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden

    Arduino

    Ist Arduino-Programmierung schwer zu lernen? – Ein Leitfaden für Anfänger

    Objekterkennung mit Raspberry Pi 5 und Hailo AI Kit: Sicherheitshelm-Erkennung

    Objekterkennung mit Raspberry Pi 5 und Hailo AI Kit: Sicherheitshelm-Erkennung

    Pineboards HatDrive! Nano: Revolutionäre Speicherlösung für Raspberry Pi 5

    PiNEBOARDS HatDrive! NANO: Der ultimative Vergleich mit dem Raspberry Pi M.2 HAT+

    Datenschutzkonforme Smart Home Sicherheit für Airbnb mit Aqara

    Datenschutzkonforme Smart Home Sicherheit für Airbnb mit Aqara

    Arduino Plug and Make Kit: Dein idealer Einstieg in die Welt des IoT

    Arduino Plug and Make Kit: Dein idealer Einstieg in die Welt des IoT

    • Raspberry Pi
    • Arduino
    • ESP
    • Sensoren & Aktoren
    • IoT
    • Hausautomation
  • Kaufberatung
    • Alle
    • Produkte
    • Reviews
    • Top 10 Listen
    • Unboxing
    Fischertechnik Maker Kits – Neuheiten für die DIY- und Maker-Szene

    Fischertechnik Maker Kits – Neuheiten für die DIY- und Maker-Szene

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Nicla Sense Env – Die leistungsstarke Sensorlösung für Portenta- und MKR-Boards

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

    PiNEBOARDS HATs im Test: Erweiterungsmöglichkeiten für den Raspberry Pi 5

    PiNEBOARDS HATs im Test: Erweiterungsmöglichkeiten für den Raspberry Pi 5

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    DisplayPort vs. HDMI: Welches Kabel passt zu dir?

    DisplayPort vs. HDMI: Welches Kabel passt zu dir?

    Raspberry Pi 5 Anschluss

    Raspberry Pi 5: Neue 2GB-Variante für nur 55 Euro veröffentlicht

    Einführung: Nutze das Raspberry Pi 5 und AI Kit für leistungsstarke KI-Projekte

    Einführung: Nutze das Raspberry Pi 5 und AI Kit für leistungsstarke KI-Projekte

    Pineboards HatDrive! Nano: Revolutionäre Speicherlösung für Raspberry Pi 5

    PiNEBOARDS HatDrive! NANO: Der ultimative Vergleich mit dem Raspberry Pi M.2 HAT+

    • Produkte
  • How To
    • Alle
    • Guides
    • Software / Programmierung
    • Wissensdatenbank
    Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten

    Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Steam Link auf dem Raspberry Pi 5 installieren: Offizielle Methode & Docker-Alternative

    Scratch 3.0 – Spielerisch Programmieren lernen

    Scratch 3.0 – Spielerisch Programmieren lernen

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

    ESP32 Debuggen mit Espressif ESP-Prog und PlatformIO – Anleitung

    ESP32 Debuggen mit Espressif ESP-Prog und PlatformIO – Anleitung

    Vaultwarden als Passwort-Safe mit Docker und Portainer installieren

    Vaultwarden als Passwort-Safe mit Docker und Portainer installieren

    Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden

    Welche Sensoren gibt es für Arduino? Dein umfassender Leitfaden

    Widerstand Farbcode: Einfache Erklärung, Tabelle und Beispiele

    Widerstand Farbcode: Einfache Erklärung, Tabelle und Beispiele

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    Was sind Widerstände, Potentiometer und Kondensatoren? Ein Guide für Einsteiger und Maker

    • Guides
    • Wissensdatenbank
    • Software / Programmierung
  • News
Keine Ergebnisse
Alle Ergebnisse anzeigen
BerryBase
Keine Ergebnisse
Alle Ergebnisse anzeigen
Startseite Projekte Kamera

Gesichtserkennung mit deinem Raspberry Pi: So funktioniert’s

Younes Labidi von Younes Labidi
19. Oktober 2023
in Kamera, Raspberry Pi
Lesezeit: 9 Min. Lesezeit
0
A A
4
Titelbild Gesichtserkennung

Titelbild Gesichtserkennung

Jetzt kannst du es der CIA gleichtun und Software zur Gesichtserkennung für deine Raspberry Pi Projekte nutzen. Wir liefern dir den Code!

Was einst nur in futuristischen Hollywoodstreifen Anwendung fand, dient heutzutage bereits in vielen privaten Haushalten als Sicherheitsmechanismus: die Gesichtserkennung. Das Prinzip ist so genial wie simpel: Eine Kamera wird mithilfe einer Software dahingehend programmiert, dass sie das Gesicht der Person, die sich vor der Linse befindet, in Echtzeit erkennt. Das mag für den Laien ein wenig nach Science-Fiction klingen, doch tatsächlich ist es relativ einfach, den Mechanismus in grundlegender Form nachzubauen. Wir verraten dir im Folgenden, wie du mit deinem Raspberry Pi Rechner, einem Raspberry Pi Kameramodul und einigen weiteren Hilfsmitteln dein eigenes Gesichtserkennungsprojekt realisieren kannst.

Inhaltsverzeichnis
  • Diese Hardware benötigst du für das Raspberry Pi Gesichtserkennung Projekt:
  • Diese Software benötigst du für das Projekt:
  • Schritt für Schritt: So realisierst du dein Raspberry Pi Gesichtserkennungsprojekt
  • Was ist noch mit der Raspberry Pi Gesichtserkennung möglich?
  • Herzlichen Glückwunsch, deine Software zur Gesichtserkennung ist nun fertig!

Diese Hardware benötigst du für das Raspberry Pi Gesichtserkennung Projekt:

  • Raspberry Pi 3 oder 4 (inklusive Netzteil)
  • Micro-SD-Karte mit einer Größe von 16 GB
  • Raspberry Pi Camera Module

WARENKORB

Alle für dieses Projekt notwendigen Artikel landen mit einem Klick auf den Button direkt in deinem Warenkorb, sofern sie in unserem Shop verfügbar sind. Kontrolliere daher deinen Warenkorb genau!

Diese Software benötigst du für das Projekt:

  • Raspbian OS: Hierbei handelt es sich um das Betriebssystem für deinen Raspberry Pi.
  • OpenCV (Open Source Computer Vision Library): Die Software eignet sich hervorragend für die Echtzeit-Gesichtserkennung mit einer Kamera, da sie eigens für Recheneffizienz und mit einem Hauptaugenmerk auf Echtzeitanwendungen konzipiert wurde.
  • Python 3: Die Software wird benötigt, um die für das Projekt erforderlichen Codes einzugeben.

Raspberry Pi + Kamera für Gesichtserkennung
Raspberry Pi und Kamera.

Schritt für Schritt: So realisierst du dein Raspberry Pi Gesichtserkennungsprojekt

  • Zunächst solltest du das Betriebssystem Raspbian OS auf deiner Micro-SD-Karte installieren. Dabei gehst du folgendermaßen vor: Nachdem du das Raspbian OS heruntergeladen hast, entpackst du das Image auf deiner Festplatte. Anschließend überträgst du das Betriebssystem auf deine Micro-SD-Karte. Hierbei hat sich die Verwendung von Etcher bewährt, denn das Tool erleichtert das Einrichten von Raspbian OS erheblich. Am besten downloadest du die aktuelle Version von Etcher und installierst diese auf deinem Rechner. Als nächstes legst du die Micro-SD-Karte in deinen Rechner ein und startest Etcher. Klicke nun auf „Select Image“ und suche den Ordner, in welchem du das Raspbian-Image entpackt hast. Nachdem du den Ordner und die Raspbian-Image-Datei ausgewählt hast, klickst du auf die Micro-SD-Karte. Mit einem Klick auf „Flash“ startest du schließlich den Installationsprozess.
  • Im nächsten Schritt richtest du dein Raspberry Pi Kameramodul ein. Dazu verbindest du zunächst die Kamera-Platine über ein Flachbandkabel mit deinem Raspberry Pi. Achte darauf, das Kabel richtig herum anzuschließen. Anschließend musst du noch die aktuellsten Kernel, GPU-Firmware und Anwendungen downloaden und installieren. Zu diesem Zweck benötigst du eine Internetverbindung. Zuletzt aktivierst du den Kamera-Support mithilfe des Programms raspi-config. Detaillierte Informationen zum Einrichtungsprozess deines Kameramoduls findest du hier.
  • Dein Kameramodul funktioniert? Wunderbar! Nun geht es daran, die Tools Open CV und Python 3 zu installieren. Sofern du dabei Unterstützung benötigst, findest du hier wertvolle Tipps.
  • Der größte Teil der Vorbereitungen ist nun abgeschlossen. Das bedeutet: Du kannst erstmals das neue Raspberry Pi Gesichtserkennung Projekt starten! Es empfiehlt sich, zu diesem Zweck einen Ordner anzulegen, in dem du alle betreffenden Dateien übersichtlich ablegst. Erstelle in diesem Ordner am besten einen weiteren Ordner namens /Projekt, in den du die für das Gesichtserkennungsprojekt essentiellen Python-Dateien „camtest.py“ und „faceDetection.py” verschiebst. In diesen Dateien sind die Codes hinterlegt, die für das Projekt erforderlich sind. Die Codes stellen wir dir nachfolgend bereit. Du kannst sie einfach in deine Entwicklungsumgebung kopieren.

camtest.py :

import numpy as np
import cv2
cap = cv2.VideoCapture(0)
cap.set(3,640) # set Width
cap.set(4,480) # set Height
while(True):
    ret, frame = cap.read()
    frame = cv2.flip(frame, -1) # Flip camera vertically
    gray = cv2.cvtColor(frame, cv2.COLOR_BGR2GRAY)
    
    cv2.imshow('frame', frame)
    cv2.imshow('gray', gray)
    
    k = cv2.waitKey(30) & 0xff
    if k == 27: # press 'ESC' to quit
        break
cap.release()
cv2.destroyAllWindows()

faceDetection.py :

import numpy as np
import cv2
faceCascade = cv2.CascadeClassifier('Cascades/haarcascade_frontalface_default.xml')
cap = cv2.VideoCapture(0)
cap.set(3,640) # set Width
cap.set(4,480) # set Height
while True:
    ret, img = cap.read()
    img = cv2.flip(img, -1)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    faces = faceCascade.detectMultiScale(
        gray,     
        scaleFactor=1.2,
        minNeighbors=5,     
        minSize=(20, 20)
    )
    for (x,y,w,h) in faces:
        cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
        roi_gray = gray[y:y+h, x:x+w]
        roi_color = img[y:y+h, x:x+w]  
    cv2.imshow('video',img)
    k = cv2.waitKey(30) & 0xff
    if k == 27: # press 'ESC' to quit
        break
cap.release()
cv2.destroyAllWindows()

  • Lege im Ordner /Projekt einen weiteren Ordner mit der Bezeichnung /Cascades an und füge dort alle Haarcascade-Dateien ein. Diese liegen im XML-Format vor.
  • Genug der Theorie – lass uns einen praktischen Versuch starten! Öffne dazu einen Terminal und gib in das daraufhin erscheinende Feld python3 camtest.py ein. Nimm nun ein paar Probebilder auf. Der Testlauf sollte erfolgreich verlaufen sein.
  • Um einen Gesichtsdetektor zu erstellen und somit die Gesichtserkennung durchführen zu können, musst du – wie auch beim Testversuch – ein neues Terminal öffnen. Anschließend gibst du in das Feld python3 faceDetection.py ein. Das vom Kameramodul aufgenommene Bild ist nun an jener Stelle mit einem Rahmen versehen, an der ein Gesicht erkannt wurde. Deine Raspberry Pi Gesichtserkennungs AI ist indes auch imstande, mehrere Gesichter auf einmal zu erkennen.

Unser Werksstudent Younes bei der Arbeit. Ihm verdanken wir sehr viel!
Raspberry Pi Gesichtserkennung Test
Ein Teil des BerryBase-Teams testet die Gesichtserkennung.

Was ist noch mit der Raspberry Pi Gesichtserkennung möglich?

Übrigens: Bei der Erkennung von einzelnen Gesichtern ist die Fahnenstange noch längst nicht erreicht! Mit dem Equipment und der Software, die dir vorliegt, kannst du auch eine Kombination aus Gesicht und Augen erkennen lassen. Hierzu erstellst du einfach im Projekt-Ordner die Datein „faceEyeDetection.py“, „faceSmileDetection.py“ und „FaceSmileEyeDetection.py“. Der Code für diese Dateien lautet folgendermaßen:

faceEyeDetection.py :

import numpy as np
import cv2

faceCascade = cv2.CascadeClassifier('Cascades/haarcascade_frontalface_default.xml')
eyeCascade = cv2.CascadeClassifier('Cascades/haarcascade_eye.xml')
 
cap = cv2.VideoCapture(0)
cap.set(3,640) # set Width
cap.set(4,480) # set Height

while True:
    ret, img = cap.read()
    img = cv2.flip(img, -1)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    faces = faceCascade.detectMultiScale(
        gray,
        scaleFactor=1.3,
        minNeighbors=5,      
        minSize=(30, 30)
    )

    for (x,y,w,h) in faces:
        cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
        roi_gray = gray[y:y+h, x:x+w]
        roi_color = img[y:y+h, x:x+w]
        
        eyes = eyeCascade.detectMultiScale(
            roi_gray,
            scaleFactor= 1.5,
            minNeighbors=10,
            minSize=(5, 5),
            )
        
        for (ex, ey, ew, eh) in eyes:
            cv2.rectangle(roi_color, (ex, ey), (ex + ew, ey + eh), (0, 255, 0), 2)
               
        cv2.imshow('video', img)

    k = cv2.waitKey(30) & 0xff
    if k == 27: # press 'ESC' to quit
        break

cap.release()
cv2.destroyAllWindows()

faceSmileDetection.py :

Smyleimport numpy as np
import cv2

# multiple cascades: https://github.com/Itseez/opencv/tree/master/data/haarcascades
faceCascade = cv2.CascadeClassifier('Cascades/haarcascade_frontalface_default.xml')
smileCascade = cv2.CascadeClassifier('Cascades/haarcascade_smile.xml')
 
cap = cv2.VideoCapture(0)
cap.set(3,640) # set Width
cap.set(4,480) # set Height

while True:
    ret, img = cap.read()
    img = cv2.flip(img, -1)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    faces = faceCascade.detectMultiScale(
        gray,
        scaleFactor=1.3,
        minNeighbors=5,      
        minSize=(30, 30)
    )

    for (x,y,w,h) in faces:
        cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
        roi_gray = gray[y:y+h, x:x+w]
        roi_color = img[y:y+h, x:x+w]
        
        smile = smileCascade.detectMultiScale(
            roi_gray,
            scaleFactor= 1.5,
            minNeighbors=15,
            minSize=(25, 25),
            )
        
        for (xx, yy, ww, hh) in smile:
            cv2.rectangle(roi_color, (xx, yy), (xx + ww, yy + hh), (0, 255, 0), 2)
               
        cv2.imshow('video', img)

    k = cv2.waitKey(30) & 0xff
    if k == 27: # press 'ESC' to quit
        break

cap.release()
cv2.destroyAllWindows()

faceSmileEyeDetection.py :

import numpy as np
import cv2

# multiple cascades: https://github.com/Itseez/opencv/tree/master/data/haarcascades
faceCascade = cv2.CascadeClassifier('Cascades/haarcascade_frontalface_default.xml')
eyeCascade = cv2.CascadeClassifier('Cascades/haarcascade_eye.xml')
smileCascade = cv2.CascadeClassifier('Cascades/haarcascade_smile.xml')

cap = cv2.VideoCapture(0)
cap.set(3,640) # set Width
cap.set(4,480) # set Height

while True:
    ret, img = cap.read()
    img = cv2.flip(img, -1)
    gray = cv2.cvtColor(img, cv2.COLOR_BGR2GRAY)
    faces = faceCascade.detectMultiScale(
        gray,
        scaleFactor=1.3,
        minNeighbors=5,      
        minSize=(30, 30)
    )

    for (x,y,w,h) in faces:
        cv2.rectangle(img,(x,y),(x+w,y+h),(255,0,0),2)
        roi_gray = gray[y:y+h, x:x+w]
        roi_color = img[y:y+h, x:x+w]
        
        eyes = eyeCascade.detectMultiScale(
            roi_gray,
            scaleFactor= 1.5,
            minNeighbors=5,
            minSize=(5, 5),
            )
        
        for (ex, ey, ew, eh) in eyes:
            cv2.rectangle(roi_color, (ex, ey), (ex + ew, ey + eh), (0, 255, 0), 2)
               
        
        smile = smileCascade.detectMultiScale(
            roi_gray,
            scaleFactor= 1.5,
            minNeighbors=15,
            minSize=(25, 25),
            )
        
        for (xx, yy, ww, hh) in smile:
            cv2.rectangle(roi_color, (xx, yy), (xx + ww, yy + hh), (0, 255, 0), 2)
        
        cv2.imshow('video', img)

    k = cv2.waitKey(30) & 0xff
    if k == 27: # press 'ESC' to quit
        break

cap.release()
cv2.destroyAllWindows()

Gib dazu einfach in einen neuen Terminal python3 faceEyeDetection.py ein und probiere es aus! Ebenso sind eine Erkennung von Gesicht und Lippenpartie (python3 faceSmileDetection.py) sowie die Erkennung einer Kombination aus Gesichts-. Augen- und Lippenpartie (python3 faceSmileEyeDetection.py) möglich.

Raspberry Pi Gesichtserkennung im Test
FaceSmileEyeDetection.py

Herzlichen Glückwunsch, deine Software zur Gesichtserkennung ist nun fertig!

Du kannst diese Technologie für verschiedenste Anwendung anwenden, so nutzen beispielsweise Fotokameras Smile-Detection um Fotos aufzunehmen.

Wir wünschen dir viel Spaß dabei diese Technologie in deine Projekte zu integrieren. Alle benötigten Teile findest du noch einmal hier.

Euer BerryBase-Team

Du bekommst nicht genung von Raspberry Pi DIY Tutorials? Schaue dir hier alle unserer Tutorials an!

Schlagwörter: DIYGesichtserkennungKünstliche IntelligenzPythonPython3raspberry PiRaspberry Pi 4Raspberry Pi KameraRaspberry Pi TutorialTutorial
TeilenTeilenTwittern
Vorheriger Beitrag

Snake Arduino?! Dein Nokia 3310 läuft nicht mehr? Jetzt selbst bauen!

Nächster Beitrag

Arduino VU-Meter: So stellst du das Messgerät ganz leicht selbst her

Younes Labidi

Younes Labidi

ÄhnlicheArtikel

Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten
How To

Apache Guacamole: Die clientlose Remote-Desktop-Lösung installieren und einrichten

15. April 2025
Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5
Projekte

Kompilierung eines eigenen Linux-Kernels für den Raspberry Pi 5

7. November 2024
MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers
Raspberry Pi

MQTT und der Raspberry Pi: Einfache Einrichtung eines IoT-Brokers

18. Oktober 2024
Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte
Kaufberatung

Raspberry Pi AI Camera – Eine intelligente Kamera für kreative Projekte

9. Oktober 2024
Nächster Beitrag
Vu-Meter im Betrieb

Arduino VU-Meter: So stellst du das Messgerät ganz leicht selbst her

Kommentare 4

  1. Christopher Schuster says:
    vor 5 Jahren

    Guten Tag liebes BerryBase Team,

    ist es auch möglich, eine andere Kameraquelle (in meinem Beispiel Doorbird IP Cam) für die Gesichtserkennung zu nutzen?

    Viele Grüße
    Chris

    Antworten
    • Christoph says:
      vor 4 Jahren

      Hallo, super Arbeit.
      Aber das mit der Externen Bildquelle würde mich auch interessieren.

      LG
      Christoph

      Antworten
  2. Christopher Schuster says:
    vor 5 Jahren

    Guten Tag liebes BerryBase Team,

    ist es auch möglich, eine andere Kameraquelle (in meinem Beispiel Doorbird IP Cam) für die Gesichtserkennung zu nutzen?

    Viele Grüße
    Chris

    Antworten
  3. Max K says:
    vor 5 Jahren

    Das klingt sehr interessant. Würde das Ganze auch mit Personenerkennung funktionieren? Mich würde eine Lichsteuerung interessieren die entsprechend schaltet, wenn sich eine oder mehrere Person im Raum befinden.
    Dazu interessiert weniger um welche Person es sich handelt. Wichtig ist dabei allerdings, dass die Person noch als im Raum gilt, wenn sie der Kamera den Rücken zukehrt.

    Antworten
  4. Thirsten says:
    vor 2 Jahren

    Können damit auch KFZ Kennzeichen erkannt werden?

    Antworten

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

News

Pineboards HatDrive! Nano: Revolutionäre Speicherlösung für Raspberry Pi 5
Produkte

Pineboards HatDrive! Nano: Revolutionäre Speicherlösung für Raspberry Pi 5

15. Juli 2024
Entdecke Raspberry Pi Connect: Fernzugriff leicht gemacht
Allgemein

Entdecke Raspberry Pi Connect: Fernzugriff leicht gemacht

10. Juli 2024
postmarketOS v24.06 Update: Jetzt über 250 unterstützte Geräte!
Allgemein

postmarketOS v24.06 Update: Jetzt über 250 unterstützte Geräte!

19. Juni 2024
Raspberry Pi AI Kit mit Hailo AI Modul
Raspberry Pi

Raspberry Pi AI Kit mit Hailo AI Modul

12. Juni 2024
DIY-Projekte mit Edge AI: Kleine KI-Modelle für Bastler
News

DIY-Projekte mit Edge AI: Kleine KI-Modelle für Bastler

4. Juni 2024
Arduino und MicroPython jetzt gleichzeitig auf Multi-Core-Mikrocontrollern betreiben
News

Arduino und MicroPython jetzt gleichzeitig auf Multi-Core-Mikrocontrollern betreiben

3. Juni 2024
  • OpenMediaVault NAS auf dem Raspberry Pi

    NAS mit einem Raspberry Pi bauen – Eine Anleitung

    0 teilen
    Teilen 0 Twittern 0
  • OpenMediaVault auf Raspberry Pi installieren: Tutorial

    0 teilen
    Teilen 0 Twittern 0
  • Raspberry Pi 5 mit M.2 HAT+ und SSD zusammenbauen und einrichten – Guide

    0 teilen
    Teilen 0 Twittern 0
  • Die Top 10 Smart Home Software im Vergleich

    0 teilen
    Teilen 0 Twittern 0
  • Raspberry Pi Betriebssysteme im Vergleich

    0 teilen
    Teilen 0 Twittern 0

Shop-Service

  • Abholung in Berlin
  • Berrys lohnen sich
  • Produktvorschlag
  • Jobs

Information

  • Impressum
  • AGB
  • Cookie-Richtlinie (EU)
  • Kontakt
BerryBase Blog

by Sertronics GmbH
Am Studio 20D
12489 Berlin
blog@berrybase.de

© 2024 BerryBase

Keine Ergebnisse
Alle Ergebnisse anzeigen
  • Shop
  • Raspberry Pi
  • Projekte
    • Audio / Sound
    • Display
    • Fun
    • IoT / Smart Tech
    • Kamera
    • LED
    • Luft / Wetter
    • Software
  • Themen
    • Raspberry Pi
    • Arduino
    • ESP
    • Sensoren & Aktoren
    • IoT
    • Hausautomation
  • Kaufberatung
    • Produkte
  • How To
    • Guides
    • Wissensdatenbank
    • Software / Programmierung
  • News

© 2024 BerryBase

Zur mobilen Version gehen