Как стать автором
Обновить

Переосмысление GPS: Разработка системы позиционирования нового поколения в Uber

Время на прочтение 9 мин
Количество просмотров 26K
Всего голосов 43: ↑40 и ↓3 +37
Комментарии 80

Комментарии 80

Вообще если добавить несколько предположений, то можно пойти другим путём.
1. человек не движется, пока ждёт такси
2. вызывает его с уровня земли
В этом случае можно попросить сделать пару снимков и ориентироваться просто по гугл-панорамам. Там покрытие сильно больше, чем у 3Д-карт, да и нагрузка даже при полном переборе некоторой окрестности будет сильно меньше (imho).

Как раз у Uber несколько другая философия в этом плане, то есть человек может двигаться пока ждёт такси, поправьте если не прав.


Высота (например над уровнем моря) в подобном классе задач редко рассматривается.


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


Подход Uber очень интересен с точки зрения универсальности.

с уровнем земли всё сложно.
особенно в некоторых городах.
В каком смысле?
взгляните, нарпимер, на Уфу.
прошел 50 метров и уже сильно другая высота.
а перепад 10-15 метров ступенькой — популярное архитектурное решение в любом современном городе.
Вы не поняли. Я предлагаю для уточнения положения использовать гугл-панорамы, которые сняты условно с уровня грунта (не всегда, но это не принципиально). Просто чем дальше, от траектории камеры, тем сложнее опознать место. Т.е. получаем грубое положение и по ближайшим снимкам уточняем его.
гуглпанорамы есть только для дорог, притом крупных.
а всякие дворы и прочее — нет
Тут с одной стороны да, с другой — их явно больше, чем 3Д моделей города. Ну и доснять их проще, чем построить модель. Хотя с дворами не получится скорее всего. Деревья будут всё портить. Правда они же будут и в их модели портить, т.к. отлично и очень неравномерно во времени забивают сигнал. Т.е. даже модель каждого дерева не поможет.
Это поможет понять, человек находится на мосту или под мостом?
Вот тут как раз никаких проблем Картинка на и под мостом отличается так, что перепутать их невозможно. А вот gps их вряд-ли различит (не думаю, что навигаторы учитывают высоту)
Вот тут как раз никаких проблем Картинка на и под мостом отличается так, что перепутать их невозможно.
Сильно будет зависеть от местности.
На транспортной развязке фото в даль пересекающей дороги под и над будут отличаться не так уж и сильно.

А вот gps их вряд-ли различит (не думаю, что навигаторы учитывают высоту)

Во многих телефонах даже достаточно старых есть датчики давления, точность правда, так себе. Но 5й этаж от грунта отличает.
1. Вообще и gps даёт высоту. Вопрос в том, используют ли её навигаторы. Судя по тому, что все карты обычно двухмерны — нет.
2. Надо постараться так встать именно под мостом, чтобы при этом в кадр не попали опоры или верхний настил. Разве что для узких мостов. Ну и картинка вдоль дороги не особо информативна в принципе, т.к. не даёт никакого представления собственно о близлежащих ориентирах. Это как объяснять где ты стоишь в стиле — «в 200 метрах от меня какое-то здание, но я туда не пойду».
3. Система же не самодостаточна, а опирается на те же датчики, что доступны и навигатору (т.е и этому тоже). Однако вопрос ещё в том, какова его точность при отсутствии информации об атмосферном давлении в данной точке в данный момент. Я не знаю, на сколько сильно оно гуляет по отношению к градиенту по высоте. Ну и мосты обычно сильно ниже, чем 5й этаж. Хотя бывают всякие…
по опыту использования даже неплохих навигаторов, могу сказать, что высоту они дают как то уж очень приблизительно.
Земля не круглая, а очень неправильной формы. Поэтому существуют национальные системы координат, а глобальная во-первых даёт одинаково плохую точность по всей планете, во вторых большинство систем вообще не учитывает высоту.
Посмотрите мой ответ на один комментарий выше. Мы сейчас о разных вещах говорим.
с уровнем земли всё сложно.
особенно в некоторых городах.
Какого рода сложности?
Не каждый день городах занимаются терраморфингом.
Можно один раз построить карту уровня земли для всего города, сильно повысив удобство и снизив затраты вычислительных ресурсов.
Такие карты уже существуют (с разной степенью покрытия), но в целом, для весьма универсальных решений, высота как раз и не требуется.
Страшно дорого.
Похоже я очень криво объяснил, но сам уровень нафиг не нужен. Просто у нас (у гугла) уже есть снимки с уровня поверхности (и не только). При сильном несовпадении высоты просто будет сложно сопоставить их с картинкой юзера.
Я боюсь у пользователей будет ракурс сильно отличаться от гугломобиля. В центре может ещё и можно поиграть, а фотка типовой серой многоэтажки в 200 метров мало что даст
Если там нет ничего, кроме 1 дома в 200 метрах, то проблем с gps быть не должно. Тут речь о плотной застройке, где ориентиров должно быть много. И даже по условию погрешность навигации меньше, чем 200м. Отличие ракурсов как раз и даст информацию о его положении. Понятно, что он будет снимать с тротуара, а не с середины дороги.
Ну вот вам плотная застройка, где ориентиров должно быть много. Для полноты эффекта, добавьте в текстуры снег.
Этот метод тут тоже не будет давать результатов, т.к. учесть переменное затухание в деревьях он не может. Ну и 3Д карты пятиэтажек вряд-ли скоро появятся.

