YOLO简介
You Only Look Once.
YOLO(You Only Look Once)算法是一种用于目标检测的深度学习算法,它可以在图像中快速准确地识别出多个物体并标记它们的位置。YOLO算法的历史可以追溯到2016年,当时由约瑟夫·雷德蒙德(Joseph Redmon)和阿里·法拉赫(Ali Farhadi)等人在论文《You Only Look Once: Unified, Real-Time Object Detection》中首次提出。
在之前的目标检测算法中,通常需要对图像进行多次扫描以识别出不同的物体,这样的方法效率较低且不够实时。而YOLO算法通过将目标检测任务转化为一个单一的回归问题,可以在一次前向传播中同时预测出图像中所有物体的位置和类别,极大地提高了检测的速度和准确性。
YOLO算法的关键思想是将图像分割成一个固定大小的网格,并在每个网格中预测出物体的位置和类别。然后通过非极大值抑制(NMS)算法来消除重叠的边界框,最终得到最准确的检测结果。这种设计使得YOLO算法可以在保持高速度的同时实现准确的目标检测,使其在实时应用中具有很高的实用价值。
//与其他的算法相对比,YOLO训练与检测,都集中到了一个单独的网格中进行。也没有显示求取region proposal的过程。
随着YOLO算法的发布,它很快受到了广泛的关注和应用。后续的研究者们也对YOLO算法进行了改进和优化,提出了一系列的改进版本,如YOLOv2、YOLOv3和YOLOv4等,不断提升了算法的性能和稳定性。
除了在学术界和科研领域得到了广泛的应用,YOLO算法也被广泛应用于工业和商业领域。例如在自动驾驶领域,YOLO算法可以帮助车辆实时识别道路上的障碍物和行人,提高了自动驾驶系统的安全性和可靠性;在智能监控领域,YOLO算法可以帮助监控摄像头实时识别出异常行为和危险物体,提高了监控系统的效率和准确性。
总的来说,YOLO算法的历史可以追溯到2016年,它的提出极大地推动了目标检测技术的发展,并在各个领域得到了广泛的应用。随着深度学习技术的不断进步,相信YOLO算法在未来还会有更多的发展和应用空间。
阶段在检测任务中的意义
从上图中可以看见,YOLO系列是属于单阶段的,而Faster rcnn则是分为了两个阶段。
one—stage的优势:速度快,适合做实时监测任务。但与此同时,其检测的误差可能较大。
一般来说,我们在算法中衡量两个指标,FPS和mAP值。FPS代表了其速度的快慢,mAP值则代表了他的质量。
指标分析
mAP:是综合衡量检测效果得指标。
一般来说,我们有两个细化的指标,精度和召回率。精度代表所指的框的范围是否精确,召回率(recall)代表了所框出来的数量。
IOU:交集和并集的比值。
上面的图为交集,Area of Overlap。
下面的图为并集,Area of Union。他们之间的比值便为IOU。IOU的值越高,代表模型的识别能力越好。
Precision(精度):TP/TP+FP
Recall(回报率):TP/TP+FN
#找出班级中所有的女生
TP:这位是女生。
FP:把男生当成女生。
FN:把女生当初男生。
TN:这位是男生。
置信度:认为他是一个物体的可能性。
我们计算出他的精度和召回率,就可以画出如上图所示的表。
mAP值为取最大值下方阴影面积的平均值。
那么我们希望,他的mAP值越接近于1,代表这个模型越好。