Anonymous
public text v1 · immutablefunction[C]=convol(A,M)
% dimension de l'image
[n, m]=size(A);
% dimension (impaires) du masque
[mx,my]=size(M);
% masque retourné
M=M(end:-1:1,end:-1:1);
Aex=A;
for i=1:floor(mx-1)/2
Aex=[A(1,:); Aex; A(end,:)];
end
for j=1:floor(my-1)/2
Aex=[Aex(:, 1) Aex Aex(:, end)];
end
C=zeros(n, m);
for i=1:n
for j=1:m
%I=[i:i+mx-1]
%J=[j:j+my-1];
%C(i, j)=sum(sum((Aex(I, J)) .* M));
somme=0;
for l=1:mx
for k=1:my
somme=somme+Aex(i+l-1, j+k-1)*M(l, k);
end
end
C(i, j)=somme;
end
end