一幅图中由许多物体,机器无法知道它有多大,或者它在图像的什么位置。
卷积神经网络采用卷积+池化的方式可以提取图像的特征,通过不同的卷积核,来提取不同的特征,如横向轮廓,纵向轮廓。
随着网络深度不断加深,经过一次次池化,图片尺寸逐渐减小,维数逐渐增加,特征越来越多,每次卷积所考虑的信息也由细节变得更偏向全局。
对于一幅图,我们不能说,灰度值高的是目标或者灰度低的是目标,只能根据它和周围像素灰度之差来判断。
比如图中两个目标(橙色圆),我们不知道它在什么位置,我们需要用一个模板(红圈和蓝圈)遍历整张图,做他们模板内平均灰度的差。(卷积)
它的大小也不知道,所以我们需要不断调整模板的大小以确保检测到所有目标。我们选择每次缩小图片的大小替代调整模板,每次筛选2x2区域的最活跃值保留,进行下一次检测。(最大池化)
对于上图,能较好地检测到大圆,下图较好地检测小圆
这里做了个亮度检测(灰度图中可用亮度区分目标),检测模板是高斯平滑滤波器。这里用第5、6、7次的滤波、池化结果和1、2、3次的结果做差然后归一化,可以看到图片的两辆小车都有被检测到(灰度值越高,即越活跃)。
这只是类比卷积神经网络中众多卷积核中的一个,可以用来检测亮度。
大概卷积提取特征类似这样的原理?