А ориентиров на самом деле тут очень много. Любой человек, знакомый с этим местом моментально его узнает. Правда машине будет сложнее, особенно с сезонными изменениями.
С другой стороны ей потребуется не шерстить всю память, а перебрать только дворы в радиусе 50..100 метров от этой точки. Как минимум в таких пределах расположение разного типа деревьев (достаточно отличать тёмный ствол от светлого) и цвет балконов практически уникальны. Бонусом идёт малая вариативность снимков за счёт смены ракурса (если не снимать с газона тут особо некуда отойти).

На самом деле основная проблема тут будет ночью. Вот там всё очень сильно меняется. Если на крупных дорогах ориентиры более-менее опознаваемы и ночью, тут скорее всего будет нереально совершенно.

Ну и я не говорил, что метод универсален. Он лишь проще и текущее покрытие снимками больше. Понятно, что будут места, где от него толку не будет. Например китайские квадратно-гнездовые посёлки-клоны (которые и у нас встречаются уже довольно часто) или новостройки с длинными рядами одинаковых домов и полным отсутствием других ориентиров.
А ориентиров на самом деле тут очень много. Любой человек, знакомый с этим местом моментально его узнает.
На самом деле, соседний двор может быть точно таким же 1 в 1. Мелкие отличия по которым можно было бы ориентироваться — будут «компенсированы» месяющейся частью, разная листа, разное освещение, прошел дождь и лужи/грязь. снег и тд
В таких домах обычно стекление балконов (например) достаточно индивидуально и образует относительно уникальный паттерн. Плюс кондёры, деревья, мусорки, лавочки, клумбы и многие другие мелкие ориентиры. Именно человек очень вряд-ли сможет перепутать. Но да, гарантированной уникальности, естественно нет. Тут, как уже писал, основная проблема будет лето/осень/зима, т.к. листва очень много места в кадре занимает.
> Ну и я не говорил, что метод универсален.

Т.е. мы обсуждаем метод, который работает:
1) Днем
2) Летом
3) Не во дворах, спальных районах и промзонах
4) Если гугломобиль там проехал после последней покраски балконов
5) Если гугломобиль там вообще проехал

Ну, такое себе.

> достаточно отличать тёмный ствол от светлого

а «светлый» от «темного под солнышком, которое на него падает только при ветре 5м/с с 13:12 до 14:45».
4) Если гугломобиль там проехал после последней покраски балконов
5) Если гугломобиль там вообще проехал

Как на счёт наличия для таких мест 3Д карты города?
1 и 2 зависит от места.
3. промзоны (по крайней мере в наших краях) чертовски индивидуальны. Разве что найти длинную дорогу с глухим забором и без зданий по близости.
а «светлый» от «темного под солнышком,
Очень сложно осветить дерево так, чтобы весь ствол был равномерно освещён. Ещё сложнее встать так, чтобы получить такой кадр. Контрпример — в приведённом методе один припаркованный рядом грузовик может дать такое переотражение, что никакой анализ не поможет. Ну вот нет на 3д-карте этого грузовика… Всегда можно найти условия, в которых метод не сработает. Любой метод.
Ну, такое себе
Не панацея, да. Но на сколько он хуже предложенного в статье судить не берусь.
Мне кажется, при наличии достаточных вычислительных мощностей можно сделанные пользователями снимки учитывать для актуализации внешнего вида пространства. Т.е. если изменения происходят постепенно, а вызывают такси из этого места достаточно часто, проблемы у предложенного метода возникать не должно. А в перспективе можно и 3д модель по имеющимся фотографиям построить.
Это вряд-ли. Слишком отличается ракурс. И это бессмысленно т.к. панорамы сплошные, а тут будет мозайка одиночных снимков в разное время года/времени суток/погоды/трафика и т.д. которые не состыковать друг с другом никак.

