我寫過3x3的平均濾波器。它工作正常,但它顯示三次相同的輸出圖像,而不是一個。如何解決問題?平均濾波器Matlab
的代碼是提前
function [filtr_image] = avgFilter(noisy_image)
[x,y] = size(noisy_image);
filtr_image = zeros(x,y);
for i = 2:x-1
for j =2:y-1
sum = 0;
for k = i-1:i+1
for l = j-1:j+1
sum = sum+noisy_image(k,l);
end
end
filtr_image(i,j) = sum/9.0;
filtr_image = uint8(filtr_image);
end
end
end
感謝
http://stackoverflow.com/questions/13445334/3x3-average-filter-in-matlab?rq=1 – dasdingonesin
是您的圖像**顏色**或**灰度**?此代碼假定您的圖像是灰度。 – rayryeng