深度学习计算机视觉系列之R-CNN,Fast R-CNN,Faster R-CNN,YOLO对象检测算法
R-CNN 背景 自从CNN以来,计算机视觉是一个跨学科领域,近年来受到越来越多的关注,并且自动驾驶汽车已成为焦点。计算机视觉的另一个组成部分是对象检测。对象检测有助于姿态估计,车辆检测,监视等。对象检测算法与分类算法之间的区别在于,在检测算 法中,我们尝试在感兴趣的对象周围绘制一个边界框以将其定位在图像中。此外,在对象检测情况下,您不一定会只绘制一个边界框,在图像中可能有许多边界框代表不同的感兴趣对象,并且您可能事先不知道有多少个边界框。 您不能通过建立标准的卷积网络以及完全连接的层来解决此问题的主要原因是,输出层的长度是可变的-不是恒定的,这是因为感兴趣的对象的出现次数是不固定。解决此问题的幼稚方法是从图像中获取不同的感兴趣区域,并使用CNN对该对象在该区域内 的存在进行分类。这种方法的问题在于,感兴趣的对象可能在图像中具有不同的空间位置和不同的纵横比。因此,您将不得不选择大量的区域,这可能会导致计算爆炸。因此,已经开发了诸如R-CNN,YOLO等算法来发现这些事件并快速找到它们。 神经网络 为了绕过选择大量区域的问题,Ross Girshick等人。提出了一种方法,其中我们使用选择性搜索从图像中仅提取2000个区域,他将其称为区域建议。因此,现在,您可以尝试使用2000个区域,而不必尝试对大量区域进行分类。使用下面编写的选择性搜索算法生成了这2000个区域建议。 选择性搜索: