参考于 https://blog.csdn.net/qq_37705280/article/details/105818874https://zhuanlan.zhihu.com/p/86587652
其实很简单,产生一个输出通道需要与输入通道数相当的卷积模板数,如图,
若想产生多通道则需要多组卷积组,如下图(产生两个输出通道)
计算过程为:每个通道内对应位置元素相乘再相加,最后计算所有通道的总和作为最终结果。
记住一个规律,卷积核的Channel通道数等于Input输入的通道数,Output输出的通道数等于卷积核的个数。
参数量
k*k*C*D (k为卷积核大小,C为输入通道数,D为输出通道数)
计算量
假设输入特征图(B,C,H,W),卷积核大小为K×K, 输入通道为C,输出通道为D,假定宽高方向步长stride均为S, 输出特征图大小为H2,W2.
1.一次卷积的计算量
一个k×k的卷积,执行一次卷积操作,需要k×k次乘法操作,k×k−1次加法操作。所以,一次卷积操作需要的乘加次数:(K×K)+(K×K−1)=2×K×K−1
2.在一个特征图上需要执行卷积需要卷积的次数
A =( (H-k+Ph) /S +1 ) ×( (H-k+Pw) /S +1 ),Ph,Pw表示在高和宽方向填充的像素。
3.C个特征图上进行卷积运算的次数
C个输入特征图上进行卷积运算的次数为C
4.输出一个特征图通道需要的加法次数
在C个输入特征图上卷积后需要将卷积的结果相加,C个相加需要C-1次加法,计算量为: (C-1)×H2×W2
5.输出N个特征图需要计算的次数
N× [ (C-1)×H2×W2 + (2×K×K−1)× A ] ×C