Измерение расстояния между двумя устройствами iOS - PullRequest
5 голосов
/ 08 декабря 2010

Да, мне сейчас интересно об этом. В моем случае устройства будут располагаться на расстоянии 50–10 м друг от друга, и я бы хотел, чтобы они были с точностью не менее 10 см. (Поэтому GPS не вариант)

2 способа приходить на ум:

Звук: я спрашивал об этом на форумах разработчиков, и я нахожусь в контакте с laanlabs, о коде их сонарной линейки .

Изображение на одном устройстве + камера на другом: настройка проще, так как в моем случае пользователь в любом случае сталкивается с одним устройством под углом 90 градусов. Но для пользователя было бы больше работы повернуть камеру в этом направлении, и она не отреагировала бы на изменение расстояния.

Теперь вопрос: кто-нибудь знает какой-нибудь код, который уже делает что-то подобное? Возможно, не-iPhone общий c-Project?

Ответы [ 3 ]

3 голосов
/ 11 мая 2011

Метод с камерой: мы уже знаем размер для каждого устройства.Вы делаете снимок устройства, вычисляете его высоту / ширину, чтобы определить тип устройства (iPhone / iPod или iPad), а затем вычисляете расстояние.

Например - если устройство iPhone, вы знаете, что его размер115x58 мм.На картинке это NxM пикселей.Теперь вы можете рассчитать расстояние.(Если N & M меньше, значит расстояние больше)

3 голосов
/ 11 мая 2011

Если бы вы использовали метод звука, один из подходов состоял бы в том, чтобы устройство A излучало звук, устройство B будет постоянно прослушивать это и при обнаружении эха.обратно вторичный звук.Это дало бы вам время в оба конца, из которого вы могли бы рассчитать расстояние - не забудьте также компенсировать задержку между переизлучением при обнаружении.

0 голосов
/ 11 мая 2011

Я не уверен, но это то, что я нашел в одном из ответов на предыдущий вопрос SO Как измерить расстояние между двумя устройствами iphone с помощью Bluetooth?

Использование bluetooth для локализации - очень известная область исследований. Короткий ответ: вы не можете. Уровень сигнала не является хорошим показателем расстояния между двумя подключенными устройствами Bluetooth, потому что он слишком сильно зависит от состояния окружающей среды (есть ли человек между устройствами? Как владелец держит его / ее устройство? Есть ли стена? Есть ли радиочастотные отражающие поверхности?). Используя Bluetooth, вы в лучшем случае можете получить разрешение на расстоянии в несколько метров, но вы не можете рассчитать направление, даже приблизительно.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...