用MATLAB怎么对局部图像处理然后合成呢?
我想用MATLAB对图像局部滤波,然后把滤波后的图像再合并成一个完整的图像,然后二值化,程序应该怎么写呢?实际情况如图所示:b=a(10:100,20:120);这我懂,...
我想用MATLAB对图像局部滤波,然后把滤波后的图像再合并成一个完整的图像,然后二值化,程序应该怎么写呢? 实际情况如图所示:
b=a(10:100,20:120);这我懂,但是你这个程序是把图中的一个圈的图像滤波,那还有另一个圈的滤波呢啊?怎么把他两个都整到一幅图上去呢? 能给一个完整的程序吗?尤其是最后显示图像那部分程序~ 就是a(10:100,20:120)=c%读回
这部能写具体点吗? 展开
b=a(10:100,20:120);这我懂,但是你这个程序是把图中的一个圈的图像滤波,那还有另一个圈的滤波呢啊?怎么把他两个都整到一幅图上去呢? 能给一个完整的程序吗?尤其是最后显示图像那部分程序~ 就是a(10:100,20:120)=c%读回
这部能写具体点吗? 展开
3个回答
展开全部
把1楼的程序用2次,就实现了2次子区域滤波。
a=imread('待分割滤波处理图片.图片格式');
gaussianFilter=fspecial('gaussian',[7,7],5); %设置滤波器
%读出a中待滤波区域1: 10:100,20:120分别为y,x的区间,
b=a(10:100,20:120);
c=imfilter(b,gaussianFilter,'symmetric','conv')%滤波
a(10:100,20:120)=c; %读回
%读出a中待滤波区域2:10:100,120:220分别为y,x的区间,
b=a(10:100,120:220);
c=imfilter(b,gaussianFilter,'symmetric','conv'); %滤波
a(10:100,120:220)=c; %读回
%二值化,假设阈值为150
d=find(I<150);
I(d)=0;
d=find(I>=150);
I(d)=255;
a=imread('待分割滤波处理图片.图片格式');
gaussianFilter=fspecial('gaussian',[7,7],5); %设置滤波器
%读出a中待滤波区域1: 10:100,20:120分别为y,x的区间,
b=a(10:100,20:120);
c=imfilter(b,gaussianFilter,'symmetric','conv')%滤波
a(10:100,20:120)=c; %读回
%读出a中待滤波区域2:10:100,120:220分别为y,x的区间,
b=a(10:100,120:220);
c=imfilter(b,gaussianFilter,'symmetric','conv'); %滤波
a(10:100,120:220)=c; %读回
%二值化,假设阈值为150
d=find(I<150);
I(d)=0;
d=find(I>=150);
I(d)=255;
展开全部
a=imread('待分割滤波处理图片.图片格式');
b=a(10:100,20:120);%读出a中待滤波区域,10:100,20:120分别为x,y的区间,
gaussianFilter=fspecial('gaussian',[7,7],5)%设置滤波器
c=imfilter(b,gaussianFilter,'symmetric','conv')%滤波
a(10:100,20:120)=c%读回
d=find(c<150);
I(c)=0;
d=find(I>=150);
I(c)=255; %二值,假设阈值为150.
b=a(10:100,20:120);%读出a中待滤波区域,10:100,20:120分别为x,y的区间,
gaussianFilter=fspecial('gaussian',[7,7],5)%设置滤波器
c=imfilter(b,gaussianFilter,'symmetric','conv')%滤波
a(10:100,20:120)=c%读回
d=find(c<150);
I(c)=0;
d=find(I>=150);
I(c)=255; %二值,假设阈值为150.
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |