在初學均值漂移演算法的時候,有個總體印象,就是演算法希望通過尋找密度最大的位置作為收斂位置,用白話講,其實就是要找乙個區域內的重心而已,這個重心為什麼不是區域的所有粒子的平均呢?因為每個粒子還帶個權重,這個權重我們用物理力學中的重心公式想想就明白,權重代表每個粒子對重心的貢獻程度,那麼,做個最極端的近似,當所有粒子的權重都是1,那麼這時候重心剛剛好就是所有粒子的平均值,現在加個權重,用pazen窗來進行加權,pazen窗最大的特點就是概率值隨著距離變化而變化,換句話說就是當乙個粒子xi離我關心的x點距離遠的話,這個權小些,就這樣,我們把原先的平均值變成了加權平均,這就是meanshift的本質,一言概括之,meanshift就是以pazen窗加了權後的加權平均,直到找到重心的位置不變了,就停止迭代,其實就是求重心的過程。
在初學過程中,我一直很納悶,乙個影象中,所有畫素不都是均勻分布的嗎?哪來的某個位置粒子最密呢?這是大誤解,我們在影象分割中應用meanshift演算法,其實不是以畫素的位置密度作為密度衡量的,而是以直方圖來作為研究物件,將某個區域內頻率最高的某個區間定義為密度最大,那麼,如果我以半徑為2來找乙個區域,只要通過meanshift演算法把這個區域中密度最大的那個灰度作為這個區域的代表,就實現了影象分割。
關於meanshift演算法在目標跟蹤中的應用,一開始受到meanshift影象分割應用的干擾,沒理解如何通過meanshift進行跟蹤的,其實關鍵問題還在於這個密度怎麼定義的,不再是灰度直方圖中概率來衡量密度了,如果這種想法是對的,那麼跟蹤必然失效,因為你要跟蹤的物體不見得就是整個圖中灰度最大的,而且跟蹤的目標更多情況下是存在很多種灰度的,用影象分割那套方法,你只能跟蹤到灰度最大位置,這不是我們想要的,那麼怎麼跟蹤目標呢?我們需要目標的特徵,什麼特徵最直觀呢?目標區域的目標灰度分布!需要再引入巴氏相似度,用於衡量跟蹤區域的灰度分布和目標灰度分布直接的相似度,顯然,最理想的情況就是這個讓跟蹤收斂的區域和目標區域的灰度分布一致,所以,在目標跟蹤中是否跟蹤上目標是以跟蹤區域灰度直方圖分布和目標區域灰度直方圖的相似度來衡量的。
目標跟蹤方法 Mean Shift 演算法
一 概述 mean shift,即均值向量偏移,該理論是一種無引數密度估計演算法,最早由 fukunaga 等人於1975年提出。cheng等人對基本的 mean shift 演算法進行了改進,一方面將核函式引入均值偏移向量,使得隨著樣本與被偏移點的距離不同,對應的偏移量對均值偏移向量的貢獻也不同 ...
目標跟蹤 Meanshift演算法 均值漂移演算法
傳統的meanshift演算法在跟蹤中有幾個優勢 1 演算法計算量不大,在目標區域已知的情況下完全可以做到實時跟蹤 2 採用核函式直方圖模型,對邊緣遮擋 目標旋轉 變形和背景運動不敏感。1 缺乏必要的模板更新 2 跟蹤過程中由於視窗寬度大小保持不變,當目標尺度有所變化時,跟蹤就會失敗 3 當目標速度...
meanShift演算法用於目標跟蹤的優缺點
meanshift meanshift 向量使得演算法收斂於目標的真實位置,從而達到跟蹤的目的。傳統的meanshift 演算法在跟蹤中有幾個優勢 1 演算法計算量不大,在目標區域已知的情況下完全可以做到實時跟蹤 2 採用核函式直方圖模型,對邊緣遮擋 目標旋轉 變形和背景運動不敏感。同時,means...