Skip to content

This is my undergraduate project at Ferdowsi University of Mashhad, focusing comprehensively on computer vision.

License

Notifications You must be signed in to change notification settings

mohammadSHP/Computer-Vision

 
 

Repository files navigation

Undergraduate Project - Computer Vision

Overview

This undergraduate project focuses on exploring and developing advanced techniques in computer vision, structured into two main sections: Classical Computer Vision and Modern Deep Learning-based Computer Vision. The project begins by covering the fundamentals of image processing, video analysis, and classical object detection algorithms. In the second part, using cutting-edge tools like PyTorch, convolutional neural networks (CNN) will be implemented. The project also delves into modern techniques such as transfer learning, pre-trained models, and the emerging Vision Transformers. Furthermore, efficient object detection with YOLO and facial recognition using deep learning will be thoroughly explored.

Table of Contents

  1. Project Structure
  2. Modern CV vs Classical CV
  3. Roadmap
  4. Requirements
  5. References

Project Structure

The project will be organized into the following sections:

Modern CV vs Classical CV

Topic Classical Computer Vision Modern Computer Vision (Using Deep Learning)
Definition and Core Principles Based on hand-crafted algorithms and engineered features. Based on deep neural networks and learning from large datasets.
Feature Extraction Method Features are extracted manually using algorithms like SIFT, SURF, and HOG. Features are automatically learned by convolutional neural networks (CNNs).
Accuracy Accuracy is usually limited and optimization for complex problems is harder. Generally achieves much higher accuracy, especially in complex tasks like image recognition and classification.
Amount of Data Required Requires less data, but models are usually less optimized. Requires large amounts of data for effective learning.
Computational Complexity Generally lighter and simpler in computation. Heavier in computation and requires powerful hardware (GPUs).

Roadmap

The project will progress through the following phases:

  1. Phase 1: Implementing Classical Computer Vision Techniques
  2. Phase 2: Building and Training Deep Learning Models with PyTorch and tensorflow, keras

Requirements

To run the project, you'll need:

  • Python 3.x
  • tools: Jupyter Lab, Colab, lightning studio
  • Required libraries listed in requirements.txt.

You can install the dependencies using:

pip install -r requirements.txt

References:

  • Ayyadevara, V. K., & Reddy, Y. (2024). Modern Computer Vision with PyTorch - Second Edition: A practical roadmap from deep learning fundamentals to advanced applications and Generative AI (2nd ed.). Packt Publishing.
  • Elgendy, M. (2020). Deep Learning for Vision Systems (1st ed.). Manning.
  • Ratan, R. D. (2024). Modern Computer Vision GPT, PyTorch, Keras, OpenCV4 in 2024! Next-Gen Computer Vision: YOLOv8, DINO-GPT4V, OpenCV4, Face Recognition, GenerativeAI, Diffusion Models & Transformers [Online course]. Udemy.

About

This is my undergraduate project at Ferdowsi University of Mashhad, focusing comprehensively on computer vision.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Jupyter Notebook 100.0%