import torch
'''6.2 图像卷积 课后题'''# a:卷积核[1,-1]应用于具有对角线边缘的图像会得到什么结果? 得到的结果还是以对角线为边缘#%%
X = torch.tensor([[0.0,1.0,2.0],[0.0,0.0,5.0],[0.0,0.0,0.0]])''' 这个K是让相邻两列相同的像素值求和直接变成0'''
K = torch.tensor([[1.0,-1.0]])#%%# 卷积操作函数defcorr2d(X,K):
h,w = K.shape
# 卷积输出大小
Y = torch.zeros((X.shape[0]- h +1),X.shape[1]- w +1)for i inrange(Y.shape[0]):for j inrange(Y.shape[1]):# (i,j)是目标区域的左上角坐标
Y[i,j]=(X[i:i+h,j:j+w]* K).sum()return Y