自从卷积神经网络在分类问题上取得很大进步以后,学者们纷纷想办法将卷积神经网络迁移到目标检测、目标分割等领域。目标检测领域发展到现在,出现了很多里程碑式的网络结构和设计思想,可以说是百花齐放,大放异彩,但是总体上大概可以将目标检测分为三个类别:
- two-stage
- one-stage
- anchor-free
two-stage
相信大家都知道,是大神何凯明最早将卷积神经网络引入到目标检测中来,从而创造了two-stage的RCNN系列目标检测网络,从RCNN到fast RCNN再到faster RCNN,mask RCNN,都是经典网络,蕴含的设计思想都值得大家学习。那么为什么叫two-stage呢?那是因为RCNN系列设计思想都是分为两步:先想办法得到目标的候选框,再对候选框进行精细的分类与框回归。基于这样的方式,可想而知有着很高的准确率,但是正是由于分为两步的关系,导致其检测速度一直提不上了,关于RCNN系列的网络解析有很多,想要了解的小伙伴可以自行搜索。
one-stage
上面说到了two-stage的RCNN系列网络检测速度慢,所以主要为了解决检测速度的one-stage的目标检测网络就因运而生了,主要代表网络有YOLO系列和SSD系列,one-stage的特点是通过在图片本身(YOLO)或者特征层(SSD)设计大量的锚点archor用于目标位置的定位从而省略了生成候选框这一步,显而易见,one-stage的检测速度得到很大的提升,但是检测精度确因此降低了
anchor-free
前面说到two-stage检测精度高但是速度慢,one-stage检测速度快但是检测精度低,有小伙伴可能会觉得,自古精度、速度两难全啊!错了,人类的智慧是无尽的,近两年就有大量的研究者在想方设法的同时保全精度和速度的方法,anchor-free的目标检测网络就登上了历史的舞台了,它们中的佼佼者有CornerNet、ExtremNet、CenterNet(同一时间段出现了两个叫CenterNet表现都很亮眼)
最后总结一下:随着时代的发展,越来越好的目标检测网络/算法会像雨后春笋一样冒出来,这是发展的必然趋势,我们一起拭目以待吧