Je le code suivant ci-dessous qui semble fonctionner très bien:Android Coordonnées GPS Scattered
// GPS Reader // Criteria Criteria criteria = new Criteria(); //criteria.setAccuracy(Criteria.ACCURACY_COARSE); // Used when we can't get a GPS Fix criteria.setAccuracy(Criteria.ACCURACY_FINE); // Used when we can get a GPS Fix criteria.setAltitudeRequired(false); criteria.setBearingRequired(false); criteria.setCostAllowed(true); criteria.setPowerRequirement(Criteria.POWER_LOW); LocationListener locationListener = new MyLocationListener(); LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); lm.requestLocationUpdates(lm.getBestProvider(criteria, true), 0, 0, locationListener);
Cependant, quand je graphique les données que j'ai recueillies sur les cartes Google, les coordonnées GPS sont très dispersés dans certains cas, ou il se passera le long d'un chemin que je suis juste à pied, puis tout à coup sauter à un mile de distance et puis de retour. Est-ce qu'il y a un moyen de réparer ceci? Une sorte de vérification de précision je suppose?
Mise à jour:
Fondamentalement, mon problème ressemble à ceci comme un exemple - GPS Jitter
Mise à jour 2:
Je considérais pas ce qui en fait une prime, mais je me suis dit que je pourrais aussi bien avoir une compréhension complète de ce qui se passe ici, et voir si peut-être mon approche est terminée tuer. J'ai toujours le même problème que mes coordonnées ont de la gigue en dépit du fait que j'ai des précisions de 3m, etc. Maintenant ça peut être des satellites disponibles, etc. Je ne sais pas, mais au fond j'essaie de comprendre comment sont toutes ces autres applications, en particulier les applications d'exercice, capables d'obtenir de telles lectures lisses dans les mêmes circonstances. Malheureusement, je n'ai pas donné beaucoup d'informations sur mon problème, sauf que vous pouvez utiliser un filtre de Kalman si vous voulez, mais il doit sûrement y avoir des moyens moins complexes, puisque je doute que la plupart des applications implémentent cela.
De toute façon, si un développeur souhaite partager ce qu'ils font avec un pseudo-code qui serait grandement apprécié. Je veux dire si je suis coincé avec Kalman, mais je suis sûr qu'il doit y avoir plus facile de mettre en œuvre des algorithmes, et j'espère apprendre ceux-ci et comment les mettre en œuvre, ce sont des ajustements décents.
Contexte: Il s'agit d'une application mobile pour piétons.
pertinents SO Les questions que j'ai essayé de glaner des informations de Create a smooth curve from a series of GPS coordinates Smooth gps data: Ce fut un bon départ, mais je ne suis pas sûr de ce que pseudocode je besoin de mettre en œuvre pour obtenir correctement les places les moins aptes au travail de manière appropriée afin que je vais avoir un splines données GPS que je peux ensuite voir sur quelque chose comme google maps pour confirmer que je l'ai fait correctement. Je pense que le problème est de savoir s'il s'agissait de données générales X et Y auxquelles je m'occupais, et non de coordonnées GEO, je pourrais écrire quelque chose dans matlab, et continuer.
Mise à jour 3
Une image des données GPS foiré Je RECEVOIR https://www.dropbox.com/s/ilsf8snao2no65e/gpsdata2.png
code https://gist.github.com/4505688
Vos besoins en énergie et votre précision semblent se contredire. Le seul fournisseur qui vous fournit des résultats avec ACCURACY_FINE est LocationManager.GPS_PROVIDER. Pourquoi ne pas l'utiliser directement au lieu de créer une sorte de critère comme ceci: locationManager.requestLocationUpdates (LocationManager.GPS_PROVIDER, 0, 0, MyLocationListener)? –
En outre, il pourrait être dispersé parce que l'appareil n'était pas sous ciel ouvert/autres raisons qui conduisent à la réception de réparation retardée. –
Ok, je reviendrai à cela - puisque je l'avais initialement mis en place, mais je pensais que les critères feraient mieux et réessayerons demain. Sur la note du ciel ouvert - j'étais dans une région de ciel ouvert, lors de l'exécution du test - mais quand je cours un programme comme mapmywalk il n'y a pas de dispersion. – eWizardII