資源簡(jiǎn)介
meanshift和粒子濾波的目標(biāo)跟蹤的相關(guān)代碼。

代碼片段和文件信息
/*??
??基于彩色直方圖和Kalman濾波的視頻跟蹤算法
??Version?0.9
??Written?by?Y.?B.?Mao
??Visual?Information?Processing?and?Analysis?Group?(ViPAG)?
??Nanjing?University?of?Sci.?&?Tech.
??www.open-image.org
??Feb.?9?2006
??All?rights?reserved.
??Kalman濾波算法的詳細(xì)描述,參見:
??[1]?徐士良.?C常用算法程序集.?清華大學(xué)出版社.?1994.
??Mean?shift跟蹤算法的詳細(xì)描述,請(qǐng)參見:
??[1]?D.?Comaniciu?V.?Ramesh?P.?Meer.?Real-time?tracking?of?non-rigid
??objects?using?mean?shift.?Proc.?Conf.?Vision?Pattern?Rec.?II:?142-149?
??Hilton?Head?SC?June?2000.
??[2]?Dorin?Comaniciu?Visvanathan?Ramesh?Peter?Meer.?Kernel-based?object
??tracking.?IEEE?Trans.?on?Pattern?Analysis?and?Machine?Intelligence.?
??Vol.25?No.?5?2003?pp.?554-577.
??[3]?Huimin?QIAN?Yaobin?MAO?Jason?GENG?Zhiquan?WANG.?object?tracking?with?
??self-updating?tracking?window.?PAISI‘2007.
??本代碼只可用于非商業(yè)用途。如使用本代碼請(qǐng)?jiān)谡撐闹袠?biāo)注上述三篇參考文獻(xiàn)。
*/
#?include?
#?include?
#?include?
#?include?“MeanShift_KL.h“
/*
??用全選主元Gauss-Jordan法求n階實(shí)矩陣A的逆矩陣A^{-1}
??輸入?yún)?shù):
??double?*?a:?????原矩陣,為一個(gè)方陣
??int?n:??????????矩陣維數(shù)
??輸出參數(shù):
??double?*?a:?????求得的逆矩陣
??返回值:
??如果返回標(biāo)記為0,表示矩陣奇異;否則返回非0值
*/
int?brinv(?double?*?a?int?n?)
{?
int?*?is?*?js?i?j?k?l?u?v;
double?dp;
is?=?(int?*)malloc(?n*sizeof(int)?);
js?=?(int?*)malloc(?n*sizeof(int)?);
for?(?k?=?0;?k? {?
d?=?0.0;
for?(?i?=?k;?i? for?(?j?=?k;?j? {?
l?=?i*n+j;
p?=?fabs(a[l]);
if?(?p?>?d?)?
{?
d?=?p;?is[k]?=?i;?js[k]?=?j;
}
}
if?(?d+1.0?==?1.0?)?/*?矩陣為奇異陣?*/
{?
free(?is?);?
free(?js?);?
//?printf(“err**not?inv\n“);
return(?0?);
}
if?(?is[k]?!=?k?)
for?(?j?=?0;?j? {?
u?=?k*n+j;
v?=?is[k]*n+j;
p?=?a[u];?a[u]?=?a[v];?a[v]?=?p;
}
if?(?js[k]?!=?k?)
for?(?i?=?0;?i? {?
u?=?i*n+k;
v?=?i*n+js[k];
p?=?a[u];?a[u]?=?a[v];?a[v]?=?p;
}
l?=?k*n+k;
a[l]?=?1.0/a[l];
for?(?j?=?0;?j? if?(?j?!=?k?)
{?
u?=?k*n+j;
a[u]?=?a[u]*a[l];
}
for?(?i?=?0;?i? if?(?i?!=?k?)
for?(?j?=?0;?j? if?(?j?!=?k?)
{?
u?=?i*n+j;
a[u]?=?a[u]?-?a[i*n+k]*a[k*n+j];
}
for?(?i?=?0;?i? if?(?i?!=?k?)
{?
u?=?i*n+k;
a[u]?=?-a[u]*a[l];
}
}
for?(?k?=?n-1;?k?>=?0;?k--?)
{?
if?(?js[k]?!=?k?)
for?(?j?=?0;?j?<=?n-1;?j++?)
{?
u?=?k*n+j;
v?=?js[k]*n+j;
p?=?a[u];?a[u]?=?a[v];?a[v]?=?p;
}
if?(?is[k]?!=?k?)
for?(?i?=?0;?i? {?
u?=?i*n+k;
v?=?i*n+is[k];
p?=?a[u];?a[u]?=?a[v];?a[v]?=?p;
}
}
free(?is?);
free(?js?);
return(1);
}
/*
??一步Kalman濾波程序
??對(duì)n維線性動(dòng)態(tài)系統(tǒng)與m維線性觀測(cè)系統(tǒng)
???X_k?=?A_kk-1*X_k-1?+?W_k-1
???Y_k?=?H_k*X_k?+?V_k
??k?=?12...
??X_k為n維狀態(tài)向量,Y_k為m維觀測(cè)向量。
??A_kk-1(nxn維)為狀態(tài)轉(zhuǎn)移陣,H_k(nxm維)為觀測(cè)矩陣
??W_k為n維狀態(tài)噪聲向量,一般假設(shè)為高斯白噪聲,且均值為0,協(xié)方差為Q_k
??V_k為m維觀測(cè)噪聲向量,一般假設(shè)為高斯白噪聲,且均值為0,協(xié)方差為R_k
??Kalman濾波問題就是在已知k個(gè)觀測(cè)向量Y_0Y_1
?屬性????????????大小?????日期????時(shí)間???名稱
-----------?---------??----------?-----??----
?????文件??????23392??2008-06-04?12:15??VideoTrack_code\MSTracking\MeanShift_KL.cpp
?????文件???????2663??2008-06-04?12:17??VideoTrack_code\MSTracking\MeanShift_KL.h
?????文件???????1653??2008-06-04?16:08??VideoTrack_code\MSTracking\readme.txt
?????目錄??????????0??2008-06-04?17:23??VideoTrack_code\MSTracking\release
?????文件???????4410??2008-06-04?15:46??VideoTrack_code\MSTracking\SamplGrabberProcessor.cpp
?????文件???????1185??2008-06-04?15:46??VideoTrack_code\MSTracking\SamplGrabberProcessor.h
?????文件??????10453??2008-06-04?16:08??VideoTrack_code\MSTracking\TrackingMS.cpp
?????文件???????3899??2008-06-04?15:48??VideoTrack_code\MSTracking\TrackingMS.dsp
?????文件????????543??2006-02-13?23:26??VideoTrack_code\MSTracking\TrackingMS.dsw
?????文件??????58368??2008-06-04?16:08??VideoTrack_code\MSTracking\TrackingMS.ncb
?????文件??????49664??2008-06-04?16:08??VideoTrack_code\MSTracking\TrackingMS.opt
?????文件???????1645??2008-06-04?16:08??VideoTrack_code\MSTracking\TrackingMS.plg
?????目錄??????????0??2008-06-04?16:39??VideoTrack_code\MSTracking
?????文件??????24615??2008-06-04?16:57??VideoTrack_code\ParticleTracking\ParticleTracking.cpp
?????文件???????2641??2008-06-04?16:56??VideoTrack_code\ParticleTracking\ParticleTracking.h
?????文件???????1554??2008-06-04?16:53??VideoTrack_code\ParticleTracking\readme.txt
?????目錄??????????0??2008-06-04?17:31??VideoTrack_code\ParticleTracking\Release
?????文件???????4641??2008-06-04?16:57??VideoTrack_code\ParticleTracking\SamplGrabberProcessor.cpp
?????文件???????1541??2008-06-04?16:57??VideoTrack_code\ParticleTracking\SamplGrabberProcessor.h
?????文件??????10734??2008-06-04?16:57??VideoTrack_code\ParticleTracking\Tracker_Particle.cpp
?????文件???????3969??2006-02-14?12:24??VideoTrack_code\ParticleTracking\Tracker_Particle.dsp
?????文件????????555??2006-02-14?12:24??VideoTrack_code\ParticleTracking\Tracker_Particle.dsw
?????文件??????66560??2008-06-04?16:57??VideoTrack_code\ParticleTracking\Tracker_Particle.ncb
?????文件??????50688??2008-06-04?16:57??VideoTrack_code\ParticleTracking\Tracker_Particle.opt
?????文件???????1894??2008-06-04?16:57??VideoTrack_code\ParticleTracking\Tracker_Particle.plg
?????目錄??????????0??2008-06-04?17:15??VideoTrack_code\ParticleTracking
?????文件????1746620??2008-06-04?11:57??VideoTrack_code\test.avi
?????目錄??????????0??2008-06-04?17:31??VideoTrack_code
-----------?---------??----------?-----??----
??????????????2074105????????????????????29
............此處省略2個(gè)文件信息
評(píng)論
共有 條評(píng)論