This project demonstrates key concepts in Computer Vision, ranging from classical image processing (Edge Detection) to feature matching (SIFT/ORB) and modern Deep Learning classification (CNN vs. SVM).
Implementation of the multi-stage Canny algorithm to identify structural boundaries.
-
Process: Noise Reduction (Gaussian Blur) β Gradient Calculation (Sobel) β Non-Maximum Suppression β Hysteresis Thresholding.
-
Key Feature: Demonstration of threshold adjustments to optimize edge-map clarity.
Comparison of local feature identification and matching.
-
SIFT (Scale-Invariant Feature Transform): High-precision gradient-based matching.
-
ORB (Oriented FAST and Rotated BRIEF): High-speed, efficient alternative to SURF/SIFT.
-
Metric: Uses Brute-Force (BF) Matcher with
$L2$ Norm for SIFT and Hamming Distance for ORB.
A benchmarking study between Classical Machine Learning and Deep Learning.
- Classical Model: SVM (Support Vector Machine) with RBF Kernel and flattened pixel features.
- Deep Learning Model: CNN (Convolutional Neural Network) using spatial hierarchies.
- Optimizations: Adam Optimizer, Dropout for regularization, and Pixel Normalization.
- Sample

- Python 3.x
- OpenCV: Image processing and feature detection.
- TensorFlow/Keras: Deep Learning model architecture.
- Scikit-Learn: SVM implementation and performance metrics.
- Matplotlib & Seaborn: Results visualization and confusion matrices.
-
Environment Setup: Ensure you have a GPU runtime enabled for Task 3 (Runtime > Change runtime type > GPU).
-
Directory Structure: Create the following folders in the sidebar:
dataset/ βββ Cat/ βββ Dog/


