Welcome to the Computer Vision Experiments repository! This repository contains various computer vision experiments and projects. Each experiment explores different aspects of computer vision techniques, such as image processing, object detection, feature extraction, and more.
Computer vision is an interdisciplinary field that deals with how computers can gain a high-level understanding of digital images or videos. It involves various techniques to analyze, process, and interpret visual data. This repository aims to showcase experiments in computer vision, providing insights into different algorithms, libraries, and techniques commonly used in the field.
Here are the experiments included in this repository:
- Experiment 1: Canny Edge Detection and Morphological Operations - An experiment that demonstrates the effects of Canny edge detection and morphological operations on image processing and object detection. This experiment involvs:
- Apply Canny edge detection algorithm to highlight edges in the given image.
- Apply morphology operations on image to suit the requirement of object detection.
- Alter the parameters and conclusion of the results.
- Experiment 2: Difference of Gaussian (DoG) Edge Detection - This experiment aims to identify edge points in an image by applying a Difference of Gaussian filter. The experiment involves:
- Task 1: Application of a pair of Gaussian filters to determine DoG.
- Task 2: Variation of size and standard deviations of Gaussian filters.
- Task 3: Image size reduction and repetition of the above tasks.
- Experiment 3: Gabor Filter Texture Analysis - Utilizing Gabor filters, this experiment extracts texture features to reveal hidden details within an image:
- Task 1: Gabor filter application for feature extraction.
- Task 2: Creation and application of various Gabor filters for specific feature detection.
- Task 3: Analysis of Gabor filter parameter effects.
- Experiment 4: Gaussian Mixture Models (GMM) for Background Subtraction - This experiment uses GMM to differentiate between background and foreground in video frames:
- Task 1: Video acquisition.
- Task 2: Application of GMM with two Gaussians for background modeling.
- Task 3: Foreground separation in various frames.
- Task 4: Variation of the number of Gaussians in the model.
- Task 5: Observation of the effects of these changes.
- Experiment 5: Histogram of Oriented Gradients (HoG) Feature Detection - HoG descriptors are used to capture gradient information in images:
- Task 1: Computation of HoG for a given image.
- Task 2: Parameter tuning in HoG computation and comparison of results.
- Task 3: HoG comparison between two images.
- Experiment 6: K-Means Clustering for Image Segmentation - This experiment explores image segmentation using k-means clustering:
- Task 1: Dataset selection.
- Task 2: K-means clustering with an appropriate value of k.
- Task 3: Accuracy determination.
- Task 4: Repetition of the process with different datasets or values of k.
- Experiment 7: SIFT for Key Point Tracking - Scale-Invariant Feature Transform (SIFT) is used to detect and track key points across images:
- Task 1: Key point detection, computation, and drawing.
- Task 2: Image rotation and feature comparison.
- Task 3: SIFT feature comparison and tracking between two images.
- Task 4: Image cropping and repetition of the above tasks.
- Task 5: SIFT parameter adjustments and effect observation.
To run the experiments or explore the projects, you can access the experiment notebooks directly in Google Colab. Simply click on the experiment links above, and you will be redirected to the respective Colab notebooks.
Each experiment's results and conclusions can be found in their respective Colab notebooks. We have documented our findings, observations, and any insights gained during the experiments. Feel free to explore the experiment notebooks for detailed explanations.
