clear,clc;
% [filename,pathname] = uigetfile('*.avi','choose the video name:');%选择视频
video = VideoReader('traffic.avi');
height = video.Height;
width = video.Width;
%参数
NumFrames = video.NumberOfFrames;
cardinality = 2;%基数
r = 15;%给定半径
n = 20;
%
%初始化
bg = zeros(height,width,n);
for nn = 1 : n
imrgb = read(video,nn);
imgray = rgb2gray(imrgb);
bg(:,:,nn) = imgray;
end
bgpad = padarray(bg,[1 1],'replicate');
%随机跟新
for f = n+1 : NumFrames
imageRGB = read(video,f);
image = rgb2gray(imageRGB);
for i = 1:height
for j = 1:width
div = abs(bg(i,j,:) - double(image(i,j)));
logic = div < r;
bignum = sum(logic);
if bignum > cardinality
% 随机选择初始化背景中的一个点用新点进行替换
% rnum = rand(n,1);
% maxnum = find(rnum == max(rnum));
randz = randi(n);
%bg(i,j,int8(rand(1)*n)) = image(i,j);
bgpad(i+1,j+1,randz) = image(i,j);
% 随机改变(i,j)邻域
randy = randi([-1 1]);
randx = randi([-1 1]);
bgpad(i+1+randy,j+1+randx,randz) = image(i,j);
%
end
end
end
randbg = randi(n);
out = bgpad(2:height+1,2:width+1,randbg);
figure(1),imshow(out,[]);
drawnow;
end
finalbg = mean(bgpad(2:height+1,2:width+1),3);
figure(2),imshow(finalbg,[]);
drawnow;
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
【达摩老生出品,必属精品,亲测校正,质量保证】 资源名:用matlab实现的vibe算法前景目标捕捉_vibe_前景目标捕捉_matlab 资源类型:matlab项目全套源码 源码说明: 全部项目源码都是经过测试校正后百分百成功运行的,如果您下载后不能运行可联系我进行指导或者更换。 适合人群:新手及有一定经验的开发人员
资源推荐
资源详情
资源评论
收起资源包目录
用matlab实现的vibe算法前景目标捕捉_vibe_前景目标捕捉_matlab.rar (3个子文件)
Matlab实现无约束条件下普列姆(Prim)算法.docx 14KB
vibe.m 1KB
traffic.avi 204KB
共 3 条
- 1
资源评论
阿里matlab建模师
- 粉丝: 3643
- 资源: 2807
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功