А зачем им стыковать? Задача же в нахождении похожих, деталей, так? Найти похожие детали в снимках, сделанных примерно в одно и то же время, проще, чем при сравнении с Гугл партнерами сделанными год назад. Конечно, полноценную панораму из таких снимков не построить, но оно и не нужно. Снимки других пользователей вообще не нужно делать публично доступными, просто накапливать для внутреннего использования.


Ну а про 3д модели местности- мне кажется, это технически выполнимая задача. Сначала нейросетью выделить объекты на снимках, затем нейросетью же привести вид снимков к примерно одному времени года (была же где-то здесь статья про обработку снимков для превращения осени в лето). Потом составить примерную 3д модель из простейших геометрических форм, сопоставить со спутниковыми снимками. Ресурсоемко — да, требует разработки большого количество софта — да, технически возможно — тоже да.

*при сравнении с Гугл панорамами сделанными год назад.
Автозамена :(
Мелкие тут особо не нужны. Они как раз наоборот, будут мешать. Модель можно (в теории) более-мене составить и из обычной панорамы.
А в чём смысл сопоставления со спутником? Если мы сможем привязаться к панорамам, то координаты уже будут. Гугл же собирает и точные координаты каждой.
> Как на счёт наличия для таких мест 3Д карты города?

На сколько я знаю, обрисовывают фото со спутника.

> грузовик может дать такое переотражение, что никакой анализ не поможет.

Если посмотреть на фото, то понятно, что грузовик даст искажения порядка своего размера. Метра 3.

На сколько я знаю, обрисовывают фото со спутника
Нет. Лидаром с земли или самолёта. Сейчас, вроде, по фото с самолёта/коптера могут. Со спутника что-то пытались, но там такая жесть получается… Нужно несколько пролётов под разными углами и даже при этом разрешение снимков даёт лишь приблизительную выcоту.

С грузовиком пример неудачный по другой причине. Их система отслеживает перемещение человека и учтёт внезапный прыжок (та самая тепловая карта). Однако для статичного положения она и так может давать приличную погрешность (опять-таки см. карту)
Ну по фото с самолёта, не суть. Главное можно без и объезда машиной каждого куста обойтись.

Погрешность измерения и метод компенсации — разные вещи. Грузовик не даёт приличной погрешности. Её можно ещё уменьшать, но ради грузовика не очень то и нужно.

В идеале, конечно, каждый грузовик с точностью до сантиметра обмерить, но для задачи «подать такси к нужному подъезду» это излишне. Всё равно есть замечатальные дома, где даже с лидаром моделировать отражения и видимость спутников замучаешься, так что точности в полметра ждать не приходится.
Оба ваших пункта спорны:
1) иду по парку к дороге, вызываю такси.
2) сижу дома на 9 этаже вызываю такси, с учетом того как убер «быстро» едет смысла нет вызывать с уровня земли.
Так по этому они и допущения. Увы, в этих случаях толку будет 0. Но с 9м этажом и описываемый метод не справится, т.к. там тоже предполагается уровень грунта (на сколько я понял). 3Д модели парка у них тоже вряд-ли есть, так что и тут пролёт.
Спасибо за статью. Но укажите, пожалуйста, ссылку на оригинал. Это абсолютно точно перевод, потому что ни один русскоязычный человек в здравом уме не напишет «Сила сигналов спутников к спасению» :) Если это компиляция нескольких статей с вашими авторскими доработками, то оформлять именно как перевод не нужно, но я был бы благодарен за ссылки на источники.
Под заголовком висит плашка перевода и ссылка на оригинал. Это старая проблема хабра, что если не знаешь, где их искать, не найдёшь.
Ох. Спасибо! Давно не читал переводы. В курсе старой проблемы хабра, поэтому предварительно залез в футер, поглядел там, потом в хеадер, поглядел там в поисках старой иконки A->Z, или чего-то похожего, но не увидел. Вижу надпись «Перевод», но она так отдельно от всего, и особенно от, собственно, ссылки, что вообще является абсурдом, что даже сейчас, когда я знаю, где её искать, я и то секунды две шарю глазами по хеадеру статьи, пытаясь увидеть… Дичь)
GetJump, извините.
Давно не читал переводы

