Неправильная гео-координата в случайном порядке - PullRequest
0 голосов
/ 16 июня 2011

Иногда, когда устройство вытягивает координаты с GeoPositionAccuracy, установленным на High, и MovementThreshold, установленным на 0, захватываемая GeoCoordinate находится дальше и не совпадает с другими координатами. Как я могу предотвратить это или удалить эту GeoCoordinate из моей коллекции GeoCoordinate? Вы заметите, что на изображении внизу справа над вторым светло-серым 'e' и справа от символа маршрута 11 вы увидите небольшую пробежку. То же самое под первым маленьким серым «е».

enter image description here

Ответы [ 2 ]

1 голос
/ 16 июня 2011

GPS вычисляет местоположение по объему пересечения оболочек с центром на спутниках. С идеальной точностью они будут сферами, но есть погрешность, поэтому это пересекающиеся оболочки. Чем ближе они находятся на горизонте, тем больше объем пересечения (длинный и тонкий). Аппаратное обеспечение GPS выбирает три лучших спутника. «Лучший» включает в себя горизонтальное угловое разделение и уровень сигнала.

Перемещение в тень здания может привести к изменению набора спутников. Существенное изменение в снижении точности может сопровождаться резкими большими изменениями в вычисленном положении. Сленговое название для этого - «GPS телепортация», и оно очень часто встречается в бетонных каньонах и гусеничных транспортных средствах, которые припарковываются под металлическими навесами. Более сложные системы будут использовать акселерометры для распознавания этого явления в силу того факта, что внезапное большое изменение положения реального будет сопровождаться высоким ускорением. По ряду образцов центр тяжести может дать разумное указание на фактическое положение.

0 голосов
/ 16 июня 2011

Когда вы устанавливаете порог движения на ноль, ваш GPS становится очень чувствительным и, следовательно, появляется шум (из окружающей среды). Я предполагаю, что это может быть шум, вызывающий определенное дрожание. Из Руководства по лучшей практике

Установить разумный порог движения

Потому что GPS-оборудование в мобильных устройствах нет антенны, датчики как правило, предназначены для очень чувствительны. Эта чувствительность может привести в небольшом количестве шума в сигнал от поверхностного отражения и другие воздействия на окружающую среду. Главный Расположение Класс обслуживания, GeoCoordinateWatcher выставляет Свойство MovementThreshold. это свойство определяет минимальное изменение в положении, которое должно иметь место до события PositionChanged поднял. Если вы установите Свойство MovementThreshold очень низкое значение, вы можете вызвать приложение для получения событий, которые на самом деле результат шума в сигнал. Чтобы сгладить сигнал только представляют значительные изменения в положение, установите MovementThreshold собственности не менее 20 метров. это также приведет к снижению мощности потребление для вашего приложения. Установка порога движения на 0 метров приведет к тому, что поднимается так часто, как один раз в второй. Этот параметр может быть полезен для навигационные приложения.

...