From what I understand, GPS has limited accuracy. Is it possible to get a more precise location for a person in 3D space?
I'm planning to write an application where users will move with their phones in any direction, but only need to move a few feet. Is there any technique, maybe with the accelerometer and gyroscope that would enable this degree of accuracy?
For example, the user holds the phone flat (so that the bottom of the phone runs parallel with the floor). There is something drawn on-screen, which开发者_JAVA技巧 doesn't move "with the screen" as the person walks forward, backward, and side-to-side. Thus, the object appears to be unmoveable, and only discoverable by having the phone in the correct position in 3D space.
I don't need anyone to lay out some coding, just give me a brief understanding if, with some hard work, this could even be possible.
Thanks!
Derek
No, not really. If you integrate the accelerometer values twice you get position but the error is horrible. It is useless in practice.
Here is an explanation why (Google Tech Talk) at 23:20.
What you actually could do is to discover your "hidden object" by changing the orientation of the phone. That works pretty well with just accelerometers and compass. This is exactly what you see in the video posted by colechristensen.
Look at this
It is possible to significantly increase the location by combining the outputs from the various sensors using "sensor fusion". The most interesting concept, I think, is using the output from the camera to detect and record movement (combining with the gyros, accelerometers, and gps). You should write a Kalman Filter to combine.
The problem is that this is on the level of an engineering grad student who has spent years studying such things. Not impossible, but be prepared for a challenge.
精彩评论