资源简介
基于MATLAB的运动目标检测算法,背景差分法。其中包含已处理图像和代码,更改路径后可以直接运行。也可以使用用自己的视频文件,但是记得先把视频文件处理成图像序列。
代码片段和文件信息
clear
clc
nStar = 1;
nNUM = 164;
Background = double( rgb2gray(imread( [ ‘car (‘int2str(nStar)‘).bmp‘]) ));%第一帧当做初始背景
% 背景更新过程其中int2str将整型常量转为字符串
for k = nStar+1 :1: nNUM
CurrentImage =double(rgb2gray(imread( [ ‘car (‘int2str(k)‘).bmp‘] ))); % 当前帧
FormerImage =double(rgb2gray(imread( [ ‘car (‘int2str(k-1)‘).bmp‘] ))); % 前一帧
ID =uint8(abs( CurrentImage - FormerImage )); % 帧间差分
% 选择阈值
T=yuzhi(ID); %迭代法计算二值化阈值,比较耗时
BW = IMBIARIZE(IDT/255);
% 更新背景
alpha = 0.1; %背景更新的速度
CurrentBack = Background.*BW + ( alpha.* CurrentImage + ( 1-alpha ).* Background ).*( 1 -BW );%前后两帧有变化的区域不更新,无变化的区域更新到背景中去
Background = CurrentBack;%背景更新完毕
Cut=abs(CurrentImage-Background);%前景与背景差分
Cut=uint8(Cut);
Tcut=yuzhi(Cut);%迭代法计算二值化阈值,比较耗时
BWCut=imbimarize(CutTcut/255);%差分后的图像进行二值化
SE=[1 1 1;1 1 1;1 1 1];%结构元素
BWCutero=imerode(BWCutSE);%对二值图像进行腐蚀,以消除微小变动的区域
BWCuterodil = bwmorph(BWCutero‘dilate‘3);%膨胀
figure(1)imshow(BWCuterodil)title(‘差分后的二值化图像‘)
figure(2)imshow(imread( [ ‘car (‘int2str(k)‘).bmp‘] ))
[Lnm] = bwlabel(BWCuterodil8);%找出图像中的八连通区域,视为车辆所在的区域
for i = 1:nm
[rc] = find(L == i);
left= min(c);
right= max(c);
top= min(r);
buttom= max(r);
width=right - left + 1;
height = buttom - top + 1;
rectangle(‘Position‘[lefttopwidthheight]‘EdgeColor‘‘r‘);%对车辆用矩形标记
pause(0.01);
end
end
%用来计算灰度图像二值化时的阈值,采用迭代法
function m=yuzhi(Imgray)
mingray=min(min(Imgray));
maxgray=max(max(Imgray));
m=double(mingray)/2+double(maxgray)/2; %初始分割阈值
while 1
a=find(Imgray<=m);
A=sum(Imgray(a))/length(a);
b=find(Imgray>m);
B=sum(Imgray(b))/length(b);
n=(A+B)/2;
if abs(m-n)<1
break;
else
m=n;
end
end
end
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 17316 2018-03-15 16:20 毕设\MATLAB运动目标检测代码.docx
文件 2048 2018-04-10 09:03 毕设\Unti
..A..H. 162 2018-03-19 21:12 毕设\~$报告-电信1404傅瑾茹.doc
.....H. 138240 2018-03-19 21:06 毕设\~WRL3779.tmp
文件 556277 2018-04-01 16:38 毕设\基于DSP的运动目标检测系统_高文刚.caj
文件 274625 2018-03-19 22:04 毕设\基于Matlab实时运动目标跟踪检测系统.pdf
文件 1554370 2018-04-01 16:37 毕设\基于Matlab实时运动目标跟踪检测系统_汪惠兰.caj
文件 716800 2018-03-15 16:21 毕设\基于MATLAB的运动物体轨迹跟踪--毕业论文.doc
文件 2894848 2018-03-15 16:19 毕设\基于matlab的运动目标检测.doc
文件 548739 2018-03-15 16:25 毕设\基于MATLAB的运动目标检测和识别技术研究-郗华.pdf
文件 213668 2018-04-01 16:37 毕设\基于MATLAB的运动行人检测算法的研究_栾国庆.caj
文件 2076187 2018-04-01 16:38 毕设\基于混合高斯模型与五帧差分的运动目标检测算法_李战明.caj
文件 8304545 2018-04-01 16:37 毕设\基于视觉的运动目标检测与跟踪算法的研究与实现_李晓晓.caj
文件 115200 2018-03-23 13:30 毕设\开题报告-电信1404傅瑾茹.doc
文件 612352 2018-03-19 22:01 毕设\运动目标检测.doc
文件 330614 2018-04-01 16:37 毕设\运动目标检测与跟踪_魏洪峰.caj
文件 1588170 2018-04-01 16:37 毕设\运动目标检测跟踪技术研究及DSP实现_马宁.caj
目录 0 2018-04-10 09:26 毕设
----------- --------- ---------- ----- ----
19944161 18
- 上一篇:matlab常用代码大全科研神器
- 下一篇:HHT变换的三种方法+Matlab程序
评论
共有 条评论