- 20 februari 2013: In antwoord op een vraag van de student Hala Abuhasna wilt u de seriële .NET-klasse gebruiken, gebruiken de naamgevingsconventie "\\\.\\COMn" en n vervangen door een nummer > 9 te definiëren uw com-poort voor COM-poorten boven 9 zoals COM10, COM11, enz.
- 23 Mar 2012: Featured op Adafruit van Blog
- 23 Mar 2012: Featured op interactief ontwerp
- 13 dec 2011: Featured op Floss For Science
Deze gids zal ook worden gehandhaafd op mijn blog http://techbitar.blogspot.com/2012/04/face-detection-and-tracking-with.html
INTRODUCTIE
In dit project heb ik een gezicht detectie en tracking systeem samengesteld. U kunt de video van het laatste project hier zien:
Kortom, de webcam stuurt videoframes aan OpenCV uitgevoerd op een Windows PC. Als OpenCV een gezicht detecteert het volgen en berekenen van X, Y-coördinaten van het middelpunt. De coördinaten worden vervolgens doorgegeven aan de Arduino via een seriële USB-verbinding. De Arduino bestuurt de beweging van de webcam met de hulp van twee pan/tilt servo's te volgen van het gedetecteerde gezicht.
OpenCV (Open Source Computer Vision Library: http://opencv.willowgarage.com/wiki/) is een open-source bibliotheek waarin honderden real-time computeralgoritmen visie. De bibliotheek OpenCV 2.x is een C++-API.
Dit is een integratieproject tussen hardware en software tools. De image processing C++ codevoorbeelden worden verstrekt met de openCV bibliotheek en alles wat ik deed was het aanpassen van de voorbeeldcode voor dit project. Ik deel van de overbodige code verwijderd en toegevoegd van seriële communicatie aan het zodat het X sturen kunt, Y waarden aan Arduino.
KREDIET
Dit project zou niet mogelijk zijn geweest zonder de ploeg die OpenCV ontwikkeld. Ik ook van Ryan Owens' tutorial (http://www.sparkfun.com/tutorials/304), die is gebaseerd op de verwerking, OpenFrameworks en een eerdere versie van OpenCV geprofiteerd. Ik probeerde te installeren verwerking en OpenFrameworks met geen geluk. Dus in plaats daarvan, heb ik voor Microsoft Visual C++ 2010 Express en de nieuwste versie van OpenCV oftewel 2.3.1 zonder middleware of wrappers gekozen.
HULPMIDDELEN
Software vereist
Arduino IDE 1.0 voor Windows
OpenCV 2.3.1 SuperPack voor Windows
Microsoft Visual C++ 2010 Express SP1
Seriële C++ Library for Win32 (door Thierry Schneider)
Code verplicht
-OpenCV C++ (bijgevoegd) techbitarFaceDetection.cpp (gebaseerd op de OpenCV voorbeeld facedetect.cpp)
-(Gekoppelde) cam_servo.ino Arduino (gebaseerd op Ryan Owens voorbeeld SerialServoControl.pde)
Hardware vereist
-PC bij voorkeur met Windows 7 SP1. De snellere CPU hoe beter.
-Arduino Uno of compatibel + macht bron.
-Standaard servo's X 2.
-Webcam w/UBS interface.
-Breadboard.
-Jumper draden.
-Hobby draad te binden pan/tilt servo's en een webcam samen.