Pergunta sobre objective-c, cllocationmanager, ios, cllocation – O que exatamente significa horizontalAccuracy?

14

Eu estou trabalhando em um aplicativo iOS usando serviços de localização. Tendo um histórico em física experimental, estou me perguntando o que exatamentehorizontalAccuracy em umlocation encontrado emlocationManager:didUpdateToLocation:fromLocation: apoia. A documentação é um pouco esparsa ...

Presumo que a precisão forneça um intervalo de confiança baseado em uma distribuição gaussiana (ou poisson?). Assim, com uma certa probabilidade, a posição real está dentro de um círculo com um raio dehorizontalAccuracy, mas também poderia estar fora dessa área. A questão é então: quão grande é essa probabilidade? E sehorizontalAccuracy corresponde a 1σ, eu teria uma probabilidade de 68% de estar dentro desse círculo comhorizontalAccuracy, mas olhando para o outro lado, em quase um terço dos casos, a posição real estará fora dessa área. Assim, em certos casos, eu prefiro usar 2σ (2*horizontalAccuracy) ou mesmo 3σ (3*horizontalAccuracy) para calcular com.

Para resumir: existe alguma indicação em algum lugar, qual intervalo de confiançahorizontalAccuracy tem?

Comentário para todos que respondem "A Apple diz que está dentro": Bem - a medição não pode ser exata. Deve ter um certo nível de incerteza. Se você repetir a medição com muita freqüência, obterá uma distribuição de resultados - provavelmente uma distribuição gaussiana. Este gaussiano tem uma certa largura, que corresponde ao nível de incerteza das medições. Medir a posição com mais frequência reduzirá a incerteza e, assim, aumentará a precisão, mas nunca lhe dará um intervalo distinto no qual a posição real é garantida. Você só terá uma probabilidade. Mas se a precisão é 3sigma, temos 99,7% - o que é quase certo. Para resumir - duvido da documentação da Apple.

Re sua edição - você está falando sobre a precisão do local ou a precisão da precisão? Não está claro qual problema prático você está tentando sove aqui. jrturton
Bem -en.wikipedia.org/wiki/68-95-99.7_rule tem uma boa explicação. Se a precisão tiver um nível de confiança de 3sigma, no meu cálculo, posso ter certeza de que a posição real é realmente nesse círculo. Se fosse apenas 1sigma, em 1 de 3 casos, a posição é real fora do círculo. Eu então teria que calcular com 3 * horizontalAccuracy (correspondente ao 3sigma), o que faz uma grande diferença em alguns casos. Axel
woooo man todos nós somos programadores aqui este material está acima da minha cabeça.Eu só sei que é o raio aproximado que o usuário pode estar dentro deste círculo. É isso aí. Inder Kumar Rathore
FYI Eu abri uma questão de suporte técnico semelhante ao que você está pedindo. A Apple respondeu e eu coloquei sua resposta em minha própria pergunta de estouro de pilha;stackoverflow.com/questions/30673627/… patbaker82
Para ser claro, "Sigma" é apenas um símbolo para Desvio Padrão, ou a distância média entre o lat / long que você recebe e o lat / long real do telefone. O iOS e o Android presumivelmente calculam isso com base em vários fatores, como a proximidade de torres de celular, locais recentes, etc. Japes

Sua resposta

5   a resposta
2

mas o Android reporta uma precisão horizontal de um sigma, que eles definem para representar 68% de probabilidade de que o local verdadeiro esteja dentro do círculo.

A explicação deles é que os erros de localização seguem uma distribuição normal e, portanto, o +/- um-sigma representa 68% de probabilidade. No entanto, 68% é a probabilidade de uma distribuição normal unidimensional. Em duas dimensões, um erro de um sigma representa 39% de probabilidade de contenção dentro de um círculo (o erro de distância segue uma distribuição de Rayleigh, também uma distribuição de chi com dois graus de liberdade).

Há duas explicações possíveis.

O círculo realmente representa 68% de probabilidade de contenção, em cujo caso os desenvolvedores do Android escalaram o sigma unidimensional por um fator de cerca de 1,5, de modo que o círculo representasse 68%. Neste caso, sua escolha de 68% é completamente arbitrária.O círculo na verdade representa 39% de probabilidade de contenção. Nesse caso, sua descrição estaria correta se você substituísse um gaussiano unidimensional por um bidimensional e sua probabilidade associada.

