首先看卷积过程
kernel可理解为“小窗口”。
这里注意由于原图为28*28,经过kernel取特征点后,feature map变为26*26,即边缘无法重复累计。这里也可以用后续讲的padding(补丁)操作进行处理。
若有多个kernel进行检测,
会生成多个特征图.
由[1, 28, 28]=>[k个kernel, 1, 3, 3]=>[k, 26, 26]
具体kernel计算过程
每次小窗口移动,便在右侧的feature map上生成新的数据。
若在原图上进行padding操作,即在原图上将28*28变为29*29(边缘全设为0),这样可保证后面的feature map的size与原图片的size相同。
这样生成的feature map上也会变为6*6。
为更好的进行理解,这里对相关定义参数进行总结汇总
Input_size指原始函数的channel通道,若原图为黑白图片,Input_size为1,若原始为彩色图片,Input_size为3.也可以是上层传入的通道数量和。
Kernel_channels指核的数量,如前文所提到的edge核、blur核等。
Kernel_size指小窗口的大小,本节均设为3*3.
Stride指步长大小可设为1,2,代表小窗口在原图上进行移动时的间距,不设置默认为0.
Padding指补丁大小,可设为1,2,不设置默认为0.
本文分享自 python pytorch AI机器学习实践 微信公众号,前往查看
如有侵权,请联系 cloudcommunity@tencent.com 删除。
本文参与 腾讯云自媒体同步曝光计划 ,欢迎热爱写作的你一起参与!