• 大小: 1.42MB
    文件类型: .rar
    金币: 1
    下载: 0 次
    发布日期: 2023-08-28
  • 语言: Matlab
  • 标签:

资源简介

混合高斯背景建模,MATLAB,用的是背景差分和实时背景更新

资源截图

代码片段和文件信息

I=imread(‘1bmpfile.bmp‘);               % 读入第一帧作为背景帧
fr_bw = I;     
[heightwidth] = size(fr_bw);           %求每帧图像大小
fg = zeros(height width);              %定义前景和背景矩阵
bg_bw = zeros(height width);


C = 3;                                  % 单高斯模型的个数(通常为3-5)
M = 3;                                  % 代表背景的模型个数
D = 2.5;                                % 偏差阈值
alpha = 0.01;                           % 学习率
thresh = 0.25;                          % 前景阈值
sd_init = 15;                            % 初始化标准差
w = zeros(heightwidthC);              % 初始化权重矩阵
mean = zeros(heightwidthC);           % 像素均值
sd = zeros(heightwidthC);             % 像素标准差
u_diff = zeros(heightwidthC);         % 像素与某个高斯模型均值的绝对距离
p = alpha/(1/C);                        % 初始化p变量,用来更新均值和标准差
rank = zeros(1C);                      %各个高斯分布的优先级(w/sd)




pixel_depth = 8;                        % 每个像素8bit分辨率
pixel_range = 2^pixel_depth -1;         % 像素值范围[0255]

for i=1:height
    for j=1:width
        for k=1:C
            
            mean(ijk) = rand*pixel_range;     %初始化第k个高斯分布的均值
            w(ijk) = 1/C;                     % 初始化第k个高斯分布的权重
            sd(ijk) = sd_init;                % 初始化第k个高斯分布的标准差
            
        end
    end
end


frame_num=23;%帧数
for n = 1:frame_num
    frame=strcat(num2str(n)‘bmpfile.bmp‘);
    I1=imread(frame);  % 依次读入各帧图像
    fr_bw =I1;       
    
    % 计算新像素与第m个高斯模型均值的绝对距离
    for m=1:C
        u_diff(::m) = abs(double(fr_bw) - double(mean(::m)));
    end
     
    % 更新高斯模型的参数
    for i=1:height
        for j=1:width
            
            match = 0;                                       %匹配标记;
            for k=1:C                       
                if (abs(u_diff(ijk)) <= D*sd(ijk))       % 像素与第k个高斯模型匹配
                    
                    match = 1;                               %将匹配标记置为1
                    
                    % 更新权重、均值、标准差、p
                    w(ijk) = (1-alpha)*w(ijk) + alpha;
                    p = alpha/w(ijk);                  
                    mean(ijk) = (1-p)*mean(ijk) + p*double(fr_bw(ij));
                    sd(ijk) =   sqrt((1-p)*(sd(ijk)^2) + p*((double(fr_bw(ij)) - mean(ijk)))^2);
                else                                         % 像素与第k个高斯模型不匹配
                    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) = double(fr_bw(ij));%初始化均值为当前观测像素的均值
                sd(ijmin_w_index) = sd_init;             %初始化标准差为6
                end

            rank = w(ij:)./sd(ij:);   

 属性            大小     日期    时间   名称
----------- ---------  ---------- -----  ----

     文件      87478  2004-06-24 11:53  混合高斯背景建模\10bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\11bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\12bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\13bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\14bmpfile.bmp

     文件      87478  2004-06-24 11:54  混合高斯背景建模\15bmpfile.bmp

     文件      87478  2004-06-24 11:54  混合高斯背景建模\16bmpfile.bmp

     文件      87478  2004-06-24 11:54  混合高斯背景建模\17bmpfile.bmp

     文件      87478  2004-06-24 11:54  混合高斯背景建模\18bmpfile.bmp

     文件      87478  2004-06-24 11:54  混合高斯背景建模\19bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\1bmpfile.bmp

     文件      87478  2004-06-24 11:54  混合高斯背景建模\20bmpfile.bmp

     文件      87478  2004-06-24 11:54  混合高斯背景建模\21bmpfile.bmp

     文件      87478  2004-06-24 11:54  混合高斯背景建模\22bmpfile.bmp

     文件      87478  2004-06-24 11:54  混合高斯背景建模\23bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\2bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\3bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\4bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\5bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\6bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\7bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\8bmpfile.bmp

     文件      87478  2004-06-24 11:53  混合高斯背景建模\9bmpfile.bmp

     文件      87478  2011-10-10 23:44  混合高斯背景建模\FG.bmp

     文件       4560  2011-10-10 23:53  混合高斯背景建模\gaussians.asv

     文件       4205  2011-10-12 12:33  混合高斯背景建模\gaussians.m

     文件      87294  2011-09-14 20:10  混合高斯背景建模\gau_pic23.jpg

     目录          0  2012-05-18 08:59  混合高斯背景建模

----------- ---------  ---------- -----  ----

              2195531                    28

............此处省略1个文件信息

评论

共有 条评论