参考链接:
https://blog.csdn.net/librahfacebook/article/details/103114747
https://blog.csdn.net/weixin_43196118/article/details/112346077

目标识别(Object Detection)就是从图像/视频之中识别出用户感兴趣的目标,反馈目标的位置和类别。目前主流的目标识别技术方案包括R-CNN,YOLO,SSD等,新的算法也层出不穷,网上有很多这方面的参考资料。这里就主流的上述几种算法做一个汇总。

1. R-CNN

R-CNN(Region with CNN features)2014年由Ross Girshick提出。Ross Girshick为Facebook人工智能研究院的研究科学家,从芝加哥大学获得博士学位,在微软研究院、加州大学伯克莱分校做过研究员。

其主要原理为针对一张图片建议大量(2千多个)的候选区域(Region),然后分别对这些区域进行目标识别计算,使用SVM进行分类。

在R-CNN基础上,后面有Fast R-CNN,Faster R-CNN等,Fast R-CNN由Ross Girshick于2015年提出,Faster R-CNN由其它研究人员同Ross Girshick共同提出。其中又有了Mask R-CNN,为Faster R-CNN的一个分支,由何凯明于2017年提出。


R-CNN
论文链接:http://arxiv.org/abs/1311.2524
项目链接:https://github.com/rbgirshick/rcnn

Fast R-CNN
论文链接:https://arxiv.org/pdf/1504.08083
项目链接:https://github.com/rbgirshick/fast-rcnn

Faster R-CNN
论文链接:http://arxiv.org/abs/1506.01497
项目链接:https://github.com/rbgirshick/py-faster-rcnn
                  https://github.com/endernewton/tf-faster-rcnn

具体可以参考
https://blog.csdn.net/gentelyang/article/details/80469553
https://www.cnblogs.com/zongfa/p/9638289.html

https://blog.csdn.net/weixin_43198141/article/details/90178512

2. YOLO

YOLO(You Only Look Once)主要应用于快速的目标检测,尤其在一些边缘设备,如自动驾驶、无人车等,需要快速地对所获得的图像和视频进行识别并且反馈,以供控制系统做出快速响应。YOLO方案由Joseph Redmon提出,目前进化了五代(v1~v5)。其中v1~v3由Joseph Redmon主要提出和迭代。v4,v5由其它研究人员提出。相比R-CNN采用大量检测区域建议的方案,YOLO采用一步到位的方式,即输入为整个图片,输出直接为目标识别的区域和目标类型。

YOLO v1
论文链接:http://arxiv.org/abs/1506.02640
项目链接:https://pjreddie.com/darknet/yolov1/

                  https://github.com/pjreddie/darknet

YOLO v2
论文链接:https://arxiv.org/abs/1612.08242
项目链接:https://pjreddie.com/darknet/yolov2/

YOLO v3
论文链接:https://pjreddie.com/media/files/papers/YOLOv3.pdf
项目链接:https://pjreddie.com/darknet/yolo/

YOLO v4
论文链接:https://arxiv.org/abs/2004.10934
项目链接:https://github.com/AlexeyAB/darknet

YOLO v5
YOLO v5争议比较大,没有论文链接
项目链接:https://github.com/ultralytics/yolov5

具体可以参考
https://zhuanlan.zhihu.com/p/136382095
https://blog.csdn.net/stay_foolish12/article/details/108702473

YOLO的核心思想就是将整张图作为输入,直接在输出层得出目标的区域和类型。Faster R-CNN也是采用整张图作为输入,不过Raster R-CNN在里面还是采用了两步的做法,先propose目标检测的区域,再对每一个区域的图像进行识别。

3. SSD

SSD(Single Short multibox Detector)算法是在R-CNN和YOLO出现之后针对两者的特点而出现的一种比较优秀的算法。YOLO的运算速度相比R-CNN有很大提高,但是准确度上面则不如R-CNN。针对这个,Wei Liu在2016提出了SSD的算法,结合了这两种特点的网络。
论文链接:https://arxiv.org/abs/1512.02325​​​​​​
项目链接:https://github.com/weiliu89/caffe/tree/ssd

其特点在于,SSD结合了YOLO中的回归思想和Faster-RCNN中的Anchor机制,使用全图各个位置的多尺度区域进行回归,既保持了YOLO速度快的特性,也保证了窗口预测的跟Faster-RCNN一样比较精准。

参考链接:https://blog.csdn.net/u014380165/article/details/72824889
                  https://www.cnblogs.com/kongweisi/p/11151791.html