扫描关注一起学嵌入式,一起学习,一起成长
不用担心,北京亦庄的自动驾驶示范区经过了三年的运营,自动驾驶出租车的商业化旅程达到了 960 万公里,其中无人驾驶就有 210 万公里。事实证明,无人驾驶技术是可以做到安全行驶的。那机器是怎么“看到”路面情况,知道哪儿有红绿灯,或者有行人正穿过斑马线呢?答案是目标检测技术,这是计算机视觉领域的一项核心技术,用于在图像或视频中定位和识别多个不同类别的目标物体。它的主要任务是确定图像中目标的位置,并将其与特定的目标类别关联起来。此外,目标检测还可以用于视频监控、人脸识别、物体识别等领域。所以,自动驾驶车辆安装上目标检测系统,就像拥有了眼睛一样,能够“看见”复杂的路况。那么目标检测技术会不会很复杂,难以使用?不会,《YOLO 目标检测》这本书就是基于业界流行的目标检测算法框架 YOLO,讲解目标检测领域的基本概念和原理,以及实践方法。
只要有兴趣,零基础也能看懂这本书。我们先从了解 YOLO 框架开始学习吧。YOLO(You Only Look Once)是由 Joseph Redmon 等人于 2015年提出的目标检测算法。原始的 YOLO 算法被称为 YOLOv1,它采用了全卷积神经网络(Fully Convolutional Network)来同时预测物体的位置和类别。YOLOv1 将输入图像分割成网格,并为每个网格预测多个边界以及对应的类别概率,这种单次前向传播的设计使得 YOLOv1 非常快速。然而,YOLOv1 在检测小物体和定位精度上存在一些问题。为了改进 YOLOv1 的不足,于 2016 年提出了 YOLOv2,对网络结构进行了改进,并引入了一些技术来提高检测性能。随着研究的不断进展,于 2018 年又发布了 YOLOv3。YOLOv3 在 YOLOv2 的基础上进一步改进,采用了更深更宽的网络结构,引入了多尺度预测和特征融合机制,并使用了更多的 Anchor Boxes 来提高边界的拟合度。此外,还出现了一些基于 YOLO 的变体和改进版本,例如 YOLOv4、YOLOv5 等,它们在网络结构、训练策略和性能方面进行了进一步的创新和改进。YOLO 如此热门,但《YOLO 目标检测》的作者杨建华在当初从事研究工作时,却连一本较为系统的、理论与实践相结合讲 YOLO 的入门书都找不到。他边学边总结,积极分享学习成果,于是就有了这本注重实战的 YOLO 入门书。杨建华目前是哈尔滨工业大学在读博士,主要研究方向是基于视觉的目标检测与人体时空行为分析,活跃在多个知识专栏上。众多 AI 技术爱好者通过杨建华的文章,走进了 YOLO 的世界。本书另一位作者李瑞峰是哈尔滨工业大学教授、机器人研究所副所长,中国人工智能协会智能机器人专业委员会秘书长,黑龙江省机器人学会理事长。李瑞峰教授也是杨建华的导师,在他的指导下,给本书打下了坚实的理论基础。《YOLO 目标检测》为同学们规划了一条从入门到进阶的学习路径,分为四个部分介绍了相关背景知识、YOLO 框架入门、较新的 YOLO 技术,以及其他流行的目标检测框架。首先介绍了自深度学习时代以来目标检测的发展,列举了若干经典的目标检测框架,如 R-CNN 系列和 YOLO 系列。然后讲述了目标检测领域当前的两大技术流派:两阶段和单阶段。接着介绍了当前流行的目标检测架构,包含主干网络、颈部网络和检测头三大部分。对目标检测领域常用的两大数据集进行了说明:PASCAL VOC 数据集和 MS COCO 数据集。了解这些数据集的基本情况是入门目标检测领域的基本功之一,有助于读者开展后续工程或学术方面的工作。这部分内容是本书重点,先以经典的 YOLOv1 为例讲解技术原理,包括网络结构、检测原理、训练中的标签分配策略、训练模型的策略以及前向推理的细节。接下来通过对 YOLOv1 的网络结构做适当的改进,着手编写相关的网络结构代码,搭建 YOLOv1 的网络环境。再进一步编写 YOLOv1 的项目代码,主要实现读取数据、预处理数据、搭建模型、实现标签匹配、实现训练和测试代码,以及可视化检测结果等诸多代码实现内容。在讲清楚 YOLOv1 的基础上,书中又对 YOLOv2、YOLOv3、YOLOv4 分别做了详细的介绍,说明每一代相较于上一代的技术改进,帮助同学们清晰地理解 YOLO 框架的根本,使大家具备自主学习新一代 YOLO 框架的能力。先介绍新一代的 YOLO 框架,讲解 YOLOX 对 YOLOv3 的改进以及新型的动态标签分配,并实现了一款简单的 YOLOX 检测器。再介绍 YOLOv7 检测框架的技术原理,主要是其所提出的高效网络架构的实现细节,并实现了一款简单的 YOLOv7 检测器。首先介绍 DETR,它在计算机视觉领域掀起了 Transformer 的研究浪潮。讲解 DETR 的网络结构,并通过讲解相关的开源代码来展现 DETR 的技术细节。其次介绍新型的单级目标检测网络,讲解 YOLOF 独特的网络结构特点和所提出的标签匹配,并通过代码实现的方式复现 YOLOF。最后介绍 FCOS 检测器,它掀起了无先验框检测架构研究的浪潮。FCOS 是这一架构的经典之作,也是常用的基线模型。同学们认真学习这四个部分后,会发现不仅理解了目标检测的技术原理,还能掌握 YOLO 框架的使用方法,并了解多个主流目标检测框架。YOLO 框架是一种高效、实时性强且适用于多尺度目标检测任务的算法。YOLO 框架在未来的目标检测领域必将发挥重要作用,让机器“看得”更加“清楚”。《YOLO 目标检测》可以帮助计算机视觉领域的读者快速“看清楚”目标检测技术的原理,并上手实践 YOLO 框架。本书最大的亮点就是注重实战,提供了完整、可复现的开源代码,其中绝大部分代码都是作者亲自编写的。作者本着严谨治学的态度,保证每一次代码实现环节都对应一份完整的目标检测项目代码,让同学们能够一次又一次地建立起对完整的目标检测项目的认识。本书翔实地讲解了自 YOLOv1 到 YOLOv4 的发展状况和相关技术细节。这样同学们既可以在宏观上对 YOLO 框架的发展有足够清晰的认识,同时又在微观上了解和掌握相关的技术细节,为日后自学更新的 YOLO 检测器做好知识储备。本书行文简洁易懂,力求在准确的前提下让同学们迅速掌握技术细节。书中还提供了丰富的图示,有助于同学们直观地理解 YOLO 系列。书中并没有止步于 YOLO,还介绍了其他流行的目标检测框架,这有助于同学们将从 YOLO 项目中学到的知识横向地泛化到其他检测框架中。同时还能够纵向地摸清、看清目标检测领域的发展趋势,掌握更多的技术概念。学会 YOLO,同学们就能给机器装上“眼睛”,去探索更广泛的应用吧!
关注【一起学嵌入式】,回复“加群”进技术交流群。
觉得文章不错,点击“分享”、“赞”、“在看” 呗!