This Android device can recognize faces and move to keep them in frame. It’s a proof of concept that uses commonly available parts and software packages.
The original motivation for the project was [Dan O's] inclination to give the OpenCV software a try. OpenCV is an Open Source Computer Vision package that takes on the brunt of the job when it comes to discerning meaning from images. To give the phone the power to move he designed and printed his own mounting brackets for the phone and a couple of hobby servos. An IOIO board connects to the Android device in order to control the motors. On the software side all [Dan] needed to do was write some code to interface the output of the OpenCV face tracking modules with the input of the IOIO. See the finished project demonstration after the jump.
This system can easily be implemented with other hardware, like this Arduino-based version we looked at earlier in the year.