Sliding Window
滑窗法有在传统中的方法法和在深度学习中的方法,下面讲的是在深度学习中的方法。
滑窗法有2个过程:
- 依次滑动:
每次滑动一个像素点,每个像素都会对应一个框。每次滑动后,都把框框住的内容当作一个图像送入目标检测网络中(如VGG网络,或者ResNet网络)进行检测。检测结果对应的位置,就是框的位置,每次滑动后,位置就确定了。 - 多尺度滑动:
那么每次框的大小如何确定呢?这就是多尺度进行滑动了。就是使用小的框,把整张图滑动一遍之后,再使用大一点的框,再进行滑动一遍。然后再选择更大的框,再进行滑动。最后一个尺度,有可能和整个图的大小差不多。这样才能检测出大的、小的目标。
可以看出,窗口的尺度越多,检测的越全,但是速度会变慢。每次滑动一个像素点,这就会导致检测窗口会出现大量的冗余。
那么如何解决这个问题呢?
OverFeat:
使用卷积的方法来代替滑窗法,利用卷积的高效计算性质,来加快滑窗法的速度。
具体可以看另一篇博客:
https://blog.csdn.net/qq_35732097/article/details/79027095
Region Proposal
从sliding window中,我们可以发现,有很多地方是没有物体的,但是耶进行了检测。所以没有必要对所有的地方都进行检测,所以就出来了Region Proposal,意思是建议检测的区域,排除哪些没有物体的区域。Region Proposal就是通过像素的聚类,把可能是同一类的事物进行聚为一类。这样就减少了检测的范围。
Selective Search
第一步:先通过Region Proposal,一张图片中的信息进行聚类,比如说聚类为200类,这个聚类为多少类,需要自己来指定。
第二步:对每个聚类的区域进行检测。
RPN
由于上面的Region Proposal的聚类是传统的机器学习方法,那么我们可不可以使用深度学习的方法,让它自己生成呢。答案是可以的。
具体可以看另一篇博客:
https://blog.csdn.net/JNingWei/article/details/78847696