2012-12-31 159 views
0

我正在創建一個android phonegap應用程序,用於檢測路面不規則情況,如坑洞和減速帶。我依靠手機通過phonegap提供的加速度計值,並將使用這些值進行一些處理。低/高通濾波器

但是,由於值很粗糙,我想使用某種過濾來平滑值。我知道有低通濾波器和高通濾波器。但他們之間有什麼區別?在我的應用中如何使用一個而不是另一個會影響值的平滑性和可靠性?

+0

這不是你的問題的答案,但加速度計不檢測手機的平面表面/方向內的變化... – BLOB

+1

是你在尋找的信息不是在http://en.wikipedia.org/wiki/Low-pass_filter和http://en.wikipedia.org/wiki/High-pass_filter? – Pete

+1

如果您不知道像高/低通濾波器這樣的信號處理基本概念,您將如何分析您的數據以查找這些違規情況?例如,你打算如何區分正在啓動的汽車電機的道路不平整? –

回答

1

說出這可能有點容易,但直接的解釋是低通濾波器允許低頻和拒絕/降低高頻,反之亦然。

平滑通常包括拒絕高頻分量。您可能能夠使一對夫婦的簡單的技術進步:

  1. 簡單移動平均(簡單平均最近ñ樣本)。

  2. 指數移動平均線(y[n] = alpha * y[n-1] + (1 - alpha) * x[n])。

參見例如, http://en.wikipedia.org/wiki/Moving_average欲瞭解更多信息。

選擇的值Nalpha參數需要應用程序特定的調整。

但是,正確的濾波器設計是一門複雜的科學/藝術。例如,拒絕高頻分量可能會削弱您檢測「真實」事件(如坑洞)的能力(它們也會被平滑掉)。您可能會開始需要複雜的非線性技術,如閾值處理。但這是整本書的主題!