Значит, давно вы не читали Хабр)… Не считал, но довольно много статей — переводы. Хотя по-моему, в последние месяц-два количество переводов заметно снизилось.

Так и есть) может, года полтора или около того)

Я старался сделать текст более лёгким для восприятия русским человеком, но это сложно, если так же стараться донести некоторые исходные вещи.

Думаю если буду переводить в следующий раз, прибегну к пересказу.
Я старался сделать текст более лёгким для восприятия русским человеком

Более привычно видеть LoF, чем LOF.
Ну или ЗПВ (зона прямой видимости).

«Тепловая карта» как-то неправильно. Температурная? Как на счёт вариантов «Зона покрытия»?
«Тепловая карта», как раз это распространённый термин. Вы про LOS (Line of Sight)?
Про ЗПВ согласен, но это больше характеризует именно зону, нежели прямую.
Перевод — это и есть пересказ.
сначала бы усовершенствовали позиционирование на открытой местности, потом в городе… до сих пор машину с полосы в полосу кидает )

интересно, какой на самом деле % из теории применен на практике.
Огромный, даже за популярным картографическим софтом стоит очень большой теоретический пласт, в том числе и современный.

Проблемы на открытой местности связаны, как раз с описанными в статье вещами, так и помимо этого, с слабыми приёмниками в большинстве мобильных устройств. Скажем, последние разработки в области GPS, показывают точность порядка 40 сантиметров, что уже весьма и весьма неплохо. А если в свою очередь использовать методики Sensor Fusion, что с точки зрения современной инфраструктуры позволяет существенно уточнять геопозицию.
Добрый день.
А, что если разместить радиометки на всех точках пересечения плоскостей и тем самым дать электронным мозгам точную 3D картину нашего мира.
Всем беспилотным аппаратам и системам навигации станет намного легче, и не надо просчитывать сложные алгоритмы и тратить на это ресурсы.
Ориентироваться по ближайшим BSSID не проще? В городах, по которым постоянно ездят машины со своим приложением, можно собирать статистику. Назначать рейтинг «стабильности» или «доверия» точкам.
Внутри API Android, которое определяет геопозицию, есть функциональность, которая использует Wi-Fi для уточнения данных (Sensor Fusion) от GPS, помимо этого, если не изменяет память, там есть и возможность использования данных от базовых вышек.
Отвратительный перевод технически плохо написанная рекламной статьи. В итоге -полное непонимание, что же предлагается.

Что касается перевода — от одного слова «псевдодистанция» — начинает тошнить. Реально используется термин "псевдодальность", причем псевдодальности по ГОСТ Р 52928-2010 бывают кодовые и фазовые. Для фазовых чащей говорят «псевдофаза.»

Остальные претензии — к низкому качеству самой статьи.

  1. Непонятно, о каких приемниках речь: L1, L1/L2, L1, L5. На L1 многолучевость может дать ошибку кодовых измерений на одном спутнике до 75 метров, на L2 или L5 — до 7.5 метров.
  2. Непонятно, о каких системах речь — о получающих поправки через интернет или о неполучающих. Для систем с поправками через инет важнее высокоточные эфемериды и ионосферная коррекция. И лишь после них идет влияние многолучевости. Поэтому невозможно оценить ни влияние на точность, ни экономический эффект.
  3. 50 метров — это суммарная ошибка псевдодальности одного спутника. Она дает точность порядка 3 метров КВО-50 координат.
  4. Если у спутника плохое отношение сигнал-шум, то он и так идет в решение с пониженным коэффициентом корреляции (или вообще исключается из решения). То есть метод из статьи — это лишь добавочная навигация по спутникам, не идущим в решение или идущим с пониженным коэффициентом корреляции.
  5. Предложенный метод может дать результаты для Нью-Йорка, но малополезен для Питера. Потому что в Питере — дожди. И капля воды на одной стороне антенны = даст тот же результат. А антенна внутри салона — бесполезна для таких измерений, ибо больше всего снижает S/N крыша автомобиля.
  6. Непонятны экономические затраты на создание модели в сравнении с затратами на переход на двухчастотные приемники. Особенно с учетом того, что broadcom собирается в этом году выпустить дешевые двухчастотные чипы с точностью 30 см КВО-50
Отвратительный перевод технически плохо написанная рекламной статьи.

Пытался правильно расставить запятые, не получилось.

Что касается перевода — от одного слова «псевдодистанция» — начинает тошнить. Реально используется термин «псевдодальность», причем псевдодальности по ГОСТ Р 52928-2010 бывают кодовые и фазовые. Для фазовых чащей говорят «псевдофаза.»

