深度学习基础—卷积运算http://t.csdnimg.cn/2mRei
上篇文章卷积运算实际是灰度图像的运算(2维空间),但是实际中我们彩色图片使用的更多,和灰度图像不同的是:彩色图片是由三原色(红、绿、蓝)组成,因此彩色图片是3通道,一个通道表示一个色系。那么彩色图片的矩阵表示实际上是3维空间。因此对彩色图片卷积运算也需要3维空间的过滤器(这里过滤器的通道数也和彩色图片对应相等):
3维空间的卷积运算由于过滤器的通道数和彩色图片的通道数相等,因此本质上和2维空间的卷积运算一样:
这里,6*6*3表示6*6的图片大小,3表示3个通道,过滤器对应也有3个通道,因此,对于不同的通道可以设置不同的过滤器达到我们任意想要的效果,比如如果想检测红色通道的垂直边缘,可以将第一个通道(红)的过滤器设置为:
第二个(绿)和第三个通道(蓝)的过滤器设置为:
把这三个过滤器堆叠到一起形成3维过滤器,从而就可以只检测红色的边缘,绿色和蓝色不进行检测。
但是如果想检测不同的边缘特征,比如想同时检测6*6 RGB图像垂直边缘和水平边缘,就可以使用2个3维过滤器(3*3*3),得到两个4*4的输出,把这两个4*4的输出堆叠为4*4*2的输出,这个输出表示同时检查水平和垂直边缘的结果。
即假设输入图片是n*n*nc的大小,过滤器是f*f*nc的大小,得到的卷积结果是(n-f+1)*(n-f+1)*nc,其中nc是通道数,这里默认步长为1,不进行padding操作。当然文章开头提到的2维卷积操作得到的公式也可以运用到其中,这里不再赘述。