图像处理 背景减法.docx

上传人:b****5 文档编号:7944351 上传时间:2023-01-27 格式:DOCX 页数:11 大小:2.07MB
下载 相关 举报
图像处理 背景减法.docx_第1页
第1页 / 共11页
图像处理 背景减法.docx_第2页
第2页 / 共11页
图像处理 背景减法.docx_第3页
第3页 / 共11页
图像处理 背景减法.docx_第4页
第4页 / 共11页
图像处理 背景减法.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

图像处理 背景减法.docx

《图像处理 背景减法.docx》由会员分享,可在线阅读,更多相关《图像处理 背景减法.docx(11页珍藏版)》请在冰豆网上搜索。

图像处理 背景减法.docx

图像处理背景减法

数字图像处理报告

 

姓名:

cugycy

学院:

机械与电子信息学院

班级:

071112-13

指导老师:

傅华明

摘要

研究目标:

本文主要研究在背景维持不变的环境下,对运动目标检测。

在固定空间场中获得的运动目标的运动的一系列图像称为运动图像。

我们主要研究的是在一个固定场景中,目标对象位置发生变化的情况。

采用方法:

为了分析在固定场景中目标的运动变化,首先考虑到在一系列的运动图像序列中,空间场的位置、灰度变化是非常微小的,基本上可以认为是固定不变的;而运动对象却在空间位置上发生了明显的改变,所以我们可以用背景减法来研究这一情况。

背景减法通过逐像素比较与背景图像的差别,在背景基本不变的条件下,在差图像的不为零处表明该处出现运动目标,通过求差的方法就可以将运动目标的位置和形状表现出来。

在实际情况中,由于镜头的物理抖动造成的图像的移动,旋转,以及光线明暗的变化,所造成的图像背景改变,从而难以与背景图做差形成清晰,无噪声的差分图像。

完成以下编程:

为了减小误差影响,增强图像质量,在认为无镜头的旋转,先后移动情况影响下,只考虑镜头产生了上下平移变化,用相关匹配在其他图像中寻找与模板(图像1部分)最相似的子块,并剪切其他图像使其他图像与图像1的背景一致。

在不考虑处理的实时情况下,同时图像的数量较少(5张),运动目标在多幅图像叠加中不会有重叠部分,采用去除最大最小值后求均值法求得背景图像。

将图像与背景图像做差值处理,采用二维自适应维纳滤波对差值图形滤波减小噪声影响。

将滤波后差值图,设定阈值进行二值化,同时采用形态学的腐蚀膨胀,使二值图像中目标轮廓边缘更加平滑,减小图像内部空隙,符合实际目标。

取得成果:

由此我们的得到了五幅二值目标图像。

通过图像位置的比较明显看到人从右到左的运动,图像的间距看出运动的距离也是不一样的,图像的大小看出距离镜头的距离也是不一样的。

未解决问题:

没能考虑镜头旋转带来的图像背景移动,从而使差值图像噪声减小更多,同时背景图像的生成不够准确,影响差值图像的质量。

未能采用更为合适的滤波,减小噪声。

图像的二值化的阈值选取,不能基于图像自身的的数据自动随之改变。

未对二值图像进行滤波,去除小的噪声点。

未对二值图像和原图像进行更进一步的匹配。

未采用彩色图像处理。

 

详细报告:

以图像1的部分为模板在其他图像中匹配相似的位置,从而适当剪裁其他图像使背景尽可能一致。

模板

匹配

最佳匹配处

原图与剪裁图

通过图像直观分析,发现多幅图像上的运动目标没有位置重合,从而可以采用去除图像相同位置数据中的最大值和最小值,然后取均值的方法获得背景图像。

背景图

 

将图像与背景图做差值计算,获得图像差图。

差值图像

 

采用二维自适应维纳滤波对差值图形滤波减小噪声影响。

