Skip to content

Jupyter notebooks exploring image processing and computer vision techniques, including transformations, feature detection, optical flow, and face detection using OpenCV.

Notifications You must be signed in to change notification settings

Anjali2201/Computer-Vision-Algorithms

Repository files navigation

Image Processing and Computer Vision Notebooks

This repository contains a series of Jupyter notebooks focused on various image processing and computer vision techniques. Each notebook covers a specific aspect of image manipulation, feature detection, and motion analysis using popular libraries like OpenCV and others.

Table of Contents

  1. 2-ImagesUsingDataStructure.ipynb
  2. 3-Tranformation.ipynb
  3. 4-Transformations.ipynb
  4. 5-FeatureDetection.ipynb
  5. 6-OpticalFlow.ipynb
  6. 7-backgroundSub.ipynb
  7. 8-faceDetection.ipynb

Notebooks Overview

2-ImagesUsingDataStructure.ipynb

This notebook introduces basic image processing concepts using data structures. You will learn how to manipulate images as arrays, perform basic operations, and understand the importance of data representation in image processing.

3-Tranformation.ipynb

This notebook covers image transformations, including scaling, rotation, and translation. It provides an in-depth explanation of how these operations affect image data and how to implement them using Python libraries.

4-Transformations.ipynb

Building on the previous notebook, this notebook delves into more advanced image transformations. It includes affine and perspective transformations, which are crucial for tasks such as image stitching and rectification.

5-FeatureDetection.ipynb

Feature detection is a key aspect of computer vision. This notebook introduces various feature detection techniques, such as edge detection, corner detection, and blob detection, using OpenCV. It also covers how these features can be used for image analysis.

6-OpticalFlow.ipynb

Optical flow is used to detect motion between frames in a sequence of images. This notebook explores the concept of optical flow, different methods to calculate it, and its applications in video analysis and object tracking.

7-backgroundSub.ipynb

Background subtraction is a technique used to separate moving objects from a static background. This notebook explains how to implement background subtraction methods and use them for real-time video analysis.

8-faceDetection.ipynb

Face detection is one of the most common applications of computer vision. This notebook demonstrates how to use pre-trained models to detect faces in images and videos, and discusses the underlying principles of face detection algorithms.

Prerequisites

To run these notebooks, you will need the following libraries installed:

  • Python 3.x
  • Jupyter Notebook
  • OpenCV
  • NumPy
  • Matplotlib

You can install the required libraries using pip:

pip install opencv-python numpy matplotlib jupyter

Contributing

If you'd like to contribute to this project, please fork the repository and use a feature branch. Pull requests are welcome.

About

Jupyter notebooks exploring image processing and computer vision techniques, including transformations, feature detection, optical flow, and face detection using OpenCV.

Topics

Resources

Stars

Watchers

Forks