MATLAB图像函数 块和邻域的处理
1、Poly2mask-----------------------------------------------------將感興趣的區(qū)域轉(zhuǎn)換成掩膜
bw=poly2mask(x,y,m,n)-------------講一個(gè)ROI多邊形轉(zhuǎn)黃成二值圖像的掩膜區(qū)域,向量x y分別表示ROI多邊形個(gè)頂點(diǎn)x y的坐標(biāo),m n為掩膜的區(qū)域、
<span style="font-size:18px;">x=[4 10 10 4 4]; y=[4 4 10 10 4]; mask=poly2mask(x,y,12,12); </span>在圖像中建立個(gè)掩膜、 <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>
隨機(jī)產(chǎn)生漁區(qū)計(jì)算掩膜 <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------------------------------------------------------------------根據(jù)顏色選擇感興趣的區(qū)域
bw=roicolor(A,low,high) ?-----------------按指定的顏色范圍(low high)選擇ROI,返回圖像中這個(gè)區(qū)域的圖像
<span style="font-size:18px;">I=imread('lena.jpg'); bw=roicolor(I,128,255); imshow(I); figure; imshow(bw); </span>3、roifill-------------------------------------------------------------------------在圖像中對指定區(qū)域進(jìn)行平滑插補(bǔ)
J=roifill(I,c,r) ? ? ? ? ? ? ? ? ------------------------------------------------------c r指的是多邊形x y的坐標(biāo)
J=roifill(I,bw)-------------------------------------填充有掩膜圖像bw指定的區(qū)域
<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--------------------------------------------------對區(qū)域進(jìn)行二維濾波
J=roifilt(h,I,bw)---------------------使用濾波器h對圖像I中由掩膜圖像bw選中的區(qū)域
</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------------------------------------------------------------------選擇感興趣的區(qū)域
bw=roipoly(I,c,r)
bw=roipoly-------------------------------用鼠標(biāo)選取
6、bestblk---------------------------------------------------------------------為塊處理選取合適的大小
size=bestblk([m n],k); ? k 表示塊的長度和寬度的最大值
7、blkproc-----------------------------------------------------------------區(qū)別圖像的塊處理
b=blkproc(A,[m n],fun) ?-----------------------------將圖像中A每個(gè)不同的m*n塊應(yīng)用導(dǎo)函數(shù)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---------------------------------------------------------------------通用滑動(dòng)鄰域處理
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>
總結(jié)
以上是生活随笔為你收集整理的MATLAB图像函数 块和邻域的处理的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Matlab稀疏矩阵
- 下一篇: BP神经网络 语音信号分类