Joined: 12 Aug 2003
|Posted: Sat Jan 10, 2015 11:47 pm Post subject: Head tracking sensor for android
|Hey, I'm gonna be a bit of an asshole and shill an android app I made. Since I am the actual developer and not a PR lackey, I expect this to not be deleted.
While playing ksp and other flight simulators I wanted to be able to move the in-game cockpit view camera in an intuitive fashion. Things such as TrackIR exist, but they are expensive. There is facetracknoIr which uses your webcam to track your head movement, but that method is computationally expensive and I don't have a webcam on my PC so that is out of the question. I then thought about using my phone, for such a task but the existing apps for this was kinda crap, to be honest. Since I am a computer engineer & signals analyst by trade I said "fuck it, I can do this better on my own" and did just that. I'll spare the boring mathematical details but the result is incredibly accurate and works really well. Been using it on my own for a bit over a month before I decided it was good enough to place on the android app store.
You can find the app here. You will need to download FaceTrackNoIR for it to work, though. I haven't tested it on any other phone other than my motoX so any feedback on its functionality will be appreciated. If your phone does not have a gyroscope, it will use a somewhat funky estimation for orientation so itll probably be innacurate for older devices. Newer devices use the gyroscope, but gyroscopes are known to drift over time, causing slight inaccuracies. As a result, you may notice a slight drift depending on how your phone is feeling but I think I limited that pretty well. I am working on a filter that'll probably fix those problems, though.
If you are wondering how the hell to sue the app with your phone, either place it under your headphones(like I do), or maybe wear a hat or something else to keep the phone stable on your head. The beauty of the app is that you can put the phone in literally any orientation and it will still accurately track the position of your head, so long as your phone rotates whenever your head rotates.
Here is me using my phone to track my head movement in game. The verisons used in this video are old (I'll upload better videos probably later next week), but they kinda show how good this app works:
Problems with using your wi-fi network is that responsiveness is based on how much traffic is on your LAN, and how faty tour router can handle the data. I personally prefer the untethered version but the goad for the next update is to make a tethered USB version fix the issues with potential packet loss.