1. 程式人生 > >Matlab實現影象的輪廓提取

Matlab實現影象的輪廓提取

以二值影象circles.png(黑色背景白色前景)為例,根據掏空內部點演算法,運用Matlab程式設計實現二值影象的輪廓提取。

I=imread('circles.png');   
[M,N]=size(I);
buffer=I;
for i=2:M-1
    for j=2:N-1
       if(I(i,j)==255&I(i-1,j)==255&I(i+1,j)==255&I(i,j-1)==255&I(i,j+1)==255&I(i-1,j-1)==255&I(i-1,j+1)==255&I(i+1,j-1)==255
&I(i+1,j+1)==255)%÷‹Œß8∏ˆµ„æ˘Œ™∞◊…´ buffer(i,j)=0; end end end subplot(1,2,1); imshow(I); subplot(1,2,2); imshow(buffer);