Industrielle Fertigung
Industrielles Internet der Dinge | Industrielle Materialien | Gerätewartung und Reparatur | Industrielle Programmierung |
home  MfgRobots >> Industrielle Fertigung >  >> Manufacturing Technology >> Herstellungsprozess

Echtzeit Pan/Tilt Gesichtstracking auf Raspberry Pi – Praktischer Leitfaden

Überblick

Mit einem moderaten Zeitaufwand von ca. 25 $ an Bauteilen können Sie einen Raspberry Pi in eine leichte, echtzeitfähige Pan/Tilt-Webcam verwandeln, die Gesichtern folgt. Durch Kombination von OpenCV Gesichtserkennung, zwei Hobbyservos und dem servoblaster-Treiber hält der Pi die Kamera mit einer Bildrate schneller als einer Bewegung pro Sekunde auf dem Subjekt zentriert.

Schritt 1: Hardware beschaffen

Was Sie brauchen:

Vorausgesetzt, Sie besitzen bereits Pi und Webcam, kosten die Zusatzteile ca. 25 $.

Schritt 2: Raspberry Pi vorbereiten

Offizielles Raspbian OS (hard-float) nutzen und aktuell halten. Übertakten auf 800 MHz kann die nötige CPU-Headroom für Echtzeit-Erkennung geben, kann aber Stabilität reduzieren.

OpenCV für Python installieren:

sudo apt-get install python-opencv

servoblaster herunterladen und installieren, den Servo-Treiber von Richard Hirst:

git clone https://github.com/richard-hirst/servoblaster.git
cd servoblaster
make install_autostart

Optional: Timeout konfigurieren, damit der Treiber nach einer Sekunde Inaktivität keine Pulse mehr sendet. Diese Zeile zu /etc/modules hinzufügen:

servoblaster idle_timeout=1000

Treiber starten:

sudo modprobe servoblaster

Kamera-Tweaks: Dank Gmoto für den Hinweis, dass Anpassen des uvcvideo-Moduls Latenzprobleme behebt. Diese Befehle einmal pro Boot ausführen oder zu /etc/modules hinzufügen:

rmmod uvcvideo
modprobe uvcvideo nodrop=1 timeout=5000 quirks=0x80

Schritt 3: Rig zusammenbauen

Halterungsanweisungen folgen, Servos montieren, Webcam oben an der Halterung befestigen (Klebeband reicht). Kamera an Pi USB-Port anschließen; ein aktiver USB-Hub ist optional, hilft aber, wenn die Kamera mehr Strom zieht.

Schritt 4: Servos anschließen

Servoblaster mappt servo-0 auf GPIO 4 und servo-1 auf GPIO 17. Typische Servo-Kabel:

Flachbandkabel nutzen, um Steuersignale an die korrekten GPIO-Pins zu führen. Der Code behandelt servo-0 als Pan (links-rechts) und servo-1 als Tilt (hoch-runter).

Servo-Stromversorgung: Kleine Hobbyservos können oft direkt von den 5 V GPIO-Pins des Pi gespeist werden, aber größere oder anspruchsvollere Modelle benötigen evtl. externe 5 V–6 V Versorgung. Servo +5 V und GND an externe Versorgung, dann externes GND an einen Pi GPIO Ground-Pin brücken.

Schritt 5: Tracking-Programm starten

Bereitgestelltes PiFace.py Skript herunterladen, auf den Pi legen und ausführen:

cd /path/to/PiFace.py
python PiFace.py

OpenCV führt Gesichtserkennung bei 320×240 Auflösung durch, sucht nach rechtem Profil, linkem Profil und Frontalgesichtern. Die Servos justieren mit einer Rate schneller als einmal pro Sekunde und halten die Kamera auf dem erkannten Gesicht zentriert.

Demo-Videos im Originalartikel als Referenz ansehen.

Herstellungsprozess

  1. Temperatur mit DS18B20 am Raspberry Pi 2 auslesen
  2. Professionelle Temperaturüberwachung mit Raspberry Pi und DS18B20
  3. Temperaturmessung mit Maxim 1-Wire Sensoren und DS2482 I2C-Bridge am Raspberry Pi
  4. Präzise Temperaturüberwachung im Server-Schrank mit Raspberry Pi
  5. Sensordaten in Raspberry Pi integrieren: GPS & MPU-9150 Hands-On Guide
  6. Line-Tracking-Sensor mit Raspberry Pi – Einfacher KY-033 Tür/Line Detektor
  7. Blitzdetektion mit Raspberry Pi und AS3935: Praktischer Leitfaden
  8. Fortgeschrittenes Tischtennisball-Tracking mit Raspberry Pi und OpenCV
  9. Headless Raspberry Pi 2 Wasser-Alarm mit Adafruit T‑Cobbler Plus bauen
  10. Echtzeit Pan/Tilt Gesichtstracking auf Raspberry Pi – Praktischer Leitfaden