Каюсь, никогда не изучал ГОСТЫ по данной тематике, да и не было потребности, а при подготовке статьи нашёл упоминание «псевдодистанция» в русскоязычной научной литературе, от чего и отталкивался.

Непонятно, о каких приемниках речь: L1, L1/L2, L1, L5. На L1 многолучевость может дать ошибку кодовых измерений на одном спутнике до 75 метров, на L2 или L5 — до 7.5 метров.

В статье практически с самого начала чётко ведётся речь о мобильных устройствах на платформе Android, в виду доступности API для взаимодействия с приёмником напрямую. По поводу конкретики не могу дать точного ответа, возможно вам стоит обратиться к авторам оригинальной статьи, но смею предположить что ответ будет разниться в зависимости от конкретного устройства.

Непонятно, о каких системах речь — о получающих поправки через интернет или о неполучающих. Для систем с поправками через инет важнее высокоточные эфемериды и ионосферная коррекция. И лишь после них идет влияние многолучевости. Поэтому невозможно оценить ни влияние на точность, ни экономический эффект.

Если я правильно вас понял, то вы ведёте речь о самом низком уровне, с которым как раз и взаимодействует система Android, и возможно прошивка самого приёмника. Я думаю здесь стоит обратиться к исходному коду Android, либо, как вариант к статьям посвященным реализации API на определённой версии Android.

50 метров — это суммарная ошибка псевдодальности одного спутника. Она дает точность порядка 3 метров КВО-50 координат.

Можете сослаться на подтверждённый источник в литературе? Смущает контекст: «суммарная ошибка» и «одного спутника».

Если у спутника плохое отношение сигнал-шум, то он и так идет в решение с пониженным коэффициентом корреляции (или вообще исключается из решения). То есть метод из статьи — это лишь добавочная навигация по спутникам, не идущим в решение или идущим с пониженным коэффициентом корреляции.

Как раз в статье утверждается, насколько я смог уловить, о том, что классический подход, в том числе и с пониженным коэффициентом работает плохо в условиях многоэтажек, а авторы предлагают подход с трёхмерными картами, которые увеличивают точность в этих условиях.

Предложенный метод может дать результаты для Нью-Йорка, но малополезен для Питера. Потому что в Питере — дожди. И капля воды на одной стороне антенны = даст тот же результат. А антенна внутри салона — бесполезна для таких измерений, ибо больше всего снижает S/N крыша автомобиля.

Это уже детали реализации, и в целом сторонняя проблема. Насчёт дождей, возможно, но есть мнение, что в данном случае большую ошибку внесёт именно облачность. Поправьте, если я не прав. Чаще всего, телефон монтируется на лобовое стекло, и приёмник имеет прямую видимость через него. Но да, по поводу крыши я с вами согласен.

Непонятны экономические затраты на создание модели в сравнении с затратами на переход на двухчастотные приемники. Особенно с учетом того, что broadcom собирается в этом году выпустить дешевые двухчастотные чипы с точностью 30 см КВО-50

Речь о покрытии существующих и новых пользователей приложения Uber и не только. Вы предлагаете отказаться от 100% существующих устройств и поддерживать только те, в которых будут установлены эти новые чипы Broadcom? Это не та область применения, где возможно взять и просто внедрить передовые хардварные решения. В массовый рынок, например телефонов, эти чипы будут приходить год — два, как это обычно и бывает.
при подготовке статьи нашёл упоминание «псевдодистанция» в русскоязычной научной литературе
Можно ссылочки? Если вы про статью от ААНИИ, то они под псевдодистанцией имеют ввиду расстояние между приемниками, измеренное при помощи GPS. Статья смешная, потому что люди использовали кодовые измерения вместо RTK из-за очень слабого знакомства с технологией. Но спасибо за наводку на возможного заказчика наших приборов.

но смею предположить что ответ будет разниться в зависимости от конкретного устройства.
Зря смеете. Андроиды — это дерьмовейшие чипы, только L1 без внешней коррекции. В лучшем случае — будет сырая псевдодальность и псведофаза. В худшем — только координаты.

