matlab中加权平均滤波后图像变为蓝色了 求解!%图Distinguishability加权均值滤波
a1=imread('Distinguishability.png');
[ra,ca]=size(a1);subplot(2,3,2),imshow(a1),title('原图');
g=a1;%预留出输出图像
st=3;
for m=(st-1)/2+1:ra-(st-1)/2
for n=(st-1)/2+1:ca-(st-1)/2
if n>st-1&&m>=st-1&&n<ra-st+2&&m<ca-st+2%扫描的区域
g(m,n)=(a1(m-1,n-1)+2*a1(m,n-1)+a1(m+1,n-1)+2*a1(m-1,n)+4*a1(m,n)+2*a1(m+1,n)+a1(m-1,n+1)+2*a1(m,n+1)+a1(m+1,n+1))./16;
%将加权平均后的像素点的值赋给新的像素点
end
end
end
subplot(2,3,4),imshow(g),title('加权平均滤波3*3')