Eu acho que a segunda explicação é mais provável.

iOS:https://developer.apple.com/library/ios/documentation/CoreLocation/Reference/CLLocation_Class/index.html#//apple_ref/occ/instp/CLLocation/horizontalAccuracy

Android:http://developer.android.com/reference/android/location/Location.html#getAccuracy%28%29

De acordo comesta discussão o HDOP escalado pelo UERE * 2 dá bidimensional ao 2-sigma, então (Android usando 1-sigma) o círculo provavelmente corresponde a 68% de probabilidade, mas o Android não escalou o sigma porque era um gaussiano bidimensional para começar . Todos apenas adivinha, claro… mirabilos
11

. O único ponteiro que tenho é que, no Android, eles estão usando 1σ:

http://developer.android.com/reference/android/location/Location.html#getAccuracy%28%29

Para todos os não-crentes, este link também explica um pouco como funciona a exatidão.

Meu palpite é que o mesmo acontece no iOS, mas não há como ter certeza - exceto por perguntar ao cara que escreveu o código;)

Editar:

Depois de alguns jogando e verificando as atualizações de localização vs localização física, parece que é mais provável 3σ no iOS. Há duas observações que me levam a acreditar que é verdade:

Em locais Android que vêm da triangulação WiFi, geralmente são reportados como tendo uma precisão entre 20 e 50 metros. No iOS, é entre 65 e 165 metros.Ao medir a distância entre um local informado e a localização física do dispositivo, ele está dentro da precisão relatada até o momento.
Esqueça a triangulação do wifi, vamos ficar como a precisão do GPS é calculada: eu duvido que seja 3sigma no ios, o valor do 1sigma para a precisão do GPS é de 2,5 - 3m ao usar EGNOS ou WAAS, (EUA e Europa) ou 5m. Portanto, um dispositivo deve mostrar 3-5m de precisão horrível, em média, ao usar uma base 1sigma. 3 sigma seria 9 (WAAS / EGNOS) -15m (caso contrário), Então isso é muito. o ios mostra menos. Então eu suponho um valor 1 ou talvez um valor de 2-sigma. AlexWien
sirfIII tem 9 anos de idade. E muitos receptores recreativos usam Waas / Egnos. Basta olhar para os dispositivos da uBlox. AlexWien
1

Se horizontalAccuracy for 0 significa alta precisão e 500 como horizontalAccuracy significa baixa precisão. O Provedor de Serviços de Localização atualiza a localização com base no melhor valor consolidado de celular, WiFi (no caso de conexões WiFi) e GPS. Assim, o valor da localização será base oscilante na cobertura. Você pode filtrá-lo usando este horizontalAccuracy.

-3

documentação escasso?

O raio de incerteza para a localização, medido em metros. (somente leitura)

A latitude e longitude do local identificam o centro do círculo e esse valor indica o raio desse círculo. Um valor negativo indica que a latitude e a longitude do local são inválidas.

Então, sua localização está dentro do círculo. Não está fora do círculo, ou o raio seria maior. Sua suposição sobre intervalos de confiança está incorreta.

Obrigado, isso é realmente interessante! jrturton
Desculpe, não. As medições de GPS sempre têm um erro associado, portanto, o único círculo de erro que garante o valor informado no interior seria de 20.037 quilômetros;) O Android usa 1σ, o que significa que há 68% de probabilidade de que o local verdadeiro esteja dentro do círculo e 32% está do lado de fora. Se a Apple usa 3σ, então há uma probabilidade de 99,73% de que o valor esteja dentro do círculo e 0,27% esteja fora. Mas é um círculo muito maior. Finalmente, tenha em mente que estas são probabilidades, não garantias. ehartwell
-2

r a X metros de distância. Lembre-se de que a localização pode ser encontrada usando GPS, triangulação de torre de celular ou dados de localização de Wi-Fi. CLLocationManager dá-lhe uma localização mais precisa destes 3 métodos. E diz que há uma chance de que ele possa estar desligado por no máximo X metros.

Você não entendeu a pergunta dele. ".. uma chance que pode estar fora": qual chance? essa é a sua pergunta. (Mas a Apple não pode saber a resposta, já que o fabricante do chipo não fornece essas informações e a precisão hor é calculada pelo fabricante do chkip) AlexWien

Perguntas relacionadas