Можете сослаться на подтверждённый источник в литературе? Смущает контекст: «суммарная ошибка» и «одного спутника»
Уже давал вам ссылку на вики с бюджетом ошибок, ссылка на пруф там есть. Если интересно подробнее — то скачиваете учебники по GPS и читаете. А что вас смущает? СКО суммарной ошибки псевдодальности считаются как корень из суммы квадратов СКО конкретных ошибок. КВО-99 — это 3 СКО. Так что из приведенных в Вики 13 метров СКО суммарной ошибки получается ± 40 метров КВО-99. Сейчас СКО ошибки бортовых эфемерид поменьше, чем в вики, зато у них в бюджете побольше СКО многолучевости. Кстати, margin of error — это КВО-99, то есть 3 СКО.

есть мнение, что в данном случае большую ошибку внесёт именно облачность. Поправьте, если я не прав.
Не правы. Облачность влияет слабо, ибо в тропофсере и так полно воды, из-за ненудевой влажности воздуха. Намного важнее длина пути через тропосферу — для спутников над головой это 10км, а а для спутников «сбоку» — больше. Так что даже в геодезии тропосферная модель считается на основе температуры и относительной влажности воздуха.

Чаще всего, телефон монтируется на лобовое стекло, и приёмник имеет прямую видимость через него.
Откуда же прямая видимость? Если монтировать на лобовое, то весь задний сегмент будет экранирован крышей. Мы, например, для высокоточки (5-7мм СКО) монтируем антенны прямо на крышу.

Старое видео с испытаний, антенки на крыше вполне видны



Вы предлагаете отказаться от 100% существующих устройств и поддерживать только те, в которых будут установлены эти новые чипы Broadcom?
Да, это дешевле. Давайте посчитаем.

Замена железа. На тысячу машин по 250 долларов (15 труб) за навигатор — 250 тысяч долларов.

Разработка серверного софта. На разработку теории расчета и серверной части — 1 год. Зарплата на руки — 10 тысяч долларов (2-5 разработчиков). Общие затраты (налоги, помещение, оборудование) — обычно в 3 раза выше нетто зарплаты, то есть 30 тысяч долларов месяц. Всего за год — 360 тысяч долларов.

Разработка клиентского софта (для андроида). 5 тысяч долларов на руки, 15 тысяч долларов, в месяц общих затрат, 6 месяцев разработки. Всего — 90 тысяч долларов.

Топографические измерения. Вот тут очень зависит от того, удастся ли купить готовую 3D-модель города. Одна бригада топографов стоит порядка 3 тысяч долларов по зарплате, то есть 9 тысяч долларов по общим расходам. За месяц они могут отснять примерно 5 зданий. Итого 1 800 долларов на здание. При тысяче зданий — 1.8 миллионов долларов на топосъемку.

Вы предлагаете отказаться от 100% существующих устройств
Это не я предлагаю, это авторы статьи предлагают. Цитата:

мы разработали апгрейд для программного обеспечения GPS на Android, что существенно улучшило точность определяемой позиции в городском окружении посредством клиент-серверной архитектуры, которая использует 3D карты и проводит сложные вероятностные вычисления на GPS данных доступных через Android GNSS API.

Беда в том, что упомянутый Android GNSS API, да ещё с нужными опциями — это всего лишь пяток брендовых устройств. Разница лишь в том, что их можно купить сейчас, а не через год.

Если я правильно вас понял, то вы ведёте речь о самом низком уровне, с которым как раз и взаимодействует система Android, и возможно прошивка самого приёмника.
Похоже, что они получают сырые псевдодальности через API и ведут расчеты сами. Если они анализируют только S/N — это не даст хорошего результата.

Как раз в статье утверждается, насколько я смог уловить, о том, что классический подход, в том числе и с пониженным коэффициентом работает плохо в условиях многоэтажек
А это как раз и означает собственный механизм расчета координат с RAIM на основе трехмерной карты.

P.S. В США и Японии работает QZSS, прилично улучшающая точность. Но андроиды её пока что не принимают.
Вы уверены что заменить смартфоны всем клиентам убера получится дешевле? Там же не тысяча машин а миллионы клиентов с смартфонами, которых необходимо найти и подобрать. Ну и не все согласятся поменять свой смартфон на смартфон с навигатором от убера.
Менять смартфоны и так и так придется — нужные опции Android GNSS API пока поддерживает лишь пяток моделей.

Только это не для клиентов сделано. Клиент все равно выбирает точку на карте. Это для водительского навигатора важно — привести водителя в нужную точку. Ну и для автовождения, если они с какого-то перепугу решили его на андроиде сделать.
Это, кстати, интересное замечание — API для получения SNR до конкретного спутника было уже в Android API level 3, и
в статье используется именно SNR. developer.android.com/reference/android/location/GpsSatellite

