Abo
  • Services:
Anzeige
Laika - Frontansicht
Laika - Frontansicht (Bild: Golem.de)

Das finale Skript

Anzeige

Jetzt haben wir alles notwendige Wissen und die Zutaten tatsächlich zusammen, um ein vollständiges Skript zu erstellen. Es kann von Golem.de heruntergeladen werden. Alle bislang erläuterten Bruchstücke sind in entsprechenden Funktionen untergebracht.

Erklärungsbedürftig am Skript ist wohl nur der Programmstart:

  1. initPins()
  2. start_new_thread(loadRecognition, ())
  3. start_new_thread(initCam, ())
  4.  
  5. while True :
  6. analyse()

Zuerst werden die Pins initialisiert, dann jeweils in einem eigenen Thread die Beschreibungsdatei für die Gesichtserkennung geladen und die Kamera aktiviert.

Die beiden Threads sollen in erster Linie den Programmstart beschleunigen. Das Laden der gut 1 MByte großen Beschreibungsdatei dauert einen wahrnehmbaren Moment, genauso wie die Initialisierung der Kamera. Beide benötigen dabei nicht unbedingt CPU-Ressourcen, sondern warten auf I/O-Operationen - deswegen können beide auch problemlos quasi-parallel warten.

Während sich der Lade-Thread nach dem Laden auch beendet, läuft der Kamera-Thread bis zum Programmende weiter. Er holt dann kontinuierlich die Bilder von der Kamera über OpenCV. Genauso läuft auch die eigentliche Analyse des Bildes über analyse() ununterbrochen. Auf den ersten Blick liegt es nahe, ein Bild zu holen, es auszuwerten und erst dann das nächste zu holen, praktisch hat das aber unschöne Konsequenzen.

Die Trennung hat folgenden Hintergrund: OpenCV puffert die Bilder, die es von der Kamera empfängt. Erhalten wir nun ein Bild, verarbeiten es und steuern im Erfolgsfall den Servo an, dann sind einige Sekunden vergangen. Das nächste Bild, das wir von OpenCV abholen, ist in dem Moment also schon veraltet.

Wenn die beiden Vorgänge "Bild holen" und "Bild auswerten" in getrennten Threads laufen, werten wir hingegen fast immer ein aktuelles Bild aus. Denn der Kamera-Thread leert ständig den Bilder-Puffer von OpenCV, die analyse()-Funktion sieht stets nur das zuletzt geholte Bild.

Wir haben eine Tour de Force versprochen, und wir hoffen, die Leser haben dabei genauso viel gelernt wie wir. Das wird nicht das letzte Hardwareprojekt dieser Art sein. Im Gegenteil, wir fühlen uns inzwischen mutig genug, weitere Ideen anzugehen.

 Der letzte Schritt

eye home zur Startseite
hungkubwa 31. Jan 2014

Wozu der Umweg über Flattr wenn man auch direkt Paypal nutzen kann? Versteh ich nicht.

savejeff 30. Jan 2014

Danke :] Ich benutze die app täglich auf mehreren PCs und habe mich so drann gewöhnt. Sie...

Anonymer Nutzer 30. Jan 2014

Besten Dank für die Info. Gruss, gehirnpest

Casandro 30. Jan 2014

...ein 5 Jahresprojekt, dass dann nach 7 Jahren wegen nicht eingetretenem Erfolg eingestellt.

Anonymer Nutzer 30. Jan 2014

[..] und wir wollen dabei lernen. Genau sowas hat mir bei Golem bisher immer gefehlt...



Anzeige

Stellenmarkt
  1. über Ratbacher GmbH, Köln
  2. über Ratbacher GmbH, Bodenseeregion
  3. Power Service GmbH, Köln, Leverkusen, Düsseldorf
  4. über berg-it projektdienstleistungen GmbH, Nürnberg


Anzeige
Blu-ray-Angebote
  1. (u. a. Apollo 13, Insidious, Horns, King Kong, E.T. The Untouchables, Der Sternwanderer)
  2. (u. a. Die große Bud Spencer-Box Blu-ray 16,97€, Club der roten Bänder 1. Staffel Blu-ray 14...
  3. (u. a. Der Hobbit 3, Der Polarexpress, Ice Age, Pan, Life of Pi)

Folgen Sie uns
       


  1. Huawei

    Vectoring mit 300 MBit/s wird in Deutschland angewandt

  2. The Dash

    Bragi bekommt Bluetooth-Probleme nicht in den Griff

  3. Bugs in Encase

    Mit dem Forensik-Tool die Polizei hacken

  4. Autonomes Fahren

    Verbraucherschützer fordern "Algorithmen-TÜV"

  5. The Last Guardian im Test

    Gassi gehen mit einem computergesteuerten Riesenbiest

  6. E-Sport

    Cheats und Bots in Südkorea offenbar gesetzlich verboten

  7. Videocodecs

    Netflix nutzt VP9-Codec für Offlinemodus

  8. Kosmobits im Test

    Tausch den Spielecontroller gegen einen Mikrocontroller!

  9. Open Data

    Daten für den Schweizer Verkehr werden frei veröffentlicht

  10. Telekom

    1,1 Millionen Haushalte erhalten VDSL oder Vectoring



Haben wir etwas übersehen?

E-Mail an news@golem.de


Anzeige
Nach Angriff auf Telekom: Mit dem Strafrecht Router ins Terrorcamp schicken oder so
Nach Angriff auf Telekom
Mit dem Strafrecht Router ins Terrorcamp schicken oder so
  1. Red Star OS Sicherheitslücke in Nordkoreas Staats-Linux
  2. 0-Day Tor und Firefox patchen ausgenutzten Javascript-Exploit
  3. Pornoseite Xhamster spricht von Fake-Leak

Gear S3 im Test: Großes Display, großer Akku, große Uhr
Gear S3 im Test
Großes Display, großer Akku, große Uhr
  1. In der Zuliefererkette Samsung und Panasonic sollen Arbeiter ausgebeutet haben
  2. Vernetztes Auto Samsung kauft Harman für 8 Milliarden US-Dollar
  3. 10LPU und 14LPU Samsung mit günstigerem 10- und schnellerem 14-nm-Prozess

Robot Operating System: Was Bratwurst-Bot und autonome Autos gemeinsam haben
Robot Operating System
Was Bratwurst-Bot und autonome Autos gemeinsam haben
  1. Roboterarm Dobot M1 - der Industrieroboter für daheim
  2. Roboter Laundroid faltet die Wäsche
  3. Fahrbare Roboter Japanische Firmen arbeiten an Transformers

  1. Re: Zotac?

    mathew | 15:07

  2. Re: AirPods

    _j_b_ | 15:05

  3. Manipulation erkennen

    /mecki78 | 15:04

  4. Re: Und dann ist es vorbei ...

    logged_in | 15:04

  5. Das gibtsdoch schon lange....

    bernstein | 15:02


  1. 15:05

  2. 14:54

  3. 14:50

  4. 14:14

  5. 14:00

  6. 13:56

  7. 13:30

  8. 12:01


  1. Themen
  2. A
  3. B
  4. C
  5. D
  6. E
  7. F
  8. G
  9. H
  10. I
  11. J
  12. K
  13. L
  14. M
  15. N
  16. O
  17. P
  18. Q
  19. R
  20. S
  21. T
  22. U
  23. V
  24. W
  25. X
  26. Y
  27. Z
  28. #
 
    •  / 
    Zum Artikel