最近專案用到了kalman濾波器,由於是.net平台的,原來的opencv的那套東西不能用了,還好靈光乍現,開源就是好啊!
花了乙個小時將cvkalman用c#進行實現,解決了!
using system;
using system.collections.generic;
using system.text;
namespace simtransfer
//temp1 = new matrix(dp, dp);
temp2 = new matrix(mp, dp);
te*** = new matrix(mp, mp);
temp4 = new matrix(mp, dp);
temp5 = new matrix(mp, 1);
}public matrix predict()
temp1 = transition_matrix.multiply(error_cov_post);
matrix at = transition_matrix.transpose();
error_cov_pre = temp1.multiply(at).add(process_noise_cov);
matrix result = new matrix(state_pre);
return result;
}public matrix correct(matrix measurement)
public matrix autopredict(matrix measurement)
}#endregion
public kalmanfacade(int valueitem)
kmfilter = new kalmanfilter[valueitem];
random rand = new random(1001);
for (int i = 0; i < valueitem; i++ )
}private kalmanfilter kmfilter = null;
public bool getvalue(double invalue, ref double outvalue)
matrix measures = new matrix[kmfilter.length];
for (int i = 0; i < kmfilter.length; i++ )
return true;}}
}//**********test**********===
simtransfer.kalmanfacade kalman = new simtransfer.kalmanfacade(1);
random rand = new random(1001);
system.io.streamwriter datafile = new system.io.streamwriter("d://test.csv");
for (int x = 0; x < 2000; x++ )
datafile.close();
messagebox.show("ok!");
基於Python的FIR濾波器
import numpy as np from scipy.fftpack import fft from scipy import signal import matplotlib.pyplot as plt from matplotlib.pylab import mpl mpl.rcparam...
論高通濾波器,帶阻濾波器,陷波濾波器
首先,對一副影象進行如下二維傅利葉變換。我們將u 0和v 0帶上式,我們可以得到如下式子。根據上式,可以到f 0,0 的值是非常大的。這裡,我們將 f 0,0 稱為直流分量,直流分量比其他的成分要大好幾個數量級。所以,這也就是傅利葉譜為什麼需要使用對數變換才能看清楚的原因。這裡,對於高通濾波器而言,...
FIR濾波器與IIR濾波器
有限長單位衝激響應濾波器,又稱為非遞迴型濾波器 特點 fir濾波器的最主要的特點是沒有反饋迴路,穩定性強,故不存在不穩定的問題 fir具有嚴格的線性相位,幅度特性隨意設定的同時,保證精確的線性相位 fir設計方式是線性的,硬體容易實現 fir相對iir濾波器而言,相同效能指標時,階次較高,對cpu的...