电脑桌面
添加小米粒文库到电脑桌面
安装后可以在桌面快捷访问

图像处理中的标记分水岭分割算法VIP免费

图像处理中的标记分水岭分割算法_第1页
图像处理中的标记分水岭分割算法_第2页
图像处理中的标记分水岭分割算法_第3页
图像处理中的标记分水岭分割算法如果图像中的目标物体是连接在一起的,则分割起来会更困难,分水岭分割算法经常用于处理这类问题,通常会取得比较好的效果。分水岭分割算法把图像看成一幅“地形图”,其中亮度比较强的区域像素值较大,而比较暗的区域像素值较小,通过寻找“汇水盆地”和“分水岭界限”,对图像进行分割。直接应用分水岭分割算法的效果往往并不好,如果在图像中对前景对象和背景对象进行标注区别,再应用分水岭算法会取得较好的分割效果。有很多图像处理工具箱函数可以用到,如fspecial、imfilter、watershed、lable2rgb、imopen、imclose、imreconstruct、imcomplement、imregionalmax、bwareaopen、graythresh、和imimposemin函数等。下面进行一个例子,步骤如下。1、读取图像并求其边界,代码如下。rgb=imread('pears.png');%读取原图像I=rgb2gray(rgb);%转化为灰度图像figure;subplot(121)%显示灰度图像imshow(I)text(732,501,'ImagecourtesyofCorel',...'FontSize',7,'HorizontalAlignment','right')hy=fspecial('sobel');%sobel算子hx=hy';Iy=imfilter(double(I),hy,'replicate');%滤波求Y方向边缘Ix=imfilter(double(I),hx,'replicate');%滤波求X方向边缘gradmag=sqrt(Ix.^2+Iy.^2);%求模subplot(122);imshow(gradmag,[]),%显示梯度title('Gradientmagnitude(gradmag)')在这一步骤中,首先读取一套真彩色图像,然后把真色图像转化为灰度图像,结果如图所示:ImagecourtesyofCorelGradientmagnitude(gradmag)图1原图和梯度图像使用sobel边缘算子对图像进行水平和垂直方向的滤波,然后求取模值,sobel算子滤波后的图像在边缘处会显示比较大的值,在没有边界处的值会很小,如上图右图所示。2、直接使用梯度模值进行分水岭算法,代码如下。L=watershed(gradmag);%直接应用分水岭算法Lrgb=label2rgb(L);%转化为彩色图像figure;imshow(Lrgb),%显示分割后的图像title('Watershedtransformofgradientmagnitude(Lrgb)')直接使用梯度模值图像进行分水岭算法得到的结果往往会存在过度分割的现象,如下图所示。因此通常需要对前景对象和背景对象进行标记,以获得更好的分割效果。Watershedtransformofgradientmagnitude(Lrgb)图2直接对梯度图像进行分水岭分割3、分别对前景和背景进行标记,代码如下。se=strel('disk',20);%圆形结构元素Io=imopen(I,se);%形态学开操作figure;subplot(121)imshow(Io),%显示执行开操作后的图像title('Opening(Io)')Ie=imerode(I,se);%对图像进行腐蚀Iobr=imreconstruct(Ie,I);%形态学重建subplot(122);imshow(Iobr),%显示重建后的图像title('Opening-by-reconstruction(Iobr)')Ioc=imclose(Io,se);%形态学关操作figure;subplot(121)imshow(Ioc),%显示关操作后的图像title('Opening-closing(Ioc)')Iobrd=imdilate(Iobr,se);%对图像进行膨胀Iobrcbr=imreconstruct(imcomplement(Iobrd),...imcomplement(Iobr));%形态学重建Iobrcbr=imcomplement(Iobrcbr);%图像求反subplot(122);imshow(Iobrcbr),%显示重建求反后的图像title('Opening-closingbyreconstruction(Iobrcbr)')fgm=imregionalmax(Iobrcbr);%局部极大值figure;imshow(fgm),%显示重建后局部极大值图像title('Regionalmaximaofopening-closingbyreconstruction(fgm)')I2=I;I2(fgm)=255;%局部极大值处像素设置为255figure;imshow(I2),%在原图上显示极大值区域title('Regionalmaximasuperimposedonoriginalimage(I2)')se2=strel(ones(5,5));%结构元素fgm2=imclose(fgm,se2);%关操作fgm3=imerode(fgm2,se2);%腐蚀fgm4=bwareaopen(fgm3,20);%开操作I3=I;I3(fgm4)=255;%前景处设置为255figure;subplot(121)imshow(I3)%显示修改后的极大值区域title('Modifiedregionalmaxima')bw=im2bw(Iobrcbr,graythresh(Iobrcbr));%转化为二值图像subplot(122);imshow(bw),%显示二值图像title('Thresholdedopening-closingbyreconstruction')可以使用很多算法来对前景对象进行标记,标记的每个对象内部的像素值是连接在一起的。在这个例子中,使用形态学重建技术对前景对象进行标记,首先使用imopen函数对...

1、当您付费下载文档后,您只拥有了使用权限,并不意味着购买了版权,文档只能用于自身使用,不得用于其他商业用途(如 [转卖]进行直接盈利或[编辑后售卖]进行间接盈利)。
2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。
3、如文档内容存在违规,或者侵犯商业秘密、侵犯著作权等,请点击“违规举报”。

碎片内容

文章天下+ 关注
实名认证
内容提供者

各种文档应有尽有

确认删除?
VIP
微信客服
  • 扫码咨询
会员Q群
  • 会员专属群点击这里加入QQ群
客服邮箱
回到顶部