目标检测与MMDetection
一 目标检测的基本范式
目标检测 VS 图像分类
通常只有一个物体,通常位于图像中央,通常占据主要面积。
物体数量位置大小不固定
相同点:都需要算法理解图像内容,需要神经网络来学习图像的分布
目标检测的应用领域
目标检测的发展路径
滑窗
像传统的目标检测算法,通常会使用相同大小的滑块,依次在图片上进行处理,这种做法非常耗时,也对计算机的性能有要求,当我们用遍历的方式去对增幅图片进行处理,是非常麻烦的。这也是但是的暴力穷举的方式。主要的算法流程如下:
使用卷积实现密集预测
这个最有代表性的网络就是R-CNN系列了,它首先需要在原图中穷举出有目标的地方,将这些图片resize成大小统一的图片,送进网络中学习。
锚框
在faster RCNN网络中用了锚框这个技术,主要是他的RPN网络,可以候选出大量的锚框,通过锚框回归,分类,最后预测出目标,这个算法相比之前的算法,精度提高了很多。
二 单阶段 & 无锚框检测器
RPN
Faster RCNN使用了RPN来proposal RoI(Region of Interest),而不需要像Fast RCNN一样去使用传统的region proposal algorithm(耗时极长),这就是Faster RCNN的精髓。
使用33的filter对feature map进行卷积,目的是使提取出来的feature更鲁棒。注意:CNN提取出来的feature map在这里是对每一张image的每一个像素点来说都是256-dimension的,因为CNN最后一层使用了256个filter。
使用11的filter进行卷积,一共为18个,生成的新的图片是18-D的
然后进行reshape,拿一张图片举个例子,图片的shape是(W,H,D=18),然后我们会把他reshape以进行softmax(进行softmax的matrix的一边需要等于num of class,在这里是一个二分类,即是否含有物体,所以是2)。所以我们会把(W,H,D)reshape成(2,9WH)。这里很重要!!!!
然后我们进行softmax,得出对这9WH每一个的两个score,一个是有物体,一个是没有物体。
SSD
可以参考我之前的博文:https://blog.csdn.net/shengweiit/article/details/130769672