2010-12-08 95 views
5

是的,我現在正在想這個。 在我的使用情況下,這些設備將相距50釐米到10米,我希望它至少精確到10釐米。 (因此GPS是不是一種選擇)測量兩個iOS設備之間的距離

2種方式映入腦海:

聲音:我問了一下這個在開發論壇,我與laanlabs接觸,他們sonar ruler的代碼。

一個設備上的圖片+另一個設備上的攝像頭:似乎更容易設置,因爲我的用戶案例涉及到用戶面對90度的一個設備。但是,面對這個方向,用戶面對更多的工作,它不會對距離發生變化做出反應。

現在的問題:是否有人知道任何代碼已經做了這樣的事情?可能是一個非iPhone普通c-Project?

+2

是的,但是如果可能的話,我寧願用聲音來做,因爲用戶不必在正確的方向上面對卡​​羅。遠程設備將永遠是一臺iPad,因爲iPhone的顯示器只是爲了達到我的目的。輸入設備可以是iPhone或iPad,無論如何它都是通用的。 – Bersaelor 2010-12-08 20:06:04

+0

除非您確切知道播放聲音的時間,否則無法在兩臺iOS設備之間使用聲音。 – 2011-02-23 17:32:42

+0

你想達到太高的準確度。這不是測量點之間的距離。設備是具有自己尺寸的真實世界對象。它的長度約爲10釐米(適用於iPhone/iPod)。什麼點的設備應該是測量的起點? @Kim Burgess提出了一個好方法,但這一切都取決於麥克風的位置。現在它是35釐米,但如果你旋轉設備 - 45釐米。一切都取決於起點 – 5hrp 2011-05-11 09:01:41

回答

3

帶相機的方法:我們已經知道每個設備的尺寸。拍攝設備圖片,計算其高度/寬度以確定設備類型(iPhone/iPod或iPad),然後計算距離。

例如 - 如果設備是iPhone,您知道它的尺寸爲115x58毫米。在圖片上它NxM像素。現在你可以計算距離。 (如果N & M因此距離較遠)

3

如果您使用的聲音的方法的一種方法是將有設備A發出聲音,設備B將隨後被在任何時候,在檢測到偵聽此回顯次聲音。這會給你一個往返時間,從中你可以計算距離 - 不要忘記補償檢測重新發射之間的延遲。

0

我不知道,但這是我從在此之前的其中一個答案發現SO質疑How to measure distance between two iphone devices using bluetooth?

使用藍牙對於本地化是一個非常著名的研究領域。簡短的回答是:你不能。信號強度不是兩個連接的藍牙設備之間距離的良好指標,因爲它受環境條件影響太大(設備之間是否有人?設備持有人如何拿着設備?是否有牆壁?是有沒有射頻反射面?)。使用藍牙,您最多可以獲得幾米的距離分辨率,但您無法計算方向,甚至不能粗略計算。

通過使用多個藍牙設備並對各種信號強度進行三角測量,您可能會獲得更好的結果,但即使在這種情況下,在您的估算中,也很難準確得出幾米。