資源簡介
利用基于cnn的方法,對灰度圖像進行邊緣檢測,通過matlab實現程序。
代碼片段和文件信息
%接受并顯示原始圖像
I=imread(‘cameraman.tif‘);%接受輸入數據,存放在矩陣I中
subplot(121)imshow(I);???????%畫出初始圖像
title(‘待處理的圖像‘);
%將輸入像素值,標準化到區間[-1,1]
[cd]=size(I);
X=zeros(cd);?%初始狀態
?for?i=1:c
????for?j=1:d
????????N(ij)=double(I(ij)/255);
????????BW(ij)=2*(N(ij)-0.5);
????end
?end????
?%考慮邊界情況,擴大矩陣
M=zeros(c+2d+2);??
for?i=2:c+1?????????????????
????for?j=2:d+1
????????M(ij)=BW(i-1j-1);
????end
end
%細胞神經網絡中參數的設置,網絡的功能不同參數的設置也就不同
A=[000;040;000];??%r=1的反饋算子對應的模板
B=[-1.5-1.5-1.5;-1.512-1.5;-1.5-1.5-1.5];??%r=1的控制算子對應的模板
C=1;??????????????????%電容的大小
R=1;??????????????????%電阻的大小
IC=0.4;???????????????%電流的大小
h=1;??????????????????%步長大小
%判定網絡是否穩定和網絡的迭代計算
circlenumber=0;%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
judge=0;
while?judge==0??????%dt表示二次迭代間最大的絕對值差,1e-3表示門限
??circlenumber=circlenumber+1;
??for?i=1:c???????????????????%開始對每個細胞進行迭代
???????for?j=1:d
評論
共有 條評論