This is one of the first technical overviews of autonomous vehicles written for a general computing and engineering audience. Students will find a comprehensive overview of the entire autonomous technology stack and practitioners will find many practical techniques.
Throughout the book, the authors share their practical experiences designing autonomous vehicle systems. These systems are complex, consisting of three major subsystems: (1) algorithms for localization, perception, and planning and control; (2) client systems, such as the robotics operating system and hardware platform; and (3) the cloud platform, which includes data storage, simulation, high-definition (HD) mapping, and deep learning model training. The algorithm subsystem extracts meaningful information from sensor raw data to understand its environment and make decisions as to its future actions. The client subsystem integrates these algorithms to meet real-time and reliability requirements. The cloud platform provides offline computing and storage capabilities for autonomous vehicles. Using the cloud platform, new algorithms can be tested so as to update the HD map in addition to training better recognition, tracking, and decision models.
Since the first edition of this book was released, many universities have adopted it in their autonomous driving classes, and the authors received many helpful comments and feedback from readers. Based on this, the second edition was improved by extending and rewriting multiple chapters and adding two commercial test case studies. In addition, a new section entitled "Teaching and Learning from this Book" was added to help instructors better utilize this book in their classes. The second edition captures the latest advances in autonomous driving and that it also presents usable real-world case studies to help readers better understand how to utilize their lessons in commercial autonomous driving projects.