第1关:什么是卷积
任务描述
本关任务:编写一个基于卷积核函数实现对sin(x)
的卷积处理。
%%%%%%%%%%%%%%%
%%请不要改动
warning('off','all');
graphics_toolkit('gnuplot')
pkg load image
addpath(genpath(pwd));
%%%%%%%%%%%%%%%%%%
figure(1)
%%%%%%%%% Begin %%%%%%%%%
ifelse = @(a,b,c) (a~=0)*b + (a==0)*c;
h = @(x,lx,ux) ifelse(x<lx,0,ifelse(x>ux,0,x/(4*pi)));
x = -2*pi:0.1:2*pi;
y = sin(x);
g=zeros(size(x));
for i=1:size(x,2)
for j=1:size(x,2)
g(i)=g(i)+y(j)*h(i-j,-1.57,1.57);
end
end
stem(x,g);title('f*h');
%%%%%%%%% End %%%%%%%%%
%print(1,'-djpeg','./pictures/step1/picture1.jpg');
%run('./task1/test1.m');
%system('python3 ./task1/test1py.py');
disp(g(1,1:3));