Engineering Autonomous Vehicles and Robots. Shaoshan Liu
Читать онлайн книгу.as well as how to integrate these modules to enable a fully functioning autonomous vehicle or robot.
The first part of the book consists of Chapters 2–8, in which we introduce each module, including communication systems, chassis technologies, passive perception technologies, localization with RTK GNSS, computer vision for perception and localization, planning and control, as well as mapping technologies.
Chapter 2: In-Vehicle Communication Systems
Chapter 3: Chassis Technologies for Autonomous Robots and Vehicles
Chapter 4: Passive Perception with Sonar and mmWave Radar
Chapter 5: Localization with RTK GNSS
Chapter 6: Computer Vision for Perception and Localization
Chapter 7: Planning and Control
Chapter 8: Mapping
The second part of the book consists of Chapters 9 and 10, in which we present two interesting case studies: the first one is about applying the modular design to build low-speed autonomous vehicles; and the second one is about how NASA builds its space robotic explorer using a modular design approach.
Chapter 9: Building the DragonFly Pod and Bus
Chapter 10: Enabling Commercial Autonomous Space Robotic Explorers
From our practical experiences, the capabilities of autonomous vehicles and robots are often constrained by limited onboard computing power. Therefore, in the final part of the book, we delve into state-of-the-art approaches in building edge computing systems for autonomous vehicles and robots. We will cover onboard edge computing design, vehicle-to-everything infrastructure, as well as autonomous vehicle security.
Chapter 11: Edge Computing for Autonomous Vehicles
Chapter 12: Innovations on the Vehicle-to-Everything Infrastructure
Chapter 13: Vehicular Edge Security
1.6 Open Source Projects Used in this Book
As you can see, an autonomous driving system is a highly complex system that integrates many technology pieces and modules. Hence, it is infeasible and inefficient to build everything from scratch. Hence, we have referred to many open source projects throughout the book to help readers to build their own autonomous driving systems. Also, throughout the book we have used PerceptIn's autonomous driving software stack to demonstrate the idea of modular design. The open source projects used in this book are listed below:
CANopenNode [14]: This is free and open source CANopen Stack is for CAN bus communication.
Open Source Car Control [15]: This is an assemblage of software and hardware designs that enable computer control of modern cars in order to facilitate the development of autonomous vehicle technology. It is a modular and stable way of using software to interface with a vehicle's communications network and control systems.
OpenCaret [16]: This is an open source Level-3 Highway autopilot system for Kia Soul EV.
NtripCaster [17]: A GNSS NTRIP (Networked Transport of RTCM via Internet Protocol) Caster takes GNSS data from one or more data stream sources (Base Stations referred to as NTRIP Servers) and provides these data to one or more end users (often called rovers), the NTRIP Clients. If you need to send data to more than one client at a time, or have more than one data stream, you will need a Caster.
GPSD (GPS Daemon) [18]: This is a service daemon that monitors one or more GNSS receivers attached to a host computer through serial or USB ports, making all data on the location/course/velocity of the sensors available to be queried on Transmission Control Protocol port 2947 of the host computer. With GPSD, multiple location-aware client applications can share access to supported sensors without contention or loss of data. Also, GPSD responds to queries with a format that is substantially easier to parse than the NMEA 0183 emitted by most GNSS receivers.
Kalibr [19]: This is a toolbox that solves the following calibration problems:– Multiple camera calibration: intrinsic and extrinsic calibration of a camera system with non-globally shared overlapping fields of view.– Visual-inertial calibration (camera-IMU): spatial and temporal calibration of an IMU with respect to a camera system.– Rolling shutter camera calibration: full intrinsic calibration (projection, distortion, and shutter parameters) of rolling shutter cameras.
OpenCV [20]: OpenCV (Open Source Computer Vision Library) is an open source computer vision and machine learning software library. OpenCV was built to provide a common infrastructure for computer vision applications and to accelerate the use of machine perception in the commercial products.
ORB-SLAM2 [21]: This is a real-time SLAM library for Monocular, Stereo and RGB-D cameras that computes the camera trajectory and a sparse 3D reconstruction. It is able to detect loops and relocalize the camera in real time.
libELAS [22]: This is a cross-platform C++ library with MATLAB wrappers for computing disparity maps of large images. Input is a rectified grayscale stereo image pair of the same size. Output is the corresponding disparity maps.
Mask R-CNN [23]: This is a deep learning model for object detection and instance segmentation on Keras and TensorFlow.
Baidu Apollo [24]: Apollo is a high performance, flexible architecture which accelerates the development, testing, and deployment of autonomous vehicles.
OpenStreetMap [25]: This is a collaborative project to create a free editable map of the world. The geodata underlying the map are considered the primary output of the project. The creation and growth of OpenStreetMap has been motivated by restrictions on use or availability of map data across much of the world, and the advent of inexpensive portable satellite navigation devices.
References
1 1 U.S. Department of Energy (2017). Emissions from Hybrid and Plug-In Electric Vehicles. https://www.afdc.energy.gov/vehicles/electric_emissions.php (accessed 1 December 2017).
2 2 MIT CSAIL (2016). Study: carpooling apps could reduce taxi traffic 75%. https://www.csail.mit.edu/news/study-carpooling-apps-could-reduce-taxi-traffic-75 (accessed 1 December 2017).
3 3 VirginiaTech (2017). Automated vehicle crash rate comparison using naturalistic data. https://www.vtti.vt.edu/featured/?p=422 (accessed 1 December 2017).
4 4 U.S. Department of Transportation (2016). U.S. Driving Tops 3.1 Trillion Miles in 2015. https://www.fhwa.dot.gov/pressroom/fhwa1607.cfm (accessed 1 December 2017).
5 5 Moore, F.C. and Diaz, D.B. (2015). Temperature impacts on economic growth warrant stringent mitigation policy. Nature Climate Change 5 (2): 127–131.
6 6 New York State Department of Transportation (2016). Average Accident Costs. https://www.dot.ny.gov/divisions/operating/osss/highway-repository/39D1F023EC4400C6E0530A3DFC0700C6 (accessed 1 December 2017).
7 7 Liu, S., Li, L., Tang, J. et al. (2017). Creating Autonomous Vehicle Systems, Synthesis Lectures on Computer Science, vol. 6, 1–186. Morgan & Claypool Publishers.
8 8 Liu, S., Tang, J.,