Есть ощущение, что GNSS API делалось в частности для того, чтобы не отдавать позицию, полученную по Beidou, чем-то системным с названием «GPS».
Нет, дело не в beidou, а в том, что сдвигается граница между полупрофессиональными приемниками и бытовыми. Раньше выдавать фазу могли только приемники за 500 долларов, потом появился NV-08CSM за 200 долларов, потом — GEOS-3MR за 20 долларов, а сейчас это уже могут приемники в некоторых мобильниках.

Никогда не испытывал проблем с GPS… пока не попал в Нью-Йорк. Но там кроме навигации ещё проблема с траффиком — 4 мили ехать час это занадто. Так что можно и по бумажной карте :)

Как-то слишком жестко. Чтобы избежать такого надо не брать такси в Манхеттене и из/в Бруклин. Все остальные дороги почти всегда зеленые или желтые.

Избежать такого было невозможно — ехали на машине по делам из другого штата. Всего ~1200 миль, конечный пункт — отель в Квинсе… но что бы туда добраться надо проехать Манхэттен. А приехали мы около 5 вечера в будний день. И вот когда хочется побыстрее вылезти из машины и размяться, такая подлянка с траффиком.
Тогда ясно.
Сам хотел бы найти карту с пробками по годам.

Подождите, люди что, не глядя на карту вызывают такси к точке, где их нашел убер? Там же специально можно точку встречи подвинуть куда удобно.

Видимо, точное позиционирование нужно не только для указания точки посадки. На нее могут быть завязаны многие функции сервиса. Навскидку: расчет стоимости поездки по расстоянию. Если у вас координата от GPS мечется в радиусе 50м, то очевидно вы точно не посчитаете пройденный путь. Также очевидно, что сервису хочется точно, знать где в каждый момент времени находится каждый таксист. Прокладка маршрута также часть системы и требует точного местоположения.
Это для беспилотников важно. Uber — один из разработчиков беспилотных такси.

Видимо, не всегда. По опыту уже понял что надо ставить точку как можно дальше от зданий куда-нибудь на парковку. Водители просто отказываются понимать куда ехать даже им навигатор прямо показывает точку в 10 метрах.

Что только ни придумают лишь бы не встраивать инерциальную навигацию в телефоны...

А что она, простите, даст? Нормальная БИНС, держащая 15 минут с СКО 1 метр стоит 200К рублей. А то, что есть в мобильниках — держит с нужной точностью всего пару минут.

Не буду утверждать, но по наличию даже барометра, участвующего в навигации, в современных телефонах, могу предположить, что некая степень комплексирования используется, по крайней мере в iOS, но, как уже написал Jef239, МЭМС БИНС хватит разве что понять что вы куда-то там пошли, с примерной скоростью.


P.S. Интересно стало, какой уход у датчиков у современных телефонов, никто не тестировал?

Интересно стало, какой уход у датчиков у современных телефонов, никто не тестировал?
Уход?
Всмысле, отклонение или погрешность?

При это только у Uber машина скачет по экрану, ездит по крышам домов и по воде… ни Yandex.Taxi, ни навигаторы на Google Maps, поверх которых построено приложение Uber, такую дичь себе не позволяют.


Ну и Яндекс научился справляться даже не то что с отраженными сигналами, но и с "кремлевскими глушилками", которые делали вид, что центр Москвы это аэропорт Внуково. Всегда очень точно показывает местоположение. Догоняй, Uber!)

Подтверждаю, скачет ещё как. Забавный был случай: отменил поездку и вызвал снова. Вызвался тот же водитель и сразу его позиция переместилась на несколько километров. Такое надо фиксить, конечно.

По статье сложилось впечатление, что на улицах ездят только uber, мобильники людям нужны для заказа такси, спутники GPS нужны только Uber'у. И навигацию на android тоже придумали uber.
И вместо того, чтобы спрашивать у пользователя, с какой стороны лучше подъехать, давайте лучше сделаем 3D-карты самого популярного города Сан-Франциско, будем перебирать варианты точек на кластере серверов, и подавать машину на 1 минуту быстрее.
Я бы не сел в такую машину с предсказанием реальной позиции по теням зданий. Этот труд в продакшн не пойдет, я надеюсь.
Пора бы уже HD ГЛОНАСС. А там и hd карты подтянутся, а обновлять их будут автономные автомобили. Все упирается в точные координаты. Или нет?
Что необходимо чтобы у юзера на земле в любом утюге была точность 20 см?
Что необходимо чтобы у юзера на земле в любом утюге была точность 20 см?
Проще тогда проще проставить радиомаяки на каждом здании выше 5 этажей, и научить приложения корректно их обрабатывать.
Хотя я с трудом понимаю для чего простому пользователю может понадобиться точность выше 1-2м.
Точность — это всегда хорошо! Подготовить инфраструктуру для автономных авто.
HD аннотированные карты с треками полос и перекрестков плюс глобальное позиционирование с сантиметровой точностью — разве не прелесть?

