Abo
  • Services:

OpenCV übernimmt die Gesichtserkennung

Dass die Gesichtserkennung in einem eigenen Thread läuft, hat einen einfachen Grund: Sie ist rechenzeitintensiv, die angelieferten Bilder der Kamera werden gepuffert. Liefe das Holen des Bildes und dessen Auswertung im gleichen Thread, würden wir beim nächsten Schleifendurchgang ein Bild unbekannten Alters aus dem Puffer erhalten. Mit capture.grab() leeren wir stets den Puffer und sorgen dafür, dass im Thread mit capture.retrieve() immer nur das aktuelle Bild ausgewertet wird:

Stellenmarkt
  1. Bundeskriminalamt, Meckenheim
  2. Applied Materials GmbH und Co KG, Alzenau

  1. void *faceThread(void *arg)
  2. {
  3. Mat img;
  4. while(1) {
  5. if(capture.retrieve(img)) {
  6. checkFace(img);
  7. }
  8. }
  9. }

Die eigentliche Erkennung läuft in der Funktion checkFace(). Diese Funktion sah ursprünglich so aus:

  1. void checkFace(Mat img) {
  2.  
  3. ...
  4. cvtColor(img, gray, CV_BGR2GRAY);
  5. equalizeHist( gray, gray);
  6.  
  7. face_cascade.detectMultiScale(small, faces,
  8. 1.1, 2, CV_HAAR_SCALE_IMAGE);
  9.  
  10. if(faces.size() > 0) {
  11.  
  12. int p = faces[0].x + (faces[0].width/2);
  13. int pd = map_pixel_to_deg(p);
  14. servo(180 - pd);
  15. }
  16.  
  17. }

Das Kamerabild wird in ein Graustufenbild umgewandelt, die Farbverteilung im Bild normalisiert und schließlich auf Gesichter geprüft. Die detectMultiScale()-Methode liefert für jedes gefundene Gesicht ein Rect-Objekt zurück. Es enthält die xy-Koordination eines Rechtecks sowie dessen Höhe und Breite. Jedes Rechteck beschreibt also, wo im Bild ein Gesicht gefunden wurde. Wir ermitteln auf Basis dieser Daten dann die x-Koordinate der Mitte des Rechtecks. Sie wird in eine Grad-Angabe (0 - 180 Grad) umgerechnet und der Funktion servo() zur Ansteuerung des Servos übergeben.

 Programmieren in C++ und mit MRAADer Edison beeindruckt 
  1.  
  2. 1
  3. 2
  4. 3
  5. 4
  6. 5
  7. 6
  8. 7
  9. 8
  10. 9
  11. 10
  12.  


Anzeige
Blu-ray-Angebote
  1. (u. a. 3 Blu-rays für 20€, Boxsets im Angebot, Serien zum Sonderpreis)
  2. (u. a. Deadpool, Alien Covenant, Assassins Creed)

Folgen Sie uns
       


Sony Xperia XZ2 Compact - Test

Sony hat wieder ein Oberklasse-Smartphone geschrumpft: Das Xperia XZ2 Compact hat leistungsfähige Hardware, eine bessere Kamera und passt bequem in eine Hosentasche.

Sony Xperia XZ2 Compact - Test Video aufrufen
Datenschutz: Der Nutzer ist willig, doch die AGB sind schwach
Datenschutz
Der Nutzer ist willig, doch die AGB sind schwach

Verbraucher verstehen die Texte oft nicht wirklich, in denen Unternehmen erklären, wie ihre Daten verarbeitet werden. Datenschutzexperten und -forscher suchen daher nach praktikablen Lösungen.
Ein Bericht von Christiane Schulzki-Haddouti

  1. Denial of Service Facebook löscht Cybercrime-Gruppen mit 300.000 Mitgliedern
  2. Vor Anhörungen Zuckerberg nimmt alle Schuld auf sich
  3. Facebook Verschärfte Regeln für Politwerbung und beliebte Seiten

Xperia XZ2 Compact im Test: Sonys kompaktes Top-Smartphone bleibt konkurrenzlos
Xperia XZ2 Compact im Test
Sonys kompaktes Top-Smartphone bleibt konkurrenzlos

Sony konzentriert sich beim Xperia XZ2 Compact erneut auf die alte Stärke der Serie und steckt ein technisch hervorragendes Smartphone in ein kompaktes Gehäuse. Heraus kommt ein kleines Gerät, das kaum Wünsche offenlässt und in dieser Größenordnung im Grunde ohne Konkurrenz ist.
Ein Test von Tobias Költzsch

  1. Xperia XZ2 Premium Sony stellt Smartphone mit lichtempfindlicher Dualkamera vor
  2. Sony Grundrauschen an Gerüchten über die Playstation 5 nimmt zu
  3. Playstation Sony-Chef Kaz Hirai verabschiedet sich mit starken Zahlen

Far Cry 5 im Test: Schöne Welt voller Spinner
Far Cry 5 im Test
Schöne Welt voller Spinner

Der Messias von Montana trägt Pornobrille und hat eine Privatarmee - aber nicht mit uns gerechnet: In Far Cry 5 kämpfen wir auf Bergwiesen und in Bauernhöfen gegen seine Anhänger. Das macht dank einiger Serienänderungen zwar Spaß, dennoch verschenkt das Actionspiel von Ubisoft viel Potenzial.
Von Peter Steinlechner

  1. Far Cry 5 Offenbar Denuvo 5 und zwei weitere Schutzsysteme geknackt
  2. Ubisoft Far Cry 5 schafft Serienrekord und Spieler werfen Schaufeln
  3. Ubisoft Far Cry 5 erlaubt Kartenbau mit Fremdinhalten

    •  /