This book offers a systematic and comprehensive introduction to the visual simultaneous localization and mapping (vSLAM) technology, which is a fundamental and essential component for many applications in robotics, wearable devices, and autonomous driving vehicles. The book starts from very basic mathematic background knowledge such as 3D rigid body geometry, the pinhole camera projection model, and nonlinear optimization techniques, before introducing readers to traditional computer vision topics like feature matching, optical flow, and bundle adjustment. The book employs a light writing style, instead of the rigorous yet dry approach that is common in academic literature. In addition, it includes a wealth of executable source code with increasing difficulty to help readers understand and use the practical techniques. The book can be used as a textbook for senior undergraduate or graduate students, or as reference material for researchers and engineers in related areas.