2D-CNN和3D-CNN计算

6,834 阅读1分钟

2D卷积神经网络的计算过程

2D卷积:卷积核在输入图像的二维空间进行滑窗操作。

单通道卷积

多通道卷积

输入图片的shape为(input_height,input_width,input_channels)。分别为7x7x3,三通道对应RGB三个通道。 卷积核(convolution kernel)的shape为(kernel_height,kernel_width,kernel_channels)。分别为3x3x3。这里共有两个filter,即filter_num=2,filter_num等于输出的channel数,即filter_num=output_channels。

feature_map每个值由三个通道的卷积核卷积后累加得到,多个通道的信息被压缩了,每个卷积核输出为一张二维feature_map。多通道卷积中不同通道上的卷积核的参数不同

2D卷积只考虑到了空间的特征,而没有考虑时间的特征。


3D卷积神经网络的计算过程

3D卷积:卷积核在输入图像的三维空间进行滑窗操作。

3D卷积多了一个深度通道(depth),这个深度一般为视频上的连续帧,或立体图像的不同切片

输入的shape变为(input_depth,input_height,input_width,input_channels)。 如上图的input_depth为3,视频上的连续3帧图片(注意,不是一张图片的3个通道)。

卷积核的shape为(kernel_depth,kernel_height,kernel_width,kernel_channels)。如上图的kernel_depth为2。对应上面同颜色的可以看成同一通道下的卷积核,不同颜色可以看成同一卷积核的不同通道下的卷积核(注意,一定要多类比2D卷积就好理解了)。

3D卷积中的卷积核是3D的,在同一个channel下使用的是同样的参数,就好比2D卷积中卷积核每一个通道使用的权重是一样的,不同的通道权重可能不一样。