本书特色
1. 较为全面的YOLO系列内容解读
本书以YOLO系列为核心,围绕这一流行的通用目标检测框架来开展本书的技术讲解、代码实现和入门知识科普等工作。本书翔实地讲解了自YOLOv1到YOLOv4的发展状况和相关技术细节。尽管在本书成稿时,YOLOv4已经算是“古董”了,但即便是这样一个“古董”,最新的YOLO检测器也没跳出YOLOv4的技术框架,无非是在每一个模块中采用了最新的技术,但其基本架构是一模一样的。因此,在学习YOLOv4后,就能在宏观上对YOLO框架的发展有足够清晰的认识,同时在微观上了解和掌握相关的技术细节,为日后读者自学更新的YOLO检测器做足了相关知识储备,也为后续的改进和优化夯实了基础。书中也提供了大量图片以帮助读者更加直观地理解YOLO系列。
2. 作者编写的开源代码
完整、可复现的开源代码是本书最大的亮点。本书不仅详细地讲解了YOLO系列所涉及的理论知识,更是在此基础上编写了大量的相关代码。正所谓“纸上得来终觉浅,绝知此事要躬行”,只有通过阅读代码、编写代码和调试代码,才能对YOLO具备更加全面的认识,而这些认识又会为入门目标检测领域提供大量的正反馈。本书的绝大多数代码是由作者亲手编写,部分实现也借鉴了现有的开源代码,而非简单地借用或套用已开源的YOLO项目代码作为范例,或者投机取巧地解读YOLO开源项目。每一次代码实现环节都对应一份完整的目标检测项目代码,而非零散的代码块,其目的是让读者能够一次又一次地建立起对完整的目标检测项目的认识。本书的诸多经验和认识都是建立在作者编写的大量丰富代码的基础上,使得读者既能够在阅读此书时对YOLO建立起一个感性认识,同时又能够通过阅读、模仿、编写和调试代码建立起对YOLO的理性认识。
3. 经典工作的解读和代码实现
除YOLO之外,本书还讲解了流行的目标检测框架(如DETR、YOLOF和FCOS),同时,也提供了由作者编写的完整的项目代码,以便读者阅读、复现和调试。通过学习这些YOLO之外的工作,有助于读者将从YOLO项目中学到的知识横向地泛化到其他检测框架中,进一步加深对目标检测的认识,同时还能够纵向地摸清、看清目标检测领域的发展趋势,掌握更多的技术概念,为后续的“践行”做足准备。