Zeichnen in der Luft mit dem Android-Handy
Arbeite ich an einer Anwendung zum zeichnen in der Luft mit einem android-Handy.
Als mein Handy bewegt sich, Dank der acceletometer, rufe ich die Beschleunigung auf jede Achse ax, ay, az. Was mich interessiert ist: x,y,z.
Von dem, was ich in Foren gelesen und in einigen tutorials, die Integration der Beschleunigung zweimal gibt riesige Fehler.
Also, was ist die beste Lösung für mich, um Informationen über das deplacement des Telefons?
Vielen Dank für Ihre Hilfe.
- Klingt wie eine Coole app 🙂
- Ich weiß nichts über android Programmieren, sondern AFAIK die Integration zweimal ist die einzige mathematisch mögliche Weg, um herauszufinden, die Telefon-position.
- Was ist, wenn du definieren Sie die Start-position (0, 0, 0) und integrieren einmal um die Geschwindigkeit, und fügen Sie dann die Geschwindigkeit, um Vektor in den vorigen Stand bei jedem update Beschleunigungsmesser, um zu bestimmen, eine neue position?
- hi! das ist, was ich bin versucht zu tun, aber die Beschleunigungsmesser Werte ändern sich so schnell, dass meine Zeichnung wird ein echtes Durcheinander!
- wie sind Sie immer noch halbwegs vernünftige Werte? durch die Verwendung eines high-pass filters entfernen Sie den Schwerkraft-Vektor-meine integration schneller als die Lichtgeschwindigkeit ist in ein paar Minuten, wenn mein Handy gar nicht bewegt!
Du musst angemeldet sein, um einen Kommentar abzugeben.
Nicht genau das, was Sie suchen:
Speichern Sie die Orientierung auf ein array und die vergleichen
Tracking-Orientierung funktioniert gut. Vielleicht kannst du etwas ähnliches mit dem Beschleunigungsmesser-Daten (ohne integration).
Als Sie erwähnt in Ihrem Beitrag, die Integration der Beschleunigung zweimal nicht funktioniert.
Update:
Wenn Genauigkeit nicht so wichtig dann das Doppel-integral funktioniert vielleicht für ein paar Sekunden, aber erwarten, sehr schlechte Ergebnisse.
Jedoch die gyro Maus ist die bessere Wahl, meiner Meinung nach. Sehen zwischen 37:00-38:25 in
Sensor Fusion auf Android-Geräten: A Revolution in Motion-Processing.
Werfen Sie einen Blick auf:
http://www.youtube.com/watch?v=C7JQ7Rpwn2k
http://www.freescale.com/files/sensors/doc/app_note/AN3397.pdf
Auch ich arbeite an einem ähnlichen Projekt und ich glaube nicht, dass Sie brauchen, um doppelte integrieren accelertaion und Entfernung berechnen, verschoben. Stattdessen verwenden Sie die Beschleunigung für die Bewegung.
Aber wenn Sie darauf bestehen, zu verwenden, die Entfernung, die von Probenahme acceleration(a0,a1,...,an) in kurzen Zeitintervallen(t0,t1,...,tn) und nehmen wir an, Ihre Beschleunigung in diesen Intervallen ist der Durchschnitt von Grenzen, Sie können so etwas wie, dass;
Ist es ein bisschen anders aus Doppel-intergating. Viel Glück.