This full computer vision course introduces learners to the mathematical and practical foundations of how machines interpret visual data. Starting with basic concepts of light and image formation, the course explains how pinhole cameras, thin lenses, and perspective projection transform 3D objects into 2D images. Students explore the image sensing pipeline and learn how camera calibration, focal length, and lens distortion impact visual measurements. The course then advances to 3D reconstruction techniques, showing how multiple images can be used to infer spatial structure. Practical examples demonstrate how these principles underpin modern computer vision applications such as augmented reality, robotics, 3D mapping, and autonomous navigation. Learners also see how these concepts integrate with tools like OpenCV, Open3D, and Python-based visualization libraries, bridging theory with applied workflows. By completing the course, students gain the conceptual and technical understanding necessary to build robust computer vision systems, preparing them for advanced topics like deep learning for image recognition and real-time vision pipelines. This course is ideal for beginners and developers aiming to strengthen their understanding of foundational computer vision concepts.