資源簡介
用于數字圖像邊緣檢測的matlab實現,一種新興的邊緣檢測方法
代碼片段和文件信息
blood?=?imread(‘jx1.jpg‘);
[xyz]=size(blood);????????????????%?求出圖象大小
b=double(blood);??????????????????
N?=sqrt(100)?*?randn(xyz);????????%??生成方差為10的白噪聲
I=b+N;????????????????????????????%??噪聲干擾圖象
for?i=1:x?????????????????????????%?實際圖象的灰度為0~255
????for?j=1:y
????????if?(I(ij)>255)
????????????I(ij)=255;
????????end
????????if?(I(ij)<0)
????????????I(ij)=0;
????????end
????end
end????
z0=max(max(I));???????????????????%?求出圖象中最大的灰度
z1=min(min(I));???????????????????%?最小的灰度?
T=(z0+z1)/2;??????????????????????
TT=0;
S0=0;?n0=0;
S1=0;?n1=0;
allow=0.5;???????????????????????%?新舊閾值的允許接近程度
d=abs(T-TT);
count=0;?????????????????????????%?記錄幾次循環
while(d>=allow)?????????????????%?迭代最佳閾值分割算法
????count=count+1;
????for?i=1:x
????????for?j=1:y
????????????if?(I(ij)>=T)
????????????????S0=S0+I(ij);
????????????????n0=n0+1;
????????????end
????????????if?(I
- 上一篇:快速傅里葉的matlab代碼
- 下一篇:商品狀態圖
評論
共有 條評論