欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

MATLAB图像函数 块和邻域的处理

发布时间:2025/4/16 编程问答 31 豆豆
生活随笔 收集整理的这篇文章主要介绍了 MATLAB图像函数 块和邻域的处理 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

1、Poly2mask-----------------------------------------------------将感兴趣的区域转换成掩膜

bw=poly2mask(x,y,m,n)-------------讲一个ROI多边形转黄成二值图像的掩膜区域,向量x y分别表示ROI多边形个顶点x y的坐标,m n为掩膜的区域、

<span style="font-size:18px;">x=[4 10 10 4 4]; y=[4 4 10 10 4]; mask=poly2mask(x,y,12,12); </span>
在图像中建立个掩膜、

<span style="font-size:18px;">x=[63 186 54 190 63]; y=[60 60 209 204 60]; bw=poly2mask(x,y,256.256); imshsow(bw); plot(x,y,'r',‘LineWidth','2); </span>
随机产生渔区计算掩膜

<span style="font-size:18px;">x=256*rand(1,4); y=256*rand(1,4); x(end+1)=x(1); y(end+1)=y(1); bw=poly2mask(x,y,256,256); imshow(bw); hold on plot(x,y,'r','LineWidth',2); hold off</span>
2、roicolor------------------------------------------------------------------根据颜色选择感兴趣的区域

bw=roicolor(A,low,high)  -----------------按指定的颜色范围(low high)选择ROI,返回图像中这个区域的图像

<span style="font-size:18px;">I=imread('lena.jpg'); bw=roicolor(I,128,255); imshow(I); figure; imshow(bw); </span>
3、roifill-------------------------------------------------------------------------在图像中对指定区域进行平滑插补

J=roifill(I,c,r)                 ------------------------------------------------------c r指的是多边形x y的坐标

J=roifill(I,bw)-------------------------------------填充有掩膜图像bw指定的区域

<span style="font-size:18px;">I=imread('lena.jpg'); c=[222 272 300 270 221 194]; r=[21 21 75 121 121 75]; J=roifill(I,c,r); imshow(I); figure; imshow(J);</span>
4、roifilt2--------------------------------------------------对区域进行二维滤波

J=roifilt(h,I,bw)---------------------使用滤波器h对图像I中由掩膜图像bw选中的区域

</pre><pre name="code" class="plain"><span style="font-size:18px;">I=imread('lena.jpg'); c=[222 272 300 270 221 194]; r=[21 21 75 121 121 75];</span> bw=roifill(I,c,r);

J=roifilt2(H,I,bw);

imshow(J);

5、roipoly------------------------------------------------------------------选择感兴趣的区域

bw=roipoly(I,c,r)

bw=roipoly-------------------------------用鼠标选取


6、bestblk---------------------------------------------------------------------为块处理选取合适的大小

size=bestblk([m n],k);   k 表示块的长度和宽度的最大值


7、blkproc-----------------------------------------------------------------区别图像的块处理

b=blkproc(A,[m n],fun)  -----------------------------将图像中A每个不同的m*n块应用导函数fuN中,

I=imread('lena.jpg');

fun=@dcr2;

J=blkproc(I,[8 8],fun);

imshow(J);

<span style="font-size:18px;">I=imread('lena.jpg'); fun=@(x) std2(x)*ones(size(x)); I1=blkproc(I,[32 32],fun); imshow(I1);</span>

8、nfilter---------------------------------------------------------------------通用滑动邻域处理

B=nlfilter(I,[m n],fun);

<span style="font-size:18px;">I=imread('lena.jpg'): fun=@(x)median(x(:)); B=nlfilter(I,[3 3],fun); imshow(B)</span>


总结

以上是生活随笔为你收集整理的MATLAB图像函数 块和邻域的处理的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。