Не то что бы я не верю в силу нейронных сетей и лидаров всяких, но мне будет спокойнее, если электоводятел будет точно знать свои координаты и на карте тоже, а не мчать туда, куда он классифицировал как научили. Это как еще один слой данных, авто теперь железно знает где асфальт, какая полоса, а перекресток уже расчерчен — а-ля по рельсам.

image

Не то что бы я не верю в силу нейронных сетей и лидаров всяких, но мне будет спокойнее, если электоводятел будет точно знать свои координаты и на карте тоже, а не мчать туда, куда он классифицировал как научили
А я вот, что-то начинаю сомневаться.
Если электронный водятел, всего лишь такой же как человек, только быстрее и меньше устает, но всё так же может ошибиться из-за плохого нанесения разметки.
То я за прокладывание в асфальт спец.меток, просто у нас ведь разметки по полгода может не быть, то снег, то грязь, но не нанесли. Альтернативный вариант, так сказать.
ИМХО, довольно надуманная проблема и очень странное решение.

Всю статью можно свести — с помощью машинного обучения и какой-то там эвристики пытаемся увеличить точность. А как — ну технических деталей тут минимум. Как будут обучать все это дело вообще не понятно, ибо спутников много и они постоянно в разных частях неба, поэтому понять какое здание какую «тень» дает — очень проблематично. Для меня не понятно как будет реагировать зоопарк трубок на одну и ту же «тень».

По ВиФи гораздо проще обучиться — у них сигнал более стабильный для одной точки на местности. Собственно точность которую дает Гугл по ВиФи это подтверждает.

Развитие не стоит на месте, если 10 лет назад был фактически только GPS, то сейчас уже и Глонасс и Бейдоу работоспособны. Актутальные навигационные решения — мультисистемны.

Я в городах с небоскребами как Нью-Йорке не был, но в Мск проблем нет. Точность очень высокая, речь почти всегда идет о считанных метрах — ну это если трубка нормальная. Хотя все актуальное не смотря на уменьшение антенн дает очень хорошую точность. Я не про гарантированную какую-то, а реально получаемую.

ИТОГО: овчинка выделки не стоит, а решение вообще ИМХО вряд ли реализуемое.

ЗЫ: картинки с 4-мя сферами всегда улыбают… ну напишите просто — 4 неизвестных (время прибора + координаты в 3Д) — поэтому надо 4 уравнения для однозначного решения. 1 спутник — одно уравнение. А со сферами — бредово выглядит, когда их 4.
но в Мск проблем нет. Точность очень высокая, речь почти всегда идет о считанных метрах — ну это если трубка нормальная


А как именно вы определяете, что точность высокая?

Запускаю Яндекс карты и смотрю на ориентиры.

Не знаю как где, а в Мск на спутнике люди на карте видны — т.е. «понятно» с натяжкой а иногда и точно, что это человек — достаточно на людные места посмотреть. Поэтому по карте местоположение можно определить с метровой точностью. Тут накладывается конечно еще погрешность привязки карты — но если карта говорит, что я стою около зебры у края тротуара и я в реале стою около зебры у края тротуара — то я делаю вывод, что всего скорее точность идет на метр-два-три-четыре.

А вообще сам приемник может же точность выдавать всего скорее некую эвристическую.

Не знаю как оно делается, но очевидно, что если спутников больше чем четыре, то точного решения положения может и не быть. 4-ре уравнения, 4-ре неизвестных — все неплохо. А вот если уравнений 4+, то для реальных данных почти всегда будет обломс.

Скажем можно выбирать из N уравнений подмножества в 4 шт, решать их — получится множество решений. Усреднить и получить более вероятное положение, а по разбросу определить точность по 3 сигма какой-нить. Но это так… я к примеру сказал, как это может быть. Ошибка может быть систематическая какая-нибудь… например скорость света будет ниже или выше предполагаемой — тогда надо какие-нить WAAS, EGNOS использовать.
Зарегистрируйтесь на Хабре , чтобы оставить комментарий

Публикации

Истории