将滤波后差值图,设定阈值进行二值化,同时采用形态学的腐蚀膨胀,使二值图像中目标轮廓边缘更加平滑,减小图像内部空隙,符合实际目标。

 

 

其他工作:

不同滤波效果中,纳维滤波的能更好的保留目标的轮廓信息,噪点可采用形态学处理去除噪点。

不同滤波效果

 

源代码:

clc

clearall

%---------------------------------------------------------------------

%批量获取文件

%---------------------------------------------------------------------

file=dir('G:

\study\大四上\数字图像处理\m4\p6-0*.bmp')%列出当前目录下符合正则表达式的文件夹和文件数据结构

forn=1:

length(file)%获取以名字为命名的图片数据

tmp=rgb2gray(imread(['G:

\study\大四上\数字图像处理\m4\',file(n).name]));

str_a1=[file(n).name(1:

end-8),file(n).name(end-4),'=tmp;'];

eval(str_a1);

end

%--------------------------------------------------------------------------

%通过匹配返回坐标,保存到ppn中

%用相关匹配在图像a中寻找与模板c最相似的子块,给出代码和相关系数图

%--------------------------------------------------------------------------

forn=2:

length(file)%获取以名字为命名的图片数据

b=p1;

a=eval(['p',num2str(n),';']);

c=b(30:

230,30:

630);

%imshow(c);

g=dftcorr(a,c);

gs=gscale(g);

%figure,imshow(gs);

[I,J]=find(g==max(g(:

)));

%figure,imshow(gs>254);

%figure,imshow(b),title(['灰度'num2str(i)])

d=a(I:

I+400,J:

J+600);

eval(['pp',num2str(n),'=d;']);%获取图像的相对位置

end

pp1=p1(30:

430,30:

630);

%--------------------------------------------------------------------------

%通过五幅图进行取去最大最小后,平均值作为被背景图层

%--------------------------------------------------------------------------

forn=1:

5

eval(['pp_5(n,:

:

)=pp',num2str(n),';']);%获取图像的相对位置

end

pp_max=max(pp_5);%最大

pp_max1(:

:

)=pp_max(1,:

:

);

pp_max1=pp_max1;

pp_min=min(pp_5);%最小

pp_min1(:

:

)=pp_min(1,:

:

);

pp_min1=pp_min1;

pp_sum=uint16(pp1)+uint16(pp2)+uint16(pp3)+uint16(pp4)+uint16(pp5);%和

pp_sum=uint8((pp_sum-uint16(pp_min1)-uint16(pp_max1))/3);%去大去小取均值为背景图

%--------------------------------------------------------------------------

%背景减法运算二维自适应维纳滤波二值化

%--------------------------------------------------------------------------

forn=1:

5

figure,

eval(['temp=pp',num2str(n),';']);%获取图像的相对位置

z=imabsdiff(temp,pp_sum);%取绝对值两个图像之差

J=z;

K1=z;

K2=medfilt2(J);%采用二维中值滤波函数medfilt2对受椒盐噪声干扰的图像滤波

K3=wiener2(J,[99]);%对加噪图像进行二维自适应维纳滤波

K4=filter2(fspecial('average',9),J)/255;%模板尺寸为9

cs=0.15;

K1=im2bw(K1,cs);%二值化

K2=im2bw(K2,cs);%二值化

K3=im2bw(K3,cs);%二值化

K4=im2bw(K4,cs);%二值化

subplot(2,2,1),

imshow(eval(['pp',num2str(n),]));title(['原图像'num2str(n)])

%————-————腐蚀开运算——————

foc=imclose(K3,strel('square',10));

subplot(2,2,2),

imshow(z);title('差值图像');

f=foc;

se=strel('square',2);

fo=imopen(f,se);

subplot(2,2,3),

imshow(K4);title('二值化');

%————-————腐蚀运算——————

f=fo;

se=strel('disk',2);

fo=imopen(f,se);

subplot(2,2,4),

imshow(fo);title('形态学处理');

end

 

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 农林牧渔 > 林学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1