图像卷积的是图像处理的基础,通过不同的卷积核,可以从的图像的提取出不同的特征。而深度学习一个重要的组成部分,就是通过一系列自学习的卷积核,从图像提取各种特征。
学习资料https://blog.csdn.net/chaipp0607/article/details/72236892?locationNum=9&fps=1
暴力算法复杂度是n*n*m*m 当m很大时很不理想。
用FFT做卷积优化后,复杂度可下降至n*n*log(n*m).
当然简单版你只要写暴力就行了
多组数据。
每组数据 第一行包含两个整数n,m
接下来n行,每个有n个整数,代表一个n*n灰度矩阵{aij}
再接下m行,每行有m个整数。代表m*m卷积核矩阵{bij}
其中
n<=100
m<=min(20,n)
0<aij<=255
-10<bij<=10
数据组数不超过20组
在样例中你将看到用一种微分近似卷积核提取图像边缘的效果
输出(n-m+1)*(n-m+1)的矩阵{cij},代表图像卷积的结果。其中
(会越界的部分舍去,所以只有n-m+1)*(n-m+1) )
13 3 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 1 1 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 1 1 1 1 1 1 1 0 0 0 0 0 0 0 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 -1 4 -1 0 -1 0 5 3 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 0 0 0 0 0 -1 0 -1 4 -1 0 -1 0 5 2 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0
0 0 0 0 0 -1 0 0 0 0 0 0 0 0 -1 -2 3 -2 -1 0 0 0 0 0 -2 2 1 0 1 2 -2 0 0 0 -1 2 0 0 0 0 0 2 -1 0 0 -2 1 0 0 0 0 0 1 -2 0 -1 3 0 0 0 0 0 0 0 3 -1 0 -2 1 0 0 0 0 0 1 -2 0 0 -1 2 0 0 0 0 0 2 -1 0 0 0 -2 2 1 0 1 2 -2 0 0 0 0 0 -1 -2 3 -2 -1 0 0 0 0 0 0 0 0 -1 0 0 0 0 0 0 -1 0 -1 4 -1 0 -1 0 1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0