資源簡介
實現了基于混合高斯模型的運動目標檢測,并針對經典模型對突發運動和光線突變響應速... u關鍵詞t背景減除法;混合高斯模型:預處理;運動目標檢測:陰影抑制

代碼片段和文件信息
clear?all
close?all
clc
%?-----------------------?使用第一幀獲取圖片大小?-----------------------
addpath(‘./data‘);
img_dir?=?dir(‘./data/*.bmp‘);
fr?=?imread(img_dir(220).name);???????????%?讀第一幅圖片
fr_bw?=?rgb2gray(fr);????????????%?灰度變換
[height?width]?=?size(fr_bw);?
fg?=?zeros(height?width);
bg_bw?=?zeros(height?width);
%?-----------------------?變量初始化?-----------------------------------
C?=?4;???????????????????????%?組成混合高斯模型的單高斯數目
M?=?4;???????????????????????%?組成背景的數目
D?=?2.5;?????????????????????%?閥值(一般為2.5個標準差)
alpha?=?0.005;???????????????%?學習速率(一般為0到1)
thresh?=?0.75;???????????????%?前景閥值(0.25到0.47)
sd_init?=?6;?????????????????%?初始化標準差
update_rate?=?alpha*C;???????%?參數學習速率
rank?=?zeros(1C);???????????%?優先權
w?=?zeros(heightwidthC);???%?初始化權值數組,預先分配內存
mean?=?zeros(heightwidthC);?????%?像素均值,預先分配內存
pixel_sd?=?zeros(heightwidthC);?%?像素標準差,先分配內存
u_diff?=?zeros(heightwidthC);????%?當前像素與均值的差
B?=?0;??????????????????????????????????%?權值累加值
%?-------------------------初始化均值和權值----------------------------
pixel_depth?=?8;????????????????????????%??像素深度為8位
pixel_range?=?2^pixel_depth?-?1;?????????%??灰度范圍
for?i?=?1:height
????for?j?=?1:width
????????for?k?=?1:C
????????????mean(ijk)?=?pixel_range?*?rand();?????%均值???
????????????w(ijk)?=?1/C;???????????????????????
????????????pixel_sd(i?j?k)?=?sd_init;??%標準差????????????????
????????????
????????end
????end
end
%---------------------?處理每一幀?-----------------------------------
??figure()
%for?n?=?1:numel(img_dir)
for?n?=?220:265
????
????fr?=?imread(img_dir(n).name);???????
????fr_bw?=?rgb2gray(fr);????????
????
????%?計算每個像素與均值差
????for?m?=?1:C
????????u_diff(::m)?=?abs(double(fr_bw)?-?double(mean(::m)));
????end
?????
???%?對于相應條件,更新參數
????for?i=1:height
????????for?j=1:width?
????????????
????????????weight?=?w(ij:);
????????????match?=?0;
????????????match_index?=?0;???????%設置匹配模型的位置
????????????
????????????for?k?=?1:C???????????????????????
????????????????if?(abs(u_diff(ijk))?<=?D*pixel_sd(ijk)?)???????%滿足條件?
????????????????????match?=?1;??????????????????????????
????????????????????
????????????????????%?更新均值、標準差等
????????????????????w(ijk)?=?(1-alpha)*w(ijk)?+?alpha;
????????????????????p?=?alpha/w(ijk);??????????????????
????????????????????mean(ijk)?=?(1-p)*mean(ijk)?+?p*double(fr_bw(ij));
????????????????????pixel_sd(ijk)?=sqrt((1-p)*(pixel_sd(ijk)^2)?+?p*((double(fr_bw(ij))?-?mean(ijk)))^2);
????????????????else?????????????????????????????????????
????????????????????w(ijk)?=?(1-alpha)*w(ijk);??????
????????????????end
????????????end??
????????????
????????????bg_bw(ij)=0;???%背景看做各個分量的加權平均
????????????for?k=1:C
????????????????bg_bw(ij)?=?bg_bw(ij)+?mean(ijk)*w(ijk);
????????????end
????????????
????????????%?沒有一個分量滿足當前像素,創建一個新的分量
????????????if?(match?==?0)
????????????????[min_w?min_w_index]?=?min(w(ij:));??
????????????????mean(ijmin_w_index)?
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????目錄???????????0??2020-02-05?18:34??實現了基于混合高斯模型的背景減除,在matlab下運行\
?????文件????????5766??2015-11-09?18:23??實現了基于混合高斯模型的背景減除,在matlab下運行\run.m
- 上一篇:太陽能電池板 simuli
nk模型matlab.zip - 下一篇:MMC仿真.7z
評論
共有 條評論