Welcome to my 3D Computer Vision assignments repository! This collection showcases the work I've completed as part of my course on 3D Computer Vision, covering a range of topics including image processing, camera calibration, quaternions, feature detection, and more. Each assignment reflects a deep dive into key concepts and hands-on implementations, demonstrating practical skills in the field of computer vision.
- Assignment 1: Image Processing and Filtering
- Assignment 2: Camera Calibration
- Assignment 3: Quaternions and Image Mosaicing
- Assignment 4: Fundamental Matrix Estimation
- Assignment 5: Advanced Feature Detection and Matching
This assignment focuses on the basics of image processing, including Discrete Fourier Transform (DFT), spatial filters, and various smoothing and denoising techniques.
Highlights:
- Implemented DFT on images to explore frequency components.
- Applied spatial and denoising filters to enhance image quality.
- Experimented with various techniques to understand their effects on images.
This assignment covers camera calibration techniques to extract camera parameters, which are crucial for 3D computer vision tasks.
Highlights:
- Performed camera calibration to determine intrinsic and extrinsic parameters.
- Used calibration techniques on checkerboard images for precise parameter extraction.
This assignment dives into quaternions for representing rotations and image mosaicing techniques to create seamless panoramas.
Highlights:
- Explored quaternions and their applications in 3D rotations.
- Implemented image mosaicing to stitch images into a single panoramic view.
This assignment involves implementing the eight-point and normalized eight-point algorithms for estimating the fundamental matrix, a critical component in stereo vision.
Highlights:
- Implemented the eight-point algorithm (
estimateF(x1, x2)
). - Implemented the normalized eight-point algorithm (
estimateFnorm(x1, x2)
). - Visualized and compared epipolar lines from both estimates.
In this assignment, I implemented complex feature detection and matching techniques, including Canny Edge Detection, Harris Keypoint Detector, MSER, and SIFT feature matching.
Highlights:
- Canny Edge Detection: Implemented from scratch, covering steps from grayscale conversion to hysteresis thresholding.
- Harris Keypoint Detector: Compared a custom implementation with OpenCV’s version.
- MSER Algorithm: Tuned hyperparameters to detect blobs in an image.
- SIFT Feature Matching: Used SIFT to match templates and validate results against reference images.