Difference between revisions of "Android Head Tracking"

From Immersive Visualization Lab Wiki
Jump to: navigation, search
(Android API)
(Android API)
Line 31: Line 31:
 
* The following code allows determines if the hardware of the device support Face Detection API  
 
* The following code allows determines if the hardware of the device support Face Detection API  
 
<pre>
 
<pre>
-int faces = params.getMaxNumDetectedFaces();</pre>
+
// if faces is less than zero then device does not support face detection
 +
int faces = params.getMaxNumDetectedFaces(); </pre>
  
 
=== OpenCV ===
 
=== OpenCV ===

Revision as of 01:55, 8 May 2013

Contents

Project Overview

This project's main goal is to be able to create an application on the Android mobile platform that will use face detection to track the head movements of the user. The face detection is used with OpenCV and Androids Face Detection API, and with these algorithms, we are able to locate the face with the device's front facing camera. After face detection has been implemented, we would need to be able to track the faces X,Y and Z coordinates (relative to the camera). With this data, we would be able to create a 3D model view where the user would be able to look around the object by simply moving their head.


Significant Updates

  • May 7 - Got working FaceDetection sample running on android (not the most accurate)
  • April 30 - Found Error with Hardware on API on Development device.
  • April 23 - Gained Control of the Camera

TO DO

  • Using openCV for face detection
    • Testing face detection samples on development device.
    • Finding the range of Face Detection
  • Display eye positions, and other helpful information
  • Work on building an API around the app

Known Bugs/Issues

  • Android Face Detection API
    • Only works for Ice Cream Sandwich [API 14.0 4.0] and up
    • Not all Devices Support the FaceDetection API
  • OpenCV Samples
    • Sample Face Detection Code is not the most accurate face detection, it works with monitor image of a face, but isn't as accurate on a real human face.
      • Need to do more testing on faces and different lighting and back ground

Additional Information

Android API

  • The following code allows determines if the hardware of the device support Face Detection API
// if faces is less than zero then device does not support face detection 
int faces = params.getMaxNumDetectedFaces(); 

OpenCV

  • This the the result of the OpenCV result when testing with an image
    • -Ken-openCV example1.jpg
  • OpenCV Testing with Human Face
    • -Ken-openCV face.jpg